/* ===== CSS VARIABLES & THEME ===== */
:root{--font:Inter,system-ui,sans-serif;--mono:'JetBrains Mono',monospace;--radius:16px;--radius-sm:10px;--transition:0.3s cubic-bezier(.4,0,.2,1)}

/* ===== CUSTOM SCROLLBAR ===== */
::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--surface2);border-radius:8px}
::-webkit-scrollbar-thumb:hover{background:var(--primary)}
::selection{background:rgba(99,102,241,.3);color:var(--text)}
[data-theme="dark"]{--bg:#06060f;--bg2:#0a0a1a;--surface:rgba(255,255,255,.04);--surface2:rgba(255,255,255,.07);--border:rgba(255,255,255,.08);--text:#eef2ff;--text2:#94a3b8;--primary:#818cf8;--primary2:#a78bfa;--accent:#6366f1;--accent2:#a855f7;--grad:linear-gradient(135deg,#6366f1,#a855f7,#ec4899);--energy:#f59e0b;--volume:#38bdf8;--time:#34d399;--moles:#c084fc;--card-bg:rgba(15,15,35,.65);--card-border:rgba(255,255,255,.06);--shadow:0 8px 32px rgba(0,0,0,.4);--glow:0 0 40px rgba(99,102,241,.15);--footer-bg:linear-gradient(180deg,rgba(10,10,26,.95),rgba(6,6,15,1))}
[data-theme="light"]{--bg:#f0f2f8;--bg2:#fff;--surface:rgba(0,0,0,.03);--surface2:rgba(0,0,0,.05);--border:rgba(0,0,0,.1);--text:#1e293b;--text2:#64748b;--primary:#6366f1;--primary2:#7c3aed;--accent:#6366f1;--accent2:#a855f7;--grad:linear-gradient(135deg,#6366f1,#a855f7,#ec4899);--energy:#d97706;--volume:#0284c7;--time:#059669;--moles:#9333ea;--card-bg:rgba(255,255,255,.7);--card-border:rgba(0,0,0,.08);--shadow:0 8px 32px rgba(0,0,0,.08);--glow:0 0 40px rgba(99,102,241,.08);--footer-bg:linear-gradient(180deg,#e8eaf0,#f0f2f8)}

/* ===== RESET & BASE ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden;transition:background var(--transition),color var(--transition)}
h1,h2,h3,h4{font-weight:700;line-height:1.2}
a{color:var(--primary);text-decoration:none}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
.gradient-text{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hidden{display:none!important}
.section-header{text-align:center;margin-bottom:14px}
.section-header h2{font-size:clamp(1.6rem,3.5vw,2.4rem);margin-bottom:4px;position:relative;display:inline-block}
.section-header h2::after{content:'';display:block;width:48px;height:3px;background:var(--grad);border-radius:3px;margin:8px auto 0}
.section-header p{color:var(--text2);font-size:.95rem;max-width:480px;margin:0 auto}

/* ===== NAV ===== */
#navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:10px 0;backdrop-filter:blur(24px) saturate(1.8);background:rgba(6,6,15,.82);border-bottom:1px solid var(--border);transition:all var(--transition)}
#navbar.scrolled{padding:6px 0;box-shadow:0 4px 30px rgba(0,0,0,.3)}
[data-theme="light"] #navbar{background:rgba(255,255,255,.88)}
[data-theme="light"] #navbar.scrolled{box-shadow:0 4px 30px rgba(0,0,0,.08)}
.nav-inner{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}
.nav-brand{display:flex;align-items:center;gap:10px;font-size:1.15rem;font-weight:800;color:var(--text);transition:transform var(--transition)}
.nav-brand:hover{transform:scale(1.03)}
.brand-logo{display:flex;align-items:center;justify-content:center;transition:transform .4s ease;filter:drop-shadow(0 2px 8px rgba(99,102,241,.3))}
.nav-brand:hover .brand-logo{transform:rotate(8deg) scale(1.08)}
.brand-text{letter-spacing:-.5px}
.brand-dot{color:var(--text2);font-weight:400;font-size:.85em}
.nav-links{display:flex;gap:24px;list-style:none}
.nav-links a{color:var(--text2);font-weight:500;font-size:.85rem;transition:color var(--transition);position:relative;padding:4px 0}
.nav-links a:hover{color:var(--primary)}
.nav-links a::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--grad);transition:width var(--transition);border-radius:2px}
.nav-links a:hover::after{width:100%}
.nav-actions{display:flex;align-items:center;gap:8px}
/* Language Dropdown */
.lang-dropdown{position:relative}
.lang-toggle{display:flex;align-items:center;gap:6px;background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:6px 12px;color:var(--text);font-family:var(--font);font-size:.82rem;cursor:pointer;transition:all var(--transition);white-space:nowrap}
.lang-toggle:hover{border-color:var(--primary);background:var(--surface)}
.lang-toggle[aria-expanded="true"]{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px rgba(99,102,241,.12)}
.lang-globe{font-size:1rem;line-height:1}
.lang-current{font-weight:500}
.lang-arrow{font-size:.7rem;color:var(--text2);transition:transform var(--transition)}
.lang-toggle[aria-expanded="true"] .lang-arrow{transform:rotate(180deg)}
.lang-panel{position:absolute;top:calc(100% + 8px);right:0;width:340px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius);backdrop-filter:blur(24px) saturate(1.8);box-shadow:0 16px 48px rgba(0,0,0,.4),0 0 0 1px rgba(255,255,255,.04);padding:0;opacity:0;visibility:hidden;transform:translateY(-8px) scale(.97);transition:all .25s cubic-bezier(.4,0,.2,1);z-index:999;overflow:hidden}
.lang-panel.open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.lang-panel-header{padding:12px 16px;font-size:.8rem;font-weight:600;color:var(--text2);border-bottom:1px solid var(--border);letter-spacing:.3px}
.lang-grid{display:grid;grid-template-columns:1fr 1fr;padding:8px;gap:4px;max-height:420px;overflow-y:auto}
.lang-grid::-webkit-scrollbar{width:4px}
.lang-grid::-webkit-scrollbar-thumb{background:var(--surface2);border-radius:4px}
.lang-option{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;background:transparent;border-radius:8px;color:var(--text2);font-family:var(--font);font-size:.8rem;cursor:pointer;transition:all var(--transition);text-align:left;white-space:nowrap}
.lang-option:hover{background:var(--surface2);color:var(--text);transform:translateX(2px)}
.lang-option.active{background:rgba(99,102,241,.12);color:var(--primary);font-weight:600;border-left:2px solid var(--primary)}
.lang-flag{font-size:1.1rem;line-height:1;flex-shrink:0}
.lang-option strong{color:var(--text2);font-weight:500;font-size:.7rem;opacity:.7;margin-left:2px}
[data-theme="light"] .lang-panel{box-shadow:0 16px 48px rgba(0,0,0,.12),0 0 0 1px rgba(0,0,0,.04)}
.theme-toggle,.mobile-menu{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:7px 11px;cursor:pointer;font-size:1rem;transition:all var(--transition);color:var(--text)}
.theme-toggle:hover,.mobile-menu:hover{background:var(--surface);border-color:var(--primary);transform:scale(1.05)}
.mobile-menu{display:none}

/* ===== HERO (compact) ===== */
#hero{position:relative;min-height:48vh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:85px 20px 24px}
#heroCanvas{position:absolute;inset:0;width:100%;height:100%}
.hero-overlay{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 0%,var(--bg) 70%)}
.hero-content{position:relative;text-align:center;max-width:640px;z-index:2}
.hero-badge{display:inline-block;padding:5px 16px;border-radius:50px;background:var(--surface2);border:1px solid var(--border);font-size:.75rem;color:var(--primary);margin-bottom:14px;font-weight:500;backdrop-filter:blur(8px);animation:fadeInDown .6s ease}
.hero-content h1{font-size:clamp(2.4rem,6vw,4.2rem);font-weight:900;letter-spacing:-2px;margin-bottom:8px;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:fadeInUp .7s ease}
.hero-tagline{font-size:clamp(.95rem,2vw,1.15rem);color:var(--text2);margin-bottom:20px;font-weight:300;line-height:1.6;animation:fadeInUp .8s ease}
.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;animation:fadeInUp .9s ease}
@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeInDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}

/* ===== BUTTONS ===== */
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 24px;border-radius:12px;font-family:var(--font);font-weight:600;font-size:.88rem;border:none;cursor:pointer;transition:all var(--transition);color:#fff}
.btn-primary{background:var(--grad);box-shadow:0 4px 20px rgba(99,102,241,.3);position:relative;overflow:hidden}
.btn-primary::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transition:left .5s}
.btn-primary:hover::before{left:100%}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(99,102,241,.4)}
.btn-ghost{background:transparent;border:1px solid var(--border);color:var(--text)}
.btn-ghost:hover{background:var(--surface2);border-color:var(--primary)}
.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text);padding:8px 16px;font-size:.82rem;border-radius:10px}
.btn-outline:hover{background:var(--surface2);border-color:var(--primary)}
.btn-lg{padding:14px 32px;font-size:.95rem;border-radius:14px}
.btn-sm{padding:7px 14px;font-size:.78rem;border-radius:8px}
.btn-block{width:100%;justify-content:center;padding:14px;font-size:.95rem;margin-top:8px;border-radius:14px}

/* ===== GLASS CARD ===== */
.glass-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius);padding:24px;backdrop-filter:blur(16px);box-shadow:var(--shadow);transition:all var(--transition)}
.glass-card:hover{border-color:rgba(99,102,241,.15);box-shadow:var(--shadow),0 0 20px rgba(99,102,241,.06)}

/* ===== CALCULATOR ===== */
#calculator{padding:16px 0 20px}
.calc-layout{display:grid;grid-template-columns:380px 1fr;gap:24px;align-items:start}
.input-panel{position:sticky;top:80px}
.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}
.card-header h3{font-size:1rem}
.mode-toggle{display:flex;background:var(--surface);border-radius:10px;overflow:hidden;border:1px solid var(--border)}
.mode-btn{padding:5px 14px;font-size:.78rem;background:transparent;border:none;color:var(--text2);cursor:pointer;font-family:var(--font);font-weight:500;transition:all var(--transition)}
.mode-btn.active{background:var(--accent);color:#fff}
.input-group{margin-bottom:14px}
.input-group label{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:500;margin-bottom:5px;color:var(--text2)}
.input-with-unit{display:flex;gap:0;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;transition:border-color var(--transition)}
.input-with-unit:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(99,102,241,.15)}
.input-with-unit input{flex:1;background:transparent;border:none;padding:10px 12px;color:var(--text);font-family:var(--font);font-size:.9rem;outline:none;min-width:0}
.input-with-unit select,.input-with-unit .unit-label{background:var(--surface2);border:none;border-left:1px solid var(--border);padding:10px;color:var(--text2);font-family:var(--font);font-size:.78rem;cursor:pointer;outline:none}
.input-with-unit .unit-label{display:flex;align-items:center;padding:10px 12px}
select{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;color:var(--text);font-family:var(--font);font-size:.9rem;width:100%;outline:none;cursor:pointer;transition:border-color var(--transition);appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2394a3b8' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
select:focus{border-color:var(--primary)}
select option{background-color:#0a0a1a;color:#eef2ff}
[data-theme="light"] select option{background-color:#fff;color:#1e293b}
select option:checked{background-color:#6366f1;color:#fff}
select option:hover{background-color:#1a1a3a}
.input-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.custom-fields{padding:14px;background:var(--surface);border-radius:var(--radius-sm);margin-bottom:14px;border:1px dashed var(--border)}
.badge{font-size:.6rem;padding:2px 7px;border-radius:50px;background:var(--surface2);color:var(--text2);font-weight:500}
.toggle-row{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.switch-label{display:flex;align-items:center;gap:9px;font-size:.82rem;cursor:pointer;color:var(--text2)}
.switch-label input{display:none}
.switch{width:38px;height:20px;background:var(--surface2);border-radius:50px;position:relative;transition:background var(--transition);border:1px solid var(--border)}
.switch::after{content:'';position:absolute;width:14px;height:14px;background:#fff;border-radius:50%;top:2px;left:2px;transition:transform var(--transition)}
.switch-label input:checked+.switch{background:var(--accent)}
.switch-label input:checked+.switch::after{transform:translateX(18px)}

/* Fact Box */
.fact-box{display:flex;gap:10px;padding:10px 14px;background:rgba(99,102,241,.08);border:1px solid rgba(99,102,241,.15);border-radius:var(--radius-sm);margin-bottom:14px;font-size:.78rem;color:var(--text2);line-height:1.5}
.fact-icon{font-size:1rem;flex-shrink:0}

/* Tooltip */
.tooltip-trigger{cursor:help;font-size:.72rem;color:var(--primary);opacity:.7}
.tooltip{position:fixed;z-index:9999;background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:.78rem;color:var(--text2);max-width:220px;pointer-events:none;opacity:0;transition:opacity .2s;box-shadow:var(--shadow)}
.tooltip.show{opacity:1}

/* ===== RESULTS ===== */
.results-panel{min-height:300px}
.results-placeholder{text-align:center;padding:60px 20px;color:var(--text2)}
.placeholder-icon{font-size:2.5rem;margin-bottom:14px;opacity:.5}
.results-placeholder h3{margin-bottom:6px;color:var(--text)}
.warning-box{display:flex;gap:10px;padding:12px 16px;background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.2);border-radius:var(--radius-sm);margin-bottom:18px;font-size:.82rem;color:var(--energy)}
.progress-section{margin-bottom:20px}
.progress-labels{display:flex;justify-content:space-between;font-size:.78rem;margin-bottom:6px;color:var(--text2)}
.progress-bar{height:6px;background:var(--surface2);border-radius:50px;overflow:hidden}
.progress-fill{height:100%;width:0;background:var(--grad);border-radius:50px;transition:width 1.5s cubic-bezier(.4,0,.2,1)}
.results-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:20px}
.result-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius);padding:18px;backdrop-filter:blur(8px);transition:all var(--transition)}
.result-card:hover{transform:translateY(-2px);box-shadow:var(--glow)}
.result-icon{font-size:1.3rem;margin-bottom:6px}
.result-label{font-size:.72rem;color:var(--text2);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}
.result-value{font-size:1.2rem;font-weight:700;font-family:var(--mono);margin-bottom:3px}
.result-sub{font-size:.7rem;color:var(--text2);line-height:1.5}
.energy-card .result-value{color:var(--energy)}
.volume-card .result-value{color:var(--volume)}
.moles-card .result-value{color:var(--moles)}
.time-card .result-value{color:var(--time)}
.breakdown-card{margin-bottom:18px}
.breakdown-card h4{margin-bottom:14px;font-size:.9rem}
.breakdown-item{margin-bottom:10px}
.breakdown-label{display:flex;justify-content:space-between;font-size:.78rem;margin-bottom:4px}
.breakdown-label span:last-child{font-family:var(--mono);color:var(--text2)}
.breakdown-bar{height:6px;background:var(--surface2);border-radius:50px;overflow:hidden}
.breakdown-fill{height:100%;border-radius:50px;transition:width 1s ease}
.q1-fill{background:linear-gradient(90deg,#f59e0b,#ef4444)}
.q2-fill{background:linear-gradient(90deg,#6366f1,#a855f7)}
.steps-card{margin-bottom:18px}
.steps-card h4{margin-bottom:14px;font-size:.9rem}
.step{padding:10px 14px;background:var(--surface);border-radius:var(--radius-sm);margin-bottom:6px;font-size:.82rem;border-left:3px solid var(--accent)}
.step .formula{font-family:var(--mono);color:var(--primary);font-size:.85rem;margin:5px 0}
.step .step-desc{color:var(--text2);font-size:.78rem}
.realworld-card{margin-bottom:18px}
.realworld-card h4{margin-bottom:10px;font-size:.9rem}
.realworld-item{display:flex;gap:8px;align-items:center;padding:6px 0;font-size:.85rem;color:var(--text2)}
.result-actions{display:flex;gap:8px;flex-wrap:wrap}

/* ===== CALC VISUALIZATION ===== */
.calc-viz-card{margin-bottom:18px}
.calc-viz-card h4{margin-bottom:8px;font-size:.95rem}
.calc-viz-card canvas{width:100%;height:220px;display:block;border-radius:var(--radius-sm);background:var(--surface);margin:10px 0}
.calc-viz-stats{display:flex;gap:16px;font-size:.78rem;color:var(--text2);flex-wrap:wrap}
.calc-viz-stats strong{color:var(--primary)}
.cvs-item{display:flex;gap:4px}

/* ===== CONTENT SECTIONS ===== */
#what-is,#how-it-works,#examples,#daily-life,#differences,#faq,#summary{padding:24px 0}
section+section{border-top:1px solid var(--border)}
.content-with-diagram{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.content-with-diagram.reverse{direction:rtl}.content-with-diagram.reverse>*{direction:ltr}
.content-text h3{font-size:1.1rem;margin:18px 0 8px;color:var(--text)}
.content-text h3:first-child{margin-top:0}
.content-text h4{font-size:.95rem;margin:12px 0 6px;color:var(--primary)}
.content-text p{color:var(--text2);font-size:.88rem;line-height:1.7;margin-bottom:10px}
.interactive-diagram{position:sticky;top:85px}
.interactive-diagram h4{margin-bottom:12px;font-size:.95rem}
.interactive-diagram canvas{width:100%;height:220px;display:block;border-radius:var(--radius-sm);background:var(--surface);margin-bottom:10px}
.diagram-controls{display:flex;flex-direction:column;gap:6px}
.diagram-controls label{font-size:.78rem;color:var(--text2)}
.diagram-labels{display:flex;justify-content:space-between;margin-top:4px}
.phase-badge{padding:4px 10px;border-radius:50px;font-size:.75rem;font-weight:600;background:rgba(99,102,241,.15);color:var(--primary)}
.styled-range{-webkit-appearance:none;width:100%;height:6px;background:var(--surface2);border-radius:50px;outline:none}
.styled-range::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:var(--grad);border-radius:50%;cursor:pointer;border:2px solid var(--bg)}

/* Phase Diagram */
.phase-substance-select{margin-bottom:10px}
.phase-substance-select select{padding:7px 10px;font-size:.82rem}
.chart-wrap{aspect-ratio:4/3}
.canvas-wrap{position:relative;width:100%;background:var(--surface);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:10px;border:1px solid var(--border)}
.canvas-wrap canvas{width:100%;height:100%;display:block}
.phase-legend{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:6px}
.legend-item{display:flex;align-items:center;gap:5px;font-size:.72rem;color:var(--text2)}
.legend-dot{width:8px;height:8px;border-radius:50%}
.solid-dot{background:#38bdf8}.liquid-dot{background:#34d399}.gas-dot{background:#f59e0b}.tp-dot{background:#ef4444}

/* ===== EXAMPLES ===== */
.examples-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.example-card{transition:all var(--transition)}
.example-card:hover{transform:translateY(-3px);box-shadow:var(--glow);border-color:var(--primary)}
.example-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.example-icon{font-size:1.6rem}
.example-header h3{font-size:1rem}
.example-card h4{font-size:.9rem;color:var(--primary);margin:10px 0 6px}
.example-card p{color:var(--text2);font-size:.85rem;line-height:1.6;margin-bottom:6px}
.example-data{display:flex;gap:16px;flex-wrap:wrap;padding-top:10px;border-top:1px solid var(--border);font-size:.78rem;color:var(--text2);margin-top:10px}
.example-data strong{color:var(--text)}

/* ===== DAILY LIFE ===== */
.daily-life-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.daily-life-grid h3{font-size:1.05rem;margin-bottom:10px;color:var(--text)}
.daily-life-grid h4{font-size:.92rem;color:var(--primary);margin:12px 0 6px}
.daily-life-grid p{color:var(--text2);font-size:.85rem;line-height:1.6;margin-bottom:8px}
.interactive-mini{margin-top:14px;padding:16px}
.interactive-mini h4{margin-bottom:10px;font-size:.9rem}
.fd-stages{display:flex;gap:6px;margin-bottom:10px}
.fd-stage{flex:1;padding:8px 6px;text-align:center;border-radius:var(--radius-sm);background:var(--surface);border:2px solid var(--border);cursor:pointer;font-size:.72rem;font-weight:600;color:var(--text2);transition:all var(--transition)}
.fd-stage span{display:block;font-size:1.1rem;margin-bottom:3px;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.fd-stage.active{border-color:var(--primary);background:rgba(99,102,241,.1);color:var(--text)}
.fd-stage:hover{border-color:var(--primary)}
#fdDesc{font-size:.82rem;color:var(--text2);line-height:1.5;min-height:40px}

/* ===== FAQ ===== */
.faq-list{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:10px}
.section-faq-list{max-width:100%;margin-top:20px}
.section-faq-list .section-faq-title{font-size:1rem;margin-bottom:10px;color:var(--text);text-align:center}
.faq-item{transition:all var(--transition)}
.faq-item:hover{border-color:var(--primary);transform:translateY(-1px)}
.faq-q{font-size:.95rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0;user-select:none}
.faq-arrow{font-size:.75rem;transition:transform var(--transition);color:var(--primary);flex-shrink:0}
.faq-item.open .faq-arrow{transform:rotate(180deg)}
.faq-item.open{border-color:var(--primary);box-shadow:var(--glow)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease}
.faq-item.open .faq-a{max-height:500px;padding-top:12px}
.faq-a p{color:var(--text2);font-size:.88rem;line-height:1.6}

/* ===== SUMMARY ===== */
.summary-card{max-width:720px;margin:0 auto}
.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.summary-item{display:flex;align-items:center;gap:10px;padding:12px;background:var(--surface);border-radius:var(--radius-sm);font-size:.85rem;color:var(--text2);transition:all var(--transition)}
.summary-item:hover{background:var(--surface2);transform:translateX(4px)}
.summary-icon{font-size:1.2rem}
.summary-item strong{color:var(--text)}

/* ===== DIFFERENCES (compact) ===== */
.diff-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.diff-grid .diff-chart-card{grid-column:1/-1}
.diff-card h3{font-size:1rem;margin-bottom:8px}
.diff-card p{color:var(--text2);font-size:.85rem;line-height:1.6}
.diff-chart-card h4{margin-bottom:12px;font-size:.9rem}
.energy-bars-container{display:flex;flex-direction:column;gap:10px}
.energy-bar-row{display:flex;align-items:center;gap:12px}
.eb-label{font-size:.78rem;color:var(--text2);min-width:130px;text-align:right}
.eb-track{flex:1;height:24px;background:var(--surface2);border-radius:6px;overflow:hidden}
.eb-fill{height:100%;border-radius:6px;display:flex;align-items:center;justify-content:flex-end;padding:0 8px;font-size:.7rem;font-weight:600;color:#fff;font-family:var(--mono);transition:width 1s ease;min-width:fit-content}

/* ===== COMPARISON ===== */
#comparison{padding:18px 0}
.compare-selectors{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;margin-bottom:16px}
.compare-select{max-width:180px}
.compare-vs{font-weight:800;font-size:1rem;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
#compareBtn{display:block;margin:0 auto 24px}
.comparison-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.compare-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius);padding:20px;backdrop-filter:blur(8px)}
.compare-card h4{font-size:.95rem;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.compare-row{display:flex;justify-content:space-between;padding:6px 0;font-size:.82rem;border-bottom:1px solid var(--surface2)}
.compare-row span:first-child{color:var(--text2)}
.compare-row span:last-child{font-family:var(--mono);font-weight:600}

/* ===== LOADING ANIMATION ===== */
.btn-loading .btn-text{opacity:0}
.btn-loading::after{content:'';position:absolute;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.btn-block{position:relative}

/* ===== HISTORY ===== */
#history-section{padding:18px 0}
.history-actions{text-align:right;margin-bottom:16px}
.history-list{display:flex;flex-direction:column;gap:10px}
.history-empty{text-align:center;padding:30px;color:var(--text2);font-size:.88rem}
.history-item{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-sm);padding:14px 18px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;cursor:pointer;transition:all var(--transition)}
.history-item:hover{border-color:var(--primary);background:var(--surface2)}
.history-meta{display:flex;gap:16px;font-size:.78rem;color:var(--text2)}
.history-meta strong{color:var(--text)}

/* ===== FOOTER ===== */
#footer{padding:48px 0 24px;border-top:1px solid var(--border);margin-top:8px;background:var(--footer-bg);position:relative}
.back-to-top{position:absolute;top:-20px;left:50%;transform:translateX(-50%);width:40px;height:40px;border-radius:50%;background:var(--grad);color:#fff;border:3px solid var(--bg);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;transition:all var(--transition);box-shadow:0 4px 15px rgba(99,102,241,.3);z-index:10}
.back-to-top:hover{transform:translateX(-50%) translateY(-3px);box-shadow:0 8px 25px rgba(99,102,241,.4)}
#footer { position: relative; }
.back-to-top { position: absolute; top: -20px; right: 40px; width: 44px; height: 44px; border-radius: 50%; background: var(--grad); color: white; border: none; cursor: pointer; font-size: 1.2rem; box-shadow: var(--shadow); transition: transform var(--transition); display: flex; align-items: center; justify-content: center; z-index: 10; }
.back-to-top:hover { transform: translateY(-4px); }
.footer-social{display:flex;gap:10px;margin-top:10px}
.footer-social a{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:var(--surface2);border:1px solid var(--border);color:var(--text2);font-size:.9rem;transition:all var(--transition)}
.footer-social a:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:translateY(-2px)}
.footer-trust{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;padding:16px 0;margin-top:16px;border-top:1px solid var(--border);font-size:.75rem;color:var(--text2)}
.footer-trust span{display:flex;align-items:center;gap:4px}
.footer-content{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px;margin-bottom:32px;align-items:start}
.footer-brand{display:flex;flex-direction:column;gap:10px}
.footer-logo{display:flex;align-items:center;gap:10px;color:var(--text);transition:transform var(--transition)}
.footer-logo:hover{transform:scale(1.02)}
.footer-logo .brand-logo{filter:drop-shadow(0 2px 8px rgba(99,102,241,.3))}
.footer-logo .brand-text{font-size:1.1rem;font-weight:800;letter-spacing:-.5px}
.footer-brand p{color:var(--text2);font-size:.82rem;max-width:300px;line-height:1.7}
.footer-contact{margin-top:4px}
.footer-email{color:var(--primary);font-size:.85rem;font-weight:500;transition:color var(--transition)}
.footer-email:hover{color:var(--primary2);text-decoration:underline}
.footer-col{display:flex;flex-direction:column;gap:10px}
.footer-col h4{font-size:.8rem;text-transform:uppercase;letter-spacing:1px;color:var(--text);margin-bottom:4px;font-weight:700}
.footer-col a{color:var(--text2);font-size:.84rem;transition:all var(--transition);padding:2px 0;position:relative}
.footer-col a:hover{color:var(--primary);padding-left:4px}
.footer-bottom{border-top:1px solid var(--border);padding-top:20px;text-align:center}
.footer-bottom p{font-size:.75rem;color:var(--text2);letter-spacing:.3px}

/* ===== PRINT ===== */
@media print{#navbar,#hero,#what-is,#how-it-works,#examples,#daily-life,#differences,#faq,#summary,#history-section,#footer,.btn,.mode-toggle,.toggle-row,.result-actions,.interactive-diagram,.calc-viz-card{display:none!important}#calculator{padding:0}.input-panel{display:none!important}.results-panel{min-height:auto}body{background:#fff;color:#000}.result-card{border:1px solid #ddd;break-inside:avoid}}

/* ===== RESPONSIVE ===== */
@media(max-width:900px){
.calc-layout{grid-template-columns:1fr}
.input-panel{position:static}
.content-with-diagram,.daily-life-grid{grid-template-columns:1fr}
.content-with-diagram.reverse{direction:ltr}
.interactive-diagram{position:static}
.results-grid{grid-template-columns:1fr 1fr}
#hero{min-height:48vh;padding:85px 20px 36px}
.hero-content h1{font-size:2.4rem}
.footer-content{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg2);flex-direction:column;padding:16px;gap:12px;border-bottom:1px solid var(--border)}
.nav-links.open{display:flex}
.mobile-menu{display:block}
.results-grid,.summary-grid{grid-template-columns:1fr}
.input-row{grid-template-columns:1fr}
.hero-content h1{font-size:2rem}
.examples-grid{grid-template-columns:1fr}
.calc-viz-stats{flex-direction:column;gap:6px}
#hero{min-height:auto;padding:80px 16px 32px}
.hero-tagline{font-size:.9rem}
section{padding:24px 0!important}
.section-header{margin-bottom:20px}
.section-header h2{font-size:1.5rem}
.diff-grid{grid-template-columns:1fr}
.eb-label{min-width:100px;font-size:.7rem}
.comparison-grid{grid-template-columns:1fr}
.compare-selectors{flex-direction:column}
.footer-content{grid-template-columns:1fr}
.footer-brand{margin-bottom:8px}
}
