:root{color-scheme:light;--bg:#f3f5f7;--bg-ink:#111318;--panel:#ffffff;--panel-soft:#f8f9fb;--panel-tint:#fff5f4;--text:#14161a;--muted:#667085;--line:#e2e6ec;--line-strong:#c8d0dc;--accent:#ef3f55;--accent-dark:#b92938;--cyan:#119c9a;--blue:#2f66d8;--green:#16805b;--yellow:#a15f00;--red:#b4232c;--violet:#6558d8;--shadow:0 18px 50px rgba(20,26,38,0.08);--shadow-tight:0 10px 28px rgba(20,26,38,0.08)}*{box-sizing:border-box}html{min-width:0}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-feature-settings:"cv02","cv03","cv04","ss01";text-rendering:geometricPrecision}a{color:inherit;text-decoration:none}.shell{min-height:100vh;display:grid;grid-template-columns:264px minmax(0,1fr)}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:16px;height:100vh;padding:18px 12px;background:linear-gradient(180deg,rgba(239,63,85,.14),rgba(239,63,85,0) 210px),#121418;color:#f7fafc;border-right:1px solid rgba(255,255,255,.1)}.brand{display:flex;gap:12px;align-items:center;padding:8px 8px 14px;border-bottom:1px solid rgba(255,255,255,.11)}.brand-mark{display:grid;width:40px;height:40px;place-items:center;border-radius:8px;background:linear-gradient(145deg,#ff6676,#ef3f55 56%,#8d2631),var(--accent);box-shadow:0 12px 32px rgba(239,63,85,.28);font-weight:800}.brand strong{font-size:15px}.brand small{display:block;margin-top:4px;color:#aeb7c6;font-size:12px}.nav-group,.nav-groups{display:grid;gap:6px}.nav-groups{align-content:start;flex:1 1}.nav-group{padding-top:4px}.nav-label{padding:13px 10px 5px;color:#8792a4;font-size:12px;font-weight:700}.nav-item{display:flex;gap:10px;align-items:center;min-height:42px;padding:0 12px;border-radius:8px;color:#dfe6f1;transition:background .16s ease,color .16s ease,transform .16s ease}.nav-item.active,.nav-item:hover{background:rgba(255,255,255,.095)}.nav-item.active{color:#ffffff;box-shadow:inset 3px 0 0 var(--accent),0 10px 26px rgba(0,0,0,.16)}.nav-item:hover{transform:translateX(1px)}.sidebar-status{display:grid;gap:6px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.07);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.sidebar-status span{color:#aeb8c8;font-size:12px}.sidebar-status strong{font-size:13px}.main{min-width:0;max-width:100%;padding:32px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px;padding:4px 0 12px;border-bottom:1px solid var(--line)}.page-copy{max-width:840px;min-width:0}.page-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.eyebrow{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border:1px solid #f6b9c0;border-radius:999px;background:#fff5f6;margin-bottom:8px;color:var(--accent-dark);font-size:12px;font-weight:700}h1,h2,h3{margin:0;letter-spacing:0}h1{font-size:31px;line-height:1.12}h1,h2{font-weight:760}h2{font-size:16px;line-height:1.35}h3{font-size:15px;font-weight:760;overflow-wrap:anywhere}p{margin:6px 0 0;line-height:1.62}.muted,p{color:var(--muted)}.grid{display:grid;gap:16px}.grid,.grid>*{min-width:0;max-width:100%}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{min-width:0;max-width:100%;overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px;box-shadow:var(--shadow)}.main>section+section{margin-top:16px}.metric,.stack{display:grid;gap:12px}.metric{position:relative;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:142px;border-color:#d9dee7;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.98)),var(--panel);box-shadow:var(--shadow-tight)}.metric strong{font-size:34px;line-height:1;font-weight:780;overflow-wrap:anywhere}.metric-icon{position:absolute;right:14px;bottom:14px;display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:#9aa7b8}.badge{display:inline-flex;align-items:center;justify-self:start;gap:5px;min-height:25px;width:fit-content;max-width:100%;padding:0 9px;border:1px solid var(--line);border-radius:999px;background:#f7f9fc;color:#536072;font-size:12px;font-weight:700;line-height:1;white-space:nowrap}.badge.red{color:var(--red);background:#fff1f3;border-color:#fecdd3}.badge.green{color:var(--green);background:#eefcf4;border-color:#bceccf}.badge.yellow{color:var(--yellow);background:#fff8e8;border-color:#f7d48a}.badge.blue{color:var(--blue);background:#eff7ff;border-color:#c2ddff}.form{gap:12px}.form,label{display:grid}label{gap:6px;color:var(--muted);font-size:13px}input,select,textarea{width:100%;min-width:0;border:1px solid var(--line-strong);border-radius:8px;padding:10px 12px;background:#fff;color:var(--text);font:inherit;box-shadow:inset 0 1px 0 rgba(20,26,38,.02)}input:focus,select:focus,textarea:focus{outline:2px solid rgba(215,59,69,.18);border-color:var(--accent)}textarea{min-height:138px;resize:vertical}.checkbox-line{display:flex;align-items:center;gap:8px}.checkbox-line input{width:auto}.button,button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;max-width:100%;padding:0 14px;border:0;border-radius:8px;background:#171a20;color:#fff;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap;box-shadow:0 9px 24px rgba(17,19,24,.14);transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.button:hover,button:hover{transform:translateY(-1px);background:#0f1116}.button.secondary,button.secondary{background:#ffffff;color:var(--text);border:1px solid var(--line);box-shadow:none}.button.secondary:hover,button.secondary:hover{background:#f7f9fc}.compact{min-height:34px;padding:7px 10px;font-size:13px}.actions{gap:8px;align-items:center}.actions,.section-title{display:flex;flex-wrap:wrap}.section-title{justify-content:space-between;gap:12px;align-items:flex-start;min-width:0;padding-bottom:2px}.section-title>div{min-width:0}.section-title h2{margin:0}.table-wrap{width:100%;overflow-x:auto}.table{width:100%;border-collapse:collapse;table-layout:fixed}.table td,.table th{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:anywhere}.table th{color:var(--muted);font-size:12px;font-weight:700;background:#fafbfc}.inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.inline-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workflow-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.workflow-step{display:grid;align-content:start;gap:9px;min-width:0;min-height:136px;padding:14px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#ffffff,#f7f9fb),var(--panel-soft);box-shadow:0 8px 20px rgba(20,26,38,.045);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.workflow-step:hover{border-color:var(--line-strong);transform:translateY(-1px);box-shadow:0 14px 28px rgba(20,26,38,.08)}.empty-state{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;min-width:0;padding:16px;border:1px dashed var(--line-strong);border-radius:8px;background:#fbfcfd;color:var(--muted)}.account-switch-list,.readiness-list{display:grid;gap:10px}.readiness-row,.reference-row{display:grid;gap:6px;min-width:0;max-width:100%;overflow:hidden;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fbfcfd}.readiness-row p,.reference-row span{margin:0;color:var(--muted);overflow-wrap:anywhere}.readiness-row small{color:var(--accent-dark);line-height:1.45}.account-switch-row{display:grid;grid-template-columns:minmax(160px,1.2fr) minmax(92px,.7fr) minmax(106px,.8fr) minmax(92px,.7fr) minmax(106px,.8fr) minmax(150px,1fr) auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fbfcfd}.account-switch-row p{margin:4px 0 8px}.message-row{display:grid;gap:8px;padding:12px 0;border-top:1px solid var(--line)}.message-row,.message-row p{min-width:0;overflow-wrap:anywhere}.asset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.asset-card{display:grid;gap:8px;min-height:180px;padding:12px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fffafa,#fff),var(--panel-tint)}.asset-card p,.asset-card small,.asset-card strong{overflow-wrap:anywhere}.asset-card ul{margin:0;padding-left:18px;color:var(--muted)}.asset-card small{color:var(--muted);line-height:1.45}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:14px}.portfolio-card{display:grid;grid-template-rows:170px minmax(0,1fr);min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 30px rgba(20,26,38,.06);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.portfolio-card:hover{border-color:var(--line-strong);transform:translateY(-1px);box-shadow:0 18px 38px rgba(20,26,38,.09)}.portfolio-card>.stack{padding:13px}.asset-thumb{display:block;width:100%;height:100%;min-height:118px;object-fit:cover;background:linear-gradient(135deg,rgba(239,63,85,.14),rgba(17,156,154,.12)),#f5f7fa}.asset-thumb-fallback{display:grid;place-items:center;padding:12px;color:var(--muted);font-size:12px;line-height:1.45;overflow-wrap:anywhere}.asset-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dropzone{display:grid;place-items:center;gap:8px;min-height:164px;border:1px dashed var(--line-strong);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,251,252,.96)),#fbfcfd;color:var(--muted);cursor:pointer;text-align:center;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.dropzone strong{color:var(--text);font-size:17px}.dropzone.active,.dropzone:focus{border-color:var(--accent);background:#fff7f8;outline:2px solid rgba(239,63,85,.12);box-shadow:inset 0 0 0 1px rgba(239,63,85,.18)}.inline-notice{display:flex;gap:8px;align-items:center;min-height:42px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fbfcfd;color:var(--muted);font-weight:700}.inline-notice.success{border-color:#bceccf;background:#eefcf4;color:var(--green)}.inline-notice.danger{border-color:#fecdd3;background:#fff1f3;color:var(--red)}.asset-pick{position:relative;display:grid;gap:7px;min-width:0;border:1px solid var(--line);border-radius:8px}.asset-pick,button.asset-pick{padding:8px;background:#fbfcfd}button.asset-pick{justify-content:stretch;width:100%;min-height:0;border:1px solid var(--line);color:var(--text);box-shadow:none;text-align:left;white-space:normal}button.asset-pick.selected,button.asset-pick:hover{transform:none;border-color:var(--accent);background:#fff7f8}button.asset-pick.selected{box-shadow:inset 0 0 0 1px rgba(239,63,85,.26)}.asset-pick input{position:absolute;top:8px;left:8px;width:auto;z-index:1}.asset-pick .asset-thumb{height:86px;min-height:86px;border-radius:6px}.asset-pick span{min-width:0;color:var(--text);font-size:12px;font-weight:700;overflow-wrap:anywhere}.source-picker{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));max-height:420px;overflow:auto;padding-right:2px}.asset-edit{border-top:1px solid var(--line);padding-top:8px}.asset-edit summary{cursor:pointer;color:var(--accent-dark);font-size:13px;font-weight:760}.asset-edit .form{margin-top:10px}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.thumb-strip{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-width:0}.thumb-strip img,.thumb-strip span:not(.badge){width:42px;height:42px;border:1px solid var(--line);border-radius:6px;background:#fbfcfd}.thumb-strip img{object-fit:cover}.thumb-strip span:not(.badge){display:grid;place-items:center;padding:4px;color:var(--muted);font-size:10px;line-height:1.1;overflow:hidden;overflow-wrap:anywhere}.command{display:block;width:100%;min-width:0;padding:11px 12px;border:1px solid #2c3a4d;background:linear-gradient(180deg,#151b24,#0f141c),#111827;box-shadow:inset 0 1px 0 rgba(255,255,255,.07);font-family:SFMono-Regular,JetBrains Mono,Consolas,monospace;font-size:12px;line-height:1.55;overflow-wrap:anywhere;word-break:break-word;white-space:normal}.command,pre{max-width:100%;border-radius:8px;color:#e7f2ff}pre{overflow:auto;padding:12px;background:#101720;white-space:pre-wrap;overflow-wrap:anywhere}.deploy-gates{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px}.deploy-gate,.deploy-gates{display:grid;min-width:0;max-width:100%;overflow:hidden}.deploy-gate{grid-template-columns:minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fbfcfd}.deploy-gate p{margin:0}.deploy-gate p,.deploy-gate small{min-width:0;overflow-wrap:anywhere}.ordered-list{display:grid;gap:12px;margin:0;padding-left:20px;color:var(--muted);line-height:1.6;min-width:0}.ordered-list li{min-width:0;overflow-wrap:anywhere}.ordered-list li::marker{color:var(--accent-dark);font-weight:700}.ordered-list .command{margin:4px 0}@media (max-width:1100px){.account-switch-row,.grid.cols-3,.workflow-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.account-switch-row{align-items:stretch}}@media (max-width:820px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:12px}.brand{padding-bottom:10px}.nav-groups{gap:10px}.nav-group{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.nav-label{grid-column:1/-1;padding:2px 4px}.nav-item{justify-content:center;padding:0 8px}.sidebar-status{display:none}.main{padding:18px 14px}.page-head{display:grid}.page-actions{justify-content:flex-start}.grid.cols-2,.grid.cols-3,.workflow-strip{grid-template-columns:minmax(0,1fr)}.account-switch-row,.asset-grid,.asset-picker,.deploy-gates,.empty-state,.inline-fields,.inline-form{grid-template-columns:1fr}.button,button{width:100%;white-space:normal}}