:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-canvas:#f2f5f6;--color-canvas-strong:#e9eef0;--color-surface:#fff;--color-surface-subtle:#f7f9f9;--color-surface-raised:#fbfcfc;--color-ink:#142126;--color-ink-soft:#334247;--color-muted:#59686d;--color-faint:#748287;--color-border:#d7e0e2;--color-border-strong:#bcc9cc;--color-accent:#08796c;--color-accent-strong:#055f56;--color-accent-soft:#e2f2ef;--color-accent-faint:#f0f8f6;--color-critical:#c2410c;--color-critical-strong:#9a3412;--color-critical-soft:#ffe4d3;--color-critical-faint:#fff5ef;--color-danger:#a6352b;--color-danger-soft:#fff0ee;--color-warning:#765a23;--color-warning-soft:#f9f3e5;--color-focus:#08796c;--color-overlay:#0f1b1fb3;--font-sans:"MiSans", "HarmonyOS Sans SC", "Source Han Sans SC", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:"IBM Plex Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:clamp(1.65rem, 4vw, 2.25rem);--text-3xl:clamp(2rem, 6vw, 3.5rem);--leading-tight:1.24;--leading-normal:1.62;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.35rem;--radius-round:999px;--shadow-sm:0 1px 2px #14212612;--shadow-md:0 12px 32px #14212614;--shadow-lg:0 24px 72px #14212629;--content-reading:74ch;--content-wide:88rem;--control-height:2.75rem;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--duration-fast:.12s;--duration-normal:.18s;--ease-standard:cubic-bezier(.2, 0, 0, 1)}.ui-app-frame{width:min(100%, var(--content-wide));min-height:100vh;padding:max(var(--space-5), var(--safe-top)) max(var(--space-4), var(--safe-right)) max(var(--space-12), calc(var(--safe-bottom) + var(--space-8))) max(var(--space-4), var(--safe-left));margin-inline:auto}.app-shell{--stack-gap:var(--space-6)}.app-header{z-index:40;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe0;border:1px solid #d7e0e2db;position:sticky;inset-block-start:var(--safe-top)}.app-kicker{margin:0 0 var(--space-1);color:var(--color-accent-strong);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:800}.app-title{color:var(--color-ink);font-size:var(--text-lg);letter-spacing:-.02em;font-weight:780;line-height:var(--leading-tight);margin:0}.app-header nav .ui-button{min-width:4.25rem}.app-header nav .ui-button.active{background:var(--color-accent-soft);color:var(--color-accent-strong);border-color:#08796c40}.app-shell>main{min-width:0}#main-content>section:not(.knowledge-map){max-width:var(--content-reading);padding:clamp(var(--space-5), 4vw, var(--space-10));border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-sm)}#main-content>section:not(.knowledge-map)>p:first-child{color:var(--color-accent-strong);font-size:var(--text-xs);letter-spacing:.1em;margin-block-end:var(--space-2);font-weight:800}#main-content>section:not(.knowledge-map)>h1{font-size:var(--text-2xl);margin-block-end:var(--space-4)}#main-content>section:not(.knowledge-map)>h1+p{color:var(--color-muted)}.app-footer{color:var(--color-muted);font-size:var(--text-xs)}.app-footer p,.pwa-status p{margin:0}.pwa-status{width:min(100%,96rem);margin:var(--space-3) auto 0;box-shadow:var(--shadow-lg)}.pwa-status__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-stack{gap:var(--stack-gap,var(--space-4));flex-direction:column;min-width:0;display:flex}.ui-cluster{align-items:center;gap:var(--cluster-gap,var(--space-3));flex-wrap:wrap;min-width:0;display:flex}.ui-toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-card{min-width:0;padding:clamp(var(--space-4), 2vw, var(--space-6));border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm)}.ui-card[data-elevation=raised]{box-shadow:var(--shadow-md)}.ui-card[data-tone=accent]{background:linear-gradient(145deg, var(--color-accent-faint), var(--color-surface) 58%);border-color:#08796c47}.ui-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-block-end:var(--space-4);display:flex}.ui-card__title,.ui-section-header__title{font-size:var(--text-xl);margin:0}.ui-card__description,.ui-section-header__description{max-width:var(--content-reading);margin:var(--space-2) 0 0;color:var(--color-muted);font-size:var(--text-sm)}.ui-section-header{justify-content:space-between;align-items:flex-end;gap:var(--space-5);min-width:0;display:flex}.ui-section-header__eyebrow{color:var(--color-accent-strong);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;margin-block-end:var(--space-1);font-weight:800}.ui-button{min-width:0;min-height:var(--control-height);justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);color:var(--color-ink);cursor:pointer;text-align:center;transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-standard);background:0 0;border:1px solid #0000;padding:.625rem 1rem;font-weight:720;line-height:1.2;text-decoration:none;display:inline-flex}.ui-button:hover:not(:disabled){transform:translateY(-1px)}.ui-button:active:not(:disabled){transform:translateY(0)}.ui-button:disabled,.ui-button[aria-disabled=true]{cursor:not-allowed;opacity:.48}.ui-button[data-variant=primary]{border-color:var(--color-accent);background:var(--color-accent);color:#fff;box-shadow:0 8px 20px #08796c29}.ui-button[data-variant=primary]:hover:not(:disabled){border-color:var(--color-accent-strong);background:var(--color-accent-strong)}.ui-button[data-variant=secondary]{border-color:var(--color-border-strong);background:var(--color-surface)}.ui-button[data-variant=secondary]:hover:not(:disabled),.ui-button[data-variant=ghost]:hover:not(:disabled){background:var(--color-accent-faint);color:var(--color-accent-strong);border-color:#08796c59}.ui-button[data-variant=ghost]{border-color:#0000}.ui-button[data-variant=danger]{background:var(--color-danger-soft);color:var(--color-danger);border-color:#a6352b47}.ui-button[data-size=small]{min-height:2.5rem;padding-inline:var(--space-3);font-size:var(--text-sm)}.ui-button[data-size=large]{min-height:3.125rem;padding-inline:var(--space-5);font-size:var(--text-lg)}.ui-button[data-icon-only=true]{width:var(--control-height);padding:0}.ui-button__spinner{border:2px solid;border-inline-end-color:#0000;border-radius:50%;width:1rem;height:1rem;animation:.7s linear infinite ui-spin}@keyframes ui-spin{to{transform:rotate(1turn)}}.ui-badge{align-items:center;gap:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-round);background:var(--color-surface-subtle);min-height:1.75rem;color:var(--color-ink-soft);font-size:var(--text-xs);white-space:nowrap;padding:.25rem .625rem;font-weight:760;line-height:1.1;display:inline-flex}.ui-badge[data-tone=accent]{background:var(--color-accent-soft);color:var(--color-accent-strong);border-color:#08796c47}.ui-badge[data-priority=S]{border:2px solid var(--color-critical-strong);background:var(--color-critical);color:#fff;font-weight:850;box-shadow:0 .25rem .75rem #c2410c3d}.ui-badge[data-priority=A]{background:var(--color-warning-soft);color:#92400e;border-color:#b4530975;font-weight:840}.ui-badge[data-priority=B]{border-color:var(--color-border-strong);background:var(--color-surface-raised);color:var(--color-muted);font-weight:760}.ui-badge.learning-method-badge{border-radius:.6rem;gap:.35rem;min-height:1.9rem;padding:.18rem .55rem .18rem .2rem;font-weight:840}.learning-method-badge__tag{color:#fff;min-width:2.25rem;min-height:1.35rem;font-family:var(--font-mono);letter-spacing:.04em;border-radius:.38rem;place-items:center;padding-inline:.22rem;font-size:.68rem;font-weight:850;line-height:1;display:inline-grid}.ui-badge.learning-method-badge[data-method=memorize]{background:var(--color-critical-faint);color:var(--color-critical-strong);border-color:#c2410c7a}.ui-badge.learning-method-badge[data-method=memorize] .learning-method-badge__tag{background:var(--color-critical)}.ui-badge.learning-method-badge[data-method=understand]{color:#075985;background:#eef8ff;border-color:#0369a166}.ui-badge.learning-method-badge[data-method=understand] .learning-method-badge__tag{background:#0369a1}.ui-badge.learning-method-badge[data-method=calculate]{color:#5b21b6;background:#f5f3ff;border-color:#6d28d961}.ui-badge.learning-method-badge[data-method=calculate] .learning-method-badge__tag{background:#6d28d9}.ui-badge.learning-method-badge[data-method=case]{color:#9f1239;background:#fff1f2;border-color:#9f12395c}.ui-badge.learning-method-badge[data-method=case] .learning-method-badge__tag{background:#be123c}.ui-badge[data-tone=danger]{background:var(--color-danger-soft);color:var(--color-danger);border-color:#a6352b3d}.ui-field{gap:var(--space-2);min-width:0;display:grid}.ui-field__label{color:var(--color-ink-soft);font-size:var(--text-sm);font-weight:720}.ui-field__required{color:var(--color-danger)}.ui-field__control{width:100%;min-height:var(--control-height);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard);padding:.7rem .85rem;line-height:1.4}.ui-field__control:hover:not(:disabled){border-color:var(--color-accent)}.ui-field__control:focus-visible{border-color:var(--color-accent);outline-offset:1px;outline:3px solid #08796c38}.ui-field__control:disabled{background:var(--color-canvas-strong);cursor:not-allowed}textarea.ui-field__control{resize:vertical;min-height:8rem}.ui-field__hint,.ui-field__error{font-size:var(--text-xs);margin:0}.ui-field__hint{color:var(--color-muted)}.ui-field__error{color:var(--color-danger);font-weight:650}.ui-checkbox{min-height:var(--control-height);align-items:flex-start;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);border:1px solid #0000;display:flex}.ui-checkbox:hover{border-color:var(--color-border);background:var(--color-surface-subtle)}.ui-checkbox:focus-within{border-color:var(--color-accent);background:var(--color-accent-faint)}.ui-checkbox input{width:1.25rem;height:1.25rem;accent-color:var(--color-accent);flex:none;margin:.15rem 0 0}.ui-checkbox__copy{gap:var(--space-1);min-width:0;display:grid}.ui-checkbox__label{color:var(--color-ink);font-weight:650}.ui-checkbox__description{color:var(--color-muted);font-size:var(--text-sm)}.ui-progress{gap:var(--space-2);display:grid}.ui-progress__meta{justify-content:space-between;gap:var(--space-3);color:var(--color-muted);font-size:var(--text-sm);display:flex}.ui-progress__track{border-radius:var(--radius-round);background:var(--color-canvas-strong);height:.625rem;overflow:hidden}.ui-progress__bar{border-radius:inherit;background:var(--color-accent);height:100%;transition:inline-size var(--duration-normal) var(--ease-standard)}.ui-status{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-inline-start:4px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-ink-soft);font-size:var(--text-sm);display:flex}.ui-status[data-tone=danger]{border-inline-start-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger)}.ui-status[data-tone=warning]{border-inline-start-color:var(--color-warning);background:var(--color-warning-soft);color:var(--color-warning)}.ui-empty-state{justify-items:start;gap:var(--space-3);min-height:12rem;padding:clamp(var(--space-5), 5vw, var(--space-10));border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface-subtle);display:grid}.ui-empty-state__title{font-size:var(--text-lg);margin:0}.ui-empty-state__description{max-width:58ch;color:var(--color-muted);margin:0}@media (max-width:47.99rem){.ui-app-frame{padding-inline:max(var(--space-3), var(--safe-left)) max(var(--space-3), var(--safe-right))}.ui-section-header,.ui-card__header{flex-direction:column;align-items:stretch}.ui-toolbar>.ui-button{flex:auto}.app-shell{padding-block-end:max(7rem, calc(var(--safe-bottom) + 6.25rem))}.app-header{padding:var(--space-3);position:static}.app-header>nav{z-index:60;gap:var(--space-1);padding:var(--space-2) max(var(--space-2), var(--safe-right)) max(var(--space-2), var(--safe-bottom)) max(var(--space-2), var(--safe-left));border-block-start:1px solid var(--color-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;inset-block-end:0;inset-inline:0;box-shadow:0 -8px 30px #14212617}.app-header nav .ui-button{min-width:0;min-height:3rem;padding-inline:var(--space-1);font-size:var(--text-xs)}}@media (min-width:48rem){.ui-app-frame{padding-inline:max(var(--space-6), var(--safe-left)) max(var(--space-6), var(--safe-right))}}@media (min-width:80rem){.ui-app-frame{padding-inline:max(var(--space-8), var(--safe-left)) max(var(--space-8), var(--safe-right))}}@media (prefers-reduced-motion:reduce){.ui-button__spinner{opacity:.65;border-inline-end-color:currentColor;animation:none}}.knowledge-map{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-sm);overflow:hidden;container-type:inline-size}.knowledge-map__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) var(--space-4) var(--space-3);border-block-end:1px solid var(--color-border);display:flex}.knowledge-map__heading{min-width:0}.knowledge-map__eyebrow{margin:0 0 var(--space-1);color:var(--color-accent-strong);font-size:var(--text-xs);letter-spacing:.08em;font-weight:800}.knowledge-map__title{font-size:var(--text-lg);margin:0}.knowledge-map__description{max-width:var(--content-reading);margin:var(--space-2) 0 0;color:var(--color-muted);font-size:var(--text-sm)}.knowledge-map__legend{flex-wrap:wrap;gap:.4rem .7rem;margin-block-start:var(--space-3);display:flex}.knowledge-map__legend-item{min-width:0;color:var(--color-muted);font-size:var(--text-xs);align-items:center;gap:.4rem;line-height:1.35;display:inline-flex}.knowledge-map__legend-item i{border:1px solid var(--color-border-strong);background:var(--color-surface);border-radius:.22rem;flex:none;width:.8rem;height:.8rem;display:block}.knowledge-map__legend-item[data-tone=critical] i{border:2px solid var(--color-critical-strong);background:var(--color-critical-soft);box-shadow:0 .2rem .55rem #c2410c2e}.knowledge-map__legend-item[data-tone=muted] i{background:var(--color-canvas);border-style:dashed}.knowledge-map__legend-item strong{color:var(--color-ink);margin-inline-end:.2rem;font-weight:800}.knowledge-map__toolbar{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.knowledge-map__view-switch{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-canvas);padding:.1875rem;display:inline-flex}.knowledge-map__view-button{border-radius:calc(var(--radius-md) - .1875rem);min-height:2.35rem;color:var(--color-muted);cursor:pointer;font-size:var(--text-sm);background:0 0;padding:.45rem .7rem;font-weight:700}.knowledge-map__view-button[aria-pressed=true]{background:var(--color-surface);box-shadow:var(--shadow-sm);color:var(--color-accent-strong)}.knowledge-map__body{padding:var(--space-3)}.knowledge-map__viewport{border:1px solid var(--color-border);border-radius:var(--radius-md);overscroll-behavior-x:contain;overscroll-behavior-y:auto;touch-action:pan-x pan-y pinch-zoom;cursor:grab;background:linear-gradient(#08796c0d 1px, transparent 1px), linear-gradient(90deg, #08796c0d 1px, transparent 1px), var(--color-surface-subtle);background-size:1.5rem 1.5rem;min-height:18rem;max-height:34rem;position:relative;overflow:auto}.knowledge-map__viewport[data-dragging=true]{cursor:grabbing}.knowledge-map__viewport[data-touch-pan=enabled]{overscroll-behavior:contain;touch-action:none}.knowledge-map__canvas-wrap{width:max-content;min-width:100%;padding:var(--space-3)}.knowledge-map__canvas{transform-origin:0 0;transition:transform var(--duration-normal) var(--ease-standard)}.knowledge-map__visual-panel{gap:var(--space-2);display:grid}.knowledge-map__zoom-toolbar{align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle);flex-wrap:wrap;min-height:2.5rem;padding:.25rem .4rem;display:flex}.knowledge-map__zoom-hint{color:var(--color-muted);font-size:var(--text-xs);margin-inline-start:auto}.knowledge-map__svg{overflow:visible}.knowledge-map__edge{stroke:var(--color-border-strong);stroke-width:2px}.knowledge-map__edge-label{fill:var(--color-muted);font-family:var(--font-sans);text-anchor:middle;font-size:12px}.knowledge-map__node-card{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;height:100%;box-shadow:var(--shadow-sm);color:var(--color-ink);cursor:text;font-family:var(--font-sans);-webkit-user-select:text;user-select:text;border-radius:.65rem;align-content:start;gap:.35rem;padding:.75rem .85rem;display:grid;position:relative;overflow:hidden}.knowledge-map__node-card[data-tone=accent]{background:var(--color-accent-soft);color:var(--color-accent-strong);border-color:#08796c6b}.knowledge-map__node-card[data-tone=critical]{border:2px solid var(--color-critical);background:linear-gradient(120deg, var(--color-critical-soft), var(--color-critical-faint));color:var(--color-critical-strong);border-inline-start-width:.4rem;box-shadow:0 .5rem 1.1rem #c2410c29}.knowledge-map__node-card[data-tone=critical] .knowledge-map__node-label{text-underline-offset:.17em;font-weight:850;-webkit-text-decoration:underline #c2410c73;text-decoration:underline #c2410c73;text-decoration-thickness:.1em}.knowledge-map__node-card[data-tone=muted]{background:var(--color-canvas);color:var(--color-muted);border-style:dashed}.knowledge-map__node-card[data-mastery=unknown]{border-style:dashed}.knowledge-map__node-card[data-mastery=unknown]:after{color:inherit;content:"待验收";letter-spacing:.05em;background:#ffffffb8;border:1px dashed;border-radius:.28rem;padding:.12rem .28rem;font-size:.58rem;font-weight:850;line-height:1.1;position:absolute;inset-block-start:.38rem;inset-inline-end:.42rem}.knowledge-map__node-card[data-mastery=unknown] .knowledge-map__node-label{padding-inline-end:3.45rem}.knowledge-map__node-label{overflow-wrap:anywhere;font-size:.875rem;font-weight:760;line-height:1.24;display:block}.knowledge-map__node-detail{color:var(--color-muted);overflow-wrap:anywhere;text-overflow:clip;white-space:normal;font-size:.6875rem;line-height:1.4;display:block;overflow:visible}.knowledge-map__outline{padding:var(--space-2) 0 var(--space-2) 1.45rem;margin:0}.knowledge-map__outline li{padding:var(--space-2) var(--space-1);border-block-end:1px solid var(--color-border)}.knowledge-map__outline li:last-child{border-block-end:0}.knowledge-map__outline-edge{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.knowledge-map__outline-arrow{color:var(--color-accent);font-weight:800}.knowledge-map__outline-label{color:var(--color-muted);font-size:var(--text-sm)}.knowledge-map__footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding:0 var(--space-4) var(--space-4);color:var(--color-muted);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.knowledge-map__zoom-value{min-width:3.5rem;color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);text-align:center}.knowledge-map__status{min-height:1.25rem;color:var(--color-muted);margin:0}.knowledge-map__dialog-backdrop{z-index:900;padding:max(var(--space-3), var(--safe-top)) max(var(--space-3), var(--safe-right)) max(var(--space-3), var(--safe-bottom)) max(var(--space-3), var(--safe-left));overscroll-behavior:contain;background:var(--color-overlay);display:grid;position:fixed;inset:0;overflow:auto}.knowledge-map__dialog{width:min(100%,92rem);min-height:min(48rem, calc(100dvh - var(--space-6)));max-height:calc(100dvh - var(--space-6));border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg);margin:auto;display:grid;overflow:hidden}.knowledge-map__dialog-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-block-end:1px solid var(--color-border);display:flex}.knowledge-map__dialog-title{font-size:var(--text-lg);margin:0}.knowledge-map__dialog-body{min-height:0;padding:var(--space-3);overflow:auto}.knowledge-map__dialog .knowledge-map__viewport{overscroll-behavior:contain;touch-action:none;min-height:calc(100dvh - 13rem);max-height:none}@container (width<=44rem){.knowledge-map__header{flex-direction:column;align-items:stretch}.knowledge-map__toolbar{justify-content:flex-start}.knowledge-map__toolbar .ui-button{flex:auto}}@media (max-width:47.99rem){.knowledge-map__header{padding:var(--space-3)}.knowledge-map__body{padding:var(--space-2)}.knowledge-map__viewport{min-height:16rem;max-height:27rem}.knowledge-map__footer{padding:var(--space-2) var(--space-3) var(--space-3);flex-direction:column;align-items:stretch}.knowledge-map__zoom-hint{width:100%;margin-inline-start:0}.knowledge-map__legend-item{flex:10rem}.knowledge-map__dialog{min-height:calc(100dvh - var(--space-6))}.knowledge-map__dialog-header{flex-direction:column;align-items:stretch}.knowledge-map__dialog-header .knowledge-map__toolbar{width:100%}}@media (prefers-reduced-motion:reduce){.knowledge-map__canvas{transition:none}}.app-shell{min-height:100vh;padding:0 max(var(--space-4), var(--safe-right)) max(var(--space-10), var(--safe-bottom)) max(var(--space-4), var(--safe-left))}.app-topbar{z-index:50;justify-content:space-between;align-items:center;gap:var(--space-5);width:min(100%,96rem);min-height:4.75rem;padding-block:max(var(--space-3), var(--safe-top)) var(--space-3);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f2f5f6e6;border-block-end:1px solid #bcc9ccbf;margin-inline:auto;display:flex;position:sticky;inset-block-start:0}.app-brand{align-items:center;gap:var(--space-3);color:inherit;text-decoration:none;display:inline-flex}.app-brand:hover{color:inherit}.app-brand__mark{background:var(--color-ink);color:#fff;width:2.65rem;height:2.65rem;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;border-radius:.8rem;place-items:center;font-weight:800;display:grid;box-shadow:0 8px 24px #1421262e}.app-brand .app-kicker,.app-brand .app-title{display:block}.app-topbar__status{align-items:center;gap:var(--space-2);display:flex}.topbar-stat,.settings-link,.account-chip,.account-chip__identity{border:1px solid var(--color-border);border-radius:var(--radius-round);min-height:2.25rem;color:var(--color-muted);font-size:var(--text-xs);background:#ffffffb8;align-items:center;gap:.25rem;padding:.35rem .7rem;font-weight:720;text-decoration:none;display:inline-flex}.account-chip{background:var(--color-accent-faint);color:var(--color-accent-strong);border-color:#08796c3d;padding:0;overflow:hidden}.account-chip__identity{max-width:15rem;color:inherit;background:0 0;border:0}.account-chip__identity span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-chip button{border:0;min-height:2.25rem;color:var(--color-muted);cursor:pointer;font-size:var(--text-xs);background:#ffffff8f;border-inline-start:1px solid #08796c33;padding-inline:.65rem;font-weight:760}.account-chip button:hover:not(:disabled){color:var(--color-danger)}.account-chip button:disabled{cursor:wait;opacity:.6}.account-chip--login{padding-inline:.8rem}.topbar-stat b{color:var(--color-ink);font-size:var(--text-md)}.topbar-stat[data-state=pending]{background:var(--color-warning-soft);color:var(--color-warning);border-color:#765a2340}.settings-link:hover{border-color:var(--color-accent);background:var(--color-accent-soft)}.app-layout{gap:clamp(var(--space-5), 3vw, var(--space-10));width:min(100%,96rem);margin:var(--space-6) auto 0;grid-template-columns:13rem minmax(0,1fr);display:grid}.app-sidebar{align-self:start;gap:var(--space-5);display:grid;position:sticky;inset-block-start:6.25rem}.desktop-navigation{gap:var(--space-1);display:grid}.app-nav-link{align-items:center;gap:var(--space-2);min-height:3rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-muted);border:1px solid #0000;grid-template-columns:2rem 1fr;font-weight:720;text-decoration:none;display:grid}.app-nav-link:hover{background:var(--color-surface);color:var(--color-ink)}.app-nav-link.active{border-color:var(--color-border);background:var(--color-surface);color:var(--color-accent-strong);box-shadow:var(--shadow-sm)}.app-nav-link__glyph{background:var(--color-canvas-strong);width:1.8rem;height:1.8rem;font-size:var(--text-xs);border-radius:.55rem;place-items:center;font-weight:800;display:grid}.app-nav-link.active .app-nav-link__glyph{background:var(--color-accent);color:#fff}.sidebar-brief,.sidebar-rule{padding:var(--space-4);border-radius:var(--radius-lg)}.sidebar-brief{background:var(--color-ink);color:#dce7e8;box-shadow:var(--shadow-md)}.sidebar-brief>span,.sidebar-rule>span{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.sidebar-brief strong{margin-block:var(--space-2);color:#fff;font-size:2.6rem;line-height:1;display:block}.sidebar-brief p,.sidebar-rule p{margin:0 0 var(--space-3);font-size:var(--text-sm)}.sidebar-brief a{color:#8fd9cc;font-size:var(--text-sm);font-weight:700}.sidebar-rule{border:1px dashed var(--color-border-strong);color:var(--color-muted)}.sidebar-rule>span{color:var(--color-accent-strong)}.app-layout>main{min-width:0}.app-layout>main[data-focus-origin=route]:focus{outline-color:#0000}.global-notice{justify-content:space-between;margin-block-end:var(--space-4)}.notice-dismiss{color:inherit;cursor:pointer;font-size:var(--text-xs);background:0 0;padding:0;font-weight:800;text-decoration:underline}.app-loading-bar{height:3px;border-radius:var(--radius-round);background:var(--color-canvas-strong);margin-block-end:var(--space-3);overflow:hidden}.app-loading-bar:after{border-radius:inherit;background:var(--color-accent);content:"";width:35%;height:100%;animation:1s ease-in-out infinite alternate loading-slide;display:block}@keyframes loading-slide{to{translate:185%}}.app-footer{justify-content:space-between;gap:var(--space-4);width:min(100%,96rem);margin:var(--space-10) auto 0;border-block-start:1px solid var(--color-border);color:var(--color-muted);font-size:var(--text-xs);padding-block-start:var(--space-5);display:flex}.app-footer p{margin:0}.app-footer__meta{justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;flex:none;display:flex}.app-version{font-family:var(--font-mono);white-space:nowrap}.mobile-navigation{display:none}.page-stack{gap:clamp(var(--space-5), 2.5vw, var(--space-8));min-width:0;display:grid}.page-section{gap:var(--space-4);display:grid}.section-copy,.muted-copy,.empty-inline{color:var(--color-muted);font-size:var(--text-sm)}.text-link{color:var(--color-accent-strong);font-size:var(--text-sm);font-weight:760;text-decoration:none}.text-link:hover{text-decoration:underline}.breadcrumb{gap:var(--space-2);color:var(--color-muted);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.breadcrumb a{color:var(--color-accent-strong)}.inline-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.inline-heading h2,.inline-heading p{margin-block-end:0}.inline-heading p{color:var(--color-muted);font-size:var(--text-sm);margin-block-start:var(--space-2)}.form-actions{gap:var(--space-3);flex-wrap:wrap;margin-block-start:var(--space-4);display:flex}.form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-grid__wide{grid-column:1/-1}.quick-practice-grid{gap:var(--space-4);max-width:34rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-block-start:var(--space-4);display:grid}.quick-practice-summary{gap:var(--space-2);margin-block:var(--space-3);flex-wrap:wrap;display:flex}.quick-practice-summary span{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-round);color:var(--color-muted);font-size:var(--text-xs);background:#ffffffa3}.practice-details{margin-block:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#ffffff7a}.practice-details summary{cursor:pointer;color:var(--color-accent-strong);font-weight:800}.practice-details[open] summary{margin-block-end:var(--space-4)}.help-page{--help-ink:#153239;--help-accent:#08796c}.help-page__start{gap:clamp(var(--space-5), 4vw, var(--space-10));grid-template-columns:minmax(0,1fr) minmax(22rem,.9fr);align-items:center;display:grid;overflow:hidden}.help-page__start h2,.help-page__guardrail h2{max-width:18ch;margin:var(--space-3) 0 var(--space-2);font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.18}.help-page__start p{max-width:58ch;color:var(--color-muted);margin:0}.help-path{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.help-path li{min-height:7.5rem;padding:var(--space-3);border-radius:var(--radius-md);background:#ffffffb8;border:1px solid #08796c29}.help-path span{color:var(--color-accent-strong);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;font-weight:800;display:block}.help-path strong{margin-block:var(--space-2) .25rem;color:var(--help-ink);display:block}.help-path p{font-size:var(--text-xs);margin:0;line-height:1.45}.help-section{gap:var(--space-4);display:grid}.help-section__heading{max-width:52rem}.help-section__eyebrow{margin:0 0 var(--space-1);color:var(--color-accent-strong);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:800}.help-section__heading h2{margin:0;font-size:clamp(1.35rem,2.5vw,1.85rem)}.help-section__heading>p:last-child{margin:var(--space-2) 0 0;color:var(--color-muted)}.help-map-card{gap:var(--space-4) var(--space-6);grid-template-columns:minmax(0,1.25fr) minmax(17rem,.75fr);display:grid}.help-map-card__legend{border-block-end:1px solid var(--color-border);grid-column:1/-1;margin:0;padding-block-end:var(--space-3)}.help-map-card__note{gap:var(--space-3);display:grid}.help-map-card__note p{color:var(--color-muted);font-size:var(--text-sm);margin:0;line-height:1.65}.help-map-card__note strong{color:var(--color-ink)}.help-map-card__operations{padding:var(--space-4);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-canvas)}.help-map-card__operations h3{margin:0 0 var(--space-3);font-size:var(--text-md)}.help-map-card__operations ul{gap:var(--space-2);color:var(--color-muted);font-size:var(--text-sm);margin:0;padding-inline-start:1.2rem;line-height:1.55;display:grid}.help-map-card__operations strong{color:var(--color-ink)}.help-map-card__operations kbd{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-ink);font-family:var(--font-mono);border-radius:.25rem;padding:.08rem .28rem;font-size:.78em}.help-page-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.help-feature-card{gap:var(--space-3);min-height:11rem;padding:var(--space-4);grid-template-columns:2.5rem minmax(0,1fr);align-items:start;display:grid}.help-feature-card__glyph{background:var(--color-canvas-strong);width:2.5rem;height:2.5rem;color:var(--color-accent-strong);font-size:var(--text-sm);border-radius:.7rem;place-items:center;font-weight:850;display:grid}.help-feature-card[data-tone=accent] .help-feature-card__glyph{background:var(--color-accent);color:#fff}.help-feature-card h3{font-size:var(--text-md);margin:0}.help-feature-card p{min-height:3.9rem;margin:var(--space-2) 0;color:var(--color-muted);font-size:var(--text-sm);line-height:1.55}.help-routine-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.help-routine-card{min-height:12rem;padding:var(--space-5);position:relative;overflow:hidden}.help-routine-card>span{color:var(--color-accent-strong);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:900;display:block}.help-routine-card h3{margin:var(--space-3) 0 var(--space-2);font-size:var(--text-lg)}.help-routine-card p{color:var(--color-muted);font-size:var(--text-sm);margin:0;line-height:1.65}.help-handoff-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.help-handoff-card{gap:var(--space-3);align-content:start;display:grid}.help-handoff-card h3{font-size:var(--text-lg);margin:0}.help-handoff-card ol,.help-handoff-card ul{gap:var(--space-3);color:var(--color-muted);font-size:var(--text-sm);margin:0;padding-inline-start:1.35rem;line-height:1.6;display:grid}.help-handoff-card strong{color:var(--color-ink)}.help-handoff-card code{background:var(--color-canvas-strong);color:var(--color-ink);font-family:var(--font-mono);overflow-wrap:anywhere;border-radius:.22rem;padding:.08rem .24rem;font-size:.86em}.help-handoff-card__boundary{padding:var(--space-3);border-inline-start:3px solid var(--color-accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--color-muted);font-size:var(--text-sm);background:#08796c0f;margin:0;line-height:1.6}.help-page__guardrail{gap:var(--space-6);background:linear-gradient(145deg, var(--color-warning-soft), var(--color-surface) 60%);border-color:#765a233d;grid-template-columns:minmax(13rem,.5fr) minmax(0,1fr);align-items:start;display:grid}.help-page__guardrail h2{margin-block-end:0}.help-page__guardrail ul{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.help-page__guardrail li{color:var(--color-muted);font-size:var(--text-sm);padding-inline-start:1.15rem;line-height:1.6;position:relative}.help-page__guardrail li:before{color:var(--color-warning);content:"—";font-weight:900;position:absolute;inset-inline-start:0}.today-hero{gap:clamp(var(--space-6), 5vw, var(--space-12));padding:clamp(var(--space-6), 5vw, var(--space-12));background:var(--color-ink);color:#dbe5e7;border-radius:1.6rem;grid-template-columns:minmax(0,1fr) auto;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #1421262e}.today-hero:after{content:"";border:1px solid #75d6c43d;border-radius:50%;width:22rem;height:22rem;position:absolute;inset:auto -8rem -10rem auto;box-shadow:0 0 0 4rem #75d6c40a,0 0 0 8rem #75d6c408}.today-hero__copy{z-index:1;max-width:56rem;position:relative}.today-hero h1{max-width:16ch;margin-block:var(--space-4);color:#fff;font-size:var(--text-3xl)}.today-hero p{color:#b9c8ca;max-width:62ch}.eyebrow-row{gap:var(--space-2);color:#87d4c6;font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;flex-wrap:wrap;font-weight:800;display:flex}.eyebrow-row span+span:before{color:#678086;content:"•";margin-inline-end:var(--space-2)}.hero-actions{gap:var(--space-3);flex-wrap:wrap;margin-block-start:var(--space-6);display:flex}.today-hero .ui-button[data-variant=secondary]{color:#fff;background:#ffffff14;border-color:#ffffff47}.exam-countdown{z-index:1;min-width:9.5rem;padding:var(--space-5);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff12;border:1px solid #ffffff24;align-content:center;justify-items:center;display:grid;position:relative}.exam-countdown>span{color:#9fb2b5;font-size:var(--text-sm)}.exam-countdown strong{margin-block:var(--space-1);color:#fff;font-family:var(--font-mono);font-size:clamp(3rem,8vw,5rem);line-height:1}.exam-countdown small{color:#87d4c6;margin-block-start:var(--space-3)}.today-metrics,.progress-summary,.report-auto-summary,.data-metrics{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.today-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-label{color:var(--color-muted);font-size:var(--text-xs);letter-spacing:.04em;font-weight:760;display:block}.metric-value{margin-block:var(--space-2);color:var(--color-ink);font-family:var(--font-mono);font-size:clamp(1.8rem,4vw,2.7rem);line-height:1;display:block}.metric-caption{color:var(--color-muted);font-size:var(--text-xs)}.evening-card,.due-review{justify-content:space-between;align-items:center;gap:var(--space-5);display:flex}.evening-card h2,.due-review h2{margin:var(--space-3) 0 var(--space-2)}.evening-card p,.due-review p{color:var(--color-muted);margin:0}.protective-plan{gap:var(--space-5);padding:clamp(var(--space-5), 4vw, var(--space-8));border-radius:var(--radius-xl);background:linear-gradient(145deg, var(--color-surface), var(--color-accent-faint));box-shadow:var(--shadow-md);border:1px solid #08796c33;display:grid}.protective-task-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.protective-task-list li{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#ffffffb3;grid-template-columns:2.5rem minmax(0,1fr) auto;align-items:start;display:grid}.protective-task-list li>span{background:var(--color-ink);color:#fff;width:2.5rem;height:2.5rem;font-family:var(--font-mono);border-radius:.7rem;place-items:center;font-weight:800;display:grid}.protective-task-list strong{color:var(--color-ink)}.protective-task-list p{margin:var(--space-1) 0 0;color:var(--color-muted);font-size:var(--text-sm)}.review-queue{gap:var(--space-4);scroll-margin-top:6rem;display:grid}.review-card{gap:var(--space-4);display:grid}.review-card h3{margin:var(--space-2) 0 0}.review-question{font-size:var(--text-lg);margin:0;font-weight:680}.review-answer{padding:var(--space-4);border-radius:var(--radius-lg);background:#ffffff94;border:1px solid #08796c3d}.review-answer p:last-of-type{margin-block-end:0}.session-list{gap:var(--space-3);display:grid}.session-card{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);transition:border-color var(--duration-fast), box-shadow var(--duration-fast), translate var(--duration-fast);grid-template-columns:3rem minmax(0,1fr) auto;align-items:center;display:grid}.session-card:hover{box-shadow:var(--shadow-md);border-color:#08796c59;translate:0 -1px}.session-card[data-status=completed]{background:linear-gradient(90deg, var(--color-accent-faint), var(--color-surface) 34%)}.session-card__index{background:var(--color-canvas-strong);width:3rem;height:3rem;color:var(--color-muted);font-family:var(--font-mono);border-radius:.8rem;place-items:center;font-weight:800;display:grid}.session-card[data-status=in_progress] .session-card__index,.session-card[data-status=paused] .session-card__index{background:var(--color-accent);color:#fff}.session-card__body{min-width:0}.session-card__meta{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.session-card__meta-caption,.session-meta-row__caption{border:1px solid var(--color-border);background:var(--color-canvas-strong);color:var(--color-muted);letter-spacing:.06em;white-space:nowrap;border-radius:.34rem;padding:.18rem .38rem;font-size:.66rem;font-weight:850;line-height:1.1}.session-card__title{margin:var(--space-2) 0 var(--space-1);font-size:var(--text-lg)}.session-card__title a{color:var(--color-ink);text-decoration:none}.session-card__objective{color:var(--color-muted);font-size:var(--text-sm);margin-block-end:var(--space-3)}.session-card__action{align-items:center;gap:var(--space-2);padding:var(--space-2);color:var(--color-accent-strong);font-weight:800;text-decoration:none;display:inline-flex}.plan-timeline{display:grid}.plan-day{gap:var(--space-4);grid-template-columns:1.5rem 6rem minmax(0,1fr);min-width:0;display:grid}.plan-day__rail{justify-content:center;display:flex;position:relative}.plan-day__rail:before{background:var(--color-border);content:"";width:1px;position:absolute;inset-block:0}.plan-day__rail span{z-index:1;border:3px solid var(--color-canvas);background:var(--color-border-strong);width:.85rem;height:.85rem;box-shadow:0 0 0 1px var(--color-border-strong);border-radius:50%;margin-block-start:1.45rem;position:relative}.plan-day[data-current=true] .plan-day__rail span{background:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-soft)}.plan-day__date{padding-block-start:var(--space-5)}.plan-day__date strong,.plan-day__date span{display:block}.plan-day__date span{color:var(--color-muted);font-size:var(--text-xs);margin-block-start:var(--space-1)}.plan-day__content{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);margin-block-end:var(--space-4)}.plan-day[data-current=true] .plan-day__content{box-shadow:var(--shadow-md);border-color:#08796c52}.plan-day__heading{justify-content:space-between;gap:var(--space-5);margin-block-end:var(--space-4);display:flex}.plan-day__heading h2{margin:var(--space-2) 0;font-size:var(--text-lg)}.plan-day__heading h2 a{color:var(--color-ink);text-decoration:none}.plan-day__heading p{color:var(--color-muted);font-size:var(--text-sm);margin:0}.macro-block{gap:var(--space-4);padding:clamp(var(--space-4), 3vw, var(--space-6));border:1px solid var(--color-border);border-radius:var(--radius-xl);background:#ffffff8c;display:grid}.macro-block__header{align-items:center;gap:var(--space-4);display:flex}.macro-block__number{color:var(--color-border-strong);font-family:var(--font-mono);font-size:2.8rem;font-weight:800;line-height:1}.macro-block__header h2{margin:var(--space-2) 0 0}.macro-block__sessions h3{margin-block-end:var(--space-4)}.session-timer-anchor{z-index:40;margin-block:calc(-1 * var(--space-5)) calc(-1 * var(--space-4));pointer-events:none;justify-content:flex-end;display:flex;position:sticky;inset-block-start:5.5rem}.session-timer{align-items:center;gap:var(--space-2) var(--space-3);min-width:13rem;padding:var(--space-3);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);pointer-events:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;border:1px solid #08796c47;grid-template-columns:auto auto;display:grid}.session-timer>span{color:var(--color-muted);font-size:var(--text-xs)}.session-timer>strong{font-family:var(--font-mono);font-size:var(--text-xl)}.session-timer .session-timer__progress{color:var(--color-accent-strong);grid-column:1/-1;font-weight:760}.session-timer .ui-button{grid-column:1/-1}.session-meta-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.session-activity{gap:var(--space-4);display:grid;position:relative;overflow:hidden}.session-activity:before{background:var(--color-accent);content:"";width:.28rem;position:absolute;inset-block:0;inset-inline-start:0}.session-activity__eyebrow{color:var(--color-accent-strong);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;margin:0;font-weight:850}.session-activity h2,.session-activity h3{margin:0}.session-activity__metrics{gap:var(--space-3);flex-wrap:wrap;display:flex}.session-activity__metrics span{min-width:9rem;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);color:var(--color-muted);font-size:var(--text-xs);background:#ffffffad;border:1px solid #08796c2e;gap:.15rem;display:grid}.session-activity__metrics b{color:var(--color-ink);font-family:var(--font-mono);font-size:var(--text-xl)}.session-activity__facts{gap:var(--space-3);margin:0;display:grid}.session-activity__facts div{gap:var(--space-3);grid-template-columns:4.5rem minmax(0,1fr);display:grid}.session-activity__facts dt{color:var(--color-muted);font-size:var(--text-xs);font-weight:800}.session-activity__facts dd{margin:0}.session-activity__selection-list{margin:0;padding-inline-start:1.15rem}.session-activity__selection-list li+li{margin-block-start:var(--space-1)}.session-activity__stem{padding:var(--space-4);border-inline-start:3px solid var(--color-ink);color:var(--color-ink);background:#ffffffb3;margin:0;font-weight:650;line-height:1.8}.session-activity__section{gap:var(--space-2);display:grid}.session-activity__section ol,.session-answer-details ul,.session-answer-details ol{margin:0;padding-inline-start:1.35rem}.session-activity__section li+li,.session-answer-details li+li{margin-block-start:var(--space-2)}.session-answer-details{border-radius:var(--radius-lg);background:#ffffffad;border:1px solid #08796c3d}.session-answer-details summary{padding:var(--space-4);color:var(--color-accent-strong);cursor:pointer;font-weight:800}.session-answer-details__body{gap:var(--space-3);padding:0 var(--space-4) var(--space-4);display:grid}.simulation-blueprint{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#ffffffb3;display:grid;overflow:hidden}.simulation-blueprint__row{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-block-start:1px solid var(--color-border);grid-template-columns:minmax(8rem,1.4fr) repeat(2,minmax(5rem,.8fr));display:grid}.simulation-blueprint__row:first-child{border-block-start:0}.simulation-blueprint__head{background:var(--color-canvas-strong);color:var(--color-muted);font-size:var(--text-xs);font-weight:800}.session-activity__target{color:var(--color-accent-strong);margin:0;font-weight:800}.session-lesson{gap:var(--space-5);display:grid}.session-lesson__orientation{gap:var(--space-4);grid-template-columns:minmax(0,1.25fr) minmax(17rem,.75fr);display:grid}.session-lesson__strategy ol,.session-lesson__recall ol{margin:var(--space-3) 0 0;padding-inline-start:1.35rem}.session-lesson__strategy li+li,.session-lesson__recall li+li{margin-block-start:var(--space-2)}.session-lesson__locator p{margin:var(--space-3) 0 0;color:var(--color-ink-soft);line-height:1.75}.session-lesson__sections{gap:var(--space-4);display:grid}.session-lesson-section{gap:var(--space-4);scroll-margin-block-start:6rem;display:grid}.session-lesson-section__explanation{gap:var(--space-3);color:var(--color-ink-soft);line-height:1.85;display:grid}.session-lesson-section__explanation p{margin:0}.session-lesson-section__memory{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:linear-gradient(115deg,#08796c17,#ffffffb8);border:1px solid #08796c33;grid-template-columns:6rem minmax(0,1fr);display:grid}.session-lesson-section__memory strong{color:var(--color-accent-strong);font-size:var(--text-sm)}.session-lesson-section__memory p{margin:0;line-height:1.75}.session-lesson-section__triggers,.session-lesson-section__pitfalls,.session-lesson-section__examples{gap:var(--space-3);display:grid}.session-lesson-section__triggers h4,.session-lesson-section__pitfalls h4,.session-lesson-section__examples h4{font-size:var(--text-md);margin:0}.session-lesson-section__triggers ul{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.session-lesson-section__triggers li{border-radius:var(--radius-round);background:var(--color-accent-faint);color:var(--color-accent-strong);font-size:var(--text-xs);border:1px solid #08796c38;padding:.35rem .7rem;font-weight:750}.session-lesson-section__pitfalls{padding:var(--space-4);border-inline-start:3px solid var(--color-danger);border-radius:0 var(--radius-lg) var(--radius-lg) 0;background:var(--color-danger-soft)}.session-lesson-section__pitfalls ul{margin:0;padding-inline-start:1.3rem}.session-lesson-section__pitfalls li+li{margin-block-start:var(--space-2)}.session-lesson-example{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#ffffff9e;display:grid}.session-lesson-example h5,.session-lesson-example h6,.session-lesson-example p{margin:0}.session-lesson-example h5{color:var(--color-accent-strong);font-size:var(--text-sm)}.session-lesson-example details{border-block-start:1px solid var(--color-border)}.session-lesson-example summary{color:var(--color-accent-strong);cursor:pointer;padding-block-start:var(--space-3);font-weight:800}.session-lesson-example__answer{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-canvas-strong);margin-block-start:var(--space-3);display:grid}.session-lesson-example__answer ol{margin:0;padding-inline-start:1.35rem}.session-lesson__comparisons{gap:var(--space-3);display:grid}.session-lesson__comparisons>h3{margin:0}.session-lesson__table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);max-width:100%;overflow-x:auto}.session-lesson__table-wrap table{border-collapse:collapse;width:100%;min-width:40rem;font-size:var(--text-sm)}.session-lesson__table-wrap caption{padding:var(--space-3) var(--space-4);color:var(--color-ink);text-align:start;font-weight:800}.session-lesson__table-wrap th,.session-lesson__table-wrap td{padding:var(--space-3) var(--space-4);border-block-start:1px solid var(--color-border);text-align:start;vertical-align:top}.session-lesson__table-wrap thead th{background:var(--color-canvas-strong);color:var(--color-muted);font-size:var(--text-xs)}.session-lesson__references ul{margin:var(--space-3) 0 0;padding-inline-start:1.3rem}.session-lesson__references li+li{margin-block-start:var(--space-2)}.session-lesson__references a{color:var(--color-accent-strong);font-weight:750}.session-page>.knowledge-map+.session-lesson{margin-block-start:calc(-1 * var(--space-3))}.session-lesson__map-bridge{align-items:center;gap:var(--space-3);color:var(--color-muted);font-size:var(--text-xs);letter-spacing:.03em;margin:0;font-weight:760;display:flex}.session-lesson__map-bridge>span:nth-child(2){color:var(--color-accent);font-size:var(--text-lg);line-height:1}.session-lesson__map-bridge strong{color:var(--color-accent-strong)}.session-lesson-section[data-priority=S]{border:1px solid #c2410c6b;border-block-start:5px solid var(--color-critical-strong);border-inline-start:.4rem solid var(--color-critical);background:linear-gradient(118deg, var(--color-critical-faint), #ffffffeb 32rem);box-shadow:0 .8rem 2rem #c2410c1f}.session-lesson-section[data-priority=A]{border:1px solid #b4530952;border-block-start:5px solid var(--color-warning);background:linear-gradient(118deg,#fff7ede0,#ffffffeb 30rem);border-inline-start:.35rem solid #d97706b8}.session-lesson-section[data-priority=B]{border:1px solid var(--color-border-strong);border-block-start:4px solid var(--color-border-strong);border-inline-start:.3rem solid var(--color-border-strong);background:#ffffffc2}.session-lesson-section__key-point{gap:var(--space-3);padding:var(--space-4);border:1px solid #08796c5c;border-inline-start:.35rem solid var(--color-accent-strong);border-radius:var(--radius-lg);background:linear-gradient(110deg, var(--color-accent-faint), #ffffffd6);color:var(--color-ink);grid-template-columns:max-content minmax(0,1fr);align-items:start;font-weight:700;display:grid}.session-lesson-section__key-point strong{background:var(--color-accent-strong);color:#fff;font-size:var(--text-xs);letter-spacing:.06em;text-underline-offset:.16em;white-space:nowrap;border-radius:.25rem;padding:.2rem .45rem;font-weight:850;text-decoration:underline;text-decoration-thickness:.12em}.session-lesson-section__key-point span{font-weight:720;line-height:1.8}.session-lesson-section[data-priority=S] .session-lesson-section__key-point{border-color:#c2410c6b;border-inline-start-color:var(--color-critical-strong);background:linear-gradient(110deg, var(--color-critical-soft), #ffffffe0)}.session-lesson-section[data-priority=S] .session-lesson-section__key-point strong{background:var(--color-critical-strong)}.session-lesson-section[data-priority=A] .session-lesson-section__key-point{border-color:#b4530957;background:linear-gradient(110deg, var(--color-warning-soft), #ffffffe0);border-inline-start-color:#b45309}.session-lesson-section[data-priority=A] .session-lesson-section__key-point strong{background:#9a3412}.session-lesson-section__inline-highlight{background:var(--color-accent-soft);color:var(--color-ink);text-underline-offset:.16em;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.24rem;padding:.03em .22em;font-weight:850;-webkit-text-decoration:underline #08796c94;text-decoration:underline #08796c94;text-decoration-thickness:.11em}.session-lesson-section[data-priority=S] .session-lesson-section__inline-highlight{background:var(--color-critical-soft);text-decoration-color:#c2410ca3}.session-lesson-section[data-priority=A] .session-lesson-section__inline-highlight{background:#ffedd5;text-decoration-color:#b45309a3}.session-lesson-section__map-nodes{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-canvas-strong);flex-wrap:wrap;display:flex}.session-lesson-section__map-nodes>strong{color:var(--color-muted);font-size:var(--text-xs);letter-spacing:.06em;white-space:nowrap}.session-lesson-section__map-nodes ul{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.session-lesson-section__map-nodes li{border-radius:var(--radius-md);color:var(--color-ink);font-size:var(--text-xs);background:#ffffffc7;border:1px solid #08796c33;padding:.3rem .65rem;font-weight:720}.session-lesson-section__hardest-point{gap:var(--space-3);padding:var(--space-4);border:1px solid #d977066b;border-inline-start:.35rem solid var(--color-warning);border-radius:var(--radius-lg);background:linear-gradient(110deg,#fff7edf5,#ffffffc2);grid-template-columns:max-content minmax(0,1fr);align-items:start;display:grid}.session-lesson-section__hardest-point strong{color:#fff;font-size:var(--text-xs);letter-spacing:.06em;text-underline-offset:.15em;white-space:nowrap;background:#9a3412;border-radius:.25rem;padding:.2rem .45rem;font-weight:850;text-decoration:underline;text-decoration-thickness:.1em}.session-lesson-section__hardest-point p{color:var(--color-ink);margin:0;font-weight:720;line-height:1.75}.session-lesson-section__memory{gap:var(--space-4);border:1px solid #08796c61;border-block-start:5px solid var(--color-accent-strong);border-inline-start:.4rem solid var(--color-accent);background:linear-gradient(120deg,#08796c29,#ffffffe6);grid-template-columns:1fr;box-shadow:0 .65rem 1.5rem #08796c14}.session-lesson-section__memory>header{gap:var(--space-2);display:grid}.session-lesson-section__memory>header>span{background:var(--color-accent-strong);color:#fff;width:-moz-fit-content;width:fit-content;font-size:var(--text-xs);letter-spacing:.1em;text-underline-offset:.16em;border-radius:.25rem;padding:.22rem .5rem;font-weight:850;text-decoration:underline;text-decoration-thickness:.12em}.session-lesson-section__memory>header>strong{color:var(--color-ink);font-size:var(--text-lg);text-underline-offset:.2em;font-weight:850;line-height:1.65;-webkit-text-decoration:underline #08796c85;text-decoration:underline #08796c85;text-decoration-thickness:.12em}.session-lesson-section__memory-glossary{border-block-start:1px solid #08796c2e;padding-block-start:var(--space-3)}.session-lesson-section__memory-glossary h4{margin:0 0 var(--space-3);color:var(--color-ink);font-size:var(--text-sm)}.session-lesson-section__memory-glossary dl{gap:var(--space-2);margin:0;display:grid}.session-lesson-section__memory-glossary dl>div{gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:#ffffffc7;border:1px solid #08796c33;grid-template-columns:minmax(7rem,.35fr) minmax(0,1fr);align-items:start;display:grid}.session-lesson-section__memory-glossary dt{background:var(--color-accent-soft);width:-moz-fit-content;width:fit-content;color:var(--color-accent-strong);text-underline-offset:.14em;border-radius:.2rem;padding:.14rem .42rem;font-weight:850;text-decoration:underline}.session-lesson-section__memory-glossary dd{color:var(--color-ink-soft);margin:0;line-height:1.7}.session-lesson-section__memory-boundary{color:var(--color-ink-soft);font-size:var(--text-xs);border-block-start:1px dashed #08796c61;margin:0;padding-block-start:var(--space-3);font-weight:650;line-height:1.7}.session-lesson-section__triggers{padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-accent-faint);border:1px solid #08796c38}.session-lesson-section__triggers h4{color:var(--color-accent-strong)}.session-lesson-section__pitfalls{border:1px solid #a6352b57;border-inline-start-width:.4rem;box-shadow:0 .4rem 1rem #a6352b0f}.session-lesson-section__pitfalls h4{gap:var(--space-2);background:var(--color-danger);color:#fff;text-underline-offset:.14em;border-radius:.25rem;align-items:center;width:-moz-fit-content;width:fit-content;margin:0;padding:.2rem .45rem;font-weight:850;text-decoration:underline;text-decoration-thickness:.1em;display:flex}.session-lesson-section__pitfalls h4:before{content:"避坑";letter-spacing:.08em;font-size:.65rem}.session-lesson-section__examples h4{color:var(--color-ink)}.session-activity__facts{grid-template-columns:repeat(2,minmax(0,1fr))}.session-activity__facts div{padding:var(--space-3);border-radius:var(--radius-md);background:#ffffffad}.session-activity--case>section{gap:var(--space-2);display:grid}.session-activity--case h4{margin:0}.session-activity--case ul,.session-activity--case ol{margin:0;padding-inline-start:1.35rem}.session-activity__answer{border-radius:var(--radius-lg);background:#ffffffb3;border:1px solid #08796c3d}.session-activity__answer summary{padding:var(--space-4);color:var(--color-accent-strong);cursor:pointer;font-weight:800}.session-activity__answer-grid{gap:var(--space-4);padding:0 var(--space-4) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.session-activity__simulation-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.session-activity__simulation-list li{justify-content:space-between;gap:var(--space-4);padding:var(--space-3);border-radius:var(--radius-md);background:#ffffffad;display:flex}.session-activity__simulation-list span{color:var(--color-muted);text-align:end}.session-sources{gap:var(--space-4);display:grid}.session-sources__list{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.session-sources__list>li{min-width:0}.session-source{height:100%}.session-source h3{font-size:var(--text-md);margin:0}.session-source__meta{gap:var(--space-2);margin:var(--space-3) 0 0;display:grid}.session-source__meta div{gap:var(--space-2);grid-template-columns:5rem minmax(0,1fr);display:grid}.session-source__meta dt{color:var(--color-muted);font-size:var(--text-xs);font-weight:800}.session-source__meta dd{margin:0}.session-source__note{color:var(--color-ink-soft);line-height:1.7}.session-source__knowledge-link{margin-block-end:0}.session-source__knowledge-link a{color:var(--color-accent-strong);font-weight:800}.session-workspace{gap:var(--space-4);grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr);align-items:start;display:grid}.steps-list,.mastery-list{gap:var(--space-2);margin-block:var(--space-4);display:grid}.mastery-item{gap:var(--space-2);border-block-end:1px solid var(--color-border);padding-block-end:var(--space-3);display:grid}.mastery-item>span{font-size:var(--text-sm);font-weight:650}.segmented{border-radius:var(--radius-md);background:var(--color-canvas-strong);grid-template-columns:repeat(3,1fr);padding:.2rem;display:grid}.segmented button{min-height:2.25rem;color:var(--color-muted);cursor:pointer;font-size:var(--text-sm);background:0 0;border-radius:.55rem}.segmented button[aria-pressed=true]{background:var(--color-surface);color:var(--color-accent-strong);box-shadow:var(--shadow-sm);font-weight:800}.calculated-row{gap:var(--space-3);margin-block:var(--space-4);flex-wrap:wrap;display:flex}.calculated-row span{padding:var(--space-2) var(--space-3);border-radius:var(--radius-round);font-size:var(--text-sm);background:#ffffffa6}.saved-count,.copy-status{color:var(--color-muted);font-size:var(--text-sm)}.case-dimensions{margin-block:var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg);background:#ffffff85;border:1px solid #08796c33}.case-dimensions legend{padding-inline:var(--space-2);color:var(--color-ink);font-weight:760}.case-dimension-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.case-question-responses{min-width:0;padding:var(--space-4);border-radius:var(--radius-lg);background:#ffffff85;border:1px solid #08796c33;margin:0}.case-question-responses legend{padding-inline:var(--space-2);color:var(--color-ink);font-weight:800}.case-question-responses__list{gap:var(--space-3);margin-block-start:var(--space-3);display:grid}.case-question-response{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:minmax(0,1fr) minmax(12rem,.7fr);align-items:start;display:grid}.case-question-response>p{grid-column:1/-1;margin:0;line-height:1.65}.simulation-score-grid{gap:var(--space-3);margin-block:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.simulation-score-card{min-width:0;padding:var(--space-4);border-radius:var(--radius-lg);background:#ffffff94;border:1px solid #08796c33;margin:0}.simulation-score-card legend{padding-inline:var(--space-2);color:var(--color-ink);font-weight:800}.simulation-score-card__fields{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.simulation-score-card>p{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-xs);line-height:1.6}.checkpoint-quiz{gap:var(--space-5);display:grid}.checkpoint-quiz__header{justify-content:space-between;align-items:flex-start;gap:var(--space-5);display:flex}.checkpoint-quiz__header h2{margin:var(--space-2) 0}.checkpoint-quiz__header p{max-width:52rem;color:var(--color-muted);margin:0}.checkpoint-quiz__truth-note{font-size:var(--text-xs);color:var(--color-muted)!important;margin-block-start:var(--space-2)!important}.checkpoint-quiz__score{min-width:8rem;padding:var(--space-3);border-radius:var(--radius-lg);background:#ffffffb3;border:1px solid #08796c38;justify-items:end;display:grid}.checkpoint-quiz__score span{color:var(--color-muted);font-size:var(--text-xs)}.checkpoint-quiz__score strong{font-family:var(--font-mono);font-size:var(--text-xl);margin-block-start:var(--space-1)}.checkpoint-quiz__score small{color:var(--color-critical-strong);text-align:end;margin-block-start:var(--space-1);font-size:.68rem;font-weight:800}.checkpoint-quiz__questions{gap:var(--space-3);display:grid}.checkpoint-question{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#ffffff9e;margin:0}.checkpoint-question[data-state=correct]{border-color:#08796c59}.checkpoint-question[data-state=wrong]{background:var(--color-danger-soft);border-color:#b4483e61}.checkpoint-question legend{padding-inline:var(--space-2);font-weight:740}.checkpoint-question__options{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin-block-start:var(--space-3);display:grid}.checkpoint-question__option{align-items:flex-start;gap:var(--space-2);min-height:3rem;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;font-size:var(--text-sm);display:flex}.checkpoint-question__option:not([data-response-kind=auxiliary]):has(input:checked){border-color:var(--color-accent);background:var(--color-accent-faint)}.checkpoint-question__option:focus-within{outline:2px solid var(--color-accent);outline-offset:2px}.checkpoint-question__option[data-response-kind=auxiliary] input{accent-color:var(--color-ink)}.checkpoint-question__options input{accent-color:var(--color-accent);flex:none;margin-block-start:.2rem}.checkpoint-question__explanation{padding:var(--space-3);border-radius:var(--radius-md);background:#ffffffb8;margin-block-start:var(--space-3)}.checkpoint-question__explanation strong{color:var(--color-ink)}.checkpoint-question__explanation p{margin:var(--space-1) 0 0;color:var(--color-muted);font-size:var(--text-sm)}.knowledge-toolbar{align-items:end;gap:var(--space-4);grid-template-columns:minmax(16rem,32rem) auto;display:grid}.session-next-card{justify-content:space-between;align-items:center;gap:var(--space-5);display:flex}.session-next-card h2{margin:var(--space-2) 0}.session-next-card p{color:var(--color-muted);margin:0}.session-next-card .ui-button{flex:none}.search-count{margin:0 0 var(--space-3);color:var(--color-muted);font-size:var(--text-sm)}.knowledge-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.knowledge-module-card{gap:var(--space-3);min-width:0;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-sm);display:grid}.knowledge-module-card__top{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.knowledge-code{background:var(--color-ink);color:#fff;width:3rem;height:3rem;font-family:var(--font-mono);border-radius:.75rem;place-items:center;font-weight:800;display:grid}.knowledge-module-card h2{margin:0}.knowledge-module-card h2 a{color:var(--color-ink);text-decoration:none}.knowledge-module-card>p{color:var(--color-muted);margin:0}.knowledge-detail-grid{gap:var(--space-4);grid-template-columns:minmax(0,1.55fr) minmax(18rem,.65fr);align-items:start;display:grid}.knowledge-side-stack{gap:var(--space-4);display:grid}.trusted-knowledge-content{color:var(--color-ink-soft)}.trusted-knowledge-content h3{margin-block:var(--space-6) var(--space-3);font-size:var(--text-lg)}.trusted-knowledge-content h3:first-child{margin-block-start:0}.trusted-knowledge-content h4{margin-block-end:var(--space-2)}.trusted-knowledge-content .map{align-items:center;gap:var(--space-2);margin-block:var(--space-4);flex-wrap:wrap;display:flex}.trusted-knowledge-content .node{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-accent-faint);color:var(--color-accent-strong);border:1px solid #08796c38;font-weight:700}.trusted-knowledge-content .arrow{color:var(--color-faint)}.trusted-knowledge-content .cols{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.trusted-knowledge-content .box,.trusted-knowledge-content .selftest{margin-block:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-subtle)}.trusted-knowledge-content .must{border:1px solid #c2410c61;border-block-start:4px solid var(--color-critical-strong);border-inline-start:.4rem solid var(--color-critical);background:linear-gradient(118deg, var(--color-critical-faint), #ffffffeb);box-shadow:0 .55rem 1.25rem #c2410c17}.trusted-knowledge-content .must h4{background:var(--color-critical-strong);color:#fff;width:-moz-fit-content;width:fit-content;font-size:var(--text-xs);text-underline-offset:.15em;border-radius:.3rem;margin-block-start:0;padding:.22rem .52rem;font-weight:850;text-decoration:underline;text-decoration-thickness:.1em}.trusted-knowledge-content .danger{border-inline-start:4px solid var(--color-danger);background:var(--color-danger-soft)}.trusted-knowledge-content .linkbox{background:var(--color-accent-faint)}.trusted-knowledge-content table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.trusted-knowledge-content th,.trusted-knowledge-content td{padding:var(--space-3);border:1px solid var(--color-border);text-align:start;vertical-align:top}.trusted-knowledge-content th{background:var(--color-canvas-strong)}.trusted-knowledge-content li+li{margin-block-start:var(--space-2)}.trusted-knowledge-content p>b,.trusted-knowledge-content li>b,.trusted-knowledge-content td>b{background:var(--color-accent-soft);color:var(--color-ink);text-underline-offset:.14em;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.2rem;padding:.03em .2em;font-weight:850;-webkit-text-decoration:underline #08796c8a;text-decoration:underline #08796c8a;text-decoration-thickness:.1em}.trusted-knowledge-content .must p>b,.trusted-knowledge-content .must li>b{background:var(--color-critical-soft);text-decoration-color:#c2410ca3}.trusted-knowledge-content .tag{border-radius:var(--radius-round);background:var(--color-accent-soft);color:var(--color-accent-strong);font-size:var(--text-xs);padding:.15rem .5rem;font-weight:800;display:inline-flex}.subject-metrics{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.subject-metrics .ui-card{gap:var(--space-4);display:grid}.attempt-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:42rem}.data-table caption{padding:var(--space-3);color:var(--color-muted);font-size:var(--text-xs);text-align:start}.data-table th,.data-table td{padding:var(--space-3) var(--space-4);border-block-start:1px solid var(--color-border);text-align:start}.data-table thead th{background:var(--color-surface-subtle);color:var(--color-muted);font-size:var(--text-xs)}.data-table tbody th small{color:var(--color-muted);margin-block-start:var(--space-1);font-weight:400;display:block}.rate-state{border-radius:var(--radius-round);background:var(--color-accent-soft);color:var(--color-accent-strong);font-size:var(--text-xs);padding:.25rem .6rem;font-weight:800;display:inline-flex}.rate-state[data-band=red]{background:var(--color-danger-soft);color:var(--color-danger)}.rate-state[data-band=orange]{background:var(--color-warning-soft);color:var(--color-warning)}.mistake-list{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mistake-facts{gap:var(--space-3);display:grid}.mistake-facts div{gap:var(--space-3);grid-template-columns:5rem minmax(0,1fr);display:grid}.mistake-facts dt{color:var(--color-muted);font-size:var(--text-xs);font-weight:760}.mistake-facts dd{font-size:var(--text-sm);margin:0}.report-preview,.validation-errors{margin:var(--space-4) 0;white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.7}.report-preview{max-height:24rem;padding:var(--space-4);border-radius:var(--radius-md);background:#ffffffa6;border:1px solid #08796c2e;overflow:auto}.release-review-summary{margin-block:var(--space-4);padding:var(--space-4);border-inline-start:3px solid var(--color-accent);border-radius:0 var(--radius-md) var(--radius-md) 0;background:#08796c12}.release-review-summary p,.release-handoff-status{color:var(--color-ink-soft);font-size:var(--text-sm);margin:0}.release-review-summary p+p{margin-block-start:var(--space-2)}.release-handoff-status{margin-block:var(--space-3)}.settings-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.settings-grid>.ui-card{gap:var(--space-4);display:grid}.cloud-card,.restore-card,.codex-exchange-card{grid-column:1/-1}.account-line,.storage-line{justify-content:space-between;gap:var(--space-4);padding-block:var(--space-2);border-block-end:1px solid var(--color-border);font-size:var(--text-sm);margin:0;display:flex}.account-line span,.storage-line span{color:var(--color-muted)}.account-line strong{overflow-wrap:anywhere;text-align:end}.codex-exchange-controls{gap:var(--space-4);grid-template-columns:minmax(16rem,.8fr) minmax(18rem,1.2fr);display:grid}.codex-exchange-facts{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.codex-exchange-facts div{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:#ffffffad;grid-template-columns:6rem minmax(0,1fr);display:grid}.codex-exchange-facts dt{color:var(--color-muted);font-size:var(--text-xs);font-weight:800}.codex-exchange-facts dd{overflow-wrap:anywhere;min-width:0;margin:0}.codex-candidate-actions{gap:var(--space-3);display:grid}.plan-editor-grid{gap:var(--space-4);grid-template-columns:minmax(0,1.3fr) minmax(19rem,.7fr);align-items:start;display:grid}.plan-release-panel{gap:var(--space-4);display:grid}.code-editor{font-family:var(--font-mono);tab-size:2;font-size:.78rem;line-height:1.6;min-height:34rem!important}.release-facts{gap:var(--space-2);margin-block:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.release-facts span{padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-muted);font-size:var(--text-xs);background:#ffffffb3;gap:.2rem;display:grid}.release-facts b{color:var(--color-ink);font-family:var(--font-mono);font-size:var(--text-md)}.release-blocks,.compact-history,.linked-session-list{gap:var(--space-2);padding:0;list-style:none;display:grid}.release-blocks li{gap:var(--space-1) var(--space-2);padding-block:var(--space-2);border-block-end:1px solid var(--color-border);grid-template-columns:4rem minmax(0,1fr);display:grid}.release-blocks li span,.release-blocks li small{color:var(--color-muted);font-size:var(--text-xs)}.release-blocks li small{grid-column:2}.compact-history li,.linked-session-list li{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-block-end:1px solid var(--color-border);display:flex}.compact-history li span{color:var(--color-accent-strong);font-family:var(--font-mono);font-weight:800}.compact-history li strong{min-width:0;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.linked-session-list a{color:var(--color-ink);font-weight:700;text-decoration:none}.linked-session-list span{color:var(--color-muted);font-size:var(--text-sm)}.page-loading{border-radius:var(--radius-xl);background:linear-gradient(100deg, var(--color-canvas-strong) 20%, var(--color-surface) 40%, var(--color-canvas-strong) 60%);background-size:220% 100%;min-height:24rem;animation:1.1s linear infinite skeleton}@keyframes skeleton{to{background-position-x:-220%}}@media (max-width:70rem){.app-shell{padding-block-end:calc(5.5rem + var(--safe-bottom))}.app-layout{grid-template-columns:minmax(0,1fr);margin-block-start:var(--space-4)}.app-sidebar{display:none}.mobile-navigation{z-index:70;inset-inline:max(var(--space-3), var(--safe-left)) max(var(--space-3), var(--safe-right));gap:var(--space-1);padding:var(--space-2);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border:1px solid #bcc9cccc;border-radius:1.15rem;grid-template-columns:repeat(6,minmax(0,1fr));display:grid;position:fixed;inset-block-end:max(var(--space-3), var(--safe-bottom));box-shadow:0 16px 50px #14212633}.mobile-navigation .app-nav-link{flex-direction:column;justify-content:center;gap:.15rem;min-height:3.15rem;padding:.25rem;font-size:.68rem;display:flex}.mobile-navigation .app-nav-link__glyph{border-radius:.45rem;width:1.5rem;height:1.5rem;font-size:.65rem}.app-footer{padding-block-end:var(--space-4)}.plan-editor-grid,.knowledge-detail-grid,.help-page__start,.help-map-card,.help-page__guardrail{grid-template-columns:1fr}}@media (max-width:54rem){.today-metrics,.progress-summary,.report-auto-summary,.data-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.session-workspace,.session-lesson__orientation,.knowledge-grid,.settings-grid,.mistake-list,.simulation-score-grid,.session-sources__list{grid-template-columns:1fr}.cloud-card,.restore-card,.codex-exchange-card{grid-column:auto}.trusted-knowledge-content .cols{grid-template-columns:1fr}.session-timer-anchor{margin-block:0;display:block;position:static}.session-timer{width:100%}.help-page-grid,.help-routine-grid,.help-handoff-grid{grid-template-columns:1fr}.help-feature-card p{min-height:0}}@media (max-width:40rem){.app-shell{padding-inline:max(var(--space-3), var(--safe-left)) max(var(--space-3), var(--safe-right))}.app-topbar{min-height:4rem}.app-brand__mark{width:2.35rem;height:2.35rem}.app-brand .app-kicker{display:none}.app-title{font-size:var(--text-md)}.topbar-stat:first-child{display:none}.app-topbar{gap:var(--space-2)}.app-topbar__status{gap:var(--space-1);min-width:0}.account-chip__identity{max-width:7.5rem;padding-inline:.5rem}.account-chip button{padding-inline:.45rem}.settings-link{display:none}.app-topbar[data-auth-state=signed-in]{flex-wrap:wrap}.app-topbar[data-auth-state=signed-in] .app-topbar__status{justify-content:flex-end;width:100%}.today-hero{padding:var(--space-6);grid-template-columns:1fr}.today-hero h1{font-size:clamp(2rem,11vw,3.2rem)}.exam-countdown{justify-content:start;gap:var(--space-2);min-width:0;padding:var(--space-3) var(--space-4);grid-template-columns:auto auto auto}.exam-countdown strong{font-size:2.4rem}.exam-countdown small{grid-column:1/-1;margin:0}.today-metrics,.progress-summary,.report-auto-summary,.data-metrics,.subject-metrics{grid-template-columns:1fr}.session-card{gap:var(--space-3);grid-template-columns:2.5rem minmax(0,1fr)}.protective-task-list li{grid-template-columns:2.5rem minmax(0,1fr)}.protective-task-list li>.ui-badge{grid-column:2;justify-self:start}.session-card__index{width:2.5rem;height:2.5rem}.session-card__action{grid-column:2;justify-self:start;padding-inline:0}.plan-day{gap:var(--space-2);grid-template-columns:1rem minmax(0,1fr)}.plan-day__date{grid-column:2;padding-block-start:var(--space-3)}.plan-day__date strong,.plan-day__date span{margin-inline-end:var(--space-2);display:inline}.plan-day__content{padding:var(--space-4);grid-column:2}.plan-day__heading,.evening-card,.due-review,.inline-heading{flex-direction:column;align-items:stretch}.form-grid{grid-template-columns:1fr}.quick-practice-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.codex-exchange-controls,.codex-exchange-facts{grid-template-columns:1fr}.form-grid__wide{grid-column:auto}.case-dimension-grid,.case-question-response,.session-lesson-section__memory,.session-activity__facts,.session-activity__answer-grid{grid-template-columns:1fr}.session-lesson-section__memory{gap:var(--space-2)}.session-lesson__map-bridge{align-items:flex-start;gap:var(--space-1);flex-direction:column}.session-lesson__map-bridge>span:nth-child(2){rotate:-45deg}.session-lesson-section__key-point,.session-lesson-section__memory-glossary dl>div{gap:var(--space-1);grid-template-columns:1fr}.session-lesson-section__key-point strong{white-space:normal}.session-activity__simulation-list li{flex-direction:column;align-items:flex-start}.session-activity__simulation-list span{text-align:start}.session-activity__facts div{gap:var(--space-1);grid-template-columns:1fr}.simulation-blueprint__row{gap:var(--space-2);padding-inline:var(--space-3);font-size:var(--text-sm);grid-template-columns:minmax(0,1.25fr) repeat(2,minmax(4rem,.75fr))}.checkpoint-quiz__header{flex-direction:column;align-items:stretch}.checkpoint-quiz__score{justify-items:start}.session-next-card{flex-direction:column;align-items:stretch}.checkpoint-question__options{grid-template-columns:1fr}.ui-section-header__title{font-size:1.55rem}.ui-section-header>.ui-toolbar{width:100%}.macro-block__number{font-size:2rem}.knowledge-toolbar{grid-template-columns:1fr}.search-count{margin:0}.release-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.app-footer{align-items:flex-start;gap:var(--space-2);flex-direction:column}.app-footer__meta{justify-content:space-between;width:100%}}@media (max-width:22rem){.mobile-navigation{grid-template-columns:repeat(5,minmax(0,1fr))}.mobile-navigation .app-nav-link:last-child{display:none}}@media (prefers-reduced-motion:reduce){.app-loading-bar:after,.page-loading{animation:none}.session-card:hover{translate:none}}*,:before,:after{box-sizing:border-box}html{background:var(--color-canvas);min-width:20rem;color:var(--color-ink);font-family:var(--font-sans);font-synthesis:none;scroll-behavior:smooth;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{overflow-wrap:anywhere;background:linear-gradient(180deg, #ffffff8c, transparent 16rem), var(--color-canvas);min-width:20rem;min-height:100vh;color:var(--color-ink);font-size:var(--text-md);line-height:var(--leading-normal);-webkit-tap-highlight-color:#08796c24;margin:0}button,input,textarea,select{color:inherit;font:inherit}button,[role=button],summary,a{touch-action:manipulation}button{border:0}a{color:var(--color-accent-strong);text-underline-offset:.2em;text-decoration-thickness:.08em}a:hover{color:var(--color-accent)}:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}:where(h1,h2,h3,h4,h5,h6,[id]){scroll-margin-top:5rem}h1,h2,h3,h4,p{margin-block-start:0}h1,h2,h3,h4{color:var(--color-ink);letter-spacing:-.025em;font-weight:720;line-height:var(--leading-tight);text-wrap:balance}p,li{text-wrap:pretty}code,kbd,samp,pre,time,[data-numeric]{font-variant-numeric:tabular-nums}img,svg,canvas{max-width:100%;display:block}::selection{background:var(--color-accent-soft);color:var(--color-ink)}#root{min-height:100vh}.skip-link{z-index:1000;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-ink);box-shadow:var(--shadow-md);color:var(--color-surface);font-size:var(--text-sm);transition:translate var(--duration-fast) var(--ease-standard);font-weight:700;text-decoration:none;position:fixed;inset-block-start:max(var(--space-3), var(--safe-top));inset-inline-start:max(var(--space-3), var(--safe-left));translate:0 -200%}.skip-link:focus-visible{translate:0}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
