@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Manrope:wght@400;500;600;700&display=swap";:root{--ex-bg:#0e0d0d;--ex-bg-alt:#131110;--ex-surface:#171413;--ex-line:#2a2623;--ex-control:#7a6c62;--ex-text:#f1ece6;--ex-muted:#aaa29a;--ex-accent:#cf9672;--ex-accent-text:#cf9672;--ex-on-accent:#17100c;--ex-success:#8fd1a3;--ex-danger:#e8968c;--ex-scrim:#0000009e;--ex-tint:color-mix(in srgb, var(--ex-accent) 14%, transparent);--ex-font-display:"Cormorant Garamond", Georgia, "Times New Roman", serif;--ex-font-body:Manrope, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ex-font-mono:ui-monospace, SFMono-Regular, Menlo, monospace;--ex-fs-eyebrow:11px;--ex-fs-caption:13px;--ex-fs-small:14px;--ex-fs-body:16px;--ex-fs-h3:22px;--ex-fs-h2:30px;--ex-fs-h1:34px;--ex-fs-metric:44px;--ex-tracking-eyebrow:.22em;--ex-radius:4px;--ex-radius-pill:999px;--ex-radius-sheet:12px;--ex-space-1:4px;--ex-space-2:8px;--ex-space-3:12px;--ex-space-4:16px;--ex-space-5:20px;--ex-space-6:24px;--ex-tap:44px;--ex-tap-primary:48px;--app-bg:var(--ex-bg);--app-text:var(--ex-text);--app-surface:var(--ex-surface);--app-surface-alt:var(--ex-bg-alt);--app-hint:var(--ex-muted);--app-link:var(--ex-accent-text);--app-button-bg:var(--ex-accent);--app-button-text:var(--ex-on-accent);--app-border:var(--ex-line);--app-muted:var(--ex-muted);--app-success:var(--ex-success);--app-danger:var(--ex-danger);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--ex-font-body);font-size:var(--ex-fs-body);background:var(--ex-bg);color:var(--ex-text);accent-color:var(--ex-accent);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;line-height:1.5}:root[data-theme=light]{--ex-bg:#f7f3ef;--ex-bg-alt:#efe8e1;--ex-surface:#fff;--ex-line:#e6ded6;--ex-control:#8f8278;--ex-text:#1b1613;--ex-muted:#675e56;--ex-accent:#cf9672;--ex-accent-text:#8a4f2d;--ex-on-accent:#17100c;--ex-success:#2c7447;--ex-danger:#a3352b;--ex-scrim:#1b161373;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--ex-bg);color:var(--ex-text);font-family:var(--ex-font-body);margin:0}h1,h2,h3{font-family:var(--ex-font-display);letter-spacing:0;font-weight:500;line-height:1.1}h1{font-size:var(--ex-fs-h1)}h2{font-size:var(--ex-fs-h2);margin:var(--ex-space-3) 0 0}h3{font-size:var(--ex-fs-h3);margin:var(--ex-space-4) 0 var(--ex-space-1)}p{margin:var(--ex-space-2) 0 0}strong{font-weight:600}a{color:var(--ex-accent-text);text-underline-offset:3px}details{border:1px solid var(--ex-line);border-radius:var(--ex-radius);background:var(--ex-surface);margin-top:var(--ex-space-2)}summary{min-height:var(--ex-tap);padding:0 var(--ex-space-4);cursor:pointer;align-items:center;font-weight:600;display:flex}details>:not(summary){padding:0 var(--ex-space-4) var(--ex-space-3)}button{min-height:var(--ex-tap-primary);border:1px solid var(--ex-accent);border-radius:var(--ex-radius);font:inherit;cursor:pointer;background:var(--ex-accent);color:var(--ex-on-accent);padding:10px 20px;font-size:15px;font-weight:600;line-height:1.25;transition:background-color .12s,border-color .12s,transform 80ms}button:active{transform:scale(.98)}button.secondary{min-height:var(--ex-tap);color:var(--ex-text);border-color:var(--ex-control);background:0 0;font-weight:500}button.danger{min-height:var(--ex-tap);color:var(--ex-danger);border-color:var(--ex-danger);background:0 0;font-weight:500}button:disabled{background:var(--ex-surface);color:var(--ex-muted);border-color:var(--ex-line);opacity:1;cursor:default;transform:none}@media (hover:hover){button:not(:disabled):hover{background:color-mix(in srgb, var(--ex-accent) 88%, var(--ex-text))}button.secondary:not(:disabled):hover,button.danger:not(:disabled):hover,.bottom-nav button:not(:disabled):hover,.date-strip button:not(.active):not(:disabled):hover,.payment-method-option:not(.selected):not(:disabled):hover{background:var(--ex-tint)}}.button-link{min-height:var(--ex-tap);border:1px solid var(--ex-accent);border-radius:var(--ex-radius);background:var(--ex-accent);color:var(--ex-on-accent);justify-content:center;align-items:center;padding:10px 18px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.button-link.secondary{color:var(--ex-text);border-color:var(--ex-control);border-radius:var(--ex-radius-pill);background:0 0;font-weight:500}main{min-height:var(--tg-viewport-stable-height,100vh);padding:var(--ex-space-6) var(--ex-space-5);place-items:center;display:grid}.card{width:min(100%,560px);padding:var(--ex-space-6) var(--ex-space-5);border:1px solid var(--ex-line);border-radius:var(--ex-radius);background:var(--ex-surface)}.card h1,.card h2{margin-top:0}.card h1{color:var(--ex-accent-text);letter-spacing:.04em;font-size:30px}.card button{width:100%;margin-top:var(--ex-space-4)}.card .actions button{margin-top:0}.app-shell{min-height:var(--tg-viewport-stable-height,100vh);padding:var(--ex-space-3) var(--ex-space-5) calc(96px + env(safe-area-inset-bottom));background:var(--ex-bg)}.topbar,.section-heading,.item-card__top,.filter-row,.roster-row{justify-content:space-between;align-items:center;gap:var(--ex-space-3);display:flex}.topbar{width:min(100%,920px);min-height:var(--ex-tap);margin:0 auto var(--ex-space-2)}.topbar>div{justify-content:space-between;align-items:baseline;gap:var(--ex-space-3);flex:1;min-width:0;display:flex}.topbar h1{font-family:var(--ex-font-body);font-size:var(--ex-fs-small);color:var(--ex-muted);white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:500;overflow:hidden}.section-heading h2{margin:0}.content{place-items:normal;width:min(100%,920px);min-height:0;margin:0 auto;padding:0;display:block}.content>.stack>h2:first-child,.content>.stack>.section-heading:first-child h2{font-size:var(--ex-fs-h1);margin-top:var(--ex-space-1)}.stack{gap:var(--ex-space-3);display:grid}.compact-stack{margin-top:var(--ex-space-3)}.item-card,.hero-card,.attention-card,.user-row{border:1px solid var(--ex-line);border-radius:var(--ex-radius);background:var(--ex-surface);width:100%;color:inherit;padding:var(--ex-space-4) 18px;text-align:left}.item-card>strong:first-child,.attention-card>strong:first-child{font-size:15px;display:block}.item-card>.actions,.hero-card>.actions,.attention-card>.actions{margin-top:var(--ex-space-3)}.hero-card{padding:var(--ex-space-5)}.hero-card h2{margin-top:var(--ex-space-2)}.hero-card .eyebrow{display:block}.attention-card{border-color:var(--ex-accent)}button.user-row{background:var(--ex-surface);min-height:56px;color:var(--ex-text);border-color:var(--ex-line);justify-content:space-between;align-items:center;font-weight:600;display:flex}.user-row{justify-content:space-between;align-items:center;display:flex}.user-row small{margin-top:var(--ex-space-1);color:var(--ex-muted);font-weight:400;display:block}.actions{align-items:center;gap:var(--ex-space-2);flex-wrap:wrap;display:flex}.subscription-switch{gap:var(--ex-space-2);padding:var(--ex-space-1);border:1px solid var(--ex-line);border-radius:var(--ex-radius);background:var(--ex-surface);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.subscription-switch button{min-height:var(--ex-tap-primary);color:var(--ex-text);font-size:var(--ex-fs-small);background:0 0;border-color:#0000;padding:9px 12px}.subscription-switch button.active{background:var(--ex-tint);color:var(--ex-text);border-color:var(--ex-accent)}.subscription-current .metric{margin-top:var(--ex-space-3)}.payment-method-picker{border:1px solid var(--ex-line);border-radius:var(--ex-radius);background:var(--ex-surface);padding:var(--ex-space-4) 18px;gap:10px;display:grid}.payment-method-picker>strong{font-size:15px}.payment-method-picker>p{font-size:var(--ex-fs-small);margin:0}.payment-method-options{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.payment-method-option{min-height:64px;color:var(--ex-text);border:1px solid var(--ex-control);background:0 0;place-items:center;gap:2px;font-weight:600;display:grid}.payment-method-option.selected{background:var(--ex-tint);color:var(--ex-text);border:2px solid var(--ex-accent);box-shadow:none}.payment-method-selected{color:var(--ex-accent-text);font-size:12px;font-weight:600;display:block}.payment-method-required{color:var(--ex-danger);font-size:var(--ex-fs-small);font-weight:600}.pill{border:1px solid var(--ex-control);border-radius:var(--ex-radius-pill);white-space:nowrap;min-height:26px;color:var(--ex-text);align-items:center;padding:2px 10px;font-size:12px;font-weight:500;display:inline-flex}.success{color:var(--ex-success);font-weight:600}.muted{color:var(--ex-muted);opacity:1}.eyebrow{color:var(--ex-accent-text);font-size:var(--ex-fs-eyebrow);text-transform:uppercase;letter-spacing:var(--ex-tracking-eyebrow);font-weight:500}.metric{margin:var(--ex-space-1) 0;font-family:var(--ex-font-display);font-size:var(--ex-fs-metric);font-weight:500;line-height:1}input,select,textarea{width:100%;min-height:var(--ex-tap-primary);border:1px solid var(--ex-control);border-radius:var(--ex-radius);background:var(--ex-surface);color:var(--ex-text);font:inherit;padding:10px 14px;font-size:16px}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ex-muted) 50%), linear-gradient(135deg, var(--ex-muted) 50%, transparent 50%);background-position:calc(100% - 20px),calc(100% - 14px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:40px}input::placeholder,textarea::placeholder{color:var(--ex-muted)}textarea{resize:vertical;min-height:96px}.field{gap:6px;display:grid}.field>span{color:var(--ex-muted);font-size:var(--ex-fs-caption)}.form-grid{gap:var(--ex-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.field-wide{grid-column:1/-1}.grow{flex:1}.check-field{min-height:var(--ex-tap);align-items:center;gap:10px;display:flex}.check-field input[type=checkbox]{width:22px;height:22px;min-height:22px;accent-color:var(--ex-accent);margin:0;padding:0}.loading-line{width:min(100%,920px);margin:0 auto var(--ex-space-3);border-radius:var(--ex-radius);background:var(--ex-bg-alt);color:var(--ex-muted);font-size:var(--ex-fs-small);padding:10px 12px}.toast{top:max(12px, env(safe-area-inset-top));z-index:40;justify-content:space-between;align-items:center;gap:var(--ex-space-3);border:1px solid var(--toast-color);border-radius:var(--ex-radius);background:color-mix(in srgb, var(--toast-color) 14%, var(--ex-surface));width:min(100% - 24px,560px);color:var(--ex-text);font-size:var(--ex-fs-small);margin:0 auto;padding:10px 12px;display:flex;position:fixed;left:12px;right:12px}.toast--error{--toast-color:var(--ex-danger)}.toast--notice{--toast-color:var(--ex-success)}.toast button{min-width:var(--ex-tap);min-height:var(--ex-tap);flex:none;padding:4px 12px}.policy-text{max-height:40vh;margin-top:var(--ex-space-2);white-space:pre-wrap;color:var(--ex-muted);font-size:var(--ex-fs-small);overflow:auto}.metric-grid{gap:var(--ex-space-3);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.bottom-nav{z-index:10;padding:6px 8px max(8px, env(safe-area-inset-bottom));border-top:1px solid var(--ex-line);background:var(--ex-bg);gap:2px;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{min-width:0;min-height:var(--ex-tap);white-space:normal;color:var(--ex-muted);border-radius:var(--ex-radius);background:0 0;border:0;flex:1 1 0;padding:6px 4px;font-size:12px;font-weight:500;line-height:1.2;box-shadow:inset 0 2px #0000}.bottom-nav button.active{color:var(--ex-accent-text);box-shadow:inset 0 2px 0 var(--ex-accent);font-weight:600}.sheet-backdrop{z-index:20;background:var(--ex-scrim);align-items:end;display:grid;position:fixed;inset:0}.sheet{border:1px solid var(--ex-line);border-radius:var(--ex-radius-sheet) var(--ex-radius-sheet) 0 0;background:var(--ex-surface);width:min(100%,760px);max-height:88vh;padding:var(--ex-space-5) var(--ex-space-5) max(var(--ex-space-6), env(safe-area-inset-bottom));border-bottom:0;margin:0 auto;overflow:auto}.sheet .item-card{background:var(--ex-bg)}.sheet h2{margin:0;font-size:26px}.csv-area{min-height:150px;margin:var(--ex-space-3) 0}.mono{font-family:var(--ex-font-mono);font-size:.84rem}.break-word{overflow-wrap:anywhere}.audit-grid{gap:var(--ex-space-2);margin:10px 0;display:grid}.audit-grid>div{grid-template-columns:minmax(120px,.45fr) 1fr;gap:10px;display:grid}.audit-grid strong{color:var(--ex-muted);font-weight:500}.date-strip{gap:var(--ex-space-2);margin:0 calc(-1 * var(--ex-space-5));padding:0 var(--ex-space-5) var(--ex-space-1);scrollbar-width:none;display:flex;overflow-x:auto}.date-strip::-webkit-scrollbar{display:none}.date-strip button{min-height:var(--ex-tap);border-radius:var(--ex-radius-pill);color:var(--ex-muted);border-color:var(--ex-control);font-size:var(--ex-fs-small);background:0 0;flex:none;padding:0 16px;font-weight:500}.date-strip button.active{background:var(--ex-accent);color:var(--ex-on-accent);border-color:var(--ex-accent);font-weight:600}@media (width<=640px){.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.section-heading,.filter-row{flex-direction:column;align-items:stretch}.section-heading .actions{width:100%}.section-heading .actions button{flex:1}}.section-heading>button{align-self:flex-start}:focus-visible{outline:2px solid var(--ex-accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}button:active{transform:none}}
