/* Product Bauhaus. All training geometry and dimensions remain in canvas.css. */
:root {
  --bg:#f5f2e9;--panel:#fffdf7;--panel-2:#eae9de;--surface:#fffdf7;
  --ink:#242820;--muted:#686b5e;--text-soft:#474c40;
  --line:#d3d3c5;--line-strong:#8a8e7e;
  --accent:#c64938;--accent-2:#315d9a;--warm:#ebc54c;--gold:#735a09;--blue:#315d9a;
  --danger:#b4231b;--action-red:#bb4134;--paper-yellow:#eee0a2;
  --growth:#526b43;--growth-leaf:#7b905f;--growth-soft:#e8eddf;--growth-line:#acb99b;--sidebar-paper:#f0f0e6;
  color-scheme:light;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
}
html,body{background:var(--bg);color:var(--ink)}
select,input,textarea{color-scheme:light}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
::selection{background:#f2c23080;color:var(--ink)}
.eyebrow{color:var(--blue)}.muted{color:var(--muted)}
.primary-button{background:var(--ink);color:var(--panel);border:1px solid var(--ink);border-radius:3px;box-shadow:none;font-weight:700}
.primary-button:hover{background:var(--growth);border-color:var(--growth);color:var(--panel);transform:none;box-shadow:none}
.secondary-button,.quiet-btn{border:1px solid var(--line-strong);border-radius:3px;background:var(--panel);color:var(--ink)}
.secondary-button:hover,.quiet-btn:hover{border-color:var(--blue);background:#edf1fa;color:var(--blue)}
.quiet-btn.selected,.quiet-btn[aria-pressed=true]{border-color:var(--blue);background:#e8edf8;color:var(--blue)}
select{background:var(--panel);border-color:var(--line-strong);border-radius:3px}
form label,.dialog-card>label,.field-label{color:var(--text-soft)}
form input,form textarea,.dialog-card>label input,.dialog-card>label textarea,.text-input{border-color:var(--line-strong);border-radius:3px;background:var(--panel);color:var(--ink)}
form input::placeholder,form textarea::placeholder,.text-input::placeholder{color:#777369}
.form-error{color:var(--danger)}.text-input:focus{background:var(--panel);border-color:var(--blue)}

/* Arrival: editorial type plus a diagram of the actual learning cycle. */
.welcome-screen{display:grid;grid-template-columns:minmax(0,7fr) minmax(240px,3fr);gap:clamp(40px,5vw,84px);padding:80px clamp(32px,5vw,80px);background:var(--bg)}
.welcome-screen::after{display:none}.welcome-copy{max-width:900px}
.welcome-copy .eyebrow{margin-bottom:28px;font-size:12px;letter-spacing:.2em}
.welcome-copy h1{font-size:clamp(56px,5.4vw,92px);font-weight:850;line-height:1.14;letter-spacing:-.055em;color:var(--ink)}
.welcome-copy>p:not(.eyebrow){font-size:17px;line-height:1.9;color:var(--text-soft);max-width:600px;margin:30px 0}
.welcome-copy .primary-button{min-width:214px;min-height:52px;font-size:14px}
.welcome-process{margin:0;border-left:1px solid var(--ink);padding-left:30px;align-self:center}
.welcome-process figcaption{font-size:10px;font-weight:700;letter-spacing:.16em;margin-bottom:32px;color:var(--muted)}
.welcome-process ol{padding:0;margin:0;list-style:none;display:grid;gap:34px}
.welcome-process li{display:grid;grid-template-columns:84px 1fr;gap:20px;align-items:center}
.process-shape{width:84px;height:84px;display:grid;place-items:center;font-size:23px;font-weight:800;letter-spacing:-.04em}
.process-learn{border-radius:50%;background:var(--blue);color:var(--panel)}
.process-record{background:var(--warm);color:var(--ink)}
.process-reflect{border:2px solid var(--action-red);border-radius:50% 50% 0 0;color:var(--action-red)}
.welcome-process strong{display:block;font-size:17px;font-weight:750}
.welcome-process small{display:block;margin-top:7px;font-size:10px;letter-spacing:.12em;color:var(--muted)}
.welcome-foot{left:clamp(32px,5vw,80px);right:clamp(32px,5vw,80px);color:var(--muted);border-top:1px solid var(--line);padding-top:18px}
.onboarding-screen{background:var(--bg)}.onboarding-card h2{font-weight:800;color:var(--ink)}
.icon-button{border-radius:3px;border-color:var(--line-strong)}
.avatar-choice{border-radius:3px;background:var(--panel);border-color:var(--line);color:var(--ink)}
.avatar-choice.selected,.avatar-choice:hover{background:var(--warm);border-color:var(--ink);transform:none}

/* One paper surface joins the navigation, journey and working canvas. */
.topbar{background:var(--bg);border-bottom-color:var(--line);color:var(--ink);backdrop-filter:none}
.brand-lockup strong{color:var(--ink);font-weight:750}
.brand-lockup small,.user-message{color:var(--muted)}.user-message::before,.user-message::after{color:var(--action-red)}
.brand-mark span{background:var(--ink);border-radius:0;transform:none}
.brand-mark span:last-child{background:var(--accent)}
.language-switch{border-radius:3px;border-color:var(--line)}.language-switch button{border-radius:1px;color:var(--muted)}
.language-switch button.active{background:var(--panel);color:var(--blue)}
.profile-button{border-color:var(--line-strong);background:var(--panel);color:var(--ink)}
.sidebar{background:var(--sidebar-paper);border-right-color:var(--line)}
.sidebar-toggle{background:var(--sidebar-paper);border-color:var(--line);color:var(--muted);border-radius:0 4px 4px 0}
.journey-heading,.journey-heading b{color:var(--muted)}.journey-track .rail-line{background:var(--line)}
.journey-track .rail-line i{background:var(--blue);box-shadow:none}
.milestone{background:var(--bg);border-color:var(--line-strong);color:#797367}
.milestone.current{background:var(--warm);border-color:#9b7b1b;color:var(--ink)}
.milestone:hover{border-color:var(--blue);color:var(--blue)}.milestone.finish{color:#797367}
.milestone em{background:var(--bg);border-color:transparent;border-radius:3px;color:var(--text-soft)}
.milestone.current em{color:var(--ink)}
.sidebar-collapsed .milestone em{box-shadow:none}
.sidebar-tools{padding-top:17px}.tools-label{margin:0 12px 11px;color:var(--muted)}
.main-nav{gap:3px}.nav-item{min-height:43px;gap:11px;border-radius:2px;color:var(--text-soft);font-size:12px}
.nav-item:hover{background:#ece9df;color:var(--ink)}.nav-item.active{background:var(--growth-soft);color:var(--growth);font-weight:650}
.nav-item.active .nav-icon{color:var(--growth)}.nav-item.active::before{top:50%;width:2px;height:22px;transform:translateY(-50%);background:var(--growth);border-radius:0}.has-notice i{background:var(--action-red);box-shadow:none}
.rail-training-launcher{background:var(--panel);border-color:var(--line);color:var(--blue);border-radius:3px}
.main-stage{background:var(--bg)}
.mobile-nav{background:var(--bg);border-color:var(--line-strong);border-radius:4px;box-shadow:none;backdrop-filter:none}
.mobile-nav button{color:var(--muted)}.mobile-nav button.active{color:var(--growth);background:var(--growth-soft)}
.topbar button:focus-visible,.sidebar button:focus-visible,.mobile-nav button:focus-visible{outline-color:var(--blue)}

/* Training: paint and weight only. Coordinates, spacing, corners and sizing inherit. */
.canvas-shell,.canvas-shell .full-canvas,.canvas-shell .canvas-paper{background-color:var(--bg)}
.canvas-shell .canvas-paper{background-image:radial-gradient(#8d887325 .8px,transparent .8px)}
.graph-document-title>span,.graph-document-title p{color:var(--muted)}
.graph-document-title h1{color:var(--ink);font-weight:750}.graph-main-line,.graph-guide-line{stroke:var(--blue)}
.graph-task-card{background:var(--paper-yellow);border-color:#b3a16a;box-shadow:none}
.graph-task-card.completed{background:var(--growth-soft);border-color:var(--growth-line)}
.graph-card-meta{color:#63552c}.graph-card-meta>span:first-child{border-color:#9d98b1;background:var(--panel);color:var(--blue)}
.graph-task-card .behavior-check-label>span,.graph-task-card .behavior-check-label>span>b{color:var(--ink)}
.graph-task-card .behavior-task.done .behavior-check-label>span{color:var(--growth)}
.graph-task-card .behavior-check-label>input{border-color:#76652c;background:#fffdf580}
.graph-task-card .behavior-check-label>input:checked{background:var(--growth);border-color:var(--growth)}
.graph-task-card .behavior-check-label>input:checked::after{border-color:var(--panel)}
.graph-task-card .quantity-edit label,.graph-task-card .conversation-kind label,.graph-task-card .checked-at{color:#63552c}
.graph-task-card .quantity-edit input,.graph-task-card .conversation-kind select{background:#fffdf5a6;border-color:#aa9656;color:var(--ink)}
.graph-method-card{border-color:var(--line);background:var(--panel);box-shadow:none}
.graph-how-label{color:var(--muted)}.graph-method-card h3{color:var(--ink)}
.graph-method-card li,.graph-method-card details li,.graph-method-card details p{color:var(--text-soft)}
.graph-method-card li::marker,.graph-method-card summary{color:var(--blue)}.graph-method-card details{border-color:var(--line)}
.graph-round-card{background:transparent;border:0;color:var(--muted)}
.graph-round-card>header,.graph-round-card>.graph-custom-tasks{background:var(--panel-2);border-color:var(--line)}
.graph-round-card>.graph-custom-tasks{background:var(--panel)}.graph-round-card h3{color:var(--ink)}
.graph-round-card header p,.graph-round-actions>span{color:var(--muted)}.graph-round-card header>div:first-child>span{color:var(--blue)}
.graph-round-actions .next-round-button{background:var(--ink);border-color:var(--ink);color:var(--panel)}
.graph-custom-tasks>p,.graph-custom-tasks .behavior-check-label>span,.graph-custom-tasks .personal-task-item .behavior-check-label>span,.personal-tasks-heading h3{color:var(--text-soft)}
.personal-tasks-heading small,.personal-tasks-archived,.personal-tasks-archived>p,.graph-custom-tasks .checked-at{color:var(--muted)}
.personal-task-item,.personal-tasks-archived{border-color:var(--line)}
.personal-task-controls button,.personal-archived-row button{color:var(--blue)}
.personal-task-controls button:hover,.personal-archived-row button:hover{background:#edf1fa;color:var(--blue)}
.graph-custom-tasks form input{background:var(--bg);border-color:var(--line);color:var(--ink)}
.graph-custom-tasks form input::placeholder{color:var(--muted)}
.graph-custom-tasks form button{background:var(--ink);color:var(--panel);border-color:var(--ink)}
.graph-custom-tasks .behavior-check-label>input{border-color:var(--line-strong);background:var(--panel)}
.graph-custom-tasks .behavior-check-label>input:checked{background:var(--growth);border-color:var(--growth)}
.graph-custom-tasks .behavior-check-label>input:checked::after{border-color:var(--panel)}
.behavior-check-label>input:focus-visible,.notes-editor input:focus-visible,.notes-editor textarea:focus-visible,.atlas-tech-node:focus-visible,.atlas-filter-label select:focus-visible,.atlas-controls button:focus-visible{outline-color:var(--blue)}
.canvas-tools{background:var(--panel);border-color:var(--line-strong);box-shadow:0 4px 16px #1515150b}
.canvas-tools button,.canvas-tools output{color:var(--text-soft)}
.canvas-tools button:hover,.canvas-tools button.selected{background:#e6ebf5;color:var(--blue)}
.canvas-round-tools{border-color:var(--line)}.canvas-round-tools select{border-color:var(--line);background:var(--panel);color:var(--ink)}
.canvas-round-tools button{background:var(--ink);color:var(--panel)}.canvas-round-tools button:hover{background:var(--blue);color:var(--panel)}

/* Right notes dock, same folding and resizing behavior. */
.notes-edge{background:var(--bg);border-color:var(--line);box-shadow:none}
.notes-edge-toggle{color:var(--text-soft)}.notes-edge-toggle:hover{background:#e8edf8;color:var(--blue)}
.notes-edge-toggle>span,.notes-edge-toggle>i{color:var(--blue)}
.canvas-shell .notes-open .workspace-notes{background:var(--panel);border-color:var(--line)}
.notes-open .workspace-note-divider{background:var(--panel-2)}.workspace-note-divider::after{background:var(--line-strong)}
.workspace-notes-heading{border-color:var(--line)}.workspace-notes-heading h3{color:var(--ink);font-weight:700}
.workspace-notes-heading button,.notes-dock-icon{color:var(--blue)}
.notes-route-context,.notes-route-context>span,.notes-route-context small{color:var(--muted)}.notes-route-context strong{color:var(--blue)}
.notes-editor #workspace-note-title{color:var(--ink);border-color:var(--line)}.notes-editor #workspace-note-body{color:var(--text-soft)}
.notes-editor #workspace-note-title::placeholder,.notes-editor #workspace-note-body::placeholder{color:#777369}
.notes-editor #workspace-note-status{color:var(--muted)}.notes-editor #workspace-note-status.save-failed{color:var(--danger)}
.notes-recent,.notes-dock-footer{border-color:var(--line)}.notes-recent>header,.notes-list-empty{color:var(--muted)}
.notes-recent .workspace-saved-notes button{color:var(--ink)}.notes-recent .workspace-saved-notes button:hover{background:var(--bg)}
.notes-recent .workspace-saved-notes button.selected{background:var(--growth-soft);border-color:var(--growth-line)}
.notes-recent .workspace-saved-notes strong{color:var(--ink)}.notes-recent .workspace-saved-notes small{color:var(--muted)}
.notes-dock-footer>button{background:var(--bg);border-color:var(--line-strong);color:var(--ink)}
#training-route-popover{background:var(--panel);border-color:var(--line-strong);border-radius:4px;box-shadow:0 10px 30px #15151518;color:var(--ink)}
#training-route-popover header>span,#training-route-popover header>button{color:var(--muted)}
.floating-route-option{background:var(--panel);border-color:var(--line);border-radius:3px;color:var(--ink)}
.floating-route-option small,.floating-route-option em,.floating-route-option>b{color:var(--muted)}
.floating-route-option.selected,.floating-route-option:hover{background:#edf1fa;border-color:var(--blue);color:var(--blue)}
.floating-route-option.selected small,.floating-route-option.selected>b{color:var(--blue)}

/* ONI-style capability tree: original horizontal branches, new paper-and-ink surfaces. */
.ability-atlas{--atlas-bg:var(--bg);--atlas-chrome:var(--bg);--atlas-panel:var(--panel);--atlas-border:var(--line);--atlas-ink:var(--ink);--atlas-muted:var(--muted)}
.atlas-toolbar,.atlas-status{background:var(--atlas-chrome);border-color:#c9c2b3}
.atlas-toolbar>div:first-child>span{color:var(--blue)}.atlas-toolbar h2{color:var(--ink);font-weight:750}
.atlas-filter-label,.atlas-legend{color:var(--muted)}
.atlas-filter-label select{background:var(--panel);border-color:var(--line-strong);border-radius:3px;color:var(--ink);color-scheme:light}
.atlas-legend i{background:var(--panel);border-color:var(--line-strong)}
.atlas-legend i.viewed{background:#e3eafa;border-color:var(--blue)}
.atlas-legend i.practiced{background:var(--growth-soft);border-color:var(--growth);box-shadow:none}
.atlas-viewport{background-color:var(--atlas-bg);background-image:radial-gradient(#8d887330 .7px,transparent .7px);background-size:26px 26px}
.atlas-lane-band{background:transparent}.atlas-links{stroke:var(--blue)}.atlas-column-label{color:#646052}
.atlas-tech-node,.atlas-tech-node.practiced{border-color:var(--atlas-border);background:var(--panel);color:var(--ink);border-radius:3px;box-shadow:none}
.atlas-tech-node:hover,.atlas-tech-node.practiced:hover{background:#f1f4fa;border-color:var(--blue);box-shadow:none}
.atlas-tech-node.viewed{border-color:var(--line-strong)}.atlas-tech-node.practiced{border-color:var(--growth-line);background:var(--growth-soft)}
.atlas-tech-node.route{background:var(--panel);border-color:#b9b2a4;color:var(--ink);box-shadow:inset 3px 0 0 var(--blue)}
.atlas-tech-node.route:hover{background:#f1f4fa;border-color:var(--blue)}
.atlas-node-icon,.atlas-tech-node.practiced .atlas-node-icon{background:#e3eafa;border-color:#ccd6ec;color:var(--blue);border-radius:2px;box-shadow:none}
.atlas-tech-node.route .atlas-node-icon{background:#e3eafa;border-color:#ccd6ec;color:var(--blue)}
.atlas-node-copy>small,.atlas-node-copy>em{color:var(--muted)}
.atlas-tech-node.route .atlas-node-copy>small{color:var(--blue)}.atlas-tech-node.route .atlas-node-copy>em{color:var(--muted)}
.atlas-node-copy>strong{font-weight:650}.atlas-tech-node.practiced .atlas-node-copy>em{color:var(--growth)}
.atlas-node-state,.atlas-tech-node.viewed .atlas-node-state,.atlas-tech-node.practiced .atlas-node-state{color:var(--blue);background:transparent;border-color:transparent}
.atlas-tech-node.route .atlas-node-state{color:var(--blue)}
.atlas-controls{background:var(--panel);border-color:var(--line-strong);border-radius:4px;box-shadow:none}
.atlas-controls button,.atlas-controls output{color:var(--text-soft)}
.atlas-controls button:hover,.atlas-controls button[aria-pressed=true]{background:#e8edf8;color:var(--blue);border-radius:2px}
.atlas-controls button[data-atlas=focus]{border-color:var(--line)}
.atlas-pan-hint{display:none}.atlas-status,.atlas-status p{color:#5c584f}.atlas-viewport:focus-visible{outline-color:var(--blue)}

/* Notes and reflection retain their existing grids, with editorial type and thin rules. */
#view-notes .product-heading,#view-feedback .product-heading{border-top:1px solid var(--growth-line);padding-top:24px;margin-top:4px;margin-bottom:28px}
#view-notes .product-heading h2,#view-feedback .product-heading h2{font-size:clamp(28px,2.8vw,40px);font-weight:800;line-height:1.3;color:var(--ink);letter-spacing:-.04em}
#view-notes .product-heading .eyebrow,#view-feedback .product-heading .eyebrow{color:var(--growth);font-size:10px;letter-spacing:.16em;margin-bottom:15px}
#view-notes .product-heading p:not(.eyebrow),#view-feedback .product-heading p:not(.eyebrow){color:var(--muted);font-size:13px}
.toolbar{color:var(--muted);border-color:var(--line)}.toolbar b{color:var(--ink)}
.notes-stack{border-color:var(--line);border-radius:3px;background:var(--panel)}
.note-row{background:var(--panel)}.note-row>header{background:var(--panel-2);border-color:var(--line)}
.note-row>header>span{color:var(--blue)}.note-row h3{font-weight:700;color:var(--ink)}
.note-row header small,.note-preview small{color:var(--muted)}.note-preview h4{color:var(--ink);font-weight:650}
.note-preview p{color:var(--text-soft)}.note-preview button:hover h4{color:var(--blue)}
.horizontal-divider{background:var(--panel-2);border-color:var(--line)}.horizontal-divider span{background:#aaa395}.horizontal-divider:hover{background:#d8d2c5}
.notes-stack .note-empty-route{background:var(--panel);border-color:var(--line);border-radius:3px}
.note-empty-route summary,.note-empty-route h3{color:var(--ink)}
.note-empty-route summary>span,.note-empty-route summary>b{color:var(--blue)}.note-empty-route summary>small,.empty-note{color:var(--muted)}
.reflection-summary{background:var(--panel);border-color:var(--line);border-radius:3px;color:var(--ink)}
.reflection-summary h3{font-weight:750}.reflection-summary>p:last-child{color:var(--text-soft)}
.report-metrics{gap:0;border-block:1px solid var(--line-strong)}
#view-feedback .report-metrics article{background:transparent;border:0;border-right:1px solid var(--line);border-radius:0;padding:22px}
.report-metrics article:last-child{border-right:0}.report-metrics small,.report-metrics span{color:var(--muted)}
#view-feedback .report-metrics b{font-size:42px;font-weight:800;color:var(--ink);margin:12px 0}
#view-feedback .report-metrics article:first-child b{color:var(--growth)}
.report-card{background:var(--panel);border-color:var(--line);border-radius:3px}
.report-card h3{color:var(--ink);font-weight:750}.report-card h4,.next-actions b{color:var(--ink)}
.investment-bars span,.investment-bars b,.quantity-report-grid>p,.behavior-history small,.report-footer,.empty-report{color:var(--muted)}
.investment-bars>div>div{background:var(--panel-2)}.investment-bars i{background:var(--growth);border-radius:0}
.history-tick{color:var(--growth)}.behavior-history>div,.quantity-report-grid>p{border-color:var(--line)}
.quantity-report-grid b{color:var(--ink);font-weight:750}.quantity-report-grid b small{color:var(--muted)}
.report-weekdays{color:var(--muted)}.report-day{background:var(--bg);border-color:#e0dbd0;color:var(--muted);border-radius:2px}
.report-day.recorded{background:var(--growth);border-color:var(--growth);color:var(--panel)}
.report-day.recorded i{color:var(--warm)}.report-day.today{outline-color:var(--ink)}
.month-chart-card{grid-column:1/-1;order:-1;padding:28px 30px 30px}
.month-chart-card h3{font-size:clamp(21px,2vw,28px);margin:0 0 18px}
.month-chart{border-top:1px solid var(--line);padding-top:18px}
.month-chart-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--muted);font-size:11px;line-height:1.5}
.month-chart-key{display:inline-flex;align-items:center;gap:9px;color:var(--ink);font-weight:650}
.month-chart-key i{width:21px;border-top:3px solid var(--growth)}
.month-chart-axis{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;margin-top:22px}
.month-chart-y{height:198px;display:flex;flex-direction:column;justify-content:space-between;padding:0 0 0 1px;color:var(--muted);font:11px/1 ui-monospace,SFMono-Regular,Consolas,monospace}
.month-chart-body{min-width:0}
.month-chart-plot{position:relative;height:198px;margin:0 7px 0 2px}
.month-chart-plot svg{position:relative;z-index:1;display:block;width:100%;height:100%;overflow:visible;pointer-events:none}
.month-chart-guide{fill:none;stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:3 5}
.month-chart-line{fill:none;stroke:var(--growth);stroke-width:3;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.month-chart-today{position:absolute;z-index:0;top:0;bottom:0;border-left:1px dashed var(--growth-line)}
.month-chart-point{position:absolute;z-index:2;box-sizing:border-box;width:13px;height:13px;min-width:13px;min-height:13px;padding:0;border:2px solid var(--growth);border-radius:50%;background:var(--warm);transform:translate(-50%,-50%);cursor:pointer;transition:transform .15s,background .15s}
.month-chart-point:hover,.month-chart-point:focus-visible{transform:translate(-50%,-50%) scale(1.45);background:var(--warm)}
.month-chart-x{position:relative;height:28px;margin:12px 7px 0 2px;color:var(--muted);font:11px/1 ui-monospace,SFMono-Regular,Consolas,monospace}
.month-chart-x span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}.month-chart-x span:first-child{transform:none}
@media(max-width:760px){.month-chart-card{padding:21px 18px 22px}.month-chart-meta{font-size:10px}.month-chart-axis{grid-template-columns:24px minmax(0,1fr);gap:5px}.month-chart-y,.month-chart-plot{height:170px}.month-chart-point{width:12px;height:12px;min-width:12px;min-height:12px}.month-chart-x{font-size:10px}}

/* Dialogs: readable paper, visible forms and conventional focus states. */
.product-dialog,.atlas-dialog{background:var(--panel);border-color:var(--line-strong);border-radius:5px;color:var(--ink);box-shadow:0 16px 60px #15151533}
.product-dialog::backdrop{background:#15151599;backdrop-filter:none}
.dialog-heading,.atlas-dialog .dialog-heading{border-color:var(--line)}
.dialog-heading h2,.atlas-dialog .dialog-heading h2{color:var(--ink);font-weight:750}
.atlas-dialog .dialog-heading button{background:var(--panel);border-color:var(--line);color:var(--ink)}
.atlas-dialog .primary-button{background:var(--ink);border-color:var(--ink);color:var(--panel);border-radius:3px;font-weight:700}
.atlas-dialog .primary-button:hover{background:var(--blue)}
.atlas-dialog .muted,.atlas-detail-copy,.atlas-detail-steps,.help-items p,.read-module p{color:var(--text-soft)}
.atlas-detail-eyebrow,.read-module h3,.help-items b{color:var(--blue)}
.atlas-detail-skills{border-color:var(--line);border-radius:3px;color:var(--text-soft)}
.atlas-detail-skills summary,.atlas-detail-skills h4{color:var(--ink)}
.atlas-detail-actions button{background:var(--bg);border-color:var(--line);border-radius:3px;color:var(--ink)}
.atlas-detail-actions button:hover{border-color:var(--blue);color:var(--blue)}
.state-tag{background:var(--bg);border-color:var(--line);color:var(--text-soft);border-radius:2px}
.state-tag.draft,.draft-notice{background:#f5edcf;border-color:#dbcc92;color:#6c5518}
.state-tag.achieved,.state-tag.maintained,.state-tag.personal{background:#e6ecf7;color:var(--blue)}
.source-details,.preview-steps li,.preview-steps p,.step-item small{color:var(--text-soft)}.source-details summary,.detail-heading p{color:var(--ink)}
.letter-page{background:var(--panel);border-radius:3px;border-color:var(--line);color:var(--ink);box-shadow:none}
.letter-page .eyebrow{color:var(--blue)}.letter-page h2{font-weight:800}
.toast{background:var(--ink);border-color:#48463f;border-radius:3px;color:var(--panel)}
.profile-popover{background:var(--panel);border-color:var(--line);color:var(--ink)}
.profile-popover small,.profile-popover button{color:var(--muted)}
@media(max-width:1000px){
  .welcome-screen{grid-template-columns:minmax(0,1fr);gap:38px;padding-block:72px 100px}
  .welcome-process{border-left:0;border-top:1px solid var(--ink);padding:22px 0 0}
  .welcome-process figcaption{margin-bottom:18px}.welcome-process ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
  .welcome-process li{grid-template-columns:60px 1fr;gap:12px}.process-shape{width:60px;height:60px;font-size:20px}.welcome-process strong{font-size:15px}
}
@media(max-width:760px){
  .welcome-screen{padding:56px 24px 92px;gap:36px;align-content:center}
  .welcome-copy h1{font-size:clamp(38px,9.8vw,65px);line-height:1.2;letter-spacing:-.05em}
  .welcome-copy .eyebrow{margin-bottom:20px;font-size:10px}.welcome-copy>p:not(.eyebrow){font-size:15px;line-height:1.8;margin:23px 0}
  .welcome-foot{left:24px;right:24px;font-size:8px}.welcome-process ol{gap:16px}
  .welcome-process li{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
  .welcome-process strong{font-size:13px}.welcome-process small{font-size:8px;letter-spacing:.05em;margin-top:4px}.welcome-process figcaption{font-size:8px}
  #view-notes .product-heading,#view-feedback .product-heading{padding-top:18px;margin-bottom:22px}
  #view-notes .product-heading h2,#view-feedback .product-heading h2{font-size:28px}
  #view-notes .product-heading p:not(.eyebrow),#view-feedback .product-heading p:not(.eyebrow){font-size:12px}
  .report-metrics{gap:0}#view-feedback .report-metrics article{padding:17px 14px;border-bottom:1px solid var(--line)}
  #view-feedback .report-metrics article:nth-child(2n){border-right:0}#view-feedback .report-metrics article:nth-last-child(-n+2){border-bottom:0}
  #view-feedback .report-metrics b{font-size:34px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* Growth is a state, not decoration: the same leaf tone follows completed work. */
.atlas-tech-node.practiced .atlas-node-icon{background:var(--panel);border-color:var(--growth-line);color:var(--growth)}
.atlas-tech-node.practiced .atlas-node-state{color:var(--growth)}
.graph-task-card.completed .graph-card-meta,.graph-task-card.completed .checked-at{color:var(--growth)}
.nav-item,.gj-chapter-button,.report-day{transition:background .18s ease,color .18s ease,border-color .18s ease}
.mobile-nav{overflow:hidden}
@media(prefers-reduced-motion:reduce){.nav-item,.gj-chapter-button,.report-day{transition:none}}
