[hidden]{display:none!important}
:root{--navy:#07152f;--navy2:#0d2347;--blue:#2764ff;--cyan:#10bde8;--purple:#7c5cff;--green:#18c88b;--orange:#ff9f43;--ink:#17223b;--muted:#75809a;--line:#e8edf5;--surface:#fff;--bg:#f4f7fc;--shadow:0 18px 50px rgba(20,42,82,.1);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink)}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}.login-view{min-height:100vh;display:grid;grid-template-columns:minmax(440px,1.15fr) minmax(420px,.85fr);background:#fff}.login-art{position:relative;overflow:hidden;padding:52px 7vw;color:#fff;background:radial-gradient(circle at 85% 15%,rgba(41,115,255,.45),transparent 30%),linear-gradient(145deg,#06132e 10%,#0b2652 55%,#134691)}.brand{height:44px;display:flex;align-items:center;gap:12px;font-size:15px;font-weight:800;letter-spacing:.07em}.brand-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#6b5cff,#0bc5ea);box-shadow:0 9px 25px rgba(27,169,246,.3);color:#fff}.brand-large{font-size:18px}.hero-copy{position:relative;z-index:2;max-width:680px;margin-top:15vh}.eyebrow,.section-head>div>span,.welcome-banner>div>span{font-size:11px;letter-spacing:.18em;font-weight:800;color:#78cfff}.hero-copy h1{font-size:clamp(44px,5vw,74px);line-height:1.05;margin:20px 0}.hero-copy h1 em{font-style:normal;color:#66d5ff}.hero-copy>p{max-width:600px;font-size:18px;line-height:1.7;color:#c7d8f2}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:48px}.feature-grid div{padding:18px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:rgba(255,255,255,.06);backdrop-filter:blur(8px)}.feature-grid b,.feature-grid span{display:block}.feature-grid span{margin-top:5px;color:#adc2e2;font-size:13px}.orb{position:absolute;border-radius:50%;filter:blur(1px);border:1px solid rgba(255,255,255,.12)}.orb-one{width:380px;height:380px;right:-190px;bottom:-100px}.orb-two{width:180px;height:180px;right:10%;top:15%;background:rgba(93,65,255,.12)}.login-panel{display:grid;place-items:center;padding:40px}.login-card{width:min(440px,100%)}.mobile-brand{display:none;color:var(--navy);margin-bottom:44px}.status-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid #dce8ff;border-radius:99px;padding:8px 12px;color:#3562a9;background:#f7faff;font-size:12px;font-weight:700}.status-pill i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(24,200,139,.13)}.login-card h2{font-size:36px;margin:22px 0 6px}.login-card>p{color:var(--muted);margin:0 0 30px}.login-card label,.form-grid label,.upload-card label{display:block;color:#394660;font-size:13px;font-weight:700;margin:16px 0}.login-card input,.form-grid input,.form-grid select,.form-grid textarea,.upload-card select,.table-tools input{width:100%;margin-top:8px;border:1px solid #dce3ee;background:#f9fbfe;border-radius:12px;padding:13px 14px;outline:none;transition:.2s}.login-card input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.table-tools input:focus{border-color:#5a81ff;box-shadow:0 0 0 4px rgba(39,100,255,.1);background:#fff}.password-wrap{position:relative;display:block}.password-wrap input{padding-right:70px}.password-wrap button{position:absolute;right:12px;top:19px;border:0;background:transparent;color:var(--blue);font-size:12px;font-weight:800}.primary-button,.secondary-button{border:0;border-radius:12px;padding:13px 18px;font-weight:800;transition:.2s}.primary-button{width:100%;color:#fff;background:linear-gradient(135deg,#5f55eb,#246bff);box-shadow:0 10px 25px rgba(54,95,232,.22)}.primary-button:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(54,95,232,.3)}.primary-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.primary-button span{float:right}.secondary-button{background:#edf2fb;color:#34466d}.compact{width:auto;padding:11px 16px}.login-card small{display:block;text-align:center;color:#8c96aa;margin-top:22px}.form-error{margin-top:14px;padding:12px;border-radius:10px;background:#fff0f1;color:#c73046;font-size:13px}.toast{position:fixed;z-index:100;right:24px;top:22px;max-width:380px;padding:14px 18px;border-radius:12px;background:#15213b;color:#fff;box-shadow:var(--shadow);opacity:0;transform:translateY(-15px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:none}.toast.error{background:#a7273b}.app-view{min-height:100vh}.sidebar{position:fixed;z-index:30;inset:0 auto 0 0;width:260px;padding:22px 16px;background:linear-gradient(180deg,#07152f,#091d3d);color:#fff;display:flex;flex-direction:column}.sidebar>.brand{padding:0 10px 22px;border-bottom:1px solid rgba(255,255,255,.08)}.nav-menu{padding-top:16px;overflow:auto}.nav-menu p{margin:20px 12px 8px;color:#667da3;font-size:10px;letter-spacing:.18em;font-weight:800}.nav-menu button{width:100%;display:flex;align-items:center;gap:12px;border:0;border-radius:11px;padding:11px 12px;margin:3px 0;background:transparent;color:#aebdd6;text-align:left;font-size:13px}.nav-menu button>span{width:24px;font-size:18px;text-align:center}.nav-menu button i{margin-left:auto;font-size:9px;font-style:normal;color:#7183a2}.nav-menu button:hover,.nav-menu button.active{color:#fff;background:linear-gradient(90deg,rgba(66,100,255,.3),rgba(22,193,235,.08))}.nav-menu button.active{box-shadow:inset 3px 0 #6c7bff}.sidebar-user{display:flex;align-items:center;gap:10px;margin-top:auto;padding:15px 8px 0;border-top:1px solid rgba(255,255,255,.08)}.sidebar-user>div,.avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#725eff,#1abbea);font-weight:800}.sidebar-user span{min-width:0;flex:1}.sidebar-user b,.sidebar-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user b{font-size:12px}.sidebar-user small{font-size:10px;color:#8497b7;margin-top:3px}.sidebar-user button{border:0;background:transparent;color:#8ea2c3;font-size:20px}.main{margin-left:260px;min-height:100vh}.topbar{height:80px;padding:0 30px;display:flex;align-items:center;gap:18px;background:rgba(255,255,255,.88);border-bottom:1px solid var(--line);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20}.topbar h2{font-size:18px;margin:4px 0 0}.topbar small{color:#8993a7}.top-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.icon-button{width:40px;height:40px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#53617b}.topbar>#menuButton{display:none}.workspace-select{display:flex;flex-direction:column;padding:6px 12px;border:1px solid var(--line);border-radius:11px;background:#fff}.workspace-select span{font-size:9px;color:var(--muted);font-weight:800;letter-spacing:.08em}.workspace-select select{border:0;background:transparent;color:var(--ink);font-size:12px;font-weight:800;outline:none}.content{padding:28px}.page{display:none}.page.active{display:block}.welcome-banner{position:relative;overflow:hidden;min-height:190px;display:flex;justify-content:space-between;align-items:center;padding:36px 42px;border-radius:22px;color:#fff;background:radial-gradient(circle at 82% 30%,rgba(49,194,255,.35),transparent 26%),linear-gradient(125deg,#10265a,#2651ce 60%,#6d4be3);box-shadow:0 20px 45px rgba(40,78,181,.22)}.welcome-banner:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(255,255,255,.15);border-radius:50%;right:-90px;top:-170px}.welcome-banner h3{font-size:30px;margin:12px 0 8px}.welcome-banner p{margin:0;color:#d6e1ff}.pulse-visual{position:relative;z-index:2;width:105px;height:105px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:grid;place-items:center}.pulse-visual i{position:absolute;width:70px;height:70px;border-radius:50%;background:rgba(56,229,199,.16);box-shadow:0 0 0 12px rgba(56,229,199,.06)}.pulse-visual b{z-index:2;font-size:13px;letter-spacing:.15em;color:#83ffda}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}.metrics article{display:flex;gap:14px;align-items:center;padding:21px;background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:0 8px 24px rgba(24,45,82,.05)}.metric-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;font-size:22px}.metric-icon.purple{color:#6548df;background:#efeaff}.metric-icon.cyan{color:#0789ad;background:#dcf8ff}.metric-icon.orange{color:#c86b0c;background:#fff0df}.metric-icon.green{color:#078e62;background:#ddfaef}.metrics small,.metrics strong,.metrics em{display:block}.metrics small{color:var(--muted);font-size:11px}.metrics strong{font-size:23px;margin:3px 0}.metrics em{font-size:10px;font-style:normal;color:#91a0b8}.dashboard-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 8px 28px rgba(24,45,82,.05)}.panel-head,.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.panel-head small,.import-guide>small{color:#7f8ba2;font-size:10px;letter-spacing:.14em;font-weight:800}.panel h3,.section-head h3{margin:5px 0;font-size:20px}.online{color:#0a996d;background:#e5fbf3;border-radius:99px;padding:8px 11px;font-size:11px;font-weight:800}.readiness-list{margin-top:15px}.readiness-list div{display:flex;justify-content:space-between;padding:14px 2px;border-top:1px solid var(--line);font-size:13px}.readiness-list span{display:flex;align-items:center;gap:10px;color:#56627a}.readiness-list b{font-size:11px}.green-dot,.amber-dot{width:8px;height:8px;border-radius:50%}.green-dot{background:var(--green)}.amber-dot{background:var(--orange)}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:20px}.quick-grid button{border:1px solid var(--line);border-radius:14px;background:#fafcff;padding:20px 10px;color:#536eff;font-size:21px}.quick-grid button span{display:block;margin-top:8px;color:#48556d;font-size:11px;font-weight:800}.section-head{margin-bottom:22px}.section-head h3{font-size:28px}.section-head p{margin:5px 0;color:var(--muted);font-size:13px}.table-panel{padding:0;overflow:hidden}.table-tools{display:flex;gap:10px;padding:18px}.table-tools input{max-width:350px;margin:0}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:680px}th,td{text-align:left;padding:14px 20px;border-top:1px solid var(--line);font-size:12px}th{background:#f8faff;color:#7b879d;text-transform:uppercase;font-size:9px;letter-spacing:.12em}td{color:#41506a}.badge{display:inline-block;border-radius:99px;padding:6px 9px;font-size:10px;font-weight:800}.badge.success{background:#e3f9f0;color:#07865d}.badge.warning{background:#fff3df;color:#b86a00}.badge.danger{background:#ffe9ed;color:#b82f48}.empty-state{text-align:center;padding:50px;color:var(--muted)}.import-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.upload-card{text-align:center}.upload-icon{width:62px;height:62px;margin:0 auto 14px;display:grid;place-items:center;border-radius:18px;background:#e9edff;color:#6457e9;font-size:28px}.upload-card>p,.import-guide>p{color:var(--muted);font-size:13px;line-height:1.6}.upload-card>b{display:block;margin:12px;color:#52617a;font-size:12px}.upload-card label{text-align:left}.column-tags{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 25px}.column-tags span{padding:7px 10px;border-radius:8px;background:#e8edff;color:#4a58bb;font:11px ui-monospace,monospace}.column-tags.muted span{background:#f1f4f8;color:#66748c}.preview-summary{display:flex;gap:12px;flex-wrap:wrap;padding:16px 22px}.preview-summary span{padding:8px 11px;border-radius:9px;background:#f2f5fa;color:#53617b;font-size:11px;font-weight:800}.placeholder{text-align:center;padding:70px 30px}.placeholder>div{width:72px;height:72px;margin:auto;display:grid;place-items:center;border-radius:22px;background:linear-gradient(135deg,#eee9ff,#dff8ff);color:#6155e6;font-size:30px}.placeholder>span{display:block;margin-top:22px;color:#7e69df;font-size:10px;letter-spacing:.18em;font-weight:800}.placeholder h3{font-size:29px}.placeholder p{max-width:550px;margin:12px auto 25px;color:var(--muted);line-height:1.7}.placeholder button{display:inline-block}dialog{width:min(600px,calc(100% - 30px));border:0;border-radius:20px;padding:0;box-shadow:0 35px 80px rgba(7,21,47,.3)}dialog::backdrop{background:rgba(5,15,35,.65);backdrop-filter:blur(4px)}dialog form{padding:24px}.dialog-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:15px}.dialog-head small{font-size:10px;color:#6c62e5;letter-spacing:.14em;font-weight:800}.dialog-head h3{margin:4px 0 0}.dialog-close{border:0;background:#f1f4f8;width:34px;height:34px;border-radius:10px;font-size:21px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.form-grid .wide{grid-column:1/-1}.form-grid textarea{resize:vertical}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:18px;margin-top:10px}.dialog-actions .primary-button{width:auto}.sidebar-overlay{display:none}
@media(max-width:1100px){.metrics{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.login-view{grid-template-columns:1fr 1fr}.hero-copy h1{font-size:46px}}
@media(max-width:820px){.login-view{display:block}.login-art{display:none}.login-panel{min-height:100vh;padding:28px}.mobile-brand{display:flex}.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:none}.main{margin-left:0}.topbar>#menuButton{display:block}.sidebar-overlay{position:fixed;z-index:25;inset:0;background:rgba(4,12,28,.55)}.sidebar-overlay.show{display:block}.content{padding:18px}.workspace-select{display:none}.welcome-banner{padding:28px;min-height:170px}.pulse-visual{display:none}.import-layout{grid-template-columns:1fr}}
@media(max-width:560px){.metrics{grid-template-columns:1fr}.welcome-banner h3{font-size:24px}.topbar{padding:0 14px;height:70px}.topbar h2{font-size:15px}.content{padding:13px}.panel{padding:17px}.section-head{align-items:flex-start}.section-head .primary-button{font-size:0}.section-head .primary-button:first-letter{font-size:16px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.top-actions{gap:6px}.top-actions>.icon-button{display:none}}
