/* Shared visual tokens. Preserve the established Chinese typography and blue accent. */
:root{--paper:#fff;--canvas:#f6f7fa;--ink:#243249;--blue:#315db5;--muted:#596a82;--line:#dfe5ee;--sidebar:#eef1f6;--tint:#e7eefb;--danger:#a64e39;--green:#327359;color:var(--ink);background:var(--canvas);font-size:14px;color-scheme:light}
body{min-height:100dvh}p,.muted,.hint,.page-note{color:var(--muted)}p{font-size:14px}.hint,.page-note,.muted{font-size:12px;line-height:1.7}h1{font-size:26px;letter-spacing:-.5px}h2{font-size:16px}a,button,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button,input,textarea,select{font-family:inherit}input,textarea{color:var(--ink)}::placeholder{color:#69758a;opacity:1}button{font-size:13px;transition:background-color .16s,color .16s,box-shadow .16s}button:active:not(:disabled){filter:brightness(.94)}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:3px}button:disabled{opacity:.5}a{color:var(--blue)}.primary{background:var(--blue);color:white;min-height:38px;border-radius:6px}.secondary{color:var(--ink);border-color:#b6c2d4;min-height:38px;border-radius:6px}.text-button{color:var(--blue);padding:8px;font-size:13px}.badge,.small-tag{font-size:12px;color:var(--muted)}.breadcrumb{font-size:12px;margin-bottom:28px;color:var(--muted)}.eyebrow{display:none}.sidebar{width:240px;padding:26px 16px 18px;background:var(--sidebar);border-right:1px solid var(--line);overflow-y:auto}.brand{gap:10px;padding:0 10px}.brand-mark{background:var(--blue);border-radius:10px;box-shadow:0 4px 10px #315db515}.brand strong{font-size:15px}.brand small,.profile small{font-size:12px;color:var(--muted)}.side-section{font-size:11px;color:var(--muted);padding:32px 12px 12px}.workspace-nav{display:flex;flex-direction:column;gap:4px}.workspace-nav .nav-link,.workspace-nav .nav-active{display:flex;align-items:center;gap:12px;margin:0;padding:11px 12px;min-height:42px;border-radius:7px;font-size:13px;font-weight:500;text-decoration:none;color:var(--muted);position:relative}.workspace-nav .nav-link:hover{background:#e1e7f1}.workspace-nav .nav-active,.workspace-nav .active{color:var(--blue);background:var(--tint);font-weight:600}.workspace-nav [aria-current=page]:before{content:'';position:absolute;left:0;top:13px;bottom:13px;width:3px;background:var(--blue);border-radius:3px}.workspace-nav img{display:block;flex-shrink:0;width:19px;height:19px;opacity:.72}.side-note{padding:28px 12px 20px;color:var(--muted);font-size:12px}.side-note small{font-size:12px;color:var(--muted)}.profile{font-size:13px}.profile>span{background:#dfe6f1}.skip-link{position:fixed;left:16px;top:-80px;padding:12px 18px;background:var(--blue);color:white;z-index:100;border-radius:6px}.skip-link:focus{top:12px}
main:not(.todo-main){margin-left:240px;width:calc(100% - 240px);max-width:1360px;padding:32px 44px}.module-main>header,.overview-main>header{margin-bottom:28px}.module-notice{font-size:13px;background:#edf2fa;color:var(--muted);border-color:var(--line);margin:20px 0}.module-card{min-height:160px;background:var(--paper);border-color:var(--line);border-radius:10px;padding:22px}.module-card h2{font-size:16px}.module-card p{font-size:13px}.module-card .module-link,.coming-note{font-size:12px}.metric-card{background:var(--paper);border-color:var(--line);border-radius:10px}.metric-label,.metric-state{font-size:12px;color:var(--muted)}.metric-value{color:var(--ink);font-variant-numeric:tabular-nums}.connection{background:var(--paper);border-color:var(--line)}.connection-info strong{font-size:14px}.connection-info p{font-size:12px;color:var(--muted)}.section-title p{font-size:13px}.default-block{border-color:var(--blue);padding-left:20px}.task-row{padding:23px 0}.task-copy label{font-size:14px}.task-copy p,.task-copy small{font-size:12px;color:var(--muted)}select{font-size:13px;border-color:#b6c2d4;height:42px}.save-bar strong{font-size:13px}.save-bar small,.advanced,.test-item p,.test-item strong{font-size:12px}.test-item{background:var(--paper);border-color:var(--line)}.empty-test{background:var(--paper);color:var(--muted);font-size:13px}.advanced summary{padding:8px 0}#notice{font-size:13px}
.overview-metrics{background:var(--paper);border:1px solid var(--line);border-radius:10px;gap:0;overflow:hidden;grid-template-columns:1.5fr repeat(3,1fr)}.overview-metric{border:0;border-radius:0;border-left:1px solid var(--line);padding:24px;gap:16px}.overview-metric:first-child{border-left:0}.overview-metric.revenue{background:var(--paper)}.overview-metric strong{color:var(--ink);font-size:32px}.overview-metric>span,.overview-metric-head>span,.overview-metric small{font-size:12px;color:var(--muted)}.period-switch{background:var(--canvas);border:1px solid var(--line)}.period-switch button{font-size:12px;min-height:30px;padding:4px 9px;color:var(--muted)}.period-switch button[aria-pressed=true]{color:var(--blue)}.overview-heading h2{font-size:16px}.overview-heading p,.overview-heading a{font-size:12px;color:var(--muted)}.overview-heading a{color:var(--blue)}.overview-panel{background:var(--paper);border-color:var(--line);border-radius:10px}.overview-columns{gap:22px;margin-top:30px;grid-template-columns:1.15fr 1fr}.overview-todo-summary,.overview-todo p,.overview-due,.overview-panel-footer>span,.overview-panel-footer a,.overview-source{font-size:12px}.overview-todo strong{font-size:14px}.overview-empty h3,.overview-codex-empty h3{font-size:14px;color:var(--ink)}.overview-empty p,.overview-codex-empty p{font-size:13px;color:var(--muted)}.overview-source{color:var(--muted)}.overview-symbol{display:none}.overview-codex-empty{min-height:260px;align-items:flex-start;text-align:left;padding:30px}.overview-panel-footer>span,.overview-todo-summary{color:var(--muted)}.overview-main .page-note{font-size:12px}.overview-empty a{font-size:12px}.overview-error{font-size:12px}.overview-panel h2 span{color:var(--blue)}.overview-due.overdue{color:var(--danger)}
@media(max-width:1279px){.sidebar{width:216px}main:not(.todo-main){margin-left:216px;width:calc(100% - 216px);padding:28px}.overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-metric:nth-child(3){border-left:0;border-top:1px solid var(--line)}.overview-metric:nth-child(4){border-top:1px solid var(--line)}.overview-columns{grid-template-columns:1fr}.task-select{width:260px}}
@media(max-width:767px){.sidebar{position:static;width:100%;padding:18px;display:flex;flex-direction:column;align-items:stretch;gap:16px;overflow:visible}.brand{padding:0}.side-section,.side-note,.profile{display:none}.workspace-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;order:0;width:100%;overflow:visible}.workspace-nav .nav-link,.workspace-nav .nav-active{flex-direction:column;justify-content:center;gap:6px;padding:10px 3px;min-height:64px;font-size:11px;white-space:nowrap}.workspace-nav img{width:19px;height:19px}.workspace-nav [aria-current=page]:before{display:none}body{display:block}main:not(.todo-main){margin:0;width:100%;padding:24px 18px}.overview-columns{grid-template-columns:1fr}.overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-metric{padding:20px 16px}.overview-metric.revenue,.overview-metric:last-child{grid-column:auto}.overview-metric.revenue{grid-column:1/-1;border-bottom:1px solid var(--line)}.overview-metric:nth-child(2){border-left:0}.overview-metric:nth-child(3){border-left:1px solid var(--line);border-top:0}.overview-metric:nth-child(4){grid-column:1/-1;border-left:0}.overview-heading{align-items:flex-start}.module-grid{grid-template-columns:1fr}.task-row{flex-wrap:wrap}.task-copy{flex-basis:calc(100% - 50px)}.task-select{max-width:none;width:100%;margin:0}.secondary,.primary,.text-button,select{min-height:44px}.period-switch button{min-height:36px}h1{font-size:23px}.breadcrumb{margin-bottom:22px}.module-main .badge{display:none}.overview-panel-footer{gap:12px}.overview-codex-empty{min-height:210px}.save-bar{align-items:stretch;flex-direction:column}.save-actions{justify-content:flex-end}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
