@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--accent:#007aff;--accent-teal:#00b4d8;--accent-teal-dim:#00b4d81f;--success:#34c759;--warning:#ff9f0a;--danger:#ff3b30;--purple:#af52de;--bg-page:#eef2f7;--glass-bg:#ffffffb8;--glass-bg-strong:#ffffffe0;--glass-border:#fffc;--glass-border-dim:#0000000f;--glass-blur:blur(20px) saturate(180%);--sidebar-width:240px;--sidebar-collapsed:64px;--topbar-height:58px;--text-1:#1c1c1e;--text-2:#6e6e73;--text-3:#aeaeb2;--text-inverse:#fff;--text-primary:var(--text-1);--text-secondary:var(--text-2);--text-tertiary:var(--text-3);--toka-accent:var(--accent-teal);--toka-primary:var(--accent);--toka-danger:var(--danger);--toka-success:var(--success);--toka-warning:var(--warning);--toka-gold:var(--warning);--toka-purple:var(--purple);--surface-border:var(--glass-border-dim);--surface-hover:#00000008;--shadow-card:0 2px 16px #00000012, 0 1px 3px #0000000a;--shadow-card-hover:0 8px 32px #0000001a, 0 2px 6px #0000000d;--shadow-sm:0 1px 4px #0000000f;--shadow-md:var(--shadow-card);--shadow-lg:var(--shadow-card-hover);--radius-sm:10px;--radius-md:16px;--radius-lg:20px;--ease-out:cubic-bezier(.4, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--t-fast:.12s var(--ease-out);--t-base:.22s var(--ease-out);--font:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"SF Mono", "JetBrains Mono", monospace;--chart-1:#007aff;--chart-2:#00b4d8;--chart-3:#34c759;--chart-4:#ff9f0a;--chart-5:#ff3b30;--chart-6:#af52de;--chart-7:#5ac8fa;--chart-8:#ffd60a}[data-theme=dark]{--bg-page:#0b0f17;--glass-bg:#1c212c9e;--glass-bg-strong:#202632db;--glass-border:#ffffff1a;--glass-border-dim:#ffffff14;--text-1:#f2f4f8;--text-2:#a8b0bd;--text-3:#6b7280;--text-inverse:#0b0f17;--surface-hover:#ffffff0d;--shadow-card:0 2px 16px #00000073, 0 1px 3px #00000059;--shadow-card-hover:0 8px 32px #0000008c, 0 2px 6px #0006;--shadow-sm:0 1px 4px #0006}[data-theme=dark] body{background-image:radial-gradient(at 20% 0,#007aff24 0%,#0000 60%),radial-gradient(at 80% 100%,#00b4d81a 0%,#0000 60%)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#ffffff29}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#ffffff47}[data-theme=dark] .skeleton{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff17 50%,#ffffff0d 75%) 0 0/800px 100%}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;font-size:16px}body{font-family:var(--font);background:var(--bg-page);color:var(--text-1);background-image:radial-gradient(at 20% 0,#007aff0f 0%,#0000 60%),radial-gradient(at 80% 100%,#00b4d80d 0%,#0000 60%);background-attachment:fixed;min-height:100vh}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:box-shadow var(--t-base), transform var(--t-base)}.glass-card--interactive{cursor:pointer}.glass-card--interactive:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.page-header{margin-bottom:24px}.page-header h1{letter-spacing:-.02em;color:var(--text-1);font-size:1.5rem;font-weight:600;line-height:1.2}.page-header p{color:var(--text-2);margin-top:4px;font-size:.875rem}.dashboard-grid--kpis{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px;display:grid}.dashboard-grid--2col{grid-template-columns:1fr 1fr;gap:16px;display:grid}.dashboard-grid--3col{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.span-2{grid-column:span 2}.span-3{grid-column:span 3}@media (width<=1100px){.dashboard-grid--3col{grid-template-columns:1fr 1fr}.span-3{grid-column:span 2}}@media (width<=768px){.dashboard-grid--2col,.dashboard-grid--3col{grid-template-columns:1fr}.span-2,.span-3{grid-column:span 1}.dashboard-layout__main{padding:16px}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeUp .35s var(--ease-out) both}.stagger-1{animation-delay:40ms}.stagger-2{animation-delay:80ms}.stagger-3{animation-delay:.12s}.stagger-4{animation-delay:.16s}.stagger-5{animation-delay:.2s}.stagger-6{animation-delay:.24s}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#0000001f;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#0003}.mono{font-family:var(--font-mono);font-size:.8125rem}.badge{border-radius:100px;align-items:center;gap:4px;padding:2px 8px;font-size:.6875rem;font-weight:500;display:inline-flex}.badge--blue{color:var(--accent);background:#007aff1a}.badge--teal{color:var(--accent-teal);background:#00b4d81a}.badge--green{color:var(--success);background:#34c7591a}.badge--orange{color:var(--warning);background:#ff9f0a1a}.badge--red{color:var(--danger);background:#ff3b301a}.badge--gray{color:var(--text-2);background:#0000000f}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#0000000a 25%,#00000012 50%,#0000000a 75%) 0 0/800px 100%;animation:1.4s linear infinite shimmer}.btn-ghost{border-radius:var(--radius-sm);background:var(--glass-bg);border:1px solid var(--glass-border-dim);color:var(--text-1);cursor:pointer;transition:background var(--t-fast), box-shadow var(--t-fast);align-items:center;gap:6px;padding:8px 16px;font-size:.875rem;font-weight:500;display:inline-flex}.btn-ghost:hover{background:var(--glass-bg-strong);box-shadow:var(--shadow-sm)}.btn-primary{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;transition:opacity var(--t-fast);border:none;align-items:center;gap:6px;padding:8px 18px;font-size:.875rem;font-weight:500;display:inline-flex}.btn-primary:hover{opacity:.88}.state-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:56px 32px;display:flex}.state-card p{color:var(--text-2);max-width:380px;line-height:1.6}.data-window-banner{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:18px;padding:10px 16px;font-size:.8125rem;display:flex}.data-window-banner strong{color:var(--text-1);font-weight:500}.spinner{box-sizing:border-box;border-style:solid;border-width:2px;border-radius:50%;flex-shrink:0;animation:.7s linear infinite spinner-rotate;display:inline-block}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.sidebar{width:var(--sidebar-width);background:var(--glass-bg);-webkit-backdrop-filter:blur(28px)saturate(200%);border-right:1px solid var(--glass-border-dim);z-index:100;transition:width var(--t-base);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.sidebar--collapsed{width:var(--sidebar-collapsed)}.sidebar__logo{border-bottom:1px solid var(--glass-border-dim);flex-shrink:0;align-items:center;gap:10px;padding:18px 16px 14px;display:flex}.sidebar__logo-mark{color:#fff;letter-spacing:-.02em;background:linear-gradient(135deg,#007aff,#00b4d8);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9375rem;font-weight:700;display:flex}.sidebar__logo-name{color:var(--text-1);letter-spacing:-.01em;font-size:.9375rem;font-weight:600;line-height:1.1;display:block}.sidebar__logo-sub{color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;font-size:.6875rem;font-weight:400;display:block}.sidebar__nav{flex-direction:column;flex:1;gap:2px;padding:12px 8px;display:flex;overflow-y:auto}.sidebar__link{border-radius:var(--radius-sm);color:var(--text-2);transition:background var(--t-fast), color var(--t-fast);white-space:nowrap;cursor:pointer;align-items:center;gap:10px;padding:9px 10px;font-size:.875rem;font-weight:450;text-decoration:none;display:flex}.sidebar__link:hover{background:var(--surface-hover);color:var(--text-1)}.sidebar__link--active{color:var(--accent);background:#007aff24;font-weight:500}.sidebar__link-icon{opacity:.75;flex-shrink:0}.sidebar__link--active .sidebar__link-icon{opacity:1}.sidebar__toggle{border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;transition:color var(--t-fast), background var(--t-fast);background:0 0;border:none;align-items:center;gap:8px;margin:0 8px 8px;padding:10px 12px;font-size:.8125rem;display:flex}.sidebar__toggle:hover{color:var(--text-2);background:var(--surface-hover)}.sidebar__user{border-radius:var(--radius-sm);background:var(--surface-hover,#00000008);align-items:center;gap:10px;margin:12px 12px 8px;padding:10px;display:flex}.sidebar__user--collapsed{justify-content:center;padding:8px}.sidebar__user-pic{object-fit:cover;border-radius:50%;flex-shrink:0;width:30px;height:30px}.sidebar__user-pic--placeholder{color:#fff;background:linear-gradient(135deg,#007aff,#00b4d8);justify-content:center;align-items:center;font-size:.8125rem;font-weight:600;display:flex}.sidebar__user-meta{flex:1;min-width:0}.sidebar__user-name{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;overflow:hidden}.sidebar__signout{color:var(--text-3);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin-top:2px;padding:0;font-size:.6875rem;display:inline-flex}.sidebar__signout:hover{color:var(--text-2)}.sidebar__version{color:var(--text-3);font-size:.6875rem;font-family:var(--font-mono);padding:0 16px 14px}.topbar{top:0;left:var(--sidebar-width);height:var(--topbar-height);background:var(--glass-bg);-webkit-backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid var(--glass-border-dim);z-index:90;transition:left var(--t-base);justify-content:space-between;align-items:center;gap:12px;padding:0 20px;display:flex;position:fixed;right:0}.topbar__left{flex:1;align-items:center;gap:16px;min-width:0;display:flex}.topbar__menu-btn{border-radius:var(--radius-sm);background:var(--glass-bg);border:1px solid var(--glass-border-dim);width:36px;height:36px;color:var(--text-1);cursor:pointer;transition:background var(--t-fast);flex-shrink:0;justify-content:center;align-items:center;display:none}.topbar__menu-btn:hover{background:var(--glass-bg-strong)}@media (width<=768px){.topbar__menu-btn{display:flex}}.topbar__right{flex-shrink:0;align-items:center;gap:8px;display:flex}.topbar__date-selector{border-radius:var(--radius-sm);background:var(--glass-bg);border:1px solid var(--glass-border-dim);cursor:pointer;transition:background var(--t-fast);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:6px 12px;display:flex;position:relative}.topbar__date-selector:hover{background:var(--glass-bg-strong)}.topbar__date-text{color:var(--text-1);white-space:nowrap;font-size:.8125rem;font-weight:500}.topbar__date-label{color:var(--text-3);font-size:.6875rem;line-height:1}.topbar__dropdown{background:var(--glass-bg-strong);min-width:160px;-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-dim);border-radius:var(--radius-md);box-shadow:var(--shadow-card-hover);z-index:200;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}.topbar__dropdown-item{width:100%;color:var(--text-1);text-align:left;cursor:pointer;transition:background var(--t-fast);background:0 0;border:none;padding:9px 14px;font-size:.8125rem;display:block}.topbar__dropdown-item:hover{background:var(--surface-hover)}.topbar__dropdown-item--active{color:var(--accent);background:#007aff1f;font-weight:500}.topbar__refresh{color:var(--text-3);align-items:center;gap:6px;font-size:.75rem;display:flex}.topbar__refresh-dot{background:var(--success);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.topbar__export-btn,.topbar__theme-btn{border-radius:var(--radius-sm);background:var(--glass-bg);border:1px solid var(--glass-border-dim);color:var(--text-2);cursor:pointer;transition:background var(--t-fast), color var(--t-fast);align-items:center;gap:6px;padding:6px 12px;font-size:.8125rem;font-weight:450;display:flex}.topbar__export-btn:hover,.topbar__theme-btn:hover{background:var(--glass-bg-strong);color:var(--text-1)}.topbar__theme-btn{padding:6px 10px}@media (width<=768px){.topbar__refresh{display:none}}.dashboard-layout{min-height:100vh;display:flex}.dashboard-layout__content{min-width:0;margin-left:var(--sidebar-width);padding-top:var(--topbar-height);transition:margin-left var(--t-base);flex:1;min-height:100vh}.dashboard-layout__main{width:100%;max-width:2200px;margin:0 auto;padding:24px 32px}.dashboard-layout--collapsed .dashboard-layout__content{margin-left:var(--sidebar-collapsed)}.dashboard-layout--collapsed .topbar{left:var(--sidebar-collapsed)}.dashboard-layout__overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:95;opacity:0;transition:opacity var(--t-base);background:#00000073;display:none;position:fixed;inset:0}@media (width<=1024px){.dashboard-layout__main{padding:20px 24px}}@media (width<=768px){.dashboard-layout__content,.dashboard-layout--collapsed .dashboard-layout__content{margin-left:0}.dashboard-layout__main{padding:16px}.sidebar{transition:transform var(--t-base);transform:translate(-100%)}.dashboard-layout--mobile-open .sidebar{transform:translate(0)}.dashboard-layout--mobile-open .dashboard-layout__overlay{opacity:1;display:block}.topbar,.dashboard-layout--collapsed .topbar{left:0}}.auth-screen{background:radial-gradient(1200px 600px at 80% -10%, #00b4d82e, transparent 70%), radial-gradient(900px 500px at -10% 110%, #af52de24, transparent 70%), var(--app-bg,#f4f6fb);justify-content:center;align-items:center;width:100%;min-height:100vh;padding:24px;display:flex}.auth-card{text-align:center;border-radius:18px;width:100%;max-width:420px;padding:36px 32px}.auth-logo{color:#fff;background:linear-gradient(135deg,#007aff 0%,#00b4d8 100%);border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;font-size:24px;font-weight:700;display:flex;box-shadow:0 8px 24px #007aff40}.auth-card h1{color:var(--text-1);margin:0 0 6px;font-size:1.5rem}.auth-sub{color:var(--text-3);margin:0 0 24px;font-size:.9375rem;line-height:1.5}.auth-btn{width:100%;color:var(--text-1);background:var(--glass-bg-strong,#ffffffb3);cursor:pointer;border:1px solid #00000014;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:12px 16px;font-size:.9375rem;font-weight:500;transition:transform .12s,box-shadow .12s,background .12s;display:inline-flex}.auth-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px #00000014}.auth-btn:disabled{opacity:.6;cursor:progress}.auth-btn--ghost{color:var(--text-2);background:0 0;border-color:#0000001a}.auth-btn--primary{color:#fff;background:linear-gradient(135deg,#007aff 0%,#00b4d8 100%);border:none;box-shadow:0 6px 16px #007aff38}.auth-btn--primary:hover:not(:disabled){box-shadow:0 10px 22px #007aff4d}.auth-divider{color:var(--text-3);align-items:center;gap:10px;margin:18px 0;font-size:.75rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#00000014;flex:1;height:1px}.auth-form{flex-direction:column;gap:10px;display:flex}.auth-input{width:100%;color:var(--text-1);background:var(--glass-bg-strong,#ffffffb3);box-sizing:border-box;border:1px solid #0000001f;border-radius:12px;outline:none;padding:12px 14px;font-size:.9375rem;transition:border-color .12s,box-shadow .12s}.auth-input:focus{border-color:var(--toka-accent,#00b4d8);box-shadow:0 0 0 3px #00b4d826}.auth-links{flex-direction:column;gap:8px;margin-top:16px;display:flex}.auth-link{color:var(--toka-accent,#007aff);cursor:pointer;background:0 0;border:none;padding:2px;font-size:.8125rem}.auth-link:hover{text-decoration:underline}.auth-notice{color:#2ec4b6;margin-top:14px;font-size:.8125rem;line-height:1.5}.auth-pwd{text-align:left;margin-top:-2px}.auth-pwd__bar{background:#00000014;border-radius:999px;height:5px;margin-bottom:8px;overflow:hidden}.auth-pwd__fill{background:#e63946;border-radius:999px;height:100%;transition:width .18s,background .18s;display:block}.auth-pwd__fill--0,.auth-pwd__fill--1{background:#e63946}.auth-pwd__fill--2,.auth-pwd__fill--3{background:#ff9f0a}.auth-pwd__fill--4{background:#ffd60a}.auth-pwd__fill--5{background:#34c759}.auth-pwd__rules{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.auth-pwd__rules li{color:var(--text-3);align-items:center;gap:8px;font-size:.75rem;transition:color .15s;display:flex}.auth-pwd__rules li.is-ok{color:#34c759}.auth-pwd__mark{justify-content:center;width:14px;font-weight:700;display:inline-flex}.auth-actions{gap:10px;margin-top:18px;display:flex}.auth-actions .auth-btn{flex:1}.auth-error{color:#e63946;margin-top:14px;font-size:.8125rem}.auth-fineprint{color:var(--text-3);margin-top:22px;font-size:.75rem;line-height:1.5}.auth-user-chip{color:var(--text-2);background:#0000000a;border-radius:999px;align-items:center;gap:8px;margin:6px 0 4px;padding:6px 12px;font-size:.8125rem;display:inline-flex}.auth-user-chip img{border-radius:50%;width:22px;height:22px}
