/* 2026-08-27 complete study-workbench layer */
:root{
  --v4-surface:#fff;
  --v4-surface-2:#f7f7f9;
  --v4-surface-3:#eef4fc;
  --v4-ink:#1d1d1f;
  --v4-muted:#6e6e73;
  --v4-line:#dedee3;
  --v4-line-soft:#ececef;
  --v4-blue:#06c;
  --v4-red:#d83b3b;
  --v4-green:#168758;
  --v4-orange:#b96700;
  --v4-shadow:0 18px 60px rgba(0,0,0,.13);
}
[data-theme="dark"]{
  color-scheme:dark;
  --bg:#101114;
  --ink:#f5f5f7;
  --muted:#a1a1a6;
  --line:#35363a;
  --soft:#202125;
  --blue:#58a6ff;
  --green:#55c78a;
  --orange:#ffb44d;
  --red:#ff6961;
  --v4-surface:#17181b;
  --v4-surface-2:#202125;
  --v4-surface-3:#182538;
  --v4-ink:#f5f5f7;
  --v4-muted:#a1a1a6;
  --v4-line:#35363a;
  --v4-line-soft:#2a2b2f;
  --v4-blue:#58a6ff;
  --v4-red:#ff6961;
  --v4-green:#55c78a;
  --v4-orange:#ffb44d;
  --v4-shadow:0 24px 70px rgba(0,0,0,.5);
}
[data-theme="dark"] body,
[data-theme="dark"] .contextbar,
[data-theme="dark"] .content,
[data-theme="dark"] .sidebar,
[data-theme="dark"] .panel,
[data-theme="dark"] .apple-module-rail,
[data-theme="dark"] .apple-knowledge-drawer,
[data-theme="dark"] .apple-word-detail-card,
[data-theme="dark"] .essay-library,
[data-theme="dark"] .modal{background:var(--v4-surface);color:var(--v4-ink)}
[data-theme="dark"] .layout,
[data-theme="dark"] .view{background:#101114}
[data-theme="dark"] .topbar{background:#050506}
[data-theme="dark"] .contextbar,
[data-theme="dark"] .sidebar,
[data-theme="dark"] .panel,
[data-theme="dark"] .modal,
[data-theme="dark"] .apple-module-rail,
[data-theme="dark"] .apple-knowledge-drawer{border-color:var(--v4-line)}
[data-theme="dark"] input,
[data-theme="dark"] textarea,
[data-theme="dark"] select,
[data-theme="dark"] .ghost-btn,
[data-theme="dark"] .tiny-btn,
[data-theme="dark"] .option,
[data-theme="dark"] .segmented button.active{background:#202125!important;color:var(--v4-ink)!important;border-color:var(--v4-line)!important}
[data-theme="dark"] .mobile-nav{background:rgba(16,17,20,.96);border-color:var(--v4-line)}
[data-theme="dark"] .apple-markdown,
[data-theme="dark"] .apple-word-section p,
[data-theme="dark"] .apple-word-section li,
[data-theme="dark"] .apple-knowledge-detail,
[data-theme="dark"] .essay-article p,
[data-theme="dark"] .apple-essay-paper pre{color:#d6d6da}
[data-theme="dark"] .user-card,
[data-theme="dark"] .account-form,
[data-theme="dark"] .account-tools,
[data-theme="dark"] .achievement-grid,
[data-theme="dark"] .user-metrics{background:var(--v4-surface);color:var(--v4-ink);border-color:var(--v4-line)}
[data-theme="dark"] .user-card input,
[data-theme="dark"] .user-card textarea,
[data-theme="dark"] .user-card select{background:var(--v4-surface-2);color:var(--v4-ink);border-color:var(--v4-line)}
[data-theme="dark"] .user-card .subtle,
[data-theme="dark"] .user-card p,
[data-theme="dark"] .user-card small{color:var(--v4-muted)}

.modal-backdrop{backdrop-filter:blur(5px)}
.modal{width:min(680px,100%);max-height:min(88vh,820px);overflow:auto;background:var(--v4-surface)!important;color:var(--v4-ink)!important;border:1px solid var(--v4-line)!important;border-radius:12px!important;box-shadow:var(--v4-shadow)!important}
.modal-close{display:grid!important;place-items:center!important;flex:0 0 auto;width:34px!important;height:34px!important;border:1px solid var(--v4-line)!important;border-radius:50%!important;background:var(--v4-surface-2)!important;color:var(--v4-ink)!important;opacity:1!important}
.modal-close:hover{border-color:var(--v4-blue)!important;color:var(--v4-blue)!important}
.modal-close .ico,.modal-close svg{display:block!important;width:16px!important;height:16px!important;stroke:currentColor!important;color:currentColor!important}
.form-row input,.form-row textarea,.form-row select{background:var(--v4-surface)!important;color:var(--v4-ink)!important;border-color:var(--v4-line)!important}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.form-grid .wide{grid-column:1/-1}

.v4-page{color:var(--v4-ink)}
.v4-page *{box-sizing:border-box}
.v4-page button,.v4-page input,.v4-page textarea,.v4-page select{font:inherit}
.v4-page input,.v4-page textarea,.v4-page select{color:var(--v4-ink);background:var(--v4-surface);border:1px solid var(--v4-line);outline:0}
.v4-page input:focus,.v4-page textarea:focus,.v4-page select:focus{border-color:var(--v4-blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--v4-blue) 14%,transparent)}
.v4-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}
.v4-head h1{margin:0;font-size:31px;line-height:1.15;letter-spacing:-.045em}
.v4-head p{margin:8px 0 0;color:var(--v4-muted);font-size:13px;line-height:1.65}
.v4-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.v4-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 14px;border:1px solid var(--v4-line);border-radius:8px;background:var(--v4-surface);color:var(--v4-ink);font-size:12px;font-weight:600;white-space:nowrap}
.v4-btn:hover{border-color:#aeb0b8;background:var(--v4-surface-2)}
.v4-btn.primary{background:var(--v4-blue);border-color:var(--v4-blue);color:#fff}
.v4-btn.danger{color:var(--v4-red)}
.v4-btn.small{min-height:30px;padding:0 9px;border-radius:6px;font-size:11px}
.v4-link{color:var(--v4-blue);font-size:11px;font-weight:600}
.v4-panel{background:var(--v4-surface);border:1px solid var(--v4-line);border-radius:11px;min-width:0;overflow:hidden}
.v4-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:54px;padding:0 18px;border-bottom:1px solid var(--v4-line)}
.v4-panel-head h2,.v4-panel-head h3{margin:0;font-size:15px;letter-spacing:-.02em}.v4-panel-head small{color:var(--v4-muted)}
.v4-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px;border:1px solid var(--v4-line);border-radius:11px;background:var(--v4-surface);overflow:hidden}
.v4-kpi{min-height:102px;padding:17px 20px;border-right:1px solid var(--v4-line)}.v4-kpi:last-child{border-right:0}
.v4-kpi span{display:block;color:var(--v4-muted);font-size:11px}.v4-kpi b{display:block;margin:8px 0 5px;font-size:30px;line-height:1;color:var(--v4-blue);letter-spacing:-.05em}.v4-kpi small{color:var(--v4-muted);font-size:10px}
.v4-empty{display:grid;place-items:center;min-height:180px;padding:26px;text-align:center;color:var(--v4-muted)}
.v4-empty strong{display:block;margin-bottom:7px;color:var(--v4-ink);font-size:14px}.v4-empty p{max-width:340px;margin:0;font-size:12px;line-height:1.7}
.v4-chip{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:5px;background:var(--v4-surface-3);color:var(--v4-blue);font-size:10px;font-weight:600;white-space:nowrap}
.v4-chip.red{background:color-mix(in srgb,var(--v4-red) 10%,var(--v4-surface));color:var(--v4-red)}
.v4-chip.green{background:color-mix(in srgb,var(--v4-green) 11%,var(--v4-surface));color:var(--v4-green)}
.v4-chip.orange{background:color-mix(in srgb,var(--v4-orange) 11%,var(--v4-surface));color:var(--v4-orange)}
.v4-segmented{display:flex;gap:3px;padding:3px;border-radius:8px;background:var(--v4-surface-2)}
.v4-segmented button{min-height:29px;padding:0 10px;border-radius:6px;color:var(--v4-muted);font-size:11px}.v4-segmented button.active{background:var(--v4-surface);color:var(--v4-ink);box-shadow:0 1px 5px rgba(0,0,0,.09)}

/* Today */
.v4-today-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr);gap:18px}.v4-today-tasks{min-height:340px}.v4-today-side{display:grid;gap:18px}.v4-mini-source{padding:17px 18px}.v4-mini-source h3{margin:0 0 8px;font-size:14px}.v4-mini-source p{margin:0;color:var(--v4-muted);font-size:12px;line-height:1.7}.v4-task-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:62px;padding:9px 18px;border-bottom:1px solid var(--v4-line-soft)}.v4-task-row:last-child{border-bottom:0}.v4-task-check{width:19px;height:19px;border:1px solid var(--v4-line);border-radius:5px}.v4-task-check.done{background:var(--v4-blue);border-color:var(--v4-blue);box-shadow:inset 0 0 0 4px var(--v4-surface)}.v4-task-row b{font-size:13px}.v4-task-row small{display:block;margin-top:5px;color:var(--v4-muted);font-size:10px}

/* Rules */
.v4-rule-proof{display:flex;align-items:center;gap:12px;margin:-8px 0 18px;padding:12px 15px;border:1px solid #b9d5f4;border-left:3px solid var(--v4-blue);border-radius:8px;background:var(--v4-surface-3);font-size:11px;color:var(--v4-muted)}
.v4-rule-proof b{color:var(--v4-ink)}
.v4-rule-shell{display:grid;grid-template-columns:210px minmax(0,1fr) 330px;min-height:660px}
.v4-rule-modules{border-right:1px solid var(--v4-line);padding:12px}.v4-rule-modules h3{margin:8px 8px 12px;font-size:13px}
.v4-rule-module{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:42px;padding:0 10px;border-radius:7px;color:var(--v4-muted);font-size:12px;text-align:left}.v4-rule-module:hover,.v4-rule-module.active{background:var(--v4-surface-3);color:var(--v4-blue);font-weight:600}.v4-rule-module span:last-child{font-size:10px}
.v4-rule-map{padding:19px;overflow:auto}.v4-rule-path{display:flex;gap:8px;align-items:center;margin-bottom:18px;color:var(--v4-muted);font-size:10px}.v4-rule-path b{color:var(--v4-ink)}
.v4-rule-family{position:relative;display:grid;grid-template-columns:128px minmax(0,1fr);gap:20px;padding:0 0 22px}.v4-rule-family:before{content:"";position:absolute;left:126px;top:22px;bottom:0;width:1px;background:#aecdf2}.v4-rule-family:last-child:before{display:none}
.v4-family-node{align-self:start;position:relative;min-height:42px;padding:12px;border:1px solid #8bbbed;border-radius:8px;background:var(--v4-surface-3);color:var(--v4-blue);font-size:12px;font-weight:700}.v4-family-node:after{content:"";position:absolute;left:100%;top:20px;width:21px;height:1px;background:#aecdf2}
.v4-point-list{display:grid;gap:8px}.v4-point-row{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(140px,1.15fr) minmax(150px,1.25fr);gap:12px;align-items:start;position:relative;min-height:64px;padding:12px;border:1px solid var(--v4-line-soft);border-radius:8px;background:var(--v4-surface);text-align:left}.v4-point-row:before{content:"";position:absolute;right:100%;top:24px;width:21px;height:1px;background:#aecdf2}.v4-point-row:hover,.v4-point-row.active{border-color:#8bbbed;background:var(--v4-surface-3)}.v4-point-row b{font-size:12px;color:var(--v4-ink)}.v4-point-row span{color:var(--v4-muted);font-size:10px;line-height:1.55}.v4-point-row em{color:var(--v4-blue);font-size:10px;font-style:normal;line-height:1.55}
.v4-rule-inspector{border-left:1px solid var(--v4-line);padding:20px;overflow:auto}.v4-rule-inspector h2{margin:0 0 7px;font-size:20px}.v4-rule-inspector>p{margin:0 0 18px;color:var(--v4-muted);font-size:11px;line-height:1.7}.v4-rule-detail{padding:15px 0;border-top:1px solid var(--v4-line)}.v4-rule-detail h4{margin:0 0 8px;color:var(--v4-blue);font-size:11px}.v4-rule-detail p{margin:0;font-size:12px;line-height:1.75}.v4-evidence-list{display:grid;gap:8px;margin-top:9px}.v4-evidence{padding:10px;border:1px solid var(--v4-line-soft);border-radius:7px}.v4-evidence b{display:flex;justify-content:space-between;gap:8px;font-size:10px}.v4-evidence p{margin:5px 0 0;color:var(--v4-muted);font-size:10px;line-height:1.55}.v4-inspector-actions{display:grid;gap:8px;margin-top:16px}

/* Wrong answers */
.v4-wrong-controls{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(120px,160px));gap:8px;padding:12px;border-bottom:1px solid var(--v4-line)}.v4-wrong-controls input,.v4-wrong-controls select{height:36px;border-radius:7px;padding:0 10px;font-size:11px}
.v4-wrong-table{overflow:auto}.v4-wrong-row{display:grid;grid-template-columns:minmax(250px,1.55fr) minmax(110px,.7fr) minmax(105px,.65fr) minmax(130px,.8fr) 86px 96px 205px;gap:12px;align-items:center;min-width:1080px;min-height:76px;padding:10px 14px;border-bottom:1px solid var(--v4-line-soft);font-size:11px}.v4-wrong-row.head{min-height:38px;color:var(--v4-muted);font-size:10px;background:var(--v4-surface-2)}.v4-wrong-row:last-child{border-bottom:0}.v4-wrong-title{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;align-items:center}.v4-wrong-thumb{width:58px;height:48px;object-fit:contain;border:1px solid var(--v4-line);border-radius:6px;background:#fafafa}.v4-wrong-placeholder{display:grid;place-items:center;width:58px;height:48px;border:1px dashed var(--v4-line);border-radius:6px;color:var(--v4-muted);font-size:9px}.v4-wrong-title b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.v4-wrong-title p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:5px 0 0;color:var(--v4-muted);font-size:10px;line-height:1.45}.v4-answer-pair strong{color:var(--v4-red)}.v4-answer-pair b{color:var(--v4-green)}.v4-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.v4-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;color:var(--v4-muted);font-size:10px}.v4-pages{display:flex;align-items:center;gap:4px}.v4-pages button{min-width:29px;height:29px;border:1px solid var(--v4-line);border-radius:6px;color:var(--v4-muted)}.v4-pages button.active{border-color:var(--v4-blue);background:var(--v4-surface-3);color:var(--v4-blue)}
.v4-upload-preview{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.v4-upload-preview img{width:88px;height:66px;object-fit:contain;border:1px solid var(--v4-line);border-radius:6px}.v4-option-editor{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:center;margin:7px 0}.v4-option-editor b{font-size:12px}.v4-option-editor input{width:100%;height:36px;border-radius:7px;padding:0 10px}

/* Vocabulary */
.v4-word-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.v4-word-tools input{width:min(320px,100%);height:38px;border-radius:8px;padding:0 11px}.v4-word-shell{display:grid;grid-template-columns:310px minmax(0,1fr);min-height:640px}.v4-word-index{border-right:1px solid var(--v4-line);overflow:hidden}.v4-word-index-head{padding:14px;border-bottom:1px solid var(--v4-line)}.v4-word-list{max-height:570px;overflow:auto;padding:6px}.v4-word-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;padding:11px 10px;border-radius:7px;text-align:left}.v4-word-item:hover,.v4-word-item.active{background:var(--v4-surface-3)}.v4-word-item b{font-size:13px}.v4-word-item small{display:block;margin-top:4px;color:var(--v4-muted);font-size:10px}.v4-word-detail{padding:28px}.v4-word-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:19px;border-bottom:1px solid var(--v4-line)}.v4-word-title h2{margin:0;font-size:32px;letter-spacing:-.04em}.v4-word-title p{margin:6px 0 0;color:var(--v4-muted);font-size:11px}.v4-word-section{padding:17px 0;border-bottom:1px solid var(--v4-line-soft)}.v4-word-section h3{margin:0 0 9px;color:var(--v4-blue);font-size:12px}.v4-word-section p,.v4-word-section li{font-size:13px;line-height:1.8}.v4-word-section ul{margin:0;padding-left:20px}.v4-memory{display:grid;place-items:center;min-height:560px;padding:30px}.v4-memory-card{width:min(680px,100%);min-height:360px;padding:40px;border:1px solid var(--v4-line);border-radius:12px;background:var(--v4-surface);text-align:center}.v4-memory-card h2{margin:28px 0 10px;font-size:44px;letter-spacing:.02em}.v4-memory-card>p{color:var(--v4-muted)}.v4-memory-answer{margin-top:28px;padding-top:24px;border-top:1px solid var(--v4-line);text-align:left}.v4-memory-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:22px}

/* Legacy vocabulary flow, retained inside the Apple visual system. */
.v4-word-memory-shell{display:grid;grid-template-columns:232px minmax(440px,1fr) 252px;gap:14px;min-height:560px;color:var(--v4-ink)}
.v4-memory-rail,.v4-memory-study-card,.v4-memory-queue{border:1px solid var(--v4-line);border-radius:12px;background:var(--v4-surface)}
.v4-memory-rail,.v4-memory-queue{min-width:0;padding:18px;overflow:hidden}
.v4-memory-kicker{display:block;overflow:hidden;color:var(--v4-blue);font-size:10px;font-weight:650;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.v4-memory-rail h2{margin:7px 0 8px;font-size:22px;letter-spacing:-.025em}.v4-memory-rail>p{margin:0;color:var(--v4-muted);font-size:11px;line-height:1.65}
.v4-memory-progress{--p:0;position:relative;width:126px;height:126px;margin:23px auto 18px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--v4-blue) calc(var(--p)*1%),var(--v4-line-soft) 0)}
.v4-memory-progress::before{content:"";position:absolute;inset:10px;border-radius:50%;background:var(--v4-surface)}.v4-memory-progress span{position:relative;text-align:center}.v4-memory-progress b{display:block;font-size:27px;font-weight:620;letter-spacing:-.04em}.v4-memory-progress small{display:block;margin-top:5px;color:var(--v4-muted);font-size:9px}
.v4-memory-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-bottom:18px}.v4-memory-stats div{padding:9px;border-top:1px solid var(--v4-line);background:var(--v4-surface-2)}.v4-memory-stats span{display:block;color:var(--v4-muted);font-size:9px}.v4-memory-stats b{display:block;margin-top:4px;font-size:17px}
.v4-memory-rail h3{margin:0 0 8px;color:var(--v4-muted);font-size:10px;font-weight:550}.v4-memory-types{width:100%}.v4-memory-source{display:flex;justify-content:space-between;margin-top:18px;padding-top:13px;border-top:1px solid var(--v4-line);color:var(--v4-muted);font-size:9px}
.v4-memory-main{min-width:0;display:grid;grid-template-rows:42px minmax(0,1fr) 42px;gap:12px}
.v4-memory-toolbar{display:flex;align-items:center;gap:9px}.v4-memory-modes{flex:0 0 260px}.v4-memory-toolbar input{min-width:0;height:38px;flex:1;padding:0 11px;border:1px solid var(--v4-line);border-radius:8px;background:var(--v4-surface);color:var(--v4-ink);font-size:12px}.v4-memory-toolbar input:focus{border-color:var(--v4-blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--v4-blue) 12%,transparent);outline:0}.v4-memory-toolbar .icon-only{width:38px;height:38px;padding:0;display:grid;place-items:center}.v4-memory-toolbar .icon-only svg{width:16px;height:16px}
.v4-memory-study-card{min-height:0;padding:21px 28px;display:grid;grid-template-rows:auto minmax(112px,.76fr) minmax(145px,1fr) auto;overflow:hidden}
.v4-memory-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--v4-muted);font-size:10px}.v4-memory-card-top>div{display:flex;align-items:center;gap:6px;min-width:0}.v4-memory-card-top .v4-chip{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v4-memory-favorite{width:34px;height:34px;border:0;background:transparent;color:var(--v4-muted);font-size:21px;cursor:pointer}.v4-memory-favorite.active{color:#c58a00}.v4-memory-favorite:hover{transform:scale(1.08)}
.v4-memory-term{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.v4-memory-term h2{margin:0;color:var(--v4-ink);font-size:46px;font-weight:650;letter-spacing:.015em}.v4-memory-term p{margin:13px 0 0;color:var(--v4-muted);font-size:11px}
.v4-memory-answer{min-height:0;margin:0;border-top:1px solid var(--v4-line);display:flex;align-items:center;justify-content:center}
.v4-memory-reveal{height:46px;padding:0 20px;border:1px solid color-mix(in srgb,var(--v4-blue) 35%,var(--v4-line));border-radius:9px;background:color-mix(in srgb,var(--v4-blue) 7%,var(--v4-surface));color:var(--v4-blue);font-size:12px;font-weight:650;cursor:pointer}.v4-memory-reveal:hover{background:color-mix(in srgb,var(--v4-blue) 12%,var(--v4-surface))}
.v4-memory-definition{width:100%;align-self:stretch;padding:14px 0;display:flex;align-items:center}.v4-memory-definition dl{width:100%;margin:0}.v4-memory-definition dl>div{display:grid;grid-template-columns:65px minmax(0,1fr);gap:15px;padding:9px 0;border-bottom:1px solid var(--v4-line-soft)}.v4-memory-definition dl>div:last-child{border-bottom:0}.v4-memory-definition dt{color:var(--v4-blue);font-size:11px;font-weight:650}.v4-memory-definition dd{margin:0;color:var(--v4-ink);font-size:14px;line-height:1.65}
.v4-memory-rating{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding-top:13px;border-top:1px solid var(--v4-line)}.v4-memory-rating button{height:43px;border-radius:8px;font-size:12px;font-weight:620;cursor:pointer}.v4-memory-rating .new{border:1px solid color-mix(in srgb,var(--v4-red) 35%,var(--v4-line));background:color-mix(in srgb,var(--v4-red) 7%,var(--v4-surface));color:var(--v4-red)}.v4-memory-rating .fuzzy{border:1px solid color-mix(in srgb,var(--v4-orange) 35%,var(--v4-line));background:color-mix(in srgb,var(--v4-orange) 7%,var(--v4-surface));color:var(--v4-orange)}.v4-memory-rating .known{border:1px solid color-mix(in srgb,var(--v4-green) 35%,var(--v4-line));background:color-mix(in srgb,var(--v4-green) 7%,var(--v4-surface));color:var(--v4-green)}.v4-memory-rating button:hover{filter:brightness(.96);transform:translateY(-1px)}
.v4-memory-empty{display:grid;place-items:center}.v4-memory-nav{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:8px;align-items:center}.v4-memory-nav button{height:40px;border:1px solid var(--v4-line);border-radius:8px;background:var(--v4-surface);color:var(--v4-muted);cursor:pointer}.v4-memory-nav button:hover{color:var(--v4-blue);border-color:var(--v4-blue)}.v4-memory-nav button svg{width:16px;height:16px}.v4-memory-nav span{text-align:center;color:var(--v4-muted);font-size:10px}
.v4-memory-queue{display:flex;flex-direction:column}.v4-memory-queue-head{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:13px;border-bottom:1px solid var(--v4-line)}.v4-memory-queue-head h3{margin:0;font-size:15px}.v4-memory-queue-head p{margin:5px 0 0;color:var(--v4-muted);font-size:9px}.v4-memory-queue-head>b{color:var(--v4-blue);font-size:23px}.v4-memory-queue-list{display:flex;flex-direction:column;gap:6px;margin-top:13px}.v4-memory-queue-row{height:48px;padding:0 9px;display:grid;grid-template-columns:24px minmax(0,1fr) 54px;align-items:center;gap:7px;border:1px solid var(--v4-line-soft);border-radius:8px;background:var(--v4-surface-2);color:var(--v4-muted);cursor:pointer}.v4-memory-queue-row:hover,.v4-memory-queue-row.active{border-color:color-mix(in srgb,var(--v4-blue) 35%,var(--v4-line));background:var(--v4-surface-3)}.v4-memory-queue-row i{width:23px;height:23px;display:grid;place-items:center;border-radius:6px;background:var(--v4-surface);font-size:9px;font-style:normal}.v4-memory-queue-row b{overflow:hidden;color:var(--v4-ink);font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.v4-memory-queue-row span{text-align:right;font-size:9px}
.v4-memory-legend{display:grid;gap:8px;margin-top:auto;padding-top:13px;border-top:1px solid var(--v4-line)}.v4-memory-legend div{display:flex;align-items:center;justify-content:space-between;color:var(--v4-muted);font-size:9px}.v4-memory-legend i{width:7px;height:7px;margin-right:6px;border-radius:50%;display:inline-block}.v4-memory-legend i.known{background:var(--v4-green)}.v4-memory-legend i.fuzzy{background:var(--v4-orange)}.v4-memory-legend i.new{background:var(--v4-red)}.v4-memory-note{margin-top:13px;padding:11px;border:1px solid color-mix(in srgb,var(--v4-blue) 18%,var(--v4-line));border-radius:8px;background:color-mix(in srgb,var(--v4-blue) 5%,var(--v4-surface));color:var(--v4-muted);font-size:9px;line-height:1.55}
@media(max-width:1320px){.v4-word-memory-shell{grid-template-columns:220px minmax(420px,1fr)}.v4-memory-queue{display:none}}
@media(max-width:1100px){.v4-memory-modes{flex-basis:236px}}
@media(max-width:900px){.v4-word-memory-shell{grid-template-columns:210px minmax(0,1fr)}.v4-memory-study-card{padding:20px}.v4-memory-term h2{font-size:40px}.v4-memory-modes{flex-basis:220px}}
@media(max-width:700px){.v4-word-memory-shell{display:block}.v4-memory-rail{margin-bottom:12px;display:grid;grid-template-columns:minmax(0,1fr) 96px;column-gap:12px;align-items:center}.v4-memory-kicker{grid-column:1;align-self:end}.v4-memory-rail h2{grid-column:1;margin-bottom:4px}.v4-memory-rail>p{grid-column:1;align-self:start}.v4-memory-progress{grid-column:2;grid-row:1/4;width:92px;height:92px;margin:0}.v4-memory-progress b{font-size:23px}.v4-memory-progress small{font-size:8px}.v4-memory-stats{grid-column:1/-1;grid-template-columns:repeat(4,1fr);margin:14px 0 12px}.v4-memory-stats div{padding:8px 6px}.v4-memory-stats b{font-size:15px}.v4-memory-rail h3,.v4-memory-types{grid-column:1/-1}.v4-memory-source{display:none}.v4-memory-main{display:block}.v4-memory-toolbar{flex-wrap:wrap;margin-bottom:12px}.v4-memory-modes{flex:1 1 100%}.v4-memory-toolbar input{flex:1 1 calc(100% - 48px)}.v4-memory-study-card{min-height:520px;margin-bottom:12px;padding:18px}.v4-memory-term h2{font-size:36px}.v4-memory-definition dl>div{grid-template-columns:1fr;gap:6px}.v4-memory-nav{margin-bottom:12px}}

/* Essay */
.v4-essay-tabs{display:flex;align-items:center;gap:5px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--v4-line)}.v4-essay-tabs button{min-height:32px;padding:0 11px;border-radius:6px;color:var(--v4-muted);font-size:11px}.v4-essay-tabs button.active{background:var(--v4-surface-3);color:var(--v4-blue);font-weight:600}.v4-essay-refresh-note{margin-left:auto;color:var(--v4-muted);font-size:10px}.v4-essay-shell{display:grid;grid-template-columns:285px minmax(420px,1fr) 350px;min-height:720px}.v4-essay-library{border-right:1px solid var(--v4-line);padding:10px;overflow:auto}.v4-essay-list-item{display:block;width:100%;padding:13px;border:1px solid transparent;border-radius:8px;text-align:left}.v4-essay-list-item:hover,.v4-essay-list-item.active{border-color:#a8cdf2;background:var(--v4-surface-3)}.v4-essay-list-item b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.55}.v4-essay-list-item small{display:block;margin-top:8px;color:var(--v4-muted);font-size:10px}.v4-essay-article{max-height:760px;padding:30px 38px;overflow:auto}.v4-essay-article h1{overflow-wrap:anywhere;margin:9px 0 10px;font-size:clamp(25px,2.1vw,36px);line-height:1.24;letter-spacing:-.045em}.v4-essay-meta{padding-bottom:17px;border-bottom:1px solid var(--v4-line);color:var(--v4-muted);font-size:10px}.v4-essay-body{margin-top:22px;color:var(--v4-ink);font-size:14px;line-height:1.95;white-space:pre-wrap}.v4-essay-body h1,.v4-essay-body h2{font-size:17px;line-height:1.5}.v4-essay-side{border-left:1px solid var(--v4-line);padding:20px;overflow:auto;background:var(--v4-surface-2)}.v4-essay-trace{position:relative;margin-left:6px;padding-left:24px}.v4-essay-trace:before{content:"";position:absolute;left:5px;top:8px;bottom:13px;width:2px;background:var(--v4-blue)}.v4-trace-item{position:relative;padding:0 0 18px}.v4-trace-item:before{content:"";position:absolute;left:-24px;top:4px;width:10px;height:10px;border:2px solid var(--v4-blue);border-radius:50%;background:var(--v4-surface-2);transform:translateX(-1px)}.v4-trace-item b{display:block;margin-bottom:6px;color:var(--v4-blue);font-size:11px}.v4-trace-item p{margin:0;color:var(--v4-muted);font-size:11px;line-height:1.65}.v4-question-tags{display:flex;gap:5px;flex-wrap:wrap}.v4-note-compact{margin-top:6px;padding-top:15px;border-top:1px solid var(--v4-line)}.v4-note-compact textarea{width:100%;min-height:82px;padding:10px;border-radius:7px;resize:vertical;font-size:11px}.v4-extract{margin-top:14px;border:1px solid var(--v4-line);border-radius:8px;background:var(--v4-surface);overflow:hidden}.v4-extract-tabs{display:flex;gap:0;overflow:auto;border-bottom:1px solid var(--v4-line)}.v4-extract-tabs button{min-width:max-content;padding:10px 9px;color:var(--v4-muted);font-size:10px}.v4-extract-tabs button.active{color:var(--v4-blue);box-shadow:inset 0 -2px 0 var(--v4-blue)}.v4-extract-content{min-height:120px;padding:13px;color:var(--v4-ink);font-size:11px;line-height:1.75}

.v4-extract-content>p{margin:7px 0 0}.v4-extract-content>small{display:block;margin-top:10px;color:var(--v4-muted)}
.v4-expression-list{display:grid;gap:9px;margin:10px 0 0;padding:0;list-style:none}.v4-expression-list li{position:relative;padding-left:15px;color:var(--v4-ink);font-weight:600;line-height:1.65}.v4-expression-list li:before{content:'•';position:absolute;left:0;color:var(--v4-blue)}.v4-expression-empty{margin:10px 0 0;color:var(--v4-muted)}
.v4-note-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.v4-note-head>b{font-size:12px}
.v4-essay-empty-panel{min-height:420px;display:grid;place-items:center}.v4-empty-actions{display:flex;justify-content:center;gap:8px;margin-top:16px}

/* Plans and statistics */
.v4-plan-grid{display:grid;grid-template-columns:1.25fr .72fr .9fr;gap:16px;margin-bottom:16px}.v4-week{grid-column:1/2}.v4-timeline{grid-column:2/3}.v4-allocation{grid-column:3/4}.v4-week-grid{display:grid;grid-template-columns:repeat(7,1fr)}.v4-day{min-height:122px;padding:11px 8px;border-right:1px solid var(--v4-line-soft);text-align:center}.v4-day:last-child{border-right:0}.v4-day b{display:block;font-size:12px}.v4-day small{color:var(--v4-muted);font-size:9px}.v4-day i{display:block;width:21px;height:21px;margin:13px auto 8px;border-radius:50%;background:var(--v4-surface-2);box-shadow:inset 0 0 0 calc(var(--day-pct,0)*10px) var(--v4-blue)}.v4-day em{font-size:9px;font-style:normal;color:var(--v4-muted)}
.v4-time-list{padding:15px}.v4-time{display:grid;grid-template-columns:38px 10px minmax(0,1fr);gap:9px;align-items:center;min-height:39px;color:var(--v4-muted);font-size:9px}.v4-time i{position:relative;width:8px;height:8px;border-radius:50%;background:var(--v4-line)}.v4-time i:after{content:"";position:absolute;left:3px;top:8px;width:1px;height:31px;background:var(--v4-line)}.v4-time:last-child i:after{display:none}.v4-time b{color:var(--v4-ink);font-size:10px}
.v4-allocation-list{padding:15px}.v4-alloc-row{display:grid;grid-template-columns:62px minmax(0,1fr) 46px;gap:9px;align-items:center;margin:12px 0;font-size:10px}.v4-alloc-bar{height:6px;border-radius:99px;background:var(--v4-line-soft);overflow:hidden}.v4-alloc-bar i{display:block;height:100%;background:var(--v4-blue)}
.v4-plan-bottom{display:grid;grid-template-columns:1fr 1.25fr;gap:16px}.v4-priority-list,.v4-milestone-list{min-height:215px}.v4-plan-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:62px;padding:9px 16px;border-bottom:1px solid var(--v4-line-soft)}.v4-plan-row:last-child{border-bottom:0}.v4-plan-row b{font-size:12px}.v4-plan-row small{display:block;margin-top:4px;color:var(--v4-muted);font-size:9px}.v4-plan-row.done b{text-decoration:line-through;color:var(--v4-muted)}
.v4-stats-grid{display:grid;grid-template-columns:1.3fr .8fr;gap:16px;margin-bottom:16px}.v4-chart{padding:18px}.v4-chart h3{margin:0 0 15px;font-size:14px}.v4-bars{display:flex;align-items:end;gap:12px;height:210px;padding:12px 4px 0;border-bottom:1px solid var(--v4-line)}.v4-bar-col{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:end;gap:7px;height:100%}.v4-bar-col i{display:block;width:65%;min-height:2px;border-radius:4px 4px 0 0;background:#aacced}.v4-bar-col small{color:var(--v4-muted);font-size:9px}.v4-module-stat{display:grid;grid-template-columns:68px minmax(0,1fr) 36px;gap:9px;align-items:center;margin:13px 0;font-size:10px}.v4-heatmap{display:grid;grid-template-columns:repeat(14,1fr);gap:5px}.v4-heatmap i{aspect-ratio:1;border-radius:3px;background:var(--v4-line-soft)}.v4-heatmap i.l1{background:#cce3fb}.v4-heatmap i.l2{background:#84baf0}.v4-heatmap i.l3{background:var(--v4-blue)}.v4-stat-foot{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.v4-donut-empty{display:grid;place-items:center;min-height:170px}.v4-donut{display:grid;place-items:center;width:112px;height:112px;border:14px solid var(--v4-line-soft);border-radius:50%;color:var(--v4-muted);font-size:10px}

/* Settings */
.v4-settings{max-width:860px}.v4-setting-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;min-height:78px;padding:14px 18px;border-bottom:1px solid var(--v4-line-soft)}.v4-setting-row:last-child{border-bottom:0}.v4-setting-row b{display:block;font-size:13px}.v4-setting-row p{margin:5px 0 0;color:var(--v4-muted);font-size:11px;line-height:1.6}.v4-theme-choice{display:flex;gap:4px;padding:3px;border-radius:8px;background:var(--v4-surface-2)}.v4-theme-choice button{min-height:31px;padding:0 12px;border-radius:6px;color:var(--v4-muted);font-size:11px}.v4-theme-choice button.active{background:var(--v4-surface);color:var(--v4-blue);box-shadow:0 1px 5px rgba(0,0,0,.1)}

@media(max-width:1280px){
  .v4-rule-shell{grid-template-columns:180px minmax(0,1fr) 290px}.v4-rule-map{padding:15px}.v4-point-row{grid-template-columns:minmax(90px,.7fr) 1fr}.v4-point-row em{display:none}
  .v4-essay-shell{grid-template-columns:245px minmax(380px,1fr) 320px}.v4-essay-article{padding:26px 28px}
  .v4-plan-grid{grid-template-columns:1.3fr .8fr}.v4-allocation{grid-column:1/-1}.v4-allocation-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 24px}
}
@media(max-width:1050px){
  .v4-kpis{grid-template-columns:repeat(2,1fr)}.v4-kpi:nth-child(2){border-right:0}.v4-kpi:nth-child(-n+2){border-bottom:1px solid var(--v4-line)}
  .v4-rule-shell{grid-template-columns:165px minmax(0,1fr)}.v4-rule-inspector{grid-column:1/-1;border-left:0;border-top:1px solid var(--v4-line)}
  .v4-essay-shell{grid-template-columns:230px minmax(0,1fr)}.v4-essay-side{grid-column:1/-1;border-left:0;border-top:1px solid var(--v4-line)}
  .v4-stats-grid,.v4-stat-foot{grid-template-columns:1fr}.v4-today-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.v4-head{display:block}.v4-actions{justify-content:flex-start;margin-top:14px}.v4-head h1{font-size:27px}
  .v4-kpis{grid-template-columns:1fr 1fr}.v4-kpi{padding:14px}.v4-kpi b{font-size:25px}
  .v4-rule-proof{align-items:flex-start;flex-direction:column}.v4-rule-shell{display:block}.v4-rule-modules{display:flex;gap:5px;overflow:auto;border-right:0;border-bottom:1px solid var(--v4-line)}.v4-rule-modules h3{display:none}.v4-rule-module{min-width:max-content}.v4-rule-map{padding:14px}.v4-rule-family{grid-template-columns:1fr;gap:8px}.v4-rule-family:before,.v4-family-node:after,.v4-point-row:before{display:none}.v4-point-row{grid-template-columns:1fr}.v4-point-row span{display:block}.v4-rule-inspector{padding:16px}
  .v4-wrong-controls{grid-template-columns:1fr 1fr}.v4-wrong-controls input{grid-column:1/-1}.v4-pagination{align-items:flex-start;flex-direction:column}
  .v4-word-shell{display:block}.v4-word-index{border-right:0;border-bottom:1px solid var(--v4-line)}.v4-word-list{max-height:280px}.v4-word-detail{padding:20px}.v4-memory{padding:15px}.v4-memory-card{padding:24px}.v4-memory-card h2{font-size:35px}
  .v4-essay-shell{display:block}.v4-essay-library{display:flex;gap:8px;overflow:auto;border-right:0;border-bottom:1px solid var(--v4-line)}.v4-essay-list-item{min-width:230px}.v4-essay-article{max-height:none;padding:23px 18px}.v4-essay-side{padding:18px}.v4-essay-tabs{overflow:auto}.v4-essay-refresh-note{display:none}
  .v4-plan-grid,.v4-plan-bottom{display:block}.v4-plan-grid>*{margin-bottom:12px}.v4-week-grid{overflow:auto}.v4-day{min-width:82px}.v4-plan-bottom>*{margin-bottom:12px}.v4-allocation-list{display:block}
  .v4-setting-row{grid-template-columns:1fr}.v4-theme-choice{justify-self:start}
}

/* Apple typography and theme completion */
:root{
  --apple-font-sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","PingFang SC","Hiragino Sans GB","Helvetica Neue","Microsoft YaHei",sans-serif;
  --apple-font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  color-scheme:light;
}
html,body,.app,.topbar,.contextbar,.layout,.main,.content,
button,input,textarea,select{
  font-family:var(--apple-font-sans);
}
html,body{
  font-size:15px;
  line-height:1.47;
  letter-spacing:0;
  text-rendering:optimizeLegibility;
}
button,input,textarea,select{letter-spacing:0}
h1,h2,h3,h4,h5,h6,p,small,strong,b,span,label,button,input,textarea,select{
  letter-spacing:0;
}
.topbar{font-size:15px}
.brand{font-size:26px;letter-spacing:0}
.global-nav button{font-size:15px;letter-spacing:0}
.search-trigger{font-size:14px}
.context-title{font-size:25px;letter-spacing:0}
.context-sub{font-size:13px}
.outline-btn,.primary-btn,.ghost-btn{font-size:13px}
.side-label{font-size:11px;letter-spacing:.04em}
.side-nav button{font-size:15px}
.profile small{font-size:12px}
.hero-line h1{font-size:34px;letter-spacing:0}
.hero-line p{font-size:14px}
.metric-label{font-size:13px}
.metric-value{font-size:38px;letter-spacing:0}
.metric-note{font-size:12px}
.panel-head h2,.panel-head h3{font-size:16px;letter-spacing:0}
.task-row{font-size:14px}
.task-count,.module-count,.module-pct{font-size:12px}
.section-title{font-size:29px;letter-spacing:0}
.subtle{font-size:13px}
.module-card h3{font-size:16px}
.module-card p{font-size:13px}
.rule-button{font-size:14px}
.rule-copy{font-size:14px}
.list-row-main strong{font-size:14px}
.list-row-main small{font-size:12px}
.tiny-btn{font-size:12px}
.essay-tabs button{font-size:14px}
.essay-article h1{font-size:32px;letter-spacing:0}
.essay-article p{font-size:15px}
.modal-head h3{font-size:19px}
.form-row label{font-size:13px}
.form-row input,.form-row textarea,.form-row select{font-size:14px}
.question{font-size:18px}
.apple-markdown{font-size:15px}
.apple-memory-term h2{letter-spacing:0}

/* The v4 surface uses a small, deliberate Apple-like type scale. */
.v4-page{font-size:14px;line-height:1.55}
.v4-head h1{font-size:32px;line-height:1.18;letter-spacing:0}
.v4-head p{font-size:14px;line-height:1.6}
.v4-btn{min-height:40px;padding-inline:15px;font-size:13px}
.v4-btn.small{min-height:32px;font-size:12px}
.v4-link{font-size:13px}
.v4-panel-head h2,.v4-panel-head h3{font-size:16px;letter-spacing:0}
.v4-panel-head small{font-size:12px}
.v4-kpi{min-height:106px;padding:18px 20px}
.v4-kpi span{font-size:13px}
.v4-kpi b{font-size:32px;letter-spacing:0}
.v4-kpi small{font-size:12px}
.v4-empty strong{font-size:16px}
.v4-empty p{font-size:13px}
.v4-chip{font-size:12px}
.v4-segmented button{font-size:12px}
.v4-task-row b{font-size:14px}
.v4-task-row small{font-size:12px}
.v4-rule-proof{font-size:12px}
.v4-rule-modules h3{font-size:14px}
.v4-rule-module{font-size:13px}
.v4-rule-path{font-size:12px}
.v4-family-node{font-size:13px}
.v4-point-row b{font-size:13px}
.v4-point-row span,.v4-point-row em{font-size:12px}
.v4-rule-inspector h2{font-size:21px}
.v4-rule-inspector>p{font-size:12px}
.v4-rule-detail h4{font-size:12px}
.v4-rule-detail p{font-size:13px}
.v4-evidence b{font-size:12px}
.v4-evidence p{font-size:12px}
.v4-wrong-controls input,.v4-wrong-controls select{font-size:13px}
.v4-wrong-row{font-size:13px}
.v4-wrong-row.head{font-size:12px}
.v4-wrong-title b{font-size:14px}
.v4-wrong-title p{font-size:12px}
.v4-pagination{font-size:12px}
.v4-word-tools input{font-size:13px}
.v4-word-item b{font-size:14px}
.v4-word-item small{font-size:12px}
.v4-word-title h2{font-size:32px;letter-spacing:0}
.v4-word-title p{font-size:12px}
.v4-word-section h3{font-size:13px}
.v4-word-section p,.v4-word-section li{font-size:14px}
.v4-memory-card h2{font-size:44px;letter-spacing:0}
.v4-memory-card>p{font-size:14px}
.v4-essay-tabs button{font-size:13px}
.v4-essay-refresh-note{font-size:12px}
.v4-essay-list-item b{font-size:13px}
.v4-essay-list-item small{font-size:12px}
.v4-essay-article h1{font-size:32px;letter-spacing:0}
.v4-essay-meta{font-size:12px}
.v4-essay-body{font-size:15px;line-height:1.85}
.v4-essay-body h1,.v4-essay-body h2{font-size:18px}
.v4-trace-item b{font-size:12px}
.v4-trace-item p{font-size:12px}
.v4-note-compact textarea{font-size:13px}
.v4-extract-tabs button{font-size:12px}
.v4-extract-content{font-size:13px}
.v4-day b{font-size:13px}
.v4-day small,.v4-day em{font-size:11px}
.v4-time{font-size:11px}
.v4-time b{font-size:12px}
.v4-alloc-row{font-size:12px}
.v4-plan-row b{font-size:13px}
.v4-plan-row small{font-size:11px}
.v4-chart h3{font-size:16px}
.v4-module-stat{font-size:12px}
.v4-bar-col small{font-size:11px}
.v4-setting-row b{font-size:14px}
.v4-setting-row p{font-size:12px}
.v4-theme-choice button{font-size:12px}

/* Dark mode must cover the full shell, including the max-width gutters. */
[data-theme="dark"]{
  color-scheme:dark;
  --surface:#17181b;
  --surface-2:#202125;
  --surface-3:#182538;
  --line-soft:#2a2b2f;
}
[data-theme="dark"] html,
[data-theme="dark"] body,
[data-theme="dark"] .app,
[data-theme="dark"] .layout,
[data-theme="dark"] .main,
[data-theme="dark"] .content,
[data-theme="dark"] .view{
  background:var(--bg)!important;
  color:var(--ink);
}
[data-theme="dark"] .contextbar,
[data-theme="dark"] .sidebar,
[data-theme="dark"] .panel,
[data-theme="dark"] .module-card,
[data-theme="dark"] .user-card,
[data-theme="dark"] .apple-memory-rail,
[data-theme="dark"] .apple-memory-card,
[data-theme="dark"] .apple-memory-queue{
  background:var(--surface)!important;
  color:var(--ink);
  border-color:var(--line);
}
[data-theme="dark"] .context-title,
[data-theme="dark"] .panel-head h2,
[data-theme="dark"] .panel-head h3,
[data-theme="dark"] .task-row,
[data-theme="dark"] .module-name,
[data-theme="dark"] .module-pct,
[data-theme="dark"] .section-title,
[data-theme="dark"] .rule-button,
[data-theme="dark"] .list-row-main strong,
[data-theme="dark"] .essay-article h1,
[data-theme="dark"] .apple-markdown strong{
  color:var(--ink)!important;
}
[data-theme="dark"] .side-label,
[data-theme="dark"] .side-nav button,
[data-theme="dark"] .context-sub,
[data-theme="dark"] .metric-label,
[data-theme="dark"] .metric-note,
[data-theme="dark"] .task-count,
[data-theme="dark"] .module-count,
[data-theme="dark"] .module-card p,
[data-theme="dark"] .list-row-main small,
[data-theme="dark"] .subtle,
[data-theme="dark"] .essay-meta,
[data-theme="dark"] .essay-article p,
[data-theme="dark"] .apple-markdown,
[data-theme="dark"] .apple-memory-rail p,
[data-theme="dark"] .apple-memory-card-head,
[data-theme="dark"] .apple-memory-term p{
  color:var(--muted)!important;
}
[data-theme="dark"] .side-nav button:hover{background:var(--soft)}
[data-theme="dark"] .side-nav button.active{background:#182538;color:var(--blue)}
[data-theme="dark"] .side-nav button.active .ico{color:var(--blue)}
[data-theme="dark"] .outline-btn,
[data-theme="dark"] .ghost-btn,
[data-theme="dark"] .tiny-btn,
[data-theme="dark"] .option,
[data-theme="dark"] .segmented,
[data-theme="dark"] .segmented button.active{
  background:var(--surface-2)!important;
  color:var(--ink)!important;
  border-color:var(--line)!important;
}
[data-theme="dark"] .outline-btn{color:var(--blue)!important;border-color:var(--blue)!important}
[data-theme="dark"] .primary-btn{background:var(--blue)!important;color:#fff!important}
[data-theme="dark"] .tiny-btn.blue,
[data-theme="dark"] .task-tag{background:#182538!important;color:var(--blue)!important;border-color:#2e5279!important}
[data-theme="dark"] .metric-strip,
[data-theme="dark"] .metric,
[data-theme="dark"] .task-row,
[data-theme="dark"] .module-row,
[data-theme="dark"] .timeline-footer,
[data-theme="dark"] .rule-item,
[data-theme="dark"] .list-row{border-color:var(--line-soft)!important}
[data-theme="dark"] .bar,
[data-theme="dark"] .apple-memory-progress{background:#2a2b2f}
[data-theme="dark"] .apple-knowledge-images img,
[data-theme="dark"] .apple-wrong-image img,
[data-theme="dark"] .apple-option-image,
[data-theme="dark"] .apple-wrong-thumb{background:var(--surface-2)}
[data-theme="dark"] .apple-memory-answer,
[data-theme="dark"] .apple-memory-stats div,
[data-theme="dark"] .apple-memory-mode-tabs,
[data-theme="dark"] .apple-memory-queue-note,
[data-theme="dark"] .essay-refresh-note{background:var(--surface-2);color:var(--muted)}
[data-theme="dark"] .apple-memory-rating button:nth-child(1){background:#321f20;color:#ff8d88}
[data-theme="dark"] .apple-memory-rating button:nth-child(2){background:#332b1e;color:#ffc56e}
[data-theme="dark"] .apple-memory-rating button:nth-child(3){background:#193127;color:#6bd59b}
[data-theme="dark"] .v4-bar-col i{background:#4f83b3}
[data-theme="dark"] .v4-heatmap i.l1{background:#284a6b}
[data-theme="dark"] .v4-heatmap i.l2{background:#3d78b1}
[data-theme="dark"] .v4-wrong-thumb{background:var(--surface-2)}
[data-theme="dark"] .modal-backdrop{background:rgba(0,0,0,.62)}
[data-theme="dark"] .focus-fullscreen{background:#07090d}

/* Legacy parity screens use the same surface tokens as the v4 views. */
[data-theme="dark"] .apple-board-tab,
[data-theme="dark"] .apple-module-rail,
[data-theme="dark"] .apple-knowledge-drawer,
[data-theme="dark"] .apple-word-index,
[data-theme="dark"] .apple-word-detail-card,
[data-theme="dark"] .apple-memory-rail,
[data-theme="dark"] .apple-memory-card,
[data-theme="dark"] .apple-memory-queue,
[data-theme="dark"] .apple-rail-actions button,
[data-theme="dark"] .apple-drawer-search,
[data-theme="dark"] .apple-drawer-pages button,
[data-theme="dark"] .apple-drawer-size,
[data-theme="dark"] .apple-word-filter input,
[data-theme="dark"] .apple-memory-nav button,
[data-theme="dark"] .apple-mock-session .panel{
  background:var(--surface)!important;
  color:var(--ink)!important;
  border-color:var(--line)!important;
}
[data-theme="dark"] .apple-board-tab:hover,
[data-theme="dark"] .apple-board-tab.active,
[data-theme="dark"] .apple-word-row:hover,
[data-theme="dark"] .apple-word-row.active,
[data-theme="dark"] .apple-drawer-row:hover{
  background:#182538!important;
  border-color:#3e6d9d!important;
}
[data-theme="dark"] .apple-board-tab-name,
[data-theme="dark"] .apple-drawer-title,
[data-theme="dark"] .apple-word-row b,
[data-theme="dark"] .apple-word-title h2,
[data-theme="dark"] .apple-rail-head h2,
[data-theme="dark"] .apple-drawer-head h2,
[data-theme="dark"] .apple-memory-rail h2,
[data-theme="dark"] .apple-memory-queue h3,
[data-theme="dark"] .apple-knowledge-detail,
[data-theme="dark"] .apple-markdown h1,
[data-theme="dark"] .apple-markdown h2,
[data-theme="dark"] .apple-markdown h3{
  color:var(--ink)!important;
}
[data-theme="dark"] .apple-board-tab-foot,
[data-theme="dark"] .apple-rail-head p,
[data-theme="dark"] .apple-rail-section p,
[data-theme="dark"] .apple-drawer-row,
[data-theme="dark"] .apple-drawer-head p,
[data-theme="dark"] .apple-drawer-foot,
[data-theme="dark"] .apple-word-row small,
[data-theme="dark"] .apple-word-title p,
[data-theme="dark"] .apple-word-section p,
[data-theme="dark"] .apple-word-section li,
[data-theme="dark"] .apple-word-pager,
[data-theme="dark"] .apple-memory-queue small,
[data-theme="dark"] .apple-essay-paper pre{
  color:var(--muted)!important;
}
[data-theme="dark"] .apple-rail-stat,
[data-theme="dark"] .apple-memory-stats div,
[data-theme="dark"] .apple-word-row em,
[data-theme="dark"] .apple-drawer-chip,
[data-theme="dark"] .apple-essay-badge{
  background:var(--surface-2)!important;
  color:var(--muted)!important;
  border-color:var(--line)!important;
}
[data-theme="dark"] .apple-board-filter,
[data-theme="dark"] .apple-memory-mode-tabs,
[data-theme="dark"] .apple-memory-answer,
[data-theme="dark"] .apple-memory-queue-note{background:var(--surface-2)!important;color:var(--muted)!important}
[data-theme="dark"] .apple-board-filter button.active,
[data-theme="dark"] .apple-memory-mode-tabs button.active{background:var(--surface)!important;color:var(--blue)!important}

@media(prefers-color-scheme:dark){
  html:not([data-theme]),html:not([data-theme]) body,html:not([data-theme]) .app,
  html:not([data-theme]) .layout,html:not([data-theme]) .main,html:not([data-theme]) .content,
  html:not([data-theme]) .view{background:#101114!important;color:#f5f5f7}
}

@media(max-width:760px){
  .brand{font-size:21px}
  .context-title{font-size:22px}
  .hero-line h1{font-size:30px}
  .v4-head h1{font-size:27px}
  .v4-kpi{padding:15px}
  .v4-kpi span{font-size:12px}
  .v4-kpi b{font-size:27px}
  .v4-essay-article h1{font-size:27px}
  .v4-memory-card h2{font-size:38px}
}

/* Rules tree refinement: branch-first navigation and clickable evidence. */
.v4-rule-proof{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,minmax(72px,auto)) auto;align-items:center;gap:14px;margin:-8px 0 18px;padding:11px 15px;border:1px solid color-mix(in srgb,var(--v4-blue) 32%,var(--v4-line));border-left:3px solid var(--v4-blue);border-radius:10px;background:var(--v4-surface-3);font-size:11px;color:var(--v4-muted)}
.v4-rule-proof-title{display:flex;align-items:center;gap:9px;min-width:0}.v4-rule-proof-title>div{min-width:0}.v4-rule-proof-title b{display:block;color:var(--v4-ink);font-size:11px}.v4-rule-proof-title small{display:block;margin-top:3px;color:var(--v4-muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v4-proof-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--v4-green);box-shadow:0 0 0 4px color-mix(in srgb,var(--v4-green) 14%,transparent)}.v4-proof-stat{padding-left:14px;border-left:1px solid color-mix(in srgb,var(--v4-blue) 18%,var(--v4-line));text-align:right}.v4-proof-stat b{display:block;color:var(--v4-ink);font-size:14px;line-height:1.1}.v4-proof-stat small{display:block;margin-top:3px;font-size:9px}.v4-rule-proof code{max-width:90px;overflow:hidden;color:var(--v4-muted);font-family:var(--apple-font-mono);font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.v4-rule-shell{grid-template-columns:196px minmax(0,1fr) 336px;min-height:700px;overflow:hidden}.v4-rule-modules{padding:18px 12px;background:var(--v4-surface-2)}.v4-rule-modules h3{margin:0 9px 4px;font-size:13px}.v4-rule-modules>p{margin:0 9px 14px;color:var(--v4-muted);font-size:10px}.v4-rule-module{min-height:40px;padding:0 10px;border-left:3px solid transparent;border-radius:8px}.v4-rule-module:hover{background:color-mix(in srgb,var(--v4-blue) 8%,var(--v4-surface-2))}.v4-rule-module.active{border-left-color:var(--v4-blue);background:var(--v4-surface-3);color:var(--v4-blue)}
.v4-rule-map{padding:20px 22px;background:var(--v4-surface)}.v4-rule-path{margin-bottom:14px;font-size:10px}.v4-family-tabs{display:flex;gap:5px;overflow:auto;padding:4px;margin-bottom:16px;border:1px solid var(--v4-line);border-radius:10px;background:var(--v4-surface-2)}.v4-family-tabs button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px;padding:0 11px;border-radius:7px;color:var(--v4-muted);font-size:11px;white-space:nowrap}.v4-family-tabs button:hover{color:var(--v4-ink)}.v4-family-tabs button.active{background:var(--v4-surface);color:var(--v4-blue);box-shadow:0 1px 5px rgba(0,0,0,.09);font-weight:600}.v4-family-tabs small{font-size:9px;opacity:.72}.v4-rule-focus{border:1px solid var(--v4-line);border-radius:10px;overflow:hidden;background:var(--v4-surface)}.v4-rule-focus-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding:16px 17px 14px;border-bottom:1px solid var(--v4-line)}.v4-rule-focus-head span{display:block;color:var(--v4-muted);font-size:10px}.v4-rule-focus-head h2{margin:4px 0 0;font-size:18px;letter-spacing:-.02em}.v4-rule-focus-head p{margin:0;color:var(--v4-muted);font-size:10px;text-align:right}.v4-point-columns{display:grid;grid-template-columns:28px minmax(124px,.8fr) minmax(150px,1.1fr) minmax(150px,1.1fr) 20px;gap:12px;padding:10px 13px;color:var(--v4-muted);font-size:9px;background:var(--v4-surface-2);border-bottom:1px solid var(--v4-line-soft)}.v4-point-list{gap:0}.v4-point-row{grid-template-columns:28px minmax(124px,.8fr) minmax(150px,1.1fr) minmax(150px,1.1fr) 20px;gap:12px;align-items:start;min-height:76px;padding:14px 13px;border:0;border-bottom:1px solid var(--v4-line-soft);border-radius:0;background:var(--v4-surface)}.v4-point-row:last-child{border-bottom:0}.v4-point-row:before{display:none}.v4-point-row:hover,.v4-point-row.active{border-color:var(--v4-line-soft);background:var(--v4-surface-3)}.v4-point-index{color:var(--v4-muted);font-family:var(--apple-font-mono);font-size:10px}.v4-point-row b{font-size:12px;line-height:1.55}.v4-point-row span:not(.v4-point-index),.v4-point-row em{font-size:10px;line-height:1.6}.v4-point-row strong{display:block;margin-bottom:3px;color:var(--v4-muted);font-size:9px;font-weight:500}.v4-point-row em strong{color:var(--v4-blue)}.v4-point-row>i,.v4-evidence-open i{display:grid;place-items:center;color:var(--v4-muted);font-style:normal}.v4-point-row>i svg,.v4-evidence-open i svg{width:14px;height:14px;stroke:currentColor}.v4-point-row:hover>i,.v4-point-row.active>i{color:var(--v4-blue)}
.v4-rule-inspector{padding:22px 20px;background:var(--v4-surface-2)}.v4-rule-inspector-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--v4-muted);font-family:var(--apple-font-mono);font-size:9px}.v4-rule-inspector h2{margin:12px 0 6px;font-size:20px;line-height:1.3}.v4-rule-inspector>p{margin:0 0 15px}.v4-rule-detail-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.v4-rule-detail-title h4{margin:0}.v4-rule-detail-title span{color:var(--v4-muted);font-size:9px}.v4-evidence-list{gap:7px;margin-top:9px}.v4-evidence{display:block;width:100%;padding:11px 11px 10px;border:1px solid var(--v4-line);border-radius:8px;background:var(--v4-surface);color:var(--v4-ink);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.v4-evidence:hover,.v4-evidence:focus-visible{border-color:var(--v4-blue);background:var(--v4-surface-3);outline:0;transform:translateY(-1px)}.v4-evidence-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.v4-evidence-meta b{font-size:10px;color:var(--v4-blue)}.v4-evidence-meta small{color:var(--v4-muted);font-size:9px}.v4-evidence>strong{display:block;margin-top:7px;overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.v4-evidence p{display:-webkit-box;overflow:hidden;margin:5px 0 7px;font-size:10px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.v4-evidence-open{display:flex;align-items:center;justify-content:space-between;color:var(--v4-blue);font-size:9px}.v4-evidence-open i svg{width:12px;height:12px}.v4-inspector-actions{margin-top:18px}.v4-inspector-actions small{color:var(--v4-muted);line-height:1.6}
.v4-evidence-modal-kicker{margin-bottom:6px;color:var(--v4-blue);font-size:10px}.v4-evidence-modal{padding:2px 0}.v4-evidence-question{padding:15px;border:1px solid var(--v4-line);border-radius:9px;background:var(--v4-surface-2)}.v4-evidence-question>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.v4-evidence-question>div b{font-size:13px}.v4-evidence-question>div span{max-width:52%;overflow:hidden;color:var(--v4-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.v4-evidence-question blockquote{margin:13px 0 0;padding:13px 14px;border-left:3px solid var(--v4-blue);background:var(--v4-surface);color:var(--v4-ink);font-size:13px;line-height:1.85}.v4-evidence-context{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}.v4-evidence-context>div{padding:11px;border:1px solid var(--v4-line-soft);border-radius:8px}.v4-evidence-context span,.v4-evidence-path>span{display:block;color:var(--v4-blue);font-size:10px;font-weight:600}.v4-evidence-context p{margin:6px 0 0;color:var(--v4-ink);font-size:11px;line-height:1.65}.v4-evidence-path{margin-top:12px;padding-top:12px;border-top:1px solid var(--v4-line)}.v4-evidence-path code{display:block;margin-top:6px;padding:8px 9px;overflow:auto;border-radius:6px;background:var(--v4-surface-2);color:var(--v4-muted);font-family:var(--apple-font-mono);font-size:9px;line-height:1.5;white-space:pre-wrap;word-break:break-all}
@media(max-width:1280px){.v4-rule-shell{grid-template-columns:180px minmax(0,1fr) 300px}.v4-rule-map{padding:17px}.v4-point-row,.v4-point-columns{grid-template-columns:25px minmax(92px,.8fr) minmax(110px,1fr) minmax(110px,1fr) 20px}.v4-point-row em{display:block}}
@media(max-width:1050px){.v4-rule-proof{grid-template-columns:minmax(0,1fr) repeat(3,auto);}.v4-rule-proof code{display:none}.v4-rule-shell{grid-template-columns:165px minmax(0,1fr)}.v4-rule-inspector{grid-column:1/-1;border-left:0;border-top:1px solid var(--v4-line)}}
@media(max-width:760px){.v4-rule-proof{display:flex;flex-direction:row;align-items:flex-start;flex-wrap:wrap;gap:10px}.v4-rule-proof-title{width:100%}.v4-proof-stat{flex:1;padding-left:0;border-left:0;text-align:left}.v4-rule-shell{display:block}.v4-rule-modules{display:flex;gap:5px;overflow:auto;border-right:0;border-bottom:1px solid var(--v4-line);padding:10px}.v4-rule-modules h3,.v4-rule-modules>p{display:none}.v4-rule-module{min-width:max-content}.v4-rule-map{padding:13px}.v4-rule-path{overflow:auto;white-space:nowrap}.v4-family-tabs{margin-bottom:12px}.v4-rule-focus-head{display:block}.v4-rule-focus-head p{margin-top:7px;text-align:left}.v4-point-columns{display:none}.v4-point-row{grid-template-columns:25px minmax(0,1fr) 18px;gap:9px;min-height:0;padding:13px}.v4-point-row>b{grid-column:2}.v4-point-row>span:not(.v4-point-index),.v4-point-row>em{grid-column:2}.v4-point-row>i{grid-column:3;grid-row:1}.v4-rule-inspector{padding:17px}.v4-evidence-context{grid-template-columns:1fr}.v4-evidence-question>div{display:block}.v4-evidence-question>div span{display:block;max-width:100%;margin-top:5px}}

/* Landing page and readable evidence typography. */
.v4-landing{max-width:1120px;margin:0 auto;padding-top:4px}
.v4-landing-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:30px;align-items:stretch;padding:34px 36px;border:1px solid var(--v4-line);border-radius:18px;background:var(--v4-surface-2)}
.v4-landing-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}
.v4-landing-kicker{color:var(--v4-blue);font-size:12px;font-weight:650;letter-spacing:.04em}
.v4-landing-copy h1{max-width:650px;margin:13px 0 10px;color:var(--v4-ink);font-size:38px;line-height:1.18;letter-spacing:-.045em}
.v4-landing-copy p{max-width:580px;margin:0;color:var(--v4-muted);font-size:15px;line-height:1.75}
.v4-landing-actions{display:flex;align-items:center;gap:10px;margin-top:24px;flex-wrap:wrap}
.v4-landing-actions .v4-btn{min-height:42px;padding:0 17px}
.v4-btn>svg{display:block;flex:0 0 16px;width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.v4-landing-snapshot{display:flex;flex-direction:column;justify-content:center;padding-left:30px;border-left:1px solid var(--v4-line)}
.v4-landing-snapshot-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:15px;border-bottom:1px solid var(--v4-line)}
.v4-landing-snapshot-head b{font-size:15px;color:var(--v4-ink)}
.v4-landing-snapshot-head span{font-size:10px;color:var(--v4-muted)}
.v4-landing-snapshot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.v4-landing-snapshot-grid>div{padding:18px 10px 4px 0}
.v4-landing-snapshot-grid>div:nth-child(odd){border-right:1px solid var(--v4-line)}
.v4-landing-snapshot-grid>div:nth-child(n+3){padding-top:16px;border-top:1px solid var(--v4-line)}
.v4-landing-snapshot-grid>div:nth-child(even){padding-left:18px}
.v4-landing-snapshot-grid b{display:block;color:var(--v4-ink);font-size:28px;line-height:1.05;letter-spacing:-.04em}
.v4-landing-snapshot-grid small{display:block;margin-top:6px;color:var(--v4-muted);font-size:11px}
.v4-landing-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:30px 2px 13px}
.v4-landing-section-head h2{margin:0;color:var(--v4-ink);font-size:21px;letter-spacing:-.025em}
.v4-landing-section-head p{margin:5px 0 0;color:var(--v4-muted);font-size:12px}
.v4-landing-section-head>span{color:var(--v4-muted);font-size:11px;text-align:right}
.v4-launch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.v4-launch-card{display:grid;grid-template-columns:32px minmax(0,1fr) auto 18px;align-items:center;gap:12px;min-width:0;min-height:78px;padding:14px 16px;border:1px solid var(--v4-line);border-radius:12px;background:var(--v4-surface);color:var(--v4-ink);text-align:left;transition:transform .2s var(--ease),border-color .2s var(--ease),background .2s var(--ease),box-shadow .2s var(--ease)}
.v4-launch-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--v4-blue) 45%,var(--v4-line));background:var(--v4-surface-3);box-shadow:0 10px 26px rgba(0,102,204,.08)}
.v4-launch-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--v4-surface-3);color:var(--v4-blue)}
.v4-launch-icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.v4-launch-copy{min-width:0}.v4-launch-copy b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.v4-launch-copy small{display:block;margin-top:5px;overflow:hidden;color:var(--v4-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.v4-launch-meta{max-width:110px;overflow:hidden;color:var(--v4-muted);font-size:10px;text-align:right;text-overflow:ellipsis;white-space:nowrap}.v4-launch-arrow{display:grid;place-items:center;color:var(--v4-blue)}.v4-launch-arrow svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8}
.v4-landing-note{display:flex;align-items:center;gap:9px;margin:17px 2px 2px;color:var(--v4-muted);font-size:11px}.v4-landing-note .v4-proof-dot{width:7px;height:7px}
.v4-landing-about{margin-top:55px;padding-top:29px;border-top:1px solid var(--v4-line)}
.v4-landing-about-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin:0 2px 25px}.v4-landing-about-head h2{margin:10px 0 0;color:var(--v4-ink);font-size:26px;letter-spacing:-.04em}.v4-landing-about-head>p{max-width:330px;margin:0;color:var(--v4-muted);font-size:12px;line-height:1.7;text-align:right}
.v4-about-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--v4-line);border-bottom:1px solid var(--v4-line)}.v4-about-item{display:block;min-width:0;padding:21px 25px 22px 0;border:0;border-right:1px solid var(--v4-line);background:transparent;color:var(--v4-ink);text-align:left;cursor:pointer}.v4-about-item:nth-child(n+2){padding-left:25px}.v4-about-item:last-child{border-right:0}.v4-about-item:hover .v4-about-link{color:var(--v4-blue);transform:translateX(2px)}.v4-about-index{display:block;color:var(--v4-blue);font-family:var(--apple-font-mono);font-size:10px;letter-spacing:.08em}.v4-about-item>strong{display:block;margin-top:17px;font-size:19px;letter-spacing:-.035em}.v4-about-item>b{display:block;margin-top:8px;color:var(--v4-ink);font-size:12px;font-weight:600}.v4-about-item>p{min-height:44px;margin:9px 0 17px;color:var(--v4-muted);font-size:11px;line-height:1.7}.v4-about-link{display:inline-flex;align-items:center;gap:6px;color:var(--v4-muted);font-size:10px;transition:color .2s,transform .2s}.v4-about-link svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.8}.v4-start-band{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:38px;margin-top:37px;padding:24px 0 21px;border-bottom:1px solid var(--v4-line)}.v4-start-band h3{margin:10px 0 7px;font-size:18px;letter-spacing:-.03em}.v4-start-band>div>p{max-width:310px;margin:0;color:var(--v4-muted);font-size:11px;line-height:1.7}.v4-start-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid var(--v4-line)}.v4-start-step{padding:0 18px;border-right:1px solid var(--v4-line)}.v4-start-step:last-child{border-right:0}.v4-start-step>span{display:block;color:var(--v4-blue);font-family:var(--apple-font-mono);font-size:10px}.v4-start-step>strong{display:block;margin-top:14px;font-size:12px}.v4-start-step>p{margin:7px 0 0;color:var(--v4-muted);font-size:10px;line-height:1.65}
.v4-point-row b{font-size:13px}.v4-point-row span:not(.v4-point-index),.v4-point-row em{font-size:12px;line-height:1.65}.v4-point-row span strong,.v4-point-row em strong{font-size:10px}.v4-point-row i svg{width:16px;height:16px}
.v4-rule-detail p{font-size:13px;line-height:1.78}.v4-rule-inspector>p{font-size:12px;line-height:1.6}.v4-evidence-meta b{font-size:11px}.v4-evidence-meta small{font-size:10px}.v4-evidence>strong{font-size:12px}.v4-evidence p{font-size:12px;line-height:1.68}.v4-evidence-open{font-size:11px}.v4-evidence-question blockquote{font-size:13px;line-height:1.85;white-space:pre-wrap}
.v4-evidence-modal-kicker{font-size:11px}.v4-evidence-modal .subtle{font-size:12px}.v4-evidence-path code{font-size:11px;line-height:1.55;overflow-wrap:anywhere}
[data-theme="dark"] .v4-landing-hero,[data-theme="dark"] .v4-launch-card{background:var(--v4-surface)}
[data-theme="dark"] .v4-launch-card:hover{background:var(--v4-surface-3);box-shadow:0 10px 28px rgba(0,0,0,.24)}
[data-theme="dark"] .v4-launch-icon{background:color-mix(in srgb,var(--v4-blue) 18%,var(--v4-surface-2))}
@media(max-width:900px){.v4-landing-hero{grid-template-columns:1fr;gap:22px;padding:27px 25px}.v4-landing-snapshot{padding:20px 0 0;border-top:1px solid var(--v4-line);border-left:0}.v4-launch-grid{grid-template-columns:1fr}.v4-start-band{grid-template-columns:1fr;gap:25px}.v4-start-steps{border-left:0;border-top:1px solid var(--v4-line);padding-top:20px}}
@media(max-width:760px){.v4-landing{padding-top:0}.v4-landing-hero{padding:24px 20px;border-radius:14px}.v4-landing-copy h1{font-size:30px}.v4-landing-copy p{font-size:13px}.v4-landing-actions{margin-top:19px}.v4-landing-actions .v4-btn{width:100%}.v4-landing-about{margin-top:40px;padding-top:24px}.v4-landing-about-head{display:block;margin-bottom:20px}.v4-landing-about-head h2{font-size:22px}.v4-landing-about-head>p{margin-top:10px;text-align:left}.v4-about-grid{display:block}.v4-about-item,.v4-about-item:nth-child(n+2){padding:18px 0;border-right:0;border-bottom:1px solid var(--v4-line)}.v4-about-item:last-child{border-bottom:0}.v4-about-item>strong{margin-top:12px}.v4-about-item>p{min-height:0;margin-bottom:12px}.v4-start-band{margin-top:26px;padding-top:21px}.v4-start-steps{display:block;padding-top:16px}.v4-start-step{display:grid;grid-template-columns:28px 1fr;column-gap:10px;padding:12px 0;border-right:0;border-bottom:1px solid var(--v4-line)}.v4-start-step:last-child{border-bottom:0}.v4-start-step>span{grid-row:1 / span 2}.v4-start-step>strong{margin-top:0}.v4-start-step>p{margin-top:4px}.v4-landing-section-head{display:block;margin-top:24px}.v4-landing-section-head>span{display:block;margin-top:7px;text-align:left}.v4-launch-card{grid-template-columns:30px minmax(0,1fr) auto 16px;min-height:70px;padding:12px}.v4-launch-icon{width:30px;height:30px}.v4-launch-copy b{font-size:13px}.v4-launch-meta{max-width:74px}.v4-landing-note{line-height:1.55}}

/* Keep the essay heading and workspace off the viewport edge on wide layouts. */
body[data-view="essay"] .v4-page{padding:28px 32px 70px}
@media(max-width:760px){body[data-view="essay"] .v4-page{padding:20px 16px 84px}}

/* Immersive, scrollable product home. The workbench chrome returns after entry. */
body[data-view="home"]{background:#fff}
body[data-view="home"] .topbar{position:relative;z-index:20;height:72px;background:#000;border-bottom:1px solid rgba(255,255,255,.12)}
body[data-view="home"] .topbar .global-nav,
body[data-view="home"] .topbar .top-actions,
body[data-view="home"] .contextbar,
body[data-view="home"] .sidebar,
body[data-view="home"] .mobile-nav{display:none!important}
body[data-view="home"] .layout{display:block;min-height:0}
body[data-view="home"] .main{background:#fff}
body[data-view="home"] .content{max-width:none;margin:0;padding:0}
body[data-view="home"] .brand{font-size:22px;letter-spacing:0}
body[data-view="home"] .brand-mark{border-width:1px}
body[data-view="home"] .view-enter{transform:none}
.v5-home{overflow:hidden;background:#fff;color:#1d1d1f;letter-spacing:0}
.v5-home *{letter-spacing:0}
.v5-hero{position:relative;min-height:calc(100svh - 120px);overflow:hidden;background:#000;color:#f5f5f7;isolation:isolate}
.v5-hero-photo{position:absolute;z-index:-2;top:0;right:0;width:64%;height:100%;object-fit:cover;object-position:center 54%;opacity:.88;filter:saturate(.82) contrast(1.04);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.72) 23%,#000 46%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.72) 23%,#000 46%);animation:v5-photo-in 1.6s cubic-bezier(.16,1,.3,1) both}
.v5-hero:after{content:"";position:absolute;z-index:-1;inset:auto 0 0;height:34%;background:linear-gradient(0deg,#000,transparent);pointer-events:none}
.v5-hero-content{position:relative;z-index:2;width:min(1200px,calc(100% - 96px));margin:0 auto;padding:clamp(70px,10vh,124px) 0 145px;animation:v5-copy-in .9s .1s cubic-bezier(.16,1,.3,1) both}
.v5-hero-content h1{margin:0;color:#fff;font-size:38px;font-weight:650;line-height:1.15}
.v5-hero-statement{max-width:660px;margin:25px 0 0;color:#fff;font-size:70px;font-weight:650;line-height:1.08}
.v5-hero-copy{max-width:520px;margin:25px 0 0;color:#a1a1a6;font-size:17px;line-height:1.75}
.v5-hero-actions{display:flex;align-items:center;gap:11px;margin-top:31px;flex-wrap:wrap}
.v5-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 20px;border:1px solid rgba(255,255,255,.34);border-radius:24px;color:#fff;font-size:14px;font-weight:600;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.v5-button svg,.v5-text-link svg,.v5-scroll-cue svg,.v5-outcome i svg,.v5-module-arrow svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.v5-button.primary{border-color:#0077ed;background:#0077ed}.v5-button.primary:hover{background:#0071e3;transform:translateY(-1px)}
.v5-button.quiet{background:rgba(0,0,0,.22)}.v5-button.quiet:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.v5-hero-proof{position:absolute;z-index:2;left:50%;bottom:28px;display:flex;width:min(1200px,calc(100% - 96px));transform:translateX(-50%);border-top:1px solid rgba(255,255,255,.22);animation:v5-proof-in .9s .45s cubic-bezier(.16,1,.3,1) both}
.v5-hero-proof span{flex:1;padding:17px 22px 0 0;color:#8e8e93;font-size:11px}.v5-hero-proof b{margin-right:5px;color:#f5f5f7;font-size:16px;font-weight:600}
.v5-scroll-cue{position:absolute;z-index:3;right:max(48px,calc((100% - 1200px)/2));bottom:28px;display:flex;align-items:center;gap:8px;color:#a1a1a6;font-size:11px}.v5-scroll-cue svg{transform:rotate(90deg)}
@keyframes v5-photo-in{from{opacity:0;transform:scale(1.06)}to{opacity:.88;transform:scale(1)}}
@keyframes v5-copy-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes v5-proof-in{from{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translateX(-50%)}}

.v5-section{padding:120px 48px}
.v5-section-intro,.v5-outcomes,.v5-section-heading,.v5-module-list,.v5-proof-section{width:min(1200px,100%);margin-left:auto;margin-right:auto}
.v5-section-intro{display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:end}
.v5-section-intro>p,.v5-section-heading>div>p,.v5-loop-copy>p,.v5-proof-copy>p{grid-column:1/-1;margin:0 0 18px;color:#0066cc;font-size:13px;font-weight:650}
.v5-section-intro h2,.v5-section-heading h2,.v5-loop-copy h2,.v5-proof-copy h2{margin:0;color:#1d1d1f;font-size:62px;font-weight:650;line-height:1.12}
.v5-section-intro>div{padding-bottom:5px}.v5-section-intro>div p{margin:0;color:#6e6e73;font-size:15px;line-height:1.8}.v5-section-intro>div p+p{margin-top:18px}
.v5-outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:72px;border-top:1px solid #d2d2d7;border-bottom:1px solid #d2d2d7}
.v5-outcome{display:block;min-width:0;padding:31px 32px 31px 0;border-right:1px solid #d2d2d7;background:transparent;color:#1d1d1f;text-align:left}.v5-outcome:nth-child(n+2){padding-left:32px}.v5-outcome:last-child{border-right:0}.v5-outcome>span{color:#0066cc;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.v5-outcome>strong{display:block;margin-top:28px;font-size:26px}.v5-outcome>b{display:block;margin-top:11px;font-size:13px}.v5-outcome>p{min-height:78px;margin:14px 0 22px;color:#6e6e73;font-size:13px;line-height:1.75}.v5-outcome>i{display:inline-flex;align-items:center;gap:7px;color:#0066cc;font-size:12px;font-style:normal;transition:gap .2s ease}.v5-outcome:hover>i{gap:11px}

.v5-modules{background:#f5f5f7}
.v5-section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end}.v5-section-heading>p{margin:0 0 7px;color:#6e6e73;font-size:15px;line-height:1.8}
.v5-module-list{margin-top:66px;border-top:1px solid #c7c7cc}
.v5-module{display:grid;grid-template-columns:54px minmax(180px,.55fr) minmax(280px,1fr) minmax(110px,.34fr) 24px;align-items:center;gap:24px;width:100%;min-height:112px;border-bottom:1px solid #c7c7cc;background:transparent;color:#1d1d1f;text-align:left;transition:background .2s ease,padding .2s ease}
.v5-module:hover{padding-left:12px;padding-right:12px;background:#fff}
.v5-module-index{color:#0066cc;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.v5-module-title small{display:block;margin-bottom:5px;color:#6e6e73;font-size:11px}.v5-module-title strong{font-size:21px}.v5-module-detail{color:#515154;font-size:13px;line-height:1.7}.v5-module-meta{color:#86868b;font-size:11px;text-align:right}.v5-module-arrow{display:grid;place-items:center;color:#0066cc}

.v5-loop{padding:116px 48px;background:#000;color:#f5f5f7}.v5-loop-inner{display:grid;grid-template-columns:.78fr 1.22fr;gap:86px;width:min(1200px,100%);margin:0 auto}.v5-loop-copy{align-self:start}.v5-loop-copy h2{color:#fff}.v5-loop-copy>span{display:block;max-width:450px;margin-top:22px;color:#a1a1a6;font-size:14px;line-height:1.8}.v5-loop-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #424245;border-left:1px solid #424245}.v5-loop-steps>div{min-height:190px;padding:25px;border-right:1px solid #424245;border-bottom:1px solid #424245}.v5-loop-steps span{color:#2997ff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.v5-loop-steps strong{display:block;margin-top:22px;color:#fff;font-size:20px}.v5-loop-steps p{margin:10px 0 0;color:#a1a1a6;font-size:12px;line-height:1.75}

.v5-proof-section{display:grid;grid-template-columns:1fr 1fr;gap:94px;align-items:center;padding-top:120px;padding-bottom:120px}.v5-proof-copy>span{display:block;max-width:480px;margin-top:22px;color:#6e6e73;font-size:14px;line-height:1.8}.v5-text-link{display:inline-flex;align-items:center;gap:8px;margin-top:29px;color:#0066cc;font-size:13px;font-weight:600}.v5-live-data{border-top:1px solid #d2d2d7;border-bottom:1px solid #d2d2d7}.v5-live-head{display:flex;justify-content:space-between;gap:20px;padding:0 0 18px;border-bottom:1px solid #d2d2d7}.v5-live-head strong{font-size:15px}.v5-live-head span{color:#86868b;font-size:11px}.v5-live-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.v5-live-grid>div{padding:28px 24px 26px 0;border-right:1px solid #d2d2d7;border-bottom:1px solid #d2d2d7}.v5-live-grid>div:nth-child(2n){padding-left:24px;border-right:0}.v5-live-grid>div:nth-child(n+3){border-bottom:0}.v5-live-grid b{display:block;font-size:42px;font-weight:620}.v5-live-grid span{display:block;margin-top:7px;color:#6e6e73;font-size:11px}.v5-live-data>p{display:flex;align-items:center;gap:9px;margin:0;padding:18px 0;color:#86868b;font-size:10px}.v5-live-data>p i{width:7px;height:7px;border-radius:50%;background:#20a464;box-shadow:0 0 0 4px rgba(32,164,100,.12)}
.v5-final{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:78px max(48px,calc((100% - 1200px)/2));background:#000;color:#f5f5f7}.v5-final h2{margin:0;color:#fff;font-size:44px;line-height:1.2}.v5-final p{margin:13px 0 0;color:#a1a1a6;font-size:14px}.v5-final>div:last-child{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}

@media(max-width:900px){
  .v5-hero-photo{width:76%;object-position:48% 52%}
  .v5-hero-statement{font-size:60px}.v5-section-intro h2,.v5-section-heading h2,.v5-loop-copy h2,.v5-proof-copy h2{font-size:52px}.v5-final h2{font-size:40px}
  .v5-section-intro,.v5-section-heading,.v5-loop-inner,.v5-proof-section{grid-template-columns:1fr;gap:34px}
  .v5-outcomes{grid-template-columns:1fr}.v5-outcome,.v5-outcome:nth-child(n+2){padding:25px 0;border-right:0;border-bottom:1px solid #d2d2d7}.v5-outcome:last-child{border-bottom:0}.v5-outcome>strong{margin-top:17px}.v5-outcome>p{min-height:0}
  .v5-module{grid-template-columns:44px minmax(150px,.48fr) minmax(240px,1fr) 24px}.v5-module-meta{display:none}
  .v5-loop-inner{gap:50px}.v5-proof-section{padding-left:48px;padding-right:48px}
  .v5-final{display:block}.v5-final>div:last-child{justify-content:flex-start;margin-top:28px}
}
@media(max-width:760px){
  body[data-view="home"] .topbar{height:60px;padding:0 20px}.v5-home{padding-bottom:0}
  .v5-hero{min-height:calc(100svh - 108px)}
  .v5-hero-photo{top:0;right:-8%;width:108%;height:51%;opacity:.72;object-position:center 45%;-webkit-mask-image:linear-gradient(0deg,transparent 0%,#000 34%);mask-image:linear-gradient(0deg,transparent 0%,#000 34%)}
  .v5-hero-content{width:auto;margin:0;padding:39vh 20px 112px}.v5-hero-content h1{font-size:24px}.v5-hero-statement{margin-top:16px;font-size:38px;line-height:1.08}.v5-hero-copy{max-width:440px;margin-top:16px;font-size:13px;line-height:1.7}.v5-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px}.v5-button{min-height:45px;padding:0 14px;font-size:12px}
  .v5-hero-proof{bottom:17px;width:calc(100% - 40px)}.v5-hero-proof span{padding:13px 6px 0;font-size:9px;text-align:center}.v5-hero-proof span:first-child{text-align:left}.v5-hero-proof span:last-child{text-align:right}.v5-hero-proof b{display:block;margin:0 0 3px;font-size:13px}.v5-scroll-cue{display:none}
  .v5-section{padding:78px 20px}.v5-section-intro,.v5-section-heading{gap:24px}.v5-section-intro h2,.v5-section-heading h2,.v5-loop-copy h2,.v5-proof-copy h2{font-size:32px;line-height:1.18}.v5-section-intro>div p,.v5-section-heading>p{font-size:13px}.v5-outcomes{margin-top:48px}.v5-outcome>strong{font-size:23px}
  .v5-module-list{margin-top:45px}.v5-module{grid-template-columns:34px minmax(0,1fr) 20px;gap:11px;min-height:0;padding:21px 0}.v5-module:hover{padding:21px 0;background:transparent}.v5-module-title{grid-column:2}.v5-module-title strong{font-size:18px}.v5-module-detail{grid-column:2;font-size:12px}.v5-module-index{grid-row:1 / span 2;align-self:start;margin-top:4px}.v5-module-arrow{grid-column:3;grid-row:1}.v5-module-meta{display:block;grid-column:2;color:#86868b;font-size:10px;text-align:left}
  .v5-loop{padding:78px 20px}.v5-loop-inner{gap:38px}.v5-loop-steps{display:block;border-left:0}.v5-loop-steps>div{min-height:0;padding:22px 0;border-right:0}.v5-loop-steps strong{margin-top:12px}
  .v5-proof-section{padding:78px 20px;gap:45px}.v5-live-grid b{font-size:34px}.v5-live-grid>div{padding:22px 18px 21px 0}.v5-live-grid>div:nth-child(2n){padding-left:18px}
  .v5-final{padding:62px 20px}.v5-final h2{font-size:31px}.v5-final>div:last-child{display:grid;grid-template-columns:1fr;margin-top:25px}.v5-final .v5-button{width:100%}
}
@media(max-width:430px){.v5-hero-content{padding-top:36vh}.v5-hero-statement{font-size:36px}.v5-hero-actions{grid-template-columns:1fr}.v5-hero-copy{max-width:340px}.v5-hero-proof span:nth-child(2){display:none}}
@media(max-width:350px){.v5-hero-statement{font-size:32px}}
@media(prefers-reduced-motion:reduce){.v5-hero-photo,.v5-hero-content,.v5-hero-proof{animation:none}.v5-button,.v5-module,.v5-outcome>i{transition:none}}

/* V6 home: one chapter per viewport, shared editorial palette and scroll-led motion. */
html:has(body[data-view="home"]){scroll-behavior:auto;scroll-snap-type:none;scroll-padding-top:72px}
body[data-view="home"]{background:#000}
body[data-view="home"] .topbar{position:fixed;z-index:80;top:0;left:0;right:0;height:72px;background:rgba(0,0,0,.82);border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:saturate(160%) blur(18px);-webkit-backdrop-filter:saturate(160%) blur(18px)}
body[data-view="home"] .brand{color:#f5f5f7;font-size:21px}body[data-view="home"] .brand-mark{border-color:#ff5a52;color:#ff5a52}
body[data-view="home"] .main{background:#000}body[data-view="home"] .content{max-width:none;margin:0;padding:0}
.v6-home{overflow:clip;background:#000;color:#f5f5f7;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC","Microsoft YaHei",sans-serif}
.v6-home{height:auto;overflow:visible;background:#070708}
.v6-panel{position:relative;display:grid;align-items:center;min-height:100svh;padding:96px 48px 48px;overflow:hidden;background:#070708!important;--v6-delta:1;--v6-presence:0;--v6-content-y:0px;--v6-left-x:0px;--v6-right-x:0px;--v6-detail-y:0px}
.v6-panel h1,.v6-panel h2,.v6-panel p{margin:0}.v6-panel button{font-family:inherit}
.v6-panel>.v6-hero-grid,.v6-panel>.v6-purpose-grid,.v6-panel>.v6-capabilities-grid,.v6-panel>.v6-rhythm-inner{transform:translate3d(0,var(--v6-content-y),0);will-change:transform}
.v6-reveal{opacity:calc(.6 + var(--v6-presence) * .4);will-change:opacity,transform}
.v6-panel.is-visible .v6-reveal:nth-child(2){transition-delay:0s}
.v6-hero-copy.v6-reveal,.v6-purpose-copy.v6-reveal,.v6-capabilities-copy.v6-reveal,.v6-rhythm-copy.v6-reveal{transform:translate3d(var(--v6-left-x),var(--v6-detail-y),0)}.v6-product-stage.v6-reveal,.v6-outcome-list.v6-reveal,.v6-module-list.v6-reveal,.v6-loop.v6-reveal,.v6-finish.v6-reveal{transform:translate3d(var(--v6-right-x),calc(var(--v6-detail-y) * -1),0)}
.v6-hero{background:#070708}.v6-hero-grid{display:grid;grid-template-columns:minmax(420px,.88fr) minmax(560px,1.12fr);align-items:center;gap:10px;width:min(1320px,100%);margin:auto}
.v6-hero-copy{position:relative;z-index:2}.v6-hero-copy h1{max-width:700px;color:#f5f5f7;font-size:clamp(58px,5.2vw,84px);font-weight:680;line-height:1.06;letter-spacing:-.055em}.v6-hero-copy h1 em{color:#ff5a52;font-family:inherit;font-style:normal;font-weight:680;letter-spacing:-.055em}
.v6-hero-copy>p{max-width:540px;margin-top:30px;color:#a1a1a6;font-size:17px;line-height:1.8}
.v6-actions{display:flex;align-items:center;gap:11px;margin-top:34px;flex-wrap:wrap}.v6-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 22px;border:1px solid #4c4c50;border-radius:25px;color:#f5f5f7;font-size:14px;font-weight:650;transition:transform .24s ease,background .24s ease,border-color .24s ease,color .24s ease}.v6-button svg,.v6-outcome svg,.v6-module svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.v6-button.primary{border-color:#d7473f;background:#d7473f;color:#fff}.v6-button.primary:hover{border-color:#f05a52;background:#f05a52;transform:translateY(-2px)}.v6-button.secondary:hover{border-color:#f5f5f7;transform:translateY(-2px)}
.v6-product-stage{position:relative;height:560px;perspective:1400px;isolation:isolate}.v6-product-stage:after{content:"";position:absolute;z-index:-1;left:10%;right:4%;bottom:5%;height:16%;border-radius:50%;background:rgba(78,83,98,.3);filter:blur(52px)}
.v6-product-screen{position:absolute;inset:7% 4% 8% 3%;overflow:hidden;border:1px solid #3b3b3f;border-radius:24px;background:#111113;box-shadow:0 42px 90px rgba(0,0,0,.52);transform:rotateY(calc(-4deg + var(--v6-delta) * -3deg)) rotateX(calc(1deg + var(--v6-delta) * 1deg)) scale(calc(.95 + var(--v6-presence) * .05));transform-origin:center;will-change:transform}
.v6-product-screen>header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:62px;padding:0 24px;border-bottom:1px solid #333337;color:#f5f5f7}.v6-product-screen>header span{font-size:17px;font-weight:700}.v6-product-screen>header p{color:#b8b8bd;font-size:12px}.v6-product-screen>header i{justify-self:end;width:8px;height:8px;border-radius:50%;background:#ff5a52}
.v6-product-body{display:grid;grid-template-columns:1.08fr .92fr;height:calc(100% - 62px)}.v6-product-focus{display:flex;flex-direction:column;justify-content:space-between;padding:40px 34px;border-right:1px solid #333337}.v6-product-focus>p{color:#fff;font-size:40px;font-weight:680;line-height:1.13;letter-spacing:-.045em}.v6-product-focus>button{display:flex;align-items:center;justify-content:space-between;width:190px;min-height:46px;padding:0 17px;border-radius:23px;background:#d7473f;color:#fff;font-size:12px;font-weight:650}.v6-product-focus svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}
.v6-product-tasks{padding:31px 26px}.v6-product-tasks>span{color:#7d7d83;font-size:10px}.v6-product-tasks>div{display:grid;grid-template-columns:18px 1fr;gap:4px 11px;padding:21px 0;border-bottom:1px solid #303034}.v6-product-tasks i{grid-row:1/span 2;align-self:center;width:10px;height:10px;border:2px solid #ff5a52;border-radius:50%}.v6-product-tasks b{color:#f5f5f7;font-size:14px}.v6-product-tasks small{color:#7f7f85;font-size:9px}
.v6-product-float{position:absolute;z-index:3;padding:20px 22px;border:1px solid #4a4a4f;border-radius:18px;background:rgba(31,31,34,.96);box-shadow:0 24px 60px rgba(0,0,0,.46);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);will-change:transform,opacity}.v6-product-float span{display:block;color:#ff6a61;font-size:10px;font-weight:650}.v6-product-float strong{display:block;margin-top:9px;color:#fff;font-size:15px}.v6-product-float.rules{top:1%;right:1%;width:230px;transform:translate3d(0,calc(-10px + var(--v6-delta) * 30px),0) scale(calc(.9 + var(--v6-presence) * .1));opacity:calc(.35 + var(--v6-presence) * .65)}.v6-product-float.rules>i{display:block;height:4px;margin-top:10px;border-radius:4px;background:#56565b}.v6-product-float.rules>i:nth-of-type(2){width:82%}.v6-product-float.rules>i:nth-of-type(3){width:63%}.v6-product-float.wrongs{left:-2%;bottom:2%;width:220px;transform:translate3d(0,calc(14px + var(--v6-delta) * -24px),0) scale(calc(.9 + var(--v6-presence) * .1));opacity:calc(.35 + var(--v6-presence) * .65)}.v6-product-float.wrongs>div{display:flex;gap:7px;margin-top:16px}.v6-product-float.wrongs i{width:28px;height:5px;border-radius:4px;background:#45454a}.v6-product-float.wrongs i:nth-child(-n+2){background:#d7473f}

.v6-purpose{background:#070708}.v6-purpose-grid,.v6-capabilities-grid,.v6-rhythm-inner{width:min(1200px,100%);margin:auto}.v6-purpose-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,.78fr);gap:105px;align-items:center}
.v6-purpose-copy h2,.v6-capabilities-copy h2,.v6-rhythm-copy h2{color:#f5f5f7;font-size:clamp(48px,4.4vw,70px);font-weight:680;line-height:1.1;letter-spacing:-.045em}.v6-purpose-copy>p,.v6-capabilities-copy>p,.v6-rhythm-copy>p{max-width:560px;margin-top:28px;color:#a1a1a6;font-size:16px;line-height:1.82}
.v6-outcome-list{border-top:1px solid #38383c}.v6-outcome{position:relative;display:grid;grid-template-columns:110px 1fr 24px;align-items:center;gap:20px;width:100%;min-height:142px;border-bottom:1px solid #38383c;color:#f5f5f7;text-align:left}.v6-outcome>span{color:#ff5a52;font-size:13px;font-weight:650}.v6-outcome>strong{font-size:27px;letter-spacing:-.025em}.v6-outcome>p{grid-column:2;align-self:start;margin-top:-34px;padding-bottom:22px;color:#9a9aa0;font-size:13px;line-height:1.65}.v6-outcome>svg{grid-column:3;grid-row:1;transition:transform .24s ease}.v6-outcome:hover>svg{transform:translateX(5px)}

.v6-capabilities{background:#070708}.v6-capabilities-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:80px;align-items:start}.v6-capabilities-copy{padding-top:18px}.v6-capabilities-copy h2{font-size:clamp(48px,3.75vw,54px)}.v6-module-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #414145;border-left:1px solid #414145}.v6-module{position:relative;display:grid;grid-template-columns:38px 1fr 18px;grid-template-rows:auto auto auto;gap:9px 13px;min-height:190px;padding:25px;border-right:1px solid #414145;border-bottom:1px solid #414145;color:#f5f5f7;text-align:left;transition:background .25s ease}.v6-module:hover{background:#202023}.v6-module>span{grid-row:1/span 3;color:#ff5a52;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.v6-module>strong{font-size:22px;letter-spacing:-.02em}.v6-module>p{color:#a1a1a6;font-size:13px;line-height:1.62}.v6-module>small{align-self:end;color:#7f7f85;font-size:10px}.v6-module>svg{grid-column:3;grid-row:1;color:#ff5a52}

.v6-rhythm{background:#070708;color:#f5f5f7}.v6-rhythm-inner{display:grid;align-content:center;min-height:calc(100svh - 144px)}.v6-rhythm-copy{display:grid;grid-template-columns:1fr .55fr;align-items:end;gap:70px}.v6-rhythm-copy h2{color:#fff;font-size:clamp(48px,4vw,60px)}.v6-rhythm-copy>p{margin:0;color:#b6b6bb}.v6-loop{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:76px 0 0;padding:0;border-top:1px solid #55565a;list-style:none}.v6-loop li{min-height:190px;padding:26px 28px 22px 0;border-right:1px solid #55565a}.v6-loop li+li{padding-left:28px}.v6-loop li:last-child{border-right:0}.v6-loop span{color:#ef6a60;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.v6-loop strong{display:block;margin-top:28px;color:#fff;font-size:25px}.v6-loop p{margin-top:12px;color:#a6a6ab;font-size:12px;line-height:1.7}.v6-finish{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:54px;padding-top:28px;border-top:1px solid #55565a}.v6-finish>p{color:#fff;font-family:inherit;font-size:28px;font-weight:700}.v6-finish .v6-actions{margin:0}.v6-button.light{border-color:#fff;background:#fff;color:#1d1d1f}.v6-button.line{border-color:#6d6e72;color:#fff}.v6-button.light:hover,.v6-button.line:hover{transform:translateY(-2px)}

.v6-module>small{grid-column:2}
@media(max-width:980px){.v6-hero-grid{grid-template-columns:.92fr 1.08fr}.v6-hero-copy h1{font-size:58px}.v6-purpose-grid,.v6-capabilities-grid{gap:52px}.v6-purpose-grid{grid-template-columns:.9fr 1.1fr}.v6-capabilities-grid{grid-template-columns:.78fr 1.22fr}.v6-capabilities-copy h2{font-size:42px}.v6-module{min-height:176px;padding:21px}.v6-rhythm-copy{grid-template-columns:1fr}.v6-rhythm-copy>p{margin-top:0}}
@media(max-width:760px){
  html:has(body[data-view="home"]){scroll-padding-top:60px;scroll-snap-type:none}body[data-view="home"] .topbar{height:60px;padding:0 20px}.v6-panel{min-height:100svh;padding:82px 20px 30px;scroll-margin-top:0}
  .v6-hero-grid{display:flex;flex-direction:column-reverse;justify-content:center;gap:0}.v6-hero-copy{width:100%;margin-top:4px}.v6-hero-copy h1{font-size:clamp(39px,10.5vw,48px);line-height:1.07}.v6-hero-copy>p{margin-top:18px;font-size:13px;line-height:1.68}.v6-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px}.v6-button{min-height:44px;padding:0 13px;font-size:12px}.v6-product-stage{width:100%;height:37vh;min-height:275px}.v6-product-screen{inset:8px 0 18px;transform:rotateY(calc(var(--v6-delta) * -2deg)) scale(calc(.94 + var(--v6-presence) * .06))}.v6-product-screen>header{height:42px;padding:0 14px}.v6-product-body{height:calc(100% - 42px)}.v6-product-focus{padding:22px 17px}.v6-product-focus>p{font-size:22px}.v6-product-focus>button{width:124px;min-height:34px;padding:0 11px;font-size:9px}.v6-product-tasks{padding:18px 13px}.v6-product-tasks>div{padding:11px 0}.v6-product-tasks b{font-size:10px}.v6-product-float{padding:12px 14px;border-radius:12px}.v6-product-float strong{font-size:10px}.v6-product-float.rules{top:0;right:-8px;width:150px}.v6-product-float.wrongs{left:-8px;bottom:0;width:150px}
  .v6-purpose-grid,.v6-capabilities-grid{display:block}.v6-purpose-copy h2,.v6-capabilities-copy h2,.v6-rhythm-copy h2{font-size:34px;line-height:1.14}.v6-purpose-copy>p,.v6-capabilities-copy>p,.v6-rhythm-copy>p{margin-top:16px;font-size:13px;line-height:1.65}.v6-outcome-list{margin-top:28px}.v6-outcome{grid-template-columns:86px 1fr 20px;min-height:108px;gap:10px}.v6-outcome>strong{font-size:21px}.v6-outcome>p{margin-top:-24px;padding-bottom:15px;font-size:11px}
  .v6-capabilities-copy{padding:0}.v6-module-list{margin-top:26px;grid-template-columns:1fr}.v6-module{grid-template-columns:30px 1fr 17px;grid-template-rows:auto auto;min-height:0;padding:14px 12px}.v6-module>span{grid-row:1/span 2}.v6-module>strong{font-size:18px}.v6-module>p{font-size:11px}.v6-module>small{display:none}
  .v6-rhythm-inner{min-height:auto}.v6-rhythm-copy{display:block}.v6-loop{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:30px}.v6-loop li{min-height:132px;padding:17px 14px 15px 0}.v6-loop li+li{padding-left:14px}.v6-loop li:nth-child(2){border-right:0}.v6-loop li:nth-child(n+3){border-top:1px solid #55565a}.v6-loop strong{margin-top:12px;font-size:19px}.v6-loop p{margin-top:7px;font-size:10px}.v6-finish{display:block;margin-top:24px;padding-top:20px}.v6-finish>p{font-size:22px}.v6-finish .v6-actions{margin-top:18px}
}
@media(max-width:430px){.v6-actions{grid-template-columns:1fr}.v6-product-stage{height:32vh;min-height:235px}.v6-panel{padding-top:74px}.v6-purpose-copy h2,.v6-capabilities-copy h2,.v6-rhythm-copy h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){html:has(body[data-view="home"]){scroll-behavior:auto;scroll-snap-type:none}.v6-reveal{opacity:1;transform:none;transition:none}.v6-product-screen,.v6-product-float{opacity:1;transform:none}.v6-button,.v6-outcome svg{transition:none}}

/* V6 flow transition: chapters stay in normal flow and meet through a shared canvas.
   The hero preview is a useful workbench cue; no fixed decorative layer sits above later content. */
.v6-home{position:relative;isolation:isolate;background:#080b12;--v6-accent:#68adff;--v6-accent-strong:#8bc5ff;--v6-accent-soft:#b7dcff}
.v6-panel{z-index:1;background:#080b12!important}
.v6-panel + .v6-panel{margin-top:-12svh;padding-top:calc(96px + 12svh)}
.v6-home .v6-hero-copy h1,
.v6-home .v6-purpose-copy h2,
.v6-home .v6-capabilities-copy h2,
.v6-home .v6-rhythm-copy h2{font-family:"Avenir Next","SF Pro Display","PingFang SC","Microsoft YaHei",sans-serif;font-weight:700;background:linear-gradient(128deg,#f8fbff 0%,#c8dcff 42%,#72b3ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-wrap:balance}
.v6-home .v6-hero-copy h1 em{display:inline-block;color:transparent!important;background:linear-gradient(128deg,#dceaff 0%,#8dc4ff 46%,#4a98ff 100%);-webkit-background-clip:text;background-clip:text}
.v6-home .v6-hero-copy>p,.v6-home .v6-purpose-copy>p,.v6-home .v6-capabilities-copy>p,.v6-home .v6-rhythm-copy>p{color:#a9b6c9}
.v6-home .v6-outcome-list,.v6-home .v6-module-list,.v6-home .v6-loop,.v6-home .v6-finish{border-color:rgba(157,181,214,.24)}
.v6-home .v6-outcome,.v6-home .v6-module,.v6-home .v6-loop li{border-color:rgba(157,181,214,.2)}
.v6-home .v6-hero .v6-product-stage{visibility:visible}
.v6-home .v6-hero .v6-product-stage{height:min(560px,64svh);min-height:430px}
.v6-home .v6-product-stage:after{background:radial-gradient(ellipse,rgba(45,93,157,.34),rgba(0,0,0,.05) 70%);filter:blur(58px)}
.v6-home .v6-product-screen{background:linear-gradient(145deg,#172232 0%,#0f1724 55%,#0a101b 100%);border-color:rgba(177,207,241,.25);box-shadow:0 42px 90px rgba(0,0,0,.76),0 22px 56px rgba(41,101,177,.2),inset 0 1px 0 rgba(255,255,255,.1)}
.v6-home .v6-product-screen>header{border-color:rgba(177,207,241,.17)}
.v6-home .v6-product-body,.v6-home .v6-product-focus{border-color:rgba(177,207,241,.17)}
.v6-home .v6-product-focus>p{background:linear-gradient(135deg,#f8fbff,#b8d5ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.v6-home .v6-product-focus>button{border-color:var(--v6-accent)!important;background:var(--v6-accent)!important;color:#07121f!important;box-shadow:0 8px 22px rgba(70,145,236,.25)}
.v6-home .v6-product-tasks i{border-color:var(--v6-accent)}
.v6-home .v6-product-tasks>div{border-color:rgba(177,207,241,.15)}
.v6-home .v6-product-float{background:rgba(16,28,44,.92);border-color:rgba(177,207,241,.25);box-shadow:0 30px 70px rgba(0,0,0,.62),0 10px 26px rgba(44,101,170,.18)}
.v6-home .v6-product-float span,.v6-home .v6-outcome>span,.v6-home .v6-module>span,.v6-home .v6-module>svg,.v6-home .v6-loop span{color:var(--v6-accent)!important}
.v6-home .v6-button.primary{border-color:var(--v6-accent)!important;background:var(--v6-accent)!important;color:#06101d!important;box-shadow:0 8px 22px rgba(70,145,236,.2)}
.v6-home .v6-button.primary:hover{border-color:var(--v6-accent-strong)!important;background:var(--v6-accent-strong)!important}
.v6-home .v6-module:hover{background:#101c2c}
@media(max-width:760px){.v6-panel + .v6-panel{margin-top:-10svh;padding-top:calc(82px + 10svh)}.v6-home .v6-hero .v6-product-stage{height:32vh;min-height:235px}.v6-home .v6-product-float{display:none}.v6-home .v6-product-screen{box-shadow:0 26px 58px rgba(0,0,0,.76),0 14px 34px rgba(41,101,177,.2),inset 0 1px 0 rgba(255,255,255,.1)}}
@media(prefers-reduced-motion:reduce){.v6-panel>.v6-hero-grid,.v6-panel>.v6-purpose-grid,.v6-panel>.v6-capabilities-grid,.v6-panel>.v6-rhythm-inner,.v6-reveal,.v6-product-screen,.v6-product-float.rules,.v6-product-float.wrongs{transform:none;opacity:1}}

/* V7 motion pass: a single dark canvas, continuous hand-off, and a visible journey rail. */
.v6-home{--v6-progress:0;position:relative;isolation:isolate;background:#080b12;overflow:visible}
.v6-home::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(60% 32% at 72% 8%,rgba(55,112,188,.16),transparent 68%),radial-gradient(52% 28% at 18% 54%,rgba(28,67,125,.14),transparent 72%),linear-gradient(180deg,#080b12 0%,#090d14 48%,#080b12 100%);pointer-events:none}
.v6-panel,.v6-panel + .v6-panel{margin-top:0!important;background:transparent!important}
.v6-panel + .v6-panel{padding-top:96px!important}
.v6-panel>.v6-hero-grid,.v6-panel>.v6-purpose-grid,.v6-panel>.v6-capabilities-grid,.v6-panel>.v6-rhythm-inner{transform:translate3d(0,var(--v6-content-y),0);}
.v6-reveal{opacity:calc(.12 + var(--v6-presence) * .88);filter:blur(var(--v6-blur,0px));will-change:opacity,transform,filter}
.v6-hero-copy.v6-reveal,.v6-purpose-copy.v6-reveal,.v6-capabilities-copy.v6-reveal,.v6-rhythm-copy.v6-reveal{transform:translate3d(var(--v6-left-x),var(--v6-detail-y),0)}
.v6-product-stage.v6-reveal,.v6-outcome-list.v6-reveal,.v6-module-list.v6-reveal,.v6-loop.v6-reveal,.v6-finish.v6-reveal{transform:translate3d(var(--v6-right-x),calc(var(--v6-detail-y) * -1),0)}
.v6-panel::after{content:"";position:absolute;z-index:-1;inset:10% 4% 10%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(74,139,226,.06),transparent 68%);opacity:calc(.14 + var(--v6-presence) * .2);filter:blur(34px);pointer-events:none}
.v6-journey-rail{position:fixed;z-index:75;top:50%;right:24px;display:flex;flex-direction:column;align-items:center;gap:12px;transform:translateY(-50%);pointer-events:none;color:#8fa7c5;opacity:.86}
.v6-journey-line{position:absolute;top:5px;bottom:29px;width:1px;background:rgba(143,167,197,.25);overflow:hidden}
.v6-journey-line i{position:absolute;top:0;left:0;width:1px;height:calc(100% * var(--v6-page-progress));background:linear-gradient(180deg,#9cc6ff,#4d8fe8);transform-origin:top}
.v6-journey-dots{display:grid;gap:22px;padding:4px 0 2px}
.v6-journey-dots i{width:7px;height:7px;border:1px solid rgba(143,167,197,.58);border-radius:50%;background:#080b12;box-shadow:0 0 0 3px rgba(8,11,18,.84);transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}
.v6-home[data-v6-step="1"] .v6-journey-dots i:nth-child(1),.v6-home[data-v6-step="2"] .v6-journey-dots i:nth-child(2),.v6-home[data-v6-step="3"] .v6-journey-dots i:nth-child(3),.v6-home[data-v6-step="4"] .v6-journey-dots i:nth-child(4){border-color:#a8ceff;background:#68adff;box-shadow:0 0 0 3px rgba(104,173,255,.15),0 0 14px rgba(104,173,255,.5)}
.v6-journey-rail>b{margin-top:2px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;letter-spacing:.08em;color:#aac3df}
@keyframes v6-boot-up{from{opacity:0;transform:translate3d(0,24px,0);filter:blur(7px)}to{opacity:1;transform:none;filter:none}}
@keyframes v6-boot-stage{from{opacity:0;filter:blur(10px)}to{opacity:1;filter:none}}
@keyframes v6-boot-rail{from{opacity:0;transform:translate3d(12px,-50%,0)}to{opacity:.86;transform:translate3d(0,-50%,0)}}
.v6-boot .v6-hero-copy h1{animation:v6-boot-up .72s cubic-bezier(.2,.78,.22,1) both}
.v6-boot .v6-hero-copy>p{animation:v6-boot-up .72s .08s cubic-bezier(.2,.78,.22,1) both}
.v6-boot .v6-hero-copy .v6-actions{animation:v6-boot-up .72s .16s cubic-bezier(.2,.78,.22,1) both}
.v6-boot .v6-product-stage{animation:v6-boot-stage .86s .06s cubic-bezier(.2,.78,.22,1) both}
.v6-boot .v6-product-float.rules{animation:v6-boot-stage .62s .28s cubic-bezier(.2,.78,.22,1) both}
.v6-boot .v6-product-float.wrongs{animation:v6-boot-stage .62s .38s cubic-bezier(.2,.78,.22,1) both}
.v6-boot .v6-journey-rail{animation:v6-boot-rail .62s .42s cubic-bezier(.2,.78,.22,1) both}
@media(max-width:760px){.v6-panel + .v6-panel{padding-top:82px!important}.v6-journey-rail{right:12px;transform:translateY(-50%) scale(.88);transform-origin:right center}.v6-journey-rail>b{font-size:9px}.v6-home::before{background:radial-gradient(80% 28% at 70% 8%,rgba(55,112,188,.14),transparent 72%),linear-gradient(180deg,#080b12,#090d14 50%,#080b12)} }
@media(prefers-reduced-motion:reduce){.v6-journey-rail{animation:none!important}.v6-boot .v6-hero-copy h1,.v6-boot .v6-hero-copy>p,.v6-boot .v6-hero-copy .v6-actions,.v6-boot .v6-product-stage,.v6-boot .v6-product-float.rules,.v6-boot .v6-product-float.wrongs{animation:none!important}.v6-reveal{filter:none!important}.v6-home::before{background:#080b12}}

/* V8 homepage story: one sticky workbench stage, four scroll-linked chapters. */
.v8-home{--v8-bg:#070b14;--v8-ink:#f4f7fb;--v8-muted:#93a1b4;--v8-line:rgba(156,184,220,.2);--v8-blue:#72b5ff;position:relative;isolation:isolate;min-height:100svh;overflow:clip;background:var(--v8-bg);color:var(--v8-ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC","Microsoft YaHei",sans-serif}
.v8-home::before{content:"";position:absolute;z-index:-2;inset:0;background:radial-gradient(70% 46% at 82% 22%,rgba(33,91,165,.21),transparent 68%),radial-gradient(60% 40% at 0% 72%,rgba(20,55,105,.14),transparent 72%),linear-gradient(180deg,#070b14 0%,#080d17 50%,#070b14 100%);pointer-events:none}
.v8-home::after{content:"";position:absolute;z-index:-1;left:0;right:0;top:0;height:100%;opacity:.22;background-image:linear-gradient(112deg,transparent 0 43%,rgba(96,152,220,.13) 43.1%,transparent 43.3%),linear-gradient(112deg,transparent 0 61%,rgba(96,152,220,.08) 61.1%,transparent 61.3%);mask-image:linear-gradient(180deg,transparent,#000 18%,#000 76%,transparent);pointer-events:none}
.v8-story{display:grid;grid-template-columns:minmax(360px,.84fr) minmax(520px,1.16fr);gap:clamp(34px,6vw,100px);width:min(1320px,100%);margin:0 auto;padding:clamp(76px,9vh,108px) clamp(28px,4vw,58px) 8vh}
.v8-stage-slot{grid-column:2;grid-row:1;position:sticky;top:104px;align-self:start;height:calc(100svh - 154px);min-height:500px;z-index:4;display:flex;align-items:center}
.v8-stage{position:relative;width:100%;height:min(610px,calc(100svh - 154px));min-height:500px;overflow:hidden;border:1px solid rgba(158,194,238,.27);border-radius:28px;background:linear-gradient(145deg,rgba(24,39,63,.92),rgba(10,19,34,.96) 58%,rgba(7,14,25,.98));box-shadow:0 50px 110px rgba(0,0,0,.62),0 18px 55px rgba(26,86,151,.18),inset 0 1px 0 rgba(255,255,255,.12);transform:perspective(1300px) rotateX(var(--v8-stage-tilt,0deg)) translateY(var(--v8-stage-y,0px));transition:transform .18s linear;will-change:transform}
.v8-stage::before{content:"";position:absolute;inset:-20% -10% 38%;background:radial-gradient(ellipse at 72% 40%,rgba(68,147,255,.3),transparent 64%);filter:blur(28px);pointer-events:none}
.v8-stage::after{content:"";position:absolute;left:9%;right:9%;bottom:4%;height:22%;border-radius:50%;background:rgba(35,108,194,.23);filter:blur(44px);pointer-events:none}
.v8-stage-head{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 14px;align-items:center;height:62px;padding:0 26px;border-bottom:1px solid rgba(160,191,228,.19);color:var(--v8-ink)}
.v8-stage-head>span:first-child{font-size:17px;font-weight:700;letter-spacing:-.02em}.v8-stage-head>span:nth-child(2){color:#91a4bd;font-size:11px}.v8-stage-head>i{width:8px;height:8px;border-radius:50%;background:var(--v8-blue);box-shadow:0 0 16px rgba(114,181,255,.8)}
.v8-stage-body{position:relative;z-index:1;display:grid;grid-template-columns:62px 1fr;height:calc(100% - 122px);padding:28px 24px 0}
.v8-stage-track{position:relative;display:flex;flex-direction:column;align-items:center;gap:0;padding:52px 0 48px}.v8-stage-track::before{content:"";position:absolute;top:56px;bottom:53px;width:1px;background:linear-gradient(180deg,rgba(114,181,255,.9),rgba(114,181,255,.16))}.v8-stage-track>span{position:absolute;top:calc(56px + var(--v8-scroll-progress,0) * (100% - 109px));width:7px;height:7px;border-radius:50%;background:#bde1ff;box-shadow:0 0 0 5px rgba(114,181,255,.13),0 0 18px rgba(114,181,255,.85);transition:top .25s linear}.v8-stage-track>i{position:relative;z-index:1;width:9px;height:9px;margin:0 0 74px;border:1px solid rgba(138,187,239,.58);border-radius:50%;background:#0d1c31;box-shadow:0 0 0 4px rgba(9,19,34,.9)}
.v8-stage-cards{position:relative;min-height:100%;overflow:hidden}.v8-stage-card{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:20px 34px 30px;opacity:0;transform:translate3d(36px,14px,0) scale(.965);filter:blur(2px);transition:opacity .58s cubic-bezier(.2,.75,.2,1),transform .7s cubic-bezier(.2,.75,.2,1),filter .58s ease;pointer-events:none}.v8-stage[data-v8-mode="1"] .v8-stage-card[data-v8-card="1"],.v8-stage[data-v8-mode="2"] .v8-stage-card[data-v8-card="2"],.v8-stage[data-v8-mode="3"] .v8-stage-card[data-v8-card="3"],.v8-stage[data-v8-mode="4"] .v8-stage-card[data-v8-card="4"]{opacity:1;transform:none;filter:none;pointer-events:auto}.v8-stage-card small{color:#8ebfff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;letter-spacing:.04em}.v8-stage-card strong{max-width:460px;margin-top:24px;color:#f6f9ff;font-size:clamp(34px,3.4vw,52px);font-weight:680;line-height:1.09;letter-spacing:-.05em}.v8-stage-card p{max-width:410px;margin:21px 0 0;color:#9aabc0;font-size:14px;line-height:1.8}.v8-stage-bars{display:grid;gap:11px;width:min(320px,82%);margin-top:38px}.v8-stage-bars i{height:7px;border-radius:6px;background:linear-gradient(90deg,#73b8ff,#234f88);box-shadow:0 0 18px rgba(90,157,241,.24)}.v8-stage-bars i:nth-child(2){width:77%;opacity:.72}.v8-stage-bars i:nth-child(3){width:54%;opacity:.46}.v8-stage-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:34px}.v8-stage-steps b{padding:15px 12px;border:1px solid rgba(140,185,236,.23);border-radius:10px;background:rgba(22,43,72,.55);color:#b8d9ff;font-size:12px;font-weight:600;text-align:center}.v8-stage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:240px;margin-top:34px}.v8-stage-grid i{height:54px;border:1px solid rgba(140,185,236,.24);border-radius:10px;background:linear-gradient(145deg,rgba(46,93,145,.72),rgba(13,28,49,.82));box-shadow:inset 0 1px rgba(255,255,255,.08)}.v8-stage-loop{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:36px}.v8-stage-loop span{display:flex;align-items:center;justify-content:center;height:34px;border-radius:17px;background:rgba(80,143,210,.14);color:#a9d0f7;font-size:11px}.v8-stage-loop span+span::before{content:"";position:absolute}
.v8-stage-foot{position:absolute;z-index:2;left:24px;right:24px;bottom:0;display:flex;align-items:center;justify-content:space-between;min-height:60px;border-top:1px solid rgba(160,191,228,.16);color:#8ea3bc;font-size:11px}.v8-stage-foot>b{color:#bcdfff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;letter-spacing:.08em}
.v8-chapters{grid-column:1;grid-row:1}.v8-chapter{position:relative;display:flex;align-items:center;min-height:100svh;padding:72px 0;pointer-events:none}.v8-chapter-inner{max-width:560px;opacity:calc(.16 + var(--v8-presence,.0) * .84);transform:translate3d(0,var(--v8-shift,0px),0);filter:blur(calc((1 - var(--v8-presence,.0)) * 1.2px));transition:filter .2s linear;will-change:opacity,transform,filter}.v8-chapter.is-active{pointer-events:auto}.v8-kicker{display:inline-flex;align-items:center;gap:10px;color:#82bbf7;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;letter-spacing:.04em}.v8-kicker i{display:block;width:24px;height:1px;background:rgba(130,187,247,.58)}.v8-chapter h1,.v8-chapter h2{margin:22px 0 0;color:var(--v8-ink);font-size:clamp(54px,5.2vw,82px);font-weight:680;line-height:1.05;letter-spacing:-.06em}.v8-chapter h1 em{font-style:normal;color:transparent;background:linear-gradient(125deg,#eaf4ff 0%,#9dceff 45%,#56a4ff 100%);-webkit-background-clip:text;background-clip:text}.v8-chapter h2{font-size:clamp(47px,4.3vw,66px)}.v8-chapter p{max-width:510px;margin:27px 0 0;color:var(--v8-muted);font-size:15px;line-height:1.85}.v8-home .v6-actions{margin-top:34px}.v8-home .v6-button{min-height:48px;border-radius:24px;padding:0 21px;border:1px solid rgba(169,202,238,.4);font-family:inherit;font-size:13px;transition:transform .25s ease,background .25s ease,border-color .25s ease}.v8-home .v6-button.primary{border-color:#70b5ff;background:#70b5ff;color:#071321;box-shadow:0 11px 26px rgba(57,133,218,.23)}.v8-home .v6-button.primary:hover{background:#98ceff;border-color:#98ceff;transform:translateY(-2px)}.v8-home .v6-button.secondary{background:rgba(13,26,44,.38);color:#e6f1ff}.v8-home .v6-button.secondary:hover{border-color:#a8d2ff;background:rgba(46,93,145,.22);transform:translateY(-2px)}.v8-scroll-cue{display:grid;grid-template-columns:auto 34px;align-items:center;gap:11px;margin-top:clamp(58px,12vh,118px);color:#8ea3bb;font-size:11px}.v8-scroll-cue i{display:block;width:34px;height:1px;background:linear-gradient(90deg,#7dbdff,transparent)}.v8-scroll-cue small{grid-column:1/-1;color:#657991;font-size:10px}.v8-home .v6-outcome-list{margin-top:38px;border-top:1px solid var(--v8-line)}.v8-home .v6-outcome{grid-template-columns:94px 1fr 20px;min-height:106px;gap:14px;border-bottom:1px solid var(--v8-line);color:var(--v8-ink)}.v8-home .v6-outcome>span,.v8-home .v6-module>span,.v8-home .v6-loop span{color:#82bbf7!important;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.v8-home .v6-outcome>strong{font-size:22px}.v8-home .v6-outcome>p{margin:-23px 0 0;grid-column:2;padding-bottom:14px;color:#8395ab;font-size:12px}.v8-home .v6-outcome>svg{grid-column:3;grid-row:1;transition:transform .24s ease}.v8-home .v6-outcome:hover>svg{transform:translateX(5px)}.v8-home .v6-module-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:36px;border-top:1px solid var(--v8-line);border-left:1px solid var(--v8-line)}.v8-home .v6-module{min-height:148px;padding:18px;border-right:1px solid var(--v8-line);border-bottom:1px solid var(--v8-line);background:rgba(15,29,49,.35);color:var(--v8-ink);transition:background .25s ease,transform .25s ease}.v8-home .v6-module:hover{background:rgba(42,86,137,.2);transform:translateY(-2px)}.v8-home .v6-module>strong{font-size:17px}.v8-home .v6-module>p{color:#8b9db4;font-size:11px;line-height:1.55}.v8-home .v6-module>small{color:#6d829e}.v8-home .v6-module>svg{color:#82bbf7}.v8-home .v6-loop{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:42px 0 0;padding:0;border-top:1px solid var(--v8-line);list-style:none}.v8-home .v6-loop li{min-height:128px;padding:19px 16px 18px 0;border-right:1px solid var(--v8-line);border-bottom:1px solid var(--v8-line)}.v8-home .v6-loop li:nth-child(2n){padding-left:16px;border-right:0}.v8-home .v6-loop li:nth-child(n+3){border-top:0}.v8-home .v6-loop strong{display:block;margin-top:17px;color:#f1f6fd;font-size:20px}.v8-home .v6-loop p{margin-top:7px;color:#8395ab;font-size:11px;line-height:1.65}.v8-home .v6-finish{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:35px;padding-top:24px;border-top:1px solid var(--v8-line)}.v8-home .v6-finish>p{margin:0;color:#edf5ff;font-size:21px;font-weight:650}.v8-home .v6-finish .v6-actions{margin:0}.v8-journey-rail{position:fixed;z-index:75;top:50%;right:24px;display:flex;flex-direction:column;align-items:center;gap:11px;transform:translateY(-50%);pointer-events:none;color:#8fa7c5}.v8-journey-line{position:absolute;top:5px;bottom:29px;width:1px;background:rgba(143,167,197,.23);overflow:hidden}.v8-journey-line i{position:absolute;inset:0 0 auto;width:1px;height:calc(100% * var(--v6-page-progress,0));background:linear-gradient(180deg,#b9ddff,#4c91ed);transform-origin:top}.v8-journey-dots{display:grid;gap:22px;padding:4px 0 2px}.v8-journey-dots i{width:7px;height:7px;border:1px solid rgba(143,167,197,.58);border-radius:50%;background:var(--v8-bg);box-shadow:0 0 0 3px rgba(7,11,20,.86);transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.v8-home[data-v6-step="1"] .v8-journey-dots i:nth-child(1),.v8-home[data-v6-step="2"] .v8-journey-dots i:nth-child(2),.v8-home[data-v6-step="3"] .v8-journey-dots i:nth-child(3),.v8-home[data-v6-step="4"] .v8-journey-dots i:nth-child(4){border-color:#b7dcff;background:#72b5ff;box-shadow:0 0 0 3px rgba(114,181,255,.16),0 0 16px rgba(114,181,255,.65)}
.v8-boot .v8-chapter-hero .v8-kicker,.v8-boot .v8-chapter-hero h1,.v8-boot .v8-chapter-hero>p,.v8-boot .v8-chapter-hero .v6-actions{animation:v8-boot-up .72s cubic-bezier(.2,.78,.22,1) both}.v8-boot .v8-chapter-hero h1{animation-delay:.05s}.v8-boot .v8-chapter-hero>p{animation-delay:.11s}.v8-boot .v8-chapter-hero .v6-actions{animation-delay:.17s}.v8-boot .v8-stage-slot{animation:v8-boot-stage .9s .08s cubic-bezier(.2,.78,.22,1) both}.v8-boot .v8-journey-rail{animation:v8-boot-rail .6s .3s cubic-bezier(.2,.78,.22,1) both}@keyframes v8-boot-up{from{opacity:0;transform:translate3d(0,24px,0);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}@keyframes v8-boot-stage{from{opacity:0;transform:translate3d(0,18px,0) scale(.97);filter:blur(10px)}to{opacity:1;transform:none;filter:none}}@keyframes v8-boot-rail{from{opacity:0;transform:translate3d(14px,-50%,0)}to{opacity:1;transform:translate3d(0,-50%,0)}}
@media(max-width:1100px){.v8-story{grid-template-columns:minmax(310px,.82fr) minmax(430px,1.18fr);gap:34px;padding-left:32px;padding-right:42px}.v8-stage-card{padding-left:26px;padding-right:24px}.v8-stage-card strong{font-size:39px}.v8-chapter h1{font-size:58px}.v8-chapter h2{font-size:48px}}
@media(max-width:760px){body[data-view="home"] .topbar{height:60px}.v8-story{display:block;padding:76px 20px 70px}.v8-stage-slot{position:sticky;top:75px;height:42svh;min-height:300px;margin:0 0 9svh;display:block}.v8-stage{height:100%;min-height:300px;border-radius:22px}.v8-stage-head{height:48px;padding:0 16px}.v8-stage-head>span:first-child{font-size:14px}.v8-stage-head>span:nth-child(2){font-size:9px}.v8-stage-body{grid-template-columns:37px 1fr;height:calc(100% - 98px);padding:17px 12px 0}.v8-stage-track{padding-top:28px}.v8-stage-track::before{top:31px;bottom:34px}.v8-stage-track>span{top:calc(31px + var(--v8-scroll-progress,0) * (100% - 65px))}.v8-stage-track>i{margin-bottom:35px;width:7px;height:7px}.v8-stage-card{padding:12px 13px 20px}.v8-stage-card small{font-size:8px}.v8-stage-card strong{margin-top:13px;font-size:26px}.v8-stage-card p{margin-top:13px;font-size:10px;line-height:1.6}.v8-stage-bars{gap:7px;margin-top:19px}.v8-stage-bars i{height:5px}.v8-stage-steps{margin-top:17px;gap:5px}.v8-stage-steps b{padding:9px 4px;font-size:9px}.v8-stage-grid{width:150px;gap:5px;margin-top:18px}.v8-stage-grid i{height:32px}.v8-stage-loop{margin-top:18px}.v8-stage-loop span{height:25px;font-size:8px}.v8-stage-foot{left:14px;right:14px;min-height:49px;font-size:9px}.v8-chapter{min-height:82svh;padding:45px 0;align-items:center}.v8-chapter-inner{max-width:none}.v8-kicker{font-size:9px}.v8-chapter h1{margin-top:17px;font-size:clamp(42px,11.5vw,53px)}.v8-chapter h2{margin-top:17px;font-size:clamp(36px,9vw,45px)}.v8-chapter p{margin-top:19px;font-size:12px;line-height:1.75}.v8-home .v6-actions{margin-top:25px}.v8-home .v6-button{min-height:44px;padding:0 15px;font-size:11px}.v8-scroll-cue{margin-top:47px}.v8-home .v6-outcome-list{margin-top:27px}.v8-home .v6-outcome{grid-template-columns:73px 1fr 16px;min-height:89px;gap:8px}.v8-home .v6-outcome>strong{font-size:17px}.v8-home .v6-outcome>p{margin:-18px 0 0;font-size:10px}.v8-home .v6-module-list{margin-top:25px}.v8-home .v6-module{min-height:115px;padding:13px 10px}.v8-home .v6-module>strong{font-size:14px}.v8-home .v6-module>p{font-size:9px}.v8-home .v6-loop{margin-top:28px}.v8-home .v6-loop li{min-height:102px;padding:14px 10px 12px 0}.v8-home .v6-loop li:nth-child(2n){padding-left:10px}.v8-home .v6-loop strong{margin-top:10px;font-size:17px}.v8-home .v6-loop p{font-size:9px}.v8-home .v6-finish{display:block;margin-top:24px}.v8-home .v6-finish>p{font-size:19px}.v8-home .v6-finish .v6-actions{margin-top:17px}.v8-journey-rail{right:10px;transform:translateY(-50%) scale(.82);transform-origin:right center}.v8-journey-rail>b{font-size:9px}}
@media(max-width:430px){.v8-stage-slot{height:38svh;margin-bottom:8svh}.v8-chapter{min-height:86svh}.v8-home .v6-actions{display:grid;grid-template-columns:1fr}.v8-home .v6-module-list{grid-template-columns:1fr}.v8-home .v6-finish .v6-actions{display:grid;grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.v8-home::before,.v8-home::after{background:var(--v8-bg)}.v8-stage,.v8-stage-card,.v8-chapter-inner{transition:none!important;filter:none!important;transform:none!important}.v8-boot .v8-chapter-hero .v8-kicker,.v8-boot .v8-chapter-hero h1,.v8-boot .v8-chapter-hero>p,.v8-boot .v8-chapter-hero .v6-actions,.v8-boot .v8-stage-slot,.v8-boot .v8-journey-rail{animation:none!important}.v8-home .v6-button,.v8-home .v6-outcome>svg{transition:none!important}}

/* On phones the same stage stays pinned while each chapter arrives directly beneath it. */
@media(max-width:760px){
  .v8-stage-slot{height:38svh;min-height:300px;margin:0 0 -38svh}
  .v8-chapter{min-height:100svh;padding:calc(38svh + 36px) 0 56px;align-items:flex-start}
}

/* Keep the closing chapter within one viewport so its heading and CTA travel together. */
.v8-chapter h2{color:transparent;background:linear-gradient(125deg,#f1f7ff 0%,#b8d9ff 48%,#6faeff 100%);-webkit-background-clip:text;background-clip:text}
.v8-home .v6-loop{margin-top:30px}
.v8-home .v6-loop li{min-height:96px;padding-top:15px;padding-bottom:14px}
.v8-home .v6-loop strong{margin-top:12px;font-size:18px}
.v8-home .v6-loop p{margin-top:6px;font-size:10px;line-height:1.55}
.v8-home .v6-finish{margin-top:24px;padding-top:18px;gap:18px}
.v8-home .v6-finish>p{max-width:190px;font-size:18px;line-height:1.45}
.v8-home .v6-finish .v6-actions{gap:7px}
.v8-home .v6-finish .v6-button{min-height:42px;padding:0 15px;font-size:11px}
.v8-chapter-capabilities .v8-chapter-inner,.v8-chapter-rhythm .v8-chapter-inner{transform:translate3d(0,calc(var(--v8-shift,0px) + 30px),0)}

/* Vocabulary workspace: give the active-recall flow more room and hierarchy. */
body[data-view="words"] .content{max-width:none;padding-left:32px;padding-right:32px}
body[data-view="words"] .v4-word-memory-page{max-width:1500px;margin:0 auto}
body[data-view="words"] .v4-head h1{font-size:38px}
body[data-view="words"] .v4-head p{font-size:15px}
body[data-view="words"] .v4-word-memory-shell{grid-template-columns:250px minmax(0,1fr) 280px;gap:16px;min-height:620px}
body[data-view="words"] .v4-memory-rail,body[data-view="words"] .v4-memory-queue{padding:21px}
body[data-view="words"] .v4-memory-kicker{font-size:11px}
body[data-view="words"] .v4-memory-rail h2{font-size:25px}
body[data-view="words"] .v4-memory-rail>p{font-size:13px}
body[data-view="words"] .v4-memory-progress{width:138px;height:138px;margin:25px auto 20px}
body[data-view="words"] .v4-memory-progress b{font-size:30px}
body[data-view="words"] .v4-memory-progress small{font-size:10px}
body[data-view="words"] .v4-memory-stats div{padding:11px}
body[data-view="words"] .v4-memory-stats span{font-size:11px}
body[data-view="words"] .v4-memory-stats b{font-size:21px}
body[data-view="words"] .v4-memory-rail h3{font-size:11px}
body[data-view="words"] .v4-memory-source{font-size:10px}
body[data-view="words"] .v4-memory-main{grid-template-rows:46px minmax(0,1fr) 46px}
body[data-view="words"] .v4-memory-modes{flex-basis:300px}
body[data-view="words"] .v4-memory-toolbar input{height:42px;font-size:14px}
body[data-view="words"] .v4-memory-toolbar .v4-segmented button{font-size:13px}
body[data-view="words"] .v4-memory-toolbar .icon-only{width:42px;height:42px}
body[data-view="words"] .v4-memory-study-card{padding:25px 34px}
body[data-view="words"] .v4-memory-card-top{font-size:12px}
body[data-view="words"] .v4-memory-card-top .v4-chip{font-size:11px}
body[data-view="words"] .v4-memory-term h2{font-size:56px}
body[data-view="words"] .v4-memory-term p{font-size:13px}
body[data-view="words"] .v4-memory-reveal{font-size:14px}
body[data-view="words"] .v4-memory-definition dt{font-size:12px}
body[data-view="words"] .v4-memory-definition dd{font-size:15px}
body[data-view="words"] .v4-memory-rating button{height:48px;font-size:14px}
body[data-view="words"] .v4-memory-nav span{font-size:12px}
body[data-view="words"] .v4-memory-queue-head h3{font-size:17px}
body[data-view="words"] .v4-memory-queue-head p{font-size:11px}
body[data-view="words"] .v4-memory-queue-head>b{font-size:27px}
body[data-view="words"] .v4-memory-queue-row{height:54px;grid-template-columns:27px minmax(0,1fr) 58px}
body[data-view="words"] .v4-memory-queue-row b{font-size:14px}
body[data-view="words"] .v4-memory-queue-row span{font-size:11px}
body[data-view="words"] .v4-memory-legend div{font-size:11px}
body[data-view="words"] .v4-memory-note{font-size:11px}
body[data-view="words"] .v4-word-item b{font-size:15px}
body[data-view="words"] .v4-word-item small{font-size:12px}
body[data-view="words"] .v4-word-title h2{font-size:38px}
body[data-view="words"] .v4-word-title p{font-size:13px}
body[data-view="words"] .v4-word-section h3{font-size:14px}
body[data-view="words"] .v4-word-section p,body[data-view="words"] .v4-word-section li{font-size:15px;line-height:1.85}

@media(max-width:1320px){
  body[data-view="words"] .v4-word-memory-shell{grid-template-columns:255px minmax(0,1fr)}
  body[data-view="words"] .v4-memory-queue{display:none}
}
@media(max-width:900px){
  body[data-view="words"] .content{padding-left:22px;padding-right:22px}
  body[data-view="words"] .v4-head h1{font-size:33px}
  body[data-view="words"] .v4-word-memory-shell{grid-template-columns:220px minmax(0,1fr);gap:14px}
  body[data-view="words"] .v4-memory-term h2{font-size:48px}
}
@media(max-width:700px){
  body[data-view="words"] .content{padding-left:16px;padding-right:16px}
  body[data-view="words"] .v4-head h1{font-size:30px}
  body[data-view="words"] .v4-head p{font-size:13px}
  body[data-view="words"] .v4-memory-rail,body[data-view="words"] .v4-memory-queue{padding:16px}
  body[data-view="words"] .v4-memory-rail h2{font-size:22px}
  body[data-view="words"] .v4-memory-rail>p{font-size:12px}
  body[data-view="words"] .v4-memory-progress{width:100px;height:100px}
  body[data-view="words"] .v4-memory-progress b{font-size:24px}
  body[data-view="words"] .v4-memory-stats span{font-size:10px}
  body[data-view="words"] .v4-memory-stats b{font-size:17px}
  body[data-view="words"] .v4-memory-toolbar input{height:42px;font-size:14px}
  body[data-view="words"] .v4-memory-study-card{min-height:560px;padding:20px}
  body[data-view="words"] .v4-memory-term h2{font-size:42px}
  body[data-view="words"] .v4-memory-term p{font-size:12px}
  body[data-view="words"] .v4-memory-definition dd{font-size:14px}
  body[data-view="words"] .v4-memory-rating button{font-size:13px}
  body[data-view="words"] .v4-word-title h2{font-size:32px}
  body[data-view="words"] .v4-word-section p,body[data-view="words"] .v4-word-section li{font-size:14px}
}

/* Exam relationship story: long-form comparison instead of a fixed tree table. */
@media(min-width:761px){
  .layout{align-items:start}
  .sidebar{position:sticky;top:0;max-height:100vh;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;z-index:45}
}
@media(min-width:761px) and (max-width:900px){
  .topbar{padding:0 20px!important;gap:14px!important}
  .brand{min-width:auto!important}
  .global-nav{display:none!important}
  .top-actions{margin-left:auto!important;min-width:auto!important}
  .layout{display:block!important;min-height:calc(100vh - 149px)!important}
  .sidebar{display:none!important}
  .content{padding:28px 22px 96px!important}
  .mobile-nav{position:fixed;display:grid!important;grid-template-columns:repeat(5,1fr);bottom:0;left:0;right:0;height:66px;background:rgba(255,255,255,.96);border-top:1px solid var(--line);z-index:60;backdrop-filter:blur(16px)}
  .mobile-nav button{font-size:11px;color:#777;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
  .mobile-nav button.active{color:var(--blue);font-weight:600}
  .mobile-nav .ico{width:19px;height:19px}
}
body[data-view="rules"] .content{max-width:none;padding:0 34px 80px;background:var(--v4-surface)}
body[data-view="rules"] .v4-page{max-width:1480px;margin:0 auto}
.v4-rules-story{padding-top:0!important;color:var(--v4-ink)}
.v4-rules-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(360px,.7fr);gap:54px;min-height:480px;padding:56px 4px 48px;border-bottom:1px solid var(--v4-line);align-items:center}
.v4-story-kicker{display:block;color:var(--v4-blue);font-family:var(--apple-font-mono);font-size:13px;font-weight:700;letter-spacing:.04em}
.v4-rules-hero h1{max-width:850px;margin:18px 0 20px;font-size:56px;line-height:1.06;letter-spacing:-.055em}
.v4-rules-hero>div>p{max-width:720px;margin:0;color:var(--v4-muted);font-size:17px;line-height:1.8}
.v4-rules-hero nav{display:flex;gap:24px;margin-top:32px;flex-wrap:wrap}.v4-rules-hero nav a{padding-bottom:5px;border-bottom:1px solid transparent;color:var(--v4-ink);font-size:13px}.v4-rules-hero nav a:hover{border-color:var(--v4-blue);color:var(--v4-blue)}
.v4-rules-hero>aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--v4-line);border-left:1px solid var(--v4-line)}
.v4-rules-hero>aside>div{min-height:145px;padding:25px;border-right:1px solid var(--v4-line);border-bottom:1px solid var(--v4-line);background:var(--v4-surface-2)}
.v4-rules-hero>aside b{display:block;font-size:35px;line-height:1;letter-spacing:-.04em}.v4-rules-hero>aside span{display:block;margin-top:12px;color:var(--v4-muted);font-size:12px;line-height:1.6}
.v4-story-section{padding:58px 4px;border-bottom:1px solid var(--v4-line);scroll-margin-top:18px}
.v4-story-heading{display:grid;grid-template-columns:168px minmax(0,720px) minmax(260px,1fr);gap:28px;align-items:start;margin-bottom:30px}
.v4-story-heading>span{display:inline-flex;align-items:center;min-height:32px;color:var(--v4-blue);font-family:var(--apple-font-mono);font-size:13px;font-weight:700;letter-spacing:.02em}.v4-story-heading h2{margin:0;font-size:34px;line-height:1.2;letter-spacing:-.04em}.v4-story-heading>p{margin:2px 0 0;color:var(--v4-muted);font-size:15px;line-height:1.75}.v4-story-heading>p b{color:var(--v4-ink)}
.v4-principle-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--v4-line);border-bottom:1px solid var(--v4-line)}
.v4-principle-grid article{min-height:210px;padding:27px 30px;border-right:1px solid var(--v4-line)}.v4-principle-grid article:last-child{border-right:0}.v4-principle-grid article>span{color:var(--v4-blue);font-family:var(--apple-font-mono);font-size:12px;font-weight:700}.v4-principle-grid h3{margin:34px 0 11px;font-size:18px}.v4-principle-grid p{margin:0;color:var(--v4-muted);font-size:13px;line-height:1.75}
.v4-compare-modules{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.v4-compare-module{min-width:0;min-height:128px;padding:17px;border:1px solid var(--v4-line);border-radius:10px;background:var(--v4-surface);color:var(--v4-ink);text-align:left;cursor:pointer;transition:border-color .16s,background .16s,transform .16s}.v4-compare-module:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--v4-blue) 40%,var(--v4-line))}.v4-compare-module.active{border-color:var(--v4-blue);background:color-mix(in srgb,var(--v4-blue) 6%,var(--v4-surface))}.v4-compare-module>span{display:block;color:var(--v4-blue);font-family:var(--apple-font-mono);font-size:12px;font-weight:700}.v4-compare-module b{display:block;margin-top:23px;font-size:16px}.v4-compare-module small{display:block;margin-top:7px;color:var(--v4-muted);font-size:12px;line-height:1.45}
.v4-relation-legend{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:24px;border-top:1px solid var(--v4-line)}.v4-relation-legend>div{padding:19px 22px;border-right:1px solid var(--v4-line)}.v4-relation-legend>div:last-child{border-right:0}.v4-relation-legend b{font-size:14px;color:var(--v4-blue)}.v4-relation-legend p{margin:7px 0 0;color:var(--v4-muted);font-size:12px;line-height:1.65}
.v4-exam-compare{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.v4-exam-compare article{min-height:196px;padding:25px;border:1px solid var(--v4-line);border-radius:12px;background:var(--v4-surface-2)}.v4-exam-compare article>span{display:inline-flex;padding:7px 10px;border-radius:6px;background:var(--v4-surface-3);color:var(--v4-blue);font-size:13px;font-weight:700}.v4-exam-compare article p{margin:30px 0 0;font-size:17px;line-height:1.72}.v4-exam-compare .intent{background:var(--v4-ink);color:var(--v4-surface)}.v4-exam-compare .intent>span{background:rgba(255,255,255,.14);color:#a9d6ff}
.v4-trap-band{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:30px;margin-top:26px;padding-top:26px;border-top:1px solid var(--v4-line)}.v4-trap-band>div{min-width:0}.v4-trap-band>div>span{display:block;margin-bottom:14px;color:var(--v4-ink);font-size:15px;font-weight:650}.v4-trap-band>div:first-child>p{display:grid;grid-template-columns:34px 1fr;gap:10px;margin:0;padding:13px 0;border-bottom:1px solid var(--v4-line-soft);font-size:14px;line-height:1.65}.v4-trap-band>div:first-child>p b{color:var(--v4-blue);font-family:var(--apple-font-mono);font-size:12px}
.v4-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.v4-link-card{padding:18px;border:1px solid var(--v4-line);border-radius:9px;background:var(--v4-surface)}.v4-link-card span{color:var(--v4-blue);font-size:12px;font-weight:700}.v4-link-card b{display:block;margin-top:12px;font-size:14px;line-height:1.45}.v4-link-card p{margin:8px 0 0!important;padding:0!important;border:0!important;color:var(--v4-muted);font-size:12px!important;line-height:1.65}
.v4-module-observation{min-width:0;padding:2px 0 0}.v4-module-observation>span{display:block;margin-bottom:14px;color:var(--v4-ink);font-size:15px;font-weight:650}.v4-module-observation p{margin:0;padding:13px 0;border-bottom:1px solid var(--v4-line-soft);color:var(--v4-muted);font-size:14px;line-height:1.7}.v4-module-observation small{display:block;margin-top:14px;color:var(--v4-blue);font-size:11px;font-family:var(--apple-font-mono)}
.v4-synthesis-layers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--v4-line);border-bottom:1px solid var(--v4-line)}.v4-synthesis-layer{display:grid;grid-template-columns:74px minmax(0,1fr);gap:14px;min-width:0;padding:22px 24px;border-right:1px solid var(--v4-line)}.v4-synthesis-layer:last-child{border-right:0}.v4-synthesis-layer>span{color:var(--v4-blue);font-family:var(--apple-font-mono);font-size:11px;font-weight:700;line-height:1.5}.v4-synthesis-layer b{display:block;font-size:15px;line-height:1.45}.v4-synthesis-layer p{margin:9px 0 0;color:var(--v4-muted);font-size:12px;line-height:1.7}.v4-synthesis-overview{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:12px;margin-top:20px}.v4-synthesis-panel{min-width:0;border:1px solid var(--v4-line);border-radius:8px;background:var(--v4-surface)}.v4-synthesis-panel>header,.v4-synthesis-relations>header{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:17px 18px;border-bottom:1px solid var(--v4-line);color:var(--v4-ink)}.v4-synthesis-panel>header span,.v4-synthesis-relations>header span{font-size:13px;font-weight:700}.v4-synthesis-panel>header small,.v4-synthesis-relations>header small{color:var(--v4-muted);font-size:10px;line-height:1.5;text-align:right}.v4-synthesis-rows,.v4-synthesis-actions{padding:0 18px}.v4-synthesis-row{display:grid;grid-template-columns:minmax(0,1fr) auto 104px;align-items:center;gap:12px;min-height:57px;border-bottom:1px solid var(--v4-line-soft)}.v4-synthesis-row:last-child,.v4-synthesis-action:last-child{border-bottom:0}.v4-synthesis-row>div{min-width:0}.v4-synthesis-row b,.v4-synthesis-action b{display:block;font-size:12px}.v4-synthesis-row small,.v4-synthesis-action small{display:block;margin-top:3px;color:var(--v4-muted);font-size:10px;line-height:1.45}.v4-synthesis-row>strong,.v4-synthesis-action>strong{font-size:16px;color:var(--v4-blue)}.v4-synthesis-row>span,.v4-synthesis-action>span{color:var(--v4-muted);font-size:10px;text-align:right}.v4-synthesis-row.is-audit{color:var(--v4-muted);background:rgba(255,149,0,.045)}.v4-synthesis-action{display:grid;grid-template-columns:minmax(0,1fr) auto 100px;align-items:center;gap:12px;min-height:68px;border-bottom:1px solid var(--v4-line-soft)}.v4-synthesis-action>div{min-width:0}.v4-synthesis-relations{margin-top:20px;border:1px solid var(--v4-line);border-radius:8px;background:var(--v4-surface)}.v4-synthesis-relations>div{padding:0 18px}.v4-synthesis-relation{display:grid;grid-template-columns:minmax(150px,220px) minmax(190px,260px) minmax(0,1fr);align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--v4-line-soft)}.v4-synthesis-relation:last-child{border-bottom:0}.v4-synthesis-relation>div{min-width:0}.v4-synthesis-relation b{display:block;font-size:12px}.v4-synthesis-relation small{display:block;margin-top:4px;color:var(--v4-blue);font-size:10px}.v4-synthesis-relation p{margin:0;color:var(--v4-ink);font-size:11px;line-height:1.6}.v4-synthesis-relation>span{color:var(--v4-muted);font-size:11px;line-height:1.6}.v4-synthesis-audit{margin:14px 0 0;padding:12px 14px;border-left:2px solid var(--v4-line);color:var(--v4-muted);font-size:11px;line-height:1.65}.v4-evidence-summary{display:inline-block;margin-top:10px;color:var(--v4-muted);font-size:11px;font-weight:400;line-height:1.7}.v4-topic-card em{display:block;margin-top:11px;color:var(--v4-blue);font-size:10px;font-style:normal;line-height:1.5}.v4-case-card>div span.is-kind{background:#edf5ff;color:#245c9e}.v4-evidence-proof{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 10px;margin-top:12px;padding:10px 12px;border-left:2px solid var(--v4-blue);background:var(--v4-surface-3)}.v4-evidence-proof>span{color:var(--v4-blue);font-size:10px;font-weight:700}.v4-evidence-proof p{grid-column:2;margin:0!important;color:var(--v4-muted);font-size:11px!important;line-height:1.6!important}
.v4-topic-section .v4-family-tabs{max-width:760px;margin-bottom:18px}.v4-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.v4-topic-card{position:relative;min-height:174px;padding:21px 46px 20px 21px;border:1px solid var(--v4-line);border-radius:10px;background:var(--v4-surface);color:var(--v4-ink);text-align:left;cursor:pointer}.v4-topic-card:hover,.v4-topic-card.active{border-color:var(--v4-blue);background:var(--v4-surface-3)}.v4-topic-card>span{color:var(--v4-blue);font-size:12px;font-weight:700}.v4-topic-card h3{margin:16px 0 9px;font-size:17px}.v4-topic-card p{margin:0;color:var(--v4-ink);font-size:12px;line-height:1.55}.v4-topic-card small{display:block;margin-top:10px;color:var(--v4-muted);font-size:11px;line-height:1.6}.v4-topic-card i{position:absolute;right:18px;top:20px;color:var(--v4-muted)}.v4-topic-card i svg{width:15px;height:15px;stroke:currentColor}
.v4-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v4-case-card{display:flex;min-height:250px;flex-direction:column;padding:21px;border:1px solid var(--v4-line);border-radius:10px;background:var(--v4-surface);color:var(--v4-ink);text-align:left;cursor:pointer}.v4-case-card:hover{border-color:var(--v4-blue);background:var(--v4-surface-3)}.v4-case-card>div{display:flex;gap:6px;flex-wrap:wrap}.v4-case-card>div span{padding:5px 7px;border-radius:4px;background:var(--v4-surface-3);color:var(--v4-blue);font-size:11px;font-weight:650}.v4-case-card>div span.is-verified{background:#e8f7ed;color:#16733b}.v4-case-card>div span.is-missing{background:#fff1ef;color:#c52d22}.v4-case-card>div span.is-inferred{background:#fff7df;color:#8a5b00}.v4-case-card h3{margin:17px 0 9px;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.v4-case-card p{display:-webkit-box;overflow:hidden;margin:0;color:var(--v4-muted);font-size:12px;line-height:1.72;-webkit-box-orient:vertical;-webkit-line-clamp:5}.v4-case-card footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:17px;color:var(--v4-blue);font-size:12px;font-weight:650}.v4-case-card footer svg{width:14px;height:14px;stroke:currentColor}.v4-evidence-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.v4-module-boundary{display:flex;align-items:flex-start;gap:10px;margin:-8px 0 22px;padding:13px 15px;border-left:3px solid var(--v4-red);background:rgba(255,59,48,.06);color:var(--v4-muted);font-size:12px;line-height:1.6}.v4-module-boundary b{flex:none;color:var(--v4-red)}
.v4-era-table{border-top:1px solid var(--v4-line)}.v4-era-row{display:grid;grid-template-columns:150px repeat(2,minmax(0,1fr));gap:24px;padding:22px 0;border-bottom:1px solid var(--v4-line)}.v4-era-row>b{font-size:15px}.v4-era-row span{color:var(--v4-blue);font-size:12px;font-weight:700}.v4-era-row p{margin:7px 0 0;color:var(--v4-muted);font-size:12px;line-height:1.7}
.v4-rules-boundary{display:flex;align-items:flex-start;gap:13px;padding:28px 4px}.v4-rules-boundary b{font-size:12px}.v4-rules-boundary p{margin:5px 0 0;color:var(--v4-muted);font-size:11px;line-height:1.65}
.v4-case-modal{display:grid;gap:12px}.v4-case-question,.v4-case-analysis>div,.v4-case-path,.v4-case-related,.v4-case-source{padding:18px;border:1px solid var(--v4-line);border-radius:9px;background:var(--v4-surface)}.v4-case-modal section>span,.v4-case-analysis span,.v4-case-source summary{color:var(--v4-blue);font-size:10px;font-weight:650}.v4-case-question p{margin:13px 0 0;font-size:14px;line-height:1.85;white-space:pre-wrap}.v4-evidence-source-line{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.v4-evidence-source-line b{font-size:13px}.v4-evidence-source-line small{color:var(--v4-muted);font-size:10px;text-align:right}.v4-evidence-figure{margin:14px 0 0;padding:10px;border:1px solid var(--v4-line-soft);background:var(--v4-surface-2);text-align:center}.v4-evidence-figure img{display:block;width:min(100%,620px);max-height:360px;margin:0 auto;object-fit:contain}.v4-evidence-figure figcaption{margin-top:7px;color:var(--v4-muted);font-size:10px}.v4-evidence-missing{display:grid;gap:4px;margin-top:14px;padding:12px;border:1px dashed #e6a39e;background:#fff8f7;color:var(--v4-red);font-size:11px;line-height:1.6}.v4-evidence-missing span{color:var(--v4-muted)}.v4-case-analysis{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.v4-case-analysis h4{margin:12px 0 6px;font-size:14px}.v4-case-analysis p,.v4-case-path li{margin:0;color:var(--v4-muted);font-size:12px;line-height:1.75}.v4-case-path ol{margin:13px 0 0;padding-left:20px}.v4-case-related>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.v4-case-related>div span{padding:7px 9px;border-radius:6px;background:var(--v4-surface-3);color:var(--v4-ink);font-size:11px}.v4-case-source summary{cursor:pointer}.v4-case-source p{color:var(--v4-muted);font-size:11px}.v4-case-source code{display:block;padding:9px;overflow-wrap:anywhere;background:var(--v4-surface-2);color:var(--v4-muted);font-family:var(--apple-font-mono);font-size:10px}

@media(max-width:1180px){.v4-rules-hero{grid-template-columns:1fr;gap:36px}.v4-rules-hero>aside{max-width:720px}.v4-story-heading{grid-template-columns:130px 1fr}.v4-story-heading>p{grid-column:2}.v4-compare-modules{grid-template-columns:repeat(4,1fr)}.v4-topic-grid,.v4-case-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body[data-view="rules"] .content{padding:0 16px 76px}.v4-rules-hero{min-height:0;padding:42px 0}.v4-rules-hero h1{font-size:39px}.v4-rules-hero>div>p{font-size:14px}.v4-rules-hero nav{gap:15px}.v4-rules-hero>aside>div{min-height:118px;padding:19px}.v4-rules-hero>aside b{font-size:28px}.v4-story-section{padding:48px 0}.v4-story-heading{display:block}.v4-story-heading h2{margin-top:12px;font-size:28px}.v4-story-heading>p{margin-top:12px}.v4-principle-grid,.v4-exam-compare,.v4-topic-grid,.v4-case-grid,.v4-case-analysis{grid-template-columns:1fr}.v4-principle-grid article{min-height:0;border-right:0;border-bottom:1px solid var(--v4-line)}.v4-principle-grid article:last-child{border-bottom:0}.v4-principle-grid h3{margin-top:18px}.v4-compare-modules{display:flex;overflow:auto;padding-bottom:5px}.v4-compare-module{min-width:150px}.v4-relation-legend{display:block}.v4-relation-legend>div{border-right:0;border-bottom:1px solid var(--v4-line)}.v4-trap-band{grid-template-columns:1fr;gap:25px}.v4-link-grid{grid-template-columns:1fr}.v4-exam-compare article{min-height:0}.v4-exam-compare article p{margin-top:24px}.v4-era-row{grid-template-columns:1fr;gap:12px}.v4-era-row>div{padding-left:16px;border-left:2px solid var(--v4-line)}.v4-case-card{min-height:220px}}
@media(max-width:760px){.v4-synthesis-layers,.v4-synthesis-overview{grid-template-columns:1fr}.v4-synthesis-layer{grid-template-columns:84px minmax(0,1fr);border-right:0;border-bottom:1px solid var(--v4-line)}.v4-synthesis-layer:last-child{border-bottom:0}.v4-synthesis-panel>header,.v4-synthesis-relations>header{display:block}.v4-synthesis-panel>header small,.v4-synthesis-relations>header small{display:block;margin-top:5px;text-align:left}.v4-synthesis-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 0}.v4-synthesis-row>span{grid-column:1/-1;text-align:left}.v4-synthesis-action{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:11px 0}.v4-synthesis-action>span{grid-column:1/-1;text-align:left}.v4-synthesis-relation{grid-template-columns:1fr;gap:6px}.v4-evidence-summary{display:block}.v4-evidence-proof{grid-template-columns:1fr}.v4-evidence-proof p{grid-column:1}.v4-evidence-source-line{align-items:flex-start;flex-direction:column;gap:5px}.v4-evidence-source-line small{text-align:left}}

/* Keep the essay workspace inside the viewport and let each column scroll independently. */
.v4-essay-shell{height:min(720px,max(360px,calc(100vh - 350px)));min-height:0;overflow:hidden}
.v4-essay-shell>.v4-essay-library,.v4-essay-shell>.v4-essay-article,.v4-essay-shell>.v4-essay-side{min-height:0;max-height:none}
.v4-essay-library,.v4-essay-article,.v4-essay-side{overscroll-behavior:contain}
.v4-essay-library{overflow-y:auto}.v4-essay-article,.v4-essay-side{overflow-y:auto}
@media(max-width:760px){.v4-essay-shell{height:auto;max-height:none;overflow:visible}.v4-essay-library{max-height:none;overflow-x:auto;overflow-y:hidden}.v4-essay-article,.v4-essay-side{max-height:none;overflow:visible}}
@media (min-width:761px) and (max-width:1050px){.v4-essay-shell{height:auto;overflow:visible}.v4-essay-shell>.v4-essay-library{height:min(720px,max(360px,calc(100vh - 350px)));max-height:none}.v4-essay-shell>.v4-essay-article{max-height:min(720px,max(360px,calc(100vh - 350px)))}}

/* Keep source controls visible while only the article list scrolls. */
.v4-essay-library{display:flex;flex-direction:column;overflow:hidden}
.v4-essay-source-panel{flex:none;padding:5px 2px 8px;border-bottom:1px solid var(--v4-line)}
.v4-essay-source-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 2px 5px;color:var(--v4-ink);font-size:11px}
.v4-essay-source-head small{color:var(--v4-muted);font-size:9px;white-space:nowrap}
.v4-essay-source-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
.v4-essay-source-button{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:1px 5px;min-width:0;padding:5px 7px;border:1px solid transparent;border-radius:6px;text-align:left;color:var(--v4-muted)}
.v4-essay-source-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
.v4-essay-source-button b{color:var(--v4-ink);font-size:11px;font-weight:650}
.v4-essay-source-button small{grid-column:1/-1;color:var(--v4-muted);font-size:8px;line-height:1.2}
.v4-essay-source-button:hover{background:var(--v4-surface-3);border-color:var(--v4-line)}
.v4-essay-source-button.active{background:var(--v4-surface-3);border-color:#a8cdf2;color:var(--v4-blue)}
.v4-essay-source-button.active b{color:var(--v4-blue)}
.v4-essay-list-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none;padding:11px 3px 7px;color:var(--v4-ink);font-size:11px}
.v4-essay-list-head small{color:var(--v4-muted);font-size:10px}
.v4-essay-list{min-height:0;overflow-y:auto;padding-right:2px}
.v4-essay-list .v4-empty{min-height:180px}
@media(max-width:760px){
  .v4-essay-library{display:block;overflow:hidden;padding:10px}
  .v4-essay-source-panel{padding-top:2px}
  .v4-essay-source-tabs{display:flex;overflow-x:auto;padding-bottom:2px}
  .v4-essay-source-button{min-width:116px;padding:5px 7px}
  .v4-essay-list{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding-bottom:3px}
  .v4-essay-list-item{flex:0 0 230px}
}

/* V9 immersive homepage: one continuous canvas, no framed product stage. */
.v9-home{--v9-bg:#050912;--v9-ink:#f4f7ff;--v9-muted:#91a2ba;--v9-blue:#72b7ff;--v9-violet:#a88bff;position:relative;isolation:isolate;min-height:100svh;overflow:clip;background:var(--v9-bg);color:var(--v9-ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC","Microsoft YaHei",sans-serif}
.v9-home::before{content:"";position:absolute;z-index:-3;inset:0;background:radial-gradient(66% 62% at 80% 28%,rgba(54,92,194,.24),transparent 68%),radial-gradient(60% 55% at 12% 78%,rgba(18,70,146,.18),transparent 72%),linear-gradient(180deg,#040711 0%,#071020 52%,#050912 100%);pointer-events:none}
.v9-home::after{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(115deg,transparent 0 44%,rgba(116,168,255,.07) 44.1%,transparent 44.35%),linear-gradient(115deg,transparent 0 68%,rgba(130,103,255,.06) 68.1%,transparent 68.35%);mask-image:linear-gradient(180deg,transparent,#000 16%,#000 82%,transparent);pointer-events:none}
body[data-view="home"] .brand-mark{border-color:var(--v9-blue);color:var(--v9-blue)}
body[data-view="home"] .main{background:var(--v9-bg)}
.v9-scene{position:relative;min-height:390svh}
.v9-sticky{position:sticky;top:72px;height:calc(100svh - 72px);min-height:600px;overflow:hidden;isolation:isolate}
.v9-atmosphere,.v9-grid,.v9-route,.v9-route-labels,.v9-copy-layer,.v9-chapter-index,.v9-scroll-cue{position:absolute;inset:0;pointer-events:none}
.v9-atmosphere{z-index:-1;overflow:hidden;opacity:.9}.v9-atmosphere i{position:absolute;display:block;border-radius:50%;filter:blur(1px);mix-blend-mode:screen}.v9-atmosphere i:nth-child(1){width:44vw;height:44vw;left:52%;top:-16%;background:radial-gradient(circle,rgba(88,112,255,.28),transparent 68%);animation:v9-drift 14s ease-in-out infinite alternate}.v9-atmosphere i:nth-child(2){width:34vw;height:34vw;left:-10%;bottom:-15%;background:radial-gradient(circle,rgba(54,145,255,.2),transparent 66%);animation:v9-drift 18s ease-in-out -5s infinite alternate-reverse}.v9-atmosphere i:nth-child(3){width:18vw;height:18vw;right:10%;bottom:16%;background:radial-gradient(circle,rgba(166,115,255,.18),transparent 68%);animation:v9-pulse 8s ease-in-out infinite}
@keyframes v9-drift{from{transform:translate3d(-2%,-1%,0) scale(.96)}to{transform:translate3d(3%,2%,0) scale(1.08)}}@keyframes v9-pulse{0%,100%{opacity:.35;transform:scale(.86)}50%{opacity:.9;transform:scale(1.1)}}
.v9-grid{z-index:-1;inset:52% -10% -20%;opacity:.22;background-image:linear-gradient(rgba(119,168,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(119,168,255,.16) 1px,transparent 1px);background-size:56px 56px;transform:perspective(820px) rotateX(63deg) translateY(calc(var(--v9-progress,0) * -12%));mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent)}
.v9-route{z-index:0;width:100%;height:100%;overflow:visible;opacity:.96;transform:translateY(calc(var(--v9-progress,0) * -2%));transition:transform .12s linear}.v9-route path{fill:none;vector-effect:non-scaling-stroke}.v9-route-shadow{stroke:rgba(28,67,138,.42);stroke-width:38;filter:blur(26px);opacity:.6}.v9-route-path{stroke:url(#v9-route-gradient);stroke:#77baff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px rgba(100,176,255,.95)) drop-shadow(0 0 22px rgba(85,121,255,.5));transition:stroke-dashoffset .05s linear}
.v9-route::after{content:""}
.v9-route-nodes circle{fill:#091326;stroke:#9ecbff;stroke-width:2;opacity:.48;transition:opacity .28s ease,fill .28s ease,filter .28s ease}.v9-route-nodes circle.is-active{fill:#9bcaff;opacity:1;filter:drop-shadow(0 0 8px #7ab8ff) drop-shadow(0 0 18px rgba(102,136,255,.8))}
.v9-route-labels{z-index:1;pointer-events:none}.v9-route-labels>span{position:absolute;display:flex;flex-direction:column;gap:5px;color:rgba(209,225,250,.64);font-size:13px;letter-spacing:.01em;transform:translate3d(0,8px,0);opacity:.35;transition:opacity .35s ease,transform .5s cubic-bezier(.2,.75,.25,1),color .35s ease}.v9-route-labels>span b{margin-right:7px;color:#7aaeff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.v9-route-labels>span small{color:rgba(143,164,194,.68);font-size:10px}.v9-route-labels>span.is-active{color:#f2f7ff;opacity:1;transform:translate3d(0,0,0)}.v9-route-labels>span:nth-child(1){left:14%;top:68%}.v9-route-labels>span:nth-child(2){left:31%;top:46%}.v9-route-labels>span:nth-child(3){left:63%;top:54%}.v9-route-labels>span:nth-child(4){right:12%;top:24%}
.v9-progress{position:fixed;z-index:80;right:24px;top:50%;display:flex;align-items:center;gap:11px;transform:translateY(-50%) rotate(-90deg);transform-origin:right center;color:#89a8cf;pointer-events:none}.v9-progress-track{display:block;width:132px;height:1px;background:rgba(144,176,219,.24);overflow:hidden}.v9-progress-track i{display:block;width:100%;height:100%;background:linear-gradient(90deg,#77bfff,#a286ff);transform-origin:left center;transform:scaleX(0);transition:transform .08s linear}.v9-progress>b{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;letter-spacing:.08em}
.v9-chapter-index{z-index:2;inset:auto auto 42px 5.2%;display:flex;align-items:baseline;gap:9px;color:rgba(188,213,244,.5);font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.v9-chapter-index span{color:#e9f3ff;font-size:38px;letter-spacing:-.08em}.v9-chapter-index i{font-size:17px;font-style:normal}.v9-chapter-index small{font-size:12px}
.v9-copy-layer{z-index:3;pointer-events:none}.v9-slide{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;width:min(680px,52vw);margin-left:clamp(52px,9vw,150px);padding:72px 0 110px;opacity:calc(.04 + var(--v9-presence,0) * .96);transform:translate3d(var(--v9-x,0px),calc(var(--v9-y,0px) - 1px),0) scale(var(--v9-scale,.96));filter:blur(var(--v9-blur,8px));transform-origin:left center;transition:opacity .16s linear,filter .16s linear;will-change:transform,opacity,filter;pointer-events:none}.v9-slide[aria-hidden="false"]{pointer-events:auto}.v9-slide-hero{width:min(720px,58vw)}.v9-overline{display:inline-flex;align-items:center;gap:10px;color:#82b9ff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;letter-spacing:.08em}.v9-overline i{display:block;width:26px;height:1px;background:rgba(130,185,255,.64)}.v9-slide h1,.v9-slide h2{margin:24px 0 0;color:#f3f7ff;font-size:clamp(54px,6.1vw,98px);font-weight:720;line-height:1.03;letter-spacing:-.075em;text-wrap:balance}.v9-slide h1 em,.v9-slide h2 em{font-style:normal;color:transparent;background:linear-gradient(122deg,#b8dcff 0%,#6aaeff 45%,#ae8cff 100%);-webkit-background-clip:text;background-clip:text}.v9-slide h2{font-size:clamp(46px,5vw,76px)}.v9-slide>p{max-width:590px;margin:29px 0 0;color:#9aabc1;font-size:16px;line-height:1.85;letter-spacing:.01em}.v9-actions{display:flex;align-items:center;gap:10px;margin-top:36px;flex-wrap:wrap}.v9-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:49px;padding:0 21px;border:1px solid rgba(172,201,238,.42);border-radius:26px;background:rgba(12,25,47,.36);color:#edf5ff;font-family:inherit;font-size:13px;font-weight:650;transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease}.v9-button svg,.v9-outcome svg,.v9-module svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.v9-button.primary{border-color:#6aafff;background:linear-gradient(110deg,#63b7ff,#9484ff);color:#071120;box-shadow:0 12px 34px rgba(81,138,244,.3)}.v9-button.primary:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(97,139,255,.44)}.v9-button.ghost:hover{transform:translateY(-2px);border-color:#b6d5ff;background:rgba(67,111,184,.22)}
.v9-outcome-list{margin-top:36px;border-top:1px solid rgba(154,184,221,.24)}.v9-outcome{position:relative;display:grid;grid-template-columns:120px 1fr 18px;grid-template-rows:auto auto;gap:8px 17px;width:100%;min-height:94px;padding:19px 0;border:0;border-bottom:1px solid rgba(154,184,221,.22);background:transparent;color:#edf4ff;text-align:left}.v9-outcome>span,.v9-module>span{color:#80baff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.v9-outcome>strong{font-size:23px;font-weight:650;letter-spacing:-.03em}.v9-outcome>p{grid-column:2;margin:0;color:#8294ad;font-size:12px;line-height:1.55}.v9-outcome>svg{grid-column:3;grid-row:1;transition:transform .25s ease}.v9-outcome:hover>svg,.v9-module:hover>svg{transform:translateX(5px)}
.v9-module-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:31px;border-top:1px solid rgba(154,184,221,.24);border-left:1px solid rgba(154,184,221,.2)}.v9-module{position:relative;display:grid;grid-template-columns:34px 1fr 16px;grid-template-rows:auto auto auto;gap:7px 12px;min-height:135px;padding:18px;border-right:1px solid rgba(154,184,221,.2);border-bottom:1px solid rgba(154,184,221,.2);background:rgba(10,26,49,.18);color:#edf4ff;text-align:left;transition:background .25s ease}.v9-module:hover{background:rgba(57,108,184,.18)}.v9-module>strong{font-size:17px;font-weight:650}.v9-module>p{color:#8396b0;font-size:11px;line-height:1.55}.v9-module>small{grid-column:2;color:#5e7391;font-size:10px}.v9-module>svg{grid-column:3;grid-row:1;color:#80baff;transition:transform .25s ease}.v9-loop{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:42px 0 0;padding:0;border-top:1px solid rgba(154,184,221,.25);list-style:none}.v9-loop li{min-height:148px;padding:20px 18px 16px 0;border-right:1px solid rgba(154,184,221,.2)}.v9-loop li+li{padding-left:18px}.v9-loop li:last-child{border-right:0}.v9-loop span{color:#80baff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.v9-loop strong{display:block;margin-top:25px;color:#f2f7ff;font-size:21px}.v9-loop p{margin-top:9px;color:#8496ad;font-size:11px;line-height:1.62}.v9-finish{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:30px;padding-top:21px;border-top:1px solid rgba(154,184,221,.25)}.v9-finish>p{margin:0;color:#eef5ff;font-size:21px;font-weight:650}.v9-finish .v9-actions{margin:0}.v9-scroll-cue{z-index:4;inset:auto auto 40px 50%;display:flex;align-items:center;gap:12px;color:#85a7ce;font-size:11px;transform:translateX(-50%);letter-spacing:.02em}.v9-scroll-cue i{display:block;width:34px;height:1px;background:linear-gradient(90deg,#80baff,transparent);animation:v9-cue 1.8s ease-in-out infinite}@keyframes v9-cue{0%,100%{opacity:.3;transform:scaleX(.6);transform-origin:left}50%{opacity:1;transform:scaleX(1);transform-origin:left}}
.v9-boot .v9-slide-hero{animation:v9-hero-in .8s cubic-bezier(.22,.72,.2,1) both}.v9-boot .v9-route{animation:v9-route-in 1s cubic-bezier(.22,.72,.2,1) .08s both}.v9-boot .v9-route-labels{animation:v9-label-in 1.2s ease .2s both}.v9-boot .v9-scroll-cue{animation:v9-cue-in .9s ease .6s both}@keyframes v9-hero-in{from{opacity:0;transform:translate3d(-22px,10px,0) scale(.97);filter:blur(10px)}to{opacity:1;transform:none;filter:none}}@keyframes v9-route-in{from{opacity:0;transform:translateY(3%);filter:blur(5px)}to{opacity:.96;transform:none;filter:none}}@keyframes v9-label-in{from{opacity:0}to{opacity:1}}@keyframes v9-cue-in{from{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:1100px){.v9-slide{margin-left:7vw;width:min(610px,56vw)}.v9-slide h1{font-size:clamp(50px,6vw,76px)}.v9-slide h2{font-size:clamp(43px,5.4vw,63px)}.v9-route-labels>span:nth-child(4){right:8%}.v9-loop{grid-template-columns:repeat(2,minmax(0,1fr))}.v9-loop li{min-height:120px;border-bottom:1px solid rgba(154,184,221,.2)}.v9-loop li:nth-child(2){border-right:0}.v9-loop li:nth-child(3){padding-left:0}.v9-loop li:nth-child(4){border-right:0;padding-left:18px}}
@media(max-width:760px){.v9-scene{min-height:460svh}.v9-sticky{top:60px;height:calc(100svh - 60px);min-height:620px}.v9-progress{right:10px;top:auto;bottom:70px;transform:rotate(-90deg) scale(.82);transform-origin:right bottom}.v9-route{height:100%;transform:translateY(calc(var(--v9-progress,0) * -1%)) scale(1.14);transform-origin:center}.v9-route-labels>span{font-size:10px}.v9-route-labels>span small{font-size:8px}.v9-route-labels>span:nth-child(1){left:7%;top:70%}.v9-route-labels>span:nth-child(2){left:25%;top:45%}.v9-route-labels>span:nth-child(3){left:58%;top:56%}.v9-route-labels>span:nth-child(4){right:4%;top:20%}.v9-slide,.v9-slide-hero{inset:0 20px auto;margin:0;width:auto;min-height:100%;justify-content:flex-end;padding:0 0 96px;transform-origin:left bottom}.v9-slide h1{font-size:clamp(43px,12.3vw,56px);line-height:1.06}.v9-slide h2{font-size:clamp(34px,9.4vw,45px);line-height:1.1}.v9-slide>p{margin-top:18px;font-size:12px;line-height:1.7;max-width:100%}.v9-overline{font-size:9px}.v9-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:22px;gap:7px}.v9-button{min-height:44px;padding:0 12px;font-size:11px}.v9-outcome-list{margin-top:24px}.v9-outcome{grid-template-columns:73px 1fr 15px;min-height:76px;padding:14px 0;gap:6px 9px}.v9-outcome>strong{font-size:16px}.v9-outcome>p{font-size:10px}.v9-module-list{grid-template-columns:1fr;margin-top:22px}.v9-module{grid-template-columns:29px 1fr 15px;min-height:73px;padding:12px 10px;gap:5px 9px}.v9-module>strong{font-size:14px}.v9-module>p{font-size:9px}.v9-module>small{display:none}.v9-loop{margin-top:24px}.v9-loop li{min-height:92px;padding:13px 10px 10px 0}.v9-loop li+li{padding-left:10px}.v9-loop strong{margin-top:11px;font-size:16px}.v9-loop p{margin-top:5px;font-size:9px}.v9-finish{display:block;margin-top:20px;padding-top:17px}.v9-finish>p{font-size:18px}.v9-finish .v9-actions{margin-top:15px}.v9-chapter-index{left:20px;bottom:35px}.v9-chapter-index span{font-size:30px}.v9-scroll-cue{bottom:28px;font-size:9px}.v9-grid{inset:55% -45% -14%;background-size:40px 40px;opacity:.15}}
@media(max-width:430px){.v9-sticky{min-height:590px}.v9-slide,.v9-slide-hero{inset:0 16px auto;padding-bottom:82px}.v9-slide h1{font-size:clamp(39px,11.7vw,49px)}.v9-slide h2{font-size:clamp(31px,9.2vw,39px)}.v9-actions{grid-template-columns:1fr}.v9-route-labels>span{transform:scale(.9);transform-origin:left center}.v9-route-labels>span:nth-child(4){transform-origin:right center}}
@media(max-width:760px){.v9-route-labels>span:not(.is-active){opacity:.08}.v9-route-labels>span.is-active{opacity:.94}}
@media(max-width:760px){.v9-module{min-height:59px;padding:8px 10px;gap:3px 8px}.v9-module>strong{font-size:13px}.v9-module>p{font-size:8px;line-height:1.3}}
@media(prefers-reduced-motion:reduce){.v9-atmosphere i,.v9-boot .v9-slide-hero,.v9-boot .v9-route,.v9-boot .v9-route-labels,.v9-boot .v9-scroll-cue,.v9-scroll-cue i{animation:none!important}.v9-slide,.v9-route,.v9-route-path,.v9-button{transition:none!important}.v9-slide{filter:none!important;transform:none!important}.v9-route{transform:none!important}.v9-progress-track i{transition:none!important}}
@media(min-width:761px){.v9-route-labels>span:nth-child(1){left:44%;top:73%}.v9-route-labels>span:nth-child(2){left:57%;top:45%}.v9-route-labels>span:nth-child(3){left:73%;top:55%}.v9-route-labels>span:nth-child(4){right:10%;top:24%}}
.v9-slide{opacity:calc(var(--v9-opacity,0) * .97)}
@media(min-width:761px){.v9-module{min-height:80px;padding:10px 14px;gap:4px 10px}.v9-module>strong{font-size:14px}.v9-module>p{font-size:9px;line-height:1.4}.v9-module>small{font-size:8px}}
@media(min-width:1101px){.v9-module-list{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* V10 route alignment: the guide, progress stroke, nodes and labels share one
   right-side coordinate system so the path remains visible before scrolling. */
.v9-route{transform:translateY(calc(var(--v9-progress,0) * -1.2%));transition:transform .18s linear}
.v9-route-labels{transform:translateY(calc(var(--v9-progress,0) * -1.2%));transition:transform .18s linear}
.v9-route-shadow{stroke:rgba(47,103,204,.46);stroke-width:48;filter:blur(30px);opacity:.72}
.v9-route-guide{stroke:rgba(127,184,255,.42);stroke-width:0;stroke-linecap:round;stroke-linejoin:round;opacity:0;filter:none;pointer-events:none}
.v9-route path.v9-route-progress{stroke:url(#v9-route-gradient);stroke-width:2.15;vector-effect:none;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 7px rgba(100,176,255,.95)) drop-shadow(0 0 20px rgba(85,121,255,.58));transition:stroke-dasharray .08s linear,stroke-dashoffset .08s linear}
.v9-route-labels>span{gap:4px;transform:translate3d(14px,-50%,0);white-space:nowrap;text-shadow:0 2px 14px rgba(2,8,20,.9)}
.v9-route-labels>span strong{display:flex;align-items:baseline;gap:8px;color:rgba(220,234,255,.78);font-size:15px;font-weight:650;line-height:1.15}
.v9-route-labels>span b{margin:0;color:#7cb5ff;font-size:11px;letter-spacing:.08em}
.v9-route-labels>span small{padding-left:27px;color:rgba(143,164,194,.72);font-size:10px;line-height:1.25}
.v9-route-labels>span.is-active{transform:translate3d(14px,calc(-50% - 2px),0)}
.v9-route-labels>span:nth-child(1){left:57.5%;top:58.3%}
.v9-route-labels>span:nth-child(2){left:65.4%;top:41.7%}
.v9-route-labels>span:nth-child(3){left:75%;top:26.4%}
.v9-route-labels>span:nth-child(4){left:auto;right:calc(4.17% + 14px);top:18.8%;align-items:flex-end;text-align:right;transform:translate3d(0,-50%,0)}
.v9-route-labels>span:nth-child(4) strong{justify-content:flex-end}
.v9-route-labels>span:nth-child(4) small{padding-left:0}
.v9-route-labels>span:nth-child(4).is-active{transform:translate3d(0,calc(-50% - 2px),0)}
.v9-route-labels>span{opacity:.46}
.v9-route-labels>span.is-active{opacity:1}
.v9-finish .v9-actions{position:relative;z-index:2}
.v9-button.ghost{background:rgba(5,9,18,.78);backdrop-filter:blur(10px)}
.v9-slide-hero>p{max-width:620px}
.v9-quote{display:block;margin-bottom:9px;color:#b9d7ff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;letter-spacing:.08em}
@media(min-width:761px){.v9-slide-hero{width:min(660px,47vw)}.v9-slide h1{font-size:clamp(54px,5.8vw,92px)}}
@media(max-width:760px){
  .v9-route{transform:translateY(calc(var(--v9-progress,0) * -1%));opacity:.82}
  .v9-route-labels{transform:translateY(calc(var(--v9-progress,0) * -1%));transition:transform .18s linear}
  .v9-route-shadow{stroke-width:42;opacity:.55}
  .v9-route-guide{stroke-width:0;opacity:0;filter:none;pointer-events:none}
  .v9-route path.v9-route-progress{stroke-width:2.1;vector-effect:none}
  .v9-route-labels>span{font-size:9px;transform:translate3d(8px,-50%,0);text-shadow:0 2px 10px rgba(2,8,20,.95)}
  .v9-route-labels>span strong{gap:5px;font-size:11px}
  .v9-route-labels>span b{font-size:9px}
  .v9-route-labels>span small{padding-left:20px;font-size:8px}
  .v9-route-labels>span.is-active{transform:translate3d(8px,calc(-50% - 1px),0)}
  .v9-route-labels>span:nth-child(1){left:57.5%;top:58.3%}
  .v9-route-labels>span:nth-child(2){left:65.4%;top:41.7%}
  .v9-route-labels>span:nth-child(3){left:75%;top:26.4%}
  .v9-route-labels>span:nth-child(4){right:calc(4.17% + 8px);top:18.8%;transform:translate3d(0,-50%,0)}
  .v9-route-labels>span:nth-child(4).is-active{transform:translate3d(0,calc(-50% - 1px),0)}
  .v9-route-labels>span:not(.is-active){opacity:.08}
  .v9-route-labels>span.is-active{opacity:.94}
}

/* Poetic chapter titles use a quieter serif voice; the chapter marker stays
   larger and readable at a glance on the immersive canvas. */
.v9-slide h1,.v9-slide h2{font-family:"Noto Serif SC","Source Han Serif SC","Songti SC","STSong","SimSun",serif;font-weight:800;line-height:1.08;letter-spacing:-.055em;text-shadow:0 10px 36px rgba(2,7,18,.22)}
.v9-overline{gap:13px;color:#91c4ff;font-size:14px;font-weight:600;line-height:1.3;letter-spacing:.1em;text-shadow:0 3px 16px rgba(62,132,240,.28)}
.v9-overline i{width:32px;background:rgba(145,196,255,.72)}
@media(max-width:760px){.v9-overline{font-size:11px;gap:10px}.v9-overline i{width:28px}}

/* 2026-09-19 typography system
   The workbench is read for long sessions on dense, high-resolution screens.
   Keep informational copy at 12px or above and use weight/space, not tiny type,
   to express hierarchy. */
:root{
  --apple-font-sans:"Segoe UI Variable Text","Segoe UI","Microsoft YaHei UI","PingFang SC","Noto Sans CJK SC",sans-serif;
  --apple-font-data:"Segoe UI Variable Text","Segoe UI",ui-monospace,"Microsoft YaHei UI",sans-serif;
  --type-caption:12px;
  --type-meta:13px;
  --type-ui:14px;
  --type-body:15px;
  --type-lead:17px;
  --v4-muted:#5f6066;
}
[data-theme="dark"]{--v4-muted:#b1b1b7}
html,body,button,input,textarea,select{
  font-family:var(--apple-font-sans);
  font-variant-numeric:tabular-nums;
  text-rendering:optimizeLegibility;
}
body{font-size:var(--type-body);line-height:1.6}
body *{letter-spacing:0!important}

/* Shared application chrome and legacy-compatible views. */
.side-label,.profile small,.task-tag,.timeline-labels small,.module-count,.module-pct,
.detail-score small,.focus-kicker,.focus-fullscreen-foot{font-size:var(--type-caption)}
.panel-head button,.task-count,.timeline-labels div,.timeline-footer,.module-card p,
.module-card-foot,.list-row-main small,.tiny-btn,.search-result{font-size:var(--type-meta)}
.subtle,.task-row,.module-name,.list-row-main strong,.segmented button,
.outline-btn,.primary-btn,.ghost-btn{font-size:var(--type-ui)}
.panel-head h2,.panel-head h3{font-size:18px;line-height:1.35}
.side-nav button{font-size:15px;font-weight:500}
.profile small,.subtle,.list-row-main small{line-height:1.65}
.tiny-btn{min-height:34px;padding-inline:12px}

/* All current workbench pages inherit a readable body rhythm. */
.v4-page,.apple-parity-view{font-size:var(--type-body);line-height:1.65}
.v4-page button,.v4-page input,.v4-page textarea,.v4-page select,
.apple-parity-view button,.apple-parity-view input,.apple-parity-view textarea,.apple-parity-view select{
  font-size:var(--type-ui);
  line-height:1.4;
}
.v4-page small,.v4-page label,.apple-parity-view small{font-size:var(--type-caption)!important;line-height:1.55}
.apple-parity-view p,.apple-parity-view li{font-size:var(--type-ui);line-height:1.75}
.v4-head p{font-size:var(--type-ui)}
.v4-btn{min-height:40px;font-size:var(--type-ui)}
.v4-btn.small{min-height:34px;font-size:var(--type-caption)}
.v4-link{font-size:var(--type-meta)}
.v4-panel-head{min-height:58px}
.v4-panel-head h2,.v4-panel-head h3{font-size:16px;line-height:1.4}
.v4-panel-head small{font-size:var(--type-caption);line-height:1.5}
.v4-kpi{min-height:112px}
.v4-kpi span{font-size:var(--type-meta)}
.v4-kpi small{font-size:var(--type-caption);line-height:1.5}
.v4-empty p{font-size:var(--type-ui)}
.v4-chip{min-height:26px;padding-inline:9px;font-size:var(--type-caption)}
.v4-segmented button{min-height:34px;font-size:var(--type-meta)}
.v4-mini-source p,.v4-task-row small{font-size:var(--type-caption)}
.v4-task-row{min-height:68px}.v4-task-row b{font-size:var(--type-ui)}

/* Rules, wrong-answer tables, evidence, and other dense reading surfaces. */
.v4-rule-proof{font-size:var(--type-meta);line-height:1.65}
.v4-rule-module,.v4-family-node{font-size:var(--type-meta)}
.v4-rule-module span:last-child,.v4-rule-path{font-size:var(--type-caption)}
.v4-family-tabs button{font-size:var(--type-meta)}
.v4-family-tabs small,.v4-rule-focus-head span,.v4-rule-focus-head p,
.v4-point-columns,.v4-point-index,.v4-point-row strong{font-size:var(--type-caption)}
.v4-point-row{min-height:76px}
.v4-point-row b{font-size:var(--type-ui);line-height:1.45}
.v4-point-row span,.v4-point-row em{font-size:var(--type-caption);line-height:1.65}
.v4-rule-inspector>p,.v4-rule-detail h4{font-size:var(--type-meta)}
.v4-rule-detail p{font-size:var(--type-ui)}
.v4-evidence b,.v4-evidence p{font-size:var(--type-caption);line-height:1.65}
.v4-wrong-controls input,.v4-wrong-controls select{height:40px;font-size:var(--type-meta)}
.v4-wrong-row{min-height:82px;font-size:var(--type-meta)}
.v4-wrong-row.head{min-height:42px;font-size:var(--type-caption);font-weight:600}
.v4-wrong-placeholder{font-size:var(--type-caption)}
.v4-wrong-title b{font-size:var(--type-ui)}
.v4-wrong-title p,.v4-pagination{font-size:var(--type-caption);line-height:1.55}
.v4-day small,.v4-day em,.v4-bar-col small,.v4-module-stat,.v4-donut{font-size:var(--type-caption)}

/* Exam-insight story: this is the densest page and needs its own hierarchy. */
.v4-story-heading>span,.v4-story-kicker{font-size:var(--type-meta)}
.v4-story-heading>p{font-size:16px;line-height:1.8}
.v4-principle-grid article>span,.v4-compare-module>span{font-size:var(--type-meta)}
.v4-principle-grid p,.v4-compare-module small{font-size:var(--type-ui)}
.v4-module-observation small{font-size:var(--type-caption);line-height:1.6}
.v4-synthesis-layer{grid-template-columns:82px minmax(0,1fr);padding:25px 26px}
.v4-synthesis-layer>span{font-size:var(--type-caption)}
.v4-synthesis-layer b{font-size:16px}
.v4-synthesis-layer p{font-size:var(--type-ui);line-height:1.75}
.v4-synthesis-panel>header,.v4-synthesis-relations>header{padding:19px 20px}
.v4-synthesis-panel>header span,.v4-synthesis-relations>header span{font-size:15px}
.v4-synthesis-panel>header small,.v4-synthesis-relations>header small{font-size:var(--type-caption)}
.v4-synthesis-rows,.v4-synthesis-actions,.v4-synthesis-relations>div{padding-inline:20px}
.v4-synthesis-row{grid-template-columns:minmax(0,1fr) auto 118px;min-height:68px;gap:14px}
.v4-synthesis-action{grid-template-columns:minmax(0,1fr) auto 112px;min-height:82px;gap:14px}
.v4-synthesis-row b,.v4-synthesis-action b,.v4-synthesis-relation b{font-size:var(--type-ui);line-height:1.45}
.v4-synthesis-row small,.v4-synthesis-action small,.v4-synthesis-relation small{font-size:var(--type-caption);line-height:1.6}
.v4-synthesis-row>strong,.v4-synthesis-action>strong{font-size:18px;font-weight:700}
.v4-synthesis-row>span,.v4-synthesis-action>span{font-size:var(--type-caption);line-height:1.5}
.v4-synthesis-relation{grid-template-columns:minmax(180px,240px) minmax(220px,280px) minmax(0,1fr);gap:20px;padding:18px 0}
.v4-synthesis-relation p,.v4-synthesis-relation>span{font-size:var(--type-meta);line-height:1.7}
.v4-synthesis-audit,.v4-evidence-summary,.v4-rules-boundary p{font-size:var(--type-caption);line-height:1.75}
.v4-topic-card>span,.v4-topic-card p,.v4-topic-card small,.v4-topic-card em,
.v4-case-card>div span,.v4-case-card p,.v4-case-card footer{font-size:var(--type-meta);line-height:1.65}
.v4-topic-card h3{font-size:18px}.v4-case-card h3{font-size:15px}
.v4-case-modal section>span,.v4-case-analysis span,.v4-case-source summary,
.v4-evidence-source-line small,.v4-evidence-figure figcaption{font-size:var(--type-caption)}
.v4-evidence-proof>span,.v4-evidence-proof p{font-size:var(--type-caption)!important;line-height:1.7!important}
.v4-case-analysis p,.v4-case-path li,.v4-case-related>div span,.v4-case-source p{font-size:var(--type-meta)}
.v4-case-source code{font-size:var(--type-caption);line-height:1.6}

/* Compact functional views are defined after the shared stylesheet in the
   standalone HTML, so these local minimums intentionally take precedence. */
.apple-board-filter button{font-size:var(--type-meta)!important}
.apple-parity-view .subtle{font-size:var(--type-ui)!important}
.apple-board-tab-foot,.apple-rail-stat span,.apple-recent-row small,
.apple-drawer-head p,.apple-drawer-foot,.apple-drawer-pages button,
.apple-drawer-size{font-size:var(--type-caption)!important}
.apple-rail-actions button,.apple-drawer-search{font-size:var(--type-meta)!important}
.apple-drawer-row{font-size:var(--type-meta)!important}
.apple-drawer-row.header,.apple-drawer-chip{font-size:var(--type-caption)!important}
.apple-drawer-title{font-size:var(--type-ui)!important}
.apple-knowledge-detail{font-size:var(--type-ui)!important}
.apple-knowledge-detail .detail-meta{font-size:var(--type-caption)!important}
.account-status,.account-form label,.user-metrics span,.achievement-grid span{font-size:var(--type-caption)!important}
.v4-week>div[style*="font-size:10px"],.v4-time span,.v4-chart>p{font-size:var(--type-caption)!important;line-height:1.65}

/* Reading, word-memory, and essay views. */
.apple-markdown,.apple-word-section p,.apple-word-section li,.apple-essay-paper pre,
.essay-article p,.apple-mock-question,.apple-mock-option{font-size:var(--type-body);line-height:1.85}
.apple-word-row b,.apple-word-section h3,.essay-library .list-row strong{font-size:var(--type-ui)}
.apple-word-row small,.apple-word-row em,.apple-word-pager,.apple-essay-badge,
.essay-library .list-row small{font-size:var(--type-caption)}
.v4-essay-source-head,.v4-essay-source-button span,.v4-essay-source-button b,
.v4-essay-list-head{font-size:var(--type-meta)}
.v4-essay-source-head small,.v4-essay-source-button small,.v4-essay-list-head small{font-size:var(--type-caption);line-height:1.45}
body[data-view="words"] .v4-memory-kicker,
body[data-view="words"] .v4-memory-progress small,
body[data-view="words"] .v4-memory-stats span,
body[data-view="words"] .v4-memory-rail h3,
body[data-view="words"] .v4-memory-source,
body[data-view="words"] .v4-memory-card-top .v4-chip,
body[data-view="words"] .v4-memory-queue-head p,
body[data-view="words"] .v4-memory-queue-row span,
body[data-view="words"] .v4-memory-queue-row i,
body[data-view="words"] .v4-memory-legend div,
body[data-view="words"] .v4-memory-note{font-size:var(--type-caption)}

/* Immersive home keeps its visual scale, but no explanatory copy is microscopic. */
.v9-home{font-family:var(--apple-font-sans)}
.v9-route-labels>span b,.v9-route-labels>span small,.v9-progress>b,
.v9-outcome>span,.v9-module>span,.v9-scroll-cue{font-size:var(--type-caption)}
.v9-route-labels>span strong{font-size:15px}
.v9-outcome>p,.v9-module>p,.v9-module>small,.v9-loop p{font-size:var(--type-meta);line-height:1.65}
.v9-button{font-size:var(--type-ui)}

@media(max-width:760px){
  :root{--type-caption:12px;--type-meta:13px;--type-ui:14px;--type-body:15px}
  .mobile-nav button{font-size:var(--type-caption)}
  .v4-story-heading>p{font-size:15px}
  .v4-synthesis-layer{grid-template-columns:74px minmax(0,1fr);padding:20px 16px}
  .v4-synthesis-row,.v4-synthesis-action{grid-template-columns:minmax(0,1fr) auto;min-height:0;padding:15px 0}
  .v4-synthesis-row>span,.v4-synthesis-action>span{grid-column:1/-1;text-align:left}
  .v4-synthesis-relation{grid-template-columns:1fr;gap:8px;padding:17px 0}
  .v9-slide>p{font-size:var(--type-ui)}
  .v9-button{font-size:var(--type-meta)}
  .v9-outcome>p,.v9-module>p,.v9-loop p{font-size:var(--type-caption);line-height:1.5}
  .v9-route-labels>span strong{font-size:12px}
  .v9-route-labels>span b,.v9-route-labels>span small,.v9-progress>b,.v9-scroll-cue{font-size:11px}
}

/* Rules workspace final cascade. */
body[data-view="rules"] .content{padding:22px 26px 84px;background:#f5f5f7}body[data-view="rules"] .v4-page{max-width:1380px}.v4-rules-story{display:grid;gap:18px}
.v4-rules-hero{min-height:0;padding:34px 36px;border:1px solid #dedfe3;border-radius:8px;background:#fff;box-shadow:0 10px 30px rgba(28,28,30,.05)}.v4-rules-hero h1{max-width:720px;margin:13px 0 14px;font-size:43px;line-height:1.08}.v4-rules-hero>div>p{max-width:680px;font-size:15px;line-height:1.7}.v4-rules-hero nav{gap:9px;margin-top:24px}.v4-rules-hero nav a{min-height:34px;padding:8px 11px;border:1px solid #dedfe3;border-radius:6px;background:#fff;font-size:12px}.v4-rules-hero>aside{gap:8px;border:0}.v4-rules-hero>aside>div{min-height:105px;padding:18px;border:0;border-radius:7px;background:#f5f5f7}.v4-rules-hero>aside>div:nth-child(2){background:#edf7f1}.v4-rules-hero>aside>div:nth-child(3){background:#fff5e8}.v4-rules-hero>aside>div:nth-child(4){background:#eef4fb}.v4-rules-hero>aside b{font-size:29px}
.v4-story-section{padding:34px 4px;border:0}.v4-story-heading{grid-template-columns:128px minmax(0,600px) minmax(260px,1fr);gap:24px;margin-bottom:22px}.v4-story-heading h2{font-size:28px}.v4-story-heading>p{font-size:14px;line-height:1.7}.v4-principle-grid{gap:10px;border:0}.v4-principle-grid article,.v4-principle-grid article:last-child{min-height:162px;padding:22px;border:1px solid #dedfe3;border-radius:8px;background:#fff}.v4-principle-grid h3{margin:22px 0 8px}
.v4-compare-modules{gap:8px;padding:8px;border-radius:8px;background:#e9eaed}.v4-compare-module{min-height:100px;padding:14px;border-color:transparent;background:transparent}.v4-compare-module:hover{transform:none;background:rgba(255,255,255,.7)}.v4-compare-module.active{border-color:#9dc6f1;background:#fff;box-shadow:0 2px 8px rgba(28,28,30,.08)}.v4-compare-module b{margin-top:15px}.v4-relation-legend{gap:8px;margin-top:12px;border:0}.v4-relation-legend>div{padding:14px 15px;border:0;border-radius:7px;background:#fff}
.v4-exam-compare article{min-height:160px;padding:21px;background:#fff}.v4-exam-compare article p{margin-top:22px;font-size:15px}.v4-trap-band{gap:14px;margin-top:12px;padding:18px;border:0;border-radius:8px;background:#fff}.v4-synthesis-layers{gap:8px;border:0}.v4-synthesis-layer{padding:18px;border:1px solid #dedfe3!important;border-radius:8px;background:#fff}.v4-synthesis-overview{gap:10px;margin-top:10px}.v4-synthesis-relations{margin-top:10px}.v4-synthesis-audit{border-left:3px solid #ff9f0a;background:#fff8ec}
.v4-topic-section .v4-family-tabs{max-width:none;margin-bottom:12px;padding:5px;border:0;background:#e9eaed}.v4-family-tabs button{min-height:38px}.v4-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v4-topic-card{display:flex;min-height:210px;padding:0;overflow:hidden;flex-direction:column;border-color:#dedfe3;border-radius:8px;background:#fff;cursor:default;box-shadow:0 6px 18px rgba(28,28,30,.035)}.v4-topic-card:hover,.v4-topic-card.active{border-color:#8bbcf0;background:#fff;box-shadow:0 9px 24px rgba(0,102,204,.09)}
.v4-topic-main{display:block;min-height:0;flex:1;padding:20px;background:transparent;color:inherit;text-align:left;cursor:pointer}.v4-topic-main>span{color:#0066cc;font-size:12px;font-weight:700}.v4-topic-main h3{margin:13px 0 8px;font-size:18px}.v4-topic-main p{margin:0;color:#1d1d1f;font-size:13px;line-height:1.55}.v4-topic-main small{display:block;margin-top:9px;color:#5f6066;font-size:12px;line-height:1.6}.v4-topic-card>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-top:1px solid #ececef;background:#fafafa}.v4-topic-card>footer em{min-width:0;margin:0;color:#5f6066;font-size:11px;font-style:normal;line-height:1.45}.v4-topic-card>footer button{display:inline-flex;align-items:center;gap:5px;flex:none;color:#0066cc;font-size:12px;font-weight:650}.v4-topic-card>footer svg{width:13px;height:13px;stroke:currentColor}
.v4-case-grid{gap:10px}.v4-case-card{min-height:226px;border-color:#dedfe3;border-radius:8px;background:#fff}.v4-case-card>div span.is-answer{background:#e7f6ec;color:#16733b}.v4-case-card p{-webkit-line-clamp:4}.v4-evidence-actions{justify-content:flex-start}.v4-era-table{display:grid;gap:8px;border:0}.v4-era-row{grid-template-columns:130px repeat(2,minmax(0,1fr));gap:18px;padding:18px;border:1px solid #dedfe3;border-radius:8px;background:#fff}.v4-rules-boundary{padding:18px 20px;border-radius:8px;background:#eceef1}
.v4-case-question,.v4-case-answer,.v4-case-analysis>div,.v4-case-path,.v4-case-related,.v4-case-source{padding:18px;border:1px solid #dedfe3;border-radius:8px;background:#fff}.v4-case-answer>span{color:#16733b!important}.v4-case-answer>div{display:grid;grid-template-columns:52px minmax(0,1fr);gap:14px;align-items:start;margin-top:12px}.v4-case-answer>div>b{display:grid;place-items:center;width:48px;height:48px;border-radius:7px;background:#e7f6ec;color:#16733b;font-size:22px}.v4-case-answer p{margin:0;color:#3f4045;font-size:13px;line-height:1.75;white-space:pre-wrap}.v4-case-answer.is-missing{background:#fff8ec}.v4-case-answer.is-missing>span{color:#8a5b00!important}.v4-case-answer.is-missing>div>b{width:auto;min-width:48px;padding:0 10px;background:#ffefd2;color:#8a5b00;font-size:13px}
.v4-knowledge-sheet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v4-knowledge-sheet>section{padding:18px;border:1px solid #dedfe3;border-radius:8px;background:#fff}.v4-knowledge-sheet>section>span,.v4-related-knowledge-list>span{color:#0066cc;font-size:12px;font-weight:700}.v4-knowledge-sheet>section p{margin:12px 0 0;font-size:14px;line-height:1.75}.v4-related-knowledge-list{grid-column:1/-1;display:grid;gap:7px;margin-top:5px}.v4-related-knowledge{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;gap:10px;align-items:center;min-height:52px;padding:10px 13px;border:1px solid #dedfe3;border-radius:7px;background:#fff;text-align:left}.v4-related-knowledge span{color:#5f6066;font-size:11px}.v4-related-knowledge svg{width:14px;height:14px;stroke:currentColor}
@media(max-width:1180px){.v4-story-heading{grid-template-columns:112px 1fr}.v4-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){body[data-view="rules"] .content{padding:12px 12px 76px}.v4-rules-story{gap:8px}.v4-rules-hero{padding:24px 19px}.v4-rules-hero h1{font-size:32px}.v4-rules-hero nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.v4-story-section{padding:30px 0}.v4-story-heading h2{font-size:24px}.v4-principle-grid article{border-right:1px solid #dedfe3}.v4-relation-legend{display:grid;grid-template-columns:1fr 1fr}.v4-topic-grid,.v4-case-grid,.v4-knowledge-sheet{grid-template-columns:1fr}.v4-topic-card{min-height:0}.v4-topic-main{padding:18px}.v4-era-row{grid-template-columns:1fr}.v4-related-knowledge-list{grid-column:1}.v4-related-knowledge{grid-template-columns:minmax(0,1fr) 18px}.v4-related-knowledge span{display:none}}
