:root{color-scheme:light;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#18211f;background:#f4f7f6;--ink: #18211f;--muted: #66756f;--line: #d9e4df;--line-strong: #c8d6d0;--surface: #ffffff;--surface-soft: #f7faf8;--surface-tint: #eef6f3;--accent: #11746b;--accent-strong: #0b5f58;--accent-soft: #dff3ee;--warm: #c85d45;--gold: #a86f16;--danger: #b42318;--shadow-soft: 0 18px 46px rgba(19, 34, 31, .1);--shadow-tight: 0 8px 22px rgba(19, 34, 31, .08)}*{box-sizing:border-box}html,body,#root{min-height:100%;overflow-x:hidden}body{margin:0;min-height:100vh;background:linear-gradient(135deg,rgba(17,116,107,.08),transparent 34%),linear-gradient(315deg,rgba(200,93,69,.08),transparent 38%),#f4f7f6}button,input,select,textarea{font:inherit}button{min-height:38px;border:1px solid transparent;border-radius:8px;padding:9px 14px;background:var(--accent);color:#fff;font-weight:650;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}button:hover{background:var(--accent-strong);box-shadow:0 10px 22px #11746b2e;transform:translateY(-1px)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(17,116,107,.22);outline-offset:2px}button.secondary{background:#fff;color:#23332f;border-color:var(--line)}button.secondary:hover{background:var(--surface-tint);border-color:#bdd5ce;box-shadow:var(--shadow-tight)}button.danger{background:#fff5f3;color:var(--danger);border-color:#f1c5bd}button:disabled{opacity:.58;cursor:not-allowed}input,select,textarea{width:100%;min-height:42px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff;color:var(--ink);box-shadow:inset 0 1px #18211f05;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}input:hover,select:hover,textarea:hover{border-color:var(--line-strong)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px #11746b1a}textarea{resize:vertical;min-height:120px}label{display:grid;gap:7px}label>span{font-size:12px;font-weight:650;color:#52615c}.app-shell{max-width:1360px;margin:0 auto;padding:24px 18px 42px;display:grid;gap:18px}.auth-shell{max-width:none;min-height:100vh;padding:clamp(20px,4vw,48px);grid-template-columns:minmax(320px,.96fr) minmax(360px,480px);align-items:center;gap:clamp(28px,6vw,78px)}.auth-brand-panel{min-height:min(650px,calc(100vh - 96px));display:grid;align-content:space-between;gap:32px;padding:clamp(28px,5vw,56px);color:#f7fbf9;background:linear-gradient(140deg,rgba(17,116,107,.2),transparent 46%),linear-gradient(320deg,rgba(200,93,69,.14),transparent 54%),#111917;border:1px solid rgba(255,255,255,.08);border-radius:8px;box-shadow:0 30px 72px #1119173d;overflow:hidden;position:relative}.auth-brand-panel:before{content:"";position:absolute;inset:0;opacity:.2;background-image:linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:36px 36px;pointer-events:none}.auth-brand-panel>*{position:relative;z-index:1}.brand-lockup{display:flex;align-items:center;gap:14px}.brand-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;background:#f8fbf9;color:#0e5f58;font-size:24px;font-weight:800;box-shadow:0 12px 26px #0000002e}.auth-brand-panel h1{margin:0;font-size:clamp(34px,5vw,64px);line-height:.98;letter-spacing:0}.auth-brand-panel p{margin:22px 0 0;max-width:34ch;color:#c6d8d1;font-size:16px;line-height:1.7}.auth-preview{width:min(460px,100%);min-height:260px;justify-self:end;display:grid;gap:18px;padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff14;box-shadow:inset 0 1px #ffffff14}.preview-top{display:grid;grid-template-columns:1fr 1.4fr .7fr;gap:10px}.preview-top span,.preview-grid span{display:block;border-radius:8px;background:#ffffffc7}.preview-top span{height:44px}.preview-top span:nth-child(2){background:#dff3eee6}.preview-top span:nth-child(3){background:#c85d45b8}.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:54px;gap:10px}.preview-grid .wide{grid-column:span 2;background:#ffffff3d}.preview-grid .tall{grid-row:span 2;background:#11746b8c}.auth-stage{display:grid;gap:14px;align-self:center;min-width:0;width:100%}.auth-card{width:100%;min-width:0;display:grid;gap:20px;padding:clamp(24px,4vw,34px);border:1px solid rgba(203,215,210,.92);border-radius:8px;background:#fffffff5;box-shadow:var(--shadow-soft)}.auth-card-head{display:grid;gap:8px}.auth-card-head span{color:var(--accent);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0}.auth-card-head h2{margin:0;font-size:28px;line-height:1.15;letter-spacing:0}.auth-card-head p{margin:0;color:var(--muted);line-height:1.6}.auth-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:#edf3f1}.auth-switch .tab-button{min-height:42px;padding:10px 12px;border:0;border-radius:6px;background:transparent;color:#42524d;box-shadow:none;transform:none}.auth-switch .tab-button:hover{background:#ffffff8c;box-shadow:none;transform:none}.auth-switch .tab-button.active{background:#fff;color:var(--ink);box-shadow:0 5px 14px #11191714}.auth-form{display:grid;gap:14px}.auth-form button:not(.tab-button){min-height:46px;margin-top:2px}.auth-hint{margin:0;padding:11px 12px;border:1px solid #d7ebe5;border-radius:8px;background:#f0faf6;color:#49615b;font-size:13px;line-height:1.55}.topbar{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;align-items:start;padding:20px 22px;border:1px solid var(--line);border-radius:8px;background:#fffffff0;box-shadow:var(--shadow-tight)}.topbar h1{margin:0 0 8px;font-size:30px;line-height:1.15}.topbar p{margin:0;color:var(--muted)}.eyebrow{margin-bottom:6px;color:#7f918a;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0}.auth-brand-panel .eyebrow{color:#9fc7bd}.topbar-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.topbar-meta div,.stack.small div{display:grid;gap:4px}.topbar-meta div{min-width:0;padding:10px 12px;border:1px solid #e0e9e5;border-radius:8px;background:var(--surface-soft)}.topbar-meta span,.stack.small span{color:#6f7f79;font-size:12px}.topbar-meta strong,.stack.small strong{color:#1a2724;font-weight:700;word-break:break-word}.mode-bar,.subnav,.row{display:flex;gap:8px;flex-wrap:wrap}.row.compact{gap:6px}.row.compact button{padding:8px 10px}.mode-bar,.subnav{padding:8px;border:1px solid var(--line);border-radius:8px;background:#fffffff0;box-shadow:0 6px 18px #13221f0d}.tab-button{background:#fff;color:#354741;border-color:var(--line)}.tab-button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.main-column,.side-column,.surface{min-width:0;display:grid;gap:14px}.panel-slab{border:1px solid var(--line);border-radius:8px;background:#fffffff5;padding:18px;display:grid;gap:14px;box-shadow:0 10px 28px #13221f0f}.panel-slab.compact{padding:14px}.section-header{display:flex;gap:12px;align-items:start;justify-content:space-between}.section-header h2,.panel-slab h3{margin:0;color:var(--ink);font-size:18px;line-height:1.2}.section-header p{margin:6px 0 0;color:var(--muted);line-height:1.55}.section-action{display:flex;justify-content:flex-end}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.metric-card{border:1px solid #dde8e4;border-radius:8px;background:linear-gradient(180deg,#fff,#f8fbf9);padding:13px;display:grid;gap:8px;box-shadow:0 5px 16px #13221f0a}.metric-card span{color:#687a73;font-size:12px;font-weight:650}.metric-card strong{color:#17231f;font-size:20px;line-height:1.1}.metric-card small{color:#73837d;line-height:1.45}.table-wrap{overflow:auto;border:1px solid #dde8e4;border-radius:8px;background:#fff}.data-table{width:100%;border-collapse:collapse;min-width:900px}.data-table th,.data-table td{padding:11px 12px;border-bottom:1px solid #e7eeeb;text-align:left;vertical-align:top}.data-table thead th{background:#f6faf8;color:#5d7069;font-size:12px;font-weight:750;white-space:nowrap}.data-table tbody tr:hover{background:#f7fbf9}.data-table td{color:#273530;word-break:break-word}.cell-title{font-weight:750}.cell-sub{margin-top:4px;color:#71827b;font-size:12px}.stack{display:grid;gap:14px}.stack.small{gap:10px}.form-grid{display:grid;gap:12px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.inline-note,.muted{color:#71827b;font-size:12px}.inline-note{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid #d6e5df;border-radius:999px;background:#f3faf7}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid #d6e5df;border-radius:999px;background:#f3faf7;color:#314a43;font-size:12px}.pill{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid #d7e2de;border-radius:999px;background:#f8fbfa;color:#334842;font-size:12px}.pill.ok{background:#ecf8f1;border-color:#c6e8d5;color:#176e43}.pill.warn{background:#fff8e8;border-color:#f0ddb0;color:#8a5c00}.pill.bad{background:#fff0ee;border-color:#f0c7c0;color:#9f1f1f}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.compact-note,.muted-block{padding:10px 12px;border:1px solid #dfe9e5;border-radius:8px;background:#f8fbf9;color:#596b65}.muted-block{font-size:12px}.surface .panel-slab:first-child{margin-top:0}.hero-band{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.9fr);gap:18px;align-items:stretch;padding:22px;border:1px solid #17231f;border-radius:8px;background:#111917;color:#eff8f5;box-shadow:0 16px 40px #13221f29}.hero-copy{display:grid;gap:14px;align-content:start}.hero-band .eyebrow{color:#9fc7bd}.hero-band h2{margin:0;font-size:36px;line-height:1.1;letter-spacing:0}.hero-band p{margin:0;max-width:58ch;color:#c7d8d2;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#ffffff14;color:#f3faf8;font-weight:700}.hero-actions button.secondary{background:#ffffff14;color:#f3faf8;border-color:#ffffff29}.hero-cards{display:grid;gap:10px}.hero-band .metric-card{border-color:#ffffff1f;background:#ffffff0f;color:#eef7f4}.hero-band .metric-card span,.hero-band .metric-card small{color:#c2d5cf}.hero-band .metric-card strong{color:#fff}.metric-grid.compact{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}@media(max-width:1200px){.auth-shell{grid-template-columns:1fr;align-content:start}.auth-brand-panel{min-height:auto}.auth-preview{justify-self:start}.topbar-meta,.workspace-grid{grid-template-columns:1fr}.side-column{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.hero-band{grid-template-columns:1fr}}@media(max-width:900px){.topbar,.topbar-meta,.form-grid.two,.form-grid.three{grid-template-columns:1fr}.data-table{min-width:760px}.app-shell{padding:14px}.auth-shell{width:100%;min-height:100vh;padding:16px;gap:16px;display:flex;flex-direction:column}.auth-brand-panel{width:100%;max-width:100%;min-width:0;padding:22px}.auth-stage,.auth-card,.auth-switch,.auth-form{width:100%;max-width:100%;min-width:0}.auth-preview{display:none}.auth-brand-panel h1{font-size:34px}.auth-card{padding:22px}.auth-card-head h2{font-size:24px}.hero-band{padding:18px}.hero-band h2{font-size:28px}.topbar h1{font-size:24px}}
