.auth-loading{min-height:100dvh;display:flex;gap:16px;align-items:center;justify-content:center;color:var(--mint)}.auth-recovery,.auth-demo-note{font-size:12px;line-height:1.9;color:#8da3b8;margin:16px 0 0;overflow-wrap:anywhere}.auth-recovery a{color:var(--mint);text-decoration:underline;text-underline-offset:3px}.auth-demo-note{padding:12px 14px;border:1px solid var(--line);border-radius:7px;background:#112133}.password-shell{min-height:100dvh;padding:40px 24px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 20% 40%,#133e4144,transparent 65%),#0a1222}.password-card{max-width:480px;background:#0f1c2d;padding:36px;border:1px solid var(--line);border-radius:14px}.password-heading{display:flex;align-items:center;gap:12px;color:var(--mint);margin-top:36px}.password-card h1{font-size:27px;font-weight:550;margin:16px 0 12px}.password-card .auth-intro{margin-bottom:12px}.password-description{color:#8da3b8;font-size:13px;line-height:1.9}.password-actions{display:flex;justify-content:flex-end;gap:20px;margin-top:22px}.password-notice{padding:13px 18px;color:#9aead3;background:#12392e;border:1px solid #376d5d;border-radius:7px;font-size:13px;line-height:1.8;overflow-wrap:anywhere}.app-shell+.password-notice{margin:12px}.admin-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.admin-page-heading h1{display:flex;align-items:center;gap:12px;font-size:28px;margin:10px 0}.admin-page-heading h1 svg{color:var(--mint)}.admin-page-heading p:not(.eyebrow){color:var(--muted);font-size:13px;margin:0}.admin-page-heading>.secondary-button{display:flex;align-items:center;gap:8px;white-space:nowrap}.admin-explanation{display:flex;gap:13px;align-items:flex-start;background:#14283b;border:1px solid #25435a;padding:16px 18px;border-radius:9px;margin-bottom:20px}.admin-explanation>svg{color:var(--mint);flex-shrink:0;margin-top:2px}.admin-explanation p{margin:0;font-size:13px;line-height:1.9;color:#9fb8cb}.admin-accounts{margin-top:22px;overflow:hidden}.admin-accounts .panel-heading{padding:20px 22px}.admin-accounts .panel-heading h2{margin:0;font-size:16px}.admin-accounts .panel-heading h2 small{font-weight:400;color:var(--muted);font-size:12px;margin-left:9px}.admin-accounts .panel-heading>span{font-size:11px;color:var(--muted)}.admin-table-scroll{max-width:100%;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:860px;text-align:left}.admin-table th{font-size:11px;font-weight:500;letter-spacing:.5px;color:#8098ad;background:#142135;padding:13px 20px;white-space:nowrap}.admin-table td{font-size:12px;padding:19px 20px;border-top:1px solid var(--line);white-space:nowrap;color:#a4b9cc}.admin-table td:first-child{white-space:normal;min-width:150px;max-width:245px;overflow-wrap:anywhere}.admin-table td strong{display:block;font-size:13px;color:#d7e5ed;font-weight:500}.admin-table td small{display:block;font-size:10px;color:#627b90;margin-top:7px}.account-role{border:1px solid #34485e;border-radius:4px;font-size:10px;padding:4px 7px}.account-role.owner{color:var(--mint);border-color:#3c7469;background:#15352f}.account-ready{color:#8caf9f}.password-pending{color:#e8bb7c}.admin-self{font-size:11px;color:#71899c}.admin-reset{border:1px solid #485761;border-radius:5px;background:transparent;color:#b4cbd9;font-size:11px;padding:7px 10px}.admin-reset:hover{border-color:var(--mint);color:var(--mint)}.admin-loading{color:var(--muted);font-size:13px;padding:25px 0}.admin-dialog-backdrop{position:fixed;inset:0;z-index:100;background:#030b16c9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:24px}.admin-dialog{width:100%;max-width:460px;padding:30px;background:#101e30;border:1px solid #344b60;box-shadow:0 25px 100px #0006;border-radius:12px;max-height:90dvh;overflow:auto;outline:none}.admin-dialog h2{font-size:21px;font-weight:550;overflow-wrap:anywhere}.admin-dialog p{font-size:13px;line-height:2;color:#94adbf;overflow-wrap:anywhere}.admin-dialog strong{color:#d4e6ee}.reset-icon{color:var(--mint)}.admin-dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.admin-dialog-actions button{padding:10px 18px}.admin-page>.password-notice{margin-bottom:20px}@media(max-width:600px){.password-shell{padding:24px 16px}.password-card{padding:26px 22px}.password-card h1{font-size:23px}.admin-page-heading{align-items:flex-start;gap:12px}.admin-page-heading h1{font-size:24px}.admin-page-heading>.secondary-button{padding:9px 10px;font-size:11px}.admin-explanation{padding:14px}.admin-dialog{padding:24px}.admin-dialog-backdrop{padding:18px}.topbar-right{flex-wrap:wrap;justify-content:flex-end;row-gap:5px}.topbar-right>.logout-button{font-size:10px;padding:5px 7px}.topbar-right>.account-name{max-width:96px}}.auth-shell{min-height:100dvh;display:grid;grid-template-columns:1.12fr 1fr;background:#0a1222}.auth-story{padding:52px clamp(32px,5vw,90px);display:flex;flex-direction:column;position:relative;overflow:hidden;background:radial-gradient(ellipse at 20% 60%,#133e4155,transparent 70%),linear-gradient(145deg,#111f32,#0c192b);border-right:1px solid var(--line)}.auth-story:after{content:"";width:560px;height:560px;border:1px solid #65e9c310;position:absolute;right:-290px;top:20%;transform:rotate(30deg);pointer-events:none;box-shadow:0 0 0 70px #65e9c304,0 0 0 140px #65e9c303}.auth-brand{align-self:flex-start}.auth-story-main{margin:auto 0;padding:70px 0;z-index:1}.auth-eyebrow,.auth-step{color:var(--mint);font-size:10px;letter-spacing:2px}.auth-story h1{font-size:clamp(32px,3.2vw,52px);line-height:1.5;font-weight:550;letter-spacing:-1.5px;margin:24px 0}.auth-story h1 span{color:var(--mint);display:block}.auth-story-main>p{color:#9baec1;font-size:15px;line-height:2}.auth-path{display:flex;align-items:center;gap:20px;margin-top:50px}.auth-path>svg{color:#42596c;width:17px}.auth-path>div{display:flex;flex-direction:column;gap:9px;color:var(--mint)}.auth-path span{font-size:13px;color:#d6e2ed}.auth-path small{color:#617d8f;letter-spacing:1.5px;font-size:8px}.auth-story-foot{font-size:11px;letter-spacing:2px;color:var(--muted);display:flex;align-items:center;gap:12px}.auth-form-panel{display:flex;flex-direction:column;justify-content:center;padding:70px 50px 25px;min-width:0}.auth-form-wrap{width:100%;max-width:380px;margin:auto}.auth-form-wrap h2{font-size:29px;font-weight:550;letter-spacing:-.5px;margin:18px 0 8px}.auth-intro{color:var(--muted);font-size:14px;margin-bottom:32px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);margin-bottom:27px}.auth-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;padding:12px;color:var(--muted)}.auth-tabs button[aria-pressed=true]{color:var(--mint);border-bottom-color:var(--mint)}.auth-form-wrap form>label{display:block;margin:20px 0 9px;font-size:13px;color:#bccbd9}.auth-form-wrap input{width:100%;height:49px;background:#101d2e;border:1px solid #2b3b50;border-radius:7px;color:#e5ecf3;padding:0 14px;outline-offset:2px}.auth-form-wrap input:focus{outline:1px solid var(--mint);border-color:var(--mint)}.auth-form-wrap input::placeholder{color:#61758b;font-size:13px}.auth-password{position:relative}.auth-password input{padding-right:49px}.auth-password button{position:absolute;right:6px;top:6px;width:37px;height:37px;border:0;background:transparent;color:#8a9bae;display:grid;place-items:center}.auth-help{display:block;color:var(--muted);font-size:11px;margin-top:7px}.auth-submit{width:100%;justify-content:center;margin-top:28px;height:49px;display:flex;align-items:center;gap:12px}.auth-security{display:flex;align-items:center;justify-content:center;gap:8px;color:#6e8499;font-size:11px;margin-top:24px}.auth-form-foot{color:#4f637a;font-size:10px;text-align:center;margin-top:50px}.auth-error,.session-alert{border:1px solid #b56c564f;border-radius:6px;background:#4b2a253f;color:#f3baab;font-size:13px;padding:12px 14px;overflow-wrap:anywhere}.account-name{max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b7cbd7}.logout-button{background:transparent;border:1px solid var(--line);border-radius:5px;color:#a5b8c9;font-size:11px;padding:5px 9px;white-space:nowrap}@media(min-width:1600px){.auth-form-wrap{max-width:410px}.auth-story-main{max-width:650px}}@media(max-width:800px){.auth-shell{grid-template-columns:1fr}.auth-story{padding:28px 26px;border-right:0;border-bottom:1px solid var(--line)}.auth-brand svg{width:28px}.auth-story-main{padding:30px 0 10px}.auth-story h1{font-size:30px;margin:14px 0}.auth-story h1 span{display:inline}.auth-story-main>p,.auth-path,.auth-story-foot{display:none}.auth-eyebrow{font-size:8px;letter-spacing:1.4px}.auth-form-panel{padding:36px 26px 18px}.auth-form-wrap{max-width:430px}.auth-form-wrap h2{font-size:25px}.auth-intro{margin-bottom:22px}.auth-form-foot{margin-top:40px}.auth-step{font-size:8px}.account-name{max-width:75px}.topbar-right{gap:8px}.topbar-right>span:nth-of-type(3){display:none}}@media(max-width:600px){.topbar .breadcrumb{display:none}.topbar-right{min-width:0;flex:1}}:root{font-family:Inter,Noto Sans SC,Microsoft YaHei,system-ui,sans-serif;color:#e5ecf3;background:#0a1222;font-synthesis:none;font-weight:400;line-height:1.6;--mint: #65e9c3;--muted: #8193a9;--panel: #101c2d;--line: #243246}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,label.upload-button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.45}button,input,textarea,select,a{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid var(--mint)}a{color:var(--mint);text-decoration:none}h1,h2,h3,p{margin:0}h1{font-size:clamp(25px,2.4vw,36px);font-weight:650;letter-spacing:-1px;line-height:1.4}h2{font-size:18px;font-weight:600}h3{font-size:15px;font-weight:600}input,textarea,select{width:100%;color:#e5ecf3;border:1px solid #344359;background:#0b1525;border-radius:7px;padding:10px 12px;min-width:0}input:focus,textarea:focus,select:focus{border-color:var(--mint);outline:1px solid var(--mint)}input::placeholder,textarea::placeholder{color:#566b84}textarea{resize:vertical}label{display:flex;flex-direction:column;gap:7px;font-size:13px;color:#b4c3d4;font-weight:500}input[type=checkbox]{width:16px;height:16px;accent-color:var(--mint);flex-shrink:0}input[type=file]{display:none}fieldset{border:1px solid var(--line);border-radius:8px;margin:0;padding:12px 15px}legend{font-size:13px;color:#a6b7ca;padding:0 6px}blockquote{margin:0;padding:15px 17px;border-left:2px solid var(--mint);background:#15312f66;color:#bdcfd9;font-size:14px;line-height:1.9}code,.mono,.hash{font-family:Consolas,monospace}.hash{color:#768ba3;overflow-wrap:anywhere;font-size:11px;margin-top:8px}.app-shell{display:flex;min-height:100vh}.sidebar{width:229px;flex-shrink:0;border-right:1px solid var(--line);background:#0c1728;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:30}.brand{display:flex;gap:14px;align-items:center;margin:31px 25px 44px;color:#f5faf9}.brand>svg{color:var(--mint)}.brand>span{font-size:27px;font-weight:700;line-height:1.25;letter-spacing:3px}.brand small{display:block;color:#708a9d;font-size:9px;letter-spacing:1.8px;font-weight:500;margin-top:5px}.nav-caption{font-size:10px;letter-spacing:2px;color:#657c94;padding:0 26px 13px;display:flex;justify-content:space-between}.nav-caption span{letter-spacing:1px}nav{display:flex;flex-direction:column;gap:7px;padding:0 13px}nav button,.settings-link{display:flex;align-items:center;gap:13px;color:#98aabe;background:transparent;border:1px solid transparent;padding:13px 14px;border-radius:7px;text-align:left;font-size:14px;position:relative}nav button small{margin-left:auto;font-size:9px;color:#52667b;letter-spacing:1px}nav button:hover,.settings-link:hover{background:#142337;color:#e9f5f5}nav button.active{color:var(--mint);background:linear-gradient(90deg,#173e3c,#142e32);border-color:#2b5c55}nav button.active:before{content:"";position:absolute;left:-14px;top:12px;bottom:12px;width:3px;background:var(--mint);border-radius:3px}nav button.active small{color:#58ab96}.sidebar-bottom{margin-top:auto;padding:30px 20px 20px}.project-card{border:1px solid #263b4b;background:#112334;border-radius:7px;padding:13px;font-size:12px}.project-card .live-dot{margin-right:8px}.project-card p{font-size:10px;color:#6e879a;margin:5px 0 0 15px}.settings-link{width:100%;padding:18px 3px 12px;font-size:12px}.settings-link svg:last-child{margin-left:auto}.settings-link.active{color:var(--mint)}.sidebar-foot{font-size:9px;color:#516a80;letter-spacing:1px;line-height:2;padding-top:15px;border-top:1px solid #203044}.main-shell{margin-left:229px;min-width:0;flex:1}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 34px;border-bottom:1px solid var(--line);background:#0b1524}.breadcrumb{display:flex;align-items:center;gap:12px;font-size:11px;color:#6f829a}.breadcrumb strong{color:#b9cad7;font-weight:500}.breadcrumb span{color:#91a5b9}.topbar-right{display:flex;align-items:center;gap:8px;font-size:10px;color:#879cae;white-space:nowrap}.icon-button{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:#94a9be;padding:6px;border-radius:5px}.topbar-right .icon-button{margin-left:13px;border-left:1px solid #26364a}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 9px #62e9c333;flex-shrink:0}.live-dot.offline{background:#f6b27a}.mobile-menu{display:none}main{max-width:1680px;margin:auto;padding:33px 34px 40px;min-height:calc(100vh - 120px)}.page-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:26px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2.4px;color:#7092a0;margin-bottom:8px}.page-intro .eyebrow{color:#5fac99;letter-spacing:2.2px;font-size:10px;margin-bottom:11px}.page-intro p:not(.eyebrow){font-size:12px;color:#8398ad;margin-top:10px}.title-dot{color:var(--mint);padding-left:4px}.primary,.secondary-button,.upload-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:6px;border:1px solid var(--mint);background:var(--mint);color:#0b2927;padding:10px 16px;font-size:12px;font-weight:650;line-height:1.6;white-space:nowrap;transition:background .15s}.primary:hover{background:#8cf5d7}.secondary-button,.upload-button{border-color:#3c5166;background:#142539;color:#b8cbd9;font-weight:500}.secondary-button:hover,.upload-button:hover{background:#20364c;border-color:#6a8c9e}.upload-button{cursor:pointer;flex-direction:row}.upload-button.disabled{opacity:.4;pointer-events:none}.text-button{background:none;color:var(--mint);border:0;padding:3px 0;font-size:12px;display:inline-flex;align-items:center;gap:6px;text-align:left}.button-row{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin:17px 0}.full{width:100%}.stage-banner{border:1px solid #2d6158;background:linear-gradient(90deg,#123334,#112130);display:flex;align-items:center;gap:13px;padding:12px 17px;margin-bottom:22px;border-radius:7px;font-size:11px;color:#9fb9bb}.stage-banner strong{font-size:12px;color:var(--mint);font-weight:500}.stage-tail{margin-left:auto;color:#668d95;font-size:10px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px}.stat-card{border:1px solid var(--line);background:linear-gradient(115deg,#122436,#101c2d);border-radius:9px;padding:20px 22px}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#9eb2c2;font-size:12px}.stat-top svg{color:#62baa9;stroke-width:1.3}.stat-card>strong{display:block;font-size:36px;line-height:1.6;letter-spacing:-1px;color:#f1f5f7;font-weight:600}.stat-card>p{font-size:10px;color:#647e94}.panel{border:1px solid var(--line);border-radius:9px;background:var(--panel);padding:22px;margin-bottom:22px;min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.panel-heading .eyebrow{margin-bottom:5px;font-size:8px;letter-spacing:1.8px}.panel-heading h2{font-size:16px}.panel-heading>svg{color:var(--mint);stroke-width:1.3}.workflow{display:flex;position:relative;padding:11px 0 7px}.workflow:before{content:"";position:absolute;left:8%;right:8%;height:1px;background:#33485a;top:30px}.workflow-step{flex:1;display:flex;align-items:center;flex-direction:column;background:transparent;border:0;color:#8194a7;position:relative;gap:12px}.step-circle{display:flex;align-items:center;justify-content:center;width:39px;height:39px;border:1px solid #4a6074;background:#152537;border-radius:50%;font-size:12px;color:#9ab1c7;z-index:1}.workflow-step strong{font-size:12px;font-weight:500;color:#b8cad6}.workflow-step>.small{font-size:9px;color:#657f92;margin-top:-7px}.workflow-step.done .step-circle{border-color:#4bb69d;background:#1e4b46;color:var(--mint)}.workflow-step.done>.small{color:#5cba9f}.bottom-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.task-row{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:15px 0;background:transparent;color:#bacad8;border:0;border-bottom:1px solid #223347}.task-row:last-child{border-bottom:0;padding-bottom:0}.task-row:first-of-type{padding-top:0}.task-row>svg:last-child{margin-left:auto;color:#647f90}.task-check{width:18px;height:18px;border:1px solid #4a6176;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.task-check.checked{color:var(--mint);background:#1c3c38;border-color:#3d8d7b}.task-row strong{font-size:12px;font-weight:500}.task-row small{display:block;color:#667f93;font-size:10px;margin-top:3px}.principles{display:flex;flex-direction:column;gap:23px}.principles p{display:flex;gap:13px}.principles svg{color:#6da89e;flex-shrink:0;stroke-width:1.3;margin-top:3px}.principles strong{font-size:12px;color:#b8ccd7;font-weight:500}.principles small{display:block;font-size:10px;color:#668095;margin-top:5px}.split-layout{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.stack{display:flex;flex-direction:column;gap:17px}.muted{color:#8b9fb3;font-size:13px}.small{font-size:11px}.row{display:flex;align-items:center;justify-content:space-between;gap:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid.three{grid-template-columns:repeat(3,1fr)}.review-box,.freeze-box{border:1px solid #2b4a4c;background:#112a2d66;border-radius:7px;padding:16px}.review-box p{margin-top:12px}.badge{font-size:9px;display:inline-flex;align-items:center;padding:3px 8px;border-radius:4px;border:1px solid #3b5267;color:#98b1c7;background:#21324655;white-space:nowrap;font-weight:500}.badge.approved,.badge.completed{background:#143d3566;border-color:#2d6c5c;color:#65d5b0}.badge.pending,.badge.candidate,.badge.queued{background:#3c352366;color:#dabd7b;border-color:#685533}.badge.running{background:#203a5f66;color:#83b5e9;border-color:#3c628d}.badge.failed,.badge.rejected,.badge.interrupted{background:#492c3266;color:#ed9b9f;border-color:#74434c}.badge.blocked{background:#40372766;color:#c8ae7d;border-color:#5d503b}.empty{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;color:#6d8499;text-align:center;padding:28px}.empty svg{color:#3c6973;stroke-width:1.25}.empty p{font-size:12px;max-width:330px;line-height:1.9}.search{display:flex;align-items:center;gap:9px;background:#0c1727;border:1px solid #2b4053;padding:0 11px;border-radius:6px}.search svg{color:#5e7a90}.search input{border:0;background:none;font-size:12px;padding:10px 0}.search input:focus{outline:0}.graph-area{padding:22px 0;display:flex;flex-direction:column;gap:17px;background-image:radial-gradient(#58748422 .7px,transparent .7px);background-size:16px 16px;min-height:280px;max-height:610px;overflow:auto}.graph-relation{display:flex;align-items:center;gap:0;background:transparent;border:1px solid transparent;border-radius:8px;padding:12px 7px;width:100%;color:#a5c0cd;position:relative}.graph-relation:hover,.graph-relation.selected{background:#1b373a66;border-color:#31695c}.graph-relation>.badge{position:absolute;right:8px;top:0;font-size:8px;padding:1px 5px}.node{border:1px solid #377a6b;background:#12352f;border-radius:30px;padding:11px 15px;color:#6ee8bf;min-width:65px;max-width:120px;font-size:12px;overflow-wrap:anywhere;flex-shrink:0}.node.target{color:#90bcd7;background:#183144;border-color:#39627d}.edge{flex:1;position:relative;border-bottom:1px solid #4a6d79;margin:0 5px;padding-bottom:5px;font-size:10px;color:#90a9ba;text-align:center;min-width:30px}.edge:after{content:"›";position:absolute;right:-2px;bottom:-13px;font-size:20px;color:#5e9193}.edge svg{vertical-align:middle;margin-right:5px}.edge small{display:block;position:absolute;top:35px;left:0;right:0;font-size:8px;color:#526d83}.legend{border-top:1px solid var(--line);padding-top:16px;display:flex;align-items:center;gap:6px;color:#6a8499;font-size:9px;flex-wrap:wrap}.legend i{width:7px;height:7px;background:#4ec4a4;border-radius:50%}.legend i.secondary{background:#609cc1}.legend>span{margin-left:8px}.details{display:grid;grid-template-columns:100px 1fr;gap:11px;margin:0;font-size:12px}.details dt{color:#6e899e}.details dd{margin:0;color:#b9cbd8;overflow-wrap:anywhere}.source-link{display:flex;align-items:center;gap:6px;font-size:12px;overflow-wrap:anywhere}.checkbox-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.checkbox-grid label,.check-line{flex-direction:row;align-items:center;gap:8px;font-size:11px;line-height:1.7}.check-line{display:flex;margin:7px 0;font-weight:400}.feature-list{display:flex;flex-direction:column;gap:13px}.feature-card{background:#0c1727;border:1px solid #2a3c4f;border-radius:8px;padding:17px;text-align:left;color:#b8cbd8}.feature-card.selected,.feature-card:hover{border-color:#4ea28b;background:#12312f55}.feature-card strong{display:flex;align-items:center;gap:8px;font-size:13px}.feature-card code{display:block;color:#6fdbb9;margin:13px 0;font-size:14px}.feature-card p{font-size:11px;margin-bottom:12px;color:#89a0b1}.formula{color:#76d9b9;background:#112f2b80;border:1px solid #2b544b;border-radius:6px;padding:12px;font-family:Consolas,monospace;font-size:13px}.mini-evidence{border:1px solid var(--line);padding:14px;border-radius:6px;font-size:12px}.mini-evidence blockquote{margin:12px 0;font-size:12px}.experiment-top{display:grid;grid-template-columns:1fr 1.15fr;gap:22px}.protocol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;border:1px solid var(--line);background:#0d1828;padding:11px;border-radius:6px}.protocol-grid span{font-size:9px;color:#708a9e}.protocol-grid strong{font-size:11px;display:block;color:#aec5d5;margin-top:5px}.group-design{display:flex;flex-direction:column;gap:16px}.design-row{display:flex;align-items:center;gap:14px}.group-letter{display:inline-flex;align-items:center;justify-content:center;min-width:29px;height:29px;border:1px solid #485668;border-radius:5px;background:#2b3444;color:#a8b7c5;font-weight:600;font-size:12px;flex-shrink:0}.group-B{background:#163345;border-color:#376882;color:#7ab9e2}.group-C{background:#303044;border-color:#60577f;color:#b0a3e2}.group-D{background:#153d34;border-color:#367764;color:#67dbb4}.design-row strong{font-size:12px;font-weight:500}.design-row p{font-size:10px;color:#7a93a8;margin-top:3px}.notice{display:flex;align-items:flex-start;gap:10px;color:#96b9bc;padding:13px 15px;border-radius:6px;background:#14303566;border:1px solid #294b53;font-size:12px;margin:16px 0}.notice svg{flex-shrink:0;margin-top:2px}.notice.small{font-size:10px;margin-bottom:0}.error{color:#ffc0bc;border:1px solid #864f4c;background:#412528;padding:12px 16px;margin-bottom:18px;border-radius:6px;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.success{color:#6cdeba;font-size:12px}.warning{border:1px solid #6e5734;background:#3c302344;color:#d8b779;border-radius:5px;padding:9px 12px;font-size:11px}.warning-text{color:#d8b779}.dataset-list{display:flex;flex-direction:column;gap:15px}.dataset-item{border:1px solid #283b4e;background:#0d1828;padding:16px;border-radius:6px}.dataset-item strong{font-size:13px}.dataset-item p.small{margin-top:8px}.dataset-item .button-row{margin:12px 0 0}.table-scroll{overflow:auto;width:100%}table{width:100%;border-collapse:collapse;font-size:11px;text-align:left;white-space:nowrap}th{font-weight:500;color:#7891a7;font-size:10px;background:#0d1929;padding:12px;border-bottom:1px solid #304054}td{padding:14px 12px;border-bottom:1px solid #25364a;color:#bdcfdd}td>strong{font-weight:500;font-size:11px}td .group-letter{margin-right:12px;min-width:24px;height:24px;font-size:10px}.metrics tbody tr:last-child td{border-bottom:0}.run-info{margin-bottom:20px}.run-info p{font-size:12px;color:#90adbe;margin-top:10px}.run-info progress{width:100%;height:7px;accent-color:var(--mint);margin-top:15px}.result-summary{display:flex;gap:20px;flex-wrap:wrap;margin:18px 0;padding:12px 0;border-top:1px solid #27394c;border-bottom:1px solid #27394c}.result-summary span{font-size:10px;color:#6f889d}.result-summary strong{color:#bcd0db;margin-left:6px;font-size:12px}.result-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;margin:23px 0}.result-grid h3{margin-bottom:10px}.inline-label{flex-direction:row;align-items:center;white-space:nowrap;font-size:10px;gap:8px}.inline-label select{font-size:10px;max-width:220px;padding:6px 9px}.scatter{width:100%;height:auto;margin-top:10px}.scatter text{fill:#7892a8;font-size:11px}.grid-line{stroke:#25394c;stroke-width:1}.identity-line{stroke:#4f8b82;stroke-width:1;stroke-dasharray:6 5}.scatter-point{fill:#67d6bb;fill-opacity:.65;stroke:#99efd6;stroke-width:.5}.scatter-point.group-B{fill:#72ade2;stroke:#a3ceee}.scatter-point.group-C{fill:#b3a3e8;stroke:#cabcfa}details{background:#0d1928;border:1px solid #2b3b4d;border-radius:6px;padding:10px 13px}summary{font-size:11px;color:#a9c2d2;cursor:pointer}details p{margin-top:10px;overflow-wrap:anywhere}.freeze-box{display:flex;flex-direction:column;gap:12px}.freeze-box>svg{color:var(--mint)}.freeze-box h3{margin:0}.heldout{padding:20px 0;border-top:1px solid var(--line)}.heldout h3{margin-bottom:12px}.pill{border:1px solid #355650;background:#16342f66;border-radius:30px;display:flex;gap:8px;align-items:center;padding:8px 12px;color:#8bbeb1;font-size:10px;white-space:nowrap}.analysis-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:22px;align-items:start}.analysis-layout>.stack{gap:0}.composition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:20px 0 24px}.composition-grid label{font-size:10px;color:#91adbe}.composition-grid input{font-size:13px}.prediction-number{display:flex;align-items:baseline;gap:12px;color:var(--mint);font-size:58px;font-weight:500;line-height:1.5;letter-spacing:-2px}.prediction-number span{font-size:16px;color:#78a69d;letter-spacing:0}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.archive-card{border:1px solid #2d4055;border-radius:8px;background:#0d1828;padding:20px}.archive-card h3{margin:15px 0 7px}.archive-card .mono{overflow-wrap:anywhere;color:#6c8b9e;font-size:9px}.archive-card .details{margin:20px 0;font-size:10px;grid-template-columns:74px 1fr}.archive-card .primary{font-size:11px}.package-items{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.package-items svg{color:#6fae9e;stroke-width:1.3}.package-items h3{margin:12px 0 7px;font-size:13px}.mint{color:var(--mint)}.loading,.connection-empty{min-height:55vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:22px;color:#8bafba;font-size:14px}.loading svg{color:var(--mint)}footer{display:flex;justify-content:space-between;gap:20px;padding:18px 34px;border-top:1px solid #203045;font-size:9px;color:#526e84}footer span:last-child{letter-spacing:1px;font-size:8px}button{transition:background .15s,border-color .15s}button:hover .step-circle{border-color:var(--mint)}@media(min-width:1500px){main{padding:40px 46px}.topbar{padding:0 46px}.sidebar{width:245px}.main-shell{margin-left:245px}.page-intro{margin-bottom:33px}.panel{padding:25px}.stat-card{padding:23px 26px}.stat-card>strong{font-size:40px}.workflow{padding:18px 0 15px}.workflow:before{top:37px}}@media(max-width:1150px){.sidebar{width:200px}.main-shell{margin-left:200px}main{padding:27px 24px}.topbar{padding:0 24px}nav button{font-size:12px;gap:10px}nav button small{display:none}.brand{margin-left:23px}.page-intro{gap:15px}h1{font-size:27px}.panel{padding:18px}.panel-heading h2{font-size:15px}.split-layout,.analysis-layout{grid-template-columns:1fr 1fr}.form-grid.three{grid-template-columns:1fr}.graph-relation{flex-wrap:wrap}.node{padding:10px;font-size:11px}.archive-grid{grid-template-columns:repeat(2,1fr)}.details{grid-template-columns:80px 1fr}.stage-tail{display:none}.experiment-top{grid-template-columns:1fr 1fr}.composition-grid{grid-template-columns:repeat(2,1fr)}.result-grid{grid-template-columns:1fr}.prediction-number{font-size:48px}}@media(max-width:850px){.sidebar{width:185px}.main-shell{margin-left:185px}.brand{gap:9px;margin-left:20px}.brand>span{font-size:23px}.brand>svg{width:28px}.brand small{font-size:8px}main{padding:24px 20px}.topbar{padding:0 20px}.breadcrumb{font-size:10px;gap:6px}.breadcrumb>strong,.breadcrumb>svg:last-of-type{display:none}.topbar-right{font-size:9px}.stat-grid{gap:10px}.stat-card{padding:16px}.stat-card>strong{font-size:28px}.stat-top{font-size:10px}.stat-top svg{width:18px}.page-intro .primary{font-size:10px;padding:8px 12px}.page-intro p:not(.eyebrow){font-size:11px}h1{font-size:23px}.split-layout,.experiment-top,.analysis-layout,.bottom-grid{grid-template-columns:1fr;gap:0}.workflow-step strong{font-size:10px}.workflow-step .small{font-size:8px}.workflow-step{gap:10px;padding:0 2px}.step-circle{width:31px;height:31px}.workflow:before{top:26px}.panel-heading>.small{display:none}.composition-grid{grid-template-columns:repeat(3,1fr)}.graph-relation{flex-wrap:nowrap}.archive-grid{grid-template-columns:1fr}.title-dot,.page-intro .pill{display:none}.package-items{gap:15px}.package-items h3{font-size:11px}}@media(max-width:600px){.sidebar{display:none;width:230px;box-shadow:20px 0 80px #000a}.sidebar.open{display:flex}.main-shell{margin-left:0}.mobile-menu{display:flex}.topbar{height:60px;padding:0 16px;gap:8px}.breadcrumb{flex:1}.breadcrumb>span,.breadcrumb>svg{display:none}.topbar-right .icon-button{margin-left:4px}.topbar-right>span:nth-child(2){display:none}main{padding:25px 16px}.page-intro{align-items:flex-start;margin-bottom:23px;gap:12px}.page-intro h1{font-size:22px}.page-intro .eyebrow{font-size:8px;letter-spacing:1.6px}.page-intro .primary{font-size:0;padding:10px}.page-intro .primary svg{width:17px}.page-intro p:not(.eyebrow){font-size:10px;line-height:1.8}.stage-banner{padding:11px;gap:9px;flex-wrap:wrap;font-size:9px}.stage-banner strong{font-size:10px}.stat-grid{gap:8px;margin-bottom:18px}.stat-card{padding:12px 10px}.stat-top{font-size:9px}.stat-top svg{display:none}.stat-card>strong{font-size:26px;white-space:nowrap}.stat-card>p{font-size:8px;line-height:1.8}.panel{padding:17px;margin-bottom:18px}.panel-heading{margin-bottom:19px}.panel-heading h2{font-size:15px}.workflow{display:grid;grid-template-columns:repeat(3,1fr);row-gap:25px}.workflow:before{display:none}.workflow-step strong{font-size:11px}.workflow-step>.small{font-size:9px}.form-grid,.form-grid.three{grid-template-columns:1fr}.composition-grid{grid-template-columns:repeat(2,1fr)}.protocol-grid{gap:6px;padding:9px}.protocol-grid strong{font-size:10px}.details{font-size:11px}.package-items{grid-template-columns:1fr;gap:22px}.package-items>div{border-bottom:1px solid var(--line);padding-bottom:20px}.package-items>div:last-child{border:0;padding-bottom:0}.package-items h3{font-size:13px}footer{padding:16px;font-size:8px}footer span:last-child{display:none}.prediction-number{font-size:50px}.inline-label{font-size:9px}.inline-label select{max-width:125px;font-size:9px}.legend{font-size:8px}.row{flex-wrap:wrap}.feature-card .row{gap:10px}.graph-relation .node{font-size:11px}.result-summary{gap:10px 20px}}
