@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.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:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-cyrillic-ext-800-normal-BZOjs1Xv.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-800-normal-Ca-gJeZY.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:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-cyrillic-800-normal-C7MGvYyJ.woff2) format("woff2"),url(/assets/inter-cyrillic-800-normal-CCHyn08d.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-greek-ext-800-normal-B--PVpEC.woff2) format("woff2"),url(/assets/inter-greek-ext-800-normal-DUe57HfS.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-greek-800-normal-CLIouy3y.woff2) format("woff2"),url(/assets/inter-greek-800-normal-BU00tryP.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:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-vietnamese-800-normal-Cm7tD1pz.woff2) format("woff2"),url(/assets/inter-vietnamese-800-normal-DDlpr_Ee.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:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-latin-ext-800-normal-DZJjya6U.woff2) format("woff2"),url(/assets/inter-latin-ext-800-normal-BOMpwxm3.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:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-latin-800-normal-BYj_oED-.woff2) format("woff2"),url(/assets/inter-latin-800-normal-D1mf63XC.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}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg:#fafafa;--bg2:#ffffff;--surface:#ffffff;--border:#e5e5e5;--border2:#cccccc;--text:#000000;--text2:#555555;--text3:#999999;--primary:#000000;--primary-hover:#1a1a1a;--primary-light:#f5f5f5;--primary-soft:rgba(0,0,0,.05);--on-primary:#ffffff;--success:#0a7a3e;--success-light:#e8f5ed;--warning:#b85c00;--warning-light:#fcefe0;--danger:#c00000;--danger-light:#fde6e6;--font:"Inter",system-ui,-apple-system,sans-serif;--r:10px;--r-sm:6px;--r-lg:12px;--r-xl:16px;--shadow-sm:0 1px 2px rgba(0,0,0,.04);--shadow:0 1px 3px rgba(0,0,0,.06);--shadow-md:0 2px 8px rgba(0,0,0,.06);--shadow-lg:0 4px 16px rgba(0,0,0,.08)}:root[data-theme=dark]{--bg:#141413;--bg2:#0f0f0e;--surface:#1c1c1a;--border:#2e2e2b;--border2:#454540;--text:#fbfbfa;--text2:#d6d5cf;--text3:#9a988e;--primary:#ededea;--primary-hover:#ffffff;--primary-light:#37362f;--primary-soft:rgba(255,255,255,.08);--on-primary:#262624;--success:#46c46f;--success-light:rgba(70,196,111,.14);--warning:#e0954a;--warning-light:rgba(224,149,74,.14);--danger:#f0837e;--danger-light:rgba(240,131,126,.14);--shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow:0 1px 3px rgba(0,0,0,.35);--shadow-md:0 2px 8px rgba(0,0,0,.4);--shadow-lg:0 4px 16px rgba(0,0,0,.5)}html{font-size:15px;-webkit-tap-highlight-color:transparent}body{font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased}button{font-family:var(--font);cursor:pointer}.login-wrap{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg)}.login-box{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:40px 32px}.login-logo{font-size:1.8rem;font-weight:800;color:var(--text);text-align:center;margin-bottom:32px;letter-spacing:-1px}.login-err{background:var(--danger-light);color:var(--danger);font-size:.82rem;font-weight:500;padding:10px 14px;border-radius:var(--r-sm);margin-bottom:16px;text-align:center}.form-group{margin-bottom:16px}.form-label{display:block;font-size:.78rem;font-weight:600;color:var(--text2);margin-bottom:6px}.form-input{width:100%;padding:12px 14px;border:1.5px solid var(--border);border-radius:var(--r-sm);background:var(--bg);font-family:var(--font);font-size:.92rem;color:var(--text);outline:none;transition:all .15s}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:none;border-radius:var(--r-sm);font-size:.88rem;font-weight:600;cursor:pointer;transition:all .15s;text-decoration:none;white-space:nowrap}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-outline{background:transparent;border:1.5px solid var(--border);color:var(--text2)}.btn-outline:hover:not(:disabled){border-color:var(--border2);background:var(--bg)}.btn-ghost{background:transparent;color:var(--text2);padding:8px 12px;font-size:.82rem}.btn-ghost:hover{background:var(--bg);color:var(--text)}.btn-success{background:var(--surface);color:var(--text);border:2px solid var(--text)}.btn-success:hover:not(:disabled){background:var(--text);color:var(--surface)}.btn-danger{background:transparent;color:var(--danger);padding:8px 12px;font-size:.82rem}.btn-danger:hover{background:var(--danger-light)}.btn-danger-solid{background:var(--danger);color:var(--surface)}.btn-danger-solid:hover:not(:disabled){background:#900000}.btn-full{width:100%}.btn-lg{padding:16px 24px;font-size:.95rem;border-radius:var(--r)}.btn-xs{padding:6px 12px;font-size:.75rem;border-radius:var(--r-sm)}.app{min-height:100vh;min-height:100dvh;display:flex;background:var(--bg)}.icon-btn{width:36px;height:36px;border:none;background:none;cursor:pointer;color:var(--text2);display:flex;align-items:center;justify-content:center;border-radius:var(--r-sm);transition:background .15s,color .15s}.icon-btn:hover{background:var(--bg);color:var(--text)}.sidebar{width:220px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;height:100dvh;z-index:100;transition:width .15s ease}.sidebar.collapsed{width:64px}.sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:14px 12px;min-height:60px}.sidebar-brand{display:flex;align-items:center;gap:10px;font-size:1.05rem;font-weight:800;color:var(--text);letter-spacing:-.3px;overflow:hidden;white-space:nowrap}.sidebar.collapsed .sidebar-head{justify-content:center}.sidebar.collapsed .sidebar-brand,.sidebar.collapsed .nav-label{display:none}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:2px;padding:8px;overflow-y:auto}.sidebar-foot{padding:8px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.lang-toggle{display:flex;gap:4px;padding:4px;background:var(--bg);border-radius:8px}.lang-btn{flex:1;padding:6px;font-size:.72rem;font-weight:600;color:var(--text3);background:transparent;border:none;border-radius:6px;cursor:pointer;letter-spacing:.5px}.theme-btn,.theme-pill{display:flex;align-items:center;justify-content:center}.lang-btn.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.lang-pill{width:34px;height:30px;margin:0 auto;font-size:.7rem;font-weight:700;color:var(--text2);background:var(--bg);border:1px solid var(--border);border-radius:6px;cursor:pointer;letter-spacing:.5px}.nav-divider{height:1px;background:var(--border);margin:7px 12px}.sidebar.collapsed .nav-divider{margin:7px 8px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:9px 12px;border:none;background:none;border-radius:var(--r-sm);font:inherit;font-size:.86rem;font-weight:500;color:var(--text2);text-align:left;transition:background .12s,color .12s}.nav-item:hover{background:var(--bg);color:var(--text)}.nav-item.active{background:var(--primary-soft);color:var(--text);font-weight:600;position:relative}.nav-item.active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 2px 2px 0;background:var(--text)}.nav-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:inherit}.nav-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar.collapsed .nav-item{justify-content:center;padding:9px 0}.sidebar.collapsed .nav-item.active:before{display:none}.nav-item-danger{color:var(--text3)}.nav-item-danger:hover{background:var(--danger-light);color:var(--danger)}.mobile-bar{display:none;align-items:center;gap:10px;height:52px;padding:0 12px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50}.mobile-bar-title{font-size:1rem;font-weight:800;color:var(--text);letter-spacing:-.3px}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:99}.main{flex:1;padding:16px;max-width:1100px;width:100%;margin:0 auto;min-width:0}@media (max-width:767px){.app{flex-direction:column}.sidebar{position:fixed;top:0;left:0;height:100vh;height:100dvh;width:260px;transform:translate(-100%);transition:transform .2s ease;box-shadow:0 0 0 1px var(--border)}.sidebar.collapsed{width:260px;transform:translate(-100%)}.app-mobile-open .sidebar{transform:translate(0)}.app-mobile-open .sidebar-backdrop{display:block}.mobile-bar,.sidebar.collapsed .sidebar-brand{display:flex}.sidebar.collapsed .nav-label{display:inline}.sidebar.collapsed .sidebar-toggle{display:flex}.sidebar.collapsed .sidebar-head{justify-content:space-between}.sidebar.collapsed .nav-item{justify-content:flex-start;padding:9px 12px}.sidebar.collapsed .nav-item.active:before{display:block}}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:16px}.stat-card{background:var(--surface);border-radius:var(--r);padding:16px;box-shadow:var(--shadow-sm);border:1px solid var(--border)}.stat-value{font-size:1.4rem;font-weight:700;color:var(--text);line-height:1.2}.stat-label{font-size:.72rem;font-weight:500;color:var(--text3);margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.stat-card.highlight{background:var(--text);border:none}.stat-card.highlight .stat-value{color:var(--surface)}.stat-card.highlight .stat-label{color:var(--surface);opacity:.6}.pkg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-bottom:4px}.pkg-card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--r-lg);padding:20px 20px 18px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-sm);transition:box-shadow .15s,transform .15s}.pkg-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.pkg-tag{align-self:flex-start;font-size:.65rem;font-weight:700;letter-spacing:.7px;padding:5px 10px;border-radius:6px;text-transform:uppercase}.pkg-c0{background:#d8efee;color:#0d6a68}.pkg-c1{background:#fde3c2;color:#9c4a00}.pkg-c2{background:#fbd0cb;color:#9c2424}.pkg-c3{background:#dcd6f4;color:#3b2a85}.pkg-c4{background:#d3ebcb;color:#1f6326}.pkg-c5{background:#fcd5e4;color:#8a2459}:root[data-theme=dark] .pkg-c0{background:#2dd4bf29;color:#6fd0c3}:root[data-theme=dark] .pkg-c1{background:#fb923c29;color:#f0a860}:root[data-theme=dark] .pkg-c2{background:#f8717129;color:#f09090}:root[data-theme=dark] .pkg-c3{background:#a78bfa29;color:#b3a5f5}:root[data-theme=dark] .pkg-c4{background:#4ade8029;color:#8fd99a}:root[data-theme=dark] .pkg-c5{background:#f472b629;color:#f2a3c8}.pkg-price{font-size:1.6rem;font-weight:800;color:var(--text);letter-spacing:-.5px;line-height:1.1;margin-top:-2px}.pkg-attr{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--text2);line-height:1.3}.pkg-attr svg{flex-shrink:0;color:var(--text3)}.pkg-attr strong{color:var(--text);font-weight:600}.pkg-take-btn{margin-top:8px;padding:11px;font-size:.88rem;font-weight:600;width:100%}.pkg-grid-disabled{opacity:.55;filter:saturate(.6);pointer-events:none}.pkg-grid-disabled .pkg-card{box-shadow:none;transform:none}.sell-soldto{margin-bottom:22px}.sell-soldto-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.sell-soldto-label{margin-bottom:0;display:inline-flex;align-items:center;gap:4px}.sell-soldto-required{color:var(--danger);font-weight:700}.sell-presets-search{width:100%;margin-bottom:10px}.sell-presets-scroll{max-height:280px;overflow-y:auto;margin-bottom:12px;-webkit-overflow-scrolling:touch}.sell-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sell-preset{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center;cursor:pointer;padding:11px 12px;min-height:44px;background:var(--surface);color:var(--text);border:1.5px solid var(--border);border-radius:var(--r);font-size:.85rem;font-weight:600;line-height:1.2;transition:background .12s,border-color .12s,color .12s,transform .08s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sell-preset:hover:not(:disabled){border-color:var(--text2);background:var(--bg)}.sell-preset:active:not(:disabled){transform:scale(.97)}.sell-preset.is-active{background:var(--text);color:var(--surface);border-color:var(--text)}.sell-preset:disabled{opacity:.5;cursor:not-allowed}.sell-soldto-hint{margin-top:8px;font-size:.78rem;color:var(--text3);line-height:1.4;display:flex;align-items:center;gap:6px}.sell-soldto-hint:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--danger);flex-shrink:0}.sell-soldto-hint.is-ok{color:var(--text2)}.sell-soldto-hint.is-ok:before{background:#1f8a3a}.sell-soldto-hint.is-cool{color:var(--text2)}.sell-soldto-hint.is-cool:before{background:#c08a00;animation:pulse 1s ease-in-out infinite}@media (min-width:520px){.sell-presets{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:768px){.sell-presets{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.sell-preset{padding:10px 14px;font-size:.82rem;min-height:40px}}@media (min-width:768px){.pkg-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.pkg-card{padding:24px 24px 20px;gap:12px}.pkg-price{font-size:1.9rem}.pkg-attr{font-size:.88rem}.pkg-take-btn{padding:12px;font-size:.92rem}}.card{background:var(--surface);border-radius:var(--r-lg);padding:24px;box-shadow:var(--shadow-sm);border:1px solid var(--border);margin-bottom:16px}.card-list{padding:16px 20px}.card-title{font-size:1.1rem;font-weight:700;color:var(--text);margin-bottom:4px}.card-title-sub{font-size:.75rem;font-weight:500;color:var(--text3)}.card-sub{font-size:.82rem;color:var(--text3);margin-bottom:20px}.card-foot{margin-top:12px;font-size:.75rem;color:var(--text3)}.stat-row{display:grid;gap:8px 16px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border)}.stat-row>:first-child{font-weight:600;color:var(--text)}.stat-row>:not(:first-child){text-align:right}.stat-row.head{padding:10px 0;font-size:.72rem;text-transform:uppercase;letter-spacing:.5px}.stat-row.head>div{font-weight:600;color:var(--text3)}.stat-row-stok{grid-template-columns:minmax(0,1fr) minmax(0,.9fr) 56px 56px minmax(0,1.3fr) 110px}.print-menu-wrap{position:relative;display:inline-block}.print-caret{margin-left:5px;font-size:.65em;opacity:.6}.menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.print-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:41;min-width:150px;display:flex;flex-direction:column;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);box-shadow:var(--shadow-lg)}.print-menu>button{padding:8px 10px;border:none;background:transparent;border-radius:5px;font-size:.8rem;font-weight:600;color:var(--text);text-align:left;white-space:nowrap}.print-menu>button:hover{background:var(--bg)}.note-input{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);font-family:var(--font);font-size:.82rem;color:var(--text);outline:none;text-align:left;transition:border-color .15s}.note-input:focus{border-color:var(--primary)}.note-input::placeholder{color:var(--text3)}.stat-row-hs-today{grid-template-columns:minmax(0,1fr) repeat(6,minmax(56px,72px))}.stat-row-hs-today.head>div{white-space:normal;line-height:1.15}.stat-row-hs-weekly{grid-template-columns:minmax(0,1fr) 60px 110px 110px}.num{font-variant-numeric:tabular-nums;font-weight:500;color:var(--text2)}.num-hl{font-weight:700;color:var(--primary)}.num-muted{font-weight:500;color:var(--text3)}.empty.danger{color:var(--danger)}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:.72rem;font-weight:600;border-radius:20px}.badge-yes{color:var(--success);background:var(--success-light)}.badge-pending{color:var(--warning);background:var(--warning-light)}.badge-failed{color:var(--danger);background:var(--danger-light)}.badge-no{color:var(--text3);background:var(--bg)}.badge-sold{color:var(--primary);background:var(--primary-light)}.badge-generated{color:var(--success);background:var(--success-light)}.voucher-item{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border)}.voucher-item:last-child{border-bottom:none}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;margin-top:6px;border-top:1px solid var(--border)}.pager-num{font-size:.78rem;font-weight:600;color:var(--text2)}.vi-left{display:flex;flex-direction:column;gap:4px}.vi-creds{font-size:.95rem;font-weight:600;color:var(--text);letter-spacing:1px}.vi-info{font-size:.75rem;color:var(--text3)}.vi-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.hotspot-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.hs-live-actions{display:flex;align-items:center;gap:10px}.hs-sort{display:flex;gap:4px;padding:4px;background:var(--bg);border-radius:8px}.hs-sort-btn{padding:5px 12px;font-size:.72rem;font-weight:600;color:var(--text3);background:transparent;border:none;border-radius:6px;cursor:pointer;white-space:nowrap}.hs-sort-btn.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.hotspot-count{font-size:.82rem;font-weight:600;color:var(--text2);background:var(--bg);padding:6px 14px;border-radius:20px;border:1px solid var(--border)}.hotspot-count strong{color:var(--primary)}.hotspot-live{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600;color:var(--success)}.hotspot-live:before{content:"";width:8px;height:8px;background:var(--success);border-radius:50%;animation:pulse 1.5s ease infinite}.hotspot-item{padding:14px 0;border-bottom:1px solid var(--border)}.hotspot-item:last-child{border-bottom:none}.hi-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.hi-user{font-size:.92rem;font-weight:600;color:var(--text)}.hi-uptime{font-size:.75rem;font-weight:500;color:var(--primary);background:var(--primary-light);padding:3px 10px;border-radius:20px}.hi-details{display:flex;flex-wrap:wrap;gap:6px}.hi-tag{font-size:.72rem;color:var(--text3);background:var(--bg);padding:3px 8px;border-radius:4px;border:1px solid var(--border)}.hi-traffic{display:flex;gap:12px;margin-top:6px}.hi-traffic span{font-size:.72rem;color:var(--text2);font-weight:500}.hi-traffic .down{color:var(--primary)}.hi-traffic .up{color:var(--success)}.hi-toggle{margin-left:auto;font-size:.72rem;font-weight:600;padding:3px 10px;border-radius:4px;cursor:pointer;border:1px solid var(--border);background:var(--bg);transition:opacity .2s}.hi-toggle.on{color:var(--danger);border-color:var(--danger)}.hi-toggle.off{color:var(--success);border-color:var(--success)}.hi-toggle:disabled{opacity:.5;cursor:default}.iface-item{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border);gap:12px}.iface-item:last-child{border-bottom:none}.if-left{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.if-name{font-size:.92rem;font-weight:600;color:var(--text);word-break:break-all}.if-meta{font-size:.72rem;color:var(--text3);display:flex;gap:6px;flex-wrap:wrap}.if-meta .if-tag{background:var(--bg);padding:2px 7px;border-radius:4px;border:1px solid var(--border)}.if-traffic{font-size:.72rem;color:var(--text2);margin-top:2px}.if-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot.run{background:var(--success);box-shadow:0 0 0 3px var(--success-light)}.dot.idle{background:var(--text3)}.dot.off{background:var(--danger)}.user-item{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border)}.user-item:last-child{border-bottom:none}.ui-left{display:flex;flex-direction:column;gap:4px}.ui-name{font-size:.92rem;font-weight:600;color:var(--text)}.ui-meta{font-size:.75rem;color:var(--text3)}.ui-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.toggle{position:relative;width:44px;height:24px;border:none;border-radius:12px;cursor:pointer;transition:background .2s;padding:0;flex-shrink:0}.toggle.on{background:var(--success)}.toggle.off{background:var(--border2)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:var(--shadow-sm)}.toggle.on:after{transform:translate(20px)}.badge-active{color:var(--success);background:var(--success-light)}.badge-inactive{color:var(--danger);background:var(--danger-light)}.user-form{display:flex;gap:8px;margin-bottom:16px}.user-form .form-input{flex:1;padding:10px 12px;font-size:.85rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:500;padding:20px;animation:soldIn .2s ease}.modal{background:var(--surface);border-radius:var(--r-lg);max-width:480px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-title{font-size:1rem;font-weight:700;color:var(--text)}.modal-body{padding:16px 20px;overflow-y:auto;flex:1}.modal-foot{display:flex;gap:10px;justify-content:flex-end;padding:14px 20px;border-top:1px solid var(--border)}.modal-foot .btn{min-width:90px}.modal-section-title{font-size:.72rem;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.perm-row{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:.88rem;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none}.perm-row input[type=checkbox]{width:16px;height:16px;cursor:pointer;flex-shrink:0;accent-color:var(--primary)}.perm-pkg-list{margin-top:4px;padding-left:8px;border-left:2px solid var(--border)}.spinner{width:24px;height:24px;border:2.5px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite;margin:40px auto}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.empty{text-align:center;padding:40px 20px;color:var(--text3);font-size:.88rem}.field-hint{font-size:.72rem;color:var(--text3);margin-top:5px;line-height:1.4}.pf-row{display:flex;gap:12px}.pf-row .form-group{margin-bottom:16px}.pf-check{display:flex;align-items:center;gap:8px;font-size:.88rem;font-weight:500;color:var(--text);cursor:pointer}.pf-check input{width:16px;height:16px;cursor:pointer}.settle-wrap{margin-bottom:16px}.settle-wrap-title{font-size:.72rem;font-weight:700;color:var(--text2);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}.settle-summary{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.settle-col{background:var(--surface);padding:14px 16px;display:flex;flex-direction:column;gap:3px}.settle-label{font-size:.7rem;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.4px}.settle-value{font-size:1.2rem;font-weight:700;line-height:1.2}.settle-sub{font-size:.74rem;color:var(--text3)}.settle-unsettled .settle-value{color:var(--danger)}.settle-done .settle-value{color:var(--success)}.settle-toggle{border:1.5px solid var(--border);background:transparent;color:var(--text3);font-weight:600}.settle-toggle:hover:not(:disabled){border-color:var(--success);color:var(--success)}.settle-toggle.is-settled{background:var(--success-light);border-color:var(--success);color:var(--success)}.kasbon-item{border-bottom:1px solid var(--border)}.kasbon-item:last-child{border-bottom:none}.kasbon-head{display:flex;align-items:center;gap:12px;width:100%;padding:14px 2px;background:none;border:none;cursor:pointer;font:inherit;color:inherit;text-align:left}.kasbon-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1rem}.kasbon-who{display:flex;flex-direction:column;gap:2px;min-width:0}.kasbon-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kasbon-meta{font-size:.74rem;color:var(--text3)}.kasbon-amount{margin-left:auto;font-weight:800;font-variant-numeric:tabular-nums;color:var(--danger);white-space:nowrap}.kasbon-caret{color:var(--text3);font-size:.85rem;transition:transform .15s;flex-shrink:0}.kasbon-caret.open{transform:rotate(90deg)}.kasbon-detail{padding:2px 2px 16px 52px;display:flex;flex-direction:column;gap:8px;animation:soldIn .15s ease}.kasbon-v{display:flex;align-items:center;gap:10px;font-size:.82rem}.kasbon-v-info{display:flex;flex-direction:column;gap:1px;min-width:0}.kasbon-v-code{font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:1px}.kasbon-v-meta{font-size:.72rem;color:var(--text3)}.kasbon-v-amount{margin-left:auto;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.kasbon-settle-all{align-self:flex-end;margin-top:6px}@media (max-width:480px){.kasbon-detail{padding-left:2px}}.recap-toggle{width:100%;display:flex;align-items:center;gap:8px;padding:12px 18px;background:transparent;border:none;font-size:.85rem;font-weight:600;color:var(--text2);cursor:pointer;text-align:left}.recap-toggle:hover{background:var(--bg)}.recap-toggle-caret{display:inline-block;width:14px;color:var(--text3);font-size:.85rem}.recap{padding:6px 18px 18px;border-top:1px solid var(--border)}.recap-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0}.recap-presets{display:flex;flex-wrap:wrap;gap:6px}.recap-dates{display:flex;gap:10px;flex-wrap:wrap}.recap-dates label{display:flex;flex-direction:column;gap:2px}.recap-date-label{font-size:.7rem;color:var(--text3);font-weight:600;text-transform:uppercase;letter-spacing:.4px}.recap-dates .form-input{padding:6px 8px;font-size:.82rem}.recap-total{padding:12px 14px;background:var(--bg);border-radius:var(--r-sm);margin-bottom:14px}.recap-total-main{font-size:1rem;font-weight:700;color:var(--text)}.recap-total-sub{font-size:.75rem;color:var(--text3);margin-top:2px}.recap-tables{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width:760px){.recap-tables{grid-template-columns:1fr 1fr}}.recap-table-title{font-size:.72rem;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.recap-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(60px,1fr) 32px auto;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border);font-size:.85rem}.recap-row:last-child{border-bottom:none}.recap-row-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.recap-row-bar{height:6px;background:var(--bg);border-radius:3px;overflow:hidden}.recap-row-bar-fill{height:100%;background:var(--primary);border-radius:3px;transition:width .25s ease}.recap-row-count{font-weight:600;color:var(--text);text-align:right;font-variant-numeric:tabular-nums}.recap-row-revenue{text-align:right;font-size:.78rem;font-variant-numeric:tabular-nums}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:500;padding:20px;animation:soldIn .2s ease}.confirm-box{background:var(--surface);border-radius:var(--r-lg);padding:24px;max-width:380px;width:100%;box-shadow:var(--shadow-lg)}.confirm-title{font-size:1rem;font-weight:700;color:var(--text);margin-bottom:8px}.confirm-message{font-size:.9rem;color:var(--text2);line-height:1.5;margin-bottom:20px;white-space:pre-wrap}.confirm-actions{display:flex;gap:10px;justify-content:flex-end}.confirm-actions .btn{min-width:90px}.toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:var(--text);color:var(--bg);padding:10px 20px;border-radius:var(--r);font-size:.82rem;font-weight:500;box-shadow:var(--shadow-lg);z-index:300;animation:toastIn .3s ease}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) none}}.sold-takeover{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;animation:soldIn .25s ease}@keyframes soldIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}.sold-close{position:absolute;top:16px;right:16px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:none;background:var(--bg);border-radius:50%;color:var(--text2);font-size:1.4rem;cursor:pointer;transition:background .15s}.sold-close:hover{background:var(--border)}.sold-watermark{position:absolute;top:-15%;right:-15%;bottom:-15%;left:-15%;z-index:5;pointer-events:none;overflow:hidden;display:flex;flex-wrap:wrap;align-content:space-around;justify-content:space-around;gap:52px 40px;transform:rotate(-20deg);-webkit-user-select:none;user-select:none}.sold-watermark span{font-size:.85rem;font-weight:700;color:var(--text);opacity:.07;letter-spacing:2px;white-space:nowrap}.sold-close{z-index:6}.sold-inner{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:stretch;gap:18px}.sold-badge{display:inline-flex;align-items:center;gap:8px;align-self:center;background:var(--success-light);color:var(--success);font-size:.82rem;font-weight:700;letter-spacing:1.5px;padding:8px 18px;border-radius:24px}.sold-badge svg{width:18px;height:18px}.sold-sync{padding:12px 14px;border-radius:var(--r);font-size:.85rem;font-weight:500;line-height:1.4;text-align:center}.sold-sync-fail{background:var(--danger-light);color:var(--danger);font-weight:600}.sold-sync-pending{background:var(--warning-light);color:var(--warning)}.sold-cred{background:var(--bg);border:2px solid var(--border);border-radius:var(--r-lg);padding:20px 16px;text-align:center;cursor:pointer;transition:all .15s;width:100%;font:inherit;color:inherit;display:block}.sold-cred:hover{border-color:var(--primary);background:var(--primary-soft)}.sold-cred:active{transform:scale(.98)}.sold-cred-lbl{font-size:.7rem;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:8px}.sold-cred-val{font-size:2rem;font-weight:800;color:var(--text);letter-spacing:4px;font-variant-numeric:tabular-nums;line-height:1.1}.sold-cred-hint{font-size:.7rem;color:var(--primary);margin-top:8px;font-weight:500}.sold-meta{text-align:center;font-size:.92rem;color:var(--text2);font-weight:500}.sold-brand{text-align:center;font-size:.7rem;font-weight:700;color:var(--text3);letter-spacing:3px;text-transform:uppercase}.sold-actions{display:flex;gap:10px;margin-top:8px}.sold-actions .btn{flex:1}.sold-cooldown{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:6px;padding:8px 12px;border-radius:var(--r-sm);font-size:.78rem;font-weight:600}.sold-cooldown.is-active{background:#fff4d6;color:#7a5400}.sold-cooldown.is-done{background:#e3f5e6;color:#1f6326}.sold-cooldown-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:currentColor}.sold-cooldown.is-active .sold-cooldown-dot{animation:pulse 1s ease-in-out infinite}@media (max-width:480px){.stats-grid{grid-template-columns:repeat(2,1fr)}.main{padding:12px}.sold-cred-val{font-size:1.6rem;letter-spacing:3px}.card-list{padding:14px}.stat-row{gap:6px 10px}.stat-row-hs-today{grid-template-columns:minmax(58px,1.5fr) repeat(6,minmax(30px,1fr));gap:6px 4px;font-size:.8rem}.stat-row-hs-today.head{font-size:.62rem}.stat-row-hs-weekly{grid-template-columns:minmax(0,1fr) 40px 70px 76px}}@media (max-width:767px){.stats-grid .stat-card.highlight{grid-column:span 2}}.m-label{display:none}@media (max-width:640px){.stat-row-stok.head{display:none}.stat-row-stok{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"batch sisa" "profile laku" "note note" "print print";gap:4px 14px;padding:14px 0}.stat-row-stok>:nth-child(1){grid-area:batch;overflow-wrap:anywhere}.stat-row-stok>:nth-child(2){grid-area:profile;text-align:left;overflow-wrap:anywhere}.stat-row-stok>:nth-child(3){grid-area:sisa;white-space:nowrap}.stat-row-stok>:nth-child(4){grid-area:laku;white-space:nowrap}.stat-row-stok>:nth-child(5){grid-area:note;margin-top:6px}.stat-row-stok>:nth-child(6){grid-area:print;text-align:left}.stat-row-stok .m-label{display:inline;font-size:.68rem;font-weight:600;color:var(--text3);text-transform:uppercase;letter-spacing:.4px;margin-right:6px}}.gen-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0 20px}.gen-row-4{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.gen-pkg{display:flex;flex-direction:column;gap:3px;min-height:54px;white-space:normal}.gen-pkg-name{font-size:.85rem;font-weight:700;line-height:1.2}.gen-pkg-meta{font-size:.72rem;font-weight:500;opacity:.65}.seg{display:flex;flex-wrap:wrap;gap:4px;padding:4px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r-sm)}.seg-btn{flex:1 0 auto;min-width:max-content;padding:8px 10px;border:none;border-radius:5px;background:transparent;font-size:.8rem;font-weight:600;color:var(--text3);white-space:nowrap;transition:background .12s,color .12s}.seg-btn:hover{color:var(--text)}.seg-btn.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.seg-mono .seg-btn{font-family:ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.3px}.gen-server-btn{display:flex;flex-direction:column;align-items:center;gap:1px;padding:6px 12px}.gen-server-dns{font-size:.68rem;font-weight:500;opacity:.6}.gen-adv{margin:4px 0 20px}.gen-adv summary{cursor:pointer;font-size:.8rem;font-weight:600;color:var(--text3);padding:6px 0;-webkit-user-select:none;user-select:none;list-style-position:inside}.gen-adv summary:hover{color:var(--text)}.gen-adv[open] summary{margin-bottom:10px}.gen-submit-btn{width:100%}.gen-progress{height:6px;background:var(--bg);border:1px solid var(--border);border-radius:99px;overflow:hidden;margin-bottom:10px}.gen-progress-bar{height:100%;background:var(--text);border-radius:99px;transition:width .5s ease;min-width:6px}.gen-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.gen-badge{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:99px;background:var(--success-light);color:var(--success);font-size:.75rem;font-weight:700;vertical-align:2px}.gen-batch-code{font-family:ui-monospace,SF Mono,Menlo,monospace;color:var(--text2)}.gen-failed{color:var(--danger);font-weight:600}.gen-print-btns{display:flex;gap:6px;flex-wrap:wrap}.gen-vouchers{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.gen-voucher-chip{display:flex;flex-direction:column;align-items:center;gap:1px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.85rem;font-weight:600;padding:8px 6px;text-align:center;border:1.5px dashed var(--border2);border-radius:var(--r-sm);background:var(--bg)}.gen-voucher-pass{font-size:.72rem;font-weight:500;color:var(--text3)}@media (max-width:520px){.gen-print-btns{width:100%}.gen-print-btns .btn{flex:1}}@media (min-width:768px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media print{.sidebar,.mobile-bar,.sidebar-backdrop,.toast{display:none!important}.main>.card{display:none!important}.main>.stats-grid{display:none!important}.main>.empty{display:none!important}.no-print,.no-print *{display:none!important}.sold-takeover{position:static!important;inset:auto!important;padding:0!important;background:#fff!important;display:block!important;min-height:0!important;animation:none!important}.sold-inner{max-width:100%!important;width:100%!important;padding:0!important;gap:8px!important}.sold-cred{border:2px solid #000!important;background:#fff!important;page-break-inside:avoid;padding:12px!important}.sold-cred-lbl,.sold-cred-val,.sold-brand{letter-spacing:normal!important}.sold-cred-val{font-size:1.4rem!important;margin:0!important}.sold-watermark{display:none!important}body{background:#fff!important;margin:0!important}html,body{height:auto!important}@page{size:A6 portrait;margin:6mm}}
