:root{--font:"Plus Jakarta Sans", "Noto Sans Arabic", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"JetBrains Mono", ui-monospace, "Cascadia Mono", monospace;--brand:#6d5dfc;--brand-2:#ec4899;--brand-3:#f59e0b;--brand-grad:linear-gradient(135deg, #6d5dfc 0%, #b04cf0 45%, #ec4899 75%, #f59e0b 100%);--c-power:#7c5cff;--c-power-2:#b36bff;--c-current:#06b6d4;--c-current-2:#3b82f6;--c-volt:#f59e0b;--c-volt-2:#f97316;--c-freq:#10b981;--c-freq-2:#22c55e;--c-cost:#ec4899;--c-cost-2:#f43f5e;--l1:#f43f6e;--l2:#f5a524;--l3:#3b82f6;--ok:#10b981;--warn:#f59e0b;--bad:#ef4444;--info:#3b82f6;--radius:18px;--radius-sm:12px;--radius-xs:8px;--sidebar-w:256px;--ease:cubic-bezier(.2, .8, .2, 1)}:root,[data-theme=light]{--bg:#f4f5fb;--bg-accent:radial-gradient(1200px 600px at 100% -10%, #6d5dfc1a, transparent 60%), radial-gradient(900px 500px at -10% 110%, #ec489914, transparent 60%);--surface:#fff;--surface-2:#f7f7fc;--surface-3:#eeeff8;--border:#e6e7f1;--text:#13152b;--text-2:#464a66;--muted:#7c809b;--shadow:0 1px 2px #1416320a, 0 8px 24px -8px #14163214;--shadow-lg:0 24px 60px -20px #281e7840;--grid:#1416320f;--tint:.12;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:#0b0d18;--bg-accent:radial-gradient(1200px 600px at 100% -10%, #6d5dfc2e, transparent 60%), radial-gradient(900px 500px at -10% 110%, #ec48991a, transparent 60%);--surface:#141727;--surface-2:#1a1e31;--surface-3:#22273d;--border:#262b45;--text:#eef0fb;--text-2:#c2c6de;--muted:#8a8fae;--shadow:0 1px 2px #0000004d, 0 10px 30px -10px #00000080;--shadow-lg:0 30px 70px -20px #000000b3;--grid:#ffffff0f;--tint:.18;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);color:var(--text);background:var(--bg-accent), var(--bg);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0;font-size:15px;line-height:1.5;transition:background-color .3s,color .3s}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;line-height:1.2}p{margin:0}::selection{background:#6d5dfc40}.num{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:6px}.shell{min-height:100%;display:flex}.sidebar{width:var(--sidebar-w);background:var(--surface);border-inline-end:1px solid var(--border);z-index:40;flex-direction:column;gap:6px;padding:22px 16px;display:flex;position:fixed;inset-block:0;inset-inline-start:0}.brand{align-items:center;gap:12px;padding:4px 8px 22px;display:flex}.brand-mark{background:var(--brand-grad);color:#fff;background-size:200% 200%;border-radius:13px;place-items:center;width:42px;height:42px;animation:8s infinite gradShift;display:grid;box-shadow:0 10px 24px -8px #b04cf099}.brand-name{letter-spacing:.02em;font-size:19px;font-weight:800}.brand-sub{color:var(--muted);font-size:12px;font-weight:500}.nav-label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);padding:14px 12px 6px;font-size:11px;font-weight:700}.nav-item{--c:var(--brand);color:var(--text-2);transition:background .2s, color .2s, transform .2s var(--ease);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-size:14.5px;font-weight:600;display:flex;position:relative}.nav-item .nav-ico{background:color-mix(in srgb, var(--c) calc(var(--tint) * 100%), transparent);width:34px;height:34px;color:var(--c);transition:transform .3s var(--ease), background .2s, color .2s;border-radius:10px;place-items:center;display:grid}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item:hover .nav-ico{transform:scale(1.08)rotate(-6deg)}.nav-item.active{color:var(--text);background:color-mix(in srgb, var(--c) 10%, var(--surface))}.nav-item.active .nav-ico{background:var(--c);color:#fff;box-shadow:0 8px 18px -6px var(--c)}.nav-item.active:before{content:"";inset-inline-start:-16px;background:var(--c);border-radius:0 4px 4px 0;width:4px;position:absolute;top:10px;bottom:10px}[dir=rtl] .nav-item.active:before{border-radius:4px 0 0 4px}.sidebar-foot{margin-top:auto}.user-card{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;align-items:center;gap:10px;padding:10px;display:flex}.avatar{color:#fff;background:linear-gradient(135deg, var(--c-current), var(--c-power));border-radius:11px;flex:none;place-items:center;width:36px;height:36px;font-size:14px;font-weight:800;display:grid}.user-card .meta{flex:1;min-width:0}.user-card .nm{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.user-card .rl{color:var(--muted);text-transform:capitalize;font-size:12px}.main{min-width:0;flex-direction:column;flex:1;margin-inline-start:var(--sidebar-w);display:flex}.topbar{z-index:30;background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.4);border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);align-items:center;gap:12px;padding:14px 28px;display:flex;position:sticky;top:0}.topbar .title{font-size:20px;font-weight:800}.topbar .spacer{flex:1}.topbar .mobile-brand{display:none}.page{flex-direction:column;gap:22px;width:100%;max-width:1480px;margin:0 auto;padding:26px 28px 40px;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head h1{font-size:26px;font-weight:800}.page-head p{color:var(--muted);margin-top:4px}.bottom-nav{display:none}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;animation:rise .5s var(--ease) both;padding:20px}.card-head{align-items:center;gap:12px;margin-bottom:16px;display:flex}.card-head h3{font-size:16px;font-weight:700}.card-head .sub{color:var(--muted);font-size:13px}.card-head .grow{flex:1;min-width:0}.grid{gap:18px;display:grid}.g-4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.g-main.wide-side{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.stack{flex-direction:column;gap:18px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn{border:1px solid var(--border);background:var(--surface);height:40px;color:var(--text);cursor:pointer;white-space:nowrap;transition:transform .15s var(--ease), box-shadow .2s, background .2s, border-color .2s;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex}.btn:hover{border-color:color-mix(in srgb, var(--brand) 40%, var(--border));box-shadow:0 6px 16px -8px #6d5dfc73}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{background:var(--brand-grad);color:#fff;background-size:200% 200%;border:0;box-shadow:0 10px 22px -10px #b04cf0cc}.btn.primary:hover{animation:3s infinite gradShift}.btn.danger{color:var(--bad)}.btn.danger:hover{background:color-mix(in srgb, var(--bad) 10%, var(--surface));border-color:color-mix(in srgb, var(--bad) 40%, var(--border));box-shadow:none}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-2);box-shadow:none}.btn.sm{border-radius:10px;height:34px;padding:0 12px;font-size:13px}.btn.icon{width:40px;padding:0}.btn.sm.icon{width:34px}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>span{color:var(--text-2);font-size:13px;font-weight:600}.field small{color:var(--muted);font-size:12px}.input,.select{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;width:100%;height:42px;padding:0 14px;transition:border-color .2s,box-shadow .2s,background .2s}textarea.input{resize:vertical;height:auto;min-height:84px;padding:10px 14px}.input:focus,.select:focus{border-color:var(--brand);background:var(--surface);outline:none;box-shadow:0 0 0 4px #6d5dfc26}.input-icon{position:relative}.input-icon>svg{inset-inline-start:13px;color:var(--muted);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.input-icon>.input{padding-inline-start:40px}.seg{background:var(--surface-3);border:1px solid var(--border);scrollbar-width:none;border-radius:13px;gap:2px;max-width:100%;padding:4px;display:inline-flex;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg button{cursor:pointer;height:32px;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:10px;padding:0 14px;font-size:13px;font-weight:600;transition:background .2s,color .2s,box-shadow .2s}.seg button:hover{color:var(--text)}.seg button.on{background:var(--surface);color:var(--text);box-shadow:0 2px 8px -2px #1416322e}.badge{--c:var(--muted);height:26px;color:var(--c);background:color-mix(in srgb, var(--c) calc(var(--tint) * 100%), transparent);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.badge.ok{--c:var(--ok)}.badge.warn{--c:var(--warn)}.badge.bad{--c:var(--bad)}.badge.info{--c:var(--info)}.badge.brand{--c:var(--brand)}.dot{background:currentColor;border-radius:50%;flex:none;width:8px;height:8px;position:relative}.dot.live:after{content:"";border:2px solid;border-radius:50%;animation:1.6s ease-out infinite ping;position:absolute;inset:-4px}.notice{background:color-mix(in srgb, var(--warn) 12%, var(--surface));border:1px solid color-mix(in srgb, var(--warn) 35%, transparent);animation:rise .4s var(--ease) both;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;font-size:13.5px;font-weight:500;display:flex}.notice.brand{background:color-mix(in srgb, var(--brand) 10%, var(--surface));border-color:color-mix(in srgb, var(--brand) 30%, transparent)}.empty{color:var(--muted);text-align:center;place-items:center;gap:10px;padding:42px 16px;display:grid}.table-wrap{border-top:1px solid var(--border);margin:0 -20px -20px;overflow-x:auto}table.tbl{border-collapse:collapse;width:100%;font-size:14px}.tbl th{text-align:start;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--surface-2);white-space:nowrap;padding:12px 20px;font-size:12px;font-weight:700;position:sticky;top:0}.tbl td{border-top:1px solid var(--border);white-space:nowrap;padding:13px 20px}.tbl tbody tr{transition:background .15s}.tbl tbody tr:hover{background:var(--surface-2)}.tbl .r{text-align:end}.scroll-y{max-height:440px;overflow-y:auto}.tile{--c1:var(--brand);--c2:var(--brand-2);color:#fff;background:linear-gradient(135deg, var(--c1), var(--c2));width:46px;height:46px;box-shadow:0 10px 22px -10px var(--c1);border-radius:14px;flex:none;place-items:center;display:grid;position:relative}.tile.sm{border-radius:12px;width:38px;height:38px}.tile.soft{color:var(--c1);background:color-mix(in srgb, var(--c1) calc(var(--tint) * 100%), transparent);box-shadow:none}.t-power{--c1:var(--c-power);--c2:var(--c-power-2)}.t-current{--c1:var(--c-current);--c2:var(--c-current-2)}.t-volt{--c1:var(--c-volt);--c2:var(--c-volt-2)}.t-freq{--c1:var(--c-freq);--c2:var(--c-freq-2)}.t-cost{--c1:var(--c-cost);--c2:var(--c-cost-2)}.t-brand{--c1:var(--brand);--c2:var(--brand-2)}.t-l1{--c1:var(--l1);--c2:#ff7a59}.t-l2{--c1:var(--l2);--c2:#ffcf3d}.t-l3{--c1:var(--l3);--c2:#6d5dfc}.stat{flex-direction:column;gap:12px;padding:18px 18px 12px;display:flex;position:relative;overflow:hidden}.stat:after{content:"";inset-inline-end:-40px;background:radial-gradient(circle, color-mix(in srgb, var(--c1) 22%, transparent), transparent 70%);pointer-events:none;border-radius:50%;width:140px;height:140px;position:absolute;top:-40px}.stat .top{align-items:center;gap:12px;display:flex}.stat .label{color:var(--text-2);font-size:13.5px;font-weight:600}.stat .hint{color:var(--muted);font-size:12px}.stat .value{align-items:baseline;gap:6px;display:flex}.stat .value b{font-size:32px;font-weight:700}.stat .value span{color:var(--muted);font-size:15px;font-weight:600}.stat .spark{height:46px;margin:0 -18px -12px}.stat:hover .tile svg{animation-duration:.6s}.flash{animation:flashVal .9s var(--ease)}.phase-card{flex-direction:column;gap:14px;display:flex}.phase-row{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.phase-row .k{color:var(--muted);font-size:12px;font-weight:600}.phase-row .v{font-size:18px;font-weight:700}.bar{background:var(--surface-3);border-radius:99px;height:8px;overflow:hidden}.bar>i{border-radius:inherit;background:linear-gradient(90deg, var(--c1), var(--c2));height:100%;transition:width .8s var(--ease);display:block;position:relative;overflow:hidden}.bar>i:after{content:"";background:linear-gradient(90deg,#0000,#ffffff8c,#0000);animation:2.4s ease-in-out infinite shine;position:absolute;inset:0;transform:translate(-100%)}.status-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.status-pill{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;align-items:center;gap:12px;min-width:0;padding:12px 14px;display:flex}.status-pill .k{color:var(--muted);font-size:12px;font-weight:600}.status-pill .v{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.status-pill>div{min-width:0}.gauge{flex-direction:column;align-items:center;display:flex;position:relative}.gauge svg{width:100%;max-width:260px;height:auto;overflow:visible}.gauge .center{text-align:center;margin-top:-4px}.gauge .center b{font-size:34px;font-weight:700;display:block}.gauge .center span{color:var(--muted);font-size:13px;font-weight:600}.gauge-arc{transition:stroke-dashoffset 1s var(--ease)}.gauge-needle{transition:transform 1s var(--ease);transform-origin:100px 100px}.alarm{background:var(--surface-2);border:1px solid var(--border);animation:rise .4s var(--ease) both;border-radius:14px;align-items:center;gap:12px;padding:12px;display:flex}.alarm+.alarm{margin-top:8px}.alarm .txt{font-size:13.5px;font-weight:600}.legend{color:var(--text-2);flex-wrap:wrap;gap:14px;font-size:12.5px;font-weight:600;display:flex}.legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-inline-end:6px;display:inline-block}.tt{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:12px;min-width:140px;padding:10px 12px;font-size:12.5px}.tt .h{color:var(--text);margin-bottom:6px;font-weight:700}.tt .l{color:var(--text-2);align-items:center;gap:8px;display:flex}.tt .l b{color:var(--text);font-family:var(--mono);margin-inline-start:auto}.tt .l i{border-radius:50%;width:8px;height:8px}.recharts-surface:focus,.recharts-wrapper:focus{outline:none}.modal-bg{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0c1e73;place-items:center;padding:16px;animation:.2s both fade;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);width:100%;max-width:480px;box-shadow:var(--shadow-lg);animation:pop .35s var(--ease) both;border-radius:22px;max-height:calc(100vh - 32px);padding:24px;overflow-y:auto}.modal h3{font-size:19px;font-weight:800}.modal form{flex-direction:column;gap:14px;margin-top:18px;display:flex}.modal .actions{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.toasts{z-index:200;flex-direction:column;gap:8px;display:flex;position:fixed;inset-block-end:20px;inset-inline-end:20px}.toast{background:var(--text);color:var(--bg);box-shadow:var(--shadow-lg);animation:pop .35s var(--ease) both;border-radius:14px;align-items:center;gap:10px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.item-card{transition:transform .25s var(--ease), box-shadow .25s;flex-direction:column;gap:14px;display:flex}.item-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.item-card .desc{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:42px;font-size:14px;display:-webkit-box;overflow:hidden}.item-card .foot{border-top:1px dashed var(--border);align-items:center;gap:8px;padding-top:12px;display:flex}.skel{background:linear-gradient(90deg, var(--surface-3), var(--surface-2), var(--surface-3));background-size:200% 100%;border-radius:10px;animation:1.2s linear infinite skel}.login{grid-template-columns:1.05fr 1fr;min-height:100%;display:grid}.login-hero{color:#fff;background:linear-gradient(145deg,#1b1446 0%,#3a1a78 45%,#7a1f73 80%,#a8421f 120%);flex-direction:column;justify-content:space-between;padding:48px;display:flex;position:relative;overflow:hidden}.login-hero h2{letter-spacing:-.02em;max-width:440px;font-size:40px;font-weight:800}.login-hero p{opacity:.82;max-width:420px;margin-top:14px;font-size:16px}.login-hero .feats{flex-direction:column;gap:12px;margin-top:30px;display:flex}.login-hero .feat{align-items:center;gap:12px;font-weight:600;display:flex}.login-hero .feat .tile{border-radius:11px;width:36px;height:36px}.login-hero .orb{filter:blur(50px);opacity:.55;border-radius:50%;animation:12s ease-in-out infinite float;position:absolute}.login-form{place-items:center;padding:32px 20px;display:grid}.login-form .box{flex-direction:column;gap:16px;width:100%;max-width:400px;display:flex}.login-form h1{font-size:30px;font-weight:800}.a-spin{animation:6s linear infinite spin}.a-spin-fast{animation:1s linear infinite spin}.a-pulse{animation:2s ease-in-out infinite pulse}.a-bounce{animation:bounce 2.2s var(--ease) infinite}.a-wiggle{transform-origin:50% 20%;animation:2.8s ease-in-out infinite wiggle}.a-float{animation:3s ease-in-out infinite floatY}.a-flicker{animation:3s linear infinite flicker}.a-beat{animation:1.4s ease-in-out infinite beat}.nav-item:hover .nav-ico svg,.btn:hover svg.a-hover{animation:.6s ease-in-out wiggle}.ai-dash{stroke-dasharray:6 60;animation:1.6s linear infinite dash}.ai-draw{stroke-dasharray:60;animation:2.4s ease-in-out infinite draw}.ai-wave{animation:1.4s linear infinite waveX}.ai-needle{transform-origin:12px 15px;animation:needle 2.6s var(--ease) infinite}.ai-flow circle{animation:1.5s linear infinite flow}.ai-flow circle:nth-child(2){animation-delay:-.5s}.ai-flow circle:nth-child(3){animation-delay:-1s}[dir=rtl] .ai-flow{transform-origin:50%;transform:scaleX(-1)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.12)}}@keyframes bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-3px)}60%{transform:translateY(1px)}}@keyframes wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-10deg)}40%{transform:rotate(8deg)}60%{transform:rotate(-5deg)}80%{transform:rotate(3deg)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes flicker{0%,18%,22%,25%,53%,57%,to{opacity:1;filter:drop-shadow(0 0 4px #fffc)}20%,24%,55%{opacity:.55;filter:none}}@keyframes beat{0%,to{transform:scale(1)}15%{transform:scale(1.18)}30%{transform:scale(1)}45%{transform:scale(1.1)}}@keyframes dash{to{stroke-dashoffset:-66px}}@keyframes draw{0%{stroke-dashoffset:60px}50%{stroke-dashoffset:0}to{stroke-dashoffset:-60px}}@keyframes waveX{0%{transform:translate(0)}to{transform:translate(-12px)}}@keyframes needle{0%,to{transform:rotate(-50deg)}45%{transform:rotate(40deg)}60%{transform:rotate(28deg)}}@keyframes flow{0%{opacity:0;transform:translate(-4px)}20%{opacity:1}80%{opacity:1}to{opacity:0;transform:translate(16px)}}@keyframes ping{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:scale(.94)translateY(8px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes gradShift{0%,to{background-position:0%}50%{background-position:100%}}@keyframes shine{0%{transform:translate(-100%)}60%,to{transform:translate(100%)}}@keyframes skel{to{background-position:-200% 0}}@keyframes float{0%,to{transform:translate(0)scale(1)}50%{transform:translate(30px,-40px)scale(1.1)}}@keyframes flashVal{0%{color:var(--c1)}to{color:inherit}}.stagger>*{animation:rise .5s var(--ease) both}.stagger>:nth-child(2){animation-delay:50ms}.stagger>:nth-child(3){animation-delay:.1s}.stagger>:nth-child(4){animation-delay:.15s}.stagger>:nth-child(5){animation-delay:.2s}.stagger>:nth-child(6){animation-delay:.25s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (width<=1280px){.g-4,.status-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1100px){.g-main,.g-main.wide-side{grid-template-columns:minmax(0,1fr)}.g-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.sidebar{display:none}.main{padding-bottom:calc(76px + env(safe-area-inset-bottom));margin-inline-start:0}.topbar{padding:12px 16px}.topbar .title{display:none}.topbar .mobile-brand{align-items:center;gap:10px;font-weight:800;display:flex}.topbar .mobile-brand .brand-mark{border-radius:10px;width:34px;height:34px}.page{gap:16px;padding:18px 16px 28px}.page-head h1{font-size:22px}.bottom-nav{inset-inline:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:50;background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.5);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:20px;justify-content:space-around;padding:6px;display:flex;position:fixed}.bottom-nav a{--c:var(--brand);color:var(--muted);border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:2px;min-width:0;padding:6px 2px;font-size:10.5px;font-weight:700;display:flex}.bottom-nav a span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bottom-nav a .nav-ico{width:32px;height:28px;transition:background .2s, color .2s, transform .3s var(--ease);border-radius:10px;place-items:center;display:grid}.bottom-nav a.active{color:var(--text)}.bottom-nav a.active .nav-ico{background:var(--c);color:#fff;box-shadow:0 8px 16px -6px var(--c);transform:translateY(-2px)}.login{grid-template-columns:1fr}.login-hero{min-height:260px;padding:28px 22px}.login-hero h2{font-size:28px}.login-hero .feats,.hero-graph{display:none}.toasts{inset-inline:16px;bottom:calc(90px + env(safe-area-inset-bottom))}}@media (width<=640px){.g-4,.g-3,.g-2{grid-template-columns:minmax(0,1fr)}.g-4.keep-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.g-4.keep-2 .stat .value b{font-size:24px}.g-4.keep-2 .stat .tile{border-radius:12px;width:38px;height:38px}.status-strip{gap:8px}.status-pill{gap:8px;padding:10px}.card{border-radius:16px;padding:16px}.table-wrap{margin:0 -16px -16px}.tbl th,.tbl td{padding:11px 14px}.hide-sm{display:none!important}}[dir=rtl] .flip-rtl{transform:scaleX(-1)}@keyframes drawLong{0%{stroke-dashoffset:520px}55%,to{stroke-dashoffset:0}}
