.simulation-engine{height:100dvh;display:flex;flex-direction:column;background:var(--dark-bg);overflow:hidden}.sim-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-6);background:var(--dark-surface);border-bottom:.0625rem solid var(--dark-border);height:3.75rem;flex-shrink:0}.sim-header-left{display:flex;align-items:center;gap:var(--space-4)}.sim-title-group{display:flex;flex-direction:column;gap:.125rem}.sim-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--white);line-height:1.2}.mode-indicator{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--mode-color);font-weight:var(--font-medium)}.sim-header-center{display:flex;align-items:center;gap:var(--space-4)}.mode-switcher{display:flex;gap:var(--space-1);padding:var(--space-1);background:var(--dark-surface-2);border-radius:var(--radius-lg)}.mode-btn{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.25rem;background:transparent;border:none;border-radius:var(--radius-md);color:var(--dark-text-muted);cursor:pointer;transition:all var(--transition-fast)}.mode-btn:hover{background:#ffffff0d;color:var(--white)}.mode-btn.active.mode-primary{background:var(--primary);color:var(--white)}.mode-btn.active.mode-accent{background:var(--accent);color:var(--dark-bg)}.mode-btn.active.mode-success{background:var(--success);color:var(--white)}.sim-header-right{display:flex;align-items:center;gap:var(--space-3)}.score-badge,.level-badge{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--dark-surface-2);border-radius:var(--radius-lg);font-size:var(--text-sm)}.score-badge{background:#ff9a4426;border:.0625rem solid rgba(255,154,68,.3)}.score-label{color:var(--dark-text-muted)}.score-value{color:var(--accent);font-weight:var(--font-bold)}.level-badge{color:var(--primary-light);font-weight:var(--font-medium)}.header-btn{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:transparent;border:none;color:var(--dark-text-muted);cursor:pointer;border-radius:var(--radius-lg);transition:all var(--transition-fast)}.header-btn:hover{background:var(--glass-bg);color:var(--white)}.sim-content{flex:1;display:flex;overflow:hidden}.sim-canvas-area{flex:1;position:relative;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--dark-bg) 0%,rgba(46,125,153,.05) 100%)}.sim-canvas-wrapper{flex:1;position:relative;overflow:hidden}.sim-playback{position:absolute;bottom:var(--space-6);left:50%;transform:translate(-50%);display:flex;gap:var(--space-2);padding:var(--space-2);background:var(--dark-surface);border:.0625rem solid var(--dark-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl)}.playback-btn{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;background:var(--dark-surface-2);border:.0625rem solid var(--dark-border);border-radius:var(--radius-lg);color:var(--white);cursor:pointer;transition:all var(--transition-fast)}.playback-btn:hover{background:var(--primary);border-color:var(--primary)}.playback-btn.main{width:3.5rem;height:3.5rem;background:var(--primary);border-color:var(--primary);border-radius:var(--radius-full)}.playback-btn.main.pause{background:var(--accent);border-color:var(--accent)}.sim-control-panel{width:21.25rem;background:var(--dark-surface);border-left:.0625rem solid var(--dark-border);display:flex;flex-direction:column;overflow:hidden}@media(max-width:992px){.sim-control-panel{width:18.75rem}.mode-switcher{display:none}}@media(max-width:768px){.sim-header{flex-wrap:wrap;height:auto;padding:var(--space-3);gap:var(--space-3)}.sim-content{flex-direction:column}.sim-canvas-area{min-height:50vh}.sim-control-panel{width:100%;max-height:40vh}.score-badge,.level-badge{display:none}.sim-playback{bottom:var(--space-2);transform:translate(-50%) scale(.9)}}@media(max-width:992px)and (orientation:landscape){.sim-content{flex-direction:row}.sim-canvas-area{min-height:100%}.sim-control-panel{width:250px;height:100%;border-left:1px solid var(--dark-border);border-top:none}.sim-header{height:50px;padding:var(--space-2)}.sim-title-group{display:none}}.is-fullscreen{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.is-fullscreen .sim-header{position:absolute;top:0;left:0;right:0;z-index:var(--z-modal);background:linear-gradient(180deg,#0f172ae6,#0f172a00);border-bottom:none;transform:translateY(-100%);opacity:0;transition:all var(--transition-normal)}.is-fullscreen.simulation-engine:hover .sim-header{transform:translateY(0);opacity:1}.challenge-complete-card{background:#0f172ae6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:2.5rem;position:relative;display:flex;flex-direction:column;align-items:center;gap:1.5rem;max-width:400px;margin:0 auto;border:1px solid rgba(255,255,255,.1);box-shadow:0 25px 50px -12px #0009}.trophy-container{position:relative;display:flex;justify-content:center;align-items:center;padding:1rem}.glow-effect{position:absolute;width:60px;height:60px;border-radius:50%;filter:blur(20px);opacity:.3;z-index:-1;animation:pulse 2s infinite ease-in-out}@keyframes pulse{0%{transform:scale(1);opacity:.3}50%{transform:scale(1.5);opacity:.5}to{transform:scale(1);opacity:.3}}h2{color:#f7fafc;font-size:1.5rem;text-align:center;margin:0}.score-summary{display:flex;flex-direction:column;align-items:center;gap:.5rem}.score-main{display:flex;align-items:baseline;gap:.5rem}.score-value{font-size:3rem;font-weight:800;line-height:1;background:-webkit-linear-gradient(45deg,#F6E05E,#D69E2E);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.score-total{font-size:1.25rem;color:#a0aec0}.rank-badge{padding:.25rem .75rem;border:2px solid;border-radius:9999px;font-weight:600;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.save-status-container{min-height:30px;display:flex;align-items:center;justify-content:center;width:100%}.status-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500}.status-item.saving{color:#63b3ed}.status-item.saved{color:#48bb78}.status-item.error{color:#fc8181}.status-item.warning{color:#f6ad55}.status-item .spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.action-buttons{display:flex;gap:1rem;margin-top:1rem;width:100%}button{flex:1;padding:.75rem;border-radius:12px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;transition:all .2s;font-size:.9rem;border:none}.btn-primary{background:linear-gradient(135deg,#4299e1,#3182ce);color:#fff;box-shadow:0 4px 6px -1px #4299e166}.btn-primary:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-secondary{background:#ffffff1a;color:#e2e8f0;border:1px solid rgba(255,255,255,.1)}.btn-secondary:hover{background:#ffffff26}:root{--sim-color-physics: #3B82F6;--sim-color-physics-glow: rgba(59, 130, 246, .4);--sim-color-mathematics: #8B5CF6;--sim-color-mathematics-glow: rgba(139, 92, 246, .4);--sim-color-chemistry: #10B981;--sim-color-chemistry-glow: rgba(16, 185, 129, .4);--sim-color-biology: #F59E0B;--sim-color-biology-glow: rgba(245, 158, 11, .4);--sim-color-economics: #EF4444;--sim-color-economics-glow: rgba(239, 68, 68, .4);--sim-color-smp: #6366F1;--sim-color-smp-glow: rgba(99, 102, 241, .4);--sim-color-sd: #06B6D4;--sim-color-sd-glow: rgba(6, 182, 212, .4);--sim-panel-bg: rgba(15, 23, 42, .82);--sim-panel-bg-subtle: rgba(255, 255, 255, .04);--sim-panel-border: rgba(255, 255, 255, .09);--sim-panel-border-hover: rgba(255, 255, 255, .2);--sim-blur: blur(16px);--sim-text-heading: #F8FAFC;--sim-text-body: #E2E8F0;--sim-text-muted: #94A3B8;--sim-text-dim: #64748B;--sim-radius-sm: 8px;--sim-radius-md: 12px;--sim-radius-lg: 16px;--sim-radius-pill: 9999px;--sim-shadow-panel: 0 10px 30px -5px rgba(0, 0, 0, .5), inset 0 1px 0 rgba(255, 255, 255, .08);--sim-shadow-button: 0 4px 14px rgba(0, 0, 0, .25)}.sqs-panel{background:var(--sim-panel-bg);backdrop-filter:var(--sim-blur);-webkit-backdrop-filter:var(--sim-blur);border:1px solid var(--sim-panel-border);border-radius:var(--sim-radius-md);box-shadow:var(--sim-shadow-panel);transition:border-color .2s ease,box-shadow .2s ease}.sqs-panel:hover{border-color:var(--sim-panel-border-hover)}.sqs-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--sim-radius-pill);font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;background:#ffffff12;border:1px solid rgba(255,255,255,.12);color:var(--sim-text-heading)}.sqs-unit{font-size:.78rem;color:var(--sim-text-muted);font-weight:500;margin-left:3px}.sqs-value{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:600;color:#38bdf8}.sqs-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;margin-bottom:.75rem;gap:1rem;z-index:20;border-radius:var(--sim-radius-md);position:relative}.sqs-header-left{display:flex;align-items:center;gap:1rem;min-width:0}.sqs-btn-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--sim-radius-sm);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--sim-text-body);cursor:pointer;transition:all .2s ease;flex-shrink:0}.sqs-btn-icon:hover{background:#ffffff1f;border-color:#ffffff40;color:#fff;transform:translate(-2px)}.sqs-header-info{display:flex;flex-direction:column;gap:.2rem;min-width:0}.sqs-header-breadcrumbs{display:flex;align-items:center;gap:.5rem;font-size:.78rem;color:var(--sim-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sqs-subject-badge{font-size:.7rem;padding:2px 8px}.sqs-badge-icon{font-size:.85rem}.sqs-breadcrumb-dot{color:var(--sim-text-dim);font-size:.65rem}.sqs-grade-tag{color:var(--sim-text-muted);font-weight:500}.sqs-topic-tag{color:var(--sim-text-dim);overflow:hidden;text-overflow:ellipsis}.sqs-header-title{font-size:1.15rem;font-weight:700;color:var(--sim-text-heading);margin:0;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sqs-header-right{display:flex;align-items:center;gap:1rem;flex-shrink:0}.sqs-header-meta{display:flex;align-items:center;gap:.85rem;padding-right:.75rem;border-right:1px solid rgba(255,255,255,.08)}.sqs-meta-item{display:flex;align-items:center;gap:5px;font-size:.78rem;color:var(--sim-text-muted)}.sqs-stars{display:flex;align-items:center;gap:2px}.sqs-star-filled{color:#fbbf24;fill:#fbbf24}.sqs-star-empty{color:#ffffff26}.sqs-header-actions{display:flex;align-items:center;gap:.5rem}.sqs-btn-action{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--sim-radius-sm);background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:var(--sim-text-body);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.sqs-btn-action:hover{background:#ffffff1f;border-color:#ffffff40;color:#fff}.sqs-btn-info{background:#3b82f61f;border-color:#3b82f64d;color:#93c5fd}.sqs-btn-info:hover{background:#3b82f640;border-color:#3b82f680;color:#fff}@media(max-width:768px){.sqs-header{flex-direction:column;align-items:stretch;padding:.75rem}.sqs-header-right{justify-content:space-between;border-top:1px solid rgba(255,255,255,.08);padding-top:.5rem}.sqs-header-meta{border-right:none;padding-right:0}.sqs-btn-text{display:none}}.sqs-simulation-shell{display:flex;flex-direction:column;min-height:100vh;width:100%;padding:1rem 1.5rem;box-sizing:border-box;background:radial-gradient(circle at 50% 20%,#0f172a,#020617);color:var(--sim-text-body);position:relative;overflow-x:hidden}.sqs-main-grid{display:grid;grid-template-columns:1fr 340px;gap:1rem;flex:1;min-height:520px;margin-bottom:.75rem}.sqs-stage-container{position:relative;display:flex;flex-direction:column;overflow:hidden;border-radius:var(--sim-radius-md);min-height:480px}.sqs-stage-viewport{position:relative;width:100%;height:100%;flex:1;overflow:hidden}.sqs-stage-toolbar-wrap{position:absolute;bottom:1.25rem;left:50%;transform:translate(-50%);z-index:10}.sqs-sidebar{display:flex;flex-direction:column;gap:.75rem;max-height:calc(100vh - 180px);overflow-y:auto;padding-right:2px}.sqs-sidebar::-webkit-scrollbar{width:5px}.sqs-sidebar::-webkit-scrollbar-track{background:transparent}.sqs-sidebar::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.sqs-sidebar-controls{padding:1rem;display:flex;flex-direction:column;gap:1rem}.sqs-bottom-insight-wrap{margin-top:.25rem}@media(max-width:1024px){.sqs-main-grid{grid-template-columns:1fr}.sqs-stage-container{min-height:400px}.sqs-sidebar{max-height:none}}@media(max-width:640px){.sqs-simulation-shell{padding:.5rem}.sqs-stage-container{min-height:320px}}:root{--z-canvas: 1;--z-canvas-overlay: 20000000;--z-panels: 30000000;--z-handles: 35000000;--z-floating: 40000000;--z-header: 45000000;--z-bottom-drawer: 50000000;--z-modals: 60000000}.adaptive-sim-shell{position:relative;width:100vw;height:100dvh;max-height:100dvh;display:flex;flex-direction:column;background-color:#040914;background-image:radial-gradient(ellipse at 50% -10%,rgba(14,116,144,.22) 0%,transparent 60%),radial-gradient(ellipse at 85% 100%,rgba(30,58,138,.18) 0%,transparent 50%),linear-gradient(180deg,#050b18,#030712);color:#f8fafc;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);overflow:hidden;-webkit-user-select:none;user-select:none}.adaptive-header{position:relative;z-index:var(--z-header);display:flex;align-items:center;justify-content:space-between;height:54px;min-height:54px;padding:0 16px;background:#0b132be0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 4px 20px #0006}.adaptive-header-left{display:flex;align-items:center;gap:12px;min-width:0}.adaptive-btn-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#94a3b8;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);flex-shrink:0}.adaptive-btn-icon:hover{background:#ffffff1f;color:#f8fafc;border-color:#ffffff40;transform:translateY(-1px)}.adaptive-btn-icon.back-btn{background:#0f172ab3;border:1px solid rgba(255,255,255,.12);color:#cbd5e1;position:relative}.adaptive-btn-icon.back-btn:hover{background:#ffffff1f;border-color:var(--active-subject-color, #38BDF8);color:#fff;box-shadow:0 0 14px color-mix(in srgb,var(--active-subject-color, #38BDF8) 45%,transparent);transform:translateY(-1px)}.adaptive-btn-icon.back-btn:active{transform:scale(.94)}.adaptive-btn-icon.back-btn:focus-visible{outline:2px solid var(--active-subject-color, #38BDF8);outline-offset:2px}.adaptive-header-center{display:flex;align-items:center;justify-content:center;gap:8px;flex:1 1 auto;max-width:640px;margin:0 16px;min-width:0}.adaptive-title-stack{display:flex;flex-direction:column;min-width:0}.adaptive-meta-row{display:flex;align-items:center;gap:6px;font-size:.68rem;letter-spacing:.03em;font-weight:600;text-transform:uppercase}.adaptive-subject-pill{display:inline-flex;align-items:center;gap:4px;padding:1px 7px;border-radius:9999px;border:1px solid}.adaptive-pill-icon{font-size:.75rem}.meta-sep{color:#475569;font-size:.65rem}.adaptive-grade-pill{color:#cbd5e1}.adaptive-topic-pill{color:#94a3b8;font-weight:500;text-transform:none}.adaptive-main-title{margin:0;font-size:.95rem;font-weight:700;color:#f8fafc;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adaptive-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.adaptive-toggle-btn{display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 10px;border-radius:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.09);color:#94a3b8;font-size:.76rem;font-weight:600;cursor:pointer;transition:all .18s ease}.adaptive-toggle-btn:hover{background:#ffffff14;color:#f8fafc}.adaptive-toggle-btn.active{background:#38bdf81f;border-color:#38bdf859;color:#38bdf8}.adaptive-header-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 11px;border-radius:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#cbd5e1;font-size:.76rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.adaptive-header-btn:hover{background:#ffffff1a;color:#f8fafc;border-color:#ffffff38;transform:translateY(-1px)}.adaptive-header-btn.concept-btn{background:#8b5cf61a;border-color:#8b5cf64d;color:#c084fc}.adaptive-header-btn.concept-btn:hover{background:#8b5cf633;border-color:#8b5cf680;color:#e9d5ff}.adaptive-header-btn.reset-btn:hover{background:#ef44441f;border-color:#ef444459;color:#f87171}.adaptive-header-btn.focus-toggle{background:#38bdf814;border-color:#38bdf840;color:#38bdf8}.adaptive-header-btn.focus-toggle.is-active{background:#38bdf838;border-color:#38bdf8;color:#fff;box-shadow:0 0 16px #38bdf866}.adaptive-workspace{position:relative;flex:1;min-height:0;display:flex;overflow:hidden}.adaptive-panel{position:relative;z-index:var(--z-panels);height:100%;background:#0b132beb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;flex-direction:column;box-shadow:0 8px 32px #00000080;transition:width .2s cubic-bezier(.16,1,.3,1),min-width .2s cubic-bezier(.16,1,.3,1),max-width .2s cubic-bezier(.16,1,.3,1);overflow:visible}.adaptive-panel.left-panel{border-right:1px solid rgba(255,255,255,.08)}.adaptive-panel.right-panel{border-left:1px solid rgba(255,255,255,.08)}.adaptive-panel.is-collapsed{width:48px!important;min-width:48px!important;max-width:48px!important}.adaptive-sim-shell.focus-mode .adaptive-panel{width:0!important;min-width:0!important;max-width:0!important;opacity:0!important;pointer-events:none!important;border:none!important;overflow:hidden!important}.adaptive-sim-shell.focus-mode .panel-resize-handle,.adaptive-sim-shell.focus-mode .adaptive-bottom-drawer{display:none!important}.panel-inner-content{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;-webkit-user-select:text;user-select:text}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.07);flex-shrink:0}.panel-title-wrap{display:flex;align-items:center;gap:8px;min-width:0}.panel-header-icon{color:#38bdf8;flex-shrink:0}.panel-heading{margin:0;font-size:.82rem;font-weight:700;color:#f8fafc;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel-collapse-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;background:transparent;border:1px solid transparent;color:#94a3b8;cursor:pointer;transition:all .15s ease}.panel-collapse-btn:hover{background:#ffffff14;color:#f8fafc;border-color:#ffffff26}.panel-body{flex:1;padding:12px;display:flex;flex-direction:column;gap:12px}.panel-collapsed-strip{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;padding:14px 0;cursor:pointer;background:#0b132bf5;transition:background .2s ease}.panel-collapsed-strip:hover{background:#0f172afa}.collapsed-icon-btn{width:30px;height:30px;border-radius:8px;background:#ffffff0f;display:flex;align-items:center;justify-content:center;color:#38bdf8;margin-bottom:24px}.collapsed-vertical-title{writing-mode:vertical-rl;transform:rotate(180deg);display:flex;align-items:center;gap:8px;font-size:.74rem;font-weight:600;letter-spacing:.08em;color:#94a3b8;text-transform:uppercase}.panel-resize-handle{position:absolute;top:0;bottom:0;width:10px;z-index:var(--z-handles);cursor:col-resize;touch-action:none;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.panel-resize-handle.handle-right{right:-5px}.panel-resize-handle.handle-left{left:-5px}.resize-indicator-line{width:2px;height:48px;border-radius:2px;background:#ffffff26;transition:all .2s ease}.panel-resize-handle:hover .resize-indicator-line,.panel-resize-handle.is-dragging .resize-indicator-line{height:100%;background:#38bdf8;box-shadow:0 0 10px #38bdf8}.adaptive-canvas-stage{position:relative;z-index:var(--z-canvas);flex:1;min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden;background:#020617}.canvas-viewport-fill{position:absolute;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.canvas-floating-toolbar{position:absolute;bottom:16px;left:50%;transform:translate(-50%);z-index:var(--z-canvas-overlay);pointer-events:auto}.focus-mode-hud{position:absolute;top:18px;left:50%;transform:translate(-50%);z-index:var(--z-canvas-overlay);display:flex;align-items:center;gap:10px;padding:6px 14px;background:#0b132beb;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(56,189,248,.35);border-radius:9999px;box-shadow:0 8px 28px #0009,0 0 16px #38bdf833;animation:hudSlideDown .3s cubic-bezier(.16,1,.3,1)}@keyframes hudSlideDown{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}.focus-hud-badge{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;color:#38bdf8}.cyan-sparkle{color:#38bdf8}.focus-hud-exit-btn{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:9999px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#f8fafc;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .15s ease}.focus-hud-exit-btn:hover{background:#ef44442e;border-color:#ef444466;color:#fca5a5}.adaptive-bottom-drawer{position:relative;z-index:var(--z-bottom-drawer);background:#0b132bf0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.1);box-shadow:0 -10px 32px #0000008c;display:flex;flex-direction:column;transition:height .22s cubic-bezier(.16,1,.3,1);overflow:visible;flex-shrink:0}.adaptive-bottom-drawer.is-dragging{transition:none!important}.bottom-resize-handle{position:absolute;top:-6px;left:0;right:0;height:12px;z-index:var(--z-handles);cursor:row-resize;touch-action:none;display:flex;align-items:center;justify-content:center}.bottom-handle-pill{width:44px;height:6px;border-radius:9999px;background:#ffffff2e;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.bottom-resize-handle:hover .bottom-handle-pill,.adaptive-bottom-drawer.is-dragging .bottom-handle-pill{width:68px;height:8px;background:#38bdf8;box-shadow:0 0 12px #38bdf8}.grab-bar{width:20px;height:2px;border-radius:1px;background:#0006}.drawer-header-bar{display:flex;align-items:center;justify-content:space-between;height:48px;min-height:48px;padding:0 16px;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.drawer-title-group{display:flex;align-items:center;gap:12px;min-width:0}.drawer-header-icon{color:#38bdf8;flex-shrink:0}.drawer-main-title{font-size:.8rem;font-weight:700;color:#f8fafc;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.drawer-tabs-list{display:flex;align-items:center;gap:6px;margin-left:8px}.drawer-tab-btn{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#94a3b8;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .15s ease}.drawer-tab-btn:hover{background:#ffffff14;color:#f8fafc}.drawer-tab-btn.active{background:#38bdf824;border-color:#38bdf859;color:#38bdf8}.drawer-tab-badge{font-size:.65rem;padding:1px 5px;border-radius:9999px;background:#38bdf833;color:#38bdf8}.drawer-actions-group{display:flex;align-items:center;gap:6px;flex-shrink:0}.drawer-state-btn{height:26px;padding:0 8px;border-radius:6px;background:transparent;border:1px solid transparent;color:#94a3b8;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .15s ease}.drawer-state-btn:hover{background:#ffffff0f;color:#f8fafc}.drawer-state-btn.active{background:#ffffff1a;border-color:#ffffff2e;color:#f8fafc}.drawer-chevron-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#cbd5e1;cursor:pointer;transition:all .15s ease}.drawer-chevron-toggle:hover{background:#ffffff1f;color:#f8fafc}.drawer-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:12px 16px}.adaptive-bottom-drawer.state-collapsed .drawer-body{display:none}.custom-scrollbar::-webkit-scrollbar{width:5px;height:5px}.custom-scrollbar::-webkit-scrollbar-track{background:#0003}.custom-scrollbar::-webkit-scrollbar-thumb{background:#ffffff29;border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#38bdf880}@media(max-width:1024px){.adaptive-toggle-btn{padding:0 6px}.toggle-btn-label{display:none}.adaptive-panel.left-panel{position:absolute;top:0;bottom:0;left:0;z-index:45}.adaptive-panel.right-panel{position:absolute;top:0;bottom:0;right:0;z-index:45}}@media(max-width:768px){.adaptive-header{height:48px;padding:0 8px;gap:6px}.adaptive-header-left{min-width:0;flex-shrink:1;overflow:hidden}.adaptive-main-title{font-size:.8rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adaptive-meta-row .adaptive-grade-pill,.adaptive-meta-row .adaptive-topic-pill,.adaptive-meta-row .meta-sep,.adaptive-header-center{display:none}.adaptive-header-right{gap:4px}.adaptive-header-btn,.adaptive-toggle-btn{padding:0 6px!important;height:32px}.header-btn-text,.toggle-btn-label{display:none!important}.drawer-main-title{display:none}}.adaptive-device-switcher{position:relative;display:inline-flex}.device-switcher-btn{gap:6px!important;background:#ffffff0a!important;border:1px solid rgba(255,255,255,.12)!important;color:#cbd5e1!important}.device-switcher-btn:hover{background:#ffffff1a!important;color:#f8fafc!important;border-color:#38bdf859!important}.device-switcher-btn.custom-active{border-color:#38bdf880!important;background:#38bdf826!important;color:#38bdf8!important}.device-chevron{transition:transform .2s ease;color:#94a3b8}.device-chevron.open{transform:rotate(180deg)}.device-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:55000000;width:260px;background:#0b132bfa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(56,189,248,.28);border-radius:12px;box-shadow:0 16px 40px #000c,0 0 20px #38bdf826;padding:8px;display:flex;flex-direction:column;gap:4px;animation:menuPop .18s cubic-bezier(.16,1,.3,1)}@keyframes menuPop{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.device-menu-header{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b;padding:4px 8px 6px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:2px}.device-menu-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;background:transparent;border:1px solid transparent;color:#cbd5e1;text-align:left;cursor:pointer;transition:all .15s ease;width:100%}.device-menu-item:hover{background:#ffffff14;color:#f8fafc;border-color:#ffffff1f}.device-menu-item.active{background:#38bdf826;border-color:#38bdf866;color:#38bdf8}.device-menu-icon{flex-shrink:0;color:#94a3b8}.device-menu-item.active .device-menu-icon{color:#38bdf8}.auto-icon{color:#f59e0b}.tv-icon{color:#a855f7}.menu-text-col{display:flex;flex-direction:column;min-width:0}.item-title{font-size:.78rem;font-weight:600;color:inherit}.item-sub{font-size:.65rem;color:#94a3b8}.mobile-backdrop-overlay{position:fixed;inset:0;background:#000000bf;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);z-index:25000000;animation:backdropFade .2s ease}@keyframes backdropFade{0%{opacity:0}to{opacity:1}}.adaptive-sim-shell.device-mobile .adaptive-header{height:48px;padding:0 8px;gap:6px}.adaptive-sim-shell.device-mobile .adaptive-header-left{min-width:0;flex-shrink:1;overflow:hidden}.adaptive-sim-shell.device-mobile .adaptive-main-title{font-size:.8rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adaptive-sim-shell.device-mobile .adaptive-meta-row .adaptive-grade-pill,.adaptive-sim-shell.device-mobile .adaptive-meta-row .adaptive-topic-pill,.adaptive-sim-shell.device-mobile .adaptive-meta-row .meta-sep,.adaptive-sim-shell.device-mobile .adaptive-header-center{display:none}.adaptive-sim-shell.device-mobile .adaptive-header-right{gap:4px}.adaptive-sim-shell.device-mobile .adaptive-header-btn,.adaptive-sim-shell.device-mobile .adaptive-toggle-btn{padding:0 6px!important;height:32px}.adaptive-sim-shell.device-mobile .header-btn-text,.adaptive-sim-shell.device-mobile .toggle-btn-label{display:none!important}.adaptive-sim-shell.device-mobile .adaptive-workspace{position:relative;flex:1;width:100%;height:100%;display:flex;flex-direction:column}.adaptive-sim-shell.device-mobile .adaptive-panel{position:fixed!important;top:0!important;bottom:0!important;z-index:30000000!important;width:86vw!important;max-width:380px!important;box-shadow:0 0 50px #000000e6!important;transition:transform .28s cubic-bezier(.16,1,.3,1),opacity .28s ease!important}.adaptive-sim-shell.device-mobile .adaptive-panel.left-panel{left:0!important;transform:translate(0)}.adaptive-sim-shell.device-mobile .adaptive-panel.left-panel.is-collapsed{transform:translate(-105%)!important;pointer-events:none!important;display:none!important}.adaptive-sim-shell.device-mobile .adaptive-panel.right-panel{right:0!important;left:auto!important;transform:translate(0)}.adaptive-sim-shell.device-mobile .adaptive-panel.right-panel.is-collapsed{transform:translate(105%)!important;pointer-events:none!important;display:none!important}.adaptive-sim-shell.device-mobile .panel-resize-handle{display:none!important}.adaptive-sim-shell.device-mobile .adaptive-bottom-drawer{position:relative;z-index:20000000;box-shadow:0 -8px 30px #000000b3;border-radius:16px 16px 0 0}.adaptive-sim-shell.device-mobile .bottom-resize-handle{height:20px}.adaptive-sim-shell.device-mobile .bottom-handle-pill{width:48px;height:5px}.adaptive-sim-shell.device-mobile button,.adaptive-sim-shell.device-mobile .quick-inspect-pill,.adaptive-sim-shell.device-mobile .step-nav-pill{min-height:38px}.adaptive-sim-shell.device-tablet .adaptive-canvas-stage{flex:1;min-width:50%}.adaptive-sim-shell.device-tablet .adaptive-panel.left-panel.is-collapsed{width:48px!important}.adaptive-sim-shell.device-tablet .adaptive-panel.right-panel{max-width:340px}.adaptive-sim-shell.device-tv{padding:16px 24px}.adaptive-sim-shell.device-tv .adaptive-header{height:64px;padding:0 20px}.adaptive-sim-shell.device-tv .adaptive-main-title{font-size:1.35rem}.adaptive-sim-shell.device-tv .adaptive-header-btn{height:42px;padding:0 16px;font-size:.95rem;border-radius:10px}.adaptive-sim-shell.device-tv .adaptive-panel{width:380px!important;max-width:460px!important}.adaptive-sim-shell.device-tv .panel-heading{font-size:1.05rem}.adaptive-sim-shell.device-tv .panel-inner-content{font-size:.95rem}.adaptive-sim-shell.device-tv .ph-hero-number{font-size:3.5rem!important;text-shadow:0 0 25px rgba(239,68,68,.6)}.adaptive-sim-shell.device-tv .floating-inspector{width:380px;font-size:.95rem}.adaptive-sim-shell.device-tv .inspector-title{font-size:1.05rem}.adaptive-sim-shell.device-tv button:focus-visible,.adaptive-sim-shell.device-tv input:focus-visible,.adaptive-sim-shell.device-tv select:focus-visible,.adaptive-sim-shell.device-tv [tabindex="0"]:focus-visible{outline:3px solid #00f0ff!important;outline-offset:4px!important;box-shadow:0 0 24px #00f0ffd9!important;transform:scale(1.05)}.floating-inspector{position:absolute;z-index:20000000;width:320px;max-width:calc(100% - 32px);background:#0b132bfa;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(56,189,248,.25);border-radius:12px;box-shadow:0 16px 36px #000000a6,0 0 20px #38bdf826;color:#f8fafc;font-family:inherit;overflow:hidden;transition:box-shadow .2s ease,border-color .2s ease;pointer-events:auto;animation:inspectorFadeIn .2s cubic-bezier(.16,1,.3,1)}@keyframes inspectorFadeIn{0%{opacity:0;transform:scale(.95) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.floating-inspector.pos-top-right{top:18px;right:18px}.floating-inspector.pos-top-left{top:18px;left:18px}.floating-inspector.pos-bottom-right{bottom:24px;right:18px}.floating-inspector.pos-bottom-left{bottom:24px;left:18px}.floating-inspector.is-pinned{border-color:#38bdf880;box-shadow:0 18px 40px #000000bf,0 0 24px #38bdf840}.inspector-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.08)}.inspector-title-group{display:flex;align-items:center;gap:8px;min-width:0}.inspector-icon-bullet{width:22px;height:22px;border-radius:6px;background:#38bdf81f;display:flex;align-items:center;justify-content:center;flex-shrink:0}.inspector-title-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.inspector-title{margin:0;font-size:.82rem;font-weight:700;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inspector-badge{font-size:.65rem;font-weight:600;padding:1px 6px;border-radius:9999px;border:1px solid;letter-spacing:.02em}.inspector-subtitle{margin:2px 0 0;font-size:.68rem;color:#94a3b8}.inspector-actions{display:flex;align-items:center;gap:4px}.inspector-btn-action{background:transparent;border:1px solid transparent;color:#94a3b8;width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.inspector-btn-action:hover{background:#ffffff14;color:#f8fafc}.inspector-btn-action.pinned{color:#38bdf8;background:#38bdf826;border-color:#38bdf84d}.inspector-btn-action.close:hover{background:#ef444426;color:#f87171}.inspector-body{padding:12px 14px;font-size:.78rem;color:#cbd5e1;max-height:240px;overflow-y:auto}.inspector-detail-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.73rem;line-height:1.35}.inspector-detail-row:last-child{border-bottom:none}.inspector-detail-row .lbl{color:#94a3b8;font-weight:500;flex-shrink:0}.inspector-detail-row .val{color:#f8fafc;font-weight:600;text-align:right;word-break:break-word}.sqs-control-section{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.25rem}.sqs-section-header{display:flex;align-items:center;gap:.5rem;padding-bottom:.35rem;border-bottom:1px solid rgba(255,255,255,.07)}.sqs-section-icon{display:flex;align-items:center;color:var(--sim-text-muted)}.sqs-section-title{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--sim-text-heading);margin:0;flex:1}.sqs-section-badge{font-size:.65rem;padding:1px 6px}.sqs-section-body{display:flex;flex-direction:column;gap:.75rem}.sqs-slider-group{display:flex;flex-direction:column;gap:.35rem;padding:.6rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--sim-radius-sm);transition:all .2s ease}.sqs-slider-group:hover{background:#ffffff0d;border-color:#ffffff1f}.sqs-slider-group.disabled{opacity:.45;pointer-events:none}.sqs-slider-header{display:flex;align-items:center;justify-content:space-between}.sqs-slider-label{font-size:.82rem;font-weight:500;color:var(--sim-text-body)}.sqs-slider-display{display:flex;align-items:baseline}.sqs-slider-track-wrap{width:100%;padding:4px 0}.sqs-slider-input{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;outline:none;cursor:pointer;transition:all .2s ease}.sqs-slider-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid #38BDF8;box-shadow:0 0 10px #38bdf880;cursor:grab;transition:transform .15s ease,box-shadow .15s ease}.sqs-slider-input::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 0 14px #38bdf8cc}.sqs-slider-input::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid #38BDF8;box-shadow:0 0 10px #38bdf880;cursor:grab}.sqs-slider-bounds{display:flex;justify-content:space-between;font-size:.68rem;color:var(--sim-text-dim)}.sqs-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--sim-radius-sm);transition:all .2s ease}.sqs-toggle-row:hover{background:#ffffff0d}.sqs-toggle-info{display:flex;align-items:center;gap:.6rem}.sqs-toggle-icon{color:var(--sim-text-muted)}.sqs-toggle-text{display:flex;flex-direction:column}.sqs-toggle-label{font-size:.82rem;font-weight:500;color:var(--sim-text-body)}.sqs-toggle-desc{font-size:.7rem;color:var(--sim-text-dim)}.sqs-switch{width:40px;height:22px;border-radius:11px;background:#ffffff26;border:none;cursor:pointer;position:relative;transition:background-color .25s ease;padding:2px}.sqs-switch.active{background:#3b82f6;box-shadow:0 0 10px #3b82f680}.sqs-switch-thumb{display:block;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .25s cubic-bezier(.16,1,.3,1)}.sqs-switch.active .sqs-switch-thumb{transform:translate(18px)}.sqs-action-toolbar{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .6rem;border-radius:var(--sim-radius-md);z-index:15}.sqs-toolbar-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:.45rem .85rem;border-radius:var(--sim-radius-sm);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:1px solid transparent;color:var(--sim-text-body)}.sqs-btn-play{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:#fff3;box-shadow:0 4px 15px #2563eb66}.sqs-btn-play:hover{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 6px 20px #3b82f699;transform:translateY(-1px)}.sqs-btn-play.is-playing{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 4px 15px #d9770666}.sqs-btn-play.is-playing:hover{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 6px 20px #f59e0b99}.sqs-btn-secondary{background:#ffffff0f;border-color:#ffffff1a}.sqs-btn-secondary:hover{background:#ffffff1f;border-color:#fff3;color:#fff}.sqs-btn-speed{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;padding:.45rem .65rem;color:#38bdf8}.sqs-action-toolbar.disabled{opacity:.5;pointer-events:none}@media(max-width:640px){.sqs-toolbar-label{display:none}.sqs-toolbar-btn{padding:.45rem}}.sqs-metrics-card{padding:.75rem 1rem;display:flex;flex-direction:column;gap:.65rem}.sqs-metrics-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.sqs-metrics-title-group{display:flex;align-items:center;gap:6px}.sqs-metrics-icon{color:#38bdf8}.sqs-metrics-title{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--sim-text-heading)}.sqs-formula-badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:var(--sim-radius-pill);background:#38bdf81a;border:1px solid rgba(56,189,248,.25);font-size:.75rem;color:#7dd3fc}.sqs-formula-badge code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:600}.sqs-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.5rem}.sqs-metric-item{display:flex;flex-direction:column;gap:.25rem;padding:.5rem .65rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--sim-radius-sm);transition:all .2s ease;position:relative;overflow:hidden}.sqs-metric-item.is-highlight{background:#3b82f614;border-color:#3b82f64d}.sqs-metric-item.is-highlight:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:var(--metric-color, #38BDF8)}.sqs-metric-top{display:flex;align-items:center;gap:5px}.sqs-metric-symbol{font-family:serif;font-style:italic;font-weight:700;font-size:.8rem;color:var(--metric-color, #38BDF8)}.sqs-metric-label{font-size:.72rem;color:var(--sim-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sqs-metric-bottom{display:flex;align-items:baseline;gap:2px}.sqs-metric-val{font-size:1.05rem}.sqs-metric-unit{font-size:.75rem}.sqs-insight-card{padding:.85rem 1.15rem;display:flex;flex-direction:column;gap:.65rem;background:linear-gradient(135deg,#1e293bd9,#0f172ae6);border-left:3px solid #F59E0B}.sqs-insight-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.sqs-insight-title-wrap{display:flex;align-items:center;gap:8px}.sqs-insight-bulb{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#f59e0b26;color:#fbbf24;flex-shrink:0}.sqs-insight-title{font-size:.82rem;font-weight:700;letter-spacing:.02em;color:var(--sim-text-heading)}.sqs-insight-live{font-size:.65rem;color:#34d399;border-color:#34d3994d;background:#34d3991a;display:inline-flex;align-items:center;gap:5px}.sqs-live-pulse{width:6px;height:6px;border-radius:50%;background:#34d399;animation:sqsPulse 2s infinite}@keyframes sqsPulse{0%{transform:scale(.9);opacity:.7}50%{transform:scale(1.3);opacity:1;box-shadow:0 0 8px #34d399}to{transform:scale(.9);opacity:.7}}.sqs-insight-content{display:flex;flex-direction:column;gap:.45rem}.sqs-insight-text{font-size:.88rem;color:#f1f5f9;line-height:1.5;margin:0}.sqs-insight-concept{display:flex;align-items:center;gap:.65rem;padding-top:.4rem;border-top:1px solid rgba(255,255,255,.06);flex-wrap:wrap}.sqs-insight-rule{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;font-weight:700;color:#fbbf24;padding:2px 6px;border-radius:4px;background:#f59e0b1f;border:1px solid rgba(245,158,11,.25)}.sqs-insight-summary{font-size:.78rem;color:var(--sim-text-muted)}.universal-sim-container{width:100vw;height:100dvh;overflow:hidden;position:relative;contain:layout paint}.universal-sim-container:fullscreen,.universal-sim-container:-webkit-full-screen{width:100vw!important;height:100vh!important;height:100dvh!important;overflow:hidden!important;background-color:#0a0f1c!important}.simulation-scroll-canvas{width:100%;height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.simulation-scroll-canvas::-webkit-scrollbar{width:6px}.simulation-scroll-canvas::-webkit-scrollbar-track{background:transparent}.simulation-scroll-canvas::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:9999px}.simulation-scroll-canvas::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sim-floating-controls{position:absolute;top:max(.75rem,env(safe-area-inset-top,.75rem));right:max(.75rem,env(safe-area-inset-right,.75rem));z-index:130;display:flex;align-items:center;gap:.5rem;pointer-events:auto}.virtual-lab-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;background:#0f172abf;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(56,189,248,.2);border-radius:12px;padding:8px 14px;margin-bottom:16px;box-shadow:0 4px 20px -5px #00000080,0 0 15px -3px #38bdf81a}.vlab-modes{display:flex;align-items:center;gap:6px;position:relative;background:#02061780;padding:3px;border-radius:10px;border:1px solid rgba(255,255,255,.06)}.vlab-mode-btn{position:relative;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:8px;background:transparent;border:none;color:#94a3b8;font-size:.85rem;font-weight:500;cursor:pointer;transition:color .2s ease;z-index:1}.vlab-mode-btn:hover{color:#f8fafc}.vlab-mode-btn.active{color:#38bdf8;font-weight:600}.vlab-mode-icon{display:flex;align-items:center}.vlab-active-indicator{position:absolute;inset:0;background:#38bdf81f;border:1px solid rgba(56,189,248,.35);border-radius:8px;z-index:-1;box-shadow:0 0 12px #38bdf833}.vlab-badge{font-size:.7rem;background:#38bdf833;color:#38bdf8;padding:1px 6px;border-radius:999px;font-weight:600}.vlab-stage-indicator{display:flex;align-items:center;gap:6px;background:#38bdf814;border:1px solid rgba(56,189,248,.2);padding:4px 10px;border-radius:8px;font-size:.8rem}.vlab-stage-step{color:#38bdf8;font-weight:600}.vlab-stage-sep{color:#64748b}.vlab-stage-name{color:#e2e8f0;font-weight:500;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vlab-tools{display:flex;align-items:center;gap:8px}.vlab-tool-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:8px;background:#1e293b99;border:1px solid rgba(255,255,255,.08);color:#cbd5e1;font-size:.8rem;cursor:pointer;transition:all .2s ease}.vlab-tool-btn:hover{background:#334155cc;color:#fff;border-color:#fff3;transform:translateY(-1px)}.vlab-tool-btn.lab-sheet-btn{background:#10b9811f;border-color:#10b9814d;color:#34d399}.vlab-tool-btn.lab-sheet-btn:hover{background:#10b98138;border-color:#10b98180;box-shadow:0 0 12px #10b98140}.vlab-count-badge{background:#10b981;color:#022c22;font-weight:700;font-size:.7rem;min-width:18px;height:18px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 4px}.vlab-tool-btn.hint-btn{background:#f59e0b1f;border-color:#f59e0b4d;color:#fbbf24}.vlab-tool-btn.hint-btn:hover{background:#f59e0b38;border-color:#f59e0b80;box-shadow:0 0 12px #f59e0b40}@media(max-width:768px){.virtual-lab-bar{flex-direction:column;align-items:stretch}.vlab-modes{overflow-x:auto;width:100%;justify-content:flex-start}.vlab-tools{justify-content:space-between;width:100%}}.sqs-experiment-logger{background:#0f172ab3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(56,189,248,.2);border-radius:12px;padding:16px;margin-top:16px;box-shadow:0 4px 20px -5px #00000080}.sqs-logger-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:12px}.sqs-logger-title-group{display:flex;align-items:center;gap:10px}.sqs-logger-icon{font-size:1.4rem}.sqs-logger-title{font-size:1rem;font-weight:700;color:#f8fafc;margin:0}.sqs-logger-subtitle{font-size:.8rem;color:#94a3b8;margin:2px 0 0}.sqs-logger-actions{display:flex;align-items:center;gap:8px}.sqs-btn-record{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;border:1px solid rgba(56,189,248,.4);padding:7px 14px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 10px #0284c74d}.sqs-btn-record:hover:not(:disabled){background:linear-gradient(135deg,#0ea5e9,#0284c7);box-shadow:0 0 16px #0ea5e980;transform:translateY(-1px)}.sqs-btn-record.recorded{background:linear-gradient(135deg,#059669,#047857);border-color:#34d39980}.sqs-btn-clear{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:#ef44441f;border:1px solid rgba(239,68,68,.3);color:#f87171;cursor:pointer;transition:all .2s ease}.sqs-btn-clear:hover{background:#ef444440;border-color:#ef444499;color:#fca5a5}.sqs-logger-comparison-banner{background:#0ea5e91a;border:1px solid rgba(56,189,248,.3);border-radius:8px;padding:10px 14px;margin-bottom:12px;font-size:.85rem;color:#e2e8f0;display:flex;flex-direction:column;gap:4px}.sqs-comp-badge{display:inline-flex;align-items:center;gap:6px;color:#38bdf8;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.sqs-comp-highlight{color:#fbbf24;font-weight:600}.sqs-logger-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid rgba(255,255,255,.08)}.sqs-logger-table{width:100%;border-collapse:collapse;font-size:.85rem;text-align:left}.sqs-logger-table th{background:#02061799;color:#94a3b8;font-weight:600;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.08);white-space:nowrap}.sqs-logger-table th.sqs-th-output{color:#38bdf8}.sqs-logger-table td{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.04);color:#f1f5f9;white-space:nowrap}.sqs-tr-data:hover td{background:#38bdf80d}.sqs-td-num{font-weight:600;color:#94a3b8}.sqs-td-in{color:#cbd5e1}.sqs-td-out{color:#38bdf8;font-weight:700}.sqs-td-empty{text-align:center;padding:24px 14px;color:#64748b;font-style:italic}.sqs-btn-row-del{background:transparent;border:none;color:#64748b;cursor:pointer;padding:2px 6px;border-radius:4px;transition:all .15s ease}.sqs-btn-row-del:hover{background:#ef444433;color:#ef4444}.sqs-prediction-card{background:#0f172abf;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(168,85,247,.25);border-radius:12px;padding:18px;margin-bottom:16px;box-shadow:0 4px 20px -5px #00000080,0 0 15px -3px #a855f726}.sqs-pred-header{margin-bottom:14px}.sqs-pred-badge{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#c084fc;background:#a855f71f;padding:3px 10px;border-radius:999px;margin-bottom:8px;border:1px solid rgba(168,85,247,.25)}.sqs-pred-title{font-size:1.05rem;font-weight:700;color:#f8fafc;margin:0 0 4px;line-height:1.4}.sqs-pred-subtitle{font-size:.85rem;color:#94a3b8;margin:0;line-height:1.4}.sqs-pred-options{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.sqs-pred-option-btn{display:flex;align-items:flex-start;gap:12px;padding:10px 14px;background:#02061780;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#e2e8f0;text-align:left;cursor:pointer;transition:all .2s ease;font-size:.88rem;line-height:1.4}.sqs-pred-option-btn:hover:not(.locked){background:#a855f714;border-color:#a855f759;transform:translate(2px)}.sqs-pred-option-btn.selected{background:#a855f726;border-color:#a855f7;color:#faf5ff}.sqs-pred-radio-dot{width:18px;height:18px;border-radius:50%;border:2px solid #64748B;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.sqs-pred-option-btn.selected .sqs-pred-radio-dot{border-color:#c084fc}.sqs-pred-radio-inner{width:8px;height:8px;border-radius:50%;background:#c084fc}.sqs-pred-footer{display:flex;justify-content:flex-end}.sqs-pred-submit-btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#9333ea,#7e22ce);color:#fff;border:none;padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 10px #9333ea4d}.sqs-pred-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#a855f7,#9333ea);box-shadow:0 0 16px #a855f780;transform:translateY(-1px)}.sqs-pred-submit-btn:disabled{opacity:.5;cursor:not-allowed}.sqs-pred-feedback-box{background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:8px;padding:12px 14px}.sqs-pred-feedback-header{display:flex;align-items:center;gap:8px;color:#34d399;font-size:.85rem;font-weight:600;margin-bottom:6px}.sqs-pred-feedback-body{font-size:.85rem;color:#e2e8f0;line-height:1.5;margin:0 0 10px}.sqs-pred-continue-btn{display:inline-flex;align-items:center;gap:6px;background:#10b981;color:#022c22;border:none;padding:6px 14px;border-radius:6px;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .2s ease}.sqs-pred-continue-btn:hover{background:#34d399;transform:translate(2px)}.sqs-modal-backdrop{position:fixed;inset:0;background:#020617bf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.sqs-hint-modal{background:#0f172a;border:1px solid rgba(245,158,11,.3);border-radius:16px;width:100%;max-width:540px;padding:24px;box-shadow:0 25px 50px -12px #000000b3,0 0 30px #f59e0b26;color:#f8fafc}.sqs-hint-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.sqs-hint-title-group{display:flex;align-items:flex-start;gap:12px}.sqs-hint-icon{font-size:1.6rem}.sqs-hint-title{font-size:1.15rem;font-weight:700;color:#fbbf24;margin:0}.sqs-hint-subtitle{font-size:.8rem;color:#94a3b8;margin:4px 0 0;line-height:1.4}.sqs-modal-close-btn{background:#ffffff0f;border:none;color:#94a3b8;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.sqs-modal-close-btn:hover{background:#ffffff26;color:#fff}.sqs-hint-body{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.sqs-hint-card{padding:14px 16px;border-radius:10px;transition:all .2s ease}.sqs-hint-card.unlocked{background:#f59e0b14;border:1px solid rgba(245,158,11,.25)}.sqs-hint-card.locked{background:#02061766;border:1px dashed rgba(255,255,255,.1);opacity:.6}.sqs-hint-card-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.sqs-hint-badge{font-size:.7rem;font-weight:700;background:#f59e0b33;color:#fbbf24;padding:2px 8px;border-radius:6px}.sqs-hint-card.locked .sqs-hint-badge{background:#94a3b826;color:#94a3b8}.sqs-hint-card-title{font-size:.9rem;font-weight:600;color:#f1f5f9;margin:0}.sqs-hint-card-prompt{font-size:.85rem;color:#cbd5e1;line-height:1.5;margin:0}.sqs-hint-locked-placeholder{display:flex;align-items:center;gap:8px;font-size:.8rem;color:#64748b;font-style:italic;margin-top:4px}.sqs-hint-footer{display:flex;align-items:center;justify-content:space-between}.sqs-btn-unlock-hint{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#d97706,#b45309);color:#fff;border:none;padding:8px 14px;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease}.sqs-btn-unlock-hint:hover{background:linear-gradient(135deg,#f59e0b,#d97706);transform:translateY(-1px)}.sqs-all-unlocked-text{font-size:.8rem;color:#34d399;font-weight:500}.sqs-btn-close-modal{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#e2e8f0;padding:8px 18px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.sqs-btn-close-modal:hover{background:#ffffff29;color:#fff}.sqs-misconception-banner{background:#ef44441a;border:1px solid rgba(239,68,68,.35);border-radius:12px;padding:16px;margin-bottom:16px;box-shadow:0 4px 20px -5px #ef444426}.sqs-misc-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px}.sqs-misc-title-group{display:flex;flex-direction:column;gap:4px}.sqs-misc-badge{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;color:#f87171;background:#ef444426;border:1px solid rgba(239,68,68,.3);padding:2px 8px;border-radius:6px;width:fit-content;text-transform:uppercase}.sqs-misc-claim{font-size:.95rem;font-weight:700;color:#fca5a5;margin:0;font-style:italic}.sqs-misc-dismiss{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px;transition:all .2s ease}.sqs-misc-dismiss:hover{background:#ffffff1a;color:#fff}.sqs-misc-content{display:flex;flex-direction:column;gap:8px;font-size:.85rem;line-height:1.5}.sqs-misc-prompt{color:#e2e8f0;margin:0}.sqs-misc-explanation{color:#94a3b8;margin:0}.sqs-misc-actions{margin-top:12px;display:flex}.sqs-misc-btn-test{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;border:none;padding:7px 14px;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease}.sqs-misc-btn-test:hover{background:linear-gradient(135deg,#ef4444,#dc2626);transform:translateY(-1px)}.sqs-concept-modal{background:#0f172a;border:1px solid rgba(56,189,248,.3);border-radius:16px;width:100%;max-width:720px;padding:24px;box-shadow:0 25px 50px -12px #000000b3,0 0 30px #38bdf826;color:#f8fafc;max-height:90vh;overflow-y:auto}.sqs-concept-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.sqs-concept-title-group{display:flex;align-items:flex-start;gap:12px}.sqs-concept-icon{font-size:1.6rem}.sqs-concept-title{font-size:1.15rem;font-weight:700;color:#38bdf8;margin:0}.sqs-concept-subtitle{font-size:.8rem;color:#94a3b8;margin:4px 0 0;line-height:1.4}.sqs-concept-body{display:flex;flex-direction:column;gap:20px;margin-bottom:20px}.sqs-section-subtitle{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:#e2e8f0;margin:0 0 10px}.sqs-prereq-grid{display:flex;flex-wrap:wrap;gap:8px}.sqs-prereq-chip{display:inline-flex;align-items:center;gap:6px;background:#1e293bb3;border:1px solid rgba(255,255,255,.08);padding:6px 12px;border-radius:8px;font-size:.8rem;color:#cbd5e1}.sqs-prereq-status{color:#34d399;font-weight:700}.sqs-tree-flow{display:flex;align-items:stretch;gap:8px;overflow-x:auto;padding-bottom:8px}.sqs-tree-node{flex:1;min-width:150px;background:#02061780;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:4px}.sqs-tree-node.prerequisite{border-color:#94a3b84d}.sqs-tree-node.current{background:#38bdf81f;border:1px solid #38BDF8;box-shadow:0 0 16px #38bdf833}.sqs-tree-node.next{border-color:#a855f74d;opacity:.8}.sqs-node-status-tag{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.sqs-tree-node.prerequisite .sqs-node-status-tag{color:#94a3b8}.sqs-tree-node.current .sqs-node-status-tag{color:#38bdf8}.sqs-tree-node.next .sqs-node-status-tag{color:#c084fc}.sqs-node-title{font-size:.88rem;font-weight:700;color:#f8fafc;margin:0}.sqs-node-desc{font-size:.75rem;color:#94a3b8;margin:0;line-height:1.35}.sqs-tree-connector{display:flex;align-items:center;color:#64748b}.sqs-concept-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.08);padding-top:16px}.sqs-footer-hint{font-size:.8rem;color:#94a3b8}.sqs-lab-sheet-modal{background:#0b1329;border:1px solid rgba(16,185,129,.35);border-radius:16px;width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #000c,0 0 35px #10b98126;color:#f8fafc;overflow:hidden}.sqs-sheet-toolbar{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:#020617cc;border-bottom:1px solid rgba(255,255,255,.08)}.sqs-sheet-tag{display:inline-flex;align-items:center;gap:8px;color:#34d399;font-weight:700;font-size:.85rem;letter-spacing:.05em}.sqs-sheet-toolbar-right{display:flex;align-items:center;gap:10px}.sqs-btn-print{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#059669,#047857);color:#fff;border:none;padding:7px 14px;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.sqs-btn-print:hover{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 0 16px #10b98166}.sqs-printable-sheet{padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:20px;background:#020617}.sqs-sheet-doc-header{display:flex;justify-content:space-between;border-bottom:2px solid #1E293B;padding-bottom:16px;flex-wrap:wrap;gap:16px}.sqs-doc-brand h2{font-size:1.15rem;font-weight:800;color:#38bdf8;margin:0;letter-spacing:.05em}.sqs-doc-brand p{font-size:.75rem;color:#94a3b8;margin:2px 0 0}.sqs-doc-meta-table{display:flex;flex-direction:column;gap:4px;font-size:.82rem}.sqs-meta-row{display:flex;gap:8px}.sqs-meta-lbl{color:#64748b;width:110px}.sqs-meta-val{color:#f1f5f9;font-weight:500}.sqs-input-inline-name{background:#1e293b99;border:1px solid rgba(255,255,255,.15);border-radius:4px;padding:2px 8px;color:#f8fafc;font-size:.82rem;outline:none}.sqs-input-inline-name:focus{border-color:#38bdf8}.sqs-doc-title-box{background:#0f172a99;border-left:4px solid #34D399;padding:12px 16px;border-radius:0 8px 8px 0}.sqs-doc-title-box h3{margin:0;font-size:1.1rem;color:#f8fafc;font-weight:700}.sqs-doc-title-box p{margin:2px 0 0;font-size:.8rem;color:#94a3b8}.sqs-sheet-section{display:flex;flex-direction:column;gap:8px}.sqs-sheet-h4{font-size:.88rem;font-weight:700;color:#34d399;margin:0;letter-spacing:.03em}.sqs-sheet-box{background:#0f172a80;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:12px 14px;font-size:.85rem;line-height:1.5}.sqs-sheet-q{margin:0 0 6px;color:#94a3b8}.sqs-sheet-ans{margin:0;color:#c084fc;font-weight:600}.sqs-sheet-table{width:100%;border-collapse:collapse;font-size:.82rem;text-align:left;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.sqs-sheet-table th{background:#0f172acc;padding:8px 12px;color:#94a3b8;font-weight:600;border-bottom:1px solid rgba(255,255,255,.08)}.sqs-sheet-table th.sqs-th-out{color:#38bdf8}.sqs-sheet-table td{padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.04);color:#e2e8f0}.sqs-td-bold{font-weight:600;color:#f8fafc}.sqs-td-accent{color:#38bdf8;font-weight:700}.sqs-sheet-empty{font-size:.82rem;color:#64748b;font-style:italic;margin:0}.sqs-findings-list{margin:0;padding-left:20px;color:#e2e8f0}.sqs-sheet-textarea{width:100%;background:#0f172a99;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 12px;color:#f8fafc;font-size:.85rem;font-family:inherit;resize:vertical;outline:none}.sqs-sheet-textarea:focus{border-color:#34d399}.sqs-print-only{display:none}@media print{.no-print{display:none!important}.sqs-print-only{display:block!important}.sqs-modal-backdrop{position:static;background:transparent;padding:0}.sqs-lab-sheet-modal{max-width:100%;box-shadow:none;border:none;color:#000;background:#fff}.sqs-printable-sheet{background:#fff;color:#000}.sqs-doc-brand h2{color:#000}.sqs-meta-val,.sqs-meta-lbl,.sqs-doc-brand p,.sqs-doc-title-box p{color:#333}.sqs-doc-title-box{background:#f1f5f9;border-left-color:#059669}.sqs-doc-title-box h3{color:#000}.sqs-sheet-box{background:#f8fafc;border-color:#e2e8f0;color:#000}.sqs-sheet-table{border-color:#cbd5e1}.sqs-sheet-table th{background:#f1f5f9;color:#000}.sqs-sheet-table td{color:#000;border-color:#e2e8f0}}.sqs-guided-inquiry-engine{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}.sqs-inquiry-stepper{display:flex;align-items:center;gap:4px;overflow-x:auto;padding:4px 2px}.sqs-step-btn{display:flex;align-items:center;gap:6px;background:#0f172a99;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:6px 10px;color:#64748b;font-size:.78rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s ease}.sqs-step-btn:hover{background:#1e293bcc;color:#e2e8f0}.sqs-step-btn.passed{border-color:#38bdf84d;color:#94a3b8}.sqs-step-btn.active{background:#38bdf826;border-color:#38bdf8;color:#38bdf8;font-weight:700;box-shadow:0 0 12px #38bdf833}.sqs-step-num{width:18px;height:18px;border-radius:50%;background:#ffffff14;display:flex;align-items:center;justify-content:center;font-size:.7rem}.sqs-step-btn.active .sqs-step-num{background:#38bdf8;color:#020617;font-weight:800}.sqs-inquiry-card{background:#0f172abf;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(56,189,248,.2);border-radius:12px;padding:20px;box-shadow:0 4px 25px -5px #00000080}.sqs-inquiry-stage-badge{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;color:#38bdf8;background:#38bdf81a;padding:3px 10px;border-radius:999px;margin-bottom:8px;border:1px solid rgba(56,189,248,.25)}.sqs-inquiry-card-title{font-size:1.15rem;font-weight:700;color:#f8fafc;margin:0 0 4px}.sqs-inquiry-card-desc{font-size:.85rem;color:#94a3b8;margin:0 0 16px;line-height:1.4}.sqs-inquiry-box{display:flex;align-items:flex-start;gap:14px;background:#02061780;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:16px;margin-bottom:16px}.sqs-box-icon{font-size:1.6rem;flex-shrink:0}.sqs-box-text h4{margin:0 0 6px;font-size:.95rem;color:#f1f5f9}.sqs-box-text p{margin:0;font-size:.88rem;color:#cbd5e1;line-height:1.5}.sqs-hint-subtext{margin-top:10px!important;color:#fbbf24!important;font-size:.82rem!important}.sqs-protocol-actions{margin-top:12px}.sqs-btn-preset-inputs{display:inline-flex;align-items:center;gap:6px;background:#38bdf826;border:1px solid rgba(56,189,248,.4);color:#38bdf8;padding:7px 12px;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease}.sqs-btn-preset-inputs:hover{background:#38bdf840;transform:translateY(-1px)}.sqs-trial-progress-tag{margin-top:10px;font-size:.82rem;color:#94a3b8}.sqs-status-done{color:#34d399;font-weight:600}.sqs-status-pending{color:#fbbf24}.sqs-observation-block{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}.sqs-q-item{background:#02061766;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:14px}.sqs-q-text{font-size:.95rem;font-weight:600;color:#f8fafc;margin:0 0 12px;line-height:1.4}.sqs-q-options{display:flex;flex-direction:column;gap:8px}.sqs-opt-btn{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#0f172a99;border:1px solid rgba(255,255,255,.06);border-radius:6px;color:#cbd5e1;text-align:left;cursor:pointer;transition:all .2s ease;font-size:.85rem}.sqs-opt-btn:hover{background:#38bdf814;border-color:#38bdf84d}.sqs-opt-btn.selected{background:#38bdf826;border-color:#38bdf8;color:#f0f9ff;font-weight:600}.sqs-opt-dot{width:14px;height:14px;border-radius:50%;border:2px solid #64748B}.sqs-opt-btn.selected .sqs-opt-dot{border-color:#38bdf8;background:#38bdf8}.sqs-q-feedback{margin-top:10px;padding:8px 12px;background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:6px;color:#34d399;font-size:.82rem;line-height:1.4}.sqs-q-feedback.aha-highlight{background:#f59e0b1a;border-color:#f59e0b66;color:#fbbf24;font-weight:600}.sqs-formal-explain-card{background:#02061780;border:1px solid rgba(56,189,248,.3);border-radius:10px;padding:16px;margin-bottom:16px}.sqs-explain-summary{font-size:.9rem;color:#e2e8f0;line-height:1.5;margin-bottom:12px}.sqs-formula-hero{text-align:center;padding:14px;background:#0f172acc;border-radius:8px;margin-bottom:12px;border:1px solid rgba(56,189,248,.2)}.sqs-formula-hero code{font-size:1.3rem;font-weight:700;color:#38bdf8;font-family:monospace}.sqs-formula-desc{font-size:.82rem;color:#94a3b8;white-space:pre-line;line-height:1.5;margin-bottom:14px}.sqs-laws-list h5{font-size:.88rem;color:#f1f5f9;margin:0 0 6px}.sqs-laws-list ul{margin:0;padding-left:20px;font-size:.82rem;color:#cbd5e1;line-height:1.5}.sqs-transfer-card{background:#a855f714;border:1px solid rgba(168,85,247,.3);border-radius:10px;padding:16px;margin-bottom:16px}.sqs-transfer-badge{display:inline-flex;align-items:center;gap:6px;color:#c084fc;font-size:.78rem;font-weight:700;text-transform:uppercase;margin-bottom:6px}.sqs-transfer-card h4{font-size:.95rem;color:#f8fafc;margin:0 0 10px;line-height:1.4}.sqs-target-box{background:#02061799;padding:8px 12px;border-radius:6px;font-size:.85rem;color:#38bdf8;display:inline-block;margin-bottom:8px}.sqs-transfer-hint{font-size:.8rem;color:#94a3b8;margin:0}.sqs-reflection-card h4{font-size:.95rem;color:#f8fafc;margin:0 0 8px}.sqs-reflect-ol{margin:0 0 14px;padding-left:20px;font-size:.85rem;color:#cbd5e1;line-height:1.5}.sqs-reflect-form label{display:block;font-size:.82rem;font-weight:600;color:#94a3b8;margin-bottom:6px}.sqs-reflect-textarea{width:100%;background:#02061799;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 12px;color:#f8fafc;font-size:.85rem;font-family:inherit;resize:vertical;outline:none;margin-bottom:12px}.sqs-reflect-textarea:focus{border-color:#38bdf8}.sqs-btn-view-final-sheet{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#059669,#047857);color:#fff;border:none;padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.sqs-btn-view-final-sheet:hover{background:linear-gradient(135deg,#10b981,#059669);transform:translateY(-1px)}.sqs-inquiry-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.08);padding-top:16px}.sqs-nav-btn{display:inline-flex;align-items:center;gap:6px;background:#1e293b99;border:1px solid rgba(255,255,255,.1);color:#e2e8f0;padding:7px 14px;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.sqs-nav-btn:hover:not(:disabled){background:#334155cc;color:#fff;transform:translateY(-1px)}.sqs-nav-btn:disabled{opacity:.4;cursor:not-allowed}.sqs-nav-btn.next{background:linear-gradient(135deg,#0284c7,#0369a1);border-color:#38bdf866;color:#fff}.sqs-nav-btn.next:hover:not(:disabled){background:linear-gradient(135deg,#0ea5e9,#0284c7)}.sqs-nav-btn.hint{background:#f59e0b1f;border-color:#f59e0b4d;color:#fbbf24}.force-arena-3d-simulation{position:relative;width:100%;height:100dvh;background:var(--bg-primary);transition:background .3s;overflow:hidden}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:var(--glass-bg);border:1px solid rgba(231,76,60,.5);border-radius:.75rem;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-btn-3d:hover{border-color:#e74c3c;color:var(--text-primary);transform:scale(1.05)}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:var(--glass-bg);border:1px solid rgba(231,76,60,.3);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-3d h1 svg{color:#e74c3c}.action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#e74c3c33;border:1px solid rgba(231,76,60,.4);border-radius:.5rem;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.action-btn:hover,.action-btn.active{background:#e74c3c66;color:var(--text-primary)}.force-label{display:flex;flex-direction:column;align-items:center;padding:.375rem .625rem;background:var(--glass-bg);border:2px solid;border-radius:.5rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.force-label .magnitude{font-size:.7rem;color:var(--text-secondary)}.force-label-badge{display:flex;align-items:center;gap:.35rem;padding:.3rem .55rem;background:#0f172ae0;border:1.5px solid;border-radius:.5rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap;-webkit-user-select:none;user-select:none}.force-label-badge .badge-symbol{font-weight:700;font-size:.85rem}.force-label-badge .badge-value{font-size:.75rem;font-weight:600;color:#f8fafc;font-family:Roboto Mono,monospace}.mass-label{padding:.25rem .5rem;background:#3498dbe6;border-radius:.25rem;font-size:.75rem;font-weight:700;color:var(--text-primary)}.cart-mass-badge{padding:.25rem .6rem;background:#0f172aeb;border:1.5px solid rgba(56,189,248,.6);border-radius:.375rem;font-size:.8rem;font-weight:700;color:#38bdf8;white-space:nowrap;font-family:Roboto Mono,monospace;box-shadow:0 2px 10px #00000080;-webkit-user-select:none;user-select:none}.resultant-label{display:flex;flex-direction:column;align-items:center;padding:.5rem .75rem;background:#ff9a4433;border:1px solid rgba(255,154,68,.5);border-radius:.5rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.resultant-label .symbol{font-size:1rem;font-weight:700;color:#ff9a44}.resultant-label .value{font-size:.875rem;color:var(--text-primary)}.resultant-label .accel{font-size:.7rem;color:var(--text-secondary)}.resultant-label-badge{display:flex;align-items:center;gap:.4rem;padding:.35rem .65rem;background:#1e140aeb;border:1.5px solid #F59E0B;border-radius:.5rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 0 16px #f59e0b66;white-space:nowrap;-webkit-user-select:none;user-select:none}.resultant-label-badge .badge-symbol{font-weight:800;font-size:.95rem;color:#f59e0b}.resultant-label-badge .badge-value{font-size:.8rem;font-weight:700;color:#fef3c7;font-family:Roboto Mono,monospace}.resultant-label-badge .badge-accel{font-size:.7rem;color:#94a3b8;border-left:1px solid rgba(245,158,11,.3);padding-left:.35rem;font-family:Roboto Mono,monospace}.arena-live-hud{position:absolute;bottom:2rem;right:20rem;z-index:50;display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.25rem;background:#0f172ae0;border:1px solid rgba(255,255,255,.15);border-radius:1rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 32px #00000080;min-width:190px;-webkit-user-select:none;user-select:none;pointer-events:none}@media(max-width:1100px){.arena-live-hud{right:1rem;bottom:5.5rem}}.hud-metric{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.hud-metric-label{font-size:.95rem;font-weight:700;color:#94a3b8;font-family:Roboto Mono,monospace}.hud-metric-value{font-size:1.05rem;font-weight:700;color:#f8fafc;font-family:Roboto Mono,monospace}.hud-metric-value.gold{color:#fbbf24}.presets-section{padding-bottom:.75rem}.test-preset-buttons{display:flex;flex-direction:column;gap:.35rem}.preset-btn{padding:.45rem .6rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:.5rem;color:#e2e8f0;font-size:.75rem;cursor:pointer;text-align:left;transition:all .2s}.preset-btn:hover{background:#e74c3c33;border-color:#e74c3c80;color:#fff}.direction-toggle-group{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem}.direction-toggle-group label{font-size:.75rem;color:var(--text-secondary)}.dir-btns{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.dir-btn{padding:.35rem .5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:.375rem;color:var(--text-secondary);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s ease}.dir-btn:hover{color:#fff;background:#ffffff1a}.dir-btn.active.red{background:#ef444440;border-color:#ef4444;color:#fca5a5}.dir-btn.active.green{background:#10b98140;border-color:#10b981;color:#6ee7b7}.physics-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:280px;max-height:calc(100dvh - 7rem);overflow-y:auto;background:var(--simulation-surface);border:1px solid var(--border-color);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.physics-info-panel::-webkit-scrollbar{width:4px}.physics-info-panel::-webkit-scrollbar-thumb{background:#9b59b680;border-radius:2px}.physics-info-panel::-webkit-scrollbar-track{background:#0003}.physics-info-panel.vlab-inquiry{width:420px;max-width:calc(100vw - 320px)}.vlab-top-wrapper{position:absolute;top:.8rem;left:50%;transform:translate(-50%);z-index:110;display:flex;flex-direction:column;align-items:center;gap:6px;width:calc(100% - 140px);max-width:920px}.vlab-real-world-list{display:flex;flex-direction:column;gap:12px}.vlab-rw-card{background:#0f172ab3;border:1px solid rgba(56,189,248,.25);border-radius:10px;padding:14px}.vlab-rw-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.vlab-rw-icon{font-size:1.4rem}.vlab-rw-title{font-size:.95rem;font-weight:700;color:#f8fafc;margin:0}.vlab-rw-desc{font-size:.85rem;color:#cbd5e1;margin:0 0 8px;line-height:1.4}.vlab-rw-example{font-size:.78rem;color:#38bdf8;background:#38bdf81a;padding:6px 10px;border-radius:6px;margin:0}.physics-info-panel h2{display:flex;align-items:center;gap:.5rem;font-size:1rem;color:var(--text-primary);margin:0 0 .5rem}.physics-info-panel h2 svg{color:#e74c3c}.newton-formula{font-size:1.5rem;font-weight:700;font-family:Roboto Mono,monospace;color:#e74c3c;text-align:center;padding:.75rem;background:#e74c3c1a;border-radius:.5rem;margin-bottom:1rem}.physics-stats{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.stat-row.highlight{background:#ff9a441a;border:1px solid rgba(255,154,68,.3)}.stat-value.f1{color:#e74c3c}.stat-value.f2{color:#27ae60}.stat-value.resultant{color:#ff9a44}.stat-value.accel{color:#3498db}.calculation-box{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:#e74c3c1a;border:1px solid rgba(231,76,60,.2);border-radius:.5rem}.calc-line{font-size:.7rem;color:var(--text-secondary);font-family:Roboto Mono,monospace}.calc-result{font-size:.875rem;font-weight:600;color:#3498db;font-family:Roboto Mono,monospace}.newton-formula.circular{background:#9b59b626;color:#9b59b6}.newton-formula.circular sub{font-size:.8em}.measurement-panel{margin-bottom:.75rem;padding:.625rem;background:#9b59b614;border:1px solid rgba(155,89,182,.2);border-radius:.5rem}.measurement-panel h3{font-size:.8rem;color:#9b59b6;margin:0 0 .5rem}.stat-row.timer{background:#9b59b626;border:1px solid rgba(155,89,182,.3)}.formula-derivation{margin-top:.75rem;padding:.625rem;background:#2ecc7114;border:1px solid rgba(46,204,113,.2);border-radius:.5rem}.formula-derivation h4{font-size:.8rem;color:#2ecc71;margin:0 0 .5rem}.formula-step{display:flex;flex-direction:column;gap:.125rem;padding:.375rem .5rem;margin-bottom:.375rem;background:var(--bg-surface-hover);border-radius:.375rem;border-left:2px solid rgba(46,204,113,.4)}.formula-step.final{background:#2ecc711a;border-left-color:#2ecc71}.step-label{font-size:.65rem;font-weight:600;color:#2ecc71}.step-formula{font-size:.75rem;font-family:Roboto Mono,monospace;color:var(--text-primary)}.step-formula sub{font-size:.7em}.step-value{font-size:.65rem;font-family:Roboto Mono,monospace;color:var(--text-secondary)}.step-result{font-size:.75rem;font-weight:600;font-family:Roboto Mono,monospace;color:#3498db}.verification-table{margin-top:.75rem;padding:.625rem;background:#3498db14;border:1px solid rgba(52,152,219,.2);border-radius:.5rem}.verification-table h4{font-size:.8rem;color:#3498db;margin:0 0 .5rem}.verification-table table{width:100%;border-collapse:collapse;font-size:.7rem}.verification-table th,.verification-table td{padding:.375rem .5rem;text-align:center;border-bottom:1px solid rgba(52,152,219,.2)}.verification-table th{color:var(--text-secondary);font-weight:600;background:#3498db1a}.verification-table td{color:var(--text-primary);font-family:Roboto Mono,monospace}.verification-table td:first-child{color:var(--text-secondary);text-align:left}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:280px;max-height:calc(100dvh - 7rem);overflow-y:auto;background:var(--glass-bg);border:1px solid rgba(231,76,60,.3);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-panel-3d::-webkit-scrollbar-thumb{background:#e74c3c80;border-radius:2px}.panel-section{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid rgba(231,76,60,.2)}.panel-section h3.force1{color:#e74c3c}.panel-section h3.force2{color:#27ae60}.slider-group input[type=range]{width:100%;height:6px;background:#e74c3c33;border-radius:3px;outline:none;cursor:pointer;-webkit-appearance:none}.slider-group input.slider-red::-webkit-slider-thumb{background:var(--bg-primary);transition:background .3s}.slider-group input.slider-green{background:#27ae6033}.slider-group input.slider-green::-webkit-slider-thumb{background:var(--bg-primary);transition:background .3s}.toggle-group input[type=checkbox]{width:1rem;height:1rem;accent-color:#E74C3C;cursor:pointer}.motion-mode-btns{display:flex;gap:.5rem;margin-bottom:.75rem}.motion-mode-btns button{flex:1;padding:.5rem .75rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.3);border-radius:.5rem;color:#a0a0a0;font-size:.75rem;cursor:pointer;transition:all .2s ease}.motion-mode-btns button:hover{background:#9b59b633;color:var(--text-primary)}.motion-mode-btns button.active{background:var(--bg-primary);transition:background .3s;border-color:#9b59b6;color:var(--text-primary)}.orbit-section{background:#9b59b614;border-radius:.5rem;padding:.75rem!important;margin:0 -.5rem;margin-bottom:1rem!important}.orbit-section h3{color:#9b59b6!important}.centripetal-info{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#9b59b626;border:1px solid rgba(155,89,182,.3);border-radius:.5rem;margin-top:.5rem}.centripetal-info .label{font-size:.75rem;color:var(--text-secondary)}.centripetal-info .value{font-size:.9rem;font-weight:700;font-family:Roboto Mono,monospace;color:#9b59b6}.centripetal-label{padding:.25rem .5rem;background:#e74c3ce6;border-radius:.25rem;font-size:.7rem;font-weight:700;color:var(--text-primary)}.challenge-header h3{margin:0;color:#e74c3c}.score-display{font-size:.875rem;font-weight:700;color:#e74c3c;background:#e74c3c26;padding:.375rem .75rem;border-radius:1rem}.challenge-option{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#e74c3c1a;border:1px solid rgba(231,76,60,.2);border-radius:.5rem;color:var(--text-primary);font-size:.8rem;cursor:pointer;transition:all .2s ease;text-align:left}.challenge-option:hover:not(:disabled){background:#e74c3c33;border-color:#e74c3c66}.challenge-complete button{padding:.5rem 1.5rem;background:#e74c3c4d;border:1px solid #E74C3C;border-radius:.5rem;color:var(--text-primary);cursor:pointer}.learn-card{padding:.75rem;background:#e74c3c1a;border:1px solid rgba(231,76,60,.2);border-radius:.5rem}.learn-card h4{font-size:.8rem;color:#e74c3c;margin:0 0 .5rem}.tip-section{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:#e74c3c1a;border:1px solid rgba(231,76,60,.2);border-radius:.5rem}.tip-section svg{color:#e74c3c;flex-shrink:0;margin-top:2px}.info-modal-3d{width:100%;max-width:550px;max-height:85vh;overflow-y:auto;background:var(--bg-primary);transition:background .3s;border:1px solid rgba(231,76,60,.4);border-radius:1.5rem}.info-modal-3d .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(231,76,60,.2);position:sticky;top:0;background:inherit}.info-modal-3d .modal-header h2 svg{color:#e74c3c}.info-modal-3d li strong{color:#e74c3c}@media(max-width:1024px){.physics-info-panel{display:none}}@media(max-width:480px){.mode-tabs button{padding:.375rem .5rem;font-size:.65rem}}.wave-3d-simulation{position:relative;width:100%;height:100dvh;background:var(--bg-primary);transition:background .3s;overflow:hidden}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:var(--glass-bg);border:1px solid rgba(52,152,219,.5);border-radius:.75rem;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-btn-3d:hover{border-color:#3498db;color:var(--text-primary);transform:scale(1.05)}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:var(--glass-bg);border:1px solid rgba(52,152,219,.3);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-3d h1{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:700;color:var(--text-primary);margin:0}.header-3d h1 svg{color:#3498db}.mode-tabs{display:flex;gap:.25rem;background:#0000004d;padding:.25rem;border-radius:.5rem}.mode-tabs button{padding:.5rem .75rem;background:transparent;border:none;border-radius:.375rem;color:var(--text-secondary);font-size:.75rem;cursor:pointer;transition:all .2s}.mode-tabs button:hover{color:var(--text-primary)}.mode-tabs button.active{background:var(--bg-primary);transition:background .3s;color:var(--text-primary)}.view-toggle{display:flex;gap:.25rem;background:#0000004d;padding:.25rem;border-radius:.5rem}.view-toggle button{padding:.5rem .625rem;background:transparent;border:none;border-radius:.375rem;color:var(--text-secondary);font-size:.7rem;cursor:pointer;transition:all .2s}.view-toggle button.active{background:#3498db4d;color:#3498db}.header-actions{display:flex;gap:.5rem}.action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#3498db33;border:1px solid rgba(52,152,219,.4);border-radius:.5rem;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.action-btn:hover,.action-btn.active{background:#3498db66;color:var(--text-primary)}.canvas-container{position:absolute;z-index:0;inset:0}.measurement-label{padding:.25rem .5rem;background:var(--glass-bg);border-radius:.25rem;font-size:.75rem;font-weight:600;font-family:Roboto Mono,monospace;white-space:nowrap}.measurement-label.amplitude{color:#e74c3c;border:1px solid rgba(231,76,60,.5)}.measurement-label.wavelength{color:#9b59b6;border:1px solid rgba(155,89,182,.5)}.direction-label{padding:.25rem .5rem;background:#f39c1233;border:1px solid rgba(243,156,18,.5);border-radius:.25rem;font-size:.7rem;color:#f39c12}.wave-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:280px;max-height:calc(100dvh - 7rem);overflow-y:auto;background:var(--glass-bg);border:1px solid rgba(52,152,219,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.wave-info-panel::-webkit-scrollbar{width:4px}.wave-info-panel::-webkit-scrollbar-thumb{background:#3498db80;border-radius:2px}.wave-info-panel::-webkit-scrollbar-track{background:#0003}.wave-info-panel h2{display:flex;align-items:center;gap:.5rem;font-size:1rem;color:var(--text-primary);margin:0 0 1rem}.wave-info-panel h2 svg{color:#3498db}.wave-stats{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:.375rem .5rem;background:#ffffff0d;border-radius:.375rem}.stat-row.highlight{background:#3498db1a;border:1px solid rgba(52,152,219,.3)}.stat-label{font-size:.75rem;color:var(--text-secondary)}.stat-value{font-size:.8rem;font-weight:600;font-family:Roboto Mono,monospace;color:var(--text-primary)}.stat-value.amplitude{color:#e74c3c}.stat-value.wavelength{color:#9b59b6}.stat-value.frequency{color:#f39c12}.stat-value.velocity{color:#3498db}.formula-box{padding:.75rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.5rem;margin-bottom:1rem}.formula-row{display:flex;flex-direction:column;margin-bottom:.5rem}.formula-row:last-child{margin-bottom:0}.formula-row .formula{font-size:.8rem;font-weight:600;color:#3498db;font-family:Roboto Mono,monospace}.formula-row .result{font-size:.7rem;color:var(--text-secondary);font-family:Roboto Mono,monospace}.wave-info-panel .formula-derivation{margin-top:.75rem;margin-bottom:.75rem;padding:.625rem;background:#2ecc7114;border:1px solid rgba(46,204,113,.2);border-radius:.5rem}.wave-info-panel .formula-derivation h4{font-size:.8rem;color:#2ecc71;margin:0 0 .5rem}.wave-info-panel .formula-step{display:flex;flex-direction:column;gap:.125rem;padding:.375rem .5rem;margin-bottom:.375rem;background:var(--bg-surface-hover);border-radius:.375rem;border-left:2px solid rgba(46,204,113,.4)}.wave-info-panel .formula-step.final{background:#2ecc711a;border-left-color:#2ecc71}.wave-info-panel .step-label{font-size:.65rem;font-weight:600;color:#2ecc71}.wave-info-panel .step-formula{font-size:.75rem;font-family:Roboto Mono,monospace;color:var(--text-primary)}.wave-info-panel .step-value{font-size:.65rem;font-family:Roboto Mono,monospace;color:var(--text-secondary)}.wave-info-panel .step-result{font-size:.75rem;font-weight:600;font-family:Roboto Mono,monospace;color:#3498db}.energy-info{margin-bottom:.75rem;padding:.625rem;background:#f39c1214;border:1px solid rgba(243,156,18,.2);border-radius:.5rem}.energy-info h4{font-size:.8rem;color:#f39c12;margin:0 0 .5rem}.energy-info .info-text{font-size:.65rem;color:var(--text-secondary);margin:.375rem 0 0;font-style:italic}.wave-type-badge{padding:.625rem;border-radius:.5rem;font-size:.875rem;font-weight:600;text-align:center}.wave-type-badge.transverse{background:#3498db26;border:1px solid rgba(52,152,219,.4);color:#3498db}.wave-type-badge.longitudinal{background:#27ae6026;border:1px solid rgba(39,174,96,.4);color:#27ae60}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:280px;max-height:calc(100dvh - 7rem);overflow-y:auto;background:var(--glass-bg);border:1px solid rgba(52,152,219,.3);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-panel-3d::-webkit-scrollbar-thumb{background:#3498db80;border-radius:2px}.panel-section{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid rgba(52,152,219,.2)}.panel-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.panel-section h3{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.wave-type-selector{display:flex;gap:.5rem}.wave-type-selector button{flex:1;padding:.625rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.5rem;color:var(--text-secondary);font-size:.75rem;cursor:pointer;transition:all .2s}.wave-type-selector button:hover{background:#3498db33}.wave-type-selector button.active{background:#3498db4d;border-color:#3498db;color:#3498db}.slider-group{margin-bottom:.75rem}.slider-group label{display:block;font-size:.75rem;color:var(--text-secondary);margin-bottom:.375rem}.slider-group input[type=range]{width:100%;height:6px;background:#3498db33;border-radius:3px;outline:none;cursor:pointer;-webkit-appearance:none}.slider-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;background:var(--bg-primary);transition:background .3s;border-radius:50%;cursor:pointer;transition:transform .2s}.slider-group input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2)}.slider-group input.slider-blue::-webkit-slider-thumb{background:var(--bg-primary);transition:background .3s}.slider-group input.slider-purple{background:#9b59b633}.slider-group input.slider-purple::-webkit-slider-thumb{background:var(--bg-primary);transition:background .3s}.slider-group input.slider-orange{background:#f39c1233}.slider-group input.slider-orange::-webkit-slider-thumb{background:var(--bg-primary);transition:background .3s}.toggle-group{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;cursor:pointer}.toggle-group input[type=checkbox]{width:1rem;height:1rem;accent-color:#3498DB;cursor:pointer}.toggle-group span{font-size:.8rem;color:var(--text-primary)}.challenge-panel{padding:0}.challenge-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.challenge-header h3{margin:0;color:#3498db}.score-display{font-size:.875rem;font-weight:700;color:#3498db;background:#3498db26;padding:.375rem .75rem;border-radius:1rem}.challenge-question{font-size:.875rem;color:var(--text-primary);line-height:1.5;margin:0 0 1rem}.challenge-options{display:flex;flex-direction:column;gap:.5rem}.challenge-option{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.5rem;color:var(--text-primary);font-size:.8rem;cursor:pointer;transition:all .2s ease;text-align:left}.challenge-option:hover:not(:disabled){background:#3498db33;border-color:#3498db66}.challenge-option.correct{background:#2ecc7133;border-color:#2ecc71;color:#2ecc71}.challenge-option.incorrect{background:#e74c3c33;border-color:#e74c3c;color:#e74c3c}.challenge-feedback{margin-top:1rem;text-align:center}.correct-text{color:#2ecc71;font-weight:600}.incorrect-text{color:#e74c3c;font-weight:600}.next-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.625rem 1.25rem;background:var(--bg-primary);transition:background .3s;border:none;border-radius:.5rem;color:var(--text-primary);font-size:.875rem;font-weight:600;cursor:pointer}.challenge-complete{padding:1rem 0;text-align:center}.challenge-complete svg{color:#f39c12;margin-bottom:.5rem}.challenge-complete p{font-size:1.125rem;color:var(--text-primary);margin:0 0 1rem}.challenge-complete button{padding:.5rem 1.5rem;background:#3498db4d;border:1px solid #3498DB;border-radius:.5rem;color:var(--text-primary);cursor:pointer}.learn-panel h3{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;color:var(--text-primary)}.learn-content{display:flex;flex-direction:column;gap:.75rem}.learn-card{padding:.75rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.5rem}.learn-card h4{font-size:.8rem;color:#3498db;margin:0 0 .5rem}.learn-card p{font-size:.75rem;color:var(--text-secondary);line-height:1.5;margin:0}.learn-card ul{margin:0;padding-left:1rem}.learn-card li{font-size:.7rem;color:var(--text-secondary);font-family:Roboto Mono,monospace;margin-bottom:.25rem}.tip-section{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.5rem}.tip-section svg{color:#3498db;flex-shrink:0;margin-top:2px}.tip-section p{margin:0;font-size:.7rem;color:var(--text-secondary);line-height:1.4}.info-overlay-3d{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.info-modal-3d{width:100%;max-width:550px;max-height:85vh;overflow-y:auto;background:var(--bg-primary);transition:background .3s;border:1px solid rgba(52,152,219,.4);border-radius:1.5rem}.info-modal-3d .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(52,152,219,.2);position:sticky;top:0;background:inherit}.info-modal-3d .modal-header h2{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;color:var(--text-primary);margin:0}.info-modal-3d .modal-header h2 svg{color:#3498db}.info-modal-3d .modal-header button{background:none;border:none;color:var(--text-secondary);cursor:pointer}.info-modal-3d .modal-content{padding:1.5rem}.info-modal-3d section{margin-bottom:1.5rem}.info-modal-3d section:last-child{margin-bottom:0}.info-modal-3d h3{font-size:1rem;color:var(--text-primary);margin:0 0 .75rem}.info-modal-3d p{font-size:.875rem;color:var(--text-secondary);line-height:1.6;margin:0}.info-modal-3d ul{margin:0;padding-left:1.25rem}.info-modal-3d li{font-size:.875rem;color:var(--text-secondary);line-height:1.6;margin-bottom:.5rem}.info-modal-3d li strong{color:#3498db}@media(max-width:1024px){.wave-info-panel{display:none}}@media(max-width:768px){.header-3d{flex-wrap:wrap;justify-content:center}.header-3d h1{font-size:.875rem}.control-panel-3d{position:fixed;inset:auto 0 0;width:100%;max-height:50vh;border-radius:1rem 1rem 0 0}}@media(max-width:480px){.mode-tabs button{padding:.375rem .5rem;font-size:.65rem}.view-toggle{display:none}}.motion-track-3d-simulation{position:fixed;inset:0;background:var(--bg-primary);transition:background .3s;display:grid;grid-template-columns:280px 1fr 320px;grid-template-rows:60px 1fr;overflow:hidden}.motion-track-3d-simulation .back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.motion-track-3d-simulation .back-btn-3d:hover{background:#fff3;transform:translate(-3px)}.motion-track-3d-simulation .header-3d{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem 0 4rem;background:#0f172acc;border-bottom:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.motion-track-3d-simulation .header-3d h1{font-size:1.25rem;font-weight:600;color:#fff;display:flex;align-items:center;gap:.5rem}.motion-track-3d-simulation .mode-tabs{display:flex;gap:.5rem}.motion-track-3d-simulation .mode-tabs button{padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#94a3b8;font-size:.875rem;cursor:pointer;transition:all .3s ease}.motion-track-3d-simulation .mode-tabs button.active{background:var(--bg-primary);transition:background .3s;color:#fff;border-color:transparent}.motion-track-3d-simulation .header-actions{display:flex;gap:.5rem}.motion-track-3d-simulation .action-btn{width:36px;height:36px;border-radius:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#94a3b8;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.motion-track-3d-simulation .action-btn:hover,.motion-track-3d-simulation .action-btn.active{background:var(--bg-primary);transition:background .3s;color:#fff;border-color:transparent}.motion-track-3d-simulation .canvas-container{grid-column:2;grid-row:2;position:relative;background:linear-gradient(180deg,#1e3a5f,#0f172a);height:100%;overflow:hidden}.motion-track-3d-simulation .canvas-container canvas{width:100%!important;height:100%!important;display:block}.motion-track-3d-simulation .physics-info-panel{grid-column:1;grid-row:2;background:var(--glass-bg);border-right:1px solid rgba(255,255,255,.1);padding:1.25rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.motion-track-3d-simulation .physics-info-panel h2{font-size:1rem;color:#fff;display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.motion-track-3d-simulation .motion-formula{background:var(--bg-primary);transition:background .3s;padding:1rem;border-radius:12px;text-align:center;font-size:1.5rem;font-family:Courier New,monospace;color:#fff;font-weight:700}.motion-track-3d-simulation .physics-stats{display:flex;flex-direction:column;gap:.5rem}.motion-track-3d-simulation .stat-row{display:flex;justify-content:space-between;padding:.5rem .75rem;background:var(--bg-surface-hover);border-radius:8px}.motion-track-3d-simulation .stat-label{color:#94a3b8;font-size:.85rem}.motion-track-3d-simulation .stat-value{font-weight:600;color:#fff}.motion-track-3d-simulation .stat-value.position{color:#3b82f6}.motion-track-3d-simulation .stat-value.velocity{color:#10b981}.motion-track-3d-simulation .stat-value.accel{color:#f59e0b}.motion-track-3d-simulation .formula-derivation{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:12px;padding:1rem}.motion-track-3d-simulation .formula-derivation h4{color:#fff;font-size:.9rem;margin-bottom:.75rem}.motion-track-3d-simulation .formula-step{display:flex;flex-direction:column;gap:.25rem;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.motion-track-3d-simulation .formula-step:last-child{border-bottom:none}.motion-track-3d-simulation .step-label{font-size:.75rem;color:#64748b}.motion-track-3d-simulation .step-formula{font-family:Courier New,monospace;color:#93c5fd;font-size:.85rem}.motion-track-3d-simulation .step-value{font-size:.75rem;color:#94a3b8}.motion-track-3d-simulation .step-result{font-size:.9rem;color:#10b981;font-weight:600}.motion-track-3d-simulation .control-panel-3d{grid-column:3;grid-row:2;background:var(--glass-bg);border-left:1px solid rgba(255,255,255,.1);padding:1.25rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.motion-track-3d-simulation .panel-section{background:var(--bg-surface-hover);border-radius:12px;padding:1rem}.motion-track-3d-simulation .panel-section h3{color:#fff;font-size:.9rem;margin-bottom:.75rem}.motion-track-3d-simulation .motion-type-btns{display:flex;gap:.5rem}.motion-track-3d-simulation .motion-type-btns button{flex:1;padding:.75rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#94a3b8;font-size:.8rem;cursor:pointer;transition:all .3s ease}.motion-track-3d-simulation .motion-type-btns button.active{background:var(--bg-primary);transition:background .3s;color:#fff;border-color:transparent}.motion-track-3d-simulation .slider-group{margin-bottom:1rem}.motion-track-3d-simulation .slider-group label{display:block;color:#94a3b8;font-size:.8rem;margin-bottom:.5rem}.motion-track-3d-simulation .slider-group input[type=range]{width:100%;height:6px;border-radius:3px;background:#ffffff1a;appearance:none}.motion-track-3d-simulation .slider-group input[type=range]::-webkit-slider-thumb{appearance:none;width:16px;height:16px;border-radius:50%;background:var(--bg-primary);transition:background .3s;cursor:pointer}.motion-track-3d-simulation .play-btn,.motion-track-3d-simulation .reset-btn{width:100%;padding:.75rem;border-radius:8px;border:none;display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;font-weight:500;transition:all .3s ease;margin-bottom:.5rem}.motion-track-3d-simulation .play-btn{background:var(--bg-primary);transition:background .3s;color:#fff}.motion-track-3d-simulation .reset-btn{background:#ffffff1a;color:#94a3b8}.distance-marker{background:#ef4444e6;color:#fff;padding:2px 6px;border-radius:4px;font-size:10px;font-weight:700}.velocity-label{background:var(--bg-primary);transition:background .3s;color:#fff;padding:4px 8px;border-radius:6px;font-size:11px;font-weight:700;white-space:nowrap}.motion-info-3d{background:var(--glass-bg);padding:8px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.2)}.motion-info-3d .info-row{font-size:11px;color:#fff;padding:2px 0}.graph-label{color:#fff;font-size:10px;background:#0f172acc;padding:2px 6px;border-radius:4px}.motion-track-3d-simulation .challenge-panel{display:flex;flex-direction:column;gap:1rem}.motion-track-3d-simulation .challenge-header{display:flex;justify-content:space-between;align-items:center}.motion-track-3d-simulation .challenge-header h3{color:#fff;margin:0}.motion-track-3d-simulation .score-display{background:var(--bg-primary);transition:background .3s;color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600}.motion-track-3d-simulation .challenge-question{color:#fff;font-size:1rem;line-height:1.5}.motion-track-3d-simulation .challenge-options{display:flex;flex-direction:column;gap:.5rem}.motion-track-3d-simulation .challenge-option{padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#e2e8f0;text-align:left;cursor:pointer;transition:all .3s ease;display:flex;justify-content:space-between;align-items:center}.motion-track-3d-simulation .challenge-option:hover:not(:disabled){background:#ffffff1a;border-color:#3b82f680}.motion-track-3d-simulation .challenge-option.correct{background:#10b98133;border-color:#10b981;color:#10b981}.motion-track-3d-simulation .challenge-option.incorrect{background:#ef444433;border-color:#ef4444;color:#ef4444}.motion-track-3d-simulation .challenge-feedback{text-align:center;padding:1rem;background:var(--bg-surface-hover);border-radius:12px}.motion-track-3d-simulation .correct-text{color:#10b981;font-weight:600}.motion-track-3d-simulation .incorrect-text{color:#ef4444}.motion-track-3d-simulation .next-btn{margin-top:.75rem;padding:.5rem 1.5rem;background:var(--bg-primary);transition:background .3s;border:none;border-radius:8px;color:#fff;cursor:pointer}.motion-track-3d-simulation .challenge-complete{display:flex;flex-direction:column;align-items:center;gap:.75rem;color:#f59e0b}.motion-track-3d-simulation .learn-panel h3{color:#fff;display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.motion-track-3d-simulation .learn-content{display:flex;flex-direction:column;gap:.75rem}.motion-track-3d-simulation .learn-card{padding:1rem;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.motion-track-3d-simulation .learn-card.glb{background:linear-gradient(135deg,#3b82f626,#3b82f60d);border-color:#3b82f64d}.motion-track-3d-simulation .learn-card.glbb{background:linear-gradient(135deg,#10b98126,#10b9810d);border-color:#10b9814d}.motion-track-3d-simulation .learn-card.graph{background:linear-gradient(135deg,#f59e0b26,#f59e0b0d);border-color:#f59e0b4d}.motion-track-3d-simulation .learn-card h4{color:#fff;font-size:.9rem;margin-bottom:.5rem}.motion-track-3d-simulation .learn-card p{color:#94a3b8;font-size:.8rem;margin-bottom:.5rem}.motion-track-3d-simulation .learn-card .formula{display:block;font-family:Courier New,monospace;color:#93c5fd;font-size:.85rem;margin-top:.25rem}.motion-track-3d-simulation .learn-card ul{color:#94a3b8;font-size:.8rem;padding-left:1rem;margin:0}.motion-track-3d-simulation .tip-section{display:flex;gap:.75rem;align-items:flex-start;background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d);border:1px solid rgba(245,158,11,.3);border-radius:12px;padding:1rem}.motion-track-3d-simulation .tip-section svg{color:#f59e0b;flex-shrink:0}.motion-track-3d-simulation .tip-section p{color:#94a3b8;font-size:.8rem;margin:0;line-height:1.5}.motion-track-3d-simulation .info-overlay-3d{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:200;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.motion-track-3d-simulation .info-modal-3d{background:var(--bg-primary);transition:background .3s;border:1px solid rgba(255,255,255,.1);border-radius:20px;width:90%;max-width:500px;max-height:80vh;overflow-y:auto}.motion-track-3d-simulation .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.1)}.motion-track-3d-simulation .modal-header h2{color:#fff;font-size:1.1rem;display:flex;align-items:center;gap:.5rem}.motion-track-3d-simulation .modal-header button{background:#ffffff1a;border:none;color:#94a3b8;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer}.motion-track-3d-simulation .modal-content{padding:1.25rem}.motion-track-3d-simulation .modal-content section{margin-bottom:1.5rem}.motion-track-3d-simulation .modal-content h3{color:#fff;font-size:.95rem;margin-bottom:.75rem}.motion-track-3d-simulation .modal-content p{color:#94a3b8;font-size:.85rem;line-height:1.6}.motion-track-3d-simulation .modal-content ul{color:#94a3b8;font-size:.85rem;padding-left:1.25rem}.motion-track-3d-simulation .modal-content li{margin-bottom:.5rem}.motion-track-3d-simulation .formula-box{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:12px;padding:1rem}.motion-track-3d-simulation .formula-box p{font-family:Courier New,monospace;color:#93c5fd;margin:.25rem 0}.energy-conservation-3d-simulation{position:fixed;inset:0;background:var(--bg-primary);transition:background .3s;display:grid;grid-template-columns:280px 1fr 320px;grid-template-rows:60px 1fr;overflow:hidden}.energy-conservation-3d-simulation .back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.energy-conservation-3d-simulation .back-btn-3d:hover{background:#fff3;transform:translate(-3px)}.energy-conservation-3d-simulation .header-3d{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem 0 4rem;background:#0f172acc;border-bottom:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.energy-conservation-3d-simulation .header-3d h1{font-size:1.25rem;font-weight:600;color:#fff;display:flex;align-items:center;gap:.5rem}.energy-conservation-3d-simulation .mode-tabs{display:flex;gap:.5rem}.energy-conservation-3d-simulation .mode-tabs button{padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#94a3b8;font-size:.875rem;cursor:pointer;transition:all .3s ease}.energy-conservation-3d-simulation .mode-tabs button.active{background:var(--bg-primary);transition:background .3s;color:#fff;border-color:transparent}.energy-conservation-3d-simulation .header-actions{display:flex;gap:.5rem}.energy-conservation-3d-simulation .action-btn{width:36px;height:36px;border-radius:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#94a3b8;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.energy-conservation-3d-simulation .action-btn:hover,.energy-conservation-3d-simulation .action-btn.active{background:var(--bg-primary);transition:background .3s;color:#fff;border-color:transparent}.energy-conservation-3d-simulation .canvas-container{grid-column:2;grid-row:2;position:relative;background:linear-gradient(180deg,#1e3a5f,#0f172a);height:100%;overflow:hidden}.energy-conservation-3d-simulation .canvas-container canvas{width:100%!important;height:100%!important;display:block}.energy-conservation-3d-simulation .physics-info-panel{grid-column:1;grid-row:2;background:var(--glass-bg);border-right:1px solid rgba(255,255,255,.1);padding:1.25rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.energy-conservation-3d-simulation .physics-info-panel h2{font-size:1rem;color:#fff;display:flex;align-items:center;gap:.5rem}.energy-conservation-3d-simulation .energy-formula{background:var(--bg-primary);transition:background .3s;padding:1rem;border-radius:12px;text-align:center;font-size:1.25rem;font-family:Courier New,monospace;color:#fff;font-weight:700}.energy-conservation-3d-simulation .energy-stats{display:flex;flex-direction:column;gap:.5rem}.energy-conservation-3d-simulation .stat-row{display:flex;justify-content:space-between;padding:.5rem .75rem;background:var(--bg-surface-hover);border-radius:8px}.energy-conservation-3d-simulation .stat-row.kinetic{border-left:3px solid #10b981}.energy-conservation-3d-simulation .stat-row.potential{border-left:3px solid #3b82f6}.energy-conservation-3d-simulation .stat-row.total{background:#8b5cf61a;border:1px solid rgba(139,92,246,.3)}.energy-conservation-3d-simulation .stat-label{color:#94a3b8;font-size:.85rem}.energy-conservation-3d-simulation .stat-value{font-weight:600;color:#fff}.energy-conservation-3d-simulation .stat-value.velocity{color:#f59e0b}.energy-conservation-3d-simulation .energy-bar-container{background:#ffffff0d;border-radius:12px;padding:1rem}.energy-conservation-3d-simulation .energy-bar{height:24px;background:#0000004d;border-radius:12px;display:flex;overflow:hidden}.energy-conservation-3d-simulation .ek-fill{background:linear-gradient(90deg,#10b981,#34d399);height:100%;transition:width .1s ease}.energy-conservation-3d-simulation .ep-fill{background:linear-gradient(90deg,#3b82f6,#60a5fa);height:100%;transition:width .1s ease}.energy-conservation-3d-simulation .bar-legend{display:flex;justify-content:space-around;margin-top:.5rem}.energy-conservation-3d-simulation .ek-legend{color:#10b981;font-size:.8rem;font-weight:600}.energy-conservation-3d-simulation .ep-legend{color:#3b82f6;font-size:.8rem;font-weight:600}.energy-conservation-3d-simulation .formula-derivation{background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:12px;padding:1rem}.energy-conservation-3d-simulation .formula-derivation h4{color:#fff;font-size:.9rem;margin-bottom:.75rem}.energy-conservation-3d-simulation .formula-step{display:flex;flex-direction:column;gap:.25rem;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.energy-conservation-3d-simulation .formula-step:last-child{border-bottom:none}.energy-conservation-3d-simulation .step-label{font-size:.75rem;color:#64748b}.energy-conservation-3d-simulation .step-formula{font-family:Courier New,monospace;color:#86efac;font-size:.85rem}.energy-conservation-3d-simulation .step-value{font-size:.75rem;color:#94a3b8}.energy-conservation-3d-simulation .step-result{font-size:.9rem;color:#fbbf24;font-weight:600}.energy-conservation-3d-simulation .control-panel-3d{grid-column:3;grid-row:2;background:var(--glass-bg);border-left:1px solid rgba(255,255,255,.1);padding:1.25rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.energy-conservation-3d-simulation .panel-section{background:var(--bg-surface-hover);border-radius:12px;padding:1rem}.energy-conservation-3d-simulation .panel-section h3{color:#fff;font-size:.9rem;margin-bottom:.75rem}.energy-conservation-3d-simulation .scenario-btns{display:flex;flex-direction:column;gap:.5rem}.energy-conservation-3d-simulation .scenario-btns button{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#94a3b8;cursor:pointer;transition:all .3s ease}.energy-conservation-3d-simulation .scenario-btns button .icon{font-size:1.25rem}.energy-conservation-3d-simulation .scenario-btns button .name{font-size:.9rem}.energy-conservation-3d-simulation .scenario-btns button.active{background:var(--bg-primary);transition:background .3s;color:#fff;border-color:transparent}.energy-conservation-3d-simulation .slider-group{margin-bottom:1rem}.energy-conservation-3d-simulation .slider-group label{display:block;color:#94a3b8;font-size:.8rem;margin-bottom:.5rem}.energy-conservation-3d-simulation .slider-group input[type=range]{width:100%;height:6px;border-radius:3px;background:#ffffff1a;appearance:none}.energy-conservation-3d-simulation .slider-group input[type=range]::-webkit-slider-thumb{appearance:none;width:16px;height:16px;border-radius:50%;background:var(--bg-primary);transition:background .3s;cursor:pointer}.energy-conservation-3d-simulation .play-btn,.energy-conservation-3d-simulation .reset-btn{width:100%;padding:.75rem;border-radius:8px;border:none;display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;font-weight:500;transition:all .3s ease;margin-bottom:.5rem}.energy-conservation-3d-simulation .play-btn{background:var(--bg-primary);transition:background .3s;color:#fff}.energy-conservation-3d-simulation .reset-btn{background:#ffffff1a;color:#94a3b8}.energy-indicator{display:flex;gap:4px;background:var(--glass-bg);padding:4px;border-radius:4px}.energy-indicator .ek-bar,.energy-indicator .ep-bar{width:16px;font-size:8px;color:#fff;text-align:center;border-radius:2px;min-height:10px;transition:height .1s ease}.energy-indicator .ek-bar{background:#10b981}.energy-indicator .ep-bar{background:#3b82f6}.cart-info{background:var(--glass-bg);padding:4px 8px;border-radius:6px;font-size:11px;color:#fff;border:1px solid rgba(255,255,255,.2)}.spring-info{background:#8b5cf6e6;padding:4px 8px;border-radius:6px;font-size:11px;color:#fff}.bar-label{font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px}.bar-label.ek{background:#10b981;color:#fff}.bar-label.ep{background:#3b82f6;color:#fff}.total-label{font-size:11px;color:#fff;background:var(--glass-bg);padding:4px 8px;border-radius:6px}.energy-conservation-3d-simulation .challenge-panel{display:flex;flex-direction:column;gap:1rem}.energy-conservation-3d-simulation .challenge-header{display:flex;justify-content:space-between;align-items:center}.energy-conservation-3d-simulation .challenge-header h3{color:#fff;margin:0}.energy-conservation-3d-simulation .score-display{background:var(--bg-primary);transition:background .3s;color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600}.energy-conservation-3d-simulation .challenge-question{color:#fff;font-size:1rem;line-height:1.5}.energy-conservation-3d-simulation .challenge-options{display:flex;flex-direction:column;gap:.5rem}.energy-conservation-3d-simulation .challenge-option{padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#e2e8f0;text-align:left;cursor:pointer;transition:all .3s ease;display:flex;justify-content:space-between;align-items:center}.energy-conservation-3d-simulation .challenge-option:hover:not(:disabled){background:#ffffff1a}.energy-conservation-3d-simulation .challenge-option.correct{background:#10b98133;border-color:#10b981;color:#10b981}.energy-conservation-3d-simulation .challenge-option.incorrect{background:#ef444433;border-color:#ef4444;color:#ef4444}.energy-conservation-3d-simulation .challenge-feedback{text-align:center;padding:1rem;background:var(--bg-surface-hover);border-radius:12px}.energy-conservation-3d-simulation .correct-text{color:#10b981;font-weight:600}.energy-conservation-3d-simulation .incorrect-text{color:#ef4444}.energy-conservation-3d-simulation .next-btn{margin-top:.75rem;padding:.5rem 1.5rem;background:var(--bg-primary);transition:background .3s;border:none;border-radius:8px;color:#fff;cursor:pointer}.energy-conservation-3d-simulation .challenge-complete{display:flex;flex-direction:column;align-items:center;gap:.75rem;color:#f59e0b}.energy-conservation-3d-simulation .learn-panel h3{color:#fff;display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.energy-conservation-3d-simulation .learn-content{display:flex;flex-direction:column;gap:.75rem}.energy-conservation-3d-simulation .learn-card{padding:1rem;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.energy-conservation-3d-simulation .learn-card.kinetic{background:linear-gradient(135deg,#10b98126,#10b9810d);border-color:#10b9814d}.energy-conservation-3d-simulation .learn-card.potential{background:linear-gradient(135deg,#3b82f626,#3b82f60d);border-color:#3b82f64d}.energy-conservation-3d-simulation .learn-card.spring{background:linear-gradient(135deg,#f59e0b26,#f59e0b0d);border-color:#f59e0b4d}.energy-conservation-3d-simulation .learn-card.conservation{background:linear-gradient(135deg,#8b5cf626,#8b5cf60d);border-color:#8b5cf64d}.energy-conservation-3d-simulation .learn-card h4{color:#fff;font-size:.9rem;margin-bottom:.5rem}.energy-conservation-3d-simulation .learn-card p{color:#94a3b8;font-size:.8rem;margin-bottom:.5rem}.energy-conservation-3d-simulation .learn-card .formula{display:block;font-family:Courier New,monospace;color:#93c5fd;font-size:.85rem;margin-top:.25rem}.energy-conservation-3d-simulation .tip-section{display:flex;gap:.75rem;align-items:flex-start;background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d);border:1px solid rgba(245,158,11,.3);border-radius:12px;padding:1rem}.energy-conservation-3d-simulation .tip-section svg{color:#f59e0b;flex-shrink:0}.energy-conservation-3d-simulation .tip-section p{color:#94a3b8;font-size:.8rem;margin:0;line-height:1.5}.energy-conservation-3d-simulation .info-overlay-3d{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:200;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.energy-conservation-3d-simulation .info-modal-3d{background:var(--bg-primary);transition:background .3s;border:1px solid rgba(255,255,255,.1);border-radius:20px;width:90%;max-width:500px;max-height:80vh;overflow-y:auto}.energy-conservation-3d-simulation .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.1)}.energy-conservation-3d-simulation .modal-header h2{color:#fff;font-size:1.1rem;display:flex;align-items:center;gap:.5rem}.energy-conservation-3d-simulation .modal-header button{background:#ffffff1a;border:none;color:#94a3b8;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer}.energy-conservation-3d-simulation .modal-content{padding:1.25rem}.energy-conservation-3d-simulation .modal-content section{margin-bottom:1.5rem}.energy-conservation-3d-simulation .modal-content h3{color:#fff;font-size:.95rem;margin-bottom:.75rem}.energy-conservation-3d-simulation .modal-content p{color:#94a3b8;font-size:.85rem;line-height:1.6}.energy-conservation-3d-simulation .modal-content ul{color:#94a3b8;font-size:.85rem;padding-left:1.25rem}.energy-conservation-3d-simulation .modal-content li{margin-bottom:.5rem}[data-theme=dark] [class*="-3d-simulation"]{background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23)!important;color:#fff}[data-theme=light] [class*="-3d-simulation"]{background:radial-gradient(circle at 50% 10%,#f0f9ff,#e0f2fe)!important;color:var(--text-primary)}.charge-field-3d-simulation{position:relative;width:100%;height:100dvh;background:#0a0f1c;overflow:hidden;color:#f8fafc;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-user-select:none;user-select:none}.charge-field-3d-simulation:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(59,130,246,.08) 0%,transparent 70%),radial-gradient(circle at 20% 20%,rgba(231,76,60,.06) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(52,152,219,.06) 0%,transparent 50%);pointer-events:none;z-index:1}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:120;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;background:#0f172abf;border:1px solid rgba(255,255,255,.15);border-radius:.75rem;color:#94a3b8;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.back-btn-3d:hover{border-color:#3b82f6;color:#fff;background:#3b82f633;transform:scale(1.05)}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:120;display:flex;align-items:center;gap:1.25rem;padding:.5rem 1.25rem;background:#0f172ad9;border:1px solid rgba(255,255,255,.12);border-radius:1rem;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 10px 30px #0006}.header-title-box{display:flex;align-items:center;gap:.6rem}.header-title-box h1{font-size:.95rem;font-weight:800;color:#fff;letter-spacing:.02em;margin:0;display:flex;align-items:center;gap:.4rem}.mode-tabs{display:flex;gap:.25rem;background:#0006;padding:.25rem;border-radius:.625rem;border:1px solid rgba(255,255,255,.06)}.mode-tabs button.active{background:#3b82f6;color:#fff;box-shadow:0 2px 10px #3b82f666}.action-btn{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:.5rem;color:#94a3b8;cursor:pointer;transition:all .2s ease}.action-btn:hover{background:#ffffff1f;color:#fff;transform:scale(1.05)}.action-btn.active{background:#3b82f64d;border-color:#3b82f6;color:#60a5fa}.canvas-container{position:absolute;inset:0;z-index:0;cursor:default}.canvas-container.dragging{cursor:grabbing!important}.charge-info-panel{position:absolute;top:4.75rem;left:1.25rem;z-index:100;width:310px;max-height:calc(100dvh - 6rem);overflow-y:auto;background:#0f172ae0;border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;padding:1.15rem;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 20px 40px #00000080;display:flex;flex-direction:column;gap:.9rem}.charge-info-panel::-webkit-scrollbar{width:4px}.charge-info-panel::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.panel-header-badge{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:800;color:#f8fafc;letter-spacing:.01em;padding-bottom:.4rem;border-bottom:1px solid rgba(255,255,255,.08)}.charge-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.summary-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:.75rem;padding:.6rem .75rem;display:flex;flex-direction:column;gap:.2rem}.summary-card.full-width{grid-column:span 2;flex-direction:row;justify-content:space-between;align-items:center;background:#3b82f614;border-color:#3b82f640}.summary-card .card-label{font-size:.68rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.summary-card .card-value{font-size:1.1rem;font-weight:800;font-family:JetBrains Mono,monospace,Courier New;line-height:1.2}.card-value.positive{color:#ef4444}.card-value.negative{color:#38bdf8}.card-value.neutral{color:#10b981}.coulomb-formula-card{background:linear-gradient(145deg,#1e293bb3,#0f172acc);border:1px solid rgba(255,255,255,.1);border-radius:.85rem;padding:.75rem .85rem;position:relative;overflow:hidden}.coulomb-formula-card:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:#f59e0b}.formula-title{font-size:.72rem;font-weight:700;color:#f59e0b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.35rem;display:flex;align-items:center;gap:.35rem}.formula-display{font-size:.95rem;font-weight:700;font-family:JetBrains Mono,monospace;color:#fff;text-align:center;background:#0000004d;padding:.4rem;border-radius:.5rem;margin:.3rem 0}.formula-constants{display:flex;flex-direction:column;gap:.15rem;font-size:.65rem;font-family:JetBrains Mono,monospace;color:#94a3b8}.selected-charge-card{background:#f59e0b14;border:1px solid rgba(245,158,11,.3);border-radius:.85rem;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.selected-charge-card h4{margin:0;font-size:.75rem;font-weight:700;color:#fbbf24;display:flex;align-items:center;gap:.35rem}.charge-details-list{display:flex;flex-direction:column;gap:.25rem;font-size:.72rem}.detail-row{display:flex;justify-content:space-between;align-items:center}.detail-row span:first-child{color:#94a3b8}.detail-row span:last-child{font-weight:700;font-family:JetBrains Mono,monospace}.charge-btn-group{display:flex;align-items:center;gap:.35rem;margin-top:.25rem}.charge-adjust-btn{flex:1;padding:.35rem;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:.4rem;color:#fff;font-size:.72rem;font-weight:700;cursor:pointer;transition:all .15s ease}.charge-adjust-btn:hover{background:#ffffff2e;border-color:#ffffff4d}.charge-del-btn{padding:.35rem .6rem;background:#ef444433;border:1px solid rgba(239,68,68,.4);border-radius:.4rem;color:#ef4444;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.charge-del-btn:hover{background:#ef444466;color:#fff}.legend-card{background:#00000040;border:1px solid rgba(255,255,255,.06);border-radius:.85rem;padding:.65rem .75rem}.legend-card h4{margin:0 0 .5rem;font-size:.7rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.legend-items{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.legend-item{display:flex;align-items:center;gap:.45rem;font-size:.7rem;font-weight:600;color:#cbd5e1}.legend-dot{width:.65rem;height:.65rem;border-radius:50%;flex-shrink:0}.legend-dot.pos{background:#ef4444;box-shadow:0 0 8px #ef444499}.legend-dot.neg{background:#38bdf8;box-shadow:0 0 8px #38bdf899}.legend-dot.fieldline{background:#10b981;box-shadow:0 0 8px #10b98199}.legend-dot.vector{background:#f8fafc;box-shadow:0 0 8px #f8fafc99}.legend-dot.equipotential{background:#f59e0b;box-shadow:0 0 8px #f59e0b99}.legend-dot.testcharge{background:#a855f7;box-shadow:0 0 8px #a855f799}.control-panel-3d{position:absolute;top:4.75rem;right:1.25rem;z-index:100;width:300px;max-height:calc(100dvh - 6rem);overflow-y:auto;background:#0f172ae0;border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;padding:1.15rem;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 20px 40px #00000080;display:flex;flex-direction:column;gap:1rem}.control-panel-3d::-webkit-scrollbar{width:4px}.control-panel-3d::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.panel-section-title{font-size:.72rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;display:flex;align-items:center;gap:.35rem}.add-charge-buttons{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.add-charge-btn{padding:.65rem;border-radius:.65rem;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.4rem;border:none}.add-charge-btn.pos{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 12px #ef44444d}.add-charge-btn.pos:hover{transform:translateY(-1px);box-shadow:0 6px 16px #ef444473}.add-charge-btn.neg{background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;box-shadow:0 4px 12px #0284c74d}.add-charge-btn.neg:hover{transform:translateY(-1px);box-shadow:0 6px 16px #0284c773}.toggle-grid{display:flex;flex-direction:column;gap:.45rem}.toggle-item{display:flex;align-items:center;justify-content:space-between;padding:.55rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:.65rem;cursor:pointer;transition:all .15s ease}.toggle-item:hover{background:#ffffff0f;border-color:#ffffff26}.toggle-item-left{display:flex;align-items:center;gap:.5rem;font-size:.78rem;font-weight:600;color:#f1f5f9}.custom-checkbox{width:1.15rem;height:1.15rem;border-radius:.3rem;border:1.5px solid rgba(255,255,255,.3);background:transparent;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.custom-checkbox.checked{background:#3b82f6;border-color:#3b82f6;color:#fff}.slider-group{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.6rem}.slider-label-row{display:flex;justify-content:space-between;align-items:center;font-size:.72rem}.test-charge-ctrl-card{background:#a855f71a;border:1px solid rgba(168,85,247,.3);border-radius:.75rem;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.test-charge-ctrl-card h4{margin:0;font-size:.75rem;font-weight:700;color:#c084fc;display:flex;align-items:center;gap:.35rem}.test-charge-toggle-buttons{display:flex;gap:.4rem}.tc-btn{flex:1;padding:.4rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.15);border-radius:.4rem;color:#f1f5f9;font-size:.72rem;font-weight:700;cursor:pointer;transition:all .15s ease}.tc-btn.active{background:#a855f7;border-color:#a855f7;color:#fff}.canvas-charge-tag{background:#0f172ad9;border:1.5px solid;padding:.2rem .55rem;border-radius:.5rem;font-size:.72rem;font-weight:800;font-family:JetBrains Mono,monospace;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 15px #0006;pointer-events:none;transform:translateY(10px)}.canvas-charge-tag.pos{border-color:#ef4444;color:#ef4444}.canvas-charge-tag.neg{border-color:#38bdf8;color:#38bdf8}.canvas-charge-tag.selected{border-color:#f59e0b;box-shadow:0 0 16px #f59e0b99}.test-charge-hud{background:#0f172aeb;border:1.5px solid #A855F7;border-radius:.75rem;padding:.5rem .7rem;box-shadow:0 8px 24px #a855f766;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none;min-width:170px;display:flex;flex-direction:column;gap:.2rem;transform:translate(-50%,-120%)}.tc-hud-title{font-size:.65rem;font-weight:800;color:#c084fc;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.2rem}.tc-hud-row{display:flex;justify-content:space-between;font-size:.68rem;font-family:JetBrains Mono,monospace}.tc-hud-row span:first-child{color:#94a3b8}.tc-hud-row span:last-child{font-weight:800;color:#fff}.probe-hud{background:#0f172af2;border:1.5px solid #38BDF8;border-radius:.75rem;padding:.55rem .75rem;box-shadow:0 8px 24px #38bdf866;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-width:160px;display:flex;flex-direction:column;gap:.25rem;transform:translate(-50%,-120%)}.probe-title{display:flex;justify-content:space-between;align-items:center;font-size:.68rem;font-weight:800;color:#38bdf8;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.2rem}.probe-close{cursor:pointer;color:#94a3b8;pointer-events:auto}.probe-close:hover{color:#ef4444}.challenge-header h3{margin:0;font-size:.85rem;color:#f8fafc}.challenge-option-btn{padding:.55rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:.6rem;color:#cbd5e1;font-size:.75rem;text-align:left;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:space-between}.challenge-option-btn:hover:not(:disabled){background:#ffffff14;border-color:#3b82f6;color:#fff}.challenge-option-btn.correct{background:#10b98133;border-color:#10b981;color:#34d399;font-weight:700}.challenge-next-btn{width:100%;padding:.6rem;background:#3b82f6;color:#fff;font-weight:700;border:none;border-radius:.6rem;cursor:pointer;margin-top:.4rem}.learn-card-item h4{margin:0;font-size:.78rem;font-weight:700;color:#f59e0b}.hint-banner{background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:.75rem;padding:.6rem .75rem;display:flex;align-items:flex-start;gap:.5rem;font-size:.7rem;color:#93c5fd;line-height:1.35}.hint-banner svg{flex-shrink:0;margin-top:.1rem;color:#60a5fa}@media(max-width:1024px){.charge-info-panel{width:260px;left:.75rem}.control-panel-3d{width:260px;right:.75rem}}.magnetic-field-3d-simulation{position:relative;width:100%;height:100dvh;background:#080d1a;overflow:hidden;color:#f8fafc;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-user-select:none;user-select:none}.magnetic-field-3d-simulation:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(30,58,138,.12) 0%,transparent 65%),radial-gradient(circle at 25% 30%,rgba(16,185,129,.06) 0%,transparent 50%),radial-gradient(circle at 75% 70%,rgba(245,158,11,.05) 0%,transparent 50%);pointer-events:none;z-index:1}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:120;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;background:#0f172acc;border:1px solid rgba(255,255,255,.15);border-radius:.75rem;color:#94a3b8;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.back-btn-3d:hover{border-color:#38bdf8;color:#fff;background:#38bdf833;transform:scale(1.05)}.header-brand-icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:linear-gradient(135deg,#ef4444,#3b82f6);border-radius:.5rem;color:#fff}.mode-tabs button.active{background:#2563eb;color:#fff;box-shadow:0 2px 10px #2563eb66}.canvas-container{position:absolute;inset:0;z-index:0;cursor:grab}.canvas-container:active{cursor:grabbing}.magnetic-left-panel{position:absolute;top:4.75rem;left:1.25rem;z-index:100;width:310px;max-height:calc(100dvh - 6rem);overflow-y:auto;background:#0f172ae6;border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;padding:1.15rem;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 20px 40px #00000080;display:flex;flex-direction:column;gap:.9rem}.magnetic-left-panel::-webkit-scrollbar{width:4px}.magnetic-left-panel::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.panel-header-badge{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:800;color:#f8fafc;padding-bottom:.4rem;border-bottom:1px solid rgba(255,255,255,.08)}.panel-header-badge svg{color:#38bdf8}.panel-section-title{font-size:.72rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.45rem;display:flex;align-items:center;gap:.35rem}.source-selector-tabs{display:flex;flex-direction:column;gap:.4rem}.source-tab-btn{display:flex;justify-content:space-between;align-items:center;padding:.6rem .8rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:.75rem;color:#e2e8f0;cursor:pointer;transition:all .2s ease;font-size:.78rem;font-weight:700}.source-tab-btn:hover{background:#ffffff14}.source-tab-btn.active{background:#2563eb40;border-color:#3b82f6;color:#60a5fa;box-shadow:0 0 15px #3b82f633}.source-count-badge{font-size:.68rem;font-weight:600;color:#94a3b8;background:#0000004d;padding:.15rem .45rem;border-radius:.4rem}.wire-params-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:.85rem;padding:.85rem;display:flex;flex-direction:column;gap:.75rem}.param-header-row{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}.param-header-row span:first-child{color:#94a3b8;font-weight:600}.param-header-row span:last-child{font-family:JetBrains Mono,monospace;font-weight:800;color:#f59e0b;font-size:.95rem}.direction-toggle-group{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.dir-toggle-btn{padding:.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:.5rem;color:#cbd5e1;font-size:.72rem;font-weight:700;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:.25rem}.dir-toggle-btn.active{background:#2563eb;border-color:#3b82f6;color:#fff;box-shadow:0 2px 10px #2563eb59}.position-coords-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.35rem;font-size:.68rem;color:#94a3b8;background:#00000040;padding:.4rem .6rem;border-radius:.5rem;font-family:JetBrains Mono,monospace;text-align:center}.magnetic-formula-card{background:linear-gradient(145deg,#1e293bb3,#0f172acc);border:1px solid rgba(255,255,255,.1);border-radius:.85rem;padding:.75rem .85rem;position:relative;overflow:hidden}.magnetic-formula-card:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:#38bdf8}.formula-primary-row{display:flex;justify-content:space-between;align-items:center;font-size:.95rem;font-weight:800;font-family:JetBrains Mono,monospace;color:#fff;background:#0000004d;padding:.45rem .6rem;border-radius:.5rem;margin:.4rem 0}.formula-sub-notes{display:flex;flex-direction:column;gap:.2rem;font-size:.68rem;font-family:JetBrains Mono,monospace;color:#94a3b8}.magnetic-legend-card{background:#00000040;border:1px solid rgba(255,255,255,.06);border-radius:.85rem;padding:.65rem .75rem}.legend-grid-list{display:flex;flex-direction:column;gap:.35rem}.legend-list-item{display:flex;align-items:center;gap:.55rem;font-size:.7rem;font-weight:600;color:#cbd5e1}.legend-symbol{display:flex;align-items:center;justify-content:center;width:1.1rem;height:1.1rem;border-radius:.3rem;font-size:.75rem;flex-shrink:0}.magnetic-right-panel{position:absolute;top:4.75rem;right:1.25rem;z-index:100;width:300px;max-height:calc(100dvh - 6rem);overflow-y:auto;background:#0f172ae6;border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;padding:1.15rem;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 20px 40px #00000080;display:flex;flex-direction:column;gap:1rem}.magnetic-right-panel::-webkit-scrollbar{width:4px}.magnetic-right-panel::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.add-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;margin-bottom:.45rem}.add-src-btn{padding:.55rem;background:#a855f733;border:1px solid rgba(168,85,247,.4);border-radius:.6rem;color:#f1f5f9;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:.35rem}.add-src-btn:hover{background:#a855f766;color:#fff}.add-wire-action-btn{width:100%;padding:.55rem;background:#00000059;border:1px dashed rgba(255,255,255,.2);border-radius:.6rem;color:#cbd5e1;font-size:.72rem;font-weight:700;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:.35rem}.add-wire-action-btn:hover{border-color:#38bdf8;color:#38bdf8;background:#38bdf814}.visual-toggle-list{display:flex;flex-direction:column;gap:.4rem}.visual-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:.65rem;cursor:pointer;transition:all .15s ease}.visual-toggle-row:hover{background:#ffffff0f;border-color:#ffffff26}.visual-toggle-left{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;color:#f1f5f9}.custom-box{width:1.15rem;height:1.15rem;border-radius:.3rem;border:1.5px solid rgba(255,255,255,.3);background:transparent;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.custom-box.checked{background:#2563eb;border-color:#2563eb;color:#fff}.slider-container{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.55rem}.slider-label-row span:last-child{font-family:JetBrains Mono,monospace;color:#38bdf8;font-weight:700}.styled-slider{width:100%;height:6px;background:#ffffff1a;border-radius:3px;outline:none;cursor:pointer;accent-color:#3B82F6}.experiment-tools-list{display:flex;flex-direction:column;gap:.4rem}.exp-tool-btn{width:100%;padding:.55rem .75rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:.6rem;color:#e2e8f0;font-size:.72rem;font-weight:700;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:.45rem}.exp-tool-btn:hover{background:#ffffff1a;color:#fff}.tips-alert-box{background:#10b98114;border:1px solid rgba(16,185,129,.25);border-radius:.75rem;padding:.65rem .75rem;display:flex;align-items:flex-start;gap:.5rem;font-size:.7rem;color:#6ee7b7;line-height:1.4}.rhr-inset-card{position:absolute;top:4.75rem;right:21.5rem;z-index:90;background:#0f172aeb;border:1px solid rgba(56,189,248,.3);border-radius:1rem;padding:.75rem .9rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 10px 30px #00000080;max-width:220px;display:flex;flex-direction:column;gap:.4rem;pointer-events:none}.rhr-title{display:flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:800;color:#38bdf8;text-transform:uppercase;letter-spacing:.04em}.rhr-text-content{display:flex;align-items:center;gap:.65rem}.rhr-icon-art{font-size:1.75rem;line-height:1}.rhr-desc{font-size:.68rem;color:#e2e8f0;line-height:1.35}.rhr-desc strong{color:#f59e0b}.probe-measurement-callout{position:absolute;top:4.75rem;left:21.5rem;z-index:90;background:#0f172aeb;border:1px solid rgba(16,185,129,.35);border-radius:1rem;padding:.75rem .9rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 10px 30px #00000080;min-width:200px;display:flex;flex-direction:column;gap:.25rem;pointer-events:none}.probe-callout-title{font-size:.72rem;font-weight:800;color:#34d399;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.25rem;display:flex;justify-content:space-between}.probe-data-row{display:flex;justify-content:space-between;font-size:.72rem;font-family:JetBrains Mono,monospace}.probe-data-row span:first-child{color:#94a3b8}.probe-data-row span:last-child{font-weight:800;color:#fff}.probe-sub-note{font-size:.65rem;color:#6ee7b7;margin-top:.15rem}.bottom-hint-bar{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);z-index:100;background:#0f172aeb;border:1px solid rgba(255,255,255,.12);border-radius:2rem;padding:.55rem 1.5rem;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 10px 30px #0009;display:flex;align-items:center;gap:.6rem;font-size:.75rem;color:#e2e8f0;pointer-events:none}.bottom-hint-bar svg{color:#f59e0b;flex-shrink:0}.wire-tag-3d{background:#f59e0bf2;color:#0f172a;font-weight:900;font-family:JetBrains Mono,monospace;font-size:.85rem;padding:.35rem .7rem;border-radius:.5rem;box-shadow:0 4px 15px #f59e0b80;white-space:nowrap;pointer-events:none;transform:translate(-50%,-130%)}.compass-callout-tag{background:#0f172ae6;border:1px solid #38BDF8;color:#fff;font-size:.65rem;font-family:Inter,sans-serif;padding:.3rem .55rem;border-radius:.4rem;box-shadow:0 4px 15px #00000080;white-space:nowrap;pointer-events:none;transform:translate(25%,-110%)}.axis-indicator-corner{position:absolute;bottom:1.5rem;left:21.5rem;z-index:90;display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:800;font-family:JetBrains Mono,monospace;pointer-events:none}.axis-letter.x{color:#ef4444}.axis-letter.y{color:#10b981}.axis-letter.z{color:#3b82f6}.challenge-panel,.learn-panel{display:flex;flex-direction:column;gap:.85rem}.challenge-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:.4rem;border-bottom:1px solid rgba(255,255,255,.1)}.score-badge{background:#3b82f633;border:1px solid #3B82F6;color:#60a5fa;font-size:.72rem;font-weight:700;padding:.2rem .5rem;border-radius:.4rem;font-family:JetBrains Mono,monospace}.challenge-question-box{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:.65rem;padding:.65rem;font-size:.78rem;line-height:1.4;color:#e2e8f0}.challenge-options-list{display:flex;flex-direction:column;gap:.4rem}.challenge-opt-btn{padding:.55rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:.6rem;color:#cbd5e1;font-size:.75rem;text-align:left;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:space-between}.challenge-opt-btn:hover:not(:disabled){background:#ffffff14;border-color:#38bdf8;color:#fff}.challenge-opt-btn.correct{background:#10b98133;border-color:#10b981;color:#34d399;font-weight:700}.challenge-opt-btn.incorrect{background:#ef444433;border-color:#ef4444;color:#f87171}.challenge-feedback-box{border-radius:.6rem;padding:.6rem;font-size:.75rem;font-weight:600}.challenge-feedback-box.correct{background:#10b98126;border:1px solid rgba(16,185,129,.3);color:#34d399}.challenge-feedback-box.incorrect{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#f87171}.challenge-next-btn{width:100%;padding:.6rem;background:#2563eb;color:#fff;font-weight:700;border:none;border-radius:.6rem;cursor:pointer;margin-top:.4rem}.learn-card-item{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:.75rem;padding:.65rem .75rem;display:flex;flex-direction:column;gap:.25rem}.learn-card-item h4{margin:0;font-size:.78rem;font-weight:700;color:#38bdf8}.learn-card-item p{margin:0;font-size:.72rem;color:#94a3b8;line-height:1.45}.info-overlay-3d{position:fixed;inset:0;z-index:1000;background:#000000bf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:1.5rem}.info-modal-3d{background:#0f172a;border:1px solid rgba(255,255,255,.15);border-radius:1.5rem;max-width:520px;width:100%;max-height:85vh;overflow-y:auto;padding:1.75rem;box-shadow:0 25px 60px #000c;display:flex;flex-direction:column;gap:1.25rem}.modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.75rem}.modal-header h2{margin:0;font-size:1.15rem;font-weight:800;color:#fff;display:flex;align-items:center;gap:.5rem}.modal-header button{background:transparent;border:none;color:#94a3b8;cursor:pointer;transition:color .15s ease}.modal-header button:hover{color:#ef4444}.modal-content{display:flex;flex-direction:column;gap:1rem}.modal-content section h3{margin:0 0 .35rem;font-size:.85rem;color:#38bdf8}.modal-content p,.modal-content li{font-size:.78rem;color:#cbd5e1;line-height:1.5}.modal-content ul{margin:0;padding-left:1.2rem}@media(max-width:1180px){.rhr-inset-card,.probe-measurement-callout{display:none}}.thermodynamics-3d-simulation{position:relative;width:100%;height:100dvh;background:#080d1a;overflow:hidden;color:#f8fafc;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-user-select:none;user-select:none}.thermodynamics-3d-simulation:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 25% 40%,rgba(239,68,68,.08) 0%,transparent 55%),radial-gradient(circle at 75% 40%,rgba(56,189,248,.08) 0%,transparent 55%),radial-gradient(circle at 50% 80%,rgba(245,158,11,.05) 0%,transparent 50%);pointer-events:none;z-index:1}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:120;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;background:#0f172ad9;border:1px solid rgba(255,255,255,.15);border-radius:.75rem;color:#94a3b8;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.back-btn-3d:hover{border-color:#f59e0b;color:#fff;background:#f59e0b33;transform:scale(1.05)}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:120;display:flex;align-items:center;gap:1.5rem;padding:.5rem 1.25rem;background:#0f172ae0;border:1px solid rgba(255,255,255,.12);border-radius:1rem;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 10px 30px #00000080}.header-brand{display:flex;align-items:center;gap:.65rem}.header-brand-icon{display:flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;background:linear-gradient(135deg,#ef4444,#f59e0b);border-radius:.55rem;color:#fff}.header-brand-text h1{font-size:.95rem;font-weight:800;color:#fff;margin:0;line-height:1.1}.header-brand-text p{font-size:.65rem;color:#94a3b8;margin:0}.mode-tabs{display:flex;gap:.25rem;background:#00000073;padding:.25rem;border-radius:.625rem;border:1px solid rgba(255,255,255,.06)}.mode-tabs button{padding:.45rem .85rem;background:transparent;border:none;border-radius:.45rem;color:#94a3b8;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.35rem}.mode-tabs button:hover{color:#fff}.mode-tabs button.active{background:#0284c7;color:#fff;box-shadow:0 2px 10px #0284c766}.header-actions{display:flex;gap:.4rem}.header-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.25rem .55rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:#cbd5e1;font-size:.62rem;font-weight:600;cursor:pointer;transition:all .15s ease;gap:.15rem}.header-btn:hover{background:#ffffff1f;color:#fff;transform:scale(1.03)}.header-btn.active{background:#f59e0b40;border-color:#f59e0b;color:#f59e0b}.canvas-container{position:absolute;inset:0;z-index:0}.thermo-left-panel{position:absolute;top:4.5rem;left:1.25rem;bottom:3.8rem;width:315px;z-index:100;overflow-y:auto;background:#0f172aeb;border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;padding:.6rem .75rem;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 20px 40px #00000080;display:flex;flex-direction:column;gap:.32rem}.thermo-left-panel::-webkit-scrollbar{width:4px}.thermo-left-panel::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.panel-header-badge{display:flex;align-items:center;gap:.5rem;font-size:.92rem;font-weight:800;color:#f8fafc;padding-bottom:.35rem;border-bottom:1px solid rgba(255,255,255,.08)}.panel-header-badge svg{color:#f59e0b}.thermo-subtabs-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.25rem;margin-bottom:.1rem}.thermo-subtab-btn{padding:.3rem .2rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:.45rem;color:#94a3b8;font-size:.67rem;font-weight:700;cursor:pointer;transition:all .15s ease;text-align:center}.thermo-subtab-btn.active{background:#0284c7;border-color:#38bdf8;color:#fff}.contact-diagram-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:.75rem;padding:.45rem .65rem}.diagram-title{font-size:.68rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.35rem}.diagram-nodes-row{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.diagram-node{flex:1;padding:.35rem .25rem;border-radius:.55rem;text-align:center;display:flex;flex-direction:column;gap:.08rem}.diagram-node.node-a{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:#f87171}.diagram-node.node-b{background:#38bdf826;border:1px solid rgba(56,189,248,.4);color:#38bdf8}.node-label{font-size:.7rem;font-weight:800}.node-vars{font-size:.6rem;font-family:JetBrains Mono,monospace;opacity:.85}.diagram-connector{display:flex;align-items:center;position:relative;width:2rem;justify-content:center}.connector-line{width:100%;height:2px;background:#f59e0b}.connector-dot{position:absolute;width:7px;height:7px;border-radius:50%;background:#f59e0b;box-shadow:0 0 8px #f59e0b}.thermo-callout-card{background:#f59e0b14;border:1px solid rgba(245,158,11,.25);border-radius:.75rem;padding:.45rem .65rem;display:flex;gap:.45rem}.callout-icon{font-size:1rem;flex-shrink:0;margin-top:1px}.callout-body strong{display:block;font-size:.68rem;color:#fbbf24;margin-bottom:.15rem}.callout-body p{font-size:.64rem;color:#cbd5e1;line-height:1.32;margin:0}.thermo-formula-card{background:linear-gradient(145deg,#1e293bb3,#0f172acc);border:1px solid rgba(255,255,255,.1);border-radius:.75rem;padding:.38rem .55rem;position:relative;overflow:hidden}.thermo-formula-card:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:#f59e0b}.formula-primary-display{font-size:.88rem;font-weight:800;font-family:JetBrains Mono,monospace;color:#fff;text-align:center;background:#00000059;padding:.2rem .35rem;border-radius:.4rem;margin:.15rem 0 .25rem}.formula-vars-list{display:grid;grid-template-columns:1fr 1fr;gap:.15rem .35rem;font-size:.6rem;font-family:JetBrains Mono,monospace;color:#cbd5e1}.formula-vars-list span{color:#94a3b8}.thermo-legend-card{background:#00000040;border:1px solid rgba(255,255,255,.06);border-radius:.75rem;padding:.38rem .55rem}.legend-items-list{display:flex;flex-direction:column;gap:.2rem}.legend-row-item{display:flex;align-items:center;gap:.5rem;font-size:.65rem;font-weight:600;color:#cbd5e1}.legend-circle{width:.62rem;height:.62rem;border-radius:50%;flex-shrink:0}.legend-circle.hot{background:#ef4444;box-shadow:0 0 6px #ef444499}.legend-circle.neutral{background:#f59e0b;box-shadow:0 0 6px #f59e0b99}.legend-circle.cold{background:#38bdf8;box-shadow:0 0 6px #38bdf899}.legend-rect{width:.65rem;height:.5rem;border-radius:.15rem;background:#475569;border:1px solid #64748B}.thermo-right-panel{position:absolute;top:4.8rem;right:1.25rem;bottom:4.4rem;width:320px;z-index:100;overflow-y:auto;background:#0f172aeb;border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;padding:.9rem 1rem;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 20px 40px #00000080;display:flex;flex-direction:column;gap:.65rem}.thermo-right-panel::-webkit-scrollbar{width:4px}.thermo-right-panel::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.control-section-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:.85rem;padding:.7rem .8rem;display:flex;flex-direction:column;gap:.5rem}.benda-block-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:.75rem;padding:.55rem .65rem;display:flex;flex-direction:column;gap:.4rem}.benda-block-card.benda-a{border-color:#ef444459;background:#ef44440d}.benda-block-card.benda-b{border-color:#38bdf859;background:#38bdf80d}.benda-card-header{display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:800;padding-bottom:.25rem;border-bottom:1px solid rgba(255,255,255,.06)}.benda-card-header.a-header{color:#f87171}.benda-card-header.b-header{color:#38bdf8}.slider-group-box{display:flex;flex-direction:column;gap:.25rem}.slider-label-row{display:flex;justify-content:space-between;font-size:.72rem}.slider-label-row span:first-child{color:#94a3b8;font-weight:600}.slider-label-row span:last-child{font-family:JetBrains Mono,monospace;font-weight:700}.styled-slider{width:100%;height:6px;background:#ffffff1a;border-radius:3px;outline:none;cursor:pointer;accent-color:#0284C7}.styled-slider.red{accent-color:#EF4444}.styled-slider.blue{accent-color:#38BDF8}.slider-range-tags{display:flex;justify-content:space-between;font-size:.6rem;color:#64748b;font-family:JetBrains Mono,monospace}.material-select-box{display:flex;flex-direction:column;gap:.25rem}.styled-select{width:100%;padding:.45rem .6rem;background:#0f172ad9;border:1px solid rgba(255,255,255,.15);border-radius:.55rem;color:#f8fafc;font-size:.75rem;font-weight:600;outline:none;cursor:pointer;transition:all .15s ease}.styled-select:hover,.styled-select:focus{border-color:#38bdf8}.display-toggles-list{display:flex;flex-direction:column;gap:.35rem}.toggle-row{display:flex;align-items:center;gap:.5rem;padding:.4rem .55rem;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:.55rem;cursor:pointer;font-size:.72rem;font-weight:600;color:#e2e8f0;transition:all .15s ease}.toggle-row:hover{background:#ffffff0f;border-color:#ffffff26}.check-square{width:1rem;height:1rem;border-radius:.25rem;border:1.5px solid rgba(255,255,255,.3);background:transparent;display:flex;align-items:center;justify-content:center;flex-shrink:0}.check-square.checked{background:#0284c7;border-color:#38bdf8;color:#fff}.tips-alert-box{background:#10b98114;border:1px solid rgba(16,185,129,.25);border-radius:.75rem;padding:.6rem .75rem;display:flex;align-items:flex-start;gap:.5rem;font-size:.68rem;color:#6ee7b7;line-height:1.35}.thermo-bottom-dock{position:absolute;bottom:2.7rem;left:50%;transform:translate(-50%);z-index:100;display:flex;gap:.9rem;max-width:680px;width:calc(100% - 700px);justify-content:center}.thermo-graph-card{flex:1.4;background:#0f172aeb;border:1px solid rgba(255,255,255,.12);border-radius:1rem;padding:.65rem .85rem;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 10px 30px #00000080;display:flex;flex-direction:column;gap:.35rem}.graph-header-row{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;font-weight:700;color:#cbd5e1}.graph-legend-tags{display:flex;align-items:center;gap:.6rem;font-size:.65rem;font-weight:700}.graph-tag-item{display:flex;align-items:center;gap:.3rem}.graph-tag-item.tag-a{color:#ef4444}.graph-tag-item.tag-b{color:#38bdf8}.graph-canvas-wrap{position:relative;width:100%;height:110px}.graph-canvas-wrap canvas{width:100%;height:100%;display:block}.equilibrium-floating-tag{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:#0f172ae6;border:1px dashed #F59E0B;border-radius:.35rem;padding:.2rem .45rem;font-size:.62rem;color:#fbbf24;font-family:JetBrains Mono,monospace;font-weight:700}.thermo-realtime-card{flex:1;background:#0f172aeb;border:1px solid rgba(255,255,255,.12);border-radius:1rem;padding:.65rem .85rem;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 10px 30px #00000080;display:flex;flex-direction:column;justify-content:space-between}.realtime-header-row{font-size:.72rem;font-weight:800;color:#cbd5e1;display:flex;align-items:center;gap:.4rem;padding-bottom:.25rem;border-bottom:1px solid rgba(255,255,255,.08)}.realtime-rows-list{display:flex;flex-direction:column;gap:.2rem;margin-top:.3rem}.realtime-row{display:flex;justify-content:space-between;align-items:center;font-size:.68rem}.realtime-row span:first-child{color:#94a3b8}.realtime-row span:last-child{font-family:JetBrains Mono,monospace;font-weight:700}.thermo-bottom-banner{position:absolute;bottom:.45rem;left:1.25rem;right:1.25rem;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:1rem}.bottom-exp-hint{display:flex;align-items:center;gap:.55rem;background:#0f172ae6;border:1px solid rgba(255,255,255,.12);border-radius:2rem;padding:.45rem 1.25rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:.72rem;color:#cbd5e1}.bottom-exp-hint strong{color:#f59e0b}.bottom-tips-hint{display:flex;align-items:center;gap:.55rem;background:#10b9811a;border:1px solid rgba(16,185,129,.25);border-radius:2rem;padding:.45rem 1.25rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:.72rem;color:#a7f3d0}.bottom-tips-hint strong{color:#34d399}.chamber-badge-3d{background:#0f172aeb;border-radius:.75rem;padding:.45rem .85rem;text-align:center;box-shadow:0 8px 24px #0009;white-space:nowrap;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:center;gap:.1rem;pointer-events:none}.chamber-badge-3d.benda-a{border:1.5px solid rgba(239,68,68,.6)}.chamber-badge-3d.benda-b{border:1.5px solid rgba(56,189,248,.6)}.chamber-badge-title{font-size:.75rem;font-weight:800;color:#fff}.chamber-badge-temp{font-size:1.15rem;font-weight:800;font-family:JetBrains Mono,monospace}.chamber-badge-temp.hot{color:#ef4444;text-shadow:0 0 10px rgba(239,68,68,.5)}.chamber-badge-temp.cold{color:#38bdf8;text-shadow:0 0 10px rgba(56,189,248,.5)}.chamber-badge-subtitle{font-size:.65rem;color:#94a3b8;font-family:JetBrains Mono,monospace}.heat-bridge-badge-3d{background:#0f172af2;border:1px solid #F59E0B;border-radius:.65rem;padding:.35rem .65rem;text-align:center;box-shadow:0 0 20px #f59e0b59;white-space:nowrap;display:flex;flex-direction:column;align-items:center;gap:.1rem;pointer-events:none}.heat-bridge-q-title{font-size:.75rem;font-weight:800;color:#fbbf24}.heat-bridge-rate-val{font-size:.8rem;font-weight:800;font-family:JetBrains Mono,monospace;color:#fff}.thermometer-label-3d{background:#0f172ae0;border:1px solid rgba(255,255,255,.15);border-radius:.5rem;padding:.25rem .55rem;text-align:center;white-space:nowrap;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:.1rem}.thermometer-label-3d span:first-child{font-size:.62rem;color:#94a3b8}.thermometer-label-3d span:last-child{font-size:.78rem;font-weight:800;font-family:JetBrains Mono,monospace;color:#fbbf24}.modal-backdrop-3d{position:fixed;inset:0;z-index:200;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:1.5rem}.dialog-box-3d{background:#0f172a;border:1px solid rgba(255,255,255,.15);border-radius:1.25rem;padding:1.5rem;width:100%;max-width:520px;box-shadow:0 25px 50px -12px #000000b3;display:flex;flex-direction:column;gap:1rem}.modal-header-row{display:flex;justify-content:space-between;align-items:center}.modal-header-row h3{font-size:1.05rem;font-weight:800;color:#fff;margin:0}.modal-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:.25rem;transition:color .15s ease}.modal-close-btn:hover{color:#fff}.modal-actions-row{display:flex;justify-content:flex-end;gap:.5rem}.primary-modal-btn{background:#0284c7;color:#fff;border:none;border-radius:.55rem;padding:.55rem 1.2rem;font-size:.8rem;font-weight:700;cursor:pointer;transition:background .15s ease}.primary-modal-btn:hover{background:#0369a1}.challenge-options-grid{display:flex;flex-direction:column;gap:.45rem}.challenge-option-btn{padding:.65rem .85rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:.65rem;color:#cbd5e1;font-size:.8rem;font-weight:600;text-align:left;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:space-between}.challenge-option-btn:hover:not(:disabled){background:#ffffff14;border-color:#f59e0b;color:#fff}.challenge-option-btn.correct{background:#10b98133;border-color:#10b981;color:#34d399}.challenge-option-btn.incorrect{background:#ef444433;border-color:#ef4444;color:#f87171}.challenge-feedback-box{padding:.65rem .85rem;border-radius:.65rem;font-size:.8rem;font-weight:700}.challenge-feedback-box.correct{background:#10b98126;border:1px solid #10B981;color:#34d399}.challenge-feedback-box.incorrect{background:#ef444426;border:1px solid #EF4444;color:#f87171}.learn-scroll-content{max-height:360px;overflow-y:auto;display:flex;flex-direction:column;gap:.85rem;font-size:.82rem;color:#cbd5e1;line-height:1.5}.learn-scroll-content section{background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:.75rem;padding:.75rem}.learn-scroll-content h4{color:#f59e0b;font-size:.85rem;font-weight:800;margin:0 0 .35rem}.learn-scroll-content pre{background:#0006;padding:.5rem;border-radius:.45rem;font-family:JetBrains Mono,monospace;color:#38bdf8;margin:.35rem 0;font-size:.8rem}.optics-3d-simulation{position:relative;width:100%;height:100%;min-height:100dvh;background:radial-gradient(circle at 50% 30%,#0d1933,#050b17 70%,#02050d);color:#e2e8f0;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-user-select:none;user-select:none}.optics-top-bar{position:absolute;top:.75rem;left:1rem;right:1rem;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:1rem;pointer-events:none}.optics-brand{display:flex;align-items:center;gap:.875rem;pointer-events:auto}.optics-back-btn{width:2.75rem;height:2.75rem;display:flex;align-items:center;justify-content:center;background:#0f172abf;border:1px solid rgba(56,189,248,.3);border-radius:.875rem;color:#38bdf8;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .25s ease;box-shadow:0 4px 15px #0000004d}.optics-back-btn:hover{background:#38bdf833;border-color:#38bdf8;transform:scale(1.05);color:#fff}.optics-title-group h1{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;margin:0;display:flex;align-items:center;gap:.5rem;color:#fff;text-shadow:0 0 20px rgba(56,189,248,.4)}.optics-title-group p{font-size:.75rem;color:#94a3b8;margin:.1rem 0 0;font-weight:500}.optics-mode-tabs{display:flex;align-items:center;gap:.35rem;background:#0f172acc;padding:.3rem .4rem;border-radius:1rem;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 8px 30px #0006;pointer-events:auto}.optics-tab-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.15rem;background:transparent;border:none;border-radius:.75rem;color:#94a3b8;font-size:.825rem;font-weight:600;cursor:pointer;transition:all .25s ease}.optics-tab-btn:hover{color:#fff;background:#ffffff0d}.optics-tab-btn.active{background:linear-gradient(135deg,#0284c7,#2563eb);color:#fff;box-shadow:0 4px 15px #0284c766}.optics-top-actions{display:flex;align-items:center;gap:.5rem;pointer-events:auto;margin-right:6.5rem}.optics-action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:.4rem .75rem;background:#0f172abf;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;color:#cbd5e1;font-size:.675rem;font-weight:600;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .2s ease}.optics-action-btn:hover{background:#ffffff1f;border-color:#38bdf866;color:#fff;transform:translateY(-1px)}.optics-action-btn.active{background:#38bdf833;border-color:#38bdf8;color:#38bdf8}.optics-canvas-container{position:absolute;inset:0;width:100%;height:100%;z-index:1}.optics-left-panel{position:absolute;top:5rem;bottom:12.5rem;left:1rem;width:290px;z-index:50;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto;overflow-x:hidden;padding-right:.35rem;pointer-events:auto}.optics-card{background:#0b1426d9;border:1px solid rgba(255,255,255,.08);border-radius:1rem;padding:.875rem 1rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 10px 30px #0006}.optics-card-header{display:flex;align-items:center;gap:.5rem;font-size:.825rem;font-weight:700;color:#94a3b8;margin-bottom:.65rem;text-transform:uppercase;letter-spacing:.05em}.optics-card-header svg{color:#38bdf8}.optics-segmented-control{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;background:#0000004d;padding:.25rem;border-radius:.65rem}.optics-segmented-btn{padding:.5rem;background:transparent;border:none;border-radius:.5rem;color:#94a3b8;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s;text-align:center}.optics-segmented-btn.active{background:#0284c7;color:#fff;box-shadow:0 2px 10px #0284c74d}.optics-formula-box{background:#00000059;border-radius:.75rem;padding:.75rem;text-align:center;margin-bottom:.5rem;border:1px solid rgba(255,255,255,.04)}.optics-formula-math{font-size:1.25rem;font-weight:700;color:#38bdf8;letter-spacing:.05em;font-family:"Cambria Math",Times New Roman,serif}.optics-formula-desc{font-size:.725rem;color:#94a3b8;line-height:1.4;display:flex;flex-direction:column;gap:.15rem;margin-top:.4rem}.optics-legend-list{display:flex;flex-direction:column;gap:.5rem}.optics-legend-item{display:flex;align-items:center;gap:.65rem;font-size:.75rem;color:#cbd5e1;font-weight:500}.optics-legend-line{width:26px;height:3px;border-radius:2px;flex-shrink:0}.optics-legend-line.yellow{background:#fbbf24;box-shadow:0 0 8px #fbbf2499}.optics-legend-line.red{background:#ef4444;box-shadow:0 0 8px #ef444499}.optics-legend-line.blue{background:#38bdf8;box-shadow:0 0 8px #38bdf899}.optics-legend-line.dashed{border-top:2px dashed #94a3b8;height:0;background:transparent}.optics-tips-card{background:linear-gradient(135deg,#1e1b4bbf,#0f172ad9);border-color:#6366f140}.optics-tips-content{display:flex;align-items:flex-start;gap:.65rem;font-size:.75rem;color:#cbd5e1;line-height:1.45}.optics-tips-content svg{color:#f59e0b;flex-shrink:0;margin-top:.1rem}.optics-right-panel{position:absolute;top:5rem;bottom:12.5rem;right:1rem;width:290px;z-index:50;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto;overflow-x:hidden;padding-right:.35rem;pointer-events:auto}.optics-control-group{display:flex;flex-direction:column;gap:.4rem;margin-top:.65rem}.optics-control-label-row{display:flex;align-items:center;justify-content:space-between;font-size:.775rem;color:#94a3b8;font-weight:500}.optics-control-value-badge{font-size:.825rem;font-weight:700;color:#fff;background:#ffffff14;padding:.15rem .5rem;border-radius:.4rem;border:1px solid rgba(255,255,255,.1);font-variant-numeric:tabular-nums}.optics-slider{width:100%;height:5px;background:#1e293b;border-radius:9999px;outline:none;cursor:pointer;-webkit-appearance:none}.optics-slider::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#38bdf8;cursor:pointer;border:2px solid #ffffff;box-shadow:0 0 10px #38bdf899;transition:transform .15s}.optics-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.optics-slider-minmax{display:flex;justify-content:space-between;font-size:.675rem;color:#64748b;font-weight:500}.optics-checkbox-list{display:flex;flex-direction:column;gap:.45rem}.optics-checkbox-item{display:flex;align-items:center;gap:.55rem;font-size:.75rem;color:#cbd5e1;cursor:pointer;font-weight:500}.optics-checkbox-item input{cursor:pointer;accent-color:#0284c7;width:14px;height:14px}.optics-presets-grid{display:grid;grid-template-columns:1fr;gap:.4rem;margin-top:.5rem}.optics-preset-btn{padding:.45rem .65rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:.5rem;color:#cbd5e1;font-size:.725rem;font-weight:600;text-align:left;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:space-between}.optics-preset-btn:hover{background:#38bdf81f;border-color:#38bdf84d;color:#38bdf8;transform:translate(2px)}.optics-bottom-bar{position:absolute;bottom:1rem;left:1rem;right:1rem;z-index:50;display:grid;grid-template-columns:1fr 1.15fr;gap:1rem;pointer-events:none}.optics-bottom-card{background:#0b1426e6;border:1px solid rgba(255,255,255,.08);border-radius:1rem;padding:.875rem 1.15rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 10px 30px #00000073;pointer-events:auto}.optics-graph-container{position:relative;width:100%;height:125px;display:flex;align-items:center;justify-content:center}.optics-graph-canvas{width:100%;height:100%;display:block}.optics-metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem 1.25rem;font-size:.75rem}.optics-metric-row{display:flex;align-items:center;justify-content:space-between;padding-bottom:.25rem;border-bottom:1px solid rgba(255,255,255,.05)}.optics-metric-label{color:#94a3b8;font-weight:500}.optics-metric-value{color:#fff;font-weight:700;font-variant-numeric:tabular-nums}.optics-metric-value.highlight{color:#38bdf8}.optics-metric-value.nature{color:#10b981}.optics-metric-value.virtual{color:#a855f7}.optics-3d-badge{background:#0f172ae6;border:1px solid rgba(255,255,255,.15);border-radius:.75rem;padding:.45rem .75rem;color:#fff;font-size:.725rem;line-height:1.35;box-shadow:0 8px 25px #0009;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;text-align:center;white-space:nowrap}.optics-3d-badge.object-badge{border-color:#10b98199;background:#062c21e6}.optics-3d-badge.object-badge .badge-title{color:#34d399;font-weight:800;font-size:.8rem}.optics-3d-badge.image-badge{border-color:#ef444499;background:#2d0f0fe6}.optics-3d-badge.image-badge.virtual{border-color:#38bdf899;background:#0c2b42e6}.optics-3d-badge.image-badge .badge-title{color:#f87171;font-weight:800;font-size:.8rem}.optics-3d-badge.image-badge.virtual .badge-title{color:#38bdf8}.optics-3d-badge.lens-badge{border-color:#38bdf880;background:#0f2240eb}.optics-3d-badge.lens-badge .badge-title{color:#38bdf8;font-weight:800;font-size:.825rem}.optics-focal-marker{background:#f59e0be6;color:#000;font-size:.7rem;font-weight:900;width:1.35rem;height:1.35rem;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 12px #f59e0bcc;pointer-events:none}.optics-infinity-banner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#0f172aeb;border:2px solid #38bdf8;border-radius:1.25rem;padding:1.25rem 2rem;text-align:center;z-index:60;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 10px 40px #0009,0 0 30px #38bdf84d;pointer-events:none}.optics-infinity-banner h3{margin:0;font-size:1.25rem;font-weight:800;color:#38bdf8}.optics-infinity-banner p{margin:.5rem 0 0;font-size:.825rem;color:#cbd5e1}.optics-modal-overlay{position:absolute;inset:0;background:#020617cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:120;display:flex;align-items:center;justify-content:center;padding:1.5rem}.optics-challenge-hud{position:absolute;top:4.8rem;left:50%;transform:translate(-50%);width:90%;max-width:540px;z-index:70;pointer-events:auto}.optics-challenge-card{background:#0b1426eb;border:1px solid rgba(245,158,11,.4);border-radius:1.25rem;padding:1.25rem 1.5rem;box-shadow:0 16px 40px #0009,0 0 30px #f59e0b33;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:#e2e8f0}.optics-challenge-card.completed{border-color:#10b98199;box-shadow:0 16px 40px #0009,0 0 35px #10b9814d}.optics-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:.75rem}.optics-modal-header h2{margin:0;font-size:1.25rem;font-weight:800;color:#fff;display:flex;align-items:center;gap:.5rem}.optics-modal-close{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:.25rem;border-radius:.5rem;transition:all .2s}.optics-modal-close:hover{color:#fff;background:#ffffff1a}.optics-left-panel::-webkit-scrollbar,.optics-right-panel::-webkit-scrollbar{width:4px}.optics-left-panel::-webkit-scrollbar-thumb,.optics-right-panel::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}@media(max-width:1200px){.optics-left-panel,.optics-right-panel{width:250px}.optics-bottom-bar{grid-template-columns:1fr}}.shm-3d-simulation{position:relative;width:100%;height:100dvh;background:radial-gradient(circle at 50% 30%,#0c182c,#060b14 70%,#03060a);overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#e2e8f0;-webkit-user-select:none;user-select:none}.shm-top-bar{position:absolute;top:0;left:0;right:0;height:4.25rem;display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;background:linear-gradient(180deg,rgba(6,11,20,.95) 0%,rgba(6,11,20,.7) 70%,transparent 100%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:50;pointer-events:none}.shm-brand{display:flex;align-items:center;gap:.85rem;pointer-events:auto}.shm-back-btn{display:flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:.75rem;background:#0f172acc;border:1px solid rgba(255,255,255,.12);color:#cbd5e1;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.shm-back-btn:hover{background:#38bdf826;border-color:#38bdf880;color:#fff;transform:translate(-2px)}.shm-title-group h1{margin:0;font-size:1.125rem;font-weight:800;color:#fff;display:flex;align-items:center;gap:.5rem;letter-spacing:-.01em}.shm-title-group p{margin:0;font-size:.725rem;color:#94a3b8;font-weight:500}.shm-mode-tabs{display:flex;align-items:center;gap:.35rem;background:#0f172ad9;padding:.3rem .4rem;border-radius:1rem;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 8px 30px #0006;pointer-events:auto}.shm-tab-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.15rem;background:transparent;border:none;border-radius:.75rem;color:#94a3b8;font-size:.825rem;font-weight:600;cursor:pointer;transition:all .25s ease}.shm-tab-btn:hover{color:#fff;background:#ffffff0d}.shm-tab-btn.active{background:#0284c7;color:#fff;box-shadow:0 4px 15px #0284c766}.shm-top-actions{display:flex;align-items:center;gap:.5rem;pointer-events:auto;margin-right:6.5rem}.shm-action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:.4rem .75rem;background:#0f172abf;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;color:#cbd5e1;font-size:.675rem;font-weight:600;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .2s ease}.shm-action-btn:hover{background:#ffffff1f;border-color:#38bdf866;color:#fff;transform:translateY(-1px)}.shm-action-btn.active{background:#38bdf833;border-color:#38bdf8;color:#38bdf8}.shm-canvas-container{position:absolute;inset:0;width:100%;height:100%;z-index:1}.shm-left-panel{position:absolute;top:4.8rem;bottom:12.8rem;left:1rem;width:290px;z-index:50;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto;overflow-x:hidden;padding-right:.35rem;pointer-events:auto}.shm-card{background:#0b1426e0;border:1px solid rgba(255,255,255,.08);border-radius:1rem;padding:.85rem 1rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 10px 30px #0006}.shm-card-header{display:flex;align-items:center;gap:.5rem;font-size:.825rem;font-weight:700;color:#94a3b8;margin-bottom:.65rem;text-transform:uppercase;letter-spacing:.05em}.shm-card-header svg{color:#38bdf8}.shm-segmented-control{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;background:#00000059;padding:.25rem;border-radius:.65rem}.shm-segmented-btn{padding:.5rem;background:transparent;border:none;border-radius:.5rem;color:#94a3b8;font-size:.775rem;font-weight:600;cursor:pointer;transition:all .2s;text-align:center}.shm-segmented-btn.active{background:#0284c7;color:#fff;box-shadow:0 2px 10px #0284c759}.shm-formula-box{background:#00000059;border:1px solid rgba(255,255,255,.06);border-radius:.75rem;padding:.75rem;text-align:center;margin-bottom:.6rem}.shm-formula-main{font-family:"Cambria Math",Times New Roman,serif;font-size:1.15rem;font-weight:700;color:#38bdf8;margin-bottom:.25rem;text-shadow:0 0 12px rgba(56,189,248,.3)}.shm-formula-sub{font-family:"Cambria Math",Times New Roman,serif;font-size:.85rem;color:#94a3b8;margin-bottom:.2rem}.shm-formula-derivatives{display:flex;justify-content:space-around;font-family:"Cambria Math",Times New Roman,serif;font-size:.8rem;color:#cbd5e1;border-top:1px dashed rgba(255,255,255,.1);padding-top:.35rem;margin-top:.35rem}.shm-formula-legend{display:grid;grid-template-columns:1fr 1fr;gap:.25rem .5rem;font-size:.65rem;color:#64748b;line-height:1.3}.shm-telemetry-grid{display:flex;flex-direction:column;gap:.4rem}.shm-telemetry-row{display:flex;justify-content:space-between;align-items:center;font-size:.775rem;padding:.25rem .4rem;border-radius:.4rem;background:#0003}.shm-telemetry-label{color:#94a3b8;font-weight:500}.shm-telemetry-val{font-weight:700;font-family:JetBrains Mono,Fira Code,monospace;color:#fff}.shm-telemetry-val.highlight{color:#38bdf8}.shm-telemetry-val.accent{color:#10b981}.shm-telemetry-val.warning{color:#f59e0b}.shm-telemetry-val.danger{color:#ef4444}.shm-energy-bar-wrap{margin-bottom:.5rem}.shm-energy-bar-labels{display:flex;justify-content:space-between;font-size:.725rem;margin-bottom:.25rem}.shm-progress-track{width:100%;height:6px;background:#0006;border-radius:3px;overflow:hidden}.shm-progress-fill{height:100%;border-radius:3px;transition:width .05s linear}.shm-progress-fill.ek{background:#0284c7;box-shadow:0 0 8px #0284c7}.shm-progress-fill.ep{background:#ef4444;box-shadow:0 0 8px #ef4444}.shm-tips-card{background:linear-gradient(135deg,#1e3a8a40,#0f172a99);border:1px solid rgba(56,189,248,.2);border-radius:1rem;padding:.75rem .9rem;font-size:.725rem;color:#94a3b8;line-height:1.45;display:flex;gap:.6rem;align-items:flex-start}.shm-tips-card svg{color:#f59e0b;flex-shrink:0;margin-top:.1rem}.shm-right-panel{position:absolute;top:4.8rem;bottom:12.8rem;right:1rem;width:300px;z-index:50;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto;overflow-x:hidden;padding-right:.35rem;pointer-events:auto}.shm-slider-group{margin-bottom:.75rem}.shm-slider-group:last-child{margin-bottom:0}.shm-slider-header{display:flex;justify-content:space-between;align-items:center;font-size:.775rem;font-weight:600;color:#cbd5e1;margin-bottom:.35rem}.shm-slider-val{font-family:JetBrains Mono,monospace;font-weight:700;color:#38bdf8;background:#38bdf81a;padding:.15rem .45rem;border-radius:.35rem;border:1px solid rgba(56,189,248,.2);font-size:.725rem}.shm-slider{width:100%;height:5px;background:#1e293b;border-radius:4px;outline:none;-webkit-appearance:none;appearance:none;cursor:pointer}.shm-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:15px;height:15px;border-radius:50%;background:#38bdf8;border:2px solid #ffffff;box-shadow:0 0 10px #38bdf899;cursor:pointer;transition:transform .1s}.shm-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.shm-slider-minmax{display:flex;justify-content:space-between;font-size:.65rem;color:#64748b;margin-top:.2rem}.shm-checkbox-list{display:flex;flex-direction:column;gap:.45rem}.shm-checkbox-item{display:flex;align-items:center;gap:.6rem;font-size:.775rem;color:#cbd5e1;cursor:pointer;padding:.3rem .4rem;border-radius:.4rem;transition:background .15s}.shm-checkbox-item:hover{background:#ffffff0a}.shm-checkbox-item input[type=checkbox]{width:15px;height:15px;accent-color:#0284c7;cursor:pointer}.shm-presets-grid{display:flex;flex-direction:column;gap:.35rem}.shm-preset-btn{display:flex;align-items:center;justify-content:space-between;padding:.45rem .65rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:.5rem;color:#94a3b8;font-size:.725rem;font-weight:600;cursor:pointer;transition:all .2s;text-align:left}.shm-preset-btn:hover{background:#38bdf81a;border-color:#38bdf84d;color:#fff;transform:translate(2px)}.shm-bottom-bar{position:absolute;bottom:.85rem;left:1rem;right:1rem;display:grid;grid-template-columns:1fr 1fr;gap:.85rem;z-index:50;pointer-events:none}.shm-bottom-card{background:#0b1426e6;border:1px solid rgba(255,255,255,.08);border-radius:1.15rem;padding:.75rem 1rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 12px 35px #00000080;display:flex;flex-direction:column;pointer-events:auto;height:11.2rem}.shm-canvas-wrap{flex:1;position:relative;width:100%;min-height:0}.shm-canvas-wrap canvas{width:100%;height:100%;display:block;border-radius:.6rem}.shm-playback-bar{position:absolute;bottom:12.35rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.85rem;background:#0f172ae0;border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;padding:.45rem 1.25rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 10px 30px #00000080;z-index:55;pointer-events:auto}.shm-play-btn{display:flex;align-items:center;gap:.45rem;padding:.45rem 1.1rem;border-radius:.75rem;border:none;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .2s}.shm-play-btn.running{background:#ef444433;border:1px solid #ef4444;color:#ef4444;box-shadow:0 0 15px #ef44444d}.shm-play-btn.paused{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 0 18px #10b98166}.shm-speed-group{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#94a3b8;border-left:1px solid rgba(255,255,255,.1);padding-left:.85rem}.shm-speed-val{font-family:JetBrains Mono,monospace;color:#38bdf8;font-weight:700;min-width:2.5rem}.shm-3d-tag{background:#0b1426e0;border:1px solid rgba(255,255,255,.15);border-radius:.5rem;padding:.25rem .55rem;font-size:.675rem;font-weight:700;color:#cbd5e1;white-space:nowrap;box-shadow:0 4px 15px #00000080;pointer-events:none}.shm-3d-tag.equilibrium{border-color:#38bdf880;color:#38bdf8}.shm-3d-tag.amplitude{border-color:#ef444480;color:#f87171}.shm-3d-hud{position:absolute;top:5.2rem;right:21rem;background:#0f172acc;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;padding:.6rem .85rem;font-size:.725rem;font-family:JetBrains Mono,monospace;color:#cbd5e1;display:flex;flex-direction:column;gap:.25rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none;box-shadow:0 8px 25px #0006}.shm-3d-hud-row{display:flex;gap:.5rem;justify-content:space-between}.shm-3d-hud-row span:last-child{color:#38bdf8;font-weight:700}.shm-challenge-hud{position:absolute;top:4.8rem;left:50%;transform:translate(-50%);width:90%;max-width:540px;z-index:70;pointer-events:auto}.shm-challenge-card{background:#0b1426f0;border:1px solid rgba(245,158,11,.4);border-radius:1.25rem;padding:1.25rem 1.5rem;box-shadow:0 16px 40px #0009,0 0 30px #f59e0b33;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:#e2e8f0}.shm-challenge-card.completed{border-color:#10b98199;box-shadow:0 16px 40px #0009,0 0 35px #10b9814d}.shm-modal-overlay{position:absolute;inset:0;background:#020617d1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:120;display:flex;align-items:center;justify-content:center;padding:1.5rem}.shm-modal-content{background:#0b1426;border:1px solid rgba(56,189,248,.3);border-radius:1.5rem;width:100%;max-width:600px;padding:1.75rem;box-shadow:0 20px 60px #000000b3;color:#e2e8f0}.shm-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:.75rem}.shm-modal-header h2{margin:0;font-size:1.25rem;font-weight:800;color:#fff;display:flex;align-items:center;gap:.5rem}.shm-modal-close{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:.25rem;border-radius:.5rem;transition:all .2s}.shm-modal-close:hover{color:#fff;background:#ffffff1a}.shm-left-panel::-webkit-scrollbar,.shm-right-panel::-webkit-scrollbar{width:4px}.shm-left-panel::-webkit-scrollbar-thumb,.shm-right-panel::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}@media(max-width:1200px){.shm-left-panel,.shm-right-panel{width:250px}.shm-bottom-bar{grid-template-columns:1fr}}.momentum-3d-lab{position:relative;width:100vw;height:100dvh;background:radial-gradient(circle at 50% 20%,#0d1527,#070b14);color:#e2e8f0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;box-sizing:border-box;-webkit-user-select:none;user-select:none}.lab-header{height:58px;min-height:58px;padding:0 1.25rem;display:flex;align-items:center;justify-content:space-between;background:#0d1527d9;border-bottom:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:50;position:sticky;top:0}.lab-header-left{display:flex;align-items:center;gap:.75rem}.header-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#94a3b8;cursor:pointer;transition:all .2s ease}.header-icon-btn:hover{background:#ffffff1f;color:#fff;border-color:#fff3}.mode-nav-pill{display:flex;align-items:center;background:#0a101ecc;border:1px solid rgba(255,255,255,.1);border-radius:9999px;padding:3px 6px;gap:4px}.nav-title{display:flex;align-items:center;gap:6px;padding:0 10px 0 6px;font-weight:600;font-size:.875rem;color:#f1f5f9;border-right:1px solid rgba(255,255,255,.12)}.nav-title-icon{width:18px;height:18px;color:#38bdf8}.mode-tab-btn{display:flex;align-items:center;gap:6px;padding:5px 14px;border-radius:9999px;border:none;background:transparent;color:#94a3b8;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease}.mode-tab-btn:hover{color:#f8fafc;background:#ffffff0d}.mode-tab-btn.active{background:#0284c7;color:#fff;font-weight:600;box-shadow:0 2px 8px #0284c766}.mode-quick-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#94a3b8;cursor:pointer;margin-left:2px;transition:all .2s}.mode-quick-btn:hover{color:#fff;background:#ffffff1a}.lab-header-right{display:flex;align-items:center;gap:8px}.header-action-text-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#cbd5e1;font-size:.6875rem;cursor:pointer;transition:all .2s;min-width:48px;gap:2px}.header-action-text-btn:hover{background:#ffffff1a;color:#fff;border-color:#fff3}.header-action-text-btn.home-btn{background:#ef444426;border-color:#ef444466;color:#fca5a5}.header-action-text-btn.home-btn:hover{background:#ef44444d;color:#fff}.lab-workspace{flex:1;display:grid;grid-template-columns:270px minmax(0,1fr) 290px;gap:12px;padding:12px;min-height:0;box-sizing:border-box}.glass-panel{background:#0f172ab3;border:1px solid rgba(255,255,255,.08);border-radius:12px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 8px 32px #0000005c;display:flex;flex-direction:column;overflow:hidden}.left-panel{padding:14px;gap:14px;overflow-y:auto}.left-panel::-webkit-scrollbar{width:5px}.left-panel::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.panel-header-title{display:flex;align-items:center;gap:8px;font-size:.9375rem;font-weight:700;color:#f8fafc;margin-bottom:2px}.panel-section-title{display:flex;align-items:center;gap:6px;font-size:.8125rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.formula-card{background:#0a0f1d99;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:12px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.formula-main{font-family:Times New Roman,Times,serif;font-size:1.25rem;font-weight:700;color:#f8fafc;letter-spacing:.03em}.formula-sub{font-family:Times New Roman,Times,serif;font-size:.9375rem;color:#cbd5e1}.formula-note{font-size:.6875rem;color:#64748b;margin-top:4px}.collision-type-list{display:flex;flex-direction:column;gap:6px}.collision-btn{padding:10px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#cbd5e1;font-size:.8125rem;font-weight:500;text-align:center;cursor:pointer;transition:all .2s ease}.collision-btn:hover{background:#ffffff14;border-color:#ffffff2e;color:#fff}.collision-btn.active{background:#eab30826;border-color:#eab308;color:#fef08a;font-weight:600;box-shadow:0 0 12px #eab30840}.legend-list{display:flex;flex-direction:column;gap:8px;padding:10px;background:#0a0f1d66;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.legend-row{display:flex;align-items:center;gap:8px;font-size:.75rem;color:#cbd5e1}.legend-indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.legend-indicator.ball-a{background:#ef4444}.legend-indicator.ball-b{background:#3b82f6}.legend-indicator.vector{width:14px;height:3px;background:#10b981;border-radius:2px}.middle-column{display:flex;flex-direction:column;gap:12px;min-height:0;overflow-y:auto;padding-right:4px}.middle-column::-webkit-scrollbar{width:6px}.middle-column::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.viewport-stage{position:relative;height:225px;min-height:220px;border-radius:10px;overflow:hidden;background:radial-gradient(ellipse at bottom,#111a33,#090e1a);border:1px solid rgba(255,255,255,.08)}.canvas-wrapper{position:absolute;inset:0;width:100%;height:100%}.collision-point-overlay{position:absolute;bottom:12px;left:50%;transform:translate(-50%);pointer-events:none;display:flex;flex-direction:column;align-items:center;z-index:10}.collision-point-label{font-size:.6875rem;color:#e2e8f0;background:#0f172ad9;border:1px dashed rgba(255,255,255,.3);padding:2px 10px;border-radius:9999px;letter-spacing:.02em;box-shadow:0 4px 12px #00000080}.momentum-total-badge{position:absolute;top:10px;right:12px;background:#0f172ae0;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:8px 12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;box-shadow:0 6px 24px #00000073;min-width:180px}.total-badge-title{font-size:.75rem;font-weight:700;color:#f8fafc;margin-bottom:4px;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:3px}.total-badge-row{display:flex;justify-content:space-between;font-size:.6875rem;font-family:JetBrains Mono,Roboto Mono,monospace;color:#cbd5e1;margin-bottom:2px}.total-badge-row .val{color:#f8fafc;font-weight:600}.conservation-status-badge{margin-top:4px;font-size:.65rem;font-weight:600;padding:2px 6px;border-radius:4px;display:flex;align-items:center;gap:4px}.conservation-status-badge.conserved{background:#10b98133;color:#34d399;border:1px solid rgba(16,185,129,.35)}.conservation-status-badge.loss{background:#f59e0b33;color:#fbbf24;border:1px solid rgba(245,158,11,.35)}.ball-floating-hud{background:#0f172ae0;border:1.5px solid;border-radius:6px;padding:4px 8px;box-shadow:0 4px 16px #00000080;font-size:.65rem;font-family:JetBrains Mono,Roboto Mono,monospace;min-width:88px;text-align:left;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;transition:transform .1s ease}.ball-floating-hud.ball-a{border-color:#ef4444}.ball-floating-hud.ball-b{border-color:#3b82f6}.hud-ball-title{font-weight:700;font-size:.6875rem;margin-bottom:2px;color:#fff}.hud-val-row{line-height:1.3;color:#94a3b8}.hud-val-row span{color:#f1f5f9;font-weight:600}.dual-tables-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.comparison-table-card{background:#0f172abf;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:8px 10px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.table-card-header{font-size:.75rem;font-weight:600;color:#f1f5f9;margin-bottom:4px;display:flex;align-items:center;justify-content:space-between}.data-table{width:100%;border-collapse:collapse;font-size:.7rem;text-align:center}.data-table th{padding:4px 5px;font-weight:600;color:#94a3b8;border-bottom:1px solid rgba(255,255,255,.1);font-size:.65rem}.data-table td{padding:4px 5px;font-family:JetBrains Mono,Roboto Mono,monospace;color:#e2e8f0;border-bottom:1px solid rgba(255,255,255,.04)}.data-table tr.total-row td{border-top:1px solid rgba(255,255,255,.12);border-bottom:none;font-weight:700;color:#facc15}.benda-col{display:flex;align-items:center;gap:4px;text-align:left;font-family:inherit!important}.benda-dot{width:7px;height:7px;border-radius:50%}.benda-dot.a{background:#ef4444}.benda-dot.b{background:#3b82f6}.triple-graphs-container{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.graph-card{background:#0f172abf;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:4px}.graph-card-header{display:flex;align-items:center;justify-content:space-between;font-size:.7rem;font-weight:600;color:#f1f5f9}.graph-legend-strip{display:flex;align-items:center;gap:6px;font-size:.58rem}.graph-legend-item{display:flex;align-items:center;gap:3px;color:#94a3b8}.legend-line-sample{width:10px;height:2px;border-radius:1px}.graph-canvas-wrapper{position:relative;width:100%;height:95px;background:#0a0f1dbf;border:1px solid rgba(255,255,255,.05);border-radius:6px;overflow:hidden}.graph-canvas{width:100%;height:100%;display:block}.playback-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#0f172ad9;border:1px solid rgba(255,255,255,.1);border-radius:10px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);gap:16px}.playback-controls-left{display:flex;align-items:center;gap:8px}.play-main-btn{display:flex;align-items:center;gap:6px;padding:7px 16px;border-radius:8px;border:none;background:#10b981;color:#fff;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #10b9814d}.play-main-btn:hover{background:#059669;transform:translateY(-1px)}.play-main-btn.paused{background:#0284c7;box-shadow:0 2px 8px #0284c74d}.playback-icon-btn{display:flex;align-items:center;gap:5px;padding:7px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#cbd5e1;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s}.playback-icon-btn:hover{background:#ffffff1f;color:#fff}.playback-speed-control{display:flex;align-items:center;gap:10px;flex:1;max-width:320px}.playback-speed-label{font-size:.75rem;color:#94a3b8;white-space:nowrap}.speed-slider{flex:1;accent-color:#38bdf8;cursor:pointer;height:4px}.speed-value-display{font-family:JetBrains Mono,Roboto Mono,monospace;font-size:.75rem;font-weight:600;color:#38bdf8;min-width:34px}.download-graph-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#cbd5e1;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s}.download-graph-btn:hover{background:#ffffff1a;color:#fff;border-color:#ffffff40}.right-panel{padding:14px;gap:14px;overflow-y:auto}.right-panel::-webkit-scrollbar{width:5px}.right-panel::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.param-group{display:flex;flex-direction:column;gap:6px;background:#0a0f1d66;border:1px solid rgba(255,255,255,.05);border-radius:8px;padding:10px}.param-label-row{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:#cbd5e1}.param-val{font-family:JetBrains Mono,Roboto Mono,monospace;font-weight:600;color:#38bdf8}.param-slider{width:100%;accent-color:#38bdf8;cursor:pointer;height:4px}.param-slider.ball-a{accent-color:#ef4444}.param-slider.ball-b{accent-color:#3b82f6}.param-range-bounds{display:flex;justify-content:space-between;font-size:.625rem;color:#64748b}.collision-select{width:100%;padding:8px 10px;background:#0f172ad9;border:1px solid rgba(255,255,255,.12);border-radius:6px;color:#f1f5f9;font-size:.8125rem;cursor:pointer;outline:none}.collision-select:focus{border-color:#38bdf8}.toggles-group{display:flex;flex-direction:column;gap:8px;padding-top:4px}.toggle-item{display:flex;align-items:center;gap:8px;font-size:.75rem;color:#cbd5e1;cursor:pointer}.toggle-item input[type=checkbox]{accent-color:#0284c7;width:15px;height:15px;cursor:pointer}.challenge-banner-inline{background:#0f172ae6;border:1px solid #0284c7;border-radius:8px;padding:8px 12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;flex-direction:column;gap:4px;box-shadow:0 4px 16px #0006}.challenge-top{display:flex;align-items:center;justify-content:space-between}.challenge-level-badge{font-size:.75rem;font-weight:700;color:#38bdf8;background:#38bdf826;border:1px solid rgba(56,189,248,.3);padding:3px 8px;border-radius:9999px}.challenge-instruction{font-size:.875rem;color:#f8fafc;line-height:1.4;font-weight:500}.challenge-status-bar{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:#94a3b8;padding-top:4px;border-top:1px solid rgba(255,255,255,.08)}.challenge-check-btn{background:#0284c7;border:none;color:#fff;padding:5px 12px;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.challenge-check-btn:hover{background:#0369a1}.learn-modal-backdrop{position:fixed;inset:0;background:#000000d1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:99999;display:flex;align-items:center;justify-content:center;padding:1.5rem}.learn-modal-box{width:min(720px,95vw);max-height:85vh;background:#0f172a;border:1px solid rgba(255,255,255,.15);border-radius:16px;box-shadow:0 20px 50px #000c;display:flex;flex-direction:column;overflow:hidden}.learn-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.1);background:#0f172ae6}.learn-modal-header h3{display:flex;align-items:center;gap:8px;margin:0;font-size:1.125rem;font-weight:700;color:#f8fafc}.learn-modal-body{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.learn-card-section{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:14px}.learn-card-section h4{margin:0 0 6px;color:#38bdf8;font-size:.9375rem;font-weight:600}.learn-card-section p{margin:0;font-size:.8125rem;color:#cbd5e1;line-height:1.5}.presets-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.preset-btn{padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#e2e8f0;font-size:.75rem;font-weight:500;text-align:left;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:2px}.preset-btn:hover{background:#ffffff1a;border-color:#38bdf8}.preset-title{font-weight:600;color:#f8fafc}.preset-desc{font-size:.6875rem;color:#94a3b8}@media(max-width:1200px){.lab-workspace{grid-template-columns:240px 1fr 250px}}@media(max-width:992px){.lab-workspace{display:flex;flex-direction:column;height:auto;overflow-y:auto}.left-panel,.right-panel{width:100%;max-height:none}.viewport-stage{height:280px;min-height:280px}.triple-graphs-container,.dual-tables-grid{grid-template-columns:1fr}}.projectile-lab-container{width:100%;height:100vh;max-height:100vh;background:radial-gradient(circle at 50% 15%,#132238,#080e1a);color:#f1f5f9;display:flex;flex-direction:column;overflow:hidden;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none}.projectile-lab-container span{display:inline;height:auto;line-height:normal}.projectile-header{height:56px;min-height:56px;background:#0d172ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(56,189,248,.15);display:flex;align-items:center;justify-content:space-between;padding:0 16px;z-index:20}.projectile-title-group{display:flex;align-items:center;gap:12px}.projectile-back-btn{width:34px;height:34px;border-radius:8px;background:#1e293bcc;border:1px solid rgba(148,163,184,.2);color:#94a3b8;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.projectile-back-btn:hover{background:#38bdf833;color:#38bdf8;border-color:#38bdf866}.projectile-logo-icon{width:36px;height:36px;border-radius:9px;background:linear-gradient(135deg,#38bdf840,#2563eb59);border:1px solid rgba(56,189,248,.35);display:flex;align-items:center;justify-content:center;color:#38bdf8}.projectile-title-text h1{margin:0;font-size:1.08rem;font-weight:700;letter-spacing:-.01em;color:#fff}.projectile-title-text p{margin:1px 0 0;font-size:.72rem;color:#94a3b8}.projectile-mode-tabs{display:flex;background:#0f172ad9;border:1px solid rgba(148,163,184,.18);border-radius:10px;padding:3px;gap:4px}.mode-tab-btn{display:flex;align-items:center;gap:6px;padding:5px 14px;border-radius:7px;border:none;background:transparent;color:#94a3b8;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease}.mode-tab-btn:hover{color:#fff;background:#ffffff0d}.mode-tab-btn.active{background:#0284c7;color:#fff;box-shadow:0 0 12px #0284c780}.projectile-header-actions{display:flex;align-items:center;gap:6px;margin-right:48px}.action-pill-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:7px;background:#1e293bbf;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s}.action-pill-btn:hover{background:#38bdf826;color:#fff;border-color:#38bdf866}.projectile-workspace{flex:1;display:grid;grid-template-columns:295px 1fr 295px;gap:10px;padding:10px;overflow:hidden;min-height:0}.projectile-side-panel{display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding-right:3px}.projectile-side-panel::-webkit-scrollbar{width:4px}.projectile-side-panel::-webkit-scrollbar-thumb{background:#94a3b833;border-radius:4px}.panel-card{background:#0f192dd1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(56,189,248,.16);border-radius:8px;padding:6px 9px;display:flex;flex-direction:column;gap:4px;box-shadow:0 4px 14px #0000004d}.panel-card-title{font-size:.8rem;font-weight:700;color:#e2e8f0;display:flex;align-items:center;gap:6px;margin:0}.panel-card-title svg{color:#38bdf8}.formula-subtabs{display:flex;background:#1e293b99;border-radius:6px;padding:2px;gap:2px}.formula-subtab-btn{flex:1;padding:3px 5px;border-radius:5px;border:none;background:transparent;color:#94a3b8;font-size:.68rem;font-weight:600;cursor:pointer;transition:all .15s;text-align:center}.formula-subtab-btn.active{background:#0284c7;color:#fff}.formula-box{background:#0a1220e6;border:1px solid rgba(56,189,248,.14);border-radius:6px;padding:4px 7px;display:flex;flex-direction:column;gap:2px}.formula-box h4{margin:0;font-size:.68rem;color:#38bdf8;display:flex;align-items:center;gap:4px}.equation-row{font-family:"Cambria Math",KaTeX_Main,serif,monospace;font-size:.74rem;color:#f8fafc;letter-spacing:.01em;padding:0}.formula-legend{margin-top:2px;padding-top:2px;border-top:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:1fr 1fr;gap:0 4px;font-size:.6rem;color:#94a3b8}.calc-table{display:flex;flex-direction:column;gap:3px}.proj-calc-row{display:flex;align-items:center;justify-content:space-between;font-size:.72rem;padding:3px 6px;border-radius:5px;background:#1e293b73;border:1px solid rgba(255,255,255,.03)}.proj-calc-name{color:#94a3b8}.proj-calc-value{font-weight:700;color:#fff;font-variant-numeric:tabular-nums}.proj-calc-row.highlight-h .proj-calc-value{color:#facc15}.proj-calc-row.highlight-r .proj-calc-value{color:#4ade80}.legend-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 8px;font-size:.68rem;color:#cbd5e1}.legend-item{display:flex;align-items:center;gap:5px;height:auto}.legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.legend-line{width:14px;height:2.5px;border-radius:2px;flex-shrink:0}.legend-arrow{font-weight:700;font-size:.85rem;line-height:1}.projectile-center-area{display:flex;flex-direction:column;gap:8px;min-height:0;overflow:hidden}.projectile-viewport-card{flex:1;min-height:220px;position:relative;background:radial-gradient(ellipse at 50% 20%,#15243d,#060b14);border:1px solid rgba(56,189,248,.2);border-radius:10px;overflow:hidden;box-shadow:inset 0 0 50px #0009}.scene-hud-overlay{position:absolute;top:10px;right:10px;background:#0a121ed9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(56,189,248,.25);border-radius:8px;padding:6px 10px;font-size:.7rem;color:#e2e8f0;display:flex;flex-direction:column;gap:3px;pointer-events:none;z-index:5;min-width:165px}.hud-row{display:flex;justify-content:space-between;gap:10px}.hud-label{color:#94a3b8}.hud-value{font-weight:700;color:#fff;font-variant-numeric:tabular-nums}.gizmo-overlay-widget{position:absolute;top:10px;left:10px;width:48px;height:48px;pointer-events:none;z-index:5}.projectile-graphs-row{height:135px;min-height:135px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.graph-card{background:#0c1424e6;border:1px solid rgba(56,189,248,.15);border-radius:8px;padding:5px 8px;display:flex;flex-direction:column;position:relative;overflow:hidden}.graph-header{display:flex;align-items:center;justify-content:space-between;font-size:.67rem;font-weight:600;color:#cbd5e1;margin-bottom:2px}.graph-header span{display:flex;align-items:center;gap:4px}.graph-legend-inline{display:flex;align-items:center;gap:6px;font-size:.6rem}.graph-canvas{flex:1;width:100%;height:100%;display:block}.projectile-playback-bar{height:44px;min-height:44px;background:#0d172ae6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(56,189,248,.2);border-radius:8px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;gap:14px}.playback-controls-group{display:flex;align-items:center;gap:6px}.btn-launch{display:flex;align-items:center;gap:6px;padding:6px 16px;border-radius:7px;border:none;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.8rem;font-weight:700;cursor:pointer;box-shadow:0 2px 8px #10b98159;transition:all .2s}.btn-launch:hover{background:linear-gradient(135deg,#34d399,#10b981);box-shadow:0 4px 12px #10b98180;transform:translateY(-1px)}.btn-pause{display:flex;align-items:center;gap:5px;padding:6px 12px;border-radius:7px;border:1px solid rgba(148,163,184,.2);background:#1e293bcc;color:#e2e8f0;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-pause:hover{background:#334155e6;color:#fff}.btn-reset{display:flex;align-items:center;gap:5px;padding:6px 10px;border-radius:7px;border:1px solid rgba(148,163,184,.2);background:#1e293b99;color:#cbd5e1;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-reset:hover{background:#ef444433;border-color:#ef444466;color:#f87171}.playback-speed-group{display:flex;align-items:center;gap:8px;font-size:.74rem;color:#94a3b8}.playback-speed-slider{width:120px;accent-color:#38bdf8;cursor:pointer}.speed-badge{font-weight:700;color:#fff;font-variant-numeric:tabular-nums;min-width:28px}.btn-export{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:7px;border:1px solid rgba(56,189,248,.3);background:#0ea5e926;color:#38bdf8;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-export:hover{background:#0ea5e94d;color:#fff}.control-row{display:flex;flex-direction:column;gap:1px;width:100%}.proj-control-label-row{display:flex;justify-content:space-between;align-items:center;width:100%;font-size:.74rem;color:#cbd5e1}.proj-control-val{font-weight:700;color:#38bdf8;font-variant-numeric:tabular-nums}.custom-range-slider{width:100%;accent-color:#0284c7;height:4px;border-radius:2px;background:#1e293bcc;cursor:pointer;margin:1px 0}.slider-scale-legend{display:flex;justify-content:space-between;width:100%;font-size:.62rem;color:#64748b}.target-status-box{padding:6px 8px;border-radius:6px;font-size:.72rem;font-weight:600;display:flex;align-items:center;gap:5px}.target-status-box.hit{background:#10b98133;border:1px solid rgba(16,185,129,.4);color:#34d399}.target-status-box.overshoot{background:#f59e0b26;border:1px solid rgba(245,158,11,.35);color:#fbbf24}.target-status-box.undershoot{background:#ef444426;border:1px solid rgba(239,68,68,.35);color:#f87171}.vis-toggle-list{display:flex;flex-direction:column;gap:5px}.vis-toggle-item{display:flex;align-items:center;gap:7px;font-size:.72rem;color:#cbd5e1;cursor:pointer}.vis-toggle-item input[type=checkbox]{accent-color:#0284c7;width:14px;height:14px;cursor:pointer}.world-3d-tag{background:#0a121ee0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(56,189,248,.4);border-radius:6px;padding:2px 7px;font-size:.7rem;font-weight:700;color:#fff;white-space:nowrap;box-shadow:0 2px 8px #00000080;pointer-events:none;transform:translateZ(0)}.world-3d-tag.apex{border-color:#facc15;color:#fef08a}.world-3d-tag.landing{border-color:#4ade80;color:#bbf7d0}.world-3d-tag.target{background:#b91c1ce6;border-color:#f87171;color:#fff}.world-3d-ruler-tick{font-size:.63rem;color:#94a3b8;font-weight:600;white-space:nowrap;pointer-events:none}.challenge-active-banner{background:linear-gradient(135deg,#2563eb40,#10b98133);border:1px solid rgba(56,189,248,.3);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:5px}.challenge-badge-title{font-size:.76rem;font-weight:700;color:#38bdf8;display:flex;align-items:center;justify-content:space-between}.challenge-prompt-text{font-size:.72rem;color:#f1f5f9;line-height:1.35}.prediction-options{display:flex;flex-direction:column;gap:3px;margin-top:3px}.prediction-btn{padding:5px 8px;border-radius:5px;border:1px solid rgba(148,163,184,.25);background:#1e293b99;color:#cbd5e1;font-size:.7rem;text-align:left;cursor:pointer;transition:all .15s}.prediction-btn:hover{background:#38bdf833;color:#fff;border-color:#38bdf866}.prediction-btn.selected{background:#0284c7;color:#fff;border-color:#38bdf8}.history-table-container{max-height:140px;overflow-y:auto;border:1px solid rgba(255,255,255,.1);border-radius:6px}.history-table{width:100%;border-collapse:collapse;font-size:.65rem}.history-table th{background:#1e293bcc;color:#94a3b8;padding:3px 5px;text-align:center;border-bottom:1px solid rgba(255,255,255,.1)}.history-table td{padding:3px 5px;text-align:center;border-bottom:1px solid rgba(255,255,255,.05);color:#e2e8f0}.history-table tr:hover{background:#38bdf81a}@media(max-width:1200px){.projectile-workspace{grid-template-columns:270px 1fr 270px}}@media(max-width:992px){.projectile-workspace{grid-template-columns:1fr;overflow-y:auto}.projectile-center-area{min-height:380px}}.gas-lab-container{width:100%;height:100vh;max-height:100vh;background:radial-gradient(circle at 50% 20%,#101e35,#080e1a);color:#f1f5f9;display:flex;flex-direction:column;overflow:hidden;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none}.gas-lab-container span{display:inline;height:auto;line-height:normal}.gas-header{height:56px;min-height:56px;background:#0d172ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(56,189,248,.15);display:flex;align-items:center;justify-content:space-between;padding:0 16px;z-index:20}.gas-title-group{display:flex;align-items:center;gap:12px}.gas-back-btn{width:34px;height:34px;border-radius:8px;background:#1e293bcc;border:1px solid rgba(148,163,184,.2);color:#94a3b8;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.gas-back-btn:hover{background:#38bdf833;color:#38bdf8;border-color:#38bdf866}.gas-logo-icon{width:36px;height:36px;border-radius:9px;background:linear-gradient(135deg,#38bdf840,#2563eb59);border:1px solid rgba(56,189,248,.35);display:flex;align-items:center;justify-content:center;color:#38bdf8}.gas-title-text h1{margin:0;font-size:1.08rem;font-weight:700;letter-spacing:-.01em;color:#fff}.gas-title-text p{margin:1px 0 0;font-size:.72rem;color:#94a3b8}.gas-mode-tabs{display:flex;background:#0f172ad9;border:1px solid rgba(148,163,184,.18);border-radius:10px;padding:3px;gap:4px}.gas-mode-btn{display:flex;align-items:center;gap:6px;padding:5px 14px;border-radius:7px;border:none;background:transparent;color:#94a3b8;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease}.gas-mode-btn:hover{color:#fff;background:#ffffff0d}.gas-mode-btn.active{background:#0284c7;color:#fff;box-shadow:0 0 12px #0284c780}.gas-header-actions{display:flex;align-items:center;gap:6px;margin-right:48px}.gas-action-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:7px;background:#1e293bbf;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s}.gas-action-btn:hover{background:#38bdf826;color:#fff;border-color:#38bdf866}.gas-workspace{flex:1;display:grid;grid-template-columns:295px 1fr 295px;gap:10px;padding:10px;overflow:hidden;min-height:0}.gas-side-panel{display:flex;flex-direction:column;gap:6px;overflow-y:auto;padding-right:3px}.gas-side-panel::-webkit-scrollbar{width:4px}.gas-side-panel::-webkit-scrollbar-thumb{background:#94a3b833;border-radius:4px}.gas-panel-card{background:#0f192dd1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(56,189,248,.16);border-radius:8px;padding:6px 9px;display:flex;flex-direction:column;gap:4px;box-shadow:0 4px 14px #0000004d}.gas-card-title{font-size:.78rem;font-weight:700;color:#e2e8f0;display:flex;align-items:center;gap:6px;margin:0}.gas-card-title svg{color:#38bdf8}.law-selector-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.law-pill-btn{padding:4px 2px;border-radius:6px;border:1px solid rgba(56,189,248,.2);background:#1e293b99;color:#94a3b8;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .15s;text-align:center}.law-pill-btn:hover{color:#fff;background:#38bdf826}.law-pill-btn.active{background:#0284c7;border-color:#38bdf8;color:#fff;box-shadow:0 0 10px #0284c766}.gas-formula-box{background:#0a1220e6;border:1px solid rgba(56,189,248,.14);border-radius:6px;padding:5px 8px;display:flex;flex-direction:column;gap:3px}.gas-formula-math{font-family:"Cambria Math",KaTeX_Main,serif,monospace;font-size:.88rem;font-weight:700;color:#fff;text-align:center;letter-spacing:.03em;padding:2px 0}.gas-formula-submath{font-family:"Cambria Math",KaTeX_Main,serif,monospace;font-size:.74rem;color:#38bdf8;text-align:center}.gas-formula-desc{font-size:.66rem;color:#cbd5e1;line-height:1.35;margin-top:2px}.gas-graph-box{background:#0a1220e6;border:1px solid rgba(56,189,248,.14);border-radius:6px;padding:4px;height:125px;position:relative}.gas-graph-header{display:flex;justify-content:space-between;align-items:center;font-size:.64rem;color:#94a3b8;margin-bottom:2px;padding:0 4px}.gas-graph-canvas{width:100%;height:100px;display:block}.gas-calc-table{display:flex;flex-direction:column;gap:2px}.gas-calc-row{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;padding:2.5px 6px;border-radius:5px;background:#1e293b73;border:1px solid rgba(255,255,255,.03)}.gas-calc-row .label{color:#94a3b8}.gas-calc-row .val{font-weight:700;color:#fff;font-variant-numeric:tabular-nums}.gas-calc-row.highlight .val{color:#38bdf8}.gas-center-area{display:flex;flex-direction:column;gap:8px;min-height:0;overflow:hidden}.gas-viewport-card{flex:1;min-height:240px;position:relative;background:radial-gradient(ellipse at 50% 30%,#15243d,#050b14);border:1px solid rgba(56,189,248,.2);border-radius:10px;overflow:hidden;box-shadow:inset 0 0 60px #000000b3}.gas-3d-tag{background:#0a121ee0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(56,189,248,.4);border-radius:6px;padding:3px 8px;font-size:.7rem;font-weight:700;color:#fff;white-space:nowrap;box-shadow:0 2px 8px #0009;pointer-events:none;text-align:center}.gas-3d-tag.pressure{border-color:#ef4444;color:#fca5a5}.gas-3d-tag.temp{border-color:#f59e0b;color:#fde68a}.gas-3d-tag.volume{border-color:#38bdf8;color:#bae6fd}.gas-gauges-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;height:62px;min-height:62px}.gauge-card{background:#0f192dd9;border:1px solid rgba(56,189,248,.16);border-radius:8px;padding:5px 10px;display:flex;flex-direction:column;justify-content:space-between}.gauge-header-row{display:flex;justify-content:space-between;align-items:center;font-size:.72rem}.gauge-title{color:#94a3b8;display:flex;align-items:center;gap:5px}.gauge-title svg{color:#38bdf8}.gauge-value{font-weight:700;color:#fff}.gauge-bar-track{width:100%;height:6px;border-radius:3px;background:#1e293bcc;overflow:hidden;position:relative}.gauge-bar-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#0284c7,#38bdf8);transition:width .2s ease-out}.gauge-bar-fill.warning{background:linear-gradient(90deg,#10b981,#f59e0b 70%,#ef4444)}.gauge-scale-legend{display:flex;justify-content:space-between;font-size:.6rem;color:#64748b}.gas-playback-bar{height:44px;min-height:44px;background:#0d172ae6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(56,189,248,.2);border-radius:8px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;gap:12px}.gas-controls-group{display:flex;align-items:center;gap:6px}.btn-gas-play{display:flex;align-items:center;gap:6px;padding:6px 16px;border-radius:7px;border:none;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.8rem;font-weight:700;cursor:pointer;box-shadow:0 2px 8px #10b98159;transition:all .2s}.btn-gas-play:hover{background:linear-gradient(135deg,#34d399,#10b981);transform:translateY(-1px)}.btn-gas-pause{display:flex;align-items:center;gap:5px;padding:6px 12px;border-radius:7px;border:1px solid rgba(148,163,184,.2);background:#1e293bcc;color:#e2e8f0;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-gas-pause:hover{background:#334155e6;color:#fff}.btn-gas-reset{display:flex;align-items:center;gap:5px;padding:6px 10px;border-radius:7px;border:1px solid rgba(148,163,184,.2);background:#1e293b99;color:#cbd5e1;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-gas-reset:hover{background:#ef444433;border-color:#ef444466;color:#f87171}.gas-speed-group{display:flex;align-items:center;gap:8px;font-size:.74rem;color:#94a3b8}.gas-speed-slider{width:110px;accent-color:#38bdf8;cursor:pointer}.gas-speed-badge{font-weight:700;color:#fff;font-variant-numeric:tabular-nums;min-width:28px}.gas-toolbar-actions{display:flex;align-items:center;gap:6px}.btn-save-data{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:7px;border:1px solid rgba(56,189,248,.3);background:#0ea5e926;color:#38bdf8;font-size:.74rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-save-data:hover{background:#0ea5e94d;color:#fff}.gas-control-row{display:flex;flex-direction:column;gap:1px;width:100%}.gas-control-label-row{display:flex;justify-content:space-between;align-items:center;width:100%;font-size:.72rem;color:#cbd5e1}.gas-control-label-row .val{font-weight:700;color:#38bdf8;font-variant-numeric:tabular-nums}.gas-control-label-row .lock-icon{color:#94a3b8;margin-left:4px}.gas-range-slider{width:100%;accent-color:#0284c7;height:4px;border-radius:2px;background:#1e293bcc;cursor:pointer;margin:1px 0}.gas-range-slider:disabled{opacity:.45;cursor:not-allowed}.gas-scale-legend{display:flex;justify-content:space-between;width:100%;font-size:.62rem;color:#64748b}.gas-derived-output-box{background:#b91c1c2e;border:1px solid rgba(239,68,68,.35);border-radius:6px;padding:6px 8px;display:flex;flex-direction:column;gap:2px}.gas-derived-output-box .top-row{display:flex;justify-content:space-between;align-items:center;font-size:.74rem;font-weight:700;color:#f87171}.gas-derived-output-box .subtext{font-size:.63rem;color:#fca5a5}.gas-mode-note{background:#1e293b80;border-radius:5px;padding:4px 6px;font-size:.65rem;color:#94a3b8;line-height:1.35}.gas-vis-legend-list{display:flex;flex-direction:column;gap:4px}.gas-vis-legend-item{display:flex;align-items:center;gap:7px;font-size:.68rem;color:#cbd5e1}.gas-vis-dot{width:9px;height:9px;border-radius:50%;background:#38bdf8;box-shadow:0 0 6px #38bdf8;flex-shrink:0}.gas-challenge-card{background:linear-gradient(135deg,#2563eb40,#10b98133);border:1px solid rgba(56,189,248,.3);border-radius:8px;padding:7px;display:flex;flex-direction:column;gap:4px}.gas-challenge-title{font-size:.74rem;font-weight:700;color:#38bdf8;display:flex;justify-content:space-between}.gas-challenge-text{font-size:.7rem;color:#f1f5f9;line-height:1.35}.gas-prediction-group{display:flex;flex-direction:column;gap:3px;margin-top:3px}.gas-prediction-btn{padding:4px 8px;border-radius:5px;border:1px solid rgba(148,163,184,.25);background:#1e293b99;color:#cbd5e1;font-size:.68rem;text-align:left;cursor:pointer;transition:all .15s}.gas-prediction-btn:hover{background:#38bdf833;color:#fff}.gas-prediction-btn.selected{background:#0284c7;color:#fff;border-color:#38bdf8}.gas-history-table-container{max-height:140px;overflow-y:auto;border:1px solid rgba(255,255,255,.1);border-radius:6px}.gas-history-table{width:100%;border-collapse:collapse;font-size:.64rem}.gas-history-table th{background:#1e293bcc;color:#94a3b8;padding:3px 5px;text-align:center;border-bottom:1px solid rgba(255,255,255,.1)}.gas-history-table td{padding:3px 5px;text-align:center;border-bottom:1px solid rgba(255,255,255,.05);color:#e2e8f0}.gas-history-table tr:hover{background:#38bdf81a}@media(max-width:1200px){.gas-workspace{grid-template-columns:270px 1fr 270px}}@media(max-width:992px){.gas-workspace{grid-template-columns:1fr;overflow-y:auto}.gas-center-area{min-height:420px}}.doppler-lab-container{display:flex;flex-direction:column;width:100%;height:100vh;height:100dvh;background-color:#060b13;background-image:radial-gradient(circle at 50% 0%,rgba(14,116,144,.12) 0%,transparent 60%),radial-gradient(circle at 100% 100%,rgba(2,132,199,.08) 0%,transparent 50%),linear-gradient(180deg,#070d18,#03070f);color:#e2e8f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none;box-sizing:border-box}.doppler-lab-container *{box-sizing:border-box}.doppler-lab-container span{display:inline;height:auto;line-height:normal}.doppler-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#0a1424d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(56,189,248,.18);z-index:20;min-height:52px}.doppler-header-left{display:flex;align-items:center;gap:12px}.doppler-back-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#1e293bcc;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;cursor:pointer;transition:all .2s ease}.doppler-back-btn:hover{background:#38bdf833;border-color:#38bdf8;color:#fff}.doppler-title-box{display:flex;align-items:center;gap:10px}.doppler-logo-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;background:linear-gradient(135deg,#0284c766,#38bdf81a);border:1px solid rgba(56,189,248,.4);color:#38bdf8}.doppler-title-text h1{margin:0;font-size:1.05rem;font-weight:700;color:#fff;letter-spacing:-.01em}.doppler-title-text p{margin:0;font-size:.68rem;color:#94a3b8}.doppler-mode-tabs{display:flex;align-items:center;background:#0f172ad9;border:1px solid rgba(56,189,248,.25);border-radius:10px;padding:3px;gap:4px}.doppler-tab-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;background:transparent;border:none;border-radius:7px;font-size:.78rem;font-weight:600;color:#94a3b8;cursor:pointer;transition:all .2s ease}.doppler-tab-btn:hover{color:#f8fafc;background:#ffffff0d}.doppler-tab-btn.active{background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;box-shadow:0 2px 8px #0284c766}.doppler-header-actions{display:flex;align-items:center;gap:8px}.doppler-action-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#0f172ab3;border:1px solid rgba(148,163,184,.2);border-radius:8px;font-size:.75rem;font-weight:500;color:#cbd5e1;cursor:pointer;transition:all .2s ease}.doppler-action-btn:hover{background:#38bdf826;border-color:#38bdf866;color:#38bdf8}.doppler-workspace{display:flex;flex:1;min-height:0;padding:8px 12px;gap:12px;overflow:hidden}.doppler-side-panel{width:290px;min-width:280px;max-width:320px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding-right:2px}.doppler-side-panel::-webkit-scrollbar{width:4px}.doppler-side-panel::-webkit-scrollbar-thumb{background:#38bdf833;border-radius:4px}.doppler-panel-card{background:#0b1626d9;border:1px solid rgba(56,189,248,.15);border-radius:10px;padding:10px;box-shadow:0 4px 12px #00000040;display:flex;flex-direction:column;gap:6px}.doppler-card-title{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;color:#f1f5f9;letter-spacing:.02em;border-bottom:1px solid rgba(148,163,184,.1);padding-bottom:5px}.doppler-formula-box{display:flex;flex-direction:column;align-items:center;padding:8px 6px;background:#030a1499;border:1px solid rgba(56,189,248,.2);border-radius:8px;gap:4px}.doppler-formula-math{font-family:"Cambria Math",Times New Roman,serif;font-size:1.15rem;font-weight:700;color:#38bdf8;letter-spacing:.05em;text-shadow:0 0 10px rgba(56,189,248,.4)}.doppler-formula-legend{display:flex;flex-direction:column;gap:2px;width:100%;margin-top:4px;font-size:.68rem;color:#94a3b8}.doppler-formula-legend span{display:flex;justify-content:space-between;line-height:1.3}.doppler-formula-legend strong{color:#cbd5e1}.doppler-calc-table{display:flex;flex-direction:column;gap:3px;font-size:.72rem}.doppler-calc-row{display:flex;justify-content:space-between;align-items:center;padding:3px 6px;border-radius:4px;background:#0f172a66}.doppler-calc-row .label{color:#94a3b8}.doppler-calc-row .val{font-weight:600;color:#f1f5f9;font-family:ui-monospace,monospace}.doppler-calc-row.highlight-blue .val{color:#38bdf8;font-weight:700;font-size:.82rem}.doppler-calc-row.highlight-green .val{color:#10b981;font-weight:700}.doppler-calc-row.highlight-red .val{color:#ef4444;font-weight:700}.doppler-shift-banner{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:8px;border:1px solid;font-size:.72rem;line-height:1.4}.doppler-shift-banner.blue{background:#0284c71f;border-color:#38bdf866;color:#bae6fd}.doppler-shift-banner.blue strong{color:#38bdf8}.doppler-shift-banner.red{background:#ef44441f;border-color:#ef444466;color:#fecaca}.doppler-shift-banner.red strong{color:#ef4444}.doppler-shift-banner.none{background:#64748b1f;border-color:#94a3b84d;color:#cbd5e1}.doppler-center-area{display:flex;flex-direction:column;flex:1;min-width:0;gap:8px;height:100%;overflow:hidden}.doppler-viewport-card{flex:1;min-height:230px;position:relative;background:radial-gradient(ellipse at 50% 30%,#0d1e38,#030812);border:1px solid rgba(56,189,248,.22);border-radius:10px;overflow:hidden;box-shadow:inset 0 0 60px #000c}.doppler-3d-tag{background:#0a121ee6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(56,189,248,.4);border-radius:6px;padding:4px 8px;font-size:.7rem;font-weight:700;color:#fff;white-space:nowrap;box-shadow:0 2px 10px #0009;pointer-events:none;text-align:center}.doppler-3d-tag.blue{background:#022c4eeb;border-color:#38bdf8;color:#e0f2fe}.doppler-3d-tag.red{background:#4f0f0feb;border-color:#ef4444;color:#fee2e2}.doppler-3d-tag.observer{background:#0f172aeb;border-color:#94a3b8;color:#f8fafc}.doppler-3d-tag.distance{background:#0f172ad9;border-color:#f59e0b80;color:#fef3c7;font-size:.68rem}.doppler-graphs-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;height:125px;min-height:125px}.doppler-graph-card{background:#0b1626d9;border:1px solid rgba(56,189,248,.18);border-radius:8px;padding:6px 10px;display:flex;flex-direction:column;overflow:hidden}.doppler-graph-header{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;margin-bottom:2px}.doppler-graph-title{font-weight:700;color:#e2e8f0;display:flex;align-items:center;gap:5px}.doppler-graph-legend{display:flex;align-items:center;gap:4px;font-size:.64rem;color:#94a3b8}.doppler-graph-canvas-box{flex:1;position:relative;width:100%;min-height:0}.doppler-graph-canvas{width:100%;height:100%;display:block}.doppler-playback-toolbar{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#0a1424e6;border:1px solid rgba(56,189,248,.18);border-radius:10px;min-height:44px;gap:10px}.doppler-ctrl-group{display:flex;flex-direction:column;gap:4px;padding:3px 0}.doppler-ctrl-header{display:flex;justify-content:space-between;align-items:center;font-size:.72rem}.doppler-ctrl-label{font-weight:600;color:#e2e8f0}.doppler-ctrl-val{font-family:ui-monospace,monospace;font-weight:700;color:#38bdf8;font-size:.78rem}.doppler-slider-input{width:100%;height:4px;border-radius:2px;background:#1e293b;accent-color:#38bdf8;cursor:pointer;outline:none}.doppler-slider-sublabel{display:flex;justify-content:space-between;font-size:.62rem;color:#64748b}.doppler-options-list{display:flex;flex-direction:column;gap:6px;font-size:.74rem}.doppler-option-item{display:flex;align-items:center;gap:8px;color:#cbd5e1;cursor:pointer}.doppler-option-item input[type=checkbox]{accent-color:#0284c7;width:14px;height:14px;cursor:pointer}.doppler-modal-backdrop{position:fixed;inset:0;background:#030712bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:999}.doppler-modal-content{background:#0d1829;border:1px solid rgba(56,189,248,.3);border-radius:12px;width:90%;max-width:580px;max-height:85vh;overflow-y:auto;padding:18px;box-shadow:0 10px 30px #0009;display:flex;flex-direction:column;gap:14px}.doppler-modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(148,163,184,.15);padding-bottom:8px}.doppler-modal-header h3{margin:0;font-size:1rem;color:#fff;display:flex;align-items:center;gap:8px}.doppler-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;font-size:1.1rem}.doppler-close-btn:hover{color:#fff}.doppler-history-table{width:100%;border-collapse:collapse;font-size:.7rem;margin-top:6px}.doppler-history-table th,.doppler-history-table td{padding:6px 8px;border:1px solid rgba(148,163,184,.15);text-align:center}.doppler-history-table th{background:#0f172ab3;color:#94a3b8;font-weight:600}.doppler-history-table td{color:#e2e8f0}.doppler-history-table tr:hover{background:#38bdf80f}@media(max-width:1200px){.doppler-side-panel{width:250px;min-width:240px}}@media(max-width:900px){.doppler-workspace{flex-direction:column;overflow-y:auto}.doppler-side-panel{width:100%;max-width:none}.doppler-viewport-card{min-height:350px}}.circular-lab-container{display:flex;flex-direction:column;width:100%;height:100vh;height:100dvh;background-color:#060b13;background-image:radial-gradient(circle at 50% 0%,rgba(14,116,144,.12) 0%,transparent 60%),radial-gradient(circle at 100% 100%,rgba(2,132,199,.08) 0%,transparent 50%),linear-gradient(180deg,#070d18,#03070f);color:#e2e8f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none;box-sizing:border-box}.circular-lab-container *{box-sizing:border-box}.circular-lab-container span{display:inline;height:auto;line-height:normal}.circular-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#0a1424d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(56,189,248,.18);z-index:20;min-height:52px}.circular-header-left{display:flex;align-items:center;gap:12px}.circular-back-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#1e293bcc;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;cursor:pointer;transition:all .2s ease}.circular-back-btn:hover{background:#38bdf833;border-color:#38bdf8;color:#fff}.circular-title-box{display:flex;align-items:center;gap:10px}.circular-logo-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;background:linear-gradient(135deg,#0284c766,#38bdf81a);border:1px solid rgba(56,189,248,.4);color:#38bdf8}.circular-title-text h1{margin:0;font-size:1.05rem;font-weight:700;color:#fff;letter-spacing:-.01em}.circular-title-text p{margin:0;font-size:.68rem;color:#94a3b8}.circular-mode-tabs{display:flex;align-items:center;background:#0f172ad9;border:1px solid rgba(56,189,248,.25);border-radius:10px;padding:3px;gap:4px}.circular-tab-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;background:transparent;border:none;border-radius:7px;font-size:.78rem;font-weight:600;color:#94a3b8;cursor:pointer;transition:all .2s ease}.circular-tab-btn:hover{color:#f8fafc;background:#ffffff0d}.circular-tab-btn.active{background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;box-shadow:0 2px 8px #0284c766}.circular-header-actions{display:flex;align-items:center;gap:8px}.circular-action-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#0f172ab3;border:1px solid rgba(148,163,184,.2);border-radius:8px;font-size:.75rem;font-weight:500;color:#cbd5e1;cursor:pointer;transition:all .2s ease}.circular-action-btn:hover{background:#38bdf826;border-color:#38bdf866;color:#38bdf8}.circular-workspace{display:flex;flex:1;min-height:0;padding:8px 12px;gap:12px;overflow:hidden}.circular-side-panel{width:290px;min-width:280px;max-width:320px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding-right:2px}.circular-side-panel::-webkit-scrollbar{width:4px}.circular-side-panel::-webkit-scrollbar-thumb{background:#38bdf833;border-radius:4px}.circular-panel-card{background:#0b1626d9;border:1px solid rgba(56,189,248,.15);border-radius:10px;padding:10px;box-shadow:0 4px 12px #00000040;display:flex;flex-direction:column;gap:6px}.circular-card-title{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;color:#f1f5f9;letter-spacing:.02em;border-bottom:1px solid rgba(148,163,184,.1);padding-bottom:5px}.circular-subtabs{display:flex;gap:4px;background:#0f172a99;padding:2px;border-radius:6px;margin-bottom:4px}.circular-subtab-btn{flex:1;padding:4px 8px;border:none;border-radius:4px;font-size:.7rem;font-weight:600;background:transparent;color:#94a3b8;cursor:pointer;transition:all .2s}.circular-subtab-btn.active{background:#0284c7;color:#fff}.circular-formula-box{display:flex;flex-direction:column;padding:8px;background:#030a1499;border:1px solid rgba(56,189,248,.2);border-radius:8px;gap:6px}.circular-formula-item{display:flex;flex-direction:column;gap:2px}.circular-formula-item .title{font-size:.68rem;color:#94a3b8;font-weight:600}.circular-formula-item .math{font-family:"Cambria Math",Times New Roman,serif;font-size:1.05rem;font-weight:700;color:#38bdf8;letter-spacing:.04em;text-shadow:0 0 10px rgba(56,189,248,.3)}.circular-formula-legend{display:flex;flex-direction:column;gap:2px;width:100%;margin-top:4px;font-size:.66rem;color:#94a3b8;border-top:1px solid rgba(148,163,184,.1);padding-top:4px}.circular-formula-legend span{line-height:1.3}.circular-calc-table{display:flex;flex-direction:column;gap:3px;font-size:.72rem}.circular-calc-row{display:flex;justify-content:space-between;align-items:center;padding:3px 6px;border-radius:4px;background:#0f172a66}.circular-calc-row .label{color:#94a3b8}.circular-calc-row .val{font-weight:600;color:#f1f5f9;font-family:ui-monospace,monospace}.circular-calc-row.highlight-blue .val{color:#38bdf8;font-weight:700}.circular-calc-row.highlight-red .val{color:#ef4444;font-weight:700}.circular-vector-legend{display:flex;flex-direction:column;gap:5px;font-size:.7rem}.circular-vector-item{display:flex;align-items:center;gap:6px;color:#cbd5e1}.circular-vector-dot{width:12px;height:12px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.circular-center-area{display:flex;flex-direction:column;flex:1;min-width:0;gap:8px;height:100%;overflow:hidden}.circular-viewport-card{flex:1;min-height:230px;position:relative;background:radial-gradient(ellipse at 50% 30%,#0d1e38,#030812);border:1px solid rgba(56,189,248,.22);border-radius:10px;overflow:hidden;isolation:isolate;z-index:1;box-shadow:inset 0 0 60px #000c}.circular-hud-box{position:absolute;top:12px;left:12px;background:#0a1424e0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(56,189,248,.35);border-radius:8px;padding:8px 12px;font-size:.74rem;color:#fff;z-index:10;pointer-events:none;box-shadow:0 4px 12px #0006;display:flex;flex-direction:column;gap:4px}.circular-hud-box .hud-row{display:flex;flex-direction:column}.circular-hud-box .hud-label{font-size:.65rem;color:#94a3b8}.circular-hud-box .hud-val{font-family:ui-monospace,monospace;font-weight:700;color:#38bdf8;font-size:.82rem}.circular-3d-tag{background:#0a121ee6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(56,189,248,.4);border-radius:6px;padding:3px 8px;font-size:.7rem;font-weight:700;color:#fff;white-space:nowrap;box-shadow:0 2px 10px #0009;pointer-events:none;text-align:center}.circular-3d-tag.center{background:#1e293bf2;border-color:#f59e0b;color:#fef08a}.circular-3d-tag.radius{background:#0f172ae0;border-color:#38bdf866;color:#e0f2fe;font-size:.68rem}.circular-vector-tag{background:#0a121eeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:5px;padding:2px 6px;font-size:.68rem;font-weight:700;white-space:nowrap;pointer-events:none;text-align:center}.circular-vector-tag.velocity{border:1px solid #22c55e;color:#86efac}.circular-vector-tag.acceleration{border:1px solid #ef4444;color:#fca5a5}.circular-vector-tag.force{border:1px solid #f59e0b;color:#fde68a}.circular-graphs-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;height:125px;min-height:125px}.circular-graph-card{background:#0b1626d9;border:1px solid rgba(56,189,248,.18);border-radius:8px;padding:6px 8px;display:flex;flex-direction:column;overflow:hidden}.circular-graph-header{display:flex;justify-content:space-between;align-items:center;font-size:.68rem;margin-bottom:2px}.circular-graph-title{font-weight:700;color:#e2e8f0;display:flex;align-items:center;gap:4px}.circular-graph-canvas-box{flex:1;position:relative;width:100%;min-height:0}.circular-graph-canvas{width:100%;height:100%;display:block}.circular-playback-toolbar{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#0a1424e6;border:1px solid rgba(56,189,248,.18);border-radius:10px;min-height:44px;gap:10px}.toolbar-left-controls{display:flex;align-items:center;gap:8px}.btn-primary-play{display:flex;align-items:center;gap:6px;padding:6px 14px;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;font-size:.78rem;font-weight:700;color:#fff;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #10b9814d}.btn-primary-play.playing{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 8px #f59e0b4d}.btn-primary-play:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-secondary-tool{display:flex;align-items:center;gap:5px;padding:6px 12px;background:#1e293bb3;border:1px solid rgba(148,163,184,.2);border-radius:6px;font-size:.75rem;font-weight:600;color:#cbd5e1;cursor:pointer;transition:all .2s ease}.btn-secondary-tool:hover{background:#38bdf826;border-color:#38bdf8;color:#fff}.toolbar-speed-box{display:flex;align-items:center;gap:8px;font-size:.72rem;color:#cbd5e1}.toolbar-speed-slider{width:90px;accent-color:#38bdf8;cursor:pointer}.toolbar-right-controls{display:flex;align-items:center;gap:8px}.circular-ctrl-group{display:flex;flex-direction:column;gap:4px;padding:3px 0}.circular-ctrl-header{display:flex;justify-content:space-between;align-items:center;font-size:.72rem}.circular-ctrl-label{font-weight:600;color:#e2e8f0}.circular-ctrl-val{font-family:ui-monospace,monospace;font-weight:700;color:#38bdf8;font-size:.78rem}.circular-slider-input{width:100%;height:4px;border-radius:2px;background:#1e293b;accent-color:#38bdf8;cursor:pointer;outline:none}.circular-slider-sublabel{display:flex;justify-content:space-between;font-size:.62rem;color:#64748b}.circular-options-list{display:flex;flex-direction:column;gap:6px;font-size:.74rem}.circular-option-item{display:flex;align-items:center;gap:8px;color:#cbd5e1;cursor:pointer}.circular-option-item input[type=checkbox]{accent-color:#0284c7;width:14px;height:14px;cursor:pointer}.circular-modal-backdrop{position:fixed;inset:0;background:#030712bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:99999999}.circular-modal-content{background:#0d1829;border:1px solid rgba(56,189,248,.3);border-radius:12px;width:90%;max-width:580px;max-height:85vh;overflow-y:auto;padding:18px;box-shadow:0 10px 30px #0009;display:flex;flex-direction:column;gap:14px}.circular-modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(148,163,184,.15);padding-bottom:8px}.circular-modal-header h3{margin:0;font-size:1rem;color:#fff;display:flex;align-items:center;gap:8px}.circular-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;font-size:1.1rem}.circular-close-btn:hover{color:#fff}.circular-history-table{width:100%;border-collapse:collapse;font-size:.7rem;margin-top:6px}.circular-history-table th,.circular-history-table td{padding:6px 8px;border:1px solid rgba(148,163,184,.15);text-align:center}.circular-history-table th{background:#0f172ab3;color:#94a3b8;font-weight:600}.circular-history-table td{color:#e2e8f0}.circular-history-table tr:hover{background:#38bdf80f}@media(max-width:1200px){.circular-side-panel{width:250px;min-width:240px}}@media(max-width:900px){.circular-workspace{flex-direction:column;overflow-y:auto}.circular-side-panel{width:100%;max-width:none}.circular-viewport-card{min-height:350px}.circular-graphs-row{grid-template-columns:1fr;height:auto}}.buoyancy-lab-container{display:flex;flex-direction:column;width:100%;height:100vh;height:100dvh;background-color:#050b14;background-image:radial-gradient(circle at 50% 0%,rgba(2,132,199,.15) 0%,transparent 60%),radial-gradient(circle at 100% 100%,rgba(14,165,233,.08) 0%,transparent 50%),linear-gradient(180deg,#070e1a,#03070e);color:#e2e8f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none;box-sizing:border-box}.buoyancy-lab-container *{box-sizing:border-box}.buoyancy-lab-container span{display:inline;height:auto;line-height:normal}.buoyancy-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#0a1424e0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(56,189,248,.2);z-index:20;min-height:52px}.buoyancy-header-left{display:flex;align-items:center;gap:12px}.buoyancy-back-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#1e293bcc;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;cursor:pointer;transition:all .2s ease}.buoyancy-back-btn:hover{background:#38bdf833;border-color:#38bdf8;color:#fff}.buoyancy-title-box{display:flex;align-items:center;gap:10px}.buoyancy-logo-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;background:linear-gradient(135deg,#0284c766,#38bdf81a);border:1px solid rgba(56,189,248,.4);color:#38bdf8}.buoyancy-title-text h1{margin:0;font-size:1.05rem;font-weight:700;color:#fff;letter-spacing:-.01em}.buoyancy-title-text p{margin:0;font-size:.68rem;color:#94a3b8}.buoyancy-mode-tabs{display:flex;align-items:center;background:#0f172ad9;border:1px solid rgba(56,189,248,.25);border-radius:10px;padding:3px;gap:4px}.buoyancy-tab-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;border:none;border-radius:7px;background:transparent;color:#94a3b8;font-size:.76rem;font-weight:600;cursor:pointer;transition:all .2s ease}.buoyancy-tab-btn:hover{color:#fff;background:#ffffff0d}.buoyancy-tab-btn.active{background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;box-shadow:0 2px 8px #0284c766}.buoyancy-header-actions{display:flex;align-items:center;gap:6px}.buoyancy-tool-btn{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;background:#1e293bb3;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;font-size:.72rem;font-weight:500;cursor:pointer;transition:all .2s ease}.buoyancy-tool-btn:hover{background:#38bdf826;border-color:#38bdf880;color:#fff}.buoyancy-tool-btn.icon-only{padding:6px 8px}.buoyancy-main-content{display:flex;flex:1;min-height:0;padding:8px 12px;gap:10px;overflow:hidden}.buoyancy-side-panel{width:280px;flex-shrink:0;display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding-right:2px}.buoyancy-side-panel::-webkit-scrollbar{width:4px}.buoyancy-side-panel::-webkit-scrollbar-thumb{background:#38bdf840;border-radius:4px}.buoyancy-panel-card{background:#0b1626e0;border:1px solid rgba(56,189,248,.16);border-radius:10px;padding:10px;box-shadow:0 4px 14px #00000047;display:flex;flex-direction:column;gap:6px}.buoyancy-card-title{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;color:#f1f5f9;letter-spacing:.02em;border-bottom:1px solid rgba(148,163,184,.12);padding-bottom:5px}.buoyancy-formula-box{display:flex;flex-direction:column;padding:8px 10px;background:#030a14a6;border:1px solid rgba(56,189,248,.22);border-radius:8px;gap:6px}.buoyancy-formula-math{font-family:"Cambria Math",Times New Roman,serif;font-size:1.15rem;font-weight:700;color:#38bdf8;letter-spacing:.03em;text-shadow:0 0 10px rgba(56,189,248,.35);text-align:center;padding:4px 0}.buoyancy-formula-legend{display:flex;flex-direction:column;gap:2px;width:100%;font-size:.66rem;color:#94a3b8;border-top:1px solid rgba(148,163,184,.1);padding-top:5px;line-height:1.35}.buoyancy-concept-note{background:#0284c714;border:1px solid rgba(56,189,248,.25);border-radius:8px;padding:8px;font-size:.68rem;line-height:1.4;color:#cbd5e1}.buoyancy-concept-title{display:flex;align-items:center;gap:5px;font-weight:700;color:#fbbf24;margin-bottom:3px;font-size:.72rem}.buoyancy-status-list{display:flex;flex-direction:column;gap:5px}.buoyancy-status-badge{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-radius:8px;background:#0f172a80;border:1px solid rgba(148,163,184,.15);font-size:.74rem;color:#94a3b8;transition:all .2s ease}.buoyancy-status-badge.active-floating{background:#10b98126;border-color:#10b981;color:#34d399;font-weight:700;box-shadow:0 0 12px #10b98140}.buoyancy-status-badge.active-suspended{background:#0284c72e;border-color:#38bdf8;color:#38bdf8;font-weight:700;box-shadow:0 0 12px #38bdf840}.buoyancy-status-badge.active-sinking{background:#ef444426;border-color:#ef4444;color:#f87171;font-weight:700;box-shadow:0 0 12px #ef444440}.buoyancy-status-badge .condition{font-family:ui-monospace,monospace;font-size:.68rem;color:inherit;opacity:.85}.buoyancy-center-area{display:flex;flex-direction:column;flex:1;min-width:0;gap:8px;height:100%;overflow:hidden}.buoyancy-viewport-card{flex:1;min-height:240px;position:relative;background:radial-gradient(ellipse at 50% 30%,#0c1e36,#020710);border:1px solid rgba(56,189,248,.25);border-radius:10px;overflow:hidden;isolation:isolate;z-index:1;box-shadow:inset 0 0 60px #000000d9}.buoyancy-3d-tag{background:#0a121eeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:6px;padding:3px 8px;font-size:.7rem;font-weight:700;color:#fff;white-space:nowrap;box-shadow:0 3px 12px #0009;pointer-events:none;text-align:center}.buoyancy-3d-tag.object-tag{background:#0f172af0;border:1px solid #f59e0b;color:#fef08a}.buoyancy-3d-tag.fluid-tag{background:#0f172ae6;border:1px solid rgba(56,189,248,.4);color:#e0f2fe}.buoyancy-3d-tag.surface-tag{background:#0284c759;border:1px solid #38bdf8;color:#fff;font-size:.66rem;letter-spacing:.02em}.buoyancy-3d-tag.bracket{background:#0f172ad9;border:1px solid rgba(148,163,184,.3);color:#e2e8f0;font-family:ui-monospace,monospace;font-size:.72rem}.buoyancy-force-tag{padding:3px 8px;border-radius:6px;font-size:.72rem;font-weight:700;white-space:nowrap;box-shadow:0 2px 10px #0009;pointer-events:none}.buoyancy-force-tag.buoyancy{background:#064e3beb;border:1px solid #22c55e;color:#86efac}.buoyancy-force-tag.weight{background:#7f1d1deb;border:1px solid #ef4444;color:#fca5a5}.buoyancy-equilibrium-banner{position:absolute;bottom:12px;left:50%;transform:translate(-50%);background:#0a1424eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(56,189,248,.35);border-radius:8px;padding:6px 18px;display:flex;align-items:center;gap:16px;z-index:10;box-shadow:0 4px 16px #00000080;pointer-events:none}.buoyancy-eq-state{display:flex;align-items:center;gap:8px}.buoyancy-eq-state .label{font-size:.66rem;color:#94a3b8}.buoyancy-eq-state .val{font-size:.82rem;font-weight:700;color:#34d399}.buoyancy-eq-state.suspended .val{color:#38bdf8}.buoyancy-eq-state.sinking .val{color:#f87171}.buoyancy-eq-math{display:flex;flex-direction:column;align-items:flex-end;font-size:.68rem;color:#cbd5e1;font-family:ui-monospace,monospace}.buoyancy-eq-math strong{color:#fff;font-size:.74rem}.buoyancy-graphs-row{display:flex;gap:8px;height:125px;flex-shrink:0}.buoyancy-graph-card{flex:1;min-width:0;background:#0a1220eb;border:1px solid rgba(56,189,248,.2);border-radius:8px;padding:6px 8px;display:flex;flex-direction:column;gap:4px;box-shadow:0 2px 10px #00000059}.buoyancy-graph-header{display:flex;align-items:center;justify-content:space-between;font-size:.68rem;font-weight:700;color:#cbd5e1}.buoyancy-graph-header .graph-title{display:flex;align-items:center;gap:5px}.buoyancy-graph-header .graph-unit{font-size:.62rem;color:#64748b;font-family:ui-monospace,monospace}.buoyancy-graph-header .graph-legend{display:flex;gap:6px;font-size:.6rem}.buoyancy-graph-canvas-wrap{flex:1;position:relative;width:100%;min-height:0}.buoyancy-graph-canvas-wrap canvas{position:absolute;top:0;left:0;width:100%!important;height:100%!important;border-radius:4px}.buoyancy-control-group{display:flex;flex-direction:column;gap:6px}.buoyancy-select-wrap{display:flex;flex-direction:column;gap:3px}.buoyancy-select-wrap label{font-size:.68rem;color:#94a3b8;font-weight:600}.buoyancy-select{width:100%;padding:5px 8px;background:#0f172acc;border:1px solid rgba(56,189,248,.25);border-radius:6px;color:#f1f5f9;font-size:.74rem;outline:none;cursor:pointer}.buoyancy-select:focus{border-color:#38bdf8;box-shadow:0 0 8px #38bdf840}.buoyancy-slider-group{display:flex;flex-direction:column;gap:2px}.buoyancy-slider-header{display:flex;justify-content:space-between;align-items:center;font-size:.68rem}.buoyancy-slider-header .label{color:#94a3b8}.buoyancy-slider-header .val{font-weight:700;color:#38bdf8;font-family:ui-monospace,monospace}.buoyancy-slider-input{width:100%;height:4px;accent-color:#0284c7;background:#1e293b;border-radius:2px;cursor:pointer;outline:none}.buoyancy-slider-range{display:flex;justify-content:space-between;font-size:.6rem;color:#64748b}.buoyancy-calc-table{display:flex;flex-direction:column;gap:3px;font-size:.72rem}.buoyancy-calc-row{display:flex;justify-content:space-between;align-items:center;padding:3px 6px;border-radius:4px;background:#0f172a66}.buoyancy-calc-row .label{color:#94a3b8}.buoyancy-calc-row .val{font-weight:600;color:#f1f5f9;font-family:ui-monospace,monospace}.buoyancy-calc-row.highlight-green .val{color:#22c55e;font-weight:700}.buoyancy-calc-row.highlight-red .val{color:#ef4444;font-weight:700}.buoyancy-calc-row.highlight-blue .val{color:#38bdf8;font-weight:700}.buoyancy-bottom-toolbar{display:flex;align-items:center;justify-content:space-between;padding:6px 14px;background:#0a1424eb;border-top:1px solid rgba(56,189,248,.18);z-index:20;min-height:44px;gap:12px}.buoyancy-playback-group{display:flex;align-items:center;gap:6px}.btn-primary-play{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;border:none;font-size:.74rem;font-weight:700;cursor:pointer;background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b98159;transition:all .2s ease}.btn-primary-play:hover{filter:brightness(1.1)}.btn-secondary-pause{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;border:none;font-size:.74rem;font-weight:700;cursor:pointer;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 2px 8px #f59e0b59;transition:all .2s ease}.buoyancy-speed-ctrl{display:flex;align-items:center;gap:8px;font-size:.7rem;color:#cbd5e1}.buoyancy-speed-ctrl input[type=range]{width:80px;accent-color:#38bdf8}.buoyancy-checkbox-group{display:flex;align-items:center;gap:12px}.buoyancy-check-item{display:flex;align-items:center;gap:6px;font-size:.72rem;color:#cbd5e1;cursor:pointer}.buoyancy-check-item input[type=checkbox]{accent-color:#0284c7;width:14px;height:14px;cursor:pointer}.buoyancy-modal-backdrop{position:fixed;inset:0;background:#030712cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:99999999}.buoyancy-modal-content{background:#0b172a;border:1px solid rgba(56,189,248,.35);border-radius:12px;width:90%;max-width:600px;max-height:85vh;overflow-y:auto;padding:18px;box-shadow:0 10px 30px #000000b3;display:flex;flex-direction:column;gap:14px}.buoyancy-modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(148,163,184,.15);padding-bottom:8px}.buoyancy-modal-header h3{margin:0;font-size:1rem;color:#fff;display:flex;align-items:center;gap:8px}.buoyancy-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;font-size:1.1rem}.buoyancy-close-btn:hover{color:#fff}.buoyancy-history-table{width:100%;border-collapse:collapse;font-size:.7rem;margin-top:6px}.buoyancy-history-table th,.buoyancy-history-table td{padding:5px 6px;text-align:center;border-bottom:1px solid rgba(148,163,184,.1)}.buoyancy-history-table th{background:#0f172a99;color:#38bdf8;font-weight:600}.buoyancy-history-table td{color:#cbd5e1;font-family:ui-monospace,monospace}@media(max-width:1100px){.buoyancy-side-panel{width:240px}}@media(max-width:860px){.buoyancy-main-content{flex-direction:column;overflow-y:auto}.buoyancy-side-panel{width:100%;max-height:240px}.buoyancy-viewport-card{min-height:320px}.buoyancy-graphs-row{flex-direction:column;height:auto}.buoyancy-graph-card{height:100px}}.standing-waves-container{display:flex;flex-direction:column;width:100%;height:100vh;max-height:100vh;background:radial-gradient(circle at 50% 20%,#0c182b,#060b14);color:#e2e8f0;font-family:var(--font-sans, system-ui, -apple-system, sans-serif);overflow:hidden;-webkit-user-select:none;user-select:none;box-sizing:border-box}.standing-waves-header{display:flex;align-items:center;justify-content:space-between;padding:8px 18px;background:#0a1220d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(56,189,248,.15);z-index:20;height:56px;box-sizing:border-box}.standing-waves-header-left{display:flex;align-items:center;gap:12px}.standing-waves-back-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:#1e293bb3;border:1px solid rgba(148,163,184,.2);color:#94a3b8;cursor:pointer;transition:all .2s ease}.standing-waves-back-btn:hover{background:#38bdf833;color:#38bdf8;border-color:#38bdf866}.standing-waves-logo-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#ef444433,#f9731633);border:1px solid rgba(239,68,68,.4);color:#f87171}.standing-waves-title-block h1{font-size:1.05rem;font-weight:700;letter-spacing:-.01em;color:#f1f5f9;margin:0;line-height:1.2}.standing-waves-title-block p{font-size:.72rem;color:#94a3b8;margin:0;line-height:1.1}.standing-waves-mode-tabs{display:flex;align-items:center;background:#0f172ae6;border:1px solid rgba(56,189,248,.2);border-radius:9999px;padding:3px;gap:3px}.standing-waves-tab-pill{display:flex;align-items:center;gap:7px;padding:6px 16px;border-radius:9999px;font-size:.8rem;font-weight:600;border:none;background:transparent;color:#94a3b8;cursor:pointer;transition:all .2s ease}.standing-waves-tab-pill:hover{color:#f8fafc}.standing-waves-tab-pill.active{background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;box-shadow:0 0 12px #0284c780}.standing-waves-header-actions{display:flex;align-items:center;gap:8px}.standing-waves-action-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;background:#1e293bb3;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.standing-waves-action-btn:hover{background:#38bdf826;color:#38bdf8;border-color:#38bdf866}.standing-waves-workspace{display:grid;grid-template-columns:280px 1fr 310px;gap:12px;padding:12px 16px;flex:1;min-height:0;overflow:hidden;box-sizing:border-box}.standing-waves-panel-column{display:flex;flex-direction:column;gap:10px;overflow-y:auto;min-height:0;padding-right:2px}.standing-waves-panel-column::-webkit-scrollbar{width:4px}.standing-waves-panel-column::-webkit-scrollbar-thumb{background:#94a3b833;border-radius:4px}.standing-waves-card{background:#0b1626c7;border:1px solid rgba(56,189,248,.16);border-radius:12px;padding:10px 12px;box-shadow:0 4px 20px #0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.standing-waves-card-title{display:flex;align-items:center;gap:7px;font-size:.78rem;font-weight:700;color:#f1f5f9;letter-spacing:.02em;margin-bottom:8px;border-bottom:1px solid rgba(56,189,248,.12);padding-bottom:6px}.standing-waves-card-title svg{color:#38bdf8}.standing-waves-concept-box{margin-bottom:8px}.standing-waves-concept-subhead{display:flex;align-items:center;gap:6px;font-size:.76rem;font-weight:700;color:#38bdf8;margin-bottom:3px}.standing-waves-concept-desc{font-size:.7rem;line-height:1.35;color:#94a3b8;margin-bottom:6px}.standing-waves-formula-box{background:#0f172ad9;border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:8px;text-align:center;margin-bottom:6px}.standing-waves-formula-label{font-size:.67rem;font-weight:600;color:#f87171;margin-bottom:2px}.standing-waves-formula-math{font-family:"Cambria Math",Times New Roman,serif;font-size:.98rem;font-weight:700;color:#fef08a;letter-spacing:.03em;margin:3px 0}.standing-waves-formula-legend{display:flex;flex-direction:column;gap:1px;font-size:.65rem;color:#94a3b8;text-align:left;margin-top:4px;border-top:1px dashed rgba(148,163,184,.15);padding-top:3px}.standing-waves-legend-item{display:flex;gap:6px}.standing-waves-legend-key{font-weight:600;color:#cbd5e1;width:14px}.standing-waves-bullet-list{display:flex;flex-direction:column;gap:6px;margin-top:6px}.standing-waves-bullet-item{display:flex;align-items:flex-start;gap:6px;font-size:.7rem;color:#cbd5e1;line-height:1.35}.standing-waves-bullet-dot{width:6px;height:6px;border-radius:50%;margin-top:4px;flex-shrink:0}.standing-waves-bullet-dot.orange{background:#f97316;box-shadow:0 0 6px #f97316}.standing-waves-bullet-dot.blue{background:#38bdf8;box-shadow:0 0 6px #38bdf8}.standing-waves-center-area{display:flex;flex-direction:column;gap:10px;min-height:0;position:relative;isolation:isolate;z-index:1}.standing-waves-viewport-card{flex:1;min-height:0;background:#0b1626a6;border:1px solid rgba(56,189,248,.18);border-radius:12px;position:relative;overflow:hidden;box-shadow:0 8px 32px #00000080}.standing-waves-canvas-wrapper{position:absolute;inset:0;width:100%;height:100%}.standing-waves-harmonic-badge-3d{position:absolute;top:14px;left:14px;display:flex;flex-direction:column;align-items:flex-start;background:#0f172ad9;border:1px solid rgba(56,189,248,.3);border-radius:10px;padding:8px 14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10}.standing-waves-harmonic-badge-label{display:flex;align-items:center;gap:6px;font-size:.68rem;color:#38bdf8;font-weight:600}.standing-waves-harmonic-badge-val{font-size:1.15rem;font-weight:800;color:#f8fafc;letter-spacing:-.02em}.standing-waves-legend-overlay-3d{position:absolute;top:14px;right:14px;display:flex;flex-direction:column;gap:5px;background:#0f172ad9;border:1px solid rgba(56,189,248,.25);border-radius:8px;padding:8px 12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10}.standing-waves-legend-row{display:flex;align-items:center;gap:8px;font-size:.7rem;color:#cbd5e1}.standing-waves-line-indicator{width:28px;height:2px;border-radius:1px}.standing-waves-line-indicator.incident{border-top:2px dashed #ef4444}.standing-waves-line-indicator.reflected{border-top:2px dashed #38bdf8}.standing-waves-line-indicator.standing{background:#f87171;box-shadow:0 0 6px #ef4444;height:3px}.standing-waves-node-pill{font-size:.62rem;font-weight:700;padding:2px 7px;border-radius:4px;white-space:nowrap;pointer-events:none;background:#ef4444d9;color:#fff;border:1px solid #ef4444;box-shadow:0 0 8px #ef444499}.standing-waves-antinode-pill{font-size:.62rem;font-weight:700;padding:2px 7px;border-radius:4px;white-space:nowrap;pointer-events:none;background:#0284c7d9;color:#fff;border:1px solid #38bdf8;box-shadow:0 0 8px #0284c799}.standing-waves-dim-pill{font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:4px;white-space:nowrap;pointer-events:none;background:#0f172ad9;border:1px solid rgba(255,255,255,.2);color:#f1f5f9}.standing-waves-dim-pill.yellow{color:#facc15;border-color:#facc1566}.standing-waves-graphs-container{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;height:140px;min-height:140px}.standing-waves-graph-card{background:#0b1626d9;border:1px solid rgba(56,189,248,.16);border-radius:10px;padding:6px 10px;display:flex;flex-direction:column;position:relative}.standing-waves-graph-header{display:flex;align-items:center;justify-content:space-between;font-size:.68rem;font-weight:600;color:#94a3b8;margin-bottom:2px}.standing-waves-graph-title-left{display:flex;align-items:center;gap:5px;color:#cbd5e1}.standing-waves-graph-title-left svg{color:#38bdf8}.standing-waves-graph-canvas{flex:1;width:100%;height:100%;border-radius:4px}.standing-waves-harmonic-btn-group{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin-bottom:12px}.standing-waves-harmonic-btn{padding:6px 0;border-radius:6px;background:#1e293b99;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;font-size:.78rem;font-weight:700;cursor:pointer;transition:all .2s ease}.standing-waves-harmonic-btn:hover{background:#38bdf833;border-color:#38bdf866}.standing-waves-harmonic-btn.active{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#f87171;color:#fff;box-shadow:0 0 10px #ef444480}.standing-waves-slider-group{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}.standing-waves-slider-top{display:flex;justify-content:space-between;align-items:center;font-size:.72rem}.standing-waves-slider-label{color:#94a3b8;font-weight:500}.standing-waves-slider-value{color:#f8fafc;font-weight:700;font-feature-settings:"tnum"}.standing-waves-range-input{width:100%;height:4px;border-radius:2px;background:#1e293b;outline:none;accent-color:#ef4444;cursor:pointer}.standing-waves-slider-bounds{display:flex;justify-content:space-between;font-size:.6rem;color:#64748b}.standing-waves-results-grid{display:flex;flex-direction:column;gap:4px}.standing-waves-result-row{display:flex;justify-content:space-between;align-items:center;padding:3px 6px;border-radius:5px;background:#0f172a80;font-size:.7rem}.standing-waves-result-row.highlight{background:#38bdf814;border:1px solid rgba(56,189,248,.2)}.standing-waves-res-label{color:#94a3b8}.standing-waves-res-val{font-weight:700;color:#f1f5f9;font-feature-settings:"tnum"}.standing-waves-res-val.cyan{color:#38bdf8}.standing-waves-res-val.orange{color:#f97316}.standing-waves-bottom-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 18px;background:#0a1220e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid rgba(56,189,248,.15);z-index:20;height:52px;box-sizing:border-box}.standing-waves-bottom-left{display:flex;align-items:center;gap:8px}.standing-waves-btn-run{display:flex;align-items:center;gap:6px;padding:6px 16px;border-radius:8px;background:linear-gradient(135deg,#10b981,#059669);border:1px solid #34d399;color:#fff;font-size:.78rem;font-weight:700;cursor:pointer;box-shadow:0 0 10px #10b98159;transition:all .2s ease}.standing-waves-btn-run:hover{filter:brightness(1.1);transform:translateY(-1px)}.standing-waves-btn-pause{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;background:#1e293bcc;border:1px solid rgba(148,163,184,.25);color:#cbd5e1;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s ease}.standing-waves-btn-pause:hover{background:#38bdf826;color:#38bdf8}.standing-waves-btn-reset{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;background:#1e293bcc;border:1px solid rgba(148,163,184,.25);color:#cbd5e1;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s ease}.standing-waves-btn-reset:hover{background:#ef444426;color:#f87171}.standing-waves-speed-control{display:flex;align-items:center;gap:8px;font-size:.75rem;color:#94a3b8}.standing-waves-speed-slider{width:90px;height:4px;accent-color:#38bdf8;cursor:pointer}.standing-waves-bottom-right{display:flex;align-items:center;gap:14px}.standing-waves-checkbox-label{display:flex;align-items:center;gap:6px;font-size:.73rem;color:#cbd5e1;cursor:pointer;-webkit-user-select:none;user-select:none}.standing-waves-checkbox-label input[type=checkbox]{accent-color:#38bdf8;cursor:pointer;width:14px;height:14px}.standing-waves-modal-backdrop{position:fixed;inset:0;background:#030712bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:99999999;padding:16px}.standing-waves-modal-content{background:#0b1626f2;border:1px solid rgba(56,189,248,.3);border-radius:16px;max-width:580px;width:100%;padding:22px;box-shadow:0 20px 50px #000000b3;display:flex;flex-direction:column;gap:14px;max-height:85vh;overflow-y:auto}.standing-waves-modal-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(56,189,248,.15);padding-bottom:10px}.standing-waves-modal-title{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:700;color:#f1f5f9}.standing-waves-close-btn{background:transparent;border:none;color:#94a3b8;font-size:1.3rem;cursor:pointer;padding:0 4px}.standing-waves-close-btn:hover{color:#f87171}.standing-waves-target-card{background:#38bdf814;border:1px solid rgba(56,189,248,.25);border-radius:8px;padding:10px 14px;font-size:.8rem;font-weight:600;color:#38bdf8}.standing-waves-pred-section{display:flex;flex-direction:column;gap:8px}.standing-waves-pred-question{font-size:.8rem;color:#e2e8f0;line-height:1.4;margin:0}.standing-waves-pred-btn{width:100%;padding:10px 12px;border-radius:8px;background:#1e293b99;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;font-size:.78rem;text-align:left;cursor:pointer;transition:all .2s ease}.standing-waves-pred-btn:hover{background:#38bdf826;border-color:#38bdf866}.standing-waves-pred-btn.selected{background:#38bdf840;border-color:#38bdf8;color:#fff;font-weight:600}.standing-waves-feedback-card{border-radius:8px;padding:12px;font-size:.78rem;line-height:1.4}.standing-waves-feedback-card.correct{background:#10b9811f;border:1px solid rgba(16,185,129,.35);color:#6ee7b7}.standing-waves-feedback-card.incorrect{background:#ef44441f;border:1px solid rgba(239,68,68,.35);color:#fca5a5}.standing-waves-data-table{width:100%;border-collapse:collapse;font-size:.72rem;margin-top:8px}.standing-waves-data-table th{background:#1e293bcc;color:#94a3b8;padding:6px 8px;text-align:center;border-bottom:1px solid rgba(148,163,184,.2)}.standing-waves-data-table td{padding:5px 8px;text-align:center;border-bottom:1px solid rgba(148,163,184,.1);color:#e2e8f0}@media(max-width:1200px){.standing-waves-workspace{grid-template-columns:240px 1fr 270px;gap:8px;padding:8px 10px}.standing-waves-graphs-container{height:120px;min-height:120px}}@media(max-width:992px){.standing-waves-workspace{grid-template-columns:1fr;overflow-y:auto}.standing-waves-viewport-card{height:380px;min-height:380px}.standing-waves-graphs-container{grid-template-columns:1fr;height:auto}.standing-waves-graph-card{height:110px}}.photoelectric-container{display:flex;flex-direction:column;width:100%;height:100vh;max-height:100vh;background:radial-gradient(circle at 50% 15%,#0a192f,#030712);color:#e2e8f0;font-family:var(--font-sans, system-ui, -apple-system, sans-serif);overflow:hidden;-webkit-user-select:none;user-select:none;box-sizing:border-box}.photoelectric-header{display:flex;align-items:center;justify-content:space-between;padding:8px 18px;background:#0a1220d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(56,189,248,.15);z-index:20;height:56px;box-sizing:border-box}.photoelectric-header-left{display:flex;align-items:center;gap:12px}.photoelectric-back-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:#1e293bb3;border:1px solid rgba(148,163,184,.2);color:#94a3b8;cursor:pointer;transition:all .2s ease}.photoelectric-back-btn:hover{background:#38bdf833;color:#38bdf8;border-color:#38bdf866}.photoelectric-logo-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#38bdf833,#0ea5e940);border:1px solid rgba(56,189,248,.4);color:#38bdf8;box-shadow:0 0 12px #38bdf840}.photoelectric-title-block h1{font-size:1.05rem;font-weight:700;letter-spacing:-.01em;color:#f1f5f9;margin:0;line-height:1.2}.photoelectric-title-block p{font-size:.72rem;color:#94a3b8;margin:0;line-height:1.1}.photoelectric-mode-tabs{display:flex;align-items:center;background:#0f172ae6;border:1px solid rgba(56,189,248,.2);border-radius:9999px;padding:3px;gap:3px}.photoelectric-tab-pill{display:flex;align-items:center;gap:7px;padding:6px 16px;border-radius:9999px;font-size:.8rem;font-weight:600;border:none;background:transparent;color:#94a3b8;cursor:pointer;transition:all .2s ease}.photoelectric-tab-pill:hover{color:#f8fafc}.photoelectric-tab-pill.active{background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;box-shadow:0 0 12px #0284c780}.photoelectric-header-actions{display:flex;align-items:center;gap:8px}.photoelectric-action-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;background:#1e293bb3;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.photoelectric-action-btn:hover{background:#38bdf826;color:#38bdf8;border-color:#38bdf866}.photoelectric-workspace{display:grid;grid-template-columns:275px 1fr 315px;gap:12px;padding:10px 16px;flex:1;min-height:0;overflow:hidden;box-sizing:border-box}.photoelectric-panel-column{display:flex;flex-direction:column;gap:8px;overflow-y:auto;min-height:0;padding-right:2px}.photoelectric-panel-column::-webkit-scrollbar{width:4px}.photoelectric-panel-column::-webkit-scrollbar-thumb{background:#94a3b833;border-radius:4px}.photoelectric-card{background:#0b1626c7;border:1px solid rgba(56,189,248,.16);border-radius:12px;padding:10px 12px;box-shadow:0 4px 20px #0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.photoelectric-card-title{display:flex;align-items:center;gap:7px;font-size:.78rem;font-weight:700;color:#f1f5f9;letter-spacing:.02em;margin-bottom:8px;border-bottom:1px solid rgba(56,189,248,.12);padding-bottom:6px}.photoelectric-card-title svg{color:#38bdf8}.photoelectric-concept-desc{font-size:.69rem;line-height:1.35;color:#94a3b8;margin-bottom:8px}.photoelectric-formula-box{background:#0f172ad9;border:1px solid rgba(56,189,248,.25);border-radius:8px;padding:8px 10px;text-align:center;margin-bottom:8px}.photoelectric-formula-label{font-size:.68rem;font-weight:600;color:#38bdf8;margin-bottom:4px}.photoelectric-formula-math{font-family:"Cambria Math",Times New Roman,serif;font-size:1rem;font-weight:700;color:#fef08a;letter-spacing:.02em;margin:3px 0;line-height:1.3}.photoelectric-formula-legend{display:flex;flex-direction:column;gap:1.5px;font-size:.64rem;color:#94a3b8;text-align:left;margin-top:5px;border-top:1px dashed rgba(148,163,184,.15);padding-top:4px}.photoelectric-legend-item{display:flex;gap:5px}.photoelectric-legend-key{font-weight:600;color:#cbd5e1;width:22px;flex-shrink:0}.photoelectric-bullet-list{display:flex;flex-direction:column;gap:5px;margin-top:4px}.photoelectric-bullet-item{display:flex;align-items:flex-start;gap:6px;font-size:.68rem;color:#cbd5e1;line-height:1.3}.photoelectric-bullet-dot{width:5px;height:5px;border-radius:50%;background:#38bdf8;box-shadow:0 0 5px #38bdf8;margin-top:5px;flex-shrink:0}.photoelectric-center-area{display:flex;flex-direction:column;gap:10px;min-height:0;position:relative;isolation:isolate;z-index:1}.photoelectric-viewport-card{flex:1;min-height:0;background:#0b1626a6;border:1px solid rgba(56,189,248,.18);border-radius:12px;position:relative;overflow:hidden;box-shadow:0 8px 32px #00000080}.photoelectric-canvas-wrapper{position:absolute;inset:0;width:100%;height:100%}.photoelectric-status-card-3d{position:absolute;top:12px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;background:#0f172ae0;border-radius:10px;padding:8px 16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;box-shadow:0 4px 20px #00000080;pointer-events:none}.photoelectric-status-card-3d.emitted{border:1px solid rgba(16,185,129,.4);box-shadow:0 0 16px #10b98140}.photoelectric-status-card-3d.no-emission{border:1px solid rgba(239,68,68,.4);box-shadow:0 0 16px #ef444440}.photoelectric-status-text-block{display:flex;flex-direction:column;gap:2px}.photoelectric-status-title{font-size:.82rem;font-weight:700;line-height:1.2}.photoelectric-status-title.green{color:#4ade80}.photoelectric-status-title.red{color:#f87171}.photoelectric-status-detail{font-size:.68rem;color:#cbd5e1;font-feature-settings:"tnum"}.photoelectric-ammeter-hud{position:absolute;bottom:14px;right:14px;display:flex;flex-direction:column;align-items:center;background:#0a0f1ceb;border:1px solid rgba(56,189,248,.35);border-radius:8px;padding:6px 14px;box-shadow:0 0 14px #38bdf833;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;pointer-events:none}.photoelectric-ammeter-display{font-family:Courier New,monospace;font-size:1.15rem;font-weight:800;color:#38bdf8;letter-spacing:.05em;text-shadow:0 0 8px rgba(56,189,248,.7)}.photoelectric-ammeter-label{font-size:.62rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.photoelectric-label-pill{font-size:.65rem;font-weight:700;padding:3px 8px;border-radius:6px;white-space:nowrap;pointer-events:none;background:#0f172ad9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 2px 10px #0009}.photoelectric-label-pill.source{color:#cbd5e1;border:1px solid rgba(148,163,184,.3)}.photoelectric-label-pill.metal{color:#facc15;border:1px solid rgba(250,204,21,.4)}.photoelectric-label-pill.collector{color:#94a3b8;border:1px solid rgba(148,163,184,.3)}.photoelectric-label-pill.photon{color:#c084fc;border:1px solid rgba(192,132,252,.4)}.photoelectric-label-pill.electron{color:#fbbf24;border:1px solid rgba(251,191,36,.4)}.photoelectric-graphs-container{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;height:140px;min-height:140px}.photoelectric-graph-card{background:#0b1626d9;border:1px solid rgba(56,189,248,.16);border-radius:10px;padding:6px 10px;display:flex;flex-direction:column;position:relative}.photoelectric-graph-header{display:flex;align-items:center;justify-content:space-between;font-size:.68rem;font-weight:600;color:#94a3b8;margin-bottom:2px}.photoelectric-graph-title-left{display:flex;align-items:center;gap:5px;color:#cbd5e1}.photoelectric-graph-title-left svg{color:#38bdf8}.photoelectric-graph-canvas{flex:1;width:100%;height:100%;border-radius:4px}.photoelectric-metal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin-bottom:10px}.photoelectric-metal-btn{display:flex;flex-direction:column;align-items:flex-start;padding:6px 8px;border-radius:8px;background:#1e293b8c;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;cursor:pointer;transition:all .2s ease;text-align:left}.photoelectric-metal-btn:hover{background:#38bdf826;border-color:#38bdf866}.photoelectric-metal-btn.active{background:#0ea5e92e;border:1.5px solid #facc15;box-shadow:0 0 10px #facc1559}.photoelectric-metal-btn-name{font-size:.74rem;font-weight:700;color:#f8fafc}.photoelectric-metal-btn-wf{font-size:.63rem;color:#94a3b8;margin-top:1px}.photoelectric-slider-group{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}.photoelectric-slider-top{display:flex;justify-content:space-between;align-items:center;font-size:.72rem}.photoelectric-slider-label{color:#94a3b8;font-weight:500}.photoelectric-slider-value{color:#f8fafc;font-weight:700;font-feature-settings:"tnum"}.photoelectric-range-input{width:100%;height:5px;border-radius:3px;background:#1e293b;outline:none;accent-color:#38bdf8;cursor:pointer}.photoelectric-range-input.rainbow{background:linear-gradient(to right,#7c3aed,#3b82f6 25%,#10b981,#eab308 65%,#ef4444);height:6px}.photoelectric-slider-bounds{display:flex;justify-content:space-between;align-items:center;font-size:.62rem;color:#64748b}.photoelectric-results-grid{display:flex;flex-direction:column;gap:3px}.photoelectric-result-row{display:flex;justify-content:space-between;align-items:center;padding:3px 6px;border-radius:5px;background:#0f172a80;font-size:.69rem}.photoelectric-result-row.highlight{background:#38bdf814;border:1px solid rgba(56,189,248,.2)}.photoelectric-res-label{color:#94a3b8}.photoelectric-res-val{font-weight:700;color:#f1f5f9;font-feature-settings:"tnum"}.photoelectric-res-val.cyan{color:#38bdf8}.photoelectric-res-val.gold{color:#facc15}.photoelectric-res-val.green{color:#4ade80}.photoelectric-bottom-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 18px;background:#0a1220e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid rgba(56,189,248,.15);z-index:20;height:52px;box-sizing:border-box}.photoelectric-bottom-left{display:flex;align-items:center;gap:8px}.photoelectric-btn-run{display:flex;align-items:center;gap:6px;padding:6px 16px;border-radius:8px;background:linear-gradient(135deg,#10b981,#059669);border:1px solid #34d399;color:#fff;font-size:.78rem;font-weight:700;cursor:pointer;box-shadow:0 0 10px #10b98159;transition:all .2s ease}.photoelectric-btn-run:hover{filter:brightness(1.1);transform:translateY(-1px)}.photoelectric-btn-pause{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;background:#1e293bcc;border:1px solid rgba(148,163,184,.25);color:#cbd5e1;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s ease}.photoelectric-btn-pause:hover{background:#38bdf826;color:#38bdf8}.photoelectric-btn-reset{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;background:#1e293bcc;border:1px solid rgba(148,163,184,.25);color:#cbd5e1;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s ease}.photoelectric-btn-reset:hover{background:#ef444426;color:#f87171}.photoelectric-speed-control{display:flex;align-items:center;gap:8px;font-size:.75rem;color:#94a3b8}.photoelectric-speed-slider{width:90px;height:4px;accent-color:#38bdf8;cursor:pointer}.photoelectric-bottom-right{display:flex;align-items:center;gap:14px}.photoelectric-checkbox-label{display:flex;align-items:center;gap:6px;font-size:.72rem;color:#cbd5e1;cursor:pointer;-webkit-user-select:none;user-select:none}.photoelectric-checkbox-label input[type=checkbox]{accent-color:#38bdf8;cursor:pointer;width:14px;height:14px}.photoelectric-modal-backdrop{position:fixed;inset:0;background:#030712bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:99999999;padding:16px}.photoelectric-modal-content{background:#0b1626f2;border:1px solid rgba(56,189,248,.3);border-radius:16px;max-width:580px;width:100%;padding:22px;box-shadow:0 20px 50px #000000b3;display:flex;flex-direction:column;gap:14px;max-height:85vh;overflow-y:auto}.photoelectric-modal-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(56,189,248,.15);padding-bottom:10px}.photoelectric-modal-title{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:700;color:#f1f5f9}.photoelectric-close-btn{background:transparent;border:none;color:#94a3b8;font-size:1.3rem;cursor:pointer;padding:0 4px}.photoelectric-close-btn:hover{color:#f87171}.photoelectric-target-card{background:#38bdf814;border:1px solid rgba(56,189,248,.25);border-radius:8px;padding:10px 14px;font-size:.8rem;font-weight:600;color:#38bdf8}.photoelectric-pred-section{display:flex;flex-direction:column;gap:8px}.photoelectric-pred-question{font-size:.8rem;color:#e2e8f0;line-height:1.4;margin:0}.photoelectric-pred-btn{width:100%;padding:10px 12px;border-radius:8px;background:#1e293b99;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;font-size:.78rem;text-align:left;cursor:pointer;transition:all .2s ease}.photoelectric-pred-btn:hover{background:#38bdf826;border-color:#38bdf866}.photoelectric-pred-btn.selected{background:#38bdf840;border-color:#38bdf8;color:#fff;font-weight:600}.photoelectric-feedback-card{border-radius:8px;padding:12px;font-size:.78rem;line-height:1.4}.photoelectric-feedback-card.correct{background:#10b9811f;border:1px solid rgba(16,185,129,.35);color:#6ee7b7}.photoelectric-feedback-card.incorrect{background:#ef44441f;border:1px solid rgba(239,68,68,.35);color:#fca5a5}.photoelectric-data-table{width:100%;border-collapse:collapse;font-size:.71rem;margin-top:8px}.photoelectric-data-table th{background:#1e293bcc;color:#94a3b8;padding:6px 8px;text-align:center;border-bottom:1px solid rgba(148,163,184,.2)}.photoelectric-data-table td{padding:5px 8px;text-align:center;border-bottom:1px solid rgba(148,163,184,.1);color:#e2e8f0}@media(max-width:1200px){.photoelectric-workspace{grid-template-columns:240px 1fr 275px;gap:8px;padding:8px 10px}.photoelectric-graphs-container{height:120px;min-height:120px}}@media(max-width:992px){.photoelectric-workspace{grid-template-columns:1fr;overflow-y:auto}.photoelectric-viewport-card{height:380px;min-height:380px}.photoelectric-graphs-container{grid-template-columns:1fr;height:auto}.photoelectric-graph-card{height:110px}}.heat-transfer-container{display:flex;flex-direction:column;width:100%;height:100vh;max-height:100vh;background:radial-gradient(circle at 50% 15%,#0d1b2a,#030712);color:#e2e8f0;font-family:var(--font-sans, system-ui, -apple-system, sans-serif);overflow:hidden;-webkit-user-select:none;user-select:none;box-sizing:border-box}.heat-transfer-header{display:flex;align-items:center;justify-content:space-between;padding:8px 18px;background:#0d1b2ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(243,156,18,.2);z-index:20;height:56px;box-sizing:border-box}.heat-transfer-header-left{display:flex;align-items:center;gap:12px}.heat-transfer-back-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:#1e293bb3;border:1px solid rgba(148,163,184,.2);color:#94a3b8;cursor:pointer;transition:all .2s ease}.heat-transfer-back-btn:hover{background:#f39c1233;color:#f39c12;border-color:#f39c1266}.heat-transfer-logo-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#e74c3c40,#f39c124d);border:1px solid rgba(243,156,18,.5);color:#e67e22;box-shadow:0 0 12px #f39c124d}.heat-transfer-title-block h1{font-size:1.05rem;font-weight:700;letter-spacing:-.01em;color:#f1f5f9;margin:0;line-height:1.2}.heat-transfer-title-block p{font-size:.72rem;color:#94a3b8;margin:0;line-height:1.1}.heat-transfer-mode-tabs{display:flex;align-items:center;background:#0f172ae6;border:1px solid rgba(243,156,18,.25);border-radius:9999px;padding:3px;gap:3px}.heat-transfer-tab-pill{display:flex;align-items:center;gap:7px;padding:6px 16px;border-radius:9999px;font-size:.8rem;font-weight:600;border:none;background:transparent;color:#94a3b8;cursor:pointer;transition:all .2s ease}.heat-transfer-tab-pill:hover{color:#f8fafc}.heat-transfer-tab-pill.active{background:linear-gradient(135deg,#d35400,#e67e22);color:#fff;box-shadow:0 0 12px #e67e2280}.heat-transfer-header-actions{display:flex;align-items:center;gap:8px}.heat-transfer-action-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;background:#1e293bb3;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.heat-transfer-action-btn:hover{background:#f39c1226;color:#f39c12;border-color:#f39c1266}.heat-transfer-workspace{display:grid;grid-template-columns:275px 1fr 315px;gap:12px;padding:10px 16px;flex:1;min-height:0;overflow:hidden;box-sizing:border-box}.heat-transfer-panel-column{display:flex;flex-direction:column;gap:8px;overflow-y:auto;min-height:0;padding-right:2px}.heat-transfer-panel-column::-webkit-scrollbar{width:4px}.heat-transfer-panel-column::-webkit-scrollbar-thumb{background:#94a3b833;border-radius:2px}.heat-card{background:#0f172abf;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(243,156,18,.18);border-radius:12px;padding:12px 14px;box-shadow:0 4px 16px #00000059;box-sizing:border-box}.heat-card-header{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:700;color:#f8fafc;margin-bottom:8px}.heat-card-header svg{color:#e67e22}.heat-concept-card p{font-size:.73rem;color:#94a3b8;line-height:1.4;margin:0 0 8px}.heat-formula-box{background:#e67e2214;border:1px dashed rgba(243,156,18,.35);border-radius:8px;padding:8px 10px;margin-bottom:8px}.heat-formula-title{font-size:.68rem;font-weight:600;color:#f39c12;margin-bottom:4px;display:flex;align-items:center;gap:5px}.heat-formula-math{font-family:"Cambria Math",KaTeX_Math,Times New Roman,serif;font-size:1.05rem;font-weight:700;color:#f1f5f9;text-align:center;margin:3px 0 6px;letter-spacing:.02em}.heat-variables-grid{display:grid;grid-template-columns:1fr;gap:3px;font-size:.68rem;color:#cbd5e1}.heat-var-row{display:flex;align-items:center;gap:6px}.heat-var-symbol{font-weight:700;color:#f39c12;width:22px}.heat-mechanism-badges{display:flex;flex-direction:column;gap:6px}.heat-mech-item{display:flex;align-items:flex-start;gap:10px;background:#1e293b73;border:1px solid rgba(148,163,184,.15);border-radius:8px;padding:8px;transition:all .2s ease}.heat-mech-item.active{border-color:#f39c1280;background:#f39c121a}.heat-mech-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;flex-shrink:0;font-size:.95rem}.heat-mech-icon.cond{background:#e74c3c33;color:#e74c3c}.heat-mech-icon.conv{background:#3498db33;color:#3498db}.heat-mech-icon.rad{background:#f1c40f33;color:#f1c40f}.heat-mech-text h5{font-size:.75rem;font-weight:700;color:#f1f5f9;margin:0 0 2px}.heat-mech-text p{font-size:.68rem;color:#94a3b8;margin:0;line-height:1.3}.heat-observe-list{display:flex;flex-direction:column;gap:5px;font-size:.69rem;color:#cbd5e1}.heat-observe-item{display:flex;align-items:flex-start;gap:6px;line-height:1.3}.heat-observe-dot{color:#e67e22;font-weight:700}.heat-transfer-center-column{display:flex;flex-direction:column;gap:10px;min-height:0;flex:1}.heat-viewport-card{position:relative;flex:1;background:#000;border:1px solid rgba(243,156,18,.2);border-radius:12px;overflow:hidden;box-shadow:inset 0 0 40px #000c,0 8px 24px #00000080;min-height:340px;isolation:isolate;z-index:1}.heat-viewport-canvas-wrap{width:100%;height:100%;position:absolute;top:0;left:0;z-index:0}.heat-viewport-top-hud{position:absolute;top:12px;left:16px;right:16px;display:flex;justify-content:space-between;align-items:flex-start;z-index:10;pointer-events:none}.heat-title-badge{background:#0f172ad9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(243,156,18,.3);border-radius:8px;padding:6px 12px}.heat-title-badge h3{margin:0;font-size:.84rem;font-weight:700;color:#f8fafc}.heat-title-badge p{margin:2px 0 0;font-size:.68rem;color:#94a3b8}.heat-timer-badge{background:#0f172ad9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(56,189,248,.3);border-radius:8px;padding:6px 12px;font-family:Roboto Mono,monospace;font-size:.78rem;font-weight:700;color:#38bdf8;display:flex;align-items:center;gap:6px}.heat-3d-source-tag{background:#e74c3ce6;color:#fff;padding:4px 8px;border-radius:6px;font-size:.7rem;font-weight:700;border:1px solid rgba(255,255,255,.4);box-shadow:0 0 10px #e74c3c99;white-space:nowrap;pointer-events:none}.heat-3d-cooler-tag{background:#3498dbe6;color:#fff;padding:4px 8px;border-radius:6px;font-size:.7rem;font-weight:700;border:1px solid rgba(255,255,255,.4);box-shadow:0 0 10px #3498db99;white-space:nowrap;pointer-events:none}.heat-3d-rod-tag{background:#0f172ad9;color:#f39c12;padding:3px 7px;border-radius:5px;font-size:.65rem;font-weight:600;border:1px solid rgba(243,156,18,.4);white-space:nowrap;pointer-events:none}.heat-bottom-graphs-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;height:145px;flex-shrink:0}.heat-graph-card{background:#0f172ad9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(243,156,18,.2);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}.heat-graph-header{display:flex;align-items:center;justify-content:space-between;font-size:.72rem;font-weight:700;color:#f1f5f9;margin-bottom:4px}.heat-graph-header svg{color:#f39c12}.heat-graph-canvas-wrap{flex:1;position:relative;width:100%;min-height:0}.heat-graph-canvas-wrap canvas{width:100%!important;height:100%!important;display:block}.heat-particle-obs-content{display:flex;flex-direction:column;gap:4px;height:100%}.heat-obs-legend{display:flex;flex-direction:column;gap:3px;font-size:.65rem;color:#cbd5e1}.heat-obs-legend-item{display:flex;align-items:center;gap:6px}.heat-obs-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.heat-obs-dot.hot{background:#e74c3c;box-shadow:0 0 6px #e74c3c}.heat-obs-dot.mid{background:#f1c40f;box-shadow:0 0 6px #f1c40f}.heat-obs-dot.cold{background:#3498db;box-shadow:0 0 6px #3498db}.heat-particle-matrix-preview{flex:1;background:#0006;border:1px solid rgba(255,255,255,.08);border-radius:6px;display:flex;align-items:center;justify-content:space-around;padding:4px 6px;overflow:hidden}.heat-matrix-col{display:flex;flex-direction:column;gap:4px;align-items:center}.heat-matrix-particle{width:7px;height:7px;border-radius:50%;transition:transform .05s ease-out}.heat-control-group{margin-bottom:10px}.heat-control-label{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;font-weight:600;color:#cbd5e1;margin-bottom:4px}.heat-control-val{font-family:Roboto Mono,monospace;font-weight:700;color:#f39c12;font-size:.75rem}.heat-mode-selector-grid{display:grid;grid-template-columns:1fr;gap:6px;margin-bottom:10px}.heat-mode-btn{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:8px;background:#1e293b99;border:1px solid rgba(148,163,184,.2);color:#e2e8f0;cursor:pointer;transition:all .2s ease}.heat-mode-btn-content{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700}.heat-mode-subtext{font-size:.68rem;color:#94a3b8}.heat-mode-btn:hover{background:#f39c1226;border-color:#f39c1266}.heat-mode-btn.active{border-color:#e67e22;background:linear-gradient(90deg,#e67e2240,#f39c121a);box-shadow:0 0 10px #e67e224d}.heat-mode-btn.active .heat-mode-subtext{color:#f39c12}.heat-material-pills{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:8px}.heat-mat-pill{padding:5px 6px;border-radius:6px;background:#1e293b80;border:1px solid rgba(148,163,184,.2);color:#cbd5e1;font-size:.68rem;font-weight:600;text-align:center;cursor:pointer;transition:all .15s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.heat-mat-pill:hover{background:#f39c1226;color:#f8fafc}.heat-mat-pill.active{background:#e67e224d;border-color:#f39c12;color:#fff;box-shadow:0 0 8px #f39c1259}.heat-slider-track{width:100%;height:5px;border-radius:3px;background:#334155cc;outline:none;-webkit-appearance:none;cursor:pointer}.heat-slider-track::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#f39c12;box-shadow:0 0 6px #f39c12;cursor:pointer;border:2px solid #ffffff;transition:transform .1s}.heat-slider-track::-webkit-slider-thumb:hover{transform:scale(1.2)}.heat-slider-limits{display:flex;justify-content:space-between;font-size:.64rem;color:#64748b;margin-top:2px}.heat-results-table{display:flex;flex-direction:column;gap:5px}.heat-res-row{display:flex;justify-content:space-between;align-items:center;padding:4px 6px;border-radius:4px;background:#1e293b4d;font-size:.7rem}.heat-res-label{color:#94a3b8}.heat-res-value{font-family:Roboto Mono,monospace;font-weight:700;color:#f1f5f9}.heat-res-value.highlight{color:#f39c12}.heat-res-value.green{color:#10b981}.heat-playbar{display:flex;align-items:center;justify-content:space-between;padding:8px 18px;background:#0d1b2ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid rgba(243,156,18,.2);z-index:20;height:52px;box-sizing:border-box}.heat-playbar-left{display:flex;align-items:center;gap:10px}.heat-play-btn{display:flex;align-items:center;gap:6px;padding:7px 16px;border-radius:8px;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .2s ease;border:none}.heat-play-btn.play{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 0 12px #10b98166}.heat-play-btn.pause{background:linear-gradient(135deg,#e67e22,#d35400);color:#fff;box-shadow:0 0 12px #e67e2266}.heat-reset-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;background:#1e293bcc;border:1px solid rgba(148,163,184,.25);color:#cbd5e1;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s ease}.heat-reset-btn:hover{background:#f39c1233;color:#f39c12;border-color:#f39c1266}.heat-playbar-center{display:flex;align-items:center;gap:12px}.heat-speed-label{font-size:.74rem;font-weight:600;color:#94a3b8}.heat-speed-slider{width:100px}.heat-speed-val{font-family:Roboto Mono,monospace;font-size:.74rem;font-weight:700;color:#f39c12;min-width:32px}.heat-playbar-right{display:flex;align-items:center;gap:16px}.heat-toggle-label{display:flex;align-items:center;gap:6px;font-size:.72rem;color:#cbd5e1;cursor:pointer}.heat-toggle-label input[type=checkbox]{accent-color:#f39c12;cursor:pointer}.heat-modal-overlay{position:fixed;inset:0;background:#030712cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:99999999;display:flex;align-items:center;justify-content:center;padding:16px}.heat-modal-content{background:#0f172a;border:1px solid rgba(243,156,18,.35);border-radius:16px;width:100%;max-width:580px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 16px 40px #000c,0 0 30px #f39c1233}.heat-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid rgba(148,163,184,.15)}.heat-modal-header h3{margin:0;font-size:.95rem;color:#f8fafc;display:flex;align-items:center;gap:8px}.heat-modal-close{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px}.heat-modal-close:hover{color:#fff;background:#ffffff1a}.heat-modal-body{padding:18px;overflow-y:auto}@media(max-width:1080px){.heat-transfer-workspace{grid-template-columns:240px 1fr 270px}}@media(max-width:850px){.heat-transfer-workspace{grid-template-columns:1fr;overflow-y:auto}.heat-bottom-graphs-grid{grid-template-columns:1fr;height:auto}.heat-graph-card{height:120px}}:root{--fs3d-bg: #060b18;--fs3d-panel-bg: rgba(10, 20, 40, .88);--fs3d-panel-border: rgba(0, 229, 255, .18);--fs3d-card-bg: rgba(15, 25, 50, .65);--fs3d-card-border: rgba(255, 255, 255, .08);--fs3d-cyan: #00e5ff;--fs3d-blue: #38bdf8;--fs3d-green: #10b981;--fs3d-amber: #f59e0b;--fs3d-red: #ef4444;--fs3d-purple: #c084fc;--fs3d-text-main: #f8fafc;--fs3d-text-sub: #94a3b8}.fs3d-simulation-root{position:relative;width:100%;height:100vh;height:100dvh;background:var(--fs3d-bg);overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--fs3d-text-main);-webkit-user-select:none;user-select:none}.fs3d-header{position:absolute;top:0;left:0;right:0;height:64px;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:linear-gradient(180deg,rgba(6,11,24,.95) 0%,rgba(6,11,24,.7) 80%,transparent 100%);pointer-events:auto}.fs3d-header-left{display:flex;align-items:center;gap:14px}.fs3d-icon-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:#0f172abf;border:1px solid var(--fs3d-panel-border);color:#e2e8f0;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.fs3d-icon-btn:hover{background:#00e5ff26;border-color:var(--fs3d-cyan);color:#fff;box-shadow:0 0 14px #00e5ff59}.fs3d-home-btn{background:#ef4444;border-color:#f87171;color:#fff}.fs3d-home-btn:hover{background:#dc2626;border-color:#ef4444;box-shadow:0 0 16px #ef444473}.fs3d-title-group{display:flex;flex-direction:column;gap:1px}.fs3d-title-row{display:flex;align-items:center;gap:8px}.fs3d-title-icon{color:var(--fs3d-cyan)}.fs3d-title{font-size:19px;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#fff 30%,#a5f3fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0}.fs3d-subtitle{font-size:11px;color:var(--fs3d-text-sub);margin:0;max-width:440px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fs3d-nav-tabs{display:flex;align-items:center;background:#0f172ad9;padding:3px;border-radius:12px;border:1px solid var(--fs3d-panel-border);gap:2px}.fs3d-tab-btn{display:flex;align-items:center;gap:7px;padding:7px 16px;border-radius:9px;border:none;background:transparent;color:var(--fs3d-text-sub);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.fs3d-tab-btn:hover{color:#fff}.fs3d-tab-btn.active{background:#00e5ff2e;color:#fff;box-shadow:0 0 16px #00e5ff4d;border:1px solid rgba(0,229,255,.4)}.fs3d-header-right{display:flex;align-items:center;gap:10px}.fs3d-action-btn{display:flex;align-items:center;gap:7px;padding:7px 14px;border-radius:10px;background:#0f172abf;border:1px solid var(--fs3d-panel-border);color:#e2e8f0;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .2s ease}.fs3d-action-btn:hover{background:#00e5ff26;border-color:var(--fs3d-cyan);color:#fff;box-shadow:0 0 12px #00e5ff4d}.fs3d-action-btn.active-mode{background:#10b98133;border-color:#10b981;color:#6ee7b7}.fs3d-canvas-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;overflow:hidden}.fs3d-canvas-container canvas{width:100%!important;height:100%!important;display:block;outline:none}.fs3d-panel{position:absolute;top:72px;bottom:24px;width:295px;z-index:40;background:var(--fs3d-panel-bg);border:1px solid var(--fs3d-panel-border);border-radius:16px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 16px 40px #000000a6;display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1);pointer-events:auto}.fs3d-left-panel{left:18px}.fs3d-left-panel.collapsed{transform:translate(-315px)}.fs3d-right-panel{right:18px}.fs3d-right-panel.collapsed{transform:translate(315px)}.fs3d-panel-toggle{position:absolute;top:50%;transform:translateY(-50%);width:22px;height:48px;background:#0f172af2;border:1px solid var(--fs3d-panel-border);color:#cbd5e1;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:45;transition:all .2s ease}.fs3d-panel-toggle.left{right:-23px;border-radius:0 8px 8px 0;border-left:none}.fs3d-panel-toggle.right{left:-23px;border-radius:8px 0 0 8px;border-right:none}.fs3d-panel-toggle:hover{background:#00e5ff33;color:#fff}.fs3d-panel-scroll{padding:10px;overflow-y:auto;display:flex;flex-direction:column;gap:9px;height:100%}.fs3d-panel-scroll::-webkit-scrollbar{width:4px}.fs3d-panel-scroll::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.fs3d-card{background:var(--fs3d-card-bg);border:1px solid var(--fs3d-card-border);border-radius:12px;padding:9px 11px}.fs3d-card-title{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:#fff;margin-bottom:8px;letter-spacing:-.01em}.fs3d-grid-2x2{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.fs3d-material-btn,.fs3d-fluid-btn{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:10px;background:#0f172ab3;border:1px solid rgba(255,255,255,.08);color:#cbd5e1;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.fs3d-material-btn:hover,.fs3d-fluid-btn:hover{background:#ffffff0d;border-color:#fff3;color:#fff}.fs3d-material-btn.active,.fs3d-fluid-btn.active{background:#00e5ff26;border-color:var(--fs3d-cyan);color:#fff;box-shadow:0 0 14px #00e5ff47}.fs3d-mat-cube-icon{position:relative;width:18px;height:18px}.fs3d-mat-cube-icon .cube-face{position:absolute;width:14px;height:14px;border-radius:2px}.mat-wood .cube-face{background:#b45309}.mat-metal .cube-face{background:#94a3b8}.mat-plastic .cube-face{background:#f1f5f9}.mat-cork .cube-face{background:#d97706}.fs3d-sliders-group{display:flex;flex-direction:column;gap:10px}.fs3d-slider-item{display:flex;flex-direction:column;gap:4px}.fs3d-slider-label-row{display:flex;justify-content:space-between;align-items:center;font-size:11.5px}.fs3d-param-name{color:var(--fs3d-text-sub)}.fs3d-param-val{color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.fs3d-range-slider{width:100%;height:5px;border-radius:3px;appearance:none;background:#ffffff26;outline:none;cursor:pointer}.fs3d-range-slider::-webkit-slider-thumb{appearance:none;width:15px;height:15px;border-radius:50%;background:#00e5ff;cursor:pointer;box-shadow:0 0 8px #00e5ff;transition:transform .15s ease}.fs3d-range-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.fs3d-range-slider.cyan-track::-webkit-slider-thumb{background:#38bdf8;box-shadow:0 0 10px #38bdf8}.fs3d-range-slider.blue-track::-webkit-slider-thumb{background:#00e5ff;box-shadow:0 0 10px #00e5ff}.fs3d-density-control{margin-top:6px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08)}.fs3d-metrics-list{display:flex;flex-direction:column;gap:7px}.fs3d-metric-row{display:flex;align-items:center;justify-content:space-between;font-size:12px;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.05)}.fs3d-metric-row:last-child{border-bottom:none}.fs3d-metric-name{color:var(--fs3d-text-sub)}.fs3d-metric-val{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.fs3d-status-banner{border-radius:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.1)}.fs3d-status-banner.state-terapung{background:#10b9811f;border-color:#10b98166}.fs3d-status-banner.state-melayang{background:#f59e0b1f;border-color:#f59e0b66}.fs3d-status-banner.state-tenggelam{background:#ef44441f;border-color:#ef444466}.fs3d-status-header{display:flex;align-items:center;gap:10px;margin-bottom:4px}.fs3d-status-tag{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--fs3d-text-sub)}.fs3d-status-title{font-size:14px;font-weight:800;margin:0;color:#fff}.fs3d-status-desc{font-size:11px;color:#cbd5e1;line-height:1.4;margin:0}.fs3d-bar-chart-container{display:flex;align-items:flex-end;gap:12px;height:95px;padding-top:10px}.fs3d-chart-axis-y{display:flex;flex-direction:column;justify-content:space-between;height:72px;font-size:9.5px;color:#64748b;font-family:ui-monospace,SFMono-Regular,monospace}.fs3d-chart-bars-wrap{flex:1;display:flex;justify-content:space-around;align-items:flex-end;height:100%}.fs3d-bar-col{display:flex;flex-direction:column;align-items:center;gap:4px;width:60px;height:100%;justify-content:flex-end}.fs3d-bar-val-badge{font-size:10.5px;font-weight:700;font-family:ui-monospace,SFMono-Regular,monospace}.fs3d-bar{width:44px;border-radius:6px 6px 0 0;transition:height .3s cubic-bezier(.4,0,.2,1)}.fs3d-bar.red-bar{background:linear-gradient(180deg,#ef4444,#b91c1c);box-shadow:0 0 12px #ef444466}.fs3d-bar.cyan-bar{background:linear-gradient(180deg,#00e5ff,#0284c7);box-shadow:0 0 12px #00e5ff66}.fs3d-bar-label{font-size:10px;color:var(--fs3d-text-sub);white-space:nowrap}.fs3d-formula-list{display:flex;flex-direction:column;gap:8px}.fs3d-formula-item{display:flex;flex-direction:column;gap:2px}.fs3d-formula-label{font-size:10.5px;color:#94a3b8}.fs3d-math-code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:600;color:#a5f3fc;background:#00e5ff14;padding:3px 6px;border-radius:6px;border-left:2px solid var(--fs3d-cyan)}.fs3d-bottom-pressure-wrapper{position:absolute;bottom:18px;left:50%;transform:translate(-50%);z-index:35;pointer-events:auto}.fs3d-bottom-pressure-card{width:600px;background:var(--fs3d-panel-bg);border:1px solid var(--fs3d-panel-border);border-radius:14px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 14px 35px #0009;padding:10px 14px}.fs3d-pressure-header{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:#fff;margin-bottom:8px}.fs3d-pressure-body{display:flex;align-items:center;gap:16px}.fs3d-pressure-metrics{display:flex;flex-direction:column;gap:5px;flex:1.2}.fs3d-pmetric-item{display:flex;flex-direction:column;gap:1px}.fs3d-pmetric-label{font-size:10.5px;color:#94a3b8}.fs3d-pmetric-value{font-size:13px;font-weight:800;font-family:ui-monospace,SFMono-Regular,monospace}.fs3d-tank-cross-section{position:relative;width:130px;height:85px;border:1px solid rgba(0,229,255,.4);border-radius:6px;background:linear-gradient(180deg,#0284c7,#1e1b4b);overflow:hidden}.fs3d-tank-water-surface .water-line{position:absolute;top:10px;left:0;right:0;height:2px;background:#38bdf8;box-shadow:0 0 6px #38bdf8}.fs3d-cross-block{position:absolute;left:35px;width:48px;background:#c27838;border:1px solid #ffffff;border-radius:3px;display:flex;align-items:center;justify-content:center;transition:top .2s ease}.fs3d-cross-block-label{font-size:8px;font-weight:700;color:#fff}.fs3d-cross-depth-guide{position:absolute;top:10px;bottom:6px;left:18px;width:8px}.guide-line{position:absolute;top:0;bottom:0;left:3px;width:2px;background:#fff;opacity:.6}.fs3d-pressure-scale-wrap{flex:1;display:flex;flex-direction:column;gap:6px}.fs3d-pressure-note{font-size:10.5px;color:#cbd5e1;line-height:1.35;margin:0}.fs3d-colorbar-container{display:flex;flex-direction:column;gap:2px}.fs3d-colorbar-title{font-size:9.5px;color:#94a3b8}.fs3d-colorbar-visual{display:flex;align-items:center;gap:6px}.colorbar-gradient{flex:1;height:10px;border-radius:4px;background:linear-gradient(90deg,#38bdf8,#0284c7 40%,#7c3aed)}.colorbar-num{font-size:9.5px;color:#a5f3fc;font-family:ui-monospace,SFMono-Regular,monospace}.fs3d-force-badge{background:#0f172aeb;border:1.5px solid;padding:3px 8px;border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:1px;box-shadow:0 4px 14px #00000080;white-space:nowrap}.fs3d-force-badge.weight-badge{border-color:#ef4444;color:#fca5a5}.fs3d-force-badge.buoyancy-badge{border-color:var(--fs3d-cyan);color:#67e8f9}.fs3d-force-badge .badge-name{font-size:10px;font-weight:700}.fs3d-force-badge .badge-val{font-size:11.5px;font-weight:800;font-family:ui-monospace,SFMono-Regular,monospace}.fs3d-depth-guide-box{background:#0f172ae0;border:1px solid rgba(255,255,255,.3);padding:2px 7px;border-radius:6px;display:flex;flex-direction:column;align-items:center;white-space:nowrap}.fs3d-depth-guide-box .depth-title{font-size:9px;color:#cbd5e1}.fs3d-depth-guide-box .depth-number{font-size:11px;font-weight:800;color:#fff;font-family:ui-monospace,SFMono-Regular,monospace}.fs3d-ruler-tick-num{font-size:10px;font-weight:700;color:#a5f3fc;font-family:ui-monospace,SFMono-Regular,monospace;text-shadow:0 0 6px rgba(0,229,255,.6)}.fs3d-view-toggles-card{background:#0a1428d9;border:1px solid var(--fs3d-panel-border);border-radius:10px;padding:8px 12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;flex-direction:column;gap:6px;box-shadow:0 8px 24px #00000080}.fs3d-view-toggles-card .toggles-header{font-size:11px;font-weight:700;color:#fff;margin-bottom:2px}.fs3d-view-toggles-card .toggle-item{display:flex;align-items:center;gap:7px;font-size:11px;color:#cbd5e1;cursor:pointer}.fs3d-view-toggles-card .toggle-item input{accent-color:#00e5ff;cursor:pointer}.fs3d-pascal-p-badge{background:#0f172aeb;border:1px solid #eab308;color:#fde047;padding:3px 9px;border-radius:8px;font-size:11px;font-weight:800;font-family:ui-monospace,SFMono-Regular,monospace;box-shadow:0 0 10px #eab30859;white-space:nowrap}.fs3d-modal-backdrop{position:fixed;inset:0;z-index:100;background:#020617d1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px}.fs3d-modal-card{width:100%;max-width:820px;max-height:86vh;background:#0a142af2;border:1px solid var(--fs3d-panel-border);border-radius:18px;box-shadow:0 25px 60px #000c,0 0 30px #00e5ff26;display:flex;flex-direction:column;overflow:hidden}.fs3d-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.fs3d-modal-header-title{display:flex;align-items:center;gap:12px}.fs3d-modal-header-title h3{margin:0;font-size:17px;font-weight:800;color:#fff}.fs3d-modal-header-title p{margin:0;font-size:12px;color:var(--fs3d-text-sub)}.fs3d-modal-close-btn{background:#ffffff14;border:none;color:#94a3b8;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.fs3d-modal-close-btn:hover{background:#ef444433;color:#ef4444}.fs3d-modal-body{display:flex;flex:1;overflow:hidden}.fs3d-challenge-list{width:250px;border-right:1px solid rgba(255,255,255,.08);padding:12px;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.fs3d-challenge-tab-btn{display:flex;flex-direction:column;align-items:flex-start;padding:9px 12px;border-radius:10px;background:transparent;border:1px solid transparent;cursor:pointer;text-align:left;transition:all .2s ease}.fs3d-challenge-tab-btn:hover{background:#ffffff0d}.fs3d-challenge-tab-btn.active{background:#00e5ff26;border-color:#00e5ff59}.fs3d-challenge-tab-btn .tab-num{font-size:10px;color:var(--fs3d-cyan);font-weight:700;text-transform:uppercase}.fs3d-challenge-tab-btn .tab-title{font-size:12px;font-weight:600;color:#f8fafc}.fs3d-challenge-detail{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.detail-title{font-size:18px;font-weight:800;margin:0;color:#fff}.detail-goal{font-size:13.5px;color:#e2e8f0;line-height:1.5;margin:0}.detail-hint-box{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:10px;padding:10px 14px}.hint-header{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#fbbf24;margin-bottom:4px}.hint-text{font-size:12px;color:#cbd5e1;margin:0;line-height:1.45}.detail-live-status{background:#0f172ab3;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px}.live-status-title{font-size:11px;font-weight:700;color:#94a3b8;text-transform:uppercase;display:block;margin-bottom:8px}.live-metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:12px;margin-bottom:12px}.live-metrics-grid .lbl{color:#94a3b8;margin-right:6px}.live-metrics-grid .val{color:#fff;font-family:ui-monospace,SFMono-Regular,monospace}.status-badge-result{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:600}.status-badge-result.success{background:#10b98126;border:1px solid #10b981;color:#6ee7b7}.status-badge-result.pending{background:#f59e0b26;border:1px solid #f59e0b;color:#fde047}.detail-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:8px}.action-load-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#e2e8f0;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.action-load-btn:hover{background:#ffffff26;color:#fff}.action-sim-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;background:var(--fs3d-cyan);border:none;color:#04101e;font-size:12.5px;font-weight:700;cursor:pointer;box-shadow:0 0 16px #00e5ff66;transition:all .15s ease}.action-sim-btn:hover{background:#38bdf8;box-shadow:0 0 20px #38bdf899}.fs3d-theory-card{background:#0f172ab3;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 14px}.theory-header{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:#fff;margin-bottom:6px}.theory-text{font-size:12.5px;color:#cbd5e1;line-height:1.5;margin:0}.fs3d-theory-formula-card{background:#00e5ff14;border:1px solid rgba(0,229,255,.3);border-radius:12px;padding:12px 14px}.formula-tag{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--fs3d-cyan);font-weight:700;margin-bottom:4px}.formula-math{font-size:15px;font-weight:800;color:#fff;font-family:ui-monospace,SFMono-Regular,monospace;margin-bottom:4px}.formula-desc{font-size:11.5px;color:#94a3b8;margin:0}@media(max-width:1200px){.fs3d-panel{width:260px}.fs3d-left-panel.collapsed{transform:translate(-280px)}.fs3d-right-panel.collapsed{transform:translate(280px)}.fs3d-bottom-pressure-card{width:500px}}@media(max-width:900px){.fs3d-bottom-pressure-wrapper,.fs3d-subtitle{display:none}}
