:root{color-scheme:light;--canvas: #f7f4fc;--paper: #fdfbff;--paper-2: #eee8f7;--ink: #27202f;--muted: #70647d;--line: #dcd2e9;--brand: #6646ad;--on-brand: #fff;--brand-soft: #e8ddf7;--ok: #247b69;--warn: #a66a18;--bad: #b43d55;--gold: #d49a18;--gold-light: #fff0a8;--mascot-image: url(/images/chara_purple.png);--rail: 264px;--panel-cut: polygon(0 3%, 97% 0, 100% 92%, 3% 100%);--pointer-x: 0;--pointer-y: 0;--scroll-y: 0}html[data-theme=light][data-character=pink]{--canvas: #fff5f8;--paper: #fffafd;--paper-2: #f8e7ee;--ink: #30202a;--muted: #795f6d;--line: #e8ccd8;--brand: #c43f73;--on-brand: #fff;--brand-soft: #f7dce7;--ok: #257d6c;--warn: #a86b17;--bad: #b83250;--gold: #cc9215;--gold-light: #ffed9f;--mascot-image: url(/images/chara_pink.png)}html[data-theme=light][data-character=purple]{--canvas: #f7f4fc;--paper: #fdfbff;--paper-2: #eee8f7;--ink: #27202f;--muted: #70647d;--line: #dcd2e9;--brand: #6646ad;--on-brand: #fff;--brand-soft: #e8ddf7;--ok: #247b69;--warn: #a66a18;--bad: #b43d55;--gold: #d49a18;--gold-light: #fff0a8;--mascot-image: url(/images/chara_purple.png)}html[data-theme=light][data-character=yellow]{--canvas: #fff8e8;--paper: #fffdf5;--paper-2: #f6ecd4;--ink: #302619;--muted: #78664f;--line: #e3d2ad;--brand: #a95712;--on-brand: #fff;--brand-soft: #f7dfb6;--ok: #27765f;--warn: #9a651a;--bad: #b54142;--gold: #c8870b;--gold-light: #ffeda1;--mascot-image: url(/images/chara_yellow.png)}html[data-theme=light][data-character=green]{--canvas: #f1faf5;--paper: #fbfefc;--paper-2: #e3f2e9;--ink: #1c2b25;--muted: #5c7369;--line: #c9dfd3;--brand: #1b7b61;--on-brand: #fff;--brand-soft: #d5eee3;--ok: #20765e;--warn: #9b681c;--bad: #ad4050;--gold: #c38c17;--gold-light: #ffeda4;--mascot-image: url(/images/chara_green.png)}html[data-theme=dark][data-character=pink]{color-scheme:dark;--canvas: #170f15;--paper: #211720;--paper-2: #2b1e28;--ink: #fff2f7;--muted: #cdaab9;--line: #4a3140;--brand: #ff77a8;--on-brand: #27101a;--brand-soft: #422238;--ok: #6bc8ad;--warn: #e2ad5c;--bad: #f08096;--gold: #ffd468;--gold-light: #fff5c4;--mascot-image: url(/images/chara_pink.png)}html[data-theme=dark][data-character=purple]{color-scheme:dark;--canvas: #100f17;--paper: #191722;--paper-2: #24202f;--ink: #f7f1ff;--muted: #b6a9c5;--line: #3b344a;--brand: #b99af2;--on-brand: #21172e;--brand-soft: #34294b;--ok: #70c9b4;--warn: #e0ac62;--bad: #eb8194;--gold: #ffd66b;--gold-light: #fff6c7;--mascot-image: url(/images/chara_purple.png)}html[data-theme=dark][data-character=yellow]{color-scheme:dark;--canvas: #17130c;--paper: #211c12;--paper-2: #2c2518;--ink: #fff6de;--muted: #ccb991;--line: #4a3d24;--brand: #ffb64a;--on-brand: #2d1d08;--brand-soft: #433019;--ok: #73c6a9;--warn: #efbd69;--bad: #eb817f;--gold: #ffd15c;--gold-light: #fff4b9;--mascot-image: url(/images/chara_yellow.png)}html[data-theme=dark][data-character=green]{color-scheme:dark;--canvas: #0c1713;--paper: #13211c;--paper-2: #1c2c25;--ink: #edfff7;--muted: #9fc3b3;--line: #2d4a3e;--brand: #69d4ae;--on-brand: #0d281f;--brand-soft: #1f4638;--ok: #69d4ae;--warn: #dfb263;--bad: #ed8090;--gold: #ffd16a;--gold-light: #fff4c2;--mascot-image: url(/images/chara_green.png)}html{scroll-behavior:smooth;max-width:100%;overflow-x:hidden}body{margin:0;min-width:0;width:100%;max-width:100%;overflow-x:hidden;color:var(--ink);background:var(--canvas);font-family:Noto Sans SC,Microsoft YaHei,system-ui,sans-serif;line-height:1.55;background-image:radial-gradient(circle at 84% 9%,color-mix(in srgb,var(--brand) 14%,transparent),transparent 24vw),linear-gradient(145deg,var(--canvas),color-mix(in srgb,var(--brand-soft) 26%,var(--canvas)))}#root,.shell,.workspace,.main,.screen,.default-content{min-width:0;max-width:100%}img,svg,video,canvas{max-width:100%}button,input,select,textarea{font:inherit;color:inherit;max-width:100%}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}.icon{width:1.1em;height:1.1em;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.skip{position:fixed;z-index:1000;top:-70px;left:16px;padding:10px 14px;background:var(--ink);color:var(--paper)}.skip:focus{top:16px}:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 56%,transparent);outline-offset:3px}.eyebrow{display:inline-block;padding:4px 10px;color:var(--paper);background:var(--ink);font-size:.72rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;clip-path:polygon(3% 0,100% 8%,96% 100%,0 88%)}h1,h2,h3{font-family:Georgia,"Noto Serif SC",serif}h1{margin:.18em 0 .08em;font-size:clamp(2.25rem,5vw,4.4rem);line-height:1.02;letter-spacing:-.04em}h2{line-height:1.1}.lead,.muted{color:var(--muted)}.notice{display:grid;gap:8px;padding:14px 16px;color:var(--warn);background:color-mix(in srgb,var(--warn) 7%,var(--paper));box-shadow:inset 4px 0 currentColor}.notice.error{color:var(--bad);background:color-mix(in srgb,var(--bad) 7%,var(--paper))}.notice.ok{color:var(--ok);background:color-mix(in srgb,var(--ok) 7%,var(--paper))}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.rail{position:fixed;inset:0 auto 0 0;z-index:20;display:flex;width:var(--rail);padding:24px 18px 18px;flex-direction:column;background:color-mix(in srgb,var(--paper) 78%,transparent)}.brand-mark{display:block;width:38px;height:38px;flex:none;background-color:var(--brand)}.identity{position:relative;margin-bottom:18px;padding:14px;background:color-mix(in srgb,var(--brand-soft) 64%,transparent);clip-path:polygon(0 4%,96% 0,100% 91%,4% 100%)}.nav-title{margin:14px 0 5px;padding:0 10px;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.14em}.nav-btn{display:flex;gap:10px;align-items:center;padding:10px 12px;color:var(--muted);clip-path:polygon(0 6%,97% 0,100% 88%,3% 100%)}.nav-btn.active{color:var(--brand);background:linear-gradient(90deg,var(--brand-soft),transparent 94%);font-weight:800}.rail-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}.contextbar{position:relative;display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 clamp(20px,4vw,54px)}.screen-head{position:relative;display:flex;gap:20px;align-items:flex-end;justify-content:space-between;margin-bottom:24px;padding:16px 0}.screen-head:before{content:"///";position:absolute;top:11px;right:3%;color:color-mix(in srgb,var(--brand) 32%,transparent);font-weight:900;letter-spacing:-3px;transform:skew(-14deg)}.screen-head h1{width:fit-content;text-shadow:5px 5px 0 color-mix(in srgb,var(--brand) 14%,transparent);background:linear-gradient(transparent 76%,color-mix(in srgb,var(--brand) 17%,transparent) 76% 94%,transparent 94%)}.mobile-account-button{display:grid;place-items:center;width:40px;height:40px;border:0;background:var(--brand);color:var(--on-brand);font-weight:900;clip-path:polygon(5% 0,100% 7%,94% 100%,0 90%)}.mobile-admin-back{display:flex;gap:5px;align-items:center;border:0;background:transparent;color:var(--ink);font-weight:800}.mobile-header-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.drawer-theme-toggle{grid-column:1/-1;justify-self:start;display:flex;gap:8px;align-items:center;border:0;background:#ffffff1c;color:#fff;padding:8px 10px}.drawer-member-grid,.drawer-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}.drawer-tile{display:grid;gap:8px;min-height:84px;padding:13px;background:color-mix(in srgb,var(--paper) 62%,var(--brand-soft));clip-path:polygon(0 5%,94% 0,100% 89%,7% 100%);font-weight:800}.drawer-tile.ink{background:#20212b;color:#f7f5f2}.drawer-section-head{margin-top:22px;font-size:.75rem;font-weight:900;letter-spacing:.14em}.waiting-dock{grid-template-columns:1fr!important}@media(max-width:959px){.rail{display:none}.workspace{margin-left:0}.top-mobile{position:relative;z-index:10;display:flex;align-items:center;height:62px;padding:0 18px;background:transparent}.top-mobile .brand{margin:0}.contextbar{display:none}.main{padding:22px 22px 148px}.screen-head{display:block;padding-top:22px}.screen-head .actions{margin-top:18px}.bottom-nav{position:fixed;z-index:45;display:grid;grid-template-columns:repeat(5,1fr);gap:3px;left:50%;bottom:calc(14px + env(safe-area-inset-bottom));width:calc(100% - 32px);max-width:520px;height:72px;padding:7px 8px;transform:translate(-50%);background:#1a1b26;color:#ffffff8a;clip-path:polygon(3% 0,97% 0,100% 88%,4% 100%);box-shadow:0 22px 54px #14111e4d}.bottom-nav a,.bottom-nav button{display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center;border:0;background:transparent;color:inherit;font-size:.64rem;font-weight:800}.bottom-nav a.active,.bottom-nav button.active{color:var(--on-brand);background:var(--brand);transform:translateY(-8px) rotate(-1deg);box-shadow:0 9px 20px color-mix(in srgb,var(--brand) 36%,transparent)}.dock-icon{display:grid;place-items:center;width:22px;height:22px}.bottom-nav .icon{width:20px;height:20px}.drawer-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.drawer-admin-grid .drawer-tile:not(:first-child){display:none}}@media(max-width:640px){.main{padding-inline:18px}.drawer-member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.screen-head h1{font-size:clamp(2.25rem,10.5vw,2.65rem)}}.manga-button{min-height:42px;padding:9px 14px;border:0;background:var(--paper);color:var(--ink);font-weight:850;clip-path:polygon(3% 0,100% 7%,96% 100%,0 90%);box-shadow:6px 6px color-mix(in srgb,var(--ink) 18%,transparent)}.manga-button:hover{transform:translate(-1px,-1px);background:var(--brand-soft)}.manga-button.primary{background:var(--brand);color:var(--on-brand)}.manga-button.danger{background:#8f2d43;background:color-mix(in srgb,var(--bad) 68%,#581625);color:#fff}.manga-button.ghost{background:color-mix(in srgb,var(--paper) 64%,transparent)}.icon-button{display:grid;place-items:center;width:36px;height:36px;border:0;background:transparent;font-size:1.8rem;line-height:1}.status-badge,.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;font-size:.74rem;font-weight:850;white-space:nowrap;clip-path:polygon(4% 0,100% 6%,95% 100%,0 90%);background:var(--paper-2)}.status-badge.on,.status-badge.active,.status-badge.ok{color:var(--ok)}.status-badge.off,.status-badge.ended{color:var(--muted)}.status-badge.unknown,.status-badge.warning{color:var(--warn)}.status-badge.error,.status-badge.stopped{color:var(--bad)}.overlay-backdrop{display:none;position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;align-items:center;justify-content:center;padding:24px;background:#11131ab3}.overlay{width:min(720px,100%);max-height:min(88vh,900px);overflow:auto;background:var(--paper);border-radius:8px;clip-path:none;box-shadow:14px 16px #00000047}.overlay.wide{width:min(1100px,100%)}.overlay-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--paper)}.overlay-head p{margin:2px 0 0}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.toast-stack{position:fixed;z-index:200;top:76px;right:20px;display:grid;gap:8px}.toast{min-width:260px;max-width:420px;padding:12px 14px;color:var(--paper);background:var(--ink);box-shadow:6px 6px #00000038}.toast.success{border-left:5px solid var(--ok)}.toast.warning{border-left:5px solid var(--warn)}.toast.error{border-left:5px solid var(--bad)}.skeleton-stack{display:grid;gap:12px}.skeleton-stack i,.page-loading i{display:block;height:92px;background:linear-gradient(90deg,var(--paper-2),var(--line),var(--paper-2));background-size:220% 100%;animation:shine 1.4s infinite}.empty-state{padding:36px;text-align:center;background:radial-gradient(ellipse,color-mix(in srgb,var(--paper) 70%,transparent),transparent 73%)}.empty-state img{display:block;max-width:100%;height:150px;margin:auto;object-fit:contain}.infinite-sentinel{text-align:center;padding:20px;color:var(--muted);font-size:.85rem}.pull-indicator{display:grid;place-items:center;color:var(--muted);font-size:.76rem;overflow:hidden}.field label{font-size:.8rem;font-weight:850;letter-spacing:.06em}.field input,.field select,.field textarea{width:100%;min-height:44px;padding:9px 11px;border:0;background:color-mix(in srgb,var(--paper-2) 72%,transparent);box-shadow:inset 0 -2px color-mix(in srgb,var(--ink) 12%,transparent)}.table-wrap{overflow:auto}.table th{padding:11px 10px;color:var(--paper);background:var(--ink);font-size:.75rem;letter-spacing:.08em;text-align:left}.table td{padding:11px 10px;border-bottom:1px solid color-mix(in srgb,var(--ink) 8%,transparent);vertical-align:top}.markdown-content :first-child{margin-top:0}.markdown-content pre{overflow:auto;padding:14px;background:#171821;color:#f0ecf8}.markdown-content a{color:var(--brand);text-decoration:underline}.codemirror-editor-shell{display:grid;gap:10px;width:100%}.codemirror-editor-shell.fill{height:100%;min-height:0}.code-editor{min-height:220px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--paper);clip-path:none}.code-editor[data-language=markdown]{min-height:180px}.codemirror-editor-shell.fill .code-editor,.codemirror-editor-shell.fill .cm-editor{height:100%;min-height:0}.code-editor .cm-scroller{overflow:auto;font-family:Fira Code,JetBrains Mono,SFMono-Regular,Consolas,monospace}.code-editor .cm-content{padding:12px 0}.code-editor .cm-focused{outline:2px solid color-mix(in srgb,var(--brand) 52%,transparent);outline-offset:-2px}.codemirror-markdown-preview{min-height:42px;padding:12px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--paper) 72%,transparent)}.codemirror-markdown-preview p{margin:0}.script-preview-trigger{display:grid;width:100%;gap:8px;padding:0;border:0;border-radius:0;background:transparent;color:var(--muted);text-align:left;cursor:pointer;clip-path:none}.script-preview-trigger .lua-code-preview{width:100%;max-height:360px;margin:0;border:1px solid var(--line);border-radius:0;clip-path:none}.script-preview-trigger:hover .lua-code-preview,.script-preview-trigger:focus-visible .lua-code-preview{border-color:var(--brand)}.script-field-list{display:grid;gap:8px}.script-field-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--paper-2);color:var(--ink);text-align:left;cursor:pointer;clip-path:none}.script-field-row:hover,.script-field-row:focus-visible{border-color:var(--brand)}.overlay.script-editor-overlay{display:grid;grid-template-rows:auto minmax(0,1fr);height:calc(100vh - 48px);max-height:calc(100vh - 48px);overflow:hidden;border-radius:8px;clip-path:none}.script-editor-overlay .overlay-body{min-height:0;padding:0;overflow:hidden}.script-editor-shell{display:grid;grid-template-rows:minmax(0,1fr) auto;height:100%;min-height:0;background:var(--canvas)}.script-editor-body{min-height:0;padding:10px}.script-editor-bottom{border-top:1px solid var(--line);background:var(--paper)}.script-test-panel{display:grid;min-height:112px;grid-template-rows:auto minmax(64px,auto);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--canvas) 72%,var(--paper))}.script-test-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px 6px;color:var(--ink);font-size:.78rem}.script-test-heading span{color:var(--muted);font-size:.7rem}.script-editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:8px 12px;font:13px/1.4 Fira Code,SFMono-Regular,Consolas,monospace}.script-editor-toolbar .actions{margin:0}.script-icon-button{display:grid;width:36px;min-width:36px;height:36px;place-items:center;padding:0;border:0;border-radius:8px;background:transparent;color:var(--ink);cursor:pointer}.script-icon-button svg{width:18px;height:18px;fill:currentColor}.script-test-button{display:inline-flex;width:auto;min-width:112px;align-items:center;justify-content:center;gap:7px;padding:0 13px;color:var(--on-brand);background:var(--brand);font-weight:850}.script-test-output{max-height:180px;margin:0;overflow:auto;padding:6px 12px 12px;border:0;background:transparent;color:var(--muted);font:12px/1.5 SFMono-Regular,Consolas,monospace;white-space:pre-wrap}.script-test-output.success{color:var(--ok)}.script-test-output.error,.cm-diagnostic-tooltip{color:var(--bad)}.cm-lua-hover,.cm-diagnostic-tooltip{display:grid;max-width:360px;gap:4px;padding:8px 10px;font-size:12px;line-height:1.45}@media(max-width:640px){.overlay-backdrop{align-items:flex-end;padding:0}.overlay{width:100%;max-height:92vh;clip-path:none;border-radius:26px 26px 0 0}.overlay-body{padding:18px}.form-grid{grid-template-columns:1fr}.toast-stack{top:16px;right:16px;left:16px}.toast{min-width:0;max-width:none}}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.panel{position:relative;min-width:0;padding:24px;background:radial-gradient(ellipse at 27% 24%,color-mix(in srgb,var(--paper) 90%,transparent) 0 43%,color-mix(in srgb,var(--paper) 48%,transparent) 67%,transparent 84%);clip-path:var(--panel-cut)}.panel:after{content:"";position:absolute;z-index:-1;right:-8px;top:-10px;width:110px;height:82px;opacity:.14;background:radial-gradient(circle,var(--ink) 1px,transparent 1.6px);background-size:9px 9px;-webkit-mask-image:linear-gradient(135deg,#000,transparent 78%);mask-image:linear-gradient(135deg,#000,transparent 78%)}.hero{position:relative;min-height:390px;overflow:hidden;padding:36px;color:#f7f5f2;background-color:#171827;background-image:linear-gradient(90deg,#0d0f1be8,#161628b3 44%,#11121f52),var(--dashboard-hero-image, url(/images/anime-hero-morning.jpg));background-size:cover;background-position:center;clip-path:var(--panel-cut)}.hero-copy{position:relative;z-index:2;width:min(57%,620px)}.hero h2{margin:.2em 0;font-size:clamp(2.2rem,4vw,4.4rem);line-height:.98;letter-spacing:-.045em}.hero .mascot{position:absolute;z-index:1;right:4%;bottom:-10px;height:min(74%,430px);filter:drop-shadow(0 24px 24px rgba(11,9,20,.42))}.hero .badge{margin-right:6px;color:#f7f5f2;background:#12111f8f}html[data-pass=active] .hero{box-shadow:inset 0 0 0 2px var(--gold)}.session-stage{color:#f7f5f2!important;background-color:#1b1b27!important;background-image:radial-gradient(circle at 86% 14%,rgba(171,146,226,.32),transparent 29%),radial-gradient(circle,rgba(255,255,255,.11) 1px,transparent 1.4px)!important;background-size:auto,13px 13px!important}.session-time{margin:7px 0;font:700 2rem/1 Georgia,serif}.session-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.session-hint{margin-left:auto;font-size:.78rem;color:#ffffffa6}.segmented{display:inline-flex;padding:4px;background:var(--ink);clip-path:polygon(2% 0,100% 5%,97% 100%,0 91%)}.segmented button{border:0;padding:7px 11px;color:#ffffff9e;background:transparent}.segmented button.active{color:var(--on-brand);background:var(--brand)}.device-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.device-card{--device-tint: var(--brand);position:relative;display:flex;min-height:220px;padding:20px;flex-direction:column;overflow:hidden;color:var(--on-brand);background:var(--device-tint);clip-path:var(--panel-cut)}.device-card:after{content:"";position:absolute;z-index:0;width:125%;height:125%;left:-12.8%;top:-12.5%;background-color:var(--device-tint);background-image:var(--device-image);background-position:center;background-size:cover;background-repeat:no-repeat;filter:grayscale(1) sepia(.55) hue-rotate(215deg) saturate(1.8) contrast(1.35) brightness(.72);pointer-events:none}.device-card>*:not(.device-card-graphics):not(.device-card-pattern){position:relative;z-index:3}.device-card-pattern{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;opacity:.32;mix-blend-mode:screen;background-image:radial-gradient(circle at 0 0,rgba(255,255,255,.9) 1.3px,transparent 1.8px),linear-gradient(rgba(255,255,255,.42) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.42) 1px,transparent 1px);background-size:16px 16px,48px 48px,48px 48px;background-position:0 0;-webkit-mask-image:linear-gradient(135deg,#00000014,#00000047 30%,#000000b8 66%,#000);mask-image:linear-gradient(135deg,#00000014,#00000047 30%,#000000b8 66%,#000)}.device-card-graphics{position:absolute;z-index:2;right:-12px;top:38px;width:172px;height:122px;color:#fff;opacity:.58;mix-blend-mode:screen;pointer-events:none}.device-card h2{margin:18px 0 5px;font-size:1.65rem}.device-card .muted{color:#ffffffbf}.device-actions{display:flex;gap:8px;margin-top:auto}.device-actions button{position:relative;display:grid;place-items:center;width:48px;height:42px;min-height:0;padding:0;color:#242431;background:#f7f5f2;border:2px solid #242431;clip-path:polygon(7% 0,100% 0,93% 100%,0 89%);box-shadow:4px 4px #00000080}.device-actions button:after{content:"";position:absolute;right:3px;bottom:3px;width:9px;height:3px;background:currentColor;opacity:.4;transform:skew(-28deg)}.device-actions svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.list{display:grid;gap:12px}.list-item{position:relative;display:grid;gap:8px;padding:19px 12px 26px;background:transparent}.list-item:after{content:"";position:absolute;right:12%;bottom:8px;left:0;height:8px;background:linear-gradient(90deg,color-mix(in srgb,var(--brand) 25%,transparent),transparent);clip-path:polygon(0 30%,100% 0,96% 70%,4% 100%)}.wallet-list{position:relative;padding-left:28px}.wallet-list:before{content:"";position:absolute;top:72px;bottom:62px;left:8px;width:3px;background:linear-gradient(var(--brand),transparent);transform:skewY(-7deg)}.wallet-list .list-item:before{content:"";position:absolute;top:23px;left:-25px;width:11px;height:11px;border:4px solid var(--brand);border-radius:50%;background:var(--canvas)}.admin-hub{grid-template-columns:repeat(4,minmax(0,1fr));counter-reset:admin}.hub-card{display:flex;min-height:150px;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:22px;text-align:left;color:var(--ink);background:color-mix(in srgb,var(--paper) 62%,var(--brand-soft));clip-path:polygon(0 5%,95% 0,100% 90%,6% 100%);counter-increment:admin}.hub-card:before{content:"0" counter(admin);position:absolute;top:11px;right:14px;color:color-mix(in srgb,var(--brand) 18%,transparent);font:italic 900 2.4rem/1 Georgia,serif}.hub-card:nth-child(1),.hub-card:nth-child(4){grid-column:span 2;color:#f7f5f2;background:#232431}.hub-card strong{margin-top:7px;color:var(--muted);font-size:.8rem}.hub-card:nth-child(1) strong,.hub-card:nth-child(4) strong{color:#ffffff9e}.auth-layout{display:grid;min-height:calc(100vh - 160px);grid-template-columns:1.05fr .95fr;gap:24px;align-items:center}.auth-art{position:relative;min-height:610px;overflow:hidden;background:var(--brand-soft);clip-path:var(--panel-cut)}.auth-card .field .row>input{min-width:0;flex:1}.password-visibility-toggle{display:grid;flex:0 0 42px;width:42px;min-width:42px;padding-inline:0!important;place-items:center}.password-visibility-toggle .icon{width:20px;height:20px}.page-loading{display:grid;gap:12px;padding:60px}.page-loading i{height:70px}@media(max-width:1100px){.span-8,.span-7,.span-6,.span-5,.span-4{grid-column:span 6}.device-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:959px){.grid{gap:14px}.hero{min-height:420px}.hero-copy{width:58%}.device-gallery,.admin-hub{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-card:nth-child(1),.hub-card:nth-child(4){grid-column:span 2}.auth-layout{grid-template-columns:1fr}.auth-art{display:none}}@media(max-width:640px){.grid{display:block}.grid>*{margin-bottom:14px}.panel{padding:20px}.hero{min-height:490px;padding:24px}.hero-copy{width:100%}.hero .mascot{height:57%;right:-9%}.session-main{align-items:center}.session-cost strong{font-size:5.4rem}.cost-strip{grid-template-columns:repeat(2,1fr);gap:0}.cost-cell{padding:10px 0}.device-gallery{grid-template-columns:1fr;gap:12px}.device-card{min-height:210px;padding:16px}.admin-hub{display:grid}.hub-card{min-height:112px}.wallet-list{padding-left:22px}.auth-card{padding:20px}.auth-card h1{font-size:3rem}}.log-card-list{gap:16px}.log-card{overflow:hidden;padding:20px 22px 28px;background:linear-gradient(145deg,var(--paper),color-mix(in srgb,var(--paper) 72%,var(--brand-soft)))}.log-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.log-card-head time{color:var(--muted);font-size:.85rem;font-weight:800}.log-card-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px;margin:4px 0 0}.log-card-fields div{min-width:0}.log-card-fields dt{margin-bottom:4px;color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.log-card-fields dd{margin:0;overflow-wrap:anywhere;font-weight:800}.log-card-detail{display:grid;gap:6px;padding:12px 14px;background:color-mix(in srgb,var(--brand-soft) 48%,transparent);clip-path:polygon(1% 0,100% 5%,98% 100%,0 92%)}.log-card-detail p,.log-card-detail code{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.recharge-panel{position:relative;display:grid;gap:20px;overflow:hidden;background:radial-gradient(circle at 88% 18%,color-mix(in srgb,#1677ff 18%,transparent),transparent 34%),linear-gradient(145deg,var(--paper),color-mix(in srgb,var(--brand-soft) 42%,var(--paper)))}.recharge-panel h2,.payment-status-card strong{margin:5px 0}.alipay-mark{display:grid;width:64px;height:64px;flex:none;place-items:center;border-radius:18px;background:#1677ff;color:#fff;box-shadow:7px 7px color-mix(in srgb,#1677ff 22%,var(--ink));font-size:2rem;font-weight:900;transform:rotate(2deg)}.alipay-mark img{width:32px;height:32px;object-fit:contain;filter:brightness(0) invert(1)}.alipay-rate-copy span{display:inline-block;white-space:nowrap}.recharge-form{display:grid;grid-template-columns:minmax(280px,560px) max-content;align-items:stretch;justify-content:start;gap:10px 18px;padding:20px 22px;border:1px solid color-mix(in srgb,#1677ff 28%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,#1677ff 7%,var(--paper)),var(--paper) 72%);clip-path:polygon(0 3%,99% 0,100% 94%,1% 100%);box-shadow:8px 8px color-mix(in srgb,#1677ff 10%,transparent)}.recharge-form>.field{grid-row:1 / span 2}.recharge-form>.field>span:first-child{display:block;margin-bottom:8px;font-weight:850}.recharge-input{display:flex;min-height:60px;align-items:center;border:2px solid color-mix(in srgb,#1677ff 54%,var(--line));background:var(--paper);clip-path:polygon(0 5%,99% 0,100% 92%,1% 100%)}.recharge-input b{padding-left:16px;color:#1677ff;font-size:1.25rem}.recharge-input input{min-width:0;padding:12px 14px 12px 8px;border:0;background:transparent;font-size:1.4rem;font-weight:900}.recharge-presets{display:flex;align-self:end;flex-wrap:wrap;gap:8px}.recharge-presets button{min-width:58px;min-height:42px;padding:9px 12px;border:1px solid var(--line);border-radius:0;background:var(--paper-2);color:var(--ink);font-weight:850;cursor:pointer;clip-path:polygon(4% 0,100% 7%,96% 100%,0 91%)}.recharge-presets button.active{border-color:#1677ff;background:color-mix(in srgb,#1677ff 14%,var(--paper));color:color-mix(in srgb,#1677ff 78%,var(--ink));box-shadow:inset 0 -3px color-mix(in srgb,#1677ff 32%,transparent)}.manga-button.alipay-button{min-width:220px;min-height:48px;align-self:start;justify-self:start;background:#1677ff;color:#fff}.payment-status-card{display:grid;gap:14px;border-left:5px solid #1677ff}.payment-status-card .meta{overflow-wrap:anywhere}.status-badge.pending{color:var(--warn)}.status-badge.success{color:var(--ok)}.status-badge.closed,.status-badge.failed{color:var(--bad)}.payment-order-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.payment-order-item{min-width:0}@media(max-width:640px){.log-card{padding:18px 16px 24px}.log-card-fields,.recharge-form,.payment-order-list{grid-template-columns:1fr}.recharge-form{padding:16px;clip-path:polygon(0 1%,99% 0,100% 98%,1% 100%)}.recharge-form>.field{grid-row:auto}.recharge-presets{order:2}.alipay-button{order:3;width:100%}.alipay-mark{width:54px;height:54px;border-radius:14px}}@keyframes shine{to{background-position:-220% 0}}@keyframes sparkle{0%,to{opacity:.3;transform:scale(.7) rotate(0)}50%{opacity:1;transform:scale(1.15) rotate(45deg)}}.gold-tile{color:#352100!important;background-color:var(--gold)!important;background-image:linear-gradient(115deg,transparent 0 28%,rgba(255,255,255,.72) 37%,transparent 46% 100%)!important;background-size:120px 100%!important;animation:goldTile 1.8s linear infinite}.gold-sparkles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.gold-sparkles i{position:absolute;width:12px;height:12px;background:var(--gold-light);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);animation:sparkle 2.3s ease-in-out infinite}.gold-sparkles i:nth-child(1){top:16%;right:28%}.gold-sparkles i:nth-child(2){top:35%;right:12%;animation-delay:-.7s}.gold-sparkles i:nth-child(3){bottom:22%;right:34%;animation-delay:-1.3s}.gold-sparkles i:nth-child(4){top:50%;left:32%;animation-delay:-1.8s}.gold-sparkles i:nth-child(5){bottom:16%;left:14%;animation-delay:-2.1s}@media(prefers-reduced-motion:reduce){.gold-tile,.gold-sparkles i{animation:none!important}}:root{--shadow: 0 18px 44px rgba(73, 60, 96, .09), 0 3px 10px rgba(73, 60, 96, .05);--shadow-soft: 0 9px 26px rgba(73, 60, 96, .07);--wash: color-mix(in srgb, var(--brand) 8%, var(--canvas))}html[data-theme=dark]{--shadow: 0 22px 52px rgba(0, 0, 0, .26), 0 4px 14px rgba(0, 0, 0, .18);--shadow-soft: 0 10px 28px rgba(0, 0, 0, .2);--wash: color-mix(in srgb, var(--brand) 8%, var(--canvas))}body:before{content:"";position:fixed;z-index:-1;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.55;background-image:radial-gradient(circle,color-mix(in srgb,var(--brand) 28%,transparent) 1px,transparent 1.5px);background-size:34px 34px;-webkit-mask-image:linear-gradient(115deg,transparent 12%,#000 48%,transparent 86%);mask-image:linear-gradient(115deg,transparent 12%,#000 48%,transparent 86%)}.rail{border:0;background:linear-gradient(165deg,color-mix(in srgb,var(--paper) 88%,transparent),color-mix(in srgb,var(--paper) 72%,var(--wash)) 70%,var(--wash));box-shadow:24px 0 70px #4137540b}.brand-mark{box-shadow:0 8px 20px color-mix(in srgb,var(--brand) 25%,transparent);transform:rotate(-3deg)}.nav-btn:after{content:"";position:absolute;top:22%;bottom:22%;left:0;width:3px;border-radius:999px;background:var(--brand);transform:scaleY(0);transition:transform .18s ease}.contextbar{border:0;background:linear-gradient(90deg,color-mix(in srgb,var(--canvas) 78%,transparent),color-mix(in srgb,var(--paper) 68%,transparent));box-shadow:none}.main{position:relative;isolation:isolate}.main:before,.main:after{content:"";position:fixed;z-index:-1;pointer-events:none;border-radius:999px}.main:before{top:14vh;right:4vw;width:210px;height:210px;background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 9%,transparent),transparent);transform:rotate(18deg)}.main:after{bottom:9vh;left:calc(var(--rail) + 5vw);width:130px;height:130px;background:radial-gradient(circle at 36% 38%,color-mix(in srgb,var(--ok) 8%,transparent),transparent 68%)}.page-svg-decor{position:absolute;z-index:-1;top:0;left:0;width:100%;height:760px;overflow:visible;pointer-events:none;color:var(--brand);opacity:.42}.svg-ring,.svg-burst,.svg-cross{fill:none;stroke:currentColor}.svg-ring{opacity:.16;animation:svg-orbit 18s linear infinite;transform-origin:875px 102px}.svg-star{fill:currentColor;opacity:.22;animation:svg-twinkle 4s ease-in-out infinite;transform-origin:center}.svg-burst{opacity:.13}.svg-cross{opacity:.12}.svg-diamond{fill:color-mix(in srgb,var(--brand) 18%,transparent);stroke:currentColor;opacity:.18;animation:svg-float 7s ease-in-out infinite}.screen-head{position:relative;padding:18px 0 14px;margin-bottom:18px}.screen-head:after{content:"✦";position:absolute;top:-2px;right:8%;color:color-mix(in srgb,var(--brand) 18%,transparent);font:700 3.6rem Georgia,serif;transform:rotate(12deg);pointer-events:none}.screen-head h1{filter:drop-shadow(0 8px 18px color-mix(in srgb,var(--brand) 9%,transparent))}.head-svg-decor .head-star,.head-svg-decor .head-diamond{fill:currentColor}.panel:not(.hero){isolation:isolate;overflow:visible;box-shadow:none}.panel:not(.hero):hover{transform:translateY(-3px) rotate(-.15deg)}.panel:not(.hero),.empty-state,.list-item{clip-path:var(--panel-cut);border-radius:0}.list-item{background:transparent;box-shadow:none}.list-item:hover{transform:translate(4px);box-shadow:none}.manga-button{position:relative;isolation:isolate;overflow:hidden;border:2px solid var(--ink);box-shadow:5px 5px color-mix(in srgb,var(--ink) 22%,transparent);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.manga-button:after{content:"";position:absolute;z-index:-1;right:-11px;bottom:-9px;width:40px;height:22px;background:repeating-linear-gradient(135deg,currentColor 0 3px,transparent 3px 7px);opacity:.14;transform:rotate(-8deg)}.manga-button:hover{transform:translate(-2px,-2px);box-shadow:7px 7px color-mix(in srgb,var(--ink) 22%,transparent)}.manga-button:active{transform:translate(3px,3px);box-shadow:1px 1px color-mix(in srgb,var(--ink) 22%,transparent)}.field input,.field select,.field textarea{border-radius:3px;background:color-mix(in srgb,var(--paper) 48%,transparent)}.field input:focus,.field select:focus,.field textarea:focus{outline:0;background:color-mix(in srgb,var(--paper) 78%,transparent);box-shadow:inset 0 -3px var(--brand)}.table td:first-child{font-family:Georgia,"Noto Serif SC",serif;font-weight:800}.overlay{border:0;border-radius:8px;box-shadow:14px 16px #00000047}.overlay-head h2{text-shadow:3px 3px 0 color-mix(in srgb,var(--brand) 14%,transparent)}.overlay.drawer-menu{width:min(860px,calc(100% - 48px));max-height:min(88vh,860px);overflow:hidden;border-radius:28px;background-color:var(--paper);background-image:radial-gradient(circle,color-mix(in srgb,var(--brand) 11%,transparent) 1px,transparent 1.4px),linear-gradient(135deg,transparent 72%,color-mix(in srgb,var(--brand-soft) 38%,transparent) 72% 76%,transparent 76%);background-size:19px 19px,auto}.overlay.drawer-menu .overlay-body{padding:10px 24px 28px}.drawer-tile{min-height:104px;border:0;box-shadow:none;transition:transform .18s ease,background .18s ease}main[data-screen=dashboard] .session-stage{position:relative;overflow:hidden;border-left:6px solid var(--brand);box-shadow:8px 8px color-mix(in srgb,var(--brand) 14%,transparent)}main[data-screen=dashboard] .session-stage:before{content:"SESSION / LIVE";position:absolute;top:18px;right:20px;color:color-mix(in srgb,var(--brand) 72%,var(--muted));font:italic 900 .66rem/1 Georgia,serif;letter-spacing:.14em}html[data-pass=active] main[data-screen=dashboard] .hero{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--gold) 86%,transparent),0 34px 74px #30254a30}html[data-pass=active] main[data-screen=dashboard] .hero-copy:after{content:"ACTIVE PASS";position:absolute;top:-24px;right:0;padding:5px 11px;color:#2b1900;background:repeating-linear-gradient(110deg,#9b6508 0 24px,var(--gold) 42px,var(--gold-light) 58px,var(--gold) 74px,#9b6508 96px 120px);background-size:120px 100%;box-shadow:0 0 12px color-mix(in srgb,var(--gold) 48%,transparent);font:italic 900 .64rem/1.1 Georgia,serif;letter-spacing:.15em;clip-path:var(--panel-cut);animation:goldTile 1.8s linear infinite}@keyframes svg-orbit{to{transform:rotate(360deg)}}@keyframes svg-twinkle{0%,to{opacity:.12;transform:scale(.76)}50%{opacity:.32;transform:scale(1.08)}}@keyframes svg-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(8deg)}}@media(max-width:959px){.main:before{top:18vh;right:-90px}.main:after{display:none}.page-svg-decor{height:620px;opacity:.34}.head-svg-decor{right:44px;top:5px;bottom:auto;width:92px;height:44px;opacity:.24}.overlay.drawer-menu{width:min(720px,calc(100% - 24px));max-height:90vh}.drawer-tile{min-height:92px}}@media(max-width:640px){.page-svg-decor{height:520px}.screen-head:after{right:44px;top:5px;font-size:2rem}.head-svg-decor{right:4px;top:4px}.main:before{display:none}.panel:not(.hero){padding-block:24px}.overlay.drawer-menu{width:100%;border-radius:26px 26px 0 0}.overlay.drawer-menu .overlay-body{padding:8px 18px calc(26px + env(safe-area-inset-bottom))}.drawer-member-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.drawer-tile{min-height:92px;padding:13px}main[data-screen=dashboard] .session-stage:before{display:none}main[data-screen=dashboard] .session-stage{padding:20px}}@media(prefers-reduced-motion:reduce){.svg-ring,.svg-star,.svg-diamond,html[data-pass=active] main[data-screen=dashboard] .hero-copy:after{animation:none!important}}.rail>nav{min-height:0;flex:1;overflow-y:auto;scrollbar-width:thin}.wallet-kpi{display:flex;align-items:baseline;gap:8px;color:var(--ink);font-family:Georgia,"Noto Serif SC",serif}.wallet-kpi strong{font-size:clamp(2.7rem,5vw,4.4rem);line-height:.8;text-shadow:4px 4px 0 color-mix(in srgb,var(--brand) 12%,transparent)}.wallet-kpi span{font-size:.9rem;font-weight:800}.activity-panel{display:flex;min-height:250px;flex-direction:column}.announcement-copy{display:grid;gap:8px}.announcement-copy h1,.announcement-copy h2,.announcement-copy h3,.announcement-copy p{margin:0}.activity-panel .divider{height:1px;margin-top:auto;background:color-mix(in srgb,var(--ink) 12%,transparent)}.active-player-summary{gap:18px;align-items:center;padding-top:18px;font-family:Georgia,"Noto Serif SC",serif;font-size:1.25rem}.avatars{display:flex;margin-left:auto;padding-right:10px}.active-player-toggle{align-items:center;border:0;color:inherit;background:transparent;cursor:pointer;font:inherit}.active-player-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:5px}.active-player-chevron{display:grid;width:24px;height:24px;margin-left:7px;place-items:center;border:1px solid var(--line);border:1px solid color-mix(in srgb,var(--ink) 20%,transparent);border-radius:50%;font:800 1rem/1 system-ui,sans-serif}.active-player-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:14px}.active-player-item{display:flex;min-width:0;gap:9px;align-items:center;padding:9px;background:var(--paper-2);background:color-mix(in srgb,var(--paper) 72%,transparent)}.active-player-item>span:last-child{min-width:0}.active-player-item strong,.active-player-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.active-player-item small{margin-top:2px;color:var(--muted);font-size:.72rem}.avatar{display:grid;width:38px;height:38px;margin-left:-7px;place-items:center;border:2px solid var(--paper);border-radius:50%;color:var(--ink);background:var(--brand-soft);font-size:.8rem;font-weight:900}.billing-idle{align-items:stretch}.billing-qr-panel{display:grid;min-height:520px;place-items:center}.billing-qr-panel .qr-image{display:block;width:min(280px,100%);height:auto}.billing-rule-panel{min-height:520px}main[data-screen=passes] .grid{counter-reset:pass-card}main[data-screen=passes] .pass-card{position:relative;display:flex;min-height:330px;flex-direction:column;align-items:flex-start;background:color-mix(in srgb,var(--paper) 62%,var(--brand-soft))}main[data-screen=passes] .pass-card:before{position:absolute;top:16px;right:16px;color:color-mix(in srgb,var(--brand) 25%,transparent);content:"PASS / 0" counter(pass-card);counter-increment:pass-card;font:italic 900 1rem/1 Georgia,serif}.pass-price{margin:auto 0 22px;font:800 3.1rem/1 Georgia,"Noto Serif SC",serif}.pass-price small{font:800 .95rem/1 system-ui,sans-serif}.pass-card .manga-button{margin-top:auto}main[data-screen=admin] .admin-hub{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}main[data-screen=admin] .hub-card:nth-child(1),main[data-screen=admin] .hub-card:nth-child(4){grid-column:span 2}@media(min-width:960px)and (max-width:1199px){main[data-screen=admin] .admin-hub{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:959px){.wallet-kpi{margin-top:16px}.billing-qr-panel,.billing-rule-panel{min-height:0}main[data-screen=passes] .pass-card{min-height:285px}main[data-screen=admin] .admin-hub{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}@media(max-width:640px){.active-player-summary{gap:10px;font-size:1rem}.avatar{width:32px;height:32px}.active-player-list{grid-template-columns:1fr}main[data-screen=passes] .pass-card{min-height:260px}main[data-screen=admin] .hub-card:nth-child(1),main[data-screen=admin] .hub-card:nth-child(4){grid-column:span 2}}:root{--shadow: 4px 5px 0 rgba(32, 34, 43, .08);--radius: 16px;--control: 10px;--rail: 264px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font-family:Noto Sans SC,Microsoft YaHei,system-ui,sans-serif;line-height:1.55}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{outline-offset:3px}:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 48%,transparent)}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.skip{position:fixed;left:12px;top:-60px;z-index:1000;background:var(--ink);color:var(--paper);padding:10px 14px;border-radius:8px}.skip:focus{top:12px}.icon{width:1.05em;height:1.05em;vertical-align:-.16em}.shell{min-height:100vh}.rail{position:fixed;inset:0 auto 0 0;width:var(--rail);padding:24px 18px 18px;background:var(--paper);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;margin:0 8px 22px;font-weight:900;letter-spacing:.08em}.brand-mark{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--ink);border-radius:12px;background:var(--brand-soft);box-shadow:3px 3px 0 var(--ink)}.identity{padding:14px;margin-bottom:18px;background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--radius)}.identity strong{display:block}.identity small{color:var(--muted)}.nav-title{padding:0 10px;margin:14px 0 5px;font-size:.72rem;color:var(--muted);font-weight:800;letter-spacing:.14em}.nav-list{display:grid;gap:4px}.nav-btn{border:0;background:transparent;text-align:left;padding:10px 12px;border-radius:10px;color:var(--muted);display:flex;gap:10px;align-items:center}.nav-btn:hover,.nav-btn.active{background:var(--brand-soft);color:var(--brand);font-weight:750}.rail-actions{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:8px}.top-mobile,.bottom-nav{display:none}.workspace{margin-left:var(--rail)}.contextbar{height:64px;position:sticky;top:0;z-index:15;background:color-mix(in srgb,var(--canvas) 92%,transparent);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,54px);-webkit-backdrop-filter:saturate(1.1);backdrop-filter:saturate(1.1)}.crumb{font-weight:800}.context-actions{display:flex;gap:8px}.main{max-width:1440px;margin:auto;padding:34px clamp(20px,4vw,54px) 96px}.screen{display:none}.screen.active{display:block}.screen-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:24px}.eyebrow{color:var(--brand);font-size:.75rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.screen h1{font-family:Georgia,"Noto Serif SC",serif;font-size:clamp(2rem,5vw,4.5rem);line-height:1;margin:.18em 0 .05em;letter-spacing:-.04em}.lead{color:var(--muted);max-width:700px;margin:0}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn{min-height:40px;padding:8px 14px;border:1px solid var(--line);border-radius:var(--control);background:var(--paper);font-weight:750;box-shadow:0 0 0 transparent}.btn:hover{border-color:var(--brand);color:var(--brand)}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.btn.danger{background:#8f2d43;background:color-mix(in srgb,var(--bad) 68%,#581625);border-color:var(--bad);color:#fff}.btn.ghost{background:transparent}.btn.small{min-height:32px;padding:5px 10px;font-size:.85rem}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.span-12{grid-column:span 12}.span-8{grid-column:span 8}.span-7{grid-column:span 7}.span-6{grid-column:span 6}.span-5{grid-column:span 5}.span-4{grid-column:span 4}.span-3{grid-column:span 3}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);min-width:0}.card.flat{box-shadow:none}.card h2,.card h3{margin:0 0 12px}.card p:last-child{margin-bottom:0}.muted{color:var(--muted)}.serif{font-family:Georgia,"Noto Serif SC",serif}.kpi{font-family:Georgia,"Noto Serif SC",serif;font-size:2.25rem;font-weight:800;line-height:1}.kpi small{font-family:inherit;font-size:1rem;color:var(--muted)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;background:var(--paper-2);border:1px solid var(--line);font-size:.76rem;font-weight:800}.badge.brand{color:var(--brand);background:var(--brand-soft);margin:0}.badge.ok{color:var(--ok)}.badge.warn{color:var(--warn)}.badge.bad{color:var(--bad)}.badge.dot:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.stack{display:grid;gap:12px}.row{display:flex;align-items:center;justify-content:space-between;gap:16px}.row.wrap{flex-wrap:wrap}.divider{height:1px;background:var(--line);margin:14px 0}.label{font-size:.78rem;color:var(--muted);font-weight:800}.amount.pos{color:var(--ok)}.amount.neg{color:var(--bad)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:.8rem;font-weight:800}.field input,.field select,.field textarea{width:100%;min-height:42px;border:1px solid var(--line);border-radius:var(--control);background:var(--canvas);padding:9px 11px}.field textarea{min-height:104px;resize:vertical}.help{font-size:.75rem;color:var(--muted)}.error-text{font-size:.78rem;color:var(--bad)}.switch{display:flex;gap:8px;align-items:center}.switch input{accent-color:var(--brand)}.notice{border:1px solid color-mix(in srgb,var(--warn) 42%,var(--line));background:color-mix(in srgb,var(--warn) 8%,var(--paper));padding:13px 15px;border-radius:12px;color:var(--warn)}.notice.error{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 42%,var(--line));background:color-mix(in srgb,var(--bad) 8%,var(--paper))}.notice.ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 42%,var(--line));background:color-mix(in srgb,var(--ok) 8%,var(--paper))}.hero{position:relative;overflow:hidden;min-height:390px;padding:36px;background:var(--brand-soft);isolation:isolate}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 8px 8px,color-mix(in srgb,var(--brand) 20%,transparent) 1.5px,transparent 1.8px) 0 0/24px 24px,linear-gradient(120deg,transparent 45%,color-mix(in srgb,var(--brand) 14%,transparent) 45% 58%,transparent 58%);z-index:-2}.hero:after{content:"+++++";position:absolute;right:-22px;top:40px;transform:rotate(90deg);font-size:.65rem;letter-spacing:.22em;color:var(--brand);font-weight:900}.hero-copy{width:min(57%,620px);position:relative;z-index:2}.hero h2{font-family:Georgia,"Noto Serif SC",serif;font-size:clamp(2.2rem,4vw,4.4rem);line-height:.98;letter-spacing:-.045em;margin:.2em 0}.mascot{position:absolute;right:4%;bottom:-10px;height:min(74%,430px);object-fit:contain;filter:drop-shadow(8px 10px 0 color-mix(in srgb,var(--ink) 12%,transparent));z-index:1}.game-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.game-strip img{width:100%;height:92px;object-fit:cover;border-radius:12px;border:1px solid var(--line);filter:saturate(.72)}.avatars{display:flex}.avatar{width:38px;height:38px;border-radius:50%;margin-left:-8px;border:3px solid var(--paper);background:var(--brand-soft);display:grid;place-items:center;font-weight:900}.avatar:first-child{margin-left:0}.list{display:grid;gap:10px}.list-item{padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--paper);display:grid;gap:8px}.list-item:hover{border-color:color-mix(in srgb,var(--brand) 55%,var(--line))}.meta{display:flex;gap:8px 16px;flex-wrap:wrap;color:var(--muted);font-size:.8rem}.device-card{position:relative}.device-icon{width:62px;height:62px;border-radius:16px;background:var(--brand-soft);display:grid;place-items:center;font-size:1.8rem;border:1px solid var(--line)}.device-actions{display:flex;gap:8px;margin-top:14px}.code{background:#11131a;color:#e8e3f3;border-radius:12px;padding:14px;overflow:auto;font:13px/1.6 Consolas,monospace;white-space:pre}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:11px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.table th{font-size:.75rem;color:var(--muted)}.state-stage{display:none;margin-bottom:18px}.skeleton{height:92px;border-radius:12px;background:linear-gradient(90deg,var(--paper-2),color-mix(in srgb,var(--paper-2) 62%,var(--line)),var(--paper-2));background-size:240% 100%;animation:shine 1.4s infinite}.empty{padding:36px;text-align:center;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted)}.empty img{height:150px;max-width:100%;object-fit:contain;display:block;margin:auto;filter:saturate(.72)}html[data-state=loading] .state-stage.loading,html[data-state=empty] .state-stage.empty-state,html[data-state=error] .state-stage.error-state{display:block}html[data-state=loading] .default-content,html[data-state=error] .default-content,html[data-state=empty] .collection-screen .default-content{display:none}.prototype-console{position:fixed;right:18px;bottom:18px;z-index:50;width:min(410px,calc(100vw - 36px));background:var(--paper);border:1px solid var(--ink);border-radius:14px;box-shadow:8px 8px color-mix(in srgb,var(--ink) 18%,transparent)}.prototype-console summary{cursor:pointer;padding:12px 14px;font-weight:900}.console-grid{padding:0 14px 14px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.console-grid label{font-size:.72rem;font-weight:800}.console-grid select{width:100%;margin-top:4px;min-height:36px;background:var(--canvas);border:1px solid var(--line);border-radius:8px}.console-actions{grid-column:1/-1;display:flex;justify-content:space-between}.overlay-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#11131aa8;padding:24px;align-items:center;justify-content:center}.overlay-backdrop.open{display:flex}.overlay{width:min(720px,100%);max-height:min(88vh,900px);overflow:auto;background:var(--paper);border:1px solid var(--ink);border-radius:20px;box-shadow:10px 10px #00000038}.overlay.wide{width:min(1080px,100%)}.overlay-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line);background:var(--paper)}.overlay-head h2{margin:0}.overlay-body{padding:20px}.toast-stack{position:fixed;top:76px;right:20px;z-index:200;display:grid;gap:8px}.toast{min-width:260px;max-width:420px;padding:12px 14px;border-radius:10px;background:var(--ink);color:var(--paper);box-shadow:var(--shadow);animation:toastIn .2s ease}.toast.ok{border-left:5px solid var(--ok)}.toast.warn{border-left:5px solid var(--warn)}.toast.bad{border-left:5px solid var(--bad)}.pwa-specimen{position:fixed;left:calc(var(--rail) + 20px);bottom:18px;z-index:40;max-width:330px}.admin-only,.guest-only,.waiting-only{display:none}html[data-role=admin] .admin-only,html[data-role=guest] .guest-only,html[data-role=waiting] .waiting-only{display:flex}html[data-role=guest] .member-only,html[data-role=waiting] .member-nav{display:none}.pull-state{text-align:center;color:var(--muted);font-size:.75rem;margin-bottom:8px}.auth-wrap{min-height:calc(100vh - 160px);display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:center}.auth-art{min-height:610px;position:relative;overflow:hidden;background:var(--brand-soft)}.auth-art:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle,color-mix(in srgb,var(--brand) 20%,transparent) 1px,transparent 1.5px) 0 0/18px 18px}.auth-art img{position:absolute;right:2%;bottom:-12px;width:min(96%,560px)}.auth-card{max-width:520px;padding:34px}.auth-card h1{font-size:3.7rem}.admin-hub{grid-template-columns:repeat(5,minmax(0,1fr))}.hub-card{min-height:150px;display:flex;flex-direction:column;justify-content:space-between}.editor-layout{display:grid;grid-template-columns:1fr 340px;gap:16px}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:10px;padding:3px}.segmented button{border:0;background:transparent;border-radius:7px;padding:6px 10px}.segmented button.active{background:var(--brand-soft);color:var(--brand)}@keyframes shine{to{background-position:-240% 0}}@keyframes toastIn{0%{opacity:0;transform:translateY(-8px)}}@media(max-width:1100px){.admin-hub{grid-template-columns:repeat(3,minmax(0,1fr))}.span-3,.span-4,.span-5,.span-7,.span-8{grid-column:span 6}.editor-layout{grid-template-columns:1fr}}@media(max-width:959px){.rail{display:none}.workspace{margin-left:0}.top-mobile{display:flex;position:sticky;top:0;z-index:20;height:58px;padding:0 16px;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line)}.bottom-nav{display:grid;position:fixed;z-index:45;left:0;right:0;bottom:0;grid-template-columns:repeat(5,1fr);background:var(--paper);border-top:1px solid var(--line);padding:6px 6px calc(6px + env(safe-area-inset-bottom))}.bottom-nav button{border:0;background:transparent;color:var(--muted);font-size:.72rem;padding:6px 2px}.bottom-nav button.active{color:var(--brand);font-weight:900}.contextbar{display:none}.main{padding-top:22px;padding-bottom:150px}.prototype-console{bottom:82px}.pwa-specimen{left:16px;bottom:82px}.auth-wrap{grid-template-columns:1fr}.auth-art{display:none}}@media(max-width:640px){.main{padding:18px 16px 150px}.screen-head{display:block}.screen h1{font-size:2.65rem}.screen-head .actions{margin-top:16px}.grid{display:block}.grid>*{margin-bottom:12px}.form-grid{grid-template-columns:1fr}.card{padding:24px;box-shadow:3px 4px #20222b0f}.hero{padding:24px}.hero-copy{width:100%}.mascot{height:57%;right:-9%}.game-strip img{height:70px}.admin-hub{display:grid;grid-template-columns:1fr}.overlay-backdrop{align-items:flex-end;padding:0}.overlay{border-radius:20px 20px 0 0;max-height:92vh}.overlay.wide{height:96vh;border-radius:16px 16px 0 0}.table-wrap{overflow:auto}.row.mobile-stack{align-items:flex-start;flex-direction:column}.prototype-console{right:10px;width:calc(100vw - 20px)}.console-grid{grid-template-columns:1fr 1fr}.pwa-specimen{right:16px;max-width:none}.auth-card{padding:20px}.auth-card h1{font-size:3rem}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}html[data-state=empty] [data-screen=login] .default-content,html[data-state=empty] [data-screen=register] .default-content{display:grid}html[data-role=guest] .bottom-nav{display:none}html[data-role=waiting] .bottom-nav button:not([data-target=dashboard]){visibility:hidden}html[data-role=waiting] .waiting-only{display:grid}:root{--line: color-mix(in srgb, var(--ink) 9%, transparent);--shadow: 0 18px 44px rgba(73, 60, 96, .09), 0 3px 10px rgba(73, 60, 96, .05);--shadow-soft: 0 9px 26px rgba(73, 60, 96, .07);--wash: color-mix(in srgb, var(--brand) 8%, var(--canvas));--wash-strong: color-mix(in srgb, var(--brand) 13%, var(--paper))}html[data-theme=dark]{--line: color-mix(in srgb, var(--ink) 10%, transparent);--shadow: 0 22px 52px rgba(0, 0, 0, .26), 0 4px 14px rgba(0, 0, 0, .18);--shadow-soft: 0 10px 28px rgba(0, 0, 0, .2);--wash: color-mix(in srgb, var(--brand) 8%, var(--canvas));--wash-strong: color-mix(in srgb, var(--brand) 14%, var(--paper))}body{background-color:var(--canvas);background-image:radial-gradient(circle at 78% 10%,color-mix(in srgb,var(--brand) 10%,transparent) 0 15vw,transparent 34vw),radial-gradient(circle at 24% 82%,color-mix(in srgb,var(--ok) 5%,transparent) 0 13vw,transparent 30vw),linear-gradient(135deg,color-mix(in srgb,var(--paper) 28%,transparent),transparent 42%);background-attachment:fixed}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;opacity:.55;background-image:radial-gradient(circle,color-mix(in srgb,var(--brand) 28%,transparent) 1px,transparent 1.5px);background-size:34px 34px;-webkit-mask-image:linear-gradient(115deg,#0000 12%,#000 48%,#0000 86%);mask-image:linear-gradient(115deg,#0000 12%,#000 48%,#0000 86%)}.rail{border:0;background:linear-gradient(165deg,color-mix(in srgb,var(--paper) 97%,var(--brand-soft)),var(--paper) 58%,var(--wash));box-shadow:16px 0 44px #4137540f}.brand-mark{border:0;box-shadow:0 8px 20px color-mix(in srgb,var(--brand) 25%,transparent);transform:rotate(-3deg)}.identity{border:0;background:linear-gradient(135deg,var(--brand-soft),color-mix(in srgb,var(--paper) 68%,var(--brand-soft)));box-shadow:inset 0 1px #ffffff9e}.nav-btn{position:relative;overflow:hidden}.nav-btn:after{content:"";position:absolute;left:0;top:22%;bottom:22%;width:3px;border-radius:999px;background:var(--brand);transform:scaleY(0);transition:transform .18s ease}.nav-btn.active:after{transform:scaleY(1)}.contextbar{border:0;background:color-mix(in srgb,var(--canvas) 95%,var(--paper));box-shadow:0 8px 28px #463a5e0b;-webkit-backdrop-filter:none;backdrop-filter:none}.main{position:relative}.main:before,.main:after{content:"";position:fixed;pointer-events:none;border-radius:999px;filter:blur(.2px);z-index:-1}.main:before{width:210px;height:210px;right:4vw;top:14vh;background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 9%,transparent),transparent);transform:rotate(18deg)}.main:after{width:130px;height:130px;left:calc(var(--rail) + 5vw);bottom:9vh;background:radial-gradient(circle at 36% 38%,color-mix(in srgb,var(--ok) 8%,transparent),transparent 68%)}.screen-head{position:relative;padding:10px 0 4px}.screen-head:after{content:"✦";position:absolute;right:1%;top:-8px;font:700 2.8rem Georgia,serif;color:color-mix(in srgb,var(--brand) 18%,transparent);transform:rotate(12deg);pointer-events:none}.screen h1{filter:drop-shadow(0 8px 18px color-mix(in srgb,var(--brand) 9%,transparent))}.card{border:0;box-shadow:var(--shadow);background:linear-gradient(152deg,color-mix(in srgb,var(--paper) 98%,var(--brand-soft)),var(--paper) 58%);border-radius:24px}.grid>.card:nth-child(3n+2),.stack>.list-item:nth-child(3n+2){border-radius:30px 18px 26px 20px}.grid>.card:nth-child(3n),.stack>.list-item:nth-child(3n){border-radius:18px 28px 20px 26px}.card.flat{box-shadow:var(--shadow-soft);background:color-mix(in srgb,var(--paper) 92%,var(--wash));border-radius:18px}.card:not(.hero),.list-item{transition:transform .18s ease,box-shadow .18s ease}.card:not(.hero):hover,.list-item:hover{transform:translateY(-2px);box-shadow:0 22px 50px #493c601f}.hero{border-radius:34px 22px 38px 24px;color:#f7f5f2;background-color:#171827;background-image:linear-gradient(90deg,#0d0f1be8,#161628bd 43%,#17142a38 72%,#11121f61),var(--dashboard-hero-image, url(/images/anime-hero-morning.jpg));background-size:cover;background-position:center;box-shadow:0 30px 70px color-mix(in srgb,var(--brand) 22%,transparent)}.hero:before{z-index:-1;background:radial-gradient(circle at 8px 8px,rgba(255,255,255,.13) 1.2px,transparent 1.6px) 0 0/25px 25px,linear-gradient(120deg,transparent 44%,rgba(255,255,255,.06) 44% 57%,transparent 57%)}.hero .badge{color:#f7f5f2;background:#12111f85;box-shadow:inset 0 1px #ffffff29}.hero-copy:before{content:"";position:absolute;width:62px;height:12px;left:0;top:-22px;border-radius:999px;background:#d0c2f5c7;box-shadow:74px 0 #d0c2f547}.mascot{filter:drop-shadow(0 24px 24px rgba(11,9,20,.42))}.btn{border-color:transparent;background:color-mix(in srgb,var(--paper-2) 76%,var(--paper));box-shadow:0 5px 14px #44375a0e}.btn:hover{border-color:transparent;background:var(--brand-soft);box-shadow:0 9px 18px color-mix(in srgb,var(--brand) 14%,transparent);transform:translateY(-1px)}.btn.primary{box-shadow:0 9px 20px color-mix(in srgb,var(--brand) 18%,transparent)}.btn.danger{box-shadow:0 9px 20px color-mix(in srgb,var(--bad) 18%,transparent)}.btn.primary:hover{color:var(--on-brand);background:var(--brand);background:color-mix(in srgb,var(--brand) 88%,var(--ink))}.btn.danger:hover{color:#fff;background:#791f35;background:color-mix(in srgb,var(--bad) 58%,#581625)}.badge{border:0;background:color-mix(in srgb,var(--paper-2) 78%,transparent);box-shadow:inset 0 1px #ffffff6b}.notice,.notice.error,.notice.ok{border:0;box-shadow:inset 4px 0 currentColor;background:color-mix(in srgb,var(--notice-accent, var(--brand)) 7%,var(--paper))}.notice{--notice-accent: var(--brand)}.notice.error{--notice-accent: var(--bad)}.notice.ok{--notice-accent: var(--ok)}.list{gap:14px}.list-item{border:0;background:linear-gradient(145deg,var(--paper),var(--wash));box-shadow:var(--shadow-soft);padding:18px}.list-item:hover{border-color:transparent}.field input,.field select,.field textarea{border:0;background:color-mix(in srgb,var(--paper-2) 76%,var(--canvas));box-shadow:inset 0 1px 3px #362c480f}.field input:focus,.field select:focus,.field textarea:focus{background:var(--paper);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent),0 8px 20px color-mix(in srgb,var(--brand) 8%,transparent)}.divider,.table th,.table td{border-color:color-mix(in srgb,var(--ink) 6%,transparent)}.table tbody tr:nth-child(odd){background:color-mix(in srgb,var(--wash) 46%,transparent)}.table tbody tr:hover{background:var(--brand-soft)}.device-icon{border:0;box-shadow:0 10px 24px color-mix(in srgb,var(--brand) 14%,transparent)}.game-strip{gap:14px}.game-strip img{border:0;box-shadow:0 10px 24px #342a481f;border-radius:18px;transform:rotate(-.5deg)}.game-strip img:nth-child(2){transform:translateY(5px) rotate(.7deg)}.empty{border:0;background:linear-gradient(145deg,color-mix(in srgb,var(--paper) 78%,transparent),var(--wash));box-shadow:var(--shadow-soft);border-radius:28px}.prototype-console{border:0;border-radius:20px;background:color-mix(in srgb,var(--paper) 96%,var(--brand-soft));box-shadow:0 24px 70px #2b233a3d}.overlay{border:0;border-radius:28px;box-shadow:0 32px 100px #0c0a1257;background:linear-gradient(155deg,var(--paper),color-mix(in srgb,var(--paper) 92%,var(--brand-soft)))}.overlay-head{border:0;background:transparent}.top-mobile,.bottom-nav{border:0;box-shadow:0 10px 28px #362c4814}.bottom-nav{background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 96%,var(--brand-soft)),var(--paper))}.auth-art{border-radius:36px;background:radial-gradient(circle at 24% 22%,color-mix(in srgb,var(--brand) 18%,transparent),transparent 34%),linear-gradient(145deg,var(--brand-soft),var(--paper))}@media(max-width:640px){.card{border-radius:22px;box-shadow:0 12px 34px #493c6017}.hero{border-radius:28px;box-shadow:0 20px 46px color-mix(in srgb,var(--brand) 14%,transparent)}.main:before{right:-90px;top:18vh}.screen-head:after{right:2%;font-size:2rem}.overlay{border-radius:28px 28px 0 0}.game-strip{gap:8px}.game-strip img{border-radius:12px}.prototype-console{border-radius:18px}}:root{--pointer-x: 0;--pointer-y: 0;--scroll-y: 0;--ambient-x: 72%;--ambient-y: 12%;--surface: color-mix(in srgb, var(--paper) 78%, transparent);--surface-soft: color-mix(in srgb, var(--paper) 56%, transparent)}body{background-position:calc(50% + var(--pointer-x) * -10px) calc(50% + var(--scroll-y) * -18px),calc(50% + var(--pointer-x) * 14px) calc(50% + var(--scroll-y) * 12px),center;transition:background-position .16s linear}body:before{transform:translate3d(calc(var(--pointer-x) * 16px),calc(var(--pointer-y) * 12px + var(--scroll-y) * -22px),0);will-change:transform}.rail{background:linear-gradient(165deg,color-mix(in srgb,var(--paper) 88%,transparent),color-mix(in srgb,var(--paper) 72%,var(--wash)) 70%,var(--wash));box-shadow:24px 0 70px #4137540b}.contextbar{background:linear-gradient(90deg,color-mix(in srgb,var(--canvas) 78%,transparent),color-mix(in srgb,var(--paper) 68%,transparent));box-shadow:none}.main:before{transform:translate3d(calc(var(--pointer-x) * -22px),calc(var(--pointer-y) * -16px + var(--scroll-y) * -34px),0) rotate(18deg);will-change:transform}.main:after{transform:translate3d(calc(var(--pointer-x) * 28px),calc(var(--pointer-y) * 20px + var(--scroll-y) * 28px),0);will-change:transform}.screen.active{animation:screenReveal .48s cubic-bezier(.22,.8,.24,1) both}.screen.active .screen-head{animation:titleReveal .58s cubic-bezier(.2,.8,.2,1) both}.screen.active .default-content>.card:not(.hero),.screen.active .default-content>.list-item,.screen.active .default-content>.stack>.list-item{animation:surfaceReveal .58s cubic-bezier(.2,.8,.2,1) both}.screen.active .hero{animation:heroReveal .7s cubic-bezier(.2,.8,.2,1) both}.screen.active .default-content>*:nth-child(2){animation-delay:.05s}.screen.active .default-content>*:nth-child(3){animation-delay:.1s}.screen.active .default-content>*:nth-child(4){animation-delay:.15s}.card:not(.hero){background:radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--brand) 5%,transparent),transparent 36%),linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--paper) 64%,transparent));box-shadow:0 1px #ffffff6b,0 28px 70px #42355811,0 8px 24px #42355809}.card.flat{background:linear-gradient(145deg,var(--surface-soft),color-mix(in srgb,var(--wash) 54%,transparent));box-shadow:0 18px 48px #4235580b}.card:not(.hero):hover,.list-item:hover{transform:translate3d(0,-4px,0) scale(1.006);box-shadow:0 32px 80px #493c601b,0 10px 28px #493c600e}.hero{background-position:calc(50% + var(--pointer-x) * 8px) calc(50% + var(--pointer-y) * 6px + var(--scroll-y) * 10px);transform:perspective(1200px) rotateX(calc(var(--pointer-y) * -1.1deg)) rotateY(calc(var(--pointer-x) * 1.25deg));transform-origin:center;will-change:transform,background-position;transition:transform .18s ease-out,background-position .18s ease-out;box-shadow:0 45px 100px #30254a30,0 12px 36px #30254a1a}.hero:after{animation:heroLabel 7s ease-in-out infinite}.hero-copy{transform:translate3d(calc(var(--pointer-x) * -7px),calc(var(--pointer-y) * -5px),34px);will-change:transform}.mascot{animation:mascotFloat 5.8s ease-in-out infinite;transform-origin:50% 90%;will-change:transform}.kpi{animation:numberSettle .55s cubic-bezier(.2,.8,.2,1) both}.badge.dot:before{animation:statusPulse 2.4s ease-in-out infinite}.game-strip img{animation:bannerDrift 6s ease-in-out infinite}.game-strip img:nth-child(2){animation-delay:-2s}.game-strip img:nth-child(3){animation-delay:-4s}.list-item{background:linear-gradient(140deg,color-mix(in srgb,var(--paper) 72%,transparent),color-mix(in srgb,var(--wash) 58%,transparent));box-shadow:0 18px 54px #4235580d}.notice,.notice.error,.notice.ok{box-shadow:inset 3px 0 color-mix(in srgb,var(--notice-accent, var(--brand)) 72%,transparent);background:linear-gradient(100deg,color-mix(in srgb,var(--notice-accent, var(--brand)) 7%,var(--paper)),color-mix(in srgb,var(--paper) 30%,transparent))}.table th,.table td{border-bottom:0}.table tbody tr{transition:background .18s ease,transform .18s ease}.table tbody tr:hover{transform:translate(3px)}.field input,.field select,.field textarea{background:color-mix(in srgb,var(--paper-2) 58%,transparent);box-shadow:none}.overlay{animation:overlayReveal .3s cubic-bezier(.18,.8,.2,1) both}.toast{animation:toastIn .26s cubic-bezier(.2,.8,.2,1),toastOut .32s ease 2.85s forwards}.prototype-console{background:linear-gradient(145deg,color-mix(in srgb,var(--paper) 86%,transparent),color-mix(in srgb,var(--brand-soft) 72%,transparent));box-shadow:0 30px 90px #2b233a30}@keyframes screenReveal{0%{opacity:0}to{opacity:1}}@keyframes titleReveal{0%{opacity:0;transform:translate3d(0,16px,0)}to{opacity:1;transform:none}}@keyframes surfaceReveal{0%{opacity:0;transform:translate3d(0,22px,0) scale(.985)}to{opacity:1;transform:none}}@keyframes heroReveal{0%{opacity:0;filter:saturate(.7) brightness(1.18)}to{opacity:1;filter:none}}@keyframes mascotFloat{0%,to{transform:translate3d(calc(var(--pointer-x) * 10px),0,42px) rotate(-.7deg)}50%{transform:translate3d(calc(var(--pointer-x) * 10px),-10px,42px) rotate(.8deg)}}@keyframes heroLabel{0%,to{opacity:.62;letter-spacing:.22em}50%{opacity:1;letter-spacing:.28em}}@keyframes numberSettle{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes statusPulse{0%,to{transform:scale(.9);opacity:.68}50%{transform:scale(1.18);opacity:1}}@keyframes bannerDrift{0%,to{translate:0 0}50%{translate:0 -4px}}@keyframes overlayReveal{0%{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:none}}@keyframes toastOut{to{opacity:0;transform:translateY(-7px)}}@media(max-width:959px){.contextbar{background:transparent}.top-mobile,.bottom-nav{background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 88%,transparent),color-mix(in srgb,var(--paper) 74%,var(--wash)));box-shadow:0 18px 52px #362c4813}}@media(max-width:640px){.card:not(.hero){background:linear-gradient(145deg,color-mix(in srgb,var(--paper) 82%,transparent),color-mix(in srgb,var(--paper) 62%,var(--wash)));box-shadow:0 22px 58px #493c6013}.hero{transform:none;background-position:calc(50% + var(--pointer-x) * 5px) calc(50% + var(--scroll-y) * 12px)}.hero-copy{transform:translate3d(0,calc(var(--scroll-y) * -5px),0)}}@media(prefers-reduced-motion:reduce){:root{--pointer-x: 0 !important;--pointer-y: 0 !important;--scroll-y: 0 !important}body,.hero,.hero-copy,.main:before,.main:after{transition:none!important;transform:none!important;background-position:center!important}.screen.active,.screen.active *,.mascot,.badge.dot:before,.game-strip img,.overlay,.toast{animation:none!important}}.session-main{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:24px 0}.session-time{font:700 2rem/1 Georgia,serif;margin:7px 0}.session-cost{text-align:right}.session-cost strong{font:800 4.8rem/.78 Georgia,serif}.session-cost span{font-weight:800}.cost-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:24px 0}.cost-cell{display:grid;gap:3px}.cost-cell strong{font:800 1.7rem/1 Georgia,serif}.session-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.session-hint{margin:0 0 0 auto;color:var(--muted);font-size:.78rem}@media(max-width:959px){body{background-image:radial-gradient(circle at 88% 7%,color-mix(in srgb,var(--brand) 15%,transparent) 0 12vw,transparent 28vw),linear-gradient(145deg,var(--canvas),color-mix(in srgb,var(--brand-soft) 30%,var(--canvas)))}.top-mobile{height:62px;padding-inline:18px;background:transparent;box-shadow:none}.main{padding-bottom:132px}.prototype-console{display:none}.screen-head{padding-top:22px;margin-bottom:18px}.screen-head:before{content:"///";position:absolute;right:8px;top:13px;font:900 1.1rem/1 system-ui;color:color-mix(in srgb,var(--brand) 35%,transparent);letter-spacing:-2px;transform:skew(-12deg)}.screen-head:after{content:"✦";right:44px;top:5px}.screen h1{display:block;width:fit-content;max-width:100%;font-size:clamp(2.25rem,10.5vw,2.65rem);line-height:1.08;text-shadow:3px 3px 0 color-mix(in srgb,var(--brand) 15%,transparent);background:linear-gradient(transparent 72%,color-mix(in srgb,var(--brand) 20%,transparent) 72% 94%,transparent 94%)}.eyebrow{display:inline-block;transform:rotate(-1.5deg);padding:3px 8px;background:var(--ink);color:var(--paper);clip-path:polygon(4% 0,100% 7%,96% 100%,0 88%)}.default-content.grid{gap:8px}.card:not(.hero){position:relative;isolation:isolate;overflow:visible;background:radial-gradient(ellipse at 24% 20%,color-mix(in srgb,var(--paper) 92%,transparent) 0 42%,color-mix(in srgb,var(--paper) 52%,transparent) 67%,transparent 82%);box-shadow:none;border-radius:0;padding-block:24px}.card:not(.hero):after{content:"";position:absolute;z-index:-1;right:-6px;top:-8px;width:88px;height:68px;opacity:.16;background:radial-gradient(circle,var(--ink) 1px,transparent 1.6px);background-size:8px 8px;-webkit-mask-image:linear-gradient(135deg,#000,transparent 76%);mask-image:linear-gradient(135deg,#000,transparent 76%);transform:rotate(5deg)}.card:not(.hero):hover{transform:none;box-shadow:none}.grid>.card:nth-child(n),.stack>.list-item:nth-child(n){border-radius:0}.list-item{position:relative;background:transparent;box-shadow:none;border-radius:0;padding:18px 8px 22px}.list-item:before{content:"";position:absolute;left:0;right:8%;bottom:7px;height:7px;background:linear-gradient(90deg,color-mix(in srgb,var(--brand) 24%,transparent),transparent);clip-path:polygon(0 28%,100% 0,96% 65%,4% 100%)}.empty{background:radial-gradient(ellipse,color-mix(in srgb,var(--paper) 72%,transparent),transparent 72%);box-shadow:none}.notice,.notice.error,.notice.ok{position:relative;border-radius:16px 18px 17px 7px;box-shadow:none}.notice:after{content:"";position:absolute;left:14px;bottom:-8px;border-width:9px 9px 0 0;border-style:solid;border-color:color-mix(in srgb,var(--notice-accent, var(--brand)) 7%,var(--paper)) transparent transparent transparent}.hero{clip-path:polygon(0 3%,96% 0,100% 92%,4% 100%);border-radius:24px;box-shadow:0 24px 56px #281f3c26}.game-strip{overflow:visible}.game-strip img{box-shadow:7px 8px color-mix(in srgb,var(--brand) 12%,transparent)}.badge{clip-path:polygon(4% 0,100% 5%,95% 100%,0 90%);border-radius:5px}.prototype-console{bottom:108px}.bottom-nav{display:grid;position:fixed;z-index:45;left:50%;right:auto;bottom:calc(12px + env(safe-area-inset-bottom));width:calc(100% - 24px);max-width:430px;height:76px;grid-template-columns:repeat(5,1fr);gap:3px;padding:8px 9px;transform:translate(-50%);border:0;border-radius:25px 25px 20px 20px;background:linear-gradient(145deg,#20212b,#151620);box-shadow:0 22px 54px #14111e4d,inset 0 1px #ffffff14}.bottom-nav:before{content:"";position:absolute;right:23px;bottom:-8px;width:18px;height:18px;background:#171821;clip-path:polygon(0 0,100% 0,68% 100%)}.bottom-nav button{position:relative;min-width:0;border:0;border-radius:18px;background:transparent;color:#ffffff8a;font-size:.66rem;font-weight:750;padding:5px 2px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;box-shadow:none;transition:transform .22s cubic-bezier(.2,.8,.2,1),background .22s ease,color .22s ease}.bottom-nav button:hover{background:#ffffff0f;color:#fff}.bottom-nav button.active{color:var(--on-brand);background:var(--brand);font-weight:900;transform:translateY(-10px) rotate(-1.5deg);box-shadow:0 10px 22px color-mix(in srgb,var(--brand) 42%,transparent)}.bottom-nav button.active:after{content:"";position:absolute;bottom:-7px;width:17px;height:3px;border-radius:99px;background:#fff;opacity:.88}.bottom-nav .dock-icon{width:24px;height:24px;display:grid;place-items:center}.bottom-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}html[data-role=waiting] .bottom-nav{grid-template-columns:1fr}html[data-role=waiting] .bottom-nav button:not([data-target=dashboard]){display:none}.session-stage{color:#f7f5f2!important;background-color:#1b1b27!important;background-image:radial-gradient(circle at 85% 16%,rgba(171,146,226,.34),transparent 28%),radial-gradient(circle,rgba(255,255,255,.12) 1px,transparent 1.4px)!important;background-size:auto,12px 12px!important;clip-path:polygon(0 2%,97% 0,100% 94%,3% 100%);padding:26px 22px 30px!important;margin-bottom:12px!important}.session-stage:after{display:none}.session-stage .label,.session-stage .muted,.session-stage .session-hint{color:#ffffff9e}.session-stage .badge{background:#f7f5f2;color:#242331}.session-main{align-items:center;margin:22px 0 18px}.session-time{font-size:1.52rem}.session-cost strong{font-size:5.4rem;text-shadow:5px 5px 0 rgba(171,146,226,.32)}.cost-strip{grid-template-columns:repeat(2,1fr);gap:0;margin:17px 0 23px}.cost-cell{padding:10px 0}.cost-cell:nth-child(2n){text-align:right}.cost-cell strong{font-size:1.55rem}.session-actions{align-items:stretch}.session-actions .btn{flex:1}.session-actions .primary{background:#f7f5f2;color:#242331}.session-actions .danger{background:#b84b5838;color:#ffdce1}.session-hint{flex-basis:100%;text-align:center}}@media(max-width:640px){.main{padding-inline:18px}.screen-head .actions{margin-top:20px}.bottom-nav{height:72px}.bottom-nav .dock-icon{width:22px;height:22px}.bottom-nav svg{width:20px;height:20px}}.admin-mobile-summary{display:none}@media(max-width:959px){.admin-mobile-summary{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:8px;align-items:end;margin:4px 0 18px;padding:20px;color:#f7f5f2;background:#1c1d28;clip-path:polygon(0 4%,97% 0,100% 88%,3% 100%);background-image:radial-gradient(circle at 86% 18%,color-mix(in srgb,var(--brand) 34%,transparent),transparent 28%),radial-gradient(circle,rgba(255,255,255,.11) 1px,transparent 1.4px);background-size:auto,11px 11px}.admin-mobile-summary .summary-title{align-self:center}.admin-mobile-summary .summary-title strong{display:block;font:800 1.42rem/1.05 Georgia,serif}.admin-mobile-summary .summary-title small{color:#ffffff8f}.admin-mobile-summary .summary-kpi{display:grid;gap:2px;text-align:center}.admin-mobile-summary .summary-kpi strong{font:800 1.45rem/1 Georgia,serif}.admin-mobile-summary .summary-kpi span{font-size:.62rem;color:#ffffff94}.admin-hub{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;counter-reset:admin-card}.admin-hub .hub-card{counter-increment:admin-card;position:relative;min-height:112px;margin:0!important;padding:17px 15px!important;align-items:flex-start;text-align:left;justify-content:flex-end;border-radius:0!important;clip-path:polygon(0 5%,94% 0,100% 89%,7% 100%);background:color-mix(in srgb,var(--paper) 70%,var(--brand-soft))!important;box-shadow:none!important;transform:none!important}.admin-hub .hub-card:before{content:"0" counter(admin-card);position:absolute;right:11px;top:8px;font:italic 900 1.8rem/1 Georgia,serif;color:color-mix(in srgb,var(--brand) 22%,transparent)}.admin-hub .hub-card:after{left:10px;right:auto;top:auto;bottom:11px;width:44px;height:5px;background:var(--brand);opacity:.55;transform:skew(-25deg)}.admin-hub .hub-card span{font-size:.82rem;font-weight:900}.admin-hub .hub-card strong{font-size:.7rem;color:var(--muted)}.admin-hub .hub-card:nth-child(1),.admin-hub .hub-card:nth-child(4){grid-column:span 2;min-height:126px;color:#f7f5f2;background:#232431!important}.admin-hub .hub-card:nth-child(1):before,.admin-hub .hub-card:nth-child(4):before{color:#ffffff29}.admin-hub .hub-card:nth-child(1) strong,.admin-hub .hub-card:nth-child(4) strong{color:#fff9}.admin-hub .hub-card:nth-child(1) span,.admin-hub .hub-card:nth-child(4) span{font:800 1.25rem/1.1 Georgia,\"Noto Serif SC\",serif}}@media(max-width:959px){button,a{-webkit-tap-highlight-color:transparent}.top-mobile{background:linear-gradient(180deg,color-mix(in srgb,var(--canvas) 94%,transparent),color-mix(in srgb,var(--canvas) 64%,transparent));box-shadow:0 14px 34px color-mix(in srgb,var(--brand) 5%,transparent)}.top-mobile:after{content:"";position:absolute;left:18px;right:64%;bottom:5px;height:4px;background:linear-gradient(90deg,color-mix(in srgb,var(--brand) 30%,transparent),transparent);clip-path:polygon(0 38%,100% 0,92% 100%,5% 70%)}.main{padding-bottom:148px}.screen-head .lead{margin-top:7px;max-width:94%;line-height:1.65}.screen-head+.default-content{margin-top:8px}.bottom-nav{width:calc(100% - 32px);height:72px;bottom:calc(14px + env(safe-area-inset-bottom));padding:7px 8px;border-radius:24px 24px 19px 19px}.bottom-nav:before{right:20px;bottom:-7px;width:15px;height:15px}.bottom-nav button{border-radius:16px;font-size:.64rem;gap:2px}.bottom-nav button.active{transform:translateY(-8px) rotate(-1deg);box-shadow:0 9px 20px color-mix(in srgb,var(--brand) 36%,transparent)}.bottom-nav button:active{transform:scale(.92)}.bottom-nav button.active:active{transform:translateY(-6px) scale(.94)}.bottom-nav button.active .dock-icon{transform:rotate(-4deg)}.bottom-nav .dock-icon{transition:transform .2s ease}.field input,.field select,.field textarea{min-height:46px}.actions .btn{min-height:42px}.table{font-size:.84rem}}@media(min-width:960px){body{background-image:radial-gradient(circle at 87% 9%,color-mix(in srgb,var(--brand) 14%,transparent) 0 8vw,transparent 22vw),linear-gradient(145deg,var(--canvas),color-mix(in srgb,var(--brand-soft) 25%,var(--canvas)))}.rail{background:linear-gradient(165deg,color-mix(in srgb,var(--paper) 66%,transparent),color-mix(in srgb,var(--brand-soft) 20%,transparent));box-shadow:none}.brand-mark{border-radius:4px;clip-path:polygon(5% 0,100% 8%,93% 100%,0 88%);background:var(--ink);color:var(--paper);box-shadow:6px 6px color-mix(in srgb,var(--brand) 18%,transparent)}.identity{position:relative;border-radius:0;clip-path:polygon(0 4%,96% 0,100% 91%,4% 100%);background:color-mix(in srgb,var(--brand-soft) 64%,transparent);box-shadow:none}.identity:after{content:"";position:absolute;right:7px;top:8px;width:44px;height:34px;opacity:.13;background:radial-gradient(circle,var(--ink) 1px,transparent 1.5px);background-size:7px 7px}.nav-btn{border-radius:0;clip-path:polygon(0 6%,97% 0,100% 88%,3% 100%)}.nav-btn.active{background:linear-gradient(90deg,var(--brand-soft),transparent 94%);color:var(--brand)}.nav-btn:after{width:6px;top:16%;bottom:16%;transform:scaleY(0) skewY(-18deg)}.nav-btn.active:after{transform:scaleY(1) skewY(-18deg)}.contextbar{background:transparent;box-shadow:none}.screen-head{padding:18px 0 14px;margin-bottom:18px}.screen-head:before{content:"///";position:absolute;right:2.5%;top:11px;font:900 1.4rem/1 system-ui;color:color-mix(in srgb,var(--brand) 30%,transparent);letter-spacing:-3px;transform:skew(-14deg)}.screen-head:after{right:8%;top:-2px;font-size:3.6rem}.screen h1{display:block;width:fit-content;text-shadow:5px 5px 0 color-mix(in srgb,var(--brand) 14%,transparent);background:linear-gradient(transparent 76%,color-mix(in srgb,var(--brand) 17%,transparent) 76% 94%,transparent 94%)}.eyebrow{display:inline-block;padding:4px 10px;color:var(--paper);background:var(--ink);clip-path:polygon(3% 0,100% 8%,96% 100%,0 88%);transform:rotate(-1deg)}.default-content.grid{gap:14px 22px}.card:not(.hero){position:relative;isolation:isolate;overflow:visible;border-radius:0;background:radial-gradient(ellipse at 27% 24%,color-mix(in srgb,var(--paper) 90%,transparent) 0 43%,color-mix(in srgb,var(--paper) 48%,transparent) 67%,transparent 84%);box-shadow:none;padding:26px}.card:not(.hero):after{content:"";position:absolute;z-index:-1;right:-8px;top:-10px;width:120px;height:90px;opacity:.12;background:radial-gradient(circle,var(--ink) 1px,transparent 1.7px);background-size:9px 9px;-webkit-mask-image:linear-gradient(135deg,#000,transparent 78%);mask-image:linear-gradient(135deg,#000,transparent 78%);transform:rotate(4deg)}.card:not(.hero):hover{transform:translateY(-3px) rotate(-.15deg);box-shadow:none}.grid>.card:nth-child(n),.stack>.list-item:nth-child(n){border-radius:0}.hero{clip-path:polygon(0 3%,97% 0,100% 92%,3% 100%);border-radius:28px;box-shadow:16px 20px color-mix(in srgb,var(--brand) 10%,transparent),0 30px 70px #281f3c24}.list-item{position:relative;border-radius:0;background:transparent;box-shadow:none;padding:20px 12px 27px}.list-item:before{content:"";position:absolute;left:0;right:12%;bottom:8px;height:8px;background:linear-gradient(90deg,color-mix(in srgb,var(--brand) 25%,transparent),transparent);clip-path:polygon(0 30%,100% 0,96% 70%,4% 100%)}.list-item:hover{transform:translate(4px);box-shadow:none}.notice,.notice.error,.notice.ok{position:relative;border-radius:17px 19px 18px 7px;box-shadow:none}.notice:after{content:"";position:absolute;left:16px;bottom:-9px;border-width:10px 10px 0 0;border-style:solid;border-color:color-mix(in srgb,var(--notice-accent, var(--brand)) 7%,var(--paper)) transparent transparent transparent}.badge{clip-path:polygon(4% 0,100% 6%,95% 100%,0 90%);border-radius:5px}.game-strip img{box-shadow:9px 10px color-mix(in srgb,var(--brand) 11%,transparent)}.empty{background:radial-gradient(ellipse,color-mix(in srgb,var(--paper) 70%,transparent),transparent 73%);box-shadow:none}.session-stage{color:#f7f5f2!important;background-color:#1b1b27!important;background-image:radial-gradient(circle at 86% 14%,rgba(171,146,226,.32),transparent 29%),radial-gradient(circle,rgba(255,255,255,.11) 1px,transparent 1.4px)!important;background-size:auto,13px 13px!important;clip-path:polygon(0 2%,98% 0,100% 94%,3% 100%);padding:30px 32px!important}.session-stage:after{display:none}.session-stage .label,.session-stage .muted,.session-stage .session-hint{color:#ffffff9e}.session-stage .badge{background:#f7f5f2;color:#242331}.session-stage .session-cost strong{font-size:6.2rem;text-shadow:6px 6px 0 rgba(171,146,226,.3)}.session-stage .cost-cell strong{font-size:1.9rem}.session-stage .primary{background:#f7f5f2;color:#242331}.session-stage .danger{background:#b84b5838;color:#ffdce1}.admin-mobile-summary{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:16px;align-items:end;width:min(720px,70%);margin:0 0 28px;padding:24px 30px;color:#f7f5f2;background:#1c1d28;clip-path:polygon(0 4%,98% 0,100% 89%,2% 100%);background-image:radial-gradient(circle at 86% 18%,color-mix(in srgb,var(--brand) 34%,transparent),transparent 28%),radial-gradient(circle,rgba(255,255,255,.11) 1px,transparent 1.4px);background-size:auto,12px 12px}.admin-mobile-summary .summary-title strong{display:block;font:800 1.8rem/1.05 Georgia,serif}.admin-mobile-summary .summary-title small{color:#ffffff8f}.admin-mobile-summary .summary-kpi{text-align:center}.admin-mobile-summary .summary-kpi strong{display:block;font:800 2rem/1 Georgia,serif}.admin-mobile-summary .summary-kpi span{font-size:.72rem;color:#ffffff94}.admin-hub{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;counter-reset:admin-desktop}.admin-hub .hub-card{counter-increment:admin-desktop;position:relative;min-height:150px;padding:22px!important;align-items:flex-start;text-align:left;justify-content:flex-end;clip-path:polygon(0 5%,95% 0,100% 90%,6% 100%);background:color-mix(in srgb,var(--paper) 62%,var(--brand-soft))!important}.admin-hub .hub-card:before{content:"0" counter(admin-desktop);position:absolute;right:14px;top:11px;font:italic 900 2.4rem/1 Georgia,serif;color:color-mix(in srgb,var(--brand) 18%,transparent)}.admin-hub .hub-card:nth-child(1),.admin-hub .hub-card:nth-child(4){grid-column:span 2;color:#f7f5f2;background:#232431!important}.admin-hub .hub-card:nth-child(1):before,.admin-hub .hub-card:nth-child(4):before{color:#ffffff24}.admin-hub .hub-card:nth-child(1) strong,.admin-hub .hub-card:nth-child(4) strong{color:#fff9}}.segmented{border:0;background:var(--ink);padding:4px;clip-path:polygon(2% 0,100% 5%,97% 100%,0 91%)}.segmented button{color:color-mix(in srgb,var(--paper) 62%,transparent)}.segmented button.active{background:var(--brand);color:var(--on-brand);box-shadow:none}.code{border-radius:5px;clip-path:polygon(0 2%,99% 0,100% 96%,2% 100%);background:#171821;color:#f0ecf8;box-shadow:7px 8px color-mix(in srgb,var(--brand) 11%,transparent)}.table-wrap{position:relative;padding:8px 0}.table thead{background:var(--ink);color:var(--paper)}.table th{color:inherit;text-transform:uppercase;letter-spacing:.08em}.table tbody tr{background:transparent!important}.table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--brand-soft) 28%,transparent)!important}.table td:first-child{font-family:Georgia,serif;font-weight:800}form.card,.auth-card{background:radial-gradient(ellipse at 32% 22%,color-mix(in srgb,var(--paper) 92%,transparent),color-mix(in srgb,var(--paper) 45%,transparent) 70%,transparent 88%)!important}.field label{letter-spacing:.06em}.field input,.field select,.field textarea{border-radius:3px;background:color-mix(in srgb,var(--paper) 48%,transparent);box-shadow:inset 0 -2px color-mix(in srgb,var(--ink) 12%,transparent)}.field input:focus,.field select:focus,.field textarea:focus{box-shadow:inset 0 -3px var(--brand);background:color-mix(in srgb,var(--paper) 78%,transparent)}.auth-art{clip-path:polygon(0 3%,96% 0,100% 94%,4% 100%);box-shadow:12px 14px color-mix(in srgb,var(--brand) 12%,transparent)!important}.auth-card h1{text-shadow:5px 5px 0 color-mix(in srgb,var(--brand) 14%,transparent)}[data-screen=devices] .default-content>.grid{counter-reset:device}[data-screen=devices] .device-card{counter-increment:device;min-height:310px;padding:28px!important;clip-path:polygon(0 3%,95% 0,100% 91%,6% 100%);background:color-mix(in srgb,var(--paper) 61%,var(--brand-soft))!important}[data-screen=devices] .device-card:before{content:"DEVICE / 0" counter(device);position:absolute;right:18px;bottom:17px;font:italic 900 .72rem/1 Georgia,serif;letter-spacing:.12em;color:color-mix(in srgb,var(--brand) 42%,transparent)}[data-screen=devices] .device-card:first-child{color:#f7f5f2;background-color:#20212d!important;background-image:radial-gradient(circle at 82% 15%,color-mix(in srgb,var(--brand) 34%,transparent),transparent 28%),radial-gradient(circle,rgba(255,255,255,.11) 1px,transparent 1.5px)!important;background-size:auto,12px 12px!important}[data-screen=devices] .device-card:first-child .muted{color:#ffffff9e}[data-screen=devices] .device-card:first-child .device-icon{color:#252431;background:#f7f5f2}[data-screen=devices] .device-card:first-child .btn{color:#242431;background:#f7f5f2}[data-screen=devices] .device-card:nth-child(2){background:radial-gradient(circle at 82% 14%,color-mix(in srgb,var(--brand) 16%,transparent),transparent 34%),color-mix(in srgb,var(--paper) 68%,var(--brand-soft))!important}[data-screen=devices] .device-card:nth-child(3){background:radial-gradient(circle at 82% 14%,color-mix(in srgb,var(--warn) 12%,transparent),transparent 34%),color-mix(in srgb,var(--paper) 76%,var(--brand-soft))!important}[data-screen=devices] .default-content>.empty{display:none}[data-screen=devices] .device-card h2{font:800 1.75rem/1.1 Georgia,\"Noto Serif SC\",serif;margin-top:24px}.device-icon{border-radius:6px;clip-path:polygon(4% 0,100% 7%,94% 100%,0 91%);box-shadow:6px 7px color-mix(in srgb,var(--brand) 15%,transparent)}.device-actions{margin-top:auto;padding-top:18px}.device-card{display:flex;flex-direction:column}[data-screen=admin-devices] .default-content{counter-reset:admin-device}[data-screen=admin-devices] .default-content>.card{counter-increment:admin-device;clip-path:polygon(0 3%,96% 0,100% 92%,5% 100%);background:color-mix(in srgb,var(--paper) 62%,var(--brand-soft))!important;min-height:230px}[data-screen=admin-devices] .default-content>.card:before{content:"CONFIG / 0" counter(admin-device);position:absolute;right:16px;bottom:16px;font:italic 900 .72rem/1 Georgia,serif;color:color-mix(in srgb,var(--brand) 40%,transparent)}[data-screen=passes] .default-content{counter-reset:pass-card}[data-screen=passes] .default-content>.card{counter-increment:pass-card;min-height:330px;display:flex;flex-direction:column;align-items:flex-start;clip-path:polygon(0 2%,96% 0,100% 91%,5% 100%);background:color-mix(in srgb,var(--paper) 62%,var(--brand-soft))!important}[data-screen=passes] .default-content>.card:before{content:"PASS / 0" counter(pass-card);position:absolute;right:16px;top:16px;font:italic 900 1rem/1 Georgia,serif;color:color-mix(in srgb,var(--brand) 25%,transparent)}[data-screen=passes] .default-content>.card .kpi{margin:auto 0 22px;font-size:3.1rem}[data-screen=passes] .default-content>.empty{display:none}[data-screen=wallet] .default-content{position:relative;padding-left:28px}[data-screen=wallet] .default-content:before{content:"";position:absolute;left:8px;top:72px;bottom:62px;width:3px;background:linear-gradient(var(--brand),color-mix(in srgb,var(--brand) 10%,transparent));transform:skewY(-7deg)}[data-screen=wallet] .list-item:after{content:"";position:absolute;left:-25px;top:23px;width:11px;height:11px;background:var(--canvas);border:4px solid var(--brand);border-radius:50%}[data-screen=wallet] .list-item .amount{font:800 1.65rem/1 Georgia,serif;text-shadow:3px 3px 0 color-mix(in srgb,var(--ink) 12%,transparent)}[data-screen=admin-approve] .list-item,[data-screen=admin-users] .list-item,[data-screen=admin-sessions] .list-item,[data-screen=admin-cards] .list-item,[data-screen=admin-goods] .list-item{padding:24px 18px 30px}[data-screen^=admin-] .card.flat{clip-path:polygon(0 4%,98% 0,100% 91%,3% 100%);background:color-mix(in srgb,var(--paper) 58%,var(--brand-soft))!important}[data-screen=admin-billing] .default-content>.card:first-child{background:#242431!important;color:#f7f5f2}[data-screen=admin-billing] .default-content>.card:first-child p{color:#ffffffad}.overlay{border-radius:8px}.overlay-head h2{font-family:Georgia,\"Noto Serif SC\",serif;text-shadow:3px 3px 0 color-mix(in srgb,var(--brand) 14%,transparent)}.leaderboard{padding-top:8px!important}.rank-list{display:grid;width:100%;min-width:0;gap:8px;margin-top:14px}.rank-row{display:grid;width:100%;min-width:0;max-width:100%;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;position:relative;overflow:hidden;color:#f7f5f2;background:#242431;clip-path:polygon(0 4%,98% 0,100% 89%,2% 100%);padding:15px 32px;box-sizing:border-box}.rank-row:nth-child(1){background:linear-gradient(145deg,#fff2aa,#ffd85c 18%,#d8a42b,#f1c65f 62%,#8e6b1e)}.rank-row:nth-child(2){background:linear-gradient(145deg,#f7f9fc,#d3d7df 24%,#a8aeb8,#dce2eb 68%,#8e96a2)}.rank-row:nth-child(3){background:linear-gradient(145deg,#ffddb0,#d18b45 26%,#9e5726,#bf783c 70%,#6b3617)}.rank-row:nth-child(1),.rank-row:nth-child(2){color:#111;text-shadow:1px 1px 0 #ffffff}.rank-row:nth-child(3){color:#fff;text-shadow:1px 1px 0 #111111}.rank-row:nth-child(-n+3) .rank-no,.rank-row:nth-child(-n+3) .rank-avatar,.rank-row:nth-child(-n+3) .rank-name small,.rank-row:nth-child(-n+3) .rank-time{color:inherit}.rank-row:nth-child(1):after{display:none}.rank-no{position:absolute;z-index:1;top:7px;left:11px;font:italic 900 .82rem/1 Georgia,serif;color:color-mix(in srgb,var(--brand) 48%,var(--muted))}.rank-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-weight:900}.rank-name strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-name{min-width:0}.rank-name small{display:block;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.rank-row:first-child small{color:inherit}.rank-bar{height:7px;background:color-mix(in srgb,var(--brand) 9%,transparent);transform:skew(-14deg)}.rank-bar i{display:block;height:100%;background:var(--brand)}.rank-time{font:800 1.15rem/1 Georgia,serif;white-space:nowrap}@media(max-width:959px){[data-screen=devices] .default-content>.grid{display:grid;grid-template-columns:1fr;gap:14px}[data-screen=devices] .device-card{min-height:265px}[data-screen=passes] .default-content{display:grid;grid-template-columns:1fr;gap:12px}[data-screen=passes] .default-content>.card{min-height:285px}[data-screen=wallet] .default-content{padding-left:22px}.rank-row{grid-template-columns:36px minmax(0,1fr) auto;gap:8px;padding:15px 14px 15px 30px}.rank-bar{display:none}.rank-row:after{left:77px}.rank-time{font-size:.95rem}}@media(min-width:640px)and (max-width:960px){.top-mobile{height:72px;padding-inline:30px}.top-mobile:before{content:". . . . . . .";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) skew(-9deg);font:800 .64rem/1 system-ui;letter-spacing:.18em;color:color-mix(in srgb,var(--brand) 42%,var(--muted))}.top-mobile .brand-mark{width:28px;height:28px}.top-mobile .brand{font-size:1.08rem}.main{max-width:900px;padding:36px 34px 168px}.screen-head{min-height:168px;padding-top:28px;align-items:center}.screen h1{font-size:3.35rem;max-width:640px}.screen-head .lead{max-width:570px;font-size:1.02rem}.screen-head .actions{max-width:300px;justify-content:flex-end}.bottom-nav{max-width:520px;width:calc(100% - 72px);height:76px;bottom:calc(18px + env(safe-area-inset-bottom));padding-inline:13px}.bottom-nav button{font-size:.69rem}.bottom-nav svg{width:23px;height:23px}[data-screen=dashboard] .hero{grid-column:1/-1;min-height:420px}[data-screen=dashboard] .hero-copy{width:55%;padding-top:10px}[data-screen=dashboard] .mascot{right:5%;height:60%}[data-screen=dashboard] .hero+aside{grid-column:span 5}[data-screen=dashboard] .hero+aside+article{grid-column:span 7}[data-screen=dashboard] .hero+aside+article+article{grid-column:1/-1}[data-screen=dashboard] .leaderboard{grid-column:1/-1}[data-screen=billing] .session-stage,[data-screen=billing] .session-stage~aside{grid-column:1/-1}[data-screen=billing] .session-stage{min-height:420px}.session-stage .session-main{margin-block:30px}.session-stage .session-cost strong{font-size:6.3rem}[data-screen=devices] .default-content>.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}[data-screen=devices] .device-card{grid-column:auto;min-height:250px}[data-screen=devices] .device-card:first-child{grid-column:1/-1;min-height:290px;display:grid;grid-template-columns:1fr 1.2fr;grid-template-rows:auto 1fr auto;column-gap:30px}[data-screen=devices] .device-card:first-child>.row{grid-column:1/-1}[data-screen=devices] .device-card:first-child h2,[data-screen=devices] .device-card:first-child p{align-self:end}[data-screen=devices] .device-card:first-child .device-actions{grid-column:1/-1}[data-screen=passes] .default-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}[data-screen=passes] .default-content>.card{grid-column:auto;min-height:300px}[data-screen=passes] .default-content>.card:nth-child(3){grid-column:1/-1;min-height:210px}[data-screen=admin] .admin-mobile-summary{padding:24px 28px;margin-bottom:24px}[data-screen=admin] .admin-hub{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}[data-screen=admin] .admin-hub .hub-card:nth-child(1),[data-screen=admin] .admin-hub .hub-card:nth-child(4){grid-column:span 2}[data-screen=admin-devices] .default-content>.card{grid-column:span 6}[data-screen=admin-devices] .default-content>.card:nth-child(3){grid-column:1/-1}[data-screen=admin-global-config] .default-content>form,[data-screen=admin-global-config] .default-content>aside{grid-column:1/-1}.rank-row{grid-template-columns:38px minmax(0,1fr) auto;padding:11px 10px 11px 30px}.rank-bar{display:block}.rank-row:after{left:96px}.overlay{width:min(680px,calc(100% - 48px))}.overlay.wide{width:calc(100% - 32px)}.table th,.table td{padding:13px 12px}}@media(min-width:960px)and (max-width:1199px){:root{--rail: 220px}.rail{padding-inline:15px}.main{padding:34px 30px 110px}.contextbar{padding-inline:30px}.screen h1{font-size:3.45rem}.screen-head{min-height:150px}[data-screen=dashboard] .hero{grid-column:1/-1;min-height:400px}[data-screen=dashboard] .hero+aside{grid-column:span 5}[data-screen=dashboard] .hero+aside+article{grid-column:span 7}[data-screen=dashboard] .hero+aside+article+article,[data-screen=dashboard] .leaderboard{grid-column:1/-1}[data-screen=billing] .session-stage,[data-screen=billing] .session-stage~aside{grid-column:1/-1}[data-screen=devices] .default-content>.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}[data-screen=devices] .device-card{grid-column:auto;min-height:250px}[data-screen=devices] .device-card:first-child{grid-column:1/-1}[data-screen=passes] .default-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}[data-screen=passes] .default-content>.card{grid-column:auto;min-height:290px}[data-screen=passes] .default-content>.card:nth-child(3){grid-column:1/-1;min-height:210px}[data-screen=admin] .admin-hub{grid-template-columns:repeat(3,minmax(0,1fr))!important}[data-screen=admin-global-config] .default-content>form,[data-screen=admin-global-config] .default-content>aside{grid-column:1/-1}.admin-mobile-summary{width:100%}}:root{--panel-cut: polygon(0 1.4%, 98.6% 0, 100% 96.8%, 1.4% 100%)}.card,.device-card,.admin-mobile-summary,.empty,.rank-row:first-child{clip-path:var(--panel-cut)!important;border-radius:0!important}[data-screen=devices] .device-card,[data-screen=admin-devices] .default-content>.card{padding-inline:clamp(34px,4vw,48px)!important;overflow:hidden}[data-screen=devices] .device-card h2,[data-screen=devices] .device-card p,[data-screen=admin-devices] .default-content>.card h2,[data-screen=admin-devices] .default-content>.card p{overflow-wrap:anywhere}[data-screen=devices] .device-actions,[data-screen=admin-devices] .actions{flex-wrap:wrap}[data-screen=devices] .device-card:before,[data-screen=admin-devices] .default-content>.card:before{right:clamp(28px,4vw,44px)}@media(max-width:640px){[data-screen=devices] .device-card,[data-screen=admin-devices] .default-content>.card{padding-inline:28px!important}}#overlay-panel:has(.drawer-menu){width:min(860px,calc(100% - 48px));max-height:min(88vh,860px);clip-path:none!important;border-radius:28px!important;background:color-mix(in srgb,var(--paper) 96%,var(--brand-soft));overflow:hidden}#overlay-panel:has(.drawer-menu) .overlay-head{padding:20px 24px 10px}#overlay-panel:has(.drawer-menu) .overlay-head h2{font-size:1rem;font-family:inherit;text-shadow:none;color:var(--muted);letter-spacing:.12em}#overlay-panel:has(.drawer-menu) .overlay-body{padding:10px 24px 28px}.drawer-menu{display:grid;gap:22px}.drawer-section{display:grid;gap:10px}.drawer-section-head{display:flex;justify-content:space-between;align-items:center;padding-inline:4px}.drawer-section-head strong{font-size:.78rem;letter-spacing:.12em}.drawer-section-head span{font-size:.7rem;color:var(--muted)}.drawer-grid{display:grid;gap:10px}.drawer-member-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.drawer-admin-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.drawer-tile{position:relative;min-height:104px;padding:16px;border:0;text-align:left;color:var(--ink);background:color-mix(in srgb,var(--paper) 64%,var(--brand-soft));clip-path:var(--panel-cut);display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;overflow:hidden;transition:transform .18s ease,background .18s ease}.drawer-tile:hover{transform:translateY(-3px);background:var(--brand-soft)}.drawer-tile:active{transform:scale(.97)}.drawer-tile .tile-no{position:absolute;right:12px;top:9px;font:italic 900 1.65rem/1 Georgia,serif;color:color-mix(in srgb,var(--brand) 18%,transparent)}.drawer-tile strong{font-size:.92rem}.drawer-tile small{margin-top:3px;color:var(--muted);font-size:.68rem}.drawer-tile.ink{color:#f7f5f2;background:#242431}.drawer-tile.ink small{color:#ffffff8f}.drawer-tile.ink .tile-no{color:#ffffff24}.drawer-tile.violet{color:var(--on-brand);background:var(--brand)}.drawer-tile.violet small{color:#ffffffa8}.drawer-tile.violet .tile-no{color:#ffffff29}.drawer-admin{display:none}html[data-role=admin] .drawer-admin{display:grid}.drawer-admin-grid .drawer-tile:first-child{grid-column:span 2}@media(max-width:959px){#overlay-panel:has(.drawer-menu){width:min(720px,calc(100% - 24px));max-height:90vh;border-radius:28px 28px 0 0!important}.drawer-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){#overlay-panel:has(.drawer-menu){width:100%;max-height:90dvh;border-radius:26px 26px 0 0!important}#overlay-panel:has(.drawer-menu) .overlay-head{padding:17px 18px 8px}#overlay-panel:has(.drawer-menu) .overlay-body{padding:8px 18px calc(26px + env(safe-area-inset-bottom))}.drawer-menu{gap:18px}.drawer-member-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.drawer-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.drawer-tile{min-height:92px;padding:13px}.drawer-tile strong{font-size:.82rem}.drawer-tile small{font-size:.62rem}.drawer-admin-grid .drawer-tile:first-child{grid-column:span 2}}#overlay-backdrop:has(.drawer-menu){background:radial-gradient(circle at 18% 82%,color-mix(in srgb,var(--brand) 22%,transparent),transparent 30%),radial-gradient(circle at 85% 18%,rgba(47,136,124,.13),transparent 26%),#11131ab3}#overlay-panel:has(.drawer-menu){position:relative;background-color:var(--paper);background-image:radial-gradient(circle,color-mix(in srgb,var(--brand) 11%,transparent) 1px,transparent 1.4px),linear-gradient(135deg,transparent 72%,color-mix(in srgb,var(--brand-soft) 38%,transparent) 72% 76%,transparent 76%);background-size:19px 19px,auto}#overlay-panel:has(.drawer-menu):after{content:"///";position:absolute;right:28px;top:74px;font:900 2rem/1 system-ui;letter-spacing:-5px;color:color-mix(in srgb,var(--brand) 25%,transparent);transform:skew(-16deg);pointer-events:none}#overlay-panel:has(.drawer-menu) #overlay-close{color:#f7f5f2;background:#242431;clip-path:var(--panel-cut);border-radius:0;box-shadow:6px 6px color-mix(in srgb,var(--brand) 18%,transparent)}.drawer-menu{position:relative;isolation:isolate}.drawer-menu:before{content:"";position:absolute;z-index:-1;right:3%;top:142px;width:96px;height:96px;border:1px solid color-mix(in srgb,var(--brand) 16%,transparent);border-radius:50%;box-shadow:0 0 0 16px color-mix(in srgb,var(--brand) 4%,transparent),0 0 0 31px color-mix(in srgb,var(--brand) 3%,transparent)}.drawer-section-head:after{content:"";flex:1;height:5px;margin-left:12px;background:linear-gradient(90deg,color-mix(in srgb,var(--brand) 28%,transparent),transparent);clip-path:polygon(0 30%,100% 0,94% 100%,4% 72%)}.drawer-section-head span{order:3}.drawer-tile:before{position:absolute;left:12px;top:8px;font:900 2.8rem/1 Georgia,serif;color:color-mix(in srgb,var(--brand) 10%,transparent);transform:rotate(-8deg);transition:transform .2s ease,opacity .2s ease}.drawer-tile:after{content:"";position:absolute;left:14px;bottom:10px;width:38px;height:4px;background:var(--brand);opacity:.38;transform:skew(-22deg)}.drawer-tile:hover:before{transform:rotate(-3deg) scale(1.08)}.drawer-tile.ink:before,.drawer-tile.violet:before{color:#ffffff1a}.drawer-tile.ink:after,.drawer-tile.violet:after{background:#fff}.drawer-member-grid .drawer-tile:nth-child(1):before{content:"◇"}.drawer-member-grid .drawer-tile:nth-child(2):before{content:"◎"}.drawer-member-grid .drawer-tile:nth-child(3):before{content:"↗"}.drawer-admin-grid .drawer-tile:nth-child(1):before{content:"◆"}.drawer-admin-grid .drawer-tile:nth-child(2):before{content:"✓"}.drawer-admin-grid .drawer-tile:nth-child(3):before{content:var(--drawer-admin-users-icon)}.drawer-admin-grid .drawer-tile:nth-child(4):before{content:"¥"}.drawer-admin-grid .drawer-tile:nth-child(5):before{content:"◉"}.drawer-admin-grid .drawer-tile:nth-child(6):before{content:"▱"}.drawer-admin-grid .drawer-tile:nth-child(7):before{content:"▣"}.drawer-admin-grid .drawer-tile:nth-child(8):before{content:"⌁"}.drawer-admin-grid .drawer-tile:nth-child(9):before{content:"≋"}.drawer-admin-grid .drawer-tile:nth-child(10):before{content:"⚙"}.drawer-admin-grid .drawer-tile:nth-child(11):before{content:"✦"}@media(max-width:640px){#overlay-panel:has(.drawer-menu):before{content:"";position:absolute;z-index:3;left:50%;top:7px;width:42px;height:4px;border-radius:99px;background:color-mix(in srgb,var(--ink) 20%,transparent);transform:translate(-50%)}#overlay-panel:has(.drawer-menu):after{right:20px;top:66px;font-size:1.5rem}.drawer-menu:before{width:70px;height:70px;top:126px}.drawer-tile:before{font-size:2.1rem}.drawer-tile:after{width:28px}}.mobile-header-actions{margin-left:auto;display:flex;align-items:center}.mobile-account-button,.mobile-admin-back{border:0;background:transparent;color:var(--ink);min-height:42px;padding:4px;align-items:center;gap:8px}.mobile-account-button{display:flex}.mobile-avatar{position:relative;width:38px;height:38px;display:grid;place-items:center;color:var(--on-brand);background:var(--brand);font-weight:900;clip-path:var(--panel-cut)}.mobile-avatar:after{content:"";position:absolute;right:2px;bottom:3px;width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 2px var(--canvas)}.mobile-admin-back{display:none;padding:7px 11px;color:#f7f5f2;background:#242431;clip-path:var(--panel-cut);font-weight:900}.mobile-admin-back span{font-size:1.18rem}.mobile-guest-label{font-size:.75rem;color:var(--muted);font-weight:800;letter-spacing:.12em}html[data-admin-child=true] .mobile-account-button{display:none}html[data-admin-child=true] .mobile-admin-back{display:flex}.admin-desktop-pages{display:none!important}@media(min-width:960px){html[data-role=admin] .admin-desktop-pages{display:grid!important}.admin-desktop-pages{gap:1px!important;padding-left:10px}.admin-desktop-pages .nav-btn{padding:6px 10px;font-size:.74rem}.rail nav{min-height:0;overflow-y:auto;scrollbar-width:thin}}@media(max-width:959px){.drawer-admin-grid{grid-template-columns:1fr!important}.drawer-admin-grid .drawer-tile:not(:first-child){display:none}.drawer-admin-grid .drawer-tile:first-child{grid-column:auto}.drawer-admin .drawer-section-head span{font-size:0}.drawer-admin .drawer-section-head span:after{content:"ADMIN HUB";font-size:.7rem}.mobile-account-button,.mobile-admin-back{margin-right:0}}.contextbar{position:relative!important;top:auto!important;background:transparent!important;box-shadow:none!important;border-bottom-color:transparent!important}.brand-mark{overflow:visible;padding:0!important;border:0;border-radius:0;background:transparent!important;box-shadow:none;clip-path:none;transform:none}.brand-mark img{display:block;width:100%;height:100%;padding:0;object-fit:contain}.drawer-theme-toggle{display:none;border:0;background:var(--brand-soft);color:var(--brand);min-height:38px;padding:7px 11px;align-items:center;gap:6px;font-size:.74rem;font-weight:900;clip-path:var(--panel-cut)}.drawer-theme-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}#overlay-panel:has(.drawer-menu) .drawer-theme-toggle{display:flex;margin-left:auto}.workspace{position:relative}.contextbar,.main{position:relative;z-index:1}.main>.screen,.main>.state-stage{position:relative;z-index:1}.page-svg-decor{position:absolute;z-index:0;left:0;top:0;width:100%;height:760px;pointer-events:none;overflow:visible;color:var(--brand);opacity:.42}.page-svg-decor use{transform-box:fill-box;transform-origin:center}.svg-ring{stroke:currentColor;fill:none;opacity:.16;animation:svgOrbit 18s linear infinite}.svg-star{fill:currentColor;opacity:.22;animation:svgTwinkle 4s ease-in-out infinite}.svg-star.alt{animation-delay:-2s}.svg-burst{stroke:currentColor;fill:none;opacity:.13}.svg-cross{stroke:var(--ink);fill:none;opacity:.12}.svg-diamond{fill:color-mix(in srgb,var(--brand) 18%,transparent);stroke:currentColor;opacity:.18;animation:svgFloat 7s ease-in-out infinite}.head-svg-decor{position:absolute;right:72px;bottom:14px;width:128px;height:58px;pointer-events:none;color:var(--brand);opacity:.34}.head-svg-decor .head-star{fill:currentColor}.head-svg-decor .head-diamond{fill:color-mix(in srgb,var(--brand) 16%,transparent);stroke:currentColor}.head-svg-decor .head-burst{fill:none;stroke:currentColor;stroke-width:1.5}.screen-head>*:not(.head-svg-decor){position:relative;z-index:1}html[data-theme=dark] .page-svg-decor{opacity:.3}@keyframes svgOrbit{to{transform:rotate(360deg)}}@keyframes svgTwinkle{0%,to{transform:scale(.76);opacity:.12}50%{transform:scale(1.08);opacity:.32}}@keyframes svgFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(8deg)}}@media(max-width:959px){.top-mobile{position:relative!important;top:auto!important;z-index:10;background:transparent!important;box-shadow:none!important}.page-svg-decor{height:620px;opacity:.34}}@media(max-width:640px){.page-svg-decor{height:520px}.drawer-theme-toggle span{display:none}.drawer-theme-toggle{padding:7px}}@media(max-width:640px){.head-svg-decor{right:4px;top:4px;bottom:auto;width:92px;height:44px;opacity:.24}}html[data-pass=active]{--pass-gold: #f2c34f;--pass-gold-deep: #9b6508;--pass-gold-light: #fff3ae;--pass-gold-soft: #fff0bd;--pass-gold-ink: #352100}html[data-theme=dark][data-pass=active]{--pass-gold: #ffd86e;--pass-gold-deep: #a96d0d;--pass-gold-light: #fff8cf;--pass-gold-soft: #4d3a12;--pass-gold-ink: #342000}html[data-pass=active] .identity{box-shadow:inset 3px 0 0 var(--pass-gold)}html[data-pass=active] [data-screen=dashboard] .head-svg-decor,html[data-pass=active] [data-screen=passes] .head-svg-decor{color:var(--pass-gold);opacity:.82;filter:drop-shadow(0 0 7px color-mix(in srgb,var(--pass-gold) 72%,transparent));animation:goldSvgGlint 2.6s ease-in-out infinite}html[data-pass=active] [data-screen=dashboard] .hero{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--pass-gold) 86%,transparent),0 34px 74px #30254a30}html[data-pass=active] [data-screen=dashboard] .hero-copy:after{content:"ACTIVE PASS";position:absolute;right:0;top:-24px;padding:5px 11px;color:#2b1900;background:repeating-linear-gradient(110deg,var(--pass-gold-deep) 0 24px,var(--pass-gold) 42px,var(--pass-gold-light) 58px,var(--pass-gold) 74px,var(--pass-gold-deep) 96px 120px);background-size:120px 100%;font:italic 900 .64rem/1.1 Georgia,serif;letter-spacing:.15em;text-shadow:0 1px 0 rgba(255,255,255,.62);clip-path:polygon(5% 0,100% 8%,94% 100%,0 88%);box-shadow:0 0 12px color-mix(in srgb,var(--pass-gold) 48%,transparent);animation:goldTile 1.8s linear infinite}html[data-pass=active] [data-screen=dashboard] .hero .badge.brand{color:#2b1900;background:repeating-linear-gradient(110deg,var(--pass-gold-deep) 0 24px,var(--pass-gold) 42px,var(--pass-gold-light) 58px,var(--pass-gold) 74px,var(--pass-gold-deep) 96px 120px);background-size:120px 100%;font:900 .7rem/1 "Noto Serif SC",Georgia,serif;letter-spacing:.1em;text-shadow:0 1px 0 rgba(255,255,255,.58);box-shadow:0 0 0 2px color-mix(in srgb,var(--pass-gold-light) 52%,transparent),0 0 13px color-mix(in srgb,var(--pass-gold) 42%,transparent);animation:goldTile 1.8s linear infinite}.gold-sparkles{display:none}html[data-pass=active] [data-screen=dashboard] .gold-sparkles{display:block}.gold-sparkles{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;pointer-events:none}.gold-sparkles i{position:absolute;width:5px;height:5px;background:var(--pass-gold-light);border-radius:50%;box-shadow:0 0 7px 2px color-mix(in srgb,var(--pass-gold) 74%,transparent);animation:goldSpark 1.9s ease-in-out infinite}.gold-sparkles i:before,.gold-sparkles i:after{content:"";position:absolute;left:50%;top:50%;background:var(--pass-gold-light);transform:translate(-50%,-50%)}.gold-sparkles i:before{width:19px;height:2px}.gold-sparkles i:after{width:2px;height:19px}.gold-sparkles i:nth-child(1){left:7%;top:12%}.gold-sparkles i:nth-child(2){left:46%;top:8%;animation-delay:-.65s}.gold-sparkles i:nth-child(3){right:8%;top:28%;animation-delay:-1.2s}.gold-sparkles i:nth-child(4){left:31%;bottom:13%;animation-delay:-.3s}.gold-sparkles i:nth-child(5){right:31%;bottom:9%;animation-delay:-1.55s}@keyframes goldTile{0%{background-position:0 0}to{background-position:120px 0}}@keyframes goldSpark{0%,to{opacity:.16;transform:scale(.45) rotate(0)}48%{opacity:1;transform:scale(1.22) rotate(45deg)}}@keyframes goldSvgGlint{0%,to{opacity:.55;filter:drop-shadow(0 0 3px transparent)}50%{opacity:1;filter:drop-shadow(0 0 9px var(--pass-gold))}}@media(prefers-reduced-motion:reduce){.gold-sparkles i,html[data-pass=active] [data-screen=dashboard] .hero-copy:after,html[data-pass=active] [data-screen=dashboard] .hero .badge.brand,html[data-pass=active] .head-svg-decor{animation:none!important}}@media(prefers-reduced-motion:reduce){.page-svg-decor use{animation:none!important}}[data-screen=devices] .device-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}[data-screen=devices] .device-gallery .device-card,[data-screen=devices] .device-gallery .device-card:first-child{--device-tint: var(--brand);grid-column:auto;display:flex;isolation:isolate;min-height:220px;padding:20px!important;color:#fff;background:var(--device-tint)!important;background-image:none!important;box-shadow:none!important}[data-screen=devices] .device-gallery .device-card:after{content:"";position:absolute;z-index:0;width:125%;height:125%;left:-12.8%;top:-12.5%;right:auto;bottom:auto;border-radius:0;clip-path:none;transform:none;box-shadow:none;background-color:var(--device-tint);background-image:var(--device-image);background-position:center;background-size:cover;background-repeat:no-repeat;background-blend-mode:normal;filter:grayscale(1) sepia(.55) hue-rotate(215deg) saturate(1.8) contrast(1.35) brightness(.72);opacity:1;pointer-events:none}[data-screen=devices] .device-gallery .device-card:before{right:18px;top:auto;bottom:16px;color:#ffffffb8;text-shadow:none}[data-screen=devices] .device-copy{margin-top:auto;padding-top:12px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.96),0 3px 10px rgba(0,0,0,.82)}[data-screen=devices] .device-gallery .device-card h2{display:block;margin:0 0 4px;padding:0;color:#fff;background:transparent;font-size:1.5rem;transform:none}[data-screen=devices] .device-gallery .device-card p{display:block;margin:0;padding:0;color:#ffffffe6;background:transparent;font-size:.78rem}[data-screen=devices] .device-gallery .device-card a{color:#fff;text-decoration-thickness:2px;text-underline-offset:3px}[data-screen=devices] .device-gallery .device-actions{display:flex;gap:8px;margin-top:10px;padding-top:0}[data-screen=devices] .device-gallery .device-actions .btn{position:relative;display:grid;place-items:center;width:44px;height:42px;min-height:0;padding:0;color:#242431;background:#f7f5f2;border:2px solid #242431!important;border-radius:0!important;clip-path:polygon(7% 0,100% 8%,94% 100%,0 90%);box-shadow:4px 4px #1c182ab8;transition:transform .16s ease,box-shadow .16s ease}[data-screen=devices] .device-gallery .device-actions .btn:nth-child(odd){transform:rotate(-2deg)}[data-screen=devices] .device-gallery .device-actions .btn:nth-child(2n){color:#fff;background:#2b263e;transform:rotate(2deg)}[data-screen=devices] .device-gallery .device-actions .btn:hover{transform:translate(-1px,-1px) rotate(0);box-shadow:6px 6px #1c182ab8}[data-screen=devices] .device-gallery .device-actions .btn:active{transform:translate(3px,3px);box-shadow:1px 1px #1c182ab8}[data-screen=devices] .device-gallery .device-actions .btn:disabled{color:#ffffffb8;background:repeating-linear-gradient(135deg,#fff3 0 5px,#1c182a5c 5px 10px);border-color:#ffffff8f!important;box-shadow:none;opacity:1}.device-action-icon{position:relative;z-index:1;width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}[data-screen=devices] .device-gallery .device-actions .btn:after{content:"";position:absolute;right:3px;bottom:3px;width:9px;height:3px;background:currentColor;transform:skew(-28deg);opacity:.4}.device-card-pattern{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.32;mix-blend-mode:screen;background-image:radial-gradient(circle at 0 0,rgba(255,255,255,.9) 1.3px,transparent 1.8px),linear-gradient(rgba(255,255,255,.42) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.42) 1px,transparent 1px);background-size:16px 16px,48px 48px,48px 48px;background-position:0 0,0 0,0 0;-webkit-mask-image:linear-gradient(135deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.28) 30%,rgba(0,0,0,.72) 66%,#000 100%);mask-image:linear-gradient(135deg,#00000014,#00000047 30%,#000000b8 66%,#000)}[data-screen=devices] .device-gallery .device-card[data-disabled=true]{--device-tint: #616473}[data-screen=devices] .device-card>*:not(.device-card-graphics):not(.device-card-pattern){position:relative;z-index:3}[data-screen=devices] .device-card:before{z-index:4}.device-card-graphics{position:absolute;z-index:2;right:-10px;top:46px;width:150px;height:106px;color:#fff;opacity:.58;mix-blend-mode:screen;pointer-events:none}.device-card-graphics .graphic-grid,.device-card-graphics .graphic-ring,.device-card-graphics .graphic-x{fill:none;stroke:currentColor;stroke-width:1.4}.device-card-graphics .graphic-dots{fill:currentColor}.device-card-graphics .graphic-ring{stroke-width:2}.device-card-graphics .graphic-x{stroke-width:3}[data-screen=devices] .device-card:nth-child(3n+2) .device-card-graphics{right:auto;left:-24px;top:64px;transform:rotate(-11deg)}[data-screen=devices] .device-card:nth-child(3n) .device-card-graphics{top:34px;transform:rotate(9deg)}[data-screen=devices] .device-card[data-disabled=true] .device-card-graphics{opacity:.28}@media(max-width:1199px){[data-screen=devices] .device-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){[data-screen=devices] .device-gallery{grid-template-columns:1fr;gap:12px}[data-screen=devices] .device-gallery .device-card{min-height:210px!important;padding:16px!important}}:is([data-screen=dashboard] .screen-head .actions,[data-screen=devices] .screen-head .actions,[data-screen=billing] .session-actions,[data-screen=billing] .variant.idle .actions,[data-screen=admin-approve] .list-item .actions) .btn,[data-screen=wallet] .default-content>button.btn{position:relative;isolation:isolate;overflow:hidden;min-height:46px;padding:10px 18px;border:2px solid var(--ink)!important;border-radius:0!important;clip-path:polygon(5px 0,100% 0,calc(100% - 5px) 100%,0 92%);box-shadow:5px 5px color-mix(in srgb,var(--ink) 22%,transparent);font-weight:900;letter-spacing:.03em;transition:transform .16s ease,box-shadow .16s ease}:is([data-screen=dashboard] .screen-head .actions,[data-screen=devices] .screen-head .actions,[data-screen=billing] .session-actions,[data-screen=billing] .variant.idle .actions,[data-screen=admin-approve] .list-item .actions) .btn:after,[data-screen=wallet] .default-content>button.btn:after{content:"";position:absolute;z-index:-1;right:-11px;bottom:-9px;width:40px;height:22px;background:repeating-linear-gradient(135deg,currentColor 0 3px,transparent 3px 7px);opacity:.14;transform:rotate(-8deg)}:is([data-screen=dashboard] .screen-head .actions,[data-screen=devices] .screen-head .actions,[data-screen=billing] .session-actions,[data-screen=billing] .variant.idle .actions,[data-screen=admin-approve] .list-item .actions) .btn:hover,[data-screen=wallet] .default-content>button.btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px color-mix(in srgb,var(--ink) 22%,transparent)}:is([data-screen=dashboard] .screen-head .actions,[data-screen=devices] .screen-head .actions,[data-screen=billing] .session-actions,[data-screen=billing] .variant.idle .actions,[data-screen=admin-approve] .list-item .actions) .btn:active,[data-screen=wallet] .default-content>button.btn:active{transform:translate(3px,3px);box-shadow:1px 1px color-mix(in srgb,var(--ink) 22%,transparent)}[data-screen=dashboard] .screen-head .actions .btn:first-child{background:color-mix(in srgb,var(--paper) 88%,var(--brand-soft))}[data-screen=dashboard] .screen-head .actions .btn.primary,[data-screen=admin-approve] .list-item .actions .btn.primary{color:#fff;background:var(--brand)}[data-screen=devices] .screen-head .actions .btn{background:color-mix(in srgb,var(--paper) 78%,var(--brand-soft))}[data-screen=billing] .session-actions .btn.primary{color:#20212b;background:#f7f5f2}[data-screen=billing] .session-actions .btn.danger{color:#fff;background:#5a2637;border-color:#bc6178!important}[data-screen=billing] .segmented{display:flex;gap:7px;padding:0;background:transparent;border:0;box-shadow:none}[data-screen=billing] .segmented button{position:relative;min-height:44px;padding:9px 18px;color:var(--muted);background:var(--paper);border:2px solid var(--ink);border-radius:0;clip-path:polygon(6% 0,100% 7%,94% 100%,0 92%);box-shadow:4px 4px color-mix(in srgb,var(--ink) 18%,transparent);font-weight:900;transition:transform .16s ease,background .16s ease}[data-screen=billing] .segmented button:before{content:"";position:absolute;left:8px;right:8px;bottom:5px;height:3px;background:currentColor;transform:skew(-28deg);opacity:.26}[data-screen=billing] .segmented button.active{color:#fff;background:var(--brand);transform:translateY(-2px) rotate(-1deg);box-shadow:5px 6px color-mix(in srgb,var(--ink) 24%,transparent)}[data-screen=dashboard] .default-content>.session-summary-card{position:relative;align-self:start;overflow:hidden;padding:24px!important;background-color:color-mix(in srgb,var(--paper) 72%,var(--brand-soft))!important;background-image:radial-gradient(circle at 1px 1px,color-mix(in srgb,var(--brand) 16%,transparent) 1px,transparent 1.4px)!important;background-size:15px 15px!important;border-left:6px solid var(--brand)!important;box-shadow:8px 8px color-mix(in srgb,var(--brand) 14%,transparent)!important}[data-screen=dashboard] .default-content>.session-summary-card:before{content:"SESSION / LIVE";position:absolute;right:20px;top:18px;font:italic 900 .66rem/1 Georgia,serif;letter-spacing:.14em;color:color-mix(in srgb,var(--brand) 72%,var(--muted))}[data-screen=dashboard] .session-summary-card>.row{padding-right:130px;margin-bottom:18px}[data-screen=dashboard] .session-summary-card>.row h2{margin:3px 0 0;font-size:1.75rem}[data-screen=dashboard] .session-summary-card>.grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:0!important}[data-screen=dashboard] .session-summary-card>.grid>div{grid-column:auto!important;margin:0!important;padding:14px 16px;border-left:1px solid color-mix(in srgb,var(--brand) 20%,transparent)}[data-screen=dashboard] .session-summary-card>.grid>div:first-child{border-left:0}[data-screen=dashboard] .session-summary-card .kpi{font-size:2.4rem;text-shadow:3px 3px 0 color-mix(in srgb,var(--brand) 12%,transparent)}[data-screen=dashboard] .session-summary-card .badge{clip-path:polygon(5% 0,100% 7%,94% 100%,0 91%);border-radius:0;font-weight:900}[data-screen=billing] .variant.idle .actions .btn,[data-screen=wallet] .default-content>button.btn{width:100%;justify-content:center;min-height:56px;background:color-mix(in srgb,var(--paper) 78%,var(--brand-soft));border-left-width:7px!important;font-size:1rem}[data-screen=billing] .variant.idle .actions .btn:before,[data-screen=wallet] .default-content>button.btn:before{content:"↗";position:absolute;right:18px;font:italic 900 1.35rem/1 Georgia,serif;color:var(--brand)}[data-screen=admin-approve] .list-item .actions .btn{min-width:82px}[data-screen=admin-approve] .list-item .actions .btn.danger{color:#fff;background:#8f2d43;background:color-mix(in srgb,var(--bad) 68%,#581625)}[data-screen=admin-approve] .list-item .actions .btn.danger:hover{background:#791f35;background:color-mix(in srgb,var(--bad) 58%,#581625)}@media(max-width:640px){[data-screen=dashboard] .screen-head .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}[data-screen=dashboard] .screen-head .actions .btn{padding-inline:10px}[data-screen=dashboard] .session-summary-card{padding:20px!important}[data-screen=dashboard] .session-summary-card:before{right:16px;top:15px}[data-screen=dashboard] .session-summary-card>.row{display:block;padding-right:0;padding-top:20px}[data-screen=dashboard] .session-summary-card>.row>.badge{position:absolute;right:0;top:0}[data-screen=dashboard] .session-summary-card>.grid{grid-template-columns:repeat(2,minmax(0,1fr))}[data-screen=dashboard] .session-summary-card>.grid>div{padding:11px 12px;border-top:1px solid color-mix(in srgb,var(--brand) 18%,transparent)}[data-screen=dashboard] .session-summary-card>.grid>div:nth-child(odd){border-left:0}[data-screen=dashboard] .session-summary-card .kpi{font-size:2rem}[data-screen=billing] .segmented{width:100%}[data-screen=billing] .segmented button{flex:1}[data-screen=billing] .session-actions{display:grid;grid-template-columns:1fr 1fr}[data-screen=billing] .session-actions .session-hint{grid-column:1/-1}}@media(max-width:640px){[data-screen=dashboard] .session-summary-card:before{display:none}[data-screen=dashboard] .session-summary-card>.row{padding-top:0}}.crumb{display:inline-flex;align-items:center;gap:8px}.crumb-icon{display:block;width:20px;height:20px;flex:0 0 20px;object-fit:contain}.rail-actions{display:flex;grid-template-columns:none;gap:10px}.rail-icon-button{display:grid;width:40px;height:40px;padding:0;place-items:center;color:var(--ink);background:transparent;border:0;box-shadow:none;cursor:pointer}.rail-icon-button .icon{width:23px;height:23px}.rail-icon-button:hover,.rail-icon-button:focus-visible{color:var(--brand);background:transparent;transform:translateY(-2px)}.nav-btn.active{border-radius:0!important;background:linear-gradient(90deg,var(--brand-soft),transparent 94%);clip-path:polygon(0 7%,97% 0,100% 88%,3% 100%)}.bottom-nav a.active,.bottom-nav button.active{border-radius:0!important;clip-path:polygon(8% 0,100% 7%,92% 100%,0 90%)}.pwa-install-steps{display:grid;gap:10px;margin:0;padding-left:1.4rem}[data-screen=devices] .device-gallery .device-card,[data-screen=devices] .device-gallery .device-card:first-child{--device-tint: 255, 255, 255;color:rgb(var(--device-body));background:rgb(var(--device-tint))!important}.device-card-tint-wash{position:absolute!important;z-index:1!important;top:0;right:0;bottom:0;left:0;pointer-events:none}[data-screen=passes] .pass-card[data-pass-type="1"]{color:#f7f5f2;background:linear-gradient(145deg,#141522,#302945)!important}[data-screen=passes] .pass-card[data-pass-type="2"]{color:#2b2832;background:linear-gradient(145deg,#fffef5,#f5e9be)!important}[data-screen=passes] .pass-card[data-pass-type="1"] .muted,[data-screen=passes] .pass-card[data-pass-type="3"] .muted{color:#ffffffc2}[data-screen=passes] .pass-card[data-pass-type="3"]{color:#fff8ef;background:linear-gradient(145deg,#713719,#bd7444)!important}[data-screen=passes] .pass-card[data-pass-type="4"]{color:#2b1900;background:linear-gradient(145deg,#a66a08,#f2c34f 58%,#fff0a1)!important}html[data-pass=active] [data-screen=dashboard] .hero-copy:after{content:none!important}.active-pass-label{position:absolute;z-index:5;top:24px;right:24px;padding:5px 11px;color:#2b1900;background:repeating-linear-gradient(110deg,var(--pass-gold-deep) 0 24px,var(--pass-gold) 42px,var(--pass-gold-light) 58px,var(--pass-gold) 74px,var(--pass-gold-deep) 96px 120px);background-size:120px 100%;box-shadow:0 0 12px color-mix(in srgb,var(--pass-gold) 48%,transparent);clip-path:polygon(5% 0,100% 8%,94% 100%,0 88%);font:italic 900 .64rem/1.1 Georgia,serif;letter-spacing:.15em}.balance-card-star{position:absolute;z-index:1;right:34px;bottom:18px;color:color-mix(in srgb,var(--brand) 20%,transparent);font:900 3.6rem/1 Georgia,serif;pointer-events:none}.balance-card-dots{position:absolute;z-index:1;top:-32px;right:-24px;width:180px;height:180px;background:radial-gradient(circle at center,color-mix(in srgb,var(--brand) 34%,transparent),transparent 62%),radial-gradient(circle,color-mix(in srgb,var(--ink) 13%,transparent) 1px,transparent 1.5px);background-size:auto,11px 11px;pointer-events:none;transform:rotate(12deg)}@media(max-width:1199px){[data-screen=dashboard] .activity-panel{grid-column:1 / -1!important}}@media(max-width:640px){[data-screen=dashboard] .screen-head .actions{display:none}.active-pass-label{top:18px;right:16px}}.mobile-avatar img,.avatar img{display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover}[data-screen=dashboard] .activity-panel{grid-column:1 / -1!important}@media(max-width:640px){[data-screen=dashboard] .session-summary-card{grid-column:1 / -1!important;padding:18px!important}[data-screen=dashboard] .session-summary-card>.row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding:0!important;margin-bottom:14px}[data-screen=dashboard] .session-summary-card>.row>.badge{position:static;align-self:start}[data-screen=dashboard] .session-summary-card>.row h2{font-size:1.35rem;overflow-wrap:anywhere}[data-screen=dashboard] .session-summary-card>.grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}[data-screen=dashboard] .session-summary-card>.grid>div{min-width:0;padding:10px!important}}#overlay-panel:has(.drawer-menu) .overlay-head>.icon-button:last-child{background:transparent!important;box-shadow:none!important}.bottom-nav a.active,.bottom-nav button.active,.bottom-nav button.active:active{transform:none!important}.bottom-nav .dock-more{border-radius:0!important}.bottom-nav>:nth-child(1).active{clip-path:polygon(4% 5%,96% 0,100% 88%,0 100%)}.bottom-nav>:nth-child(2).active{clip-path:polygon(0 0,94% 6%,100% 100%,7% 92%)}.bottom-nav>:nth-child(3).active{clip-path:polygon(7% 0,100% 4%,93% 100%,0 94%)}.bottom-nav>:nth-child(4).active{clip-path:polygon(0 8%,92% 0,100% 94%,5% 100%)}.bottom-nav>:nth-child(5).active{clip-path:polygon(5% 0,100% 9%,94% 100%,0 90%)}.nav-list>.nav-btn.active{transform:none!important}.nav-list>.nav-btn:nth-child(3n+1).active{clip-path:polygon(0 7%,97% 0,100% 88%,3% 100%)}.nav-list>.nav-btn:nth-child(3n+2).active{clip-path:polygon(3% 0,100% 8%,96% 100%,0 91%)}.nav-list>.nav-btn:nth-child(3n).active{clip-path:polygon(0 0,96% 5%,100% 100%,4% 92%)}.drawer-theme-toggle{background:transparent!important;box-shadow:none!important}.brand-mark img,.crumb-icon{filter:none}html[data-theme=dark] .brand-mark img,html[data-theme=dark] .crumb-icon{filter:invert(1)}[data-screen=passes] .pass-card[data-pass-type="2"] .muted,[data-screen=passes] .pass-card[data-pass-type="4"] .muted{color:#2b1900d1}body,button,input,select,textarea,h1,h2,h3,h4,.eyebrow,.label,.nav-title{font-family:Noto Sans SC,Microsoft YaHei,system-ui,-apple-system,sans-serif!important}.field input,.field select,.field textarea{border:1px solid var(--line);background:var(--paper-2);box-shadow:inset 0 -2px #0000001f}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);outline:2px solid var(--brand);outline-offset:1px;background:var(--paper);box-shadow:none}[data-screen=admin-users] .list{gap:18px}[data-screen=admin-users] .list-item{padding:22px;border:1px solid var(--line);background:var(--paper-2);box-shadow:0 8px 22px #281f3c1a;clip-path:polygon(0 2%,98% 0,100% 94%,2% 100%)}[data-screen=admin-users] .list-item:before,[data-screen=admin-users] .list-item:after{display:none}.page-action-icon{display:grid;width:48px;min-width:48px;height:46px;min-height:46px;padding:0!important;place-items:center}.page-action-icon .icon{width:23px;height:23px}[data-screen=devices] .page-action-icon.is-loading .icon{animation:page-action-spin .8s linear infinite}@keyframes page-action-spin{to{transform:rotate(360deg)}}@media(max-width:640px){[data-screen=devices] .screen-head,[data-screen=billing] .screen-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}[data-screen=devices] .screen-head>div:first-child,[data-screen=billing] .screen-head>div:first-child{min-width:0}[data-screen=devices] .screen-head>.actions,[data-screen=billing] .screen-head>.actions{align-self:center;justify-self:end;margin-top:0}.overlay-body.confirm-dialog{padding-bottom:calc(32px + env(safe-area-inset-bottom))}[data-screen=wallet] .recharge-form{padding:0;border:0;background:transparent;box-shadow:none;clip-path:none}[data-screen=wallet] .recharge-panel>.row{display:block}[data-screen=wallet] .recharge-panel>.row>div{min-width:0}[data-screen=wallet] .recharge-panel h2{padding-right:54px;font-size:1.25rem;white-space:nowrap}[data-screen=wallet] .alipay-mark{position:absolute;top:20px;right:18px;width:44px;height:44px;font-size:1.5rem}[data-screen=wallet] .wallet-list .row>strong:first-child{min-width:0;overflow-wrap:anywhere}[data-screen=wallet] .wallet-list .amount{flex:0 0 auto;white-space:nowrap}[data-screen=admin-users] .list-item{padding:20px 18px 22px}[data-screen=admin-users] .list-item>.row{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:stretch}[data-screen=admin-users] .list-item>.row>div{min-width:0}[data-screen=admin-users] .list-item .actions{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}[data-screen=admin-users] .list-item .actions .manga-button{width:100%;min-width:0;padding-inline:8px;justify-content:center}[data-screen=admin-users] .list-item .actions .danger:last-child{grid-column:1 / -1}[data-screen=admin-users] .list-item>.meta{margin-top:2px;padding-top:14px;border-top:1px solid var(--line)}}.kpi,.tile-no,.pass-price{font-family:Georgia,Times New Roman,serif!important}[data-screen=dashboard] .hero[data-pass-type="1"]{--dashboard-pass-bg: linear-gradient(145deg, #141522, #302945);--dashboard-pass-ink: #f7f5f2;--dashboard-pass-accent: #75678f}[data-screen=dashboard] .hero[data-pass-type="2"]{--dashboard-pass-bg: linear-gradient(145deg, #fffef5, #f5e9be);--dashboard-pass-ink: #2b2832;--dashboard-pass-accent: #d6b95c}[data-screen=dashboard] .hero[data-pass-type="3"]{--dashboard-pass-bg: linear-gradient(145deg, #713719, #bd7444);--dashboard-pass-ink: #fff8ef;--dashboard-pass-accent: #bd7444}[data-screen=dashboard] .hero[data-pass-type="4"]{--dashboard-pass-bg: linear-gradient(145deg, #a66a08, #f2c34f 58%, #fff0a1);--dashboard-pass-ink: #2b1900;--dashboard-pass-accent: #f2c34f}html[data-pass=active] [data-screen=dashboard] .hero[data-pass-type] .active-pass-label,html[data-pass=active] [data-screen=dashboard] .hero[data-pass-type] .badge.brand{color:var(--dashboard-pass-ink)!important;background:var(--dashboard-pass-bg)!important;box-shadow:0 0 12px color-mix(in srgb,var(--dashboard-pass-accent) 48%,transparent)}html[data-pass=active] [data-screen=dashboard] .hero[data-pass-type] .gold-sparkles i:before,html[data-pass=active] [data-screen=dashboard] .hero[data-pass-type] .gold-sparkles i:after{background:var(--dashboard-pass-accent)}.nav-btn .icon{width:20px;height:20px;flex:0 0 20px}[data-screen=devices] .device-gallery .device-actions .device-power.is-off{color:#fff!important;background:#1a1b26!important;opacity:1}[data-screen=devices] .device-gallery .device-actions .device-power.is-on{color:#d52632!important;background:#fff8df!important;opacity:1}[data-screen=devices] .device-gallery .device-actions .device-power:is(.is-loading,.is-error,.is-unknown){color:#5e596a!important;background:#d8d4df!important;opacity:1}[data-screen=passes] .pass-card[data-pass-type="4"] .pass-price>small{color:#2b1900db}[data-screen=passes] .pass-card .pass-price>small{color:currentColor!important;opacity:.82}[data-screen=passes] .pass-card .pass-price.fallback{max-width:13ch;font:850 clamp(1.35rem,2vw,1.8rem) / 1.18 "Noto Serif SC",Georgia,serif!important;letter-spacing:.02em}[data-screen=passes] .pass-card{position:relative;overflow:hidden}[data-screen=passes] .pass-card>*:not(.pass-card-decoration){position:relative;z-index:2}.pass-card-decoration{position:absolute;z-index:1;right:-16px;bottom:-14px;width:128px;height:92px;color:currentColor;opacity:.18;pointer-events:none;background:radial-gradient(circle at 68% 38%,transparent 0 22px,currentColor 23px 25px,transparent 26px),repeating-linear-gradient(135deg,currentColor 0 2px,transparent 2px 11px);clip-path:polygon(18% 0,100% 8%,94% 100%,0 88%)}[data-screen=dashboard] .hero .actions{position:absolute;bottom:20px}[data-screen=dashboard] .hero-account-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:520px;margin-top:20px}[data-screen=dashboard] .hero-account-summary>div{padding:12px 14px}[data-screen=dashboard] .hero-account-summary strong{display:block;margin-top:5px}[data-screen=dashboard] .hero-balance{font:900 2rem/1 Georgia,serif}[data-screen=dashboard] .hero-balance small{font:800 .78rem/1 sans-serif}[data-screen=dashboard] .hero-pass-time{display:block;margin-top:5px;color:var(--muted);font-size:.7rem;line-height:1.45}[data-screen=dashboard] .activity-panel{position:relative;overflow:hidden}[data-screen=dashboard] .activity-panel>*:not(.venue-panel-decoration){position:relative;z-index:2}.venue-panel-decoration{position:absolute;z-index:1;top:50%;right:18px;width:180px;height:150px;color:var(--brand);opacity:.22;pointer-events:none;transform:translateY(-50%) rotate(-4deg);fill:currentColor;stroke:currentColor;stroke-width:2}.venue-panel-decoration>circle{fill:none}[data-screen=wallet] .manga-button.alipay-button{color:#fff!important;background:#1677ff!important;box-shadow:6px 6px color-mix(in srgb,#1677ff 28%,var(--ink))}[data-screen=wallet] .manga-button.alipay-button:hover{background:#0f67df!important}[data-screen=wallet] .recharge-input input,[data-screen=wallet] .recharge-input input:focus{border:0;outline:0;background:transparent;box-shadow:none}[data-screen=dashboard] .leaderboard{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;clip-path:none!important}[data-screen=dashboard] .leaderboard:before,[data-screen=dashboard] .leaderboard:after{display:none!important}.sort-direction-button{flex:0 0 46px;width:46px;min-width:46px;padding-inline:0!important;font-size:1.2rem;line-height:1}@media(min-width:640px){[data-screen=dashboard] .activity-panel{padding-right:210px}}@media(max-width:640px){[data-screen=dashboard] .hero-copy{width:min(72%,260px)!important}[data-screen=dashboard] .hero-account-summary{grid-template-columns:1fr;margin-top:14px}[data-screen=dashboard] .hero .mascot{right:-3%!important;bottom:10%!important;height:auto!important;max-height:50%;object-fit:contain;object-position:right bottom}.venue-panel-decoration{right:-32px;width:128px;height:108px;opacity:.14}}
