/* Main-site presentation: clear controls, quiet surfaces, consistent spacing. */
body.fundraiser.glass-theme { background:#fff; --paper:#fff; --ink:#172238; --muted:#465366; --line:#dfe4e8; }
body.fundraiser.glass-theme > header { width:100%; max-width:1220px; padding:22px 34px; margin:0 auto; background:#fff; border:0; border-bottom:1px solid #e6e8eb; border-radius:0; box-shadow:none; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.fundraiser.glass-theme .brand { display:inline-flex; align-items:baseline; gap:6px; font-size:21px; white-space:nowrap; line-height:1; letter-spacing:-.6px; }
.fundraiser.glass-theme .brand span { font-size:11px; letter-spacing:1.2px; }
.fundraiser.glass-theme header nav { display:flex; align-items:center; margin:0; gap:22px; }
.fundraiser.glass-theme .nav-support { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 18px; margin:0; line-height:1; background:#172238; color:white; border:1px solid #172238; border-radius:10px; font-size:13px; font-weight:700; }
.fundraiser.glass-theme .hero { gap:40px; align-items:center; }
.fundraiser.glass-theme .hero-photo { height:auto; transform:none; border-radius:18px; overflow:hidden; box-shadow:none; background:#fff; }
.fundraiser.glass-theme .hero-photo > img { width:100%; height:auto; max-height:none; display:block; object-fit:contain; object-position:center; filter:none; border-radius:0; }
.fundraiser.glass-theme .photo-caption, .fundraiser.glass-theme .bib, .fundraiser.glass-theme .hero-copy > .micro { display:none; }
.fundraiser.glass-theme .hero-beneficiary { display:grid; grid-template-columns:100px 1fr; gap:6px 20px; align-items:center; max-width:none; padding:20px 0; margin-top:22px; background:transparent; border:0; border-top:1px solid #e6e8eb; border-radius:0; box-shadow:none; }
.fundraiser.glass-theme .beneficiary-logo { grid-row:1 / 4; width:100px; height:98px; object-fit:contain; }
.fundraiser.glass-theme .beneficiary-logo[hidden] { display:none; }
.fundraiser.glass-theme .hero-beneficiary strong { font-size:17px; line-height:1.35; letter-spacing:0; }
.fundraiser.glass-theme .hero-beneficiary p { font-size:12px; line-height:1.5; margin:0; }
.fundraiser.glass-theme .panel, .fundraiser.glass-theme .donation-panel { border-radius:16px; box-shadow:none; border:1px solid #dfe4e8; background:#fff; }
.fundraiser.glass-theme .panel.player { background:#172238; border-color:#172238; color:#fff; }
.fundraiser.glass-theme .content-grid { display:block; }
.fundraiser.glass-theme .request-panel { padding:28px; }
.fundraiser.glass-theme .map-panel { margin:24px 0 40px; }
.fundraiser.glass-theme button, .fundraiser.glass-theme .button { min-height:44px; border-radius:10px; font-weight:650; box-shadow:none; }
.fundraiser.glass-theme button:disabled { opacity:.5; cursor:not-allowed; }
.fundraiser.glass-theme .request-tabs { gap:8px; padding:0; border:0; background:none; }
.fundraiser.glass-theme .request-tabs button { border:1px solid #b3bec8; background:#fff; color:#172238; padding:14px 12px; box-shadow:none; }
.fundraiser.glass-theme .request-tabs button[aria-selected='true'] { background:#172238; color:#fff; border-color:#172238; }
.fundraiser.glass-theme input:not([type='radio']):not([type='checkbox']), .fundraiser.glass-theme textarea { border:1px solid #9daab7; border-radius:10px; background:#fff; box-shadow:none; }
.fundraiser.glass-theme #catalog-results { max-height:360px; overflow-y:auto; padding:8px; margin:0; scroll-padding:8px; overscroll-behavior:contain; border-radius:12px; background:#fff; }
.fundraiser.glass-theme #catalog-results:empty { padding:0; background:none; }
.fundraiser.glass-theme .catalog-choice { width:100%; text-align:left; background:#fff; border:1px solid #dde2e7; padding:14px; margin:0 0 8px; }
.fundraiser.glass-theme .catalog-choice:last-child { margin-bottom:0; }
.fundraiser.glass-theme #queue-list, .fundraiser.glass-theme #owned-requests { padding:12px; scroll-padding:12px; max-height:420px; overflow-y:auto; border-radius:12px; }
.fundraiser.glass-theme .owned-receipt { padding:16px; margin:0 0 10px; border:1px solid #dfe4e8; border-radius:12px; background:#fff; }
.fundraiser.glass-theme .owned-receipt:last-child { margin-bottom:0; }
.fundraiser.glass-theme .sound-options { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.fundraiser.glass-theme .sound-option { display:flex; align-items:center; gap:0; padding:0; border:1px solid #a9b5c1; border-radius:12px; background:#fff; overflow:hidden; box-shadow:none; }
.fundraiser.glass-theme .sound-option button { margin:0; background:none; color:#172238; border:0; border-radius:0; box-shadow:none; min-height:54px; text-align:left; padding:14px; }
.fundraiser.glass-theme .sound-option > button:first-child { flex:1; min-width:0; }
.fundraiser.glass-theme .sound-option .sound-preview { flex:0 0 48px; width:48px; min-width:48px; padding:12px; font-size:16px; text-align:center; border-left:1px solid #dfe4e8; }
.fundraiser.glass-theme .sound-option.selected { background:#fff; border:2px solid #172238; }
.fundraiser.glass-theme .visibility-options { grid-template-columns:1fr 1fr; }
.fundraiser.glass-theme .visibility-options label { border:1px solid #a9b5c1; border-radius:12px; padding:14px; background:#fff; box-shadow:none; }
.fundraiser.glass-theme .visibility-options label:has(:checked) { border:2px solid #172238; background:#fff; }
.fundraiser.glass-theme .visibility-options input { width:18px; height:18px; vertical-align:middle; }
.fundraiser.glass-theme .visibility-choice { margin-top:22px; padding-top:12px; }
.fundraiser.glass-theme .request-submit { width:100%; margin-top:16px; }
.fundraiser.glass-theme .supporter-wall { margin:24px 0 36px; padding:28px; border:1px solid #dfe4e8; border-radius:16px; background:#fff; }
.fundraiser.glass-theme .supporter-wall h2 { font-size:32px; margin-bottom:10px; }
.fundraiser.glass-theme .supporter-columns { grid-template-columns:1fr 1fr; gap:24px; }
.fundraiser.glass-theme .supporter-columns > div:last-child { grid-column:1; grid-row:1; }
.fundraiser.glass-theme .supporter-columns > div:first-child { grid-column:2; }
.fundraiser.glass-theme .supporter-card { display:flex; align-items:center; gap:14px; padding:16px; background:#fff; border:1px solid #e0e5e9; border-radius:12px; margin:0 0 8px; }
.fundraiser.glass-theme .supporter-card > span:not(.supporter-rank) { flex:1; min-width:0; overflow-wrap:anywhere; }
.fundraiser.glass-theme .supporter-card strong { font-size:20px; color:#172238; }
.fundraiser.glass-theme .supporter-rank { width:30px; font-size:13px; color:#657383; font-weight:700; }
.fundraiser.glass-theme #supporter-top { list-style:none; margin:0; padding:0; }
.fundraiser.glass-theme #supporter-top > li:first-child.supporter-card { border-color:#172238; background:#fff; }
.fundraiser.glass-theme #supporter-top > .micro, .fundraiser.glass-theme #supporter-recent > .micro { border:1px dashed #bdc7cf; border-radius:12px; padding:24px; line-height:1.7; color:#52616d; }
.fundraiser.glass-theme #map { border-radius:12px; overflow:hidden; }
.fundraiser.glass-theme :is(button,a,input,textarea):focus-visible { outline:3px solid #172238; outline-offset:3px; }
@media (hover:hover) { .fundraiser.glass-theme .catalog-choice:hover, .fundraiser.glass-theme .sound-option button:hover { background:#fff; } }
@media (max-width:700px) {
  body.fundraiser.glass-theme > header { padding:16px 20px; gap:12px; }
  .fundraiser.glass-theme .brand { font-size:18px; gap:4px; }
  .fundraiser.glass-theme .brand span { font-size:9px; letter-spacing:.8px; }
  .fundraiser.glass-theme .nav-support { padding:10px 14px; margin:0; font-size:12px; }
  .fundraiser.glass-theme .how-it-works { display:none; }
  .fundraiser.glass-theme .hero { gap:22px; padding:28px 0; }
  .fundraiser.glass-theme .hero-photo { height:auto; max-height:none; border-radius:14px; }
  .fundraiser.glass-theme .hero-photo > img { height:auto; max-height:none; aspect-ratio:auto; }
  .fundraiser.glass-theme .hero-beneficiary { grid-template-columns:80px 1fr; gap:6px 16px; }
  .fundraiser.glass-theme .beneficiary-logo { width:80px; height:auto; }
  .fundraiser.glass-theme .hero-beneficiary strong { font-size:16px; }
  .fundraiser.glass-theme .request-panel, .fundraiser.glass-theme .supporter-wall { padding:18px; }
  .fundraiser.glass-theme .sound-options { grid-template-columns:1fr; }
  .fundraiser.glass-theme .request-tabs button { font-size:14px; padding:12px 6px; }
  .fundraiser.glass-theme .supporter-columns { display:flex; flex-direction:column-reverse; gap:20px; }
  .fundraiser.glass-theme #queue-list, .fundraiser.glass-theme #owned-requests { padding:10px; }
  .fundraiser.glass-theme #catalog-results { max-height:320px; }
}

/* Keep secondary surfaces white; selection uses the same ink as primary controls. */
.fundraiser.glass-theme .allowance { background:#fff; color:var(--ink); padding:6px 0; border-radius:0; }
.fundraiser.glass-theme .chosen-request { background:#fff; color:var(--ink); border-left-color:var(--ink); }
.fundraiser.glass-theme .catalog-choice.selected { background:#fff; border:2px solid var(--ink); }
.fundraiser.glass-theme .sound-option.selected, .fundraiser.glass-theme .visibility-options label:has(:checked) { box-shadow:inset 0 0 0 1px var(--ink); }
.fundraiser.glass-theme .sound-option .sound-preview { border-top:0; }
.fundraiser.glass-theme input[type='radio'], .fundraiser.glass-theme input[type='checkbox'] { accent-color:var(--ink); }
.fundraiser.glass-theme .donation-journey, .fundraiser.glass-theme .gift-summary, .fundraiser.glass-theme .receipt, .fundraiser.glass-theme .request-confirmation { background:#fff; color:var(--ink); border-color:var(--line); }
.fundraiser.glass-theme .gift-summary { border:1px solid var(--line); }
.fundraiser.glass-theme .donation-journey p, .fundraiser.glass-theme .donation-journey summary, .fundraiser.glass-theme .how-it-works span { color:var(--muted); }
.fundraiser.glass-theme .gift-steps > li::before { background:var(--ink); color:#fff; }
.fundraiser.glass-theme #copy-gift-code { background:#fff; color:var(--ink); border-color:var(--ink); }
.fundraiser.glass-theme input:focus, .fundraiser.glass-theme textarea:focus { outline:3px solid var(--ink); }
@media (hover:hover) {
  .fundraiser.glass-theme .catalog-choice:hover, .fundraiser.glass-theme .sound-option:hover { border-color:var(--ink); }
}
/* Avoid the old brightness filter turning white controls gray on hover/touch. */
.fundraiser.glass-theme button:hover, .fundraiser.glass-theme .button:hover { filter:none; }
@media (hover:hover) {
  .fundraiser.glass-theme .primary:hover, .fundraiser.glass-theme .nav-support:hover { background:#263a55; }
}

.fundraiser.glass-theme .check:has(#priority-song) { justify-content:center; align-items:center; text-align:center; padding:10px 0; }
.fundraiser.glass-theme #priority-song { margin:0; }

.fundraiser.glass-theme .donation-journey { padding-bottom:32px; margin-bottom:28px; }
.fundraiser.glass-theme #another-request { margin-top:12px; margin-bottom:28px; padding:14px 22px; }
/* Receipt summaries must leave readable space for real song titles. */
.fundraiser.glass-theme .gift-summary { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:16px 24px; padding:0 0 20px; border:0; border-bottom:1px solid var(--line); border-radius:0; }
.fundraiser.glass-theme #gift-request-title { font-size:20px; line-height:1.4; overflow-wrap:break-word; }
.fundraiser.glass-theme #gift-amount { font-size:22px; line-height:1.4; letter-spacing:-.3px; }
@media (max-width:700px) {
  .fundraiser.glass-theme .donation-journey { margin-left:0; margin-right:0; padding:22px 18px 28px; }
  .fundraiser.glass-theme .donation-journey h3 { font-size:25px; line-height:1.2; margin-bottom:22px; }
  .fundraiser.glass-theme .donation-journey .gift-eyebrow { font-size:10px; letter-spacing:.08em; }
  .fundraiser.glass-theme .gift-summary { grid-template-columns:minmax(0,1fr); gap:12px; }
  .fundraiser.glass-theme #gift-amount { font-size:20px; }
}
