:root{--bg-0:#f4f8f7;--bg-1:#e8f1ee;--bg-2:#cfe4dc;--bg-spot-1:#7fbdaf;--bg-spot-2:#e8c89a;--bg-spot-3:#a8c8e8;--ink:#14272a;--ink-soft:#3e5e64;--line:#b8d0c8;--card:#ffffffb8;--card-strong:#ffffffeb;--brand:#0b7a6e;--brand-strong:#08615a;--brand-glow:#0b7a6e52;--brand-glow-strong:#0b7a6e80;--danger:#b83c30;--danger-strong:#8a2820;--danger-glow:#b83c3052;--warning:#bb6e1c;--warning-ink:#8c4800;--warning-bg:#bb6e1c1a;--warning-line:#bb6e1c47;--shadow-sm:0 2px 8px #0e1c200f,0 6px 28px #0e1c2014;--shadow-md:0 8px 32px #0e1c201a,0 2px 8px #0e1c200f;--shadow-lg:0 16px 60px #0e1c2024,0 4px 16px #0e1c2014;--shadow-glow:0 0 0 1px var(--brand-glow),0 8px 32px var(--brand-glow);--table-hover:#0b7a6e0f;--field-bg:#ffffffe0;--radius:18px;--radius-sm:11px;--radius-xs:7px;--t:.2s cubic-bezier(.4,0,.2,1)}:root[data-theme=dark]{--bg-0:#080e10;--bg-1:#0c161a;--bg-2:#111e22;--bg-spot-1:#17403a;--bg-spot-2:#362c1c;--bg-spot-3:#142030;--ink:#cce8e4;--ink-soft:#72a09a;--line:#1e3c36;--card:#0a1418d1;--card-strong:#070e11f0;--brand:#30bfb0;--brand-strong:#22958a;--brand-glow:#30bfb042;--brand-glow-strong:#30bfb070;--danger:#d85a4a;--danger-strong:#b03a2c;--danger-glow:#d85a4a52;--warning:#cc9a38;--warning-ink:#eabc6a;--warning-bg:#cc9a3826;--warning-line:#cc9a3861;--shadow-sm:0 4px 16px #00030480,0 1px 4px #0003044d;--shadow-md:0 8px 32px #0003048c,0 2px 8px #00030459;--shadow-lg:0 20px 72px #000304a6,0 4px 20px #00030466;--shadow-glow:0 0 0 1px var(--brand-glow),0 8px 32px var(--brand-glow);--table-hover:#30bfb017;--field-bg:#081014eb}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{font-family:var(--font-display),"Trebuchet MS",sans-serif;color:var(--ink);background-color:var(--bg-0);isolation:isolate;position:relative}body:before,body:after{content:"";pointer-events:none;z-index:-1;border-radius:50%;position:fixed}body:before{background:radial-gradient(circle,var(--bg-spot-1)0%,transparent 70%);opacity:.7;width:700px;height:700px;animation:26s ease-in-out infinite orb-drift-a;top:-200px;right:-150px}body:after{background:radial-gradient(circle,var(--bg-spot-2)0%,transparent 70%);opacity:.6;width:500px;height:500px;animation:32s ease-in-out infinite orb-drift-b;bottom:-120px;left:-100px}@keyframes orb-drift-a{0%,to{transform:translate(0)scale(1)}33%{transform:translate(-60px,40px)scale(1.08)}66%{transform:translate(40px,-50px)scale(.94)}}@keyframes orb-drift-b{0%,to{transform:translate(0)scale(1)}40%{transform:translate(50px,-40px)scale(1.12)}70%{transform:translate(-30px,30px)scale(.9)}}a{color:var(--brand-strong);transition:color var(--t);text-decoration:none}a:hover{color:var(--brand)}h1,h2,h3{letter-spacing:-.025em;margin:0;line-height:1.12}p{margin:0}small,.muted{color:var(--ink-soft)}code,.mono{font-family:var(--font-mono),"Courier New",monospace;background:color-mix(in srgb,var(--brand)10%,transparent);border:1px solid color-mix(in srgb,var(--brand-strong)22%,transparent);border-radius:var(--radius-xs);color:color-mix(in srgb,var(--brand-strong)80%,var(--ink));padding:2px 7px;font-size:.88em}main{max-width:1260px;margin:0 auto;padding:28px 22px 48px}.page-shell{flex-direction:column;gap:18px;display:flex}.card{background:var(--card);border:1px solid color-mix(in srgb,var(--line)80%,transparent);border-radius:var(--radius);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(18px)saturate(1.4);transition:box-shadow var(--t),border-color var(--t);padding:20px;animation:.38s cubic-bezier(.34,1.24,.64,1) both panel-enter}.card:focus-within{border-color:color-mix(in srgb,var(--brand)44%,transparent)}.hero{background:radial-gradient(circle at 95% -5%,color-mix(in srgb,var(--brand)20%,transparent),transparent 45%),radial-gradient(circle at 5% 110%,color-mix(in srgb,var(--bg-spot-2)30%,transparent),transparent 40%),linear-gradient(140deg,var(--card-strong),color-mix(in srgb,var(--card-strong)70%,transparent));box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--brand)22%,transparent)}.hero-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--brand);font-size:10.5px;font-weight:700}.hero-title{background:linear-gradient(135deg,var(--ink)0%,color-mix(in srgb,var(--ink)70%,var(--brand))100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-top:6px;font-size:clamp(26px,3.8vw,42px)}.hero-subtext{max-width:68ch;color:var(--ink-soft);margin-top:10px;line-height:1.6}.badge{border:1px solid color-mix(in srgb,var(--brand-strong)28%,transparent);background:color-mix(in srgb,var(--brand)10%,transparent);color:var(--brand-strong);letter-spacing:.015em;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.badge.warning{color:var(--warning-ink);border-color:var(--warning-line);background:var(--warning-bg)}.badge.danger{color:var(--danger-strong);border-color:color-mix(in srgb,var(--danger)32%,transparent);background:color-mix(in srgb,var(--danger)12%,transparent)}.grid{gap:18px;display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px;display:grid}.kpi-card{background:color-mix(in srgb,var(--card-strong)80%,transparent);border:1px solid color-mix(in srgb,var(--brand-strong)16%,transparent);transition:transform var(--t),box-shadow var(--t);border-radius:14px;padding:14px 16px;position:relative;overflow:hidden}.kpi-card:before{content:"";background:linear-gradient(90deg,var(--brand),color-mix(in srgb,var(--brand)40%,transparent));border-radius:999px;height:2px;position:absolute;top:0;left:0;right:0}.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.kpi-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-size:11px;font-weight:700}.kpi-value{letter-spacing:-.03em;color:var(--ink);margin-top:6px;font-size:30px;font-weight:800;line-height:1}.stack{flex-direction:column;gap:10px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.actions-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.control-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.table-wrap{border:1px solid color-mix(in srgb,var(--brand-strong)18%,transparent);background:color-mix(in srgb,var(--card-strong)85%,transparent);border-radius:14px;width:100%;overflow:auto}table{border-collapse:collapse;width:100%;min-width:500px}th,td{text-align:left;border-bottom:1px solid color-mix(in srgb,var(--brand-strong)10%,transparent);vertical-align:middle;padding:11px 14px;font-size:13.5px}th{text-transform:uppercase;letter-spacing:.09em;color:var(--ink-soft);background:color-mix(in srgb,var(--brand)5%,transparent);font-size:11px;font-weight:700}tbody tr{transition:background var(--t)}tbody tr:hover{background:var(--table-hover)}tbody tr:hover td:first-child{border-left:2px solid var(--brand);padding-left:12px}tbody tr:last-child td{border-bottom:none}.table-actions{flex-wrap:wrap;gap:6px;display:flex}button,input,select,textarea{border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--brand-strong)26%,transparent);font:inherit;transition:all var(--t);padding:9px 13px;font-size:13.5px}input,select,textarea{background:var(--field-bg);color:var(--ink)}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-glow);outline:none}input::placeholder{color:color-mix(in srgb,var(--ink-soft)60%,transparent)}button{background:linear-gradient(135deg,var(--brand),var(--brand-strong));color:#e8fffc;cursor:pointer;letter-spacing:.01em;border-color:#0000;font-weight:600;position:relative;overflow:hidden}button:after{content:"";opacity:0;transition:opacity var(--t);background:linear-gradient(135deg,#ffffff1f,#0000);position:absolute;inset:0}button:hover:after{opacity:1}button:hover{box-shadow:0 6px 24px var(--brand-glow-strong);transform:translateY(-1px)}button:active{transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.48;box-shadow:none;transform:none}button.secondary{background:color-mix(in srgb,var(--card-strong)78%,transparent);color:var(--ink);border:1px solid color-mix(in srgb,var(--brand-strong)24%,transparent)}button.secondary:hover{box-shadow:0 4px 16px color-mix(in srgb,var(--ink)14%,transparent);border-color:color-mix(in srgb,var(--brand-strong)40%,transparent)}button.secondary:after{display:none}button.danger{background:linear-gradient(135deg,var(--danger),var(--danger-strong))}button.danger:hover{box-shadow:0 6px 24px var(--danger-glow)}.button-link{border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--brand),var(--brand-strong));color:#e8fffc;transition:all var(--t);letter-spacing:.01em;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:9px 14px;font-size:13.5px;font-weight:600;display:inline-flex}.button-link:hover{color:#e8fffc;box-shadow:0 6px 24px var(--brand-glow-strong);transform:translateY(-1px)}.theme-toggle{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;padding:0;font-size:18px;display:inline-flex}.form-label{color:var(--ink-soft);letter-spacing:.02em;flex-direction:column;gap:6px;font-size:12.5px;font-weight:600;display:flex}.progress-track{background:color-mix(in srgb,var(--brand)15%,transparent);border-radius:999px;width:100%;height:8px;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg,var(--brand),color-mix(in srgb,var(--brand)60%,var(--warning)));height:100%;position:relative;overflow:hidden}.progress-fill:after{content:"";background:linear-gradient(90deg,#0000,#fff6,#0000);width:100%;height:100%;animation:1.4s linear infinite shimmer;position:absolute;top:0;left:-100%}@keyframes shimmer{0%{left:-100%}to{left:200%}}.dropzone{border:2px dashed color-mix(in srgb,var(--brand)40%,transparent);border-radius:var(--radius);text-align:center;cursor:pointer;transition:all var(--t);background:color-mix(in srgb,var(--brand)4%,transparent);color:var(--ink-soft);padding:40px 24px;position:relative}.dropzone:hover,.dropzone.drag-over{border-color:var(--brand);background:color-mix(in srgb,var(--brand)8%,transparent);box-shadow:0 0 0 3px var(--brand-glow);color:var(--ink)}.dropzone-icon{opacity:.6;transition:opacity var(--t),transform var(--t);margin-bottom:12px;font-size:40px;display:block}.dropzone:hover .dropzone-icon,.dropzone.drag-over .dropzone-icon{opacity:1;transform:translateY(-4px)}.dropzone-label{margin-bottom:4px;font-size:15px;font-weight:600;display:block}.dropzone-hint{color:var(--ink-soft);font-size:12px}.dropzone input[type=file]{opacity:0;cursor:pointer;border-radius:var(--radius);background:0 0;border:none;padding:0;position:absolute;inset:0}.status-line{border-top:1px solid color-mix(in srgb,var(--brand-strong)14%,transparent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;padding-top:10px;font-size:13px;display:flex}.status-dot{background:var(--brand);border-radius:50%;width:7px;height:7px;margin-right:6px;animation:2s ease-in-out infinite status-pulse;display:inline-block}.status-dot.error{background:var(--danger)}@keyframes status-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.error-text{color:var(--danger-strong);font-weight:600}.empty{color:var(--ink-soft);padding:18px 14px;font-style:italic}.truncate-link{white-space:nowrap;text-overflow:ellipsis;vertical-align:bottom;max-width:340px;display:inline-block;overflow:hidden}.list-clean{flex-direction:column;gap:7px;margin:0;padding:0;list-style:none;display:flex}.list-item{border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--brand-strong)20%,transparent);background:color-mix(in srgb,var(--card-strong)80%,transparent);transition:background var(--t),border-color var(--t);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.list-item:hover{background:color-mix(in srgb,var(--card-strong)95%,transparent);border-color:color-mix(in srgb,var(--brand)35%,transparent)}.file-row{align-items:center;gap:10px;display:flex}.file-icon{background:color-mix(in srgb,var(--brand)12%,transparent);border:1px solid color-mix(in srgb,var(--brand)20%,transparent);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;display:flex}.auth-layout{grid-template-columns:1.25fr .85fr;align-content:center;gap:18px;min-height:calc(100vh - 80px);display:grid}.brand-panel{background:radial-gradient(circle at 95% 0%,color-mix(in srgb,var(--brand)28%,transparent),transparent 48%),radial-gradient(circle at 5% 100%,color-mix(in srgb,var(--bg-spot-2)28%,transparent),transparent 42%),linear-gradient(150deg,var(--card-strong),color-mix(in srgb,var(--card)80%,transparent));border-color:color-mix(in srgb,var(--brand)24%,transparent);flex-direction:column;justify-content:space-between;gap:20px;min-height:440px;display:flex}.feature-list{color:var(--ink-soft);flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.feature-list li{align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;display:flex}.feature-list li:before{content:"→";color:var(--brand);flex-shrink:0;margin-top:1px;font-weight:700}.auth-panel{justify-self:end;width:100%;max-width:460px}.token-card{max-width:880px;margin:0 auto}@keyframes panel-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-shell>:first-child{animation-delay:0s}.page-shell>:nth-child(2){animation-delay:40ms}.page-shell>:nth-child(3){animation-delay:80ms}.page-shell>:nth-child(4){animation-delay:.12s}.page-shell>:nth-child(5){animation-delay:.16s}.page-shell>:nth-child(6){animation-delay:.2s}@media (max-width:1100px){.auth-layout{grid-template-columns:1fr;min-height:auto}.auth-panel{justify-self:stretch;max-width:none}}@media (max-width:760px){main{padding:16px 14px 28px}.card{border-radius:15px;padding:16px}.truncate-link{max-width:200px}.hero-title{font-size:28px}.control-grid{grid-template-columns:1fr}.kpi-card{padding:11px 13px}.kpi-value{font-size:26px}}
@font-face{font-family:Sora;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/b886574ba42c3409-s.1f4af8e6.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Sora;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/c41ca59f1c34ba31-s.p.e20f337c.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora Fallback;src:local(Arial);ascent-override:85.29%;descent-override:25.5%;line-gap-override:0.0%;size-adjust:113.73%}.sora_a6e0e515-module__NbNjtG__className{font-family:Sora,Sora Fallback;font-style:normal}.sora_a6e0e515-module__NbNjtG__variable{--font-display:"Sora","Sora Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.f2220059.woff2)format("woff2");unicode-range:U+460-52F,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:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.f6f1950f.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.bd5f4d11.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.51c18f09.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.23358719.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.15008bfb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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 Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_2b1eae20-module__XfFTLG__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_2b1eae20-module__XfFTLG__variable{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}
