@font-face{font-family:Inter;font-style:italic;font-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwkT9nA2.woff2) format("woff2");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:italic;font-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwAT9nA2.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:italic;font-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwgT9nA2.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:italic;font-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwcT9nA2.woff2) format("woff2");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:italic;font-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwsT9nA2.woff2) format("woff2");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:italic;font-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwoT9nA2.woff2) format("woff2");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:italic;font-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwQT9g.woff2) format("woff2");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-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvvYwYL8g.woff2) format("woff2");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-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvmYwYL8g.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvuYwYL8g.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvhYwYL8g.woff2) format("woff2");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-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvtYwYL8g.woff2) format("woff2");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-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvsYwYL8g.woff2) format("woff2");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-weight:300 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcviYwY.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");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}:root{color-scheme:dark;--bg-base: #08090f;--bg-1: #0e0f1a;--bg-2: #151627;--bg-3: #1e2038;--bg-4: #292c4a;--border: rgba(255,255,255,.07);--border-hover: rgba(255,255,255,.14);--text-1: #f0f2ff;--text-2: #9ea3c0;--text-3: #5a6080;--orange: #f97316;--orange-dim: rgba(249,115,22,.12);--teal: #14b8a6;--teal-dim: rgba(20,184,166,.12);--teal-glow: rgba(20,184,166,.06);--glass-bg: rgba(255,255,255,.025);--glass-border: rgba(255,255,255,.08);--radius: 12px;--radius-sm: 8px;--sidebar-w: 240px;--topbar-h: 60px;--transition: .18s cubic-bezier(.4,0,.2,1);--in-oklch: }@supports (background: linear-gradient(in oklch,white,black)){:root{--in-oklch: in oklch}}[data-theme=light]{color-scheme:light;--bg-base: #f4f6fb;--bg-1: #ffffff;--bg-2: #f1f3f9;--bg-3: #e4e7f0;--bg-4: #d1d5e4;--border: rgba(0,0,0,.09);--border-hover: rgba(0,0,0,.18);--text-1: #0f1117;--text-2: #3d4263;--text-3: #7880a0;--glass-bg: rgba(255,255,255,.6);--glass-border: rgba(0,0,0,.08);--teal-dim: rgba(20,184,166,.1);--teal-glow: rgba(20,184,166,.04)}[data-theme=light] body{background:var(--bg-base);color:var(--text-1)}[data-theme=light] .ss-sidebar{background:#fff;border-right:1px solid var(--border)}[data-theme=light] .ss-topbar{background:#ffffffe6;border-bottom:1px solid var(--border)}[data-theme=light] .card,[data-theme=light] .stat-card,[data-theme=light] .table-wrap{background:#fff}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.5;background:var(--bg-base);color:var(--text-1);-webkit-font-smoothing:antialiased;overflow-x:hidden}code,.mono{font-family:JetBrains Mono,monospace}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-4);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--text-3)}.ss-shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;grid-template-rows:var(--topbar-h) 1fr;min-height:100vh}.ss-sidebar{grid-row:1 / -1;background:var(--bg-1);border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;view-transition-name:ss-sidebar}.ss-logo{height:var(--topbar-h);display:flex;align-items:center;gap:10px;padding:0 20px;border-bottom:1px solid var(--border)}.ss-logo-icon{width:32px;height:32px;background:linear-gradient(135deg var(--in-oklch),var(--teal),#0ea5e9);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;box-shadow:0 0 20px #14b8a659}.ss-logo-name{font-size:.8rem;font-weight:800;color:var(--text-1)}.ss-logo-sub{font-size:.6rem;font-weight:600;color:var(--teal);text-transform:uppercase;letter-spacing:.1em}.ss-nav{flex:1;padding:16px 12px;display:flex;flex-direction:column;gap:2px}.nav-section-container{display:flex;flex-direction:column}.nav-section-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:6px 8px 4px;margin-top:6px;border-radius:var(--radius-sm);transition:background .15s ease,color .15s ease;-webkit-user-select:none;user-select:none}.nav-section-header:hover{background:var(--bg-2)}.nav-section-label{font-size:.6rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.1em;padding:0;margin:0;cursor:pointer}.nav-section-header .chevron-icon{display:flex;align-items:center;color:var(--text-3);transition:transform .25s cubic-bezier(.4,0,.2,1)}.nav-section-container.collapsed .chevron-icon{transform:rotate(-90deg)}.nav-section-content{display:flex;flex-direction:column;gap:2px;max-height:500px;opacity:1;overflow:hidden;transition:max-height .25s cubic-bezier(0,1,0,1),opacity .2s ease}.nav-section-container.collapsed .nav-section-content{max-height:0;opacity:0;pointer-events:none;overflow:hidden}.nav-link{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius-sm);color:var(--text-2);font-size:.825rem;font-weight:500;text-decoration:none;border:1px solid transparent;transition:var(--transition)}.nav-link:hover{background:var(--bg-2);color:var(--text-1)}.nav-link.active{background:var(--teal-dim);color:var(--teal);border-color:#14b8a633;font-weight:600}.ss-footer{padding:16px;border-top:1px solid var(--border)}.user-chip{display:flex;align-items:center;gap:10px;padding:10px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid var(--teal);background:var(--teal-dim)}.avatar-init{width:32px;height:32px;border-radius:50%;background:var(--teal-dim);border:2px solid var(--teal);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:var(--teal)}.user-name{font-size:.75rem;font-weight:600;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:.6rem;font-weight:700;color:var(--teal);text-transform:uppercase;letter-spacing:.05em}.ss-topbar{grid-column:2;height:var(--topbar-h);background:var(--bg-1);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:10;view-transition-name:ss-topbar}.ss-main{grid-column:2;padding:28px;overflow-y:auto;background:radial-gradient(ellipse at 80% 0%,rgba(20,184,166,.04) 0%,transparent 60%),var(--bg-base)}.card{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.stat-card{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);padding:20px;position:relative;overflow:hidden;transition:var(--transition);display:flex;align-items:center;justify-content:space-between;gap:12px}.stat-card:hover{border-color:var(--border-hover);transform:translateY(-1px)}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg var(--in-oklch),var(--teal),transparent);opacity:0;transition:var(--transition)}.stat-card:hover:before,.stat-card.accent:before{opacity:1}@media(prefers-reduced-motion:no-preference){@supports ((animation-timeline: view()) and (animation-range: entry)){@keyframes stat-enter{0%{opacity:0;transform:translateY(18px) scale(.97)}}.stat-card{animation:stat-enter linear both;animation-timeline:view();animation-range:entry 0% entry 40%}}}.stat-card-body{display:flex;flex-direction:column;min-width:0;flex:1}.stat-label{font-size:.65rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.1em}.stat-sub{font-size:.68rem;color:var(--text-3);margin-top:3px}.stat-value{font-size:1.9rem;font-weight:900;color:var(--text-1);line-height:1;text-align:right;white-space:nowrap;flex-shrink:0;margin-left:auto;font-variant-numeric:tabular-nums}.table-wrap{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}table{width:100%;border-collapse:collapse}thead tr{border-bottom:1px solid var(--border);background:var(--bg-2)}thead th{padding:12px 16px;font-size:.65rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.1em;text-align:left}tbody tr{border-bottom:1px solid var(--border);transition:var(--transition);content-visibility:auto;contain-intrinsic-size:auto 48px}tbody tr:last-child{border-bottom:none}tbody tr:hover{background:#ffffff04}tbody td{padding:13px 16px;font-size:.825rem;color:var(--text-1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;cursor:pointer;transition:var(--transition);border:1px solid transparent;white-space:nowrap}.btn-primary{background:var(--teal);color:#04100e;border-color:var(--teal);box-shadow:0 0 20px #14b8a640}.btn-primary:hover{filter:brightness(1.1);box-shadow:0 0 30px #14b8a666;transform:translateY(-1px)}.btn-secondary{background:var(--bg-3);color:var(--text-1);border-color:var(--border)}.btn-secondary:hover{background:var(--bg-4)}.btn-ghost{background:transparent;color:var(--text-2);border-color:var(--border)}.btn-ghost:hover{background:var(--bg-2);color:var(--text-1)}.btn-danger{background:#ef44441a;color:#ef4444;border-color:#ef444433}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.btn-sm{padding:5px 10px;font-size:.75rem}.btn-icon{width:32px;height:32px;padding:0}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:99px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.badge-teal{background:var(--teal-dim);color:var(--teal)}.badge-orange{background:var(--orange-dim);color:var(--orange)}.badge-green{background:#22c55e1a;color:#22c55e}.badge-red{background:#ef44441a;color:#ef4444}.badge-blue{background:#3b82f61a;color:#60a5fa}.badge-gray{background:var(--bg-3);color:var(--text-3)}.badge-purple{background:#8b5cf61a;color:#a78bfa}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:.7rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em}.form-input{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 13px;color:var(--text-1);font-size:.85rem;font-family:inherit;transition:var(--transition);outline:none;width:100%}.form-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #14b8a61a}.form-input::placeholder{color:var(--text-3)}.form-input:user-valid{border-color:#22c55e66}.form-input:user-invalid{border-color:#ef444480;box-shadow:0 0 0 3px #ef444414}.alert{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--radius-sm);font-size:.825rem}.alert-info{background:#3b82f614;border:1px solid rgba(59,130,246,.2);color:#93c5fd}.alert-success{background:#22c55e14;border:1px solid rgba(34,197,94,.2);color:#86efac}.alert-warning{background:#f9731614;border:1px solid rgba(249,115,22,.2);color:#fdba74}.alert-error{background:#ef444414;border:1px solid rgba(239,68,68,.2);color:#fca5a5}.spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--teal);border-radius:50%;animation:spin .7s linear infinite}.page{display:flex;flex-direction:column;gap:24px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.section-title{font-size:1.1rem;font-weight:700;color:var(--text-1)}.section-sub{font-size:.75rem;color:var(--text-3);margin-top:2px}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.fade-up{animation:fadeUp .3s ease forwards}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:none}}.app-input{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 13px;color:var(--text-1);font-size:.85rem;font-family:inherit;transition:var(--transition);outline:none;width:100%}.app-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #14b8a61a}.app-input::placeholder{color:var(--text-3)}.kanban-board{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:16px;overflow-x:auto;padding-bottom:8px}.kanban-col{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:16px;min-height:400px;display:flex;flex-direction:column;gap:10px}.kanban-col-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.kanban-col-title{font-size:.75rem;font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.08em}.kanban-col-count{font-size:.65rem;font-weight:700;background:var(--bg-3);color:var(--text-3);padding:2px 7px;border-radius:99px}.deal-card{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px;transition:var(--transition);cursor:pointer}.deal-card:hover{border-color:var(--teal);box-shadow:0 0 16px #14b8a614;transform:translateY(-1px)}.deal-client{font-size:.82rem;font-weight:600;color:var(--text-1);margin-bottom:4px}.deal-product{font-size:.72rem;color:var(--text-3);margin-bottom:8px}.deal-amount{font-size:.85rem;font-weight:800;color:var(--teal);font-family:JetBrains Mono,monospace}.deal-meta{display:flex;align-items:center;justify-content:space-between;margin-top:8px;font-size:.65rem;color:var(--text-3)}.login-bg{min-height:100vh;background:radial-gradient(ellipse at 50% -20%,rgba(20,184,166,.1) 0%,transparent 60%),radial-gradient(ellipse at 80% 80%,rgba(249,115,22,.04) 0%,transparent 50%),var(--bg-base);display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:400px;background:var(--bg-1);border:1px solid var(--glass-border);border-radius:20px;padding:40px;box-shadow:0 40px 80px #00000080,0 0 60px #14b8a60d;animation:fadeUp .4s ease forwards}dialog.app-modal{background:var(--bg-1);border:1px solid var(--border);border-radius:16px;padding:0;max-width:90vw;box-shadow:0 24px 80px #0009;color:var(--text-1)}dialog.app-modal::backdrop{background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-6px);opacity:1}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}.money{font-family:JetBrains Mono,Fira Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;letter-spacing:-.01em}th.money{text-align:right}input.money{text-align:right;font-family:JetBrains Mono,Fira Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}:root{--accent:#10b981;--accent-dim:rgba(16,185,129,.15);--accent-glow:rgba(16,185,129,.07);--accent-shadow:rgba(16,185,129,.25)}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--bg-base, #09090b);overflow:hidden}@media(max-width:768px){.login-page{grid-template-columns:1fr}.login-left{display:none}}.login-left{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 48px;overflow:hidden;background:radial-gradient(ellipse at 60% 20%,var(--accent-dim) 0%,transparent 55%),radial-gradient(ellipse at 10% 80%,rgba(139,92,246,.08) 0%,transparent 50%),var(--bg-base, #09090b)}.login-left:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse at center,black 30%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 80%)}.login-left:after{content:"";position:absolute;width:400px;height:400px;top:-120px;right:-80px;background:radial-gradient(circle,var(--accent-shadow) 0%,transparent 70%);pointer-events:none}.login-brand{position:relative;z-index:1;text-align:center;max-width:340px}.login-brand-icon{width:72px;height:72px;background:linear-gradient(135deg,var(--accent),color-mix(in oklch,var(--accent) 60%,white));border-radius:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;box-shadow:0 0 0 1px #ffffff14,0 8px 32px var(--accent-shadow),0 0 80px var(--accent-glow)}.login-brand-name{font-size:2rem;font-weight:900;color:#fafafa;letter-spacing:-.04em;line-height:1;margin-bottom:8px}.login-brand-app{font-size:.75rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.15em;margin-bottom:20px}.login-brand-tagline{font-size:.9rem;color:#a1a1aacc;line-height:1.6;max-width:280px;margin:0 auto}.login-feature-list{list-style:none;margin-top:36px;display:flex;flex-direction:column;gap:12px;text-align:left}.login-feature-list li{display:flex;align-items:center;gap:10px;font-size:.82rem;color:#a1a1aab3}.login-feature-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;box-shadow:0 0 8px var(--accent-shadow)}.login-right{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;background:radial-gradient(ellipse at 80% 100%,var(--accent-glow) 0%,transparent 50%),#ffffff03;border-left:1px solid rgba(255,255,255,.04)}.login-card-v2{width:100%;max-width:420px;background:#ffffff06;border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:40px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 0 0 1px #ffffff05,0 32px 64px #0006,0 0 80px var(--accent-glow);opacity:1;transform:translateY(0);transition:opacity .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1),display .5s;transition-behavior:allow-discrete}@starting-style{.login-card-v2{opacity:0;transform:translateY(20px)}}.login-card-header{text-align:center;margin-bottom:32px}.login-card-icon{width:52px;height:52px;background:linear-gradient(135deg,var(--accent),color-mix(in oklch,var(--accent) 60%,white));border-radius:14px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;box-shadow:0 4px 20px var(--accent-shadow)}.login-card-title{font-size:1.3rem;font-weight:800;color:#fafafa;letter-spacing:-.02em;margin-bottom:4px}.login-card-sub{font-size:.8rem;color:#71717a;font-weight:500}.btn-google-v2{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:12px 20px;background:#fff;color:#1f2937;border:none;border-radius:12px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .18s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000004d,0 1px 2px #0003;font-family:inherit;margin-bottom:4px}.btn-google-v2:hover:not(:disabled){background:#f8f8f8;transform:translateY(-1px);box-shadow:0 6px 20px #00000059}.btn-google-v2:active{transform:translateY(0)}.btn-google-v2:disabled{opacity:.55;cursor:not-allowed}.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:#ffffff12}.login-divider span{font-size:.7rem;color:#52525b;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.login-form{display:flex;flex-direction:column;gap:14px}.login-field{display:flex;flex-direction:column;gap:6px}.login-label{font-size:.68rem;font-weight:700;color:#71717a;text-transform:uppercase;letter-spacing:.1em}.login-input{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:11px 14px;color:#fafafa;font-size:.875rem;font-family:inherit;outline:none;width:100%;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.login-input::placeholder{color:#52525b}.login-input:focus{border-color:var(--accent);background:#ffffff0f;box-shadow:0 0 0 3px var(--accent-dim)}.login-input:user-valid{border-color:#22c55e66;box-shadow:0 0 0 3px #22c55e0f}.login-input:user-invalid{border-color:#ef444466;box-shadow:0 0 0 3px #ef44440f}.login-pw-wrap{position:relative}.login-pw-wrap .login-input{padding-right:44px}.login-pw-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#52525b;padding:4px;display:flex;align-items:center;transition:color .15s}.login-pw-toggle:hover{color:#a1a1aa}.btn-login-primary{width:100%;padding:12px 20px;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:.9rem;font-weight:700;cursor:pointer;font-family:inherit;margin-top:4px;transition:all .18s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px var(--accent-shadow);display:flex;align-items:center;justify-content:center;gap:8px}.btn-login-primary:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 6px 24px var(--accent-shadow)}.btn-login-primary:active{transform:translateY(0)}.btn-login-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.login-error{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:10px;font-size:.8rem;color:#fca5a5;line-height:1.4}.login-notice{display:flex;align-items:center;gap:10px;padding:11px 14px;background:#f973160f;border:1px solid rgba(249,115,22,.15);border-radius:10px;font-size:.78rem;color:#fdba74;margin-bottom:20px}.login-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:spin .65s linear infinite;flex-shrink:0}.login-footer{margin-top:28px;text-align:center;font-size:.68rem;color:#3f3f46;line-height:1.6}.otp-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:20px}.otp-cell{aspect-ratio:1;background:#ffffff0a;border:1.5px solid rgba(255,255,255,.1);border-radius:10px;color:#fafafa;font-size:1.3rem;font-weight:700;text-align:center;outline:none;font-family:JetBrains Mono,monospace;transition:border-color .15s,box-shadow .15s}.otp-cell:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg-base, #09090b);position:relative;overflow:hidden}.login-page:before{content:"";position:absolute;width:700px;height:700px;top:-250px;right:-200px;background:radial-gradient(circle,var(--accent-shadow, rgba(249,115,22,.12)) 0%,transparent 65%);pointer-events:none;animation:loginOrb 10s ease-in-out infinite alternate}.login-page:after{content:"";position:absolute;width:500px;height:500px;bottom:-200px;left:-150px;background:radial-gradient(circle,rgba(139,92,246,.08) 0%,transparent 65%);pointer-events:none}@keyframes loginOrb{0%{opacity:.6;transform:scale(.95)}to{opacity:1;transform:scale(1.07)}}.login-mesh{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:56px 56px;pointer-events:none}.login-left,.login-right{display:none}.login-card-v2{width:100%;max-width:740px;display:grid;grid-template-columns:1fr 1fr;background:#ffffff06;border:1px solid rgba(255,255,255,.08);border-radius:24px;overflow:hidden;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 0 0 1px #ffffff06,0 40px 80px #0000008c,0 0 120px var(--accent-glow, rgba(249,115,22,.04));position:relative;z-index:10;opacity:1;transform:translateY(0) scale(1);transition:opacity .55s cubic-bezier(.4,0,.2,1),transform .55s cubic-bezier(.4,0,.2,1),display .55s;transition-behavior:allow-discrete}@starting-style{.login-card-v2{opacity:0;transform:translateY(32px) scale(.98)}}.login-brand-col{padding:52px 44px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid rgba(255,255,255,.06);position:relative;overflow:hidden;background:linear-gradient(145deg,#ffffff05,#ffffff01)}.login-brand-col:after{content:"";position:absolute;width:240px;height:240px;top:-70px;right:-70px;background:radial-gradient(circle,var(--accent-dim) 0%,transparent 70%);pointer-events:none}.login-form-col{padding:52px 44px;display:flex;flex-direction:column;justify-content:center}@media(max-width:640px){.login-card-v2{grid-template-columns:1fr;max-width:440px}.login-brand-col{border-right:none;border-bottom:1px solid rgba(255,255,255,.06);padding:36px 32px 28px}.login-form-col{padding:28px 32px 36px}}.login-brand-icon{width:56px;height:56px;background:linear-gradient(135deg,var(--accent),color-mix(in oklch,var(--accent) 65%,white));border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:24px;box-shadow:0 0 0 1px #ffffff1a,0 8px 24px var(--accent-shadow),0 0 60px var(--accent-glow)}.login-brand-name{font-size:1.6rem;font-weight:900;color:#fafafa;letter-spacing:-.04em;line-height:1;margin-bottom:4px}.login-brand-app{font-size:.68rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.18em;margin-bottom:16px}.login-brand-divider{width:32px;height:2px;background:linear-gradient(90deg,var(--accent),transparent);border-radius:2px;margin-bottom:16px}.login-brand-tagline{font-size:.82rem;color:#a1a1aabf;line-height:1.65;max-width:220px}.login-form-title{font-size:1.15rem;font-weight:800;color:#fafafa;letter-spacing:-.02em;margin-bottom:4px}.login-form-sub{font-size:.78rem;color:#71717a;margin-bottom:28px}.login-page,.login-left,.login-right,.login-brand-col,.login-form-col,.login-card-v2,.login-mesh{display:none!important}.lp-bg{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:#06060a;position:relative;overflow:hidden}.lp-bg:before{content:"";position:absolute;width:900px;height:900px;top:50%;left:50%;transform:translate(-50%,-65%);background:radial-gradient(circle,var(--accent-shadow, rgba(249,115,22,.18)) 0%,var(--accent-glow, rgba(249,115,22,.06)) 40%,transparent 70%);pointer-events:none;animation:lpBreathe 9s ease-in-out infinite;will-change:opacity,transform}@keyframes lpBreathe{0%,to{opacity:.55;transform:translate(-50%,-65%) scale(1)}50%{opacity:.9;transform:translate(-50%,-65%) scale(1.08)}}.lp-bg:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");background-size:200px 200px;opacity:.032;pointer-events:none}.lp-card{width:100%;max-width:420px;position:relative;z-index:10;padding:40px;border-radius:20px;background:linear-gradient(145deg,#ffffff0f,#ffffff05);border:1px solid rgba(255,255,255,.09);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:0 1px #ffffff1a inset,0 0 0 1px #ffffff08 inset,0 4px 6px #00000026,0 12px 32px #00000059,0 32px 64px #0000004d,0 0 100px var(--accent-glow, rgba(249,115,22,.06));opacity:1;transform:translateY(0) scale(1);transition:opacity .5s cubic-bezier(.34,1.56,.64,1),transform .5s cubic-bezier(.34,1.56,.64,1),display .5s;transition-behavior:allow-discrete}@starting-style{.lp-card{opacity:0;transform:translateY(20px) scale(.96)}}.lp-brand{text-align:center;margin-bottom:28px}.lp-icon{width:54px;height:54px;background:linear-gradient(135deg,var(--accent, #f97316) 0%,color-mix(in oklch,var(--accent, #f97316) 70%,white) 100%);border-radius:14px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;box-shadow:0 0 0 1px #ffffff26 inset,0 6px 20px var(--accent-shadow, rgba(249,115,22,.35)),0 0 0 4px var(--accent-dim, rgba(249,115,22,.08));transition:box-shadow .3s ease,transform .3s ease}.lp-icon:hover{transform:scale(1.04)}.lp-name{font-size:1.45rem;font-weight:900;color:#f8f8fa;letter-spacing:-.035em;line-height:1;margin-bottom:10px}.lp-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 12px 4px;border-radius:99px;background:var(--accent-dim, rgba(249,115,22,.1));border:1px solid var(--accent-shadow, rgba(249,115,22,.2));font-size:.62rem;font-weight:700;color:var(--accent, #f97316);text-transform:uppercase;letter-spacing:.12em}.lp-sep{height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08) 20%,rgba(255,255,255,.08) 80%,transparent);margin:0 -40px 28px}.lp-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:11px 20px;background:#fff;color:#111827;border:none;border-radius:12px;font-size:.875rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 6px #00000040,0 1px 2px #00000026;letter-spacing:-.01em}.lp-google:hover:not(:disabled){background:#f9f9f9;transform:translateY(-1px);box-shadow:0 6px 18px #0000004d}.lp-google:active{transform:translateY(0);transition-duration:80ms}.lp-google:disabled{opacity:.5;cursor:not-allowed}.lp-divider{display:flex;align-items:center;gap:12px;margin:16px 0}.lp-divider:before,.lp-divider:after{content:"";flex:1;height:1px;background:#ffffff12}.lp-divider span{font-size:.68rem;color:#52525b;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.lp-fields{display:flex;flex-direction:column;gap:12px}.lp-field{display:flex;flex-direction:column;gap:5px}.lp-label{font-size:.7rem;font-weight:600;color:#71717a;letter-spacing:.03em}.lp-input{background:#ffffff0a;border:1px solid rgba(255,255,255,.09);border-radius:10px;padding:10px 14px;color:#f4f4f5;font-size:.875rem;font-family:inherit;outline:none;width:100%;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;letter-spacing:.01em}.lp-input::placeholder{color:#3f3f46}.lp-input:focus{border-color:color-mix(in srgb,var(--accent, #f97316) 70%,transparent);background:#ffffff0f;box-shadow:0 0 0 3px var(--accent-dim, rgba(249,115,22,.12))}.lp-pw{position:relative}.lp-pw .lp-input{padding-right:42px}.lp-pw-btn{position:absolute;right:11px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#52525b;padding:3px;display:flex;align-items:center;transition:color .15s}.lp-pw-btn:hover{color:#a1a1aa}.lp-error{display:flex;align-items:flex-start;gap:8px;padding:10px 13px;background:#ef444414;border:1px solid rgba(239,68,68,.18);border-radius:10px;font-size:.78rem;color:#fca5a5;line-height:1.45;margin-bottom:4px}.lp-notice{display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--accent-glow, rgba(249,115,22,.05));border:1px solid var(--accent-dim, rgba(249,115,22,.15));border-radius:10px;font-size:.74rem;color:#d4914a;margin-bottom:16px}.lp-submit{width:100%;margin-top:4px;padding:11px 20px;background:var(--accent, #f97316);color:#fff;border:none;border-radius:12px;font-size:.9rem;font-weight:700;font-family:inherit;cursor:pointer;letter-spacing:-.01em;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 14px var(--accent-shadow, rgba(249,115,22,.3));position:relative;overflow:hidden}.lp-submit:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#ffffff40;border-radius:12px 12px 0 0}.lp-submit:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 8px 20px var(--accent-shadow, rgba(249,115,22,.35))}.lp-submit:active{transform:translateY(0);transition-duration:80ms}.lp-submit:disabled{opacity:.45;cursor:not-allowed;transform:none}.lp-spin{width:15px;height:15px;border:2px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;flex-shrink:0}.lp-otp{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.lp-otp-cell{aspect-ratio:1;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#f4f4f5;font-size:1.25rem;font-weight:700;text-align:center;outline:none;transition:border-color .15s,box-shadow .15s;font-family:JetBrains Mono,SF Mono,monospace}.lp-otp-cell:focus{border-color:var(--accent, #f97316);box-shadow:0 0 0 3px var(--accent-dim, rgba(249,115,22,.12))}.lp-footer{text-align:center;font-size:.65rem;color:#3f3f46;margin-top:24px;line-height:1.6}
