/* Modus · selected paper/cobalt/red design. Exercise stimuli are outside this scope. */
body[data-modus] .modus-catalog-tools { display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap; }
body[data-modus] .modus-reset { font-size:13px; }
body[data-modus] .modus-reset[hidden] { display:none; }
body[data-modus] .modus-plan-progress { color:var(--modus-muted);font-size:14px;margin:8px 0; }
body[data-modus] .modus-plan > .modus-primary { margin:12px 0;display:flex; }
body[data-modus] .modus-plan > .modus-link { margin-inline-end:16px; }
body[data-modus] .modus-favourites-filter { margin-top:12px;padding:7px 12px;font-size:14px; }
body[data-modus] .modus-favourites-filter[aria-pressed=true] { color:white;background:#0646bc; }
body[data-modus] .modus-favourite { flex-shrink:0;color:#0646bc;font-size:28px;min-width:44px;min-height:44px;border-radius:8px; }
body[data-modus] .modus-favourite[aria-pressed=true] { color:#b5241e; }
body[data-modus] .modus-favourite-tag { color:#164c9f;font-size:12px; }
body[data-modus] .modus-clear-search { flex-shrink:0;color:#53617d;min-width:32px;min-height:36px;font-size:25px; }
body[data-modus] .modus-clear-search[hidden] { display:none; }
body[data-modus] .modus-plan-copy { display:flex;flex-direction:column;gap:4px;min-width:0;padding:9px 0; }
body[data-modus] .modus-plan-row-settings { color:#53617d;font-size:12px;line-height:1.4; }
body[data-modus] .modus-plan-controls { flex-shrink:0; }
body[data-modus] .modus-session-heading { display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:6px 0; }
body[data-modus] .modus-session-title { min-width:0;overflow-wrap:anywhere;color:#263b60;font-size:15px; }
body[data-modus] .modus-session-heading .modus-link { font-size:13px; }
body[data-modus] .modus-instruction-block,body[data-modus] .modus-selection-reason { margin:16px 0;padding:13px 15px;border:1px solid #d3d5dc;border-radius:9px; }
body[data-modus] :is(.modus-instruction-block,.modus-selection-reason) h2 { font-size:16px;margin:0 0 9px; }
body[data-modus] .modus-instructions { list-style:decimal;padding-inline-start:23px;margin:0; }
body[data-modus] .modus-instructions > li { display:list-item;padding:5px 0 5px 4px;font-size:15px;line-height:1.55; }
body[data-modus] .modus-selection-reason p { font-size:14px;margin:7px 0; }
body[data-modus] .modus-method-result h4 { font-size:17px;color:#142e61; }
body[data-modus] .modus-method-result details { font-size:13px; }
body[data-modus][data-modus-reading=large] .modus-instructions > li { font-size:18px; }
body[data-modus][data-modus-reading=large] .modus-selection-reason p { font-size:16px; }
/* Reading preferences affect the workspace only; exercise dialogs and stimuli keep their own sizes. */
body[data-modus][data-modus-reading=large] .modus-workspace :is(.modus-exercise-copy strong,.modus-field,.modus-field input,.modus-field select,.modus-supports h3,.modus-goal p) { font-size:18px; }
body[data-modus][data-modus-reading=large] .modus-workspace :is(.modus-exercise-copy > span,.modus-plan-title,.modus-button,.modus-link,.modus-muted,.modus-empty,.modus-evidence,.modus-clinical,.modus-plan-row-settings) { font-size:16px; }
body[data-modus][data-modus-reading=large] .modus-workspace .modus-lead { font-size:clamp(20px,1.8vw,26px); }
body[data-modus][data-modus-reading=large] .modus-workspace .modus-exercise-copy > span { -webkit-line-clamp:3; }
:root[data-theme] body[data-modus] { --modus-paper:#faf9f5;--modus-blue:#0646bc;--modus-red:#d9231d;--modus-ink:#10182d;--modus-muted:#53617d;--modus-line:#d3d5dc;background:var(--modus-paper);color:var(--modus-ink);font:16px/1.5 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif; }
:root[data-theme] body[data-modus] :is(.sidebar,#main > .topbar,#main > .view,#main > .footer,#desktopCommand,#desktopLayout,#toast,.modus-dialog) { --desktop-bg:#faf9f5;--desktop-surface:#fffefa;--desktop-raised:#eef2f6;--desktop-sunken:#f4f3ee;--desktop-ink:#10182d;--desktop-muted:#53617d;--desktop-faint:#657089;--desktop-line:#d3d5dc;--desktop-control:#a5aec0;--desktop-accent:#0646bc;--desktop-accent-ink:#fff;--desktop-accent-soft:#e9f1f9;--desktop-accent-line:#496cc1;--desktop-primary:#d9231d;--desktop-primary-ink:#fff;--desktop-primary-hover:#ba211d;--desktop-heading:#10182d;--desktop-focus:#0646bc;--desktop-radius:10px;--desktop-shadow:0 14px 45px #172b4a1a;--motion-border-style:solid; }
body[data-modus] .modus-icon { width:25px;height:25px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
body[data-modus] .modus-header { position:fixed;inset:0 0 auto;height:76px;background:#0646b0;color:#fff;display:flex;align-items:center;gap:34px;padding:0 27px;z-index:30;border-bottom:1px solid #043b94; }
body[data-modus] .modus-wordmark { color:#fff;font-size:32px;font-weight:850;letter-spacing:.02em;line-height:1; }
body[data-modus] .modus-roles { display:flex;border:1px solid #d9e5ff;border-radius:9px;overflow:hidden; }
body[data-modus] .modus-role { color:#fff;padding:9px 25px;min-height:42px; }
body[data-modus] .modus-role[aria-pressed=true] { color:#0646bc;background:#f8fafc;font-weight:700; }
body[data-modus] .modus-header-right { margin-left:auto;display:flex;align-items:center;gap:25px; }
body[data-modus] .modus-local { font-size:12px; }
body[data-modus] .modus-header-button { display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #9ab8e8;border-radius:7px;color:#fff; }
body[data-modus] .sidebar { position:fixed;inset:76px auto 0 0;width:190px!important;background:var(--modus-paper);border-right:1px solid #d3d5dc;display:flex;flex-direction:column;padding:25px 17px 18px;z-index:20;overflow:visible; }
body[data-modus] .sidebar > :is(.brand,.sidebar-bottom) { display:none!important; }
body[data-modus] #navigation { display:none; }
body[data-modus] #navigation.modus-nav-open { display:block;position:fixed;right:17px;top:80px;width:270px;max-height:calc(100vh - 100px);overflow:auto;background:#fffefa;border:1px solid #bfc7d6;border-radius:12px;padding:14px;box-shadow:0 12px 45px #172b4a22;z-index:50; }
body[data-modus] #navigation .nav-item { color:#163d90;min-height:42px; }
body[data-modus] #main { margin-left:190px!important;padding:76px 0 20px!important;min-width:0;background:#faf9f5; }
body[data-modus] #main > .view { padding:26px;max-width:none;margin:0; }
body[data-modus][data-route=modus] #main > :is(.topbar,#contextPanel,.footer) { display:none!important; }
body[data-modus] :is(.shell-bitmap,.motion-dot,.intro-bitmap,.context-art) { display:none!important; }
body[data-modus] .modus-steps { display:flex;flex-direction:column;gap:27px; }
body[data-modus] .modus-step { display:grid;grid-template-columns:32px 1fr;align-items:center;gap:6px 13px;text-align:left;color:#093eaa;min-height:112px;position:relative; }
body[data-modus] .modus-step .modus-icon { grid-column:2;grid-row:1;width:37px;height:37px; }
body[data-modus] .modus-step strong { grid-column:2;font-size:15px; }
body[data-modus] .modus-step-number { grid-row:1 / 3;align-self:start;display:grid;place-items:center;border:2px solid #a1a8b8;color:#7b849c;border-radius:50%;width:32px;height:32px;font-size:21px;font-weight:600;background:#faf9f5; }
body[data-modus] .modus-step::after { content:"";width:1px;background:#c6cbd7;position:absolute;top:41px;bottom:-18px;left:15px; }
body[data-modus] .modus-step:last-child::after { display:none; }
body[data-modus] .modus-step.current { color:var(--modus-red); }
body[data-modus] .modus-step.current .modus-step-number { color:white;background:var(--modus-red);border-color:var(--modus-red);box-shadow:inset 0 0 0 2px #faf9f5; }
body[data-modus] .modus-mascot { display:block;width:165px;height:190px;object-fit:contain;object-position:bottom;margin-top:auto; }
body[data-modus] .modus-help { display:flex;align-items:center;gap:15px;color:var(--modus-blue);font-weight:650;padding:16px 10px; }
body[data-modus] #main > .modus-workspace { padding:0;display:grid;grid-template-columns:minmax(275px,var(--modus-catalog-width,37%)) minmax(0,1fr);min-height:calc(100vh - 76px);background:var(--modus-paper); }
body[data-modus][data-route=modus] { overflow:hidden; }
body[data-modus][data-route=modus] #main { height:100vh;padding-bottom:0!important; }
body[data-modus] #main > .modus-workspace { height:calc(100vh - 76px);min-height:0;overflow:hidden; }
body[data-modus] :is(.modus-catalog,.modus-detail) { overflow-y:auto;overscroll-behavior:contain; }
body[data-modus] .modus-catalog { padding:25px 20px;border-right:1px solid #d3d5dc;min-width:0; }
body[data-modus] .modus-catalog h2 { font-size:clamp(23px,2.15vw,34px);line-height:1.2;letter-spacing:-.035em;color:#10131d; margin-bottom:20px; }
body[data-modus] .modus-search { display:flex;align-items:center;gap:10px;border:1px solid #aeb6c5;border-radius:10px;background:#fffefa;min-height:47px;padding:0 12px;color:#7d879e; }
body[data-modus] .modus-search input { width:100%;min-width:0;border:0!important;box-shadow:none!important;background:none;font-size:15px;padding:10px 0;color:#10182d;outline-offset:3px; }
body[data-modus] .modus-filters { display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0; }
body[data-modus] .modus-field { display:flex;flex-direction:column;gap:6px;font-size:14px;color:#0a3d9c;font-weight:600;margin-bottom:12px; }
body[data-modus] .modus-field :is(input,textarea,select) { color:#14223e;background:#fffefa;min-width:0;width:100%;border:1px solid #b2bdce;border-radius:8px;padding:10px 12px;font:400 15px/1.4 var(--sans); }
body[data-modus] .modus-field textarea { min-height:100px;resize:vertical; }
body[data-modus] .modus-field select[multiple] { min-height:120px;max-height:180px;padding:5px; }
body[data-modus] .modus-field select[multiple] option { padding:5px;white-space:normal; }
body[data-modus] .modus-checks { border:0;padding:0;min-width:0; }
body[data-modus] .modus-options { max-height:220px;overflow:auto;border:1px solid #c7cfdd;border-radius:8px;padding:8px 10px;background:#fffefa; }
body[data-modus] .modus-options label { display:flex;align-items:flex-start;gap:9px;padding:6px 0;font-weight:400;color:#263e64; }
body[data-modus] .modus-options input { width:17px;height:17px;min-height:17px;margin:2px 0 0;flex-shrink:0;accent-color:#0646bc; }
body[data-modus] .modus-options strong { display:block;color:#12449c;font-size:12px;padding:8px 0 3px; }
body[data-modus] .modus-filters .modus-field { margin:0; }
body[data-modus] .modus-count { margin:13px 0 8px;font-size:12px;color:#68738b; }
body[data-modus] .modus-exercise-list { display:flex;flex-direction:column;gap:5px; }
body[data-modus] .modus-exercise { display:flex;align-items:center;gap:14px;border:1px solid #dedfe3;border-radius:9px;padding:17px 13px;text-align:left;min-width:0;width:100%;position:relative;background:transparent; }
body[data-modus] .modus-exercise.selected { background:#e9f1f7;border-color:#c9dbe8;box-shadow:inset 4px 0 0 #d9231d; }
body[data-modus] .modus-exercise:hover { background:#eff3f7; }
body[data-modus] .modus-exercise-copy { min-width:0;display:flex;flex-direction:column;gap:5px; }
body[data-modus] .modus-exercise-copy strong { color:#10182d;font-size:16px;line-height:1.3; }
body[data-modus] .modus-exercise-copy > span { font-size:13px;color:#53617d;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.45; }
body[data-modus] .modus-stamp { width:48px;height:54px;display:grid;place-items:center;flex-shrink:0;border:2px solid #0646bc;border-radius:10px;color:#0646bc;background:#fffefa; }
body[data-modus] .modus-stamp .modus-icon { width:32px;height:32px; }
body[data-modus] .selected .modus-stamp { border-color:#d9231d;color:#d9231d; }
body[data-modus] .modus-chevron { color:#0646bc;font-size:34px;margin-left:auto; }
body[data-modus] .modus-detail { padding:25px 27px 40px;min-width:0; }
body[data-modus] .modus-detail-head { display:flex;align-items:center;gap:22px;margin-bottom:12px; }
body[data-modus] .modus-detail-head h1 { font-size:clamp(25px,2.6vw,43px);line-height:1.17;font-weight:750;letter-spacing:-.035em;color:#080e1b;overflow-wrap:break-word; }
body[data-modus] .modus-stamp-large { width:73px;height:78px;background:#d9231d;border-color:#d9231d;color:#fff;border-radius:13px; }
body[data-modus] .modus-stamp-large .modus-icon { width:49px;height:49px; }
body[data-modus] .modus-lead { font-size:clamp(17px,1.6vw,23px);line-height:1.45;white-space:pre-line;color:#10182d; }
body[data-modus] .modus-goal { border-top:1px solid #c7cbd5;border-bottom:1px solid #c7cbd5;margin:22px 0 14px;padding:14px 0;display:grid;grid-template-columns:auto 1fr;gap:10px 16px;align-items:start; }
body[data-modus] .modus-goal p { font-size:16px;padding-top:5px; }
body[data-modus] .modus-supports h3 { font-size:16px;margin-bottom:10px; }
body[data-modus] .modus-support-buttons { display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px; }
body[data-modus] .modus-button { display:inline-flex;align-items:center;justify-content:center;gap:10px;color:#0646bc;border:1px solid #496cc1;border-radius:8px;padding:10px 12px;background:#fffefa;min-height:44px;line-height:1.3; }
body[data-modus] .modus-link { display:inline-flex;align-items:center;gap:10px;text-align:left;color:#0646bc;padding:8px 0;line-height:1.35; }
body[data-modus] .modus-link:hover { text-decoration:underline; }
body[data-modus] .modus-primary { display:inline-flex;align-items:center;justify-content:center;gap:15px;background:#d9231d;color:#fff;border:1px solid #bc1816;border-radius:10px;padding:14px 23px;min-height:54px;font-weight:700;font-size:18px; }
body[data-modus] .modus-primary:hover { background:#bd201c; }
body[data-modus] .modus-main-actions { display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 0;border-bottom:1px solid #c7cbd5; }
body[data-modus] .modus-plan { border:1px solid #dadde3;border-radius:10px;margin:17px 0;padding:0 16px 12px; }
body[data-modus] .modus-plan summary { padding:13px 0;font-size:19px;color:#111d3b;font-weight:700;cursor:pointer; }
body[data-modus] .modus-plan ol { counter-reset:modus; }
body[data-modus] .modus-plan li { counter-increment:modus;display:flex;align-items:center;gap:12px;border-top:1px solid #d5d9e1;min-height:45px; }
body[data-modus] .modus-plan li:before { content:attr(value);font-size:14px;color:#303f5c; }
body[data-modus] .modus-plan li > .modus-icon { width:23px;color:#0646bc; }
body[data-modus] .modus-plan-title { text-align:left;font-size:14px;color:#172544;line-height:1.3; }
body[data-modus] .modus-plan-controls { margin-left:auto;display:flex; }
body[data-modus] .modus-plan-controls button { padding:5px 8px;font-size:23px;color:#71809c; }
body[data-modus] .modus-life { width:100%;display:flex;align-items:center;gap:15px;min-height:52px;text-align:left;color:#0646bc;border-top:1px solid #c7cbd5;font-size:18px; }
body[data-modus] .modus-life::after { content:'›';margin-left:auto;font-size:30px; }
body[data-modus] .modus-muted, body[data-modus] .modus-empty { color:#53617d;font-size:13px;line-height:1.5; }
body[data-modus] :is(.modus-evidence,.modus-clinical) { font-size:13px;color:#455474;padding:9px 0;border-bottom:1px solid #d3d5dc; }
body[data-modus] :is(.modus-evidence,.modus-clinical) summary { color:#0646bc;cursor:pointer;font-weight:600; }
body[data-modus] :is(.modus-evidence,.modus-clinical) p { margin:8px 0; }
body[data-modus] .modus-notice { position:fixed;bottom:10px;left:210px;max-width:75vw;background:#fffefa;box-shadow:0 3px 14px #14213c1a;color:#183e8e;z-index:80;border-radius:7px;pointer-events:none; }
body[data-modus] .modus-notice:not(:empty) { padding:8px 13px;border:1px solid #c0cbdc; }
body[data-modus] .modus-dialog { width:min(780px,92vw);max-height:88vh;overflow:auto;background:#faf9f5;color:#182340;border:1px solid #adb9cc;border-radius:15px;padding:27px; }
body[data-modus] .modus-dialog h2 { font-size:25px;margin-bottom:14px; }
body[data-modus] .modus-dialog :is(p,form,details) { margin-bottom:13px; }
body[data-modus] .modus-dialog .modus-actions { display:flex;gap:10px;justify-content:flex-end;margin-top:15px; }
body[data-modus] .modus-history { border-top:1px solid #cbd1dd;padding:12px 0; }
body[data-modus] .modus-header :focus-visible { outline:3px solid white;outline-offset:3px; }
body[data-modus] :is(.modus-workspace,.modus-steps,.modus-dialog) :focus-visible { outline:3px solid #0646bc;outline-offset:3px; }
body[data-modus] #main > .topbar { padding:15px 24px;background:#faf9f5; }
body[data-modus] .footer { padding:20px; }
@media(max-width:1150px) { body[data-modus] .sidebar{width:155px!important;padding:20px 11px}body[data-modus] #main{margin-left:155px!important}body[data-modus] .modus-step{grid-template-columns:27px 1fr;gap:7px}body[data-modus] .modus-step strong{font-size:13px}body[data-modus] .modus-mascot{width:135px;height:160px}body[data-modus] .modus-detail{padding:24px 19px}body[data-modus] .modus-catalog{padding:24px 16px}body[data-modus] .modus-support-buttons{grid-template-columns:1fr}body[data-modus] .modus-support-buttons .modus-button{justify-content:flex-start}body[data-modus] .modus-main-actions{align-items:stretch;flex-direction:column} }
@media(max-width:850px) { body[data-modus] .modus-header{padding:0 17px;gap:17px}body[data-modus] .modus-wordmark{font-size:25px}body[data-modus] .modus-role{padding:8px 12px;font-size:13px}body[data-modus] .modus-local{display:none}body[data-modus] .sidebar{width:90px!important;padding:22px 9px}body[data-modus] #main{margin-left:90px!important}body[data-modus] .modus-step{display:flex;flex-direction:column;align-items:center;text-align:center;min-height:110px}body[data-modus] .modus-step::after{display:none}body[data-modus] .modus-step .modus-icon{width:27px;height:27px}body[data-modus] .modus-step strong{font-size:10px}body[data-modus] .modus-mascot{width:72px;height:110px}body[data-modus] .modus-help{font-size:0;padding:16px}body[data-modus] #main>.modus-workspace{grid-template-columns:minmax(230px,var(--modus-catalog-width,40%)) minmax(0,1fr)}body[data-modus] .modus-stamp{display:none}body[data-modus] .modus-detail-head{gap:0}body[data-modus] .modus-goal{display:block}body[data-modus] .modus-notice{left:100px} }
@media(max-width:650px) { body[data-modus] .modus-header-right{display:none}body[data-modus] #main>.modus-workspace{display:flex;flex-direction:column}body[data-modus] .modus-catalog{border-right:0;border-bottom:1px solid #d3d5dc}body[data-modus] .modus-exercise-list{max-height:260px;overflow:auto}body[data-modus] .modus-exercise{padding:12px}body[data-modus] .modus-detail-head h1{font-size:27px}body[data-modus] .modus-header{gap:14px}body[data-modus] .modus-role{padding:7px 8px;font-size:12px}body[data-modus] .modus-wordmark{font-size:23px} }
@media(prefers-reduced-motion:reduce) { body[data-modus] :is(.modus-workspace,.modus-header,.modus-steps) * { animation:none!important;transition:none!important; } }
@media(max-height:760px) { body[data-modus] .modus-step{min-height:82px}body[data-modus] .modus-steps{gap:16px}body[data-modus] .modus-mascot{width:130px;height:120px} }

/* Workspace display preferences affect the catalogue only, never exercise stimuli. */
body[data-modus] .modus-list-display { margin:8px 0;color:var(--modus-blue);font-size:13px; }
body[data-modus] .modus-list-display summary { cursor:pointer;padding:9px 0;font-weight:600; }
body[data-modus] .modus-list-display .modus-field { margin-top:8px; }
body[data-modus] .modus-list-display .modus-link { margin-left:12px; }
body[data-modus] .modus-active-filters { display:flex;flex-wrap:wrap;gap:6px;margin:10px 0; }
body[data-modus] .modus-active-filters[hidden] { display:none; }
body[data-modus] .modus-filter-chip { max-width:100%;overflow-wrap:anywhere;text-align:left;padding:7px 9px;min-height:36px;background:#eef3fb;color:#174895;border:1px solid #b9cbe5;border-radius:8px;font-size:12px;line-height:1.4; }
body[data-modus] .modus-list-display button[aria-pressed=true] { background:#e9f1f7;box-shadow:inset 0 0 0 1px #0646bc; }
body[data-modus] .modus-workspace[data-compact=true] .modus-exercise { padding:10px;min-height:58px;gap:10px; }
body[data-modus] .modus-workspace[data-compact=true] .modus-exercise-copy > span { display:none; }
body[data-modus] .modus-workspace[data-compact=true] .modus-catalog .modus-stamp { width:32px;height:36px; }
body[data-modus] .modus-workspace[data-compact=true] .modus-catalog .modus-stamp .modus-icon { width:24px;height:24px; }
body[data-modus] .modus-dialog input[type=range] { padding:8px 0;accent-color:#0646bc; }
body[data-modus] .modus-plan #modusHideDone { font-size:13px;margin:0 0 6px; }

body[data-modus] .modus-detail-head h1 { min-width:0;flex:1;overflow-wrap:anywhere; }
body[data-modus] .modus-detail-head > .modus-favourite { flex-shrink:0; }

/* A static navigation helper never evaluates performance and stays out of active tasks. */
body[data-modus][data-ui-session=active] .modus-mascot,body[data-modus][data-session] .modus-mascot { visibility:hidden; }

/* Session selection controls remain in the shell, away from exercise dialogs. */
body[data-modus] .modus-catalog-shortcuts { display:flex;flex-wrap:wrap;gap:6px;margin-top:12px; }
body[data-modus] .modus-catalog-shortcuts .modus-button { margin:0;padding:7px 10px;font-size:13px;min-height:40px; }
body[data-modus] .modus-catalog-shortcuts button[aria-pressed=true] { color:white;background:#0646bc; }
body[data-modus] .modus-row-edit { font-size:12px;padding:2px 0;min-height:28px; }
body[data-modus] .modus-session-overview { list-style:decimal;padding-left:24px;margin:16px 0; }
body[data-modus] .modus-session-overview li { margin:12px 0;padding-left:6px; }
body[data-modus] .modus-discard { margin:18px 0 0;padding:16px;border:1px solid #b9cbe5;border-radius:8px;background:#edf3fc; }
body[data-modus] .modus-discard button { margin-right:14px; }
body[data-modus] .modus-mascot-setting { display:grid;gap:4px;margin:6px 0 12px;color:var(--modus-muted);font-size:12px; }
body[data-modus] .modus-mascot-setting select { width:100%;min-height:34px;padding:5px 7px;font:inherit;font-size:12px;color:var(--modus-ink);background:#fffefa;border:1px solid var(--modus-line);border-radius:6px; }
body[data-modus] .modus-template-actions { display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--modus-line); }
body[data-modus] .modus-template-preview { max-height:38vh;overflow:auto;margin:10px 0;padding-left:24px; }
body[data-modus] .modus-template-preview li { margin:8px 0; }

/* Clear recovery when a catalogue filter has no matches. */
body[data-modus] .modus-empty-state { display:grid;justify-items:start;gap:6px;padding:14px 2px; }
body[data-modus] .modus-empty-state .modus-empty { margin:0; }
body[data-modus] .modus-empty-reset { margin:0; }
body[data-modus] .modus-count { min-height:1.5em; }

/* Saved set editing stays readable in a narrow workspace. */
body[data-modus] .modus-template-editor { list-style:none;padding:0;display:grid;gap:14px; }
body[data-modus] .modus-template-editor > li { padding:14px;border:1px solid var(--modus-line);border-radius:10px;background:#fffefa; }
body[data-modus] .modus-template-editor h3 { font-size:17px;line-height:1.4;margin:0 0 10px;overflow-wrap:anywhere; }
body[data-modus] .modus-template-row-settings { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
body[data-modus] .modus-template-row-controls,body[data-modus] .modus-template-management { display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px; }
body[data-modus] .modus-template-row-controls { margin-top:8px; }
body[data-modus] .modus-template-management { padding:12px 0;border-top:1px solid var(--modus-line); }
body[data-modus] .modus-dialog .modus-actions { flex-wrap:wrap; }
body[data-modus] .modus-template-management .modus-link,body[data-modus] .modus-template-row-controls .modus-link { min-height:36px;white-space:normal;text-align:left; }
@media(max-width:650px) { body[data-modus] .modus-template-row-settings { grid-template-columns:1fr; } }
body[data-modus] .modus-template-edit-dialog[open] { display:flex;flex-direction:column;height:min(820px,88vh);overflow:hidden; }
body[data-modus] .modus-template-edit-dialog > :is(h2,p) { flex-shrink:0; }
body[data-modus] .modus-template-edit-dialog > form { display:flex;flex-direction:column;min-height:0;overflow:hidden;margin:0; }
body[data-modus] .modus-template-edit-body { min-height:0;overflow:auto;overscroll-behavior:contain;padding:3px; }
body[data-modus] .modus-template-edit-dialog .modus-actions { flex-shrink:0;padding-top:12px;border-top:1px solid var(--modus-line); }

/* Multi-meeting course workspace, keeping the existing plan and runners. */
body[data-modus] .modus-course-dialog { width:min(920px,94vw); }
body[data-modus] .modus-course-toolbar,body[data-modus] .modus-course-form-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
body[data-modus] .modus-course-list { display:grid;gap:10px; }
body[data-modus] .modus-course-list-item { border:1px solid var(--modus-line);border-radius:10px;padding:14px;background:#fffefa; }
body[data-modus] .modus-course-list-item h3,body[data-modus] .modus-course-timeline h3 { font-size:18px;margin:0 0 8px;overflow-wrap:anywhere; }
body[data-modus] .modus-course-timeline { list-style:none;padding:0;display:grid;gap:16px; }
body[data-modus] .modus-course-timeline>li { padding:16px;border:1px solid var(--modus-line);border-left:4px solid #0646bc;border-radius:10px;background:#fffefa; }
body[data-modus] .modus-course-timeline details { margin-top:10px; }
body[data-modus] .modus-course-timeline summary { color:#0646bc;cursor:pointer;padding:8px 0; }
body[data-modus] .modus-course-timeline details p { white-space:pre-wrap; }
body[data-modus] .modus-course-meeting-actions { display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:10px; }
body[data-modus] .modus-course-goal { padding:14px;border-radius:8px;background:#edf3fb; }
@media(max-width:650px){body[data-modus] .modus-course-toolbar,body[data-modus] .modus-course-form-grid{grid-template-columns:1fr;}}

/* At zoom/narrow widths the workspace follows document flow, keeping actions reachable. */
@media(max-width:650px) {
  body[data-modus][data-route=modus] { overflow:auto; }
  body[data-modus][data-route=modus] .modus-header { position:relative;height:auto;min-height:76px;flex-wrap:wrap;gap:12px;padding:12px 16px; }
  body[data-modus][data-route=modus] .modus-header-right { display:flex;width:100%;margin:0;gap:8px;flex-wrap:wrap; }
  body[data-modus][data-route=modus] .sidebar { position:relative;inset:auto;width:auto!important;border-right:0;padding:12px 16px; }
  body[data-modus][data-route=modus] .modus-steps { flex-direction:row;gap:12px; }
  body[data-modus][data-route=modus] .modus-step { flex:1;min-height:76px;gap:4px; }
  body[data-modus][data-route=modus] .sidebar > :is(.modus-mascot,.modus-mascot-setting) { display:none; }
  body[data-modus][data-route=modus] .modus-help { font-size:14px;padding:8px; }
  body[data-modus][data-route=modus] #main { margin-left:0!important;padding-top:0!important;height:auto; }
  body[data-modus][data-route=modus] #main > .modus-workspace { height:auto;overflow:visible; }
  body[data-modus][data-route=modus] :is(.modus-catalog,.modus-detail) { overflow:visible;flex:none; }
  body[data-modus] .modus-notice { left:10px;right:10px;max-width:calc(100vw - 20px); }
  body[data-modus] .modus-dialog { padding:16px; }
}
body[data-modus] :is(.modus-stop-signals,.modus-case-summary) { margin:16px 0;padding:14px;border:1px solid var(--modus-line);border-radius:9px; }
body[data-modus] .modus-stop-signals h2 { font-size:18px; }
body[data-modus] .modus-unavailable { color:var(--modus-muted); }
body[data-modus] .modus-step:not(.current) .modus-step-number { color:#53617d; }
body[data-modus] .modus-plan-controls button { color:#53617d; }
body[data-modus] .modus-version { display:block;margin-top:4px;color:#eef4ff;font-size:11px;line-height:1.4;font-weight:400;letter-spacing:normal;white-space:normal; }
body[data-modus] .modus-selection-limits { margin:12px 0;padding-top:8px;border-top:1px solid var(--modus-line); }
body[data-modus] .modus-selection-limits :is(h3,h4) { font-size:14px;margin:6px 0; }
body[data-modus] :is(.modus-selection-limits,.modus-short-route-steps,.modus-dialog,.modus-stop-signals) { overflow-wrap:anywhere; }
body[data-modus] .modus-course-summary { margin:16px 0;padding:14px 16px;border:1px solid #b9cbe5;border-radius:10px;background:#edf3fb; }
body[data-modus] .modus-course-summary h3 { font-size:13px;letter-spacing:.02em;color:#53617d;margin:0 0 6px; }
body[data-modus] .modus-course-summary p { margin:6px 0; }
body[data-modus] .modus-course-linked { padding:12px 0;margin-bottom:14px;border-block:1px solid var(--modus-line); }
body[data-modus] .modus-course-fixed[open] { display:flex;flex-direction:column;max-height:88vh;overflow:hidden; }
body[data-modus] .modus-course-fixed > :is(h2,p) { flex-shrink:0; }
body[data-modus] .modus-course-fixed > form { display:flex;flex-direction:column;min-height:0;overflow:hidden;margin-bottom:0; }
body[data-modus] .modus-course-body { min-height:0;overflow:auto;overscroll-behavior:contain;padding:3px; }
body[data-modus] .modus-course-fixed .modus-actions { flex-shrink:0;padding-top:12px;border-top:1px solid var(--modus-line); }
