:root{--bg-dark:#0a0e1a;--bg-panel:#111827;--bg-card:#1a2035;--bg-glass:#ffffff0d;--border-glass:#ffffff1a;--accent-blue:#38bdf8;--accent-green:#34d399;--accent-purple:#a78bfa;--accent-amber:#fbbf24;--accent-red:#f34;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#475569;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--shadow-glow-blue:0 0 20px #38bdf84d;--shadow-glow-green:0 0 20px #34d3994d;--transition:all .2s cubic-bezier(.4,0,.2,1);--font-main:"Inter", sans-serif;--sidebar-w:320px}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{font-family:var(--font-main);background:var(--bg-dark);color:var(--text-primary);background-image:radial-gradient(at 20% 20%,#38bdf80f 0%,#0000 50%),radial-gradient(at 80% 80%,#a78bfa0f 0%,#0000 50%);flex-direction:column;display:flex}.lab-header{border-bottom:1px solid var(--border-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:200001;background:#111827f2;flex-shrink:0;justify-content:space-between;align-items:center;height:62px;padding:0 20px;display:flex}.header-left,.lab-logo{align-items:center;gap:12px;display:flex}.logo-icon{filter:drop-shadow(0 0 8px #38bdf880);font-size:28px}.logo-titles{flex-direction:column;justify-content:center;display:flex}.lab-logo h1{letter-spacing:1px;color:var(--text-primary);font-family:Orbitron,sans-serif;font-size:18px;font-weight:700;line-height:1.2}.lab-logo h1 .accent{color:var(--accent-blue)}.logo-credit{color:var(--accent-blue);letter-spacing:1px;text-transform:uppercase;opacity:.7;margin-top:-2px;font-size:9px;font-weight:600}.experiment-tabs{gap:4px;display:flex}.tab-btn{border:1px solid var(--border-glass);color:var(--text-secondary);font-size:12px;font-family:var(--font-main);cursor:pointer;transition:var(--transition);background:0 0;border-radius:20px;padding:6px 14px}.tab-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue)}.tab-btn.active{border-color:var(--accent-blue);color:var(--accent-blue);box-shadow:var(--shadow-glow-blue);background:#38bdf826}.header-right{align-items:center;gap:10px;display:flex}.safety-status{color:var(--accent-green);background:#34d3991a;border:1px solid #34d3994d;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:12px;display:flex}.safety-dot{border-radius:50%;width:8px;height:8px;animation:2s infinite pulse}.safety-dot.safe{background:var(--accent-green)}.safety-dot.danger{background:var(--accent-red);animation:.5s infinite pulse-red}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}to{opacity:1;transform:scale(1)}}@keyframes pulse-red{0%,to{opacity:1;box-shadow:0 0 6px var(--accent-red)}50%{opacity:.6}}.btn-reset,.btn-guide,.btn-qa{-webkit-backdrop-filter:blur(12px);color:#fff;font-size:12px;font-family:var(--font-main);cursor:pointer;text-shadow:0 0 10px #00000080;background:#1e293b99;border:1px solid #ffffff26;border-radius:6px;align-items:center;gap:8px;padding:6px 14px;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.btn-reset{border-left:3px solid var(--accent-amber)}.btn-reset:hover{border-color:var(--accent-amber);color:var(--accent-amber);background:#f59e0b33;box-shadow:0 0 20px #f59e0b66}.btn-qa{border-left:3px solid var(--accent-blue)}.btn-qa:hover{border-color:var(--accent-blue);color:var(--accent-blue);background:#38bdf833;box-shadow:0 0 20px #38bdf866}.btn-guide{border-left:3px solid var(--accent-purple)}.btn-guide:hover{border-color:var(--accent-purple);color:var(--accent-purple);background:#a78bfa33;box-shadow:0 0 20px #a78bfa66}.lab-main{flex:1;display:flex;overflow:hidden}.sidebar-tools{width:var(--sidebar-w);background:var(--bg-panel);border-right:1px solid var(--border-glass);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.sidebar-header{border-bottom:1px solid var(--border-glass);flex-shrink:0;padding:10px 12px}.sidebar-header h3{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.sidebar-header input{background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-size:12px;font-family:var(--font-main);transition:var(--transition);outline:none;margin-top:8px;padding:6px 10px}.sidebar-header input:focus{border-color:var(--accent-blue)}.sidebar-header input::placeholder{color:var(--text-muted)}.tools-grid{flex:1;grid-template-columns:1fr 1fr;align-content:start;gap:8px;padding:10px;display:grid;overflow-y:auto}.tools-grid::-webkit-scrollbar{width:4px}.tools-grid::-webkit-scrollbar-track{background:0 0}.tools-grid::-webkit-scrollbar-thumb{background:var(--border-glass);border-radius:2px}.tool-item{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:var(--radius-md);cursor:grab;transition:var(--transition);-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:5px;padding:10px 6px;display:flex;position:relative}.tool-item:hover{border-color:var(--accent-blue);transform:translateY(-2px);box-shadow:0 6px 20px #38bdf833}.tool-item:active{cursor:grabbing;transform:scale(.95)}.tool-icon{filter:drop-shadow(0 0 15px #38bdf880);font-size:64px;line-height:1;transition:transform .2s}.tool-name{color:gold;text-align:center;text-shadow:0 0 10px #ffd70080,0 2px 4px #000c;letter-spacing:.5px;font-size:11px;font-weight:800;line-height:1.3}.workspace{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.workspace-surface{background-color:#080c14;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:40px 40px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;flex:1;position:relative;overflow:hidden}.lab-id-watermark{color:#ffffff14;letter-spacing:2px;z-index:5;pointer-events:none;font-size:9px;font-family:var(--font-main);position:absolute;bottom:16px;right:16px}.workspace-items{z-index:10;position:absolute;inset:0}.drop-hint{pointer-events:none;z-index:1;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;inset:0}.drop-hint-inner{opacity:.15;flex-direction:column;align-items:center;gap:12px;display:flex}.drop-hint-inner span{font-size:64px}.drop-hint-inner p{color:var(--text-secondary);font-size:16px}.workspace-surface.drag-over .drop-hint,.workspace-surface.has-items .drop-hint{opacity:0!important}.workspace-surface.drag-over{outline-offset:-4px;outline:2px dashed #38bdf866}.reaction-log{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 40px #0009;background:#0a0e1ae6!important;border:1px solid #38bdf833!important;border-radius:4px!important;padding:0!important}.reaction-log:after{content:"";pointer-events:none;z-index:5;opacity:.2;background:linear-gradient(#12101000 50%,#0000001a 50%) 0 0/100% 3px,linear-gradient(90deg,#ff000005,#00ff0003,#0000ff05) 0 0/3px 100%;position:absolute;inset:0}.log-header{background:#38bdf80d;border-bottom:1px solid #38bdf81a;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.log-header h4{color:var(--accent-blue);text-transform:uppercase;letter-spacing:2px;font-family:Orbitron,sans-serif;font-size:10px;font-weight:800}.btn-clear-log{color:#ef4444;text-transform:uppercase;cursor:pointer;background:#ef44441a;border:1px solid #ef444433;border-radius:2px;padding:2px 8px;font-size:9px;font-weight:700}.log-entries{flex-direction:column;flex:1;gap:6px;padding:10px;font-family:Fira Code,Monaco,monospace;display:flex;overflow-y:auto}.log-entry{color:var(--text-secondary);grid-template-columns:auto auto 1fr;align-items:center;gap:10px;font-size:11px;animation:.3s ease-out log-reveal;display:grid;background:#ffffff05!important;border-left:2px solid #0000!important;border-radius:2px!important;padding:6px 10px!important}@keyframes log-reveal{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.log-time{opacity:.4;min-width:55px;font-size:10px;color:var(--text-muted)!important}.log-icon{align-items:center;display:flex}.log-msg{word-break:break-word;line-height:1.4}.log-entry.info{border-left-color:var(--accent-blue)!important}.log-entry.info .log-icon{color:var(--accent-blue)}.log-entry.success{border-left-color:var(--accent-green)!important;background:#34d3990d!important}.log-entry.success .log-icon{color:var(--accent-green)}.log-entry.success .log-msg{color:#d1fae5}.log-entry.warning{border-left-color:var(--accent-amber)!important;background:#fbbf240d!important}.log-entry.warning .log-icon{color:var(--accent-amber)}.log-entry.warning .log-msg{color:#fef3c7}.log-entry.danger{background:#ef444414!important;border-left-color:#ef4444!important}.log-entry.danger .log-icon{color:#ef4444}.log-entry.danger .log-msg{color:#fee2e2}.sidebar-chemicals{width:var(--sidebar-w);background:var(--bg-panel);border-left:1px solid var(--border-glass);flex-direction:column;flex-shrink:0;min-height:0;display:flex;overflow:hidden}.chemicals-list{flex-direction:column;flex:1;gap:5px;min-height:0;padding:6px 8px 12px;display:flex;overflow:hidden auto}.chemicals-list::-webkit-scrollbar{width:4px}.chemicals-list::-webkit-scrollbar-thumb{background:var(--border-glass);border-radius:2px}.chemical-item{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:var(--radius-md);cursor:grab;transition:var(--transition);-webkit-user-select:none;user-select:none;box-sizing:border-box;flex-direction:column;flex-shrink:0;min-height:0;padding:8px 10px;display:flex;position:relative;overflow:visible}.chemical-item:hover{background:#ffffff0d;border-color:#38bdf866;transform:translate(-2px);box-shadow:4px 0 16px #0000004d}.chemical-item:active{cursor:grabbing}.chem-header{flex-direction:row;align-items:center;gap:8px;width:100%;min-width:0;display:flex;overflow:hidden}.chem-bottle{text-align:center;flex-shrink:0;width:24px;font-size:18px;line-height:1}.chem-names{flex:1;min-width:0;overflow:hidden}.chem-formula{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;line-height:1.3;overflow:hidden}.chem-full-name{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:10px;line-height:1.3;overflow:hidden}.chem-color-bar{border-radius:2px;flex-shrink:0;height:3px;margin-top:5px}.chem-badges{flex-wrap:wrap;gap:3px;margin-top:4px;display:flex}.badge{text-transform:uppercase;letter-spacing:.3px;border-radius:10px;padding:1px 5px;font-size:9px;font-weight:600}.badge.acid{color:#f87171;background:#f8717133;border:1px solid #f871714d}.badge.base{color:#38bdf8;background:#38bdf833;border:1px solid #38bdf84d}.badge.neutral{color:#94a3b8;background:#94a3b833;border:1px solid #94a3b84d}.badge.flammable{color:#fbbf24;background:#fbbf2433;border:1px solid #fbbf244d}.badge.toxic{color:#a78bfa;background:#a78bfa33;border:1px solid #a78bfa4d}.badge.oxidizer{color:#fb923c;background:#fb923c33;border:1px solid #fb923c4d}.badge.corrosive{color:#a3e635;background:#a3e63533;border:1px solid #a3e6354d}.ws-item{cursor:grab;-webkit-user-select:none;user-select:none;z-index:20;transform:scale(var(--item-scale,1));transition:box-shadow .2s,transform .2s;position:absolute}.ws-item:active{cursor:grabbing;z-index:50}.ws-item.selected{filter:drop-shadow(0 0 12px var(--accent-blue));transform:scale(calc(var(--item-scale,1) * 1.05));border-radius:var(--radius-md);z-index:50;background:#38bdf81a}.ws-item-inner{flex-direction:column;align-items:center;display:flex;position:relative}.ws-item-label{color:var(--text-secondary);text-align:center;pointer-events:none;white-space:nowrap;margin-top:4px;font-size:10px}.ws-item-delete{background:var(--accent-red);color:#fff;cursor:pointer;z-index:60;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;line-height:1;display:none;position:absolute;top:-8px;right:-8px}.ws-item:hover .ws-item-delete,.ws-item.selected .ws-item-delete{display:flex}.test-tube-svg,.beaker-svg,.flask-svg{filter:drop-shadow(0 4px 8px #0006)}@keyframes bubble-rise{0%{opacity:.8;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-60px)scale(.3)}}@keyframes precipitate-fall{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(30px)}}@keyframes color-flash{0%,to{filter:brightness()}50%{filter:brightness(1.5)saturate(2)}}@keyframes shake-screen{0%,to{transform:translate(0)}10%,50%,90%{transform:translate(-4px)}30%,70%{transform:translate(4px)}}.shake{animation:.5s shake-screen}.heating{transform-origin:bottom;animation:2s infinite alternate heat-glow}@keyframes heat-glow{0%{filter:drop-shadow(0 0 5px #fbbf24);transform:scale(1)}to{filter:drop-shadow(0 0 12px #f59e0b);transform:scale(1.05)}}@keyframes stir-motion{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.guide-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-left:2px solid var(--accent-blue);z-index:1000;background:#0a0f19f2;flex-direction:column;width:400px;height:calc(100vh - 90px);transition:all .5s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:70px;right:-420px;box-shadow:-10px 0 30px #00000080}.guide-panel.open{right:0}.guide-header{background:#38bdf80d;border-bottom:1px solid #38bdf81a;justify-content:space-between;align-items:center;padding:15px 20px;display:flex}.guide-tabs{gap:15px;display:flex}.g-tab{color:var(--text-muted);letter-spacing:1.5px;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 12px;font-family:Orbitron,sans-serif;font-size:11px;font-weight:800;transition:all .3s}.g-tab.active{color:var(--accent-blue);border-bottom:2px solid var(--accent-blue);text-shadow:0 0 10px #38bdf880}.terminal-body{scrollbar-width:thin;flex:1;padding:20px;overflow-y:auto}.knowledge-header h3{color:var(--text-primary);letter-spacing:2px;margin-bottom:8px;font-family:Orbitron,sans-serif;font-size:14px}.terminal-line{background:linear-gradient(90deg, var(--accent-blue), transparent);height:1px;margin-bottom:20px}.qa-list-panel{flex-direction:column;gap:12px;display:flex}.qa-item-panel{background:#ffffff05;border:1px solid #ffffff0d;border-radius:4px;transition:all .3s;overflow:hidden}.qa-item-panel.open{background:#38bdf808;border-color:#38bdf84d}.qa-q{cursor:pointer;color:var(--text-primary);gap:10px;padding:12px 15px;font-size:13px;font-weight:600;display:flex}.q-marker{color:var(--accent-blue);font-weight:800}.qa-a{background:#0003;max-height:0;transition:max-height .4s ease-out;overflow:hidden}.qa-item-panel.open .qa-a{max-height:500px}.qa-a-inner{color:var(--text-muted);padding:15px;font-size:13px;line-height:1.6}.synth-scroll-area{flex-direction:column;gap:30px;display:flex}.cat-label{color:var(--accent-blue);letter-spacing:1px;margin-bottom:6px;font-family:Orbitron,sans-serif;font-size:11px;font-weight:800}.cat-desc{color:var(--text-muted);margin-bottom:15px;font-size:12px;font-style:italic}.cat-grid{flex-direction:column;gap:15px;display:flex}.synth-card{border:1px solid #ffffff0d;border-left:3px solid var(--accent-blue);background:#ffffff05;border-radius:2px;padding:15px}.card-title{color:var(--text-primary);text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:800}.card-detail{color:var(--text-muted);margin-bottom:10px;font-size:12px;line-height:1.4}.card-eq{color:var(--accent-cyan);white-space:pre-wrap;background:#0000004d;border:1px dashed #22d3ee33;border-radius:4px;padding:10px;font-family:Fira Code,monospace;font-size:12px}.danger-overlay{z-index:1000;background:#000000d9;justify-content:center;align-items:center;animation:.2s fadeIn;display:none;position:fixed;inset:0}.danger-overlay.show{display:flex}.danger-box{border:2px solid var(--accent-red);border-radius:var(--radius-xl);text-align:center;background:#1a0808;max-width:420px;padding:40px;animation:.3s cubic-bezier(.34,1.56,.64,1) dangerPop;box-shadow:0 0 60px #f8717166}@keyframes dangerPop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.danger-icon{margin-bottom:16px;font-size:56px;animation:.4s .3s shake-screen}.danger-box h2{color:var(--accent-red);margin-bottom:12px;font-size:20px}.danger-box p{color:var(--text-secondary);font-size:14px;line-height:1.6}.btn-danger-ok{background:var(--accent-red);color:#fff;font-size:14px;font-family:var(--font-main);cursor:pointer;transition:var(--transition);border:none;border-radius:8px;margin-top:24px;padding:10px 28px;font-weight:600}.btn-danger-ok:hover{background:#ef4444;box-shadow:0 0 20px #f8717180}.toxic-overlay{pointer-events:none;z-index:300;background:#4ade800f;animation:2s infinite toxicPulse;display:none;position:fixed;inset:0}.toxic-overlay.show{display:block}@keyframes toxicPulse{0%,to{background:#4ade800a}50%{background:#4ade801a}}.toxic-message{color:#4ade80;z-index:400;pointer-events:none;background:#000000d9;border:1px solid #4ade80;border-radius:24px;align-items:center;gap:8px;padding:10px 20px;font-size:13px;font-weight:600;animation:.4s cubic-bezier(.34,1.56,.64,1) bounceDown;display:none;position:fixed;top:80px;left:50%;transform:translate(-50%)}.toxic-message.show{display:flex}@keyframes bounceDown{0%{opacity:0;transform:translate(-50%)translateY(-20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.tooltip{-webkit-backdrop-filter:blur(12px);border:1px solid #ffffff1a;border-left:4px solid var(--accent-blue);color:#fff;font-family:var(--font-main);z-index:10000;pointer-events:none;background:#0f172ae6;border-radius:12px;max-width:280px;padding:12px 16px;transition:opacity .2s,transform .2s;display:none;position:fixed;box-shadow:0 15px 35px #00000080,0 0 0 1px #ffffff0d}.tooltip.visible{animation:.3s cubic-bezier(.16,1,.3,1) tooltipFadeIn;display:block}@keyframes tooltipFadeIn{0%{opacity:0;transform:scale(.95)translateY(5px)}to{opacity:1;transform:scale(1)translateY(0)}}.tooltip-content{flex-direction:column;gap:4px;display:flex}.tooltip-ghs{border-top:1px solid #ffffff1a;justify-content:flex-start;gap:8px;margin-top:10px;padding-top:8px;display:flex}.ghs-icon{filter:drop-shadow(0 0 5px #fff3);background-position:50%;background-repeat:no-repeat;background-size:contain;width:32px;height:32px}.ghs-ghs01{background-image:url(https://upload.wikimedia.org/wikipedia/commons/thumb/c/ce/GHS-pictogram-explos.svg/64px-GHS-pictogram-explos.svg.png)}.ghs-ghs02{background-image:url(https://upload.wikimedia.org/wikipedia/commons/thumb/5/5a/GHS-pictogram-flamme.svg/64px-GHS-pictogram-flamme.svg.png)}.ghs-ghs03{background-image:url(https://upload.wikimedia.org/wikipedia/commons/thumb/3/30/GHS-pictogram-rondflam.svg/64px-GHS-pictogram-rondflam.svg.png)}.ghs-ghs04{background-image:url(https://upload.wikimedia.org/wikipedia/commons/thumb/a/a2/GHS-pictogram-press-gas.svg/64px-GHS-pictogram-press-gas.svg.png)}.ghs-ghs05{background-image:url(https://upload.wikimedia.org/wikipedia/commons/thumb/2/2a/GHS-pictogram-acid.svg/64px-GHS-pictogram-acid.svg.png)}.ghs-ghs06{background-image:url(https://upload.wikimedia.org/wikipedia/commons/thumb/7/73/GHS-pictogram-skull.svg/64px-GHS-pictogram-skull.svg.png)}.ghs-ghs07{background-image:url(https://upload.wikimedia.org/wikipedia/commons/thumb/9/96/GHS-pictogram-exclam.svg/64px-GHS-pictogram-exclam.svg.png)}.ghs-ghs08{background-image:url(https://upload.wikimedia.org/wikipedia/commons/thumb/e/e0/GHS-pictogram-silhouet.svg/64px-GHS-pictogram-silhouet.svg.png)}.ghs-ghs09{background-image:url(https://upload.wikimedia.org/wikipedia/commons/thumb/d/d3/GHS-pictogram-pollut.svg/64px-GHS-pictogram-pollut.svg.png)}.modal-overlay{z-index:600;background:#000c;justify-content:center;align-items:center;animation:.2s fadeIn;display:none;position:fixed;inset:0}.modal-overlay.show{display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-box{background:var(--bg-panel);border:1px solid var(--border-glass);border-radius:var(--radius-xl);width:90%;max-width:500px;max-height:80vh;padding:30px;animation:.3s cubic-bezier(.34,1.56,.64,1) dangerPop;position:relative;overflow-y:auto}.modal-close{color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;font-size:18px;position:absolute;top:16px;right:16px}.dock-tab{color:var(--text-secondary);cursor:pointer;transition:var(--transition);opacity:.7;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:13px;display:flex}.dock-tab svg{transition:transform .3s}.dock-tab:hover{color:var(--text-primary);opacity:1}.dock-tab.active{color:var(--accent-blue);border-bottom:2px solid var(--accent-blue);opacity:1}.modal-close:hover{color:var(--accent-red)}.modal-box h3{margin-bottom:12px;font-size:18px}.modal-box p{color:var(--text-secondary);margin-bottom:10px;font-size:13px;line-height:1.7}.modal-box .reaction-result{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-glass);margin-top:16px;padding:14px}.reaction-result h4{color:var(--accent-blue);margin-bottom:8px;font-size:13px}.reaction-eq{color:var(--accent-green);text-align:center;margin:8px 0;font-family:monospace;font-size:14px}.products-list{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.product-tag{border-radius:10px;padding:3px 10px;font-size:11px;font-weight:600}.product-tag.gas{color:var(--accent-blue);background:#38bdf833}.product-tag.precipitate{color:var(--accent-purple);background:#a78bfa33}.product-tag.salt{color:var(--accent-green);background:#34d39933}.product-tag.water{color:#94a3b8;background:#94a3b833}*{scrollbar-width:thin;scrollbar-color:#ffffff1a transparent}.drag-ghost{pointer-events:none;z-index:200000;opacity:.85;will-change:transform, opacity;transform-origin:50%;filter:drop-shadow(0 4px 10px #00000080);position:fixed;top:0;left:0}.heating{animation:1s infinite alternate heatingGlow}@keyframes heatingGlow{0%{filter:drop-shadow(0 0 6px #fbbf2480)}to{filter:drop-shadow(0 0 18px #fbbf24e6)brightness(1.1)}}@keyframes litmusChange{0%{filter:brightness()}50%{filter:brightness(1.5)saturate(3)}to{filter:brightness()}}.litmus-changing{animation:.6s litmusChange}.step-progress{border-bottom:1px solid var(--border-glass);background:#0000004d;gap:4px;padding:8px 20px;display:flex}.step-dot{background:var(--border-glass);width:8px;height:8px;transition:var(--transition);border-radius:50%}.step-dot.done{background:var(--accent-green)}.step-dot.active{background:var(--accent-blue);box-shadow:0 0 6px var(--accent-blue)}.combine-zone{background:#34d3990d!important;border:2px dashed #34d39980!important}.chem-filter-tabs{border-bottom:1px solid var(--border-glass);background:#00000026;flex-wrap:wrap;flex-shrink:0;gap:3px;padding:6px 8px;display:flex}.chem-filter-btn{border:1px solid var(--border-glass);color:var(--text-muted);cursor:pointer;font-size:10px;font-family:var(--font-main);transition:var(--transition);white-space:nowrap;background:0 0;border-radius:10px;padding:3px 8px}.chem-filter-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue)}.chem-filter-btn.active{border-color:var(--accent-blue);color:var(--accent-blue);background:#38bdf826}.chem-count{color:var(--text-muted);text-align:right;border-bottom:1px solid var(--border-glass);background:#0000001a;flex-shrink:0;padding:4px 10px;font-size:10px}.chem-group-header{color:var(--accent-purple);text-transform:uppercase;letter-spacing:.5px;z-index:1;background:#a78bfa0d;border-bottom:1px solid #a78bfa1a;padding:5px 10px 3px;font-size:10px;font-weight:700;position:sticky;top:0}#phenomenaToast{pointer-events:none}#phenomenaToast *{pointer-events:auto}.chem-config-container{flex-direction:column;gap:20px;padding:10px;display:flex}.chem-config-header{border-bottom:1px solid var(--border-glass);align-items:center;gap:15px;padding-bottom:15px;display:flex}.chem-config-icon{filter:drop-shadow(0 0 10px #38bdf84d);font-size:48px}.chem-config-title h2{color:var(--text-primary);margin-bottom:4px;font-size:20px}.chem-config-title p{color:var(--text-muted);font-size:13px}.chem-config-tabs{border-radius:var(--radius-md);border:1px solid var(--border-glass);background:#0003;padding:4px;display:flex}.config-tab-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);background:0 0;border:none;flex:1;padding:8px;font-size:13px;font-weight:600}.config-tab-btn.active{background:var(--accent-blue);color:#fff;box-shadow:0 4px 12px #38bdf84d}.config-section{flex-direction:column;gap:12px;display:flex}.config-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.config-preset-btn{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:var(--transition);padding:10px 5px;font-size:13px}.config-preset-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue)}.config-preset-btn.selected{border-color:var(--accent-blue);color:var(--accent-blue);background:#38bdf81a}.custom-input-group{border-radius:var(--radius-sm);border:1px solid var(--border-glass);background:#ffffff08;align-items:center;gap:10px;margin-top:10px;padding:10px;display:flex}.custom-input-group input{border:none;border-bottom:2px solid var(--border-glass);color:#fff;background:0 0;outline:none;flex:1;padding:5px;font-size:16px;transition:border-color .3s}.custom-input-group input:focus{border-bottom-color:var(--accent-blue)}.config-actions{justify-content:flex-end;gap:12px;margin-top:10px;display:flex}.btn-config-cancel{border:1px solid var(--border-glass);color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;background:0 0;padding:10px 20px}.btn-config-confirm{background:var(--accent-green);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;padding:10px 25px;font-weight:700;box-shadow:0 4px 15px #34d3994d}.btn-config-confirm:hover{filter:brightness(1.1);transform:translateY(-2px)}.ws-item-property{color:var(--accent-blue);background:#38bdf81a;border-radius:4px;font-size:11px;font-weight:700}.search-highlight-hit{text-shadow:0 0 8px #fbbf2466;background:#fbbf2440;border-radius:2px;padding:0 1px;font-weight:800;color:#fbbf24!important}.common-star{filter:drop-shadow(0 0 2px #fbbf244d);vertical-align:middle;margin-left:4px;font-size:10px}.chem-item-footer{border-top:1px solid #ffffff08;justify-content:space-between;align-items:center;padding:6px 10px 8px;display:flex}.chem-type-tag{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);background:#ffffff0d;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700}.chem-type-tag.tag-acid{color:#f87171;background:#f871711a}.chem-type-tag.tag-base{color:#38bdf8;background:#38bdf81a}.chem-type-tag.tag-salt{color:#fbbf24;background:#fbbf241a}.chem-type-tag.tag-oxide{color:#fcd34d;background:#fcd34d1a}.chem-type-tag.tag-metal{color:#94a3b8;background:#94a3b81a}.chem-type-tag.tag-organic{color:#a78bfa;background:#a78bfa1a}.chem-type-tag.tag-gas{color:#34d399;background:#34d3991a}.chem-type-tag.tag-special{color:#f472b6;background:#f472b61a}.chem-type-tag.tag-indicator{color:#fb7185;background:#fb71851a}.badge.v-db{color:#fff;background:linear-gradient(135deg,#0ea5e9,#0284c7);box-shadow:0 2px 5px #0ea5e94d}.chem-empty-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;display:flex}.chem-empty-state .empty-icon{opacity:.3;margin-bottom:12px;font-size:32px}.chem-empty-state p{margin-bottom:16px;font-size:13px}.btn-clear-search{color:var(--accent-blue);border-radius:var(--radius-md);cursor:pointer;background:#38bdf81a;border:1px solid #38bdf833;padding:8px 16px;font-size:12px;font-weight:600;transition:all .2s}.btn-clear-search:hover{background:var(--accent-blue);color:#fff}.active-reaction-display{-webkit-backdrop-filter:blur(20px);border:1px solid #38bdf833;border-left:4px solid var(--accent-blue);z-index:1000;pointer-events:auto;background:#0a0f1ad9;border-radius:4px;flex-direction:column;width:320px;transition:transform .6s cubic-bezier(.19,1,.22,1);display:flex;position:absolute;top:24px;right:24px;overflow:hidden;transform:translate(400px);box-shadow:0 0 30px #0009,inset 0 0 15px #38bdf81a}.active-reaction-display.show{transform:translate(0)}.active-reaction-display:before{content:"";background:linear-gradient(90deg, transparent, var(--accent-blue), transparent);width:100%;height:2px;animation:3s linear infinite scanning-line;position:absolute;top:0;left:0}@keyframes scanning-line{0%{opacity:0;top:0%}5%{opacity:1}95%{opacity:1}to{opacity:0;top:100%}}.ard-header{background:#38bdf80d;border-bottom:1px solid #38bdf826;align-items:center;gap:12px;padding:12px 16px;display:flex}.ard-icon{color:var(--accent-blue);filter:drop-shadow(0 0 5px var(--accent-blue))}.ard-label{color:var(--accent-blue);text-transform:uppercase;letter-spacing:2px;flex:1;font-family:Orbitron,sans-serif;font-size:10px;font-weight:800}.ard-close{color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;font-size:14px}.ard-close:hover{color:var(--accent-red)}.ard-body{flex-direction:column;gap:12px;padding:20px;display:flex}.ard-equation{color:#fff;text-align:center;text-shadow:0 0 10px #38bdf899;background:#0006;border:1px dashed #38bdf84d;border-radius:2px;padding:15px;font-family:Orbitron,monospace;font-size:14px;line-height:1.6}.ard-observation{color:var(--text-secondary);border-left:2px solid #fbbf2466;margin-top:5px;padding-left:10px;font-family:JetBrains Mono,Fira Code,monospace;font-size:11px;line-height:1.5}.ard-synthesis{border-bottom:1px solid #ffffff0f;padding:8px 16px}.ard-synth-badge{color:#a7f3d0;letter-spacing:.3px;background:linear-gradient(135deg,#10b98126,#06b6d41a);border:1px solid #10b98166;border-radius:20px;align-items:center;gap:8px;padding:5px 14px;font-size:12px;font-weight:500;animation:2s ease-in-out infinite synth-pulse;display:inline-flex}.ard-synth-badge strong{color:#6ee7b7;font-size:13px}.ard-synth-icon{font-size:15px;animation:3s linear infinite spin-slow}.ard-synth-cat{color:#6ee7b7;text-transform:uppercase;letter-spacing:.5px;background:#10b98133;border:1px solid #10b9814d;border-radius:10px;padding:1px 8px;font-size:10px}@keyframes synth-pulse{0%,to{box-shadow:0 0 #10b98100}50%{box-shadow:0 0 12px #10b9814d}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.stirring-anim{transform-origin:top;animation:1s ease-in-out infinite stir}@keyframes stir{0%,to{transform:rotate(-8deg)translate(-2px)}50%{transform:rotate(8deg)translate(2px)}}.electrolysis-bubbles{opacity:0;animation:2s ease-in infinite rise}@keyframes rise{0%{opacity:0;transform:translateY(0)}20%{opacity:.6}to{opacity:0;transform:translateY(-40px)}}.power-supply-svg .btn-pow-toggle:hover,.power-supply-svg .btn-volt-cycle:hover{filter:brightness(1.5)}.tool-manual-list{padding:16px 20px}.manual-group{margin-bottom:24px}.manual-group h4{text-transform:uppercase;color:var(--accent-blue);letter-spacing:1px;opacity:.8;margin-bottom:12px;font-size:11px}.manual-item{border:1px solid var(--border-glass);border-radius:var(--radius-md);transition:var(--transition);background:#ffffff08;margin-bottom:10px;padding:12px}.manual-item:hover{background:#38bdf80d;border-color:#38bdf84d}.manual-tool-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.manual-icon{font-size:18px}.manual-name{color:var(--text-primary);font-size:13px;font-weight:600}.manual-desc{color:var(--text-secondary);font-size:12px;line-height:1.5}.manual-tips{border-top:1px dashed var(--border-glass);color:var(--accent-green);margin-top:8px;padding-top:8px;font-size:11px}.lab-main{position:relative;overflow:hidden;flex-direction:row!important}.workspace{z-index:10;position:relative;flex:1!important;height:100%!important}.workspace-surface{background-color:#050810!important;background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px)!important;background-position:0 0,0 0!important;background-repeat:repeat,repeat!important;background-size:50px 50px!important;background-attachment:scroll,scroll!important;background-origin:padding-box,padding-box!important;background-clip:border-box,border-box!important;box-shadow:inset 0 0 100px #000c!important}#toolsSidebar,#chemicalsSidebar{display:none!important}.floating-panel{z-index:100;flex-direction:column;transition:transform .3s cubic-bezier(.2,.8,.2,1);-webkit-backdrop-filter:blur(16px)!important;backdrop-filter:blur(16px)!important;border:1px solid var(--border-glass)!important;border-radius:var(--radius-md)!important;background:#111827d9!important;display:flex!important;position:absolute!important;box-shadow:0 10px 30px #00000080,0 0 0 1px #ffffff0d!important}.log-header,.ard-header,.guide-header,.chem-dock-header,.dock-tabs{cursor:grab;-webkit-user-select:none;user-select:none}.log-header:active,.ard-header:active,.guide-header:active,.chem-dock-header:active,.dock-tabs:active{cursor:grabbing}.ws-item{cursor:grab}.ws-item:active{cursor:grabbing}.reaction-log.floating-panel{border-top:1px solid var(--border-glass)!important;width:380px!important;height:auto!important;max-height:250px!important;top:20px!important;right:20px!important}.active-reaction-display.floating-panel{width:380px!important;inset:290px 20px auto auto!important;transform:none!important}.active-reaction-display.floating-panel.show{transform:none!important}.side-dock{width:var(--sidebar-w);background:var(--bg-panel);border-right:1px solid var(--border-glass);z-index:150;flex-direction:column;flex-shrink:0;position:relative;box-shadow:10px 0 40px #00000080;display:flex!important}.dock-tabs{border-bottom:1px solid var(--border-glass);background:#0000004d;justify-content:space-around;height:60px;padding:0 10px;display:flex}.dock-tab{color:#94a3b8;text-transform:uppercase;letter-spacing:2px;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:15px;font-size:16px;font-weight:800;transition:all .3s;display:flex}.dock-tab:hover{color:#f1f5f9;background:#ffffff08}.dock-tab.active{color:var(--accent-blue);text-shadow:0 0 10px #38bdf880;border-bottom-color:var(--accent-blue);background:#38bdf80d}.dock-tab:hover{color:var(--text-primary)}.dock-tab.active:after{content:"";background:var(--accent-blue);height:2px;box-shadow:0 -2px 10px var(--accent-blue);position:absolute;bottom:0;left:0;right:0}.dock-content{flex:1;width:100%;display:flex;position:relative;overflow:hidden}.dock-panel{opacity:0;pointer-events:none;flex-direction:column;width:100%;transition:opacity .3s;display:flex;position:absolute;inset:0}.dock-panel.active{opacity:1;pointer-events:auto}.vertical-scroll{flex-wrap:wrap!important;place-content:flex-start center!important;align-items:flex-start!important;gap:15px!important;height:100%!important;padding:20px 10px!important;display:flex!important;overflow:hidden auto!important}.vertical-scroll::-webkit-scrollbar{width:6px}.vertical-scroll::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}#toolsGrid,#chemicalsList{flex-flow:wrap!important;display:flex!important}.item-liquid-high{fill:var(--liquid-color);height:80%}#safety-overlay{z-index:9999;pointer-events:all;-webkit-backdrop-filter:blur(8px)saturate(150%);backdrop-filter:blur(8px)saturate(150%);box-sizing:border-box;background:#280000d9;border:2px solid red;width:100vw;height:100vh;display:none;position:fixed;top:0;left:0}#sustainability-monitor{color:#0fc;z-index:100;background:#00000080;border:1px solid #00ffcc4d;border-radius:6px;width:250px;padding:10px;font-family:Orbitron,sans-serif;position:absolute;top:20px;right:20px}.energy-bar-container{background:#111;border:1px solid #0fc;width:100%;height:10px;margin-top:5px;box-shadow:0 0 10px #00ffcc4d}#energy-bar-fill{background:linear-gradient(90deg,#0fc,#087);width:100%;height:100%;transition:width .5s ease-in-out,background .5s ease-in-out}#eco-status{text-align:right;letter-spacing:1px;margin-top:5px;font-size:12px}.critical-waste{text-shadow:0 0 5px #ff3131;color:#ff3131!important}.glitch-text{color:#ff3131;text-transform:uppercase;text-shadow:2px 2px #500;text-align:center;border-bottom:1px solid #ff3131;margin-bottom:20px;padding-bottom:10px;font-family:Courier New,Courier,monospace;font-size:24px;font-weight:700;animation:1.5s infinite alert-pulse}@keyframes alert-pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.quiz-container{background:#1a1a1af2;border:1px solid #ff3131;border-radius:8px;width:90%;max-width:600px;padding:30px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 30px #ff313166}.quiz-question{color:#f8fafc;margin-bottom:15px;font-family:Inter,sans-serif;font-size:16px;line-height:1.5}.quiz-options{flex-direction:column;gap:10px;display:flex}.quiz-option{color:#f8fafc;cursor:pointer;text-align:left;background:#ff31311a;border:1px solid #ff31314d;border-radius:4px;padding:12px 15px;font-family:Inter,sans-serif;font-size:14px;transition:all .2s}.quiz-option:hover{background:#ff31314d;border-color:#ff3131}.quiz-option.selected{background:#34d39933;border-color:#34d399}.quiz-btn-submit{color:#fff;cursor:pointer;background:#ff3131;border:none;border-radius:4px;width:100%;margin-top:20px;padding:10px 20px;font-size:16px;font-weight:700;transition:background .2s}.quiz-btn-submit:hover{background:#dc2626}.quiz-btn-submit:disabled{color:#94a3b8;cursor:not-allowed;background:#475569}.quiz-feedback{text-align:center;min-height:24px;margin-top:15px;font-weight:700}.quiz-feedback.success{color:#34d399}.quiz-feedback.error{color:#ef4444}.chemicals-list{grid-template-columns:1fr 1fr!important;align-content:start!important;gap:10px!important;min-height:0!important;padding:10px!important;display:grid!important}.horizontal-scroll-tabs{flex-wrap:nowrap;gap:8px;width:100%;padding-bottom:5px;display:flex;overflow-x:auto}.horizontal-scroll-tabs::-webkit-scrollbar{display:none}.chem-dock-header{border-bottom:1px solid #ffffff0d;flex-direction:column;gap:10px;padding:15px;display:flex}.dock-search{border:1px solid var(--border-glass);color:#fff;box-sizing:border-box;background:#ffffff0d;border-radius:20px;width:100%;padding:8px 12px;font-size:13px;transition:all .2s}.dock-search:focus{border-color:var(--accent-blue);outline:none;box-shadow:0 0 10px #38bdf84d}.tool-item,.chemical-item{box-sizing:border-box!important;background:#ffffff05!important;border:1px solid #ffffff0d!important;border-left:none!important;border-radius:16px!important;flex-direction:column!important;flex-shrink:0!important;justify-content:flex-start!important;align-items:center!important;width:132px!important;height:auto!important;min-height:150px!important;margin:0!important;padding:15px 10px!important;display:flex!important;box-shadow:inset 0 0 20px #00000080!important}.chem-group-header{text-align:center;letter-spacing:2px;width:100%;color:var(--text-primary);background:0 0;border-bottom:1px solid #ffffff1a;flex-basis:100%;margin:15px 0 5px;padding:5px 0;font-weight:700}.chem-color-bar{display:none!important}.tool-item:hover,.chemical-item:hover{background:#38bdf80d!important;border-color:#38bdf880!important;transform:translateY(-5px)!important;box-shadow:0 10px 20px #0006,inset 0 0 15px #38bdf833!important}.chem-header{width:100%;position:relative;flex-direction:column!important;justify-content:center!important;align-items:center!important}.chem-bottle{filter:drop-shadow(0 0 20px #38bdf880);justify-content:center;align-items:center;display:flex;margin-bottom:15px!important;font-size:72px!important}.chem-formula{color:gold;text-shadow:0 0 15px #ffd70099,0 2px 4px #000000e6;margin-top:5px;font-weight:800;text-align:center!important;font-size:16px!important}.chem-full-name{color:#cbd5e1;-webkit-line-clamp:2;-webkit-box-orient:vertical;width:100%;margin-top:4px;display:-webkit-box;overflow:hidden;text-align:center!important;font-size:11px!important}.chem-badges{flex-wrap:wrap;gap:4px;width:100%;justify-content:center!important;align-items:center!important;margin-top:10px!important}.premium-chem-icon{width:36px;height:46px;filter:drop-shadow(0 0 8px var(--accent-blue));background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:4px;margin:0 auto 6px;position:relative}.premium-tool-icon{filter:drop-shadow(0 2px 6px #fff3);background-position:50%;background-repeat:no-repeat;background-size:contain;width:44px;height:44px;margin:0 auto 10px}.tool-name{font-weight:500;font-size:12px!important}.drop-hint-inner{opacity:.8!important}.hint-icon{color:var(--accent-blue);text-shadow:0 0 20px var(--accent-blue);font-size:64px;animation:2s ease-in-out infinite float}@keyframes float{0%{transform:translate(0)scale(1)}50%{transform:translate(15px,-15px)scale(1.05)}to{transform:translate(-10px,10px)scale(.95)}}.setup-modal{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);z-index:100000;opacity:0;pointer-events:none;background:radial-gradient(circle,#0f172ae6,#050810);justify-content:center;align-items:center;transition:opacity .6s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;inset:0}.setup-modal:before{content:"";pointer-events:none;background-color:#0000;background-image:linear-gradient(#38bdf808 1px,#0000 1px),linear-gradient(90deg,#38bdf808 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:40px 40px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.setup-modal.show{opacity:1;pointer-events:auto}.setup-box{text-align:center;width:90%;max-width:800px;padding:50px 40px;transition:transform .6s cubic-bezier(.16,1,.3,1);position:relative;transform:translateY(30px)scale(.98);box-shadow:0 40px 100px #000c,inset 0 0 20px #38bdf80d;background:#0a0f1acc!important;border:1px solid #38bdf833!important;border-radius:4px!important}.setup-box:before,.setup-box:after{content:"";border:2px solid var(--accent-blue);width:20px;height:20px;position:absolute}.setup-box:before{border-bottom:0;border-right:0;top:-2px;left:-2px}.setup-box:after{border-top:0;border-left:0;bottom:-2px;right:-2px}.setup-modal.show .setup-box{transform:translateY(0)scale(1)}.setup-box h2{color:var(--accent-blue);letter-spacing:6px;text-shadow:0 0 20px #38bdf866;margin-bottom:10px;font-family:Orbitron,sans-serif;font-size:32px}.setup-desc{color:var(--text-muted);letter-spacing:1px;opacity:.7;margin-bottom:40px;font-family:Fira Code,monospace;font-size:14px}.setup-grid{justify-content:center;gap:24px;margin-bottom:50px;display:flex}.setup-item{cursor:pointer;flex-direction:column;align-items:center;width:180px;padding:30px 20px 20px;transition:all .4s cubic-bezier(.33,1,.68,1);display:flex;position:relative;overflow:hidden;background:#ffffff05!important;border:1px solid #ffffff0d!important;border-radius:4px!important}.setup-item:hover{transform:translateY(-8px);background:#38bdf80d!important;border-color:#38bdf84d!important}.setup-item.equipped{box-shadow:0 0 40px #34d3991a;background:#34d3990d!important;border-color:#34d39966!important}.item-id{color:var(--text-muted);letter-spacing:1px;font-family:Fira Code,monospace;font-size:9px;position:absolute;top:8px;left:10px}.scan-line{background:linear-gradient(90deg, transparent, var(--accent-blue), transparent);opacity:0;z-index:10;width:100%;height:2px;position:absolute;top:0;left:0}.setup-item.equipped .scan-line{opacity:1;animation:2s cubic-bezier(.16,1,.3,1) infinite setup-scan}@keyframes setup-scan{0%{opacity:0;top:0}50%{opacity:.5}to{opacity:0;top:100%}}.setup-icon{filter:drop-shadow(0 0 10px #00000080);justify-content:center;align-items:center;height:80px;margin-bottom:24px;transition:all .4s;display:flex}.setup-item.equipped .setup-icon{filter:drop-shadow(0 0 15px #34d3994d);transform:scale(1.1)}.setup-item.equipped .setup-icon svg path,.setup-item.equipped .setup-icon svg rect,.setup-item.equipped .setup-icon svg ellipse{stroke:var(--accent-green)!important}.setup-label{color:var(--text-primary);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:5px;font-size:13px;font-weight:800}.setup-status{color:var(--text-muted);letter-spacing:1px;margin-bottom:15px;font-family:Fira Code,monospace;font-size:10px}.setup-item.equipped .setup-status{color:var(--accent-green);text-shadow:0 0 5px var(--accent-green);font-weight:700}.setup-check{background:#ffffff1a;border-radius:3px;width:30px;height:6px;position:relative;overflow:hidden}.setup-item.equipped .setup-check{background:#34d39933}.setup-item.equipped .setup-check:after{content:"";background:var(--accent-green);width:100%;height:100%;animation:1.5s ease-in-out infinite check-pulse;position:absolute;top:0;left:0}@keyframes check-pulse{0%,to{opacity:.5}50%{opacity:1}}.btn-enter-lab{letter-spacing:3px;cursor:not-allowed;text-transform:uppercase;border-radius:4px;padding:16px 60px;font-family:Orbitron,sans-serif;font-size:14px;font-weight:800;transition:all .4s;color:var(--text-muted)!important;background:0 0!important;border:1px solid #ffffff1a!important}.btn-enter-lab:not(:disabled){cursor:pointer;animation:2s infinite ready-pulse;box-shadow:0 0 30px #38bdf833;border-color:var(--accent-blue)!important;color:var(--accent-blue)!important;background:#38bdf81a!important}@keyframes ready-pulse{0%,to{transform:scale(1);box-shadow:0 0 20px #38bdf81a}50%{transform:scale(1.02);box-shadow:0 0 40px #38bdf84d}}.btn-enter-lab:hover:not(:disabled){background:var(--accent-blue)!important;color:#050810!important}.intro-overlay{z-index:200000;background:#020617;justify-content:center;align-items:flex-start;padding:60px 0;transition:opacity 1s cubic-bezier(.4,0,.2,1),transform 1s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;inset:0;overflow-y:auto}.intro-overlay.hide{opacity:0;pointer-events:none;transform:scale(1.1)}.intro-bg-glow{background:radial-gradient(circle,#38bdf81a 0%,#0000 70%);width:100%;height:100%;animation:8s ease-in-out infinite alternate bg-pulse;position:absolute}#introCanvas{z-index:1;pointer-events:none;opacity:.6;width:100%;height:100%;position:absolute;top:0;left:0}@keyframes bg-pulse{0%{opacity:.5;transform:scale(1)translate(0)}to{opacity:.8;transform:scale(1.2)translate(-2%,2%)}}.intro-content{z-index:10;text-align:center;flex-direction:column;align-items:center;gap:50px;width:95%;max-width:1100px;display:flex;position:relative}.intro-header{animation:1s ease-out fade-down}.intro-logo-container{filter:drop-shadow(0 0 15px #38bdf866);margin-bottom:5px}.intro-logo-container svg{width:48px;height:48px}.intro-title{letter-spacing:8px;color:#fff;text-indent:8px;margin-bottom:5px;font-family:Orbitron,sans-serif;font-size:64px;font-weight:800}.intro-title .accent{color:var(--accent-blue);text-shadow:0 0 30px #38bdf899}.intro-title .version{letter-spacing:2px;opacity:.5;vertical-align:middle;font-size:14px}.intro-subtitle{color:#ff3e3e;letter-spacing:4px;text-transform:uppercase;text-shadow:0 0 25px #ff3e3e66;margin-top:10px;font-size:28px;font-weight:700}.intro-features{grid-template-columns:repeat(3,1fr);gap:15px;width:100%;max-width:1000px;animation:1s ease-out .2s backwards fade-up;display:grid}.feature-card{-webkit-backdrop-filter:blur(10px);animation:.8s ease-out backwards fade-up;animation-delay:calc(var(--delay) * 80ms + .2s);background:#0f172a66;border:1px solid #ffffff0d;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:180px;padding:24px 20px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex}.feature-card:hover{background:#1e293b99;border-color:#34d3994d;transform:translateY(-15px);box-shadow:0 20px 40px #0006}.f-icon{width:44px;height:44px;color:var(--accent-green);filter:drop-shadow(0 0 10px #34d39966);background:#34d3991a;border:1px solid #34d39933;border-radius:12px;justify-content:center;align-items:center;margin-bottom:12px;transition:all .3s;display:flex}.f-icon svg{width:24px;height:24px}.feature-card:hover .f-icon{border-color:var(--accent-green);background:#34d39933;transform:scale(1.1)rotate(5deg)}.feature-card h3{color:var(--accent-green);text-shadow:0 0 15px #34d3994d;margin-bottom:8px;font-family:Orbitron,sans-serif;font-size:15px}.feature-card p{color:#94a3b8;font-size:11px;line-height:1.5}.intro-footer{flex-direction:column;align-items:center;gap:20px;margin-top:10px;animation:1s ease-out .5s backwards fade-up;display:flex}.btn-start-exp{color:#fff;letter-spacing:2px;cursor:pointer;background:linear-gradient(135deg,#0ea5e9 0%,#0284c7 100%);border:none;border-radius:40px;align-items:center;gap:15px;padding:14px 40px;font-family:Orbitron,sans-serif;font-size:16px;font-weight:800;transition:all .4s cubic-bezier(.23,1,.32,1);display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #0ea5e94d,inset 0 1px #fff3}.btn-start-exp:before{content:"";background:linear-gradient(90deg,#0000,#fff6,#0000);width:40px;height:100%;transition:all .6s;position:absolute;top:0;left:-100%}.btn-start-exp:hover{background:linear-gradient(135deg,#38bdf8 0%,#0ea5e9 100%);transform:scale(1.05)translateY(-3px);box-shadow:0 20px 50px #0ea5e980}.btn-start-exp:hover:before{left:150%}.copyright{text-transform:uppercase;letter-spacing:2px;color:#475569;font-size:11px;font-weight:600}@keyframes fade-down{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.qa-container{max-width:600px;margin:0 auto;padding:10px}.qa-header{text-align:center;margin-bottom:30px}.qa-icon-bg{filter:drop-shadow(0 0 10px #38bdf880);margin-bottom:10px;font-size:40px}.qa-header h2{color:var(--accent-blue);letter-spacing:1px;margin-bottom:8px;font-family:Orbitron,sans-serif;font-size:20px}.qa-header p{color:var(--text-secondary);font-size:13px}.qa-list{flex-direction:column;gap:12px;display:flex}.qa-item{border:1px solid var(--border-glass);border-radius:var(--radius-md);transition:var(--transition);background:#ffffff08;overflow:hidden}.qa-item:hover{background:#ffffff0d;border-color:#38bdf866}.qa-question{cursor:pointer;color:var(--text-primary);justify-content:space-between;align-items:center;padding:16px 20px;font-size:14px;font-weight:600;display:flex}.qa-chevron{color:var(--text-secondary);transition:transform .3s}.qa-answer{grid-template-rows:0fr;transition:grid-template-rows .3s;display:grid}.qa-answer-content{color:var(--text-secondary);padding:0 20px;font-size:13.5px;line-height:1.6;overflow:hidden}.qa-item.open{border-color:var(--accent-blue);background:#38bdf80d;box-shadow:0 4px 20px #0003}.qa-item.open .qa-chevron{color:var(--accent-blue);transform:rotate(180deg)}.qa-item.open .qa-answer{grid-template-rows:1fr}.qa-item.open .qa-answer-content{padding-bottom:20px}.qa-footer{text-align:center;border-radius:var(--radius-md);border:1px dashed var(--border-glass);background:#ffffff05;margin-top:40px;padding:20px}.qa-footer p{color:var(--text-muted);font-size:11px}.qa-footer b{color:var(--accent-blue)}.scale-badge{color:#93c5fd;pointer-events:none;opacity:0;white-space:nowrap;z-index:100;background:#1e3a8ae6;border:1px solid #93c5fd66;border-radius:10px;padding:2px 7px;font-family:Orbitron,sans-serif;font-size:10px;font-weight:700;transition:opacity .3s;position:absolute;top:-22px;left:50%;transform:translate(-50%)}.music-track-select{color:#34d399;cursor:pointer;background:#0f172acc;border:1px solid #34d3994d;border-radius:8px;outline:none;padding:5px 8px;font-family:Inter,sans-serif;font-size:11px;transition:all .3s}.music-track-select:hover{background:#34d3991a;border-color:#34d399}.music-track-select option{color:#fff;background:#0f172a}.chem-ghs-icons{gap:2px;margin-top:3px;display:flex}.ghs-icon-mini{cursor:help;filter:drop-shadow(0 0 2px #00000080);font-size:11px;line-height:1}.chem-item-footer{flex-direction:column;gap:2px;display:flex}.lab-rules-modal{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:999999;background:#000000d9;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.lab-rules-modal.show{animation:.4s cubic-bezier(.34,1.56,.64,1) modal-enter;display:flex}@keyframes modal-enter{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.lab-rules-box{background:linear-gradient(145deg,#0f172a,#1e293b);border:1px solid #38bdf84d;border-radius:20px;width:100%;max-width:780px;max-height:90vh;padding:30px;overflow-y:auto;box-shadow:0 25px 60px #000c,0 0 60px #38bdf81a}.lab-rules-box::-webkit-scrollbar{width:4px}.lab-rules-box::-webkit-scrollbar-thumb{background:#38bdf84d;border-radius:2px}.lab-rules-header{border-bottom:1px solid #38bdf833;align-items:center;gap:20px;margin-bottom:24px;padding-bottom:20px;display:flex}.lab-rules-icon{filter:drop-shadow(0 0 16px #38bdf880);font-size:48px;animation:3s infinite pulse}.lab-rules-title{color:#38bdf8;letter-spacing:2px;text-shadow:0 0 20px #38bdf866;margin:0;font-family:Orbitron,sans-serif;font-size:22px;font-weight:800}.lab-rules-subtitle{color:#94a3b8;letter-spacing:3px;margin-top:4px;font-size:13px}.lab-rules-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:24px;display:grid}@media (width<=560px){.lab-rules-grid{grid-template-columns:1fr}}.lab-rule-card{background:#ffffff08;border:1px solid #ffffff12;border-radius:12px;align-items:flex-start;gap:12px;padding:14px;transition:all .2s;display:flex}.lab-rule-card:hover{background:#38bdf80d;border-color:#38bdf833;transform:translateY(-1px)}.rule-num{color:#fff;background:linear-gradient(135deg,#1e40af,#3b82f6);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;min-width:28px;height:28px;font-family:Orbitron,sans-serif;font-size:12px;font-weight:800;display:flex}.rule-icon{flex-shrink:0;margin-top:-2px;font-size:24px}.rule-text{color:#cbd5e1;font-size:12px;line-height:1.5}.rule-text strong{color:#f1f5f9;margin-bottom:2px;font-size:13px;display:block}.lab-rules-footer{border-top:1px solid #ffffff14;flex-direction:column;align-items:center;gap:16px;padding-top:20px;display:flex}.rules-warning{color:#fbbf24;text-align:center;background:#fbbf241a;border:1px solid #fbbf2440;border-radius:8px;padding:10px 16px;font-size:12px}.btn-confirm-rules{color:#fff;cursor:pointer;letter-spacing:.5px;font-size:14px;font-weight:700;font-family:var(--font-main);background:linear-gradient(135deg,#1d4ed8,#3b82f6);border:none;border-radius:12px;padding:14px 32px;transition:all .2s;box-shadow:0 4px 20px #3b82f666}.btn-confirm-rules:hover{background:linear-gradient(135deg,#2563eb,#60a5fa);transform:translateY(-2px);box-shadow:0 8px 30px #3b82f699}.btn-confirm-rules:active{transform:scale(.97)}.ph-strip-widget{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:500;background:#0a0e1ad9;border:1px solid #ffffff1a;border-radius:30px;align-items:center;gap:10px;min-width:380px;padding:8px 16px;transition:opacity .4s;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #00000080}.ph-strip-label{color:#94a3b8;white-space:nowrap;letter-spacing:1px;font-family:Orbitron,sans-serif;font-size:11px;font-weight:700}.ph-strip-track{flex:1;position:relative}.ph-strip-gradient{background:linear-gradient(90deg,#ff1a1a 0%,#ff4d1a 7.14%,#ff801a 14.28%,#ffb31a 21.42%,#ffe61a 28.57%,#e6ff1a 35.71%,#b3ff1a 42.85%,#66ff1a 50%,#1aff66 57.14%,#1affb3 64.28%,#1affff 71.42%,#1a80ff 78.57%,#1a1aff 85.71%,#801aff 92.85%,#b31aff 100%);border-radius:8px;height:16px;box-shadow:inset 0 2px 4px #00000080,0 2px 8px #0006}.ghs-icon-mini{gap:3px;margin-top:4px;display:flex}.ghs-diamond{box-sizing:border-box;background:#fff;border:1.5px solid #dc2626;justify-content:center;align-items:center;width:18px;height:18px;display:flex;position:relative;overflow:hidden;transform:rotate(45deg);box-shadow:0 1px 3px #0000004d}.ghs-diamond .ghs-symbol{color:#000;justify-content:center;align-items:center;width:12px;height:12px;font-size:10px;font-weight:900;display:flex;transform:rotate(-45deg)}.ghs-diamond.ghs-corrosive .ghs-symbol:before{content:"🧪"}.ghs-diamond.ghs-toxic .ghs-symbol:before{content:"💀"}.ghs-diamond.ghs-flammable .ghs-symbol:before{content:"🔥"}.ghs-diamond.ghs-oxidizer .ghs-symbol:before{content:"⚡"}.ghs-diamond.ghs-explosive .ghs-symbol:before{content:"💥"}.ghs-diamond.ghs-hazard .ghs-symbol:before{content:"!"}.ph-strip-marker{pointer-events:none;background:#fff;border-radius:3px;width:6px;height:22px;transition:left .5s cubic-bezier(.34,1.56,.64,1);position:absolute;top:-4px;transform:translate(-50%);box-shadow:0 0 8px #fffc,0 0 2px #00000080}.ph-strip-ticks{justify-content:space-between;margin-top:3px;display:flex}.ph-strip-ticks span{color:#475569;font-family:Orbitron,sans-serif;font-size:8px;font-weight:600}.ph-strip-value{color:#38bdf8;text-align:center;white-space:nowrap;min-width:52px;font-family:Orbitron,sans-serif;font-size:13px;font-weight:800}.beaker-svg,.flask-svg,.test-tube-svg{filter:drop-shadow(0 4px 12px #0006)}#eco-report-modal{color:#e0e0e0;background:linear-gradient(#050505 0%,#0d1a0d 50%,#1a1a1a 100%);border:1px solid #0fc;border-radius:6px;width:min(820px,92vw);max-height:88vh;padding:28px;font-family:Orbitron,monospace;position:relative;overflow-y:auto;box-shadow:0 0 40px #00ffcc26,inset 0 0 60px #000c}#eco-report-modal::-webkit-scrollbar{width:4px}#eco-report-modal::-webkit-scrollbar-track{background:#111}#eco-report-modal::-webkit-scrollbar-thumb{background:#0fc4;border-radius:2px}#eco-report-modal:before{content:"";pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00ffcc04 2px 4px);border-radius:6px;position:absolute;inset:0}.eco-report-header{z-index:1;border-bottom:1px solid #0fc3;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:16px;display:flex;position:relative}.eco-title h2{letter-spacing:3px;font-family:Orbitron,sans-serif}.eco-metrics-row{z-index:1;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px;display:grid;position:relative}.eco-metric-card{text-align:center;background:linear-gradient(135deg,#0f172acc,#1e293b99);border:1px solid #00ffcc40;border-radius:12px;flex-direction:column;align-items:center;padding:22px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 20px #00000080}.eco-metric-card:hover{border-color:#0fc9;transform:translateY(-5px);box-shadow:0 10px 30px #0fc3}.eco-metric-card svg{transition:transform .6s cubic-bezier(.34,1.56,.64,1)}.eco-metric-card:hover svg{transform:rotate(360deg)scale(1.2)}.eco-metric-value{text-shadow:0 0 12px;margin-bottom:6px;font-family:Orbitron,sans-serif;font-size:32px;font-weight:800;line-height:1;animation:2s ease-in-out infinite alternate pulse-glow}.eco-metric-label{letter-spacing:2px;color:#94a3b8;text-transform:uppercase;font-size:10px;font-weight:600}@keyframes pulse-glow{0%{text-shadow:0 0 8px;opacity:.85}to{text-shadow:0 0 18px;opacity:1}}.eco-verdict-emoji{animation:2s ease-in-out infinite celebrate-wiggle;display:inline-block}@keyframes celebrate-wiggle{0%,to{filter:drop-shadow(0 0 8px #fbbf2499);transform:scale(1)rotate(-3deg)}50%{filter:drop-shadow(0 0 15px #fbbf24e6);transform:scale(1.2)rotate(3deg)}}.report-table{border-collapse:collapse;z-index:1;width:100%;margin-bottom:20px;font-family:Inter,sans-serif;position:relative}.report-table th{color:#0fc;text-align:left;letter-spacing:2px;background:#00ffcc08;border-bottom:1px solid #0fc;padding:10px 14px;font-family:Orbitron,sans-serif;font-size:11px}.report-table td{color:#cbd5e1;border-bottom:1px solid #1e293b;padding:10px 14px;font-size:13px}.report-table tr:hover td{background:#00ffcc08}.eco-badge{letter-spacing:1px;border-radius:3px;padding:2px 8px;font-family:Orbitron,sans-serif;font-size:10px;font-weight:700;display:inline-block}.eco-badge-ok{color:#0fc;background:#00ffcc1a;border:1px solid #00ffcc4d}.eco-badge-waste{color:#ff3131;background:#ff31311a;border:1px solid #ff31314d}.verdict-box{z-index:1;border-left:3px solid #0fc;border-radius:0 6px 6px 0;margin-top:16px;padding:18px 20px;position:relative}.rank-elite{color:#0fc}.rank-success{color:#34d399}.rank-warning{color:#f59e0b}.rank-failure{animation:2s ease-in-out infinite failure-neon}@keyframes failure-neon{0%,to{color:#ff3131;text-shadow:0 0 15px #ff3131,0 0 30px #ff3131cc}20%{color:#f59e0b;text-shadow:0 0 15px #f59e0b,0 0 30px #f59e0bcc}40%{color:#f0f;text-shadow:0 0 15px #f0f,0 0 30px #f0fc}60%{color:#38bdf8;text-shadow:0 0 15px #38bdf8,0 0 30px #38bdf8cc}80%{color:#f05;text-shadow:0 0 15px #f05,0 0 30px #f05c}}.rank-failure-msg{font-weight:700;animation:2s ease-in-out infinite failure-neon}#opt-lab-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;background:#000000e6;justify-content:center;align-items:center;font-family:Orbitron,Inter,sans-serif;display:none;position:fixed;inset:0}.opt-container{color:#fff;background:#0f172af2;border:1px solid #00ffcc4d;border-radius:12px;width:900px;padding:24px;box-shadow:0 0 40px #00000080,inset 0 0 20px #00ffcc0d}.opt-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:16px;display:flex}.opt-title .label{color:#0fc;letter-spacing:4px;margin-bottom:4px;font-size:10px;display:block}.opt-title h2{background:linear-gradient(90deg,#fff,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0;font-size:24px;font-weight:700}.opt-close{color:#ff3131;cursor:pointer;background:0 0;border:1px solid #ff3131;border-radius:4px;padding:8px 16px;font-family:inherit;font-size:12px;transition:all .2s}.opt-close:hover{background:#ff31311a;box-shadow:0 0 10px #ff31314d}.opt-main{grid-template-columns:350px 1fr;gap:32px;display:grid}.control-group{margin-bottom:24px}.control-group label{color:#94a3b8;margin-bottom:12px;font-size:13px;display:block}.control-group label span{color:#0fc;font-size:16px;font-weight:700}.control-group input[type=range]{accent-color:#0fc;background:#ffffff1a;border-radius:3px;outline:none;width:100%;height:6px}.control-hints{color:#64748b;justify-content:space-between;margin-top:8px;font-size:10px;display:flex}.opt-stats-box{background:#0000004d;border-radius:8px;margin-top:32px;padding:20px}.stat-item{margin-bottom:20px}.stat-label{color:#94a3b8;letter-spacing:1px;margin-bottom:8px;font-size:11px;display:block}.stat-progress{background:#ffffff0d;border-radius:4px;width:100%;height:8px;margin-bottom:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#0fc,#0c9);height:100%;transition:width .3s;box-shadow:0 0 10px #00ffcc80}.progress-fill.cost{background:linear-gradient(90deg,#38bdf8,#2563eb);box-shadow:0 0 10px #38bdf880}.stat-val{color:#fff;font-size:18px;font-weight:700}.opt-visualization{flex-direction:column;gap:20px;display:flex}.reaction-display{background:radial-gradient(circle,#00ffcc0d,#0000);border:1px dashed #ffffff1a;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:250px;display:flex;position:relative;overflow:hidden}.molecule-chamber{position:absolute;inset:0}.particle{opacity:.85;border:1px solid #ffffff4d;border-radius:50%;width:14px;height:14px;animation:4s ease-in-out infinite alternate float;position:absolute}.particle.reactant{background:radial-gradient(circle at 30% 30%,#38bdf8,#1d4ed8);box-shadow:0 0 15px #38bdf8cc}.particle.product{background:radial-gradient(circle at 30% 30%,#0fc,#047857);width:18px;height:18px;box-shadow:0 0 15px #0fcc}.chamber-legend{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);white-space:nowrap;background:#0f172af2;border:2px solid #38bdf866;border-radius:12px;flex-direction:row;gap:25px;padding:15px 25px;font-size:16px;font-weight:700;display:flex;position:absolute;top:20px;right:20px;box-shadow:0 8px 32px #0009,0 0 15px #38bdf833}.legend-item{color:#cbd5e1;align-items:center;gap:12px;display:flex}.legend-item .dot{border-radius:50%;width:14px;height:14px;display:inline-block}.legend-item .dot.reactant{background:#38bdf8;box-shadow:0 0 8px #38bdf899}.legend-item .dot.product{background:#0fc;box-shadow:0 0 8px #0fc9}.reaction-equation{z-index:10;text-shadow:0 0 20px #000;font-size:28px;font-weight:700}.arrow{margin:0 15px;transition:all .3s}.deltaH{color:#ff3131;text-align:center;margin-top:10px;font-size:12px;display:block}.ai-insight{color:#cbd5e1;background:#00ffcc0d;border-left:3px solid #0fc;border-radius:0 4px 4px 0;padding:16px;font-size:13px;font-style:italic;line-height:1.6}:root{--lib-accent:#f34;--lib-glow:#f346;--lib-dark:#020617;--monolith-bg:#090e17f2;--monolith-border:#f343;--glass-effect:blur(15px)}.library-overlay{-webkit-backdrop-filter:var(--glass-effect);z-index:200000;opacity:0;pointer-events:none;background:#020617b3;justify-content:center;align-items:center;transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;inset:0}.library-overlay.open{opacity:1;pointer-events:auto}.lib-panel{background:var(--monolith-bg);border:1px solid var(--monolith-border);border-radius:8px;flex-direction:column;width:95%;max-width:1400px;height:92%;display:flex;position:relative;overflow:hidden;box-shadow:0 40px 100px #000c}.lib-panel:before{content:"";opacity:.05;pointer-events:none;z-index:100;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");position:absolute;inset:0}.lib-bento-nav{border-bottom:1px solid var(--monolith-border);color:var(--lib-accent);scrollbar-width:thin;scrollbar-color:var(--lib-accent) transparent;background:#0006;flex-flow:row;align-items:flex-start;gap:40px;padding:30px 35px;display:flex;overflow-x:auto}.lib-bento-nav::-webkit-scrollbar{height:4px}.lib-bento-nav::-webkit-scrollbar-thumb{background:var(--lib-accent);box-shadow:0 0 10px var(--lib-glow);border-radius:10px}.lib-bento-nav::-webkit-scrollbar-track{background:#38bdf80d}.lib-badge{text-transform:uppercase;letter-spacing:1px;border:1px solid #0000;border-radius:4px;margin-right:8px;padding:3px 10px;font-size:9px;font-weight:800;display:inline-flex}.badge-danger{color:#fb7185;background:#fb71851a;border-color:#fb71854d}.badge-toxic{color:#a78bfa;background:#a78bfa1a;border-color:#a78bfa4d}.badge-success{color:#34d399;background:#34d3991a;border-color:#34d3994d}.badge-info{color:var(--lib-accent);background:#38bdf81a;border-color:#38bdf84d}.ph-indicator-card{background:#02061799;border:1px solid #ffffff0d;border-radius:8px;margin-bottom:25px;padding:25px}.ph-strip{border-radius:10px;width:100%;height:20px;margin:15px 0;position:relative;box-shadow:inset 0 0 15px #00000080}.ph-labels{color:#94a3b8;justify-content:space-between;padding:0 5px;font-size:10px;font-weight:700;display:flex}.bento-category{flex-direction:column;flex-shrink:0;gap:8px;display:flex}.bento-cat-tag{color:#f34;opacity:.8;letter-spacing:2px;text-transform:uppercase;margin-bottom:3px;font-size:12px;font-weight:900}.bento-grid-mini{background:var(--monolith-border);border:1px solid var(--monolith-border);border-radius:6px;flex-direction:row;gap:2px;display:flex;overflow:hidden}.bento-item{background:var(--monolith-bg);cursor:pointer;text-transform:uppercase;letter-spacing:1px;color:gold;text-shadow:0 0 8px #ffd70066,0 1px 2px #000c;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-width:110px;height:70px;padding:12px 20px;font-family:Orbitron,sans-serif;font-size:11px;font-weight:800;transition:all .2s cubic-bezier(.4,0,.2,1);animation:2s ease-in-out infinite nhap-nhay;display:flex}@keyframes nhap-nhay{0%,to{text-shadow:0 0 10px #ffd70080,0 2px 4px #000c;opacity:1}50%{text-shadow:0 0 25px gold,0 2px 4px #000c;opacity:.8}}.bento-item svg{transition:all .3s cubic-bezier(.175,.885,.32,1.275);transform:scale(1.1)}.bento-item:hover svg{filter:drop-shadow(0 0 15px var(--lib-accent));transform:scale(1.7)rotate(15deg)}.bento-item.active svg{filter:drop-shadow(0 0 20px var(--lib-accent));animation:1.5s ease-in-out infinite alternate icon-bounce;transform:scale(1.7)}@keyframes icon-bounce{0%{transform:translateY(0)scale(1.1)}to{transform:translateY(-4px)scale(1.2)}}.bento-label{max-width:100%;line-height:1.3}.bento-item:hover{color:var(--lib-accent);text-shadow:0 0 15px var(--lib-glow);border-color:var(--lib-accent);background:#ff33440d}.bento-item.active{color:var(--lib-accent);text-shadow:0 0 20px var(--lib-glow);border:2px solid var(--lib-accent);background:#ff334426}.bento-item.active:after{content:"";background:var(--lib-accent);width:100%;height:2px;box-shadow:0 0 10px var(--lib-accent);position:absolute;bottom:0;left:0}.bento-item.large{grid-column:span 2;font-size:13px}.lib-header-strip{border-bottom:1px solid var(--monolith-border);background:#0000004d;flex-direction:column;display:flex}.lib-utility-bar{background:#38bdf808;border-top:1px solid #38bdf80d;justify-content:space-between;align-items:center;padding:10px 25px;display:flex}.lib-search-box{flex:1;align-items:center;gap:12px;display:flex}.lib-search-box input{color:#fff;letter-spacing:1.5px;opacity:.8;background:0 0;border:none;outline:none;width:100%;font-family:Orbitron,sans-serif;font-size:11px}.btn-exit-mono{color:#fb7185;cursor:pointer;letter-spacing:1px;background:0 0;border:1px solid #fb71854d;padding:6px 15px;font-family:Orbitron,sans-serif;font-size:9px;font-weight:800;transition:all .2s}.btn-exit-mono:hover{color:#fff;background:#fb7185;border-color:#fb7185}.lib-content-frame::-webkit-scrollbar{width:4px}.lib-content-frame::-webkit-scrollbar-thumb{background:var(--monolith-border)}.tab-content-anim{animation:.5s cubic-bezier(.16,1,.3,1) liquidSlide}@keyframes liquidSlide{0%{opacity:0;transform:scale(.98)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.lib-section-title{color:var(--lib-accent);letter-spacing:2px;margin-bottom:8px;font-family:Orbitron,sans-serif;font-size:20px;font-weight:800}.spec-plate{background:#38bdf808;border:1px solid #38bdf814;justify-content:space-between;align-items:center;margin-bottom:12px;padding:20px 30px;transition:all .3s;display:flex;position:relative}.spec-plate:before{content:"";background:0 0;width:2px;transition:all .3s;position:absolute;top:0;bottom:0;left:0}.spec-plate:hover{border-color:var(--lib-accent);background:#38bdf814;transform:translate(5px)}.spec-plate:hover:before{background:var(--lib-accent)}.analytic-profile{background:#02061780;border:1px solid #38bdf81a;margin-bottom:25px;padding:30px}.profile-id{border-color:#38bdf81a!important}.profile-ion{color:var(--lib-accent);text-shadow:0 0 15px var(--lib-glow)}.profile-section h4{color:var(--lib-accent);opacity:.8;font-family:Inter,sans-serif;font-weight:800}.profile-eq{color:var(--lib-accent);border-top-color:#38bdf81a!important}.matrix-cluster{background:#02061766;border:1px solid #ffffff08;border-radius:12px;margin-top:45px;overflow:hidden}.cluster-header{letter-spacing:2px;background:#ffffff05;border-bottom:1px solid #ffffff08;align-items:center;gap:15px;padding:20px 30px;font-family:Orbitron,sans-serif;font-size:14px;font-weight:800;display:flex}.rule-grid{background:#ffffff0d;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1px;display:grid}.rule-tag{background:var(--monolith-bg);flex-direction:column;gap:12px;padding:30px;transition:all .3s;display:flex}.rule-tag:hover{background:#38bdf80d}.rule-tag .anion-id{color:var(--lib-accent);margin-bottom:5px;font-family:Orbitron,sans-serif;font-size:24px}.rule-tag .status-line{color:#f8fafc;font-size:13px;font-weight:700}.rule-tag .exception-box{background:#0003;border-left:2px solid #38bdf84d;margin-top:10px;padding:12px 15px;font-size:11px;line-height:1.6}.rule-tag.insoluble .anion-id{color:#fb7185}.rule-tag.insoluble .exception-box{border-left-color:#fb71854d}.synthetic-path{border-left:2px solid #38bdf81a;margin-left:40px;padding:40px 0;position:relative}.synthetic-path:before{content:"";background:linear-gradient(180deg, var(--lib-accent) 0%, #f472b680 50%, var(--lib-accent) 100%);width:2px;box-shadow:0 0 10px var(--lib-glow);position:absolute;top:0;bottom:0;left:20px}.path-step{margin-bottom:50px;padding-left:60px;transition:all .3s;position:relative}.path-marker{background:var(--monolith-bg);border:3px solid var(--lib-accent);z-index:2;width:20px;height:20px;box-shadow:0 0 15px var(--lib-glow);border-radius:50%;position:absolute;top:10px;left:11px}.path-marker:after{content:"";background:var(--lib-accent);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.path-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172acc;border:1px solid #ffffff0d;border-radius:8px;padding:25px;position:relative;overflow:hidden}.hud-corner{border:2px solid var(--lib-accent);opacity:.5;width:10px;height:10px;position:absolute}.corner-tl{border-bottom:0;border-right:0;top:0;left:0}.corner-tr{border-bottom:0;border-left:0;top:0;right:0}.corner-bl{border-top:0;border-right:0;bottom:0;left:0}.corner-br{border-top:0;border-left:0;bottom:0;right:0}.path-eq{color:#f8fafc;align-items:center;gap:15px;margin:15px 0;font-family:Inter,sans-serif;font-size:24px;font-weight:800;display:flex}.path-eq sub{color:var(--lib-accent);font-size:14px;bottom:-4px}.mechanism-tag{color:#f472b6;background:#f472b61a;border:1px solid #f472b64d;border-radius:4px;padding:2px 8px;font-family:Orbitron,sans-serif;font-size:10px;font-weight:800}.path-meta{letter-spacing:2px;justify-content:space-between;margin-bottom:15px;font-family:Orbitron,sans-serif;font-size:10px;font-weight:800;display:flex}.step-num{color:var(--lib-accent)}.step-id{color:#fff;opacity:.8}.arrow{color:var(--lib-accent);text-shadow:0 0 10px var(--lib-glow);font-size:24px}.product{color:#fff;font-weight:700}.reactant{color:#94a3b8}.lib-content-frame{scrollbar-width:thin;scrollbar-color:var(--monolith-border) transparent;background:radial-gradient(circle at 50% -20%,#38bdf814 0%,#0000 70%);flex:1;padding:50px 80px;overflow-y:auto}@media (width<=1024px){.lib-bento-nav{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.lib-panel{border-radius:0;width:100%;height:100%}}:root{--chat-primary:#38bdf8;--chat-bg:#0f172ae6;--chat-border:#38bdf84d;--chat-accent:#0fc}.chatbot-container{z-index:10000;font-family:Inter,sans-serif;position:fixed;bottom:20px;right:20px}.chatbot-toggle{background:var(--chat-primary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;box-shadow:0 0 20px #38bdf880}.chatbot-toggle:hover{transform:scale(1.1)rotate(5deg);box-shadow:0 0 30px #38bdf8cc}.chatbot-toggle svg{stroke:#fff;width:30px;height:30px}.chatbot-window{background:var(--chat-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--chat-border);border-radius:16px;flex-direction:column;width:380px;height:550px;animation:.3s ease-out chatSlideIn;display:none;position:absolute;bottom:80px;right:0;overflow:hidden;box-shadow:0 10px 40px #00000080}@keyframes chatSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-header{border-bottom:1px solid var(--chat-border);background:#38bdf81a;justify-content:space-between;align-items:center;padding:15px 20px;display:flex}.chat-header h3{color:var(--chat-primary);letter-spacing:1px;margin:0;font-family:Orbitron,sans-serif;font-size:14px}.chat-status{color:var(--chat-accent);align-items:center;gap:6px;font-size:10px;display:flex}.status-dot{background:var(--chat-accent);width:6px;height:6px;box-shadow:0 0 5px var(--chat-accent);border-radius:50%;animation:1.5s infinite pulse}.chat-messages{flex-direction:column;flex:1;gap:15px;padding:20px;display:flex;overflow-y:auto}.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-thumb{background:var(--chat-border);border-radius:2px}.message{border-radius:12px;max-width:85%;padding:10px 15px;font-size:13px;line-height:1.5;position:relative}.message.ai{color:#e2e8f0;background:#ffffff0d;border:1px solid #ffffff1a;border-bottom-left-radius:2px;align-self:flex-start}.message.user{background:var(--chat-primary);color:#fff;border-bottom-right-radius:2px;align-self:flex-end}.message code{color:var(--chat-accent);background:#0000004d;border-radius:4px;padding:2px 4px;font-family:monospace}.chat-input-area{border-top:1px solid var(--chat-border);background:#0000004d;gap:10px;padding:15px 20px;display:flex}.chat-input{border:1px solid var(--chat-border);color:#fff;background:#ffffff0d;border-radius:8px;outline:none;flex:1;padding:8px 12px;font-size:13px}.chat-input:focus{border-color:var(--chat-primary);background:#38bdf80d}.chat-send{background:var(--chat-primary);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.chat-send:hover{box-shadow:0 0 10px var(--chat-primary);transform:scale(1.1)}.typing-indicator{color:#64748b;margin-bottom:10px;padding-left:20px;font-size:11px;display:none}.chatbot-notification{color:#fff;background:#ff3131;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:10px;font-weight:700;animation:.5s infinite alternate bounce;display:none;position:absolute;top:-5px;right:-5px}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-5px)}}
