@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";.titration-page-wrapper{position:relative;max-width:1400px;margin:0 auto;padding:16px;display:flex;flex-direction:column;gap:16px;overflow-x:hidden;box-sizing:border-box;--practical-bg: #090d16;--practical-card-bg: #0f172a;--practical-card-glass: #0f172a;--practical-card-overlay: #0f172a;--practical-border: rgba(255, 255, 255, .1);--practical-border-subtle: rgba(255, 255, 255, .06);--practical-text-main: #f8fafc;--practical-text-sub: #94a3b8;--practical-text-muted: #64748b;--practical-strip-bg: #1e293b;--practical-input-bg: #1e293b;--practical-bench-bg: #1e293b;--practical-tile-fill: #f8fafc;--practical-tile-stroke: #cbd5e1;--practical-svg-glass: rgba(255, 255, 255, .04);--practical-svg-stroke: rgba(255, 255, 255, .65);--practical-retort-stand: #475569;--practical-retort-rod: #94a3b8;--practical-accent-cyan: #7fa8cc;--practical-accent-blue: #7fa8cc;--practical-modal-bg: #0f172a;--practical-card-shadow: none;--practical-btn-sec-bg: #1e293b;--practical-btn-sec-border: rgba(255, 255, 255, .12)}@media(max-width:768px){.titration-page-wrapper{padding-bottom:96px}}.light .titration-page-wrapper,[data-theme=light] .titration-page-wrapper{--practical-bg: #f8fafc;--practical-card-bg: #ffffff;--practical-card-glass: #ffffff;--practical-card-overlay: #ffffff;--practical-border: #e2e8f0;--practical-border-subtle: #cbd5e1;--practical-text-main: #0f172a;--practical-text-sub: #334155;--practical-text-muted: #64748b;--practical-strip-bg: #f1f5f9;--practical-input-bg: #ffffff;--practical-bench-bg: #f1f5f9;--practical-tile-fill: #ffffff;--practical-tile-stroke: #94a3b8;--practical-svg-glass: rgba(15, 23, 42, .03);--practical-svg-stroke: #334155;--practical-retort-stand: #64748b;--practical-retort-rod: #475569;--practical-accent-cyan: #184e78;--practical-accent-blue: #184e78;--practical-modal-bg: #ffffff;--practical-card-shadow: 0 1px 3px rgba(0, 0, 0, .05);--practical-btn-sec-bg: #f1f5f9;--practical-btn-sec-border: #cbd5e1}.titration-header-bar{padding:14px 20px;background:var(--practical-card-bg);border:1px solid var(--practical-border);border-radius:16px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;box-shadow:var(--practical-card-shadow);color:var(--practical-text-main)}.titration-header-left{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.titration-header-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.titration-main-layout{display:grid;grid-template-columns:260px 1fr 300px;gap:16px;align-items:start}.titration-left-sidebar{display:flex;flex-direction:column;gap:12px;background:var(--practical-card-bg);border:1px solid var(--practical-border);border-radius:16px;padding:16px;box-shadow:var(--practical-card-shadow);color:var(--practical-text-main)}.titration-center-workspace{display:flex;flex-direction:column;gap:12px;min-width:0}.titration-right-sidebar{display:flex;flex-direction:column;gap:16px}.titration-panel{background:var(--practical-card-bg);border:1px solid var(--practical-border);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--practical-card-shadow);color:var(--practical-text-main)}.titration-bench-surface{position:relative;min-height:480px;background:var(--practical-card-bg);border:1px solid var(--practical-border);border-radius:16px;padding:16px;display:flex;flex-direction:column;box-shadow:var(--practical-card-shadow)}.titration-svg-wrapper{width:100%;max-width:100%;height:350px;background:var(--practical-bench-bg);border-radius:12px;border:1px solid var(--practical-border-subtle);overflow:hidden;position:relative}.titration-svg-element{width:100%;height:100%;display:block}.touch-btn{min-height:44px;padding:10px 16px;border-radius:10px;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;touch-action:manipulation;transition:background .2s ease,opacity .2s ease}.touch-btn:active{transform:translateY(1px)}.titration-stopcock-row{display:flex;gap:8px;flex-wrap:wrap}.titration-stopcock-btn{flex:1;min-width:100px;min-height:44px}.titration-workflow-toggle{display:none;width:100%;min-height:44px;padding:12px 16px;background:var(--practical-card-overlay);border:1px solid var(--practical-border);border-radius:12px;color:var(--practical-text-main);font-size:13.5px;font-weight:700;cursor:pointer;align-items:center;justify-content:space-between}.titration-bottom-toolbar{padding:12px 16px;background:var(--practical-card-bg);border:1px solid var(--practical-border);border-radius:16px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;position:sticky;bottom:12px;z-index:50;box-shadow:var(--practical-card-shadow);color:var(--practical-text-main)}@media(min-width:768px)and (max-width:1023px){.titration-main-layout{display:grid;grid-template-columns:240px 1fr;gap:16px;align-items:start}.titration-left-sidebar{grid-column:1}.titration-center-workspace{grid-column:2}.titration-right-sidebar{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:12px}.titration-svg-wrapper{height:320px}}@media(max-width:767px){.titration-page-wrapper{padding:10px 8px 80px;gap:12px}.titration-header-bar{padding:12px;border-radius:20px}.titration-header-left,.titration-header-right{width:100%;justify-content:space-between}.titration-main-layout{display:flex;flex-direction:column;gap:12px}.titration-center-workspace,.titration-right-sidebar{display:contents}.mobile-order-1-instructions{order:1;width:100%}.mobile-order-2-workspace{order:2;width:100%}.mobile-order-3-status{order:3;width:100%}.mobile-order-4-examiner{order:4;width:100%}.mobile-order-5-workflow{order:5;width:100%}.mobile-order-6-controls{order:6;width:100%}.titration-workflow-toggle{display:flex}.titration-workflow-content-collapsed{display:none}.titration-workflow-content-expanded{display:flex;flex-direction:column;gap:6px;margin-top:8px}.titration-bench-surface{min-height:auto;padding:12px;border-radius:20px}.titration-svg-wrapper{height:280px;overflow-x:auto}.four-buttons-responsive-grid{grid-template-columns:1fr 1fr!important}}@media(max-width:379px){.titration-svg-wrapper{height:240px}.four-buttons-responsive-grid{grid-template-columns:1fr!important}.touch-btn{font-size:12px;padding:8px 12px}}.titration-flask-swirl{transform-box:fill-box;transform-origin:50% 100%;animation:titration-swirl .6s ease-in-out infinite}@keyframes titration-swirl{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}@media(prefers-reduced-motion:reduce){.titration-flask-swirl{animation:none}}.titration-svg-wrapper{height:auto;aspect-ratio:700 / 380}:root{--bg-base: #090d16;--bg-surface: rgba(15, 23, 42, .7);--bg-surface-opaque: #0f172a;--bg-surface-hover: rgba(30, 41, 59, .8);--bg-card: #0f172a;--bg-card-hover: #1e293b;--bg-input: #0f172a;--bg-input-hover: #1e293b;--bg-header: rgba(9, 13, 22, .85);--bg-sidebar: #090d16;--bg-modal: #0f172a;--bg-dropdown: #0f172a;--border-glass: rgba(255, 255, 255, .1);--border-active: rgba(127, 168, 204, .5);--border-subtle: rgba(255, 255, 255, .08);--border-input: rgba(255, 255, 255, .18);--border-input-focus: rgba(127, 168, 204, .6);--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--text-placeholder: #64748b;--text-input: #f8fafc;--color-primary: #3d7ab0;--color-primary-hover: #4a88bf;--color-primary-glow: rgba(61, 122, 176, .25);--color-primary-soft: rgba(127, 168, 204, .12);--color-on-primary: #ffffff;--color-secondary: #7fa8cc;--color-accent: #e0aa4f;--color-accent-soft: rgba(219, 158, 61, .14);--color-success: #2fa866;--color-danger: #e5534b;--color-warning: #e0aa4f;--color-scholar-blue: var(--color-primary);--color-scholar-blue-container: var(--color-primary-hover);--surface-container-lowest: #090d16;--surface-container-low: #0f172a;--surface-container: #1e293b;--surface-container-high: #334155;--surface-container-highest: #475569;--font-sans: "Inter", "Plus Jakarta Sans", system-ui, sans-serif;--font-display: "Inter", "DM Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--space-xs: 4px;--space-s: 8px;--space-m: 16px;--space-l: 24px;--space-xl: 32px;--space-xxl: 48px;--radius-s: 8px;--radius-sm: 8px;--radius-m: 12px;--radius-md: 14px;--radius-l: 16px;--radius-lg: 20px;--radius-xl: 24px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .12);--shadow-glow: 0 0 25px rgba(47, 107, 154, .25);--shadow-glass: 0 8px 32px 0 rgba(0, 0, 0, .37);--scrollbar-thumb: #334155;--scrollbar-track: #090d16;--skeleton-bg: #1e293b;--practical-bg: #090d16;--practical-card-bg: #0f172a;--practical-card-glass: #0f172a;--practical-card-overlay: #0f172a;--practical-card-hover: #1e293b;--practical-border: rgba(255, 255, 255, .1);--practical-border-subtle: rgba(255, 255, 255, .06);--practical-text-main: #f8fafc;--practical-text-sub: #94a3b8;--practical-text-muted: #64748b;--practical-accent-blue: #7fa8cc;--practical-badge-bg: rgba(127, 168, 204, .1);--practical-badge-border: rgba(127, 168, 204, .25);--practical-meta-bg: rgba(148, 163, 184, .08);--practical-arrow-bg: rgba(127, 168, 204, .1);--practical-card-shadow: 0 4px 20px rgba(0, 0, 0, .3);--practical-card-shadow-hover: 0 12px 32px rgba(0, 0, 0, .45);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--transition-smooth: all .25s cubic-bezier(.4, 0, .2, 1)}.light,[data-theme=light]{--bg-base: #f4f6f9;--bg-surface: #ffffff;--bg-surface-opaque: #ffffff;--bg-surface-hover: #f1f5f9;--bg-card: #ffffff;--bg-card-hover: #f8fafc;--bg-input: #ffffff;--bg-input-hover: #f8fafc;--bg-header: rgba(255, 255, 255, .92);--bg-sidebar: #ffffff;--bg-modal: #ffffff;--bg-dropdown: #ffffff;--border-glass: #e2e8f0;--border-active: rgba(24, 78, 120, .45);--border-subtle: #f1f5f9;--border-input: #cbd5e1;--border-input-focus: #184e78;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--text-placeholder: #94a3b8;--text-input: #0f172a;--color-primary: #184e78;--color-primary-hover: #123b5b;--color-primary-glow: rgba(24, 78, 120, .14);--color-primary-soft: #e8eff6;--color-secondary: #2f6b9a;--color-accent: #db9e3d;--color-accent-soft: #fbf3e4;--color-success: #15803d;--color-danger: #b91c1c;--color-warning: #a8701f;--surface-container-lowest: #ffffff;--surface-container-low: #f8fafc;--surface-container: #e2e8f0;--surface-container-high: #cbd5e1;--surface-container-highest: #94a3b8;--shadow-glass: 0 4px 12px rgba(15, 23, 42, .08);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .06);--shadow-md: 0 4px 12px rgba(15, 23, 42, .08);--shadow-lg: 0 8px 24px rgba(15, 23, 42, .1);--scrollbar-thumb: #cbd5e1;--scrollbar-track: #f1f5f9;--skeleton-bg: #e2e8f0;--practical-bg: #f4f6f9;--practical-card-bg: #ffffff;--practical-card-glass: #ffffff;--practical-card-overlay: #ffffff;--practical-card-hover: #f8fafc;--practical-border: #e2e8f0;--practical-border-subtle: #cbd5e1;--practical-text-main: #0f172a;--practical-text-sub: #334155;--practical-text-muted: #64748b;--practical-accent-blue: #184e78;--practical-badge-bg: rgba(24, 78, 120, .08);--practical-badge-border: rgba(24, 78, 120, .2);--practical-meta-bg: rgba(148, 163, 184, .1);--practical-arrow-bg: rgba(24, 78, 120, .06);--practical-card-shadow: 0 2px 8px rgba(0, 0, 0, .04);--practical-card-shadow-hover: 0 12px 32px rgba(24, 78, 120, .12), 0 2px 8px rgba(0, 0, 0, .06)}.blur-content{filter:blur(15px)!important;pointer-events:none}.no-select{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.note-text-render{position:relative}.note-text-render:before{content:"SomaSmart Security Protected";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-30deg);font-size:24px;font-weight:800;color:#ffffff08;pointer-events:none;z-index:10;white-space:nowrap}.light .note-text-render:before{color:#00000008}*{box-sizing:border-box;padding:0;margin:0}html,body{width:100%;min-height:100vh;background-color:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;transition:background-color .3s ease,color .3s ease}body{position:relative;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}input,textarea,select{background-color:var(--bg-input);color:var(--text-input);border:1px solid var(--border-input);transition:background-color .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease}input::placeholder,textarea::placeholder{color:var(--text-placeholder);opacity:.8}input:focus,textarea:focus,select:focus{border-color:var(--border-input-focus);box-shadow:0 0 0 3px var(--color-primary-glow);outline:none}.glass-panel{background:var(--bg-surface);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);box-shadow:var(--shadow-glass);border-radius:var(--radius-md);color:var(--text-primary);transition:var(--transition-smooth)}.glass-panel-hover:hover{border-color:var(--border-active);transform:translateY(-4px);box-shadow:0 12px 40px #184e7826}.stitch-card,.card-animate{background:var(--bg-card);border:1px solid var(--border-glass);color:var(--text-primary);border-radius:16px;padding:16px;position:relative;overflow:hidden;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),border-color .25s ease,background-color .25s ease;cursor:pointer}.stitch-card:hover,.card-animate:hover{transform:translateY(-4px);border-color:#184e784d!important;box-shadow:0 10px 28px #184e781f,0 0 20px #184e7814}.stitch-card:hover svg,.card-animate:hover svg{transform:scale(1.12) rotate(-2deg);transition:transform .25s cubic-bezier(.34,1.56,.64,1),color .2s ease}.stitch-card:hover [style*=optionIconWrap],.card-animate:hover [style*=optionIconWrap],.stitch-card:hover [style*=continueIcon],.card-animate:hover [style*=continueIcon],.stitch-card:hover [style*=subjectIconSmall],.card-animate:hover [style*=subjectIconSmall]{transform:translateY(-2px) scale(1.08);background:#184e7826!important;transition:transform .25s cubic-bezier(.34,1.56,.64,1),background-color .2s ease}.stitch-card:active,.card-animate:active{transform:translateY(-1px) scale(.98);transition:transform .1s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 14px #184e782e}.stitch-card:after,.card-animate:after{content:"";position:absolute;top:50%;left:50%;width:120%;height:120%;background:radial-gradient(circle,rgba(24,78,120,.2) 10%,transparent 60%);transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none;border-radius:inherit;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .4s ease}.stitch-card:active:after,.card-animate:active:after{transform:translate(-50%,-50%) scale(1.8)}.liquid-glass-greeting{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;padding:6px 16px 6px 6px;max-width:45%;border-radius:9999px;background:#ffffff0f!important;backdrop-filter:blur(44px) saturate(200%) contrast(115%) brightness(105%)!important;-webkit-backdrop-filter:blur(44px) saturate(200%) contrast(115%) brightness(105%)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 8px 30px #00000026,inset 0 1px #ffffff59,inset 0 -.5px #ffffff1a!important;animation:gentleFloatingPill 4s ease-in-out infinite!important;transition:all .35s cubic-bezier(.4,0,.2,1);will-change:transform}.liquid-glass-greeting:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.12) 0%,transparent 50%,rgba(255,255,255,.03) 100%);pointer-events:none}.liquid-glass-greeting:hover{transform:translateY(-3px) scale(1.02);background:#ffffff1a!important;border-color:#ffffff4d!important;box-shadow:0 12px 36px #0000002e,0 0 16px #ffffff1f,inset 0 1px #ffffff80!important}.liquid-glass-greeting:after{content:"";position:absolute;top:-50%;left:-100%;width:100%;height:200%;background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.01) 40%,rgba(255,255,255,.18) 50%,rgba(255,255,255,.01) 60%,transparent 100%);transform:rotate(25deg);animation:glassShinePass 6s infinite cubic-bezier(.4,0,.2,1);pointer-events:none}.liquid-glass-avatar{width:40px;height:40px;border-radius:50%!important;background:linear-gradient(135deg,#ffffff40,#ffffff0f);border:1.5px solid rgba(255,255,255,.5)!important;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:16px;box-shadow:0 0 10px #ffffff40,0 2px 8px #0000001a,inset 0 1px 1px #fff9!important;flex-shrink:0;transition:transform .3s ease,box-shadow .3s ease}.liquid-glass-greeting:hover .liquid-glass-avatar{transform:scale(1.06);box-shadow:0 0 16px #ffffff80,0 4px 12px #00000026,inset 0 1px 1px #fffc!important}@keyframes gentleFloatingPill{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes glassShinePass{0%{left:-100%}25%,to{left:200%}}.liquid-glass-full-panel{position:relative;overflow:hidden;width:100%!important;box-sizing:border-box!important;background:#ffffff0f!important;backdrop-filter:blur(44px) saturate(200%) contrast(115%) brightness(105%)!important;-webkit-backdrop-filter:blur(44px) saturate(200%) contrast(115%) brightness(105%)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 8px 30px #00000026,inset 0 1px #ffffff59,inset 0 -.5px #ffffff1a!important;border-radius:24px!important;padding:14px 24px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;flex-wrap:nowrap!important;gap:0!important;animation:softPanelFadeIn .8s cubic-bezier(.16,1,.3,1) forwards!important;transition:all .35s cubic-bezier(.4,0,.2,1);will-change:transform,opacity}.liquid-glass-full-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.1) 0%,transparent 40%,rgba(255,255,255,.02) 100%);pointer-events:none}.liquid-glass-full-panel:after{content:"";position:absolute;top:-50%;left:-100%;width:80%;height:200%;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.01) 42%,rgba(255,255,255,.14) 50%,rgba(255,255,255,.01) 58%,transparent 100%);transform:rotate(20deg);animation:glassShinePass 8s 1s infinite cubic-bezier(.4,0,.2,1);pointer-events:none}.liquid-glass-full-panel:hover{transform:translateY(-2px);background:#ffffff1a!important;border-color:#ffffff47!important;box-shadow:0 12px 36px #0003,0 0 14px #ffffff1a,inset 0 1px #ffffff73!important}.stitch-streak-icon-circle,[style*=streakIconCircle]{animation:iconPulseGlow 3.5s ease-in-out infinite alternate!important;will-change:transform,box-shadow}@keyframes softPanelFadeIn{0%{opacity:0;transform:translate3d(0,14px,0) scale(.98)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes iconPulseGlow{0%{transform:scale(1);box-shadow:0 2px 8px #0000001a,inset 0 1px 1px #ffffff59}50%{transform:scale(1.08);box-shadow:0 0 14px #ffffff73,0 4px 12px #0000002e,inset 0 1px 2px #fff9}to{transform:scale(1);box-shadow:0 2px 8px #0000001a,inset 0 1px 1px #ffffff59}}.stitch-tag{display:inline-flex;align-items:center;padding:2px 10px;border-radius:9999px;font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:11px;font-weight:500;letter-spacing:.02em;text-transform:uppercase}.stitch-tag-blue{background:#184e7814;color:var(--color-primary)}.stitch-tag-green{background:#00966814;color:var(--color-success)}.stitch-tag-red{background:#ba1a1a14;color:var(--color-danger)}.stitch-tag-amber{background:#db9e3d1a;color:var(--color-warning)}.stitch-progress-bar{width:100%;height:6px;background:var(--surface-container, #e2e8f0);border-radius:9999px;overflow:hidden}.stitch-progress-bar-fill{height:100%;background:var(--color-scholar-blue, var(--color-primary));border-radius:9999px;transition:width .6s cubic-bezier(.22,1,.36,1)}.stitch-section-label{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:12px}.input-field{width:100%;padding:14px 18px;background:#0f172acc;border:1px solid var(--border-glass);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);font-size:15px;outline:none;transition:var(--transition-smooth)}.input-field:focus{border-color:var(--color-primary);box-shadow:0 0 12px #184e784d}.input-field::placeholder{color:var(--text-muted)}.select-field{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg fill='white' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:var(--radius-md);font-weight:600;font-size:15px;cursor:pointer;border:none;transition:var(--transition-smooth);font-family:var(--font-sans)}.btn-primary{background:var(--color-primary);color:#fff;box-shadow:0 4px 15px #184e7859}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #184e7880;background:var(--color-primary-hover)}.btn-scholar{background:var(--color-primary);color:#fff;border:none;border-radius:12px;font-weight:700;padding:14px 28px;box-shadow:none;transition:all .15s ease}.btn-scholar:hover{background:#004395;opacity:.95}.btn-scholar:active{transform:scale(.98)}.btn-secondary{background:#ffffff0d;border:1px solid var(--border-glass);color:var(--text-primary)}.btn-secondary:hover{background:#ffffff1a;border-color:#fff3}.btn-outline{background:transparent;border:1px solid var(--border-glass);color:var(--text-primary);border-radius:12px;font-weight:600;padding:10px 20px}.btn-outline:hover{background:var(--surface-container-low, #e8eff6);border-color:var(--border-active)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover{background:var(--color-danger)}.btn-success{background:var(--color-success);color:#fff}.somasmart-brand-text,.text-gradient{color:var(--text-primary)!important;background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;-webkit-text-fill-color:initial!important;font-family:"Inter",var(--font-sans);font-weight:700;letter-spacing:-.01em}.somasmart-logo-wrap{display:inline-flex;align-items:center;gap:10px;text-decoration:none;background:transparent;padding:0;margin:0}.somasmart-main-logo{height:48px;max-height:52px;width:auto;object-fit:contain;display:block;flex-shrink:0;filter:drop-shadow(0 2px 8px rgba(0,0,0,.12));transition:transform .2s ease,height .2s ease}.somasmart-main-logo:hover{transform:scale(1.03)}.somasmart-collapsed-logo{height:38px;width:auto;object-fit:contain;display:block;margin:0 auto;flex-shrink:0;filter:drop-shadow(0 2px 8px rgba(0,0,0,.12))}.somasmart-login-logo{height:76px;max-height:18vh;width:auto;object-fit:contain;display:block;margin:0 auto;filter:drop-shadow(0 4px 14px rgba(0,0,0,.2))}@media(max-width:768px){.somasmart-main-logo{height:40px}.somasmart-login-logo{height:64px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .35s ease forwards}@keyframes pulseGlow{0%,to{box-shadow:0 0 15px #184e7833}50%{box-shadow:0 0 30px #184e7866}}.animate-pulse-glow{animation:pulseGlow 3s infinite ease-in-out}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.section-reveal{opacity:0;transform:translateY(40px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.section-reveal.revealed{opacity:1;transform:translateY(0)}.card-reveal{opacity:0;transform:translateY(30px) scale(.97);transition:opacity .5s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1)}.card-reveal.revealed{opacity:1;transform:translateY(0) scale(1)}.nav-link-animated{position:relative;background:transparent;border:none;cursor:pointer;font-family:var(--font-sans);font-size:14px;font-weight:500;color:var(--text-secondary);padding:6px 2px;outline:none;transition:color .25s ease,transform .2s ease}.nav-link-animated:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:2px;background:var(--color-primary);border-radius:1px;transition:width .3s cubic-bezier(.22,1,.36,1),left .3s cubic-bezier(.22,1,.36,1)}.nav-link-animated:hover{color:#fff;transform:translateY(-1px)}.nav-link-animated:hover:after{width:60%;left:20%}.nav-link-animated.active{color:#fff;font-weight:700}.nav-link-animated.active:after{width:100%;left:0;background:var(--color-primary)}.mobile-nav-animated{background:transparent;border:none;font-size:18px;text-align:left;padding:12px 0;color:var(--text-secondary);cursor:pointer;outline:none;font-family:var(--font-sans);transition:color .2s ease,padding-left .3s cubic-bezier(.22,1,.36,1);border-left:3px solid transparent}.mobile-nav-animated:hover{color:#fff;padding-left:12px}.mobile-nav-animated.active{color:#fff;font-weight:700;padding-left:12px;border-left-color:var(--color-primary)}.btn-animate{transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s ease,background .2s ease}.btn-animate:hover{transform:translateY(-2px)}.btn-animate:active{transform:translateY(0) scale(.95)}.card-hover-lift{transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,border-color .3s ease}.card-hover-lift:hover{transform:translateY(-6px);box-shadow:0 16px 48px #0003,0 0 20px #184e7814;border-color:var(--border-active)}.container{width:100%;max-width:100%;padding:0 24px}@media(min-width:768px){.container{padding:0 40px}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:#fff3}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:9999px;font-size:12px;font-weight:600;gap:4px}.badge-success{background:#15803d26;color:var(--color-success);border:1px solid rgba(21,128,61,.2)}.badge-pending{background:#db9e3d26;color:var(--color-accent);border:1px solid rgba(219,158,61,.2)}.badge-info{background:#2f6b9a26;color:#22d3ee;border:1px solid rgba(47,107,154,.2)}.login-input-field{width:100%;padding:14px 18px 14px 44px;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:12px!important;color:#0f172a!important;font-family:var(--font-sans);font-size:15px;outline:none;transition:all .2s ease}.login-input-field:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px #184e7826!important;background:#fff!important}.login-input-field::placeholder{color:#64748b!important}.login-secondary-btn{background:#e8eff6!important;border:1px solid #e2e8f0!important;color:#0f172a!important}.login-secondary-btn:hover{background:#e8eff6!important}.login-submit-button{background:var(--color-primary)!important;color:#fff!important;border:none!important;width:100%;padding:14px;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:10px;font-family:"Inter",var(--font-sans)}.login-submit-button:hover{background:#004395!important;opacity:.95}.login-submit-button:active{transform:scale(.98)}.light .input-field{background:#fff;border-color:#e2e8f0;color:#0f172a;border-radius:12px}.light .input-field:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #184e7826}.light .input-field::placeholder{color:#64748b}.light .glass-panel{background:#fff;border-color:#e2e8f0;box-shadow:0 4px 12px #0f172a14;backdrop-filter:none;-webkit-backdrop-filter:none}.light .glass-panel-hover:hover{border-color:#d3e4fe;box-shadow:0 4px 12px #0f172a14;transform:translateY(-2px)}.light .btn-primary{background:#000;color:#fff;box-shadow:none}.light .btn-primary:hover{background:#131b2e;box-shadow:none;opacity:.9}.light .btn-secondary{background:#e8eff6;border-color:#e2e8f0;color:#0f172a}.light .btn-secondary:hover{background:#e8eff6;border-color:#d3e4fe}.light .select-field{background-image:url("data:image/svg+xml;utf8,<svg fill='%230f172a' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>")}.light ::-webkit-scrollbar-track{background:var(--bg-base)}.light ::-webkit-scrollbar-thumb{background:#0f172a1f}.light ::-webkit-scrollbar-thumb:hover{background:#0f172a33}.light .badge-success{background:#15803d1a;color:#059669;border-color:#15803d33}.light .badge-pending{background:#db9e3d1a;color:var(--color-warning);border-color:#db9e3d33}.light .badge-info{background:#2f6b9a1a;color:#0891b2;border-color:#2f6b9a33}.light textarea,.light input[type=text],.light input[type=tel],.light input[type=email],.light input[type=password],.light input[type=search]{color:#0f172a}.light textarea::placeholder,.light input::placeholder{color:#94a3b8}.markdown-body{font-family:var(--font-sans),system-ui,-apple-system,sans-serif;line-height:1.75;font-size:16px;color:#e2e8f0}.light .markdown-body{color:#000!important}.light .markdown-body p,.light .markdown-body li,.light .markdown-body table,.light .markdown-body blockquote,.light .markdown-body code{color:#000!important;opacity:1!important}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{color:#fff;font-family:var(--font-display);font-weight:700;margin-top:1.8em;margin-bottom:.6em;line-height:1.35}.light .markdown-body h1,.light .markdown-body h2,.light .markdown-body h3,.light .markdown-body h4,.light .markdown-body h5,.light .markdown-body h6{color:#000!important;opacity:1!important}.markdown-body h1{font-size:28px;border-bottom:1px solid rgba(255,255,255,.15);padding-bottom:8px;margin-top:1em}.light .markdown-body h1{border-bottom-color:#0f172a1f}.markdown-body h2{font-size:22px;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:6px}.light .markdown-body h2{border-bottom-color:#0f172a14}.markdown-body h3{font-size:18px}.markdown-body h4{font-size:16px}.markdown-body p{margin-top:0;margin-bottom:1.2em}.markdown-body ul,.markdown-body ol{padding-left:24px;margin-top:0;margin-bottom:1.2em}.markdown-body li{margin-bottom:.5em}.markdown-body li>ul,.markdown-body li>ol{margin-top:.5em;margin-bottom:0}.markdown-body blockquote{margin:1.5em 0;padding:12px 24px;color:var(--text-secondary);border-left:4px solid var(--color-primary);background:#ffffff05;border-radius:0 8px 8px 0;font-style:italic}.light .markdown-body blockquote{background:#0f172a0d!important;border-left:4px solid var(--color-primary);color:#000!important;opacity:1!important}.markdown-body code{font-family:var(--font-mono),monospace;font-size:85%;background:#ffffff14;padding:3px 6px;border-radius:4px;color:var(--color-secondary)}.light .markdown-body code{background:#0f172a0f;color:#db2777}.markdown-body pre{margin:1.5em 0;padding:16px;overflow:auto;font-size:14px;background:#0003;border:1px solid var(--border-glass);border-radius:8px}.markdown-body pre code{padding:0;background:transparent;color:inherit;font-size:inherit}.markdown-body table{width:100%;margin:1.5em 0;border-collapse:collapse;overflow-x:auto;display:block}.markdown-body th,.markdown-body td{padding:10px 14px;border:1px solid rgba(255,255,255,.08);font-size:14px}.light .markdown-body th,.light .markdown-body td{border-color:#0f172a14}.markdown-body th{font-weight:600;background:#ffffff0a;text-align:left}.light .markdown-body th{background:#0f172a14!important;color:#000!important;font-weight:700!important;opacity:1!important}.markdown-body tr:nth-child(2n){background:#ffffff05}.light .markdown-body tr:nth-child(2n){background:#0f172a03}.markdown-body img{display:block;max-width:100%;height:auto;margin:1.25em auto}.markdown-body .note-figure img{margin:0 auto}.markdown-body .highlight-box{margin:1.5em 0;padding:16px 20px;border-radius:8px;font-size:15px;border-left:4px solid transparent}.markdown-body .highlight-important{background:#db9e3d14;border-left-color:var(--color-warning);color:#fde68a}.light .markdown-body .highlight-important{background:#db9e3d26;color:#78350f!important;opacity:1!important}.markdown-body .highlight-info{background:#2f6b9a14;border-left-color:var(--color-secondary);color:#c5f2f7}.light .markdown-body .highlight-info{background:#2f6b9a26;color:#164e63!important;opacity:1!important}.markdown-body .highlight-tip{background:#15803d14;border-left-color:var(--color-success);color:#a7f3d0}.light .markdown-body .highlight-tip{background:#15803d26;color:#064e3b!important;opacity:1!important}.katex-display{overflow-x:auto;overflow-y:hidden;padding:8px 0}.main-column{transition:margin-left .3s cubic-bezier(.4,0,.2,1)}@media(max-width:768px){.main-column{margin-left:0!important}}@media(max-width:768px){.desktop-only{display:none!important}}@media(min-width:769px){.mobile-only{display:none!important}}:root .stitch-card{background:var(--bg-surface-opaque);border-color:var(--border-glass);color:var(--text-primary)}:root .stitch-card:hover{box-shadow:var(--shadow-md)}.light .stitch-card{background:#fff;border-color:#e2e8f0;color:#0f172a}.light .stitch-card:hover{box-shadow:0 4px 12px #0f172a14}:root .stitch-progress-bar{background:#ffffff1a}.light .stitch-progress-bar{background:#e2e8f0}:root .stitch-tag-blue{background:#184e7826;color:#60a5fa}.light .stitch-tag-blue{background:#184e7814;color:var(--color-primary)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite!important}.loading-indicator{width:40px;height:40px;border:4px solid var(--border-glass);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s cubic-bezier(.4,0,.2,1) infinite;display:inline-block}.loading-indicator-btn{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;display:inline-block;vertical-align:middle}.somasmart-interactive-block{margin:20px 0;border-radius:12px;overflow:hidden;transition:box-shadow .3s ease}.somasmart-interactive-block:hover{box-shadow:0 4px 20px #184e7814}.light .somasmart-interactive-block{box-shadow:0 2px 12px #0000000a}.light .somasmart-interactive-block:hover{box-shadow:0 4px 20px #00000014}.somasmart-interactive-block[data-block-type=image],.somasmart-interactive-block[data-block-type=image]:hover{border-radius:0;overflow:visible;box-shadow:none}.somasmart-table{border-collapse:collapse;width:100%}.light .somasmart-table th{background:#184e780f}.light .somasmart-table td{color:#475569}.somasmart-interactive-block canvas{max-width:100%;height:auto}.somasmart-interactive-block svg{max-width:100%;height:auto}@media(max-width:768px){.somasmart-interactive-block{margin:16px 0;border-radius:10px}.somasmart-interactive-block canvas,.somasmart-interactive-block svg{min-height:200px}.somasmart-interactive-block iframe{min-height:250px}}.container{padding-top:max(16px,env(safe-area-inset-top,0px));padding-bottom:max(16px,env(safe-area-inset-bottom,0px));overflow-x:hidden}.stitch-hero-banner{margin-bottom:28px}@media(max-width:768px){.stitch-hero-banner{width:100%!important;min-height:220px!important;height:clamp(220px,30vh,340px)!important;border-radius:22px!important;position:relative!important;overflow:visible!important;margin-bottom:24px!important}.stitch-hero-banner img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 25%!important;border-radius:inherit!important}.stitch-hero-content{padding:14px!important}.liquid-glass-greeting,.stitch-hero-pill{padding:5px 12px 5px 5px!important;gap:6px!important;max-width:55%!important;height:48px!important}.liquid-glass-avatar{width:32px!important;height:32px!important;font-size:13px!important}.stitch-hero-greeting{font-size:13px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.hero-bottom-bar{left:3%!important;right:3%!important;width:94%!important;bottom:-10px!important}.liquid-glass-full-panel{padding:10px 14px!important;border-radius:20px!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:center!important}.stitch-streak-item{flex-direction:row!important;flex-wrap:nowrap!important;gap:10px!important}.stitch-streak-icon-circle{width:30px!important;height:30px!important}.stitch-streak-icon-circle svg{width:16px!important;height:16px!important}.stitch-streak-value{font-size:14px!important}.stitch-streak-label{font-size:9px!important}}@media(max-width:430px){.stitch-hero-banner{height:clamp(200px,28vh,300px)!important;border-radius:20px!important;margin-bottom:22px!important}.stitch-hero-content{padding:12px!important}.liquid-glass-greeting,.stitch-hero-pill{padding:4px 10px 4px 4px!important;gap:6px!important;height:44px!important}.liquid-glass-avatar{width:30px!important;height:30px!important;font-size:12px!important}.stitch-hero-greeting{font-size:12px!important}.hero-bottom-bar{bottom:-10px!important;left:3%!important;right:3%!important;width:94%!important}.liquid-glass-full-panel{padding:8px 10px!important;border-radius:18px!important}.stitch-streak-item{gap:6px!important}.stitch-streak-icon-circle{width:28px!important;height:28px!important}.stitch-streak-icon-circle svg{width:14px!important;height:14px!important}.stitch-streak-value{font-size:13px!important}.stitch-streak-label{font-size:8px!important}}@media(max-width:375px){.stitch-hero-banner{height:clamp(180px,26vh,270px)!important;border-radius:18px!important;margin-bottom:20px!important}.liquid-glass-greeting,.stitch-hero-pill{padding:4px 8px 4px 4px!important;gap:5px!important;height:42px!important;max-width:60%!important}.liquid-glass-avatar{width:28px!important;height:28px!important;font-size:11px!important}.stitch-hero-greeting{font-size:11px!important}.liquid-glass-full-panel{padding:7px 8px!important;border-radius:16px!important}.stitch-streak-item{gap:5px!important}.stitch-streak-icon-circle{width:26px!important;height:26px!important}.stitch-streak-icon-circle svg{width:13px!important;height:13px!important}.stitch-streak-value{font-size:12px!important}.stitch-streak-label{font-size:7.5px!important}}@media(max-width:320px){.stitch-hero-banner{height:clamp(160px,24vh,240px)!important;border-radius:16px!important;margin-bottom:18px!important}.liquid-glass-greeting,.stitch-hero-pill{padding:3px 7px 3px 3px!important;height:38px!important;max-width:65%!important}.liquid-glass-avatar{width:26px!important;height:26px!important;font-size:10px!important}.stitch-hero-greeting{font-size:10px!important}.hero-bottom-bar{bottom:-8px!important;left:3%!important;right:3%!important;width:94%!important}.liquid-glass-full-panel{padding:6px 7px!important;border-radius:14px!important}.stitch-streak-item{gap:4px!important}.stitch-streak-icon-circle{width:24px!important;height:24px!important}.stitch-streak-icon-circle svg{width:12px!important;height:12px!important}.stitch-streak-value{font-size:11px!important}.stitch-streak-label{font-size:7px!important}}@media(max-width:480px){.somasmart-interactive-block{margin:12px 0;border-radius:8px}.somasmart-interactive-block figure figcaption{font-size:12px}}@media print{.no-print{display:none!important}.somasmart-interactive-block{break-inside:avoid;margin:12px 0;border:1px solid #ccc!important;background:#fff!important;color:#000!important}.somasmart-interactive-block iframe{display:none}}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-fade-in,.animate-pulse-glow,.section-reveal,.card-reveal{animation:none!important;opacity:1!important;transform:none!important}}@keyframes skeletonPulse{0%,to{opacity:.06}50%{opacity:.12}}.skeleton{background:var(--text-secondary);opacity:.06;animation:skeletonPulse 1.5s ease-in-out infinite;border-radius:var(--radius-s);pointer-events:none}.skeleton-text{height:14px;width:80%;margin-bottom:10px}.skeleton-text-short{height:14px;width:50%;margin-bottom:10px}.skeleton-heading{height:22px;width:60%;margin-bottom:16px}.skeleton-card{height:120px;width:100%;border-radius:var(--radius-m)}@keyframes labFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(.5deg)}}@keyframes labFloatSubtle{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes labPulseGlow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.9;transform:scale(1.05)}}@keyframes labShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes labOrbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lab-glass-card{position:relative;background:#0f172a8c;backdrop-filter:blur(28px) saturate(190%);-webkit-backdrop-filter:blur(28px) saturate(190%);border:1px solid rgba(255,255,255,.12);border-top:1px solid rgba(255,255,255,.22);border-left:1px solid rgba(255,255,255,.18);border-radius:30px;box-shadow:0 20px 50px #00000059,inset 0 1px #fff3,inset 0 -1px #0003;transition:all .4s cubic-bezier(.16,1,.3,1);overflow:hidden}.light .lab-glass-card{background:#ffffffa6;border:1px solid rgba(255,255,255,.8);border-top:1px solid rgba(255,255,255,.95);border-left:1px solid rgba(255,255,255,.9);box-shadow:0 20px 40px #184e7814,0 4px 12px #00000008,inset 0 1px 2px #fff}.lab-glass-card:hover{transform:translateY(-6px);border-color:#2f6b9a66;box-shadow:0 30px 60px #00000073,0 0 30px #2f6b9a33,inset 0 1px #ffffff4d}.light .lab-glass-card:hover{border-color:#184e784d;box-shadow:0 25px 50px #184e7826,0 0 25px #2f6b9a26}.lab-float{animation:labFloat 6s ease-in-out infinite}.lab-float-subtle{animation:labFloatSubtle 4s ease-in-out infinite}.lab-gradient-text{color:var(--color-secondary)}.light .lab-gradient-text{color:var(--color-primary)}.lab-search-bar{background:#0f172a;border:1px solid rgba(255,255,255,.14);border-radius:28px;box-shadow:0 1px 3px #0003;transition:all .3s cubic-bezier(.16,1,.3,1)}.light .lab-search-bar{background:#fff;border:1px solid rgba(24,78,120,.15);box-shadow:0 1px 3px #0000000d}.lab-search-bar:focus-within{border-color:var(--color-primary);box-shadow:0 2px 4px #0000001a}.lab-badge-glow{position:relative}.lab-badge-glow:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;background:transparent;z-index:-1}.lab-chem-glow,.lab-phys-glow,.lab-bio-glow{background:transparent}.lab-btn-primary{background:var(--color-primary);color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:20px;font-weight:700;box-shadow:0 1px 3px #0000001f;transition:background .2s ease,opacity .2s ease}.lab-btn-primary:hover{background:var(--color-primary);box-shadow:0 2px 4px #00000026}.lab-btn-secondary{background:#ffffff14;color:var(--text-primary);border:1px solid rgba(255,255,255,.15);border-radius:20px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .3s cubic-bezier(.16,1,.3,1)}.light .lab-btn-secondary{background:#184e780f;border:1px solid rgba(24,78,120,.15)}.lab-btn-secondary:hover{background:#ffffff29;border-color:#2f6b9a66;transform:translateY(-2px)}.light .lab-btn-secondary:hover{background:#184e781f}.back-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 16px 8px 12px;border-radius:999px;border:1px solid var(--border-glass);background:var(--bg-surface);color:var(--text-primary);font-size:14px;font-weight:600;cursor:pointer;width:fit-content;max-width:100%}.back-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.back-btn-floating{position:fixed;top:72px;left:max(12px,env(safe-area-inset-left));z-index:900;width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid color-mix(in srgb,var(--color-primary) 55%,transparent);background:color-mix(in srgb,var(--bg-surface) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 6px 18px #0f172a2e;color:var(--color-primary);cursor:pointer;animation:back-btn-in .15s ease-out}@keyframes back-btn-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.back-btn:hover,.back-btn-floating:hover{border-color:var(--color-primary);color:var(--color-primary)}.back-btn:focus-visible,.back-btn-floating:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media(prefers-reduced-motion:reduce){.back-btn-floating{animation:none}}.level-choice-grid{display:grid;gap:10px;margin-top:8px;grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:720px){.level-choice-grid.forms{grid-template-columns:repeat(4,minmax(0,1fr))}}.level-choice-card{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 14px;text-align:left;border-radius:12px;border:1px solid var(--border-glass);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;transition:border-color .15s ease}.level-choice-card:hover{border-color:var(--color-primary)}.level-choice-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.level-choice-badge{flex-shrink:0;width:36px;height:36px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:17px;font-weight:800;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.level-choice-title{font-size:15px;font-weight:700;line-height:1.25}.level-subject-grid{display:grid;gap:10px;margin-top:8px;grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:600px){.level-subject-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:960px){.level-subject-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1240px){.level-subject-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.level-subject-card{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 14px;border-radius:12px;border:1px solid var(--border-glass);background:var(--bg-surface);color:var(--text-primary);text-decoration:none;transition:border-color .15s ease}.level-subject-card:hover{border-color:var(--color-primary)}.level-subject-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.level-subject-icon{flex-shrink:0;width:36px;height:36px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:17px;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent)}.level-subject-name{font-size:15px;font-weight:700;line-height:1.25;min-width:0;overflow-wrap:anywhere}@media(prefers-reduced-motion:reduce){.level-choice-card,.level-subject-card{transition:none}}.page-head{display:flex;flex-direction:column;gap:6px}.page-title{font-size:26px;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:0;text-wrap:balance}.page-sub{color:var(--text-secondary);font-size:14px;margin:0}@media(max-width:600px){.page-title{font-size:22px}}.seg{display:flex;gap:2px;padding:3px;border:1px solid var(--border-glass);border-radius:var(--radius-m);background:var(--bg-card);max-width:560px}.seg-btn{flex:1 1 0;min-width:0;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 8px;border:0;border-radius:9px;background:transparent;color:var(--text-secondary);font:600 13px/1.2 var(--font-sans);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seg-btn:hover{color:var(--text-primary)}.seg-btn.is-on{background:var(--color-primary);color:var(--color-on-primary)}.seg-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media(max-width:420px){.seg-btn svg{display:none}.seg-btn{font-size:12.5px}}.chip-row{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.chip-row::-webkit-scrollbar{display:none}.chip{flex:none;min-height:36px;display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid var(--border-glass);border-radius:999px;background:var(--bg-card);color:var(--text-secondary);font:600 13px/1 var(--font-sans);cursor:pointer}.chip:hover{border-color:var(--border-active);color:var(--text-primary)}.chip.is-on{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.chip:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.tag-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 14%,transparent);color:var(--text-secondary);font-size:12px;font-weight:600;line-height:1.3;white-space:nowrap}.tag-pill.navy{background:var(--color-primary-soft);color:var(--color-primary)}.search-field{position:relative;display:flex;align-items:center}.search-field svg{position:absolute;left:14px;color:var(--text-muted);pointer-events:none}.search-field input{width:100%;min-height:44px;padding:10px 14px 10px 42px;border:1px solid var(--border-input);border-radius:var(--radius-m);background:var(--bg-input);color:var(--text-input);font:500 14px var(--font-sans)}.search-field input::placeholder{color:var(--text-placeholder)}.search-field input:focus{outline:none;border-color:var(--border-input-focus);box-shadow:0 0 0 3px var(--color-primary-soft)}.quiz-page{display:flex;flex-direction:column;gap:14px;padding-top:16px}.quiz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:6px}.quiz-card{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--border-glass);border-radius:var(--radius-l);background:var(--bg-card)}.quiz-card-tags{display:flex;flex-wrap:wrap;gap:6px}.quiz-card-title{font-size:16px;font-weight:700;line-height:1.35;margin:2px 0 0}.quiz-card-meta{display:flex;flex-wrap:wrap;gap:4px 14px;color:var(--text-secondary);font-size:13px}.quiz-card-meta span{display:inline-flex;align-items:center;gap:5px}.quiz-card .btn{margin-top:6px;min-height:44px;justify-content:center;gap:6px}.empty-state{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:40px 20px;text-align:center;border:1px dashed var(--border-glass);border-radius:var(--radius-l)}.empty-state-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--color-primary-soft);color:var(--color-primary);margin-bottom:4px}.empty-state h3{font-size:16px;font-weight:700;margin:0}.empty-state p{color:var(--text-secondary);font-size:14px;margin:0;max-width:46ch}.empty-state .btn{margin-top:10px}.subject-page{display:flex;flex-direction:column;gap:16px;padding-top:16px}.topic-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.topic-item{border:1px solid var(--border-glass);border-radius:var(--radius-l);background:var(--bg-card);min-width:0}.topic-item.is-empty{background:transparent}.topic-row{display:flex;align-items:center;gap:12px;padding:12px 16px;min-height:52px}.topic-num{flex:none;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--color-primary-soft);color:var(--color-primary);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.topic-name{flex:1;min-width:0;font-size:15px;font-weight:700;line-height:1.3}.topic-item.is-empty .topic-num{background:color-mix(in srgb,var(--text-muted) 12%,transparent);color:var(--text-muted)}.topic-item.is-empty .topic-name{font-weight:500;color:var(--text-secondary)}.topic-content{padding:0 16px 14px 56px;display:flex;flex-direction:column;gap:12px;min-width:0}@media(max-width:600px){.topic-content{padding-left:16px}}.note-links{display:flex;flex-direction:column;gap:8px}.note-link{display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 12px;border:1px solid var(--border-glass);border-radius:var(--radius-m);background:var(--bg-base);color:var(--text-primary);text-decoration:none}.note-link>svg{flex:none;color:var(--color-primary)}.note-link-title{flex:1;min-width:0;font-size:14px;font-weight:600;overflow-wrap:anywhere}.note-link-go{flex:none;display:inline-flex;align-items:center;gap:2px;font-size:13px;font-weight:700;color:var(--color-primary)}.note-link:hover{border-color:var(--color-primary)}.note-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.note-page{display:flex;flex-direction:column;gap:16px;padding-top:16px;padding-bottom:100px}.note-head-tags{display:flex;flex-wrap:wrap;gap:6px}.note-content-reader{min-width:0;max-width:860px;padding-top:4px}.lab-welcome{--lab-wall: #0f2134;--lab-tile: rgba(156, 195, 228, .06);display:flex;flex-direction:column;gap:18px;padding-top:16px;padding-bottom:40px}.lab-hero{display:flex;flex-direction:column;align-items:center;gap:14px;padding:28px 20px 0;text-align:center;border:1px solid var(--border-glass);border-radius:var(--radius-l);overflow:hidden;background-color:var(--lab-wall);background-image:linear-gradient(var(--lab-tile) 1px,transparent 1px),linear-gradient(90deg,var(--lab-tile) 1px,transparent 1px);background-size:26px 26px}[data-theme=light] .lab-welcome{--lab-wall: #eef3f8;--lab-tile: rgba(24, 78, 120, .06)}.lab-hero-text{display:flex;flex-direction:column;align-items:center;gap:8px}.lab-hero-title{margin:0;max-width:22ch;font-size:clamp(26px,4.4vw,40px);font-weight:800;line-height:1.12;letter-spacing:-.025em;color:var(--text-primary);text-wrap:balance}.lab-hero-title span{display:block;margin-bottom:4px;font-size:15px;font-weight:600;letter-spacing:0;color:var(--text-secondary)}.lab-hero-text p{margin:0;max-width:46ch;font-size:14.5px;line-height:1.55;color:var(--text-secondary)}.lab-hero-table{position:relative;container-type:inline-size;width:calc(100% + 40px);margin:0 -20px}.lab-hero-table:before{content:"";position:absolute;left:0;right:0;bottom:0;height:calc(min(860px,100cqw) * 62 / 1200);background:linear-gradient(#f3f6f9,#d2dbe4) top / 100% 58% no-repeat,linear-gradient(#9daebf,#6f8399) bottom / 100% 42% no-repeat}.lab-hero-bench{position:relative;display:block;width:min(860px,100cqw);max-width:none;height:auto;margin:0 auto}.lab-levels{width:100%;max-width:420px;margin:4px auto 0}.lab-levels .seg-btn{min-height:44px;font-size:14.5px;font-weight:700}.lab-benches-block{display:flex;flex-direction:column;gap:12px}.lab-benches-heading{margin:0;font-size:16px;font-weight:700}.lab-benches{display:grid;gap:10px}.lab-bench-card{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:10px 14px 10px 10px;text-align:left;font:inherit;color:var(--text-primary);border:1px solid var(--border-glass);border-radius:var(--radius-l);background:var(--bg-card);cursor:pointer;transition:border-color .15s ease}.lab-bench-card:hover{border-color:var(--border-active)}.lab-bench-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.lab-bench-picture{display:block;height:84px;border-radius:12px;overflow:hidden;background:linear-gradient(to top,#6f8399 0,#9daebf 5.65%,#d2dbe4 5.65%,#f3f6f9 13.48%,transparent 13.48%),var(--lab-wall)}.lab-bench-picture img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}.lab-bench-name{font-size:17px;font-weight:700;min-width:0}.lab-bench-chevron{color:var(--text-secondary)}.lab-coming{border-style:solid;background:var(--bg-card)}@media(min-width:768px){.lab-hero{padding:40px 40px 0;gap:18px}.lab-hero-table{width:calc(100% + 80px);margin:0 -40px}.lab-benches-heading{text-align:center}.lab-benches{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.lab-bench-card{grid-template-columns:1fr;padding:12px;gap:10px;align-content:start}.lab-bench-picture{height:170px}.lab-bench-chevron{display:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lab-subject-page{display:flex;flex-direction:column;gap:16px;padding-top:16px;padding-bottom:40px}.lab-practical-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.lab-practical{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding:14px 16px;border:1px solid var(--border-glass);border-radius:var(--radius-l);background:var(--bg-card);color:var(--text-primary);text-decoration:none;transition:border-color .15s ease}a.lab-practical:hover{border-color:var(--color-primary)}a.lab-practical:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}a.lab-practical>svg{flex:none;color:var(--color-primary)}.lab-practical-title{min-width:0;font-size:16px;font-weight:700;line-height:1.35}.lab-practical.is-locked{background:transparent;color:var(--text-muted);cursor:default}.lab-practical.is-locked .lab-practical-title{font-weight:600}.lab-practical.is-locked>svg{flex:none;color:var(--text-muted)}@media(min-width:900px){.lab-practical-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.lab-overview{display:flex;flex-direction:column;gap:18px;padding-top:16px;padding-bottom:40px}.lab-overview-aim{max-width:60ch;line-height:1.55}.lab-overview-actions{display:grid;gap:10px;grid-template-columns:1fr}.lab-overview-btn{height:52px;box-sizing:border-box;justify-content:center;font-size:15.5px}@media(min-width:600px){.lab-overview-actions{grid-template-columns:repeat(2,minmax(0,220px))}}.lab-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:flex-end;justify-content:center;background:#080f1c99}.lab-dialog{width:100%;max-width:460px;display:flex;flex-direction:column;gap:14px;padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;background:var(--bg-card);border:1px solid var(--border-glass);animation:lab-dialog-in .18s ease-out}@media(min-width:600px){.lab-dialog-backdrop{align-items:center;padding:16px}.lab-dialog{border-radius:18px;padding:20px}}@keyframes lab-dialog-in{0%{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.lab-dialog{animation:none}}.lab-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.lab-dialog-head h2{margin:0;font-size:17px;font-weight:700}.lab-dialog-close{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:10px;background:transparent;color:var(--text-secondary);cursor:pointer}.lab-dialog-close:hover{background:var(--bg-surface-hover)}.lab-mode-list{display:flex;flex-direction:column;gap:8px}.lab-mode-option{display:flex;align-items:flex-start;gap:12px;width:100%;padding:12px 14px;text-align:left;font:inherit;color:var(--text-primary);border:1px solid var(--border-glass);border-radius:12px;background:transparent;cursor:pointer}.lab-mode-option>svg{flex:none;margin-top:2px;color:var(--text-secondary)}.lab-mode-option.is-on{border-color:var(--color-primary);background:var(--color-primary-soft)}.lab-mode-option.is-on>svg{color:var(--color-primary)}.lab-mode-option:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.lab-mode-option-text{display:flex;flex-direction:column;gap:2px;min-width:0}.lab-mode-option-title{font-weight:700}.lab-mode-option-desc{font-size:13px;line-height:1.45;color:var(--text-secondary)}.lab-dialog-start{min-height:48px;justify-content:center}.lab-theory{display:flex;flex-direction:column;gap:16px;padding-top:16px;padding-bottom:100px}.lab-theory-body{max-width:760px;min-width:0}.lab-theory-open{align-self:flex-start;min-height:48px}.lab-run{display:flex;flex-direction:column;gap:14px;padding-top:16px;padding-bottom:40px;min-width:0;max-width:100%}@media(max-width:768px){.lab-run{padding-bottom:96px}}.lab-run>*{min-width:0;max-width:100%}.lab-run-loading{padding:40px 16px;color:var(--text-secondary)}.lab-run-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}.lab-run-title{display:flex;flex-direction:column;gap:6px;min-width:0}.lab-run-title h1{margin:0;font-size:clamp(20px,3vw,26px);font-weight:800;line-height:1.2;letter-spacing:-.015em}.lab-run-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.lab-run-time{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.lab-run-tools{display:flex;gap:8px}.lab-run-tool{min-height:40px;padding:8px 14px;font-size:14px}.lab-run-steps{position:relative;list-style:none;margin:0;padding:0 0 2px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.lab-run-steps::-webkit-scrollbar{display:none}.lab-run-step{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;min-height:36px;padding:6px 12px 6px 6px;font:inherit;font-size:13px;font-weight:600;color:var(--text-secondary);border:1px solid var(--border-glass);border-radius:999px;background:var(--bg-card);cursor:pointer}.lab-run-step-num{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:var(--color-primary-soft);color:var(--color-primary)}.lab-run-step.is-current{color:#fff;background:var(--color-primary);border-color:var(--color-primary)}.lab-run-step.is-current .lab-run-step-num{background:#ffffff38;color:#fff}.lab-run-step.is-done{color:var(--text-primary)}.lab-run-step:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.lab-run-main{display:grid;gap:14px;align-items:start}.lab-run-bench-col{display:flex;flex-direction:column;gap:10px;min-width:0}.lab-run-bench{border:1px solid var(--border-glass);border-radius:var(--radius-l);overflow:hidden;background:#0f2134}[data-theme=light] .lab-run-bench{background:#eef3f8}.lab-run-bench svg{display:block;width:100%;height:auto;max-height:78vh;margin:0 auto}.lab-run-observation{margin:0;padding:10px 12px;font-size:14px;line-height:1.5;border-radius:var(--radius-m);background:var(--color-primary-soft);color:var(--text-primary)}.lab-run-panel{display:flex;flex-direction:column;gap:14px;padding:16px;border:1px solid var(--border-glass);border-radius:var(--radius-l);background:var(--bg-card);min-width:0}.lab-run-step-title{margin:0;font-size:16px;font-weight:700}.lab-run-nav{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.lab-run-nav .btn{min-height:44px}.lab-next-hint{margin:-4px 0 0;font-size:13px;line-height:1.45;color:var(--text-secondary);text-align:right}.lab-run-nav .btn:disabled,.lab-button-row .btn:disabled,.lab-panel-stack .btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}@media(min-width:1024px){.lab-run-main{grid-template-columns:minmax(0,1.35fr) minmax(340px,1fr)}.lab-run-bench-col{position:sticky;top:80px}}.lab-run-icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border:0;border-radius:10px;background:transparent;color:var(--text-secondary);cursor:pointer}.lab-run-icon-btn:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.lab-run-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#050c168c;display:grid;place-items:center;padding:16px}.lab-run-dialog{width:min(560px,100%);max-height:min(80vh,640px);display:flex;flex-direction:column;border-radius:var(--radius-l);background:var(--bg-modal, var(--bg-card));border:1px solid var(--border-glass)}.lab-run-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-glass)}.lab-run-dialog-head h2{margin:0;font-size:16px}.lab-run-log{margin:0;padding:12px 16px 16px 34px;overflow-y:auto;display:grid;gap:6px;font-size:14px;line-height:1.45;color:var(--text-secondary)}.lab-panel-stack{display:flex;flex-direction:column;gap:12px}.lab-panel-hint{margin:0;font-size:14px;line-height:1.5;color:var(--text-secondary)}.lab-panel-count{margin:0;font-size:13px;font-weight:600;color:var(--text-secondary)}.lab-button-row{display:flex;flex-wrap:wrap;gap:8px}.lab-button-row .btn,.lab-panel-stack>.btn{min-height:44px}.lab-inspect-grid{display:flex;flex-wrap:wrap;gap:8px}.lab-inspect-chip{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 12px;font:inherit;font-size:13.5px;font-weight:600;color:var(--text-primary);border:1px solid var(--border-glass);border-radius:999px;background:transparent;cursor:pointer}.lab-inspect-chip.is-done{border-color:#1f9254;color:#2fae6a}.lab-inspect-chip.is-selected{box-shadow:0 0 0 2px var(--color-primary-soft);border-color:var(--color-primary)}.lab-inspect-card{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:var(--radius-m);background:var(--bg-surface-hover);font-size:14px;line-height:1.45}.lab-inspect-card span{color:var(--text-secondary)}.lab-slider{display:flex;flex-direction:column;gap:6px}.lab-slider-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.lab-slider-head label{font-weight:600;font-size:14px}.lab-slider-value{font-weight:700;font-size:18px;font-variant-numeric:tabular-nums;color:var(--color-primary)}.lab-slider-row{display:flex;align-items:center;gap:10px}.lab-slider input[type=range]{flex:1;min-width:0;accent-color:var(--color-primary);min-height:44px}.lab-slider-step{flex:none;display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid var(--border-glass);border-radius:12px;background:var(--bg-surface-hover);color:var(--text-primary);cursor:pointer}.lab-slider-step:disabled{opacity:.4;cursor:not-allowed}.lab-choice{display:flex;flex-direction:column;gap:8px}.lab-choice-label{font-weight:600;font-size:14px}.lab-choice-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:8px}.lab-choice-btn{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:56px;padding:8px 6px;font:inherit;color:var(--text-primary);border:1px solid var(--border-glass);border-radius:var(--radius-m);background:transparent;cursor:pointer}.lab-choice-btn strong{font-size:20px;line-height:1.1}.lab-choice-btn span{font-size:12px;color:var(--text-secondary)}.lab-choice-btn.is-on{border-color:var(--color-primary);background:var(--color-primary-soft);box-shadow:0 0 0 1px var(--color-primary)}.lab-choice-btn.is-on strong{color:var(--color-primary)}.lab-slider-scale{display:flex;justify-content:space-between;font-size:12px;color:var(--text-secondary)}.lab-readouts{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;margin:0}.lab-readouts div{padding:10px;border-radius:var(--radius-m);background:var(--bg-surface-hover)}.lab-readouts dt{font-size:12px;color:var(--text-secondary)}.lab-readouts dd{margin:2px 0 0;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}.lab-field{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}.lab-field input{min-height:44px;padding:8px 12px;font:inherit;font-weight:500;color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-glass);border-radius:var(--radius-m)}.lab-field input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.lab-table-wrap{overflow-x:auto;border:1px solid var(--border-glass);border-radius:var(--radius-m)}.lab-table{width:100%;border-collapse:collapse;font-size:13.5px;font-variant-numeric:tabular-nums}.lab-table th,.lab-table td{padding:8px 10px;text-align:right;border-bottom:1px solid var(--border-glass);white-space:nowrap}.lab-table th:first-child,.lab-table td:first-child{text-align:left}.lab-table th{font-size:12px;color:var(--text-secondary);font-weight:600}.lab-table tr:last-child td{border-bottom:0}.lab-graph{margin:0}.lab-graph svg{display:block;width:100%;max-width:480px;height:auto}.lab-graph-grid{stroke:var(--border-glass);stroke-width:1}.lab-graph-axis{stroke:var(--text-secondary);stroke-width:1.2}.lab-graph-tick{font-size:10px;fill:var(--text-secondary);font-family:var(--font-sans)}.lab-graph-label{font-size:11px;font-weight:600;fill:var(--text-primary);font-family:var(--font-sans)}.lab-graph-line{stroke:var(--color-primary);stroke-width:2}.lab-graph-point line{stroke:var(--text-primary);stroke-width:1.6}.lab-result{display:flex;flex-direction:column;gap:14px}.lab-result-score{display:flex;align-items:baseline;gap:12px}.lab-result-total{font-size:40px;font-weight:800;color:var(--color-primary);font-variant-numeric:tabular-nums}.lab-result-grade{font-weight:700}.lab-result-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.lab-result-values div{padding:10px;border-radius:var(--radius-m);background:var(--bg-surface-hover)}.lab-result-values dt{font-size:12px;color:var(--text-secondary)}.lab-result-values dd{margin:2px 0 0;font-weight:700;font-variant-numeric:tabular-nums}.lab-result-skills{list-style:none;margin:0;padding:0;display:grid;gap:8px}.lab-result-skills li{display:grid;grid-template-columns:minmax(0,1fr) 90px 44px;align-items:center;gap:10px;font-size:13.5px}.lab-result-bar{height:6px;border-radius:999px;background:var(--bg-surface-hover);overflow:hidden}.lab-result-bar span{display:block;height:100%;background:var(--color-primary)}.lab-result-pct{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}.lab-steps-list{margin:0;padding-left:20px;display:grid;gap:6px;font-size:14px;line-height:1.5;color:var(--text-secondary)}.lab-wire-current{animation:lab-current .9s linear infinite}@keyframes lab-current{to{stroke-dashoffset:-12}}@media(prefers-reduced-motion:reduce){.lab-wire-current{animation:none}}.lab-active{filter:drop-shadow(0 0 2px #DB9E3D) drop-shadow(0 0 5px rgba(219,158,61,.85))}.lab-hand{pointer-events:none;filter:drop-shadow(1px 2px 1.5px rgba(15,30,45,.25))}.lab-hand-move{opacity:0;animation:lab-hand-move var(--dur, 1.3s) ease-in-out var(--delay, 0ms) both}@keyframes lab-hand-move{0%{opacity:0;transform:translate(var(--fx),var(--fy))}15%{opacity:1;transform:translate(var(--fx),var(--fy))}45%{opacity:1;transform:translate(var(--tx),var(--ty))}55%{opacity:1;transform:translate(var(--tx),var(--ty)) translate(-1px,2px)}72%{opacity:1;transform:translate(var(--tx),var(--ty))}to{opacity:0;transform:translate(var(--fx),var(--fy))}}.lab-hand-carry{animation:lab-hand-carry var(--dur, 1.5s) ease-in-out both}@keyframes lab-hand-carry{0%{transform:translate(var(--dx),var(--dy))}60%,to{transform:translate(0)}}.lab-hand-carry-hand{animation:lab-hand-away var(--dur, 1.5s) ease-in both}@keyframes lab-hand-away{0%,68%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px,36px)}}.lab-hand-in{animation:lab-hand-in .45s ease-out both}@keyframes lab-hand-in{0%{opacity:0;transform:translate(var(--ix),var(--iy))}to{opacity:1;transform:translate(0)}}.lab-hand-out{animation:lab-hand-out .7s ease-in both}@keyframes lab-hand-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(36px,30px)}}.lab-hand-hold{animation:lab-hand-out .7s ease-in var(--hold, .9s) both}.lab-pin-out{animation:lab-pin-out .1s step-end both}@keyframes lab-pin-out{0%{opacity:1}to{opacity:0}}.lab-pour{animation:lab-pour var(--dur, 2.6s) ease-in-out both}@keyframes lab-pour{0%{transform:translate(var(--fx),var(--fy)) rotate(0) scale(1)}24%{transform:translate(var(--tx),var(--ty)) rotate(0) scale(var(--s))}38%,70%{transform:translate(var(--tx),var(--ty)) rotate(var(--a)) scale(var(--s))}82%{transform:translate(var(--tx),var(--ty)) rotate(0) scale(var(--s))}to{transform:translate(var(--fx),var(--fy)) rotate(0) scale(1)}}.lab-pour-hand{animation:lab-pour-hand var(--dur, 2.6s) linear both}@keyframes lab-pour-hand{0%,94%{opacity:1}to{opacity:0}}.lab-pour-away{animation:lab-pour-away var(--dur, 2.6s) step-end both}@keyframes lab-pour-away{0%{opacity:0}to{opacity:1}}.lab-pour-stream{animation:lab-pour-stream var(--dur, 2.6s) linear both}@keyframes lab-pour-stream{0%,39%{opacity:0}42%,68%{opacity:1}71%,to{opacity:0}}.lab-pour-funnel{animation:lab-pour-funnel var(--dur, 2.6s) linear both}@keyframes lab-pour-funnel{0%{opacity:0}12%,88%{opacity:1}to{opacity:0}}.lab-fill-rise{transform-box:fill-box;transform-origin:bottom;animation:lab-fill-rise var(--dur, 2.6s) ease-out both}@keyframes lab-fill-rise{0%,40%{transform:scaleY(0)}70%,to{transform:scaleY(1)}}.lab-pin-in{animation:lab-pin-in .2s ease-out both}@keyframes lab-pin-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.lab-hand-move,.lab-hand-carry-hand,.lab-hand-out,.lab-hand-hold{display:none}.lab-hand-carry,.lab-hand-in,.lab-pin-in,.lab-pour-away,.lab-fill-rise{animation:none}.lab-pin-out{animation:none;opacity:0}.lab-pour,.lab-pour-stream,.lab-pour-funnel{display:none}}
