@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/anuphan-thai-400-normal-CYPG-7cc.woff2)format("woff2"),url(/assets/anuphan-thai-400-normal-B8wWdyvX.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/anuphan-vietnamese-400-normal-FcZRxsvJ.woff2)format("woff2"),url(/assets/anuphan-vietnamese-400-normal-xZfYJPys.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/anuphan-latin-ext-400-normal-CCaRbzGi.woff2)format("woff2"),url(/assets/anuphan-latin-ext-400-normal-ZaQJ1nhL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/anuphan-latin-400-normal-BQH10Ma6.woff2)format("woff2"),url(/assets/anuphan-latin-400-normal-BDYevJ6X.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/anuphan-thai-600-normal-Co7SjXAc.woff2)format("woff2"),url(/assets/anuphan-thai-600-normal-CeOd1Bty.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/anuphan-vietnamese-600-normal-CwE0m07H.woff2)format("woff2"),url(/assets/anuphan-vietnamese-600-normal-UiJfg5Q5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/anuphan-latin-ext-600-normal-D-QrtA5h.woff2)format("woff2"),url(/assets/anuphan-latin-ext-600-normal-DGNNjdAA.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/anuphan-latin-600-normal-C3byZ5Vp.woff2)format("woff2"),url(/assets/anuphan-latin-600-normal-DSdXqWS_.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/anuphan-thai-700-normal-rOsLv-jZ.woff2)format("woff2"),url(/assets/anuphan-thai-700-normal-B9xfo8qq.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/anuphan-vietnamese-700-normal-CEKCPHv1.woff2)format("woff2"),url(/assets/anuphan-vietnamese-700-normal-Bt-kD8dc.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/anuphan-latin-ext-700-normal-BDcT6wBH.woff2)format("woff2"),url(/assets/anuphan-latin-ext-700-normal-C5WMEDsH.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Anuphan;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/anuphan-latin-700-normal-WxQNlaBM.woff2)format("woff2"),url(/assets/anuphan-latin-700-normal-D1LjmPNx.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f6f4f0;--surface:#fff;--surface-2:#f1ede6;--line:#e9e3da;--text:#1d1b18;--muted:#837d74;--accent:#ff5a36;--accent-ink:#fff;--accent-soft:#fff1ec;--warn:#c77700;--warn-soft:#fff6e5;--ok:#2f9b67;--danger:#e5484d;--danger-text:#c8323a;--danger-soft:#fdecec;--glass:#ffffffb8;--glass-strong:#fffffff0;--shade-in:#f6f4f040;--shade-out:#f6f4f0db;--slot:#e7e2da;--slot-stripe:#ded8ce;--slot-ink:#1d1b1859;--shadow:0 12px 34px #3c2d191f;--shadow-lg:0 24px 60px #3c2d192e;--radius:22px;--font:"Anuphan", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0f0f13;--surface:#18181e;--surface-2:#24242c;--line:#2a2a33;--text:#f4f2ee;--muted:#9b97a3;--accent:#ff5a36;--accent-ink:#1c0904;--accent-soft:#2a1d19;--warn:#ffb020;--warn-soft:#2b2312;--ok:#4fd18f;--danger-text:#ff8a8a;--danger-soft:#e5484d1f;--glass:#18181d99;--glass-strong:#18181df0;--shade-in:#0e0e1159;--shade-out:#0e0e11d9;--slot:#2a2a31;--slot-stripe:#303038;--slot-ink:#ffffff59;--shadow:0 12px 34px #00000059;--shadow-lg:0 30px 80px #0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;touch-action:manipulation;overflow:hidden}button{font:inherit;color:inherit}.booth,.screen{width:100%;height:100%}.screen{position:relative}.btn{cursor:pointer;border:0;border-radius:999px;padding:14px 26px;font-size:20px;font-weight:600;transition:transform .12s,background .2s,opacity .2s}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.4;cursor:default}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-ghost{background:var(--surface-2);color:var(--text)}.btn-lg{padding:18px 30px;font-size:22px}.btn-xl{width:100%;padding:26px 34px;font-size:28px;font-weight:700}.back{justify-self:start;padding:12px 22px 12px 18px;font-size:18px}.back span{margin-right:4px;font-size:26px;line-height:0}.start{cursor:pointer;place-items:center;display:grid;overflow:hidden}.start-video{object-fit:cover;filter:saturate(1.1);width:100%;height:100%;position:absolute;inset:0}.start-shade{background:radial-gradient(ellipse at center, var(--shade-in) 0%, var(--shade-out) 75%);position:absolute;inset:0}.start-center{text-align:center;justify-items:center;gap:18px;display:grid;position:relative}.shutter{border:6px solid var(--text);border-radius:50%;place-items:center;width:148px;height:148px;animation:2.4s ease-in-out infinite breathe;display:grid}.shutter span{background:var(--accent);border-radius:50%;width:104px;height:104px}@keyframes breathe{0%,to{transform:scale(1);box-shadow:0 0 #ff5a3673}50%{transform:scale(1.05);box-shadow:0 0 0 26px #ff5a3600}}.start-title{letter-spacing:-.01em;margin:8px 0 0;font-size:clamp(48px,8vw,112px);font-weight:700;line-height:1.1}.start-hint{color:var(--muted);margin:0;font-size:clamp(18px,2vw,26px)}.gear{border:1px solid var(--line);background:var(--glass);width:52px;height:52px;color:var(--muted);cursor:pointer;opacity:.7;border-radius:50%;font-size:24px;position:absolute;bottom:18px;right:18px}.start-warn{z-index:2;border:1px solid var(--warn);background:var(--glass-strong);width:min(720px,100% - 32px);box-shadow:var(--shadow);color:var(--warn);cursor:pointer;text-align:center;border-radius:14px;padding:12px 18px;font-size:18px;position:absolute;top:16px;left:50%;transform:translate(-50%)}.bar{grid-template-columns:1fr auto 1fr;align-items:center;padding:22px 28px 8px;display:grid}.bar-title{margin:0;font-size:34px;font-weight:700}.notice{text-align:center;color:var(--warn);font-size:22px}.frame-wrap{place-items:center;width:100%;height:100%;display:grid;container-type:size}.frame{width:min(100cqw, calc(100cqh * var(--ratio)));box-shadow:var(--shadow-lg);border-radius:6px;position:relative;overflow:hidden}.frame-art{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.slot{background:var(--slot);position:absolute;overflow:hidden}.slot-media{object-fit:cover;width:100%;height:100%;display:block}.slot-empty{width:100%;height:100%;color:var(--slot-ink);background:repeating-linear-gradient(135deg, var(--slot) 0 12px, var(--slot-stripe) 12px 24px);place-items:center;font-size:clamp(14px,4cqw,64px);font-weight:700;display:grid}.choose{grid-template-rows:auto minmax(0,1fr);display:grid}.cards{--card-w:clamp(150px, 21vw, 270px);grid-template-columns:repeat(auto-fill, minmax(var(--card-w), 1fr));-webkit-overflow-scrolling:touch;align-content:start;gap:clamp(12px,2vw,24px);padding:12px clamp(16px,3vw,40px) 40px;display:grid;overflow-y:auto}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;box-shadow:var(--shadow);cursor:pointer;align-content:start;gap:12px;padding:clamp(10px,1.4vw,16px);transition:transform .15s,border-color .2s;display:grid}.card:active{border-color:var(--accent);transform:scale(.98)}.card-thumb{aspect-ratio:3/4;min-height:0}.card-meta{align-content:start;justify-items:start;gap:8px;min-height:84px;padding:0 2px;display:grid}.card-name{text-align:left;overflow-wrap:anywhere;font-size:clamp(16px,1.6vw,20px);font-weight:600;line-height:1.4}.pill{background:var(--surface-2);color:var(--muted);white-space:nowrap;border-radius:999px;padding:6px 14px;font-size:16px}.modes{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));align-content:center;justify-self:center;gap:clamp(12px,2vw,24px);width:100%;max-width:1100px;padding:clamp(12px,3vw,40px);display:grid;overflow-y:auto}.mode-card{text-align:center;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-height:clamp(180px,34vh,340px);box-shadow:var(--shadow);align-content:center;justify-items:center;gap:12px;padding:24px 18px;transition:transform .15s,border-color .2s;display:grid}.mode-card:active{border-color:var(--accent);transform:scale(.98)}.mode-icon{background:var(--accent-soft);width:clamp(72px,10vw,110px);height:clamp(72px,10vw,110px);color:var(--accent);border-radius:50%;place-items:center;font-size:clamp(38px,5.5vw,60px);font-weight:700;display:grid}.mode-off{background:var(--surface-2);color:var(--text)}.mode-name{font-size:clamp(22px,2.6vw,30px);font-weight:700}.mode-hint{color:var(--muted);font-size:clamp(15px,1.6vw,18px);line-height:1.4}.mode-foot{text-align:center;color:var(--muted);margin:0;padding:0 16px 24px;font-size:16px}.mode-hint,.mode-name{text-wrap:balance}.choose:has(.modes){grid-template-rows:auto minmax(0,1fr) auto}@media (width<=600px),(height<=500px){.modes{align-content:start;gap:10px}.mode-card{text-align:left;grid-template-rows:auto auto;grid-template-columns:auto 1fr;justify-items:start;gap:2px 14px;min-height:0;padding:14px 16px}.mode-icon{grid-row:span 2;width:60px;height:60px;font-size:32px}.mode-name{align-self:end;font-size:20px}.mode-hint{align-self:start;font-size:14px}.mode-foot{padding-bottom:16px;font-size:14px}}.shoot,.review{grid-template-columns:1fr minmax(300px,26vw);display:grid}.stage{place-items:center;min-width:0;min-height:0;padding:28px;display:grid;position:relative}.panel{background:var(--surface);border-left:1px solid var(--line);grid-template-rows:auto 1fr auto;gap:20px;padding:28px;display:grid}.panel-mid{align-self:center;gap:10px;display:grid}.panel-label{color:var(--muted);margin:0;font-size:18px}.panel-label.center{text-align:center}.panel-big{margin:0;font-size:36px;font-weight:700;line-height:1.2}.panel-big.warn{color:var(--warn)}.panel-actions{gap:14px;display:grid}.dots{gap:10px;margin-top:6px;display:flex}.rec-dot{z-index:3;color:#fff;background:#e5484deb;border-radius:999px;padding:6px 14px;font-size:16px;font-weight:700;animation:1s ease-in-out infinite blink;position:absolute;top:18px;left:50%;transform:translate(-50%)}@keyframes blink{50%{opacity:.55}}.rotate-hint{background:var(--warn-soft);color:var(--warn);border-radius:12px;margin:6px 0 0;padding:10px 14px;font-size:16px;font-weight:600}.dot{background:var(--surface-2);border-radius:50%;width:14px;height:14px}.dot.on{background:var(--text)}.dot{box-shadow:inset 0 0 0 1px var(--line)}.dot.now{background:var(--accent);box-shadow:0 0 0 5px #ff5a3640}.count{color:#fff;text-shadow:0 6px 40px #0009;place-items:center;font-size:clamp(80px,30cqh,320px);font-weight:700;animation:1s ease-out both pop;display:grid;position:absolute;inset:0}.slot{container-type:size}@keyframes pop{0%{opacity:0;transform:scale(1.5)}20%{opacity:1;transform:scale(1)}85%{opacity:1}to{opacity:.2;transform:scale(.92)}}.flash{pointer-events:none;z-index:20;background:#fff;animation:.55s ease-out both flash;position:fixed;inset:0}@keyframes flash{0%{opacity:1}to{opacity:0}}.result{width:auto;max-width:100%;height:auto;max-height:calc(100vh - 56px);box-shadow:var(--shadow-lg);border-radius:6px;display:block}.camera-error{text-align:center;border-radius:var(--radius);background:var(--glass-strong);border:1px solid var(--line);width:min(440px,100% - 32px);box-shadow:var(--shadow-lg);justify-items:center;gap:12px;padding:28px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.camera-error h2{color:var(--warn);margin:0;font-size:34px}.camera-error p{color:var(--muted);margin:0 0 8px;font-size:20px}.sheet-backdrop{z-index:30;background:#14100a73;place-items:center;display:grid;position:fixed;inset:0}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);-webkit-user-select:text;user-select:text;grid-template-columns:minmax(0,1fr);gap:18px;width:min(560px,100vw - 24px);max-height:calc(100dvh - 24px);padding:28px;display:grid;overflow:auto}.sheet h2{margin:0;font-size:26px}.field{grid-template-columns:minmax(0,1fr);gap:8px;font-size:18px;display:grid}.field.row{grid-template-columns:1fr auto;align-items:center}.field select{text-overflow:ellipsis;width:100%;min-width:0;font:inherit;background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:12px;font-size:17px}.field input[type=checkbox]{width:26px;height:26px;accent-color:var(--accent)}.field em{color:var(--warn);font-style:normal}.seg{flex-wrap:wrap;gap:8px;display:flex}.seg button{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:12px;padding:10px 18px;font-size:17px}.seg button.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}.muted{color:var(--muted);margin:0}@media (orientation:portrait){.shoot,.review{grid-template-rows:1fr auto;grid-template-columns:1fr}.panel{border-left:0;border-top:1px solid var(--line);grid-template-rows:auto}.result{max-height:calc(100vh - 300px)}}@media (width<=600px),(height<=500px){.bar{gap:8px;padding:12px 14px 6px}.bar-title{white-space:nowrap;font-size:24px}.back{white-space:nowrap;padding:8px 14px 8px 12px;font-size:16px}.stage{padding:12px}.panel{gap:10px;padding:14px 16px}.panel-big{font-size:26px}.btn-xl{padding:16px 20px;font-size:22px}.btn-lg{padding:14px 22px;font-size:19px}.sheet{gap:14px;padding:18px}.sheet h2{font-size:22px}.field{font-size:16px}.shutter{width:112px;height:112px}.shutter span{width:78px;height:78px}.queue-no{font-size:84px}.people-grid .btn-xl{padding:14px 0;font-size:30px}.start-warn{padding:10px 14px;font-size:15px}}@media (height<=500px) and (orientation:landscape){.shoot,.review{grid-template-columns:1fr minmax(220px,34vw)}.panel-mid{gap:4px}}.stage-strip{grid-template-columns:1fr auto;place-items:stretch stretch;gap:28px}.big-live-wrap{place-items:center;min-width:0;min-height:0;display:grid;container-type:size}.big-live{width:min(100cqw,133.333cqh);max-height:100cqh;box-shadow:var(--shadow-lg);background:#000;border-radius:14px;position:relative;overflow:hidden;container-type:size}.stage-strip>.frame-wrap{width:calc(33.3333vh - 18.6667px)}.add{position:relative;overflow:hidden}.add input{opacity:0;cursor:pointer;position:absolute;inset:0}.add.disabled{opacity:.5}.frames-page{gap:14px;display:grid}.frames-bar{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.frames-bar .seg button{padding:8px 14px;font-size:15px}.frames-bar .add{margin-left:auto;padding:10px 20px;font-size:16px}.frames-help{margin:0;font-size:14px}.frame-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.frame-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;align-content:start;gap:8px;padding:12px;display:grid}.frame-card.off .frame-thumb{opacity:.4}.frame-thumb{background:var(--surface-2);border-radius:10px;place-items:center;height:240px;padding:8px;display:grid}.frame-thumb .frame-wrap{height:100%}.frame-info{color:var(--muted);margin:0;font-size:13px}.frame-noqr{margin:0;font-size:13px}.frame-card .setting-row{min-height:36px;font-size:14px}.frame-colour{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;width:44px;height:30px;padding:0}.frame-actions{align-items:center;gap:6px;display:flex}.frame-actions .grow{flex:1}.frame-actions .btn.sm{min-height:38px;padding:6px 12px;font-size:15px}.frame-delete-note{margin:0;font-size:13px}.frame-thumb>.muted{font-size:13px}.cutout-confirm{border-color:var(--accent)}.cutout-body{grid-template-columns:minmax(0,220px) minmax(0,1fr);align-items:center;gap:16px;display:grid}.cutout-thumb{background:var(--surface-2);border-radius:10px;height:300px;padding:8px}.cutout-text{gap:14px;display:grid}.cutout-actions{flex-wrap:wrap;gap:10px;display:flex}@media (width<=560px){.cutout-body{grid-template-columns:1fr}}.tpl-name{font:inherit;color:var(--text);background:var(--surface-2);border:1px solid var(--line);border-radius:10px;width:100%;padding:8px 10px;font-size:16px;font-weight:600}.btn.sm{min-width:44px;min-height:44px;padding:10px 16px;font-size:16px}.btn-danger{background:var(--danger);color:#fff}.danger-text{color:var(--danger-text)}#print-root{display:none}@media print{#root{display:none!important}html,body{height:auto;overflow:visible;background:#fff!important}#print-root{display:block}#print-root .print-label{display:none!important}#print-root .page{justify-content:center;align-items:center;display:flex;overflow:hidden}#print-root img{object-fit:contain;width:100%;height:100%}#print-root .page.strips img{object-fit:fill;width:2in;height:6in}}.people-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.people-grid .btn-xl{padding:22px 0;font-size:40px}.queue-no{color:var(--accent);margin:0;font-size:120px;font-weight:700;line-height:1}.staff{background:var(--bg);height:100vh;color:var(--text);-webkit-user-select:text;user-select:text;grid-template-columns:236px 1fr;display:grid}.side{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:6px;min-height:0;padding:22px 14px;display:flex}.brand{align-items:center;gap:10px;padding:4px 10px 18px;font-size:19px;font-weight:700;display:flex}.brand i{background:var(--accent);width:32px;height:32px;color:var(--accent-ink);border-radius:10px;place-items:center;font-size:17px;font-style:normal;display:grid}.nav{gap:4px;display:grid}.nav button{color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;padding:12px;font-size:16px;font-weight:600;display:flex}.nav button:hover,.nav button.on{background:var(--surface-2);color:var(--text)}.nav button>span:first-child{text-align:center;width:22px}.badge{background:var(--accent);color:var(--accent-ink);border-radius:999px;margin-left:auto;padding:2px 9px;font-size:12px;font-weight:700}.side-foot{border-top:1px solid var(--line);color:var(--muted);gap:6px;margin-top:auto;padding:12px;font-size:13px;display:grid}.link{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-size:14px;text-decoration:underline}.link:hover{color:var(--text)}.staff-main{grid-template-rows:auto 1fr;min-width:0;min-height:0;display:grid}.staff-head{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex}.staff-head h1{margin:0;font-size:24px}.staff-head .muted{font-size:14px}.chip{background:var(--surface-2);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:600;display:inline-flex}.chip-dot{background:var(--ok);border-radius:50%;width:9px;height:9px}.chip.warn{background:var(--warn-soft);color:var(--warn)}.chip.warn .chip-dot{background:var(--warn)}.staff-content{align-content:start;gap:16px;padding:22px 28px 40px;display:grid;overflow:auto}.staff-warn{background:var(--warn-soft);color:var(--warn);border-radius:12px;margin:0;padding:12px 16px;font-weight:600}.empty-state{text-align:center;color:var(--muted);background:var(--surface);border:1px dashed var(--line);border-radius:16px;padding:48px 20px;font-size:17px}.queue-page{grid-template-columns:1fr 300px;align-items:start;gap:22px;display:grid}.sheet-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;display:grid}.sheet-card{background:var(--surface);border:1px solid var(--line);min-width:0;box-shadow:var(--shadow);border-radius:18px;align-content:start;gap:12px;padding:16px;display:grid}.sheet-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.sheet-card .pill{padding:5px 12px;font-size:13px;font-weight:700}.pill-on{background:var(--accent);color:var(--accent-ink)}.sheet-paper{aspect-ratio:210/297;box-shadow:inset 0 0 0 1px var(--line);background:#fff;border-radius:6px;padding:4%;display:grid}.sheet-grid{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;min-height:0;display:grid}.sheet-cell{min-width:0;min-height:0;overflow:hidden}.sheet-cell img{object-fit:fill;width:100%;height:100%;display:block}.sheet-cell.empty{outline-offset:-1px;background:repeating-linear-gradient(45deg,#efefef 0 6px,#f8f8f8 6px 12px);outline:1px dashed #c9c9c9}.sheet-jobs{color:var(--muted);gap:6px;margin:0;padding:0;font-size:15px;list-style:none;display:grid}.sheet-jobs b{color:var(--text)}.sheet-jobs li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.sheet-job-actions{flex-wrap:wrap;gap:6px;display:flex}.rail{gap:14px;display:grid;position:sticky;top:0}.box{background:var(--surface);border:1px solid var(--line);border-radius:18px;gap:12px;padding:16px 18px;display:grid}.box h3{justify-content:space-between;align-items:center;margin:0;font-size:16px;display:flex}.stat{color:var(--muted);justify-content:space-between;align-items:baseline;font-size:15px;display:flex}.stat b{color:var(--text);font-size:20px}.mini-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.mini{aspect-ratio:.707;background:var(--surface-2);border-radius:6px;position:relative;overflow:hidden}.mini img{object-fit:cover;width:100%;height:100%;display:block}.mini span{color:#fff;background:#0000009e;border-radius:6px;padding:1px 6px;font-size:11px;position:absolute;bottom:4px;left:4px}.setting-row{justify-content:space-between;align-items:center;gap:14px;min-height:44px;font-size:15px;display:flex}.setting-row .seg button{padding:8px 14px;font-size:15px}.rail .setting-row{flex-direction:column;align-items:stretch;gap:8px}.rail .setting-row .seg{flex-wrap:nowrap}.rail .setting-row .seg button{white-space:nowrap;flex:1}.switch{appearance:none;background:var(--line);cursor:pointer;border-radius:999px;flex:none;width:46px;height:26px;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:left .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch:checked{background:var(--ok)}.switch:checked:after{left:23px}.switch:disabled{opacity:.4;cursor:default}.settings-page{gap:16px;max-width:760px;display:grid}.history-page{gap:14px;display:grid}.history-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.recent-list{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.recent-item{background:var(--surface);border:1px solid var(--line);border-radius:16px;align-content:start;gap:10px;padding:12px;display:grid}.recent-thumb{aspect-ratio:.707;background:var(--surface-2);border-radius:8px;overflow:hidden}.recent-thumb img{object-fit:contain;width:100%;height:100%;display:block}.recent-meta{gap:2px;font-size:15px;display:grid}.recent-meta .muted{font-size:13px}.recent-actions{flex-wrap:wrap;gap:6px;display:flex}.recent-actions .btn.sm{min-height:38px;padding:8px 12px;font-size:14px}.ok-text{color:var(--ok);margin:0;font-weight:600}.reset-box{border-color:var(--danger-soft)}.reset-box .btn{justify-self:start}.delete-confirm{border:1px solid var(--danger);background:var(--danger-soft);border-radius:12px;gap:8px;padding:10px 12px;display:grid}.delete-confirm p{color:var(--danger-text);margin:0;font-size:14px;line-height:1.5}@media (width<=1000px){.queue-page{grid-template-columns:1fr}.rail{position:static}}.only-narrow,.nav-short{display:none}.setting-row>span:first-child{flex:1 1 0;min-width:0}@media (width<=760px){.staff{grid-template-columns:1fr;height:100dvh}.side{z-index:20;padding:6px 6px calc(6px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--line);position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 20px #0000000f}.brand,.side-foot{display:none}.nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:2px}.nav button{text-align:center;flex-direction:column;justify-content:center;gap:2px;padding:8px 2px;font-size:12px;line-height:1.2;position:relative}.nav button>span:first-child{width:auto;font-size:18px}.nav .badge{margin:0;padding:1px 6px;font-size:11px;position:absolute;top:2px;right:calc(50% - 26px)}.staff-head{gap:10px;padding:12px 16px}.staff-head h1{font-size:20px}.staff-head .muted{font-size:13px}.chip{padding:6px 10px;font-size:12px}.staff-content{padding:14px 14px 96px}.sheet-list{grid-template-columns:minmax(0,1fr)}.frame-grid,.recent-list{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.frame-thumb{height:190px}.frame-actions,.setting-row{flex-wrap:wrap}.frames-bar .add{text-align:center;width:100%;margin-left:0}.only-narrow{display:grid}.nav-long{display:none}.nav-short{display:inline}}.finish-qr{grid-template-columns:120px 1fr;align-items:center;gap:14px;margin-top:8px;display:grid}.finish-qr img{width:120px;height:120px;image-rendering:pixelated;border-radius:8px}.warn-text{color:var(--warn);margin:0}.signin-inline{gap:8px;display:grid}.signin-row{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.signin-row>button{white-space:nowrap}.signin-row input{min-width:0;font:inherit;border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:12px;flex:1;padding:10px 14px}.pw{flex:200px;gap:6px;min-width:0;display:grid}.pw-box{display:flex;position:relative}.pw-box input{-webkit-user-select:text;user-select:text;padding-right:76px}.pw-eye{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:36px;padding:8px 10px;font-size:15px;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.pw-eye:hover,.pw-eye[aria-pressed=true]{color:var(--text);background:var(--surface)}.pw-warn{font-size:14px}.staff-login{background:var(--bg);-webkit-user-select:text;user-select:text;place-items:center;min-height:100vh;padding:16px;display:grid}.login-card{background:var(--surface);border:1px solid var(--line);width:min(460px,100%);box-shadow:var(--shadow);border-radius:22px;gap:14px;padding:28px;display:grid}.login-card .brand{padding:0 0 6px}.staff-login h1{margin:0;font-size:26px}.sheet-pages{gap:8px;display:flex}.sheet-pages .sheet-paper{flex:1;min-width:0}.sheet-pages .sheet-paper.a5{flex:0 calc(50% - 4px)}.sheet-paper.a5{aspect-ratio:148/210;padding:14% 12%}.sheet-grid.a5{grid-template-rows:1fr;grid-template-columns:repeat(2,1fr)}.sheet-paper.a5x4{aspect-ratio:210/148;padding:5% 3%}.sheet-grid.a5x4{grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(4,minmax(0,1fr))}.sheet-paper.a4l{aspect-ratio:297/210;padding:3%;position:relative}.sheet-paper.a4l:after{content:"";border-left:1px dashed #999;position:absolute;top:0;bottom:0;left:50%}.sheet-grid.a4l{grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(2,minmax(0,1fr));gap:6%}.sheet-grid.a4l .sheet-cell img{object-fit:contain}
