:root{--ink:#223653;--ink-strong:#142849;--muted:#66768d;--paper:#f3f6fb;--card:#fff;--line:#dce4ef;--tatami:#edf2fa;--lime:#8fbbff;--lime-soft:#e8f0ff;--orange:#c77732;--blue:#2563eb;--violet:#7772bd;--shadow:0 12px 36px rgba(20,40,73,.06)}
:root[data-theme=dark]{--ink:#e3ebfa;--ink-strong:#eef4ff;--muted:#9badc6;--paper:#0d182b;--card:#14233a;--line:#2a3c57;--tatami:#1c2f4a;--lime:#8fbbff;--lime-soft:#233e66;--shadow:0 12px 36px #0003}
body{font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #5c9cff;outline-offset:3px}
.app-content{margin-left:230px}.sidebar{width:230px;align-items:stretch;background:#112441;color:#c4d2e8;padding:28px 18px 20px;border-right:1px solid #234066;gap:20px}.brand-mark{display:flex;align-items:center;gap:12px;width:100%;height:48px;background:transparent;box-shadow:none;padding:0 10px;letter-spacing:0;color:#fff;text-align:left}.brand-mark>span{display:grid;place-items:center;min-width:36px;height:38px;border-radius:10px;background:#3478ed;font-size:23px;color:#fff}.brand-mark strong{font-size:19px;letter-spacing:1px;white-space:nowrap}.brand-mark em{font-size:11px;font-style:normal;color:#8cb4f1;letter-spacing:2px}.sidebar nav{margin:12px 0 auto;gap:4px;overflow:auto}.sidebar nav button{flex-direction:row;justify-content:flex-start;gap:12px;font-size:13px;font-weight:550;letter-spacing:0;min-height:44px;padding:11px 13px;border-radius:8px;color:#b6c7df;text-align:left}.sidebar nav button.active{background:#25549a;color:#fff}.sidebar nav button:hover{background:#1e3c65;color:#fff}.nav-symbol{display:grid;place-items:center;width:22px;font-size:20px}.nav-group{display:block;padding:8px 13px 12px;font-size:9px;font-weight:700;letter-spacing:1.8px;color:#819bbc}.admin-nav-group{margin-top:16px}.side-help{margin-left:12px}.topbar{height:95px;padding:22px 36px;background:var(--card);border-bottom:1px solid var(--line)}.topbar h1{font-size:23px;letter-spacing:-.7px}.topbar .eyebrow{font-size:9px;letter-spacing:1.8px;color:var(--muted);margin-bottom:3px}.topbar .avatar{background:#e6efff;color:#285ca3;border:1px solid #c8d9f2}.view{padding:28px 36px}.page-intro h2,.pro-heading h2{font-size:29px;line-height:1.2;letter-spacing:-1px}.section-kicker{font-size:10px;letter-spacing:1.5px;font-weight:750;color:var(--muted)}
.solid-button,.pro-actions .solid-button,.pro-modal .solid-button,.pro-form .solid-button{background:#2563eb;color:#fff;border:1px solid #2563eb;border-radius:8px;padding:11px 16px;box-shadow:0 3px 7px #2563eb12}.solid-button:hover{background:#1c50c4}.pro-actions button,.pro-heading button,.pro-panel button,.pro-tabs button,.survey-toolbar button,.survey-footer button{border-radius:8px}.pro-panel,.recommendation,.system-card,.practice-history article,.pro-metrics article{border-radius:12px;box-shadow:none}.pro-tabs{border-bottom:1px solid var(--line);gap:6px}.pro-tabs button[aria-selected=true]{color:#2563eb;background:var(--lime-soft);border-color:#9ec0fa}.pro-form input,.pro-form textarea,.pro-form select,.pro-person select{background:var(--card);border-color:var(--line);border-radius:7px;min-height:43px}.pro-notice{border:1px solid #c7d8f2;background:var(--lime-soft);color:var(--ink);border-radius:8px}.pro-muted{color:var(--muted)}.state-chip.anchor{background:#e1f2ee;color:#257064}.state-chip.developing{background:#e5efff;color:#3264a3}.state-chip.priority{background:#fff0dd;color:#956022}.state-chip.unknown{background:var(--tatami);color:var(--muted)}
.login-story{background:#112441;color:#fff}.login-story h1{color:#fff}.login-story>div>span,.login-story small{color:#a5bcdf}.login-story p{color:#bdcde5}.login-mark{background:#3478ed;color:white}.login-path span{color:#d7e5fa;border-color:#3c5478;background:#1a3357}.login-panel{background:var(--paper)}.login-panel>div{max-width:410px}.login-panel input{background:var(--card);border-color:var(--line)}.login-panel h2{font-size:32px}.neural-map{background:#101f38}.neural-toolbar{background:var(--card)}.map-hierarchy span{color:#b2c2da}.position-node{border-color:#4a6386;background:#182e4d;color:#e7effc}.position-node.selected,.position-node.route-node{border-color:#79afff;box-shadow:0 0 0 3px #408eff28}.neural-legend{color:#adc2e0}.tech-card,.tool-card{border-radius:12px;box-shadow:none}.technique-gallery{background:var(--tatami)}.technique-assessment{margin-top:20px;display:grid;gap:8px}.technique-assessment>label{display:grid;grid-template-columns:1fr minmax(180px,280px);align-items:center;gap:20px;padding:16px;border:1px solid var(--line);background:var(--card);border-radius:8px}.technique-assessment small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.technique-assessment select{border:1px solid var(--line);padding:10px;border-radius:6px;color:var(--ink);background:var(--card);max-width:100%}.rating-scale input:checked+span{background:var(--lime-soft);border-color:#4683ea;color:var(--ink)}.graph-node.selected{border-color:#3579e5}.system-mini circle{fill:#467fe0}.system-mini path.main{stroke:#94b1df}
body[data-role=student] .admin-nav-group{display:none}.video-reference{padding:24px;background:var(--tatami);border-bottom:1px solid var(--line)}.video-reference h3{font-size:19px;margin:7px 0}.video-reference p{font-size:13px;color:var(--muted)}.video-reference a{color:#2563eb;text-decoration:underline}.video-reference iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:8px}.video-reference .reference-meta{font-size:11px}.tech-media-placeholder{height:160px;background:linear-gradient(140deg,#163050,#274e83);color:#c6dcff;display:flex;flex-direction:column;justify-content:space-between;padding:22px}.tech-media-placeholder b{font-size:28px;font-weight:500}.tech-media-placeholder small{font-size:10px;text-transform:uppercase;letter-spacing:1.5px}.reference-tag{font-size:11px;color:var(--muted)}
@media(min-width:1500px){.view{padding:32px 48px}.topbar{padding-left:48px;padding-right:48px}}
@media(max-width:1100px) and (min-width:851px){.sidebar{width:205px;padding:24px 12px}.app-content{margin-left:205px}.view{padding:24px}.topbar{padding:22px 24px}}
@media(max-width:850px){.sidebar{display:none}.app-content{margin-left:0}.topbar{height:80px;padding:18px 20px}.topbar h1{font-size:22px}.view{padding:20px 16px 100px}.mobile-nav{background:var(--card);border-top:1px solid var(--line);box-shadow:0 -5px 24px #172c4d08;gap:2px;padding:8px 8px calc(8px + env(safe-area-inset-bottom));z-index:60}.mobile-nav button{color:var(--muted);font-size:10px;padding:7px 3px;min-height:48px;border-radius:8px}.mobile-nav button.active{background:var(--lime-soft);color:#2563eb}.mobile-nav button span{font-size:22px}.page-intro h2,.pro-heading h2{font-size:26px}.technique-assessment>label{grid-template-columns:1fr;gap:10px}.technique-assessment select{width:100%}.login-story{background:#112441}.login-story h1{font-size:30px}.login-panel{padding:30px 24px}.mobile-position-focus{background:#142b4c;color:#e5eefc;border:1px solid #355884}.mobile-position-focus p{color:#b6cbe5}.mobile-position-focus footer{color:#b6cbe5}.mobile-position-code{background:#2b5286;color:#fff}.mobile-edge,.mobile-map-search input,.mobile-map-search select{background:var(--card);border-color:var(--line)}.mobile-position-picker button[aria-pressed=true]{background:#255ec1;color:#fff;border-color:#255ec1}}

.text-button{color:#3476ce}.journey-network .network-name{font-size:12px}

body[data-role=student] #mark-taught,body[data-role=student] .tech-drawer .history-row,.history-dots{display:none}
