.auth-page{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:max(24px,env(safe-area-inset-top)) 16px max(24px,env(safe-area-inset-bottom))}.auth-brand .brand{color:var(--text);font-size:1.35rem}.auth-brand .brand-mark{width:36px;height:36px}.auth-card{width:min(440px,100%);background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:24px 20px;display:flex;flex-direction:column;gap:14px;text-align:left;box-shadow:0 10px 30px #0000002e}.auth-title{font-size:1.45rem;font-weight:700;letter-spacing:-.01em}.auth-sub{margin:-6px 0 0;color:var(--muted);line-height:1.45}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-label{font-weight:600;font-size:.95rem}.auth-hint{color:var(--muted);font-size:.82rem;line-height:1.35}.auth-hint.center,.center{text-align:center;margin:-6px 0 0}.auth-field .text-input{width:100%;min-height:52px;font-size:1.05rem}.auth-field .text-input:focus{outline:3px solid var(--acc-soft);border-color:var(--acc)}.auth-card .btn-block{min-height:54px;font-size:1.05rem;font-weight:700}.auth-card .btn-link{align-self:center;font-weight:600}.auth-error,.auth-notice{margin:0;padding:10px 12px;border-radius:10px;font-weight:500;line-height:1.4}.auth-error{background:var(--danger-bg);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 40%,transparent)}.auth-notice{background:var(--info-bg);color:var(--text);border:1px solid var(--line)}.auth-notice-warn{background:var(--warn-bg);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}.auth-links{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 16px}.auth-links .btn-link{font-weight:600}.auth-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.85rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--line)}.btn.btn-ms{background:#fff;color:#2f2f2f;border:1px solid #8c8c8c;gap:10px}.btn.btn-ms:hover{background:#f3f3f3}.auth-pass{display:flex;gap:6px}.auth-pass .text-input{flex:1;min-width:0}.auth-eye{min-width:88px;font-size:.9rem}.auth-check{display:flex;align-items:center;gap:10px;font-size:.95rem;min-height:40px;cursor:pointer}.auth-check input{width:22px;height:22px;accent-color:var(--acc)}.auth-row{display:flex;flex-wrap:wrap;gap:8px}.auth-row .btn{flex:1;min-height:46px}.auth-steps{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:6px;line-height:1.45}.otp-input{font-family:var(--mono);font-size:1.6rem!important;letter-spacing:.3em;text-align:center}.pair-code{font-family:var(--mono);font-size:1.6rem!important;letter-spacing:.22em;text-align:center;text-transform:uppercase}.pair-scan{font-size:1.15rem!important}.qr-box{align-self:center;background:#fff;border-radius:12px;padding:12px;width:244px;height:244px;display:grid;place-items:center}.qr-box img{display:block;width:220px;height:220px;image-rendering:pixelated}.auth-secret{margin:0;text-align:center;color:var(--muted);font-size:.9rem;display:flex;flex-direction:column;gap:6px}.auth-secret code{font-family:var(--mono);font-size:1.05rem;color:var(--acc-text);word-break:break-all;-webkit-user-select:all;user-select:all}.codes-grid{list-style:none;margin:0;padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;background:var(--surface-2);border-radius:12px;font-family:var(--mono);font-size:1.1rem;text-align:center}.tenant-list{display:flex;flex-direction:column;gap:10px}.tenant-btn{justify-content:flex-start;gap:12px;min-height:60px;text-align:left;font-weight:600}.tenant-btn:hover{border-color:var(--acc)}.tenant-initial{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:var(--acc);color:var(--acc-ink);font-weight:700;flex:none}.tenant-name{flex:1}@media(max-width:400px){.auth-page{justify-content:flex-start;gap:12px;padding-top:max(16px,env(safe-area-inset-top))}.auth-card{padding:18px 14px;border-radius:14px;box-shadow:none}.auth-title{font-size:1.3rem}}@media print{.auth-page>:not(.auth-card),.auth-card>:not(.codes-grid):not(.auth-title){display:none!important}.codes-grid{background:none;color:#000}}@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+0460-052F,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+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,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+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family: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+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: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+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff) format("woff");unicode-range:U+0460-052F,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:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: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+0460-052F,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+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,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+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@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+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family: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+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: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+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: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+0460-052F,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+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,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+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@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+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family: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+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: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+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: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+0460-052F,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+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,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+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@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+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family: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+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: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+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-BmRLXWpJ.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-DCQwxkRk.woff) format("woff");unicode-range:U+0460-052F,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:700;src:url(/assets/ibm-plex-sans-cyrillic-700-normal-D_uavGvn.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-700-normal-RFb1v-CK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-greek-700-normal-wyJ6jzdA.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-700-normal-CkZN0sRy.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-vietnamese-700-normal-CkEo6LDy.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-700-normal-BV5B8Are.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-ext-700-normal-aMgXseD4.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-700-normal-DZH6Xh-4.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f4f5f2;--surface: #ffffff;--text: #1c1f1a;--muted: #646b60;--line: #dfe2da;--brand: #14532d;--brand-2: #1f7a45;--ok: #15803d;--ok-bg: #dcfce7;--warn: #b45309;--warn-bg: #fef3c7;--danger: #b91c1c;--danger-bg: #fee2e2;--info-bg: #e0ecff;--radius: 14px;--tap: 52px;color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);-webkit-tap-highlight-color:transparent}@media(prefers-color-scheme:dark){:root{--bg: #111410;--surface: #1b1f1a;--text: #eef0ea;--muted: #a3aa9e;--line: #2d332b;--ok-bg: #12351f;--warn-bg: #3a2a0d;--danger-bg: #3b1515;--info-bg: #17263d;color-scheme:dark}}*{box-sizing:border-box}body{margin:0;background:var(--bg);min-height:100dvh}button{font:inherit;color:inherit;cursor:pointer}button:disabled{opacity:.45;cursor:default}h1,h2,h3{margin:0;line-height:1.2}a{color:inherit;text-decoration:none}#root{max-width:760px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column}.page{padding:16px;display:flex;flex-direction:column;gap:16px;flex:1}.page-center{justify-content:center;align-items:center;text-align:center}.muted{color:var(--muted);font-size:.9rem;margin:0}.empty{color:var(--muted);text-align:center;padding:40px 0}.text-danger{color:var(--danger)}.text-warn{color:var(--warn)}.topbar,.home-head{background:var(--brand);color:#fff;padding:12px 16px;display:flex;align-items:center;gap:12px;padding-top:max(12px,env(safe-area-inset-top))}.home-head{justify-content:space-between;padding-block:20px}.topbar-text{min-width:0}.topbar h1{font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar p{margin:2px 0 0;font-size:.82rem;opacity:.85}.brand{display:flex;align-items:center;gap:8px;font-size:1.1rem;font-weight:700;letter-spacing:-.01em}.brand-mark{flex:none;border-radius:7px}.brand-log{color:#f26b1d}.brand-sub{font-size:.8rem;font-weight:400;opacity:.7;letter-spacing:0}.home-head h1{font-size:1.5rem}.page-center .brand{color:var(--brand-2)}.sticky-tools{position:sticky;top:0;z-index:5;background:var(--bg);padding:12px 16px 0;display:flex;flex-direction:column;gap:8px}.btn{min-height:var(--tap);padding:0 18px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);font-weight:600;font-size:1rem;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-block{width:100%}.btn-primary{background:var(--brand-2);border-color:var(--brand-2);color:#fff}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-link{border:0;background:none;color:var(--brand-2);min-height:40px;padding:0 4px}.btn small{font-weight:500;opacity:.8;font-size:.75rem}.icon-btn{width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--surface);font-size:1.15rem;flex:none}.icon-btn[aria-pressed=true]{background:var(--info-bg)}.icon-btn.on-dark{background:transparent;border-color:#ffffff4d;color:#fff}.chip{min-height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-weight:600}.chip-on{background:var(--brand-2);border-color:var(--brand-2);color:#fff}.chip.on-dark{background:transparent;color:#fff;border-color:#ffffff59}.chips{display:flex;flex-wrap:wrap;gap:8px}.round-btn{width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:var(--surface);font-size:1.4rem;font-weight:700;flex:none}.round-btn-primary{background:var(--brand-2);border-color:var(--brand-2);color:#fff}.round-btn-danger{color:var(--danger);border-color:var(--danger);background:var(--surface);font-size:1.15rem}.scanbar{display:flex;flex-direction:column;gap:8px}.scanbar-row{display:flex;gap:8px}.scan-input{flex:1;min-width:0;min-height:var(--tap);border-radius:var(--radius);border:2px solid var(--brand-2);padding:0 14px;font-size:1.1rem;background:var(--surface);color:var(--text)}.scan-input:focus{outline:3px solid color-mix(in srgb,var(--brand-2) 30%,transparent)}.qty-modes{display:flex;gap:8px}.flash{border-radius:12px;padding:12px 14px;font-weight:700;font-size:1.05rem;animation:pop .25s ease-out}.flash-ok{background:var(--ok-bg);color:var(--ok)}.flash-warn{background:var(--warn-bg);color:var(--warn)}.flash-error{background:var(--danger-bg);color:var(--danger)}@keyframes pop{0%{transform:scale(.97);opacity:.4}to{transform:none;opacity:1}}.progress{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px}.progress-head,.progress-foot{display:flex;justify-content:space-between;gap:12px;font-size:.92rem}.progress-foot{margin-top:6px;color:var(--muted)}.progress-track,.mini-track{height:12px;background:var(--line);border-radius:999px;overflow:hidden;margin-top:8px}.mini-track{height:6px}.progress-fill{height:100%;background:var(--brand-2);transition:width .3s}.progress-fill.is-done{background:var(--ok)}.next{display:flex;gap:14px;align-items:center;background:var(--brand);color:#fff;border-radius:var(--radius);padding:14px}.next-loc{align-self:flex-start;font-size:1.6rem;font-weight:800;font-variant-numeric:tabular-nums;background:#ffffff24;border-radius:10px;padding:8px 12px;white-space:nowrap}.next-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;opacity:.8}.next-name{font-size:1.1rem;font-weight:700}.next .muted{color:#ffffffd9}.lines{list-style:none;margin:0;padding:0 0 88px;display:flex;flex-direction:column;gap:8px}.line{display:grid;grid-template-columns:64px 1fr auto auto;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-left:6px solid var(--line);border-radius:12px;padding:10px}.line-hit{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-2) 35%,transparent)}.state-ok{border-left-color:var(--ok);background:color-mix(in srgb,var(--ok-bg) 45%,var(--surface))}.state-partial{border-left-color:var(--brand-2)}.state-excess{border-left-color:var(--warn);background:color-mix(in srgb,var(--warn-bg) 55%,var(--surface))}.line-loc{font-weight:800;font-size:.85rem;font-variant-numeric:tabular-nums;color:var(--brand-2)}.line-thumb{width:64px;height:64px;padding:0;border:0;border-radius:10px;overflow:hidden;background:var(--bg)}.art-img{width:100%;height:100%;object-fit:cover;display:block;background:var(--bg)}.art-img-empty{display:grid;place-items:center;font-weight:800;color:var(--muted);letter-spacing:.05em}.next-img{width:112px;height:112px;border-radius:12px;flex:none;background:#ffffffe6}.next .art-img-empty{color:var(--brand);font-size:1.6rem}.next-body{display:flex;flex-direction:column;gap:4px;min-width:0}.next{cursor:pointer}.fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:var(--surface);display:flex;flex-direction:column}.fullscreen-img{flex:1;min-height:0;background:#111;display:grid;place-items:center}.fullscreen-img .art-img-full{width:100%;height:100%;object-fit:contain;background:#111}.fullscreen-img .art-img-empty{color:#888;font-size:4rem}.fullscreen-close{position:absolute;top:max(12px,env(safe-area-inset-top));right:12px;width:48px;height:48px;border-radius:50%;border:0;background:#0000008c;color:#fff;font-size:1.3rem;z-index:1}.fullscreen-info{padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:6px}.fullscreen-loc{align-self:flex-start;font-weight:800;font-size:1.3rem;color:#fff;background:var(--brand);border-radius:10px;padding:4px 12px}.fullscreen-info .btn{margin-top:8px;cursor:pointer}.line-main{min-width:0}.line-name{font-weight:650}.line-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:.78rem;color:var(--muted);margin-top:2px}.line-count{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.line-count strong{font-size:1.35rem}.line-count span{color:var(--muted)}.line-actions{display:flex;gap:6px}.tag{padding:1px 8px;border-radius:999px;background:var(--info-bg);color:var(--text)}.tag-danger{background:var(--danger-bg);color:var(--danger);font-weight:600}.tag-warn{background:var(--warn-bg);color:var(--warn);font-weight:600}.serials{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.serial{font-size:.75rem;padding:2px 8px;border-radius:6px;border:1px solid var(--line);font-weight:600}.serial-back{background:var(--ok-bg);color:var(--ok);border-color:transparent}.serial-damaged{background:var(--warn-bg);color:var(--warn);border-color:transparent}@media(max-width:480px){.line{grid-template-columns:56px 1fr auto;row-gap:6px}.line-thumb{width:56px;height:56px}.line-actions{grid-column:2 / -1;justify-content:flex-end}.next-img{width:88px;height:88px}.next-loc{font-size:1.3rem}.round-btn{width:44px;height:44px}}.cards{display:flex;flex-direction:column;gap:10px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px;display:block}.project-card h3{font-size:1.05rem;margin:6px 0 4px}.project-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.code{font-weight:800;color:var(--brand-2);font-variant-numeric:tabular-nums}.badge{font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--info-bg)}.badge-in_progress{background:var(--warn-bg);color:var(--warn)}.badge-prepared,.badge-returned{background:var(--ok-bg);color:var(--ok)}.badge-shipped,.badge-wash{background:var(--info-bg)}.badge-restore{background:var(--warn-bg);color:var(--warn)}.flags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.flag{font-size:.78rem;font-weight:700;color:var(--danger);background:var(--danger-bg);padding:3px 10px;border-radius:999px}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.tile{border-radius:18px;padding:18px;min-height:120px;display:flex;flex-direction:column;justify-content:space-between;color:#fff}.tile-prep{background:var(--brand-2)}.tile-return{background:#1e4d7a}.tile-repair{background:#8a4b0f}.tile-count{font-size:2.4rem;font-weight:800}.tile-label{font-weight:700;font-size:1.05rem}.section-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px}.alerts{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.alert{display:block;padding:12px 14px;border-radius:12px;font-weight:600}.alert-danger{background:var(--danger-bg);color:var(--danger)}.alert-warning{background:var(--warn-bg);color:var(--warn)}.sync-row{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-top:auto}.operator-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;width:100%;max-width:520px;margin-top:16px}.btn-tile{flex-direction:column;min-height:130px;gap:6px}.avatar{width:52px;height:52px;border-radius:50%;background:var(--brand-2);color:#fff;display:grid;place-items:center;font-weight:800}.action-bar{position:sticky;bottom:0;padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-top:1px solid var(--line)}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:20;display:flex;align-items:flex-end;justify-content:center}.sheet{background:var(--surface);width:100%;max-width:760px;border-radius:20px 20px 0 0;padding:20px 16px;padding-bottom:max(20px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px;max-height:92dvh;overflow:auto}.sheet h2{font-size:1.15rem}.sheet.camera video{width:100%;border-radius:12px;background:#000}.stepper{display:flex;align-items:center;gap:14px}.stepper strong{font-size:1.6rem;min-width:2ch;text-align:center}.photo-btn{display:grid;place-items:center;min-height:120px;border:2px dashed var(--line);border-radius:var(--radius);font-weight:700;font-size:1.1rem;cursor:pointer;overflow:hidden}.photo-btn.has-photo{border-style:solid;padding:0}.photo-btn img{width:100%;max-height:220px;object-fit:cover;display:block}.text-input{min-height:48px;border-radius:12px;border:1px solid var(--line);padding:0 12px;font-size:1rem;background:var(--surface);color:var(--text)}.path-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.path-buttons .btn{min-height:64px;flex-direction:column;gap:0;font-size:1.1rem}.report-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;gap:10px}.sheet .report-box{border:0;padding:0}.totals{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;text-align:center}.totals div{background:var(--bg);border-radius:10px;padding:8px 4px;display:flex;flex-direction:column}.totals strong{font-size:1.4rem}.totals span{font-size:.75rem;color:var(--muted)}.report{list-style:none;margin:0;padding:0}.report li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.repair-card{display:flex;gap:12px}.repair-main{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.repair-main h3{font-size:1rem}.repair-main p{margin:0}.thumb{width:84px;height:84px;border-radius:10px;object-fit:cover;flex:none}.thumb-empty{display:grid;place-items:center;background:var(--bg);font-size:1.6rem}.tile-load{background:#0f5c63}.tile-move{background:#4b5563}.tile-count-inv{background:#5b3f8c}.plate{margin-left:8px;font-size:.78rem;font-weight:700;padding:2px 8px;border-radius:6px;border:1.5px solid currentColor;letter-spacing:.06em}.vehicle-card{cursor:pointer;display:flex;flex-direction:column;gap:6px}.stops{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px}.stops li{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.badge-trip-loading{background:var(--warn-bg);color:var(--warn)}.badge-trip-departed,.badge-trip-returned{background:var(--ok-bg);color:var(--ok)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.flag-warn{color:var(--warn);background:var(--warn-bg)}.flag-info{color:var(--text);background:var(--info-bg)}.row-card{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;text-align:left;font:inherit;color:inherit}.chip-danger{color:var(--danger);border-color:var(--danger)}.chip-on.chip-danger{background:var(--danger);color:#fff}.chip-muted{opacity:.85}.mode-switch .chip{flex:1;min-height:44px;font-size:1rem}.stop{display:flex;flex-direction:column;gap:8px}.stop .lines{padding-bottom:0}.stop-head{display:flex;gap:12px;align-items:center}.load-order{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--brand);color:#fff;font-weight:800;font-size:1.1rem}.action-row{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.action-bar.action-row .btn-block{flex:1;width:auto}.field{display:flex;flex-direction:column;gap:6px;font-weight:600}.field.inline{flex-direction:row;align-items:center;gap:8px;font-weight:500}.move-card{display:flex;flex-direction:column;gap:14px}.move-head{display:flex;gap:12px;align-items:center}.move-head h3{font-size:1.1rem}.hint{text-align:center;padding:24px 8px}.small-loc{display:inline-block;font-size:1.15rem;padding:4px 10px;background:var(--brand);color:#fff;margin-bottom:4px}.badge-count-recount{background:var(--warn-bg);color:var(--warn)}.badge-count-counting{background:var(--info-bg)}.badge-count-counted{background:var(--ok-bg);color:var(--ok)}.count-recount{border-left:6px solid var(--warn)}#root.wide{max-width:none}.bo{display:grid;grid-template-columns:220px 1fr;min-height:100dvh}.bo-nav{background:var(--brand);color:#fff;padding:20px 12px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100dvh}.bo-nav .brand{padding:0 10px 16px}.bo-link{display:block;padding:10px 12px;border-radius:10px;color:#fff;opacity:.85;border:0;background:none;text-align:left;font:inherit}.bo-link:hover{background:#ffffff14;opacity:1}.bo-link.is-active{background:#ffffff29;opacity:1;font-weight:700}.bo-nav-foot{margin-top:auto;display:flex;flex-direction:column;gap:2px}.bo-main{padding:24px 28px;display:flex;flex-direction:column;gap:18px;min-width:0}.bo-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.bo-head h1{font-size:1.5rem}.bo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:18px;align-items:start}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:12px;min-width:0;overflow-x:auto}.panel h2{font-size:1.05rem}.panel h3{font-size:.95rem;margin-top:8px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;gap:2px}.kpi-value{font-size:1.9rem;font-weight:800;font-variant-numeric:tabular-nums}.kpi-label{font-weight:600;font-size:.85rem;color:var(--muted)}.kpi-warn{border-color:var(--warn)}.kpi-warn .kpi-value{color:var(--warn)}.kpi-danger{border-color:var(--danger)}.kpi-danger .kpi-value{color:var(--danger)}.table{width:100%;border-collapse:collapse;font-size:.9rem;background:var(--surface)}.table th{text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:8px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:8px;border-bottom:1px solid var(--line);vertical-align:top}.table td .mini-track{width:90px;margin-top:4px}.table td.actions{white-space:nowrap}.table td.actions .chip{margin-right:4px;min-height:30px;padding:0 10px;font-size:.82rem}.row-danger td{background:color-mix(in srgb,var(--danger-bg) 50%,transparent)}.row-warn td{background:color-mix(in srgb,var(--warn-bg) 40%,transparent)}.thumb-sm{width:44px;height:44px;border-radius:8px;object-fit:cover;display:block}.text-input.sm{min-height:36px;font-size:.88rem;padding:0 8px}.text-input.grow{flex:1;min-width:240px}.form-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.mode{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid var(--line);border-radius:12px}.badge-repair-in_progress{background:var(--info-bg)}.badge-repair-closed,.badge-inv-approved,.badge-out-sent{background:var(--ok-bg);color:var(--ok)}.badge-repair-unrepairable,.badge-out-failed,.badge-out-error{background:var(--danger-bg);color:var(--danger)}.badge-inv-review,.badge-out-dry_run,.badge-out-pending{background:var(--warn-bg);color:var(--warn)}.badge-inv-cancelled,.badge-out-skipped{background:var(--line)}@media(max-width:900px){.bo{grid-template-columns:1fr}.bo-nav{position:static;height:auto;flex-direction:row;flex-wrap:wrap}.bo-nav-foot{margin-top:0;flex-direction:row}.bo-main{padding:16px}}.sync-badge{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border-radius:999px;font-size:.8rem;font-weight:700;white-space:nowrap;border:1px solid var(--line);color:var(--text);background:var(--surface);margin-left:auto}.sync-badge.on-dark{color:#fff;background:transparent;border-color:#ffffff59}.sync-dot{width:9px;height:9px;border-radius:50%;background:#22c55e}.sync-warn .sync-dot{background:#f59e0b}.sync-error .sync-dot{background:#ef4444;animation:pop 1s ease-in-out infinite alternate}.sync-error.on-dark{background:#ef444440}.card-error{border-color:var(--danger)}.login-form{display:flex;flex-direction:column;gap:12px;width:min(420px,100%)}.avatar-lg{width:72px;height:72px;font-size:1.6rem}.pin-dots{display:flex;gap:12px;justify-content:center;margin:8px 0}.pin-dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--brand-2)}.pin-dot.is-on{background:var(--brand-2)}.pin-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:min(320px,100%)}.pin-key{min-height:64px;font-size:1.5rem;font-weight:700}.tile-avail{background:#1d4ed8}.avail-filters,.bo-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.avail-card{cursor:pointer}.avail-head{display:flex;align-items:center;gap:12px}.avail-title{display:flex;flex-direction:column;flex:1;min-width:0}.avail-big{font-size:2rem;font-weight:800;text-align:right;line-height:1}.avail-big small{display:block;font-size:.7rem;font-weight:600;color:var(--muted)}.avail-stats{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px;font-size:.85rem;color:var(--muted)}.avail-detail{margin-top:10px;font-size:.88rem}.avail-detail ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px}.mini-fill{height:100%;background:var(--brand-2);border-radius:999px}.label-list{display:flex;flex-direction:column;gap:4px;max-height:60vh;overflow:auto;margin-top:8px}.plain-list{margin:0 0 12px;padding-left:18px;font-size:.88rem;display:flex;flex-direction:column;gap:4px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:8px}.mono{font-family:ui-monospace,Consolas,monospace;font-size:.78rem;word-break:break-all}.check{display:flex;align-items:center;gap:8px;min-height:36px}.row-muted{opacity:.55}.invite-link{display:flex;gap:8px;align-items:center;margin-top:8px}.invite-link code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.pairing{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:12px;border:1px dashed var(--line);border-radius:var(--radius)}.pairing img{border-radius:8px;background:#fff}.pairing-code{font-family:var(--mono, monospace);font-size:2rem;font-weight:700;letter-spacing:.12em;margin:6px 0}:root{--bg: #0e1116;--surface: #171b22;--surface-2: #1f2530;--text: #f2f4f7;--muted: #8b95a5;--line: #2a313c;--bar: #0e1116;--bar-text: #f2f4f7;--acc: #f26b1d;--acc-ink: #14161a;--acc-text: #f7894a;--acc-soft: rgba(242, 107, 29, .14);--brand: var(--bar);--brand-2: var(--acc);--ok: #3ddc84;--ok-bg: rgba(61, 220, 132, .13);--warn: #ffb020;--warn-bg: rgba(255, 176, 32, .13);--danger: #ff5a5f;--danger-bg: rgba(255, 90, 95, .13);--info-bg: #1f2a3a;--radius: 12px;--font: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: "IBM Plex Mono", ui-monospace, Consolas, monospace;color-scheme:dark;font-family:var(--font)}:root[data-theme=light]{--bg: #f3f4f6;--surface: #ffffff;--surface-2: #eceef2;--text: #12151a;--muted: #5b6474;--line: #dadee5;--bar: #ffffff;--bar-text: #12151a;--acc-text: #b4470a;--acc-soft: #fdebdd;--ok: #15803d;--ok-bg: #e3f6ea;--warn: #b45309;--warn-bg: #fdf0dc;--danger: #c62828;--danger-bg: #fde8e8;--info-bg: #e7eefb;color-scheme:light}@media(prefers-color-scheme:light){:root[data-theme=auto]{--bg: #f3f4f6;--surface: #ffffff;--surface-2: #eceef2;--text: #12151a;--muted: #5b6474;--line: #dadee5;--bar: #ffffff;--bar-text: #12151a;--acc-text: #b4470a;--acc-soft: #fdebdd;--ok: #15803d;--ok-bg: #e3f6ea;--warn: #b45309;--warn-bg: #fdf0dc;--danger: #c62828;--danger-bg: #fde8e8;--info-bg: #e7eefb;color-scheme:light}}body{font-family:var(--font);background:var(--bg);color:var(--text)}input,select,textarea{font-family:inherit}.topbar,.home-head{background:var(--bar);color:var(--bar-text);border-bottom:1px solid var(--line)}.chip.on-dark,.sync-badge.on-dark{color:var(--bar-text);border-color:var(--line);background:transparent}.icon-btn.on-dark{color:var(--bar-text);background:var(--surface-2);border-color:transparent}.brand,.page-center .brand{color:var(--bar-text);opacity:1}.page-center .brand{color:var(--text);justify-content:center}.btn,.round-btn,.icon-btn,.chip{background:var(--surface)}.btn-primary,.chip-on,.round-btn-primary{background:var(--acc);border-color:var(--acc);color:var(--acc-ink)}.avatar{background:var(--acc);color:var(--acc-ink)}.btn-link{color:var(--acc-text);background:none}.btn-ghost{background:transparent}.chip{border-radius:8px}.qty-modes .chip{font-family:var(--mono)}.pin-dot{border-color:var(--acc)}.pin-dot.is-on{background:var(--acc)}.icon-btn[aria-pressed=true]{background:var(--acc-soft)}.scan-input{border-color:var(--acc);background:var(--surface)}.scan-input:focus{outline:3px solid var(--acc-soft)}.flash-ok{border:1px solid color-mix(in srgb,var(--ok) 40%,transparent)}.flash-warn{border:1px solid color-mix(in srgb,var(--warn) 40%,transparent)}.flash-error{border:1px solid color-mix(in srgb,var(--danger) 40%,transparent)}.progress-track{background:var(--surface-2);height:8px}.mini-track{background:var(--surface-2)}.progress-fill,.mini-fill{background:var(--acc)}.progress-head strong{font-family:var(--mono);font-weight:600}.next{background:linear-gradient(180deg,var(--acc-soft),transparent 160%),var(--surface);color:var(--text);border:1px solid var(--acc)}.next-loc{background:none;padding:0;font-family:var(--mono);font-weight:600;font-size:2.1rem;color:var(--acc-text);line-height:1}.next .muted{color:var(--muted)}.next-label{color:var(--muted);opacity:1}.next-img{background:var(--surface-2)}.next .art-img-empty{color:var(--muted)}@media(max-width:480px){.next-loc{font-size:1.8rem}}.line-loc,.code{font-family:var(--mono);font-weight:600;color:var(--acc-text)}.line-count strong,.kpi-value,.avail-big,.totals strong,.stepper strong{font-family:var(--mono);font-weight:600}.line-thumb,.art-img,.thumb-empty{background:var(--surface-2)}.state-partial{border-left-color:var(--acc)}.line-hit{box-shadow:0 0 0 3px var(--acc-soft)}.small-loc,.fullscreen-loc,.load-order{background:var(--acc);color:var(--acc-ink);font-family:var(--mono)}.plate{font-family:var(--mono)}.tiles{grid-template-columns:1fr;gap:8px}@media(min-width:640px){.tiles{grid-template-columns:1fr 1fr}}.tile{min-height:60px;padding:12px 14px;border-radius:var(--radius);flex-direction:row;align-items:center;gap:12px;background:var(--surface);color:var(--text);border:1px solid var(--line)}.tile:active{border-color:var(--acc)}.tile:before{content:"";width:24px;height:24px;flex:none;background:var(--acc-text);-webkit-mask:var(--icon) center / contain no-repeat;mask:var(--icon) center / contain no-repeat}.tile-label{order:1;flex:1;font-weight:600;font-size:1rem}.tile-count{order:2;font-family:var(--mono);font-weight:600;font-size:1.05rem;color:var(--acc-text);background:var(--acc-soft);padding:2px 10px;border-radius:6px;min-width:2.2em;text-align:center}.tile-prep,.tile-return,.tile-load,.tile-move,.tile-count-inv,.tile-repair,.tile-avail{background:var(--surface)}.tile-prep{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 8l-9-5-9 5 9 5 9-5z'/%3E%3Cpath d='M3 8v8l9 5 9-5V8'/%3E%3Cpath d='M12 13v8'/%3E%3C/svg%3E")}.tile-return{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 14L4 9l5-5'/%3E%3Cpath d='M4 9h11a5 5 0 010 10h-3'/%3E%3C/svg%3E")}.tile-load{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 6h13v10H1z'/%3E%3Cpath d='M14 9h4l4 4v3h-8'/%3E%3Ccircle cx='6' cy='18' r='2'/%3E%3Ccircle cx='18' cy='18' r='2'/%3E%3C/svg%3E")}.tile-move{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 7h13l-4-4'/%3E%3Cpath d='M17 17H4l4 4'/%3E%3C/svg%3E")}.tile-count-inv{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='2'/%3E%3Cpath d='M8 8h8M8 12h8M8 16h5'/%3E%3C/svg%3E")}.tile-repair{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 00-5.4 5.4L3 18l3 3 6.3-6.3a4 4 0 005.4-5.4l-2.5 2.5-2.4-.6-.6-2.4z'/%3E%3C/svg%3E")}.tile-avail{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='17' rx='2'/%3E%3Cpath d='M3 9h18M8 2v4M16 2v4'/%3E%3Cpath d='M9 15l2 2 4-4'/%3E%3C/svg%3E")}.alert{font-weight:500;border:1px solid transparent}.alert-danger{border-color:color-mix(in srgb,var(--danger) 40%,transparent)}.alert-warning{border-color:color-mix(in srgb,var(--warn) 40%,transparent)}.flag{border-radius:6px}.card,.panel,.kpi,.progress,.report-box,.table{background:var(--surface);border-color:var(--line)}.totals div{background:var(--surface-2)}.badge{border-radius:6px}.sheet{background:var(--surface)}.action-bar{background:color-mix(in srgb,var(--bg) 92%,transparent)}.bo-nav{background:var(--bar);color:var(--bar-text);border-right:1px solid var(--line)}.bo-nav .brand{color:var(--bar-text);flex-wrap:wrap}.bo-nav .brand-sub{flex-basis:100%;padding-left:36px;margin-top:-6px}.bo-link{color:var(--bar-text)}.bo-link:hover{background:var(--surface-2)}.bo-link.is-active{background:var(--acc-soft);color:var(--acc-text)}.theme-switch{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;flex:none}.theme-switch button{border:0;background:transparent;color:var(--muted);min-height:32px;padding:0 10px;font-size:.8rem;font-weight:600}.theme-switch button[aria-pressed=true]{background:var(--acc);color:var(--acc-ink)}.home-head{flex-direction:column;align-items:stretch;gap:12px;padding-block:16px}.home-head h1{font-size:1.45rem}.home-head .chips{gap:6px;align-items:center}.home-head .chip{min-height:32px;padding:0 10px;font-size:.82rem}.home-head .sync-badge{order:9;margin-left:auto}.thumb-sm{overflow:hidden}.procure{margin:12px 0;border-left:3px solid var(--warn, #e0a030)}.procure h2{margin:0 0 4px;font-size:1rem}.procure-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}.procure-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;padding:8px 0;border-top:1px solid var(--line, rgba(127,127,127,.2))}.procure-body{display:grid;gap:2px;min-width:0;flex:1 1 220px}.procure-actions{display:flex;gap:6px;flex-wrap:wrap}.procure-row.is-arrived .procure-body strong,.procure-row.is-direct .procure-body strong{opacity:.7}
