:root{--bg: #f0f2f5;--surface: #ffffff;--surface-hover: #f5f7fa;--border: #e0e4ea;--border-bright: #90b4e8;--primary: #1565c0;--primary-d: #0d47a1;--primary-light: #e3eaf6;--accent: #e65100;--accent2: #f57c00;--green: #2e7d32;--green-bg: #e8f5e9;--red: #c62828;--red-bg: #ffebee;--text: #1a1a2e;--muted: #6b7280;--formula-bg: #e8f0fe;--formula-border: #90b4e8;--shadow: 0 1px 4px rgba(0,0,0,.1), 0 0 0 1px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(0,0,0,.1);--radius: 12px}[data-theme=dark]{--bg: #0f1117;--surface: #161a24;--surface-hover: #1e2335;--border: #252b3d;--border-bright: #3d5a9e;--primary: #5b8cdd;--primary-d: #4a7fd4;--primary-light: #1a2a4a;--accent: #ff7043;--accent2: #ffa040;--green: #66bb6a;--green-bg: #0d1f0d;--red: #ef5350;--red-bg: #1f0d0d;--text: #e0e4f0;--muted: #7a8499;--formula-bg: #1a2240;--formula-border: #2d4080;--shadow: 0 1px 4px rgba(0,0,0,.5), 0 0 0 1px rgba(0,0,0,.3);--shadow-md: 0 4px 16px rgba(0,0,0,.6)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;font-size:clamp(14px,2vw,16px);line-height:1.65;min-height:100vh}#root{min-height:100vh}.header{position:sticky;top:0;z-index:100;background:var(--surface);border-bottom:1px solid var(--border);padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;height:56px;box-shadow:0 1px 3px #00000014}.header-brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.05rem;color:var(--primary);white-space:nowrap}.header-brand span{color:var(--accent)}.header-controls{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.lang-toggle{display:flex;gap:4px;background:var(--bg);border-radius:20px;padding:3px;border:1px solid var(--border)}.lang-btn{padding:4px 14px;border:none;border-radius:20px;cursor:pointer;font-size:.82rem;font-weight:600;font-family:inherit;transition:all .2s;color:var(--muted);background:transparent}.lang-btn.active{background:var(--primary);color:#fff}.theme-btn{background:transparent;border:1px solid var(--border);border-radius:20px;width:34px;height:30px;cursor:pointer;font-size:1rem;line-height:1;transition:background .2s,border-color .2s;display:flex;align-items:center;justify-content:center}.theme-btn:hover{background:var(--primary-light);border-color:var(--primary)}.nav{background:var(--surface);border-bottom:1px solid var(--border);padding:.55rem 1rem;display:flex;gap:.4rem;overflow-x:auto;scrollbar-width:none;position:sticky;top:56px;z-index:99;flex-wrap:nowrap}.nav::-webkit-scrollbar{display:none}.nav-btn{flex:0 0 auto;background:var(--surface);border:1.5px solid var(--border);border-radius:20px;padding:.4rem 1rem;color:var(--muted);font-size:.86rem;font-weight:500;font-family:inherit;cursor:pointer;white-space:nowrap;transition:all .15s;display:flex;align-items:center;gap:.35rem}.nav-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.nav-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}main{position:relative;max-width:860px;margin:0 auto;padding:2rem 1.25rem 4rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.25rem;box-shadow:var(--shadow)}.card-accent{border-left:3px solid var(--primary)}.card h2{font-size:1.2rem;font-weight:700;color:var(--primary);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.card h3{font-size:.97rem;font-weight:700;color:var(--accent);margin:1.25rem 0 .5rem;text-transform:uppercase;letter-spacing:.03em;font-size:.82rem}.card p{margin-bottom:.75rem;color:var(--text)}.card p:last-child{margin-bottom:0}.formula{background:var(--formula-bg);border:1px solid var(--formula-border);border-radius:8px;padding:.65rem 1rem;margin:.6rem 0;font-family:JetBrains Mono,Courier New,monospace;font-size:1rem;color:var(--primary);overflow-x:auto;white-space:nowrap}.formula.highlight{background:#fff3e0;border-color:#ffb74d;color:#e65100;font-size:1.15rem;text-align:center;font-weight:600}[data-theme=dark] .formula.highlight{background:#2e1800;border-color:#7a3000;color:#ff8a50}.info-box{border-radius:8px;padding:.7rem 1rem;margin:.75rem 0;font-size:.92rem;display:flex;gap:.6rem;align-items:flex-start}.info-box.tip{background:var(--green-bg);border:1px solid #a5d6a7;color:var(--green)}[data-theme=dark] .info-box.tip{border-color:#2d5a2d}.info-box.warn{background:#fff8e1;border:1px solid #ffe082;color:#f57f17}[data-theme=dark] .info-box.warn{background:#1f1a00;border-color:#5a4a00;color:#ffd54f}.info-box.example{background:#fce4ec;border:1px solid #f48fb1;color:#880e4f}[data-theme=dark] .info-box.example{background:#1f0a14;border-color:#5a1a35;color:#f48fb1}.info-box.physics{background:#f3e5f5;border:1px solid #ce93d8;color:#6a1b9a}[data-theme=dark] .info-box.physics{background:#14091f;border-color:#3d1560;color:#ce93d8}.info-box-icon{font-size:1.1rem;flex-shrink:0;margin-top:1px}.sim-card{background:var(--surface);border:1.5px solid var(--border-bright);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.25rem;box-shadow:var(--shadow-md)}.sim-card h2{font-size:1.05rem;font-weight:700;color:var(--primary);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.ctrl-row{display:grid;grid-template-columns:165px 1fr 90px;align-items:center;gap:.6rem;margin-bottom:.6rem}.ctrl-label{font-size:.87rem;color:var(--muted)}.ctrl-value{font-family:JetBrains Mono,monospace;font-size:.9rem;font-weight:700;color:var(--primary);text-align:right}input[type=range]{width:100%;height:5px;border-radius:3px;outline:none;cursor:pointer;accent-color:var(--primary)}.readouts{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.5rem;margin-top:.75rem}.readout{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.5rem .75rem}.readout-label{font-size:.74rem;color:var(--muted);display:block;margin-bottom:2px;text-transform:uppercase;letter-spacing:.04em}.readout-value{font-family:JetBrains Mono,monospace;font-size:1rem;font-weight:700;color:var(--primary)}.sim-svg{width:100%;height:auto;display:block;border-radius:8px;margin:.75rem 0;border:1px solid var(--border);background:var(--bg)}.quiz-card{background:var(--surface);border:1.5px solid var(--border-bright);border-radius:var(--radius);padding:1.5rem;margin-top:1.5rem;box-shadow:var(--shadow)}.quiz-title{font-size:1.05rem;font-weight:700;color:var(--primary);margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem}.quiz-question{font-weight:600;margin-bottom:.75rem;font-size:.97rem;line-height:1.55;color:var(--text)}.quiz-options{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1rem}.quiz-option{background:var(--surface);border:1.5px solid var(--border);border-radius:8px;padding:.6rem 1rem;cursor:pointer;font-size:.9rem;font-family:inherit;color:var(--text);text-align:left;transition:all .15s;line-height:1.45}.quiz-option:hover:not(:disabled){border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.quiz-option.correct{border-color:var(--green);background:var(--green-bg);color:var(--green);font-weight:600}.quiz-option.wrong{border-color:var(--red);background:var(--red-bg);color:var(--red)}.quiz-option:disabled{cursor:default}.quiz-explanation{font-size:.88rem;color:var(--primary);background:var(--formula-bg);border:1px solid var(--formula-border);border-radius:8px;padding:.65rem .85rem;margin-top:.5rem;line-height:1.55}.quiz-nav{display:flex;align-items:center;justify-content:space-between;margin-top:1rem}.quiz-progress{font-size:.82rem;color:var(--muted)}.btn{background:var(--primary);color:#fff;border:none;border-radius:8px;padding:.5rem 1.2rem;font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.btn:hover{background:var(--primary-d)}.btn:disabled{opacity:.4;cursor:default}.btn-ghost{background:transparent;color:var(--primary);border:1.5px solid var(--border-bright)}.btn-ghost:hover{background:var(--primary-light)}.quiz-score{text-align:center;padding:1.5rem}.quiz-score-num{font-size:3rem;font-weight:700;color:var(--primary);line-height:1;margin-bottom:.5rem}.quiz-score-msg{color:var(--muted);font-size:.95rem}.home-hero{text-align:center;padding:2.5rem 1rem 1.5rem}.home-hero h1{font-size:clamp(1.8rem,5vw,3rem);font-weight:800;line-height:1.15;margin-bottom:.75rem;color:var(--primary)}.home-hero p{font-size:1.05rem;color:var(--muted);max-width:540px;margin:0 auto 1.5rem;line-height:1.65}.home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:.75rem;margin-top:1rem}.home-card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);padding:1.25rem;cursor:pointer;text-align:left;font-family:inherit;color:var(--text);transition:all .15s;box-shadow:var(--shadow)}.home-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.home-card-icon{font-size:2rem;display:block;margin-bottom:.5rem}.home-card-title{font-weight:700;color:var(--primary);display:block;margin-bottom:.2rem;font-size:.97rem}.home-card-sub{color:var(--muted);font-size:.83rem}.transform-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:.75rem;margin:1rem 0}.transform-card{border-radius:10px;padding:1rem;border:1.5px solid var(--border);background:var(--bg)}.transform-card h4{font-size:.95rem;font-weight:700;margin-bottom:.5rem}.transform-row{display:flex;justify-content:space-between;font-size:.82rem;margin-bottom:.3rem;gap:.5rem}.transform-key{color:var(--muted)}.transform-val{font-family:JetBrains Mono,monospace;font-weight:600;color:var(--text)}.seg-control{display:flex;gap:4px;background:var(--bg);border:1px solid var(--border);border-radius:20px;padding:4px;margin-bottom:1rem;flex-wrap:wrap}.seg-btn{flex:1;min-width:80px;background:transparent;border:none;border-radius:16px;padding:.4rem .6rem;font-size:.83rem;font-weight:500;font-family:inherit;color:var(--muted);cursor:pointer;transition:all .15s;white-space:nowrap}.seg-btn.active{background:var(--primary);color:#fff;font-weight:600}.section-enter{animation:fadeIn .25s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 600px){main{padding:1rem .75rem 3rem}.card{padding:1.1rem}.ctrl-row{grid-template-columns:100px 1fr 65px}.home-hero{padding:1.5rem .5rem 1rem}}
