.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;height:61px;padding:0 20px;background:color-mix(in srgb,var(--paper) 86%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.topbar .brand{margin-right:auto}.icon-btn{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;flex:none}.lab-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 20px;margin-top:30px;padding-top:18px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.lab-footer a{color:var(--muted)}.atom-main{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:14px;padding:14px 16px 16px;align-items:start;max-width:1600px;margin:0 auto}.stage{position:sticky;top:73px;height:calc(100dvh - 90px);min-height:480px;border-radius:22px;overflow:hidden;background:#070b14}canvas{display:block;width:100%;height:100%}.hud{position:absolute;left:16px;top:14px;color:#e9f1fb;pointer-events:none;max-width:70%}.nota{display:flex;align-items:center;gap:4px}.iso{display:inline-flex;flex-direction:column;align-items:flex-end;font-size:.85rem;line-height:1.05;color:#b9c7da}.sym{font-size:2.6rem;font-weight:700;line-height:1;letter-spacing:-.02em}.chg{align-self:flex-start;font-size:1.05rem;font-weight:600;color:var(--valence);margin-top:2px}.hud .nm{font-size:.9rem;color:#b9c7da;margin-top:4px}.stage-tools{position:absolute;right:12px;top:12px;display:flex;gap:6px}.stage-tools button{border:1px solid rgba(255,255,255,.18);background:#0a101c99;color:#e9f1fb;border-radius:12px;padding:7px 12px;cursor:pointer;font-size:.85rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.legend{position:absolute;left:14px;bottom:12px;display:flex;gap:12px;flex-wrap:wrap;color:#b9c7da;font-size:.78rem;pointer-events:none}.legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;vertical-align:-1px}.hint{position:absolute;right:14px;bottom:12px;color:#7f8ea3;font-size:.75rem;pointer-events:none}.panel{display:flex;flex-direction:column;gap:12px}.panel[hidden]{display:none}.card h2{margin:0 0 10px;font-size:.95rem;font-weight:600}.row{display:flex;align-items:center;gap:10px}.picker{display:flex;align-items:center;gap:10px;margin-bottom:10px}.picker button{width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:var(--chip);cursor:pointer;font-size:1.1rem}.tile{flex:1;display:flex;align-items:center;gap:12px;padding:6px 10px;border-radius:12px;background:var(--chip)}.tile b{font-size:1.6rem;font-weight:700;min-width:44px}.tile small{display:block;color:var(--muted);font-size:.78rem}.ptable{display:grid;grid-template-columns:repeat(18,1fr);gap:2px}.ptable button{aspect-ratio:1;border:0;border-radius:4px;font-size:.58rem;padding:0;cursor:pointer;color:#14202e;font-weight:600}.ptable button.on{outline:2px solid var(--ink);outline-offset:1px}.counter{display:grid;grid-template-columns:1fr 40px 46px 40px;align-items:center;gap:6px;padding:6px 0}.counter+.counter{border-top:1px solid var(--line)}.counter .lbl{display:flex;align-items:center;gap:8px;font-weight:500}.counter .lbl i{width:12px;height:12px;border-radius:50%}.counter button{height:38px;border-radius:10px;border:1px solid var(--line);background:var(--chip);cursor:pointer;font-size:1.15rem}.counter output{text-align:center;font-weight:600;font-size:1.1rem;font-variant-numeric:tabular-nums}.btn{border:0;border-radius:12px;padding:10px 14px;background:var(--accent);color:var(--accent-ink);font-weight:600;cursor:pointer;width:100%}.btn.ghost{background:var(--chip);color:var(--ink)}.btns{display:flex;gap:8px;margin-top:10px}.slider{display:grid;grid-template-columns:90px 1fr 44px;align-items:center;gap:10px;padding:5px 0}.slider span:last-child{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}input[type=range]{width:100%;accent-color:var(--accent)}.seg{display:flex;background:var(--chip);border-radius:10px;padding:3px;margin:6px 0}.seg button{flex:1;border:0;background:transparent;padding:7px;border-radius:8px;cursor:pointer;font-size:.85rem;color:var(--muted)}.seg button[aria-pressed=true]{background:var(--panel);color:var(--ink);font-weight:600}.toggles{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}.tg{display:flex;align-items:center;gap:8px;font-size:.88rem;cursor:pointer}.tg input{appearance:none;width:34px;height:20px;border-radius:999px;background:var(--line);position:relative;cursor:pointer;flex:none;transition:background .15s}.tg input:after{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s}.tg input:checked{background:var(--accent)}.tg input:checked:after{transform:translate(14px)}.stats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stat{background:var(--chip);border-radius:10px;padding:8px 10px}.stat small{display:block;color:var(--muted);font-size:.74rem}.stat b{font-weight:600;font-size:.98rem;font-variant-numeric:tabular-nums}.stat.wide{grid-column:1/-1}.note{margin:10px 0 0;font-size:.88rem;color:var(--muted)}.note strong{color:var(--ink);font-weight:600}.mols{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.mols button{border:1px solid var(--line);background:var(--chip);border-radius:10px;padding:9px 0;cursor:pointer;font-weight:600;font-size:.92rem}.mols button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.tag{display:inline-block;font-size:.75rem;padding:2px 8px;border-radius:999px;background:var(--chip);color:var(--muted);margin-left:6px;vertical-align:2px}.three{position:absolute;inset:0;touch-action:none;display:none;background:radial-gradient(circle at 50% 50%,#16213b,#060912 78%)}.three canvas{width:100%;height:100%}.labels3{position:absolute;inset:0;pointer-events:none;overflow:hidden;display:none}.labels3 span{position:absolute;left:0;top:0;font-size:11px;font-weight:600;color:#e9f1fb;background:#060a14b8;padding:2px 7px;border-radius:9px;white-space:nowrap;will-change:transform}.labels3 span.ang{color:#ffd98a}#nucCv{height:230px;border-radius:12px;margin-bottom:8px;background:#070b14}.mols.m3{grid-template-columns:repeat(4,1fr)}.seg.small button{font-size:.8rem}@media(max-width:860px){.atom-main{grid-template-columns:1fr}.stage{position:relative;top:0;height:min(64vh,520px);min-height:340px}.sym{font-size:2.1rem}.hint{display:none}}@media(prefers-reduced-motion:reduce){.tg input,.tg input:after{transition:none}}.quiz{margin-top:20px}.quiz-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.quiz-top h2{font-size:16px;margin:0}.quiz-score{font-size:12.5px;color:var(--muted);font-weight:600}.quiz-score.good{color:var(--done)}.qq{border:1px solid var(--line);border-radius:12px;padding:12px 14px 10px;margin:12px 0 0}.qq legend{font-weight:600;font-size:14px;padding:0 4px;display:flex;gap:8px;align-items:baseline}.qn{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:6px;background:var(--soft);border:1px solid var(--line);font-size:12px}.qo{display:flex;gap:10px;align-items:flex-start;padding:7px 8px;border-radius:8px;cursor:pointer;font-size:13.5px}.qo:hover{background:var(--soft)}.qo input{margin-top:4px;accent-color:var(--accent-2)}.qq.right{border-color:var(--done)}.qq.wrong{border-color:var(--swap)}.qq.right .qo.is-answer,.qq.wrong .qo.is-answer{background:color-mix(in srgb,var(--done) 14%,transparent)}.why{margin:6px 0 2px;font-size:13px;color:var(--muted)}.why b{color:var(--ink)}.quiz .btns{margin-top:14px}.dlg{border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);padding:0;width:min(640px,calc(100vw - 32px));box-shadow:0 24px 80px #00000059}.dlg::backdrop{background:#0308128c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.search-dlg{margin-top:10vh}.search-row{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}.search-row input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font-size:16px;padding:8px 4px;outline:none}.search-list{list-style:none;margin:0;padding:8px;max-height:60vh;overflow-y:auto}.search-list a{display:flex;gap:12px;align-items:flex-start;padding:9px 12px;border-radius:10px;text-decoration:none;color:var(--ink)}.search-list a .ico{margin-top:3px;color:var(--accent)}.search-list a span{display:flex;flex-direction:column;gap:1px}.search-list small{color:var(--muted);font-size:12px}.search-list [aria-selected=true] a,.search-list a:hover{background:var(--soft)}.search-list .empty{padding:16px;color:var(--muted)}.keys-dlg{padding:22px 24px;width:min(440px,calc(100vw - 32px))}.keys-dlg h2{font-size:18px;margin-bottom:12px}.keys-list{display:grid;grid-template-columns:auto 1fr;gap:10px 16px;margin:0 0 18px;font-size:13.5px}.keys-list dd{margin:0;color:var(--muted)}.keys-dlg .btn{background:var(--accent-2);border-color:var(--accent-2);color:#fff}:root{--chip:var(--soft);--accent-ink:#04121c;--proton:#ff6b57;--neutron:#9fb0c8;--electron:#5ee6ff;--valence:#ffc94a}body.atomlab{font-size:15px;line-height:1.45}.topbar{flex-wrap:nowrap}.topbar .tabs{display:flex;background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:3px;margin:0 auto;overflow-x:auto;scrollbar-width:none;max-width:100%}.topbar .tabs::-webkit-scrollbar{display:none}.topbar .tabs button{flex:none;border:0;background:transparent;padding:7px 14px;border-radius:999px;cursor:pointer;font:600 13px var(--font);color:var(--muted);white-space:nowrap}.topbar .tabs button em{font-style:normal;font-size:9.5px;font-weight:700;padding:1px 5px;border-radius:5px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);margin-left:4px;vertical-align:1px}.topbar .tabs button[aria-selected=true]{background:linear-gradient(135deg,var(--accent-2),var(--pivot));color:#fff}.topbar .tabs button[aria-selected=true] em{background:#fff3;color:#fff}.top-tools{display:flex;align-items:center;gap:8px;flex:none}.toggle.tool{display:inline-flex;align-items:center;gap:6px}.toggle.tool .ico{width:15px;height:15px}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px}.card h2{display:flex;align-items:center;gap:8px}.card h2 .ico{color:var(--cmp)}.btn{width:100%}.stage{box-shadow:0 30px 80px -40px #2563eb99;border:1px solid var(--line)}.ptable{grid-template-rows:repeat(7,auto) 6px auto auto;gap:2px}.ptable button{font-size:.5rem;border-radius:3px;transition:transform .1s,opacity .15s}.ptable button:hover{transform:scale(1.25);z-index:2;position:relative}.ptable button.dim{opacity:.18}.ptable .fmark{font-size:.42rem;color:var(--muted);display:flex;align-items:center;justify-content:center;border:1px dashed var(--line);border-radius:3px}.elsearch{width:100%;margin:0 0 8px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--soft);color:var(--ink);font:14px var(--font)}.challenge{border-color:color-mix(in srgb,var(--cmp) 55%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--cmp) 12%,var(--panel)),var(--panel))}.ch-top{display:flex;justify-content:space-between;align-items:baseline}.ch-top h2{margin:0}.ch-n{font-size:12px;color:var(--muted)}.ch-target{display:flex;align-items:baseline;gap:12px;margin:10px 0 4px}.ch-target b{font-size:30px;font-weight:800;letter-spacing:-.02em}.ch-target span{font-size:13px;color:var(--muted)}.ch-hint{margin:8px 0 0;padding-left:18px;font-size:13px}.orbs{display:flex;flex-direction:column;gap:6px}.sub{display:flex;align-items:center;gap:10px}.sl{min-width:46px;font:600 13px var(--mono)}.sl sup{font-size:10px;color:var(--muted)}.bx{display:flex;gap:3px;flex-wrap:wrap}.bx i{width:30px;height:30px;border:1.5px solid var(--line);border-radius:5px;display:grid;place-items:center;font:700 14px/1 var(--mono);font-style:normal;color:var(--accent);letter-spacing:-2px;background:var(--soft)}.aufbau{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.aufbau i{font-style:normal;color:var(--muted);font-size:11px}.aufbau span{display:flex;flex-direction:column;align-items:center;padding:3px 6px;border-radius:7px;border:1px solid var(--line);background:var(--soft);min-width:38px}.aufbau span b{font:600 12px var(--mono)}.aufbau span small{font-size:10px;color:var(--muted)}.aufbau .full{background:color-mix(in srgb,var(--done) 22%,var(--panel));border-color:var(--done)}.aufbau .part{background:color-mix(in srgb,var(--cmp) 22%,var(--panel));border-color:var(--cmp)}.isos{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.isos button{border:1px solid var(--line);background:var(--soft);border-radius:999px;padding:5px 10px;font-size:12px;cursor:pointer;color:var(--ink)}.isos button:hover{border-color:var(--accent-2)}.flash{border-radius:10px;padding:10px 12px;font-size:13px;margin:10px 0 0;line-height:1.5}.flash.ok{background:color-mix(in srgb,var(--done) 14%,transparent);border-left:4px solid var(--done)}.flash.bad{background:color-mix(in srgb,var(--cmp) 16%,transparent);border-left:4px solid var(--cmp)}.decay-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dbtn{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:var(--soft);color:var(--ink);cursor:pointer;text-align:left}.dbtn b{font-size:20px}.dbtn span{font-size:12px;color:var(--muted)}.dbtn em{font-style:normal;font-size:10px;font-weight:700;color:var(--cmp);text-transform:uppercase;letter-spacing:.06em}.dbtn.rec{border-color:var(--cmp);box-shadow:0 0 0 1px var(--cmp) inset}.dbtn:disabled{opacity:.4;cursor:not-allowed}.chain{margin:10px 0 0;padding-left:20px;font-size:13px;max-height:180px;overflow:auto}.chain li{padding:3px 0}.chain .eq{font-family:var(--mono)}.chain small{color:var(--muted);margin-left:8px}#band,#hlChart{width:100%;height:auto;display:block;background:var(--soft);border-radius:10px}.bandcol{fill:color-mix(in srgb,var(--done) 55%,transparent)}.nz{stroke:var(--muted);stroke-dasharray:4 4}.axl{stroke:var(--line);stroke-width:1.5}.ax{fill:var(--muted);font:500 10px var(--font)}.me{stroke:#fff;stroke-width:2}.me.stable{fill:var(--done)}.me.unstable{fill:var(--swap)}.trail{fill:var(--cmp);opacity:.7}.hl-grid{display:grid;grid-template-columns:repeat(20,1fr);gap:3px;margin:10px 0}.hl-grid i{aspect-ratio:1;border-radius:50%;background:var(--swap);transition:background .3s,transform .3s}.hl-grid i.gone{background:var(--dim);transform:scale(.6)}.exp{fill:none;stroke:var(--muted);stroke-width:1.5;stroke-dasharray:4 4}.obs{fill:none;stroke:var(--swap);stroke-width:2}.hlv{stroke:var(--line);stroke-dasharray:2 3}.below{max-width:1600px;margin:0 auto;padding:0 16px 30px}.quiz{margin-top:10px}@media(max-width:1100px){.topbar .brand-divider,.topbar .brand-lab{display:none}}@media(max-width:760px){.topbar{flex-wrap:wrap;height:auto;padding:8px 12px;gap:8px}.topbar .tabs{order:3;width:100%;margin:0}.top-tools .toggle.tool span{display:none}.stage{top:0}}@media(max-width:640px){.theme-seg span,.brand-name{display:none}}.ptable{grid-template-columns:repeat(18,minmax(0,1fr))}.ptable button,.ptable .fmark{min-width:0;overflow:hidden;white-space:nowrap}.ptable .fmark{font-size:0}.ptable .fmark:after{content:"*";font-size:9px}@media(max-width:640px){.ptable{grid-template-columns:repeat(18,30px);overflow-x:auto;overscroll-behavior-x:contain;padding:2px 2px 8px;scrollbar-width:thin}.ptable button{font-size:.66rem;min-height:30px}.ptable button:hover{transform:none}}
