@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/19150647d2c2f572-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/000030d1699f2fb3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/1926da171a0ba1a5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/78d0dd042ac6d54d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/19150647d2c2f572-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/000030d1699f2fb3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/1926da171a0ba1a5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/78d0dd042ac6d54d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/19150647d2c2f572-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/000030d1699f2fb3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/1926da171a0ba1a5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/78d0dd042ac6d54d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Playfair Display Fallback;src:local("Times New Roman");ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:111.26%}.__className_d2fc81{font-family:Playfair Display,Playfair Display Fallback}.__variable_d2fc81{--font-playfair:"Playfair Display","Playfair Display Fallback"}:root{--color-bg:#ffffff;--color-fg:#0a0a0a;--color-accent:#4f46e5;--brand-name:"DetailRoster";--dr-bg:#1a1c20;--dr-bg-deep:#14161a;--dr-surface:#23262b;--dr-surface-2:#2b2f36;--dr-surface-3:#343943;--dr-border:rgba(255,255,255,0.08);--dr-border-strong:rgba(255,255,255,0.16);--dr-text:#ffffff;--dr-text-2:#e0e5ec;--dr-text-3:#a3adba;--dr-text-4:#7c8794;--dr-accent:#005b96;--dr-accent-hover:#0b6fb4;--dr-accent-bright:#4fa8e6;--dr-accent-soft:rgba(0,91,150,0.22);--dr-success:#35b57f;--dr-success-text:#6fd7a9;--dr-success-soft:rgba(53,181,127,0.16);--dr-warn:#e3ac3f;--dr-warn-text:#f0c364;--dr-warn-soft:rgba(227,172,63,0.16);--dr-danger:#e5484d;--dr-danger-text:#ff8a8e;--dr-danger-soft:rgba(229,72,77,0.16);--dr-radius-sm:6px;--dr-radius-md:10px;--dr-radius-lg:14px;--dr-shadow:0 12px 32px rgba(0,0,0,0.35);--color-bg:var(--dr-bg);--color-fg:var(--dr-text-2);--color-accent:var(--dr-accent-bright)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--dr-bg);color:var(--dr-text-2);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}.app-root{--dr-font-body:var(--font-inter,Inter),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--dr-font-display:var(--font-playfair,"Playfair Display"),Georgia,"Times New Roman",serif;min-height:100vh;display:flex;flex-direction:column;font-family:var(--dr-font-body);font-size:16px}.app-root .app-main{flex:1 0 auto}.app-root h1,.app-root h2,.app-root h3,.app-root h4{font-family:var(--dr-font-display);font-weight:500;line-height:1.15;letter-spacing:-.01em;color:var(--dr-text);margin:0 0 .5rem}.app-root h1{font-size:clamp(1.9rem,1.4rem + 1.8vw,2.75rem)}.app-root h2{font-size:1.35rem}.app-root h3{font-size:1.1rem}.app-root p{margin:0 0 1rem;color:var(--dr-text-2)}.app-root a{color:var(--dr-accent-bright);text-decoration:none}.app-root a:hover{text-decoration:underline;text-underline-offset:3px}.app-root ol,.app-root ul{padding-left:1.2rem}.app-root li{margin:6px 0}.app-root .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}.app-root .muted{color:var(--dr-text-3)}.app-root .small{font-size:.875rem}.app-root .nowrap{white-space:nowrap}.app-root .app-header{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:rgba(20,22,26,.88);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--dr-border)}.app-root .app-header-inner{max-width:1160px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.app-root .brand{display:inline-flex;align-items:center;gap:10px;color:var(--dr-text);text-decoration:none;font-family:var(--dr-font-display);font-size:1.3rem;font-weight:600;letter-spacing:-.02em}.app-root .brand:hover{text-decoration:none;color:var(--dr-text-2)}.app-root .brand img{width:34px;height:34px;object-fit:contain}.app-root .app-nav{display:flex;align-items:center;gap:6px 22px;flex-wrap:wrap}.app-root .app-nav a:not(.button){color:var(--dr-text-2);font-weight:500;font-size:.95rem;text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}.app-root .app-nav a:not(.button):hover{color:var(--dr-text)}.app-root .app-nav a[aria-current=page]{color:var(--dr-text);border-bottom-color:var(--dr-accent-bright)}.app-root .demo{display:flex;align-items:center;justify-content:center;gap:6px 14px;flex-wrap:wrap;padding:8px 24px;background:var(--dr-accent-soft);border-bottom:1px solid rgba(79,168,230,.25);color:var(--dr-text-2);font-size:.85rem;text-align:center}.app-root .demo strong{color:var(--dr-text);font-weight:600}.app-root .app-footer{border-top:1px solid var(--dr-border);margin-top:48px;padding:28px 24px}.app-root .app-footer-inner{max-width:1160px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;font-size:.85rem;color:var(--dr-text-3)}.app-root .app-footer-links{display:flex;gap:18px;flex-wrap:wrap}.app-root .app-footer a{color:var(--dr-text-3)}.app-root .app-footer a:hover{color:var(--dr-text)}.app-root .page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}.app-root .page-header h1{margin:0}.app-root .eyebrow{display:flex;align-items:center;gap:10px;font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--dr-accent-bright);margin-bottom:8px}.app-root .lede{color:var(--dr-text-3);font-size:1.02rem;max-width:62ch;margin:10px 0 0}.app-root .page-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.app-root .back-link{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;color:var(--dr-text-3);margin-bottom:18px}.app-root .back-link:hover{color:var(--dr-text)}.app-root .back-link svg{width:14px;height:14px}.app-root .button,.app-root button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 18px;border-radius:var(--dr-radius-sm);border:1px solid transparent;background:var(--dr-accent);color:#fff;font:inherit;font-weight:600;font-size:.95rem;line-height:1;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.app-root .button svg,.app-root button svg{width:16px;height:16px;flex-shrink:0}.app-root .button:hover,.app-root button:hover{background:var(--dr-accent-hover);color:#fff;text-decoration:none}.app-root button:disabled{opacity:.55;cursor:not-allowed}.app-root .button-secondary{background:transparent;border-color:var(--dr-border-strong);color:var(--dr-text)}.app-root .button-secondary:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.3);color:var(--dr-text)}.app-root .button-ghost{background:transparent;color:var(--dr-accent-bright);padding:0 10px;min-height:36px}.app-root .button-ghost:hover{background:var(--dr-accent-soft);color:var(--dr-accent-bright)}.app-root .button-danger{background:transparent;color:var(--dr-danger-text);padding:0 10px;min-height:36px}.app-root .button-danger:hover{background:var(--dr-danger-soft);color:var(--dr-danger-text)}.app-root .button-sm{min-height:34px;padding:0 12px;font-size:.85rem}.app-root .button-lg{min-height:50px;padding:0 26px;font-size:1.05rem}.app-root .button-block{width:100%}.app-root .form-card{background:var(--dr-surface);border:1px solid var(--dr-border);border-radius:var(--dr-radius-lg);padding:28px}.app-root fieldset{border:0;padding:0;margin:0 0 8px;min-width:0}.app-root legend{font-family:var(--dr-font-display);font-size:1.1rem;color:var(--dr-text);padding:0;margin-bottom:14px}.app-root label{display:block;font-size:.875rem;font-weight:500;color:var(--dr-text-2);margin-bottom:16px}.app-root label>input,.app-root label>select,.app-root label>textarea{margin-top:6px}.app-root input,.app-root select,.app-root textarea{display:block;width:100%;padding:11px 12px;color:var(--dr-text);background:var(--dr-bg-deep);border:1px solid var(--dr-border-strong);border-radius:var(--dr-radius-sm);font:inherit;font-size:.95rem;color-scheme:dark;transition:border-color .15s ease,box-shadow .15s ease}.app-root input:hover,.app-root select:hover,.app-root textarea:hover{border-color:rgba(255,255,255,.28)}.app-root input:focus-visible,.app-root select:focus-visible,.app-root textarea:focus-visible{outline:none;border-color:var(--dr-accent-bright);box-shadow:0 0 0 3px var(--dr-accent-soft)}.app-root input:disabled,.app-root select:disabled{opacity:.6;cursor:not-allowed}.app-root input::placeholder{color:var(--dr-text-4)}.app-root .button:focus-visible,.app-root a:focus-visible,.app-root button:focus-visible{outline:3px solid var(--dr-accent-bright);outline-offset:3px}.app-root .form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 20px;gap:0 20px}.app-root .field-hint{font-size:.8rem;color:var(--dr-text-3);margin:-8px 0 16px}.app-root .form-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:8px}.app-root .form-footnote{font-size:.85rem;color:var(--dr-text-3);margin:14px 0 0}.app-root .card{background:var(--dr-surface);border:1px solid var(--dr-border);border-radius:var(--dr-radius-lg);padding:24px}.app-root .card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.app-root .card-header h2{margin:0;font-size:1.2rem}.app-root .card-sub{color:var(--dr-text-3);font-size:.9rem;margin:4px 0 0}.app-root .stack{display:grid;grid-gap:20px;gap:20px}.app-root .grid-2{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);grid-gap:20px;gap:20px;align-items:start}.app-root .section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:32px 0 14px}.app-root .section-title h2{margin:0;font-size:1.2rem}.app-root .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:14px;gap:14px;margin-bottom:24px}.app-root .stat{background:var(--dr-surface);border:1px solid var(--dr-border);border-radius:var(--dr-radius-md);padding:16px 18px}.app-root .stat-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--dr-text-3);font-weight:600}.app-root .stat-value{font-family:var(--dr-font-display);font-size:1.9rem;color:var(--dr-text);line-height:1.1;margin-top:6px}.app-root .stat-value small{font-size:1rem;color:var(--dr-text-3);font-family:var(--dr-font-body);margin-left:2px}.app-root .stat-note{font-size:.8rem;color:var(--dr-text-3);margin-top:4px}.app-root .badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;background:var(--dr-surface-3);color:var(--dr-text-2);white-space:nowrap;line-height:1.4}.app-root .badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.app-root .badge-plain:before{display:none}.app-root .badge-open{background:var(--dr-success-soft);color:var(--dr-success-text)}.app-root .badge-soldout{background:var(--dr-danger-soft);color:var(--dr-danger-text)}.app-root .badge-closed,.app-root .badge-past{background:rgba(255,255,255,.08);color:var(--dr-text-3)}.app-root .badge-accent{background:var(--dr-accent-soft);color:var(--dr-accent-bright)}.app-root .badge-warn{background:var(--dr-warn-soft);color:var(--dr-warn-text)}.app-root .progress{height:10px;background:var(--dr-bg-deep);border:1px solid var(--dr-border);border-radius:999px;overflow:hidden}.app-root .progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--dr-accent),var(--dr-accent-bright));border-radius:999px;transition:width .6s ease}.app-root .progress-full>span{background:linear-gradient(90deg,#1f9a68,var(--dr-success))}.app-root .progress-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.85rem;color:var(--dr-text-3);margin-top:8px}.app-root .progress-meta strong{color:var(--dr-text);font-weight:600}.app-root .list{display:grid;grid-gap:12px;gap:12px;list-style:none;padding:0;margin:0}.app-root .list li{margin:0}.app-root .list-item{display:flex;align-items:center;gap:18px;background:var(--dr-surface);border:1px solid var(--dr-border);border-radius:var(--dr-radius-md);padding:16px 20px;color:inherit;text-decoration:none;transition:border-color .15s ease,background-color .15s ease}.app-root .list-item:hover{border-color:rgba(79,168,230,.45);background:var(--dr-surface-2);text-decoration:none}.app-root .item-body{flex:1 1;min-width:0}.app-root .item-title{display:block;font-weight:600;color:var(--dr-text);font-size:1.05rem}.app-root .item-meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.875rem;color:var(--dr-text-3);margin-top:4px}.app-root .item-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:160px;text-align:right}.app-root .item-side .progress{width:160px}.app-root .item-side .small{color:var(--dr-text-3)}.app-root .date-tile{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:64px;min-height:64px;padding:6px 0;border-radius:var(--dr-radius-md);background:var(--dr-bg-deep);border:1px solid var(--dr-border-strong);text-align:center;line-height:1;flex-shrink:0}.app-root .date-tile .m{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--dr-accent-bright)}.app-root .date-tile .d{font-family:var(--dr-font-display);font-size:1.7rem;color:var(--dr-text);margin-top:4px}.app-root .date-tile-lg{width:84px;min-height:84px}.app-root .date-tile-lg .d{font-size:2.3rem}.app-root .event-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#23262b,#1d2530 60%,#18293a);border:1px solid var(--dr-border);border-radius:var(--dr-radius-lg);padding:32px}.app-root .event-hero:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--dr-accent),var(--dr-accent-bright),transparent)}.app-root .event-hero h1{margin:6px 0 4px;font-size:clamp(2rem,1.5rem + 2.2vw,3rem)}.app-root .hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.app-root .hero-host{color:var(--dr-text-3);margin:0 0 18px}.app-root .event-when{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:18px 0 6px}.app-root .when-text{font-size:1.05rem;color:var(--dr-text);font-weight:500}.app-root .when-text .sub{display:block;color:var(--dr-text-3);font-size:.92rem;font-weight:400;margin-top:3px}.app-root .hero-availability{margin-top:22px;max-width:520px}.app-root .hero-cta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:24px}.app-root .hero-cta .hint{font-size:.9rem;color:var(--dr-text-3);margin:0}.app-root .tiers{list-style:none;padding:0;margin:0;display:grid;grid-gap:10px;gap:10px}.app-root .tiers li{margin:0}.app-root .tier-row{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:var(--dr-radius-md);background:var(--dr-bg-deep);border:1px solid var(--dr-border)}.app-root .tier-row.is-unlocked{border-color:rgba(53,181,127,.35)}.app-root .tier-row.is-next{border-color:rgba(79,168,230,.45)}.app-root .tier-marker{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--dr-surface-3);color:var(--dr-text-3)}.app-root .tier-marker svg{width:16px;height:16px}.app-root .is-unlocked .tier-marker{background:var(--dr-success-soft);color:var(--dr-success-text)}.app-root .is-next .tier-marker{background:var(--dr-accent-soft);color:var(--dr-accent-bright)}.app-root .tier-body{flex:1 1;min-width:0}.app-root .tier-reward{color:var(--dr-text);font-weight:500}.app-root .tier-hint{font-size:.8rem;color:var(--dr-text-3);margin-top:2px}.app-root .perk-progress{margin-bottom:18px}.app-root .perk-progress-label{display:flex;justify-content:space-between;gap:12px;font-size:.9rem;color:var(--dr-text-2);margin-bottom:8px}.app-root .perk-progress-label strong{color:var(--dr-text)}.app-root .tier-edit{display:grid;grid-template-columns:140px minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:end;padding:14px;border:1px solid var(--dr-border);border-radius:var(--dr-radius-md);background:var(--dr-bg-deep);margin-bottom:12px}.app-root .tier-edit label{margin-bottom:0}.app-root .tier-edit button{margin-bottom:3px}.app-root .share-box{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap}.app-root .share-url{flex:1 1 260px;display:flex;align-items:center;min-height:42px;padding:9px 14px;border-radius:var(--dr-radius-sm);background:var(--dr-bg-deep);border:1px solid var(--dr-border-strong);color:var(--dr-text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88rem;line-height:1.45;overflow-wrap:anywhere;word-break:break-all;text-decoration:none;min-width:0}.app-root .share-url:hover{border-color:var(--dr-accent-bright);text-decoration:none;color:var(--dr-text)}.app-root .table-wrap{overflow-x:auto;border:1px solid var(--dr-border);border-radius:var(--dr-radius-md);-webkit-overflow-scrolling:touch}.app-root table{width:100%;border-collapse:collapse;min-width:640px;font-size:.92rem}.app-root th{text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--dr-text-3);font-weight:600;padding:12px 16px;background:var(--dr-bg-deep);white-space:nowrap}.app-root td,.app-root th{border-bottom:1px solid var(--dr-border)}.app-root td{padding:14px 16px;color:var(--dr-text-2);vertical-align:top}.app-root tbody tr:last-child td{border-bottom:0}.app-root tbody tr:hover td{background:rgba(255,255,255,.025)}.app-root td .primary{color:var(--dr-text);font-weight:500}.app-root td .sub{display:block;font-size:.82rem;color:var(--dr-text-3);margin-top:2px}.app-root .table-hint{font-size:.8rem;color:var(--dr-text-4);margin:10px 0 0}.app-root .notice,.app-root [role=alert],.app-root [role=status]{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--dr-radius-md);font-size:.92rem;margin:0 0 16px;border:1px solid transparent;color:var(--dr-text-2)}.app-root [role=alert]{background:var(--dr-danger-soft);border-color:rgba(229,72,77,.35);color:#ffd3d5}.app-root [role=status]{background:var(--dr-success-soft);border-color:rgba(53,181,127,.35);color:#cdf3e2}.app-root .notice-muted{background:var(--dr-bg-deep);border-color:var(--dr-border);color:var(--dr-text-3)}.app-root .notice-accent{background:var(--dr-accent-soft);border-color:rgba(79,168,230,.3);color:var(--dr-text-2)}.app-root .notice-soldout{background:var(--dr-danger-soft);border-color:rgba(229,72,77,.35);color:#ffd3d5;font-weight:600}.app-root .notice svg,.app-root [role=alert] svg,.app-root [role=status] svg{width:18px;height:18px;flex-shrink:0;margin-top:2px}.app-root .empty{text-align:center;padding:44px 24px;border:1px dashed var(--dr-border-strong);border-radius:var(--dr-radius-lg);background:rgba(255,255,255,.015)}.app-root .empty-icon{width:48px;height:48px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--dr-accent-soft);color:var(--dr-accent-bright)}.app-root .empty-icon svg{width:22px;height:22px}.app-root .empty h3{margin:0 0 6px}.app-root .empty p{color:var(--dr-text-3);margin:0 auto 18px;max-width:46ch}.app-root .empty-compact{padding:28px 20px}.app-root .details{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin:0}.app-root .details>div{padding:12px 14px;background:var(--dr-bg-deep);border:1px solid var(--dr-border);border-radius:var(--dr-radius-md);min-width:0}.app-root .details dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--dr-text-3);font-weight:600}.app-root .details dd{margin:4px 0 0;color:var(--dr-text);font-weight:500;overflow-wrap:anywhere}.app-root .packages{list-style:none;margin:0;padding:0;display:grid;grid-gap:10px;gap:10px}.app-root .packages li{margin:0}.app-root .package{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding:14px 16px;background:var(--dr-bg-deep);border:1px solid var(--dr-border);border-radius:var(--dr-radius-md)}.app-root .package-title{color:var(--dr-text);font-weight:600}.app-root .package-desc{display:block;font-size:.85rem;color:var(--dr-text-3);margin-top:2px}.app-root .package-price{font-family:var(--dr-font-display);font-size:1.25rem;color:var(--dr-text);white-space:nowrap}.app-root .confirm-mark{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--dr-success-soft);color:var(--dr-success-text);margin-bottom:16px}.app-root .confirm-mark svg{width:26px;height:26px}.app-root .auth-card{background:var(--dr-surface);border:1px solid var(--dr-border);border-radius:var(--dr-radius-lg);padding:32px}.app-root .auth-brand{display:flex;justify-content:center;margin-bottom:18px}.app-root .auth-brand img{width:56px;height:56px;object-fit:contain}.app-root .auth-card h1{text-align:center;font-size:1.75rem;margin-bottom:6px}.app-root .auth-card .lede{text-align:center;margin:0 auto 24px;font-size:.95rem}.app-root .auth-links{text-align:center;font-size:.92rem;color:var(--dr-text-3);margin:18px 0 0}.app-root .auth-links+.auth-links{margin-top:8px}.app-root .prose p{color:var(--dr-text-2);font-size:1.02rem;line-height:1.75}.app-root .skeleton{position:relative;overflow:hidden;background:var(--dr-surface-2);border-radius:var(--dr-radius-sm);min-height:14px}.app-root .skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent);animation:dr-shimmer 1.4s infinite}@keyframes dr-shimmer{to{transform:translateX(100%)}}.app-root .steps{margin:0;padding:0;list-style:none;counter-reset:dr-steps;display:grid;grid-gap:12px;gap:12px}.app-root .steps li{position:relative;margin:0;padding-left:40px;font-size:.92rem;color:var(--dr-text-3);counter-increment:dr-steps}.app-root .steps li strong{color:var(--dr-text);font-weight:600}@media (min-width:721px){.app-root .steps-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}}.app-root .steps li:before{content:counter(dr-steps);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--dr-accent-soft);color:var(--dr-accent-bright);font-size:.8rem;font-weight:700}.app-root .eyebrow-icon{width:14px;height:14px}.app-root .hint{font-size:.92rem;color:var(--dr-text-3);margin:0}.app-root .powered{text-align:center;font-size:.8rem;color:var(--dr-text-4);margin-top:28px}.app-root .powered a{color:var(--dr-text-3)}@media (max-width:720px){.app-root .app-header-inner{padding:12px 16px;flex-wrap:wrap;row-gap:6px}.app-root .app-nav{flex-wrap:nowrap;gap:16px}.app-root .app-nav a:not(.button){font-size:.9rem}.app-root .brand span{font-size:1.1rem}.app-root .demo{font-size:.8rem;padding:8px 16px}.app-root .perk-progress-label{flex-direction:column;gap:2px}.app-root .tier-row .badge{display:none}.app-root .hero-cta .button{width:100%}.app-root .details,.app-root .form-grid,.app-root .grid-2,.app-root .tier-edit{grid-template-columns:1fr}.app-root .tier-edit{align-items:stretch}.app-root .event-hero{padding:24px 20px}.app-root .card{padding:20px}.app-root .list-item{flex-wrap:wrap}.app-root .item-side{align-items:flex-start;min-width:0;width:100%;text-align:left}.app-root .item-side .progress{width:100%}.app-root .page-header{align-items:flex-start}}@media (prefers-reduced-motion:reduce){.app-root *{transition:none!important;animation:none!important}}