:root{--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--neutral-50:#fafaf9;--neutral-100:#f5f5f4;--neutral-200:#e7e5e4;--neutral-300:#d6d3d1;--neutral-400:#a8a29e;--neutral-500:#78716c;--neutral-600:#57534e;--neutral-700:#44403c;--neutral-800:#292524;--neutral-900:#1c1917;--neutral-950:#0c0a09;--primary-light:#ffedd5;--primary:#c2410c;--primary-dark:#9a3412;--primary-accent:#ea580c;--success:#16a34a;--success-light:#dcfce7;--warning:#d97706;--warning-light:#fef3c7;--error:#dc2626;--error-light:#fee2e2;--surface-base:#ffffff;--surface-sunken:var(--neutral-50);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--shadow-sm:0 1px 2px 0 rgb(0 0 0/0.05);--shadow:0 1px 3px 0 rgb(0 0 0/0.1),0 1px 2px -1px rgb(0 0 0/0.1);--shadow-md:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1);--shadow-lg:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--radius-sm:4px;--radius:6px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--transition-fast:150ms ease;--transition:200ms ease;--transition-slow:300ms ease}*,:after,:before{box-sizing:border-box;margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:var(--text-base);line-height:1.5;color:var(--neutral-700);background:var(--surface-sunken);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{color:var(--neutral-900);line-height:1.2;font-weight:600}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;color:var(--neutral-800)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-in,.stagger-in{animation:fadeIn var(--transition) ease-out both}.stagger-in{animation-delay:calc(var(--i, 0) * 45ms)}@media (prefers-reduced-motion:reduce){.animate-in,.stagger-in{animation:none}}.topbar{gap:var(--space-4);padding:var(--space-3) var(--space-6);background:var(--surface-base);border-bottom:1px solid var(--neutral-200);position:-webkit-sticky;position:sticky;top:0;z-index:20}.topbar,.topbar .brand{display:flex;align-items:center}.topbar .brand{font-weight:600;color:var(--neutral-900);text-decoration:none;font-size:var(--text-base);gap:var(--space-2)}.brand-mark{width:22px;height:22px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--primary) 0,var(--primary-accent) 100%)}.topbar .spacer{flex:1 1}.btn{display:inline-flex;align-items:center;gap:var(--space-2);border-radius:var(--radius);font-weight:500;font-size:var(--text-sm);padding:var(--space-2) var(--space-4);transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast);border:none}.btn-primary{background:linear-gradient(180deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:linear-gradient(180deg,var(--primary-dark) 0,var(--primary-dark) 100%);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-secondary{background:transparent;color:var(--neutral-700);border:1px solid var(--neutral-300)}.btn-secondary:hover{background:var(--neutral-50);border-color:var(--neutral-400)}.btn-ghost{background:transparent;color:var(--neutral-600)}.btn-ghost:hover{background:var(--neutral-100)}.btn-danger-ghost{background:transparent;color:var(--error)}.btn-danger-ghost:hover{background:var(--error-light)}.btn:disabled{opacity:.5;cursor:default}.page{max-width:1080px;margin-inline:auto;padding:var(--space-10) var(--space-6)}.page-head{display:flex;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-8)}.page-head h1{font-size:var(--text-2xl);letter-spacing:-.025em}.page-head p{color:var(--neutral-500);font-size:var(--text-sm)}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:var(--space-5);gap:var(--space-5)}.course-card{background:var(--surface-base);border:1px solid var(--neutral-200);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-fast),transform var(--transition-fast);display:flex;flex-direction:column;gap:var(--space-3);text-decoration:none}.course-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.course-card h3{font-size:var(--text-lg)}.course-card .meta{display:flex;gap:var(--space-2);align-items:center}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:500;border-radius:var(--radius-full);background:var(--neutral-100);color:var(--neutral-700)}.badge.success{background:var(--success-light);color:var(--success)}.badge.warning{background:var(--warning-light);color:var(--warning)}.badge.error{background:var(--error-light);color:var(--error)}.badge.primary{background:var(--primary-light);color:var(--primary-dark)}.empty-state{text-align:center;padding:var(--space-12);color:var(--neutral-500);display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.empty-state h2{font-size:var(--text-lg);color:var(--neutral-800)}.empty-state p{font-size:var(--text-sm);max-width:45ch}.dialog-backdrop{position:fixed;inset:0;background:rgb(0 0 0/.35);display:grid;place-items:center;z-index:50}.dialog{background:var(--surface-base);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-8);width:min(480px,92vw);max-height:calc(100dvh - 2rem);overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-5);animation:fadeIn var(--transition-slow) ease-out both}.dialog h2{font-size:var(--text-2xl);letter-spacing:-.02em}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field label{font-size:var(--text-sm);font-weight:500;color:var(--neutral-600)}.field input[type=text],.field textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--neutral-300);border-radius:var(--radius);font-size:var(--text-base)}.field textarea{resize:vertical;min-height:52px}.field .hint{font-size:var(--text-xs);color:var(--neutral-500)}.cue-spec{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px dashed var(--neutral-300);display:flex;flex-direction:column;gap:var(--space-3)}.chip-row{display:flex;gap:var(--space-2)}.chip{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border:1px solid var(--neutral-300);background:var(--surface-base);font-size:var(--text-sm);color:var(--neutral-700);transition:all var(--transition-fast)}.chip.selected,.chip:hover{border-color:var(--primary)}.chip.selected{background:var(--primary);color:#fff}.dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-3)}body:has(.editor){overflow:hidden}body:has(.editor) .topbar{display:none}.editor{display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);height:100vh;width:100vw;background:#ecebe8}.editor>.ribbon{grid-column:1/-1}.ribbon{background:var(--surface-base);border-bottom:1px solid var(--neutral-200);box-shadow:0 1px 0 rgb(0 0 0/.02);z-index:3}.rb-head{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--neutral-100)}.rb-head .grow{flex:1 1}.rb-brand{display:inline-flex}.rb-title{display:flex;align-items:baseline;gap:var(--space-3);min-width:0}.rb-title strong{font-size:var(--text-sm);font-weight:600;color:var(--neutral-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:38vw}.rb-saved{font-size:var(--text-xs);color:var(--neutral-500);white-space:nowrap}.rb-saved.dirty{color:var(--warning)}.rb-phase{padding-left:var(--space-4);border-left:1px solid var(--neutral-200)}.rb-lang{display:inline-flex;border:1px solid var(--neutral-200);border-radius:var(--radius-full);padding:2px}.rb-lang button{border:none;background:transparent;padding:2px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:600;color:var(--neutral-500);letter-spacing:.04em}.rb-lang button.on{background:var(--neutral-900);color:#fff}.rb-cta{display:inline-flex;align-items:center;gap:var(--space-2);padding-block:6px;text-decoration:none}.rb-tabs{display:flex;gap:var(--space-1);padding:0 var(--space-3);background:var(--surface-base)}.rb-tabs button{background:transparent;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:500;color:var(--neutral-500);border:none;border-bottom:2px solid transparent;margin-bottom:-1px}.rb-tabs button:hover{color:var(--neutral-900)}.rb-tabs button.on{color:var(--primary-dark);border-bottom-color:var(--primary)}.rb-body{display:flex;align-items:stretch;gap:0;padding:var(--space-2) var(--space-3) var(--space-1);background:var(--neutral-50);border-top:1px solid var(--neutral-200);min-height:88px;overflow-x:auto}.rb-group{display:flex;flex-direction:column;align-items:center;padding:0 var(--space-3);border-right:1px solid var(--neutral-200)}.rb-group:last-child{border-right:none}.rb-tools{display:flex;align-items:flex-start;gap:var(--space-1);flex:1 1}.rb-glabel{font-size:11px;color:var(--neutral-400);padding-top:var(--space-1);white-space:nowrap}.rb-tool{display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;min-width:64px;padding:var(--space-2) var(--space-2);border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--neutral-700);font-size:12px;line-height:1.2;text-decoration:none;text-align:center;white-space:nowrap;transition:background var(--transition-fast),border-color var(--transition-fast)}.rb-tool svg{color:var(--neutral-600)}.rb-tool:hover:not(:disabled){background:var(--surface-base);border-color:var(--neutral-200)}.rb-tool:hover:not(:disabled) svg{color:var(--primary)}.rb-tool.on{background:var(--primary-light);border-color:#f4c3a6;color:var(--primary-dark)}.rb-tool.on svg{color:var(--primary)}.rb-tool.danger:hover:not(:disabled) svg{color:var(--error)}.rb-tool:disabled{opacity:.4;cursor:not-allowed}.rb-select{display:inline-flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-2);color:var(--neutral-600)}.rb-select>span{font-size:12px;color:var(--neutral-700)}.rb-seg{display:inline-flex;border:1px solid var(--neutral-300);border-radius:var(--radius);overflow:hidden;background:var(--surface-base);margin-top:3px}.rb-seg button{border:none;background:transparent;padding:4px 12px;font-size:12px;color:var(--neutral-600)}.rb-seg button+button{border-left:1px solid var(--neutral-300)}.rb-seg button.on{background:var(--primary-light);color:var(--primary-dark);font-weight:600}.rb-select select{margin-top:3px;padding:4px var(--space-2)!important;font-size:12px;padding:1px var(--space-1);border:1px solid var(--neutral-300);border-radius:var(--radius-sm);background:var(--surface-base);color:var(--neutral-700)}.screen-rail{background:var(--surface-base);border-right:1px solid var(--neutral-200);overflow-y:auto;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3)}.rail-label{display:flex;justify-content:space-between;font-size:var(--text-xs);font-weight:600;color:var(--neutral-500);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-1) var(--space-1) 0}.rail-label span{font-weight:500;color:var(--neutral-400)}.screen-thumb{text-align:left;border:none;background:transparent;padding:0;font-size:var(--text-sm);color:var(--neutral-700);flex-direction:column}.screen-thumb,.thumb-card{display:flex;gap:var(--space-2)}.thumb-card{position:relative;overflow:hidden;align-items:center;justify-content:center;aspect-ratio:16/8;width:100%;border-radius:var(--radius);background:var(--neutral-50);border:1px solid var(--neutral-200);color:var(--neutral-400);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.screen-thumb:hover .thumb-card{border-color:var(--neutral-400)}.screen-thumb.active .thumb-card{border:2px solid var(--primary);background:var(--surface-base);color:var(--primary);box-shadow:0 4px 14px rgb(194 65 12/.15)}.mini{display:flex;flex-direction:column;gap:4px;width:100%;padding:10px 12px;align-self:stretch;justify-content:center}.mini-h{font-size:9px;font-weight:700;line-height:1.2;color:var(--neutral-800);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.mini-p{display:flex;flex-direction:column;gap:2px}.mini-opts i,.mini-p i{display:block;height:3px;border-radius:2px;background:var(--neutral-200)}.mini-opts{display:flex;flex-direction:column;gap:2px}.mini-opts i{height:5px;background:transparent;border:1px solid var(--neutral-300)}.mini-ico{color:var(--neutral-400);display:flex;justify-content:center}.thumb-gate{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--neutral-300)}.thumb-gate.s-ok{background:var(--success)}.thumb-gate.s-warn{background:var(--warning)}.thumb-gate.s-block{background:var(--error)}.thumb-gate.s-busy{background:var(--neutral-400);animation:gbPulse 1s ease-in-out infinite}.thumb-meta{display:flex;gap:var(--space-2);align-items:baseline;min-width:0;padding:0 2px}.screen-thumb .idx{font-size:var(--text-xs);color:var(--neutral-400);font-weight:600}.screen-thumb .t{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs)}.screen-thumb.active .t{color:var(--neutral-900)}.rail-add{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2);border:1px dashed var(--neutral-300);border-radius:var(--radius);background:transparent;color:var(--neutral-500);font-size:var(--text-sm)}.rail-add:hover{border-color:var(--primary);color:var(--primary)}.canvas-wrap{padding:var(--space-8) var(--space-6);align-items:center}.canvas,.canvas-wrap{overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-4)}.canvas{background:var(--surface-base);border-radius:var(--radius-md);box-shadow:0 1px 2px rgb(0 0 0/.06),0 12px 32px rgb(0 0 0/.08);width:min(1080px,100%,calc((100vh - 290px) * 16 / 9.6));min-width:min(560px,100%);aspect-ratio:16/9.6;padding:var(--space-10);position:relative}.canvas-toolbar{width:min(820px,100%);display:flex;align-items:center;gap:var(--space-3)}.canvas-toolbar .grow{flex:1 1}.canvas-toolbar select{padding:var(--space-1) var(--space-2);border:1px solid var(--neutral-300);border-radius:var(--radius);font-size:var(--text-sm);background:var(--surface-base)}.block{position:relative;border-radius:var(--radius);padding:var(--space-2);transition:background var(--transition-fast)}.block:hover{background:var(--neutral-50)}.block:hover .block-tools{opacity:1}.block-tools{position:absolute;top:var(--space-1);right:var(--space-1);display:flex;gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast);background:var(--surface-base);border:1px solid var(--neutral-200);border-radius:var(--radius);padding:2px;box-shadow:var(--shadow-sm)}.block-tools button{border:none;background:transparent;border-radius:var(--radius-sm);padding:2px 6px;font-size:var(--text-xs);color:var(--neutral-600)}.block-tools button:hover{background:var(--neutral-100)}.block-input{width:100%;border:none;background:transparent;resize:none;line-height:1.5}.block-input:focus{outline:none}.block-heading .block-input{font-size:var(--text-2xl);font-weight:600;color:var(--neutral-900);letter-spacing:-.025em}.block-text .block-input{font-size:var(--text-base);color:var(--neutral-700)}.step-tag{position:absolute;top:var(--space-1);left:calc(-1 * var(--space-6));font-size:var(--text-xs);color:var(--primary);background:var(--primary-light);border-radius:var(--radius-full);padding:0 var(--space-2)}.add-block{display:flex;justify-content:center;position:relative;height:14px}.add-block button{position:absolute;top:-8px;min-width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-full);border:1px solid var(--neutral-300);background:var(--surface-base);color:var(--neutral-500);font-size:15px;line-height:1;opacity:.35;transition:opacity var(--transition-fast);box-shadow:var(--shadow-sm)}.add-block button:focus-visible,.add-block:hover button{opacity:1;border-color:var(--primary);color:var(--primary)}.add-block.last{height:36px;margin-top:var(--space-2)}.add-block.last button{position:static;opacity:1;padding:0 var(--space-4) 0 var(--space-3);border-style:dashed;box-shadow:none}.add-block.last button span{font-size:var(--text-sm)}.add-menu{position:absolute;top:20px;z-index:10;background:var(--surface-base);border:1px solid var(--neutral-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;padding:var(--space-1);min-width:160px}.add-menu button{text-align:left;border:none;background:transparent;padding:var(--space-2) var(--space-3);border-radius:var(--radius);font-size:var(--text-sm);color:var(--neutral-700)}.add-menu button:hover{background:var(--neutral-100)}.scenario{border:1px solid var(--neutral-200);border-radius:var(--radius-md);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);background:var(--surface-base)}.scenario .sc-label{font-size:var(--text-xs);font-weight:500;color:var(--primary-dark);text-transform:uppercase;letter-spacing:.05em}.sc-answer{display:flex;align-items:center;gap:var(--space-2)}.sc-answer input[type=text]{flex:1 1;border:1px solid var(--neutral-200);border-radius:var(--radius);padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}.sc-answer .correct-toggle{font-size:var(--text-xs);border-radius:var(--radius-full);border:1px solid var(--neutral-300);background:var(--surface-base);padding:2px 8px;color:var(--neutral-500);white-space:nowrap}.sc-answer .correct-toggle.on{background:var(--success-light);border-color:var(--success);color:var(--success)}.timeline{width:min(1080px,100%,max(560px,calc((100vh - 290px) * 16 / 9.6)));background:var(--surface-base);border:1px solid var(--neutral-200);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm)}.timeline .tl-label{font-size:var(--text-xs);font-weight:500;color:var(--neutral-500);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.tl-steps{flex:1 1;overflow-x:auto}.tl-step,.tl-steps{display:flex;gap:var(--space-2)}.tl-step{align-items:center;border:1px solid var(--neutral-200);border-radius:var(--radius);padding:var(--space-1) var(--space-2);white-space:nowrap;background:var(--surface-sunken)}.tl-step,.tl-step select{font-size:var(--text-xs);color:var(--neutral-600)}.tl-step select{border:none;background:transparent}.gate-bar{width:min(1080px,100%,max(560px,calc((100vh - 290px) * 16 / 9.6)));background:var(--surface-base);border:1px solid var(--neutral-200);border-radius:var(--radius-md);font-size:var(--text-sm)}.gb-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);min-height:44px}.gb-head .grow{flex:1 1}.gb-dot{width:10px;height:10px;border-radius:50%;background:var(--neutral-300);flex:none}.gate-bar.s-ok .gb-dot{background:var(--success)}.gate-bar.s-warn .gb-dot{background:var(--warning)}.gate-bar.s-block .gb-dot{background:var(--error)}.gate-bar.s-busy .gb-dot{background:var(--neutral-400);animation:gbPulse 1s ease-in-out infinite}@keyframes gbPulse{50%{opacity:.35}}.gb-label{font-size:var(--text-xs);font-weight:500;color:var(--neutral-500);text-transform:uppercase;letter-spacing:.05em}.gb-summary{color:var(--neutral-700);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.gate-bar.s-ok .gb-summary{color:var(--success);font-weight:500}.gb-score{font-weight:600;color:var(--neutral-600);background:var(--neutral-100);border-radius:var(--radius-full);padding:2px var(--space-2);white-space:nowrap}.gb-btn,.gb-score{font-size:var(--text-xs)}.gb-btn{padding:var(--space-1) var(--space-3)}.gb-body{gap:var(--space-3);padding:0 var(--space-4) var(--space-4);border-top:1px solid var(--neutral-100);padding-top:var(--space-3)}.gate-score,.gb-body{display:flex;flex-direction:column}.gate-score{gap:var(--space-2)}.gate-score .num{font-size:var(--text-3xl);font-weight:700;color:var(--neutral-900)}.scale-line{position:relative;height:6px;background:linear-gradient(90deg,var(--error-light),var(--warning-light),var(--success-light))}.scale-line,.scale-line .dot{border-radius:var(--radius-full)}.scale-line .dot{position:absolute;top:-3px;width:12px;height:12px;background:var(--neutral-900);border:2px solid #fff;box-shadow:var(--shadow-sm);transition:left var(--transition-slow)}.scale-hint{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--neutral-500)}.section-card{background:var(--surface-base);border:1px solid var(--neutral-200);border-radius:var(--radius-md);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);box-shadow:var(--shadow-sm);animation:fadeIn var(--transition) ease-out both}.section-card>.f-head{font-size:var(--text-base);color:var(--neutral-900);margin-bottom:var(--space-1)}.finding{border:1px solid var(--neutral-200);border-left:3px solid var(--warning);border-radius:var(--radius-md);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);animation:fadeIn var(--transition) ease-out both}.finding.first{border-left-color:var(--error);box-shadow:var(--shadow-sm)}.finding .f-head{display:flex;align-items:center;gap:var(--space-2);font-weight:600;font-size:var(--text-sm);color:var(--neutral-800)}.finding .f-diag{font-size:var(--text-xs);color:var(--neutral-500)}.finding .f-fix{font-size:var(--text-sm);color:var(--neutral-700)}.finding .f-actions{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.finding .f-actions .btn{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.start-here{font-size:var(--text-xs);font-weight:500;color:var(--error)}.gate-ok{display:flex;align-items:center;gap:var(--space-2);color:var(--success);font-size:var(--text-sm);font-weight:500}.gate-muted{font-size:var(--text-xs);color:var(--neutral-500)}.overrule-box textarea{width:100%;border:1px solid var(--neutral-300);border-radius:var(--radius);padding:var(--space-2);font-size:var(--text-sm);resize:vertical;min-height:56px}.player{position:fixed;inset:0;background:var(--neutral-900);display:grid;place-items:center}.player-screen{background:var(--surface-base);width:min(960px,94vw);aspect-ratio:16/9;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:clamp(2rem,5vw,4rem);display:flex;flex-direction:column;gap:var(--space-5);justify-content:center;justify-content:safe center;overflow-y:auto}.player-screen .p-heading{font-size:calc(clamp(1.5rem, 3vw, 2.25rem) * var(--th-scale, 1));font-weight:600;letter-spacing:-.025em;color:var(--neutral-900)}.player-screen .p-text{font-size:var(--text-lg);line-height:1.75;color:var(--neutral-700);max-width:62ch}.player-screen .p-heading+.p-text,.player-screen .p-text+.p-text{margin-top:var(--space-2)}.player-nav{position:fixed;bottom:var(--space-6);left:50%;transform:translateX(-50%);display:flex;gap:var(--space-3);align-items:center}.player-nav .btn{background:rgb(255 255 255/.1);color:#fff;border:1px solid rgb(255 255 255/.25)}.player-nav .btn:hover{background:rgb(255 255 255/.2)}.player-nav .count{color:var(--neutral-300);font-size:var(--text-sm)}.player-close{position:fixed;top:var(--space-4);right:var(--space-4)}.p-scenario{gap:var(--space-4)}.p-answers,.p-scenario{display:flex;flex-direction:column}.p-answers{gap:var(--space-3);counter-reset:ans}.p-answer{display:flex;align-items:center;gap:var(--space-3);text-align:left;border:1.5px solid var(--neutral-300);background:var(--surface-base);border-radius:var(--radius-md);padding:var(--space-4);font-size:var(--text-base);font-weight:500;color:var(--neutral-800);box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),background var(--transition-fast)}.p-answer:before{counter-increment:ans;content:counter(ans,upper-alpha);flex:none;width:30px;height:30px;border-radius:var(--radius-full);background:var(--neutral-100);color:var(--neutral-600);font-weight:600;font-size:var(--text-sm);display:inline-flex;align-items:center;justify-content:center;transition:background var(--transition-fast),color var(--transition-fast)}.p-answer:hover:not(:disabled){border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-1px)}.p-answer:hover:not(:disabled):before{background:var(--primary);color:#fff}.p-answer:disabled{cursor:default}.p-answer.right{border-color:var(--success);background:var(--success-light)}.p-answer.right:before{background:var(--success);color:#fff}.p-answer.wrong{border-color:var(--error);background:var(--error-light)}.p-answer.wrong:before{background:var(--error);color:#fff}.p-feedback{font-size:var(--text-base);color:var(--neutral-700);border-left:3px solid var(--primary);padding-left:var(--space-4)}@media (max-width:1024px){.editor{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr)}.screen-rail{flex-direction:row;align-items:flex-start;overflow-x:auto;overflow-y:hidden;border-right:none;border-bottom:1px solid var(--neutral-200);padding:var(--space-2) var(--space-3);gap:var(--space-2)}.screen-rail .rail-chapter,.screen-rail .rail-label{display:none}.screen-rail .screen-thumb{flex:none;width:104px;gap:var(--space-1)}.screen-rail .rail-add{flex:none;align-self:stretch;padding:var(--space-2) var(--space-3);white-space:nowrap}}.phase-bar{display:flex;gap:var(--space-1);flex-wrap:wrap;align-items:center}.phase-pip{font-size:var(--text-xs);color:var(--neutral-500);padding:2px var(--space-2);border-radius:var(--radius-full);white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast)}.phase-pip.active{background:var(--primary);color:#fff;font-weight:600}.phase-pip.done{background:var(--primary-light);color:var(--primary-dark)}.phase-bar.compact{flex-wrap:nowrap;gap:6px}.phase-pip.dot{width:7px;height:7px;padding:0;background:var(--neutral-200)}.phase-pip.dot.done{background:#f4c3a6}button.phase-pip{border:none;cursor:default;font:inherit}button.phase-pip.clickable{cursor:pointer}button.phase-pip.clickable:hover{filter:brightness(.95)}.dash-journey{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);flex-wrap:wrap}.bfs-intro{display:flex;flex-direction:column;gap:var(--space-5);border:1px solid var(--neutral-200);background:linear-gradient(180deg,#fdf3ec 0,var(--surface-base) 42%);border-radius:var(--radius-lg);padding:var(--space-8);margin-bottom:var(--space-8);box-shadow:var(--shadow-sm)}.bfs-intro-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.bfs-intro-head h2{margin:0;font-size:var(--text-xl);letter-spacing:-.02em}.bfs-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:var(--space-6);gap:var(--space-6)}.bfs-step{display:flex;gap:var(--space-3);align-items:flex-start}.bfs-step strong{display:block;margin-bottom:var(--space-1);color:var(--neutral-900)}.bfs-step p{margin:0;font-size:var(--text-sm);line-height:1.6;color:var(--neutral-600)}.bfs-pip{flex:none;width:30px;height:30px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary) 0,var(--primary-accent) 100%);color:#fff;font-weight:600;font-size:var(--text-sm);justify-content:center;box-shadow:var(--shadow-sm)}.bfs-cta,.bfs-pip{display:flex;align-items:center}.bfs-cta{gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-1)}.wizard-level{display:flex;align-items:center;gap:var(--space-1);margin-bottom:var(--space-4)}.wizard-level .hint{margin:0}.wizard-payoff{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border-left:3px solid var(--success);background:var(--success-light);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--neutral-700)}.wizard-payoff strong{color:var(--success)}.guide-box{border:1px solid var(--neutral-200);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--neutral-600)}.guide-box summary{cursor:pointer;font-weight:500;color:var(--neutral-700)}.guide-box div{margin-top:var(--space-2);line-height:1.65}.friction-row{display:flex;flex-direction:column;gap:var(--space-2);border:1px solid var(--neutral-200);border-radius:var(--radius-md);padding:var(--space-3)}.friction-row input[type=text]{padding:var(--space-2) var(--space-3);border:1px solid var(--neutral-300);border-radius:var(--radius);font-size:var(--text-sm)}.check-row{align-items:flex-start;padding:var(--space-1) 0;cursor:pointer}.check-row input{margin-top:3px;accent-color:var(--primary)}.decision-page{max-width:720px;margin-inline:auto;padding:var(--space-10) var(--space-6);display:flex;flex-direction:column;gap:var(--space-5)}.decision-page .finding{border-left-color:var(--primary)}.media-block{display:flex;flex-direction:column;gap:var(--space-2)}.media-block img,.media-block video{max-width:100%;border-radius:var(--radius-md)}.media-block input[type=text]{padding:var(--space-1) var(--space-2);border:1px solid var(--neutral-300);border-radius:var(--radius);font-size:var(--text-xs)}.media-placeholder{align-items:center;justify-content:center;background:var(--neutral-100);color:var(--neutral-500);border:1.5px dashed var(--neutral-300);min-height:140px;font-size:var(--text-sm)}.media-field,.media-placeholder{display:flex;flex-direction:column;gap:var(--space-2);border-radius:var(--radius-md)}.media-field.over .media-placeholder,.media-field.over>img{outline:2px solid var(--primary);outline-offset:2px}.media-field img,.media-field video{max-width:100%;border-radius:var(--radius-md)}.media-row{display:flex;gap:var(--space-2);align-items:center}.media-row input[type=text]{flex:1 1;padding:var(--space-1) var(--space-2);border:1px solid var(--neutral-300);border-radius:var(--radius);font-size:var(--text-xs)}.p-media{display:flex;flex-direction:column;gap:var(--space-2)}.p-media img,.p-media video{max-width:100%;max-height:55vh;border-radius:var(--radius-md);object-fit:contain}.p-media figcaption{font-size:var(--text-sm);color:var(--neutral-500)}.player-screen[data-sr=on] .sr{transition:opacity .75s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .75s cubic-bezier(.2,.7,.2,1) var(--d,0s)}.player-screen[data-sr=on] .sr:not([data-sr-in]){opacity:0;transform:translateY(28px)}.player-screen .sr-h:after{content:"";display:block;width:2.75rem;height:4px;margin-top:var(--space-3);border-radius:3px;background:var(--primary);transform-origin:left center}.player-screen[data-sr=on] .sr-h:after{transition:transform .6s cubic-bezier(.7,0,.2,1) calc(var(--d, 0s) + .35s)}.player-screen[data-sr=on] .sr-h:not([data-sr-in]):after{transform:scaleX(0)}@media (prefers-reduced-motion:reduce){.player-screen[data-sr=on] .sr,.player-screen[data-sr=on] .sr-h:after{transition:none;opacity:1;transform:none}}.p-sim{display:flex;flex-direction:column;gap:var(--space-4);min-height:0}.p-sim-kicker{font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}.p-sim-who{font-size:var(--text-base);color:var(--neutral-800);margin:0}.p-sim-brief{display:block;margin-top:var(--space-1);font-size:var(--text-sm);color:var(--neutral-600)}.p-sim-note{font-size:var(--text-xs);color:var(--neutral-500);max-width:62ch}.p-sim-log{display:flex;flex-direction:column;gap:var(--space-2);max-height:44vh;overflow-y:auto;padding:var(--space-2) 0}.p-sim-msg{max-width:78%;padding:var(--space-3) var(--space-4);border-radius:16px;font-size:var(--text-base);line-height:1.5;animation:fadeIn var(--transition-slow) ease-out both}.p-sim-msg.them{align-self:flex-start;background:var(--neutral-100);color:var(--neutral-800);border-bottom-left-radius:4px}.p-sim-msg.me{align-self:flex-end;background:var(--primary);color:#fff;border-bottom-right-radius:4px}.p-sim-msg .who{display:block;font-size:var(--text-xs);font-weight:600;color:var(--neutral-500);margin-bottom:2px}.p-sim-msg.typing{color:var(--neutral-400);letter-spacing:.2em}.p-sim-sys{align-self:center;font-size:var(--text-sm);color:var(--neutral-500)}.p-sim-chips,.p-sim-input{display:flex;flex-wrap:wrap;gap:var(--space-2)}.p-sim-input input{flex:1 1 16rem;min-width:0;padding:var(--space-2) var(--space-3);border:1.5px solid var(--neutral-300);border-radius:var(--radius);font-size:var(--text-base)}.p-sim-input input:focus{border-color:var(--primary);outline:none}.p-sim-verdict{border-left:4px solid var(--primary);padding-left:var(--space-4);gap:var(--space-2)}.p-sim-beats,.p-sim-verdict{display:flex;flex-direction:column}.p-sim-beats{gap:var(--space-3);padding-left:1.2rem;font-size:var(--text-sm);color:var(--neutral-700)}.p-sim-beat-head{display:flex;gap:var(--space-2);align-items:baseline;flex-wrap:wrap}.p-sim-quote{color:var(--neutral-600)}.p-sim-you{margin-top:2px}.p-sim-alarm,.p-sim-you{color:var(--neutral-800)}.p-sim-alarm{margin-top:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--warning-light);border-radius:var(--radius)}.p-sim-stage{position:relative;align-self:center;width:min(100%,420px);aspect-ratio:16/9;border-radius:var(--radius-md);overflow:hidden;background:var(--neutral-900)}.p-sim-stage video{width:100%;height:100%;object-fit:cover;display:block}.p-sim-stage-state{position:absolute;left:var(--space-2);bottom:var(--space-2);font-size:var(--text-xs);color:#fff;background:rgb(0 0 0/.45);border-radius:var(--radius-full);padding:2px var(--space-2)}.p-sim-stage-state:empty{display:none}.p-sim-log.compact{max-height:18vh}.p-sim-stage-flag{position:absolute;left:var(--space-2);top:var(--space-2);font-size:11px;color:#fff;background:rgb(180 83 9/.85);border-radius:var(--radius-full);padding:2px var(--space-2)}.conv-card{display:grid;grid-template-columns:auto 1fr auto;grid-gap:var(--space-4);gap:var(--space-4);align-items:center;padding:var(--space-4);border:1px solid var(--neutral-200);border-radius:var(--radius-md);background:var(--surface-base)}.conv-card-body{display:flex;flex-direction:column;gap:2px;min-width:0}.conv-card-body strong{font-size:var(--text-lg);color:var(--neutral-900)}.conv-card-actions{display:flex;flex-direction:column;gap:var(--space-2)}.conv-card-face{width:72px;height:72px;border-radius:var(--radius-full);overflow:hidden;border:2px solid var(--neutral-200);background:var(--primary-light);display:grid;place-items:center;padding:0;font-size:1.6rem;font-weight:600;color:var(--primary-dark)}.conv-card-face img{width:100%;height:100%;object-fit:cover}.conv-card-face.big{width:112px;height:112px;font-size:2.4rem}.ladder{display:flex;gap:4px;margin:var(--space-2) 0 2px}.rung{width:24px;height:24px;border-radius:6px;display:inline-grid;place-items:center;font-size:12px;font-weight:600;color:#fff;flex:none}.rung-any{background:var(--neutral-400)}.rung-decline{background:#d4a017}.rung-object{background:#e07a2e}.rung-exit{background:var(--error)}.studio{position:fixed;inset:0;z-index:60;background:var(--neutral-50,#faf8f5);overflow-y:auto;animation:fadeIn var(--transition) ease-out both}.studio-head{position:-webkit-sticky;position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-4) var(--space-6);background:var(--surface-base);border-bottom:1px solid var(--neutral-200)}.studio-head h2{font-size:var(--text-lg);margin:0}.beat-head .grow,.studio-head .grow,.studio-row .grow{flex:1 1}.studio-tabs{display:flex;gap:var(--space-1)}.studio-tabs button{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);border:none;background:transparent;color:var(--neutral-600);font-size:var(--text-sm)}.studio-tabs button .n{width:22px;height:22px;border-radius:var(--radius-full);display:inline-grid;place-items:center;background:var(--neutral-200);font-size:12px;font-weight:600}.studio-tabs button.active{background:var(--primary-light);color:var(--primary-dark);font-weight:600}.studio-tabs button.active .n{background:var(--primary);color:#fff}.studio-body{padding:var(--space-8) var(--space-6) var(--space-16,4rem)}.studio-col{max-width:720px;margin-inline:auto;gap:var(--space-5)}.studio-col,.studio-col label{display:flex;flex-direction:column}.studio-col label{gap:var(--space-1);font-size:var(--text-sm);font-weight:500;color:var(--neutral-700)}.studio-col input[type=text],.studio-col textarea{font:inherit;font-size:var(--text-base);font-weight:400;padding:var(--space-2) var(--space-3);border:1.5px solid var(--neutral-300);border-radius:var(--radius);background:var(--surface-base);color:var(--neutral-900);resize:vertical}.studio-col input[type=text]:focus,.studio-col textarea:focus{outline:none}.studio-col label.studio-check{flex-direction:row;align-items:center;gap:var(--space-2);font-weight:400}.studio-who{display:flex;gap:var(--space-5);align-items:center}.studio-who-fields{flex:1 1;flex-direction:column}.studio-row,.studio-who-fields{display:flex;gap:var(--space-3)}.studio-row{align-items:center;flex-wrap:wrap}.studio-next{display:flex;justify-content:flex-end}.studio-intro{font-size:var(--text-base);color:var(--neutral-600);margin:0}.beat{flex-direction:column;padding:var(--space-4);background:var(--surface-base);border:1px solid var(--neutral-200);border-radius:var(--radius-md)}.beat,.beat-head{display:flex;gap:var(--space-2)}.beat-head{align-items:center}.beat-line{font-size:var(--text-lg)!important}.beat-expect{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.seg{display:inline-flex;border:1px solid var(--neutral-300);border-radius:var(--radius-full);overflow:hidden}.seg button{border:none;background:var(--surface-base);padding:var(--space-1) var(--space-3);font-size:var(--text-sm);color:var(--neutral-700)}.seg button+button{border-left:1px solid var(--neutral-300)}.seg button.on{color:#fff;font-weight:600}.beat-more summary{cursor:pointer;font-size:var(--text-sm);color:var(--neutral-500)}.beat-more[open]{display:flex;flex-direction:column;gap:var(--space-3)}.icon-btn{width:28px;height:28px;border-radius:var(--radius);border:1px solid transparent;background:transparent;color:var(--neutral-500);font-size:15px}.icon-btn:hover:not(:disabled){border-color:var(--neutral-300);color:var(--neutral-800)}.icon-btn:disabled{opacity:.3}.icon-btn.danger:hover{color:var(--error);border-color:var(--error-light)}.face-grid{max-width:1040px;margin-inline:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.face{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);border:2px solid transparent;border-radius:var(--radius-md);background:var(--surface-base);box-shadow:var(--shadow-sm);font-size:var(--text-sm);font-weight:500;color:var(--neutral-800);transition:transform var(--transition-fast),border-color var(--transition-fast)}.face:hover{transform:translateY(-2px);border-color:var(--neutral-300)}.face.selected{border-color:var(--primary)}.face img,.face-blank{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius);background:var(--neutral-100);display:block}.seg button.on.rung-any{background:var(--neutral-500)}.seg button.on.rung-decline{background:#d4a017}.seg button.on.rung-object{background:#e07a2e}.seg button.on.rung-exit{background:var(--error)}.sim-launch{display:grid;grid-template-columns:auto 1fr auto;grid-gap:var(--space-5);gap:var(--space-5);align-items:center;padding:var(--space-5);border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--neutral-900),#3a2a22);color:#fff;box-shadow:var(--shadow-lg)}.sim-launch-face{width:88px;height:88px;border-radius:var(--radius-full);overflow:hidden;background:rgb(255 255 255/.12);display:grid;place-items:center;font-size:var(--text-3xl);font-weight:600;box-shadow:0 0 0 3px rgb(255 255 255/.15)}.sim-launch-face img{width:100%;height:100%;object-fit:cover}.sim-launch-body{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.sim-launch-body h2{color:#fff;font-size:var(--text-2xl);letter-spacing:-.025em;margin:0}.sim-launch-body p{color:var(--neutral-300);margin:0}.sim-launch-fine{grid-column:1/-1;margin:0;font-size:var(--text-xs);color:var(--neutral-400)}.sim-launch .badge{align-self:flex-start;margin-top:var(--space-1)}.stage-kicker{font-size:var(--text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#f4a37a}.stage{position:fixed;inset:0;z-index:100;background:#0f0c0a;color:#fff;overflow:hidden;animation:stageIn .4s ease-out both}@keyframes stageIn{0%{opacity:0}to{opacity:1}}.stage-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:filter .6s ease,opacity .6s ease,transform .6s ease}.stage-video.dim{filter:blur(14px) brightness(.55);transform:scale(1.04)}.stage-video.off{opacity:0}.stage-shade{inset:0;background:linear-gradient(180deg,rgb(0 0 0/.55) 0,rgb(0 0 0/0) 22%,rgb(0 0 0/0) 50%,rgb(0 0 0/.75))}.stage-shade,.stage-top{position:absolute;pointer-events:none}.stage-top{top:0;left:0;right:0;display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);z-index:4}.stage-top>*{pointer-events:auto}.stage-top .grow{flex:1 1}.stage-who{display:flex;flex-direction:column;line-height:1.25}.stage-name{font-size:var(--text-lg);font-weight:600}.stage-role{font-size:var(--text-sm);color:var(--neutral-300)}.stage-who{min-width:0}.stage-brief{max-width:62ch;margin-top:var(--space-1);font-size:var(--text-xs);line-height:1.45;color:var(--neutral-300);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.stage-flag{font-size:var(--text-xs);padding:var(--space-1) var(--space-3);background:rgb(217 119 6/.9)}.stage-flag,.stage-pill{border-radius:var(--radius-full);font-weight:500}.stage-pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid rgb(255 255 255/.25);background:rgb(0 0 0/.35);color:#fff;font-size:var(--text-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background var(--transition-fast),border-color var(--transition-fast)}.stage-pill:hover:not(:disabled){background:rgb(0 0 0/.55);border-color:rgb(255 255 255/.45)}.stage-pill.danger:hover:not(:disabled){background:rgb(220 38 38/.85);border-color:transparent}.stage-center{position:absolute;inset:0;display:grid;place-items:center;padding:var(--space-6);z-index:2}.glass-card{width:min(520px,100%);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-8);border-radius:var(--radius-lg);background:rgb(24 20 17/.62);border:1px solid rgb(255 255 255/.12);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 30px 60px rgb(0 0 0/.4);animation:fadeIn .4s ease-out both}.glass-card.small{width:auto;flex-direction:row;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6);flex-wrap:wrap;justify-content:center}.glass-card h2{color:#fff;font-size:var(--text-3xl);letter-spacing:-.025em;line-height:1.15;margin:0}.glass-lead{color:var(--neutral-200);font-size:var(--text-lg);line-height:1.55;margin:0}.glass-fine{color:var(--neutral-400);font-size:var(--text-xs);margin:0}.stage-cta{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);border:none;background:var(--primary);color:#fff;font-size:var(--text-base);font-weight:600;box-shadow:0 8px 24px rgb(194 65 12/.35);transition:transform var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.stage-cta:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 12px 28px rgb(194 65 12/.45)}.stage-cta:disabled{opacity:.7}.glass-card .stage-cta{align-self:flex-start}.spinner{width:18px;height:18px;border-radius:50%;border:2px solid rgb(255 255 255/.3);border-top-color:#fff;animation:spin .8s linear infinite;flex:none}@keyframes spin{to{transform:rotate(1turn)}}.stage-bottom{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-6) var(--space-6) var(--space-8)}.caption{max-width:60ch;margin:0;text-align:center;font-size:clamp(1.125rem,.9rem + .8vw,1.5rem);line-height:1.4;font-weight:500;text-shadow:0 2px 12px rgb(0 0 0/.6);animation:fadeIn .3s ease-out both}.caption.wait{display:inline-flex;align-items:center;gap:var(--space-3);font-size:var(--text-base);font-weight:400;color:var(--neutral-300)}.caption.me{font-size:var(--text-lg);font-weight:400;color:#fde6d8;font-style:italic}.stage-note{margin:0;font-size:var(--text-sm);color:var(--neutral-200)}.stage-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);max-width:820px}.stage-chips button{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border:1px solid rgb(255 255 255/.22);background:rgb(0 0 0/.35);color:#fff;font-size:var(--text-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background var(--transition-fast),border-color var(--transition-fast)}.stage-chips button:hover{background:rgb(255 255 255/.16);border-color:rgb(255 255 255/.4)}.stage-input{display:flex;gap:var(--space-2);width:min(620px,100%);padding:var(--space-1);border-radius:var(--radius-full);background:rgb(0 0 0/.45);border:1px solid rgb(255 255 255/.2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.stage-input input{flex:1 1;min-width:0;background:transparent;border:none;color:#fff;font-size:var(--text-base);padding:var(--space-2) var(--space-4);outline:none}.stage-input input::placeholder{color:var(--neutral-400)}.stage-input button{width:40px;height:40px;border-radius:var(--radius-full);border:none;background:var(--primary);color:#fff;display:grid;place-items:center}.stage-input button:disabled{background:rgb(255 255 255/.12);color:var(--neutral-400)}.stage-controls{display:flex;align-items:center;gap:var(--space-8)}.round{width:48px;height:48px;border-radius:var(--radius-full);border:1px solid rgb(255 255 255/.22);background:rgb(0 0 0/.35);color:#fff;display:grid;place-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background var(--transition-fast)}.round.on,.round:hover{background:rgb(255 255 255/.18)}.round.ghost{visibility:hidden}.mic-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.mic{position:relative;width:76px;height:76px;border-radius:var(--radius-full);border:none;background:#fff;color:var(--neutral-900);display:grid;place-items:center;box-shadow:0 10px 30px rgb(0 0 0/.35);transition:transform var(--transition-fast),background var(--transition),color var(--transition)}.mic:hover:not(:disabled){transform:scale(1.04)}.mic:disabled{background:rgb(255 255 255/.18);color:rgb(255 255 255/.55);box-shadow:none}.mic.on{background:var(--primary);color:#fff}.mic.on:after{content:"";position:absolute;inset:-6px;border-radius:var(--radius-full);border:2px solid var(--primary);animation:ring 1.4s ease-out infinite}@keyframes ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.35)}}.mic-label{font-size:var(--text-sm);color:var(--neutral-200);min-height:1.3em}.stage-sheet-wrap{position:absolute;inset:0;z-index:3;overflow-y:auto;padding:var(--space-20) var(--space-6) var(--space-12)}.stage-sheet{width:min(760px,100%);margin-inline:auto;background:var(--surface-base);color:var(--neutral-700);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:0 30px 80px rgb(0 0 0/.45);animation:fadeIn .4s ease-out both}.sheet-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6)}.sheet-actions .btn{display:inline-flex;align-items:center;gap:var(--space-2)}.sim-result{display:flex;flex-direction:column;gap:var(--space-5)}.sim-verdict{display:flex;gap:var(--space-4);align-items:flex-start}.sim-verdict-icon{flex:none;width:52px;height:52px;border-radius:var(--radius-full);display:grid;place-items:center;color:var(--tone);background:color-mix(in srgb,var(--tone) 12%,transparent)}.sim-verdict h2{font-size:var(--text-2xl);letter-spacing:-.025em;color:var(--neutral-900);margin:0 0 var(--space-1)}.sim-verdict p{margin:0;color:var(--neutral-600);max-width:60ch}.sim-steps{list-style:none;padding:0;margin:0;gap:var(--space-3);border-left:2px solid var(--neutral-200);padding-left:var(--space-5)}.sim-step,.sim-steps{display:flex;flex-direction:column}.sim-step{position:relative;gap:var(--space-1);font-size:var(--text-sm)}.sim-step:before{content:"";position:absolute;left:calc(-1 * var(--space-5) - 7px);top:6px;width:12px;height:12px;border-radius:var(--radius-full);background:var(--neutral-300);box-shadow:0 0 0 3px var(--surface-base)}.sim-step.out-met:before{background:var(--success)}.sim-step.out-missed:before,.sim-step.out-uncertain:before{background:var(--warning)}.sim-step.out-violation:before{background:var(--error)}.sim-step .badge{align-self:flex-start}.sim-step p{margin:0;color:var(--neutral-700)}.sim-step-them{color:var(--neutral-600)!important}.sim-step-alarm{display:flex;gap:var(--space-2);align-items:flex-start;margin-top:var(--space-1)!important;padding:var(--space-3);border-radius:var(--radius);background:var(--warning-light);color:var(--neutral-800)!important}.sim-step-alarm svg{flex:none;color:var(--warning);margin-top:2px}.sim-takeaways{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);border:1px solid var(--neutral-200)}.sim-takeaways h3{margin:0 0 var(--space-2);font-size:var(--text-base);font-weight:600}.sim-takeaways h3,.sim-takeaways li strong{color:var(--neutral-900)}.sim-takeaways ul{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);color:var(--neutral-800)}.sim-debrief{margin:0;padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);background:var(--primary-light);color:var(--neutral-900);font-weight:500}.sim-fine{margin:0;font-size:var(--text-xs);color:var(--neutral-500)}@media (max-width:640px){.sim-launch{grid-template-columns:auto 1fr}.sim-launch .stage-cta{grid-column:1/-1}.stage-top{padding:var(--space-4)}.glass-card{padding:var(--space-6)}.stage-controls{gap:var(--space-5)}}@media (prefers-reduced-motion:reduce){.caption,.glass-card,.mic.on:after,.stage,.stage-sheet{animation:none}}.studio{background:linear-gradient(180deg,#f6f3ef 0,var(--neutral-50) 320px)}.studio-head{box-shadow:var(--shadow-sm);border-bottom-color:transparent}.studio-face{width:36px;height:36px;border-radius:var(--radius-full);overflow:hidden;background:var(--primary-light);color:var(--primary-dark);display:grid;place-items:center;font-weight:600;flex:none}.studio-face img{width:100%;height:100%;object-fit:cover}.studio-body{padding-top:var(--space-10)}.studio-col{gap:var(--space-6)}.s-card{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-6);background:var(--surface-base);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.s-card.flat{background:transparent;border:none;box-shadow:none;padding:0}.s-card-head h3{font-size:var(--text-xl);letter-spacing:-.015em;color:var(--neutral-900);margin:0 0 var(--space-1)}.s-card-head p{margin:0;color:var(--neutral-600);font-size:var(--text-sm);max-width:60ch}.s-hint{font-size:var(--text-xs);font-weight:400;color:var(--neutral-500)}.studio-col input[type=text],.studio-col textarea{background:var(--neutral-50);border:1px solid var(--neutral-200);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.studio-col input[type=text]:focus,.studio-col textarea:focus{background:var(--surface-base);border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.s-toggles{display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--neutral-100)}.s-credits{margin:0;font-size:var(--text-sm);color:var(--neutral-600)}.toggle{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:var(--space-3)!important;cursor:pointer;font-weight:400!important}.toggle input{position:absolute;opacity:0;pointer-events:none}.toggle-track{flex:none;width:40px;height:24px;border-radius:var(--radius-full);background:var(--neutral-300);position:relative;transition:background var(--transition);margin-top:1px}.toggle-track span{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:var(--radius-full);background:#fff;box-shadow:var(--shadow-sm);transition:transform var(--transition)}.toggle input:checked+.toggle-track{background:var(--primary)}.toggle input:checked+.toggle-track span{transform:translateX(16px)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--primary);outline-offset:2px}.toggle-text{display:flex;flex-direction:column;gap:2px}.toggle-text strong{font-size:var(--text-sm);font-weight:600;color:var(--neutral-900)}.toggle-text span{max-width:56ch}.legend,.toggle-text span{font-size:var(--text-sm);color:var(--neutral-600)}.legend{display:flex;gap:var(--space-4);flex-wrap:wrap}.legend span{display:inline-flex;align-items:center;gap:var(--space-2)}.legend .dot{width:10px;height:10px;border-radius:var(--radius-full);display:inline-block}.timeline-beats{list-style:none;margin:0;padding:0 0 0 var(--space-12);position:relative;display:flex;flex-direction:column;gap:var(--space-4)}.timeline-beats:before{content:"";position:absolute;left:15px;top:var(--space-5);bottom:var(--space-5);width:2px;background:var(--neutral-200)}.timeline-beats .beat{position:relative;box-shadow:var(--shadow-sm);border-radius:var(--radius-lg);padding:var(--space-5)}.beat-node{position:absolute;left:calc(-1 * var(--space-12));top:var(--space-5);width:32px;height:32px;border-radius:var(--radius-full);display:grid;place-items:center;color:#fff;font-weight:600;font-size:var(--text-sm);box-shadow:0 0 0 4px var(--neutral-50)}.beat-line{background:var(--surface-base)!important;border-color:transparent!important;padding-inline:0!important;font-weight:500;color:var(--neutral-900)}.beat-line:focus{border-color:var(--primary)!important;padding-inline:var(--space-3)!important}.face-grid{padding-top:var(--space-4)}.compass{display:flex;flex-direction:column;gap:var(--space-5)}.compass-kicker{color:var(--primary)}.compass-intro{margin:var(--space-2) 0 0;font-size:var(--text-lg);color:var(--neutral-600);max-width:60ch}.compass-trail{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.compass-trail button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius);background:var(--neutral-100);color:var(--neutral-600);font-size:var(--text-sm);text-align:left;transition:background var(--transition-fast)}.compass-trail button:hover{background:var(--neutral-200)}.compass-trail strong{flex:none;padding:0 var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs)}.compass-trail strong.yes{background:var(--primary-light);color:var(--primary-dark)}.compass-trail strong.no{background:var(--neutral-200);color:var(--neutral-700)}.compass-q{display:flex;flex-direction:column;gap:var(--space-3);animation:fadeIn var(--transition-slow) ease-out both}.compass-q h2{font-size:clamp(1.5rem,1.1rem + 1.2vw,2rem);letter-spacing:-.025em;line-height:1.2;color:var(--neutral-900);margin:0}.compass-q p{margin:0;color:var(--neutral-600);max-width:60ch}.compass-answers{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-3);gap:var(--space-3);margin-top:var(--space-3);max-width:420px}.compass-answers button{padding:var(--space-4);border-radius:var(--radius-md);border:1.5px solid var(--neutral-300);background:var(--surface-base);font-size:var(--text-lg);font-weight:600;color:var(--neutral-900);box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.compass-answers button:hover{border-color:var(--primary);background:var(--primary-light);transform:translateY(-1px);box-shadow:var(--shadow-md)}.compass-out{--tone:var(--success);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--tone) 8%,var(--surface-base));border:1px solid color-mix(in srgb,var(--tone) 30%,transparent);animation:fadeIn var(--transition-slow) ease-out both}.compass-out.tone-stop{--tone:var(--error)}.compass-out.tone-caution{--tone:var(--warning)}.compass-out-head{display:flex;gap:var(--space-3);align-items:center}.compass-out-icon{width:44px;height:44px;flex:none;border-radius:var(--radius-full);display:grid;place-items:center;color:#fff;background:var(--tone)}.compass-out h2{font-size:var(--text-2xl);letter-spacing:-.025em;color:var(--neutral-900);margin:0}.compass-actions{margin:0;padding-left:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2);color:var(--neutral-800);font-size:var(--text-base);line-height:1.5}.compass-out .btn{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2)}.dec-face{color:var(--primary)}.dec-targets{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-3);gap:var(--space-3)}.dec-target select{font:inherit;font-size:var(--text-sm);font-weight:400;padding:var(--space-2);border:1px solid var(--neutral-200);border-radius:var(--radius);background:var(--neutral-50);color:var(--neutral-900)}.seg button.on.tone-stop{background:var(--error)}.seg button.on.tone-caution{background:var(--warning)}.seg button.on.tone-ok{background:var(--success)}body:has(.sheet-page) .topbar{display:none}body:has(.sheet-page){background:#e9e4de}.sheet-page{--red:#c81e1e;--yellow:#c98a04;--green:#15803d;flex-direction:column;gap:var(--space-8);padding:var(--space-8) var(--space-4) var(--space-16)}.sheet-page,.sheet-toolbar{display:flex;align-items:center}.sheet-toolbar{width:210mm;max-width:100%;justify-content:space-between;gap:var(--space-4);font-size:var(--text-sm);color:var(--neutral-700)}.sheet{width:210mm;min-height:297mm;padding:14mm 14mm 10mm;background:#fff;box-shadow:0 20px 50px rgb(0 0 0/.18);display:flex;flex-direction:column;gap:6mm;font-size:9.5pt;line-height:1.4;color:#2a2522;position:relative}.tone-stop{--tone:var(--red)}.tone-caution{--tone:var(--yellow)}.tone-ok{--tone:var(--green)}.sh-head{display:flex;justify-content:space-between;gap:8mm;align-items:flex-start;padding-bottom:5mm;border-bottom:2px solid #2a2522}.sh-head.compact{padding-bottom:3mm}.sh-kicker{font-size:7.5pt;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.sh-head h1{font-size:26pt;line-height:1.05;letter-spacing:-.03em;margin:1.5mm 0 2mm;color:#1c1917}.sh-head h2{font-size:17pt;letter-spacing:-.02em;margin:1mm 0 0;color:#1c1917}.sh-head p{margin:0;max-width:115mm;font-size:10.5pt;color:#57534e}.sh-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.5mm;font-size:8.5pt;font-weight:600;flex:none}.sh-catalogue li,.sh-legend li,.sh-out-ref{display:flex;align-items:center;gap:2mm}.sh-catalogue li>i,.sh-legend i,.sh-out-ref i{width:3mm;height:3mm;border-radius:50%;background:var(--tone);flex:none}.sh-flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;grid-gap:3mm 5mm;gap:3mm 5mm}.sh-q{display:flex;gap:3mm;padding:3mm 3.5mm;border:1px solid #e7e2dc;border-radius:2.5mm;background:#faf8f6;page-break-inside:avoid;break-inside:avoid}.sh-num{flex:none;width:7mm;height:7mm;border-radius:50%;background:#1c1917;color:#fff;display:grid;place-items:center;font-weight:700;font-size:9pt}.sh-q-body{display:flex;flex-direction:column;gap:1mm;min-width:0}.sh-q-body strong{font-size:10pt;line-height:1.25;color:#1c1917}.sh-help{font-size:8pt;color:#78716c}.sh-answers{display:flex;flex-direction:column;gap:.8mm;margin-top:1mm;font-size:8.5pt}.sh-answers em{font-style:normal;font-weight:700;display:inline-block;min-width:7mm}.sh-goto b{display:inline-grid;place-items:center;width:5mm;height:5mm;border-radius:50%;background:#1c1917;color:#fff;font-size:7.5pt}.sh-out-ref{display:inline-flex;font-weight:600;color:var(--tone)}.sh-outcomes{display:grid;grid-template-columns:repeat(auto-fit,minmax(55mm,1fr));grid-gap:3mm;gap:3mm}.sh-outcome{display:flex;flex-direction:column;gap:1.2mm;padding:3mm 3.5mm;border-radius:2.5mm;border-top:1.5mm solid var(--tone);background:color-mix(in srgb,var(--tone) 6%,#fff);page-break-inside:avoid;break-inside:avoid}.sh-tone{font-size:7pt;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tone)}.sh-outcome strong{font-size:10pt;line-height:1.25;color:#1c1917}.sh-outcome ol{margin:0;padding-left:4mm;font-size:8.3pt;display:flex;flex-direction:column;gap:.6mm}.sh-catalogue{column-count:2;column-gap:7mm}.sh-section{page-break-inside:avoid;break-inside:avoid;margin-bottom:4.5mm}.sh-section h3{font-size:10.5pt;margin:0 0 1.5mm;padding-bottom:1mm;border-bottom:1px solid #e7e2dc;color:#1c1917}.sh-section ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.3mm}.sh-catalogue li{align-items:flex-start;font-size:8.4pt}.sh-catalogue li>i{margin-top:1.1mm}.sh-catalogue li b{font-weight:600;color:#1c1917}.sh-catalogue li span{color:#57534e}.sh-footnote{margin:0;padding:3mm 4mm;border-radius:2.5mm;background:#1c1917;color:#f5f5f4;font-size:8.5pt}.sh-foot{margin-top:auto;padding-top:3mm;border-top:1px solid #e7e2dc;font-size:7pt;color:#a8a29e}@media print{@page{size:A4 portrait;margin:0}body:has(.sheet-page){background:#fff}.sheet-page{padding:0;gap:0}.sheet-toolbar{display:none}.sheet{box-shadow:none;page-break-after:always;break-after:page;width:210mm;height:297mm;min-height:0;overflow:hidden}.sheet:last-child{page-break-after:auto;break-after:auto}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media screen and (max-width:820px){.sheet{width:100%;min-height:0;padding:var(--space-6)}.sh-catalogue,.sh-flow{grid-template-columns:1fr;column-count:1}.sh-head{flex-direction:column}}.sh-answers>span{display:flex;align-items:flex-start;gap:1.2mm}.sh-answers em{min-width:6mm}.sh-arrow{color:#a8a29e}.sh-out-ref{align-items:flex-start}.sh-out-ref i{margin-top:.9mm}.compass-out-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.compass-out-actions .btn{display:inline-flex;align-items:center;gap:var(--space-2)}body:has(.compass-page) .topbar{display:none}body:has(.compass-page){background:linear-gradient(180deg,#f3eee8,#faf8f5 60%);min-height:100vh}.compass-page{--red:#c81e1e;--yellow:#c98a04;--green:#15803d;max-width:760px;margin-inline:auto;padding:var(--space-12) var(--space-4) var(--space-16);display:flex;flex-direction:column;gap:var(--space-5)}.compass-page-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap}.sh-legend.row{flex-direction:row;gap:var(--space-4);font-size:var(--text-sm)}.compass-page .sh-legend li{display:flex;align-items:center;gap:var(--space-2)}.compass-page .sh-legend i{width:10px;height:10px;border-radius:50%;background:var(--tone)}.compass-page-card{background:var(--surface-base);border-radius:var(--radius-lg);box-shadow:0 24px 60px rgb(28 25 23/.12);padding:clamp(var(--space-6),5vw,var(--space-12))}.compass-page-card .compass-kicker,.compass-page-foot{font-size:var(--text-sm)}.compass-page-foot{display:flex;flex-direction:column;gap:var(--space-3);color:var(--neutral-600)}.compass-page-foot p{margin:0}.compass-page-foot nav{display:flex;gap:var(--space-4);flex-wrap:wrap}.compass-page-foot a{color:var(--primary-dark);font-weight:500}.compass-page-foot a.on{color:var(--neutral-900);text-decoration:underline}.sheet-toolbar-actions{display:flex;gap:var(--space-2)}.sh-flow{gap:2.5mm 4mm}.sh-q{padding:2.6mm 3mm}.sh-help{font-size:7.8pt;line-height:1.3}.sh-outcomes{grid-template-columns:1fr 1fr;gap:4mm}.sh-outcome{padding:4mm 4.5mm;gap:1.8mm}.sh-outcome strong{font-size:12pt}.sh-outcome ol{font-size:9.2pt;gap:1.2mm}.stage-err{color:#fbbf24}.sim-step-tip{display:flex;gap:var(--space-2);align-items:flex-start;margin-top:var(--space-1)!important;padding:var(--space-3);border-radius:var(--radius);background:var(--success-light);color:var(--neutral-800)!important}.sim-step-tip svg{flex:none;color:var(--success);margin-top:2px}.sim-step.out-partial:before{background:var(--success);opacity:.6}.role-card{width:min(620px,100%)}.role-options{gap:var(--space-3)}.role-option,.role-options{display:flex;flex-direction:column}.role-option{gap:var(--space-1);text-align:left;padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);border:1px solid rgb(255 255 255/.18);background:rgb(255 255 255/.06);color:#fff;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.role-option:hover{background:rgb(255 255 255/.14);border-color:#f4a37a;transform:translateY(-1px)}.role-option strong{font-size:var(--text-lg)}.role-option span{font-size:var(--text-sm);color:var(--neutral-300)}.studio-roles{position:-webkit-sticky;position:sticky;top:69px;z-index:1;display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-3) var(--space-6);background:var(--surface-base);border-bottom:1px solid var(--neutral-200)}.player-lang{position:fixed;bottom:var(--space-6);left:var(--space-6);z-index:5;display:inline-flex;border:1px solid rgb(255 255 255/.25);border-radius:var(--radius-full);overflow:hidden;background:rgb(0 0 0/.25)}.player-lang button{border:none;background:transparent;color:var(--neutral-300);font-size:var(--text-sm);padding:var(--space-1) var(--space-3);transition:background var(--transition-fast),color var(--transition-fast)}.player-lang button.on{background:rgb(255 255 255/.9);color:var(--neutral-900);font-weight:600}.player-lang button:hover:not(.on){color:#fff}.sim-step .why{display:block;margin-top:2px;color:var(--neutral-600)}.sim-compass{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);border:1.5px solid var(--primary);color:var(--neutral-800);text-decoration:none;transition:background var(--transition-fast)}.sim-compass:hover{background:var(--primary-light)}.sim-compass svg{flex:none;color:var(--primary);margin-top:2px}.stage-guard{position:absolute;top:72px;right:var(--space-6);z-index:4;display:flex;align-items:center;gap:var(--space-2);max-width:420px;padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:rgb(30 64 175/.85);color:#fff;font-size:var(--text-xs);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn var(--transition) ease-out both}.stage-guard span{font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding-right:var(--space-2);border-right:1px solid rgb(255 255 255/.35)}.stage-guard button{border:none;background:transparent;color:#fff;display:grid;place-items:center;padding:0;margin-left:auto}.doors{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:var(--space-5);gap:var(--space-5);margin-bottom:var(--space-8)}.door{text-align:left;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-6) var(--space-6) var(--space-5);background:var(--surface-base);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:box-shadow var(--transition-fast),transform var(--transition-fast),border-color var(--transition-fast)}.door:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--primary),var(--primary-accent));transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1)}.door:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--neutral-300)}.door:focus-visible:after,.door:hover:after{transform:scaleX(1)}.door strong{font-size:var(--text-xl);letter-spacing:-.02em;color:var(--neutral-900)}.door>span:last-child{font-size:var(--text-sm);color:var(--neutral-500);line-height:1.5;max-width:52ch}.door-kicker{font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}.ui-lang button.on{background:var(--neutral-800)}.source-list{gap:var(--space-2)}.source-list,.source-opt{display:flex;flex-direction:column}.source-opt{text-align:left;gap:2px;padding:var(--space-3) var(--space-4);border:1px solid var(--neutral-200);border-radius:var(--radius-md);background:var(--surface-base);transition:border-color var(--transition-fast),background var(--transition-fast)}.source-opt strong{font-size:var(--text-sm);color:var(--neutral-800)}.source-opt span{font-size:var(--text-xs);color:var(--neutral-500)}.source-opt.on,.source-opt:hover:not(:disabled){border-color:var(--primary)}.source-opt.on{background:var(--primary-light)}.source-opt:disabled{opacity:.55;cursor:default}.source-opt .soon{font-style:normal;font-size:var(--text-xs);font-weight:600;color:var(--neutral-500);margin-left:var(--space-2)}@media (prefers-reduced-motion:reduce){.door,.door:after{transition:none}}.sp{position:fixed;inset:0;overflow-y:auto;scroll-snap-type:y proximity;background:var(--neutral-100);color:var(--neutral-800)}.sp-sec{min-height:100svh;scroll-snap-align:start;display:grid;place-items:center;padding:clamp(4rem,9vh,7rem) clamp(1rem,5vw,3rem);position:relative}.sp-sec:nth-of-type(2n){background:var(--surface-base)}.sp-inner{width:min(760px,100%);display:flex;flex-direction:column;gap:var(--space-5);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}.sp-sec:not(.current) .sp-inner{opacity:.38;transform:scale(.985)}.sp .p-heading{font-size:calc(clamp(1.75rem, 4vw, 3rem) * var(--th-scale, 1));font-weight:700;letter-spacing:-.03em;line-height:1.1;color:var(--neutral-900)}.sp .p-text{font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.75;color:var(--neutral-700);max-width:62ch}.sp[data-sr=on] .sr{transition:opacity .75s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .75s cubic-bezier(.2,.7,.2,1) var(--d,0s)}.sp[data-sr=on] .sr:not([data-sr-in]){opacity:0;transform:translateY(28px)}.sp .sr-h:after{content:"";display:block;width:2.75rem;height:4px;margin-top:var(--space-4);border-radius:3px;background:var(--primary);transform-origin:left center}.sp[data-sr=on] .sr-h:after{transition:transform .6s cubic-bezier(.7,0,.2,1) calc(var(--d, 0s) + .35s)}.sp[data-sr=on] .sr-h:not([data-sr-in]):after{transform:scaleX(0)}.sp-progress{top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--primary-accent));transform-origin:left}.sp-dots,.sp-progress{position:fixed;z-index:6}.sp-dots{right:clamp(.5rem,2vw,1.5rem);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:10px}.sp-dots button{width:10px;height:10px;padding:0;border-radius:50%;border:1.5px solid var(--neutral-400);background:transparent;transition:background .25s,border-color .25s,transform .25s}.sp-dots button.on,.sp-dots button:hover{border-color:var(--primary)}.sp-dots button.on{background:var(--primary);transform:scale(1.25)}.sp-cue{position:absolute;bottom:var(--space-6);left:50%;translate:-50% 0;width:44px;height:44px;border-radius:50%;border:1px solid var(--neutral-300);background:var(--surface-base);display:grid;place-items:center;animation:spBob 2.4s ease-in-out infinite}.sp-cue svg{fill:none;stroke:var(--neutral-600);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}@keyframes spBob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.sp-check{width:72px;height:72px;fill:none;stroke:var(--success);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.sp-check circle{stroke-dasharray:151;stroke-dashoffset:151;transition:stroke-dashoffset .8s cubic-bezier(.65,0,.35,1)}.sp-check path{stroke-dasharray:36;stroke-dashoffset:36;transition:stroke-dashoffset .45s cubic-bezier(.65,0,.35,1) .7s}.sp-end.current .sp-check circle,.sp-end.current .sp-check path{stroke-dashoffset:0}body:has(.player,.sp) .topbar{display:none}.sp-close{z-index:7}.sp~.player-lang{background:rgb(255 255 255/.85);border-color:var(--neutral-300);z-index:7}.sp~.player-lang button{color:var(--neutral-600)}.sp~.player-lang button.on{background:var(--neutral-800);color:#fff}@media (max-width:640px){.sp-dots{display:none}}@media (prefers-reduced-motion:reduce){.sp{scroll-behavior:auto}.sp-check circle,.sp-check path,.sp-inner,.sp[data-sr=on] .sr,.sp[data-sr=on] .sr-h:after{transition:none}.sp-sec:not(.current) .sp-inner,.sp[data-sr=on] .sr:not([data-sr-in]){opacity:1;transform:none}.sp-cue{animation:none}}.dialog .soon{font-style:normal;font-size:var(--text-xs);font-weight:600;color:var(--primary-dark);background:var(--primary-light);border-radius:var(--radius-full);padding:0 var(--space-2);margin-left:var(--space-2)}.dialog textarea{width:100%;border:1px solid var(--neutral-300);border-radius:var(--radius);padding:var(--space-2) var(--space-3);font:inherit;font-size:var(--text-sm);resize:vertical}.gen-wait{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm)}.spinner.dark{border-color:var(--neutral-200);border-top-color:var(--primary)}.field-row{display:flex;gap:var(--space-6);flex-wrap:wrap}.check-row{display:flex;align-items:center;gap:var(--space-2)}.check-row,.pkg-signals{font-size:var(--text-sm);color:var(--neutral-700)}.pkg-signals{background:var(--neutral-50);border:1px solid var(--neutral-200);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.pkg-signals ul{margin:var(--space-1) 0 0 var(--space-4)}.pkg-card{border-left-color:var(--primary)}.p-quiz{display:flex;flex-direction:column;gap:var(--space-6)}.p-quiz .p-kicker{font-size:var(--text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--primary)}.p-quiz-q{display:flex;flex-direction:column;gap:var(--space-4);align-items:flex-start}.p-quiz-q>.p-answers,.p-quiz-q>.p-feedback,.p-quiz-q>.p-match,.p-quiz-q>.p-order{align-self:stretch}.p-quiz-prompt{font-size:1.35rem;font-weight:600;color:var(--neutral-900);letter-spacing:-.015em}.p-quiz-count{font-size:var(--text-sm);color:var(--neutral-500)}.p-answer.picked{border-color:var(--primary);background:var(--primary-light)}.p-answer.picked:before{background:var(--primary);color:#fff}.p-feedback.wrong{border-left-color:var(--warning)}.p-quiz-solution{display:block;margin-top:var(--space-2);font-size:var(--text-sm);color:var(--neutral-600)}.p-order{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2);counter-reset:ord}.p-order li{display:flex;align-items:center;gap:var(--space-3);border:1.5px solid var(--neutral-300);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:var(--surface-base);font-weight:500;color:var(--neutral-800)}.p-order li:before{counter-increment:ord;content:counter(ord);width:26px;height:26px;flex:none;border-radius:50%;background:var(--neutral-100);color:var(--neutral-600);font-size:var(--text-sm);font-weight:600;display:inline-flex;align-items:center;justify-content:center}.p-order li>span:first-of-type{flex:1 1}.p-order-btns{display:inline-flex;gap:var(--space-1)}.p-order-btns button{width:32px;height:32px;border:1px solid var(--neutral-300);border-radius:var(--radius);background:var(--surface-base);color:var(--neutral-700)}.p-order-btns button:disabled{opacity:.3}.p-match{display:flex;flex-direction:column;gap:var(--space-2)}.p-match-row{display:grid;grid-template-columns:1fr minmax(160px,1fr);grid-gap:var(--space-3);gap:var(--space-3);align-items:center;border:1.5px solid var(--neutral-300);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:var(--surface-base);font-weight:500;color:var(--neutral-800)}.p-match-row select{padding:var(--space-2);border:1px solid var(--neutral-300);border-radius:var(--radius);font:inherit;font-weight:400;background:var(--surface-base)}@media (max-width:560px){.p-match-row{grid-template-columns:1fr}}.p-quiz-result{display:flex;flex-direction:column;gap:2px;padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);align-self:stretch}.p-quiz-result strong{font-size:1.5rem}.p-quiz-result.ok{background:var(--success-light);color:var(--success)}.p-quiz-result.no{background:var(--error-light);color:var(--error)}.p-quiz-result span,.p-quiz-review{color:var(--neutral-700)}.p-quiz-review{padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-sm)}.p-quiz-review li.ok::marker{color:var(--success)}.p-quiz-review li.no::marker{color:var(--error)}.p-quiz-review small{display:block;color:var(--neutral-500)}.quiz-settings{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center;font-size:var(--text-sm);color:var(--neutral-700);background:var(--neutral-50);border-radius:var(--radius);padding:var(--space-2) var(--space-3)}.quiz-settings input[type=number]{width:4.5em;margin:0 var(--space-1) 0 var(--space-2);border:1px solid var(--neutral-300);border-radius:var(--radius-sm);padding:2px var(--space-1)}.quiz-q-ed{display:flex;flex-direction:column;gap:var(--space-2);border-top:1px solid var(--neutral-100);padding-top:var(--space-3)}.quiz-q-ed>input[type=text]{border:1px solid var(--neutral-200);border-radius:var(--radius);padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}.quiz-q-ed>input.quiz-prompt{font-weight:600;font-size:var(--text-base)}.quiz-q-head{display:flex;align-items:center;gap:var(--space-2)}.quiz-q-head .grow{flex:1 1}.quiz-q-head select{border:1px solid var(--neutral-300);border-radius:var(--radius);padding:2px var(--space-2);font-size:var(--text-sm);background:var(--surface-base)}.quiz-x{padding:0 var(--space-2);font-size:var(--text-base);color:var(--neutral-500)}.quiz-add{align-self:flex-start;padding:2px var(--space-2)}.quiz-add,.quiz-n{font-size:var(--text-xs)}.quiz-n{width:22px;text-align:center;font-weight:600;color:var(--neutral-500)}.p-accordion{display:flex;flex-direction:column;gap:var(--space-2)}.p-accordion details{border:1.5px solid var(--neutral-200);border-radius:var(--radius-md);background:var(--surface-base)}.p-accordion summary{cursor:pointer;padding:var(--space-4);font-weight:600;color:var(--neutral-900);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.p-accordion summary::-webkit-details-marker{display:none}.p-accordion summary:after{content:"+";font-size:1.25rem;color:var(--primary);transition:transform var(--transition-fast)}.p-accordion details[open] summary:after{transform:rotate(45deg)}.p-accordion details>.p-text{padding:0 var(--space-4) var(--space-4)}.p-tablist{display:flex;gap:var(--space-1);border-bottom:1.5px solid var(--neutral-200);flex-wrap:wrap}.p-tablist button{background:transparent;padding:var(--space-2) var(--space-4);font-size:var(--text-base);font-weight:500;color:var(--neutral-500);border:none;border-bottom:2px solid transparent;margin-bottom:-1.5px}.p-tablist button.on{color:var(--neutral-900);border-bottom-color:var(--primary);font-weight:600}.p-tabpanel{padding-top:var(--space-4)}.panel-title{flex:1 1;padding:var(--space-1) var(--space-2);font-weight:600;font-size:var(--text-sm)}.panel-body,.panel-title{border:1px solid var(--neutral-200);border-radius:var(--radius)}.panel-body{width:100%;padding:var(--space-2);font:inherit;font-size:var(--text-sm);resize:vertical}.p-hotspots{display:flex;flex-direction:column;gap:var(--space-3)}.hs-stage,.p-hs-stage{position:relative;display:inline-block;max-width:100%;align-self:flex-start;line-height:0}.p-hs-stage img{max-width:100%;max-height:55vh;border-radius:var(--radius-md)}.hs-stage{cursor:crosshair}.hs-stage img{max-width:100%;border-radius:var(--radius-md);-webkit-user-select:none;-moz-user-select:none;user-select:none}.p-hs-pin{position:absolute;transform:translate(-50%,-50%);width:32px;height:32px;border-radius:50%;border:2px solid #fff;background:var(--primary);color:#fff;font-weight:700;font-size:var(--text-sm);line-height:1;box-shadow:0 2px 10px rgb(0 0 0/.35);cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast);touch-action:none}.p-hs-pin.on,.p-hs-pin:hover{transform:translate(-50%,-50%) scale(1.12)}.p-hs-pin.on{background:var(--neutral-900)}@media (prefers-reduced-motion:no-preference){.p-hs-pin:not(.on){animation:hsPulse 2.4s ease-in-out infinite}}@keyframes hsPulse{0%,to{box-shadow:0 2px 10px rgb(0 0 0/.35),0 0 0 0 rgb(194 65 12/.45)}50%{box-shadow:0 2px 10px rgb(0 0 0/.35),0 0 0 8px rgb(194 65 12/0)}}.p-hs-card{border-left:3px solid var(--primary);padding-left:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.p-hs-card p{color:var(--neutral-700)}.p-hs-hint{font-size:var(--text-sm);color:var(--neutral-500)}.hs-alt{padding:var(--space-1) var(--space-2);border:1px solid var(--neutral-300);border-radius:var(--radius);font-size:var(--text-xs)}.track-opt{cursor:pointer}.track-opt[aria-disabled=true]{opacity:.55;cursor:default}.track-row{display:flex;align-items:center;gap:var(--space-2)}.track-extra{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--neutral-700)}.track-extra input[type=number]{width:4.5em;border:1px solid var(--neutral-300);border-radius:var(--radius-sm);padding:2px var(--space-1)}select.track-extra{padding:var(--space-1) var(--space-2);border:1px solid var(--neutral-300);border-radius:var(--radius);background:var(--surface-base);max-width:100%}.captions{flex-direction:column;border-top:1px solid var(--neutral-100);padding-top:var(--space-2)}.captions,.captions-head{display:flex;gap:var(--space-2)}.captions-head{align-items:center;flex-wrap:wrap}.captions-head .grow{flex:1 1}.captions-head .btn{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.captions-label{font-size:var(--text-xs);font-weight:600;color:var(--neutral-600);text-transform:uppercase;letter-spacing:.05em}.captions-list{display:flex;flex-direction:column;gap:2px;max-height:260px;overflow-y:auto}.captions-row{display:flex;align-items:center;gap:var(--space-2)}.captions-ts{font-size:var(--text-xs);color:var(--neutral-500);width:3.2em;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.captions-row input{flex:1 1;border:1px solid var(--neutral-200);border-radius:var(--radius-sm);padding:2px var(--space-2);font-size:var(--text-xs)}.lang-list{display:flex;flex-direction:column;gap:var(--space-2)}.lang-row{display:flex;align-items:center;gap:var(--space-3);border:1px solid var(--neutral-200);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.lang-row .grow{flex:1 1}.lang-row .btn{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.lang-cov{font-size:var(--text-xs);color:var(--success)}.lang-cov.partial{color:var(--warning)}.lang-add{display:flex;gap:var(--space-2)}.lang-add select{flex:1 1;padding:var(--space-2);border:1px solid var(--neutral-300);border-radius:var(--radius);background:var(--surface-base)}.lang-banner{width:min(1080px,100%,max(560px,calc((100vh - 290px) * 16 / 9.6)));display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--primary-light);color:var(--primary-dark);font-size:var(--text-sm)}.lang-banner span{flex:1 1}.lang-banner .btn{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.tpl{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);text-align:left;padding:var(--space-4);border:1px solid var(--neutral-200);border-radius:var(--radius-md);background:var(--surface-base);color:var(--neutral-600);transition:border-color var(--transition-fast),background var(--transition-fast)}.tpl:hover{border-color:var(--primary);background:var(--primary-light)}.tpl svg{color:var(--primary)}.tpl strong{color:var(--neutral-900);font-size:var(--text-sm)}.tpl span{font-size:var(--text-xs)}.q-stats{gap:var(--space-3);margin-top:var(--space-3)}.q-stat,.q-stats{display:flex;flex-direction:column}.q-stat{gap:4px}.q-stat-head{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm)}.q-bar{height:6px;background:var(--neutral-100);overflow:hidden}.q-bar,.q-bar>div{border-radius:var(--radius-full)}.q-bar>div{height:100%}.player,.sp{font-family:var(--brand-font,inherit)}.player-logo{position:fixed;top:var(--space-4);left:var(--space-4);max-height:36px;max-width:160px;object-fit:contain;z-index:7}.sp-logo{top:var(--space-3)}.brand-colors{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.swatch{width:28px;height:28px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--neutral-300)}.swatch.on{box-shadow:0 0 0 2px var(--neutral-900)}.brand-colors input[type=color]{width:36px;height:30px;border:none;background:none;padding:0}.brand-colors code{font-size:var(--text-xs);color:var(--neutral-500)}.brand-preview{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--neutral-200);border-radius:var(--radius-md)}.brand-preview strong{flex:1 1;font-size:var(--text-sm)}.brand-btn{background:var(--primary);color:#fff;border-radius:var(--radius)}.brand-btn,.brand-pick{padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}.brand-pick{background:var(--primary-light);color:var(--primary-dark);border:1.5px solid var(--primary);border-radius:var(--radius)}.rail-chapter{display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-2);padding-bottom:var(--space-1);border-bottom:2px solid var(--primary)}.rail-chapter input{flex:1 1;min-width:0;border:none;background:transparent;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--primary-dark);padding:2px 0}.rail-chapter input::placeholder{color:var(--neutral-400)}.rail-chapter button{border:none;background:transparent;color:var(--neutral-400);font-size:var(--text-base);padding:0 var(--space-1)}.rail-chapter button:hover{color:var(--error)}.compass-view{display:inline-flex;border:1px solid var(--neutral-300);border-radius:var(--radius-full);overflow:hidden;align-self:flex-start}.compass-view button{border:none;background:transparent;padding:3px 12px;font-size:var(--text-xs);color:var(--neutral-600)}.compass-view button.on{background:var(--neutral-900);color:#fff;font-weight:600}.compass-diagram{overflow-x:auto;-webkit-overflow-scrolling:touch}.compass-diagram svg{display:block;width:100%;min-width:640px;height:auto;font-family:inherit}.cd-edge path{transition:opacity var(--transition-fast),stroke-width var(--transition-fast)}.s-view{gap:var(--space-1)}.s-stills,.s-view{display:flex;flex-direction:column}.s-stills,.s-stills-grid{gap:var(--space-3)}.s-stills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:var(--space-3)}.s-still{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-xs)}.s-still .media-placeholder{min-height:90px;font-size:var(--text-xs);text-align:center;padding:var(--space-2)}.s-still img{aspect-ratio:4/3;object-fit:cover}.stage-still{position:absolute;inset:0;overflow:hidden;transition:filter .6s ease,opacity .6s ease}.stage-still.dim{filter:blur(6px) brightness(.55)}.stage-still img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:stillIn .9s ease both,stillDrift 24s ease-in-out infinite alternate}@keyframes stillIn{0%{opacity:0}to{opacity:1}}@keyframes stillDrift{0%{transform:scale(1.02)}to{transform:scale(1.08) translate(-1%,-1%)}}@media (prefers-reduced-motion:reduce){.stage-still img{animation:stillIn .3s ease both}}.s-voice{display:flex;flex-direction:column;gap:4px;font-size:var(--text-xs);color:var(--neutral-600)}.s-voice input{border:1px solid var(--neutral-300);border-radius:var(--radius);padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}.sc{max-width:1040px;margin:0 auto;padding:0 16px var(--space-20);color:var(--neutral-900)}.sc-nav{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5) 0}.sc-brand{font-weight:700;letter-spacing:-.01em}.sc-lang{display:flex;gap:var(--space-1)}.sc-lang a{padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--neutral-500);text-decoration:none}.sc-lang a.on{background:var(--neutral-900);color:#fff}.sc-hero{padding:clamp(3rem,10vh,7rem) 0 var(--space-16);max-width:760px;animation:sc-rise .7s ease-out both}.sc-kicker{font-size:var(--text-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.sc-hero h1{font-size:clamp(2.4rem,6vw,4.2rem);line-height:1.02;letter-spacing:-.03em;margin:var(--space-3) 0 var(--space-5)}.sc-lead{font-size:clamp(1.1rem,2.2vw,1.4rem);line-height:1.5;color:var(--neutral-700);margin:0 0 var(--space-8)}.sc-cta{display:inline-block;background:linear-gradient(135deg,var(--primary),var(--primary-accent));color:#fff;font-weight:600;padding:var(--space-3) var(--space-6);border-radius:999px;text-decoration:none;box-shadow:var(--shadow-md);transition:transform .15s}.sc-cta:hover{transform:translateY(-1px)}.sc-fine,.sc-note{font-size:var(--text-sm);color:var(--neutral-500);margin-top:var(--space-3)}.sc-sec{padding:var(--space-16) 0;border-top:1px solid var(--neutral-200);animation:sc-rise .7s ease-out both}@supports (animation-timeline:view()){.sc-sec{animation-timeline:view();animation-range:entry 0 entry 40%}}.sc-sec h2{font-size:var(--text-3xl);letter-spacing:-.02em;margin:0 0 var(--space-4)}.sc-sec p{font-size:var(--text-lg);line-height:1.65;color:var(--neutral-700);max-width:680px}.sc-sub{margin-top:calc(-1 * var(--space-2))}.sc-split{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:var(--space-12);gap:var(--space-12);align-items:center}.sc-quote{margin:0;padding:var(--space-8);background:var(--neutral-900);color:#fff;border-radius:var(--radius-lg);font-size:var(--text-xl);line-height:1.45;font-style:italic}.sc-quote span{display:block;margin-top:var(--space-4);font-size:var(--text-sm);font-style:normal;color:var(--neutral-400)}.sc-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--space-5);gap:var(--space-5)}.sc-card{padding:var(--space-6);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);background:var(--surface-base)}.sc-card h3{margin:0 0 var(--space-2);font-size:var(--text-lg)}.sc-card p{font-size:var(--text-base);margin:0}.sc-steps{list-style:none;padding:0;margin:var(--space-8) 0 0;display:flex;flex-direction:column;gap:var(--space-6)}.sc-steps li{display:flex;gap:var(--space-5);align-items:flex-start}.sc-step-l{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:700;background:var(--primary-light);color:var(--primary-dark)}.sc-steps h3{margin:0 0 var(--space-1);font-size:var(--text-lg)}.sc-steps p{margin:0;font-size:var(--text-base)}.sc-measure{background:var(--neutral-100);border-top:0;margin:0 -16px;padding-left:16px;padding-right:16px;border-radius:var(--radius-lg)}.sc-end{text-align:center}.sc-end p{margin:0 auto var(--space-6)}@keyframes sc-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.sc-hero,.sc-sec{animation:none}}@media (max-width:760px){.sc-cards,.sc-split{grid-template-columns:1fr}.sc-split{gap:var(--space-6)}}body:has(.sc) .topbar{display:none}.sc-nav{justify-content:flex-end}body:has(.login-page) .topbar{display:none}.login-page{min-height:100dvh;display:grid;place-items:center;padding:var(--space-6) var(--space-4);background:radial-gradient(1200px 600px at 20% -10%,var(--primary-light),transparent 60%),var(--neutral-50)}.login-card{width:min(420px,100%);background:var(--surface-base);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-5)}.login-head{display:flex;justify-content:space-between;align-items:center}.login-head .brand-mark{width:32px;height:32px}.login-card h1{font-size:var(--text-2xl);letter-spacing:-.025em;line-height:1.2}.login-form{display:flex;flex-direction:column;gap:var(--space-4)}.login-lead,.login-sent p{color:var(--neutral-600);font-size:var(--text-sm);line-height:1.55}.login-fine{color:var(--neutral-500);font-size:var(--text-xs)}.login-error{background:var(--error-light);color:var(--error);border-radius:var(--radius);padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.login-sent{display:flex;flex-direction:column;gap:var(--space-3);align-items:flex-start}.login-submit{justify-content:center;padding-block:var(--space-3)}.field input[type=email],.field input[type=password],.field input[type=url],.field select{padding:var(--space-2) var(--space-3);border:1px solid var(--neutral-300);border-radius:var(--radius);font-size:var(--text-base);background:var(--surface-base)}.account{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--neutral-600)}.account select{border:1px solid var(--neutral-300);border-radius:var(--radius);padding:var(--space-1) var(--space-2);font-size:var(--text-sm);background:var(--surface-base);max-width:220px}.account-who{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings{display:flex;flex-direction:column;gap:var(--space-6)}.settings .section-card{gap:var(--space-4)}.settings h2{font-size:var(--text-lg);letter-spacing:-.01em}.settings .sub{color:var(--neutral-500);font-size:var(--text-sm);line-height:1.5;max-width:70ch}.settings .row{display:flex;gap:var(--space-3);align-items:flex-end;flex-wrap:wrap}.settings .row .field{flex:1 1 220px}.member-list{display:flex;flex-direction:column;border:1px solid var(--neutral-200);border-radius:var(--radius-md);overflow:hidden}.member-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);font-size:var(--text-sm)}.member-row+.member-row{border-top:1px solid var(--neutral-100)}.member-row .who{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis}.member-row .who small{display:block;color:var(--neutral-500)}.member-row select{border:1px solid var(--neutral-300);padding:var(--space-1) var(--space-2)}.member-row select,.settings .note{border-radius:var(--radius);font-size:var(--text-sm)}.settings .note{padding:var(--space-2) var(--space-3);background:var(--neutral-100);color:var(--neutral-700)}.settings .note.ok{background:var(--success-light);color:var(--success)}.settings .note.err{background:var(--error-light);color:var(--error)}.settings code{font-size:var(--text-xs);background:var(--neutral-100);padding:2px 6px;border-radius:var(--radius-sm);word-break:break-all}.account a{text-decoration:none}@media (max-width:720px){.account-who,.account>span{display:none}.account{gap:var(--space-2)}}.review{max-width:1280px}.rv-kicker{font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--primary)}.rv-tools{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;justify-content:flex-end}.rv-tools select{border:1px solid var(--neutral-300);border-radius:var(--radius);padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}.rv-row{display:grid;grid-template-columns:minmax(0,1fr) 360px;grid-gap:var(--space-6);gap:var(--space-6);padding:var(--space-6) 0;border-top:1px solid var(--neutral-200)}.rv-general h2{font-size:var(--text-lg)}.rv-num{font-size:var(--text-xs);color:var(--neutral-500);margin-bottom:var(--space-2);font-weight:600}.rv-screen{width:100%;aspect-ratio:auto;min-height:280px;box-shadow:var(--shadow-sm);border:1px solid var(--neutral-200)}.rv-side{gap:var(--space-3)}.rv-side,.rv-thread{display:flex;flex-direction:column}.rv-thread{background:var(--surface-base);border:1px solid var(--neutral-200);border-left:3px solid var(--primary);border-radius:var(--radius-md);padding:var(--space-3);gap:var(--space-2);box-shadow:var(--shadow-sm)}.rv-thread.resolved{border-left-color:var(--success);opacity:.75}.rv-comment p{font-size:var(--text-sm);color:var(--neutral-800);line-height:1.5;white-space:pre-wrap}.rv-comment.reply{margin-left:var(--space-3);padding-left:var(--space-3);border-left:2px solid var(--neutral-200)}.rv-meta{display:flex;gap:var(--space-2);align-items:baseline;font-size:var(--text-xs);color:var(--neutral-500)}.rv-meta strong{color:var(--neutral-800);font-size:var(--text-sm)}.rv-actions{display:flex;gap:var(--space-2);align-items:flex-start;flex-wrap:wrap}.rv-actions .rv-composer{flex:1 1 160px}.rv-link{background:none;border:none;color:var(--neutral-500);font-size:var(--text-xs);text-decoration:underline;padding:0;margin-left:auto}.rv-composer{display:flex;flex-direction:column;gap:var(--space-2)}.rv-composer textarea{border:1px solid var(--neutral-300);border-radius:var(--radius);padding:var(--space-2) var(--space-3);font:inherit;font-size:var(--text-sm);resize:vertical;background:var(--surface-base)}.rv-composer button{align-self:flex-end}@media (max-width:900px){.rv-row{grid-template-columns:1fr}}.dns-row{align-items:flex-start}.dns-row .who small{margin-top:2px}.rv-tools a{text-decoration:none}.settings .check-row span{flex:1 1}.usage-row .who{display:flex;flex-direction:column;gap:4px}.usage-bar{display:block;height:6px;border-radius:3px;background:var(--neutral-100);overflow:hidden;max-width:420px}.usage-bar>span{display:block;height:100%;background:var(--success)}.usage-bar>span[data-level=warn]{background:var(--warning)}.usage-bar>span[data-level=full]{background:var(--error)}.usage-cap{width:120px;padding:var(--space-1) var(--space-2);border:1px solid var(--neutral-300)}.publish-notes,.usage-cap{border-radius:var(--radius);font-size:var(--text-sm)}.publish-notes{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--warning-light);color:var(--neutral-800)}.publish-notes ul{margin:var(--space-2) 0 0;padding-left:1.2rem;line-height:1.6}.key-fresh{margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--warning);background:var(--warning-light);border-radius:var(--radius);display:flex;flex-direction:column;gap:var(--space-2)}.key-fresh pre{white-space:pre-wrap;word-break:break-all;font-size:var(--text-xs);background:var(--surface-base);padding:var(--space-2);border-radius:var(--radius-sm);margin:0}.img-gen textarea{width:100%;font:inherit;padding:8px 10px;border:1px solid var(--neutral-300);border-radius:var(--radius-sm,6px);resize:vertical}.img-gen-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:10px;gap:10px;max-height:50vh;overflow:auto}.img-gen-pick{padding:0;aspect-ratio:16/9;border:2px solid transparent;border-radius:8px;background:var(--neutral-100);cursor:pointer;overflow:hidden}.img-gen-pick:focus-visible,.img-gen-pick:hover{border-color:var(--brand,var(--accent,#c2410c))}.img-gen-pick img{display:block;width:100%;height:100%;object-fit:cover}.design-dialog{width:min(900px,95vw)}.design-cols{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}@media (min-width:820px){.design-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.theme-preview{position:-webkit-sticky;position:sticky;top:0}}.design-controls{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));grid-gap:var(--space-2);gap:var(--space-2)}.theme-card{display:flex;flex-direction:column;gap:var(--space-1);align-items:stretch;padding:var(--space-1);border:2px solid transparent;border-radius:var(--radius-md);background:none;font-size:var(--text-xs);color:var(--neutral-700);text-align:left}.theme-card.on{border-color:var(--neutral-900)}.theme-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.theme-mini{display:grid;place-items:center;aspect-ratio:4/3;border-radius:8px;background:#1c1917;padding:9px}.theme-mini .tm-card{position:relative;isolation:isolate;width:100%;height:100%;background:#fff;border-radius:4px;display:flex;flex-direction:column;justify-content:center;gap:4px;padding:0 10%;overflow:hidden}.theme-mini.th-root .tm-card{border-radius:calc(var(--th-radius) / 3);border-left-width:calc(var(--th-bar) / 3)}.tm-line{display:block;height:4px;width:70%;border-radius:2px;background:var(--th-ink,#1c1917);opacity:.8}.tm-line.short{width:45%;opacity:.35}.theme-preview{padding:var(--space-4);background:#1c1917;min-width:0}.theme-preview,.theme-preview .tp-card{display:flex;flex-direction:column;gap:var(--space-3);border-radius:var(--radius-lg)}.theme-preview .tp-card{background:#fff;padding:var(--space-6);position:relative;isolation:isolate;overflow:hidden}.theme-preview .p-heading{font-size:calc(1.35rem * var(--th-scale, 1));font-weight:600;letter-spacing:-.02em;color:var(--neutral-900);margin:0}.theme-preview .p-text{line-height:1.6;color:var(--neutral-700);margin:0}.theme-preview .callout .p-text,.theme-preview .p-text{font-size:var(--text-sm)}.theme-preview .brand-btn{align-self:flex-start}.theme-preview .tp-cover{min-height:150px;justify-content:center}.theme-preview .th-cover .cv-num{font-size:2.75rem}.theme-preview .th-cover .cv-kicker{margin:.5rem 0 .25rem;font-size:.65rem}.theme-preview .th-cover .p-heading{font-size:calc(1.6rem * var(--th-scale, 1))}.look-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;opacity:0;transition:opacity var(--transition-fast)}.block:focus-within .look-row,.block:hover .look-row,.look-row.set{opacity:1}@media (hover:none){.look-row{opacity:1}}.look-chips .chip{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);padding:2px 8px}.ip-ic{display:inline-grid;color:var(--primary)}.ip-ic svg{width:14px;height:14px}.icon-picker{position:relative;display:inline-flex}.icon-pick-btn{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);padding:2px 8px}.icon-grid{position:absolute;z-index:30;top:calc(100% + 4px);left:0;display:grid;grid-template-columns:repeat(6,32px);grid-gap:4px;gap:4px;padding:var(--space-2);background:var(--surface-base);border:1px solid var(--neutral-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.icon-grid button{width:32px;height:32px;display:grid;place-items:center;border:1px solid transparent;border-radius:var(--radius);background:none;color:var(--neutral-700)}.icon-grid button.on,.icon-grid button:hover{border-color:var(--primary);color:var(--primary)}.icon-grid svg{width:18px;height:18px}.rail-chapter .rail-cover{display:grid;place-items:center;color:var(--neutral-400)}.rail-chapter .rail-cover.set{color:var(--primary)}.rail-chapter .rail-cover:hover{color:var(--primary-dark)}.import-design{border:1px dashed var(--neutral-300);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.import-design summary{cursor:pointer;font-weight:600;font-size:var(--text-sm);color:var(--neutral-800)}.import-design[open] summary{margin-bottom:var(--space-3)}.import-row{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}.import-row input[type=url]{flex:1 1 12rem;min-width:0}.import-file{cursor:pointer}.import-result{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.import-result .hint{font-size:var(--text-xs)}.suggest-pick{text-align:left;font:inherit;font-size:var(--text-sm);padding:8px 12px;border:1px solid var(--neutral-300);border-radius:var(--radius);background:var(--surface,#fff);cursor:pointer;max-width:100%}.suggest-pick:focus-visible,.suggest-pick:hover{border-color:var(--primary,#c2410c)}@media (max-width:640px){.player{place-items:start center;padding:3.5rem 0 5.5rem}.player-screen{width:94vw;aspect-ratio:auto;height:100%;max-height:calc(100dvh - 9rem);padding:var(--space-6) var(--space-5);justify-content:flex-start;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.player .player-lang{bottom:auto;top:var(--space-4);left:var(--space-4)}.player-nav .count{white-space:nowrap}.editor{height:100dvh;width:100%}.rb-head{gap:var(--space-2);padding:6px var(--space-3)}.rb-head .grow,.rb-phase{display:none}.rb-title{flex:1 1;gap:var(--space-2)}.rb-title strong{max-width:none}.rb-cta{padding:4px var(--space-2)}.rb-cta-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.rb-tabs{overflow-x:auto;scrollbar-width:none;padding:0 var(--space-2)}.rb-tabs button{white-space:nowrap;padding:6px var(--space-2)}.rb-body{min-height:0;align-items:center;padding:4px var(--space-1);scrollbar-width:none}.rb-group{padding:0 var(--space-1)}.rb-glabel{display:none}.rb-tools{align-items:center}.rb-tool{flex-direction:row;gap:6px;min-width:0;padding:4px var(--space-2)}.rb-tool svg{width:16px;height:16px}.rb-select{flex-direction:row;gap:6px;padding:2px var(--space-1)}.rb-select>span{display:none}.rb-seg,.rb-select select{margin-top:0}.screen-rail{align-items:center;padding:6px var(--space-3);scrollbar-width:none}.screen-rail .screen-thumb{flex-direction:row;align-items:center;width:auto;max-width:9.5rem;gap:6px;padding:4px 10px;border:1px solid var(--neutral-200);border-radius:var(--radius-full)}.screen-rail .screen-thumb.active{border-color:var(--primary);background:var(--primary-light)}.screen-rail .thumb-card{display:contents}.screen-rail .mini{display:none}.screen-rail .thumb-gate{position:static;flex:none}.screen-rail .thumb-meta{padding:0;min-width:0}.screen-rail .rail-add{align-self:auto;padding:4px 10px;border-radius:var(--radius-full);font-size:var(--text-xs)}.canvas-wrap{padding:var(--space-3) var(--space-3) var(--space-8);gap:var(--space-3)}.canvas{width:100%;min-width:0;aspect-ratio:auto;flex:none;overflow:visible;padding:var(--space-5) var(--space-4)}.canvas .block-heading .block-input{font-size:var(--text-xl)}.step-tag{left:calc(-1 * var(--space-3))}}@media (max-width:640px){.block:focus-within .block-tools{opacity:1}.chip-row,.media-row{flex-wrap:wrap}.media-row input[type=text]{min-width:10rem}.gb-head,.timeline{flex-wrap:wrap}.gb-summary{white-space:normal}.dialog{width:calc(100vw - 1.5rem)!important;max-height:calc(100dvh - 1.5rem)!important;padding:var(--space-5)}}.media-attach{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px dashed var(--neutral-300);border-radius:var(--radius)}.media-attach.empty{flex-direction:row;align-items:center;gap:4px;border:none;padding:0}.media-attach-head{display:flex;justify-content:space-between;align-items:center}.p-qmedia{margin:0}.p-qmedia img,.p-qmedia video{width:100%;max-height:52vh;object-fit:contain;border-radius:10px}.embed-frame,.p-embed{width:100%;border:0;border-radius:10px;background:#fff;display:block}.embed-ed .embed-frame,.html-code{border:1px solid var(--neutral-300)}.html-code{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;padding:8px;border-radius:var(--radius);resize:vertical}.testout{gap:1rem}.testout,.testout-unit{display:flex;flex-direction:column}.testout-unit{gap:.75rem}.testout-chapter{font-size:1rem;text-transform:uppercase;letter-spacing:.06em;color:var(--th-accent-ink,var(--primary,#c2410c));margin:.5rem 0 0}.testout-q{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.testout-a{display:flex;gap:.6rem;align-items:center;cursor:pointer}.testout-result{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.testout-result li.ok{font-weight:600}.compass-share{display:grid;grid-template-columns:160px 1fr;grid-gap:16px;gap:16px;align-items:start}.compass-qr svg{width:160px;height:160px;display:block}.compass-share-body{display:flex;flex-direction:column;gap:8px;min-width:0}.compass-share-body code{word-break:break-all;font-size:12px}@media (max-width:520px){.compass-share{grid-template-columns:1fr}}.sh-qr{display:flex;align-items:center;gap:10px;margin-top:8mm;font-size:10pt}.sh-qr svg{width:28mm;height:28mm;display:block}.vscript{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--neutral-300);border-radius:var(--radius);background:var(--surface,#fff);max-width:100%}.vscript-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.vscript-lines{margin:0;padding-left:1.3rem;gap:6px;font-size:var(--text-sm)}.vscript-lines,.vscript-lines li{display:flex;flex-direction:column}.vscript-lines li{gap:2px}.vs-visual{color:var(--neutral-600);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em}.vscript-box summary{cursor:pointer;font-size:var(--text-sm);font-weight:600}.goals-ed{gap:10px}.goal-row,.goals-ed{display:flex;flex-direction:column}.goal-row{gap:6px;padding:10px;border:1px solid var(--neutral-300);border-radius:var(--radius)}.goal-top{display:flex;gap:8px;align-items:flex-start}.goal-top textarea{flex:1 1;font:inherit;padding:6px 8px;border:1px solid var(--neutral-300);border-radius:var(--radius-sm,4px);resize:vertical}.goal-frictions{flex-wrap:wrap;align-items:center}.goal-ch{font-size:var(--text-xs);padding:4px 8px;border-left:3px solid var(--warning,#b45309);background:#fffbeb}.goal-ch.tip{border-left-color:var(--neutral-400,#a8a29e);background:var(--neutral-50,#fafaf9)}.goal-rewrite{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.goal-matrix-wrap{overflow-x:auto}.goal-matrix{border-collapse:collapse;font-size:var(--text-sm);width:100%}.goal-matrix td,.goal-matrix th{border:1px solid var(--neutral-200,#e7e5e4);padding:4px 6px;text-align:center}.goal-matrix td:first-child,.goal-matrix th:first-child{text-align:left;min-width:220px}.goal-matrix tr.miss td:first-child{color:var(--error,#b91c1c)}.goal-matrix tr.weak td:first-child{color:var(--neutral-500)}.goal-tags{position:relative;display:inline-flex}.goal-tags>button{font-size:.75rem;color:var(--neutral-600);background:transparent;border:none;cursor:pointer}.goal-tags>button.on{color:var(--primary,#c2410c);font-weight:600}.goal-pop{position:absolute;right:0;top:100%;z-index:30;width:min(360px,80vw);background:#fff;border:1px solid var(--neutral-300);border-radius:var(--radius);box-shadow:0 10px 30px -10px rgb(0 0 0/.25);padding:8px;display:flex;flex-direction:column;gap:6px;font-size:var(--text-sm)}.p-hs-task{font-weight:600;font-size:var(--text-lg)}.p-hs-area,.p-hs-find .p-hs-stage{cursor:crosshair}.p-hs-area{position:absolute;transform:translate(-50%,-50%);aspect-ratio:1;border-radius:50%;border:0;background:transparent;padding:0}.p-hs-area:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.p-hs-area.ok{border:3px solid var(--success);background:rgb(22 163 74/.14);box-shadow:0 0 0 2px #fff}.p-hs-area.no{border:3px solid var(--error);background:rgb(220 38 38/.12);box-shadow:0 0 0 2px #fff}.p-hs-miss{position:absolute;transform:translate(-50%,-50%);color:var(--error);font-weight:700;font-size:22px;line-height:1;text-shadow:0 0 3px #fff,0 0 3px #fff;pointer-events:none}.p-hs-done{font-weight:600;color:var(--success)}.hs-area-ed{position:absolute;transform:translate(-50%,-50%);aspect-ratio:1;border-radius:50%;border:2px dashed var(--success);background:rgb(22 163 74/.12);pointer-events:none}.hs-area-ed.no{border-color:var(--error);background:rgb(220 38 38/.1)}.p-sort{display:flex;flex-direction:column;gap:var(--space-3);align-self:stretch}.p-sort-pile{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3);border:1.5px dashed var(--neutral-300);border-radius:var(--radius-md);min-height:56px}.p-sort-boxes{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}@media (max-width:560px){.p-sort-boxes{grid-template-columns:1fr!important}}.p-sort-box{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1.5px solid var(--neutral-300);border-radius:var(--radius-md);min-height:110px;background:var(--surface-base)}.p-sort-box>strong{font-size:var(--text-sm)}.p-sort-box.over,.p-sort-pile.over{border-color:var(--primary);background:var(--primary-light,#fff7ed)}.p-sort-card{text-align:left;font:inherit;padding:var(--space-2) var(--space-3);border:1.5px solid var(--neutral-300);border-radius:var(--radius);background:#fff;cursor:-webkit-grab;cursor:grab;box-shadow:0 1px 2px rgb(0 0 0/.06)}.p-sort-card.held{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary)}.p-sort-card.right{border-color:var(--success);background:var(--success-light)}.p-sort-card.wrong{border-color:var(--error);background:var(--error-light)}.p-sort-card:disabled{cursor:default;color:inherit}.p-sort-drop{font:inherit;font-size:var(--text-sm);padding:var(--space-2);border:1.5px dashed var(--primary);border-radius:var(--radius);background:transparent;color:var(--primary);cursor:pointer}.p-quiz-q>.p-sort{align-self:stretch}.research-dialog{width:min(980px,96vw);max-height:92vh;overflow-y:auto;gap:var(--space-3)}.md-body,.research-dialog{display:flex;flex-direction:column}.md-body{font-size:var(--text-sm);line-height:1.6;color:var(--neutral-800);gap:var(--space-2);min-width:0}.md-body h2,.md-body h3,.md-body h4{margin-top:var(--space-3);line-height:1.3}.md-body h2{font-size:var(--text-lg)}.md-body h3{font-size:var(--text-base)}.md-body h4{font-size:var(--text-sm)}.md-body ol,.md-body ul{padding-left:1.3rem;display:flex;flex-direction:column;gap:2px}.md-body blockquote{border-left:3px solid var(--neutral-300);padding-left:var(--space-3);color:var(--neutral-600)}.md-body code{font-size:.9em;padding:0 .3em;border-radius:3px}.md-body code,.md-body pre{background:var(--neutral-100)}.md-body pre{padding:var(--space-3);border-radius:var(--radius);overflow-x:auto}.md-body a{color:var(--primary);overflow-wrap:anywhere}.md-body hr{border:0;border-top:1px solid var(--neutral-200)}.md-table{overflow-x:auto}.md-table table{border-collapse:collapse;font-size:var(--text-xs);min-width:100%}.md-table td,.md-table th{border:1px solid var(--neutral-200);padding:4px 8px;text-align:left;vertical-align:top}.md-table th{background:var(--neutral-50,#fafaf9)}.guide-talk{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-gap:var(--space-4);gap:var(--space-4);margin-top:var(--space-3)}@media (max-width:760px){.guide-talk{grid-template-columns:minmax(0,1fr)}}.gt-chat{min-width:0}.gt-chat,.gt-log{display:flex;flex-direction:column;gap:var(--space-2)}.gt-log{max-height:46vh;min-height:220px;overflow-y:auto;padding:var(--space-2);background:var(--neutral-50,#fafaf9);border:1px solid var(--neutral-200);border-radius:var(--radius-md)}.gt-msg{max-width:88%;padding:var(--space-2) var(--space-3);border-radius:12px;line-height:1.5;white-space:pre-wrap;font-size:var(--text-sm)}.gt-msg.them{align-self:flex-start;background:var(--surface-base,#fff);border:1px solid var(--neutral-200)}.gt-msg.me{align-self:flex-end;background:var(--primary);color:#fff}.gt-busy{color:var(--neutral-500);font-style:italic}.gt-compose{display:flex;flex-direction:column;gap:var(--space-2)}.gt-compose textarea{width:100%;font:inherit;padding:var(--space-2) var(--space-3);border:1px solid var(--neutral-300);border-radius:var(--radius);resize:vertical}.gt-actions{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.gt-chat{position:relative}.gt-chat.dragging .gt-log{border-color:var(--primary)}.gt-drop{position:absolute;inset:0;z-index:2;display:grid;place-items:center;border:2px dashed var(--primary);border-radius:var(--radius-md);background:rgb(255 255 255/.9);color:var(--primary);font-weight:600;pointer-events:none}.gt-mic{position:relative;flex:none;width:48px;height:48px;border-radius:var(--radius-full);border:1px solid var(--neutral-300);background:#fff;color:var(--neutral-900);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgb(0 0 0/.12);transition:transform var(--transition-fast),background var(--transition),color var(--transition)}.gt-mic:hover:not(:disabled){transform:scale(1.05)}.gt-mic:disabled{opacity:.5;cursor:default}.gt-mic:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.gt-mic.on{background:var(--primary);border-color:var(--primary);color:#fff}.gt-mic.on:after{content:"";position:absolute;inset:-6px;border-radius:var(--radius-full);border:2px solid var(--primary);animation:ring 1.4s ease-out infinite}@media (prefers-reduced-motion:reduce){.gt-mic.on:after{animation:none}}.gt-hint{font-size:var(--text-xs)}.gt-pick{color:var(--primary);text-decoration:underline;cursor:pointer}.gt-docs .chip button{border:0;background:none;cursor:pointer;margin-left:4px;color:inherit}.gt-draft{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--neutral-200);border-radius:var(--radius-md);font-size:var(--text-sm);min-width:0}.gt-draft h3{font-size:var(--text-base);margin:0}.gt-draft p,.gt-draft ul{margin:0}.gt-draft ul{padding-left:1.1rem;display:flex;flex-direction:column;gap:4px}.gt-k{display:block;text-transform:uppercase;letter-spacing:.06em;color:var(--neutral-500)}.gt-k,.gt-layer{font-size:var(--text-xs);font-weight:600}.gt-layer{color:var(--primary)}.gt-hyp{margin-left:6px;font-size:var(--text-xs);padding:0 6px;border-radius:999px;background:#fef3c7;color:#92400e}.gt-checks{list-style:none;padding:0!important}.gt-checks li{border-left:3px solid var(--neutral-300);padding-left:var(--space-2)}.gt-checks li.warning{border-left-color:var(--warning,#d97706)}.gt-next{display:flex;flex-direction:column;gap:var(--space-2);margin-top:auto;padding-top:var(--space-2);border-top:1px solid var(--neutral-200)}