.marker-callout-wrap{pointer-events:none}.marker-callout{pointer-events:auto;width:244px;padding:15px 17px;background:linear-gradient(180deg,#1a1a22f7,#0c0c10f7);border:1px solid rgba(108,214,255,.4);border-radius:12px;box-shadow:0 18px 46px #0000008c,0 0 42px #6cd6ff24;color:#f0f0f5;font-family:var(--tutorial-label, system-ui, -apple-system, sans-serif);animation:marker-callout-in .26s ease-out both}.marker-callout__text{margin:0 0 13px;font-size:14px;line-height:1.55;color:#f0f0f5eb;animation:marker-callout-text-in .22s ease-out both}.marker-callout__nav{display:flex;gap:8px}.marker-callout__btn{flex:0 0 auto;padding:0 10px;border-radius:5px;font-size:12px;font-weight:600;cursor:pointer;border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:#f0f0f5bf;transition:border-color .16s ease,background .16s ease,color .16s ease;min-height:34px}.marker-callout__btn--continue{flex:1 1 auto;border:1px solid var(--tutorial-cyan, #6cd6ff);color:#061014;background:var(--tutorial-cyan, #6cd6ff);box-shadow:0 0 18px #6cd6ff4d}@media(hover:hover)and (pointer:fine){.marker-callout__btn:hover{color:#fffffff0;border-color:#fff3;background:#ffffff14}.marker-callout__btn--continue:hover{background:#9be4ff;border-color:#9be4ff;color:#02161c;box-shadow:0 0 #6cd6ff8c,0 0 22px #6cd6ff8c}}.marker-callout__btn:active{transform:scale(.97)}@keyframes marker-callout-in{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}@keyframes marker-callout-text-in{0%{opacity:0;filter:blur(3px)}to{opacity:1;filter:blur(0)}}@media(prefers-reduced-motion:reduce){.marker-callout{animation:none}.marker-callout__text{animation:marker-callout-text-fade .16s ease-out both}.marker-callout__btn:active{transform:none}}@keyframes marker-callout-text-fade{0%{opacity:0}to{opacity:1}}.scene-target-chip{--chip-tone: #00d4ff;pointer-events:none;position:relative;display:inline-grid;place-items:center;padding:3px 9px;border:1.5px solid var(--chip-tone);border-radius:6px;background:#030a0edb;color:var(--chip-tone);font-family:var(--tutorial-mono, ui-monospace, monospace);font-size:11px;font-weight:700;letter-spacing:.06em;white-space:nowrap;transform:translateY(calc(-100% - 14px));box-shadow:0 0 10px color-mix(in srgb,var(--chip-tone) 35%,transparent);transition:color .18s ease,border-color .18s ease,box-shadow .18s ease}.scene-target-chip:after{content:"";position:absolute;left:50%;top:100%;width:1.5px;height:14px;background:var(--chip-tone);transform:translate(-50%)}.scene-target-chip--arrived{animation:scene-target-chip-arrive .22s cubic-bezier(.22,1,.36,1)}@keyframes scene-target-chip-arrive{0%{transform:translateY(calc(-100% - 14px)) scale(.94)}to{transform:translateY(calc(-100% - 14px)) scale(1)}}@media(prefers-reduced-motion:reduce){.scene-target-chip--arrived{animation:none}}.tutorial-concept-stage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none;opacity:0;transition:opacity var(--concept-fade-ms, .5s) cubic-bezier(.22,1,.36,1)}.tutorial-concept-stage.is-visible{opacity:1}.tutorial-concept-stage canvas{pointer-events:none}@media(prefers-reduced-motion:reduce){.tutorial-concept-stage{transition-duration:1ms}}.tutorial-session-monitor{position:absolute;top:132px;right:max(24px,calc(50% - 500px));width:232px;z-index:100;pointer-events:none;background:#080a0fd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px #0000004d,0 10px 40px -10px #00000080,0 0 20px -5px #00c8f01a;font-family:var(--tutorial-body, "Inter", -apple-system, BlinkMacSystemFont, sans-serif);animation:tutorial-session-monitor-enter .36s cubic-bezier(.22,1,.36,1) both}@keyframes tutorial-session-monitor-enter{0%{opacity:0;transform:translateY(-10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.tutorial-session-monitor__header{padding:9px 12px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#ffffffb8;border-bottom:1px solid rgba(255,255,255,.07)}.tutorial-session-monitor__protocol{display:flex;flex-direction:column;gap:2px;padding:10px 12px 8px}.tutorial-session-monitor__target{font-size:13px;font-weight:600;color:#fffffff0}.tutorial-session-monitor__dose{font-size:11px;color:#7ed9f0eb}.tutorial-session-monitor__readout{margin:0;padding:4px 12px 12px;display:flex;flex-direction:column;gap:7px}.tutorial-session-monitor__row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px}.tutorial-session-monitor__row dt{color:#ffffff9e;letter-spacing:.03em}.tutorial-session-monitor__row dd{margin:0;font-variant-numeric:tabular-nums;font-weight:600;color:#fffffff0}.tutorial-session-monitor__iti{display:flex;align-items:center;gap:7px}.tutorial-session-monitor__bar{display:block;width:74px;height:4px;border-radius:999px;background:#ffffff1f;overflow:hidden}.tutorial-session-monitor__bar-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#00c8f0a6,#7ed9f0f2);transition:width .24s linear}.tutorial-session-monitor__seconds{min-width:26px;text-align:right}@media(prefers-reduced-motion:reduce){.tutorial-session-monitor{animation-duration:1ms}.tutorial-session-monitor__bar-fill{transition:none}}@media(max-width:640px){.tutorial-session-monitor{top:64px;right:14px;width:176px}.tutorial-session-monitor__bar{width:48px}}.dial{position:relative;display:inline-flex;align-items:center;justify-content:center;color:#00c8f0;cursor:ns-resize;-webkit-user-select:none;user-select:none;touch-action:none;outline:none;border-radius:50%;transition:filter .15s ease-out}.dial:focus-visible{box-shadow:0 0 0 2px #00c8f099}.dial--dragging{filter:drop-shadow(0 0 6px rgba(0,200,240,.5))}.dial--disabled{opacity:.4;cursor:not-allowed}.dial__fill{transition:stroke-dashoffset .12s ease-out}.dial__text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:baseline;gap:1px;font-family:var(--tutorial-mono, "SF Mono", "JetBrains Mono", monospace);pointer-events:none;white-space:nowrap}.dial__value{font-size:11px;font-weight:600;color:#fffffff5;line-height:1}.dial__unit{font-size:11px;font-weight:600;color:#ffffff73;letter-spacing:.04em}.machine-panel{--bg-base: #08090c;--bg-elevated: rgba(18, 20, 28, .85);--bg-card: rgba(22, 25, 35, .7);--bg-card-hover: rgba(30, 34, 48, .8);--bg-input: rgba(8, 10, 15, .9);--glass-border: rgba(255, 255, 255, .08);--glass-shine: rgba(255, 255, 255, .03);--accent: #00e5ff;--accent-dim: #00b8cc;--accent-glow: rgba(0, 229, 255, .12);--accent-glow-strong: rgba(0, 229, 255, .25);--success: #00f5a0;--success-glow: rgba(0, 245, 160, .15);--warning: #ffb800;--warning-glow: rgba(255, 184, 0, .15);--danger: #ff3b5c;--danger-glow: rgba(255, 59, 92, .15);--text-bright: #ffffff;--text-primary: rgba(255, 255, 255, .92);--text-secondary: rgba(255, 255, 255, .6);--text-muted: rgba(255, 255, 255, .35);--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px}.machine-panel{--header-height: 36px;position:relative;width:100%;height:100%;overflow:hidden;background:var(--bg-base);border-radius:var(--radius-xl);border:1px solid var(--glass-border);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;color:var(--text-primary);box-shadow:0 0 0 1px #00000080,0 20px 50px -15px #00000080,inset 0 1px 0 var(--glass-shine)}.machine-panel.session-active{border-color:#00e5ff4d;box-shadow:0 0 0 1px #00e5ff33,0 0 60px -10px #00e5ff33,0 20px 50px -15px #00000080,inset 0 1px 0 var(--glass-shine)}.panel-header{position:absolute;top:0;left:0;right:0;height:var(--header-height);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-lg);background:linear-gradient(180deg,rgba(255,255,255,.03) 0%,transparent 100%);border-bottom:1px solid var(--glass-border);z-index:1}.panel-title{display:flex;align-items:center;gap:8px}.panel-title span{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.status-indicator{display:flex;align-items:center;gap:6px;padding:3px 8px;border-radius:20px;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.status-indicator.ready{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-muted)}.status-indicator.active{background:var(--success-glow);border:1px solid rgba(0,245,160,.3);color:var(--success);animation:status-pulse 2s ease-in-out infinite}.status-indicator.paused{background:var(--warning-glow);border:1px solid rgba(255,184,0,.3);color:var(--warning)}@keyframes status-pulse{0%,to{box-shadow:0 0 0 0 var(--success-glow)}50%{box-shadow:0 0 20px 2px var(--success-glow)}}.status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}.status-indicator.active .status-dot{animation:dot-pulse 1.5s ease-in-out infinite}@keyframes dot-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.7);opacity:.5}}.panel-body{position:absolute;top:var(--header-height);left:0;right:0;bottom:0;overflow-y:auto;overflow-x:hidden;padding:var(--space-lg)}.panel-body>*{margin-bottom:var(--space-md)}.panel-body>*:last-child{margin-bottom:0}.panel-body::-webkit-scrollbar{width:6px}.panel-body::-webkit-scrollbar-track{background:#0003;border-radius:3px;margin:8px 0}.panel-body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#fff3,#ffffff1a);border-radius:3px}.panel-body::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#ffffff4d,#ffffff26)}.panel-section{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden;transition:all .2s ease}.panel-section:hover{background:var(--bg-card-hover);border-color:#ffffff1f}.panel-section.collapsible{background:var(--bg-card)}.section-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);background:linear-gradient(180deg,rgba(255,255,255,.02) 0%,transparent 100%)}.section-header.clickable{cursor:pointer;transition:background .15s;width:100%;border:0;margin:0;font:inherit;color:inherit;text-align:left;-webkit-appearance:none;-moz-appearance:none;appearance:none}.section-header.clickable:hover{background:#ffffff0a}.section-header.clickable:focus-visible{outline:2px solid var(--accent-cyan, #00e5ff);outline-offset:-2px}.section-collapse{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}.section-collapse.open{grid-template-rows:1fr}.section-collapse__inner{min-height:0;overflow:hidden;visibility:hidden;transition:visibility 0s linear .28s}.section-collapse.open .section-collapse__inner{visibility:visible;transition:visibility 0s}@media(prefers-reduced-motion:reduce){.section-collapse,.section-collapse__inner{transition:none}}.section-title-row{display:flex;align-items:center;gap:12px}.section-title{margin:0;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.section-value{font-size:11px;font-weight:600;color:var(--accent);padding:4px 10px;background:var(--accent-glow);border:1px solid rgba(0,229,255,.2);border-radius:6px}.chevron{width:16px;height:16px;color:var(--text-muted);transition:transform .25s ease}.chevron.open{transform:rotate(180deg)}.section-content{padding:var(--space-md);padding-top:0}.session-section{background:linear-gradient(135deg,rgba(0,229,255,.08) 0%,var(--bg-card) 50%,rgba(0,245,160,.05) 100%);border-color:#00e5ff33}.session-section.active{border-color:#00e5ff66;box-shadow:0 0 30px -5px var(--accent-glow),inset 0 1px #ffffff0d}.session-monitor{padding:var(--space-xl)}.pulse-display{display:flex;align-items:baseline;justify-content:center;gap:6px;margin-bottom:var(--space-lg);padding:var(--space-lg) 0}.pulse-current{font-size:48px;font-weight:700;font-family:SF Mono,JetBrains Mono,monospace;color:var(--text-bright);line-height:1;text-shadow:0 0 30px var(--accent-glow-strong);letter-spacing:-.02em}.pulse-display.flash .pulse-current{animation:pulse-flash .15s ease-out}@keyframes pulse-flash{0%{color:var(--accent);text-shadow:0 0 40px var(--accent)}to{color:var(--text-bright);text-shadow:0 0 30px var(--accent-glow-strong)}}.pulse-separator{font-size:28px;font-weight:300;color:var(--text-muted)}.pulse-total{font-size:24px;font-weight:500;font-family:SF Mono,JetBrains Mono,monospace;color:var(--text-secondary)}.freq-tag{margin-left:auto;font-size:12px;font-weight:700;color:var(--accent);padding:6px 12px;background:var(--accent-glow);border:1px solid rgba(0,229,255,.25);border-radius:8px;letter-spacing:.02em}.session-progress{height:8px;background:#0006;border-radius:4px;overflow:hidden;margin-bottom:var(--space-lg);box-shadow:inset 0 2px 4px #0000004d}.session-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent) 0%,#00f5a0 50%,var(--accent) 100%);background-size:200% 100%;border-radius:4px;transition:width .3s ease;box-shadow:0 0 20px var(--accent-glow)}.session-progress-fill.animated{animation:progress-shimmer 2s linear infinite}@keyframes progress-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.iti-indicator{margin-bottom:var(--space-lg);width:100%;padding:var(--space-md);background:linear-gradient(135deg,var(--warning-glow) 0%,rgba(255,184,0,.05) 100%);border:1px solid rgba(255,184,0,.35);border-radius:var(--radius-md);box-shadow:0 0 20px #ffb8001a}.iti-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm)}.iti-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--warning)}.iti-time{font-size:14px;font-weight:700;font-family:SF Mono,monospace;color:var(--warning);text-shadow:0 0 10px rgba(255,184,0,.3)}.iti-bar{position:relative;height:6px;width:100%;background:#000000c7;border-radius:3px;overflow:visible;box-shadow:inset 0 1px 2px #00000073}.iti-fill{position:relative;width:100%;height:100%;background:linear-gradient(90deg,var(--warning) 0%,#ffcc00 60%,#fff3b8 100%);border-radius:3px;box-shadow:0 0 10px #ffb8008c,inset 0 0 4px #ffffc866;transform:scaleX(var(--iti-progress, 0));transform-origin:left center}.iti-bar:after{content:"";position:absolute;top:-2px;bottom:-2px;left:calc(var(--iti-progress, 0) * 100% - 3px);width:6px;border-radius:50%;background:radial-gradient(circle,#fff8d8,#ffe28a 40%,#ffc85000 70%);box-shadow:0 0 8px #ffe880e6,0 0 16px #ffb80080;animation:iti-spark-flicker .7s ease-in-out infinite;pointer-events:none}@keyframes iti-spark-flicker{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.78;transform:scaleY(1.25)}}.session-controls-compact{display:flex;gap:10px}.btn-control{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:var(--radius-md);font-size:12px;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:all .2s ease;border:1px solid}.btn-control:disabled{opacity:.35;cursor:not-allowed}.btn-control.start{flex:1;background:linear-gradient(135deg,#00f5a033,#00f5a01a);border-color:#00f5a066;color:var(--success)}.btn-control.start:hover:not(:disabled){background:linear-gradient(135deg,#00f5a04d,#00f5a026);box-shadow:0 0 30px var(--success-glow);transform:translateY(-1px)}.btn-control.pause,.btn-control.resume{flex:1;background:linear-gradient(135deg,var(--warning-glow),transparent);border-color:#ffb80066;color:var(--warning)}.btn-control.pause:hover:not(:disabled),.btn-control.resume:hover:not(:disabled){background:linear-gradient(135deg,rgba(255,184,0,.25),var(--warning-glow));box-shadow:0 0 30px var(--warning-glow)}.btn-control.stop{background:linear-gradient(135deg,var(--danger-glow),transparent);border-color:#ff3b5c66;color:var(--danger);padding:12px 14px}.btn-control.stop:hover:not(:disabled){background:linear-gradient(135deg,rgba(255,59,92,.25),var(--danger-glow));box-shadow:0 0 30px var(--danger-glow)}.btn-control.reset{background:#ffffff08;border-color:var(--glass-border);color:var(--text-muted);padding:12px 14px}.btn-control.reset:hover:not(:disabled){background:#ffffff14;color:var(--text-secondary)}.quick-start{background:linear-gradient(135deg,var(--bg-card) 0%,rgba(0,229,255,.05) 100%)}.quick-start-content{padding:var(--space-xl)}.quick-presets{margin-bottom:var(--space-lg)}.quick-label{display:block;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-sm)}.preset-chips{display:flex;gap:8px;flex-wrap:wrap}.preset-chip{padding:8px 16px;background:#ffffff08;border:1px solid var(--glass-border);border-radius:20px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.preset-chip:hover{background:var(--accent-glow);border-color:#00e5ff4d;color:var(--accent);transform:translateY(-1px)}.btn-start-large{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:18px 24px;background:linear-gradient(135deg,#00f5a026,#00e5ff1a);border:1px solid rgba(0,245,160,.3);border-radius:var(--radius-lg);color:var(--success);font-size:15px;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:all .25s ease}.btn-start-large:hover:not(:disabled){background:linear-gradient(135deg,#00f5a040,#00e5ff26);border-color:#00f5a080;box-shadow:0 0 40px var(--success-glow),0 10px 30px -10px #00f5a04d;transform:translateY(-2px)}.btn-start-large:disabled{opacity:.4;cursor:not-allowed}.btn-start-large svg{filter:drop-shadow(0 0 8px currentColor)}.target-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:var(--space-sm)}.target-chip{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px;background:#ffffff05;border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease}.target-chip:before{content:"";position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--target-color, var(--accent));opacity:.7;box-shadow:0 0 10px var(--target-color, var(--accent))}.target-key{font-size:13px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.target-area{font-size:10px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.target-chip:hover:not(:disabled){background:#ffffff0f;border-color:#ffffff26;transform:translateY(-2px)}.target-chip:hover:not(:disabled) .target-key{color:var(--text-bright)}.target-chip.selected{background:var(--accent-glow);border-color:var(--accent);box-shadow:0 0 25px var(--accent-glow),inset 0 1px #ffffff1a}.target-chip.selected .target-key{color:var(--accent)}.target-chip.selected .target-area{color:var(--accent-dim)}.target-chip.selected:before{opacity:1}.target-chip:disabled{opacity:.4;cursor:not-allowed}.target-chip.reset-chip{gap:2px}.target-chip.reset-chip:before{display:none}.target-chip.reset-chip svg{color:var(--text-muted);opacity:.6}.target-chip.reset-chip:hover:not(:disabled) svg{color:var(--text-secondary);opacity:1}.target-actions-row{display:flex;gap:10px}.btn-tiny{padding:8px 14px;background:#ffffff08;border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-muted);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s}.btn-tiny:hover:not(:disabled){background:#ffffff14;color:var(--text-secondary)}.btn-tiny.active{background:var(--accent-glow);border-color:var(--accent);color:var(--accent)}.btn-tiny:disabled{opacity:.35;cursor:not-allowed}.preset-row{display:flex;align-items:center;gap:8px;margin-bottom:var(--space-md)}.preset-label{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0}.preset-select{flex:1;min-width:0;padding:6px 22px 6px 8px;background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:12px;font-weight:500;font-family:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.4)' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;transition:all .15s}.preset-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.preset-select:disabled{opacity:.5;cursor:not-allowed}.param-grid-compact{display:grid;grid-template-columns:repeat(3,1fr);column-gap:8px;row-gap:14px;margin-bottom:var(--space-xs)}.param-cell{display:flex;flex-direction:column;gap:6px;min-width:0;position:relative;border-radius:var(--radius-md)}.param-cell--dial{align-items:center}.param-cell--dial>label{align-self:flex-start}.param-cell label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.param-input-wrap{display:flex;align-items:stretch;background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);overflow:hidden;transition:all .15s}.param-input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.param-input-wrap input{flex:1;min-width:0;padding:6px 8px;background:transparent;border:none;color:var(--text-primary);font-size:12px;font-weight:500;font-family:SF Mono,JetBrains Mono,monospace}.param-input-wrap input:focus{outline:none}.param-input-wrap input::placeholder{color:var(--text-muted)}.param-unit{display:flex;align-items:center;padding:0 8px;font-size:10px;font-weight:600;color:var(--text-muted);background:#ffffff05;border-left:1px solid var(--glass-border)}.param-cell input,.param-cell select{width:100%;padding:6px 8px;background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:12px;font-weight:500;font-family:inherit;transition:all .15s}.param-cell select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.4)' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;padding-right:22px}.param-cell input:focus,.param-cell select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.param-cell input:disabled,.param-cell select:disabled{opacity:.5;cursor:not-allowed}.machine-panel--tutorial-compact .dial--disabled{opacity:.72}.machine-panel--tutorial-compact .param-cell--tutorial-highlight .dial--disabled{opacity:.95}.param-cell--tutorial-highlight{padding:6px;margin:-6px;background:#00e5ff14;border:1px solid rgba(0,229,255,.45);box-shadow:0 0 0 1px #00e5ff1f,0 0 24px #00e5ff2e;animation:param-cell-highlight-pulse 2.4s ease-in-out infinite}@keyframes param-cell-highlight-pulse{0%,to{background:#00e5ff0f;border-color:#00e5ff59;box-shadow:0 0 0 1px #00e5ff1a,0 0 18px #00e5ff24}50%{background:#00e5ff21;border-color:#00e5ffb3;box-shadow:0 0 0 1px #00e5ff38,0 0 34px #00e5ff57}}@media(prefers-reduced-motion:reduce){.param-cell--tutorial-highlight{animation:none}}.param-cell--tutorial-highlight label{color:var(--accent)}.param-cell--lifting .param-input-wrap{opacity:.15;transition:opacity .14s ease-out}.timing-inline{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:#ffffff05;border:1px solid var(--glass-border);border-radius:var(--radius-md);font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-md)}.timing-dot{width:4px;height:4px;border-radius:50%;background:var(--text-muted)}.presets-toggle-compact{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px;background:transparent;border:1px dashed rgba(255,255,255,.1);border-radius:var(--radius-sm);color:var(--text-muted);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.presets-toggle-compact:hover{background:#ffffff05;border-color:#fff3;color:var(--text-secondary)}.chevron-tiny{width:12px;height:12px;transition:transform .2s}.chevron-tiny.open{transform:rotate(180deg)}.preset-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--space-md)}.preset-item{padding:8px 14px;background:#ffffff08;border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.preset-item:hover:not(:disabled){background:var(--accent-glow);border-color:#00e5ff4d;color:var(--accent)}.preset-item:disabled{opacity:.4;cursor:not-allowed}.session-status-section{background:var(--bg-card);border-color:var(--glass-border)}.session-status-section.active{background:linear-gradient(135deg,rgba(0,229,255,.08) 0%,var(--bg-card) 100%);border-color:#00e5ff4d}.session-status-content{padding:var(--space-md);padding-top:var(--space-sm);display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.circular-progress-container{position:relative;width:96px;height:96px}.circular-progress{width:100%;height:100%;transform:rotate(-90deg)}.progress-bg{stroke:#ffffff0f}.progress-fill{stroke:var(--accent);transition:stroke-dashoffset .3s ease;filter:drop-shadow(0 0 8px var(--accent-glow))}.session-status-section.active .progress-fill{stroke:var(--success);filter:drop-shadow(0 0 8px var(--success-glow))}.circular-progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:2px}.progress-current{font-size:20px;font-weight:700;font-family:SF Mono,JetBrains Mono,monospace;color:var(--text-bright);line-height:1}.progress-divider{font-size:11px;color:var(--text-muted)}.progress-total{font-size:11px;font-weight:500;font-family:SF Mono,JetBrains Mono,monospace;color:var(--text-secondary)}.session-stats-row{display:flex;gap:var(--space-md);width:100%;justify-content:center}.session-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.stat-value{font-size:14px;font-weight:600;font-family:SF Mono,JetBrains Mono,monospace;color:var(--text-primary)}.stat-label{font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.btn-session-start{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;background:linear-gradient(135deg,#00f5a026,#00e5ff14);border:1px solid rgba(0,245,160,.3);border-radius:var(--radius-md);color:var(--success);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-session-start:hover:not(:disabled){background:linear-gradient(135deg,#00f5a040,#00e5ff1f);box-shadow:0 0 30px var(--success-glow);transform:translateY(-1px)}.btn-session-start:disabled{opacity:.4;cursor:not-allowed}.btn-session-start svg{filter:drop-shadow(0 0 6px currentColor)}.session-controls-row{display:flex;gap:10px;width:100%}.btn-session{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 12px;border-radius:var(--radius-md);font-size:11px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-session.pause,.btn-session.resume{background:linear-gradient(135deg,var(--warning-glow),transparent);border:1px solid rgba(255,184,0,.4);color:var(--warning)}.btn-session.pause:hover,.btn-session.resume:hover{box-shadow:0 0 25px var(--warning-glow)}.btn-session.stop{flex:0;background:linear-gradient(135deg,var(--danger-glow),transparent);border:1px solid rgba(255,59,92,.4);color:var(--danger);padding:7px 10px}.btn-session.stop:hover{box-shadow:0 0 25px var(--danger-glow)}.btn-session-reset{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;background:#ffffff08;border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-session-reset:hover{background:#ffffff14;color:var(--text-primary)}.session-status-content .iti-indicator{width:100%;padding:var(--space-md);background:linear-gradient(135deg,var(--warning-glow) 0%,rgba(255,184,0,.05) 100%);border:1px solid rgba(255,184,0,.35);border-radius:var(--radius-md);box-shadow:0 0 20px #ffb8001a}@media(max-height:750px){.machine-panel{--header-height: 48px;font-size:12px}.panel-body{padding:var(--space-md)}.pulse-current{font-size:36px}.session-monitor{padding:var(--space-lg)}.param-grid-compact{gap:10px}.param-cell input,.param-cell select{padding:10px 12px;font-size:13px}}@media(max-height:600px){.machine-panel{--header-height: 42px}.pulse-current{font-size:28px}.pulse-display{padding:var(--space-sm) 0;margin-bottom:var(--space-md)}.btn-control{padding:10px 14px}.target-chips{gap:8px}.target-chip{padding:6px;font-size:12px}}.pill-selector{position:relative;display:inline-flex;align-items:center;min-width:0}.pill-selector__button{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 12px;background:#141419;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:#ffffffdb;font-size:12px;font-weight:500;letter-spacing:0;cursor:pointer;transition:background .15s ease-out,border-color .15s ease-out,transform .12s cubic-bezier(.23,1,.32,1);white-space:nowrap;max-width:min(340px,calc(100vw - 32px));min-width:0}.pill-selector__button:hover{background:#1a1a22;border-color:#ffffff26}.pill-selector__button:focus-visible{outline:2px solid #00c8f0;outline-offset:2px}.pill-selector__button:active{transform:scale(.97)}.pill-selector--open .pill-selector__button{border-color:#00c8f04d}.pill-selector__icon{display:inline-flex;align-items:center;color:#00c8f0;opacity:.85;flex-shrink:0}.pill-selector__label{color:#ffffff80;font-weight:500}.pill-selector__value{color:#ffffffeb;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.pill-selector__caret{display:inline-flex;align-items:center;justify-content:center;color:#ffffff73;transition:transform .16s cubic-bezier(.23,1,.32,1);flex-shrink:0}.pill-selector--open .pill-selector__caret{transform:rotate(180deg)}.pill-selector-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:min(260px,calc(100vw - 32px));max-width:min(360px,calc(100vw - 32px));background:#141419;border:1px solid rgba(255,255,255,.12);border-radius:8px;box-shadow:0 10px 24px #00000073;padding:4px;z-index:50;list-style:none;margin:0;transform-origin:top right;animation:pill-selector-menu-in .16s cubic-bezier(.23,1,.32,1)}.pill-selector-menu__option{display:flex;align-items:center;gap:8px;height:32px;padding:0 10px;border-radius:4px;color:#ffffffdb;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none}.pill-selector-menu__option:hover,.pill-selector-menu__option--highlighted{background:#ffffff0a}.pill-selector-menu__option--selected{color:#fff}.pill-selector-menu__check{width:6px;height:6px;border-radius:50%;background:#00c8f0;flex-shrink:0;visibility:hidden}.pill-selector-menu__option--selected .pill-selector-menu__check{visibility:visible}.pill-selector-menu__option-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes pill-selector-menu-in{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.pill-selector__button{transition:background .15s ease-out,border-color .15s ease-out}.pill-selector__button:active{transform:none}.pill-selector__caret{transition:none}.pill-selector-menu{animation:pill-selector-menu-fade .12s ease-out}}@keyframes pill-selector-menu-fade{0%{opacity:0}to{opacity:1}}.virtual-joystick{position:absolute;bottom:24px;left:24px;z-index:100;touch-action:none;user-select:none;-webkit-user-select:none}.joystick-base{width:120px;height:120px;border-radius:50%;background:#0c0c10d9;border:2px solid rgba(0,200,240,.3);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 16px #0006,inset 0 1px #ffffff0d}.virtual-joystick.active .joystick-base{border-color:#00c8f099;background:#0c0c10f2}.joystick-knob{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#1a1a24,#0e0e14);border:2px solid rgba(0,200,240,.5);box-shadow:0 2px 8px #00000080,inset 0 1px #ffffff1a;transition:transform .05s ease-out}.virtual-joystick.active .joystick-knob{border-color:#00c8f0;box-shadow:0 0 12px #00c8f066,0 2px 8px #00000080,inset 0 1px #ffffff1a}.joystick-label{position:absolute;bottom:-20px;left:50%;transform:translate(-50%);font-size:9px;font-weight:600;color:#00c8f099;text-transform:uppercase;letter-spacing:1px}.virtual-joystick.disabled{opacity:.4;pointer-events:none}.touch-target-buttons{position:absolute;bottom:24px;right:24px;z-index:100}.touch-targets-label{font-size:9px;font-weight:600;color:#fff6;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;text-align:center}.touch-targets-row{display:flex;gap:8px}.touch-target-btn{min-width:52px;min-height:52px;padding:8px 12px;background:#0c0c10e6;border:2px solid rgba(255,255,255,.1);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;touch-action:manipulation;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .15s ease-out}.touch-target-btn:active,.touch-target-btn.selected{background:#0c0c10fa;border-color:var(--target-color, #00c8f0);box-shadow:0 0 12px color-mix(in srgb,var(--target-color) 40%,transparent)}.touch-target-btn .target-key{font-size:14px;font-weight:700;color:var(--target-color, #ffffff)}.touch-target-btn .target-label{font-size:8px;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}@media(max-width:480px){.touch-targets-row{flex-wrap:wrap;max-width:180px;justify-content:center}}.mobile-controls{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.mobile-controls>*{pointer-events:auto}.mobile-controls-toggle{position:absolute;bottom:24px;left:24px;width:48px;height:48px;border-radius:50%;background:#0c0c10d9;border:2px solid rgba(0,200,240,.3);color:#00c8f099;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .15s ease-out}.mobile-controls-toggle:hover,.mobile-controls-toggle:active{border-color:#00c8f099;color:#00c8f0}.mobile-controls-toggle svg{width:24px;height:24px}.mobile-controls-hide{position:absolute;bottom:160px;left:24px;padding:6px 12px;background:#0c0c10b3;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#ffffff80;font-size:10px;cursor:pointer;z-index:100;transition:all .15s ease-out}.mobile-controls-hide:hover,.mobile-controls-hide:active{background:#0c0c10e6;color:#fffc}@media(min-width:1024px)and (pointer:fine){.mobile-controls,.mobile-controls-toggle{display:none}}.v3-home{--bg-base: #07080b;--bg-deeper: #050608;--surface-1: #0d0f14;--surface-2: #11141b;--surface-3: #161a23;--line-soft: rgba(255, 255, 255, .06);--line: rgba(255, 255, 255, .09);--line-strong: rgba(255, 255, 255, .16);--text-1: rgba(255, 255, 255, .96);--text-2: rgba(255, 255, 255, .66);--text-3: rgba(255, 255, 255, .42);--text-4: rgba(255, 255, 255, .28);--locked-plate: #17181a;--locked-title: rgba(255, 255, 255, .55);--locked-reason: rgba(255, 255, 255, .5);--accent: #6cd6ff;--accent-soft: rgba(108, 214, 255, .14);--accent-line: rgba(108, 214, 255, .36);--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;position:relative;display:flex;flex-direction:column;width:100%;height:100dvh;min-height:0;max-height:100dvh;background:radial-gradient(ellipse 70% 55% at 50% -10%,rgba(108,214,255,.06),transparent 65%),linear-gradient(180deg,var(--bg-base) 0%,var(--bg-deeper) 100%);color:var(--text-1);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;isolation:isolate}.v3-home:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background-image:linear-gradient(to right,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.022) 1px,transparent 1px);background-size:56px 56px;background-position:-1px -1px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 42%,#000 32%,transparent 78%);mask-image:radial-gradient(ellipse 80% 70% at 50% 42%,#000 32%,transparent 78%)}.v3-home__bar{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 clamp(20px,4vw,44px);border-bottom:1px solid var(--line-soft);background:linear-gradient(180deg,#07080b99,#07080b33);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.v3-home__brand{display:inline-flex;align-items:center;gap:11px;min-width:0}.v3-home__brand-mark{display:inline-grid;place-items:center;width:26px;height:26px}.v3-home__brand-img{width:26px;height:26px;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 0 6px rgba(108,214,255,.18))}.v3-home__brand-name{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--text-2);white-space:nowrap}.v3-home__bar-right{display:inline-flex;align-items:center;gap:16px}.v3-home__calibrate{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border:1px solid var(--line-soft);border-radius:7px;background:transparent;color:var(--text-2);font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.v3-home__calibrate:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.v3-home__status{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3)}.v3-home__history{border:1px solid var(--line-strong, rgba(255, 255, 255, .24));border-radius:5px;padding:7px 10px;color:var(--text-2, #c8d2d8);background:transparent;font:inherit;font-size:11px;letter-spacing:.04em;cursor:pointer}.v3-home__history:hover,.v3-home__history:focus-visible{color:var(--text-1, #fff);border-color:var(--accent, #77d5ec)}.v3-home__status-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.v3-home__stage{position:relative;z-index:1;flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;width:100%;max-width:1240px;margin:0 auto;padding:clamp(40px,8vh,88px) clamp(20px,6vw,72px);gap:clamp(32px,4.5vw,56px)}.v3-home__heading{display:flex;align-items:center;gap:clamp(18px,2.2vw,28px)}.v3-home__title-mark{flex:0 0 auto;width:clamp(48px,6vw,74px);height:clamp(48px,6vw,74px);object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 0 24px rgba(108,214,255,.18))}.v3-home__title{margin:0;font-size:clamp(40px,6.6vw,76px);line-height:.98;letter-spacing:-.028em;font-weight:600;color:var(--text-1)}.v3-home__panel{display:flex;flex-direction:column;gap:18px}.v3-home__divider{display:flex;align-items:center;gap:16px;padding-left:2px}.v3-home__divider-label{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--accent);white-space:nowrap}.v3-home__divider-rule{flex:1;height:1px;background:linear-gradient(to right,var(--accent-line) 0%,var(--line) 18%,var(--line) 100%);opacity:.9}.v3-home__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;box-shadow:0 30px 80px -40px #000000b3,0 0 0 1px #ffffff05}.v3-home__grid--three-up{grid-template-columns:repeat(3,minmax(0,1fr))}.v3-mode-slot{--mode-accent: #6cd6ff;position:relative;min-width:0;min-height:232px;overflow:hidden;background:var(--surface-1)}.v3-mode-slot>.v3-mode{width:100%;height:100%}.v3-tutorial-picker{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:flex;flex-direction:column;gap:10px;padding:18px;color:var(--text-1);background:linear-gradient(145deg,rgba(108,214,255,.08),transparent 44%),var(--surface-2);border-bottom:2px solid var(--mode-accent);animation:tutorial-picker-in .18s cubic-bezier(.2,.7,.2,1) both}@keyframes tutorial-picker-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.v3-tutorial-picker__head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--mode-accent);font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.18em;line-height:1.2;text-transform:uppercase}.v3-tutorial-picker__close{flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;padding:0;color:var(--text-2);background:transparent;border:1px solid var(--line);border-radius:4px;cursor:pointer}.v3-tutorial-picker__close:hover,.v3-tutorial-picker__close:focus-visible{color:var(--text-1);border-color:var(--accent-line)}.v3-tutorial-picker__close:focus-visible,.v3-tutorial-picker__option:focus-visible{outline:2px solid var(--mode-accent);outline-offset:-2px}.v3-tutorial-picker__close svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.v3-tutorial-picker__options{display:grid;flex:1;min-height:0;border-top:1px solid var(--line)}.v3-tutorial-picker__option{display:grid;grid-template-columns:28px minmax(0,1fr) 24px;align-items:center;gap:10px;min-width:0;padding:7px 4px;color:var(--text-1);text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line-soft);border-radius:0;cursor:pointer;transition:background-color .15s ease,color .15s ease}.v3-tutorial-picker__option:last-child{border-bottom:0}.v3-tutorial-picker__option:hover,.v3-tutorial-picker__option:focus-visible{background:#6cd6ff14}.v3-tutorial-picker__index{color:var(--text-3);font-family:var(--mono);font-size:9px;letter-spacing:.14em}.v3-tutorial-picker__copy{display:flex;flex-direction:column;min-width:0;gap:2px}.v3-tutorial-picker__label{font-size:15px;font-weight:650;line-height:1.1}.v3-tutorial-picker__detail{overflow:hidden;color:var(--text-3);font-family:var(--mono);font-size:8.5px;letter-spacing:.08em;line-height:1.2;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.v3-tutorial-picker__arrow{display:grid;place-items:center;color:var(--mode-accent);transition:transform .15s ease}.v3-tutorial-picker__option:hover .v3-tutorial-picker__arrow,.v3-tutorial-picker__option:focus-visible .v3-tutorial-picker__arrow{transform:translate(3px)}.v3-tutorial-picker__arrow svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.v3-mode{--mode-accent: var(--accent);position:relative;display:flex;flex-direction:column;align-items:stretch;text-align:left;gap:14px;min-height:232px;padding:clamp(24px,2.6vw,34px);margin:0;font:inherit;color:var(--text-1);background:var(--surface-1);border:0;border-radius:0;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:background-color .22s ease,color .22s ease,transform .22s ease}.v3-mode--tutorial{--mode-accent: #6cd6ff}.v3-mode--sandbox{--mode-accent: #7be0b3}.v3-mode--practice{--mode-accent: #ff8a7a}.v3-mode--certification{--mode-accent: #f3b85c}.v3-mode:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--mode-accent);transform:scaleX(0);transform-origin:left center;transition:transform .28s cubic-bezier(.2,.7,.2,1)}.v3-mode:hover{background:var(--surface-2)}.v3-mode:hover:after,.v3-mode:focus-visible:after{transform:scaleX(1)}.v3-mode:hover .v3-mode__arrow,.v3-mode:focus-visible .v3-mode__arrow{color:var(--mode-accent);transform:translate(4px);filter:drop-shadow(0 0 14px color-mix(in srgb,var(--mode-accent) 85%,transparent))}.v3-mode:hover .v3-mode__index,.v3-mode:focus-visible .v3-mode__index{color:var(--text-2)}.v3-mode:active{background:var(--surface-3);transform:translateY(1px)}.v3-mode:focus-visible{outline:1px solid var(--mode-accent);outline-offset:-2px}.v3-mode[aria-disabled=true]{cursor:not-allowed}.v3-mode__head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--mono)}.v3-mode__index{font-size:11px;letter-spacing:.24em;color:var(--text-3);transition:color .22s ease}.v3-mode__name{display:block;margin-top:8px;font-size:clamp(28px,2.8vw,36px);line-height:1.04;letter-spacing:-.022em;font-weight:600;color:var(--text-1)}.v3-mode__subtitle{display:block;font-size:14.5px;font-weight:400;line-height:1.4;color:var(--text-2)}.v3-mode__persistence{display:block;margin-top:-8px;color:var(--text-3);font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.v3-mode__foot{margin-top:auto;display:flex;align-items:center;justify-content:flex-end;gap:16px;padding-top:18px;border-top:1px solid var(--line-soft)}.v3-mode__arrow{display:inline-grid;place-items:center;width:44px;height:44px;color:var(--mode-accent);filter:drop-shadow(0 0 7px color-mix(in srgb,var(--mode-accent) 50%,transparent));transition:transform .24s ease,color .24s ease,filter .24s ease}.v3-mode__arrow svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.v3-home__footnote{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:14px;padding:16px 20px 22px;font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-4)}.v3-home__footnote-divider{width:1px;height:10px;background:var(--line)}@media(max-width:880px){.v3-home__stage{padding:clamp(28px,5vh,48px) 20px;gap:28px}.v3-home__title{font-size:clamp(34px,8vw,52px)}}@media(max-width:640px){.v3-home__bar{height:50px;padding:0 16px}.v3-home__status{display:none}.v3-home__brand-name{font-size:10.5px;letter-spacing:.2em}.v3-home__heading{gap:14px}.v3-home__title-mark{width:38px;height:38px}.v3-home__grid{grid-template-columns:1fr;border-radius:5px}.v3-mode{min-height:184px;padding:22px 20px;gap:12px}.v3-mode-slot{min-height:184px}.v3-mode-slot--picker-open{min-height:224px}.v3-mode__name{font-size:24px}.v3-mode__subtitle{font-size:13.5px}.v3-home__footnote{flex-wrap:wrap;padding:14px 16px 22px;font-size:9.5px;letter-spacing:.18em}}@media(prefers-reduced-motion:reduce){.v3-mode,.v3-mode:after,.v3-mode__arrow,.v3-mode__index,.v3-tutorial-picker,.v3-tutorial-picker__option,.v3-tutorial-picker__arrow{transition:none;animation:none}.v3-mode:hover,.v3-mode:active{transform:none}}.v3-mode--locked{background:var(--locked-plate)}.v3-mode--locked .v3-mode__index{opacity:.4;filter:saturate(.3)}.v3-mode--locked .v3-mode__name{color:var(--locked-title)}.v3-mode--locked .v3-mode__subtitle{color:var(--locked-reason)}.v3-mode--locked:hover,.v3-mode--locked:active{background:var(--locked-plate);transform:none}.v3-mode--locked:hover:after,.v3-mode--locked:focus-visible:after{transform:scaleX(0)}.v3-mode--locked:hover .v3-mode__index,.v3-mode--locked:focus-visible .v3-mode__index{color:var(--text-3)}.v3-mode--locked:focus-visible{outline-color:#fffffff2}.v3-mode__lock{display:inline-flex;width:20px;height:20px;margin-left:auto;color:#ffffff80}.v3-mode__lock svg{width:100%;height:100%}.curriculum-chapter-list{display:grid;gap:8px}.curriculum-chapter-list__section{min-width:0;padding:4px 0 7px}.curriculum-chapter-list__section+.curriculum-chapter-list__section{padding-top:11px;border-top:1px solid rgba(255,255,255,.075)}.curriculum-chapter-list__section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:0 10px 6px}.curriculum-chapter-list__section-head h3{min-width:0;margin:0;overflow:hidden;color:#ffffff94;font-size:11px;font-weight:700;letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.curriculum-chapter-list__section-head>span{flex:0 0 auto;color:#ffffff70;font-size:11px;font-variant-numeric:tabular-nums;font-weight:600}.curriculum-chapter-list__section-actions{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:5px;padding:0 3px 5px}.curriculum-chapter-list__section-start,.curriculum-chapter-list__section-toggle{min-height:52px;margin:0;border:1px solid rgba(108,214,255,.16);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#6cd6ff0e;color:#ffffffeb;cursor:pointer;transition:background .14s ease-out,border-color .14s ease-out,color .14s ease-out,transform .1s ease-out}.curriculum-chapter-list__section-start{display:grid;grid-template-areas:"kicker title" "meta meta";grid-template-columns:auto minmax(0,1fr);align-content:center;align-items:baseline;column-gap:8px;padding:8px 12px 9px;border-radius:10px 6px 6px 10px;font:inherit;text-align:left}.curriculum-chapter-list__section-toggle{display:grid;place-items:center;padding:0;border-radius:6px 10px 10px 6px;color:#6cd6ffb8}.curriculum-chapter-list__section-start:hover:not(:disabled),.curriculum-chapter-list__section-toggle:hover{border-color:#6cd6ff66;background:#6cd6ff1c;color:#fff}.curriculum-chapter-list__section-start:active:not(:disabled),.curriculum-chapter-list__section-toggle:active{transform:scale(.985)}.curriculum-chapter-list__section-start:focus-visible,.curriculum-chapter-list__section-toggle:focus-visible{outline:2px solid #5fdcff;outline-offset:-2px}.curriculum-chapter-list__section-start:disabled{border-color:#ffffff12;background:#ffffff06;color:#ffffff61;cursor:not-allowed}.curriculum-chapter-list__section-kicker{grid-area:kicker;color:#5fdcff;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}.curriculum-chapter-list__section-start:disabled .curriculum-chapter-list__section-kicker{color:#ffffff57}.curriculum-chapter-list__section-title{grid-area:title;min-width:0;overflow:hidden;font-size:15px;font-weight:700;letter-spacing:-.015em;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.curriculum-chapter-list__section-meta{grid-area:meta;min-width:0;margin-top:4px;overflow:hidden;color:#ffffff7a;font-size:11px;font-variant-numeric:tabular-nums;font-weight:600;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.curriculum-chapter-list__section-toggle svg{width:17px;height:17px;transition:transform .16s ease-out}.curriculum-chapter-list__section-toggle--open svg{transform:rotate(180deg)}.curriculum-chapter-list__rows{display:grid;gap:2px;margin:0;padding:0;list-style:none}.curriculum-chapter-list--checkpoint .curriculum-chapter-list__rows{animation:curriculum-checkpoints-in .14s ease-out}.curriculum-chapter-list__row{display:grid;grid-template-areas:"glyph label state" ". reason reason";grid-template-columns:18px minmax(0,1fr) auto;align-items:center;column-gap:9px;width:100%;min-height:36px;margin:0;padding:7px 10px;border:0;border-radius:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:#ffffffc7;font:inherit;text-align:left}button.curriculum-chapter-list__row{cursor:pointer;transition:background .12s ease-out,color .12s ease-out,transform .1s ease-out}button.curriculum-chapter-list__row:hover{background:#ffffff0f;color:#fffffff5}button.curriculum-chapter-list__row:active{transform:scale(.99)}button.curriculum-chapter-list__row:focus-visible{outline:2px solid #5fdcff;outline-offset:-2px}.curriculum-chapter-list__glyph{grid-area:glyph;display:inline-grid;place-items:center;width:16px;height:16px;color:#ffffff57}.curriculum-chapter-list__glyph svg{width:16px;height:16px}.curriculum-chapter-list__label{grid-area:label;min-width:0;overflow:hidden;font-size:12.5px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.curriculum-chapter-list__state{grid-area:state;color:#ffffff6b;font-size:11px;font-weight:700;letter-spacing:.035em;white-space:nowrap}.curriculum-chapter-list__reason{grid-area:reason;padding-top:2px;color:#fff6;font-size:11px;line-height:1.35}.curriculum-chapter-list__row--active{background:#00c8f01c;color:#fff;box-shadow:inset 2px 0 #5fdcff}.curriculum-chapter-list__row--active .curriculum-chapter-list__glyph,.curriculum-chapter-list__row--active .curriculum-chapter-list__state{color:#5fdcff}.curriculum-chapter-list__row--complete .curriculum-chapter-list__glyph,.curriculum-chapter-list__row--complete .curriculum-chapter-list__state{color:#2ee29a}.curriculum-chapter-list__row--locked{color:#ffffff61}.curriculum-chapter-list__row--locked .curriculum-chapter-list__glyph,.curriculum-chapter-list__row--locked .curriculum-chapter-list__state{color:#ffffff52}.curriculum-chapter-list--completion .curriculum-chapter-list__row{min-height:42px}@media(max-width:640px){.curriculum-chapter-list__section-actions{grid-template-columns:minmax(0,1fr) 52px}.curriculum-chapter-list__section-start,.curriculum-chapter-list__section-toggle{min-height:56px}.curriculum-chapter-list__row{min-height:44px;padding:8px 12px}.curriculum-chapter-list__label{font-size:13.5px}.curriculum-chapter-list__state{font-size:11px}}@keyframes curriculum-checkpoints-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.curriculum-chapter-list__section-start,.curriculum-chapter-list__section-toggle,.curriculum-chapter-list__section-toggle svg{transition:none}.curriculum-chapter-list__section-start:active:not(:disabled),.curriculum-chapter-list__section-toggle:active{transform:none}.curriculum-chapter-list--checkpoint .curriculum-chapter-list__rows{animation:none}button.curriculum-chapter-list__row{transition:none}button.curriculum-chapter-list__row:active{transform:none}}.checkpoint-menu{position:relative;display:inline-flex;pointer-events:auto}.checkpoint-menu__trigger{position:relative;display:inline-flex;align-items:center;gap:8px;height:34px;max-width:min(340px,calc(100vw - 48px));padding:0 12px;overflow:hidden;border:1px solid rgba(108,214,255,.24);border-radius:999px;background:#060a12db;box-shadow:0 12px 32px #00000057,inset 0 1px #ffffff0f;color:#ffffffe6;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s ease-out,border-color .15s ease-out,transform .12s ease-out}.checkpoint-menu__trigger:hover{border-color:#6cd6ff75;background:#091624f0}.checkpoint-menu__trigger:active{transform:scale(.98)}.checkpoint-menu__trigger:focus-visible,.checkpoint-menu__close:focus-visible,.checkpoint-menu__reset:focus-visible,.checkpoint-menu__confirmation button:focus-visible{outline:2px solid #5fdcff;outline-offset:2px}.checkpoint-menu--open .checkpoint-menu__trigger{border-color:#6cd6ff7a}.checkpoint-menu__trigger-icon,.checkpoint-menu__caret{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center}.checkpoint-menu__trigger-icon{color:#5fdcff}.checkpoint-menu__trigger-icon svg{width:14px;height:14px}.checkpoint-menu__trigger-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checkpoint-menu__dev-tag{flex:0 0 auto;padding:1px 5px;border:1px solid rgba(255,207,92,.34);border-radius:4px;background:#ffcf5c24;color:#ffcf5c;font-size:11px;font-weight:700;letter-spacing:.06em}.checkpoint-menu__caret{color:#ffffff80;transition:transform .16s ease-out}.checkpoint-menu__caret svg{width:10px;height:10px}.checkpoint-menu--open .checkpoint-menu__caret{transform:rotate(180deg)}.checkpoint-menu__trigger-progress{display:none}.checkpoint-menu__backdrop{display:contents}.checkpoint-menu__panel{position:absolute;top:calc(100% + 8px);right:0;display:flex;flex-direction:column;width:min(350px,calc(100vw - 48px));max-height:min(74vh,640px);overflow:hidden;border:1px solid rgba(122,190,235,.2);border-radius:14px;background:#0a0e17fa;box-shadow:0 2px 3px #0000006b,0 20px 50px #00000094;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transform-origin:top right;animation:checkpoint-menu-in .16s cubic-bezier(.23,1,.32,1)}.checkpoint-menu__header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px 10px 16px;border-bottom:1px solid rgba(255,255,255,.075);background:#0a0e17fa}.checkpoint-menu__header>div{min-width:0}.checkpoint-menu__header span{display:block;margin-bottom:2px;color:#6cd6ffa3;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.checkpoint-menu__header h2{margin:0;color:#fffffff5;font-size:16px;font-weight:700;line-height:1.2}.checkpoint-menu__header h2:focus{outline:none}.checkpoint-menu__close{display:inline-grid;flex:0 0 auto;place-items:center;width:32px;height:32px;padding:0;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0b;color:#ffffffad;cursor:pointer}.checkpoint-menu__close:hover{border-color:#ffffff2e;background:#ffffff14;color:#fff}.checkpoint-menu__close svg{width:15px;height:15px}.checkpoint-menu__body{min-height:0;padding:7px;overflow-y:auto;overscroll-behavior:contain}.checkpoint-menu__reset{width:100%;min-height:34px;margin-top:5px;padding:7px 10px;border:1px dashed rgba(255,207,92,.38);border-radius:7px;background:transparent;color:#ffcf5c;font-size:11px;font-weight:600;cursor:pointer}.checkpoint-menu__reset:hover{background:#ffcf5c14}.checkpoint-menu__confirmation{padding:18px 14px 14px}.checkpoint-menu__confirmation h3{margin:0;color:#fffffff5;font-size:17px;font-weight:600}.checkpoint-menu__confirmation p{margin:7px 0 18px;color:#ffffffa3;font-size:13px;line-height:1.45}.checkpoint-menu__confirmation-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:8px}.checkpoint-menu__confirmation button{min-height:38px;padding:0 12px;border:1px solid rgba(255,255,255,.13);border-radius:8px;background:#ffffff0e;color:#ffffffdb;font-size:12px;font-weight:700;cursor:pointer}.checkpoint-menu__confirmation .checkpoint-menu__leave{border-color:#ff657966;background:#ff65791f;color:#ff9cab}.checkpoint-menu__sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes checkpoint-menu-in{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:640px){.checkpoint-menu__trigger{min-height:44px;height:44px;max-width:calc(100vw - 20px);padding:0 12px 3px}.checkpoint-menu__trigger-progress{position:absolute;right:12px;bottom:4px;left:12px;display:block;height:2px;overflow:hidden;border-radius:999px;background:#ffffff1a}.checkpoint-menu__trigger-progress>span{display:block;width:var(--checkpoint-progress, 0%);height:100%;border-radius:inherit;background:linear-gradient(90deg,#20d68b,#6cd6ff)}.checkpoint-menu__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:220;display:block;background:#02050ab3}.checkpoint-menu__panel{position:fixed;inset:auto 0 0;width:100%;max-height:min(82dvh,720px);padding-bottom:calc(8px + env(safe-area-inset-bottom));border-right:0;border-bottom:0;border-left:0;border-radius:18px 18px 0 0;transform-origin:bottom center;animation-name:checkpoint-sheet-in}.checkpoint-menu__header{padding:14px 14px 11px 18px}.checkpoint-menu__close,.checkpoint-menu__reset,.checkpoint-menu__confirmation button{min-width:44px;min-height:44px}.checkpoint-menu__body{padding:8px 10px}}@keyframes checkpoint-sheet-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.checkpoint-menu__trigger,.checkpoint-menu__caret{transition:none}.checkpoint-menu__trigger:active{transform:none}.checkpoint-menu__panel{animation:none}}.tutorial-complete{--complete-bg: #07080b;--complete-surface: #0d1016;--complete-line: rgba(255, 255, 255, .09);--complete-text: rgba(255, 255, 255, .95);--complete-muted: rgba(255, 255, 255, .62);--complete-cyan: #6cd6ff;--complete-green: #2ee29a;display:grid;place-items:center;width:100%;min-height:100dvh;padding:clamp(24px,6vw,72px);overflow-y:auto;background:radial-gradient(circle at 50% 8%,rgba(46,226,154,.1),transparent 36%),linear-gradient(180deg,#090b10 0%,var(--complete-bg) 100%);color:var(--complete-text)}.tutorial-complete__panel{width:min(680px,100%);padding:clamp(28px,5vw,52px);border:1px solid var(--complete-line);border-radius:18px;background:#0d1016f0;box-shadow:0 32px 100px #0000006b}.tutorial-complete__mark{width:52px;height:52px;color:var(--complete-green)}.tutorial-complete__mark svg{width:100%;height:100%}.tutorial-complete__mark circle,.tutorial-complete__mark path{stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@keyframes tutorial-complete-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.tutorial-complete__mark,.tutorial-complete__eyebrow,.tutorial-complete h1,.tutorial-complete__summary,.tutorial-complete__persistence,.tutorial-complete__forward,.tutorial-complete__actions{animation:tutorial-complete-rise .52s cubic-bezier(.2,.7,.3,1) both}.tutorial-complete__mark{animation-delay:60ms}.tutorial-complete__eyebrow{animation-delay:.17s}.tutorial-complete h1{animation-delay:.25s}.tutorial-complete__summary{animation-delay:.33s}.tutorial-complete__persistence{animation-delay:.39s}.tutorial-complete__forward{animation-delay:.47s}.tutorial-complete__actions{animation-delay:.54s}.tutorial-complete__mark circle{stroke-dasharray:1;stroke-dashoffset:1;animation:tutorial-complete-draw .64s ease-out .26s forwards}.tutorial-complete__mark path{stroke-dasharray:1;stroke-dashoffset:1;animation:tutorial-complete-draw .46s ease-out .64s forwards}@keyframes tutorial-complete-draw{to{stroke-dashoffset:0}}.tutorial-complete__eyebrow{margin:22px 0 8px;color:var(--complete-green);font:700 11px/1.2 var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);letter-spacing:.18em;text-transform:uppercase}.tutorial-complete h1{margin:0;font-size:clamp(36px,7vw,62px);font-weight:600;letter-spacing:-.04em;line-height:1}.tutorial-complete__summary{max-width:540px;margin:18px 0 0;color:var(--complete-muted);font-size:16px;line-height:1.55}.tutorial-complete__persistence{margin:12px 0 0;color:#ffffff6b;font:600 11px/1.3 var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);letter-spacing:.1em;text-transform:uppercase}.tutorial-complete__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.tutorial-complete__actions button,.tutorial-complete__confirm button{min-height:44px;padding:0 16px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0a;color:var(--complete-text);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.tutorial-complete__actions button:hover,.tutorial-complete__confirm button:hover{border-color:#6cd6ff70;background:#6cd6ff14}.tutorial-complete__actions button:focus-visible,.tutorial-complete__confirm button:focus-visible,.tutorial-complete__confirm h2:focus-visible{outline:2px solid var(--complete-cyan);outline-offset:3px}.tutorial-complete__actions .tutorial-complete__primary{border-color:var(--complete-green);background:var(--complete-green);color:#06110d}.tutorial-complete__forward{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.tutorial-complete__cta{min-height:46px;padding:0 20px;border-radius:9px;border:1px solid transparent;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.tutorial-complete__cta:focus-visible{outline:2px solid var(--complete-cyan);outline-offset:3px}.tutorial-complete__cta--primary{border-color:var(--complete-green);background:var(--complete-green);color:#06110d}.tutorial-complete__cta--primary:hover{filter:brightness(1.06)}.tutorial-complete__cta--secondary{border-color:#6cd6ff80;background:#6cd6ff14;color:var(--complete-text)}.tutorial-complete__cta--secondary:hover{border-color:#6cd6ffd9;background:#6cd6ff24}.tutorial-complete__actions{margin-top:14px}.tutorial-complete__actions button{font-size:12px;opacity:.86}.tutorial-complete__confirm{margin-top:18px;padding:18px;border:1px solid rgba(255,191,77,.34);border-radius:10px;background:#ffbf4d0f}.tutorial-complete__confirm h2{margin:0;font-size:17px}.tutorial-complete__confirm p{margin:7px 0 14px;color:var(--complete-muted);font-size:13px;line-height:1.45}.tutorial-complete__confirm>div{display:flex;gap:8px}.tutorial-complete__confirm .tutorial-complete__confirm-restart{border-color:#ff65798a;color:#ff9dab}.tutorial-complete__review{margin-top:24px;border-top:1px solid var(--complete-line);padding-top:22px}.tutorial-complete__review-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px}.tutorial-complete__review-heading p{margin:0 0 3px;color:var(--complete-cyan);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.tutorial-complete__review-heading h2{margin:0;font-size:18px}.tutorial-complete__review-heading>span{color:var(--complete-muted);font:600 12px/1 var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace)}.tutorial-complete__review-scroll{max-height:min(46vh,460px);overflow-y:auto;overscroll-behavior:contain;padding-right:4px}.tutorial-complete__confetti{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:4}.tutorial-complete__confetti-piece{position:absolute;top:-18px;width:8px;height:13px;border-radius:2px;opacity:0;will-change:transform,opacity;animation-name:tutorial-complete-confetti-fall;animation-timing-function:cubic-bezier(.25,.6,.4,1);animation-iteration-count:1;animation-fill-mode:forwards}@keyframes tutorial-complete-confetti-fall{0%{transform:translateY(-18px) rotate(0);opacity:0}10%{opacity:.95}85%{opacity:.9}to{transform:translateY(102vh) rotate(520deg);opacity:0}}@media(prefers-reduced-motion:reduce){.tutorial-complete__confetti{display:none}.tutorial-complete__mark,.tutorial-complete__eyebrow,.tutorial-complete h1,.tutorial-complete__summary,.tutorial-complete__persistence,.tutorial-complete__forward,.tutorial-complete__actions,.tutorial-complete__mark circle,.tutorial-complete__mark path{animation:none;opacity:1;transform:none;stroke-dashoffset:0}}@media(max-width:640px){.tutorial-complete{place-items:start center;padding:18px 12px}.tutorial-complete__panel{padding:26px 18px;border-radius:14px}.tutorial-complete__forward,.tutorial-complete__actions,.tutorial-complete__confirm>div{flex-direction:column}.tutorial-complete__cta,.tutorial-complete__actions button,.tutorial-complete__confirm button{width:100%}.tutorial-complete__review-scroll{max-height:none}}.h7-cutaway{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none}.h7-cutaway__leaders{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.h7-cutaway__leader{fill:none;stroke:#6cd6ff;stroke-width:2;stroke-linejoin:round;opacity:.9}.h7-cutaway__dot{fill:#6cd6ff;opacity:.95}.h7-cutaway__window{position:absolute;top:50%;transform:translateY(-50%);width:min(280px,calc(50% - 40px));padding:12px 13px 13px;border:1px solid rgba(108,214,255,.28);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.065),transparent 38%),#0a0c11e6;box-shadow:0 24px 72px #00000075,inset 0 1px #ffffff12;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);animation:h7-cutaway-in .26s cubic-bezier(.22,1,.36,1) both}.h7-cutaway__window--left{left:max(28px,calc(50% - 520px))}.h7-cutaway__window--right{right:max(28px,calc(50% - 520px))}.h7-cutaway__eyebrow{display:block;margin-bottom:5px;color:var(--tutorial-cyan);font-family:var(--tutorial-label);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.h7-cutaway__text{margin:0;color:var(--tutorial-text);font-family:var(--tutorial-body);font-size:13px;line-height:1.5}.h7-cutaway__schematic{position:absolute;left:50%;bottom:12px;transform:translate(-50%);margin:0;color:var(--tutorial-faint);font-family:var(--tutorial-label);font-size:11px;letter-spacing:.04em}@keyframes h7-cutaway-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.h7-cutaway__window{animation-duration:.16s}}.h7-cutaway__nav{display:flex;gap:6px;margin-top:10px;pointer-events:auto}.h7-cutaway__btn{flex:1;padding:5px 8px;border:1px solid rgba(255,255,255,.22);border-radius:7px;background:transparent;color:#ffffffe6;cursor:pointer;font-family:var(--tutorial-label);font-size:11px}.h7-cutaway__btn[disabled]{opacity:.35;cursor:default}.h7-cutaway__btn--go{flex:2;border-color:var(--tutorial-cyan);background:var(--tutorial-cyan);color:#05121a;font-weight:600}.h7-cutaway__window{pointer-events:auto}.h7-tuner{position:absolute;top:64px;right:24px;z-index:40;width:320px;max-height:calc(100vh - 120px);overflow-y:auto;padding:12px;border:1px solid rgba(255,191,77,.4);border-radius:12px;background:#0a0c11f5;box-shadow:0 24px 72px #00000080;color:#fffffff0;font-family:var(--tutorial-body, "IBM Plex Sans", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif);font-size:12px;pointer-events:auto}.h7-tuner__head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.h7-tuner__head strong{flex:1}.h7-tuner__dev{padding:1px 5px;border-radius:4px;background:#ffbf4d2e;color:#ffbf4d;font-size:11px;letter-spacing:.08em}.h7-tuner__head button{border:1px solid rgba(255,255,255,.2);border-radius:6px;background:transparent;color:inherit;cursor:pointer;padding:2px 7px}.h7-tuner__poses{display:flex;gap:6px;margin-bottom:6px}.h7-tuner__poses button{flex:1;padding:5px 6px;border:1px solid rgba(255,255,255,.18);border-radius:6px;background:transparent;color:inherit;cursor:pointer}.h7-tuner__poses button.is-active{border-color:#ffbf4d;color:#ffbf4d}.h7-tuner__note{margin:0 0 10px;color:#ffffff80;font-size:11px;line-height:1.4}.h7-tuner__field{display:grid;grid-template-columns:46px 1fr 64px;align-items:center;gap:6px;margin-bottom:5px}.h7-tuner__field span{color:#ffffff9e}.h7-tuner__field input[type=number]{width:100%;padding:2px 4px;border:1px solid rgba(255,255,255,.16);border-radius:4px;background:#0006;color:inherit;font:inherit}.h7-tuner__sub{margin:12px 0 6px;color:#ffffff80;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.h7-tuner__out{width:100%;padding:6px;border:1px solid rgba(255,255,255,.14);border-radius:6px;background:#00000073;color:#ffffffd9;font-family:var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;line-height:1.4;resize:vertical}.h7-tuner__copy{width:100%;margin-top:6px;padding:6px;border:1px solid #ffbf4d;border-radius:6px;background:#ffbf4d1f;color:#ffbf4d;cursor:pointer;font:inherit}.h7-tuner__open{position:absolute;top:64px;right:24px;z-index:40;padding:6px 10px;border:1px solid rgba(255,191,77,.5);border-radius:8px;background:#0a0c11e6;color:#ffbf4d;cursor:pointer;font-family:var(--tutorial-body, "IBM Plex Sans", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif);font-size:11px;pointer-events:auto}.tutorial-insight{--insight-width: min(300px, calc(100% - 56px) );--insight-scene-offset: 22vh;position:absolute;top:max(88px,21%);right:max(28px,calc(50% - var(--insight-scene-offset) - var(--insight-width)));width:var(--insight-width);z-index:3;pointer-events:none}.tutorial-insight--visible:before{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;z-index:-1;border-radius:14px;background:#b79cff85;filter:blur(17px);animation:tutorial-insight-halo 1s cubic-bezier(.22,1,.36,1) both}@keyframes tutorial-insight-halo{0%{opacity:0;transform:scale(.86)}40%{opacity:.5}56%{opacity:1}to{opacity:.55;transform:scale(1)}}.tutorial-insight__panel{position:relative;padding:12px 13px 13px;border:1px solid rgba(183,156,255,.36);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.065),transparent 38%),#0a0c11e6;box-shadow:0 18px 50px #0000006b,0 0 0 1px #0000003d,0 0 26px -8px #b79cffb3,inset 0 1px #ffffff12,inset 0 0 24px -16px #b79cffe6;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.tutorial-insight__panel:before{content:"";position:absolute;top:0;left:14px;right:14px;height:1.5px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--tutorial-insight),transparent);opacity:.8}.tutorial-insight__eyebrow{display:block;margin-bottom:5px;color:var(--tutorial-insight);font-family:var(--tutorial-label);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.tutorial-insight__text{margin:0;color:var(--tutorial-text);font-family:var(--tutorial-body);font-size:13px;line-height:1.5}@media(prefers-reduced-motion:reduce){.tutorial-insight--visible:before{animation:none;opacity:.55}}.tutorial-mt-found{position:static;width:100%;transform-origin:center;transition:transform .42s cubic-bezier(.22,1,.36,1);min-height:168px;display:grid;place-items:center;padding:18px 18px 22px;border:1px solid rgba(34,197,94,.42);border-radius:14px;background:radial-gradient(120% 70% at 50% 35%,rgba(34,197,94,.32),transparent 70%),linear-gradient(180deg,#08100ceb,#040a08f5);box-shadow:0 18px 54px #0000006b,0 0 28px #22c55e52,inset 0 1px #ffffff0f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);overflow:hidden;z-index:100;font-family:var(--tutorial-body, "IBM Plex Sans", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif);animation:tutorial-mt-found-in .48s cubic-bezier(.22,1,.36,1) both}.tutorial-mt-found--center{position:fixed;left:50%;top:44%;width:min(304px,calc(100% - 56px));transform:translate(-50%,-50%) scale(1.15);z-index:120}.tutorial-mt-found--docked{transform:none}@keyframes tutorial-mt-found-in{0%{opacity:0;box-shadow:0 18px 54px #0000,0 0 #22c55e00,inset 0 1px #fff0}60%{opacity:1}to{opacity:1;box-shadow:0 18px 54px #0000006b,0 0 28px #22c55e52,inset 0 1px #ffffff0f}}.tutorial-mt-found__sheen{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.12) 45%,rgba(255,255,255,.22) 50%,rgba(255,255,255,.12) 55%,transparent 100%);transform:translate(-110%);pointer-events:none;animation:tutorial-mt-found-sheen 1.6s ease-out .28s both}@keyframes tutorial-mt-found-sheen{to{transform:translate(110%)}}.tutorial-mt-found__content{position:relative;z-index:2;display:grid;justify-items:center;gap:4px;text-align:center}.tutorial-mt-found__headline{display:block;font-size:18px;font-weight:700;letter-spacing:.01em;line-height:1.1;color:#ecfeff;background:linear-gradient(110deg,#bbf7d0,#fef9c3,#bbf7d0);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 6px rgba(34,197,94,.42)) drop-shadow(0 0 14px rgba(34,197,94,.26));animation:tutorial-mt-found-shimmer 2.4s linear .5s infinite}.tutorial-mt-found__label{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#bbf7d0c7;margin-top:8px}.tutorial-mt-found__sublabel{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#bbf7d09e;margin-top:2px}@keyframes tutorial-mt-found-shimmer{0%{background-position:220% 0}to{background-position:-220% 0}}.tutorial-mt-found__value{margin-top:4px;display:inline-flex;align-items:baseline;gap:2px;font-family:var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:26px;font-weight:700;color:#d1fae5;letter-spacing:-.01em;text-shadow:0 0 6px rgba(34,197,94,.45),0 0 14px rgba(34,197,94,.28);animation:tutorial-mt-found-value-glow 1.6s ease-in-out infinite}.tutorial-mt-found__value small{font-size:11px;font-weight:600;letter-spacing:.04em;color:#d1fae5b8}@keyframes tutorial-mt-found-value-glow{0%,to{text-shadow:0 0 6px rgba(34,197,94,.45),0 0 14px rgba(34,197,94,.28)}50%{text-shadow:0 0 10px rgba(34,197,94,.7),0 0 22px rgba(34,197,94,.45)}}.tutorial-mt-found__sparkles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.tutorial-mt-found__sparkle{position:absolute;width:10px;height:10px;background:linear-gradient(transparent 45%,#fef9c3 45% 55%,transparent 55%),linear-gradient(90deg,transparent 45%,#fef9c3 45% 55%,transparent 55%);filter:drop-shadow(0 0 4px rgba(254,249,195,.72)) drop-shadow(0 0 8px rgba(34,197,94,.52));opacity:0;transform-origin:center;animation:tutorial-mt-found-sparkle 1.6s ease-in-out infinite}.tutorial-mt-found__sparkle--0{top:14%;left:12%;animation-delay:0ms}.tutorial-mt-found__sparkle--1{top:22%;right:14%;animation-delay:.22s}.tutorial-mt-found__sparkle--2{top:38%;left:8%;animation-delay:.46s;width:7px;height:7px}.tutorial-mt-found__sparkle--3{top:56%;right:9%;animation-delay:.1s;width:7px;height:7px}.tutorial-mt-found__sparkle--4{bottom:18%;left:16%;animation-delay:.64s}.tutorial-mt-found__sparkle--5{bottom:24%;right:18%;animation-delay:.32s}.tutorial-mt-found__sparkle--6{top:12%;left:48%;animation-delay:.54s;width:6px;height:6px}.tutorial-mt-found__sparkle--7{bottom:10%;left:44%;animation-delay:.76s;width:8px;height:8px}.tutorial-mt-found__sparkle--8{top:48%;right:38%;animation-delay:.88s;width:5px;height:5px}@keyframes tutorial-mt-found-sparkle{0%,to{opacity:0;transform:scale(.4) rotate(0)}35%{opacity:.95;transform:scale(1.1) rotate(45deg)}65%{opacity:.65;transform:scale(.85) rotate(90deg)}}@media(prefers-reduced-motion:reduce){.tutorial-mt-found{transition:none;animation:none}.tutorial-mt-found__sheen,.tutorial-mt-found__headline,.tutorial-mt-found__value,.tutorial-mt-found__sparkle{animation:none}}.ui-modal{width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:24px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#131820;color:#eff8fb;font-family:Inter,system-ui,sans-serif;overflow:auto;box-shadow:0 18px 60px #00000073}.ui-modal::backdrop{background:#000000bd}.ui-modal h2{margin:0;font-size:1.2rem}.ui-modal p{margin:12px 0;color:#c2ccd5;line-height:1.5}.ui-modal button{min-height:44px;padding:10px 14px;border:1px solid rgba(255,255,255,.24);border-radius:7px;background:#ffffff0d;color:#eff8fb;font:inherit;font-size:13px;cursor:pointer}.ui-modal button:focus-visible,.ui-modal input:focus-visible{outline:2px solid #7be9ff;outline-offset:3px}.ui-modal button:disabled{opacity:.5;cursor:not-allowed}.ui-modal label,.ui-modal input{display:block;width:100%;margin:8px 0}.ui-modal input{border:1px solid #536371;border-radius:7px;padding:10px;background:#0b1016;color:#fff;font:inherit}.ui-modal__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px}.ui-modal__danger{border-color:#e86565!important;background:#a12f36!important;color:#fff!important}.bw-radial-dial{position:relative;display:flex;align-items:center;justify-content:center}.bw-radial-fill{transition:stroke-dashoffset .4s ease}.bw-radial-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.bw-radial-value{font-size:22px;font-weight:700;font-family:SF Mono,JetBrains Mono,monospace;color:#f0f0f5f2;line-height:1}.bw-radial-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#f0f0f559;margin-top:2px}.titration-counting-intro{display:flex;align-items:center;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(143,204,220,.16);font-family:var(--tutorial-body, sans-serif)}.titration-counting-intro p{flex:1;margin:0;font-size:13px;line-height:1.5;color:#c4d4df}.titration-counting-intro p strong{color:#edf6fa;font-weight:600}.titration-counting-intro button{flex-shrink:0;min-height:44px;padding:8px 12px;border:1px solid rgba(109,218,244,.3);border-radius:8px;background:#4ec9e612;color:#8ae6f7;font:inherit;font-size:13px;cursor:pointer}.titration-counting-intro button span{margin-left:8px}.titration-counting-intro button:focus-visible{outline:2px solid #8ae6f7;outline-offset:3px}.ui-modal.titration-demo{width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:26px 28px 20px;border-color:#89b7d03d;border-radius:18px;background:#111b25;color:#edf6fa;font-family:var(--tutorial-body, sans-serif);box-sizing:border-box;overscroll-behavior:contain;animation:titration-demo-enter .18s ease-out}.titration-demo::backdrop{background:#040a11c7}.titration-demo__header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.titration-demo__eyebrow{display:block;margin-bottom:7px;color:#8ae6f7;font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase}.titration-demo h2{font-size:25px;line-height:1.2;font-weight:500;letter-spacing:-.025em}.titration-demo .titration-demo__close{display:grid;place-items:center;min-width:44px;padding:10px;background:transparent;border-color:transparent}.titration-demo .titration-demo__intro{margin:14px 0 20px;color:#bacbd7;font-size:14px}.titration-demo__intro strong{color:#edf6fa;font-weight:500}.titration-demo__examples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;gap:4px;border-radius:10px;background:#0a121b}.titration-demo__examples button{padding:8px 6px;border-color:transparent;background:transparent;font-size:13px}.titration-demo__examples button[aria-pressed=true]{background:#223745;border-color:#395968;color:#a1edfa}.titration-demo__stage{display:grid;grid-template-columns:136px 64px minmax(0,1fr);align-items:center;justify-content:center;gap:20px;height:174px;margin:4px 24px}.titration-demo__dial{position:relative}.titration-demo__dial-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.titration-demo__dial-text strong{font-size:19px;font-weight:500}.titration-demo__dial-text span{color:#9bb4c6;font-size:11px;letter-spacing:.07em;text-transform:uppercase}.titration-demo__signal{color:#587687;text-align:center;transition:color .16s ease}.titration-demo__signal svg{width:100%;height:28px;fill:none;stroke:currentColor;stroke-width:2}.titration-demo__signal span{font-size:11px}.titration-demo__signal--active{color:#91edff}.titration-demo__hand{height:165px;min-width:0;position:relative}.titration-demo__hand-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#b6cad8;font-size:12px}.titration-demo .titration-demo__hand-fallback{display:grid;place-items:center;height:100%;margin:0;color:#b6cad8;font-size:12px}.titration-demo__status{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;font-size:13px;color:#bacbd7;font-variant-numeric:tabular-nums}.titration-demo__response{display:flex;flex-direction:column;gap:2px;color:#edf6fa}.titration-demo__response strong{color:#8ae6f7;font-size:12px;font-weight:500}.titration-demo__count{font-size:22px;color:#edf6fa;font-weight:500}.titration-demo__tally{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));list-style:none;gap:8px;margin:12px 0 0;padding:0}.titration-demo__tally li{display:flex;flex-direction:column;align-items:center;gap:5px;font-family:var(--tutorial-mono, monospace)}.titration-demo__tally li>span{display:grid;place-items:center;width:100%;aspect-ratio:1;max-width:38px;border:1px solid #334d5f;border-radius:50%;color:#91a7b7;font-size:15px}.titration-demo__tally small{font-size:11px;color:#9bb4c6}.titration-demo__tally li.is-hit>span{background:#254853;border-color:#73cedf;color:#b7f3ff}.titration-demo__tally li.is-miss>span{background:#1b2833;border-color:#708594;color:#c2d0db}.titration-demo__legend{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;margin:17px 0 20px;color:#bacbd7;font-size:12px}.titration-demo__legend b{margin-left:4px;color:#8ae6f7;font-weight:500}.titration-demo__legend span:last-child b{color:#bacbd7}.titration-demo__controls{display:flex;gap:8px}.titration-demo__controls button{min-width:88px}.titration-demo .titration-demo__pulse{background:#8ae6f7;color:#102431;border-color:#8ae6f7;font-weight:600}.titration-demo__controls button:last-child{margin-left:auto;background:transparent;border-color:transparent;color:#bacbd7}.titration-demo__interpretation{border-top:1px solid #2a3e4d;margin-top:20px;padding-top:17px}.titration-demo__interpretation>strong{font-weight:500;font-size:15px}.titration-demo__interpretation p{min-height:42px;margin:6px 0 0;font-size:14px}.titration-demo .titration-demo__note{margin:14px 0 0;color:#91a9ba;font-size:11px}.titration-demo button{transition:background-color .15s ease,transform .15s ease;touch-action:manipulation}.titration-demo button:active:not(:disabled),.titration-counting-intro button:active{transform:scale(.97)}@media(hover:hover)and (pointer:fine){.titration-demo button:hover:not(:disabled){background-color:#2a4352}.titration-demo .titration-demo__pulse:hover:not(:disabled){background-color:#b1f1ff}.titration-counting-intro button:hover{background:#4ec9e626}}@media(max-width:520px){.titration-counting-intro{flex-wrap:wrap;gap:8px}.titration-counting-intro p{flex-basis:100%}.ui-modal.titration-demo{padding:20px 18px 18px}.titration-demo h2{font-size:23px}.titration-demo__stage{grid-template-columns:112px 36px minmax(0,1fr);gap:8px;height:150px;margin:4px 0}.titration-demo__dial{width:112px;height:112px}.titration-demo__dial .bw-radial-dial{transform:scale(.8235);transform-origin:top left}.titration-demo__dial-text strong{font-size:16px}.titration-demo__hand{height:145px}.titration-demo__tally{gap:5px}.titration-demo__status{font-size:12px}.titration-demo__legend{display:grid;grid-template-columns:repeat(2,1fr)}.titration-demo__controls button{min-width:0;flex:1}}@keyframes titration-demo-enter{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.ui-modal.titration-demo{animation:none}.titration-demo *,.titration-counting-intro button{transition:none!important}.titration-demo button:active:not(:disabled),.titration-counting-intro button:active{transform:none}}.section-recap{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;z-index:40;pointer-events:auto}.section-recap__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#050608c7;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.section-recap__panel{position:relative;width:min(560px,100%);max-height:100%;overflow-y:auto;display:flex;flex-direction:column;gap:20px;padding:32px;border-radius:18px;background:#0d1016;border:1px solid rgba(255,255,255,.08);box-shadow:0 24px 64px #0000008c}.section-recap__panel:focus,.section-recap__panel:focus-visible{outline:none}.section-recap__header{display:flex;flex-direction:column;gap:6px}.section-recap__check{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1.5px solid #34d399;color:#34d399;font-size:20px;margin-bottom:6px}.section-recap__check--animate{animation:section-recap-check .42s ease-out both}@keyframes section-recap-check{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.section-recap__eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#34d399}.section-recap__title{margin:0;font-size:30px;line-height:1.1;color:#f4f6fa}.section-recap__count{margin:0;font-size:13px;color:#f4f6fa8c}.section-recap__takeaways{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:10px;color:#f4f6fadb;font-size:15px;line-height:1.5}.section-recap__unlocks{display:flex;flex-direction:column;gap:10px;padding-top:18px;border-top:1px solid rgba(255,255,255,.07)}.section-recap__unlocks-label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#f4f6fa73}.section-recap__unlock-row{display:flex;flex-wrap:wrap;gap:10px}.section-recap__unlock{flex:1 1 auto;min-width:0;padding:11px 16px;border-radius:10px;background:#151a23;border:1px solid rgba(255,255,255,.1);color:#f4f6fa;font-size:14px;cursor:pointer}.section-recap__unlock:hover{background:#1b212c;border-color:#ffffff2e}.section-recap__unlock-note{margin:0;font-size:14px;color:#f4f6fab3}.section-recap__primary{padding:14px 20px;border-radius:10px;border:none;background:#34d399;color:#06251a;font-size:15px;font-weight:600;cursor:pointer}.section-recap__primary:hover{background:#4ade9f}.section-recap__secondary{display:flex;gap:18px}.section-recap__link{background:none;border:none;padding:0;color:#f4f6fa8c;font-size:13px;cursor:pointer}.section-recap__link:hover{color:#f4f6fad9}@media(prefers-reduced-motion:reduce){.section-recap__check--animate{animation:none}}.tutorial-scene-shell{--tutorial-bg: rgba(7, 9, 13, .74);--tutorial-bg-strong: rgba(10, 12, 17, .88);--tutorial-line: rgba(255, 255, 255, .11);--tutorial-line-cyan: rgba(108, 214, 255, .28);--tutorial-text: rgba(255, 255, 255, .94);--tutorial-muted: rgba(255, 255, 255, .62);--tutorial-faint: rgba(255, 255, 255, .5);--tutorial-cyan: #6cd6ff;--tutorial-ready: #20d68b;--tutorial-warn: #ffbf4d;--tutorial-danger: #ff6579;--tutorial-insight: #b79cff;position:absolute;top:0;right:0;bottom:0;left:0;z-index:150;color:var(--tutorial-text);font-family:var(--tutorial-ui);font-optical-sizing:auto;text-rendering:optimizeLegibility;pointer-events:none}.tutorial-scene-shell button{font:inherit}.tutorial-scene-progress{position:absolute;top:16px;left:50%;z-index:41;width:min(720px,calc(100% - 72px));max-width:calc(100% - 72px);height:11px;padding:3px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent),#00000047;box-shadow:0 10px 30px #00000038,inset 0 1px #ffffff0d;transform:translate(-50%);pointer-events:none;overflow:visible}.tutorial-scene-progress__fill{position:absolute;top:3px;bottom:3px;left:3px;width:max(8px,calc(var(--tutorial-progress, 0%) - 6px));border-radius:999px;background:linear-gradient(90deg,#20d68b,#6cd6ff 68%,#f7f2b2);box-shadow:0 0 18px #6cd6ff61,0 0 34px #20d68b2e;transition:width .26s ease-out}.tutorial-scene-progress__flare{position:absolute;top:50%;left:clamp(8px,calc(var(--tutorial-progress, 0%) - 3px),calc(100% - 8px));width:0;height:0;border-radius:999px;background:transparent;box-shadow:none;transform:translate(-50%,-50%);transition:left .26s ease-out}.tutorial-scene-progress__flare:before,.tutorial-scene-progress__flare:after{content:"";position:absolute;left:3px;top:50%;width:3px;height:3px;border-radius:50%;background:#fffbd0;box-shadow:5px -6px #ffffffeb,8px -1px #6cd6ffd1,6px 5px #fffbd0c7;opacity:0;transform:translateY(-50%) scale(.72);animation:tutorial-progress-spark .82s ease-out infinite}.tutorial-scene-progress__flare:after{width:2px;height:2px;box-shadow:4px 4px #ffffffdb,8px -4px #f7f2b2cc,11px 2px #6cd6ffb3;animation-delay:.26s}.tutorial-checkpoint-notice{position:absolute;top:58px;right:24px;z-index:5;display:grid;width:min(260px,calc(100% - 48px));padding:10px 12px;border:1px solid rgba(32,214,139,.34);border-radius:10px;background:#070f12f0;box-shadow:0 16px 42px #0000006b;color:#ffffffeb;opacity:0;transform:translateY(-5px);transition:opacity .15s ease-out,transform .15s ease-out;pointer-events:none}.tutorial-checkpoint-notice--visible{opacity:1;transform:translateY(0)}.tutorial-checkpoint-notice strong{color:var(--tutorial-ready);font-size:12px;font-weight:700}.tutorial-checkpoint-notice span{margin-top:2px;font-size:12px;line-height:1.35}.tutorial-checkpoint-notice small{margin-top:3px;color:var(--tutorial-muted);font-size:11px}.tutorial-left-stack{position:absolute;top:16px;left:-44px;z-index:3;display:grid;justify-items:start;gap:9px;width:calc(min(304px,100% - 56px) + 144px);padding:48px 72px 96px;pointer-events:none;max-height:calc(100% - 48px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.tutorial-left-stack::-webkit-scrollbar{display:none}.tutorial-mission-card{position:absolute;top:64px;left:28px;z-index:3;width:min(304px,calc(100% - 56px));min-height:0;padding:10px 11px 11px;border:1px solid rgba(108,214,255,.24);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.065),transparent 38%),#0a0c11e6;box-shadow:0 24px 72px #00000075,0 0 0 1px #0000003d,inset 0 1px #ffffff12;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);pointer-events:auto;overflow:hidden;transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease;animation:tutorial-card-enter .26s ease-out both}.tutorial-left-stack .tutorial-mission-card{position:relative;top:auto;left:auto;z-index:auto;width:100%;pointer-events:auto}.tutorial-mission-card--complete{border-color:#20d68b57;box-shadow:0 20px 64px #0000006b,0 0 28px #20d68b1f,inset 0 1px #ffffff0d}.tutorial-mission-card__unlock-flash{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgba(32,214,139,.58);border-radius:inherit;background:#20d68b14;opacity:0;pointer-events:none;animation:tutorial-unlock-flash .7s ease-out}.tutorial-mission-card__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.tutorial-mission-card__header{margin-bottom:7px}.tutorial-mission-card__header--counter-only{justify-content:flex-end;margin-bottom:4px}.tutorial-mission-card__header span,.tutorial-mission-card__header strong,.tutorial-mission-card__detail,.tutorial-mission-card__review span,.tutorial-machine__readout span,.tutorial-machine__counter span,.tutorial-response-log__score span{font-family:var(--tutorial-label);text-transform:uppercase}.tutorial-mission-card__header span{color:var(--tutorial-cyan);font-size:11px;font-weight:700;letter-spacing:.14em}.tutorial-mission-card__header strong{color:var(--tutorial-faint);font-size:11px;font-weight:700;letter-spacing:.08em;font-variant-numeric:tabular-nums}.tutorial-mission-card__sr-title{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tutorial-mission-card p{margin:0}.tutorial-message-text{color:var(--tutorial-text);padding:5px 0 7px;font-size:13.25px;line-height:1.5;font-family:var(--tutorial-body);font-weight:400;letter-spacing:0;text-wrap:pretty}.tutorial-dose-math{display:flex;flex-direction:column;gap:8px;margin:4px 0 2px}.tutorial-dose-math__row{display:flex;align-items:flex-start;justify-content:center;gap:7px;min-height:48px}.tutorial-dose-math__sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tutorial-dose-math__token{position:fixed;z-index:400;padding:4px 8px;border-radius:7px;background:#06202af5;border:1px solid rgba(0,229,255,.6);box-shadow:0 0 18px #00e5ff66;font-family:var(--tutorial-mono);font-size:14px;font-weight:700;color:#aae8fffc;white-space:nowrap;pointer-events:none;will-change:transform,opacity}.tutorial-dose-math__term,.tutorial-dose-math__op{opacity:0;transform:translate(20px);transition:opacity .26s ease-out,transform .32s cubic-bezier(.2,.85,.25,1)}.tutorial-dose-math__term.is-in,.tutorial-dose-math__op.is-in{opacity:1;transform:none}.tutorial-dose-math__term{display:flex;flex-direction:column;align-items:center;gap:2px;padding:5px 8px;border-radius:7px;background:#00e5ff12;border:1px solid rgba(0,229,255,.28)}.tutorial-dose-math__value{font-family:var(--tutorial-mono);font-size:16px;font-weight:700;color:#a0e2fffa;white-space:nowrap}.tutorial-dose-math__value em{font-style:normal;font-size:11px;font-weight:600;margin-left:2px;opacity:.72}.tutorial-dose-math__label{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#bed6e89e}.tutorial-dose-math__op{font-family:var(--tutorial-mono);font-size:15px;font-weight:700;color:#bed6e8bf;padding-top:7px}.tutorial-dose-math__term--power{background:#00e5ff21;border-color:#00e5ff80}.tutorial-dose-math__term--power.is-delivered{animation:tutorial-dose-math-deliver .7s cubic-bezier(.3,0,.2,1)}@keyframes tutorial-dose-math-deliver{0%{transform:translate(0);box-shadow:0 0 #00e5ff00}45%{transform:translate(9px);box-shadow:0 0 22px 2px #00e5ff73}to{transform:translate(0);box-shadow:0 0 #00e5ff00}}.tutorial-dose-math__replay{align-self:center;padding:3px 10px;border-radius:999px;border:1px solid rgba(108,214,255,.3);background:transparent;color:#a0c8e2d9;font-family:var(--tutorial-body);font-size:11px;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:border-color .16s ease,color .16s ease}.tutorial-dose-math__replay:hover{border-color:#6cd6ff99;color:#c8e6fafa}@media(prefers-reduced-motion:reduce){.tutorial-dose-math__term,.tutorial-dose-math__op{transition:none}.tutorial-dose-math__term--power.is-delivered{animation:none}}.tutorial-message-emphasis{color:#7dc8fffa;font-weight:700}.tutorial-message-accent{color:#ffde9ef2;font-weight:700}.tutorial-mission-card>p{color:var(--tutorial-text);padding:5px 0 7px;font-size:13.25px;line-height:1.5;font-family:var(--tutorial-body);font-weight:400;letter-spacing:0;text-wrap:pretty}.tutorial-mission-card__detail{margin-top:12px;padding:8px 9px;border-left:2px solid rgba(108,214,255,.5);background:#6cd6ff12;color:#ffffffa8;font-size:11px;font-weight:700;line-height:1.45;letter-spacing:0;text-transform:none}.tutorial-mission-card__review{margin-top:10px;padding:8px 9px;border-left:2px solid rgba(32,214,139,.64);background:#20d68b14;animation:tutorial-review-in .22s ease-out both}.tutorial-mission-card__review span{display:block;color:var(--tutorial-ready);font-size:11px;font-weight:700;letter-spacing:.12em}.tutorial-mission-card__review p{margin-top:4px;color:#ffffffb3;font-size:11px;line-height:1.42}.tutorial-mission-card__action{margin-top:10px}.tutorial-mission-card__detail{margin:6px 0 0;padding:6px 8px;border-radius:6px;background:#6cd6ff0d;border:1px solid rgba(108,214,255,.1);color:#dcf0ffd1;font-family:var(--tutorial-mono);font-size:11px;letter-spacing:.02em;line-height:1.35}.tutorial-mission-card__protocol-hint{margin:4px 0 0;color:#dcf0ffb8;font-size:12px;line-height:1.4}.tutorial-mission-card{transition:top .32s cubic-bezier(.4,0,.2,1),left .32s cubic-bezier(.4,0,.2,1),right .32s cubic-bezier(.4,0,.2,1),width .32s cubic-bezier(.4,0,.2,1),padding .22s ease,border-radius .22s ease}.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour{position:fixed;top:130px;left:auto;right:460px;width:230px;padding:9px 11px;pointer-events:auto;border-color:#6cd6ff52}.tutorial-mission-card--tour:after{content:"";position:absolute;top:28px;right:-58px;width:58px;height:1px;background:linear-gradient(90deg,#6cd6ffa6,#6cd6ff00);pointer-events:none}.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-frequency,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-mt{top:130px}.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-intensity{top:198px}.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-iti,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-total{top:260px}.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-math{top:186px;width:286px}.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-ready{top:400px;width:320px;padding:16px 18px}.tutorial-mission-card--tour-ready:after{display:none}.tutorial-mission-card--tour-ready .tutorial-message-text{font-size:15px;line-height:1.5}.tutorial-mission-card--tour-ready .tutorial-mission-card__header span{font-size:13px}.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-start{top:544px;animation:tutorial-tour-start-glow 1.5s ease-in-out infinite}@keyframes tutorial-tour-start-glow{0%{box-shadow:0 24px 72px #00000075,0 0 #6cd6ff80,0 0 18px #6cd6ff4d}50%{box-shadow:0 24px 72px #00000075,0 0 0 6px #6cd6ff00,0 0 26px #6cd6ff80}to{box-shadow:0 24px 72px #00000075,0 0 #6cd6ff00,0 0 18px #6cd6ff4d}}@media(prefers-reduced-motion:reduce){.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-start{animation:none}}@media(max-width:820px){.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-frequency,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-mt,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-intensity,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-math,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-iti,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-total,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-ready,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-start{top:58px;left:10px;right:auto;width:min(320px,calc(100% - 20px));padding:12px 14px}.tutorial-mission-card--tour:after{display:none}}@media(min-width:641px)and (max-width:820px){.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-frequency,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-mt,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-intensity,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-math,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-iti,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-total,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-ready,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--tour-start{width:min(320px,calc(100% - 360px))}}.tutorial-treatment-panel--start-attention .btn-session-start{animation:tutorial-session-start-pulse 1.5s ease-in-out infinite;box-shadow:0 0 #20d68b80,0 0 18px #20d68b52}@keyframes tutorial-session-start-pulse{0%{box-shadow:0 0 #20d68b80,0 0 16px #20d68b4d}50%{box-shadow:0 0 0 8px #20d68b00,0 0 26px #20d68b80}to{box-shadow:0 0 #20d68b00,0 0 16px #20d68b4d}}@media(prefers-reduced-motion:reduce){.tutorial-treatment-panel--start-attention .btn-session-start{animation:none}}.tutorial-mission-card--tour .tutorial-mission-card__nav{gap:4px;margin-top:7px}.tutorial-mission-card--tour .tutorial-nav-button{display:inline-flex;align-items:center;font-size:11px;letter-spacing:.04em;min-height:24px}.tutorial-mission-card--tour .tutorial-message-text{font-size:12px;line-height:1.4}.tutorial-mission-card--tour .tutorial-mission-card__header{font-size:11px}.tutorial-mission-card__nav{display:grid;grid-template-columns:auto minmax(92px,1fr);gap:7px;margin-top:9px}.tutorial-machine-drawer{margin-top:10px;padding-top:10px;border-top:1px solid rgba(108,214,255,.12);transform-origin:top center;max-height:640px;overflow:hidden;transition:opacity .22s ease,filter .22s ease,transform .28s cubic-bezier(.4,0,.2,1),max-height .28s cubic-bezier(.4,0,.2,1),margin-top .28s cubic-bezier(.4,0,.2,1),padding-top .28s cubic-bezier(.4,0,.2,1),border-top-color .22s ease;animation:tutorial-machine-drawer-open .26s cubic-bezier(.16,1,.3,1) both}.tutorial-machine-drawer--active{opacity:1;filter:none}.tutorial-machine-drawer--standby{opacity:.5;filter:saturate(.58) brightness(.86)}.tutorial-machine-drawer--standby .tutorial-machine{pointer-events:none}.tutorial-machine-drawer--retracted{opacity:0;transform:translateY(14px) scaleY(.94);max-height:0;margin-top:0;padding-top:0;border-top-color:transparent;pointer-events:none;animation:none}@media(prefers-reduced-motion:reduce){.tutorial-machine-drawer{transition:opacity .12s linear;animation:none}.tutorial-machine-drawer--retracted{transform:none}}@keyframes tutorial-machine-drawer-open{0%{opacity:0;transform:translateY(-8px) scaleY(.96)}to{opacity:1;transform:translateY(0) scaleY(1)}}.tutorial-nav-button,.tutorial-primary-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;border:1px solid rgba(255,255,255,.12);border-radius:5px;background:#ffffff0d;color:#ffffffc2;font-size:12px;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.tutorial-nav-button{min-width:64px;padding:0 10px}.tutorial-nav-button--primary{position:relative}.tutorial-nav-button:hover:not(:disabled),.tutorial-primary-action:hover:not(:disabled){color:#fffffff0;border-color:#fff3;background:#ffffff14}.tutorial-nav-button--primary:hover:not(:disabled),.tutorial-primary-action:hover:not(:disabled){background:#9be4ff;border-color:#9be4ff;color:#02161c;box-shadow:0 0 #6cd6ff8c,0 0 22px #6cd6ff8c}.tutorial-nav-button:active:not(:disabled),.tutorial-primary-action:active:not(:disabled){transform:translateY(1px)}.tutorial-nav-button--primary,.tutorial-primary-action{border-color:var(--tutorial-cyan);background:var(--tutorial-cyan);color:#061014}.tutorial-nav-button--ready:not(:disabled){animation:tutorial-continue-pulse 1.5s ease-in-out infinite;box-shadow:0 0 #6cd6ff7a,0 0 18px #6cd6ff4d}.tutorial-nav-button--lock-hotspot,.tutorial-nav-button--lock-hotspot:not(:disabled){background:var(--tutorial-warn);border-color:var(--tutorial-warn);color:#1a0f00;animation:tutorial-lock-hotspot-pulse 1.5s ease-in-out infinite;box-shadow:0 0 #ffbf4d80,0 0 18px #ffbf4d52}.tutorial-nav-button--lock-hotspot:hover:not(:disabled){background:#ffd47a;border-color:#ffd47a;color:#1a0f00;box-shadow:0 0 #ffbf4d8c,0 0 22px #ffbf4d8c}@keyframes tutorial-lock-hotspot-pulse{0%{box-shadow:0 0 #ffbf4d80,0 0 16px #ffbf4d4d}50%{box-shadow:0 0 0 8px #ffbf4d00,0 0 26px #ffbf4d80}to{box-shadow:0 0 #ffbf4d00,0 0 16px #ffbf4d4d}}.tutorial-primary-action--secondary{border-color:#ffffff24;background:#ffffff12;color:#ffffffc7}.tutorial-pulse-button--attention:not(:disabled){animation:tutorial-pulse-button-attention 1.3s ease-in-out infinite;box-shadow:0 0 #6cd6ff7a,0 0 20px #6cd6ff52}.tutorial-nav-button:disabled,.tutorial-primary-action:disabled{opacity:.42;cursor:not-allowed}.tutorial-nav-button--gated,.tutorial-nav-button--gated:disabled{opacity:1;border:1px dashed rgba(255,255,255,.24);background:#ffffff0e;color:#ffffffb8;cursor:not-allowed;box-shadow:none;animation:none}.tutorial-inline-hint{display:flex;gap:8px;align-items:flex-start;margin:2px 0 10px;padding:9px 12px 10px;border:1px solid rgba(108,214,255,.28);border-radius:10px;background:#6cd6ff0f;box-shadow:inset 0 1px #ffffff0a;animation:tutorial-inline-hint-in .2s ease-out both}.tutorial-inline-hint--after-console{margin:10px 0 2px;animation-name:tutorial-inline-hint-in-below}.tutorial-inline-hint--after-console.tutorial-inline-hint--amber{animation-name:tutorial-inline-hint-in-below,tutorial-inline-hint-glow-amber}@keyframes tutorial-inline-hint-in-below{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.tutorial-inline-hint__icon{flex:0 0 auto;display:inline-flex;margin-top:1px;color:var(--tutorial-cyan)}.tutorial-inline-hint--amber{border-color:#fbbf246b;background:#fbbf2412;animation:tutorial-inline-hint-in .2s ease-out both,tutorial-inline-hint-glow-amber 1.5s ease-in-out 0s infinite}.tutorial-inline-hint--amber .tutorial-inline-hint__icon{color:#fbbf24}@keyframes tutorial-inline-hint-glow-amber{0%,to{box-shadow:inset 0 1px #ffffff0a,0 0 0 4px #fbbf2400,0 0 18px 3px #fbbf2400}50%{box-shadow:inset 0 1px #ffffff0a,0 0 0 4px #fbbf241f,0 0 18px 3px #fbbf2447}}@media(prefers-reduced-motion:reduce){.tutorial-inline-hint--amber{animation:none}}.tutorial-inline-hint--run-ten{border-color:#c084fc6b;background:#a855f717}.tutorial-inline-hint--run-ten .tutorial-inline-hint__icon{color:#c084fc}.tutorial-inline-hint__icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.tutorial-inline-hint p{margin:0;color:#ffffffd1;font-family:var(--tutorial-body);font-size:12px;font-weight:400;line-height:1.45}@keyframes tutorial-inline-hint-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.tutorial-inline-hint,.tutorial-inline-hint--after-console.tutorial-inline-hint--amber{animation:none}}.tutorial-inline-key{display:inline-grid;place-items:center;min-width:42px;height:20px;margin:0 2px;padding:0 8px;vertical-align:baseline;transform:translateY(2px);border:1px solid rgba(255,255,255,.18);border-radius:5px;background:#ffffff12;color:#f0f0f5eb;font-family:var(--tutorial-label);font-size:11px;font-weight:700;box-shadow:0 3px 9px #00000038,inset 0 1px #ffffff14}.tutorial-key-hints{justify-self:center;display:grid;grid-template-columns:repeat(3,minmax(32px,1fr));justify-items:center;gap:6px;width:max-content;margin-top:18px;padding:7px;border:1px solid rgba(108,214,255,.14);border-radius:10px;background:#080a0ec7;box-shadow:0 16px 42px #00000057,inset 0 1px #ffffff0f;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);pointer-events:none;animation:tutorial-key-guide-pop .22s ease-out both}.tutorial-key-hints--y{grid-template-columns:32px;justify-items:center}.tutorial-key-hints--tilt{grid-template-columns:repeat(2,32px)}.tutorial-key-hints__caption{justify-self:center;font-family:var(--tutorial-body);font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:#ffffff9e}.tutorial-key-hints span{display:grid;place-items:center;width:32px;height:30px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:#fff1;color:#ffffffd1;font-family:var(--tutorial-label);font-size:13px;font-weight:700;box-shadow:0 4px 12px #00000038,inset 0 1px #ffffff14;animation:tutorial-key-guide-pulse 1.55s ease-in-out infinite}.tutorial-key-hints span:nth-child(2){animation-delay:60ms}.tutorial-key-hints span:nth-child(4){animation-delay:.19s}.tutorial-key-hints span:nth-child(5){animation-delay:.32s}.tutorial-key-hints .tutorial-key-hints__line{grid-column:1 / -1;width:auto;height:auto;margin-top:4px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;animation:none;color:var(--tutorial-muted);font-size:11px;font-weight:500;letter-spacing:.02em;text-align:center;white-space:nowrap}.tutorial-key-hints span:nth-child(6){animation-delay:.45s}.tutorial-key-hints__spacer{opacity:0;border-color:transparent;background:transparent;box-shadow:none;animation:none}.tutorial-helmet-button-3d{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid rgba(0,229,255,.55);border-radius:999px;background:#080a0ee6;color:#eaf9ff;font-family:var(--tutorial-label);font-size:13px;font-weight:700;letter-spacing:.02em;white-space:nowrap;cursor:pointer;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 10px 30px #00000080,inset 0 1px #ffffff1f;transition:transform .16s ease,box-shadow .22s ease,background-color .2s ease;animation:tutorial-helmet-button-pulse 1.5s ease-in-out infinite}.tutorial-helmet-button-3d:hover{background:#10161ef2;transform:translateY(-1px)}.tutorial-helmet-button-3d:active{transform:translateY(1px)}.tutorial-helmet-button-3d__arrow{font-size:16px;line-height:1;color:#00e5ff}@keyframes tutorial-helmet-button-pulse{0%,to{box-shadow:0 10px 30px #00000080,0 0 14px #00e5ff4d,inset 0 1px #ffffff1f}50%{box-shadow:0 10px 30px #00000080,0 0 26px #00e5ff99,inset 0 1px #ffffff1f}}.tutorial-press-cue{position:fixed;top:22%;left:50%;transform:translate(-50%);z-index:9000;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;border:1px solid rgba(0,229,255,.5);border-radius:10px;background:#080a0edb;color:#00e5fff2;font-family:var(--tutorial-body, "IBM Plex Sans", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 12px 30px #0000006b,0 0 26px #00e5ff38;pointer-events:none;animation:tutorial-press-cue-pop .9s ease-out forwards}.tutorial-press-cue__arrow{font-size:22px;line-height:1;color:#00e5ff}@keyframes tutorial-press-cue-pop{0%{opacity:0;transform:translate(-50%,-16px) scale(.92)}18%{opacity:1;transform:translate(-50%) scale(1)}72%{opacity:1;transform:translate(-50%,28px) scale(1)}to{opacity:0;transform:translate(-50%,36px) scale(.96)}}.tutorial-charge-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 14px;border-radius:5px;border:1px solid rgba(255,184,0,.55);background:#ffb80029;color:#ffde9ef2;font-size:12px;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .16s ease}.tutorial-charge-action:hover:not(:disabled){background:#ffb80047;border-color:#ffb800d9;color:#fff}.tutorial-charge-action:active:not(:disabled){transform:translateY(1px)}.tutorial-charge-action:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.tutorial-charge-action--charged{background:#ffb80080;border-color:#ffb800f2;color:#fff;box-shadow:0 0 14px #ffb8008c,0 2px 6px #0000004d}.tutorial-charge-action--ready{animation:tutorial-charge-ready-pulse 1.4s ease-in-out infinite}.tutorial-primary-action__key-hint{display:inline-flex;align-items:center;margin-left:8px;padding:1px 5px;border-radius:3px;background:#02161c29;color:#02161cb3;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:none}@keyframes tutorial-charge-ready-pulse{0%,to{background:#ffb80029;border-color:#ffb8008c;box-shadow:0 0 #ffb80000,0 2px 6px #0003}50%{background:#ffb8005c;border-color:#ffb800f2;color:#fff;box-shadow:0 0 22px #ffb800a6,0 2px 6px #0003}}.tutorial-assist-dock{position:absolute;top:54px;left:50%;z-index:4;display:flex;flex-direction:column;align-items:center;gap:7px;transform:translate(-50%);pointer-events:auto}.tutorial-assist-dock__buttons{display:flex;gap:6px;padding:4px;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:#06080cad;box-shadow:0 14px 38px #00000047,inset 0 1px #ffffff0a;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.tutorial-assist-icon{position:relative;display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid rgba(108,214,255,.22);border-radius:50%;background:#6cd6ff14;color:#e2f7ffd6;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease}.tutorial-assist-icon:hover{border-color:#6cd6ff70;background:#6cd6ff24;color:#fffffff5}.tutorial-assist-icon:active{transform:translateY(1px)}.tutorial-assist-icon--active{border-color:#20d68b75;background:#20d68b24;color:#d7ffe8}.tutorial-assist-icon[data-tooltip]:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(-2px);padding:5px 9px;border:1px solid rgba(108,214,255,.22);border-radius:6px;background:#080a0eeb;color:#ffffffeb;font-family:var(--tutorial-body);font-size:11px;font-weight:500;line-height:1.25;letter-spacing:.01em;white-space:nowrap;box-shadow:0 8px 24px #00000057;opacity:0;pointer-events:none;transition:opacity .14s ease 60ms,transform .14s ease 60ms}.tutorial-assist-icon:hover:after,.tutorial-assist-icon:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}.tutorial-assist-icon--pulse{animation:tutorial-assist-pulse 2.4s ease-in-out infinite}.tutorial-assist-icon--pulse:hover,.tutorial-assist-icon--active{animation:none}@keyframes tutorial-assist-pulse{0%,to{box-shadow:0 0 0 6px #6cd6ff00}50%{box-shadow:0 0 0 6px #6cd6ff38}}.tutorial-assist-icon--pulse-red{border-color:#ef444480;background:#ef444429;color:#fee2e2;animation:tutorial-assist-pulse-red 1.5s ease-in-out infinite}.tutorial-assist-icon--pulse-red:hover{border-color:#ef4444b8;background:#ef44443d;color:#fff;animation:none}@keyframes tutorial-assist-pulse-red{0%,to{box-shadow:0 0 0 8px #ef444400}50%{box-shadow:0 0 0 8px #ef444452}}@media(prefers-reduced-motion:reduce){.tutorial-assist-icon--pulse,.tutorial-assist-icon--pulse-red{animation:none}}.tutorial-assist-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.tutorial-assist-dock__panel{position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%);width:max-content;max-width:min(280px,calc(100vw - 40px));padding:10px 14px 11px;border:1px solid rgba(108,214,255,.28);border-radius:10px;background:#080a0ec7;box-shadow:0 14px 36px #00000052,0 0 #6cd6ff00,inset 0 1px #ffffff0d;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);animation:tutorial-assist-panel-in .18s ease-out both,tutorial-assist-panel-glow 2.4s ease-in-out .18s infinite}@keyframes tutorial-assist-panel-glow{0%,to{box-shadow:0 14px 36px #00000052,0 0 #6cd6ff00,inset 0 1px #ffffff0d}50%{box-shadow:0 14px 36px #00000052,0 0 0 6px #6cd6ff2e,inset 0 1px #ffffff0d}}@media(prefers-reduced-motion:reduce){.tutorial-assist-dock__panel{animation:tutorial-assist-panel-in .18s ease-out both}}.tutorial-assist-dock__panel--below{top:calc(100% + 10px);left:50%;right:auto;bottom:auto;width:min(420px,calc(100vw - 40px));max-width:min(420px,calc(100vw - 40px));transform:translate(-50%);animation:tutorial-assist-panel-in-below .22s ease-out both,tutorial-assist-panel-glow 2.4s ease-in-out 0s infinite}@keyframes tutorial-assist-panel-in-below{0%{opacity:0;transform:translate(-50%) translateY(-6px) scale(.98)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.tutorial-assist-dock__panel--below{animation:tutorial-assist-panel-in-below .22s ease-out both}}.tutorial-assist-dock__panel--beside-card{position:absolute;top:64px;left:348px;right:auto;bottom:auto;width:min(300px,calc(100vw - 360px));max-width:min(300px,calc(100vw - 360px));transform:none;padding:12px 14px 13px;pointer-events:auto;animation:tutorial-assist-panel-in-beside-card .24s ease-out both,tutorial-assist-panel-glow 2.4s ease-in-out 0s infinite}@keyframes tutorial-assist-panel-in-beside-card{0%{opacity:0;transform:translate(-6px) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}@media(prefers-reduced-motion:reduce){.tutorial-assist-dock__panel--beside-card{animation:tutorial-assist-panel-in-beside-card .24s ease-out both}}.tutorial-assist-dock__panel--amber{border-color:#fbbf246b;animation:tutorial-assist-panel-in .18s ease-out both,tutorial-assist-panel-glow-amber 1.5s ease-in-out 0s infinite}@keyframes tutorial-assist-panel-glow-amber{0%,to{box-shadow:0 14px 36px #00000052,0 0 0 6px #fbbf2400,0 0 22px 4px #fbbf2400,inset 0 1px #ffffff0d}50%{box-shadow:0 14px 36px #00000052,0 0 0 6px #fbbf2447,0 0 22px 4px #fbbf2438,inset 0 1px #ffffff0d}}@media(prefers-reduced-motion:reduce){.tutorial-assist-dock__panel--amber{animation:tutorial-assist-panel-in .18s ease-out both;box-shadow:0 14px 36px #00000052,0 0 0 4px #fbbf2447,inset 0 1px #ffffff0d}}.tutorial-assist-dock__panel p{margin:0;color:#ffffffd1;font-family:var(--tutorial-body);font-size:12px;font-weight:400;line-height:1.45}.tutorial-treatment-panel{position:absolute;top:64px;right:130px;z-index:4;width:min(310px,calc(100% - 510px));max-height:calc(100% - 96px);overflow-y:auto;overscroll-behavior:contain;pointer-events:auto}.tutorial-treatment-panel .machine-panel{border-radius:8px;background:#08090cf0;box-shadow:0 22px 70px #00000075,0 0 0 1px #6cd6ff14}.tutorial-treatment-panel .machine-panel--tutorial-compact{height:auto;overflow:visible}.tutorial-treatment-panel .machine-panel--tutorial-compact .panel-header{position:static;height:auto;padding:6px 10px}.tutorial-treatment-panel .machine-panel--tutorial-compact .panel-body{position:static;padding:8px;gap:4px;overflow:visible}.tutorial-treatment-panel .machine-panel--tutorial-compact .panel-section{padding:6px 8px}.tutorial-treatment-panel .machine-panel--tutorial-compact .panel-section:has(.param-grid-compact){padding-bottom:4px}.tutorial-treatment-panel .machine-panel--tutorial-compact .panel-section:has(.param-grid-compact) .section-content{margin-bottom:0}.tutorial-treatment-panel .machine-panel--tutorial-compact .section-header{padding:0;min-height:0}.tutorial-treatment-panel .machine-panel--tutorial-compact .panel-section.collapsible .section-header{margin-bottom:4px}.tutorial-treatment-panel .machine-panel--tutorial-compact .param-grid-compact{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.tutorial-treatment-panel .machine-panel--tutorial-compact .param-cell{grid-column:span 3;min-height:36px;gap:3px;padding:4px 6px}.tutorial-treatment-panel .machine-panel--tutorial-compact .param-cell--narrow{grid-column:span 2}.tutorial-treatment-panel .machine-panel--tutorial-compact .param-cell input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield;padding-right:4px;padding-left:6px;text-align:center}.tutorial-treatment-panel .machine-panel--tutorial-compact .param-cell input[type=number]::-webkit-outer-spin-button,.tutorial-treatment-panel .machine-panel--tutorial-compact .param-cell input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.tutorial-treatment-panel .machine-panel--tutorial-compact .param-cell label{font-size:11px}.tutorial-treatment-panel .machine-panel--tutorial-compact .session-status-content{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;justify-items:center;column-gap:10px;row-gap:6px;padding:0}.tutorial-treatment-panel .machine-panel--tutorial-compact .session-status-content .circular-progress-container{grid-column:2;grid-row:1}.tutorial-treatment-panel .machine-panel--tutorial-compact .session-stats-row{display:contents}.tutorial-treatment-panel .machine-panel--tutorial-compact .session-stats-row>:nth-child(1){grid-column:1;grid-row:1;text-align:right;align-items:flex-end}.tutorial-treatment-panel .machine-panel--tutorial-compact .session-stats-row>:nth-child(2){grid-column:3;grid-row:1;text-align:left;align-items:flex-start}.tutorial-treatment-panel .machine-panel--tutorial-compact .iti-indicator,.tutorial-treatment-panel .machine-panel--tutorial-compact .btn-session-start,.tutorial-treatment-panel .machine-panel--tutorial-compact .btn-session-reset,.tutorial-treatment-panel .machine-panel--tutorial-compact .session-controls-row{grid-column:1 / -1;justify-self:stretch}.tutorial-treatment-panel .machine-panel--tutorial-compact .stat-label,.tutorial-treatment-panel .machine-panel--tutorial-compact .status-text{font-size:11px}.tutorial-treatment-panel .tutorial-target-summary{border-color:#20d68b38;background:#20d68b0f;padding:4px 8px}.tutorial-treatment-panel .tutorial-target-summary .section-header{min-height:0}.tutorial-treatment-callout{position:absolute;top:212px;right:min(420px,calc(100% - 300px));z-index:5;width:258px;padding:13px 14px;border:1px solid rgba(108,214,255,.32);border-radius:7px;background:#070a0fe0;box-shadow:0 18px 50px #00000061;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);pointer-events:none}.tutorial-treatment-callout:after{content:"";position:absolute;top:28px;right:-58px;width:58px;height:1px;background:linear-gradient(90deg,#6cd6ffa6,#6cd6ff00)}.tutorial-treatment-callout span{display:block;margin-bottom:7px;color:var(--tutorial-cyan);font-family:var(--tutorial-mono);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.tutorial-treatment-callout p{margin:0;color:#ffffffd1;font-size:12px;line-height:1.45}.tutorial-treatment-callout--mt{top:258px}.tutorial-treatment-callout--intensity{top:300px}.tutorial-treatment-callout--iti{top:362px}.tutorial-treatment-callout--total{top:404px}.tutorial-control-strip{position:absolute;left:50%;right:auto;bottom:18px;z-index:3;display:grid;grid-template-columns:minmax(300px,1.2fr) minmax(300px,1fr) auto;gap:10px;align-items:stretch;width:min(940px,calc(100% - 36px));min-height:64px;padding:8px;border:1px solid var(--tutorial-line);border-radius:8px;background:var(--tutorial-bg-strong);transform:translate(-50%);box-shadow:0 18px 54px #0000005c;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);pointer-events:auto}.tutorial-control-strip--treatment{grid-template-columns:minmax(380px,1fr) auto;width:min(740px,calc(100% - 36px))}.tutorial-control-strip--minimal{grid-template-columns:minmax(160px,1fr) auto;width:min(560px,calc(100% - 36px))}.tutorial-machine{display:grid;grid-template-columns:82px minmax(172px,1fr) auto;grid-template-rows:auto;gap:7px;align-items:center;min-width:0;padding:7px;border:1px solid rgba(108,214,255,.16);border-radius:6px;background:#6cd6ff0e;transition:border-color .22s ease,background .22s ease,box-shadow .22s ease,filter .22s ease}.tutorial-machine--figure8{grid-template-columns:minmax(0,1fr);gap:6px;padding:6px;border-color:#6cd6ff2e;border-radius:9px;background:radial-gradient(circle at 76% 38%,rgba(108,214,255,.16),transparent 38%),linear-gradient(180deg,#0a142df0,#040819f0);box-shadow:0 18px 50px #0000006b,inset 0 1px #ffffff12}.tutorial-machine-drawer .tutorial-machine--figure8{width:calc(100% + 6px);margin:0 -3px;box-shadow:0 10px 30px #0000004d,inset 0 1px #ffffff12}.tutorial-machine--standby{border-color:#ffffff14;background:radial-gradient(circle at 76% 38%,rgba(108,214,255,.055),transparent 38%),linear-gradient(180deg,#0a1020bd,#040712bd)}.tutorial-machine--standby .tutorial-run-ten-button:disabled,.tutorial-machine--standby .tutorial-pulse-button:disabled{opacity:.72}.tutorial-machine__trial-deck{display:grid;grid-template-columns:1fr;gap:8px;align-items:stretch}.tutorial-machine__console{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;row-gap:6px;align-items:center;justify-items:center}.tutorial-machine__console .tutorial-output-module--dial{grid-column:1;grid-row:1}.tutorial-machine__console .tutorial-nudge-row{grid-column:1;grid-row:2;align-self:end}.tutorial-machine__console .tutorial-pulse-module{grid-column:2;grid-row:1 / span 2;display:grid;grid-template-rows:1fr;gap:6px;place-items:stretch;width:100%;height:100%}.tutorial-machine--trial-unlocked .tutorial-pulse-module{grid-template-rows:1fr 1fr}.tutorial-scene-shell .tutorial-nudge-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:100%}.tutorial-scene-shell .tutorial-nudge-button{min-height:32px;padding:0 4px;border:1px solid rgba(108,214,255,.28);border-radius:6px;background:#6cd6ff1a;color:#e2f7fff0;font-family:var(--tutorial-data);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em;cursor:pointer;transition:transform .14s ease,border-color .14s ease,background .14s ease,color .14s ease}.tutorial-scene-shell .tutorial-nudge-button:hover:not(:disabled){border-color:#6cd6ff80;background:#6cd6ff2e;color:#fff}.tutorial-scene-shell .tutorial-nudge-button:active:not(:disabled){transform:scale(.97)}.tutorial-scene-shell .tutorial-nudge-button:disabled{opacity:.42;cursor:not-allowed}.tutorial-output-module{display:grid;justify-items:center;justify-self:center;gap:0;min-width:0}.tutorial-output-module--dial .dial__value{font-size:26px;font-weight:700;letter-spacing:-.01em}.tutorial-output-module--dial .dial__unit{font-size:11px;font-weight:600;letter-spacing:.04em}.tutorial-output-module--dial.tutorial-output-module--nudge .dial{color:#fbbf24;animation:tutorial-intensity-nudge 1.5s ease-in-out infinite}.tutorial-output-module--mt-found{position:relative}.tutorial-output-module--mt-found .dial__value{color:#d1fae5;text-shadow:0 0 8px rgba(34,197,94,.62),0 0 18px rgba(34,197,94,.34);animation:tutorial-mt-found-glow 1.6s ease-in-out infinite}@keyframes tutorial-mt-found-glow{0%,to{text-shadow:0 0 8px rgba(34,197,94,.55),0 0 18px rgba(34,197,94,.3)}50%{text-shadow:0 0 12px rgba(34,197,94,.82),0 0 26px rgba(34,197,94,.5)}}@media(prefers-reduced-motion:reduce){.tutorial-output-module--mt-found .dial__value{animation:none}}@keyframes tutorial-intensity-nudge{0%,to{box-shadow:0 0 0 8px #fbbf2400,0 0 22px 4px #fbbf2400}50%{box-shadow:0 0 0 8px #fbbf2447,0 0 22px 4px #fbbf2447}}@media(prefers-reduced-motion:reduce){.tutorial-output-module--dial.tutorial-output-module--nudge .dial{animation:none;box-shadow:0 0 0 4px #fbbf2447}}.tutorial-output-dial{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:96px;aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--tutorial-cyan) 0 var(--tutorial-output),rgba(51,68,116,.58) var(--tutorial-output) 100%);box-shadow:0 0 0 1px #6cd6ff1a,0 0 30px #6cd6ff1f,inset 0 0 18px #040819ad}.tutorial-output-dial:before{content:"";position:absolute;top:11px;right:11px;bottom:11px;left:11px;border-radius:50%;background:#07102a;box-shadow:inset 0 0 24px #0000006b,0 0 0 1px #ffffff0a}.tutorial-output-dial strong,.tutorial-output-dial small{position:relative;z-index:1}.tutorial-output-dial strong{color:#fffffff0;font-size:26px;line-height:.9;font-weight:700;letter-spacing:0;font-variant-numeric:tabular-nums}.tutorial-output-dial strong span{margin-left:3px;font-size:16px}.tutorial-output-dial small{color:#ffffff94;font-size:11px;font-weight:500;letter-spacing:.1em}.tutorial-output-adjust{position:relative;display:grid;place-items:center;width:28px;height:112px;min-height:112px;justify-self:center}.tutorial-output-adjust--vertical:before{content:"";position:absolute;top:4px;bottom:4px;left:50%;width:3px;border-radius:999px;background:linear-gradient(to top,var(--tutorial-cyan) 0 var(--tutorial-output),rgba(54,70,112,.62) var(--tutorial-output) 100%);box-shadow:0 0 0 1px #6cd6ff14,0 0 13px #6cd6ff24;transform:translate(-50%);pointer-events:none}.tutorial-output-adjust--vertical:after{content:"";position:absolute;left:50%;top:clamp(6px,var(--tutorial-output-inverse),calc(100% - 6px));width:12px;height:12px;border:1px solid rgba(255,255,255,.56);border-radius:50%;background:radial-gradient(circle at 36% 32%,#ffffff,var(--tutorial-cyan) 66%);box-shadow:0 0 0 4px #6cd6ff1f,0 0 13px #6cd6ff57;transform:translate(-50%,-50%);transition:transform .16s ease,box-shadow .16s ease;pointer-events:none}.tutorial-output-adjust--vertical:focus-within:after,.tutorial-output-adjust--vertical:hover:after{transform:translate(-50%,-50%) scale(1.08);box-shadow:0 0 0 5px #6cd6ff29,0 0 16px #6cd6ff6b}.tutorial-run-ten-button{width:100%;height:100%;min-height:0;padding:0 8px;border:1px solid rgba(192,132,252,.42);border-radius:14px;background:linear-gradient(180deg,#a855f7,#7e22ce);color:#fff;font-weight:700;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 0 0 3px #a855f72e,0 0 16px #a855f747,inset 0 -3px 8px #0000002e,inset 0 1px #ffffff38;cursor:pointer;transition:filter .16s ease,box-shadow .16s ease,transform .12s ease;white-space:nowrap}.tutorial-scene-shell .tutorial-run-ten-button{font-size:11px}.tutorial-output-slider{--tutorial-slider-track: linear-gradient( 90deg, var(--tutorial-cyan) 0 var(--tutorial-output), rgba(54, 70, 112, .62) var(--tutorial-output) 100% );-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;min-width:0;height:18px;margin:0;border:0;background:transparent;cursor:pointer}.tutorial-output-slider--vertical{position:absolute;left:50%;top:0;bottom:0;width:22px;transform:translate(-50%);writing-mode:vertical-lr;direction:rtl;-webkit-appearance:slider-vertical;-moz-appearance:slider-vertical;appearance:slider-vertical;opacity:0;cursor:ns-resize}.tutorial-output-slider::-webkit-slider-runnable-track{height:3px;border-radius:999px;background:var(--tutorial-slider-track);box-shadow:0 0 0 1px #6cd6ff14,0 0 13px #6cd6ff24}.tutorial-output-slider::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:12px;height:12px;margin-top:-4.5px;border:1px solid rgba(255,255,255,.56);border-radius:50%;background:radial-gradient(circle at 36% 32%,#ffffff,var(--tutorial-cyan) 66%);box-shadow:0 0 0 4px #6cd6ff1f,0 0 13px #6cd6ff57;transition:transform .16s ease,box-shadow .16s ease}.tutorial-output-slider::-moz-range-track{height:3px;border-radius:999px;background:#3646709e;box-shadow:0 0 0 1px #6cd6ff14,0 0 13px #6cd6ff24}.tutorial-output-slider::-moz-range-progress{height:3px;border-radius:999px;background:var(--tutorial-cyan)}.tutorial-output-slider::-moz-range-thumb{width:12px;height:12px;border:1px solid rgba(255,255,255,.56);border-radius:50%;background:radial-gradient(circle at 36% 32%,#ffffff,var(--tutorial-cyan) 66%);box-shadow:0 0 0 4px #6cd6ff1f,0 0 13px #6cd6ff57;transition:transform .16s ease,box-shadow .16s ease}.tutorial-output-slider:hover:not(:disabled)::-webkit-slider-thumb,.tutorial-output-slider:focus-visible::-webkit-slider-thumb{transform:scale(1.08);box-shadow:0 0 0 5px #6cd6ff29,0 0 16px #6cd6ff6b}.tutorial-output-slider:hover:not(:disabled)::-moz-range-thumb,.tutorial-output-slider:focus-visible::-moz-range-thumb{transform:scale(1.08);box-shadow:0 0 0 5px #6cd6ff29,0 0 16px #6cd6ff6b}.tutorial-output-slider:focus-visible{outline:2px solid rgba(108,214,255,.72);outline-offset:5px}.tutorial-output-slider--vertical:focus-visible{outline:0}.tutorial-output-slider:disabled{cursor:not-allowed;opacity:.42}.tutorial-output-slider--vertical,.tutorial-output-slider--vertical:disabled{opacity:0}.tutorial-run-ten-button:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 0 0 3px #a855f73d,0 0 22px #a855f76b,inset 0 -3px 8px #0000002e,inset 0 1px #ffffff38}.tutorial-run-ten-button--ready:not(:disabled){border-color:var(--tutorial-cyan);background:#6cd6ff29;color:#fffffff5;animation:tutorial-run-ten-pulse 1.5s ease-in-out infinite;box-shadow:0 0 #6cd6ff7a,0 0 18px #6cd6ff4d}@keyframes tutorial-run-ten-pulse{0%{box-shadow:0 0 #6cd6ff80,0 0 16px #6cd6ff4d}50%{box-shadow:0 0 0 6px #6cd6ff00,0 0 24px #6cd6ff80}to{box-shadow:0 0 #6cd6ff00,0 0 16px #6cd6ff4d}}@media(prefers-reduced-motion:reduce){.tutorial-run-ten-button--ready:not(:disabled){animation:none}}.tutorial-run-ten-button:active:not(:disabled),.tutorial-pulse-button:active:not(:disabled){transform:translateY(1px)}.tutorial-run-ten-button:disabled,.tutorial-pulse-button:disabled{opacity:.42;cursor:not-allowed}.tutorial-pulse-module{display:grid;place-items:center;justify-self:center;min-width:0}.tutorial-pulse-button{display:grid;place-items:center;width:100%;min-height:72px;border:0;border-radius:14px;background:var(--tutorial-cyan);color:#061014;box-shadow:0 0 0 4px #6cd6ff21,0 0 20px #6cd6ff3d,inset 0 -6px 14px #0000001a,inset 0 1px #ffffff57;cursor:pointer;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}.tutorial-pulse-button span{font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tutorial-pulse-button:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 0 0 5px #6cd6ff2b,0 0 30px #6cd6ff57,inset 0 -7px 16px #0000001a,inset 0 1px #ffffff57}.tutorial-machine__sr-output,.tutorial-machine__sr-actions{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.tutorial-machine__readout{display:grid;align-content:center;gap:4px;min-width:0}.tutorial-machine__readout span,.tutorial-machine__counter span{color:var(--tutorial-faint);font-size:11px;font-weight:700;letter-spacing:.12em}.tutorial-machine__readout strong{color:#ffffffeb;font-size:18px;line-height:1}.tutorial-machine__intensity{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;min-width:0}.tutorial-machine__intensity input{width:100%;min-width:0;accent-color:var(--tutorial-cyan)}.tutorial-machine__actions{display:flex;justify-content:flex-end;gap:6px;align-items:stretch}.tutorial-machine__actions--with-response{grid-column:1 / -1;display:grid;grid-template-columns:minmax(92px,.55fr) minmax(240px,1.35fr);gap:8px}.tutorial-machine__actions--trial-unlocked{grid-column:1 / -1;display:grid;grid-template-columns:minmax(92px,.5fr) minmax(240px,1.3fr) minmax(128px,.75fr);gap:8px}.tutorial-machine__actions .tutorial-primary-action{flex:0 0 92px;width:auto;min-width:0;min-height:34px;padding:0 12px;font-size:11px}.tutorial-machine__actions--with-response .tutorial-primary-action,.tutorial-machine__actions--trial-unlocked .tutorial-primary-action{width:100%}.tutorial-machine__counter{display:grid;align-content:center;gap:4px;min-width:0;padding:6px 8px;border:1px solid rgba(255,255,255,.09);border-radius:5px;background:#ffffff0b}.tutorial-machine__counter strong{color:var(--tutorial-ready);font-size:15px;line-height:1}.tutorial-response-log{display:grid;grid-template-columns:1fr;gap:6px;align-items:center;min-width:0;padding:7px 8px;border:1px solid rgba(255,255,255,.09);border-radius:7px;background:#ffffff0b}.tutorial-response-log__score{display:flex;align-items:baseline;gap:6px}.tutorial-response-log__score strong{color:var(--tutorial-text);font-size:16px;line-height:1;font-variant-numeric:tabular-nums;transition:color .2s ease}.tutorial-response-log--target .tutorial-response-log__score strong{color:var(--tutorial-ready)}.tutorial-response-log--high .tutorial-response-log__score strong{color:var(--tutorial-warn)}.tutorial-response-log--low .tutorial-response-log__score strong{color:var(--tutorial-cyan)}.tutorial-response-log__score span{color:var(--tutorial-faint);font-size:11px;font-weight:700;letter-spacing:.1em}.tutorial-response-log__pulses{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}.tutorial-response-log__pulse{display:grid;place-items:center;aspect-ratio:1;min-width:0;border-radius:4px;font-family:var(--tutorial-mono);font-size:11px;font-weight:700;color:#ffffff5c}.tutorial-response-log__pulse--pending{border:1px dashed rgba(255,255,255,.14);background:#ffffff09}.tutorial-response-log__pulse--hit{border:1px solid rgba(32,214,139,.42);background:#20d68b26;color:var(--tutorial-ready)}.tutorial-response-log__pulse--miss{border:1px solid rgba(255,101,121,.3);background:#ff65791a;color:#ff9facdb}.tutorial-response-log--target{border-color:#20d68b66;box-shadow:0 0 0 1px #20d68b2e,0 6px 18px #20d68b1f}.tutorial-response-log--high{border-color:#ffbf4d38}.tutorial-response-log--low{border-color:#6cd6ff38}.tutorial-hcoil-trial-deck{display:grid;gap:6px;min-width:0}.hcoil-titration-log{display:grid;grid-template-columns:1fr;gap:5px;align-items:center;min-width:0;padding:5px 6px;border:1px solid rgba(255,255,255,.09);border-radius:6px;background:#ffffff0b;transition:border-color .22s ease,box-shadow .22s ease}.hcoil-titration-log__score{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.hcoil-titration-log__score strong{color:var(--tutorial-text);font-size:13px;line-height:1;font-variant-numeric:tabular-nums;transition:color .2s ease}.hcoil-titration-log__score span{color:var(--tutorial-faint);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.hcoil-titration-log__pulses{display:grid;grid-template-columns:repeat(6,1fr);gap:3px}.hcoil-titration-log__pulse{display:grid;place-items:center;min-width:0;height:20px;border-radius:3px;font-family:var(--tutorial-mono);font-size:11px;font-weight:700;color:#ffffff5c;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.hcoil-titration-log__pulse--pending{border:1px dashed rgba(255,255,255,.14);background:#ffffff09}.hcoil-titration-log__pulse--hit{border:1px solid rgba(32,214,139,.45);background:#20d68b29;color:var(--tutorial-ready)}.hcoil-titration-log__pulse--miss{border:1px solid rgba(255,101,121,.32);background:#ff65791a;color:#ff9facdb}.hcoil-titration-log--target{border-color:#20d68b66;box-shadow:0 0 0 1px #20d68b2e,0 6px 18px #20d68b1f}.hcoil-titration-log--target .hcoil-titration-log__score strong{color:var(--tutorial-ready)}.hcoil-titration-log--high{border-color:#ffbf4d52}.hcoil-titration-log--high .hcoil-titration-log__score strong{color:var(--tutorial-warn)}.hcoil-titration-log--low{border-color:#6cd6ff47}.hcoil-titration-log--low .hcoil-titration-log__score strong{color:var(--tutorial-cyan)}.tutorial-machine--hcoil{grid-template-columns:minmax(0,1fr);gap:6px;padding:6px;border-radius:9px;background:radial-gradient(circle at 72% 28%,rgba(108,214,255,.11),transparent 38%),linear-gradient(180deg,#0a142de6,#040816e6);box-shadow:0 12px 34px #0000004d,inset 0 1px #ffffff0f}.tutorial-hcoil-grid-panel{width:100%;max-width:none;margin:0 auto;padding:4px 4px 2px;border:1px solid rgba(108,214,255,.18);border-radius:6px;background:#080e24a6;transition:border-color .22s ease,box-shadow .22s ease}.tutorial-hcoil-grid-panel--spotlight{border-color:#00e5ff8c;box-shadow:0 0 0 1px #00e5ff2e,0 0 22px #00e5ff38;animation:tutorial-spotlight-pulse 2.4s ease-in-out infinite}.tutorial-primary-action--press-spotlight{animation:tutorial-spotlight-pulse 2.4s ease-in-out infinite;box-shadow:0 0 0 1px #00e5ff38,0 0 22px #00e5ff42}@keyframes tutorial-spotlight-pulse{0%,to{box-shadow:0 0 0 1px #00e5ff2e,0 0 22px #00e5ff2e}50%{box-shadow:0 0 0 1px #00e5ff52,0 0 32px #00e5ff52}}.tutorial-hcoil-grid-panel .grid-diagram{display:block;width:100%}.tutorial-hcoil-grid-panel svg{display:block;width:100%;height:auto}.tutorial-hcoil-readouts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;min-width:0}.tutorial-machine--hcoil .tutorial-machine__readout{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0;min-height:24px;padding:4px 6px;border:1px solid rgba(255,255,255,.08);border-radius:5px;background:#ffffff0a}.tutorial-machine--hcoil .tutorial-machine__readout span{font-size:11px;letter-spacing:.08em}.tutorial-machine--hcoil .tutorial-machine__readout strong{font-size:13px;line-height:1}.tutorial-machine--hcoil .tutorial-machine__actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;align-items:stretch}.tutorial-machine--hcoil .tutorial-pulse-button--hcoil,.tutorial-machine--hcoil .tutorial-charge-action{min-height:44px;border-radius:10px}.tutorial-hcoil-action-dock{position:absolute;z-index:4;pointer-events:auto;background-color:#040816}.tutorial-hcoil-position{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;align-items:center;min-width:0}.tutorial-hcoil-position--y-only,.tutorial-hcoil-position--tilt-only{grid-template-columns:repeat(2,minmax(0,1fr))}.tutorial-hcoil-position button{min-height:25px;padding:0 5px;border:1px solid rgba(255,255,255,.13);border-radius:5px;background:#ffffff0e;color:#ffffffc7;font-size:11px;font-weight:700;cursor:pointer}.tutorial-hcoil-position button:disabled{opacity:.42;cursor:not-allowed}.tutorial-hcoil-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 7px;align-items:center;min-width:0;padding:5px 6px;border:1px solid rgba(255,255,255,.08);border-radius:5px;background:#ffffff0a}.tutorial-hcoil-field .tutorial-machine__intensity{grid-column:1 / -1}.tutorial-hcoil-field--read-only{grid-template-columns:minmax(0,1fr) auto}.tutorial-hcoil-field>span{color:var(--tutorial-faint);font-family:var(--tutorial-mono);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tutorial-hcoil-field>strong{color:#ffffffeb;font-size:13px;line-height:1;white-space:nowrap}.tutorial-machine--hcoil .tutorial-machine__actions .tutorial-primary-action{min-height:29px;padding:0 8px;font-size:11px}.tutorial-machine--hcoil .tutorial-machine__counter{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:5px 6px}.tutorial-machine--hcoil .tutorial-machine__counter span{font-size:11px;letter-spacing:.08em}.tutorial-machine--hcoil .tutorial-machine__counter strong{font-size:12px}.tutorial-hcoil-treatment-panel{position:absolute;top:96px;right:18px;z-index:4;width:min(330px,calc(100% - 320px));max-height:calc(100% - 96px);overflow-y:auto;overscroll-behavior:contain;padding:13px;border:1px solid rgba(108,214,255,.24);border-radius:7px;background:linear-gradient(180deg,rgba(108,214,255,.08),transparent 44%),#070a0fe0;box-shadow:0 18px 56px #0000006b;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);pointer-events:none}.tutorial-hcoil-treatment-panel__header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:11px}.tutorial-hcoil-treatment-panel__header span,.tutorial-hcoil-treatment-panel__grid span{color:var(--tutorial-cyan);font-family:var(--tutorial-mono);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.tutorial-hcoil-treatment-panel__header strong{color:#ffffffeb;font-size:16px;line-height:1}.tutorial-hcoil-treatment-panel__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tutorial-hcoil-treatment-panel__grid div{min-width:0;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:5px;background:#ffffff0b}.tutorial-hcoil-treatment-panel__grid span{display:block;margin-bottom:5px;color:var(--tutorial-faint)}.tutorial-hcoil-treatment-panel__grid strong{display:block;overflow:hidden;color:#ffffffe6;font-size:15px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.tutorial-hcoil-hotspot-badge{position:absolute;top:132px;right:18px;z-index:3;display:grid;gap:4px;min-width:118px;padding:10px 12px;border:1px solid rgba(32,214,139,.34);border-radius:7px;background:#04140fb8;box-shadow:0 14px 40px #00000057;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:none}.tutorial-hcoil-hotspot-badge span{color:var(--tutorial-ready);font-family:var(--tutorial-mono);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.tutorial-hcoil-hotspot-badge strong{color:#fffffff0;font-size:20px;line-height:1}.tutorial-hcoil-hotspot-badge small{color:#ffffff94;font-family:var(--tutorial-mono);font-size:11px;font-weight:700}.tutorial-control-strip__primary-action{display:flex;align-items:stretch;min-width:0}.tutorial-primary-action{width:100%;min-width:104px;min-height:38px;padding:0 13px;text-align:center}.tutorial-control-strip--hcoil,.tutorial-control-strip--hcoil.tutorial-control-strip--treatment{grid-template-columns:minmax(0,1fr);width:min(304px,calc(100% - 56px))}.tutorial-left-stack .tutorial-control-strip--hcoil,.tutorial-left-stack .tutorial-control-strip--hcoil.tutorial-control-strip--treatment{position:relative;left:auto;right:auto;bottom:auto;z-index:auto;width:100%;min-height:0;padding:5px;transform:none;pointer-events:auto;animation:tutorial-machine-drawer-open .26s cubic-bezier(.16,1,.3,1) both}.tutorial-left-stack .tutorial-control-strip--hcoil:empty{display:none}.tutorial-primary-action:focus-visible,.tutorial-nav-button:focus-visible{outline:1px solid var(--tutorial-cyan);outline-offset:3px}@keyframes tutorial-unlock-flash{0%{opacity:0;transform:scale(.72)}28%{opacity:1}to{opacity:0;transform:scale(1.12)}}@keyframes tutorial-card-enter{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.tutorial-mission-card{transition:transform .38s cubic-bezier(.22,1,.36,1),box-shadow .32s ease,border-color .32s ease}.tutorial-scene-shell:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:#04060af0;z-index:2;pointer-events:none;opacity:0;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);transition:opacity .36s cubic-bezier(.4,0,.2,1),backdrop-filter .36s cubic-bezier(.4,0,.2,1),-webkit-backdrop-filter .36s cubic-bezier(.4,0,.2,1)}.tutorial-scene-shell--head-loading:before{opacity:1;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);transition:opacity .15s cubic-bezier(.22,1,.36,1),backdrop-filter .2s cubic-bezier(.22,1,.36,1),-webkit-backdrop-filter .2s cubic-bezier(.22,1,.36,1)}.tutorial-mission-card--loading{animation:none;transform:translate(calc(50vw - 50% - 28px),calc(50vh - 50% - 64px)) scale(1.1);z-index:12;box-shadow:0 40px 96px #0000009e,0 0 0 1px #6cd6ff38,0 0 36px #6cd6ff38,inset 0 1px #ffffff17;border-color:#6cd6ff66}.tutorial-mission-card--just-loaded{animation:tutorial-card-settle .52s cubic-bezier(.22,1,.36,1) both}@keyframes tutorial-card-settle{0%{box-shadow:0 40px 96px #0000009e,0 0 36px #6cd6ff38,inset 0 1px #ffffff17}60%{box-shadow:0 28px 76px #00000080,0 0 22px #6cd6ff24,inset 0 1px #ffffff12}to{box-shadow:0 24px 72px #00000075,0 0 0 1px #0000003d,inset 0 1px #ffffff12}}.tutorial-nav-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.22);border-top-color:#fffffff0;border-radius:50%;animation:tutorial-nav-spinner-rotate .76s linear infinite}@keyframes tutorial-nav-spinner-rotate{to{transform:rotate(360deg)}}.tutorial-nav-countdown{position:absolute;left:12px;top:50%;display:inline-flex;width:18px;height:18px;margin-top:-9px;pointer-events:none}.tutorial-nav-countdown svg{width:100%;height:100%;transform:rotate(-90deg)}.tutorial-nav-countdown circle{fill:none;stroke-width:2.5;stroke-linecap:round}.tutorial-nav-countdown__track{stroke:#ffffff3d}.tutorial-nav-countdown__sweep{stroke:#fffffff2;stroke-dasharray:56.549;stroke-dashoffset:0;animation:tutorial-nav-countdown-drain var(--tutorial-countdown-ms, 4s) linear forwards}@keyframes tutorial-nav-countdown-drain{0%{stroke-dashoffset:0}to{stroke-dashoffset:56.549}}@media(prefers-reduced-motion:reduce){.tutorial-nav-countdown{display:none}}.tutorial-nav-countdown--insight .tutorial-nav-countdown__sweep{stroke:var(--tutorial-insight)}@media(prefers-reduced-motion:reduce){.tutorial-nav-countdown--insight{display:inline-flex}.tutorial-nav-countdown--insight .tutorial-nav-countdown__sweep{animation-timing-function:steps(10,end)}}@media(prefers-reduced-motion:reduce){.tutorial-mission-card{transition:box-shadow .12s ease}.tutorial-scene-shell--head-loading:before{animation:none;backdrop-filter:none;-webkit-backdrop-filter:none}.tutorial-mission-card--loading{transform:none}.tutorial-mission-card--just-loaded{animation:none}.tutorial-nav-spinner{animation-duration:1.6s}}.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--reading{position:fixed;left:50%;bottom:7%;top:auto;z-index:6;width:min(660px,calc(100vw - 64px));padding:26px 34px 22px;transform:translate(-50%) translateY(14px);opacity:.85;animation:none;border-color:#6cd6ff42;box-shadow:0 30px 80px #0000008c,0 0 46px #6cd6ff17;transition:none}.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--reading.tutorial-mission-card--reading-in{transform:translate(-50%) translateY(0);opacity:1;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .45s ease}.tutorial-mission-card--reading .tutorial-mission-card__header{opacity:0;transition:none}.tutorial-mission-card--reading.tutorial-mission-card--reading-in .tutorial-mission-card__header{opacity:1;transition:opacity .4s ease .12s}.tutorial-mission-card--reading:before{content:"";position:absolute;top:0;left:26px;right:26px;height:2px;background:linear-gradient(90deg,transparent,var(--tutorial-cyan),transparent);opacity:.75}.tutorial-mission-card--reading .tutorial-message-text{font-size:16px;line-height:1.55}.tutorial-mission-card--reading .tutorial-mission-card__header span{font-size:11px;letter-spacing:.15em}.tutorial-mission-card--scene-read{border-left:2px solid var(--tutorial-cyan)}@media(prefers-reduced-motion:reduce){.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--reading,.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--reading.tutorial-mission-card--reading-in{transition:none;transform:translate(-50%);opacity:1}.tutorial-mission-card--reading .tutorial-mission-card__header{opacity:1;transition:none}}@media(max-width:640px){.tutorial-left-stack .tutorial-mission-card.tutorial-mission-card--reading{width:calc(100vw - 24px);bottom:5%;padding:18px 20px}}@keyframes tutorial-progress-spark{0%{opacity:0;transform:translateY(-50%) scale(.72)}16%{opacity:1}to{opacity:0;transform:translate(15px,-50%) scale(.3)}}@keyframes tutorial-key-guide-pop{0%{opacity:0;transform:translateY(-4px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes tutorial-key-guide-pulse{0%,to{transform:translateY(0);border-color:#ffffff29;background:#fff1;color:#ffffffc7;box-shadow:0 4px 12px #00000038,inset 0 1px #ffffff14}46%{transform:translateY(-1px);border-color:#6cd6ff6b;background:#6cd6ff26;color:#fffffff5;box-shadow:0 0 16px #6cd6ff3d,0 4px 12px #00000038,inset 0 1px #ffffff1a}}@keyframes tutorial-assist-panel-in{0%{opacity:0;transform:translateY(-50%) translate(-6px) scale(.98)}to{opacity:1;transform:translateY(-50%) translate(0) scale(1)}}@keyframes tutorial-continue-pulse{0%{box-shadow:0 0 #6cd6ff80,0 0 16px #6cd6ff47}50%{box-shadow:0 0 0 8px #6cd6ff00,0 0 26px #6cd6ff80}to{box-shadow:0 0 #6cd6ff00,0 0 16px #6cd6ff47}}@keyframes tutorial-pulse-button-attention{0%{box-shadow:0 0 0 5px #6cd6ff26,0 0 18px #6cd6ff52,inset 0 -7px 16px #0000001a,inset 0 1px #ffffff57;filter:brightness(1)}50%{box-shadow:0 0 0 11px #6cd6ff05,0 0 34px #6cd6ff80,inset 0 -7px 16px #0000001a,inset 0 1px #ffffff57;filter:brightness(1.08)}to{box-shadow:0 0 0 5px #6cd6ff26,0 0 18px #6cd6ff52,inset 0 -7px 16px #0000001a,inset 0 1px #ffffff57;filter:brightness(1)}}@keyframes tutorial-review-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.training-guide{--guide-bg: rgba(7, 8, 11, .9);--guide-bg-strong: rgba(13, 15, 20, .96);--guide-line: rgba(255, 255, 255, .1);--guide-line-strong: rgba(255, 255, 255, .16);--guide-text: rgba(255, 255, 255, .94);--guide-muted: rgba(255, 255, 255, .62);--guide-faint: rgba(255, 255, 255, .5);--guide-accent: #6cd6ff;--guide-ready: #20d68b;--guide-warn: #ffbf4d;--guide-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;position:absolute;left:12px;top:12px;z-index:150;width:min(340px,calc(100vw - 24px));max-height:calc(100% - 24px);color:var(--guide-text);pointer-events:auto}.training-guide__shell{display:flex;flex-direction:column;gap:8px;padding:11px;border:1px solid var(--guide-line);border-radius:7px;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 34%),var(--guide-bg);box-shadow:0 22px 70px #00000075,inset 0 1px #ffffff0a;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.training-guide__header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.training-guide__eyebrow,.training-guide__count,.training-guide__metric span,.training-guide__gate,.training-guide__step-count,.training-guide__review span{font-family:var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);text-transform:uppercase}.training-guide__eyebrow{display:block;margin-bottom:5px;color:var(--guide-accent);font-size:11px;font-weight:700;letter-spacing:.2em}.training-guide h2,.training-guide h3,.training-guide p{margin:0}.training-guide h2{color:var(--guide-text);font-size:17px;line-height:1.12;font-weight:700;letter-spacing:0}.training-guide__count{flex:0 0 auto;min-width:40px;padding-top:2px;color:var(--guide-faint);font-size:11px;font-weight:700;letter-spacing:.18em;text-align:right}.training-guide__description{display:none;color:var(--guide-muted);font-size:13px;line-height:1.48}.training-guide__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid rgba(255,255,255,.075);background:#ffffff06}.training-guide__metric{min-width:0;padding:7px 8px;border-right:1px solid rgba(255,255,255,.075)}.training-guide__metric:last-child{border-right:0}.training-guide__metric span{display:block;margin-bottom:4px;color:var(--guide-faint);font-size:11px;font-weight:700;letter-spacing:.15em}.training-guide__metric strong{display:block;overflow:hidden;color:#ffffffd1;font-size:12px;font-weight:700;letter-spacing:0;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.training-guide__metric--ready strong{color:var(--guide-ready)}.training-guide__metric--attention strong{color:var(--guide-warn)}.training-guide__meter{height:2px;overflow:hidden;background:#ffffff14}.training-guide__meter span{display:block;height:100%;background:var(--guide-accent);transition:width .24s ease-out}.training-guide__progress{display:grid;grid-template-columns:repeat(var(--guide-step-count, 7),minmax(0,1fr));gap:4px}.training-guide__dot{display:inline-grid;place-items:center;min-width:0;min-height:28px;border:1px solid rgba(255,255,255,.09);border-radius:4px;background:#ffffff09;color:#ffffff7a;font-family:var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;font-weight:700;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.training-guide__dot:hover:not(:disabled){color:#ffffffdb;border-color:#ffffff2e;background:#ffffff0f}.training-guide__dot:active:not(:disabled){transform:translateY(1px)}.training-guide__dot:focus-visible,.guide-action-button:focus-visible,.training-guide__nav-button:focus-visible{outline:1px solid var(--guide-accent);outline-offset:3px}.training-guide__dot:disabled{opacity:.32;cursor:not-allowed}.training-guide__dot svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.training-guide__dot--active{color:var(--guide-accent);border-color:#6cd6ff6b;background:#6cd6ff1a}.training-guide__dot--complete{color:var(--guide-ready);border-color:#20d68b57}.training-guide__card{padding-top:2px}.training-guide__gate-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.training-guide__gate{display:inline-flex;align-items:center;min-height:20px;padding:0 7px;border:1px solid rgba(255,191,77,.18);border-radius:4px;background:#ffbf4d14;color:var(--guide-warn);font-size:11px;font-weight:700;letter-spacing:.12em}.training-guide__gate--open{border-color:#20d68b33;background:#20d68b14;color:var(--guide-ready)}.training-guide__step-count{color:var(--guide-faint);font-size:11px;font-weight:700;letter-spacing:.18em;white-space:nowrap}.training-guide h3{color:var(--guide-text);font-size:16px;line-height:1.2;font-weight:700;letter-spacing:0}.training-guide__card>p{margin-top:5px;color:var(--guide-muted);font-size:12px;line-height:1.42}.training-guide__detail{margin-top:8px;padding:8px 9px;border-left:2px solid rgba(108,214,255,.46);background:#6cd6ff0f;color:#ffffffb3;font-size:11px;line-height:1.4}.training-guide__review{margin-top:8px;padding:8px 9px;border-left:2px solid rgba(32,214,139,.68);background:#20d68b13;animation:training-review-fade .24s ease-out both}.training-guide__review span{display:block;color:var(--guide-ready);font-size:11px;font-weight:700;letter-spacing:.14em}.training-guide__review p{margin-top:4px;color:#ffffffbd;font-size:11px;line-height:1.4}@keyframes training-review-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.training-guide__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.guide-action-button,.training-guide__nav-button{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 11px;border:1px solid rgba(255,255,255,.11);border-radius:5px;background:#ffffff0b;color:#ffffffc2;font-size:12px;font-weight:700;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.guide-action-button:hover:not(:disabled),.training-guide__nav-button:hover:not(:disabled){color:#fffffff0;background:#ffffff13;border-color:#ffffff2e}.guide-action-button:active:not(:disabled),.training-guide__nav-button:active:not(:disabled){transform:translateY(1px)}.guide-action-button--primary,.training-guide__nav-button--primary{color:#061014;background:var(--guide-accent);border-color:var(--guide-accent)}.guide-action-button--primary:hover:not(:disabled),.training-guide__nav-button--primary:hover:not(:disabled){color:#061014;background:#8adfff;border-color:#8adfff}.guide-action-button:disabled,.training-guide__nav-button:disabled{opacity:.42;cursor:not-allowed}.training-guide__footer{display:flex;justify-content:space-between;gap:8px}@media(max-width:900px){.tutorial-scene-progress{width:min(440px,calc(100% - 220px))}.tutorial-left-stack{width:calc(min(236px,100% - 36px) + 144px)}.tutorial-mission-card{width:min(236px,calc(100% - 36px))}.tutorial-treatment-panel{top:96px;right:12px;width:min(330px,calc(100% - 270px))}.tutorial-hcoil-treatment-panel{right:12px;width:min(300px,calc(100% - 270px))}.tutorial-hcoil-hotspot-badge{right:12px}.tutorial-treatment-callout{display:none}.tutorial-machine-drawer .tutorial-machine--figure8{width:100%;margin:0}.tutorial-output-dial strong{font-size:20px}.tutorial-output-adjust{height:88px;min-height:88px}.tutorial-output-slider--vertical{width:84px}.training-guide{top:10px;left:10px;width:min(390px,calc(100vw - 20px))}}@media(max-width:640px){.tutorial-scene-progress{display:none}.tutorial-checkpoint-notice{top:auto;right:10px;bottom:calc(74px + env(safe-area-inset-bottom,0px));width:min(260px,calc(100% - 20px))}.tutorial-left-stack{top:10px;left:-62px;width:calc(min(270px,100% - 20px) + 144px)}.tutorial-mission-card{top:58px;left:10px;width:min(270px,calc(100% - 20px));min-height:0}.tutorial-message-text,.tutorial-mission-card>p,.tutorial-mission-card--tour .tutorial-message-text{font-size:16px;line-height:1.45}.tutorial-nav-button,.tutorial-primary-action,.tutorial-mission-card--tour .tutorial-nav-button{min-height:44px}.tutorial-key-hints{display:none}.tutorial-treatment-panel{top:260px;left:10px;right:10px;width:auto;height:calc(100% - 430px);min-height:260px}.tutorial-control-strip{left:10px;right:10px;bottom:10px;grid-template-columns:1fr;width:auto;transform:none}.tutorial-machine__trial-deck{grid-template-columns:1fr}.tutorial-control-strip--hcoil,.tutorial-control-strip--hcoil.tutorial-control-strip--treatment{grid-template-columns:1fr;width:auto}.tutorial-hcoil-field{grid-template-columns:minmax(0,1fr) auto}.tutorial-hcoil-position{grid-template-columns:repeat(2,minmax(0,1fr))}.tutorial-hcoil-treatment-panel{top:260px;left:10px;right:10px;width:auto}.tutorial-hcoil-hotspot-badge{top:auto;right:10px;bottom:164px}.tutorial-primary-action{min-height:48px}.training-guide{position:fixed;inset:auto 10px 10px;width:auto}.training-guide__shell{gap:10px;padding:12px}.training-guide__description{display:none}.training-guide__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.training-guide h2{font-size:17px}.training-guide h3{font-size:16px}.training-guide__card>p,.training-guide__detail,.training-guide__review p{font-size:12px}}@media(prefers-reduced-motion:reduce){.tutorial-scene-progress__fill,.tutorial-scene-progress__flare,.tutorial-nav-button,.tutorial-primary-action,.tutorial-key-hints span,.tutorial-mission-card,.tutorial-machine-drawer,.tutorial-machine{transition:none}.tutorial-checkpoint-notice{transform:none;transition:none}.tutorial-scene-progress__flare:before,.tutorial-scene-progress__flare:after,.tutorial-key-hints,.tutorial-key-hints span,.tutorial-assist-dock__panel,.tutorial-mission-card__unlock-flash,.tutorial-mission-card__review,.tutorial-nav-button--ready:not(:disabled),.tutorial-machine-drawer{animation:none}.training-guide__meter span,.training-guide__dot,.guide-action-button,.training-guide__nav-button{transition:none}.training-guide__review{animation:none}}.tutorial-hcoil-treatment-controls{display:flex;flex-direction:column;align-items:stretch;gap:10px}.tutorial-hcoil-session{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.tutorial-hcoil-session .tutorial-machine__counter{margin-left:4px}.tutorial-hcoil-console{display:flex;flex-direction:column;gap:10px;width:100%}.tutorial-hcoil-console .treatment-card{background:#111116;border:1px solid rgba(255,255,255,.08);border-radius:8px;overflow:hidden}.tutorial-hcoil-console .treatment-card-header{padding:8px 12px;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.06);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#f0f0f573}.tutorial-hcoil-console .treatment-card-body{padding:12px}.tutorial-hcoil-console .treatment-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.tutorial-hcoil-console .treatment-row+.treatment-row{border-top:1px solid rgba(255,255,255,.04)}.tutorial-hcoil-console .treatment-row-label{font-size:11px;color:#f0f0f573}.tutorial-hcoil-console .treatment-row-value{font-size:12px;font-weight:600;font-family:var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);color:#f0f0f5e6}.tutorial-hcoil-console .treatment-row-value.highlight{color:#00c8f0}.tutorial-hcoil-console .bw-radial-dial-section{display:flex;flex-direction:column;align-items:center;gap:6px}.tutorial-hcoil-console .bw-radial-mt-label{font-size:11px;font-weight:600;color:#f0f0f580;font-family:var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace)}.tutorial-hcoil-console .bw-progress-bar{width:100%;height:8px;background:#0a0a0e;border:1px solid rgba(255,255,255,.06);border-radius:4px}.tutorial-hcoil-console .bw-progress-fill{height:100%;background:linear-gradient(90deg,#00c8f0,#0099b8);border-radius:4px;transition:width .3s ease}.tutorial-hcoil-console .bw-train-status{text-align:center;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;font-family:var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);letter-spacing:.02em}.tutorial-hcoil-console .bw-train-status.firing{background:#00c8f01f;border:1px solid rgba(0,200,240,.25);color:#00c8f0}.tutorial-hcoil-console .bw-train-status.iti{background:#f59e0b1a;border:1px solid rgba(245,158,11,.2);color:#f59e0b}.tutorial-hcoil-console .bw-progress-counters{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tutorial-hcoil-console .bw-counter{display:flex;flex-direction:column;align-items:center;padding:8px;background:#111116;border:1px solid rgba(255,255,255,.06);border-radius:6px}.tutorial-hcoil-console .bw-counter-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#f0f0f559}.tutorial-hcoil-console .bw-counter-value{font-size:14px;font-weight:600;font-family:var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);color:#f0f0f5e6}.tutorial-hcoil-treatment-panel--console{display:flex;flex-direction:column;gap:12px;pointer-events:auto;max-height:calc(100% - 120px);overflow-y:auto}.tutorial-hcoil-console-controls{display:flex;flex-direction:column;gap:10px}.tutorial-hcoil-console-controls .tutorial-hcoil-field{width:100%}.tutorial-hcoil-console-controls .tutorial-hcoil-session{display:flex;flex-wrap:wrap;gap:8px}.tutorial-hcoil-console-controls .tutorial-hcoil-session .tutorial-primary-action,.tutorial-hcoil-console-controls .tutorial-hcoil-session .tutorial-charge-action{flex:1 1 auto;justify-content:center}.tutorial-hcoil-change-btn{display:inline-flex;align-items:center;justify-content:center;flex:1 1 auto;gap:7px;min-height:36px;padding:0 14px;border:1px solid var(--tutorial-cyan);border-radius:6px;background:var(--tutorial-cyan);color:#061014;font-size:12px;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:background .16s cubic-bezier(.23,1,.32,1),border-color .16s cubic-bezier(.23,1,.32,1),box-shadow .16s cubic-bezier(.23,1,.32,1),transform .14s cubic-bezier(.23,1,.32,1)}.tutorial-hcoil-change-btn:hover{background:#9be4ff;border-color:#9be4ff;box-shadow:0 0 18px #6cd6ff66}.tutorial-hcoil-change-btn:active{transform:scale(.97)}.tutorial-hcoil-confirm{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 12px;border:1px solid rgba(0,200,240,.22);border-radius:8px;background:#070a0f99;text-align:center}.tutorial-hcoil-confirm__title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#f59e0bf2}.tutorial-hcoil-confirm__text{margin:0;font-size:12.5px;line-height:1.4;color:#f0f0f5d9}.tutorial-hcoil-confirm__buttons{display:flex;gap:8px;width:100%;margin-top:2px}.tutorial-hcoil-confirm__btn{flex:1}.tutorial-hcoil-iti{display:flex;flex-direction:column;gap:5px;text-align:left}.tutorial-hcoil-iti__row{display:flex;justify-content:space-between;align-items:center;gap:8px}.tutorial-hcoil-iti__time{font-variant-numeric:tabular-nums}.tutorial-hcoil-iti__bar{position:relative;height:6px;width:100%;background:#000000c7;border-radius:3px;box-shadow:inset 0 1px 2px #00000073;overflow:hidden}.tutorial-hcoil-iti__fill{height:100%;width:100%;border-radius:3px;background:linear-gradient(90deg,#f59e0b,#fc0 60%,#fff3b8);box-shadow:0 0 8px #f59e0b80;transform:scaleX(var(--iti-progress, 0));transform-origin:left center;transition:transform .12s linear}.tutorial-hcoil-adjust{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#070a0f80}.tutorial-hcoil-adjust__title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#f0f0f573;text-align:center}.tutorial-hcoil-adjust__mo,.tutorial-hcoil-adjust__mt{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.tutorial-hcoil-adjust__mo{gap:12px}.tutorial-hcoil-adjust__dial{display:flex;align-items:center;justify-content:center;gap:14px}.tutorial-hcoil-adjust__mo-value{min-width:76px;text-align:center;font-size:15px;font-weight:700;font-family:var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);color:#f0f0f5f2}.tutorial-hcoil-adjust__mt-ref{text-align:center;font-size:11px;font-family:var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);color:#f0f0f599}.tutorial-hcoil-adjust__goal{text-align:center;font-size:11px;color:#f59e0be6;font-family:var(--tutorial-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace)}.tutorial-control-strip:empty{display:none}.tutorial-confetti{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:30}.tutorial-confetti__piece{position:absolute;top:-16px;width:8px;height:13px;border-radius:2px;opacity:.9;will-change:transform,opacity;animation-name:tutorial-confetti-fall;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes tutorial-confetti-fall{0%{transform:translateY(-16px) rotate(0);opacity:0}8%{opacity:.95}to{transform:translateY(104vh) rotate(560deg);opacity:.85}}.tutorial-nav-button--complete-glow{animation:tutorial-complete-glow 1.4s ease-in-out infinite}@keyframes tutorial-complete-glow{0%,to{box-shadow:0 0 0 1px #40e0a080,0 0 14px #40e0a059}50%{box-shadow:0 0 0 1px #40e0a0d9,0 0 26px #40e0a0a6}}@media(prefers-reduced-motion:reduce){.tutorial-confetti{display:none}.tutorial-nav-button--complete-glow{animation:none}}.tutorial-left-stack>.hand-visualizer-panel,.tutorial-left-stack>.foot-visualizer-panel{position:static;width:100%;bottom:auto;right:auto;pointer-events:auto;animation:none}.workspace-header{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:52px;margin-bottom:24px}.workspace-header button{min-width:72px;min-height:44px;padding:10px 14px;border:1px solid rgba(255,255,255,.2);border-radius:7px;background:#ffffff0a;color:#eff8fb;font:inherit;font-size:13px;cursor:pointer}.workspace-header button:focus-visible{outline:2px solid #7be9ff;outline-offset:3px}.workspace-header__brand{display:flex;align-items:center;gap:10px;color:#bec9d0;font-size:12px;font-weight:600;letter-spacing:.05em}.workspace-header__brand img{width:23px;height:28px;object-fit:contain}.certification-home{min-height:100%;overflow:auto;padding:56px clamp(20px,6vw,96px);color:#f6f8fb;background:radial-gradient(circle at 15% 0%,rgba(0,200,240,.13),transparent 34rem),#08090d}.certification-home>.workspace-header{max-width:1050px;margin-inline:auto}.certification-home__intro,.certification-home__candidate,.certification-home__history{max-width:1050px;margin:0 auto 36px}.certification-home h1{font-size:clamp(2.3rem,5vw,4.4rem);margin:4px 0 12px;letter-spacing:-.055em}.certification-home h2{font-size:1.4rem}.certification-home h3{font-size:1.25rem}.certification-home p{color:#ecf2f8b8;line-height:1.55}.certification-home__eyebrow,.certification-track__status{color:#6de4ff!important;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.certification-home__local-note{margin-top:12px;font-size:.9rem}.certification-home__candidate{display:grid;gap:7px;max-width:560px}.certification-home input{border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#11141c;color:#fff;padding:12px;font:inherit}.certification-home label{font-weight:700}.certification-home__candidate p{font-size:.8rem}.certification-home__notice{max-width:1050px;margin:0 auto 24px;padding:12px;border:1px solid #f3b54f;border-radius:8px;color:#ffe0a0}.certification-home__section-heading{max-width:1050px;margin:0 auto 15px}.certification-home__tracks{max-width:1050px;margin:0 auto 42px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.certification-track{display:flex;flex-direction:column;gap:12px;padding:22px;min-height:290px;border:1px solid rgba(255,255,255,.11);border-radius:14px;background:#151923eb}.certification-track--eligible{border-color:#00c8f073}.certification-track--locked{opacity:.82}.certification-track__date{font-size:.83rem}.certification-track .certification-button{margin-top:auto}.certification-track__bypass{color:#ffc96a;font-size:.78rem;font-weight:500}.certification-track__bypass input{margin-right:7px}.certification-button{border:1px solid #00c8f0;border-radius:7px;background:#00b8e2;color:#031116;padding:10px 13px;cursor:pointer;font:inherit;font-size:.8rem;font-weight:700}.certification-button:disabled{opacity:.48;cursor:not-allowed}.certification-button--secondary{color:#aeeeff;border-color:#00c8f066;background:transparent}.certification-button--danger{color:#fff;border-color:#e86565;background:#a12f36}.certification-home button:focus-visible,.certification-home input:focus-visible{outline:2px solid #7eeaff;outline-offset:3px}.certification-home__certificate,.certification-history-list li{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px;border:1px solid rgba(255,255,255,.1);background:#11141c}.certification-home__certificate{margin-bottom:12px;border-radius:10px}.certification-home__certificate span,.certification-history-list small{display:block;margin-top:5px;color:#ecf2f899}.certification-home__certificate>div:last-child,.certification-history-list__actions{display:flex;gap:8px;flex-wrap:wrap}.certification-history-list{list-style:none;display:grid;gap:7px}.certification-history-list li{border-radius:7px}.certification-history-list button{border:0;background:none;color:#7eeaff;cursor:pointer;font:inherit;text-decoration:underline}.certification-home__empty{padding:18px 0}.certification-delete-dialog{position:fixed;z-index:400;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#000000b8}.certification-delete-dialog>div{width:min(520px,100%);padding:24px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#171a22}.certification-delete-dialog p{margin:12px 0}.certification-delete-dialog label,.certification-delete-dialog input{display:block;width:100%;margin:8px 0}.certification-delete-dialog>div>div{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.certification-delete-dialog button:not(.certification-button){border:0;background:transparent;color:#d9e7ed;padding:10px;cursor:pointer}@media(max-width:760px){.certification-home{padding:32px 18px}.certification-home__tracks{grid-template-columns:1fr}.certification-home__certificate,.certification-history-list li{align-items:flex-start;flex-direction:column}.certification-home__certificate>div:last-child{width:100%}.certification-home__certificate button{flex:1}}@media(prefers-reduced-motion:reduce){.certification-home *,.certification-home *:before,.certification-home *:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.certification-report{min-height:100vh;box-sizing:border-box;padding:clamp(28px,7vw,84px);background:#0b1016;color:#e9f1f7;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.certification-report__header,.certification-report__metadata,.certification-report__cases,.certification-report__certificate,.certification-report__actions{width:min(760px,100%);margin-inline:auto}.certification-report__eyebrow{color:#78d7ef;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.certification-report h1{margin:0;font-size:clamp(2.4rem,8vw,5rem)}.certification-report bdi{unicode-bidi:plaintext}.certification-report__metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:32px}.certification-report__metadata div,.certification-report__cases li,.certification-report__certificate{border:1px solid #29404e;border-radius:10px;padding:14px;background:#101a22}.certification-report dt{color:#8aa0ad;font-size:.72rem;text-transform:uppercase}.certification-report dd{margin:4px 0 0;overflow-wrap:anywhere}.certification-report__cases{display:grid;gap:10px;padding-left:28px;margin-top:26px}.certification-report__cases li{display:grid;gap:4px}.certification-report__cases span{color:#bccbd4;font-size:.88rem}.certification-report__certificate{margin-top:24px}.certification-report__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.certification-report button{border:1px solid #477588;border-radius:7px;padding:10px 14px;background:#142c38;color:inherit;cursor:pointer}.certification-report button:hover,.certification-report button:focus-visible{background:#1e4353;outline:2px solid #78d7ef;outline-offset:2px}.certification-report__error{width:min(760px,100%);margin:18px auto 0;color:#fecaca}.certification-report>.workspace-header,.certification-report__summary,.certification-report__technical{width:min(760px,100%);margin-inline:auto}.certification-report__summary{display:grid;grid-template-columns:1fr 1fr 2fr;gap:16px;margin-top:24px}.certification-report__summary>div{padding:14px 0;border-block:1px solid #29404e}.certification-report__summary dd{font-size:1rem;font-variant-numeric:tabular-nums}.certification-report__cases{padding-left:0}.certification-report__cases li{gap:8px;padding:18px}.certification-report__actions{margin-top:18px}.certification-report button{min-height:44px;font:inherit;font-size:13px}.certification-report button.certification-report__primary{background:#00b8e2;border-color:#00c8f0;color:#031116;font-weight:700}.certification-report--passed h1{color:#77e5b0}.certification-report--failed h1{color:#ffabab}.certification-report__technical{margin-top:28px;padding-top:18px;border-top:1px solid #29404e}.certification-report__technical summary{cursor:pointer;min-height:44px;color:#aeeeff}.certification-report__technical summary:focus-visible{outline:2px solid #78d7ef;outline-offset:3px}.certification-report__technical .certification-report__metadata{margin-top:8px}.certification-report__technical p{margin:18px 0;color:#bccbd4;line-height:1.5}@media(max-width:600px){.certification-report__summary{grid-template-columns:1fr 1fr;gap:8px 16px}.certification-report__summary>div:last-child{grid-column:1 / -1}.certification-report__actions{gap:8px}}@media print{.certification-report{min-height:0;padding:24px;background:#fff;color:#000}.certification-report__metadata div,.certification-report__cases li,.certification-report__certificate{border-color:#777;background:#fff}.certification-report__actions{display:none}}.workflow-selector{--bg-base: #07080b;--bg-deeper: #050608;--surface-1: #0d0f14;--surface-2: #11141b;--surface-3: #161a23;--line-soft: rgba(255, 255, 255, .06);--line: rgba(255, 255, 255, .09);--line-strong: rgba(255, 255, 255, .16);--text-1: rgba(255, 255, 255, .96);--text-2: rgba(255, 255, 255, .66);--text-3: rgba(255, 255, 255, .42);--text-4: rgba(255, 255, 255, .28);--locked-plate: #17181a;--locked-title: rgba(255, 255, 255, .55);--locked-reason: rgba(255, 255, 255, .5);--accent: #6cd6ff;--accent-soft: rgba(108, 214, 255, .14);--accent-line: rgba(108, 214, 255, .36);--accent-mint: #7be0b3;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;position:relative;display:flex;flex-direction:column;width:100%;min-height:100vh;overflow:hidden auto;isolation:isolate;background:radial-gradient(ellipse 70% 55% at 50% -10%,rgba(108,214,255,.06),transparent 65%),linear-gradient(180deg,var(--bg-base) 0%,var(--bg-deeper) 100%);color:var(--text-1);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}.workflow-selector:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background-image:linear-gradient(to right,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.022) 1px,transparent 1px);background-size:56px 56px;background-position:-1px -1px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 42%,#000 32%,transparent 78%);mask-image:radial-gradient(ellipse 80% 70% at 50% 42%,#000 32%,transparent 78%)}.workflow-selector__bar{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 clamp(20px,4vw,44px);border-bottom:1px solid var(--line-soft);background:linear-gradient(180deg,#07080b99,#07080b33);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.workflow-selector__back{min-width:72px;min-height:34px;padding:0 13px;border:1px solid var(--line);border-radius:5px;background:#ffffff09;color:var(--text-2);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.workflow-selector__back:hover{color:var(--text-1);border-color:var(--line-strong);background:#ffffff0f}.workflow-selector__back:active{transform:translateY(1px)}.workflow-selector__back:focus-visible{outline:1px solid var(--accent);outline-offset:3px}.workflow-selector__brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3)}.workflow-selector__brand-img{width:24px;height:24px;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 0 6px rgba(108,214,255,.18))}.workflow-selector__content{position:relative;z-index:1;flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;width:100%;max-width:1180px;margin:0 auto;padding:clamp(38px,8vh,84px) clamp(20px,6vw,72px);gap:clamp(30px,4vw,48px)}.workflow-selector__intro{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:clamp(18px,2.2vw,28px);row-gap:16px}.workflow-selector__title-mark{width:clamp(42px,5vw,62px);height:clamp(42px,5vw,62px);object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 0 22px rgba(108,214,255,.16))}.workflow-selector__eyebrow,.workflow-selector__divider-label,.workflow-option__eyebrow,.workflow-option__index,.workflow-option__footer{font-family:var(--mono);text-transform:uppercase}.workflow-selector__eyebrow{display:block;margin-bottom:11px;color:var(--accent);font-size:11px;font-weight:600;letter-spacing:.26em}.workflow-selector h1{margin:0;font-size:clamp(36px,5.8vw,66px);line-height:.98;letter-spacing:-.028em;font-weight:600;color:var(--text-1)}.workflow-selector__panel{display:flex;flex-direction:column;gap:18px}.workflow-selector__divider{display:flex;align-items:center;gap:16px;padding-left:2px}.workflow-selector__divider-label{color:var(--accent);font-size:11px;font-weight:600;letter-spacing:.32em;white-space:nowrap}.workflow-selector__divider-rule{flex:1;height:1px;background:linear-gradient(to right,var(--accent-line) 0%,var(--line) 18%,var(--line) 100%);opacity:.9}.workflow-selector__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;box-shadow:0 30px 80px -40px #000000b3,0 0 0 1px #ffffff05}.workflow-option{--option-accent: var(--accent);--media-transform: translateY(0);--media-hover-transform: translateY(-4px) scale(1.02);position:relative;display:flex;flex-direction:column;align-items:stretch;min-height:316px;gap:14px;margin:0;padding:clamp(24px,2.6vw,34px);border:0;border-radius:0;background:var(--surface-1);color:var(--text-1);font:inherit;overflow:hidden;text-align:left;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:background-color .22s ease,color .22s ease,transform .22s ease}.workflow-option--figure8{--media-transform: translateY(2px) rotate(-2deg);--media-hover-transform: translateY(-3px) rotate(-2deg) scale(1.025)}.workflow-option--hcoil{--option-accent: var(--accent-mint);--media-transform: translateY(0) rotate(1deg);--media-hover-transform: translateY(-4px) rotate(1deg) scale(1.02)}.workflow-option:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--option-accent);transform:scaleX(0);transform-origin:left center;transition:transform .28s cubic-bezier(.2,.7,.2,1)}.workflow-option:hover{background:var(--surface-2)}.workflow-option:hover:after,.workflow-option:focus-visible:after{transform:scaleX(1)}.workflow-option:active{background:var(--surface-3);transform:translateY(1px)}.workflow-option:focus-visible{outline:1px solid var(--option-accent);outline-offset:-2px}.workflow-option:hover .workflow-option__arrow,.workflow-option:focus-visible .workflow-option__arrow{color:var(--option-accent);transform:translate(4px)}.workflow-option:hover .workflow-option__index,.workflow-option:focus-visible .workflow-option__index{color:var(--text-2)}.workflow-option__head{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px}.workflow-option__head-right{display:inline-flex;align-items:center;gap:8px}.workflow-option__index{color:var(--text-3);font-size:11px;letter-spacing:.24em;transition:color .22s ease}.workflow-option__eyebrow{color:var(--text-3);font-size:10px;font-weight:600;letter-spacing:.22em}.workflow-option__title{position:relative;z-index:2;display:block;margin-top:2px;color:var(--text-1);font-size:clamp(28px,3vw,38px);font-weight:600;line-height:1.04;letter-spacing:-.024em}.workflow-option__media{position:relative;z-index:1;display:grid;place-items:center;min-height:138px;margin:0 -6px 2px;pointer-events:none}.workflow-option__media img{display:block;width:min(86%,292px);height:136px;object-fit:contain;opacity:.92;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;transform:var(--media-transform);filter:saturate(.94) contrast(1.04) drop-shadow(0 24px 32px rgba(0,0,0,.36));transition:opacity .24s ease,transform .24s ease,filter .24s ease}.workflow-option--figure8 .workflow-option__media img{width:min(82%,276px)}.workflow-option--hcoil .workflow-option__media img{width:min(72%,236px)}.workflow-option:hover .workflow-option__media img,.workflow-option:focus-visible .workflow-option__media img{opacity:1;transform:var(--media-hover-transform);filter:saturate(1) contrast(1.06) drop-shadow(0 28px 38px rgba(0,0,0,.44))}.workflow-option__footer{position:relative;z-index:2;margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;border-top:1px solid var(--line-soft);color:var(--text-3);font-size:10.5px;font-weight:600;letter-spacing:.18em}.workflow-option__arrow{display:inline-grid;place-items:center;width:32px;height:32px;color:var(--text-2);transition:transform .24s ease,color .24s ease}.workflow-option__arrow svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}@media(max-width:640px){.workflow-selector__bar{height:50px;padding:0 16px}.workflow-selector__brand span{display:none}.workflow-selector__content{padding:28px 16px 32px;justify-content:flex-start;gap:28px}.workflow-selector__title-mark{width:38px;height:38px}.workflow-selector h1{font-size:clamp(32px,9vw,46px)}.workflow-selector__grid{grid-template-columns:1fr;border-radius:5px}.workflow-option{min-height:268px;padding:22px 20px;gap:12px}.workflow-option__title{font-size:25px}.workflow-option__media{min-height:118px;margin-right:-4px;margin-left:-4px}.workflow-option__media img{height:112px}.workflow-option--hcoil .workflow-option__media img{width:min(70%,210px)}}@media(prefers-reduced-motion:reduce){.workflow-selector__back,.workflow-option,.workflow-option:after,.workflow-option__arrow,.workflow-option__media img,.workflow-option__index{transition:none}.workflow-selector__back:active,.workflow-option:hover,.workflow-option:active{transform:none}}.workflow-option--locked{cursor:not-allowed;background:var(--locked-plate)}.workflow-option--locked .workflow-option__index,.workflow-option--locked .workflow-option__eyebrow{opacity:.4;filter:saturate(.3)}.workflow-option--locked .workflow-option__media img{opacity:.37;filter:saturate(.28) contrast(1.04) drop-shadow(0 24px 32px rgba(0,0,0,.36))}.workflow-option--locked .workflow-option__title{color:var(--locked-title)}.workflow-option--locked .workflow-option__footer{color:var(--locked-reason)}.workflow-option__lock{display:inline-flex;width:20px;height:20px;color:#ffffff80}.workflow-option__lock svg{width:100%;height:100%}.workflow-option--locked:hover,.workflow-option--locked:active{background:var(--locked-plate);transform:none}.workflow-option--locked:hover:after,.workflow-option--locked:focus-visible:after{transform:scaleX(0)}.workflow-option--locked:hover .workflow-option__index,.workflow-option--locked:focus-visible .workflow-option__index{color:var(--text-3)}.workflow-option--locked:hover .workflow-option__media img,.workflow-option--locked:focus-visible .workflow-option__media img{opacity:.37;transform:var(--media-transform);filter:saturate(.28) contrast(1.04) drop-shadow(0 24px 32px rgba(0,0,0,.36))}.workflow-option--locked:focus-visible{outline-color:#fffffff2}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#0a0a0f;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.certification-history{min-height:100vh;box-sizing:border-box;padding:clamp(28px,7vw,84px);color:#e9f1f7;background:#0b1016}.certification-history>*,.certification-history ol{width:min(760px,100%);margin-inline:auto}.certification-history li{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;padding:14px;border:1px solid #29404e;border-radius:9px}.certification-history li span{color:#b6c6cf;flex:1 1 210px}.certification-history button{border:1px solid #477588;border-radius:6px;padding:8px 10px;color:#e9f1f7;background:#142c38;cursor:pointer}.app{display:flex;flex-direction:column;width:100%;height:100%;background:linear-gradient(180deg,#0a0a0f,#12121a)}.app--home{display:block;background:#08090d}.app--tutorial-run{--tutorial-ui: "IBM Plex Sans", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--tutorial-display: "IBM Plex Sans", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--tutorial-body: "IBM Plex Sans", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--tutorial-label: "IBM Plex Sans", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--tutorial-data: "IBM Plex Sans", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--tutorial-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;background:#07080d}.app--certification-run{background:#07080d}.app--certification-run .app-main{height:100vh}.certification-panel-spacer{width:var(--panel-width-collapsed);flex:0 0 var(--panel-width-collapsed);height:100%;min-height:0}.certification-preflight-status{position:fixed;z-index:250;left:50%;top:50%;width:min(520px,calc(100vw - 40px));transform:translate(-50%,-50%);padding:28px;border:1px solid rgba(0,200,240,.42);border-radius:12px;background:#0a0d14f0;color:#eefaff;text-align:center}.certification-preflight-status p{color:#71e4ff;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.certification-preflight-status h1{margin:9px 0;font-size:1.35rem}.certification-preflight-status span{color:#eefaffb8;font-size:.9rem;line-height:1.5}.app--grade-calibration .app-main{height:100vh}.app-header{display:flex;align-items:center;gap:16px;padding:0 24px;height:52px;background:#0e0e14;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0;position:relative;z-index:200;overflow:visible}.app-header-left{display:flex;align-items:center;gap:10px;flex:0 0 auto;min-width:0}.app-home-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.09);border-radius:6px;background:#ffffff0a;color:#ffffffad;cursor:pointer;touch-action:manipulation;transition:color .15s ease-out,background .15s ease-out,border-color .15s ease-out}.app-home-button:hover{color:#ffffffeb;background:#ffffff12;border-color:#ffffff29}.app-home-button:focus-visible{outline:2px solid #00c8f0;outline-offset:2px}.app-home-button svg{width:15px;height:15px}@media(pointer:coarse){.app-home-button{width:44px;height:44px;min-width:44px;min-height:44px;flex:0 0 auto;border-radius:8px}.app-home-button svg{width:17px;height:17px}}.app-title{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:#ffffffe6;letter-spacing:.3px;white-space:nowrap}.app-experience-chip{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;background:#00c8f01a;border:1px solid rgba(0,200,240,.24);color:#00c8f0;font-size:11px;line-height:1;font-weight:700;text-transform:uppercase;letter-spacing:.55px}.app-logo{color:#00c8f0;opacity:.9}.app-nav{display:flex;flex:1 1 auto;justify-content:center;gap:8px;min-width:0;overflow-x:auto;scrollbar-width:none}.app-nav::-webkit-scrollbar{display:none}.nav-tab{padding:7px 14px;background:transparent;border:none;border-radius:4px;color:#ffffff73;font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;transition:all .15s ease-out;white-space:nowrap}.nav-tab:hover:not(.active){color:#ffffffb3;background:#ffffff0a}.nav-tab.active{background:#141419;color:#00c8f0;box-shadow:inset 0 1px #ffffff0d,0 1px 3px #0000004d}.mode-segment-group{display:inline-flex;align-items:center;gap:2px;background:#060608;padding:3px;border-radius:6px;border:1px solid rgba(255,255,255,.06);min-width:0}.mode-segment-group__label{padding:0 8px;color:#ffffff61;text-transform:uppercase;font-size:9px;letter-spacing:.6px;font-weight:700;white-space:nowrap;-webkit-user-select:none;user-select:none}.mode-segment-group__divider{width:1px;height:18px;background:#ffffff1a;margin:0 4px}.calibration-chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:#ffffff8c;font-size:10px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;cursor:pointer;transition:color .15s ease-out,background .15s ease-out,border-color .15s ease-out;white-space:nowrap}.calibration-chip:hover{color:#ffffffd9;background:#ffffff0f;border-color:#ffffff26}.calibration-chip:focus-visible{outline:2px solid #00c8f0;outline-offset:2px}.calibration-chip--active{color:#00c8f0;border-color:#00c8f066;background:#141419}.calibration-chip svg{opacity:.7;flex-shrink:0}.calibration-chip--active svg{opacity:1}.app-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:1 1 420px;min-width:0;margin-left:auto;overflow:visible}.app--tutorial-run .app-header{background:#08090df5}.app--tutorial-run .app-header-actions{display:flex}.app--tutorial-run .app-title{color:#ffffffd6}:root{--panel-width-collapsed: 400px;--panel-width-expanded: 560px;--header-height: 52px}.app-main{display:flex;flex-direction:row;height:calc(100vh - var(--header-height));min-height:0;overflow:hidden}.scene-container{flex:1 1 auto;position:relative;min-width:0;min-height:0;background:radial-gradient(ellipse at center,#12121a,#0a0a0f)}.scene-container.is-grade-cal-numeric{visibility:hidden;pointer-events:none}.tms-scene-root{transition:opacity var(--concept-fade-ms, .5s) cubic-bezier(.22,1,.36,1)}.scene-container.is-concept-dimmed .tms-scene-root{opacity:var(--concept-dim-opacity, .12)}@media(prefers-reduced-motion:reduce){.tms-scene-root{transition-duration:1ms}}.scene-distress-veil{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .6s ease}.scene-distress-veil.is-active{opacity:1}.scene-distress-veil__glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,#dc262600 50%,#dc262638);box-shadow:inset 0 0 170px 34px #dc262657;opacity:.5}.scene-distress-veil.is-active .scene-distress-veil__glow{animation:scene-distress-breathe 2.1s ease-in-out infinite}@keyframes scene-distress-breathe{0%,to{opacity:.5}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.scene-distress-veil.is-active .scene-distress-veil__glow{animation:none;opacity:.85}}.app--tutorial-run .scene-container{flex:1 1 100%;width:100%}.app--tutorial-run .hand-visualizer-panel,.app--tutorial-run .foot-visualizer-panel{top:auto;left:auto;right:28px;bottom:24px;border-radius:8px;z-index:170}@media(max-width:640px){.app--tutorial-run .hand-visualizer-panel,.app--tutorial-run .foot-visualizer-panel{top:auto;left:auto;right:10px;bottom:108px}}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes tms-scene-loader-slide{0%{transform:translate(0)}to{transform:translate(350%)}}.panel-container{width:var(--panel-width-collapsed);flex:0 0 var(--panel-width-collapsed);height:100%;min-height:0;overflow:hidden;padding:8px 8px 8px 0;transition:width .25s ease-out,flex-basis .25s ease-out}.panel-container.expanded{width:var(--panel-width-expanded);flex:0 0 var(--panel-width-expanded)}.target-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.target-popup{background:#0e0e14;border:1px solid rgba(0,200,240,.2);border-radius:12px;padding:24px;max-width:380px;width:90%;position:relative;box-shadow:0 0 40px #00000080,0 0 80px #00c8f014}.popup-close{position:absolute;top:12px;right:12px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:#fff6;font-size:18px;cursor:pointer;transition:all .15s ease-out}.popup-close:hover{background:#ffffff14;color:#fffc}.target-popup h3{font-size:17px;font-weight:600;color:#00c8f0;margin-bottom:10px;padding-right:32px}.target-popup p{font-size:13px;color:#f0f0f5a6;line-height:1.6;margin-bottom:6px}.popup-note{padding:12px 14px;background:#ffab0014;border:1px solid rgba(255,171,0,.2);border-radius:8px;font-size:12px;color:#ffab00;margin-top:14px;line-height:1.5}.dev-toggle{position:fixed;bottom:140px;left:16px;padding:8px 14px;background:#0a0a0fe6;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#ffffff80;font-size:12px;cursor:pointer;z-index:100;transition:all .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dev-toggle:hover{background:#1e1e2af2;border-color:#00d4ff4d;color:#fffc}.dev-panel{position:fixed;bottom:140px;left:16px;width:320px;max-height:50vh;overflow-y:auto;background:#0a0a0ff2;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:16px;z-index:100;font-size:12px;font-family:SF Mono,Fira Code,Consolas,monospace;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.dev-close{position:absolute;top:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#fff6;font-size:16px;cursor:pointer;border-radius:4px;transition:all .2s ease}.dev-close:hover{background:#ffffff1a;color:#fff}.dev-panel h4{font-size:14px;font-weight:600;color:#00d4ff;margin-bottom:12px}.dev-section{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}.dev-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.dev-section strong{display:block;color:#a855f7;margin-bottom:4px;font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:600}.dev-section pre{color:#ffffffb3;white-space:pre-wrap;word-break:break-all;margin:0;font-size:11px;line-height:1.5}.app.viewer-mode{background:#0a0a0f}.app.viewer-mode .app-main{height:100vh}.app.viewer-mode .scene-container{width:100%;height:100%;flex:1 1 100%}@media(max-width:1200px){.panel-container{width:320px;flex:0 0 320px}.panel-container.expanded{width:440px;flex:0 0 440px}}@media(max-width:1120px){.app-header{gap:12px;padding:0 16px}.app-nav{justify-content:flex-start}.nav-tab{padding:7px 10px;font-size:9.5px;letter-spacing:.35px}.app-header-actions{gap:8px}.asset-profile-selector,.head-profile-selector{gap:0}.asset-profile-selector span,.head-profile-selector span{display:none}.asset-profile-selector select,.head-profile-selector select{min-width:116px;max-width:132px;padding:0 8px}.figure8-coil-profile-selector select{min-width:116px;max-width:126px}}@media(max-width:900px){.app-main{flex-direction:column}.scene-container{flex:1 1 50%;min-height:300px}.panel-container,.panel-container.expanded,.certification-panel-spacer{width:100%;flex:1 1 50%;min-height:0}.app-nav{display:none}}.scene-container canvas{touch-action:none}html,body{overscroll-behavior:none;-webkit-overflow-scrolling:touch}.scene-container button{-webkit-tap-highlight-color:transparent}@media(max-width:768px)and (pointer:coarse){.scene-legend{display:none}.panel-container{max-height:40vh}.app-title>span:not(.app-experience-chip){display:none}}.app--workspace-run .app-main{height:calc(100dvh - var(--header-height))}.app--workspace-run.app--certification-run .app-main{height:100dvh}@media(max-width:900px){.app--workspace-run .scene-container{min-height:180px;flex:1 1 44%}.app--workspace-run .panel-container,.app--workspace-run .panel-container.expanded,.app--workspace-run .certification-panel-spacer{flex:1 1 56%;max-height:none}.app--workspace-run .hand-visualizer-panel,.app--workspace-run .foot-visualizer-panel{width:144px;right:10px;bottom:12px}.app--workspace-run .hand-canvas-container,.app--workspace-run .foot-canvas-container{height:126px}}@media(min-width:600px)and (max-width:900px)and (max-height:550px){.app--workspace-run .app-main{flex-direction:row}.app--workspace-run .scene-container{min-height:0;flex:1 1 0}.app--workspace-run .panel-container,.app--workspace-run .panel-container.expanded,.app--workspace-run .certification-panel-spacer{width:clamp(280px,44vw,400px);flex:0 0 clamp(280px,44vw,400px)}.app--workspace-run .certification-runner__panel{align-self:stretch;width:calc(clamp(280px,44vw,400px) - 16px);height:auto;margin:8px 8px 8px auto}}@media(max-width:600px){.app--workspace-run{--header-height: 100px}.app--workspace-run .app-header{height:var(--header-height);flex-wrap:wrap;gap:0;padding:4px 12px}.app--workspace-run .app-header-left{height:44px}.app--workspace-run .app-title>span:not(.app-experience-chip){display:none}.app--workspace-run .app-header-actions{flex:0 0 100%;width:100%;gap:8px}.app--workspace-run .pill-selector{flex:1 1 0}.app--workspace-run .pill-selector__button{width:100%;height:44px;gap:6px;padding-inline:8px}.app--workspace-run .pill-selector__value{flex:1;text-align:left}.app--workspace-run .pill-selector:first-child .pill-selector-menu{left:0;right:auto;transform-origin:top left}}@media(pointer:coarse){.app--workspace-run .scene-keyboard-legend{display:none!important}.app--workspace-run .pill-selector-menu__option{min-height:44px}}@media(pointer:coarse)and (max-width:900px){.app--workspace-run .virtual-joystick{left:12px;bottom:28px}.app--workspace-run .joystick-base{width:96px;height:96px}.app--workspace-run .mobile-controls-hide{left:12px;bottom:132px;min-height:36px}.app--workspace-run .touch-target-buttons{display:none}}@media(max-width:360px){.app--workspace-run .hand-visualizer-panel,.app--workspace-run .foot-visualizer-panel{width:124px}.app--workspace-run .hand-canvas-container,.app--workspace-run .foot-canvas-container{height:78px}.app--workspace-run .hand-panel-header,.app--workspace-run .foot-panel-header{gap:4px;padding:6px 8px}.app--workspace-run .target-proximity-indicator{top:50px!important;padding:6px 10px!important}.app--workspace-run .target-proximity-indicator__label{display:none}.app--workspace-run .target-proximity-indicator__target{font-size:14px!important}}
