@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.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:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/bricolage-grotesque-vietnamese-600-normal-Ipewt4hn.woff2)format("woff2"),url(/assets/bricolage-grotesque-vietnamese-600-normal-BppAn7jL.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:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/bricolage-grotesque-latin-ext-600-normal-CN5JKkBm.woff2)format("woff2"),url(/assets/bricolage-grotesque-latin-ext-600-normal-DF26P3Q7.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:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/bricolage-grotesque-latin-600-normal-nxTgbNFE.woff2)format("woff2"),url(/assets/bricolage-grotesque-latin-600-normal-Bw0J83-2.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:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/bricolage-grotesque-vietnamese-700-normal-BLYPkJbo.woff2)format("woff2"),url(/assets/bricolage-grotesque-vietnamese-700-normal-CHrFuVHU.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:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/bricolage-grotesque-latin-ext-700-normal-fBkt-7fi.woff2)format("woff2"),url(/assets/bricolage-grotesque-latin-ext-700-normal-BXpPFNFj.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:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/bricolage-grotesque-latin-700-normal-gtcctNPv.woff2)format("woff2"),url(/assets/bricolage-grotesque-latin-700-normal-DvJDmrLu.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.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{--paper:#eef1f1;--paper-raised:#fff;--paper-sunken:#e3e7e7;--ink:#16212b;--ink-soft:#48545e;--ink-faint:#5e6a74;--border:#16212b21;--border-strong:#16212b3d;--accent:#b0611f;--accent-strong:#94511a;--accent-ink:#7a3e12;--accent-soft:#c9722d24;--on-accent:#fff;--success:#276b45;--success-soft:#3e8b5f26;--warning:#7f570c;--warning-soft:#b9821f29;--danger:#b23a3a;--danger-soft:#b23a3a21;--training:#6b4fb3;--training-soft:#6b4fb324;--shadow:0 1px 2px #16212b0f, 0 8px 24px -12px #16212b2e;--r-s:8px;--r-m:14px;--r-l:20px;--font-display:"Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;--font-body:"IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#121a20;--paper-raised:#1b252c;--paper-sunken:#0e1519;--ink:#eceff1;--ink-soft:#aeb9c1;--ink-faint:#8a969f;--border:#eceff11f;--border-strong:#eceff138;--accent:#e08a44;--accent-strong:#f09a54;--accent-ink:#ffd9b3;--accent-soft:#e08a4429;--on-accent:#16212b;--success:#5dbb86;--success-soft:#5dbb8629;--warning:#e0b04f;--warning-soft:#e0b04f29;--danger:#f08c8c;--danger-soft:#f08c8c29;--training:#bba6f0;--training-soft:#bba6f029;--shadow:0 1px 2px #0000004d, 0 8px 24px -12px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#121a20;--paper-raised:#1b252c;--paper-sunken:#0e1519;--ink:#eceff1;--ink-soft:#aeb9c1;--ink-faint:#8a969f;--border:#eceff11f;--border-strong:#eceff138;--accent:#e08a44;--accent-strong:#f09a54;--accent-ink:#ffd9b3;--accent-soft:#e08a4429;--on-accent:#16212b;--success:#5dbb86;--success-soft:#5dbb8629;--warning:#e0b04f;--warning-soft:#e0b04f29;--danger:#f08c8c;--danger-soft:#f08c8c29;--training:#bba6f0;--training-soft:#bba6f029;--shadow:0 1px 2px #0000004d, 0 8px 24px -12px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{margin:0}body{background:var(--paper);color:var(--ink);font:400 16px/1.45 var(--font-body);-webkit-text-size-adjust:100%;min-height:100dvh}h1,h2,h3{font-family:var(--font-display);margin:0 0 .5rem;font-weight:700;line-height:1.15}h1{font-size:1.6rem}h2{font-size:1.25rem}h3{font-size:1.05rem}p{margin:0 0 .75rem}a{color:var(--accent-ink)}.mono,.money{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.muted{color:var(--ink-soft)}.faint{color:var(--ink-faint);font-size:.9rem}.hidden{display:none!important}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}button,.btn{font:600 1rem/1 var(--font-body);color:var(--ink);background:var(--paper-raised);border:1px solid var(--border-strong);border-radius:var(--r-s);cursor:pointer;touch-action:manipulation;min-height:44px;padding:.75rem 1rem}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}button.primary:not(:disabled):active{background:var(--accent-strong)}button.danger{color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}button.ghost{background:0 0;border-color:#0000}button.small{min-height:36px;padding:.45rem .7rem;font-size:.9rem}button.big{width:100%;min-height:60px;font-size:1.15rem}label{margin-bottom:.75rem;font-weight:500;display:block}label>span{margin-bottom:.3rem;font-size:.95rem;display:block}input,select,textarea{width:100%;font:400 1rem var(--font-body);color:var(--ink);background:var(--paper-raised);border:1px solid var(--border-strong);border-radius:var(--r-s);min-height:44px;padding:.65rem .75rem}input[type=checkbox]{width:22px;height:22px;min-height:0;accent-color:var(--accent)}.check{align-items:center;gap:.6rem;font-weight:400;display:flex}.field-error{color:var(--danger);margin-top:.3rem;font-size:.9rem}input[aria-invalid=true]{border-color:var(--danger)}.row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.row>.grow{flex:auto;min-width:0}.stack>*+*{margin-top:.75rem}.card{background:var(--paper-raised);border:1px solid var(--border);border-radius:var(--r-m);box-shadow:var(--shadow);padding:1rem}.notice{border-radius:var(--r-s);margin-bottom:1rem;padding:.75rem 1rem}.notice.warn{background:var(--warning-soft);color:var(--ink);border:1px solid var(--warning)}.notice.err{background:var(--danger-soft);border:1px solid var(--danger)}.notice.ok{background:var(--success-soft);border:1px solid var(--success)}.notice.training{background:var(--training-soft);border:1px solid var(--training)}.auth-wrap{place-items:center;min-height:100dvh;padding:16px;display:grid}.auth-card{width:100%;max-width:400px}.brand{font-family:var(--font-display);align-items:center;gap:.6rem;font-size:1.25rem;font-weight:700;display:flex}.brand img{width:32px;height:32px}.brand .ver{font:500 .75rem var(--font-mono);color:var(--ink-faint)}.topbar{z-index:10;padding:calc(env(safe-area-inset-top) + .5rem) 16px .5rem;background:var(--paper-raised);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex;position:sticky;top:0}.topbar .spacer{flex:1}.topbar select{width:auto;max-width:52vw;min-height:40px;padding:.4rem .6rem}.pill{background:var(--paper-sunken);white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.85rem;font-weight:500;display:inline-flex}.pill:before{content:"";background:var(--ink-faint);border-radius:50%;width:8px;height:8px}.pill.ok:before{background:var(--success)}.pill.busy:before{background:var(--warning)}.pill.err{background:var(--danger-soft)}.pill.err:before{background:var(--danger)}.pill.training{background:var(--training-soft);color:var(--training)}.pill.training:before{background:var(--training)}.tabs{scrollbar-width:none;gap:.25rem;padding:.5rem 16px 0;display:flex;overflow-x:auto}.tabs button{border-radius:var(--r-s) var(--r-s) 0 0;color:var(--ink-soft);white-space:nowrap;background:0 0;border-color:#0000;border-bottom-style:none;border-bottom-width:medium}.tabs button[aria-selected=true]{background:var(--paper-raised);border-color:var(--border);color:var(--ink)}main{max-width:1200px;padding:16px;padding-bottom:calc(env(safe-area-inset-bottom) + 16px);margin:0 auto}.pos{gap:16px;display:grid}@media (min-width:900px){.pos{grid-template-columns:1fr 380px;align-items:start}.pos .cart{position:sticky;top:80px}}.cat-title{font:600 .85rem var(--font-body);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:1rem 0 .5rem}.cat-title:first-child{margin-top:0}.tiles{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;display:grid}.tile{text-align:left;border-radius:var(--r-m);background:var(--paper-raised);border:1px solid var(--border);min-height:92px;box-shadow:var(--shadow);overflow-wrap:anywhere;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:.75rem;font-weight:600;line-height:1.2;display:flex;position:relative}.tile .price{font:500 .95rem var(--font-mono);color:var(--accent-ink)}.tile .qty{background:var(--accent);min-width:28px;height:28px;color:var(--on-accent);font:600 .9rem var(--font-mono);border-radius:14px;place-items:center;padding:0 6px;display:grid;position:absolute;top:6px;right:6px}.tile.soldout{opacity:.45;text-decoration:line-through}.tile:not(:disabled):active{transform:scale(.98)}.cart h2{justify-content:space-between;align-items:baseline;display:flex}.lines{margin:0 0 1rem;padding:0;list-style:none}.line{border-bottom:1px solid var(--border);grid-template-columns:1fr auto;gap:.25rem .5rem;padding:.6rem 0;display:grid}.line .name{overflow-wrap:anywhere;font-weight:600}.line .sum{font-family:var(--font-mono);text-align:right}.line .ctrl{grid-column:1/-1;align-items:center;gap:.4rem;display:flex}.line .ctrl button{min-width:48px;min-height:44px;padding:0;font-size:1.25rem}.line .ctrl input{text-align:center;width:72px;font-family:var(--font-mono)}.total{font-family:var(--font-display);justify-content:space-between;align-items:baseline;margin:.5rem 0 1rem;font-size:1.6rem;font-weight:700;display:flex}.total .money{font-size:1.8rem}.cash{grid-template-columns:repeat(4,1fr);gap:6px;margin:.5rem 0;display:grid}.cash button{font-family:var(--font-mono);padding:.5rem 0}.change{margin:.5rem 0 1rem;font-size:1.15rem}.change strong{font-family:var(--font-mono);font-size:1.4rem}.empty{text-align:center;color:var(--ink-faint);padding:1.5rem 0}.list{margin:0;padding:0;list-style:none}.list>li{border-bottom:1px solid var(--border);padding:.75rem 0}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:.5rem .4rem}th{color:var(--ink-soft);font-size:.85rem;font-weight:600}td.num,th.num{text-align:right;font-family:var(--font-mono)}.table-wrap{overflow-x:auto}.badge{background:var(--paper-sunken);color:var(--ink-soft);border-radius:6px;padding:.1rem .45rem;font-size:.78rem;font-weight:600;display:inline-block}.badge.ok{background:var(--success-soft);color:var(--success)}.badge.warn{background:var(--warning-soft);color:var(--warning)}.badge.err{background:var(--danger-soft);color:var(--danger)}.badge.training{background:var(--training-soft);color:var(--training)}.subtabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.subtabs button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}.grid2{gap:16px;display:grid}@media (min-width:800px){.grid2{grid-template-columns:1fr 1fr}}.kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:1rem;display:grid}.kpi{background:var(--paper-raised);border:1px solid var(--border);border-radius:var(--r-m);padding:.75rem 1rem}.kpi .v{font:600 1.4rem var(--font-mono)}.kpi .l{color:var(--ink-soft);font-size:.85rem}dialog{border-radius:var(--r-l);background:var(--paper-raised);width:min(520px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ink);box-shadow:var(--shadow);border:none;padding:0}dialog::backdrop{background:#0a0f1480}dialog form,dialog .body{padding:1.25rem}dialog .actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}#toast{left:50%;bottom:calc(env(safe-area-inset-bottom) + 20px);z-index:50;pointer-events:none;gap:8px;width:min(480px,100vw - 32px);display:grid;position:fixed;transform:translate(-50%)}.toast{background:var(--ink);color:var(--paper);border-radius:var(--r-s);box-shadow:var(--shadow);pointer-events:auto;padding:.8rem 1rem;font-weight:500}.toast.err{background:var(--danger);color:var(--paper-raised)}.toast.ok{background:var(--success);color:var(--paper-raised)}.success-flash{text-align:center;padding:1rem 0}.success-flash .big-money{font:700 2.4rem var(--font-mono);color:var(--success)}@media (prefers-reduced-motion:no-preference){.tile{transition:transform 60ms}}.bars td:first-child{width:60%}.bar{background:var(--paper-sunken);border-radius:4px;height:8px;margin-top:4px;overflow:hidden}.bar-fill{background:var(--accent);border-radius:0 4px 4px 0;height:100%;display:block}.kpi[title]{cursor:help}@media print{.topbar,.tabs,button,#toast{display:none!important}body{color:#000;background:#fff}.card,.kpi{box-shadow:none;break-inside:avoid;border-color:#999}main{padding:0}}.table-tile{min-height:100px}.table-tile .tname{font-family:var(--font-display);font-size:1.4rem}.table-tile.open{border-color:var(--accent);background:var(--accent-soft)}@media (max-width:480px){.hide-sm{display:none}}.search{margin-bottom:12px}.tile .sizes{color:var(--ink-soft);font-size:.8rem;font-weight:500}.tile.has-variants:after{content:"›";color:var(--ink-faint);font-size:1.2rem;position:absolute;bottom:8px;right:10px}dialog .actions button.variant-btn{flex:100%;min-height:56px;font-size:1.1rem}.variant-row input{flex:120px}html[data-env] body:before{content:"TESTUMGEBUNG – keine echten Verkäufe";text-align:center;font:700 .85rem var(--font-body);background:var(--training);color:#fff;z-index:30;padding:.35rem;display:block;position:sticky;top:0}.filters{margin-bottom:12px}.filters summary{cursor:pointer;font-weight:600}.filters .row{margin-top:8px}.filters select,.filters input{flex:160px;width:auto}.checklist{padding:0;list-style:none}.checklist li{padding:.35rem 0}.checklist li.warn{color:var(--warning);font-weight:600}.qr{background:#fff;border-radius:8px;width:200px;height:200px;padding:8px;display:block}.price-in{text-align:right;width:96px}
