:root{--bg: #f4f1ea;--bg-soft: #fbfaf7;--panel: rgba(255, 255, 255, .9);--panel-strong: #ffffff;--line: #e1e5eb;--line-strong: #d4d9e1;--ink: #1e232b;--ink-soft: #586170;--ink-faint: #7b8492;--accent: #2f4058;--accent-soft: #edf2f8;--accent-2: #b36a2d;--success: #29613d;--warning: #8a4a1b;--danger: #9f2d2d;--shadow-card: 0 10px 28px rgba(31, 35, 40, .07);--shadow-soft: 0 1px 2px rgba(31, 35, 40, .05);--radius-xl: 24px;--radius-lg: 18px;--radius-md: 13px;--radius-sm: 10px;--font-sans: "Source Sans 3", "SF Pro Text", "PingFang SC", "Noto Sans SC", sans-serif;--font-serif: "Libre Baskerville", "Noto Serif SC", "Songti SC", serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--font-sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}textarea,input,select{width:100%;border-radius:12px;border:1px solid var(--line-strong);background:#fffffff2;color:var(--ink);padding:11px 13px;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}textarea{resize:vertical;min-height:120px;line-height:1.65}textarea:focus,input:focus,select:focus{border-color:#b7c5d8;box-shadow:0 0 0 4px #2f405814}input[type=number]{min-width:0}.ambient-wrap{position:relative;min-height:100vh;overflow:hidden}.ambient{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 10% 8%,rgba(228,235,244,.52),transparent 33%),radial-gradient(circle at 86% 18%,rgba(242,226,211,.58),transparent 30%),radial-gradient(circle at 80% 86%,rgba(228,235,244,.44),transparent 36%),linear-gradient(180deg,#ffffff3d,#fff0)}.app-shell{position:relative;z-index:1;display:grid;grid-template-columns:292px minmax(0,1fr);min-height:100vh}.auth-shell{position:relative;z-index:1;min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(460px,100%);display:grid;gap:16px;padding:28px 26px;border-radius:24px;border:1px solid rgba(212,217,225,.88);background:#ffffffe6;box-shadow:var(--shadow-card)}.auth-card h1{margin:0;font-family:var(--font-serif);font-size:34px;line-height:1.12}.auth-copy{margin:0;color:var(--ink-soft);font-size:15px;line-height:1.65}.auth-form{display:grid;gap:12px}.auth-form label{display:grid;gap:6px;color:var(--ink-soft);font-size:13px;font-weight:600}.sidebar{position:sticky;top:0;display:grid;align-content:start;gap:18px;height:100vh;padding:22px 16px;border-right:1px solid rgba(212,217,225,.82);background:#ffffffd6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow-y:auto}.brand{padding:6px 10px}.brand-eyebrow{margin:0;color:var(--ink-faint);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.16em}.brand h1{margin:10px 0 8px;font-family:var(--font-serif);font-size:27px;line-height:1.14;letter-spacing:-.02em;overflow-wrap:anywhere}.brand-sub{margin:0;color:var(--ink-soft);font-size:14px;line-height:1.6}.sidebar-panel{position:relative;z-index:1;display:grid;gap:10px;min-width:0;padding:12px;border-radius:16px;border:1px solid rgba(212,217,225,.82);background:#ffffffb3}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.sidebar-title{margin:0;color:var(--ink);font-size:13px;font-weight:700;letter-spacing:.06em}.sidebar-copy{margin:0;color:var(--ink-soft);font-size:12px;line-height:1.55}.sidebar-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:700}.sidebar-primary{border:none;border-radius:12px;padding:11px 13px;background:linear-gradient(135deg,#23354c,#3d5675);color:#fff;font-size:13px;font-weight:700}.sidebar-secondary{border:1px solid rgba(212,217,225,.92);border-radius:12px;padding:10px 12px;background:#fffffff0;color:#243445;font-size:13px;font-weight:600}.account-name{margin:0;color:var(--ink);font-size:16px;font-weight:700;line-height:1.3}.history-panel{min-height:0;align-content:start;background:#fafbfdd1}.history-list{display:grid;gap:8px}.history-empty{padding:10px 11px;border-radius:12px;background:#f8f9fbeb;border:1px dashed rgba(212,217,225,.9);color:var(--ink-faint);font-size:12px}.history-item{display:grid;grid-template-rows:minmax(24px,auto) auto auto;align-content:start;gap:4px;width:100%;min-height:72px;padding:9px 11px;cursor:pointer;text-align:left;border-radius:12px;border:1px solid rgba(212,217,225,.92);background:#fffffff0;box-shadow:0 1px #ffffffb3 inset;color:var(--ink);transition:border-color .16s ease,background .16s ease,transform .16s ease}.history-item:hover{transform:translate(1px);border-color:#2f405833}.history-item.active{background:var(--accent-soft);border-color:#2f40583d}.history-item strong{font-size:12.5px;line-height:1.35;display:-webkit-box;overflow:hidden;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow-wrap:anywhere}.history-item span,.history-item em{color:var(--ink-faint);font-size:11.5px;font-style:normal;line-height:1.35;margin:0}.content{max-width:1320px;padding:30px 32px 42px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.topbar-kicker{margin:0;color:var(--ink-faint);font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.topbar h2{margin:8px 0 0;font-family:var(--font-serif);font-size:clamp(1.68rem,2.7vw,2.45rem);line-height:1.2;letter-spacing:-.03em;overflow-wrap:anywhere}.topbar p{margin:11px 0 0;max-width:900px;color:var(--ink-soft);font-size:15px;line-height:1.62}.topbar-side{display:flex;gap:12px}.metric-tile{display:flex;flex-direction:column;justify-content:space-between;min-width:120px;min-height:98px;padding:14px 16px;border-radius:16px;border:1px solid rgba(212,217,225,.9);background:#ffffffd6;box-shadow:var(--shadow-soft);text-align:left}.metric-tile strong{display:block;font-size:28px;line-height:1;letter-spacing:-.04em}.metric-tile span{display:block;margin-top:7px;color:var(--ink-soft);font-size:13px}.card{display:grid;gap:14px;padding:18px;border-radius:var(--radius-xl);border:1px solid rgba(255,255,255,.65);background:var(--panel);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);margin-bottom:14px}.card-header{display:grid;gap:6px}.split-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px}.eyebrow{margin:0;color:var(--ink-faint);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.card h3,.card h4{margin:0;font-family:var(--font-serif)}.card h3{font-size:22px;line-height:1.24}.card h4{font-size:17px;line-height:1.38}.soft-pill,.status-pill,.metric-strip span{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:7px 11px;border-radius:999px;border:1px solid var(--line-strong);background:#fffffff2;font-size:12px;color:#33404e}.status-running{color:#1a5f65;background:#daf0f2c2}.status-done{color:var(--success);background:#dcf3e4c2}.status-failed,.status-canceled{color:var(--danger);background:#f8e5e5cc}.status-pending{color:var(--ink-soft)}.input-note,.info-text,.error-text,.summary,.section-body,.citation-abstract,.notice-list,.outline-list,.live-banner-body,.step span{color:var(--ink-soft);font-size:14px;line-height:1.7}.warning-text{color:var(--warning);font-weight:600}.control-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:stretch}.control-block{display:grid;gap:8px;min-width:0;height:100%;padding:12px;border-radius:var(--radius-lg);border:1px solid rgba(212,217,225,.82);background:#ffffffc7}.control-block label{color:var(--ink-faint);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.span-2{grid-column:span 2}.segmented-grid{display:grid;gap:8px;align-items:stretch}.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}.segment-btn{display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(212,217,225,.92);border-radius:14px;background:#ffffffeb;color:var(--ink);min-height:90px;padding:12px;text-align:left;gap:6px;transition:border-color .16s ease,background .16s ease,transform .16s ease}.segment-btn:hover{transform:translateY(-1px)}.segment-btn.active{border-color:#2f40583d;background:var(--accent-soft)}.segment-btn strong{font-size:14px;line-height:1.35;overflow-wrap:anywhere}.segment-btn span{color:var(--ink-soft);font-size:12px;line-height:1.5;overflow-wrap:anywhere}.compact-block{align-content:start}.number-control{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;gap:8px;align-items:center}.strong-number input{text-align:center;font-size:26px;font-weight:700;padding:10px 8px}.step-btn{height:46px;border:1px solid rgba(212,217,225,.92);border-radius:12px;background:#fffffff2;color:var(--accent);font-size:22px;line-height:1}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.between-row{justify-content:space-between}.submit-row{justify-content:flex-end}.chip-row{display:flex;gap:8px;flex-wrap:wrap}.mini-chip,.secondary-btn{border:1px solid rgba(212,217,225,.92);border-radius:999px;background:#fffffff0;color:#243445;padding:9px 12px;font-size:13px;font-weight:600}.primary-btn{border:none;border-radius:14px;padding:12px 18px;background:linear-gradient(135deg,#23354c,#3d5675);color:#fff;font-size:14px;font-weight:700}.auth-submit{width:100%}.info-text{color:#30536f}.error-text{color:var(--danger)}.live-banner{display:grid;gap:6px;padding:10px 12px;border-radius:12px;border:1px solid rgba(2,126,124,.18);background:linear-gradient(135deg,#027e7c14,#4ea5d91a)}.live-banner-top,.live-banner-body{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.pulse-dot{width:10px;height:10px;border-radius:999px;background:#027e7c;box-shadow:0 0 #027e7c73;animation:pulse 1.4s infinite}@keyframes pulse{0%{transform:scale(.95);box-shadow:0 0 #027e7c73}70%{transform:scale(1);box-shadow:0 0 0 10px #027e7c00}to{transform:scale(.95);box-shadow:0 0 #027e7c00}}.step-highlight{display:grid;gap:4px;padding:12px;border-radius:12px;background:#edf2f8eb;border:1px solid rgba(212,217,225,.82)}.step-highlight strong{color:var(--accent)}.notice-list,.outline-list{padding-left:20px;display:grid;gap:7px}.metric-strip{display:flex;gap:8px;flex-wrap:wrap}.sections-grid,.citation-list,.timeline{display:grid;gap:10px}.section-card,.citation-card{border:1px solid rgba(212,217,225,.82);border-radius:14px;background:#ffffffb8;padding:14px}.citation-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px}.citation-index{color:var(--ink-faint);font-size:13px;font-weight:700;padding-top:3px}.citation-meta,.citation-flag,.step em,.muted{color:var(--ink-faint);font-size:13px}.citation-meta,.citation-flag{margin:4px 0 0}.step{border-left:3px solid rgba(2,126,124,.35);padding-left:8px;display:grid;gap:2px}.step strong{color:var(--accent);font-size:13px}.step em{font-style:normal}@media(max-width:1180px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto;border-right:none;border-bottom:1px solid rgba(212,217,225,.82);overflow:visible}.content{padding-top:24px}}@media(max-width:980px){.topbar,.split-head{grid-template-columns:1fr;display:grid}.topbar-side{justify-content:flex-start;flex-wrap:wrap}.control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:span 2}.three-up{grid-template-columns:1fr}}@media(max-width:680px){.content{padding:18px 14px 36px}.sidebar{padding:18px 14px}.card{padding:15px}.control-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.between-row{align-items:stretch}.primary-btn{width:100%}.citation-card{grid-template-columns:1fr}}
