:root,[data-direction=riviera]{--font-display: "Playfair Display", "Newsreader", Georgia, serif;--font-sans: "Hanken Grotesk", "Mona Sans", -apple-system, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--bg: #F5EFE6;--bg-2: #EFE7D9;--paper: #FBF8F1;--ink: #1B1F2A;--ink-2: #4A4E5A;--muted: #7A7368;--line: rgba(27, 31, 42, .12);--line-strong: rgba(27, 31, 42, .22);--accent: #B8693C;--accent-ink: #FBF8F1;--accent-soft: rgba(184, 105, 60, .1);--success: #4F6B45;--danger: #9A3B2A;--warning: #B57E1F;--radius: 4px;--radius-lg: 8px;--shadow-sm: 0 1px 0 rgba(27,31,42,.04);--shadow-md: 0 12px 32px -16px rgba(27,31,42,.18);--display-tracking: -.015em;--caps-tracking: .14em}[data-direction=atrium]{--font-display: "Newsreader", "Playfair Display", Georgia, serif;--font-sans: "Mona Sans", "Hanken Grotesk", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--bg: #F4F1EA;--bg-2: #EDE9DE;--paper: #FAF8F2;--ink: #22221F;--ink-2: #4C4C46;--muted: #7B786E;--line: rgba(34, 34, 31, .12);--line-strong: rgba(34, 34, 31, .24);--accent: #3F5D45;--accent-ink: #FAF8F2;--accent-soft: rgba(63, 93, 69, .1);--success: #3F5D45;--danger: #8C3A2C;--warning: #A47218;--radius: 6px;--radius-lg: 10px;--shadow-sm: 0 1px 0 rgba(34,34,31,.05);--shadow-md: 0 14px 36px -18px rgba(34,34,31,.2);--display-tracking: -.01em;--caps-tracking: .12em}[data-direction=stadium]{--font-display: "Mona Sans", "Hanken Grotesk", system-ui, sans-serif;--font-sans: "Mona Sans", "Hanken Grotesk", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--bg: #EFEAE0;--bg-2: #E5DECF;--paper: #FFFFFF;--ink: #0E1116;--ink-2: #353A45;--muted: #6E6E6A;--line: rgba(14, 17, 22, .14);--line-strong: rgba(14, 17, 22, .28);--accent: #E4533A;--accent-ink: #FFFFFF;--accent-soft: rgba(228, 83, 58, .1);--success: #2F7A4D;--danger: #C0392B;--warning: #C68B17;--radius: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 0 rgba(14,17,22,.05);--shadow-md: 0 18px 40px -20px rgba(14,17,22,.3);--display-tracking: -.025em;--caps-tracking: .1em}[data-mode=dark][data-direction=riviera]{--bg: #16161C;--bg-2: #1E1E26;--paper: #1C1C24;--ink: #F4ECD9;--ink-2: #C9C3B3;--muted: #8F8979;--line: rgba(244, 236, 217, .12);--line-strong: rgba(244, 236, 217, .22);--accent: #D88455;--accent-ink: #16161C;--accent-soft: rgba(216, 132, 85, .14)}[data-mode=dark][data-direction=atrium]{--bg: #131613;--bg-2: #1A1E1A;--paper: #181B18;--ink: #EDE9DE;--ink-2: #BAB6AC;--muted: #898578;--line: rgba(237, 233, 222, .12);--line-strong: rgba(237, 233, 222, .22);--accent: #82A989;--accent-ink: #131613;--accent-soft: rgba(130, 169, 137, .14)}[data-mode=dark][data-direction=stadium]{--bg: #0B0D11;--bg-2: #14171D;--paper: #131720;--ink: #F2EDE2;--ink-2: #BFBCB3;--muted: #807D75;--line: rgba(242, 237, 226, .12);--line-strong: rgba(242, 237, 226, .22);--accent: #FF6E54;--accent-ink: #0B0D11;--accent-soft: rgba(255, 110, 84, .16)}[data-density=comfortable]{--space-1: 6px;--space-2: 12px;--space-3: 18px;--space-4: 24px;--space-5: 36px;--space-6: 56px;--space-7: 80px;--type-body: 15.5px;--type-small: 13px;--type-caps: 11px;--row-h: 60px}[data-density=compact]{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 36px;--space-7: 52px;--type-body: 14px;--type-small: 12px;--type-caps: 10.5px;--row-h: 44px}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--type-body);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{min-height:100vh}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}.display,h1.display{font-family:var(--font-display);font-weight:500;letter-spacing:var(--display-tracking);line-height:1.02;margin:0}[data-direction=stadium] .display{font-weight:800;line-height:.98}.h1{font-family:var(--font-display);font-weight:500;font-size:40px;letter-spacing:var(--display-tracking);line-height:1.08;margin:0}[data-direction=stadium] .h1{font-weight:700}.h2{font-family:var(--font-display);font-weight:500;font-size:26px;letter-spacing:-.01em;line-height:1.18;margin:0}[data-direction=stadium] .h2{font-weight:700;font-family:var(--font-sans)}.h3{font-family:var(--font-sans);font-weight:600;font-size:17px;letter-spacing:-.005em;margin:0}.eyebrow{font-family:var(--font-sans);font-weight:600;font-size:var(--type-caps);letter-spacing:var(--caps-tracking);text-transform:uppercase;color:var(--muted);margin:0}.small{font-size:var(--type-small);color:var(--muted)}.mono{font-family:var(--font-mono);font-feature-settings:"tnum"}.tnum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.shell{min-height:100vh;display:flex;flex-direction:column}.appbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.appbar .mark{font-family:var(--font-display);font-weight:500;font-size:18px;letter-spacing:-.01em;display:flex;align-items:center;gap:10px}[data-direction=stadium] .appbar .mark{font-family:var(--font-sans);font-weight:700}.appbar .mark .dot{width:28px;height:28px;border-radius:4px;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-size:12px;font-weight:700;font-family:var(--font-sans);letter-spacing:.04em}.appbar .mark .mark-logo{height:34px;width:auto;display:block}[data-mode=dark] .appbar .mark .mark-logo{filter:invert(1)}[data-direction=stadium] .appbar .mark .dot{background:var(--accent);color:var(--accent-ink);border-radius:8px}.appbar .nav{display:flex;gap:2px;margin-left:var(--space-4)}.appbar .nav a{padding:8px 14px;border-radius:var(--radius);color:var(--ink-2);font-size:13.5px;font-weight:500;display:inline-flex;align-items:center;gap:8px}.appbar .nav a:hover{background:var(--bg-2);color:var(--ink)}.appbar .nav a.active{background:var(--ink);color:var(--bg)}[data-direction=stadium] .appbar .nav a.active{background:var(--accent);color:var(--accent-ink)}.appbar .spacer{flex:1}.appbar .who{display:flex;align-items:center;gap:10px;color:var(--ink-2);font-size:13px}.avatar{width:32px;height:32px;border-radius:999px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:12px;font-weight:700;font-family:var(--font-sans)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:var(--radius);border:1px solid var(--line-strong);background:transparent;color:var(--ink);font-weight:600;font-size:14px;line-height:1;transition:all .12s ease;white-space:nowrap}.btn:hover{background:var(--bg-2)}.btn.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn.primary:hover{background:var(--ink-2);border-color:var(--ink-2)}[data-direction=stadium] .btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);border-radius:999px;padding:12px 22px}[data-direction=stadium] .btn.primary:hover{filter:brightness(1.05)}.btn.accent{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn.ghost{border-color:transparent;padding:8px 12px}.btn.ghost:hover{background:var(--bg-2)}.btn.lg{padding:14px 22px;font-size:15px}.btn.sm{padding:6px 10px;font-size:12.5px}.btn.danger{color:var(--danger);border-color:var(--line-strong)}.btn.danger:hover{background:#9a3b2a0f;border-color:var(--danger)}.btn[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none}.linkbtn{background:transparent;border:0;padding:0;color:var(--accent);font-weight:600;font-size:13px;display:inline-flex;align-items:center;gap:4px;border-bottom:1px solid var(--accent)}.linkbtn:hover{color:var(--ink);border-color:var(--ink)}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:var(--type-caps);letter-spacing:var(--caps-tracking);text-transform:uppercase;font-weight:600;color:var(--muted)}.input,.select,.textarea{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;color:var(--ink);outline:none;transition:border-color .12s,background .12s;width:100%}.input:focus,.select:focus,.textarea:focus{border-color:var(--ink);background:var(--paper)}.textarea{min-height:96px;resize:vertical}.fieldgrid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.fieldgrid.three{grid-template-columns:1fr 1fr 1fr}@media(max-width:760px){.fieldgrid,.fieldgrid.three{grid-template-columns:1fr}}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4)}.card.flush{padding:0;overflow:hidden}.card .cardhead{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:var(--space-3)}.card .cardhead .spacer{flex:1}.card .cardbody{padding:var(--space-4)}.card .cardrow{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--line)}.card .cardrow:first-of-type{border-top:0}.hr{height:1px;background:var(--line);border:0;margin:var(--space-3) 0}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:var(--type-caps);letter-spacing:var(--caps-tracking);text-transform:uppercase;font-weight:600;border:1px solid var(--line-strong);color:var(--ink-2);background:transparent}.chip.solid{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chip.accent{background:var(--accent-soft);color:var(--accent);border-color:transparent}.chip.success{color:var(--success);border-color:#4f6b454d;background:#4f6b450f}.chip.warning{color:var(--warning);border-color:#b57e1f4d;background:#b57e1f0f}.chip.danger{color:var(--danger);border-color:#9a3b2a4d;background:#9a3b2a0f}.chip.sm{padding:2px 8px;font-size:9.5px}.chip{white-space:nowrap}.dot-sm{width:6px;height:6px;border-radius:999px;display:inline-block}.table{width:100%;border-collapse:collapse;background:var(--paper)}.table th,.table td{padding:14px 16px;text-align:left;font-size:14px}.table th{font-size:var(--type-caps);letter-spacing:var(--caps-tracking);text-transform:uppercase;font-weight:600;color:var(--muted);border-bottom:1px solid var(--line);background:transparent}.table td{border-bottom:1px solid var(--line);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tr.clickable{cursor:pointer}.table tr.clickable:hover td{background:var(--bg-2)}.donor-shell{max-width:1280px;margin:0 auto;padding:var(--space-5) var(--space-5) var(--space-7);width:100%}.donor-grid{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:var(--space-5);align-items:start}@media(max-width:1080px){.donor-grid{grid-template-columns:1fr}}.donor-sidebar{position:sticky;top:76px}.invite-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:0;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--paper)}@media(max-width:880px){.invite-hero{grid-template-columns:1fr}}.invite-hero .copy{padding:var(--space-6) var(--space-5)}.invite-hero .copy .eyebrow+.display{margin-top:var(--space-3)}.invite-hero .visual{background:var(--ink);color:var(--bg);padding:var(--space-5);position:relative;min-height:360px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}[data-direction=stadium] .invite-hero .visual{background:var(--accent);color:var(--accent-ink)}.invite-hero .visual:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(45deg,transparent 0 24px,rgba(255,255,255,.04) 24px 25px);pointer-events:none}.cal-month{display:flex;align-items:baseline;justify-content:space-between;padding-bottom:var(--space-3)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);background:var(--paper);border-radius:var(--radius-lg);overflow:hidden}.cal-grid .dow{padding:10px 12px;font-size:var(--type-caps);letter-spacing:var(--caps-tracking);text-transform:uppercase;color:var(--muted);border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg-2);font-weight:600}.cal-grid .day{min-height:92px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 10px;position:relative;cursor:pointer;transition:background .12s}.cal-grid .day:hover{background:var(--bg-2)}.cal-grid .day.outside{background:transparent;cursor:default;color:var(--muted);opacity:.4}.cal-grid .day.outside:hover{background:transparent}.cal-grid .day.selected{background:var(--accent-soft);outline:2px solid var(--accent);outline-offset:-2px}.cal-grid .day .daynum{font-family:var(--font-display);font-size:22px;font-weight:500;line-height:1}[data-direction=stadium] .cal-grid .day .daynum{font-family:var(--font-sans);font-weight:700}.cal-grid .day .sports{display:flex;flex-wrap:wrap;gap:3px;margin-top:6px}.cal-grid .day .sport-tag{font-size:10px;padding:1px 6px;border-radius:999px;background:var(--bg-2);color:var(--ink-2);border:1px solid var(--line);font-weight:600}.cal-grid .day .pickbubble{position:absolute;top:8px;right:8px;background:var(--accent);color:var(--accent-ink);width:22px;height:22px;border-radius:999px;display:grid;place-items:center;font-size:11px;font-weight:700;font-family:var(--font-sans)}.cal-grid .day.medal:after{content:"";position:absolute;bottom:8px;right:8px;width:6px;height:6px;border-radius:999px;background:var(--accent)}.session{display:grid;grid-template-columns:92px 1fr auto;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--line);align-items:center}.session:first-child{border-top:0}.session .time{font-family:var(--font-display);font-size:22px;line-height:1}[data-direction=stadium] .session .time{font-family:var(--font-sans);font-weight:700}.session .time .ampm{font-size:11px;font-family:var(--font-sans);color:var(--muted);margin-left:4px;vertical-align:1px}.session .when{font-size:var(--type-small);color:var(--muted);margin-top:4px;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.session .meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.session .sport{font-weight:600;font-size:14px}.session .desc{color:var(--ink-2);font-size:13.5px;margin-top:4px}.session .price{font-family:var(--font-display);font-size:20px}[data-direction=stadium] .session .price{font-family:var(--font-sans);font-weight:700}.session .controls{display:flex;align-items:center;gap:8px}.session .qtybox{display:flex;align-items:stretch;border:1px solid var(--line-strong);border-radius:var(--radius);overflow:hidden}.session .qtybox button{background:transparent;border:0;width:32px;color:var(--ink-2);font-size:16px}.session .qtybox button:hover{background:var(--bg-2);color:var(--ink)}.session .qtybox input{width:36px;text-align:center;border:0;background:transparent;padding:6px 0;font-weight:600}.session.picked{background:var(--accent-soft)}.session.priority:before{content:"★";color:var(--accent);font-size:14px;margin-right:4px}.sport-bar{display:flex;align-items:baseline;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--bg-2);border-top:1px solid var(--line)}.sport-bar:first-child{border-top:0}.sport-bar .name{font-family:var(--font-display);font-size:18px;font-weight:500}[data-direction=stadium] .sport-bar .name{font-family:var(--font-sans);font-weight:700}.sport-bar .venue{font-size:var(--type-small);color:var(--muted)}.commit{display:flex;flex-direction:column;gap:var(--space-3)}.commit-head{display:flex;align-items:baseline;justify-content:space-between}.commit-head .total{font-family:var(--font-display);font-size:32px;line-height:1}[data-direction=stadium] .commit-head .total{font-family:var(--font-sans);font-weight:700}.commit-line{display:flex;align-items:flex-start;gap:var(--space-2);padding:10px 0;border-top:1px solid var(--line)}.commit-line:first-child{border-top:0}.commit-line .qty{width:24px;flex-shrink:0;font-weight:700;color:var(--muted);font-feature-settings:"tnum"}.commit-line .info{flex:1;min-width:0}.commit-line .name{font-weight:600;font-size:14px}.commit-line .sub{font-size:12.5px;color:var(--muted)}.commit-line .price{font-feature-settings:"tnum";font-weight:600;font-size:13.5px}.commit-line .rm{background:transparent;border:0;color:var(--muted);padding:4px;cursor:pointer}.commit-line .rm:hover{color:var(--danger)}.steps{display:flex;align-items:center;gap:0;flex-wrap:nowrap}.steps .step{display:flex;align-items:center;gap:8px;padding:6px 0}.steps .step+.step:before{content:"";display:block;width:24px;height:1px;background:var(--line-strong);margin:0 12px}.steps .step .num{width:22px;height:22px;border-radius:999px;border:1px solid var(--line-strong);display:grid;place-items:center;font-size:11px;font-weight:700;font-family:var(--font-sans);color:var(--muted)}.steps .step.done .num{background:var(--ink);color:var(--bg);border-color:var(--ink)}.steps .step.current .num{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.steps .step .label{font-size:12.5px;color:var(--muted);font-weight:600}.steps .step.current .label,.steps .step.done .label{color:var(--ink)}.admin-shell{display:grid;grid-template-columns:260px 1fr;min-height:calc(100vh - 56px)}.admin-side{background:var(--bg);border-right:1px solid var(--line);padding:var(--space-4) var(--space-3);position:sticky;top:56px;height:calc(100vh - 56px);overflow-y:auto}.admin-side .group{margin-bottom:var(--space-4)}.admin-side .group h4{font-size:var(--type-caps);letter-spacing:var(--caps-tracking);text-transform:uppercase;color:var(--muted);font-weight:600;margin:0 0 8px 12px}.admin-side a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius);color:var(--ink-2);font-size:14px;font-weight:500;cursor:pointer}.admin-side a:hover{background:var(--bg-2);color:var(--ink)}.admin-side a.active{background:var(--ink);color:var(--bg)}[data-direction=stadium] .admin-side a.active{background:var(--accent);color:var(--accent-ink)}.admin-side a .num{margin-left:auto;font-size:11.5px;font-weight:700;opacity:.7;font-feature-settings:"tnum"}.admin-side .stage{margin:var(--space-3) 0;padding:var(--space-3);background:var(--bg-2);border-radius:var(--radius);border:1px solid var(--line)}.admin-side .stage .label{font-size:var(--type-caps);letter-spacing:var(--caps-tracking);text-transform:uppercase;color:var(--muted);font-weight:600}.admin-side .stage .value{font-family:var(--font-display);font-size:20px;margin-top:2px}[data-direction=stadium] .admin-side .stage .value{font-family:var(--font-sans);font-weight:700}.admin-side .stage .pbar{height:4px;background:var(--line);border-radius:999px;margin-top:10px;overflow:hidden}.admin-side .stage .pbar>div{height:100%;background:var(--accent)}.admin-main{padding:var(--space-5) var(--space-6);max-width:1400px}.admin-pagehead{display:flex;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap}.admin-pagehead .titleblock{flex:1 1 auto;min-width:280px}.admin-pagehead .eyebrow{margin-bottom:6px}.admin-pagehead>:not(.titleblock){flex-shrink:0}.lifecycle{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--space-4)}.lifecycle .stage{padding:var(--space-3) var(--space-4);border-right:1px solid var(--line);position:relative;display:flex;flex-direction:column;gap:4px}.lifecycle .stage:last-child{border-right:0}.lifecycle .stage .num{font-family:var(--font-display);font-size:13px;color:var(--muted)}[data-direction=stadium] .lifecycle .stage .num{font-family:var(--font-mono)}.lifecycle .stage .name{font-weight:600;font-size:14px}.lifecycle .stage .meta{font-size:12.5px;color:var(--muted);margin-top:2px}.lifecycle .stage.done{background:var(--bg-2)}.lifecycle .stage.done .name{color:var(--ink-2)}.lifecycle .stage.current{background:var(--accent-soft)}.lifecycle .stage.current .name{color:var(--accent)}.lifecycle .stage.current:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--accent)}.lifecycle .stage.pending .name,.lifecycle .stage.pending .meta{color:var(--muted)}.nextaction{background:var(--ink);color:var(--bg);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;gap:var(--space-4);align-items:center;margin-bottom:var(--space-4)}[data-direction=stadium] .nextaction{background:var(--accent);color:var(--accent-ink)}[data-mode=dark] .nextaction{background:var(--paper);color:var(--ink);border:1px solid var(--line)}.nextaction .eyebrow{color:#fff9}[data-direction=stadium] .nextaction .eyebrow{color:#ffffffb3}[data-mode=dark] .nextaction .eyebrow{color:var(--muted)}.nextaction .copy{flex:1}.nextaction h2{font-family:var(--font-display);font-size:24px;margin:6px 0;font-weight:500}[data-direction=stadium] .nextaction h2{font-family:var(--font-sans);font-weight:700}.nextaction p{margin:0;opacity:.85;font-size:14px}.nextaction .btn{background:var(--bg);color:var(--ink);border-color:var(--bg)}.nextaction .btn:hover{background:var(--bg-2)}[data-mode=dark] .nextaction .btn{background:var(--ink);color:var(--bg);border-color:var(--ink)}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3);margin-bottom:var(--space-4)}@media(max-width:980px){.kpis{grid-template-columns:repeat(2,1fr)}}.kpi{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:4px;position:relative}.kpi .label{font-size:var(--type-caps);letter-spacing:var(--caps-tracking);text-transform:uppercase;color:var(--muted);font-weight:600}.kpi .value{font-family:var(--font-display);font-size:38px;line-height:1.05;font-feature-settings:"tnum";margin-top:2px}[data-direction=stadium] .kpi .value{font-family:var(--font-sans);font-weight:700}.kpi .sub{font-size:12.5px;color:var(--muted);margin-top:6px}.kpi .delta{font-size:12px;color:var(--success);font-weight:600;margin-left:6px}.bars{display:flex;flex-direction:column;gap:10px}.bar{display:grid;grid-template-columns:140px 1fr 72px;gap:var(--space-3);align-items:center}.bar .lbl{font-size:13px;color:var(--ink-2)}.bar .track{height:8px;background:var(--bg-2);border-radius:999px;overflow:hidden}.bar .fill{height:100%;background:var(--accent)}.bar .val{text-align:right;font-feature-settings:"tnum";font-weight:600;font-size:13px}.tabs{display:flex;gap:0;border-bottom:1px solid var(--line);margin-bottom:var(--space-4)}.tabs button{background:transparent;border:0;padding:12px 16px;font-size:14px;font-weight:600;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button:hover{color:var(--ink)}.tabs button.active{color:var(--ink);border-bottom-color:var(--ink)}[data-direction=stadium] .tabs button.active{border-bottom-color:var(--accent);color:var(--accent)}.empty{padding:var(--space-6) var(--space-5);text-align:center;border:1px dashed var(--line-strong);border-radius:var(--radius-lg)}.empty h3{font-family:var(--font-display);font-size:22px;font-weight:500;margin:0 0 8px}[data-direction=stadium] .empty h3{font-family:var(--font-sans);font-weight:700}.empty p{margin:0 0 var(--space-3);color:var(--muted);max-width:480px;margin-left:auto;margin-right:auto}.drawer-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0e111666;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100}.drawer{position:fixed;top:0;right:0;bottom:0;width:640px;max-width:100vw;background:var(--bg);border-left:1px solid var(--line);z-index:101;overflow-y:auto;box-shadow:var(--shadow-md)}.drawer-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg);z-index:2}.drawer-head .spacer{flex:1}.drawer-body{padding:var(--space-4) var(--space-5)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--bg);padding:12px 18px;border-radius:var(--radius);font-size:13.5px;font-weight:500;z-index:200;box-shadow:var(--shadow-md);animation:toast-in .18s ease-out;display:flex;align-items:center;gap:10px}.toast-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;font-size:11px;font-weight:700;flex-shrink:0}.toast-success .toast-icon{background:#1f8a5b;color:#fff}.toast-error{background:#7a1f1f}.toast-error .toast-icon{background:#fff;color:#7a1f1f}.toast-loading .toast-icon,.toast-info .toast-icon{background:#fff3;color:#fff}.toast-icon.spin{animation:toast-spin .8s linear infinite}@keyframes toast-spin{to{transform:rotate(360deg)}}@keyframes toast-in{0%{transform:translate(-50%,16px);opacity:0}to{transform:translate(-50%);opacity:1}}.confirm-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0e111673;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:300;display:flex;align-items:center;justify-content:center;padding:20px;animation:toast-in .14s ease-out}.confirm-card{background:var(--bg);border-radius:var(--radius-lg, 14px);box-shadow:var(--shadow-lg, 0 20px 60px rgba(0,0,0,.3));padding:24px;width:440px;max-width:100%}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg-2)}.auth-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg, 14px);box-shadow:var(--shadow-md);padding:32px;width:460px;max-width:100%}.auth-brand{display:flex;align-items:center;gap:14px}.auth-logo{width:44px;height:44px;object-fit:contain}.auth-err{margin-top:12px;background:#fcecec;color:#7a1f1f;border:1px solid #e6b3b3;border-radius:8px;padding:10px 12px;font-size:13px}.role-grid{display:flex;flex-direction:column;gap:8px}.role-opt{text-align:left;background:var(--bg);border:1.5px solid var(--line);border-radius:10px;padding:12px 14px;cursor:pointer;transition:border-color .12s,background .12s}.role-opt:hover{border-color:var(--ink-3, #999)}.role-opt.selected{border-color:var(--accent);background:var(--bg-2)}.role-radio{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;border:1.5px solid var(--line);font-size:12px}.role-radio.on{background:var(--accent);color:#fff;border-color:var(--accent)}.row{display:flex;gap:var(--space-3);align-items:center}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between}.col{display:flex;flex-direction:column;gap:var(--space-3)}.col-1{display:flex;flex-direction:column;gap:var(--space-1)}.col-2{display:flex;flex-direction:column;gap:var(--space-2)}.col-4{display:flex;flex-direction:column;gap:var(--space-4)}.col-5{display:flex;flex-direction:column;gap:var(--space-5)}.grow{flex:1}.right{margin-left:auto}.center{text-align:center}.muted{color:var(--muted)}.ink2{color:var(--ink-2)}.spacer-3{height:var(--space-3)}.spacer-4{height:var(--space-4)}.spacer-5{height:var(--space-5)}.glyph{width:36px;height:36px;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:700;font-family:var(--font-mono);font-size:14px;flex-shrink:0}.photo-slot{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-lg);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.photo-slot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(135deg,transparent 0 12px,rgba(0,0,0,.04) 12px 13px)}.photo-slot .ph-label{position:relative;z-index:1;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--paper);padding:6px 10px;border-radius:var(--radius);border:1px solid var(--line)}[data-mode=dark] .photo-slot:after{background:repeating-linear-gradient(135deg,transparent 0 12px,rgba(255,255,255,.04) 12px 13px)}.sport-mark{width:28px;height:28px;border-radius:6px;display:grid;place-items:center;font-family:var(--font-mono);font-weight:700;font-size:11px;background:var(--bg-2);color:var(--ink-2);border:1px solid var(--line);flex-shrink:0}.sport-mark.lg{width:40px;height:40px;font-size:13px;border-radius:8px}.brand-stripe{height:4px;background:var(--accent)}.admin-side::-webkit-scrollbar,.drawer::-webkit-scrollbar{width:8px}.admin-side::-webkit-scrollbar-thumb,.drawer::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px}.donor-substeps{padding:12px 36px;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:56px;z-index:15;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.donor-substeps-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.details-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:start}@media(max-width:1080px){.details-grid{grid-template-columns:1fr}}.stage-timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}@media(max-width:1080px){.stage-timeline{grid-template-columns:repeat(1,1fr)}}.stage-step{padding:var(--space-4);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:8px;background:var(--paper);position:relative}.stage-step:last-child{border-right:0}@media(max-width:1080px){.stage-step{border-right:0;border-bottom:1px solid var(--line)}}.stage-step.is-current{background:var(--accent-soft)}.stage-step.is-current:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--accent)}.stage-step.is-done{background:var(--bg-2)}.stage-step-num{font-family:var(--font-display);font-size:32px;line-height:1;color:var(--accent);margin-bottom:4px}[data-direction=stadium] .stage-step-num{font-family:var(--font-sans);font-weight:700}.stage-step.is-done .stage-step-num{color:var(--success);font-size:28px}.stage-step-tag{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.stage-step-title{font-family:var(--font-display);font-size:17px;font-weight:600;line-height:1.25;color:var(--ink)}[data-direction=stadium] .stage-step-title{font-family:var(--font-sans)}.stage-step-body{font-size:13px;line-height:1.5;color:var(--ink-2);flex:1}.stage-step-who{margin-top:auto}.filter-bar{display:flex;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:var(--space-3);flex-wrap:wrap}.filter-popover{position:absolute;top:calc(100% + 6px);left:0;width:320px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:50}.cal-grid .day{display:flex;flex-direction:column;min-height:88px;padding:6px 8px}.cal-grid .day-top{display:flex;justify-content:space-between;align-items:baseline}.cal-grid .day-flag{font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;width:18px;height:18px;border-radius:4px;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-weight:700}[data-direction=stadium] .cal-grid .day-flag{background:var(--accent);color:var(--accent-ink)}.cal-grid .day-meta{font-size:11.5px;line-height:1.3;margin-top:auto;padding-top:4px}.cal-grid .day-meta-row{font-weight:600}.cal-grid .day-meta-row.muted{font-weight:500;color:var(--muted)}.cal-grid .day.day-empty{opacity:.35;cursor:default}.cal-grid .day.day-empty:hover{background:transparent}.cal-grid .day.has-priority,.cal-grid .day.selected.has-priority{box-shadow:inset 3px 0 0 var(--accent)}.cal-grid .day-dow{display:none;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}@media(max-width:600px){.cal-grid{grid-template-columns:1fr;border-left:1px solid var(--line)}.cal-grid .dow,.cal-grid .day.outside,.cal-grid .day.day-disabled{display:none}.cal-grid .day{flex-direction:row;align-items:center;gap:12px;min-height:56px;padding:12px 14px}.cal-grid .day .day-top{flex:1;align-items:center}.cal-grid .day-dow{display:inline}.cal-grid .day .daynum{font-size:20px}.cal-grid .day .day-meta{margin-top:0;padding-top:0}.cal-grid .day .pickbubble{position:static;margin-left:auto}}.section-header{display:flex;align-items:baseline;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--bg-2);border-top:1px solid var(--line)}.section-header.section-accent{background:var(--accent-soft);border-top:1px solid color-mix(in oklch,var(--accent) 30%,transparent)}.session{display:grid;grid-template-columns:100px 1fr 300px;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--line);align-items:flex-start}@media(max-width:880px){.session{grid-template-columns:1fr}}.session.not-ticketed{opacity:.55}.session-info{min-width:0}.session-meta{margin-top:6px;display:flex;flex-wrap:wrap;gap:0;align-items:baseline}.session-time{padding-top:2px}.session-actions{display:flex;flex-direction:column}.select.sm{padding:6px 8px;font-size:12.5px}.commitment-card{position:sticky;top:140px;max-height:calc(100vh - 160px);overflow-y:auto}.commit-days{display:flex;flex-direction:column;gap:var(--space-3)}.commit-day{border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-2);background:var(--bg-2)}.commit-day-head{display:flex;justify-content:space-between;align-items:baseline;padding:2px 4px 6px;border-bottom:1px solid var(--line);margin-bottom:6px}.commit-day-date{font-weight:600;font-size:13px}.commit-day-meta{font-size:12px;color:var(--muted)}.route-line{padding:2px 4px 8px;font-size:11.5px;color:var(--ink-2)}.route-warn{margin-top:6px;padding:6px 8px;border-radius:4px;font-size:12px;line-height:1.4}.route-warn-red{background:#9a3b2a1a;color:var(--danger);border:1px solid rgba(154,59,42,.3)}.route-warn-amber{background:#b57e1f1a;color:var(--warning);border:1px solid rgba(181,126,31,.3)}.sport-bar{align-items:center}.shell-inner{min-height:calc(100vh - 56px)}.alloc-summary{display:grid;grid-template-columns:1fr 1fr 1.4fr 1.2fr;gap:12px;margin-top:var(--space-4)}@media(max-width:880px){.alloc-summary{grid-template-columns:1fr 1fr}}.alloc-summary-tile{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4)}.alloc-summary-tile-accent{background:var(--ink);color:var(--bg);border-color:var(--ink)}[data-direction=stadium] .alloc-summary-tile-accent{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}[data-mode=dark] .alloc-summary-tile-accent{background:var(--accent);color:var(--accent-ink)}.alloc-summary-tile-accent .eyebrow{color:#ffffffa6}[data-direction=stadium] .alloc-summary-tile-accent .eyebrow{color:#ffffffb3}.alloc-summary-tile-accent .muted{color:#ffffffb3!important}.offer-row{display:grid;grid-template-columns:160px 1fr 280px 160px;gap:var(--space-3);padding:var(--space-3) var(--space-4);align-items:flex-start;border-top:1px solid var(--line)}.offer-row:first-child{border-top:0}@media(max-width:1080px){.offer-row{grid-template-columns:1fr}}.offer-status-unsuccessful{background:#9a3b2a0a}.offer-status-modified{background:#b57e1f0a}.offer-row-detail{display:flex;flex-direction:column;gap:12px}.offer-row-detail-block .eyebrow{margin-bottom:4px}.offer-row-actions{padding-top:6px}.alloc-cta{margin-top:var(--space-4);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4);flex-wrap:wrap}.stage-switcher{display:inline-flex;align-items:center;gap:8px;padding:4px 8px;border-radius:999px;background:var(--bg-2);border:1px solid var(--line)}.stage-switcher .label{font-size:11.5px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.stage-switcher select{background:transparent;border:0;font-size:12.5px;font-weight:600;color:var(--ink);padding:4px 8px;cursor:pointer}.alloc-row{display:grid;grid-template-columns:1fr 120px 120px 120px 140px;gap:12px;padding:12px 16px;align-items:center;border-top:1px solid var(--line)}.alloc-row:first-child{border-top:0}.alloc-row .alloc-input{width:70px;text-align:center}.lifecycle-7{grid-template-columns:repeat(7,1fr)}.section-accent .eyebrow{color:var(--accent)!important}.spacer-2{height:var(--space-2)}.admin-page{display:contents}.cal-month h2{white-space:nowrap}.markup-edit{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px}.receipt-preview{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin-top:12px;font-family:var(--font-mono);font-size:12.5px;line-height:1.6;white-space:pre-wrap;color:var(--ink)}.refund-flow{display:flex;align-items:center;gap:0;margin:18px 0 4px}.refund-step{display:flex;align-items:center;gap:8px;flex:1}.refund-step:not(:last-child):after{content:"";flex:1;height:1px;background:var(--line-strong);margin:0 10px}.refund-step-dot{width:24px;height:24px;border-radius:999px;border:1px solid var(--line-strong);display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--muted);flex-shrink:0}.refund-step-label{font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap}.refund-step.done .refund-step-dot{background:var(--success);border-color:var(--success);color:#fff}.refund-step.done .refund-step-label{color:var(--ink-2)}.refund-step.current .refund-step-dot{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.refund-step.current .refund-step-label{color:var(--ink)}.deposit-policy{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px}.pay-split{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.pay-split-row{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-top:1px solid var(--line)}.pay-split-row:first-child{border-top:0}.types-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}@media(max-width:1200px){.types-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.types-grid{grid-template-columns:1fr}}.type-card{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-3)}.tpl-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);align-items:start}@media(max-width:1000px){.tpl-grid{grid-template-columns:1fr}}.email-preview{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4)}.accom-mk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}@media(max-width:1100px){.accom-mk-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.accom-mk-grid{grid-template-columns:1fr}}.accom-mk-card{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-3)}.cat-price-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-2)}@media(max-width:700px){.cat-price-grid{grid-template-columns:repeat(3,1fr)}}.cat-price{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:8px 10px}.cat-price label{display:block;font-size:var(--type-caps);letter-spacing:var(--caps-tracking);text-transform:uppercase;font-weight:600;color:var(--muted);margin-bottom:4px}.cat-price-off{opacity:.55}.hotel-ladder{display:flex;gap:var(--space-2);flex-wrap:wrap}.hotel-ladder-step{display:flex;align-items:center;gap:10px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:10px 14px;flex:1;min-width:200px}.hotel-ladder-rank{font-family:var(--font-display);font-size:18px;color:var(--accent);min-width:36px}[data-direction=stadium] .hotel-ladder-rank{font-family:var(--font-sans);font-weight:700}.hotel-card{overflow:hidden}.hotel-card-head{display:flex;gap:0;align-items:stretch;border-bottom:1px solid var(--line)}.hotel-card-body{padding:var(--space-4);flex:1;min-width:0}@media(max-width:760px){.hotel-card-head{flex-direction:column}.hotel-card-head .photo-slot{width:100%!important}}.photo-rm{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:999px;border:none;background:var(--ink);color:var(--bg);font-size:12px;cursor:pointer;display:grid;place-items:center}.photo-add{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.room-edit-card{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-3)}.room-edit-card .field label{font-size:10px}.settings-subtabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--space-4);border-bottom:1px solid var(--line);padding-bottom:var(--space-3)}.settings-subtab{background:transparent;border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:13.5px;font-weight:600;color:var(--ink-2);cursor:pointer;transition:all .12s}.settings-subtab:hover{background:var(--bg-2);color:var(--ink)}.settings-subtab.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}[data-direction=stadium] .settings-subtab.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}@media(max-width:980px){.pillars{grid-template-columns:repeat(2,1fr)}}.pillar{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4)}.pillar-num{font-family:var(--font-display);font-size:26px;color:var(--accent);line-height:1;margin-bottom:12px}[data-direction=stadium] .pillar-num{font-family:var(--font-sans);font-weight:700}.waves-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}@media(max-width:980px){.waves-grid{grid-template-columns:1fr}}.wave-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4);cursor:pointer;transition:border-color .12s,box-shadow .12s;display:flex;flex-direction:column}.wave-card:hover{border-color:var(--line-strong)}.wave-card.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.wave-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.wave-check{width:26px;height:26px;border-radius:999px;border:1px solid var(--line-strong);display:grid;place-items:center;font-size:13px;font-weight:700;flex-shrink:0;color:var(--accent-ink)}.wave-check.on{background:var(--accent);border-color:var(--accent)}.wave-sports{display:flex;flex-direction:column;gap:8px;margin-top:10px;flex:1}.wave-sport{display:flex;align-items:center;gap:8px}.wave-sport-name{flex:1;font-size:13.5px;font-weight:500}.wave-sport .chip{flex-shrink:0}.wave-foot{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted)}.accom-choice{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}@media(max-width:760px){.accom-choice{grid-template-columns:1fr}}.accom-opt{text-align:left;background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius-lg);padding:var(--space-4);cursor:pointer;color:inherit;font:inherit;transition:all .12s}.accom-opt:hover{background:var(--bg-2)}.accom-opt.selected{border-color:var(--accent);background:var(--accent-soft)}.accom-opt-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.room-row{display:grid;grid-template-columns:96px 1fr auto auto;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--line);align-items:center}.room-row:first-child{border-top:0}.room-row.picked{background:var(--accent-soft)}.room-info{min-width:0}.room-price{text-align:right}.room-price .price{font-family:var(--font-display);font-size:18px}[data-direction=stadium] .room-price .price{font-family:var(--font-sans);font-weight:700}.room-qty{display:flex;align-items:center}.venue-link{color:var(--accent);border-bottom:1px solid color-mix(in oklch,var(--accent) 40%,transparent);font-weight:500}.venue-link:hover{color:var(--ink);border-color:var(--ink)}.route-link{display:inline-block;color:var(--accent);font-weight:600}.route-link:hover{color:var(--ink)}.remote-flag{color:var(--danger);font-weight:600}.session-remote{background:#9a3b2a0a}.deposit-readout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--line)}.cal-grid .day.in-wave,.cal-grid .day.in-wave.selected{background:var(--accent-soft)}.cal-grid .day.day-disabled{opacity:.32;cursor:not-allowed}.cal-grid .day.day-disabled:hover{background:transparent}.legend-wave{width:12px;height:12px;border-radius:3px;background:var(--accent-soft);border:1px solid var(--accent);display:inline-block}.phase-pill{display:inline-flex;align-items:center;gap:8px;margin-left:var(--space-4);padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--bg-2);white-space:nowrap;min-width:0}.phase-pill .phase-dot{width:8px;height:8px;border-radius:999px;background:var(--accent);flex-shrink:0;animation:phase-pulse 2.4s ease-in-out infinite}@keyframes phase-pulse{0%,to{opacity:1}50%{opacity:.4}}.phase-pill .phase-label{font-size:13px;font-weight:600;color:var(--ink)}.phase-pill .phase-meta{font-size:12px;color:var(--muted);padding-left:8px;border-left:1px solid var(--line)}.appbar-burger{display:none;flex-direction:column;gap:4px;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-2);cursor:pointer;flex-shrink:0}.appbar-burger span{display:block;width:18px;height:2px;background:var(--ink);border-radius:2px}.chip-soon{margin-left:auto;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--bg-2);border:1px solid var(--line);border-radius:999px;padding:1px 7px}.chip-toggle{font-size:12.5px;font-weight:600;padding:5px 11px;border-radius:999px;border:1px solid var(--line-strong);background:transparent;color:var(--ink-2);cursor:pointer}.chip-toggle.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}[data-direction=stadium] .chip-toggle.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.input.sm{padding:5px 9px;font-size:13px;height:auto}.bulk-bar{display:flex;align-items:center;gap:10px;margin:0 0 var(--space-3);padding:10px 14px;border-radius:var(--radius-lg);background:var(--accent-soft);border:1px solid var(--accent)}.funnel-dots{display:inline-flex;gap:5px;align-items:center}.funnel-dots .fd{width:9px;height:9px;border-radius:999px}.funnel-dots .fd-on{background:var(--accent)}.funnel-dots .fd-off{background:var(--line-strong)}.funnel-dots .fd-bad{background:var(--danger)}.engagement-table td{vertical-align:middle}.engagement-table input[type=checkbox]{width:16px;height:16px;cursor:pointer}.activity-timeline{display:flex;flex-direction:column;gap:2px;margin-top:6px}.act-row{display:grid;grid-template-columns:24px 1fr;gap:10px;padding:8px 0;position:relative}.act-row .act-dot{width:12px;height:12px;border-radius:999px;background:var(--line-strong);margin:3px auto 0;position:relative;z-index:1}.act-row:before{content:"";position:absolute;left:11px;top:0;bottom:0;width:2px;background:var(--line)}.act-row:first-child:before{top:14px}.act-row:last-child:before{bottom:calc(100% - 14px)}.act-row.act-submitted .act-dot{background:var(--success)}.act-row.act-opened .act-dot,.act-row.act-clicked .act-dot{background:var(--accent)}.act-row.act-bounced .act-dot,.act-row.act-complained .act-dot{background:var(--danger)}.act-row.act-sent .act-dot{background:var(--ink)}.act-row.act-audit .act-dot{background:var(--warning)}.act-label{font-size:14px;font-weight:600}.rule-list{display:flex;flex-direction:column;gap:10px}.rule-row{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-2)}.rule-row.off{opacity:.6}.rule-row .rule-text{flex:1;min-width:0;font-size:13.5px}.rule-row .rule-text select,.rule-row .rule-text input{display:inline-block}.iconbtn{width:28px;height:28px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;font-size:16px;line-height:1;flex-shrink:0}.iconbtn:hover{color:var(--danger);border-color:var(--danger)}.auto-grid,.tpl-layout{align-items:start}.tpl-list{display:flex;flex-direction:column;gap:6px}.tpl-item{text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-2);cursor:pointer;color:inherit;font:inherit}.tpl-item:hover{border-color:var(--line-strong)}.tpl-item.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.eoi-nopay{display:block;padding:8px 12px;border-radius:var(--radius);font-size:12.5px;font-weight:600;color:var(--accent-ink, #fff);background:var(--accent);text-align:center}[data-direction=riviera] .eoi-nopay{color:#fff}.step-chip{width:24px;height:24px;border-radius:999px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:12px;font-weight:700;flex-shrink:0}.invoice-lock{display:flex;gap:18px;align-items:flex-start;padding:var(--space-4) var(--space-5);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);background:var(--bg-2);margin-bottom:var(--space-5)}.invoice-lock-mark{font-size:26px;line-height:1}.invoice-levers{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);margin-bottom:var(--space-5)}.lever-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4)}.lever-card p{margin-top:8px;color:var(--ink-2);line-height:1.6}.lever-num{font-family:var(--font-display);font-size:22px;color:var(--accent);line-height:1;margin-bottom:10px}[data-direction=stadium] .lever-num{font-family:var(--font-sans);font-weight:700}.preview-flag{position:absolute;top:14px;right:14px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--bg-2);border:1px solid var(--line);border-radius:999px;padding:3px 10px}.invoice-builder{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);margin-top:var(--space-3)}.builder-field label{display:block;font-size:var(--type-caps);letter-spacing:var(--caps-tracking);text-transform:uppercase;font-weight:600;color:var(--muted);margin-bottom:8px}.seg{display:inline-flex;border:1px solid var(--line-strong);border-radius:var(--radius);overflow:hidden;flex-wrap:wrap}.seg button{padding:7px 12px;font-size:13px;font-weight:600;background:transparent;border:0;border-right:1px solid var(--line);color:var(--ink-2);cursor:pointer}.seg button:last-child{border-right:0}.seg button.on{background:var(--ink);color:var(--bg)}[data-direction=stadium] .seg button.on{background:var(--accent);color:var(--accent-ink)}.toggle-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1px solid var(--line-strong);background:transparent;color:var(--ink-2);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.toggle-pill.on{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.toggle-pill .tick{width:16px;height:16px;border-radius:999px;border:1px solid var(--line-strong);display:grid;place-items:center;font-size:11px}.toggle-pill.on .tick{background:var(--accent);color:#fff;border-color:var(--accent)}.stage-rows{display:flex;flex-direction:column;gap:8px;margin-top:12px}.stage-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-2)}.admin-side-backdrop{display:none}@media(max-width:1024px){.appbar-burger{display:flex}.appbar .phase-pill{display:none}.admin-shell{grid-template-columns:1fr}.admin-side{position:fixed;top:56px;left:0;bottom:0;height:auto;width:min(82vw,300px);transform:translate(-105%);transition:transform .22s ease;z-index:60;box-shadow:0 12px 40px #00000038}.admin-shell.sidebar-open .admin-side{transform:translate(0)}.admin-side-backdrop{display:block;position:fixed;top:56px;right:0;bottom:0;left:0;background:#0006;z-index:55;opacity:0;pointer-events:none;transition:opacity .2s}.admin-shell.sidebar-open .admin-side-backdrop{opacity:1;pointer-events:auto}.admin-main{padding:var(--space-4) var(--space-4)}}@media(max-width:920px){.admin-page div[style*=grid-template-columns]:not(.kpis),.donor-shell div[style*=grid-template-columns]:not(.kpis),.auto-grid,.tpl-layout,.invoice-builder,.invoice-levers{grid-template-columns:1fr!important}}@media(max-width:980px){.kpis[style]{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:520px){.kpis[style]{grid-template-columns:1fr!important}}@media(max-width:760px){.card.flush{overflow-x:auto;-webkit-overflow-scrolling:touch}.card.flush .table{min-width:560px}.admin-pagehead{flex-direction:column;align-items:flex-start;gap:12px}.invite-hero .visual{min-height:220px}.phase-pill{display:none}}@media(max-width:520px){.tabs{overflow-x:auto}.donor-shell{padding-left:var(--space-3);padding-right:var(--space-3)}}@media(max-width:640px){.card.flush.stack-host{overflow-x:visible}.card.flush.stack-host .table.stack-sm{min-width:0}.table.stack-sm thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}.table.stack-sm tbody,.table.stack-sm tr,.table.stack-sm td{display:block;width:auto}.table.stack-sm tr{border-bottom:1px solid var(--line);padding:var(--space-3) 0}.table.stack-sm tr:last-child{border-bottom:0}.table.stack-sm td{border:0;padding:3px 0;text-align:left!important}.table.stack-sm td:first-child{padding-top:0}.table.stack-sm td:empty{display:none}.table.stack-sm td[data-label]:before{content:attr(data-label);display:inline-block;min-width:92px;color:var(--muted);font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:700}}.alloc-acc{border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--paper)}.alloc-sport{border-top:1px solid var(--line)}.alloc-sport:first-child{border-top:0}.alloc-sprow{display:grid;grid-template-columns:22px minmax(0,1fr) auto 150px 92px;gap:14px;align-items:center;padding:14px 16px;cursor:pointer}.alloc-sprow:hover{background:var(--bg-2)}.alloc-chev{font-size:18px;color:var(--muted);transition:transform .15s ease;display:inline-block;line-height:1}.alloc-chev.open{transform:rotate(90deg)}.alloc-sessions{background:var(--bg-2);padding:4px 16px 14px 42px;border-top:1px solid var(--line)}.alloc-sessrow{display:grid;grid-template-columns:20px minmax(0,1fr) auto 130px 84px;gap:12px;align-items:center;padding:10px 12px;cursor:pointer;border-radius:var(--radius)}.alloc-sessrow:hover{background:var(--paper)}.alloc-cats{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);margin:4px 0 12px}.alloc-cats .table{margin:0}.alloc-fill{display:flex;align-items:center;gap:8px}.alloc-fill .bar{flex:1;min-width:40px;height:6px;background:var(--bg-2);border-radius:999px;overflow:hidden}.alloc-sessrow .alloc-fill .bar{background:var(--line)}.alloc-stepper{display:inline-flex;align-items:center;border:1px solid var(--line-strong);border-radius:var(--radius);overflow:hidden}.alloc-stepper button{width:30px;height:32px;border:0;background:var(--bg-2);cursor:pointer;font-size:16px;color:var(--ink)}.alloc-stepper button:hover{background:var(--line)}.alloc-stepper input{width:52px;height:32px;border:0;border-left:1px solid var(--line);border-right:1px solid var(--line);text-align:center;font:inherit;font-feature-settings:"tnum";background:var(--paper);color:var(--ink)}@media(max-width:760px){.alloc-sprow{grid-template-columns:20px 1fr auto}.alloc-sprow .alloc-fill{display:none}.alloc-sessrow{grid-template-columns:18px 1fr auto}.alloc-sessrow .alloc-fill{display:none}}.hd-explain{display:flex;gap:14px;align-items:flex-start;padding:14px 18px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-2);margin-bottom:var(--space-4)}.hd-explain-mark{width:26px;height:26px;flex-shrink:0;border-radius:999px;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:700;font-style:italic;font-family:var(--font-display)}.hd-acc{border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--paper)}.hd-row{display:grid;gap:14px;align-items:center;padding:14px 16px;cursor:pointer;border-top:1px solid var(--line)}.hd-row:first-child{border-top:0}.hd-row:hover{background:var(--bg-2)}.hd-detail{background:var(--bg-2);border-top:1px solid var(--line);padding:12px 16px 16px 42px}.hd-detail .table{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.hd-wavechip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border:1px solid var(--line);border-radius:999px;background:var(--bg-2);font-size:11.5px;white-space:nowrap;font-feature-settings:"tnum"}.demand-detail-row>td{padding:0!important;background:var(--bg-2);border-bottom:1px solid var(--line)}.demand-sub{padding:12px 16px 16px 40px;overflow-x:auto;-webkit-overflow-scrolling:touch}.demand-sub .demand-subtable{margin:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.demand-subtable td:first-child .linkbtn{max-width:280px;overflow:hidden;text-overflow:ellipsis;display:inline-block;vertical-align:bottom}.demand-subtable thead th{background:var(--bg-2)}.demand-subtable .linkbtn{font-weight:600;white-space:nowrap;text-align:left}.cat-pills{display:flex;flex-wrap:wrap;gap:4px}.cat-pill{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:999px;background:var(--bg-2);border:1px solid var(--line);font-size:11px;white-space:nowrap;font-feature-settings:"tnum"}.subtotal-row td{border-top:2px solid var(--line-strong);background:var(--bg-2)}.reports-wrap{position:relative}.reports-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:40;width:380px;max-width:calc(100vw - 32px);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 16px 48px #0000002e;overflow:hidden}.reports-head{padding:14px 16px;border-bottom:1px solid var(--line)}.reports-group{padding:6px}.reports-group+.reports-group{border-top:1px solid var(--line)}.reports-grouphead{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--muted);padding:8px 10px 4px}.reports-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:10px;border:0;background:transparent;border-radius:var(--radius);cursor:pointer;color:inherit;font:inherit}.reports-item:hover{background:var(--bg-2)}.reports-item.primary{background:var(--accent-soft)}.reports-item.primary:hover{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.reports-item-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.reports-item-label{font-weight:600;font-size:13.5px}.reports-item-desc{font-size:12px;color:var(--muted);line-height:1.4}.reports-item-n{font-size:11px;color:var(--muted);white-space:nowrap;font-feature-settings:"tnum";align-self:flex-start;padding-top:2px}@media(max-width:520px){.reports-menu{width:calc(100vw - 32px)}}.report-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0000006b;display:flex;align-items:center;justify-content:center;padding:24px}.report-modal{background:var(--paper);border-radius:var(--radius-lg);border:1px solid var(--line);width:min(1040px,100%);max-height:88vh;display:flex;flex-direction:column;box-shadow:0 24px 70px #00000052;overflow:hidden}.report-modal-head{display:flex;align-items:flex-start;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line)}.report-modal-head .iconbtn{margin-left:auto;flex-shrink:0}.report-modal-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 20px;background:var(--bg-2);border-bottom:1px solid var(--line)}.report-modal-body{overflow:auto;-webkit-overflow-scrolling:touch;flex:1}.report-preview-table{margin:0;font-size:12.5px;white-space:nowrap}.report-preview-table thead th{position:sticky;top:0;z-index:1;background:var(--bg-2);box-shadow:inset 0 -1px 0 var(--line)}.report-preview-table .rownum{color:var(--muted);font-size:11px;text-align:right;width:44px;position:sticky;left:0;background:var(--paper)}.report-preview-table thead .rownum{background:var(--bg-2);z-index:2}.report-preview-table tbody tr:hover td{background:var(--bg-2)}.report-modal-foot{display:flex;align-items:center;gap:10px;padding:14px 20px;border-top:1px solid var(--line);background:var(--paper)}@media(max-width:600px){.report-modal-backdrop{padding:0}.report-modal{max-height:100vh;border-radius:0;width:100%}}.eb-grid{display:grid;grid-template-columns:1fr .9fr;gap:20px;align-items:start}.eb-theme{display:flex;flex-direction:column;gap:12px;margin-top:12px}.eb-themerow{display:flex;align-items:center;gap:12px}.eb-themerow>label{font-size:12.5px;font-weight:600;color:var(--ink-2);min-width:116px}.eb-swatch{width:26px;height:26px;border-radius:7px;border:2px solid transparent;cursor:pointer;box-shadow:inset 0 0 0 1px #0000001f}.eb-swatch.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--paper),0 0 0 3px var(--accent)}.eb-blocks{display:flex;flex-direction:column;gap:10px;margin-top:12px}.eb-block{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-2);padding:10px 12px}.eb-block-head{display:flex;align-items:center;gap:4px;margin-bottom:8px}.eb-block-type{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--muted)}.eb-block .iconbtn{width:26px;height:26px;font-size:13px}.eb-block .iconbtn:disabled{opacity:.3;cursor:default}.eb-addbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:12px;padding-top:12px;border-top:1px dashed var(--line-strong)}.eb-subjectline{padding:12px 0;border-bottom:1px solid var(--line);margin:10px 0 0}.eb-preview{margin-top:12px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;max-height:620px;overflow-y:auto}.eb-preview img{display:inline-block}@media(max-width:1024px){.eb-grid{grid-template-columns:1fr}.eb-preview{max-height:none}.eb-grid .col .card[style*=sticky]{position:static!important}}.integration-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-bottom:var(--space-4)}.integration-card{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper)}.integration-card.on{border-color:var(--success);box-shadow:inset 0 0 0 1px var(--success)}.integration-logo{width:44px;height:44px;border-radius:11px;flex-shrink:0;display:grid;place-items:center;font-weight:800;font-size:22px;color:#fff;font-family:var(--font-display)}.integration-logo.xero{background:#13b5ea}.integration-logo.awx{background:#612fff}.pay-flow{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;padding:16px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-2);margin-bottom:var(--space-4)}.pay-flow-step{display:flex;gap:10px;align-items:center;flex:1;min-width:180px}.pay-flow-num{width:28px;height:28px;border-radius:999px;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;flex-shrink:0}.pay-flow-arrow{display:flex;align-items:center;color:var(--muted);font-size:18px}@media(max-width:720px){.integration-row{grid-template-columns:1fr}.pay-flow-arrow{display:none}.pay-flow-step{min-width:100%}}*:focus-visible{outline:3px solid var(--accent, #2a6fdb);outline-offset:2px;border-radius:4px}.admin-side a{cursor:pointer}.admin-side a:focus-visible{outline-offset:-2px}.skip-link{position:absolute;left:8px;top:-48px;z-index:500;background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:8px;font-size:14px;font-weight:600;transition:top .12s}.skip-link:focus{top:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2.5s}}.import-issues{max-height:220px;overflow:auto;font-size:12.5px;line-height:1.6}.linklist code{font-family:var(--font-mono);font-size:11.5px;word-break:break-all}@media(max-width:1024px){html,body{overflow-x:hidden}}@media(max-width:1024px){.appbar{padding:var(--space-3) var(--space-4);gap:var(--space-2)}.appbar .nav{margin-left:var(--space-2)}.donor-grid{grid-template-columns:1fr;gap:var(--space-4)}.donor-sidebar{position:static;top:auto}.commitment-card{position:static;max-height:none;overflow:visible}.details-grid{grid-template-columns:1fr;gap:var(--space-4)}.stage-timeline{grid-template-columns:1fr}.stage-step{border-right:0;border-bottom:1px solid var(--line)}.stage-step:last-child{border-bottom:0}.offer-row{grid-template-columns:1fr}.donor-shell{padding-left:var(--space-4);padding-right:var(--space-4)}}@media(max-width:768px){.donor-substeps{padding:10px var(--space-3)}.donor-substeps-inner{gap:10px;align-items:flex-start;flex-direction:column}.steps{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:4px;-webkit-overflow-scrolling:touch}.steps .step{flex:0 0 auto}.steps .step+.step:before{width:16px;margin:0 8px}.donor-substeps-inner .spacer{display:none}.donor-substeps-inner .small{text-align:left!important;width:100%}.waves-grid,.accom-choice{grid-template-columns:1fr}.room-row{grid-template-columns:1fr;gap:var(--space-2)}.room-row .photo-slot{width:100%!important;height:120px!important}.room-price{text-align:left}.room-qty{justify-content:flex-start}}@media(max-width:640px){.appbar{padding:var(--space-2) var(--space-3);gap:var(--space-2)}.appbar .mark{font-size:15px;gap:8px;min-width:0}.appbar .mark .mark-logo{height:26px}.appbar .mark .wordmark .t1{font-size:13px;font-weight:600;white-space:nowrap}.appbar .mark .wordmark .t2{display:none}.appbar .mark>span{font-size:13px}.appbar .who .who-text{display:none}.appbar .who{gap:0}.donor-shell{padding-left:var(--space-3);padding-right:var(--space-3);padding-top:var(--space-4);padding-bottom:var(--space-6)}.invite-hero .copy{padding:var(--space-4) var(--space-3)}.invite-hero .visual{min-height:200px;padding:var(--space-4) var(--space-3)}.invite-hero .copy .display{font-size:34px!important}.invite-hero .visual .display{font-size:52px!important}.invite-hero .copy p{font-size:15px!important}.display{font-size:clamp(28px,9vw,40px)}h1.display[style]{font-size:clamp(28px,9vw,40px)!important}.h1{font-size:28px}.h2{font-size:21px}.donor-substeps{top:52px}.steps .step .label{font-size:11.5px}.filter-bar{gap:var(--space-2);padding:var(--space-2) var(--space-3)}.filter-bar>.row{width:100%}.filter-popover{width:calc(100vw - var(--space-5))}.cal-grid .day{min-height:64px;padding:5px}.cal-grid .dow{padding:7px 4px;font-size:9px;letter-spacing:.06em}.cal-grid .day .daynum{font-size:16px}.cal-grid .day .day-meta{font-size:9.5px;padding-top:2px}.cal-grid .day .day-flag{width:15px;height:15px;font-size:9px}.cal-grid .day .pickbubble{width:18px;height:18px;font-size:10px;top:4px;right:4px}.cal-grid .day .sports{gap:2px;margin-top:3px}.cal-grid .day .sport-tag{font-size:9px;padding:0 4px}.session{grid-template-columns:1fr;gap:var(--space-2);padding:var(--space-3)}.session-time{padding-top:0}.session .time{font-size:18px}.session-actions{width:100%}.session-actions .col-2{width:100%!important}.session-actions>.btn{width:100%}.sport-bar{padding:var(--space-2) var(--space-3);flex-wrap:wrap;gap:6px}.commitment-card{position:static;max-height:none;overflow:visible}.commit-head .total{font-size:26px}.waves-grid{grid-template-columns:1fr;gap:var(--space-3)}.wave-card{padding:var(--space-3)}.fieldgrid,.fieldgrid.three{grid-template-columns:1fr}.card[style*=min-width]{min-width:0!important}.btn.lg{width:100%}.row .btn.lg,.row.wrap .btn.lg{width:auto}.auth-wrap{padding:var(--space-3)}.auth-card{padding:var(--space-4)}.table{font-size:13px}.table th,.table td{padding:10px 12px}}@media(max-width:380px){.donor-shell{padding-left:var(--space-2);padding-right:var(--space-2)}.invite-hero .copy .display{font-size:28px!important}.invite-hero .visual .display{font-size:42px!important}.cal-grid .day{min-height:58px}.cal-grid .day .daynum{font-size:14px}.appbar .nav{display:none}}@media(max-width:1024px){.admin-main{padding:var(--space-4)}.admin-pagehead{gap:var(--space-3)}.lifecycle,.lifecycle-7{grid-template-columns:1fr}.lifecycle .stage{border-right:0;border-bottom:1px solid var(--line)}.lifecycle .stage:last-child{border-bottom:0}}@media(max-width:768px){.tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}.tabs button{white-space:nowrap;flex:0 0 auto}.settings-subtabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-2)}.settings-subtab{flex:0 0 auto;white-space:nowrap}.seg{flex-wrap:nowrap;overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.seg button{flex:0 0 auto;white-space:nowrap}}@media(max-width:640px){.admin-main{padding:var(--space-3)}.kpis{grid-template-columns:1fr}.card:not(.flush)>.table{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.drawer-head,.drawer-body{padding-left:var(--space-3);padding-right:var(--space-3)}.bar{grid-template-columns:96px 1fr 56px;gap:var(--space-2)}}
