:root{--highlight:#625fff;--highlight-light:#8d8aff;--highlight-dark:#4a47d6;--brand-dark:#221b63;--brand-red:#c00;--brand-red-light:#f44;--card-bg:#ffffff0d;--card-radius:14px;--page-bg:#0d0a2a;--surface:#141c36;--text:#fff;--text-muted:#ffffff80;--border:#ffffff14;--input-bg:#ffffff0f;--header-bg:#0d0a2af0;--sheet-overlay:#000000a6;--header-h:55px;--footer-h:65px;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px)}:root[data-theme=claro]{--highlight-light:#4a47d6;--card-bg:#625fff0f;--page-bg:#f2f2f8;--surface:#fff;--text:#1b1733;--text-muted:#6b6880;--border:#e3e1f5;--input-bg:#625fff0d;--header-bg:#ffffffeb;--sheet-overlay:#14123873}*,:before,:after{box-sizing:border-box;margin:0}html,body,#app{height:100%}html{background:var(--page-bg)}body{background:var(--page-bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Roboto,-apple-system,sans-serif}.page-content{-webkit-overflow-scrolling:touch;overflow-y:auto}.card-style{background:var(--card-bg);border-radius:var(--card-radius);margin-bottom:10px;overflow:hidden}.content{padding:16px}.input-style{background:var(--input-bg);border-radius:10px;position:relative;overflow:hidden}.input-style input,.input-style select,.input-style textarea{width:100%;color:var(--text);-webkit-appearance:none;background:0 0;border:none;outline:none;padding:22px 16px 8px;font-family:inherit;font-size:15px}.input-style label{letter-spacing:.5px;pointer-events:none;opacity:.7;font-size:10px;font-weight:700;position:absolute;top:8px;left:16px}.input-style em{background:var(--highlight);height:2px;transition:transform .2s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.input-style:focus-within em{transform:scaleX(1)}.input-style.has-borders{border:1px solid var(--border)}.btn{cursor:pointer;border:none;justify-content:center;align-items:center;font-family:inherit;text-decoration:none;transition:opacity .2s,transform .1s;display:inline-flex}.btn:active{opacity:.85;transform:scale(.97)}.btn-full{width:100%}.btn-m{border-radius:10px;height:48px;font-size:13px}.bg-highlight{background:var(--highlight);color:var(--brand-dark);font-weight:700}.bg-highlight-red{background:var(--brand-red);color:#fff}.bg-fade-dark{color:#ffffffb3;background:#ffffff14}.btn[disabled]{opacity:.4;pointer-events:none}.opacity-50{opacity:.5!important}.opacity-70{opacity:.7!important}.text-center{text-align:center}.d-flex{display:flex!important}.flex-column{flex-direction:column}.align-items-center{align-items:center}.justify-content-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.mb-2{margin-bottom:8px!important}.mb-3{margin-bottom:12px!important}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.spinner-border{border:3px solid #ffffff26;border-top-color:var(--highlight);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.menu-hider{background:var(--sheet-overlay);z-index:190;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}:root{--s-bg:#0d0a2a;--s-card:#221b63;--s-card2:#2c2380;--s-input:#1f2a4d;--s-line:#ffffff14;--s-text:#fff;--s-muted:#ffffff8c;--s-y:#625fff;--s-r:#c00;--s-g:#2ecc71;--s-o:#ff9f43;--s-b:#4da3ff;--s-overlay:#000000a6;--s-chip:#ffffff1a;--s-placeholder:#ffffff4d}:root[data-theme=claro]{--s-bg:#f2f2f8;--s-card:#fff;--s-card2:#f5f4fb;--s-input:#f5f4fb;--s-line:#e3e1f5;--s-text:#1b1733;--s-muted:#6b6880;--s-g:#1f8b4c;--s-o:#c97416;--s-b:#1d6fd1;--s-overlay:#1b173373;--s-chip:#1b173312;--s-placeholder:#1b173359}.pg{width:100%;padding:14px 16px calc(40px + env(safe-area-inset-bottom,0px))}.s-h{margin:4px 0 2px;font-size:20px;font-weight:800}.s-h2{letter-spacing:1px;text-transform:uppercase;color:var(--s-muted);margin:18px 0 8px;font-size:13px;font-weight:800}.s-sub{color:var(--s-muted);margin:0 0 12px;font-size:12px}.s-muted{color:var(--s-muted)}.s-small{font-size:12px}.s-xs{font-size:11px}.s-b{font-weight:700}.s-center{text-align:center}.s-mt{margin-top:12px}.s-mb{margin-bottom:12px}.s-mt2{margin-top:20px}.s-card{background:var(--s-card);border:1px solid var(--s-line);border-radius:14px;margin-bottom:10px;padding:14px}.s-card.click{cursor:pointer;transition:transform .1s}.s-card.click:active{transform:scale(.985)}.s-card.crit{border-left:3px solid var(--s-r)}.s-card.warn{border-left:3px solid var(--s-o)}.s-card.ok{border-left:3px solid var(--s-g)}.s-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.s-row.start{align-items:flex-start}.s-wrap{flex-wrap:wrap}.s-gap{gap:8px}.s-grow{flex:1;min-width:0}.s-grid2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.s-grid3{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.s-grid4{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}@media (width>=560px){.s-grid4{grid-template-columns:repeat(4,1fr)}}@media (width>=720px){.s-grid3{grid-template-columns:repeat(3,1fr)}.s-cols{grid-template-columns:1fr 1fr;align-items:start;gap:12px;display:grid}}.s-kpi{background:var(--s-card);border:1px solid var(--s-line);text-align:center;border-radius:14px;padding:12px}.s-kpi b{font-size:24px;font-weight:900;line-height:1.1;display:block}.s-kpi span{letter-spacing:.8px;text-transform:uppercase;color:var(--s-muted);font-size:10px}.s-kpi.y b{color:var(--s-y)}.s-kpi.r b{color:#ff5b5b}.s-kpi.g b{color:var(--s-g)}.s-kpi.o b{color:var(--s-o)}.s-chip{background:var(--s-chip);color:var(--s-text);white-space:nowrap;border-radius:20px;align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.s-chip.y{color:var(--s-y);background:#625fff2e}.s-chip.g{color:var(--s-g);background:#2ecc712e}.s-chip.r{color:#ff6b6b;background:#cc000040}.s-chip.o{color:var(--s-o);background:#ff9f4333}.s-chip.b{color:var(--s-b);background:#4da3ff2e}.s-btn{border:1px solid var(--s-line);background:var(--s-card2);min-height:44px;color:var(--s-text);font:inherit;letter-spacing:.5px;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.s-btn:active{transform:scale(.97)}.s-btn.primary{background:var(--s-y);color:var(--brand-dark);border-color:var(--s-y)}.s-btn.danger{color:#ff6b6b;background:#c003;border-color:#c006}.s-btn.ghost{background:0 0}.s-btn.sm{border-radius:9px;min-height:34px;padding:0 12px;font-size:12px}.s-btn.block{width:100%}.s-btn[disabled]{opacity:.5;pointer-events:none}.s-addbar{width:100%;color:var(--s-y);font:inherit;cursor:pointer;text-align:left;background:#625fff1a;border:1px solid #625fff40;border-radius:10px;align-items:center;gap:10px;margin-bottom:10px;padding:13px 16px;font-size:13px;font-weight:700;display:flex}.s-addbar:hover{background:#625fff29}.s-addbar i.plus{font-size:13px}.s-addbar .chev{opacity:.7;margin-left:auto;transition:transform .15s}.s-addbar.open .chev{transform:rotate(180deg)}.s-field{margin-bottom:12px;display:block}.s-label{letter-spacing:1px;text-transform:uppercase;color:var(--s-muted);margin-bottom:5px;font-size:10px;font-weight:800;display:block}.s-in,.s-sel,.s-ta{background:var(--s-input);border:1.5px solid var(--s-line);width:100%;color:var(--s-text);font:inherit;appearance:none;border-radius:10px;outline:none;padding:11px 13px;font-size:15px}.s-in:focus,.s-sel:focus,.s-ta:focus{border-color:var(--s-y)}.s-sel{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8'><path d='M1 1l5 5 5-5' stroke='%23aaa' fill='none' stroke-width='2'/></svg>");background-position:right 13px center;background-repeat:no-repeat;padding-right:34px}.s-sel option{background:var(--s-input);color:var(--s-text)}.s-ta{resize:vertical;min-height:80px}.s-in::placeholder,.s-ta::placeholder{color:var(--s-placeholder)}.s-hint{color:var(--s-muted);margin-top:4px;font-size:11px}.s-err{color:#ff8a8a;background:#cc000026;border:1px solid #ff444459;border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:13px}.s-okmsg{color:#7be3a6;background:#2ecc711f;border:1px solid #2ecc7159;border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:13px}.s-tabs{scrollbar-width:none;gap:6px;margin-bottom:12px;padding-bottom:4px;display:flex;overflow-x:auto}.s-tabs::-webkit-scrollbar{display:none}.s-tab{background:var(--s-card);border:1px solid var(--s-line);color:var(--s-muted);font:inherit;cursor:pointer;border-radius:20px;flex:none;padding:8px 14px;font-size:12px;font-weight:700}.s-tab.on{background:var(--s-y);color:var(--brand-dark);border-color:var(--s-y)}.s-empty{text-align:center;color:var(--s-muted);padding:36px 12px}.s-empty i{opacity:.5;margin-bottom:10px;font-size:34px;display:block}.s-spin{border:3px solid var(--s-line);border-top-color:var(--s-y);border-radius:50%;width:26px;height:26px;margin:30px auto;animation:.8s linear infinite s-rot;display:block}@keyframes s-rot{to{transform:rotate(360deg)}}.s-table{border-collapse:collapse;width:100%;font-size:13px}.s-table th{text-align:left;letter-spacing:.8px;text-transform:uppercase;color:var(--s-muted);border-bottom:1px solid var(--s-line);padding:6px 8px;font-size:10px}.s-table td{border-bottom:1px solid var(--s-line);vertical-align:top;padding:9px 8px}.s-scroll{overflow-x:auto}.s-sheet-bg{background:var(--s-overlay);z-index:10000;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.s-sheet{background:var(--s-card);overscroll-behavior:contain;width:100%;max-width:640px;max-height:90vh;padding:18px 16px calc(26px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--s-line);border-radius:20px 20px 0 0;overflow-y:auto}.s-sheet h3{margin:0 0 12px;font-size:17px;font-weight:800}@media (width>=720px){.s-sheet-bg{align-items:center;padding:16px}.s-sheet{border:1px solid var(--s-line);border-radius:16px;max-height:88vh}}.s-sheet>.s-btn.block:last-child{box-shadow:0 -10px 14px var(--s-card);position:sticky;bottom:-8px}.s-link{background:var(--s-card);border:1px solid var(--s-line);color:var(--s-text);border-radius:14px;align-items:center;gap:12px;margin-bottom:8px;padding:14px;text-decoration:none;display:flex}.s-link i.ic{width:34px;height:34px;color:var(--s-y);background:#625fff26;border-radius:10px;justify-content:center;align-items:center;display:flex}.s-link .go{opacity:.35;margin-left:auto}.menu-title{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px;display:flex}.menu-title h1{margin:0;font-size:18px;font-weight:700}.close-menu{color:var(--s-muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:18px}
