@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800;900&family=DM+Mono:wght@400;500&display=swap");:root{--bg:#080d1a;--surface:hsla(0,0%,100%,.055);--surface-2:hsla(0,0%,100%,.08);--surface-hover:hsla(0,0%,100%,.1);--border:hsla(0,0%,100%,.12);--border-strong:hsla(0,0%,100%,.2);--text:hsla(0,0%,100%,.93);--muted:hsla(0,0%,100%,.55);--muted-2:hsla(0,0%,100%,.35);--shadow:0 8px 32px rgba(0,0,0,.4);--shadow-lg:0 20px 60px rgba(0,0,0,.5);--radius:16px;--radius-sm:10px;--radius-lg:22px;--accent:#7c6fff;--accent-2:#00c2ff;--accent-green:#2eff8d;--accent-gradient:linear-gradient(135deg,var(--accent),var(--accent-2));--status-ok:#2eff8d;--status-ok-bg:rgba(46,255,141,.12);--status-ok-border:rgba(46,255,141,.3);--status-warn:#ffc94d;--status-warn-bg:rgba(255,201,77,.12);--status-warn-border:rgba(255,201,77,.3);--status-err:#ff4d6d;--status-err-bg:rgba(255,77,109,.12);--status-err-border:rgba(255,77,109,.3);--status-blue:#00c2ff;--status-blue-bg:rgba(0,194,255,.12);--status-blue-border:rgba(0,194,255,.3);--status-neutral:hsla(0,0%,100%,.5);--status-neutral-bg:hsla(0,0%,100%,.06);--status-neutral-border:hsla(0,0%,100%,.14)}*{box-sizing:border-box}body,html{height:100%}body{margin:0;color:var(--text);background:radial-gradient(1200px 700px at 15% -15%,rgba(124,111,255,.22),transparent 55%),radial-gradient(900px 600px at 95% 5%,rgba(0,194,255,.14),transparent 60%),radial-gradient(800px 500px at 55% 115%,rgba(46,255,141,.09),transparent 55%),var(--bg);font-family:DM Sans,ui-sans-serif,system-ui,-apple-system,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--accent-2);text-decoration:none}a:hover{text-decoration:underline;opacity:.85}.appShell{max-width:1120px;margin:0 auto;padding:20px 22px}.topbar{justify-content:space-between;gap:16px;padding:14px 18px;border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg,hsla(0,0%,100%,.06),hsla(0,0%,100%,.03));box-shadow:var(--shadow);flex-wrap:wrap}.brand,.topbar{display:flex;align-items:center}.brand{gap:12px}.brandLogo{width:42px;height:42px;border-radius:13px;box-shadow:0 8px 24px rgba(0,0,0,.3);background:hsla(0,0%,100%,.06);padding:5px;flex-shrink:0}.brand h1{margin:0;font-size:15px;font-weight:700;letter-spacing:.1px}.brandSub{font-size:11px;color:var(--muted);margin-top:1px;letter-spacing:.2px}.nav{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.nav a{padding:7px 12px;border-radius:10px;border:1px solid hsla(0,0%,100%,.09);background:hsla(0,0%,100%,.045);font-size:13px;font-weight:500;color:var(--text);transition:background .12s,border-color .12s}.nav a,.nav a:hover{text-decoration:none}.nav a:hover{background:hsla(0,0%,100%,.09);border-color:hsla(0,0%,100%,.16);opacity:1}.topActions{display:flex;gap:8px;flex-wrap:wrap}.btn,.topActions{align-items:center}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-strong);background:hsla(0,0%,100%,.06);color:var(--text);padding:9px 14px;border-radius:12px;font-weight:600;font-size:13.5px;cursor:pointer;transition:transform .12s ease,background .12s ease,border-color .12s ease,box-shadow .12s ease;font-family:inherit;white-space:nowrap;display:inline-flex;gap:6px}.btn,.btn:hover{text-decoration:none}.btn:hover{background:hsla(0,0%,100%,.1);transform:translateY(-1px);box-shadow:0 4px 16px rgba(0,0,0,.25);opacity:1}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.btnPrimary{border-color:rgba(124,111,255,.5);background:linear-gradient(135deg,rgba(124,111,255,.85),rgba(0,194,255,.55))}.btnPrimary:hover{background:linear-gradient(135deg,rgba(124,111,255,.95),rgba(0,194,255,.65));border-color:rgba(124,111,255,.7)}.btnGhost{border-color:transparent;background:transparent}.btnGhost:hover{background:hsla(0,0%,100%,.06)}.btnSm{padding:6px 10px;font-size:12px;border-radius:9px}.card{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,hsla(0,0%,100%,.065),hsla(0,0%,100%,.035));box-shadow:var(--shadow)}.cardBody{padding:18px 20px}.cardBodySm{padding:14px 16px}.authShell{display:grid;place-items:center;min-height:calc(100vh - 160px);padding:24px 0}.authCard{width:100%;max-width:460px;border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg,hsla(0,0%,100%,.075),hsla(0,0%,100%,.035));box-shadow:var(--shadow-lg);padding:20px}.authHeader{padding:6px 6px 14px}.authHeader h2{margin:8px 0 4px;font-size:22px;font-weight:800}.authHeader p{margin:0;color:var(--muted)}.authBadge{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;border:1px solid rgba(124,111,255,.4);background:rgba(124,111,255,.12);color:#a89fff}.formGrid{display:grid;grid-gap:14px;gap:14px;padding:6px}.field{display:grid;grid-gap:6px;gap:6px}.field span{font-size:13px;font-weight:600;color:hsla(0,0%,100%,.75)}input,select,textarea{width:100%;padding:11px 13px;border-radius:12px;border:1px solid hsla(0,0%,100%,.12);background:rgba(0,0,0,.22);color:var(--text);outline:none;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:hsla(0,0%,100%,.35)}input:focus,select:focus,textarea:focus{border-color:rgba(0,194,255,.55);box-shadow:0 0 0 3px rgba(0,194,255,.14)}.alert{padding:11px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface);font-size:14px}.alertError{border-color:var(--status-err-border);background:var(--status-err-bg);color:#ffb3be}.alertSuccess{border-color:var(--status-ok-border);background:var(--status-ok-bg);color:#a3ffcd}.alertWarn{border-color:var(--status-warn-border);background:var(--status-warn-bg);color:#ffe5a0}.authFooter{display:flex;justify-content:center;gap:8px;margin-top:14px;font-size:13px;color:var(--muted)}.chip{gap:6px;padding:8px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:hsla(0,0%,100%,.85);font-size:13px;font-weight:500;max-width:360px;overflow:hidden;text-overflow:ellipsis}.chip,.statusBadge{display:inline-flex;align-items:center;white-space:nowrap}.statusBadge{gap:5px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.2px}.statusOk{background:var(--status-ok-bg);color:var(--status-ok);border:1px solid var(--status-ok-border)}.statusWarn{background:var(--status-warn-bg);color:var(--status-warn);border:1px solid var(--status-warn-border)}.statusErr{background:var(--status-err-bg);color:var(--status-err);border:1px solid var(--status-err-border)}.statusBlue{background:var(--status-blue-bg);color:var(--status-blue);border:1px solid var(--status-blue-border)}.statusNeutral{background:var(--status-neutral-bg);color:var(--status-neutral);border:1px solid var(--status-neutral-border)}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:11px 12px;border-bottom:1px solid hsla(0,0%,100%,.07);vertical-align:middle}th{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.6px}.tableWrap{overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:hsla(0,0%,100%,.025)}.pageTitle{margin:0 0 6px;font-size:24px;font-weight:800}.pageSubtitle{margin:0 0 20px;font-size:15px}.muted,.pageSubtitle{color:var(--muted)}.muted2{color:var(--muted-2)}.divider{height:1px;background:hsla(0,0%,100%,.08);margin:16px 0}.navSep{opacity:.4;margin:0 4px;color:var(--muted);align-self:center}.stack{display:flex;flex-direction:column;gap:12px}.row{gap:10px;flex-wrap:wrap}.progressSteps,.row{display:flex;align-items:center}.progressSteps{gap:0;padding:18px 20px;overflow-x:auto;scrollbar-width:none}.progressSteps::-webkit-scrollbar{display:none}.progressStep{gap:8px}.progressDot,.progressStep{display:flex;align-items:center;flex-shrink:0}.progressDot{width:28px;height:28px;border-radius:50%;justify-content:center;font-size:12px;font-weight:800;border:2px solid var(--border);background:var(--surface);color:var(--muted);transition:all .2s}.progressDot.done{background:var(--status-ok-bg);border-color:var(--status-ok-border);color:var(--status-ok)}.progressDot.active{background:linear-gradient(135deg,rgba(124,111,255,.3),rgba(0,194,255,.2));border-color:var(--accent);color:#fff;box-shadow:0 0 12px rgba(124,111,255,.45)}.progressLabel{font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap}.progressLabel.active{color:var(--text)}.progressLabel.done{color:var(--status-ok)}.progressConnector{width:32px;height:2px;background:var(--border);margin:0 4px;flex-shrink:0}.progressConnector.done{background:var(--status-ok-border)}.docRow{display:grid;grid-template-columns:1fr auto auto;align-items:center;grid-gap:12px;gap:12px;padding:14px 16px;border-bottom:1px solid hsla(0,0%,100%,.06);transition:background .12s}.docRow:last-child{border-bottom:none}.docRow:hover{background:hsla(0,0%,100%,.02)}.docRowInfo{min-width:0}.docRowTitle{font-size:14px;font-weight:600;line-height:1.3}.docRowHelp{font-size:12px;color:var(--muted);margin-top:2px}.docRowFile{font-size:11px;color:var(--muted-2);margin-top:3px;font-family:DM Mono,monospace}.docRowStatus{flex-shrink:0}.docRowUpload{flex-shrink:0;display:flex;align-items:center;gap:8px}.fileInputWrap{position:relative}.fileInputWrap input[type=file]{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer;width:0;height:0;overflow:hidden}.fileLabel{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:9px;border:1px solid var(--border);background:var(--surface);font-size:12px;font-weight:600;cursor:pointer;color:var(--text);transition:background .12s}.fileLabel:hover{background:var(--surface-2)}.kpiGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px}.kpiTile{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,hsla(0,0%,100%,.06),hsla(0,0%,100%,.03));padding:16px 18px}.kpiLabel{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.kpiValue{font-size:26px;font-weight:900;margin-top:4px;letter-spacing:-.5px}.kpiSub{font-size:12px;color:var(--muted);margin-top:2px}.nextActionBanner{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:16px 20px;border-radius:var(--radius);border:1px solid rgba(124,111,255,.35);background:linear-gradient(135deg,rgba(124,111,255,.12),rgba(0,194,255,.07));box-shadow:0 4px 24px rgba(124,111,255,.12)}.nextActionLabel{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#a89fff;margin-bottom:4px}.nextActionText{font-size:15px;font-weight:600;color:var(--text)}.hero{padding:48px 24px 40px;border-radius:var(--radius-lg);border:1px solid var(--border);background:linear-gradient(180deg,hsla(0,0%,100%,.065),hsla(0,0%,100%,.028));box-shadow:var(--shadow-lg);text-align:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(600px 300px at 50% 0,rgba(124,111,255,.12),transparent 70%);pointer-events:none}.heroTitle{margin:0;font-size:32px;font-weight:900;letter-spacing:-.5px;line-height:1.2;position:relative}.heroSubtitle{margin:10px 0 0;font-size:19px;font-weight:700;background:linear-gradient(135deg,#a89fff,#00c2ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative}.heroBody{max-width:700px;margin:16px auto 0;color:var(--muted);font-size:15px;line-height:1.6;position:relative}.heroActions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:24px;position:relative}.landingBullets{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:12px;gap:12px;margin-top:16px}.landingBullet{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);padding:16px;text-align:left}.landingBulletIcon{font-size:20px;margin-bottom:8px}.landingBulletTitle{font-weight:800;font-size:14px;margin-bottom:4px}.calcShell{margin-top:10px}.calcHeader{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:10px 0 14px}.calcTitle{font-size:20px;font-weight:900;letter-spacing:-.3px}.calcGrid{display:grid;grid-template-columns:1fr;grid-gap:14px;gap:14px}@media (min-width:980px){.calcGrid{grid-template-columns:1fr 1fr;align-items:start}}.calcSectionTitle{margin:0 0 12px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--muted)}.calcForm{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px}@media (min-width:640px){.calcForm{grid-template-columns:1fr 1fr}}.calcField{display:grid;grid-gap:6px;gap:6px}.calcField span{font-size:13px;color:hsla(0,0%,100%,.75);font-weight:700}.calcInput{background:rgba(255,248,180,.88);border:1px solid hsla(0,0%,100%,.1);color:rgba(10,14,28,.95);font-weight:600}.calcInput:focus{border-color:rgba(0,194,255,.55);box-shadow:0 0 0 3px rgba(0,194,255,.16)}.calcResultsHeader{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.calcRows{display:inline-flex;align-items:center;gap:8px}.calcRows select{padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:rgba(0,0,0,.2);color:var(--text)}.calcKpis{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px;margin-top:14px}@media (min-width:640px){.calcKpis{grid-template-columns:repeat(3,1fr)}}.calcKpi{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);padding:14px}.calcKpiValue{margin-top:4px;font-size:20px;font-weight:900;letter-spacing:-.3px}.appWithSidebar{display:flex;min-height:100vh}.sidebar{width:220px;flex-shrink:0;background:rgba(0,0,0,.3);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:16px 12px;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:none}.sidebar::-webkit-scrollbar{display:none}.sidebarContent{flex:1 1;min-width:0;display:flex;flex-direction:column}.sidebarMain{flex:1 1;padding:28px 32px;max-width:1000px}.sidebarBrand{display:flex;align-items:center;gap:10px;padding:0 4px;margin-bottom:24px}.sidebarLogo{width:32px;height:32px;border-radius:9px;border:1px solid var(--border);background:hsla(0,0%,100%,.06);flex-shrink:0}.sidebarBrandName{font-size:12px;font-weight:700;color:var(--text);line-height:1.2}.sidebarBrandSub{font-size:10px;color:var(--muted);margin-top:1px}.sidebarSection{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--muted-2);padding:0 8px;margin-bottom:6px}.sidebarNav{display:flex;flex-direction:column;flex:1 1}.sidebarItem{display:flex;align-items:center;gap:9px;padding:8px;border-radius:9px;cursor:pointer;transition:background .12s;text-decoration:none;margin-bottom:2px;border:1px solid transparent;color:var(--muted)}.sidebarItem:hover{background:hsla(0,0%,100%,.06);text-decoration:none;color:var(--text);opacity:1}.sidebarItemActive{background:rgba(124,111,255,.15)!important;border-color:rgba(124,111,255,.28)!important;color:var(--text)!important}.sidebarItemActive .sidebarIcon{color:#a89fff}.sidebarItemActive .sidebarLabel{color:var(--text)}.sidebarItemLocked{opacity:.4;cursor:not-allowed;pointer-events:none}.sidebarStepCurrent{background:rgba(124,111,255,.08);border-color:rgba(124,111,255,.18)}.sidebarIcon{font-size:15px;width:18px;text-align:center;flex-shrink:0;color:inherit}.sidebarLabel{font-size:12px;font-weight:600;flex:1 1;color:inherit}.sidebarDot{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;flex-shrink:0;transition:all .2s}.sidebarDot--done{background:var(--status-ok-bg);border:2px solid var(--status-ok-border);color:var(--status-ok)}.sidebarDot--active{background:rgba(124,111,255,.25);border:2px solid var(--accent);color:#fff;box-shadow:0 0 10px rgba(124,111,255,.3)}.sidebarDot--warn{background:var(--status-warn-bg)!important;border-color:var(--status-warn-border)!important;color:var(--status-warn)!important;box-shadow:none!important}.sidebarDot--locked{background:var(--surface);border:2px solid var(--border);color:var(--muted-2)}.sidebarStepLabel{font-size:12px;font-weight:600;flex:1 1}.sidebarStepLabel--done{color:hsla(0,0%,100%,.55)}.sidebarStepLabel--active{color:var(--text)}.sidebarStepLabel--locked{color:var(--muted-2)}.sidebarConnector{width:2px;height:8px;background:var(--border);margin:2px 0 2px 19px}.sidebarConnectorDone{background:var(--status-ok-border)}.sidebarStepDivider{height:1px;background:var(--border);margin:10px 4px}.sidebarBadge{font-size:9px;font-weight:800;padding:2px 6px;border-radius:999px;flex-shrink:0}.sidebarBadgeDone{background:var(--status-ok-bg);color:var(--status-ok);border:1px solid var(--status-ok-border)}.sidebarBadgeActive{background:rgba(124,111,255,.2);color:#a89fff;border:1px solid rgba(124,111,255,.35)}.sidebarBadgeWarn{background:var(--status-warn-bg);color:var(--status-warn);border:1px solid var(--status-warn-border)}.sidebarBadgeLocked{background:var(--surface);color:var(--muted-2);border:1px solid var(--border)}.sidebarFooter{margin-top:auto;padding-top:12px;border-top:1px solid var(--border)}.sidebarUser{gap:8px;padding:8px;border-radius:10px;background:var(--surface);border:1px solid var(--border)}.sidebarAvatar,.sidebarUser{display:flex;align-items:center}.sidebarAvatar{width:28px;height:28px;border-radius:50%;background:rgba(124,111,255,.25);border:1px solid rgba(124,111,255,.4);justify-content:center;font-size:10px;font-weight:800;color:#a89fff;flex-shrink:0}.sidebarUserInfo{flex:1 1;min-width:0}.sidebarUserEmail{font-size:11px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebarUserRole{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-top:1px}.sidebarSignOut{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:13px;padding:4px 7px;border-radius:7px;cursor:pointer;transition:background .12s,color .12s;flex-shrink:0}.sidebarSignOut:hover{background:hsla(0,0%,100%,.08);color:var(--text)}.chatBubble{position:fixed;bottom:24px;right:24px;z-index:200}@media (max-width:768px){.sidebar{display:none}.sidebarMain{padding:12px!important;max-width:100%!important}.appWithSidebar{display:block}}