@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbd88c7cbebcb5b-s.33sztrngv_ieb.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e3c10b17cdb86a23-s.198xu-2bu0foz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Barlow Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(../media/612838607db3d51d-s.p.2-6hkzwn24m5-.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9710cef2a2a6ac70-s.38t85nkp60tez.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(../media/a978fc28c69736ab-s.2omtmoo94goav.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(../media/303804218d80822e-s.p.3lj349bs9hfu1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e37557cf0085218d-s.2dbbbbabmw4n4.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/146a3e5eadafdf83-s.1oqo1buse5xew.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d9b5d46d9a89ffe6-s.p.0xxdg0o7uh536.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed Fallback;src:local(Arial);ascent-override:130.73%;descent-override:26.15%;line-gap-override:0.0%;size-adjust:76.49%}.barlow_condensed_f461ccc6-module__D4ez5G__className{font-family:Barlow Condensed,Barlow Condensed Fallback;font-style:normal}.barlow_condensed_f461ccc6-module__D4ez5G__variable{--font-display:"Barlow Condensed", "Barlow Condensed Fallback"}
@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/91bd2e40df15814e-s.19s5evoqhirey.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/a63431c4ac64ea8b-s.386o_ri1vb0yv.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8b4ed0a90d903ab5-s.44dak0sams9f0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/c47649aa31f9e140-s.p.3lxpqujs87tck.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk Fallback;src:local(Arial);ascent-override:99.07%;descent-override:30.02%;line-gap-override:0.0%;size-adjust:100.94%}.hanken_grotesk_1af633a5-module__9GbOPa__className{font-family:Hanken Grotesk,Hanken Grotesk Fallback;font-style:normal}.hanken_grotesk_1af633a5-module__9GbOPa__variable{--font-sans:"Hanken Grotesk", "Hanken Grotesk Fallback"}
@font-face{font-family:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d203b9464cfa0970-s.3tsglnldgzmbb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a69e508140118fbc-s.1i-4lpdmefbdo.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a9a434ecf764164f-s.p.09kihw1cxxru6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fragment Mono Fallback;src:local(Arial);ascent-override:68.53%;descent-override:18.03%;line-gap-override:0.0%;size-adjust:138.63%}.fragment_mono_f6bd83a8-module__b7kP-q__className{font-family:Fragment Mono,Fragment Mono Fallback;font-style:normal;font-weight:400}.fragment_mono_f6bd83a8-module__b7kP-q__variable{--font-mono:"Fragment Mono", "Fragment Mono Fallback"}
@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(../media/35161b7740c25d33-s.0izitdbyxo4j2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(../media/391e53907fa6d8ec-s.0vmd737txk1h4.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(../media/ae8872c8a32e309c-s.0iqen1t80zg64.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(../media/70e3db2de7f94926-s.p.39pl-v7c3qrze.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(../media/35161b7740c25d33-s.0izitdbyxo4j2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(../media/391e53907fa6d8ec-s.0vmd737txk1h4.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(../media/ae8872c8a32e309c-s.0iqen1t80zg64.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(../media/70e3db2de7f94926-s.p.39pl-v7c3qrze.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(../media/65c558afe41e89d6-s.3jppgd0xzx-0d.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(../media/14e23f9b59180572-s.0t8ljjjn9wtsx.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b49b0d9b851e4899-s.2zyohmvb-ks7f.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(../media/2a65768255d6b625-s.p.3u4lli0-axodc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(../media/65c558afe41e89d6-s.3jppgd0xzx-0d.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(../media/14e23f9b59180572-s.0t8ljjjn9wtsx.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b49b0d9b851e4899-s.2zyohmvb-ks7f.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(../media/2a65768255d6b625-s.p.3u4lli0-axodc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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.0%;size-adjust:111.26%}.playfair_display_dd0ac90c-module__RCqWlW__className{font-family:Playfair Display,Playfair Display Fallback}.playfair_display_dd0ac90c-module__RCqWlW__variable{--font-poster:"Playfair Display", "Playfair Display Fallback"}
:root{--bg:#08060b;--bg-deep:#050308;--bg-raised:#131019;--bg-raised-2:#1a1622;--bg-overlay:#ffffff0d;--border:#ffffff17;--border-strong:#ffffff38;--text:#f0eee9;--text-dim:#a9a5ad;--text-faint:#726e78;--accent:#7d9bff;--accent-bright:#a9bdff;--accent-soft:#7d9bff24;--glow-accent:#6082ff38;--glow-violet:#7c4dff24;--danger:#e5484d;--ok:#55c88f;--btn-bg:#fff;--btn-text:#0a0a0b;--radius-sm:6px;--radius:12px;--radius-lg:20px;--radius-pill:999px;--ease-out:cubic-bezier(.16, 1, .3, 1);--display:var(--font-display), "Barlow Condensed", "Arial Narrow", sans-serif;--sans:var(--font-sans), "Hanken Grotesk", system-ui, sans-serif;--mono:var(--font-mono), "Fragment Mono", Menlo, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.page-title,.model-name,.week-label,.login-title,.poster-name,.poster-dayname,.poster-effect-dates,.poster-slot-name{font-family:var(--display);text-transform:uppercase;font-style:normal}.card-title,.table th,.grid-table th,.badge-off,.poster-kicker,.poster-meta,.poster-effect-label,.poster-roster-label,.poster-colhead .shift-name,.wordmark{font-family:var(--mono);text-transform:uppercase}.shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--border);background:linear-gradient(180deg, #0b0910 0%, var(--bg-deep) 100%);flex-direction:column;flex-shrink:0;gap:30px;width:236px;height:100vh;padding:26px 16px 20px;display:flex;position:sticky;top:0}.wordmark{letter-spacing:.32em;color:var(--text);align-items:center;gap:10px;padding-left:12px;font-size:12px;display:flex}.wordmark-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 14px var(--accent);border-radius:50%;flex-shrink:0;display:inline-block}.nav{flex-direction:column;gap:3px;display:flex}.nav a{border-radius:var(--radius);color:var(--text-dim);transition:background .25s var(--ease-out), color .25s var(--ease-out);padding:10px 14px;font-size:14.5px;font-weight:500;position:relative}.nav a:hover{background:var(--bg-overlay);color:var(--text)}.nav a.active{background:var(--accent-soft);color:var(--accent-bright)}.nav a.active:before{content:"";background:var(--accent);width:3px;box-shadow:0 0 10px var(--glow-accent);border-radius:3px;position:absolute;top:9px;bottom:9px;left:0}.sidebar-foot{flex-direction:column;gap:8px;margin-top:auto;padding-left:6px;display:flex}.content{background:radial-gradient(ellipse 55% 38% at 70% -5%, var(--glow-violet), transparent), radial-gradient(ellipse 45% 30% at 20% -5%, var(--glow-accent), transparent);background-repeat:no-repeat;flex:1;min-width:0;max-width:1600px;padding:36px 42px 76px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:28px;display:flex}.page-title{letter-spacing:.015em;color:var(--text);font-size:44px;font-weight:600;line-height:1.02}.page-sub{color:var(--text-dim);max-width:640px;margin-top:8px;font-size:13.5px}.btn{border-radius:var(--radius-pill);border:1px solid var(--border-strong);color:var(--text);font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:transform .35s var(--ease-out), box-shadow .35s var(--ease-out), background .25s var(--ease-out), border-color .25s var(--ease-out);white-space:nowrap;background:0 0;justify-content:center;align-items:center;gap:8px;padding:10px 22px;font-size:11px;font-weight:400;display:inline-flex}.btn:hover{background:var(--bg-overlay);border-color:#ffffff5c;transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--btn-bg);color:var(--btn-text);box-shadow:0 0 0 0 var(--glow-accent);border-color:#0000;font-weight:700}.btn-primary:hover{background:var(--btn-bg);box-shadow:0 6px 24px var(--glow-accent);border-color:#0000}.btn-ghost{color:var(--text-dim);border-color:#0000}.btn-ghost:hover{color:var(--text);background:var(--bg-overlay);border-color:#0000}.btn-danger{color:var(--danger)}.btn-danger:hover{background:#e5484d14;border-color:#e5484d66}.btn-sm{padding:6px 14px;font-size:10px}.input,.select{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-overlay);color:var(--text);min-width:0;transition:border-color .25s var(--ease-out), background .25s var(--ease-out);padding:10px 14px;font-family:inherit;font-size:14px}.input::placeholder{color:var(--text-faint)}.input:hover,.select:hover{border-color:var(--border-strong)}.input:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.input-color{cursor:pointer;width:46px;height:39px;padding:3px}.form-error{color:var(--danger);font-size:13px}.notice{border:1px solid var(--border);background:var(--bg-raised);border-left:3px solid var(--ok);border-radius:var(--radius);margin-bottom:20px;padding:12px 16px;font-size:13.5px}.notice.err{border-left-color:var(--danger)}.card{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px 24px}.card+.card{margin-top:20px}.card-title{letter-spacing:.2em;color:var(--text-dim);margin-bottom:16px;font-size:10.5px}.card-title-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.table th{text-align:left;letter-spacing:.16em;color:var(--text-faint);border-bottom:1px solid var(--border);white-space:nowrap;padding:9px 12px;font-size:10px;font-weight:400}.table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}.table tbody tr{transition:background .2s var(--ease-out)}.table tbody tr:hover{background:var(--bg-overlay)}.table tr:last-child td{border-bottom:none}.dot{vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:8px;display:inline-block}.muted{color:var(--text-dim)}.faint{color:var(--text-faint)}.mono{font-family:var(--mono);font-size:12px}.pill{background:var(--bg-overlay);border:1px solid var(--border);border-radius:var(--radius-pill);align-items:center;gap:7px;padding:6px 14px;font-size:12.5px;display:inline-flex}.pill .count{color:var(--text-faint);font-size:11px}.badge-off{letter-spacing:.14em;color:var(--text-faint);border:1px solid var(--border-strong);border-radius:var(--radius-sm);white-space:nowrap;align-self:center;padding:2px 7px;font-size:9.5px}.table-fields{table-layout:fixed}.table-fields td{padding:7px 6px}.table-fields th{padding-left:12px;padding-right:6px}.table-fields .input{width:100%}.table-fields .input-color{flex-shrink:0;width:46px}.table-fields input[type=number]{padding-right:6px}.row-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.lx-check{cursor:pointer;color:var(--text-dim);white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.lx-check input{accent-color:var(--accent);width:15px;height:15px}input[type=checkbox]{accent-color:var(--accent)}.add-grid{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.add-grid .input:not(.input-color){flex:180px;min-width:160px}.week-nav{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.week-label{letter-spacing:.03em;color:var(--text);text-align:center;min-width:250px;font-size:24px;font-weight:600}.model-card{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:20px;padding:20px 22px}.model-card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.model-name{letter-spacing:.03em;color:var(--text);font-size:28px;font-weight:600}.grid-table{border-collapse:separate;border-spacing:3px;table-layout:fixed;width:100%;font-size:12.5px}.grid-table th{letter-spacing:.14em;color:var(--text-faint);text-align:left;padding:4px 8px;font-size:9.5px;font-weight:400}.grid-table th.today{color:var(--accent-bright)}.grid-table td{background:var(--bg-overlay);border:1px solid var(--border);border-radius:var(--radius);vertical-align:top;height:64px;transition:border-color .25s var(--ease-out);padding:8px}.grid-table td:hover{border-color:var(--border-strong)}.grid-table td.today{background:var(--accent-soft);border-color:#7d9bff59}.grid-table td.shift-label{white-space:nowrap;width:98px;color:var(--text-dim);vertical-align:middle;background:0 0;border:none;padding-left:0;font-size:12.5px;font-weight:600}.shift-time{color:var(--text-faint);font-family:var(--mono);margin-top:2px;font-size:9.5px;font-weight:400;display:block}.cell-chips{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.chip{border-radius:var(--radius-sm);background:var(--bg-raised-2);color:var(--text);cursor:pointer;transition:filter .2s var(--ease-out);border:1px solid #ffffff14;align-items:center;gap:6px;padding:4px 9px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.chip:hover{filter:brightness(1.3)}.chip:hover .chip-x{color:var(--danger)}.chip-x{color:#ffffff73;font-size:13px;font-weight:400;line-height:1}.cell-row{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.cell-row form{display:contents}.cell-add{margin-top:0}.cell-add select{width:auto;color:var(--text-faint);font-size:12px;line-height:1.3;font-family:var(--mono);cursor:pointer;transition:border-color .25s var(--ease-out), color .25s var(--ease-out);background:0 0;border:1px dashed #7d9bff40;border-radius:999px;padding:3px 8px}.cell-add select:hover{color:var(--text-dim);border-color:#7d9bff80}.cell-add select:focus{border-color:var(--accent);border-style:solid;outline:none}.cell-add select option{background:var(--bg-raised-2);color:var(--text);font-family:var(--sans)}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px;display:flex}.inline-form{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.poster-page{background:radial-gradient(ellipse 60% 40% at 50% -5%, var(--glow-accent), transparent), var(--bg);flex-direction:column;align-items:center;min-height:100vh;padding:40px 20px 60px;display:flex}.poster{background:linear-gradient(175deg, #0c0a12 0%, var(--bg-deep) 100%);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:900px;padding:46px 50px 40px;box-shadow:0 24px 80px #00000080}.poster-top{justify-content:space-between;align-items:center;margin-bottom:54px;display:flex}.poster-meta{letter-spacing:.28em;color:var(--text-faint);font-size:10px}.poster-kicker{letter-spacing:.4em;color:var(--text-dim);margin-bottom:10px;font-size:11px}.poster-title-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:46px;display:flex}.poster-name{color:var(--text);letter-spacing:.015em;font-size:104px;font-weight:700;line-height:.9}.poster-effect{text-align:right;padding-bottom:12px}.poster-effect-label{letter-spacing:.3em;color:var(--text-faint);margin-bottom:6px;font-size:9.5px}.poster-effect-dates{letter-spacing:.04em;color:var(--accent-bright);font-size:26px;font-weight:500}.poster-grid{grid-template-columns:150px repeat(3,1fr);gap:11px;display:grid}.poster-colhead{text-align:center;padding-bottom:10px}.poster-colhead .shift-name{letter-spacing:.3em;color:var(--text-dim);margin-bottom:3px;font-size:10px;display:block}.poster-colhead .shift-hours{font-family:var(--mono);color:var(--accent-bright);letter-spacing:.1em;font-size:13px}.poster-daycell{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);border-left:3px solid var(--accent);padding:15px 17px}.poster-dayname{letter-spacing:.04em;color:var(--text);font-size:22px;font-weight:600}.poster-daydate{font-family:var(--mono);color:var(--text-faint);margin-top:4px;font-size:10.5px}.poster-slot{border-radius:var(--radius);border:1px solid var(--border);flex-direction:column;justify-content:center;min-height:90px;padding:14px 17px;display:flex}.poster-slot-name{letter-spacing:.035em;font-size:26px;font-weight:600;line-height:1.25}.poster-slot-name+.poster-slot-name{border-top:1px solid #ffffff17}.poster-slot-time{font-family:var(--mono);color:#f0eee973;letter-spacing:.16em;margin-top:8px;font-size:10px}.poster-slot-empty{color:var(--text-faint);font-size:13px}.poster-roster{border-top:1px solid var(--border);margin-top:40px;padding-top:26px}.poster-roster-label{letter-spacing:.3em;color:var(--text-faint);margin-bottom:15px;font-size:10px}.poster-roster-chips{flex-wrap:wrap;gap:10px;display:flex}.poster-chip{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-pill);align-items:center;gap:9px;padding:9px 16px;font-size:13.5px;font-weight:600;display:inline-flex}.poster-chip .count{color:var(--text-faint);font-family:var(--mono);font-size:11px}.poster-actions{justify-content:space-between;align-items:center;gap:10px;width:100%;max-width:900px;margin-bottom:18px;display:flex}@media print{.poster-actions,.sidebar{display:none!important}.poster-page{padding:0}.poster{max-width:none;box-shadow:none;border:none;border-radius:0}html,body{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:var(--bg)!important}}@media (max-width:760px){.poster-name{font-size:60px}.poster-grid{grid-template-columns:108px repeat(3,1fr);gap:6px}.poster{padding:28px 20px}.shell{flex-direction:column}.sidebar{flex-flow:wrap;align-items:center;gap:14px;width:100%;height:auto;padding:14px 16px;position:static}.nav{flex-flow:wrap}.nav a.active:before{display:none}.sidebar-foot{margin-top:0}.content{padding:20px 16px 56px}.page-title{font-size:34px}}.poster{--p-bg:#0d0a12;--p-panel:#14111c;--p-border:#262033;--p-card-border:#221b30;--p-text:#ece7f4;--p-dim:#8d86a0;--p-faint:#5f5872;--p-cream:#e9d8a6;--poster-serif:var(--font-poster), "Playfair Display", Georgia, serif;background:var(--p-bg);border-color:#1d1728}.poster-page{background:var(--p-bg,#0d0a12)}.poster .wordmark{color:var(--p-cream);font-family:var(--sans)}.poster .wordmark-dot{background:var(--p-cream);box-shadow:0 0 12px #e9d8a699}.poster-meta,.poster-kicker,.poster-effect-label,.poster-roster-label,.poster-colhead .shift-name{font-family:var(--sans);color:var(--p-dim)}.poster-meta,.poster-effect-label,.poster-roster-label{color:var(--p-faint)}.poster-name{font-family:var(--poster-serif);text-transform:none;letter-spacing:0;color:var(--p-cream);font-size:96px;font-style:italic;font-weight:500}.poster-effect-dates{font-family:var(--poster-serif);text-transform:none;letter-spacing:0;color:var(--p-text);font-size:24px;font-style:italic;font-weight:500}.poster-colhead .shift-hours{color:var(--p-cream)}.poster-daycell{background:var(--p-panel);border:1px solid var(--p-border);border-left:3px solid var(--p-cream)}.poster-dayname{font-family:var(--poster-serif);text-transform:none;letter-spacing:0;color:var(--p-text);font-size:24px;font-weight:500}.poster-slot{border-color:var(--p-card-border)}.poster-slot-name{font-family:var(--poster-serif);text-transform:none;letter-spacing:0;font-size:23px;font-weight:600}.poster-chip{background:var(--p-panel);border-color:var(--p-border);border-radius:999px}.poster-roster{border-top-color:var(--p-card-border)}@media (max-width:760px){.poster-name{font-size:54px}}.login-wrap{background:radial-gradient(ellipse 60% 45% at 50% 0%, var(--glow-accent), transparent), radial-gradient(ellipse 40% 30% at 80% 20%, var(--glow-violet), transparent), var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:15px;width:100%;max-width:390px;padding:38px 34px;display:flex;box-shadow:0 24px 80px #00000080}.login-card .wordmark{padding-left:0}.login-title{letter-spacing:.02em;color:var(--text);font-size:52px;font-weight:700;line-height:1}.login-sub{color:var(--text-dim);margin-bottom:6px;font-size:13.5px}.add-collapse>summary{cursor:pointer;border-radius:var(--radius-sm);color:var(--text-dim);transition:border-color .25s var(--ease-out), color .25s var(--ease-out);-webkit-user-select:none;user-select:none;border:1px dashed #7d9bff40;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:600;list-style:none;display:inline-flex}.add-collapse>summary::-webkit-details-marker{display:none}.add-collapse>summary:hover{color:var(--text);border-color:#7d9bff80}.add-collapse[open]>summary{border-style:solid;border-color:var(--accent);color:var(--text);margin-bottom:14px}.stat-tiles{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:24px;display:grid}.stat-tile{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.stat-tile .stat-value{color:var(--text);font-size:26px;font-weight:700;line-height:1.1}.stat-tile .stat-label{color:var(--text-dim);margin-top:4px;font-size:11.5px}.stat-tile.warn .stat-value{color:var(--danger)}.stat-tile.ok .stat-value{color:#7ddf9a}.load-bar{background:#ffffff10;border-radius:999px;min-width:90px;height:6px;position:relative;overflow:hidden}.load-bar>span{border-radius:999px;position:absolute;inset:0 auto 0 0}
