:root{--bg:#0b0e13;--panel:#131822;--panel2:#181f2b;--line:#263143;--line2:#1d2634;--txt:#e9eef6;--mut:#8d99ad;--volt:#5abba4;--volt2:color-mix(in srgb,var(--volt) 55%,#000);--volt-ink:#0a2620;--logo-pulse:#00e5ff;--amber:#ffb648;--red:#ff5d5d;--blue:#5ab0ff;--info:#5ab0ff;--purp:#9a7bff;--green:#4ade80;--gold:#ffd76a;--fd:"Unbounded",sans-serif;--fb:"Manrope",sans-serif}.light-theme,body.light-theme,html.light-theme{--bg:#f4f6f9;--panel:#fff;--panel2:#f8f9fb;--line:#e1e4ea;--line2:#eceef2;--txt:#1b2330;--mut:#67717f;--info:#2b7fd6;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}#__nuxt,body,html{min-height:100%}body,html{background:var(--bg);color:var(--txt);color-scheme:dark;font-family:var(--fb);font-size:14px;line-height:1.5;transition:background .3s,color .3s}a{text-decoration:none}a,button{color:inherit}button{background:none;border:none;cursor:pointer;font-family:inherit}button:disabled{cursor:not-allowed;opacity:.5;transform:none!important}::-moz-selection{background:var(--volt);color:var(--volt-ink)}::selection{background:var(--volt);color:var(--volt-ink)}.shell{display:grid;grid-template-columns:236px 1fr;min-height:100vh}.shell,.side{background:var(--panel);transition:background .3s}.side{border-right:1px solid var(--line2);display:flex;flex-direction:column;height:100vh;padding:18px 14px;position:sticky;top:0}.gbrand{align-items:center;border-bottom:1px solid var(--line2);display:flex;flex-shrink:0;gap:11px;margin-bottom:12px;padding:2px 8px 16px}.glogo{background:var(--volt);border-radius:12px;color:var(--volt-ink);display:grid;flex-shrink:0;font-size:14px;font-weight:800;height:40px;overflow:hidden;place-items:center;transition:background .3s;width:40px}.glogo img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.glogo:has(.voltro-badge){background:transparent;display:block;padding:0}.glogo .voltro-badge{height:100%;width:100%}.vm{display:block}.vm-m{fill:none;stroke:var(--txt);stroke-linecap:round;stroke-linejoin:round;stroke-width:10}.vm-a{fill:none;stroke:var(--logo-pulse);stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.voltro-badge{background:transparent;border-radius:12px;display:grid;flex-shrink:0;height:40px;padding:2px;place-items:center;width:40px}.voltro-badge .vm{height:100%;width:100%}.voltro-badge-sm{background:transparent;border-radius:6px;display:inline-grid;height:22px;padding:1px;place-items:center;vertical-align:middle;width:22px}.voltro-badge-sm .vm{height:100%;width:100%}.logobox .vm{height:36px;width:36px}.logobox .vm-m{stroke:var(--volt-ink)}.logobox .vm-a{stroke:var(--logo-pulse)}.voltro-logo-full{display:block;flex-shrink:0;line-height:0;max-width:100%;width:200px}.voltro-logo-full .vm-full{display:block;height:auto;width:100%}.vm-word{fill:var(--txt);font-weight:700;letter-spacing:-1px}.gbrand b,.vm-word{font-family:var(--fd)}.gbrand b{display:block;font-size:14px}.gbrand small{color:var(--mut);font-size:10px}.nav{display:flex;flex:1;flex-direction:column;gap:3px;overflow-y:auto}.navlbl{color:var(--mut);font-size:9.5px;font-weight:800;letter-spacing:.13em;opacity:.6;padding:12px 13px 4px;text-transform:uppercase}.nav a,.nav button{align-items:center;border-radius:10px;color:var(--mut);display:flex;font-size:12.5px;font-weight:600;gap:11px;padding:9px 13px;position:relative;transition:.18s}.nav a svg,.nav button svg{fill:none;flex-shrink:0;height:16px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9;width:16px}.nav a:hover,.nav button:hover{background:color-mix(in srgb,var(--txt) 5%,transparent);color:var(--txt)}.nav a.on,.nav button.on{background:color-mix(in srgb,var(--volt) 13%,transparent);color:var(--volt)}.nav .cnt{background:var(--line);border-radius:20px;color:var(--mut);font-size:10.5px;font-weight:800;margin-left:auto;padding:2px 8px}.nav a.on .cnt,.nav button.on .cnt{background:var(--volt);color:var(--volt-ink)}.usr{align-items:center;border-top:1px solid var(--line2);display:flex;flex-shrink:0;gap:11px;margin-top:auto;padding:12px 8px}.usr .usr-meta{flex:1;min-width:0}.usr .logout{color:var(--mut);display:block;font-size:11px;font-weight:700;margin-top:2px}.usr .logout:hover{color:var(--volt)}.ava{background:color-mix(in srgb,var(--volt) 20%,transparent);border-radius:11px;color:var(--volt);display:grid;flex-shrink:0;font-weight:800;height:38px;place-items:center;width:38px}.usr b{font-size:13px}.usr b,.usr span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.usr span{color:var(--mut);font-size:11px}.main{display:flex;flex-direction:column;min-height:100vh;min-width:0}.topbar{align-items:center;border-bottom:1px solid var(--line2);display:flex;gap:14px;padding:18px 26px}.topbar h1{font-family:var(--fd);font-size:19px;font-weight:700}.theme-toggle{align-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:10px;display:flex;gap:9px;margin-left:auto;padding:8px 14px}.theme-toggle:hover{border-color:var(--volt)}.theme-toggle span{color:var(--mut);font-size:12px;font-weight:700}.iconb{background:var(--panel2);border:1px solid var(--line);border-radius:10px;display:grid;height:40px;place-items:center;position:relative;width:40px}.iconb svg{fill:none;height:17px;stroke:var(--mut);stroke-linecap:round;stroke-width:2;width:17px}.iconb .dot{background:var(--red);border-radius:50%;height:7px;position:absolute;right:9px;top:9px;width:7px}.btn{align-items:center;border-radius:10px;display:inline-flex;font-size:13px;font-weight:800;gap:8px;padding:10px 18px;transition:.2s}.btn-v{background:var(--volt);color:var(--volt-ink)}.btn-v:hover:not(:disabled){transform:translateY(-2px)}.btn-g{background:var(--panel2);border:1px solid var(--line);color:var(--txt)}.btn-g:hover:not(:disabled){border-color:var(--volt);color:var(--volt)}.btn--info{background:color-mix(in srgb,var(--info) 16%,var(--panel2));border:1px solid color-mix(in srgb,var(--info) 40%,var(--line));color:var(--info)}.btn--info:hover:not(:disabled){background:color-mix(in srgb,var(--info) 24%,var(--panel2));border-color:var(--info);transform:translateY(-2px)}.btn--ok{background:var(--green);color:#052e16}.btn--ok:hover:not(:disabled){transform:translateY(-2px)}.btn.r{border-color:var(--red);color:var(--red)}.icon-btn{align-items:center;border-radius:8px;display:inline-flex;font-size:15px;height:32px;justify-content:center;line-height:1;padding:0;transition:.2s;width:32px}.icon-btn-v{background:var(--volt);border:none;color:var(--volt-ink)}.icon-btn-v:hover:not(:disabled){transform:translateY(-2px)}.icon-btn-g{background:var(--panel2);border:1px solid var(--line);color:var(--txt)}.icon-btn-g:hover:not(:disabled){border-color:var(--volt);color:var(--volt)}.icon-btn-r,.icon-btn-r:hover:not(:disabled){border-color:var(--red);color:var(--red)}.icon-btn:disabled{cursor:not-allowed;opacity:.45}.content{flex:1;min-width:0;overflow-y:auto;padding:22px 26px}.card{background:var(--panel2);border:1px solid var(--line2);border-radius:16px;overflow-x:auto;overflow-y:visible;transition:.25s,background .3s}.card.hov:hover{box-shadow:0 14px 34px #00000040;transform:translateY(-3px)}.pn{padding:20px}.pn h3{font-size:14.5px;font-weight:800;margin-bottom:4px}.pn .sub{color:var(--mut);font-size:12px}.kpi,.pn .sub{margin-bottom:16px}.kpi{display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}.kcard{overflow:hidden;padding:18px 20px;position:relative}.kcard .lb{color:var(--mut);font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.kcard .val{font-family:var(--fd);font-size:24px;font-weight:700;margin:9px 0 4px}.kcard .val small{color:var(--mut);font-size:15px}.delta{color:var(--mut);font-size:12px;font-weight:700}.delta.up{color:var(--green)}.delta.dn{color:var(--red)}.kcard svg.spark{bottom:14px;height:34px;position:absolute;right:16px;width:88px}.spark path{fill:none;stroke:var(--volt);stroke-linecap:round;stroke-width:2}.grid2{align-items:start;grid-template-columns:2fr 1fr;margin-bottom:16px}.grid2,.grid3{display:grid;gap:14px}.grid3{grid-template-columns:1.35fr 1fr}.bars{align-items:flex-end;display:flex;gap:7px;height:180px;padding-top:10px}.bar{background:linear-gradient(180deg,var(--volt),color-mix(in srgb,var(--volt) 30%,transparent));border-radius:6px 6px 2px 2px;cursor:pointer;flex:1;min-height:4px;position:relative}.bar:hover{filter:brightness(1.15)}.bar i{color:var(--volt);font-size:10px;font-style:normal;font-weight:800;left:50%;opacity:0;position:absolute;top:-22px;transform:translate(-50%);white-space:nowrap}.bar:hover i{opacity:1}.blabels{display:flex;gap:7px;margin-top:8px}.blabels span{color:var(--mut);flex:1;font-size:10px;text-align:center}.donut-w{align-items:flex-start;display:flex;gap:20px}.donut-w svg{display:block;flex-shrink:0;height:130px;width:130px}.donut-w circle{fill:none;stroke-width:15}.legend{display:flex;flex:1;flex-direction:column;gap:8px}.legend div{align-items:center;display:flex;font-size:12.5px;font-weight:600;gap:9px}.legend i{border-radius:3px;display:inline-block;height:9px;width:9px}.legend b{font-weight:800;margin-left:auto}.feed{display:flex;flex-direction:column;gap:2px}.fitem{border-radius:10px;display:flex;gap:12px;padding:10px 12px}.fitem:hover{background:color-mix(in srgb,var(--txt) 4%,transparent)}.fitem .fi{background:var(--line);border-radius:9px;display:grid;flex-shrink:0;font-size:14px;height:32px;place-items:center;width:32px}.fitem p{font-size:12.5px;font-weight:600}.fitem span{color:var(--mut);font-size:11px}.empty{color:var(--mut);font-size:13px;padding:28px 16px;text-align:center}.tbl{border-collapse:collapse;width:100%}.tbl th{border-bottom:1px solid var(--line);color:var(--mut);font-size:10.5px;font-weight:800;letter-spacing:.08em;padding:9px 11px;text-align:left;text-transform:uppercase}.tbl td{border-bottom:1px solid var(--line2);font-size:12.5px;padding:11px}.tbl tbody tr:hover{background:color-mix(in srgb,var(--volt) 4%,transparent)}.tbl tbody tr.click{cursor:pointer}.tbl .nm{font-weight:800}.tbl .mt{font-size:11px}.mini,.tbl .mt{color:var(--mut)}.mini{border:1px solid var(--line);border-radius:8px;font-size:11.5px;font-weight:700;margin:1px;padding:5px 10px}.mini:hover{border-color:var(--volt);color:var(--volt)}.bat{background:var(--line);display:inline-block;height:7px;overflow:hidden;vertical-align:middle;width:64px}.bat,.bat i{border-radius:6px}.bat i{display:block;height:100%}.bat.hi i{background:var(--volt)}.bat.md i{background:var(--amber)}.bat.lo i{background:var(--red)}.bnum{color:var(--mut);font-size:11.5px;font-weight:700;margin-left:7px}.bdg{align-items:center;border-radius:20px;display:inline-flex;font-size:11px;font-weight:800;gap:6px;padding:4px 11px;white-space:nowrap}.bdg:before{background:currentColor;border-radius:50%;content:"";height:5px;width:5px}.bdg.ok{background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green)}.bdg.wrn{background:color-mix(in srgb,var(--amber) 14%,transparent);color:var(--amber)}.bdg.bad{background:color-mix(in srgb,var(--red) 14%,transparent);color:var(--red)}.bdg.inf{background:color-mix(in srgb,var(--blue) 14%,transparent);color:var(--blue)}.bdg.pur{background:color-mix(in srgb,var(--purp) 14%,transparent);color:var(--purp)}.bdg.grn{background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green)}.bdg.gld{background:color-mix(in srgb,var(--gold) 14%,transparent);color:var(--gold)}.bdg.gry{background:color-mix(in srgb,var(--mut) 16%,transparent);color:var(--mut)}.bdg.frz{background:color-mix(in srgb,var(--blue) 14%,transparent);color:var(--blue)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.chip{border:1px solid var(--line);border-radius:20px;color:var(--mut);font-size:12.5px;font-weight:700;padding:8px 16px;transition:.2s}.chip:hover{color:var(--txt)}.chip.on{background:var(--volt);border-color:var(--volt);color:var(--volt-ink)}.acc{border:1px solid var(--line);border-radius:8px;color:var(--mut);font-size:10.5px;font-weight:700;margin:2px 3px 2px 0;padding:3px 9px}.acc,.switch{display:inline-block}.switch{flex-shrink:0;height:24px;position:relative;vertical-align:middle;width:44px}.switch input{cursor:pointer;height:100%;margin:0;opacity:0;position:absolute;width:100%;z-index:2}.switch .tr{background:var(--line);border-radius:20px;box-shadow:inset 0 0 0 1px var(--line2);inset:0}.switch .tr,.switch .tr:after{position:absolute;transition:.2s}.switch .tr:after{background:#fff;border-radius:50%;box-shadow:0 0 0 1px color-mix(in srgb,var(--mut) 35%,transparent),0 1px 2px color-mix(in srgb,#000 25%,transparent);content:"";height:18px;left:3px;top:3px;width:18px}.switch input:checked+.tr{background:var(--volt);box-shadow:none}.switch input:checked+.tr:after{background:var(--volt-ink);box-shadow:none;left:23px}.field{margin-bottom:12px}.field label{color:var(--mut);display:block;font-size:11px;font-weight:800;letter-spacing:.06em;margin-bottom:6px;text-transform:uppercase}.field input,.field select{background:var(--panel);border:1px solid var(--line);border-radius:10px;color:var(--txt);font-family:inherit;font-size:13px;padding:9px 12px;width:100%}.field input:focus,.field select:focus{border-color:var(--volt);outline:none}.field input:disabled,.field select:disabled{cursor:not-allowed;opacity:.6}.tin{background:var(--panel);border:1px solid var(--line);border-radius:9px;color:var(--txt);font-size:13px;font-weight:700;padding:8px 12px;width:100%}.tin:disabled{cursor:not-allowed;opacity:.55}.loyrow{align-items:center;display:grid;gap:8px;grid-template-columns:1fr 1fr 1fr auto;margin-bottom:8px}.loyrow.grades{grid-template-columns:1.6fr 1fr 1fr auto}.loyrow .mt{font-size:11px;letter-spacing:.06em;text-transform:uppercase}.del,.loyrow .mt{color:var(--mut);font-weight:800}.del{align-items:center;background:transparent;border:1px solid var(--line);border-radius:8px;cursor:pointer;display:inline-flex;height:32px;justify-content:center;width:32px}.del:hover:not(:disabled){border-color:var(--red);color:var(--red)}.del:disabled{cursor:not-allowed;opacity:.45}.swatches{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.sw{border:2px solid transparent;border-radius:9px;cursor:pointer;height:30px;padding:0;transition:.18s;width:30px}.sw:hover{transform:translateY(-2px)}.sw.on{border-color:var(--txt);box-shadow:0 0 0 2px var(--line)}.brandrow{align-items:center;display:flex;gap:14px;margin-bottom:14px}.logobox{background:var(--volt);border-radius:16px;color:var(--volt-ink);display:grid;flex-shrink:0;font-size:18px;font-weight:800;height:64px;overflow:hidden;place-items:center;transition:background .3s;width:64px}.logobox img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.grid2.loyalty{grid-template-columns:1fr 1fr}.grid2.profile{grid-template-columns:1fr 1.35fr}.note{align-items:center;background:color-mix(in srgb,var(--volt) 9%,transparent);border:1px solid color-mix(in srgb,var(--volt) 28%,transparent);border-radius:13px;color:color-mix(in srgb,var(--volt) 78%,var(--txt));display:flex;font-size:12px;font-weight:700;gap:9px;margin:14px 0 0;padding:11px 14px}.ovl{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#05080cc7;display:grid;inset:0;place-items:center;position:fixed;z-index:100}.dcard{background:var(--panel);border:1px solid var(--line);border-radius:18px;max-height:92vh;max-width:94vw;overflow-y:auto;padding:28px 32px;position:relative;width:660px}.dcard--contract{display:flex;flex-direction:column;height:min(634px,92vh);max-height:92vh;overflow:hidden;width:871px}.dcard--contract .contract-card-body,.dcard--contract .contract-tab-pane{display:flex;flex:1;flex-direction:column;min-height:0}.dcard--contract .contract-tab-scroll{flex:1;min-height:0;overflow-y:auto}.dcard h2{font-family:var(--fd);font-size:17px;margin-bottom:4px}.dcard .pm{color:var(--mut);font-size:12px;margin-bottom:18px}.mclose{background:var(--line);border-radius:9px;display:grid;font-weight:800;height:34px;place-items:center;position:absolute;right:14px;top:14px;width:34px;z-index:5}.mclose:hover{background:var(--volt);color:var(--volt-ink)}.ehead{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.ehead h2{margin:0}.igrid{display:grid;gap:12px 20px;grid-template-columns:1fr 1fr;margin-bottom:16px}.ig label{color:var(--mut);display:block;font-size:10px;font-weight:800;letter-spacing:.08em;margin-bottom:3px;text-transform:uppercase}.ig b{color:var(--txt);font-size:13px;font-weight:700}.ig .mt{color:var(--mut);font-size:11px}.ig-link{color:var(--volt);cursor:pointer}.actsbar{border-top:1px solid var(--line2);display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px}.frow{align-items:start;display:grid;gap:11px;grid-template-columns:1fr 1fr}.hist-item{border-bottom:1px solid var(--line2);padding:10px 0}.hist-item:last-child{border-bottom:none}.hist-item b{display:block;font-size:13px}.hist-item span{color:var(--mut);font-size:11px}.tabs{border-bottom:1px solid var(--line2);display:flex;gap:4px;margin-bottom:16px}.tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--mut);cursor:pointer;font-size:12px;font-weight:700;margin-bottom:-1px;padding:8px 14px}.tab.on{border-bottom-color:var(--volt);color:var(--volt)}.combo{align-self:start;position:relative;width:100%}.combo .field{margin-bottom:0}.combo.open .field input{border-bottom-left-radius:0;border-bottom-right-radius:0}.combo-drop{background:var(--panel);border:1px solid var(--line);border-radius:0 0 12px 12px;box-shadow:0 12px 32px #00000059;left:0;margin-top:-1px;max-height:220px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:20}.combo-item{background:none;border:none;color:var(--txt);cursor:pointer;display:block;font-size:12px;padding:10px 12px;text-align:left;width:100%}.combo-item:hover{background:color-mix(in srgb,var(--volt) 8%,transparent)}.combo-item.mut{color:var(--mut);cursor:default}.combo-item.mut:hover{background:none}.act-row{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.tariff-preview{background:color-mix(in srgb,var(--volt) 8%,transparent);border:1px solid color-mix(in srgb,var(--volt) 24%,transparent);border-radius:12px;font-size:12px;margin:12px 0;padding:12px 14px}.tariff-preview b{display:block;font-size:13px;margin-bottom:4px}.tariff-preview .hint{color:var(--mut);font-size:11px;margin-top:6px}.kpi3{display:grid;gap:14px;grid-template-columns:repeat(3,1fr);margin-bottom:16px}@media(max-width:700px){.frow,.igrid{grid-template-columns:1fr}}.toast{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--volt);border-radius:12px;bottom:22px;box-shadow:0 16px 40px #0006;font-size:13px;font-weight:700;max-width:420px;padding:13px 18px;position:fixed;right:22px;transition:opacity .4s;z-index:200}.toast+.toast{bottom:86px}.auth-shell{background:var(--bg);display:grid;min-height:100vh;padding:24px;place-items:center}.auth-card{padding:28px;width:min(420px,100%)}.auth-card-wide{width:min(640px,100%)}.auth-card .gbrand{align-items:flex-start;border:none;flex-direction:column;gap:4px;margin:0 0 22px;padding:0}.auth-card .gbrand .voltro-logo-full{width:200px}.auth-card .gbrand small{font-size:11px;margin-left:2px}.auth-card h1{font-family:var(--fd);font-size:20px;font-weight:700;margin-bottom:6px}.auth-card .sub{color:var(--mut);font-size:13px;margin-bottom:22px}.auth-card .btn{justify-content:center;margin-top:8px;width:100%}.auth-link{color:var(--mut);font-size:13px;margin-top:18px;text-align:center}.auth-link a{color:var(--volt);font-weight:600;text-decoration:none}.auth-link a:hover{text-decoration:underline}@media(max-width:1100px){.kpi{grid-template-columns:repeat(2,1fr)}.clients-layout,.grid2,.grid2.loyalty,.grid2.profile,.grid3{grid-template-columns:1fr}}@media(max-width:800px){.shell{grid-template-columns:1fr}.side{display:none}.kpi{grid-template-columns:1fr}.topbar{flex-wrap:wrap}.theme-toggle{margin-left:0}}.clients-layout{align-items:start;display:grid;gap:14px;grid-template-columns:minmax(240px,280px) 1fr}.clients-layout--full{grid-template-columns:1fr}.grades-panel .grade-row{align-items:center;border-bottom:1px solid var(--line2);display:flex;gap:10px;justify-content:space-between;padding:10px 0}.grades-panel .grade-row:last-of-type{border-bottom:none}.grades-panel .grade-row b{font-size:13px}.grades-panel .grade-row .mt{color:var(--mut);font-size:12px}.tariffs-section{margin-bottom:8px}
