@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/62492e45f348cf87-s.200fngwr9-1p7.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/8f9704ed0c18c9e0-s.1takx9ikz9d70.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/c73d4b34880585a8-s.2y9p18vgfwis7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/f00b8cc54454926d-s.2c2xg2hj0hbwk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/741805f5bd1ef272-s.104ommt447oe9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/ea3421846039b7f3-s.p.23jyvdx2mwxjn.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/62492e45f348cf87-s.200fngwr9-1p7.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/8f9704ed0c18c9e0-s.1takx9ikz9d70.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/c73d4b34880585a8-s.2y9p18vgfwis7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/f00b8cc54454926d-s.2c2xg2hj0hbwk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/741805f5bd1ef272-s.104ommt447oe9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/ea3421846039b7f3-s.p.23jyvdx2mwxjn.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/20aee433927f7d4b-s.3x137p1ifayze.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/256e1f7f180674ba-s.1x971o6gwfy6w.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/be3bf58b83159894-s.1ri8jgkzoo1l-.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/753b6407f468151f-s.1veyi_qwtij86.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/292081311a6a8abc-s.1t-2a-g4m3ypx.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.20at88_q9f_kt.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/20aee433927f7d4b-s.3x137p1ifayze.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/256e1f7f180674ba-s.1x971o6gwfy6w.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/be3bf58b83159894-s.1ri8jgkzoo1l-.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/753b6407f468151f-s.1veyi_qwtij86.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/292081311a6a8abc-s.1t-2a-g4m3ypx.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.20at88_q9f_kt.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Fallback";src:local(Times New Roman);ascent-override:87.87%;descent-override:28.41%;line-gap-override:0.0%;size-adjust:117.91%}.source_serif_4_121235d1-module__jRVwLq__className{font-family:"Source Serif 4","Source Serif 4 Fallback"}.source_serif_4_121235d1-module__jRVwLq__variable{--font-serif:"Source Serif 4", "Source Serif 4 Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-app:#faf9f5;--bg-surface:#fff;--bg-elevated:#fff;--bg-subtle:#f5f3ed;--bg-hover:#0f0c080a;--bg-muted:#f0eee6;--bg-selected:#e3dacc;--border-subtle:#0f0c0814;--border-default:#0f0c081f;--border-strong:#0f0c0838;--text-primary:#0f0c08eb;--text-secondary:#0f0c08a3;--text-tertiary:#0f0c0880;--text-inverse:#faf9f5;--accent:#d97757;--accent-strong:#c46a4d;--accent-bg:#d977571f;--link:#a85536;--link-hover:#8c4127;--success:#558a42;--success-bg:#558a421a;--warning:#c9a82d;--warning-bg:#c9a82d1f;--error:#a63244;--error-bg:#a6324414;--info:#6a9bcc;--info-strong:#4e7caa;--info-bg:#6a9bcc1f;--shadow-sm:0 1px 3px #1414130f;--shadow-md:0 4px 10px #14141314;--shadow-card:0 12px 30px #14141314, 0 2px 8px #1414130d;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:17px;--text-xl:20px;--text-2xl:24px;--text-3xl:32px;--tap-min:44px;--page-max:1120px;--measure:70ch;--radius-pill:999px;--text-on-accent:#fff;--font-ui:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:var(--font-serif), Iowan Old Style, Charter, Georgia, serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-app:#1c1b19;--bg-surface:#242321;--bg-elevated:#2a2927;--bg-subtle:#2a2927;--bg-hover:#faf9f514;--bg-muted:#2e2c26;--bg-selected:#3c392f;--border-subtle:#faf9f51a;--border-default:#faf9f524;--border-strong:#faf9f542;--text-primary:#faf9f5eb;--text-secondary:#faf9f5a3;--text-tertiary:#faf9f580;--text-inverse:#1c1b19;--accent:#e08968;--accent-strong:#e89b7e;--accent-bg:#e0896829;--link:#e89b7e;--link-hover:#f0b49c;--success:#6fa859;--success-bg:#6fa85929;--warning:#dabe4a;--warning-bg:#dabe4a29;--error:#dc8290;--error-bg:#dc829024;--info:#7eaeda;--info-strong:#a4c9e9;--info-bg:#7eaeda29;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 10px #00000052;--shadow-card:0 12px 30px #0006, 0 2px 8px #0000003d}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-app:#1c1b19;--bg-surface:#242321;--bg-elevated:#2a2927;--bg-subtle:#2a2927;--bg-hover:#faf9f514;--bg-muted:#2e2c26;--bg-selected:#3c392f;--border-subtle:#faf9f51a;--border-default:#faf9f524;--border-strong:#faf9f542;--text-primary:#faf9f5eb;--text-secondary:#faf9f5a3;--text-tertiary:#faf9f580;--text-inverse:#1c1b19;--accent:#e08968;--accent-strong:#e89b7e;--accent-bg:#e0896829;--link:#e89b7e;--link-hover:#f0b49c;--success:#6fa859;--success-bg:#6fa85929;--warning:#dabe4a;--warning-bg:#dabe4a29;--error:#dc8290;--error-bg:#dc829024;--info:#7eaeda;--info-strong:#a4c9e9;--info-bg:#7eaeda29;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 10px #00000052;--shadow-card:0 12px 30px #0006, 0 2px 8px #0000003d}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg-app);color:var(--text-primary);font-family:var(--font-ui);font-size:var(--text-md);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;line-height:1.55}a{color:var(--link);text-decoration:none}@media (hover:hover) and (pointer:fine){a:hover{color:var(--link-hover)}}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}input[type=radio],input[type=checkbox],input[type=range],progress{accent-color:var(--accent)}::selection{background:var(--accent-bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.page,.container,.container-wide,.container-problem{max-width:var(--page-max);padding:var(--space-10) var(--space-6) var(--space-12);margin:0 auto}.page--builder{max-width:1680px}.topbar{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);z-index:20;position:sticky;top:0}.topbar-inner{max-width:var(--page-max);padding:var(--space-3) var(--space-6);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;display:flex}.brand{color:var(--text-primary);flex-shrink:0;align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.brand-logo{flex-shrink:0;display:block}.nav-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:18px;font-size:14px;display:flex}.nav-primary-links{align-items:center;gap:18px;display:flex}@media (min-width:768px){.nav-primary-links{gap:14px}}.nav-links a{color:var(--text-secondary)}.nav-links a.active{color:var(--text-primary)}@media (hover:hover) and (pointer:fine){.nav-links a:hover{color:var(--text-primary)}}@keyframes global-progress-sweep{0%{left:-40%}to{left:100%}}.card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.card--prose{padding:var(--space-8)}.card-tight{padding:var(--space-4) var(--space-5)}.card.is-unanswered{border-color:var(--info);background:var(--info-bg)}.card--danger{border-color:var(--error)}.card--danger h3{color:var(--error)}.card-title{font-size:var(--text-lg);margin:0 0 var(--space-2);font-weight:600}.card--framed{padding:0;overflow:hidden}.card-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);background:var(--bg-subtle);border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;display:flex}.card-header-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.card-body{padding:var(--space-6)}.card-footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);background:var(--bg-subtle);border-top:1px solid var(--border-subtle);font-size:var(--text-xs);color:var(--text-tertiary);flex-wrap:wrap;display:flex}h1{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.01em;margin:0 0 var(--space-2);font-weight:600;line-height:1.15}h2{font-family:var(--font-display);font-size:var(--text-2xl);margin:0 0 var(--space-2);font-weight:600;line-height:1.25}h3{font-size:var(--text-lg);margin:0 0 var(--space-2);color:var(--text-primary);font-weight:600;line-height:1.35}h4{font-size:var(--text-md);margin:0 0 var(--space-1);color:var(--text-primary);font-weight:600}.eyebrow{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.09em;color:var(--text-tertiary);margin:0 0 var(--space-2);font-weight:600;display:inline-block}p{margin:0 0 var(--space-3);line-height:1.55}.subtitle{color:var(--text-secondary);font-size:var(--text-base);margin-bottom:var(--space-6)}.text-meta{font-size:var(--text-sm);color:var(--text-secondary)}.page-head{margin-bottom:var(--space-8)}.page-head-back{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-3);display:inline-block}@media (hover:hover) and (pointer:fine){.page-head-back:hover{color:var(--text-primary)}}.page-head-row{justify-content:space-between;align-items:flex-start;gap:var(--space-5);flex-wrap:wrap;display:flex}.page-head-title{min-width:0}.page-head-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.page-head h1{margin:0}.page-head-desc{color:var(--text-secondary);font-size:var(--text-base);max-width:68ch;margin:var(--space-3) 0 0}.section+.section{margin-top:var(--space-8)}.section-head{justify-content:space-between;align-items:baseline;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.section-head h2{font-size:var(--text-xl);margin:0}.stack{gap:var(--space-4);flex-direction:column;display:flex}.stack-sm{gap:var(--space-2)}.stack-lg{gap:var(--space-6)}.cluster{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.spread{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.prose{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text-primary);max-width:var(--measure);line-height:1.72}.prose p{margin:0 0 1.05em}.prose p:last-child{margin-bottom:0}.prose ul,.prose ol{margin:0 0 1.05em;padding-left:1.3em}.prose li{margin-bottom:.4em}.prose li::marker{color:var(--text-tertiary)}.prose strong{font-weight:600}.prose code{font-size:.86em}.prose>:first-child{margin-top:0}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:9px var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--border-default);min-height:38px;font-size:var(--text-base);cursor:pointer;background:var(--bg-surface);color:var(--text-primary);white-space:nowrap;font-weight:500;line-height:1.2;display:inline-flex;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.btn:hover{background:var(--bg-hover);border-color:var(--border-strong)}}.btn:active{transform:scale(.98)}.btn:disabled,.btn[aria-disabled=true]{background:var(--bg-muted);border-color:var(--border-subtle);color:var(--text-tertiary);cursor:not-allowed;opacity:1;box-shadow:none}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}@media (hover:hover) and (pointer:fine){.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}}.btn-secondary{background:var(--bg-surface);border-color:var(--border-strong);color:var(--text-primary)}.btn-ghost{color:var(--text-secondary);background:0 0;border-color:#0000}@media (hover:hover) and (pointer:fine){.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary);border-color:#0000}}.btn-lg{padding:13px var(--space-6);min-height:46px;font-size:var(--text-md)}.btn-sm{padding:5px var(--space-3);min-height:30px;font-size:var(--text-sm)}.btn-danger{color:var(--error);border-color:var(--border-default);background:0 0}.btn-block{width:100%}.btn-icon{padding-left:var(--space-2);padding-right:var(--space-2)}.btn-loading{pointer-events:none}.btn-loading:after{content:"";background:linear-gradient(90deg,#0000,#ffffff40,#0000);animation:1.1s ease-in-out infinite btn-fill-sweep;position:absolute;inset:0}@keyframes btn-fill-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}label{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:500;display:block}input[type=text],input[type=password],select,textarea{border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-app);width:100%;color:var(--text-primary);padding:10px 12px;font-size:16px}input[type=text]:focus,input[type=password]:focus,select:focus,textarea:focus{border-color:var(--accent);outline:none}textarea{resize:vertical;min-height:120px;line-height:1.5}.field{margin-bottom:18px}.file-picker-input{display:none}.file-chip-list{gap:var(--space-2);margin:var(--space-3) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.file-chip{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);background:var(--bg-muted);font-size:var(--text-sm);color:var(--text-secondary);max-width:100%;padding:4px 6px 4px 12px;display:inline-flex}.file-chip-name{text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.file-chip-remove{width:20px;height:20px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;line-height:1;display:inline-flex}.file-chip-remove:hover{background:var(--bg-hover);color:var(--text-primary)}.badge{background:var(--bg-muted);color:var(--text-secondary);border-radius:999px;align-items:center;padding:2px 9px;font-size:12px;font-weight:500;display:inline-flex}.badge-accent{background:var(--accent-bg);color:var(--accent-strong)}.badge-success{background:var(--success-bg);color:var(--success)}.badge-error{background:var(--error-bg);color:var(--error)}.badge-warning{background:var(--warning-bg);color:#8a7212}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .badge-warning{color:var(--warning)}}:root[data-theme=dark] .badge-warning{color:var(--warning)}.badge-info{background:var(--info-bg);color:var(--info-strong)}.badge-level-1{background:var(--accent-bg);color:var(--accent-strong)}.badge-level-2{background:var(--info-bg);color:var(--info-strong)}.banner{border-radius:var(--radius-sm);margin-bottom:16px;padding:10px 14px;font-size:13px}.banner-error,.error-banner{background:var(--error-bg);color:var(--error)}.banner-success{background:var(--success-bg);color:var(--success)}.banner-info{background:var(--info-bg);color:var(--info-strong)}.error-banner{border-radius:var(--radius-sm);margin-bottom:16px;padding:10px 14px;font-size:13px}.grid-sessions{gap:var(--space-3);display:grid}.session-row,.list-row{justify-content:space-between;align-items:flex-start;gap:var(--space-5);padding:var(--space-4) var(--space-5);color:inherit;display:flex}@media (hover:hover) and (pointer:fine){a.session-row:hover,a.list-row:hover{border-color:var(--border-strong);background:var(--bg-subtle)}}.list-row-main{flex:1;min-width:0}.list-row-title{font-size:var(--text-md);color:var(--text-primary);font-weight:600}.list-row-meta{align-items:flex-end;gap:var(--space-1);text-align:right;flex-direction:column;flex-shrink:0;display:flex}.list-row-desc{margin:var(--space-1) 0 0;font-size:var(--text-base);color:var(--text-secondary);-webkit-line-clamp:2;overflow-wrap:break-word;-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.score-trend{color:var(--text-secondary);align-items:center;gap:4px;font-size:13px;display:flex}.difficulty-options{gap:12px;margin:24px 0;display:grid}.difficulty-option{cursor:pointer;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);padding:16px 18px;display:block}@media (hover:hover) and (pointer:fine){.difficulty-option:hover{border-color:var(--accent)}}.difficulty-option input{margin-right:10px}.workspace-layout{gap:var(--space-6);flex-wrap:wrap;align-items:flex-start;display:flex}.workspace-main{flex:3 600px;min-width:0}.workspace-rail{flex:320px;min-width:280px;max-width:420px}.reading-layout{gap:var(--space-10);grid-template-columns:minmax(0,1fr) 240px;align-items:start;display:grid}.reading-aside{gap:var(--space-5);padding:var(--space-5);border-left:2px solid var(--border-subtle);flex-direction:column;display:flex;position:sticky;top:88px}.reading-aside-item .eyebrow{margin-bottom:var(--space-1)}.reading-aside-value{font-size:var(--text-md);color:var(--text-primary)}@media (max-width:899px){.reading-layout{gap:var(--space-5);grid-template-columns:minmax(0,1fr)}.reading-aside{gap:var(--space-6);border-left:none;border-top:1px solid var(--border-subtle);padding:var(--space-4) 0 0;flex-flow:wrap;position:static}}.choice-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.choice-card{align-items:flex-start;gap:var(--space-2);text-align:left;padding:var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--border-default);background:var(--bg-surface);box-shadow:var(--shadow-sm);cursor:pointer;color:inherit;border-top:3px solid var(--border-default);flex-direction:column;width:100%;display:flex;position:relative}.choice-card h2{font-size:var(--text-xl);margin:0}.choice-card p{color:var(--text-secondary);font-size:var(--text-base);margin:0}.choice-card-cta{padding-top:var(--space-4);font-size:var(--text-base);color:var(--accent);margin-top:auto;font-weight:500}.choice-card--level-1{border-top-color:var(--accent)}.choice-card--level-2{border-top-color:var(--info)}.choice-card--level-2 .choice-card-cta{color:var(--info-strong)}@media (hover:hover) and (pointer:fine){.choice-card:hover{border-color:var(--border-strong);background:var(--bg-subtle)}.choice-card--level-1:hover{border-top-color:var(--accent)}.choice-card--level-2:hover{border-top-color:var(--info)}}.steps{align-items:center;gap:var(--space-2);display:flex}.steps-dot{border-radius:var(--radius-pill);background:var(--bg-muted);flex:1;height:4px}.steps-dot.is-done{background:var(--accent)}.steps-dot.is-current{background:var(--accent);opacity:.55}.steps-label{font-size:var(--text-xs);color:var(--text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums}.mcq-prompt{background:var(--bg-subtle);border-radius:var(--radius-md);padding:var(--space-4) 18px;font-size:var(--text-md);margin:0 0 18px;line-height:1.6}.mcq-options{flex-direction:column;gap:8px;margin:10px 0 16px;padding:0;list-style:none;display:flex}.mcq-option{border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-surface);align-items:flex-start;gap:12px;min-height:52px;padding:12px 16px;font-size:14px;line-height:1.5;display:flex}.mcq-option-key{border:1px solid var(--border-default);width:22px;height:22px;color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:12px;font-weight:600;display:flex}.mcq-option-text{flex:1}.mcq-option.is-selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.mcq-option.is-selected .mcq-option-key{border-color:var(--accent);background:var(--accent-bg);color:var(--accent-strong)}.mcq-option.is-correct{border-color:var(--success);background:var(--success-bg)}.mcq-option.is-correct .mcq-option-key{border-color:var(--success);background:var(--success);color:#fff}.mcq-option.is-incorrect{border-color:var(--error);background:var(--error-bg)}.mcq-option.is-incorrect .mcq-option-key{border-color:var(--error);background:var(--error);color:#fff}.mcq-option.is-correct-muted{border-color:var(--info);background:var(--info-bg)}.mcq-option.is-correct-muted .mcq-option-key{border-color:var(--info);background:var(--info);color:#fff}.mcq-status{align-items:center;gap:8px;margin:14px 0 8px;display:flex}.feedback-block{border-top:1px dashed var(--border-default);margin-top:14px;padding-top:14px}.feedback-list{margin:6px 0 14px;padding:0;list-style:none}.feedback-list li{margin-bottom:5px;padding-left:18px;font-size:14px;line-height:1.5;position:relative}.feedback-list li:before{content:"";border-radius:50%;width:6px;height:6px;position:absolute;top:8px;left:0}.feedback-right li:before{background:var(--success)}.feedback-wrong li:before{background:var(--error)}.feedback-improve li:before{background:var(--warning)}.feedback-pending-row{background:linear-gradient(90deg, var(--bg-muted) 25%, var(--bg-hover) 37%, var(--bg-muted) 63%);background-size:400% 100%;border-radius:4px;width:70%;height:12px;margin:6px 0 14px 18px;animation:1.4s infinite shimmer}.turn-card{border-bottom:1px solid var(--border-subtle);padding:20px 0}.turn-card:last-child{border-bottom:none}.comment-note{border-top:1px dashed var(--border-default);gap:10px;margin-top:12px;padding-top:12px;font-size:13px;display:flex}.comment-avatar{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:600;display:flex}.comment-meta{color:var(--text-tertiary);margin-bottom:2px;font-size:12px}.comment-timestamp{color:var(--text-tertiary);margin-left:6px;font-size:11px}.comment-empty{color:var(--text-tertiary);font-size:13px;font-style:italic}.activity-feed-card{max-height:420px;padding:0;overflow-y:auto}.activity-feed{flex-direction:column;display:flex}.activity-item{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-5);color:inherit;border-bottom:1px solid var(--border-subtle);display:flex}.activity-item:last-child{border-bottom:none}@media (hover:hover) and (pointer:fine){a.activity-item:hover{background:var(--bg-subtle)}}.activity-avatar{background:var(--accent);width:26px;height:26px;color:var(--text-on-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:12px;font-weight:600;display:flex}.activity-body{justify-content:space-between;align-items:baseline;gap:var(--space-4);flex:1;min-width:0;display:flex}.activity-text{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5}.activity-text strong{color:var(--text-primary);font-weight:600}.activity-time{font-size:var(--text-xs);color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}@media (max-width:599px){.activity-body{flex-direction:column;align-items:flex-start;gap:2px}}.composer-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.composer-actions{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-4);flex-wrap:wrap;display:flex}@media (max-width:559px){.composer-actions{flex-direction:column-reverse;align-items:stretch}.composer-actions .btn-lg{width:100%}}.assist-row{gap:8px;margin:10px 0;display:flex}.assist-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-subtle);margin:4px 0 12px;padding:12px 14px;font-size:13px}.assist-panel ul{margin:0;padding-left:18px}.assist-panel li{margin-bottom:6px}.assist-panel li:last-child{margin-bottom:0}.rating-row{margin-bottom:12px}.rating-row-labels{color:var(--text-tertiary);justify-content:space-between;margin-top:2px;font-size:11px;display:flex}.rating-row input[type=range]{width:100%}.overall-comment-card{background:var(--bg-muted);border-radius:var(--radius-md);margin-top:20px;padding:16px 18px}.tabs{gap:var(--space-1);border-bottom:1px solid var(--border-default);margin-bottom:var(--space-8);flex-wrap:wrap;display:flex}.tab{padding:var(--space-2) var(--space-3);font-size:var(--text-base);color:var(--text-secondary);border-bottom:2px solid #0000;margin-bottom:-1px}@media (hover:hover) and (pointer:fine){.tab:hover{color:var(--text-primary)}}.tab.active{color:var(--text-primary);border-bottom-color:var(--accent);font-weight:500}.voice-btn{border:1px solid var(--border-default);background:var(--bg-surface);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex}.voice-btn.recording{background:var(--error-bg);border-color:var(--error);color:var(--error)}.voice-meter{align-items:center;gap:2px;height:16px;display:flex}.voice-meter span{background:currentColor;border-radius:2px;width:3px;transition:height 80ms}.modal-backdrop{z-index:50;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-panel{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);width:320px;max-width:100%;padding:24px}.progress-nudge{background:var(--bg-subtle);border:1px solid var(--border-subtle);border-left:3px solid var(--accent);border-radius:var(--radius-md);padding:var(--space-5) var(--space-6);margin-bottom:var(--space-5)}.progress-nudge p{margin:0 0 var(--space-3)}.progress-nudge p:last-of-type{margin-bottom:0}.progress-nudge-message{font-size:var(--text-md);max-width:70ch}.progress-nudge-stats{color:var(--text-secondary);font-size:var(--text-sm)}.progress-nudge .btn{margin-top:var(--space-4)}.skill-badge{background:var(--accent-bg);color:var(--accent-strong);border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:13px;font-weight:500;display:inline-flex}.theme-toggle{border:1px solid var(--border-default);cursor:pointer;background:0 0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.empty-state{text-align:center;padding:var(--space-12) var(--space-6);color:var(--text-secondary);border:1px dashed var(--border-default);border-radius:var(--radius-lg);box-shadow:none;background:0 0}.empty-state .empty-title{font-size:var(--text-md);color:var(--text-primary);margin:0 0 var(--space-2);font-weight:600}.empty-state .empty-desc{font-size:var(--text-base);color:var(--text-secondary);max-width:46ch;margin:0 auto}.empty-state .empty-actions{margin-top:var(--space-5);gap:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.checklist{margin:0;padding:0;list-style:none}.checklist li{border-bottom:1px solid var(--border-subtle);gap:10px;padding:10px 0;display:flex}.checklist li:last-child{border-bottom:none}.checklist code{background:var(--bg-muted);border-radius:4px;padding:1px 6px;font-size:13px}pre{background:var(--bg-muted);border-radius:var(--radius-sm);padding:12px 14px;font-size:13px;overflow-x:auto}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.markdown-body p{white-space:pre-wrap;margin:0 0 12px}.markdown-body p:last-child{margin-bottom:0}.markdown-body ul,.markdown-body ol{margin:0 0 12px;padding-left:22px}.markdown-body li{margin-bottom:4px}.markdown-body h1,.markdown-body h2,.markdown-body h3{font-family:var(--font-ui);margin:var(--space-5) 0 var(--space-2);font-weight:600;line-height:1.3}.markdown-body h1{font-size:var(--text-xl)}.markdown-body h2{font-size:var(--text-lg)}.markdown-body h3{font-size:var(--text-md)}.markdown-body>:first-child{margin-top:0}.markdown-body blockquote{border-left:3px solid var(--border-subtle);color:var(--text-secondary);margin:0 0 12px;padding-left:12px}.markdown-body code{background:var(--bg-muted);border-radius:4px;padding:1px 6px;font-size:13px}.mermaid-diagram{justify-content:center;margin:4px 0 16px;display:flex;overflow-x:auto}.mermaid-diagram svg{max-width:100%}.markdown-body pre code{background:0 0;padding:0}.markdown-inline p,.markdown-inline code{display:inline}.markdown-inline code{background:var(--bg-muted);border-radius:4px;padding:1px 5px;font-size:.9em}.typing-cursor{background:var(--accent);vertical-align:text-bottom;width:2px;height:1em;margin-left:2px;animation:.9s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.progress-card{flex-direction:column;gap:8px;width:100%;display:flex}.progress-label-row{color:var(--text-secondary);justify-content:space-between;align-items:baseline;gap:10px;font-size:14px;display:flex}.progress-label-row .progress-label{color:var(--text-primary);font-weight:500}.progress-time{color:var(--text-tertiary);white-space:nowrap;flex-shrink:0;font-size:12px}.progress-track{background:var(--bg-muted);border-radius:999px;height:6px;position:relative;overflow:hidden}.progress-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .4s}.progress-card.is-warning .progress-fill{background:var(--warning)}.progress-fill.progress-indeterminate{width:35%;animation:1.2s ease-in-out infinite global-progress-sweep;position:absolute;top:0;bottom:0}.progress-ticks{pointer-events:none;position:absolute;inset:0}.progress-ticks span{background:#fff9;width:1px;position:absolute;top:0;bottom:0}.progress-warning-row{color:var(--warning);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.app-footer{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-4);color:var(--text-tertiary);border-top:1px solid var(--border-subtle);font-size:12px;display:flex}.app-footer a{color:var(--text-tertiary)}.app-footer a:hover{color:var(--text-secondary)}.app-footer-sep{color:var(--border-strong)}@media (max-width:479px){.app-footer{padding-bottom:calc(64px + env(safe-area-inset-bottom))}}.trainee-stat-grid{gap:var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.trainee-stat-card{all:unset;box-sizing:border-box;cursor:pointer;width:100%;padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--border-default);background:var(--bg-surface);box-shadow:var(--shadow-sm);transition:transform .16s,box-shadow .16s,border-color .16s;display:block;position:relative}.trainee-stat-card .stat-value{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--text-primary);font-weight:600;line-height:1.1;display:block}.trainee-stat-card .trainee-stat-label{margin-top:var(--space-2);color:var(--text-primary);font-size:13px;font-weight:600;display:block}.trainee-stat-card .trainee-stat-sub{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:2px;display:block}.trainee-stat-card.is-active{border-color:var(--accent);background:var(--accent-bg);box-shadow:0 0 0 1px var(--accent)}.trainee-stat-card.is-active .stat-value{color:var(--link)}.trainee-stat-card:hover,.trainee-stat-card:focus-visible,.stat-hoverable:hover,.stat-hoverable:focus-visible{box-shadow:var(--shadow-md);border-color:var(--accent);z-index:1;transform:translateY(-3px)}.trainee-stat-card.is-active:hover,.trainee-stat-card.is-active:focus-visible{box-shadow:0 0 0 1px var(--accent), var(--shadow-md)}.trainee-stat-card.is-queued{border-color:var(--info);background:var(--info-bg)}.trainee-stat-card.is-queued .stat-value{color:var(--info-strong)}.trainee-stat-card.is-queued:hover,.trainee-stat-card.is-queued:focus-visible{border-color:var(--info-strong)}.trainee-stat-card.is-queued.is-active{border-color:var(--info-strong);background:var(--info-bg);box-shadow:0 0 0 1px var(--info-strong)}.trainee-stat-card.is-queued.is-active .stat-value{color:var(--info-strong)}.stat-hoverable{cursor:default;transition:transform .16s,box-shadow .16s,border-color .16s}.trainee-stat-hint{opacity:0;height:32px;color:var(--text-secondary);margin-top:var(--space-2);font-size:11px;line-height:1.4;transition:opacity .18s,transform .18s;display:block;overflow:hidden;transform:translateY(2px)}.trainee-stat-card:hover .trainee-stat-hint,.trainee-stat-card:focus-visible .trainee-stat-hint,.stat-hoverable:hover .trainee-stat-hint,.stat-hoverable:focus-visible .trainee-stat-hint{opacity:1;transform:translateY(0)}.trainee-panel{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-sm);grid-template-columns:340px minmax(0,1fr);min-height:520px;display:grid;overflow:hidden}.trainee-panel-list{border-right:1px solid var(--border-subtle);flex-direction:column;min-height:0;display:flex}.trainee-panel-list-head{padding:var(--space-3) var(--space-4);background:var(--bg-subtle);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.trainee-panel-list-body{flex-grow:1;overflow-y:auto}.trainee-panel-list-item{all:unset;box-sizing:border-box;cursor:pointer;width:100%;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle);display:block}.trainee-panel-list-item.is-active{background:var(--accent-bg)}.is-queued-list .trainee-panel-list-item{background:var(--info-bg)}.is-queued-list .trainee-panel-list-item.is-active{background:var(--info-bg);box-shadow:inset 3px 0 0 var(--info-strong)}.trainee-row-title{color:var(--text-primary);font-size:13.5px;font-weight:500;line-height:1.4;display:block}.trainee-row-meta{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:4px;display:block}.trainee-panel-detail{min-width:0;padding:var(--space-6);overflow-y:auto}@media (max-width:900px){.trainee-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trainee-panel{grid-template-columns:1fr}.trainee-panel-list{border-right:none;border-bottom:1px solid var(--border-subtle);max-height:280px}}.read-aloud{align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-2);flex-direction:column;max-width:100%;display:inline-flex}.read-aloud-controls{align-items:center;gap:var(--space-2);display:inline-flex}.read-aloud-stop{padding:5px 10px}.read-aloud-progress-track{width:120px}.read-aloud-transcript{max-width:640px;max-height:240px;padding:var(--space-3) var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-muted);color:var(--text-secondary);white-space:pre-wrap;font-size:14px;line-height:1.6;overflow-y:auto}.read-aloud-word.is-active{background:var(--accent-bg);color:var(--text-primary);border-radius:3px}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.skeleton{background:linear-gradient(90deg, var(--bg-muted) 25%, var(--bg-hover) 37%, var(--bg-muted) 63%);border-radius:var(--radius-sm);background-size:400% 100%;animation:1.4s infinite shimmer}.mcq-skeleton{flex-direction:column;gap:10px;margin-top:18px;display:flex}.mcq-skeleton .skeleton-prompt{border-radius:var(--radius-md);height:46px}.mcq-skeleton .skeleton-option{border-radius:var(--radius-md);height:52px}.stat-grid{gap:var(--space-3);margin-bottom:var(--space-5);grid-template-columns:repeat(3,1fr);display:grid}.stat-card{padding:var(--space-5)}.stat-card .stat-value,.figure-value{font-family:var(--font-display);font-size:var(--text-3xl);margin:var(--space-2) 0 var(--space-1);font-variant-numeric:tabular-nums;font-weight:600;line-height:1.1}.stat-card .stat-footer,.figure-label{font-size:var(--text-xs);color:var(--text-tertiary)}.figure-lg{font-size:44px}.figure-accent{color:var(--accent)}.score-hero{text-align:center;padding:var(--space-8) var(--space-6)}.score-hero .figure-value{margin-top:var(--space-3)}.stat-card.stat-neutral{grid-column:span 1}.user-row-identity{align-items:flex-start;gap:var(--space-3);flex:1;min-width:0;display:flex}.avatar-lg{background:var(--accent);width:38px;height:38px;color:var(--text-on-accent);font-size:var(--text-md);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.inline-warning{color:var(--warning);font-size:var(--text-xs);margin:var(--space-2) 0 0}.mini-stat-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.mini-stat{background:var(--bg-muted);min-width:52px;color:inherit;border-radius:8px;flex-direction:column;align-items:center;padding:5px 10px;text-decoration:none;display:flex}a.mini-stat:hover{background:var(--border-default)}.mini-stat .mini-stat-value{font-size:var(--text-lg);font-weight:700;line-height:1.1}.mini-stat .mini-stat-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;margin-top:2px;font-size:10px}.mini-stat.mini-stat-accent .mini-stat-value{color:var(--accent)}.mini-stat.mini-stat-warning .mini-stat-value{color:var(--warning)}.mastery-rail{margin-bottom:20px}.mastery-rail-track{background:var(--bg-muted);border-radius:999px;height:8px;margin:10px 0;display:flex;overflow:hidden}.mastery-rail-track span{height:100%}.mastery-seg-understood{background:var(--success)}.mastery-seg-practiced{background:var(--info)}.mastery-seg-needs{background:var(--warning)}.mastery-seg-introduced{background:var(--text-tertiary)}.mastery-legend{color:var(--text-secondary);flex-wrap:wrap;gap:14px;font-size:12px;display:flex}.mastery-legend-item{align-items:center;gap:6px;display:flex}.mastery-legend-dot{border-radius:50%;width:8px;height:8px}.model-options{gap:10px;display:grid}.model-option{cursor:pointer;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);padding:12px 14px;display:block}@media (hover:hover) and (pointer:fine){.model-option:hover{border-color:var(--accent)}}.model-option input{margin-right:8px}.model-option-rationale{color:var(--text-secondary);margin:2px 0 0 22px;font-size:12.5px}.switch-row{align-items:flex-start;gap:12px;padding:12px 0;display:flex}.switch{flex-shrink:0;width:38px;height:22px;margin-top:2px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.switch-track{background:var(--bg-muted);border:1px solid var(--border-default);border-radius:999px;transition:background .15s;position:absolute;inset:0}.switch-track:before{content:"";background:var(--bg-surface);width:16px;height:16px;box-shadow:var(--shadow-sm);border-radius:50%;transition:transform .15s;position:absolute;top:2px;left:2px}.switch input:checked+.switch-track{background:var(--accent);border-color:var(--accent)}.switch input:checked+.switch-track:before{transform:translate(16px)}.layer-stack{flex-direction:column;gap:6px;margin:16px 0;display:flex}.layer-stack-item{border-radius:var(--radius-sm);background:var(--bg-subtle);border:1px solid var(--border-subtle);color:var(--text-secondary);text-align:center;padding:10px 14px;font-size:13px}.layer-stack-item.is-current{background:var(--accent-bg);color:var(--accent-strong);border-color:var(--accent);font-weight:500}.layer-stack-arrow{text-align:center;color:var(--text-tertiary);font-size:12px}.bottom-tab-bar{display:none}@media (min-width:768px){.nav-links{gap:14px;font-size:13.5px}}@media (max-width:767px){.page,.container,.container-wide,.container-problem{padding:var(--space-6) var(--space-4) 80px}.card,.card--prose{padding:var(--space-5)}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}.prose{font-size:var(--text-md)}.page-head{margin-bottom:var(--space-6)}.card-body,.card-header,.card-footer{padding-left:var(--space-4);padding-right:var(--space-4)}.stat-grid{grid-template-columns:repeat(2,1fr)}.stat-card.stat-neutral{grid-column:span 2}}@media (max-width:479px){.stat-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat-card{padding:14px 16px}.stat-card.stat-neutral{grid-column:span 2;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.stat-card.stat-neutral .stat-value{font-size:var(--text-lg);margin:0}.nav-primary-links{display:none}.nav-links{gap:10px}.sticky-submit{bottom:64px}.bottom-tab-bar{z-index:20;background:var(--bg-surface);border-top:1px solid var(--border-subtle);padding:8px 4px calc(12px + env(safe-area-inset-bottom));justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-tab-bar a{color:var(--text-tertiary);min-width:var(--tap-min);min-height:var(--tap-min);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:10px;display:flex}.bottom-tab-bar a.active{color:var(--accent)}.bottom-tab-bar .tab-icon{font-size:18px;line-height:1}.list-row,.session-row{flex-direction:column;align-items:stretch;gap:8px}.mcq-option{flex-wrap:wrap}.mcq-option .badge{width:100%;margin-top:6px;margin-left:34px}}@media (max-width:767px){.sticky-submit{background:linear-gradient(to bottom, transparent, var(--bg-surface) 45%);margin:14px -20px -20px;padding:24px 20px 16px;position:sticky;bottom:0;left:0;right:0}.sticky-submit .btn{width:100%;min-height:50px}.btn,.btn-sm{min-height:var(--tap-min)}.theme-toggle{width:36px;height:36px}}.badge-sm{padding:1px 7px;font-size:11px}.badge-ai{background:var(--accent-bg);color:var(--accent-strong);font-weight:600}.builder-shell{gap:var(--space-4);flex-direction:column;display:flex}.builder-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.builder-toolbar-left,.builder-toolbar-right{align-items:center;gap:var(--space-2);display:flex}.builder-prompt-version{font-size:var(--text-sm);color:var(--text-secondary);align-items:center;gap:4px;display:inline-flex}.builder-model-select{border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-primary);font-size:var(--text-sm);padding:6px 10px}.builder-stale-banner{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--warning-bg);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary);display:flex}.builder-body{gap:var(--space-6);grid-template-columns:208px minmax(0,1fr) 360px;align-items:start;display:grid}.builder-stage-nav{flex-direction:column;gap:2px;display:flex;position:sticky;top:88px}.builder-stage-nav-item{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-sm);text-align:left;cursor:pointer;min-height:var(--tap-min);background:0 0;border:1px solid #0000;padding:8px 10px;transition:background .12s,border-color .12s,color .12s;display:flex}@media (hover:hover) and (pointer:fine){.builder-stage-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}}.builder-stage-nav-item.active{background:var(--bg-selected);border-color:var(--border-default);color:var(--text-primary);font-weight:600}.builder-stage-nav-item.builder-stage-nav-needs-review{color:var(--warning)}.builder-stage-nav-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.builder-stage-dot{background:var(--border-strong);border-radius:50%;flex-shrink:0;width:7px;height:7px}.builder-stage-dot-open{background:var(--accent)}.builder-stage-dot-done{background:var(--success)}.builder-stage-review-flag{color:var(--warning);font-weight:600;font-size:var(--text-xs);flex-shrink:0}.builder-main{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.builder-stage-head h2{margin:0 0 4px}.builder-stage-desc{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.builder-stage-footer{padding-top:var(--space-4);border-top:1px solid var(--border-subtle);justify-content:space-between;display:flex}.builder-question-card{gap:var(--space-3);border-left:3px solid #0000;flex-direction:column;transition:transform .12s,border-color .12s,box-shadow .12s,background .12s;display:flex}@media (hover:hover) and (pointer:fine){.builder-question-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}}.builder-question-card:focus-within{border-color:var(--accent);border-left-color:var(--accent);background:var(--accent-bg);box-shadow:var(--shadow-md)}.builder-question-decided{border-left-color:var(--success)}.builder-question-skipped{border-left-color:var(--border-strong);opacity:.75}.builder-question-not-relevant{border-left-color:var(--border-strong);opacity:.6}.builder-question-needs-review{border-left-color:var(--warning);background:var(--warning-bg)}.builder-badge-needs-review{background:var(--warning-bg);color:#8a7212;font-weight:600}@media (prefers-color-scheme:dark){.builder-badge-needs-review{color:var(--warning)}}:root[data-theme=dark] .builder-badge-needs-review{color:var(--warning)}.builder-question-review-reason{padding:var(--space-2) var(--space-3);background:var(--warning-bg);border-radius:var(--radius-md);font-size:var(--text-sm);margin:0}.builder-status-badge-decided{background:var(--success-bg);color:var(--success)}.builder-status-badge-skipped,.builder-status-badge-not_relevant{background:var(--bg-muted);color:var(--text-tertiary)}.builder-question-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.builder-question-text{margin:0;font-weight:600}.builder-question-rationale{font-size:var(--text-sm);color:var(--text-secondary);margin:0;font-style:italic}.builder-question-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.builder-options{gap:var(--space-2);flex-direction:column;display:flex}.builder-option-row{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);border:1px solid #0000;flex-wrap:wrap;transition:background .1s,border-color .1s;display:flex}@media (hover:hover) and (pointer:fine){.builder-option-row:hover{background:var(--bg-hover)}}.builder-option-row:has(input:checked){background:var(--accent-bg);border-color:var(--accent)}.builder-option-row:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.builder-option-label{font-size:var(--text-sm)}.builder-option-rationale{font-size:var(--text-xs);color:var(--text-tertiary);flex-basis:100%;margin-left:24px}.builder-option-other{gap:var(--space-2);align-items:center;display:flex}.builder-option-other input{flex:1}.builder-question-card textarea:focus,.builder-question-card input[type=text]:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.builder-preview-toggle{display:none}.builder-preview-rail{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);max-height:calc(100vh - 120px);position:sticky;top:88px;overflow-y:auto}.builder-preview-rail-head{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.builder-preview-rail-head h3{font-size:var(--text-sm);margin:0}.builder-preview-close{display:none}.builder-preview-rail-body{padding:var(--space-4);font-size:var(--text-sm)}.builder-preview-scrim{display:none}.builder-regenerate-summary{font-size:var(--text-sm);gap:var(--space-2);flex-direction:column;display:flex}.builder-regenerate-summary p{margin:0}.builder-final-view{gap:var(--space-4);flex-direction:column;display:flex}.builder-final-summary-grid{gap:var(--space-6);margin:var(--space-3) 0;display:flex}.builder-final-summary-grid>div{flex-direction:column;align-items:flex-start;display:flex}.builder-final-note{font-size:var(--text-sm);color:var(--text-secondary);margin:var(--space-2) 0 0}.builder-final-section-head{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.builder-final-section-head h3{margin:0}.builder-start-form .field{margin-bottom:var(--space-6)}.builder-choice-toggle{border:1px solid var(--border-default);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.builder-choice-option{background:var(--bg-surface);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;border:none;padding:8px 16px;font-weight:500}.builder-choice-option+.builder-choice-option{border-left:1px solid var(--border-default)}.builder-choice-option-active{background:var(--accent);color:var(--text-on-accent)}.builder-research-panel{border-left:3px solid var(--accent)}.builder-research-checklist{margin:var(--space-2) 0 0;flex-direction:column;gap:6px;padding:0;list-style:none;display:flex}.builder-research-check{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);display:flex}.builder-research-check-icon{background:var(--bg-muted);width:18px;height:18px;color:var(--text-tertiary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.builder-research-check-completed .builder-research-check-icon{background:var(--success-bg);color:var(--success)}.builder-research-check-completed{color:var(--text-primary)}.builder-research-check-failed .builder-research-check-icon{background:var(--error-bg);color:var(--error)}.builder-research-check-running .builder-research-check-icon{background:var(--accent-bg);color:var(--accent)}.builder-research-summary-grid{gap:var(--space-6);margin:var(--space-3) 0;flex-wrap:wrap;display:flex}.builder-research-summary-grid>div{flex-direction:column;display:flex}.builder-research-summary-count{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600;line-height:1.1}.builder-research-failed{background:var(--warning-bg);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin:var(--space-3) 0}@media (max-width:1099px){.builder-body{grid-template-columns:160px minmax(0,1fr)}.builder-preview-toggle{align-self:flex-start;display:inline-flex}.builder-preview-rail{z-index:40;border-radius:0;width:min(360px,100vw);max-height:none;transition:transform .2s;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.builder-preview-rail-open{transform:translate(0)}.builder-preview-close{display:inline-flex}.builder-preview-scrim{z-index:39;background:#00000059;display:block;position:fixed;inset:0}}@media (max-width:767px){.builder-body{grid-template-columns:minmax(0,1fr)}.builder-stage-nav{gap:var(--space-2);flex-flow:wrap;position:static}.builder-stage-nav-item{flex:none}}
