.atom-builder-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden}.element-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:280px;background:#0f172af2;border:1px solid rgba(231,76,60,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.element-symbol-large{width:80px;height:80px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:700;color:#fff;border-radius:.75rem;margin:0 auto 1rem;box-shadow:0 4px 15px #0000004d}.element-details{text-align:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(231,76,60,.2)}.element-details h2{font-size:1.25rem;color:#fff;margin:0}.element-name-en{font-size:.875rem;color:#64748b;margin:.25rem 0 0}.particle-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:1rem}.particle-item{display:flex;flex-direction:column;align-items:center;padding:.5rem;background:#0003;border-radius:.5rem}.particle-icon{font-size:1.25rem}.particle-item.proton .particle-icon{color:#e74c3c}.particle-item.neutron .particle-icon{color:#3498db}.particle-item.electron .particle-icon{color:#2ecc71}.particle-label{font-size:.6rem;color:#64748b;margin-top:.25rem}.particle-value{font-size:1rem;font-weight:700;color:#fff}.atom-properties{margin-bottom:1rem}.property-row{display:flex;justify-content:space-between;padding:.375rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.property-row span:first-child{font-size:.75rem;color:#64748b}.property-row .value{font-size:.875rem;font-weight:600;color:#e2e8f0}.property-row .value.charge.positive{color:#e74c3c}.property-row .value.charge.negative{color:#3498db}.property-row .value.charge.neutral{color:#2ecc71}.property-row .value.config{font-family:monospace;font-size:.75rem}.shell-diagram h4{font-size:.75rem;color:#94a3b8;margin:0 0 .5rem}.shells-visual{display:flex;gap:.375rem}.shell-badge{display:flex;flex-direction:column;align-items:center;padding:.375rem .5rem;background:#2ecc7126;border:1px solid rgba(46,204,113,.3);border-radius:.375rem}.shell-name{font-size:.6rem;color:#2ecc71}.shell-count{font-size:.875rem;font-weight:700;color:#fff}.particle-controls{display:flex;flex-direction:column;gap:.625rem}.particle-controls.compact{gap:.5rem}.control-row{display:flex;align-items:center;justify-content:space-between}.control-label{font-size:.8rem;font-weight:600}.control-label.proton-label{color:#e74c3c}.control-label.neutron-label{color:#3498db}.control-label.electron-label{color:#2ecc71}.control-buttons{display:flex;align-items:center;gap:.5rem}.control-buttons button{width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;background:#2e7d9933;border:1px solid rgba(46,125,153,.4);border-radius:.375rem;color:#94a3b8;cursor:pointer;transition:all .2s}.control-buttons button:hover:not(:disabled){background:#2e7d9966;color:#fff}.control-buttons button:disabled{opacity:.4;cursor:not-allowed}.control-value{min-width:2rem;text-align:center;font-size:1rem;font-weight:700;color:#fff}.reset-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.75rem;padding:.625rem;background:#e74c3c26;border:1px solid rgba(231,76,60,.3);border-radius:.5rem;color:#e74c3c;font-size:.8rem;cursor:pointer;transition:all .2s}.element-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.375rem}.element-btn{display:flex;flex-direction:column;align-items:center;padding:.375rem;background:#0003;border:2px solid;border-radius:.375rem;cursor:pointer;transition:all .2s}.element-btn:hover{transform:translateY(-2px)}.element-btn.active{background:#ffffff1a;box-shadow:0 0 10px #fff3}.el-number{font-size:.5rem;color:#64748b}.el-symbol{font-size:.75rem;font-weight:700;color:#e2e8f0}.challenge-question{margin-bottom:1rem}.challenge-question p{font-size:.875rem;color:#e2e8f0;margin:0 0 .5rem}.challenge-question .hint{font-size:.8rem;color:#f39c12;font-style:italic}.check-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.75rem;padding:.75rem;background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.check-btn:hover{transform:translateY(-2px)}.correct-text{display:flex;align-items:center;justify-content:center;gap:.5rem;color:#2ecc71;font-weight:600}.incorrect-text{display:flex;align-items:center;justify-content:center;gap:.5rem;color:#e74c3c;font-weight:600}.next-btn,.retry-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.625rem 1.25rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer}.next-btn{background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff}.retry-btn{background:#e74c3c26;border:1px solid rgba(231,76,60,.3);color:#e74c3c}.learn-card{padding:.75rem;background:#e74c3c1a;border:1px solid rgba(231,76,60,.2);border-radius:.5rem}.learn-card h4{font-size:.8rem;color:#e74c3c;margin:0 0 .5rem}.learn-card li{font-size:.7rem;color:#94a3b8;margin-bottom:.25rem;display:flex;align-items:center;gap:.375rem}.proton-dot,.neutron-dot,.electron-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.proton-dot{background:#e74c3c}.neutron-dot{background:#3498db}.electron-dot{background:#2ecc71}.molecular-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:#0f172ae6;border:1px solid rgba(46,125,153,.5);border-radius:.75rem;color:#94a3b8;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-btn-3d:hover{border-color:#2e7d99;color:#fff;transform:scale(1.05)}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:#0f172af2;border:1px solid rgba(46,125,153,.3);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-3d h1 svg{color:#00b87f}.mode-tabs button.active{background:linear-gradient(135deg,#00b87f,#00a36c);color:#fff}.action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#2e7d9933;border:1px solid rgba(46,125,153,.4);border-radius:.5rem;color:#94a3b8;cursor:pointer;transition:all .2s ease}.action-btn:hover,.action-btn.active{background:#2e7d9966;color:#fff}.vsepr-analysis-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:300px;background:#0f172af2;border:1px solid rgba(0,184,127,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.analysis-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(0,184,127,.2)}.analysis-header h2{font-size:1.125rem;color:#fff;margin:0}.formula-large{font-size:1.25rem;color:#00b87f;font-weight:700}.analysis-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem}.analysis-item{display:flex;flex-direction:column;padding:.5rem;background:#00b87f1a;border-radius:.5rem}.analysis-item .label{font-size:.65rem;color:#64748b;margin-bottom:.25rem}.analysis-item .value{font-size:.875rem;color:#e2e8f0;font-weight:600}.analysis-item .value.highlight{color:#00b87f}.geometry-section{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.geometry-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.geometry-row:last-child{border-bottom:none}.geometry-row .label{font-size:.75rem;color:#64748b}.geometry-row .value{font-size:.875rem;color:#e2e8f0;font-weight:500}.geometry-row .value.geometry{color:#ff9a44;font-weight:700}.geometry-row .value.highlight{color:#00b87f;font-size:1rem}.geometry-row .value.hybridization{color:#9b59b6;font-weight:700;font-style:italic}.polarity-badge{display:inline-block;padding:.5rem 1rem;border-radius:2rem;font-size:.875rem;font-weight:700;text-align:center;margin-bottom:1rem}.polarity-badge.polar{background:linear-gradient(135deg,#e74c3c33,#e74c3c1a);border:1px solid rgba(231,76,60,.4);color:#e74c3c}.polarity-badge.nonpolar{background:linear-gradient(135deg,#2ecc7133,#2ecc711a);border:1px solid rgba(46,204,113,.4);color:#2ecc71}.description{font-size:.75rem;color:#94a3b8;line-height:1.5;margin:0;padding-top:.75rem;border-top:1px solid rgba(0,184,127,.2)}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:280px;max-height:calc(100vh - 7rem);overflow-y:auto;background:#0f172af2;border:1px solid rgba(46,125,153,.3);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-panel-3d::-webkit-scrollbar-thumb{background:#2e7d9980;border-radius:2px}.panel-section{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid rgba(46,125,153,.2)}.molecule-grid-advanced{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.molecule-btn-advanced{display:flex;flex-direction:column;align-items:center;padding:.625rem .5rem;background:#00b87f1a;border:1px solid rgba(0,184,127,.2);border-radius:.5rem;cursor:pointer;transition:all .2s ease}.molecule-btn-advanced:hover{background:#00b87f33;border-color:#00b87f66;transform:translateY(-2px)}.molecule-btn-advanced.active{background:linear-gradient(135deg,#00b87f4d,#00b87f26);border-color:#00b87f}.molecule-btn-advanced.easy{border-left:3px solid #2ECC71}.molecule-btn-advanced.medium{border-left:3px solid #F39C12}.molecule-btn-advanced.hard{border-left:3px solid #E74C3C}.molecule-btn-advanced.expert{border-left:3px solid #9B59B6}.mol-formula{font-size:.875rem;font-weight:700;color:#e2e8f0}.mol-shape{font-size:.625rem;color:#64748b;margin-top:.25rem}.toggle-group input[type=checkbox]{width:1rem;height:1rem;accent-color:#00B87F}.challenge-header h3{margin:0;font-size:1rem;color:#ff9a44}.challenge-option{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#00b87f1a;border:1px solid rgba(0,184,127,.2);border-radius:.5rem;color:#e2e8f0;font-size:.8rem;cursor:pointer;transition:all .2s ease;text-align:left}.challenge-option:hover:not(:disabled){background:#00b87f33;border-color:#00b87f66}.next-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#00b87f,#00a36c);border:none;border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:transform .2s}.next-btn:hover{transform:translateY(-2px)}.challenge-complete{padding:1rem 0}.challenge-complete button{padding:.5rem 1.5rem;background:#2e7d994d;border:1px solid #2E7D99;border-radius:.5rem;color:#fff;cursor:pointer}.learn-card{padding:.75rem;background:#00b87f1a;border:1px solid rgba(0,184,127,.2);border-radius:.5rem}.learn-card h4{font-size:.8rem;color:#00b87f;margin:0 0 .5rem}.learn-card ul{margin:.5rem 0 0;padding-left:1rem}.build-panel{padding:0}.build-description{font-size:.75rem;color:#94a3b8;line-height:1.5;margin:0 0 1rem}.formula-input-group{display:flex;gap:.5rem;margin-bottom:.75rem}.formula-input{flex:1;padding:.625rem .75rem;background:#0000004d;border:1px solid rgba(0,184,127,.3);border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:600;outline:none;transition:border-color .2s}.formula-input:focus{border-color:#00b87f}.formula-input::placeholder{color:#64748b;font-weight:400}.build-btn{display:flex;align-items:center;gap:.375rem;padding:.625rem .875rem;background:linear-gradient(135deg,#00b87f,#00a36c);border:none;border-radius:.5rem;color:#fff;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.build-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00b87f4d}.custom-error{padding:.5rem .75rem;background:#e74c3c26;border:1px solid rgba(231,76,60,.3);border-radius:.5rem;color:#e74c3c;font-size:.75rem;margin-bottom:.75rem}.custom-success{padding:.5rem .75rem;background:#2ecc7126;border:1px solid rgba(46,204,113,.3);border-radius:.5rem;color:#2ecc71;font-size:.75rem;margin-bottom:.75rem}.example-formulas{display:flex;flex-wrap:wrap;gap:.375rem}.example-formula-btn{padding:.375rem .625rem;background:#2e7d9926;border:1px solid rgba(46,125,153,.3);border-radius:.375rem;color:#94a3b8;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s}.example-formula-btn:hover{background:#2e7d994d;border-color:#2e7d99;color:#fff}.supported-elements{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.element-badge{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;background:#0003;border:1px solid;border-radius:.375rem}.element-symbol{font-size:.875rem;font-weight:700}.element-name{font-size:.625rem;color:#64748b}.atom-label-advanced{padding:.25rem .5rem;border-radius:.25rem;color:#fff;font-size:.7rem;font-weight:700;pointer-events:none;box-shadow:0 2px 8px #0000004d}.angle-indicator{padding:.25rem .5rem;background:#ff9a44e6;border-radius:.25rem;color:#fff;font-size:.65rem;font-weight:700;pointer-events:none}.info-modal-3d{width:100%;max-width:550px;max-height:85vh;overflow-y:auto;background:linear-gradient(135deg,#1a1a2e,#0f0f23);border:1px solid rgba(0,184,127,.4);border-radius:1.5rem}.info-modal-3d .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(0,184,127,.2);position:sticky;top:0;background:inherit}.info-modal-3d .modal-header h2 svg{color:#00b87f}.info-modal-3d li strong{color:#00b87f}@media(max-width:1024px){.vsepr-analysis-panel{display:none}}@media(max-width:768px){.header-3d{flex-wrap:wrap;justify-content:center}.header-3d h1{font-size:.875rem}.control-panel-3d{position:fixed;inset:auto 0 0;width:100%;max-height:45vh;border-radius:1rem 1rem 0 0}}.reaction-dynamics-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:#0f172ae6;border:1px solid rgba(231,76,60,.5);border-radius:.75rem;color:#94a3b8;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-btn-3d:hover{border-color:#e74c3c;color:#fff;transform:scale(1.05)}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:#0f172af2;border:1px solid rgba(231,76,60,.3);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-3d h1 svg{color:#e74c3c}.mode-tabs button.active{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#e74c3c33;border:1px solid rgba(231,76,60,.4);border-radius:.5rem;color:#94a3b8;cursor:pointer;transition:all .2s ease}.action-btn:hover,.action-btn.active{background:#e74c3c66;color:#fff}.reaction-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:320px;background:#0f172af2;border:1px solid rgba(231,76,60,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.reaction-info-panel::-webkit-scrollbar{width:4px}.reaction-info-panel::-webkit-scrollbar-thumb{background:#e74c3c80;border-radius:2px}.reaction-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.category-badge{padding:.25rem .5rem;background:#e74c3c33;border-radius:.25rem;font-size:.6rem;font-weight:600;text-transform:uppercase;color:#e74c3c}.category-badge.combustion{background:#e74c3c33;color:#e74c3c}.category-badge.synthesis{background:#9b59b633;color:#9b59b6}.category-badge.decomposition{background:#1abc9c33;color:#1abc9c}.category-badge.substitution{background:#f1c40f33;color:#f1c40f}.reaction-info-panel h2{font-size:1rem;color:#fff;margin:0}.reaction-info-panel .equation{font-size:1.1rem;font-weight:700;color:#e74c3c;margin:0 0 1rem;padding-bottom:1rem;border-bottom:1px solid rgba(231,76,60,.2);font-family:Roboto Mono,monospace}.stats-grid.enhanced .stat-item{display:flex;flex-direction:column;align-items:center;padding:.625rem;background:#00000040;border-radius:.5rem;border:1px solid rgba(255,255,255,.05)}.stats-grid.enhanced .stat-item svg{color:#94a3b8;margin-bottom:.25rem}.stats-grid.enhanced .stat-item.success svg{color:#2ecc71}.stat-label{font-size:.6rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1rem;font-weight:700;color:#e2e8f0;font-family:Roboto Mono,monospace}.stat-value.success{color:#2ecc71}.progress-bar-container{position:relative;height:8px;background:#0000004d;border-radius:4px;overflow:hidden;margin-bottom:1rem}.progress-bar{height:100%;background:linear-gradient(90deg,#e74c3c,#f39c12,#2ecc71);border-radius:4px;transition:width .3s ease}.progress-text{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);font-size:.6rem;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.energy-info{margin-bottom:1rem;padding:.75rem;background:#e74c3c14;border:1px solid rgba(231,76,60,.15);border-radius:.5rem}.energy-info.enhanced .energy-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.energy-info.enhanced .energy-row:last-of-type{border-bottom:none}.energy-row span:first-child{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:#94a3b8}.energy-row span:first-child svg{color:#f39c12}.energy-row span:last-child{font-size:.875rem;font-weight:600;color:#e2e8f0;font-family:Roboto Mono,monospace}.energy-row span.reduced{color:#2ecc71}.energy-row span.reduced .original{color:#64748b;font-size:.7rem;text-decoration:line-through;margin-left:.375rem}.energy-row span.exo{color:#e74c3c}.energy-row span.endo{color:#3498db}.energy-row span.rate{color:#f39c12}.reaction-type{text-align:center;font-size:.9rem;font-weight:700;color:#f39c12;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.1)}.reaction-info-panel .description{font-size:.75rem;color:#94a3b8;line-height:1.6;margin:0}.molecule-label{padding:.15rem .35rem;background:#000c;border-radius:.2rem;font-size:.55rem;font-weight:600;color:#e2e8f0;white-space:nowrap;font-family:Roboto Mono,monospace}.molecule-label.product{color:#2ecc71;border:1px solid rgba(46,204,113,.5)}.molecule-label.reactant{color:#e74c3c}.energy-label{padding:.3rem .6rem;background:#000000e6;border-radius:.25rem;font-size:.65rem;color:#e2e8f0;white-space:nowrap;font-family:Roboto Mono,monospace;border:1px solid rgba(255,255,255,.1)}.energy-label.reactant{color:#e74c3c;border-color:#e74c3c4d}.energy-label.product{color:#2ecc71;border-color:#2ecc714d}.energy-label.peak{color:#f39c12;font-weight:700;border-color:#f39c1280}.energy-label.delta{font-weight:600}.energy-label.delta.exo{color:#e74c3c}.energy-label.delta.endo{color:#3498db}.energy-label.catalyst{color:#2ecc71;font-style:italic}.speed-distribution{background:#0f172af2;border:1px solid rgba(243,156,18,.3);border-radius:.75rem;padding:.75rem;width:140px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dist-title{font-size:.7rem;font-weight:600;color:#e2e8f0;margin-bottom:.5rem;text-align:center}.dist-bar-container{display:flex;justify-content:space-around;align-items:flex-end;height:70px;gap:.25rem;margin-bottom:.5rem}.dist-bar{flex:1;display:flex;align-items:flex-end;justify-content:center;border-radius:.25rem .25rem 0 0;transition:height .3s ease;min-height:10%}.dist-bar span{font-size:.5rem;color:#fff;padding:.15rem;text-align:center;writing-mode:vertical-rl;text-orientation:mixed}.dist-bar.slow{background:linear-gradient(to top,#3498db,#5dade2)}.dist-bar.medium{background:linear-gradient(to top,#f39c12,#f5b041)}.dist-bar.fast{background:linear-gradient(to top,#e74c3c,#ec7063)}.dist-temp{font-size:.7rem;font-weight:600;color:#f39c12;text-align:center;font-family:Roboto Mono,monospace}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:300px;max-height:calc(100vh - 7rem);overflow-y:auto;background:#0f172af2;border:1px solid rgba(231,76,60,.3);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-panel-3d::-webkit-scrollbar-thumb{background:#e74c3c80;border-radius:2px}.panel-section{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid rgba(231,76,60,.2)}.reaction-btn{display:flex;justify-content:space-between;align-items:center;padding:.625rem .75rem;background:#e74c3c14;border:1px solid rgba(231,76,60,.15);border-radius:.5rem;color:#e2e8f0;font-size:.75rem;text-align:left;cursor:pointer;transition:all .2s}.reaction-btn:hover{background:#e74c3c26;border-color:#e74c3c4d}.reaction-btn.active{background:linear-gradient(135deg,#e74c3c40,#e74c3c1a);border-color:#e74c3c}.reaction-btn .reaction-name{font-weight:500}.reaction-btn .reaction-dh{font-size:.65rem;color:#94a3b8;font-family:Roboto Mono,monospace}.reaction-btn.combustion.active{border-color:#e74c3c}.reaction-btn.synthesis.active{border-color:#9b59b6}.reaction-btn.decomposition.active{border-color:#1abc9c}.reaction-btn.substitution.active{border-color:#f1c40f}.temp-slider{width:100%;height:8px;-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#3498db,#f39c12,#e74c3c);border-radius:4px;outline:none}.temp-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;background:#fff;border-radius:50%;cursor:pointer;box-shadow:0 2px 8px #0000004d;transition:transform .2s}.temp-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.conc-slider{width:100%;height:8px;-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#9b59b64d,#9b59b6);border-radius:4px;outline:none}.conc-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:#fff;border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0000004d}.temp-labels{display:flex;justify-content:space-between;margin-top:.375rem;font-size:.65rem;color:#64748b}.temp-indicator{color:#f39c12;font-weight:500}.play-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #2ecc714d}.play-btn.playing:hover{box-shadow:0 4px 15px #f39c124d}.reset-btn{display:flex;align-items:center;gap:.375rem;padding:.75rem 1rem;background:#e74c3c26;border:1px solid rgba(231,76,60,.3);border-radius:.5rem;color:#e74c3c;font-size:.8rem;cursor:pointer;transition:all .2s}.toggle-group label{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#94a3b8;cursor:pointer;transition:color .2s}.toggle-group label:hover{color:#e2e8f0}.toggle-group input[type=checkbox]{width:1rem;height:1rem;accent-color:#E74C3C}.challenge-header h3{margin:0;color:#e74c3c}.score-display{font-size:.875rem;font-weight:700;color:#2ecc71;background:#2ecc7126;padding:.375rem .75rem;border-radius:1rem}.challenge-question{font-size:.9rem;color:#fff;line-height:1.6;margin:0 0 1rem}.challenge-option{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#e74c3c14;border:1px solid rgba(231,76,60,.15);border-radius:.5rem;color:#e2e8f0;font-size:.8rem;cursor:pointer;transition:all .2s ease;text-align:left}.challenge-option:hover:not(:disabled){background:#e74c3c26;border-color:#e74c3c4d}.next-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.next-btn:hover{transform:translateY(-1px);box-shadow:0 4px 15px #e74c3c4d}.challenge-complete{padding:1.5rem 0;text-align:center}.challenge-complete svg{color:#f39c12;margin-bottom:.75rem}.challenge-complete h3{font-size:1.25rem;color:#e2e8f0;margin:0 0 .5rem}.challenge-complete .final-score{font-size:1.5rem;font-weight:700;color:#e74c3c;margin:0 0 .5rem}.challenge-complete .score-feedback{font-size:1rem;margin-bottom:1rem}.challenge-complete button{display:block;width:100%;padding:.625rem;margin-bottom:.5rem;background:#e74c3c40;border:1px solid rgba(231,76,60,.4);border-radius:.5rem;color:#fff;font-size:.875rem;cursor:pointer;transition:all .2s}.challenge-complete button:first-of-type{background:linear-gradient(135deg,#e74c3c,#c0392b);border:none}.challenge-complete button:hover{transform:translateY(-1px)}.learn-card{padding:.875rem;background:#e74c3c14;border:1px solid rgba(231,76,60,.15);border-radius:.5rem}.learn-card.highlight{background:#2ecc711a;border-color:#2ecc7140}.learn-card h4{font-size:.85rem;color:#e74c3c;margin:0 0 .5rem}.learn-card.highlight h4{color:#2ecc71}.learn-card p{font-size:.75rem;color:#94a3b8;line-height:1.6;margin:0 0 .25rem}.learn-card ul{margin:.5rem 0 0;padding-left:1.25rem}.learn-card li{font-size:.75rem;color:#94a3b8;line-height:1.6}.learn-card .formula{font-size:.9rem;font-family:Roboto Mono,monospace;color:#f39c12;margin:.5rem 0}.learn-card .formula-note{font-size:.65rem;color:#64748b;margin-top:.25rem}.tip-section{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:#ff9a441a;border:1px solid rgba(255,154,68,.2);border-radius:.5rem}.tip-section svg{color:#ff9a44;flex-shrink:0;margin-top:2px}.tip-section p{margin:0;font-size:.7rem;color:#94a3b8;line-height:1.5}.info-modal-3d{width:100%;max-width:550px;max-height:85vh;overflow-y:auto;background:linear-gradient(135deg,#1a1a2e,#0f0f23);border:1px solid rgba(231,76,60,.4);border-radius:1.5rem}.info-modal-3d .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(231,76,60,.2);position:sticky;top:0;background:inherit}.info-modal-3d .modal-header h2 svg{color:#e74c3c}.info-modal-3d .modal-header button{background:none;border:none;color:#94a3b8;cursor:pointer;transition:color .2s}.info-modal-3d li strong{color:#e74c3c}.molecule-tooltip{background:#0f172af2;border:1px solid rgba(231,76,60,.4);border-radius:.5rem;padding:.5rem .75rem;min-width:100px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none}.molecule-tooltip.selected{border-color:#f1c40f;box-shadow:0 0 15px #f1c40f4d}.molecule-tooltip .tooltip-formula{font-size:.9rem;font-weight:700;color:#e2e8f0;text-align:center;margin-bottom:.375rem;font-family:Roboto Mono,monospace}.molecule-tooltip .tooltip-info{display:flex;flex-direction:column;gap:.125rem}.molecule-tooltip .tooltip-info span{font-size:.65rem;color:#94a3b8}.molecule-tooltip .tooltip-status{margin-top:.375rem;padding-top:.375rem;border-top:1px solid rgba(255,255,255,.1);font-size:.7rem;color:#2ecc71;text-align:center}.add-particle-hint{background:#2ecc71e6;padding:.25rem .5rem;border-radius:.25rem;font-size:.7rem;font-weight:600;color:#fff;white-space:nowrap;pointer-events:none;animation:pulse-hint 1s ease-in-out infinite}@keyframes pulse-hint{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}.diagram-hover-info{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#0f172af2;border:1px solid rgba(243,156,18,.4);border-radius:.75rem;color:#f39c12;font-size:.8rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fade-in .2s ease}@keyframes fade-in{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.energy-label.interactive{cursor:pointer;transition:all .2s}.energy-label.interactive:hover{background:#f39c1233;border-color:#f39c12}.interactive-section{background:#f1c40f0d;border:1px solid rgba(241,196,15,.15)!important;border-radius:.75rem;margin:0 -.5rem;padding:.75rem!important}.interactive-buttons{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.75rem}.interactive-btn{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem;background:#f1c40f1a;border:1px solid rgba(241,196,15,.2);border-radius:.5rem;color:#94a3b8;font-size:.7rem;cursor:pointer;transition:all .2s}.interactive-btn:hover{background:#f1c40f33;color:#e2e8f0}.interactive-btn.active{background:#f1c40f40;border-color:#f1c40f;color:#f1c40f}.add-particle-section{padding-top:.75rem;border-top:1px solid rgba(241,196,15,.15)}.add-label{font-size:.7rem;color:#94a3b8;display:block;margin-bottom:.5rem}.add-particle-buttons{display:flex;flex-wrap:wrap;gap:.375rem}.add-particle-btn{display:flex;align-items:center;gap:.25rem;padding:.375rem .625rem;background:#0003;border:2px solid;border-radius:.375rem;color:#e2e8f0;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s}.add-particle-btn:hover{background:#ffffff1a}.add-particle-btn.active{background:#2ecc7133;border-color:#2ecc71!important;color:#2ecc71}.add-hint{font-size:.65rem;color:#2ecc71;margin:.5rem 0 0;font-style:italic}.selected-particle-info{margin-top:1rem;padding:.75rem;background:#f1c40f1a;border:1px solid rgba(241,196,15,.3);border-radius:.5rem}.selected-particle-info h4{display:flex;align-items:center;gap:.375rem;font-size:.8rem;color:#f1c40f;margin:0 0 .5rem}.selected-particle-info p{font-size:.75rem;color:#94a3b8;margin:0 0 .5rem}.selected-particle-info button{display:inline-flex;align-items:center;gap:.25rem;padding:.375rem .625rem;margin-right:.375rem;background:#f1c40f33;border:1px solid rgba(241,196,15,.3);border-radius:.375rem;color:#f1c40f;font-size:.7rem;cursor:pointer;transition:all .2s}.selected-particle-info button:hover{background:#f1c40f4d}.selected-particle-info button:last-child{background:#e74c3c33;border-color:#e74c3c4d;color:#e74c3c}@media(max-width:1024px){.reaction-info-panel{display:none}.diagram-hover-info{bottom:auto;top:5rem;font-size:.7rem;padding:.5rem .75rem}}@media(max-width:768px){.header-3d{flex-wrap:wrap;justify-content:center;gap:.5rem}.header-3d h1{font-size:.875rem}.mode-tabs{order:3;width:100%;justify-content:center}.control-panel-3d{position:fixed;inset:auto 0 0;width:100%;max-height:45vh;border-radius:1rem 1rem 0 0}.interactive-buttons{grid-template-columns:1fr}}.lewis-structure-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden}.structure-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:300px;background:#0f172af2;border:1px solid rgba(155,89,182,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.structure-info-panel.enhanced{max-height:calc(100vh - 7rem);overflow-y:auto}.molecule-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:1rem}.molecule-header h2{font-size:1.5rem;color:#9b59b6;margin:0;font-family:Roboto Mono,monospace}.molecule-header .molecule-name{font-size:.8rem;color:#94a3b8}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:1rem}.info-item{padding:.5rem;background:#9b59b61a;border-radius:.5rem;text-align:center}.info-item span{display:block;font-size:.6rem;color:#64748b;text-transform:uppercase}.info-item strong{font-size:.9rem;color:#e2e8f0}.info-item .bond-order{color:#f1c40f;font-size:1.1rem}.electron-bar{display:flex;height:24px;border-radius:.5rem;overflow:hidden;margin-bottom:1rem}.bar-section{display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:600;color:#fff}.bar-section.bonding{background:linear-gradient(90deg,#2ecc71,#27ae60)}.bar-section.nonbonding{background:linear-gradient(90deg,#9b59b6,#8e44ad)}.selection-info{margin-top:1rem;padding:.75rem;background:#f1c40f1a;border:1px solid rgba(241,196,15,.3);border-radius:.5rem}.selection-info h4{display:flex;align-items:center;gap:.375rem;font-size:.8rem;color:#f1c40f;margin:0 0 .375rem}.selection-info p{font-size:.75rem;color:#e2e8f0;margin:0}.selection-info.orbital{background:#2ecc711a;border-color:#2ecc714d}.selection-info.orbital h4{color:#2ecc71}.description{font-size:.75rem;color:#94a3b8;line-height:1.5;margin:1rem 0 0}.atom-label-interactive{padding:.25rem .5rem;border-radius:.25rem;font-size:.8rem;font-weight:700;color:#fff;cursor:pointer;transition:all .2s}.atom-label-interactive.selected{box-shadow:0 0 10px #f1c40f}.atom-label-interactive.hovered{transform:scale(1.1)}.atom-tooltip,.bond-tooltip{background:#0f172af2;border:1px solid rgba(155,89,182,.4);border-radius:.5rem;padding:.5rem .75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none}.atom-tooltip .tooltip-title{font-size:.9rem;font-weight:700;color:#e2e8f0}.atom-tooltip .tooltip-info{font-size:.7rem;color:#94a3b8}.atom-tooltip .tooltip-charge{font-size:.7rem;color:#f1c40f}.bond-tooltip{font-size:.7rem;color:#5dade2;white-space:nowrap}.mo-title{font-size:.9rem;font-weight:700;color:#9b59b6;background:#0f172ae6;padding:.25rem .5rem;border-radius:.25rem}.orbital-label-interactive{font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s;background:#000000b3;padding:.2rem .4rem;border-radius:.25rem}.orbital-label-interactive.selected{color:#f1c40f!important;text-decoration:underline}.axis-label{font-size:.7rem;color:#64748b;font-weight:600}.molecule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.375rem}.mol-btn{padding:.5rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.2);border-radius:.5rem;cursor:pointer;transition:all .2s;text-align:center}.mol-btn:hover{background:#9b59b633}.mol-btn.active{border-color:#9b59b6;background:#9b59b640}.mol-btn .mol-formula{display:block;font-size:.9rem;font-weight:700;color:#e2e8f0}.toggle-group{display:flex;flex-direction:column;gap:.5rem}.question{font-size:.875rem;color:#e2e8f0;margin:0 0 .75rem}.option{display:flex;align-items:center;justify-content:space-between;padding:.625rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.2);border-radius:.5rem;color:#e2e8f0;font-size:.8rem;cursor:pointer;transition:all .2s}.card{padding:.75rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.2);border-radius:.5rem}.card h4{font-size:.8rem;color:#9b59b6;margin:0 0 .375rem}@media(max-width:1024px){.structure-info-panel{display:none}}.equilibrium-dynamics-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden}.particle-tooltip{background:#0f172af2;border:1px solid rgba(243,156,18,.4);border-radius:.5rem;padding:.375rem .625rem;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}.particle-tooltip .formula{display:block;font-size:.85rem;font-weight:700;color:#e2e8f0}.particle-tooltip .side{display:block;font-size:.6rem;color:#94a3b8}.particle-tooltip.reactant{border-color:#3498db}.particle-tooltip.product{border-color:#e74c3c}.container-label-interactive{background:#0f172af2;border:1px solid;border-radius:.5rem;padding:.5rem .75rem;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.container-label-interactive.reactant{border-color:#3498db80}.container-label-interactive.product{border-color:#e74c3c80}.container-label-interactive .label-text{display:block;font-size:.9rem;font-weight:700;color:#e2e8f0}.container-label-interactive .particle-count{display:block;font-size:.7rem;color:#94a3b8;margin:.25rem 0}.container-controls{display:flex;justify-content:center;gap:.375rem}.container-controls button{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;background:#f39c1233;border:1px solid rgba(243,156,18,.4);border-radius:.25rem;color:#f39c12;cursor:pointer;transition:all .2s}.container-controls button:hover{background:#f39c1266;color:#fff}.shift-indicator{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;background:#0f172af2;border-radius:.5rem;font-size:.75rem;font-weight:600;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.shift-indicator.right{color:#2ecc71;border:1px solid rgba(46,204,113,.5)}.shift-indicator.left{color:#e74c3c;border:1px solid rgba(231,76,60,.5)}.shift-indicator.balanced{color:#f39c12;border:1px solid rgba(243,156,18,.5)}.temp-3d-label{background:#0f172ae6;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600;color:#f39c12}.equilibrium-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:300px;background:#0f172af2;border:1px solid rgba(243,156,18,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.equilibrium-info-panel.enhanced{max-height:calc(100vh - 7rem);overflow-y:auto}.reaction-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.reaction-header h2{font-size:1.1rem;color:#f39c12;margin:0}.dh-badge{padding:.25rem .5rem;border-radius:.25rem;font-size:.65rem;font-weight:600}.dh-badge.exo{background:#e74c3c33;color:#e74c3c}.dh-badge.endo{background:#3498db33;color:#3498db}.equation{font-size:1rem;font-weight:600;color:#e2e8f0;margin:0 0 1rem;font-family:Roboto Mono,monospace}.status-banner{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem;border-radius:.5rem;font-size:.85rem;font-weight:700;margin-bottom:1rem}.status-banner.right{background:#2ecc7126;color:#2ecc71;border:1px solid rgba(46,204,113,.3)}.status-banner.left{background:#e74c3c26;color:#e74c3c;border:1px solid rgba(231,76,60,.3)}.status-banner.balanced{background:#f39c1226;color:#f39c12;border:1px solid rgba(243,156,18,.3)}.conc-bars{margin-bottom:1rem}.conc-bar{margin-bottom:.625rem}.bar-header{display:flex;justify-content:space-between;font-size:.7rem;color:#94a3b8;margin-bottom:.25rem}.bar-track{height:8px;background:#0000004d;border-radius:4px;overflow:hidden}.bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.bar-fill.reactant{background:linear-gradient(90deg,#3498db,#5dade2)}.bar-fill.product{background:linear-gradient(90deg,#e74c3c,#ec7063)}.constants-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:1rem}.const-item{padding:.5rem;background:#0003;border-radius:.375rem;text-align:center}.const-item span{display:block;font-size:.6rem;color:#64748b;text-transform:uppercase}.const-item strong{font-size:.85rem;color:#e2e8f0;font-family:Roboto Mono,monospace}.const-item strong.low{color:#2ecc71}.const-item strong.high,.const-item strong.exo{color:#e74c3c}.const-item strong.endo{color:#3498db}.reaction-grid{display:flex;flex-direction:column;gap:.375rem}.rxn-btn{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#f39c121a;border:1px solid rgba(243,156,18,.2);border-radius:.5rem;color:#e2e8f0;font-size:.75rem;cursor:pointer;transition:all .2s}.rxn-btn:hover{background:#f39c1233}.rxn-btn.active{border-color:#f39c12;background:#f39c1240}.temp-slider,.pressure-slider{width:100%;height:8px;-webkit-appearance:none;background:linear-gradient(90deg,#3498db,#f39c12,#e74c3c);border-radius:4px;outline:none}.pressure-slider{background:linear-gradient(90deg,#2ecc71,#f39c12,#9b59b6)}.temp-slider::-webkit-slider-thumb,.pressure-slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:#fff;border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0000004d}.slider-labels{display:flex;justify-content:space-between;margin-top:.375rem;font-size:.65rem;color:#64748b}.control-buttons{display:flex;gap:.5rem}.play-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:linear-gradient(135deg,#2ecc71,#27ae60);border:none;border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.play-btn.playing{background:linear-gradient(135deg,#f39c12,#e67e22)}.play-btn:hover{transform:translateY(-2px)}.reset-btn{display:flex;align-items:center;padding:.75rem;background:#e74c3c26;border:1px solid rgba(231,76,60,.3);border-radius:.5rem;color:#e74c3c;cursor:pointer;transition:all .2s}.challenge-header h3{margin:0;color:#f39c12;font-size:.9rem}.option{display:flex;align-items:center;justify-content:space-between;padding:.625rem;background:#f39c121a;border:1px solid rgba(243,156,18,.2);border-radius:.5rem;color:#e2e8f0;font-size:.8rem;cursor:pointer;transition:all .2s;text-align:left}.option:hover:not(:disabled){background:#f39c1233}.feedback button{margin-top:.5rem;padding:.5rem 1rem;background:#f39c12;border:none;border-radius:.5rem;color:#fff;cursor:pointer}.card{padding:.75rem;background:#f39c121a;border:1px solid rgba(243,156,18,.2);border-radius:.5rem}.card.highlight{background:#2ecc711a;border-color:#2ecc7133}.card h4{font-size:.8rem;color:#f39c12;margin:0 0 .375rem}.card.highlight h4{color:#2ecc71}.info-modal-3d{width:100%;max-width:500px;max-height:80vh;overflow-y:auto;background:linear-gradient(135deg,#1a1a2e,#0f0f23);border:1px solid rgba(243,156,18,.4);border-radius:1.5rem}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid rgba(243,156,18,.2)}.modal-header h2 svg{color:#f39c12}.modal-content li strong{color:#f39c12}@media(max-width:1024px){.equilibrium-info-panel{display:none}}.organic-chemistry-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden}.reaction-info-panel.enhanced{max-height:calc(100vh - 7rem);overflow-y:auto}.reaction-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.type-badge{padding:.25rem .5rem;border-radius:.25rem;font-size:.65rem;font-weight:700;text-transform:uppercase}.type-badge.sn2,.rxn-btn.sn2{background:#2ecc7133;color:#2ecc71;border-color:#2ecc7166}.type-badge.sn1,.rxn-btn.sn1{background:#3498db33;color:#3498db;border-color:#3498db66}.type-badge.e2,.rxn-btn.e2{background:#9b59b633;color:#9b59b6;border-color:#9b59b666}.type-badge.e1,.rxn-btn.e1{background:#f1c40f33;color:#f1c40f;border-color:#f1c40f66}.type-badge.addition,.rxn-btn.addition{background:#e74c3c33;color:#e74c3c;border-color:#e74c3c66}.reaction-header h2{font-size:1rem;color:#e2e8f0;margin:0}.equation{font-family:Roboto Mono,monospace;font-size:.9rem;color:#9b59b6;margin:0 0 1rem;padding-bottom:1rem;border-bottom:1px solid rgba(155,89,182,.2)}.mechanism-box{background:#9b59b61a;border:1px solid rgba(155,89,182,.2);border-radius:.5rem;padding:.75rem;margin-bottom:1rem}.mech-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.mech-header h4{font-size:.8rem;color:#e2e8f0;margin:0}.step-counter{font-size:.7rem;color:#9b59b6;font-weight:600}.mech-content p{font-size:.75rem;color:#94a3b8;line-height:1.5;margin:0 0 .5rem}.mech-tags{display:flex;flex-wrap:wrap;gap:.375rem}.tag{font-size:.6rem;font-weight:600;padding:.2rem .4rem;border-radius:.25rem;background:#0000004d}.tag.nucleophile{color:#2ecc71}.tag.electrophile{color:#e74c3c}.tag.leaving{color:#f39c12}.mech-progress{display:flex;justify-content:center;gap:.375rem;margin-top:.75rem}.progress-dot{width:10px;height:10px;border-radius:50%;background:#9b59b64d;cursor:pointer;transition:all .2s}.progress-dot:hover{background:#9b59b680}.progress-dot.active{background:#9b59b6;transform:scale(1.3)}.progress-dot.done{background:#2ecc71}.characteristics-box{margin-bottom:1rem}.characteristics-box h4{font-size:.8rem;color:#e2e8f0;margin:0 0 .5rem}.characteristics-box ul{margin:0;padding-left:1rem}.characteristics-box li{font-size:.7rem;color:#94a3b8;line-height:1.5}.selected-atom-info{padding:.75rem;background:#f1c40f1a;border:1px solid rgba(241,196,15,.3);border-radius:.5rem}.selected-atom-info h4{display:flex;align-items:center;gap:.375rem;font-size:.8rem;color:#f1c40f;margin:0 0 .375rem}.selected-atom-info p{font-size:.85rem;color:#e2e8f0;margin:0;font-weight:600}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:280px;max-height:calc(100vh - 7rem);overflow-y:auto;background:var(--simulation-surface);border:1px solid var(--border-color);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.reaction-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.375rem}.rxn-btn{display:flex;flex-direction:column;align-items:flex-start;padding:.5rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.2);border-radius:.5rem;cursor:pointer;transition:all .2s}.rxn-btn:hover{transform:translateY(-1px)}.rxn-btn.active{border-width:2px}.rxn-btn .type-mini{font-size:.55rem;font-weight:700;text-transform:uppercase;opacity:.8}.rxn-btn .name{font-size:.7rem;color:#e2e8f0;font-weight:500}.mechanism-controls{display:flex;justify-content:center;gap:.5rem;margin-bottom:.5rem}.mechanism-controls button{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:#9b59b633;border:1px solid rgba(155,89,182,.3);border-radius:.5rem;color:#e2e8f0;cursor:pointer;transition:all .2s}.mechanism-controls button:hover:not(:disabled){background:#9b59b666}.mechanism-controls button:disabled{opacity:.4;cursor:not-allowed}.mechanism-controls .play-btn{width:3rem;background:linear-gradient(135deg,#2ecc71,#27ae60);border:none}.mechanism-controls .play-btn.playing{background:linear-gradient(135deg,#f39c12,#e67e22)}.step-label{text-align:center;font-size:.7rem;color:#94a3b8}.toggle-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.toggle-group label{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#94a3b8;cursor:pointer}.toggle-group input[type=checkbox]{width:1rem;height:1rem;accent-color:#9B59B6}.challenge-header h3{margin:0;color:#9b59b6;font-size:.9rem}.option{display:flex;align-items:center;justify-content:space-between;padding:.625rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.2);border-radius:.5rem;color:#e2e8f0;font-size:.8rem;cursor:pointer;transition:all .2s;text-align:left}.option:hover:not(:disabled){background:#9b59b633}.feedback button{margin-top:.5rem;padding:.5rem 1rem;background:#9b59b6;border:none;border-radius:.5rem;color:#fff;cursor:pointer}.card{padding:.625rem;border-radius:.5rem;border:1px solid}.card.sn2{background:#2ecc711a;border-color:#2ecc7133}.card.sn2 h4{color:#2ecc71}.card.sn1{background:#3498db1a;border-color:#3498db33}.card.sn1 h4{color:#3498db}.card.e2{background:#9b59b61a;border-color:#9b59b633}.card.e2 h4{color:#9b59b6}.card.e1{background:#f1c40f1a;border-color:#f1c40f33}.card.e1 h4{color:#f1c40f}.card.addition{background:#e74c3c1a;border-color:#e74c3c33}.card.addition h4{color:#e74c3c}.card h4{font-size:.8rem;margin:0 0 .25rem}.info-modal-3d{width:100%;max-width:500px;max-height:80vh;overflow-y:auto;background:linear-gradient(135deg,#1a1a2e,#0f0f23);border:1px solid rgba(155,89,182,.4);border-radius:1.5rem}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid rgba(155,89,182,.2)}.modal-header h2 svg{color:#9b59b6}.modal-content li strong{color:#9b59b6}.titration-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:#0f172ae6;border:1px solid rgba(78,205,196,.5);border-radius:.75rem;color:#94a3b8;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-btn-3d:hover{border-color:#4ecdc4;color:#fff;transform:scale(1.05)}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:#0f172af2;border:1px solid rgba(78,205,196,.3);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-3d h1 svg{color:#4ecdc4}.mode-tabs button.active{background:linear-gradient(135deg,#4ecdc4,#45b7aa);color:#fff}.action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#4ecdc433;border:1px solid rgba(78,205,196,.4);border-radius:.5rem;color:#94a3b8;cursor:pointer;transition:all .2s ease}.action-btn:hover{background:#4ecdc466;color:#fff}.curve-panel{position:absolute;bottom:1rem;left:1rem;z-index:100;background:#0f172af2;border:1px solid rgba(78,205,196,.3);border-radius:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.curve-toggle{width:100%;padding:.5rem .75rem;background:transparent;border:none;color:#e2e8f0;font-size:.75rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.375rem}.curve-toggle:hover{color:#4ecdc4}.curve-content{padding:0 .5rem .5rem}.curve-info{display:flex;justify-content:center;gap:1rem;margin-top:.25rem;font-size:.65rem;color:#94a3b8}.burette-label-mini{background:#0f172ad9;border:1px solid rgba(78,205,196,.4);border-radius:.25rem;padding:.2rem .4rem;font-size:.7rem;font-weight:600;color:#4ecdc4;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.flask-label-mini{background:#0f172ad9;border:1px solid rgba(255,107,107,.4);border-radius:.25rem;padding:.2rem .4rem;font-size:.7rem;font-weight:600;color:#ff6b6b;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.flask-label-mini.selected{border-color:#f1c40f;color:#f1c40f}.burette-label-enhanced{display:flex;flex-direction:column;align-items:center;background:#0f172af2;border:1px solid rgba(78,205,196,.5);border-radius:.5rem;padding:.375rem .625rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.burette-label-enhanced .formula{font-size:.9rem;font-weight:700;color:#4ecdc4}.burette-label-enhanced .level{font-size:.65rem;color:#94a3b8}.flask-label-enhanced{display:flex;flex-direction:column;align-items:center;background:#0f172af2;border:1px solid rgba(255,107,107,.4);border-radius:.5rem;padding:.375rem .625rem;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.flask-label-enhanced:hover,.flask-label-enhanced.hovered{border-color:#ff6b6bb3;transform:scale(1.05)}.flask-label-enhanced.selected{border-color:#f1c40f;box-shadow:0 0 10px #f1c40f4d}.flask-label-enhanced .formula{font-size:.85rem;font-weight:700;color:#ff6b6b}.flask-label-enhanced .info{font-size:.6rem;color:#94a3b8}.ph-display-enhanced{display:flex;flex-direction:column;align-items:center;background:#0f172afa;border-radius:.375rem;padding:.5rem .75rem;cursor:pointer;transition:all .2s}.ph-display-enhanced:hover,.ph-display-enhanced.hovered{transform:scale(1.05)}.ph-display-enhanced.selected{box-shadow:0 0 12px #f1c40f66}.ph-display-enhanced .ph-value{font-size:1.5rem;font-weight:700;font-family:Roboto Mono,monospace}.ph-display-enhanced .ph-unit{font-size:.65rem;color:#64748b;text-transform:uppercase}.titration-curve-enhanced{background:#0f172af2;border:1px solid rgba(78,205,196,.3);border-radius:.75rem;padding:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.titration-curve-enhanced h4{font-size:.8rem;color:#e2e8f0;margin:0 0 .5rem;text-align:center}.curve-legend{display:flex;justify-content:center;gap:1rem;margin-top:.5rem}.legend-item{display:flex;align-items:center;gap:.25rem;font-size:.6rem;color:#94a3b8}.legend-item .dot{width:8px;height:8px;border-radius:50%}.legend-item .dot.current{background:#e74c3c}.legend-item .dot.equiv{background:#f39c12}.titration-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:280px;background:#0f172af2;border:1px solid rgba(78,205,196,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.titration-info-panel.enhanced{max-height:calc(100vh - 7rem);overflow-y:auto}.reaction-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.reaction-header h2{font-size:.95rem;color:#e2e8f0;margin:0}.strength-badge{font-size:.6rem;font-weight:600;padding:.2rem .4rem;border-radius:.25rem;text-transform:uppercase}.strength-badge.strong{background:#e74c3c33;color:#e74c3c}.strength-badge.weak{background:#f1c40f33;color:#f1c40f}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:1rem}.stat-card{background:#00000040;border-radius:.5rem;padding:.5rem;text-align:center}.stat-card .label{display:block;font-size:.55rem;color:#64748b;text-transform:uppercase;margin-bottom:.25rem}.stat-card .value{font-size:1rem;font-weight:700;color:#e2e8f0;font-family:Roboto Mono,monospace}.stat-card .value.equiv{color:#f39c12}.stat-card.ph{grid-column:span 2}.stat-card.ph .value{font-size:1.75rem}.progress-bar{position:relative;height:8px;background:#0000004d;border-radius:4px;margin-bottom:1rem;overflow:visible}.progress-fill{height:100%;background:linear-gradient(90deg,#4ecdc4,#45b7aa);border-radius:4px;transition:width .2s ease}.equiv-marker{position:absolute;top:-4px;width:3px;height:16px;background:#f39c12;border-radius:2px;transform:translate(-50%)}.status-badge{text-align:center;padding:.5rem;border-radius:.5rem;font-size:.75rem;font-weight:600;margin-bottom:.75rem}.status-badge.before{background:#4ecdc426;color:#4ecdc4;border:1px solid rgba(78,205,196,.3)}.status-badge.after{background:#9b59b626;color:#9b59b6;border:1px solid rgba(155,89,182,.3)}.status-badge.near{background:#f1c40f26;color:#f1c40f;border:1px solid rgba(241,196,15,.3);animation:pulse-status 1s ease infinite}@keyframes pulse-status{0%,to{opacity:1}50%{opacity:.7}}.solution-indicator{text-align:center;font-size:.8rem;color:#94a3b8;margin-bottom:.75rem}.selected-info{padding:.75rem;background:#f1c40f1a;border:1px solid rgba(241,196,15,.3);border-radius:.5rem}.selected-info h4{display:flex;align-items:center;gap:.375rem;font-size:.8rem;color:#f1c40f;margin:0 0 .375rem}.selected-info p{font-size:.7rem;color:#e2e8f0;margin:0}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:280px;max-height:calc(100vh - 7rem);overflow-y:auto;background:#0f172af2;border:1px solid rgba(78,205,196,.3);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.panel-section{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid rgba(78,205,196,.2)}.select-group{margin-bottom:.625rem}.select-group label{display:block;font-size:.7rem;color:#94a3b8;margin-bottom:.25rem}.select-group select{width:100%;padding:.5rem;background:#0000004d;border:1px solid rgba(78,205,196,.3);border-radius:.375rem;color:#e2e8f0;font-size:.75rem;cursor:pointer}.select-group select:focus{outline:none;border-color:#4ecdc4}.slider-group{margin-bottom:.625rem}.slider-group label{display:flex;justify-content:space-between;font-size:.7rem;color:#94a3b8;margin-bottom:.25rem}.slider-group input[type=range]{width:100%;height:6px;-webkit-appearance:none;background:linear-gradient(90deg,#4ecdc4,#45b7aa);border-radius:3px;outline:none}.slider-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;background:#fff;border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0000004d}.drop-btn{width:100%;padding:.875rem;background:linear-gradient(135deg,#4ecdc4,#45b7aa);border:none;border-radius:.5rem;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:.5rem}.drop-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4ecdc44d}.drop-btn.active{background:linear-gradient(135deg,#2ecc71,#27ae60);animation:dropping .3s ease infinite}@keyframes dropping{0%,to{transform:scale(1)}50%{transform:scale(.98)}}.reset-btn{display:flex;align-items:center;justify-content:center;gap:.375rem;width:100%;padding:.625rem;background:#e74c3c26;border:1px solid rgba(231,76,60,.3);border-radius:.5rem;color:#e74c3c;font-size:.8rem;cursor:pointer;transition:all .2s}.tip-section{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:#f1c40f1a;border:1px solid rgba(241,196,15,.2);border-radius:.5rem}.challenge-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.challenge-header h3{margin:0;color:#4ecdc4;font-size:.9rem}.score{font-size:.8rem;font-weight:700;color:#2ecc71;background:#2ecc7126;padding:.25rem .5rem;border-radius:.5rem}.question{font-size:.875rem;color:#e2e8f0;margin:0 0 .75rem;line-height:1.5}.options{display:flex;flex-direction:column;gap:.375rem}.option{display:flex;align-items:center;justify-content:space-between;padding:.625rem;background:#4ecdc41a;border:1px solid rgba(78,205,196,.2);border-radius:.5rem;color:#e2e8f0;font-size:.8rem;cursor:pointer;transition:all .2s;text-align:left}.option:hover:not(:disabled){background:#4ecdc433}.feedback{margin-top:.75rem;text-align:center}.feedback .correct{color:#2ecc71}.feedback .wrong{color:#e74c3c}.feedback button{margin-top:.5rem;padding:.5rem 1rem;background:#4ecdc4;border:none;border-radius:.5rem;color:#fff;cursor:pointer}.complete{padding:1rem 0}.complete svg{color:#f1c40f;margin-bottom:.5rem}.learn-panel h3{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;color:#e2e8f0}.learn-cards{display:flex;flex-direction:column;gap:.5rem}.card{padding:.75rem;background:#4ecdc41a;border:1px solid rgba(78,205,196,.2);border-radius:.5rem}.card h4{font-size:.8rem;color:#4ecdc4;margin:0 0 .375rem}.card p{font-size:.7rem;color:#94a3b8;margin:0;line-height:1.4}.card ul{margin:.25rem 0 0;padding-left:1rem}.card li{font-size:.65rem;color:#94a3b8}.info-modal-3d{width:100%;max-width:500px;max-height:80vh;overflow-y:auto;background:linear-gradient(135deg,#1a1a2e,#0f0f23);border:1px solid rgba(78,205,196,.4);border-radius:1.5rem}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid rgba(78,205,196,.2)}.modal-header h2 svg{color:#4ecdc4}.modal-content{padding:1.25rem}.modal-content section{margin-bottom:1.25rem}.modal-content h3{font-size:.9rem;color:#e2e8f0;margin:0 0 .5rem}.modal-content li{font-size:.8rem;color:#94a3b8;line-height:1.5;margin-bottom:.375rem}.modal-content li strong{color:#4ecdc4}@media(max-width:1024px){.titration-info-panel{display:none}}@media(max-width:768px){.header-3d{flex-wrap:wrap;justify-content:center;gap:.5rem}.header-3d h1{font-size:.875rem}.mode-tabs{order:3;width:100%;justify-content:center}.control-panel-3d{position:fixed;inset:auto 0 0;width:100%;max-height:45vh;border-radius:1rem 1rem 0 0}}.electrochemistry-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden}.electro-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:260px;max-height:calc(100vh - 7rem);overflow-y:auto;background:#0f172af2;border:1px solid rgba(52,152,219,.3);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.electro-info-panel h2{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#e2e8f0;margin:0 0 .75rem}.electro-info-panel h2 svg{color:#3498db}.cell-notation{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.625rem;background:#3498db1a;border-radius:.5rem;margin-bottom:.75rem;font-family:Roboto Mono,monospace;font-size:.8rem}.cell-notation .anode-side{color:#e74c3c}.cell-notation .bridge{color:#f39c12;font-weight:700}.cell-notation .cathode-side{color:#2ecc71}.reactions-box{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.reactions-box .reaction{padding:.5rem;border-radius:.375rem;font-size:.75rem}.reactions-box .reaction.anode{background:#e74c3c1a;border-left:3px solid #E74C3C}.reactions-box .reaction.cathode{background:#2ecc711a;border-left:3px solid #2ECC71}.reactions-box .reaction .label{display:block;font-size:.65rem;color:#64748b;margin-bottom:.25rem}.reactions-box .reaction .eq{font-family:Roboto Mono,monospace;color:#e2e8f0}.potential-table{margin-bottom:.75rem}.pot-row{display:flex;justify-content:space-between;align-items:center;padding:.375rem 0;border-bottom:1px solid rgba(52,152,219,.1)}.pot-row:last-child{border-bottom:none}.pot-row.total{padding-top:.5rem;margin-top:.25rem;border-top:1px dashed rgba(52,152,219,.3);border-bottom:none}.pot-label{font-size:.7rem;color:#94a3b8}.pot-value{font-size:.8rem;font-weight:600;font-family:Roboto Mono,monospace}.pot-value.anode{color:#e74c3c}.pot-value.cathode,.pot-value.positive{color:#2ecc71}.pot-value.negative{color:#e74c3c}.formula-section{padding:.625rem;background:#f1c40f14;border:1px solid rgba(241,196,15,.2);border-radius:.5rem;margin-bottom:.75rem;text-align:center}.formula-section .formula{font-size:.8rem;color:#f1c40f;font-weight:600;margin-bottom:.25rem}.formula-section .calculation{font-size:.7rem;color:#94a3b8;font-family:Roboto Mono,monospace}.formula-section .calculation strong{color:#e2e8f0}.status-badge{text-align:center;padding:.5rem;border-radius:.5rem;font-size:.8rem;font-weight:600;margin-bottom:.75rem}.status-badge.spontaneous{background:#2ecc7126;color:#2ecc71;border:1px solid rgba(46,204,113,.3)}.status-badge.non-spontaneous{background:#e74c3c26;color:#e74c3c;border:1px solid rgba(231,76,60,.3)}.electron-flow-info{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#3498db1a;border-radius:.375rem;font-size:.7rem;color:#94a3b8}.electron-flow-info .flow-arrow{font-size:.85rem;color:#3498db;font-weight:700}.electrode-label-mini{display:flex;align-items:center;gap:.25rem;padding:.2rem .4rem;background:#0f172ad9;border-radius:.25rem;font-size:.65rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid}.electrode-label-mini.anode{border-color:#e74c3c66}.electrode-label-mini.cathode{border-color:#2ecc7166}.electrode-label-mini.selected{border-color:#f1c40f;box-shadow:0 0 8px #f1c40f4d}.electrode-label-mini .symbol{font-size:.75rem;color:#e2e8f0}.electrode-label-mini .type{font-size:.55rem;color:#64748b}.electrode-label-mini.anode .type{color:#e74c3c}.electrode-label-mini.cathode .type{color:#2ecc71}.voltmeter-mini{background:#0f172ae6;border-radius:.25rem;padding:.25rem .5rem}.voltmeter-mini .voltage{font-size:1.1rem;font-weight:700;font-family:Roboto Mono,monospace}.voltmeter-mini .voltage.pos{color:#2ecc71}.voltmeter-mini .voltage.neg{color:#e74c3c}.voltage-panel{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:1rem;padding:.75rem 1.25rem;background:#0f172af2;border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.voltage-panel.spontaneous{border:1px solid rgba(46,204,113,.4)}.voltage-panel.non-spontaneous{border:1px solid rgba(231,76,60,.4)}.voltage-display{display:flex;align-items:baseline;gap:.125rem}.voltage-display .volt{font-size:1.75rem;font-weight:700;font-family:Roboto Mono,monospace}.voltage-panel.spontaneous .volt{color:#2ecc71}.voltage-panel.non-spontaneous .volt{color:#e74c3c}.voltage-display .unit{font-size:.9rem;color:#94a3b8}.voltage-status{font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:.25rem}.voltage-panel.spontaneous .voltage-status{color:#2ecc71;background:#2ecc7126}.voltage-panel.non-spontaneous .voltage-status{color:#e74c3c;background:#e74c3c26}.voltage-formula{font-size:.7rem;color:#64748b;font-family:Roboto Mono,monospace}.selected-panel{position:absolute;bottom:1rem;left:1rem;z-index:100;width:200px;padding:.75rem;background:#0f172af2;border:1px solid rgba(241,196,15,.4);border-radius:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.selected-panel h4{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:#f1c40f;margin:0 0 .5rem}.metal-info{display:flex;align-items:center;gap:.5rem;margin-bottom:.375rem}.metal-info .symbol{font-size:1.5rem;font-weight:700}.metal-info .name{font-size:.85rem;color:#e2e8f0}.metal-details{display:flex;gap:.75rem;font-size:.7rem;color:#94a3b8;margin-bottom:.375rem}.selected-panel .desc{font-size:.65rem;color:#64748b;margin:0 0 .5rem;line-height:1.4}.selected-panel .reaction{font-size:.75rem;color:#3498db;font-family:Roboto Mono,monospace;padding:.375rem;background:#3498db1a;border-radius:.25rem;text-align:center}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:240px;max-height:calc(100vh - 7rem);overflow-y:auto;background:#0f172af2;border:1px solid rgba(52,152,219,.3);border-radius:1rem;padding:.875rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-panel-3d.compact{width:220px;padding:.75rem}.panel-section{padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:1px solid rgba(52,152,219,.2)}.panel-section h3{display:flex;align-items:center;gap:.375rem;font-size:.8rem;font-weight:600;color:#e2e8f0;margin:0 0 .5rem}.electrode-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.25rem;margin-bottom:.5rem}.electrode-btn{display:flex;align-items:center;justify-content:center;padding:.375rem;background:#3498db1a;border:2px solid transparent;border-radius:.375rem;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .2s}.electrode-btn:hover{background:#3498db33}.electrode-btn.anode-active{background:#e74c3c33;border-color:#e74c3c}.electrode-btn.cathode-active{background:#2ecc7133;border-color:#2ecc71}.electrode-hint{display:flex;justify-content:center;gap:.75rem;font-size:.6rem;color:#64748b}.anode-dot,.cathode-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:.25rem}.anode-dot{background:#e74c3c}.cathode-dot{background:#2ecc71}.toggle-row{display:flex;gap:1rem;margin-bottom:.5rem}.toggle-row label{display:flex;align-items:center;gap:.25rem;font-size:.7rem;color:#94a3b8;cursor:pointer}.toggle-row input[type=checkbox]{width:.875rem;height:.875rem;accent-color:#3498DB}.reset-btn{display:flex;align-items:center;justify-content:center;gap:.25rem;width:100%;padding:.5rem;background:#e74c3c26;border:1px solid rgba(231,76,60,.3);border-radius:.375rem;color:#e74c3c;font-size:.75rem;cursor:pointer;transition:all .2s}.reset-btn:hover{background:#e74c3c40}.tip-section{display:flex;align-items:flex-start;gap:.375rem;padding:.5rem;background:#f1c40f1a;border:1px solid rgba(241,196,15,.2);border-radius:.375rem;margin-top:.75rem}.tip-section svg{color:#f1c40f;flex-shrink:0}.tip-section p{margin:0;font-size:.65rem;color:#94a3b8;line-height:1.4}.challenge-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.challenge-header h3{margin:0;color:#3498db;font-size:.85rem}.score{font-size:.75rem;font-weight:700;color:#2ecc71;background:#2ecc7126;padding:.2rem .4rem;border-radius:.375rem}.question{font-size:.8rem;color:#e2e8f0;margin:0 0 .5rem;line-height:1.4}.options{display:flex;flex-direction:column;gap:.25rem}.option{display:flex;align-items:center;justify-content:space-between;padding:.5rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.375rem;color:#e2e8f0;font-size:.75rem;cursor:pointer;transition:all .2s;text-align:left}.option:hover:not(:disabled){background:#3498db33}.option.correct{background:#2ecc7133;border-color:#2ecc71;color:#2ecc71}.option.wrong{background:#e74c3c33;border-color:#e74c3c;color:#e74c3c}.feedback{margin-top:.5rem;text-align:center}.feedback .correct{color:#2ecc71;font-size:.8rem}.feedback .wrong{color:#e74c3c;font-size:.8rem}.feedback button{margin-top:.375rem;padding:.375rem .75rem;background:#3498db;border:none;border-radius:.375rem;color:#fff;font-size:.75rem;cursor:pointer}.complete{padding:.75rem 0}.complete svg{color:#f1c40f;margin-bottom:.375rem}.learn-panel h3{display:flex;align-items:center;gap:.375rem;margin:0 0 .5rem;color:#e2e8f0;font-size:.85rem}.learn-cards{display:flex;flex-direction:column;gap:.375rem}.card{padding:.5rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.375rem}.card.anode{background:#e74c3c1a;border-color:#e74c3c33}.card.anode h4{color:#e74c3c}.card.cathode{background:#2ecc711a;border-color:#2ecc7133}.card.cathode h4{color:#2ecc71}.card.highlight{background:#f1c40f1a;border-color:#f1c40f33}.card.highlight h4{color:#f1c40f}.card h4{font-size:.75rem;color:#3498db;margin:0 0 .25rem}.card p{font-size:.65rem;color:#94a3b8;margin:0;line-height:1.3}.info-modal-3d{width:100%;max-width:450px;max-height:80vh;overflow-y:auto;background:linear-gradient(135deg,#1a1a2e,#0f0f23);border:1px solid rgba(52,152,219,.4);border-radius:1.25rem}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;border-bottom:1px solid rgba(52,152,219,.2)}.modal-header h2{display:flex;align-items:center;gap:.5rem;font-size:1rem;color:#fff;margin:0}.modal-header h2 svg{color:#3498db}.modal-content{padding:1rem}.modal-content section{margin-bottom:1rem}.modal-content section:last-child{margin-bottom:0}.modal-content h3{font-size:.85rem;color:#e2e8f0;margin:0 0 .5rem}.modal-content ul{margin:0;padding-left:1rem}.modal-content li{font-size:.75rem;color:#94a3b8;line-height:1.5;margin-bottom:.25rem}.modal-content li strong{color:#3498db}@media(max-width:1024px){.electro-info-panel{display:none}}@media(max-width:768px){.header-3d{flex-wrap:wrap;justify-content:center;gap:.5rem}.header-3d h1{font-size:.875rem}.mode-tabs{order:3;width:100%;justify-content:center}.control-panel-3d{position:fixed;inset:auto 0 0;width:100%;max-height:40vh;border-radius:1rem 1rem 0 0}.voltage-panel{bottom:auto;top:4.5rem}.selected-panel{display:none}}.periodic-table-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden}.view-toggle{display:flex;gap:.25rem;background:#0000004d;padding:.25rem;border-radius:.5rem}.view-toggle button{padding:.5rem .625rem;background:transparent;border:none;border-radius:.375rem;color:#94a3b8;font-size:.7rem;cursor:pointer;transition:all .2s}.view-toggle button.active{background:#3498db4d;color:#3498db}.action-btn:hover{background:#3498db66;color:#fff}.atom-3d-label{display:flex;flex-direction:column;align-items:center;padding:.5rem 1rem;background:#0f172af2;border:1px solid rgba(52,152,219,.4);border-radius:.75rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.atom-3d-label .symbol{font-size:2rem;font-weight:700;color:#3498db}.atom-3d-label .name{font-size:.875rem;color:#e2e8f0}.atom-3d-label .config{font-size:.75rem;color:#94a3b8;font-family:Roboto Mono,monospace}.element-cell-label{display:flex;flex-direction:column;align-items:center;padding:.25rem;cursor:pointer;transition:transform .2s}.element-cell-label.selected{transform:scale(1.1)}.element-cell-label .number{font-size:.5rem;color:#000000b3}.element-cell-label .symbol{font-size:.875rem;font-weight:700;color:#000000e6}.element-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:280px;background:#0f172af2;border:1px solid rgba(52,152,219,.3);border-radius:1rem;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.element-header{display:flex;flex-direction:column;align-items:center;padding:1.25rem;border-bottom:1px solid rgba(52,152,219,.2)}.element-number{font-size:.75rem;color:#94a3b8}.element-symbol{font-size:3rem;font-weight:700;color:#fff;line-height:1}.element-mass{font-size:.875rem;color:#94a3b8;font-family:Roboto Mono,monospace}.element-info-panel h2{font-size:1.25rem;color:#fff;margin:0;padding:.75rem 1rem 0;text-align:center}.element-name-en{font-size:.8rem;color:#64748b;text-align:center;margin:.25rem 0 1rem}.element-details{padding:0 1rem 1rem}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(52,152,219,.1)}.detail-row:last-child{border-bottom:none}.detail-row span:first-child{font-size:.75rem;color:#94a3b8}.detail-row span:last-child{font-size:.8rem;font-weight:600;color:#e2e8f0}.category-badge{padding:.25rem .5rem;border-radius:.25rem;font-size:.7rem!important;text-transform:capitalize;color:#000c!important}.config{font-family:Roboto Mono,monospace;color:#3498db!important}.valence{font-size:1rem!important;color:#e74c3c!important}.shell-visualization{padding:1rem;background:#3498db1a}.shell-visualization h4{font-size:.75rem;color:#94a3b8;margin:0 0 .75rem}.shells{display:flex;justify-content:center;gap:.5rem}.shell{display:flex;flex-direction:column;align-items:center;padding:.5rem;background:#3498db33;border-radius:.5rem;min-width:45px}.shell-name{font-size:.7rem;color:#64748b}.shell-count{font-size:1.25rem;font-weight:700;color:#3498db}.search-input{width:100%;padding:.625rem;background:#0000004d;border:1px solid rgba(52,152,219,.3);border-radius:.5rem;color:#e2e8f0;font-size:.8rem}.search-input:focus{outline:none;border-color:#3498db}.search-input::placeholder{color:#64748b}.element-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.375rem}.element-btn{display:flex;flex-direction:column;align-items:center;padding:.5rem .25rem;background:#3498db33;border:1px solid rgba(52,152,219,.2);border-radius:.5rem;cursor:pointer;transition:all .2s ease}.element-btn:hover{transform:scale(1.05);border-color:#3498db80}.element-btn.selected{border-color:#3498db;box-shadow:0 0 10px #3498db4d}.element-btn .symbol{font-size:1rem;font-weight:700;color:#fff}.element-btn .number{font-size:.6rem;color:#94a3b8}.more-hint{font-size:.7rem;color:#64748b;text-align:center;margin:.5rem 0 0}.category-legend{display:grid;grid-template-columns:repeat(2,1fr);gap:.375rem}.legend-item{display:flex;align-items:center;gap:.375rem}.legend-color{width:12px;height:12px;border-radius:2px}.legend-label{font-size:.65rem;color:#94a3b8;text-transform:capitalize}.learn-card{padding:.75rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.5rem}.learn-card h4{font-size:.8rem;color:#3498db;margin:0 0 .5rem}.learn-card li{font-size:.7rem;color:#94a3b8;margin-bottom:.25rem}.info-modal-3d{width:100%;max-width:550px;max-height:85vh;overflow-y:auto;background:linear-gradient(135deg,#1a1a2e,#0f0f23);border:1px solid rgba(52,152,219,.4);border-radius:1.5rem}@media(max-width:1024px){.element-info-panel{display:none}}@media(max-width:480px){.mode-tabs button{padding:.375rem .5rem;font-size:.65rem}.view-toggle{display:none}}.electrolyte-test-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:#0f172ae6;border:1px solid rgba(39,174,96,.5);border-radius:.75rem;color:#94a3b8;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-btn-3d:hover{border-color:#27ae60;color:#fff;transform:scale(1.05)}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:#0f172af2;border:1px solid rgba(39,174,96,.3);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-3d h1 svg{color:#27ae60}.mode-tabs button.active{background:linear-gradient(135deg,#27ae60,#1e8449);color:#fff}.action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#27ae6033;border:1px solid rgba(39,174,96,.4);border-radius:.5rem;color:#94a3b8;cursor:pointer;transition:all .2s ease}.action-btn:hover,.action-btn.active{background:#27ae6066;color:#fff}.ion-label{padding:.125rem .25rem;border-radius:.25rem;font-size:.6rem;font-weight:700;font-family:Roboto Mono,monospace;white-space:nowrap}.ion-label.positive{background:#e74c3ce6;color:#fff}.ion-label.negative{background:#3498dbe6;color:#fff}.solution-label{display:flex;flex-direction:column;align-items:center;padding:.5rem .75rem;background:#0f172af2;border:1px solid rgba(39,174,96,.4);border-radius:.5rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.solution-label .formula{font-size:1.25rem;font-weight:700;color:#27ae60;font-family:Roboto Mono,monospace}.solution-label .name{font-size:.7rem;color:#94a3b8}.bulb-status{padding:.375rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:700;text-align:center}.bulb-status.bright{background:#ffeb3b4d;border:2px solid #FFEB3B;color:#ffeb3b;animation:glow-pulse 1s ease-in-out infinite}.bulb-status.dim{background:#ffeb3b26;border:1px solid rgba(255,235,59,.5);color:#f39c12}.bulb-status.off{background:#6464644d;border:1px solid #666;color:#666}@keyframes glow-pulse{0%,to{box-shadow:0 0 10px #ffeb3b80}50%{box-shadow:0 0 20px #ffeb3bcc}}.result-indicator{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#0f172af2;border:1px solid rgba(39,174,96,.3);border-radius:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:180px;opacity:0;transform:translate(20px);transition:all .3s ease}.result-indicator.active{opacity:1;transform:translate(0)}.type-badge{padding:.5rem 1rem;border-radius:.5rem;font-size:.75rem;font-weight:700;color:#fff;text-align:center}.conductivity-bar{display:flex;flex-direction:column;gap:.25rem}.conductivity-bar .bar-label{font-size:.65rem;color:#94a3b8}.conductivity-bar .bar-container{height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.conductivity-bar .bar-fill{height:100%;border-radius:4px;transition:width .5s ease}.conductivity-bar .bar-value{font-size:.7rem;font-weight:600;color:#e2e8f0;text-align:right}.solution-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:280px;background:#0f172af2;border:1px solid rgba(39,174,96,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.solution-info-panel h2 svg{color:#27ae60}.formula-display{font-size:2rem;font-weight:700;font-family:Roboto Mono,monospace;color:#27ae60;text-align:center;padding:.75rem;background:#27ae601a;border-radius:.5rem;margin-bottom:1rem}.info-stats{display:flex;flex-direction:column;gap:.625rem;margin-bottom:1rem}.stat-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.stat-label{font-size:.75rem;color:#94a3b8;flex-shrink:0}.stat-value{font-size:.8rem;font-weight:600;color:#e2e8f0}.progress-bar{flex:1;height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.progress-fill{height:100%;border-radius:3px;transition:width .5s ease}.ionization-box{padding:.75rem;background:#27ae601a;border:1px solid rgba(39,174,96,.2);border-radius:.5rem;margin-bottom:1rem}.ionization-box h4{font-size:.75rem;color:#27ae60;margin:0 0 .5rem}.ions-display{display:flex;flex-wrap:wrap;gap:.375rem}.ion-badge{padding:.25rem .5rem;border-radius:.25rem;font-size:.7rem;font-weight:600;font-family:Roboto Mono,monospace}.ion-badge.cation{background:#e74c3c33;color:#e74c3c;border:1px solid rgba(231,76,60,.4)}.ion-badge.anion{background:#3498db33;color:#3498db;border:1px solid rgba(52,152,219,.4)}.no-ions{font-size:.75rem;color:#64748b;font-style:italic;margin:0}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:280px;max-height:calc(100vh - 7rem);overflow-y:auto;background:#0f172af2;border:1px solid rgba(39,174,96,.3);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-panel-3d::-webkit-scrollbar-thumb{background:#27ae6080;border-radius:2px}.panel-section{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid rgba(39,174,96,.2)}.filter-buttons button{flex:1;padding:.5rem;background:#27ae601a;border:1px solid rgba(39,174,96,.2);border-radius:.375rem;color:#94a3b8;font-size:.7rem;cursor:pointer;transition:all .2s}.filter-buttons button:hover{background:#27ae6033}.filter-buttons button.active{background:#27ae604d;border-color:#27ae60;color:#27ae60}.solution-btn{display:flex;flex-direction:column;align-items:center;padding:.5rem;background:#27ae600d;border:1px solid rgba(39,174,96,.2);border-radius:.5rem;cursor:pointer;transition:all .2s ease}.solution-btn:hover{background:#27ae6026}.solution-btn.selected{border-width:2px}.solution-btn .sol-formula{font-size:.75rem;font-weight:700;font-family:Roboto Mono,monospace;color:#e2e8f0}.solution-btn .sol-type{font-size:.65rem}.toggle-group input[type=checkbox]{width:1rem;height:1rem;accent-color:#27AE60;cursor:pointer}.challenge-header h3{margin:0;color:#27ae60}.score-display{font-size:.875rem;font-weight:700;color:#27ae60;background:#27ae6026;padding:.375rem .75rem;border-radius:1rem}.challenge-option{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#27ae601a;border:1px solid rgba(39,174,96,.2);border-radius:.5rem;color:#e2e8f0;font-size:.8rem;cursor:pointer;transition:all .2s ease;text-align:left}.challenge-option:hover:not(:disabled){background:#27ae6033;border-color:#27ae6066}.next-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#27ae60,#1e8449);border:none;border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer}.challenge-complete button{padding:.5rem 1.5rem;background:#27ae604d;border:1px solid #27AE60;border-radius:.5rem;color:#fff;cursor:pointer}.learn-card.strong{background:#27ae601a;border:1px solid rgba(39,174,96,.3)}.learn-card.weak{background:#f39c121a;border:1px solid rgba(243,156,18,.3)}.learn-card.non{background:#e74c3c1a;border:1px solid rgba(231,76,60,.3)}.learn-card.formula{background:#3498db1a;border:1px solid rgba(52,152,219,.3)}.learn-card.strong h4{color:#27ae60}.learn-card.weak h4{color:#f39c12}.learn-card.non h4{color:#e74c3c}.learn-card.formula h4{color:#3498db}.tip-section{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:#27ae601a;border:1px solid rgba(39,174,96,.2);border-radius:.5rem}.tip-section svg{color:#27ae60;flex-shrink:0;margin-top:2px}.info-modal-3d{width:100%;max-width:550px;max-height:85vh;overflow-y:auto;background:linear-gradient(135deg,#1a1a2e,#0f0f23);border:1px solid rgba(39,174,96,.4);border-radius:1.5rem}.info-modal-3d .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(39,174,96,.2);position:sticky;top:0;background:inherit}.info-modal-3d .modal-header h2 svg{color:#27ae60}.info-modal-3d li strong{color:#27ae60}.comparison-table{background:#0000004d;border-radius:.5rem;overflow:hidden}.table-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.5rem;padding:.75rem 1rem;font-size:.8rem;color:#e2e8f0}.table-row.header{background:#27ae6033;font-weight:600}.table-row:not(.header){border-top:1px solid rgba(39,174,96,.1)}.solution-info-panel{max-height:calc(100vh - 7rem);overflow-y:auto}.solution-info-panel::-webkit-scrollbar{width:4px}.solution-info-panel::-webkit-scrollbar-thumb{background:#27ae6080;border-radius:2px}.solution-info-panel .formula-derivation{margin-bottom:.75rem;padding:.625rem;background:#9b59b614;border:1px solid rgba(155,89,182,.2);border-radius:.5rem}.solution-info-panel .formula-derivation h4{font-size:.8rem;color:#9b59b6;margin:0 0 .5rem}.solution-info-panel .formula-step{display:flex;flex-direction:column;gap:.125rem;padding:.375rem .5rem;margin-bottom:.375rem;background:#ffffff08;border-radius:.375rem;border-left:2px solid rgba(155,89,182,.4)}.solution-info-panel .formula-step.final{background:#9b59b61a;border-left-color:#9b59b6}.solution-info-panel .step-label{font-size:.65rem;font-weight:600;color:#9b59b6}.solution-info-panel .step-formula{font-size:.75rem;font-family:Roboto Mono,monospace;color:#e2e8f0;word-break:break-all}.solution-info-panel .step-value{font-size:.65rem;font-family:Roboto Mono,monospace;color:#94a3b8}.solution-info-panel .step-result{font-size:.75rem;font-weight:600;font-family:Roboto Mono,monospace;color:#27ae60}.comparison-table{margin-bottom:.75rem;padding:.625rem;background:#3498db14;border:1px solid rgba(52,152,219,.2);border-radius:.5rem}.comparison-table h4{font-size:.8rem;color:#3498db;margin:0 0 .5rem}.comparison-table table{width:100%;border-collapse:collapse;font-size:.65rem}.comparison-table th,.comparison-table td{padding:.375rem .25rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.05)}.comparison-table th{color:#94a3b8;font-weight:600}.comparison-table th:first-child,.comparison-table td:first-child{text-align:left}.comparison-table td{color:#64748b}.comparison-table td.highlight{color:#27ae60;font-weight:600;background:#27ae601a}.acid-base-test-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#1a0a1a,#2e1a2e,#0f0a1f);overflow:hidden}.ph-meter-display{display:flex;flex-direction:column;align-items:center;font-family:Roboto Mono,monospace}.ph-meter-display .ph-label{font-size:.6rem;color:#94a3b8}.ph-meter-display .ph-value{font-size:1.5rem;font-weight:700}.meter-label{font-size:.65rem;color:#9b59b6;background:#0f172ae6;padding:.25rem .5rem;border-radius:.25rem;white-space:nowrap}.solution-tube-label{display:flex;flex-direction:column;align-items:center;padding:.5rem .75rem;background:#0f172af2;border:1px solid rgba(155,89,182,.4);border-radius:.5rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.solution-tube-label .formula{font-size:1.25rem;font-weight:700;color:#9b59b6;font-family:Roboto Mono,monospace}.solution-tube-label .name{font-size:.7rem;color:#94a3b8}.ph-scale-label .scale-title{font-size:.75rem;font-weight:600;color:#e2e8f0;background:#0f172ae6;padding:.25rem .5rem;border-radius:.25rem}.ph-number{font-size:.6rem;font-weight:600;color:#e2e8f0;font-family:Roboto Mono,monospace}.ph-category{font-size:.55rem;font-weight:700;padding:.15rem .3rem;border-radius:.2rem}.ph-category.acid{background:#e74c3c4d;color:#e74c3c}.ph-category.neutral{background:#27ae604d;color:#27ae60}.ph-category.base{background:#3498db4d;color:#3498db}.dropper-label{font-size:.65rem;color:#9b59b6;background:#0f172ae6;padding:.25rem .5rem;border-radius:.25rem;white-space:nowrap}.ion-label-small{font-size:.5rem;font-weight:700;padding:.1rem .2rem;border-radius:.15rem;font-family:Roboto Mono,monospace}.ion-label-small.acid{background:#e74c3ccc;color:#fff}.ion-label-small.base{background:#3498dbcc;color:#fff}.result-panel-3d{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:#0f172af2;border:1px solid rgba(155,89,182,.3);border-radius:.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:140px;opacity:0;transform:translate(20px);transition:all .3s ease}.result-panel-3d.active{opacity:1;transform:translate(0)}.result-type{padding:.5rem;border-radius:.375rem;font-size:.875rem;font-weight:700;color:#fff;text-align:center}.result-details .detail-row{display:flex;justify-content:space-between;font-size:.7rem;color:#94a3b8;padding:.25rem 0}.result-details .value{font-weight:600;color:#e2e8f0}.indicator-result{margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(155,89,182,.2);font-size:.7rem}.indicator-result .ind-name{color:#94a3b8}.indicator-result .ind-color{display:block;font-weight:600;color:#9b59b6}.solution-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:280px;background:#0f172af2;border:1px solid rgba(155,89,182,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.solution-info-panel h2{display:flex;align-items:center;gap:.5rem;font-size:1rem;color:#fff;margin:0 0 .5rem}.solution-info-panel h2 svg{color:#9b59b6}.formula-display{font-size:2rem;font-weight:700;font-family:Roboto Mono,monospace;color:#9b59b6;text-align:center;padding:.75rem;background:#9b59b61a;border-radius:.5rem;margin-bottom:1rem}.info-stats{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.stat-row{display:flex;justify-content:space-between;align-items:center}.stat-label{font-size:.75rem;color:#94a3b8}.stat-value{font-size:.875rem;font-weight:600;font-family:Roboto Mono,monospace}.indicator-result-box{margin-top:1rem;padding:.75rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.3);border-radius:.5rem}.indicator-result-box h4{font-size:.8rem;color:#9b59b6;margin:0 0 .5rem}.indicator-result-box p{font-size:.75rem;color:#e2e8f0;margin:.25rem 0}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:280px;max-height:calc(100vh - 7rem);overflow-y:auto;background:#0f172af2;border:1px solid rgba(155,89,182,.3);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.filter-buttons button{flex:1;padding:.5rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.2);border-radius:.375rem;color:#94a3b8;font-size:.7rem;cursor:pointer;transition:all .2s}.filter-buttons button:hover{background:#9b59b633}.filter-buttons button.active{background:#9b59b64d;border-color:#9b59b6;color:#9b59b6}.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.solution-btn{display:flex;flex-direction:column;align-items:center;padding:.5rem;background:#9b59b60d;border:1px solid rgba(155,89,182,.2);border-radius:.5rem;cursor:pointer;transition:all .2s ease}.solution-btn:hover{background:#9b59b626}.solution-btn.selected{border-width:2px;background:#9b59b633}.solution-btn .sol-formula{font-size:.7rem;font-weight:700;font-family:Roboto Mono,monospace;color:#e2e8f0}.solution-btn .sol-ph{font-size:.6rem}.indicator-list{display:flex;flex-direction:column;gap:.375rem;margin-bottom:.75rem}.indicator-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#9b59b60d;border:1px solid rgba(155,89,182,.2);border-radius:.375rem;cursor:pointer;transition:all .2s}.indicator-btn:hover{background:#9b59b626}.indicator-btn.selected{background:#9b59b633;border-color:#9b59b6}.indicator-btn .ind-colors{display:flex;gap:2px}.indicator-btn .ind-colors span{width:12px;height:12px;border-radius:2px;border:1px solid rgba(255,255,255,.2)}.indicator-btn .ind-name{font-size:.75rem;color:#e2e8f0}.drop-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:.5rem;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.drop-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #9b59b666}.drop-btn:disabled{opacity:.5;cursor:not-allowed}.learn-card.acid{background:#e74c3c1a;border:1px solid rgba(231,76,60,.3)}.learn-card.base{background:#3498db1a;border:1px solid rgba(52,152,219,.3)}.learn-card.formula{background:#9b59b61a;border:1px solid rgba(155,89,182,.3)}.learn-card.indicator{background:#f1c40f1a;border:1px solid rgba(241,196,15,.3)}.learn-card.acid h4{color:#e74c3c}.learn-card.base h4{color:#3498db}.learn-card.formula h4{color:#9b59b6}.learn-card.indicator h4{color:#f1c40f}.learn-card .examples{display:block;margin-top:.5rem;font-size:.7rem;color:#64748b;font-style:italic}.info-modal-3d{width:100%;max-width:550px;max-height:85vh;overflow-y:auto;background:linear-gradient(135deg,#1a1a2e,#0f0f23);border:1px solid rgba(155,89,182,.4);border-radius:1.5rem}.ph-table{background:#0000004d;border-radius:.5rem;overflow:hidden}.ph-row{display:flex;justify-content:space-between;padding:.5rem 1rem;font-size:.8rem;border-bottom:1px solid rgba(155,89,182,.1)}.ph-row:last-child{border-bottom:none}.ph-row span:first-child{font-weight:600;font-family:Roboto Mono,monospace}.ph-row span:last-child{color:#e2e8f0}@media(max-width:1024px){.solution-info-panel{display:none}}@media(max-width:480px){.mode-tabs button{padding:.375rem .5rem;font-size:.65rem}.solution-grid{grid-template-columns:repeat(2,1fr)}}.macromolecule-test-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a1a0a,#1a2a1a,#0f1f0f);overflow:hidden}.action-btn:hover,.action-btn.active{background:#f39c1266;color:#fff}.tube-label{padding:.375rem .75rem;background:#0f172af2;border:1px solid rgba(243,156,18,.4);border-radius:.375rem;color:#e2e8f0;font-size:.7rem;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.burner-label{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:#0f172ae6;border-radius:.25rem;font-size:.65rem;color:#94a3b8}.burner-label.active{color:#f39c12;border:1px solid rgba(243,156,18,.4)}.dropper-label{padding:.25rem .5rem;background:#0f172ae6;border-radius:.25rem;font-size:.6rem;color:#e2e8f0;white-space:nowrap;max-width:120px;text-align:center}.result-panel-macro{display:flex;flex-direction:column;min-width:160px;background:#0f172af2;border:1px solid rgba(243,156,18,.3);border-radius:.75rem;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;transform:translate(20px);transition:all .3s ease}.result-panel-macro.active{opacity:1;transform:translate(0)}.result-header{padding:.625rem;font-size:.8rem;font-weight:700;color:#fff;text-align:center}.result-body{padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.result-sample{display:flex;align-items:center;gap:.5rem}.result-sample .sample-icon{font-size:1.25rem}.result-sample .sample-name{font-size:.8rem;color:#e2e8f0}.result-status{padding:.5rem;border-radius:.375rem;text-align:center;font-size:.8rem;font-weight:700}.result-status.positive{background:#2ecc7133;color:#2ecc71}.result-status.negative{background:#e74c3c33;color:#e74c3c}.result-detects,.result-color{display:flex;justify-content:space-between;align-items:center;font-size:.7rem}.result-detects .label,.result-color .label{color:#94a3b8}.result-detects .value{color:#e2e8f0;font-weight:500}.result-color .color-box{width:20px;height:14px;border-radius:3px;border:1px solid rgba(255,255,255,.2)}.food-sample-display{display:flex;flex-direction:column;align-items:center;padding:1rem;background:#0f172af2;border:1px solid rgba(243,156,18,.3);border-radius:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.food-sample-display .food-icon{font-size:2.5rem;margin-bottom:.5rem}.food-sample-display .food-name{font-size:1rem;font-weight:600;color:#fff;margin-bottom:.5rem}.food-contents{display:flex;flex-wrap:wrap;gap:.25rem;justify-content:center}.content-badge{padding:.2rem .4rem;border-radius:.25rem;font-size:.55rem;font-weight:600}.content-badge.carb{background:#f39c1233;color:#f39c12}.content-badge.protein{background:#9b59b633;color:#9b59b6}.content-badge.fat{background:#e74c3c33;color:#e74c3c}.test-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:280px;background:#0f172af2;border:1px solid rgba(243,156,18,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.test-info-panel h2{display:flex;align-items:center;gap:.5rem;font-size:1rem;margin:0 0 .75rem}.test-target{padding:.5rem;border-radius:.375rem;font-size:.8rem;font-weight:700;color:#fff;text-align:center;margin-bottom:1rem}.test-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.test-details .detail-row{display:flex;justify-content:space-between}.test-details .label{font-size:.75rem;color:#94a3b8}.test-details .value{font-size:.75rem;color:#e2e8f0;font-weight:500;text-align:right;max-width:140px}.color-legend{padding:.75rem;background:#f39c121a;border-radius:.5rem;margin-bottom:1rem}.color-legend h4{font-size:.75rem;color:#f39c12;margin:0 0 .5rem}.color-row{display:flex;align-items:center;gap:.5rem;font-size:.7rem;color:#94a3b8}.color-row .color-box{width:24px;height:16px;border-radius:3px;border:1px solid rgba(255,255,255,.2)}.color-label{font-style:italic}.test-description{font-size:.75rem;color:#94a3b8;line-height:1.5;margin:0}.test-result{margin-top:1rem;padding:.75rem;border-radius:.5rem;text-align:center}.test-result.positive{background:#2ecc7126;border:1px solid rgba(46,204,113,.4)}.test-result.negative{background:#e74c3c26;border:1px solid rgba(231,76,60,.4)}.test-result h4{margin:0 0 .25rem;font-size:.875rem}.test-result.positive h4{color:#2ecc71}.test-result.negative h4{color:#e74c3c}.test-result p{margin:0;font-size:.7rem;color:#94a3b8}.filter-buttons{display:flex;gap:.375rem;margin-bottom:.75rem}.filter-buttons button{flex:1;padding:.4rem;background:#f39c121a;border:1px solid rgba(243,156,18,.2);border-radius:.375rem;color:#94a3b8;font-size:.65rem;cursor:pointer;transition:all .2s}.filter-buttons button:hover{background:#f39c1233}.filter-buttons button.active{background:#f39c124d;border-color:#f39c12;color:#f39c12}.test-list{display:flex;flex-direction:column;gap:.375rem;max-height:200px;overflow-y:auto}.test-btn{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:#f39c120d;border:none;border-left:3px solid transparent;border-radius:.375rem;cursor:pointer;transition:all .2s ease}.test-btn:hover{background:#f39c1226}.test-btn.selected{background:#f39c1233}.test-btn .test-name{font-size:.75rem;color:#e2e8f0}.test-btn .test-target-badge{padding:.15rem .3rem;border-radius:.25rem;font-size:.7rem}.sample-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.375rem;max-height:180px;overflow-y:auto}.sample-btn{display:flex;flex-direction:column;align-items:center;padding:.375rem;background:#f39c120d;border:1px solid rgba(243,156,18,.2);border-radius:.375rem;cursor:pointer;transition:all .2s ease}.sample-btn:hover{background:#f39c1226}.sample-btn.selected{border-color:#f39c12;background:#f39c1233}.sample-btn .sample-icon{font-size:1.25rem}.sample-btn .sample-name{font-size:.55rem;color:#e2e8f0;margin-top:.25rem;text-align:center}.start-test-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem;background:linear-gradient(135deg,#f39c12,#e67e22);border:none;border-radius:.5rem;color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s}.start-test-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #f39c1266}.start-test-btn:disabled{opacity:.6;cursor:not-allowed}.challenge-option{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#f39c121a;border:1px solid rgba(243,156,18,.2);border-radius:.5rem;color:#e2e8f0;font-size:.8rem;cursor:pointer;transition:all .2s ease;text-align:left}.learn-card.carb{background:#f39c121a;border:1px solid rgba(243,156,18,.3)}.learn-card.protein{background:#9b59b61a;border:1px solid rgba(155,89,182,.3)}.learn-card.fat{background:#e74c3c1a;border:1px solid rgba(231,76,60,.3)}.learn-card.tips{background:#3498db1a;border:1px solid rgba(52,152,219,.3)}.learn-card.carb h4{color:#f39c12}.learn-card.protein h4{color:#9b59b6}.learn-card.fat h4{color:#e74c3c}.learn-card.tips h4{color:#3498db}.learn-card li{font-size:.7rem;color:#94a3b8;line-height:1.5;margin-bottom:.25rem}.learn-card p{font-size:.7rem;color:#94a3b8;margin:0;line-height:1.4}.info-modal-3d{width:100%;max-width:550px;max-height:85vh;overflow-y:auto;background:linear-gradient(135deg,#1a2a1a,#0f1f0f);border:1px solid rgba(243,156,18,.4);border-radius:1.5rem}.info-modal-3d li strong{color:#f39c12}.test-table{background:#0000004d;border-radius:.5rem;overflow:hidden}.test-table .table-row{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:.5rem;padding:.625rem .75rem;font-size:.75rem;color:#e2e8f0;border-bottom:1px solid rgba(243,156,18,.1)}.test-table .table-row:last-child{border-bottom:none}.test-table .table-row.header{background:#f39c1233;font-weight:600}@media(max-width:1024px){.test-info-panel{display:none}}@media(max-width:768px){.header-3d{flex-wrap:wrap;justify-content:center}.header-3d h1{font-size:.875rem}.control-panel-3d{position:fixed;inset:auto 0 0;width:100%;max-height:50vh;border-radius:1rem 1rem 0 0}.sample-grid{grid-template-columns:repeat(5,1fr)}}@media(max-width:480px){.mode-tabs button{padding:.375rem .5rem;font-size:.65rem}.sample-grid{grid-template-columns:repeat(4,1fr)}}.hydrolysis-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a1520,#1a2a40,#0f1a25);overflow:hidden}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:#0f172ae6;border:1px solid rgba(52,152,219,.5);border-radius:.75rem;color:#94a3b8;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-btn-3d:hover{border-color:#3498db;color:#fff;transform:scale(1.05)}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:#0f172af2;border:1px solid rgba(52,152,219,.3);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-3d h1 svg{color:#3498db}.mode-tabs button.active{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#3498db33;border:1px solid rgba(52,152,219,.4);border-radius:.5rem;color:#94a3b8;cursor:pointer;transition:all .2s ease}.action-btn:hover,.action-btn.active{background:#3498db66;color:#fff}.ion-label{padding:.15rem .3rem;border-radius:.25rem;font-size:.6rem;font-weight:700;font-family:Roboto Mono,monospace;white-space:nowrap}.ion-label.cation{background:#e74c3ccc;color:#fff}.ion-label.anion{background:#3498dbcc;color:#fff}.ion-label.hydrolyzed{animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.product-label{padding:.15rem .3rem;border-radius:.25rem;font-size:.55rem;font-weight:700;font-family:Roboto Mono,monospace}.product-label.base{background:#3498dbe6;color:#fff}.product-label.acid{background:#e74c3ce6;color:#fff}.beaker-label{display:flex;flex-direction:column;align-items:center;padding:.5rem .75rem;background:#0f172af2;border:1px solid rgba(52,152,219,.4);border-radius:.5rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.beaker-label .formula{font-size:1.25rem;font-weight:700;color:#3498db;font-family:Roboto Mono,monospace}.beaker-label .name{font-size:.7rem;color:#94a3b8}.ph-indicator-3d{display:flex;flex-direction:column;align-items:center;gap:.5rem}.ph-circle{width:70px;height:70px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 4px 20px #0000004d}.ph-circle .ph-value{font-size:1.5rem;font-weight:700;color:#fff}.ph-circle .ph-label{font-size:.6rem;color:#fffc}.hydrolysis-type{font-size:.8rem;font-weight:700;text-transform:uppercase}.reaction-equation{padding:.75rem 1.5rem;background:#0f172af2;border:1px solid rgba(52,152,219,.3);border-radius:.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;transform:translateY(-10px);transition:all .3s ease}.reaction-equation.active{opacity:1;transform:translateY(0)}.reaction-equation .equation{font-size:.9rem;font-family:Roboto Mono,monospace;color:#3498db}.salt-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:300px;background:#0f172af2;border:1px solid rgba(52,152,219,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.salt-info-panel h2{display:flex;align-items:center;gap:.5rem;font-size:1rem;color:#fff;margin:0 0 .5rem}.salt-info-panel h2 svg{color:#3498db}.formula-display{font-size:2rem;font-weight:700;font-family:Roboto Mono,monospace;color:#3498db;text-align:center;padding:.75rem;background:#3498db1a;border-radius:.5rem;margin-bottom:1rem}.type-badge-large{padding:.75rem;border-radius:.5rem;font-size:.875rem;font-weight:700;color:#fff;text-align:center;margin-bottom:1rem}.ion-info{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem}.ion-box{padding:.75rem;border-radius:.5rem;text-align:center}.ion-box.cation{background:#e74c3c1a;border:1px solid rgba(231,76,60,.3)}.ion-box.anion{background:#3498db1a;border:1px solid rgba(52,152,219,.3)}.ion-box h4{font-size:.7rem;color:#94a3b8;margin:0 0 .375rem}.ion-box .ion-symbol{display:block;font-size:1.125rem;font-weight:700;font-family:Roboto Mono,monospace;margin-bottom:.25rem}.ion-box.cation .ion-symbol{color:#e74c3c}.ion-box.anion .ion-symbol{color:#3498db}.ion-box .ion-source{display:block;font-size:.65rem;color:#64748b;margin-bottom:.25rem}.ion-box .ion-type{display:inline-block;padding:.15rem .4rem;border-radius:.25rem;font-size:.55rem;font-weight:600}.ion-box .ion-type.strong-base,.ion-box .ion-type.strong-acid{background:#27ae6033;color:#27ae60}.ion-box .ion-type.weak-base,.ion-box .ion-type.weak-acid{background:#f39c1233;color:#f39c12}.reaction-box{padding:.75rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.5rem;margin-bottom:1rem}.reaction-box h4{font-size:.75rem;color:#3498db;margin:0 0 .5rem}.reaction-box .reaction{font-size:.8rem;font-family:Roboto Mono,monospace;color:#e2e8f0;margin:0;word-break:break-word}.ph-display{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(52,152,219,.2);margin-bottom:.75rem}.ph-display .ph-label{font-size:.8rem;color:#94a3b8}.ph-display .ph-value{font-size:1.25rem;font-weight:700;font-family:Roboto Mono,monospace}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:280px;max-height:calc(100vh - 7rem);overflow-y:auto;background:#0f172af2;border:1px solid rgba(52,152,219,.3);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-panel-3d::-webkit-scrollbar-thumb{background:#3498db80;border-radius:2px}.panel-section{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid rgba(52,152,219,.2)}.filter-buttons{display:flex;gap:.375rem}.filter-buttons button{flex:1;padding:.5rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.375rem;color:#94a3b8;font-size:.7rem;cursor:pointer;transition:all .2s}.filter-buttons button:hover{background:#3498db33}.filter-buttons button.active{background:#3498db4d;border-color:#3498db;color:#3498db}.salt-list{display:flex;flex-direction:column;gap:.375rem;max-height:250px;overflow-y:auto}.salt-btn{display:flex;align-items:center;justify-content:space-between;padding:.625rem .75rem;background:#3498db0d;border:none;border-left:3px solid transparent;border-radius:.375rem;cursor:pointer;transition:all .2s ease}.salt-btn:hover{background:#3498db26}.salt-btn.selected{background:#3498db33}.salt-btn .salt-formula{font-size:.85rem;font-weight:600;font-family:Roboto Mono,monospace;color:#e2e8f0}.salt-btn .salt-ph{font-size:.7rem;font-weight:600}.toggle-group{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;cursor:pointer}.toggle-group input[type=checkbox]{width:1rem;height:1rem;accent-color:#3498DB;cursor:pointer}.challenge-header h3{margin:0;color:#3498db}.score-display{font-size:.875rem;font-weight:700;color:#3498db;background:#3498db26;padding:.375rem .75rem;border-radius:1rem}.challenge-option{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.5rem;color:#e2e8f0;font-size:.8rem;cursor:pointer;transition:all .2s ease;text-align:left}.challenge-option:hover:not(:disabled){background:#3498db33;border-color:#3498db66}.next-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer}.challenge-complete button{padding:.5rem 1.5rem;background:#3498db4d;border:1px solid #3498DB;border-radius:.5rem;color:#fff;cursor:pointer}.learn-card.neutral{background:#27ae601a;border:1px solid rgba(39,174,96,.3)}.learn-card.acidic{background:#e74c3c1a;border:1px solid rgba(231,76,60,.3)}.learn-card.basic{background:#3498db1a;border:1px solid rgba(52,152,219,.3)}.learn-card.partial{background:#9b59b61a;border:1px solid rgba(155,89,182,.3)}.learn-card.formula{background:#f39c121a;border:1px solid rgba(243,156,18,.3)}.learn-card.neutral h4{color:#27ae60}.learn-card.acidic h4{color:#e74c3c}.learn-card.basic h4{color:#3498db}.learn-card.partial h4{color:#9b59b6}.learn-card.formula h4{color:#f39c12}.learn-card .example{display:block;margin-top:.375rem;font-size:.65rem;color:#64748b;font-style:italic}.learn-card ul{margin:0;padding-left:1rem}.learn-card li{font-size:.7rem;color:#94a3b8;line-height:1.5}.learn-card li strong{color:#e2e8f0}.tip-section{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.5rem}.tip-section svg{color:#3498db;flex-shrink:0;margin-top:2px}.info-modal-3d{width:100%;max-width:550px;max-height:85vh;overflow-y:auto;background:linear-gradient(135deg,#1a2a40,#0f1a25);border:1px solid rgba(52,152,219,.4);border-radius:1.5rem}.info-modal-3d .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(52,152,219,.2);position:sticky;top:0;background:inherit}.info-modal-3d .modal-header h2 svg{color:#3498db}.info-modal-3d li strong{color:#3498db}.hydrolysis-table{background:#0000004d;border-radius:.5rem;overflow:hidden}.hydrolysis-table .table-row{display:grid;grid-template-columns:1.5fr 1fr;gap:.5rem;padding:.625rem .75rem;font-size:.75rem;color:#e2e8f0;border-bottom:1px solid rgba(52,152,219,.1)}.hydrolysis-table .table-row:last-child{border-bottom:none}.hydrolysis-table .table-row.header{background:#3498db33;font-weight:600}@media(max-width:1024px){.salt-info-panel{display:none}}.electrode-header{text-align:center}.electrode-header h3{justify-content:center}.electrode-desc{font-size:.75rem;color:#94a3b8;margin:0}.power-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1rem;background:linear-gradient(135deg,#e74c3c33,#c0392b4d);border:2px solid rgba(231,76,60,.5);border-radius:.75rem;color:#e74c3c;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease}.power-btn:hover{background:linear-gradient(135deg,#e74c3c4d,#c0392b66);transform:scale(1.02)}.power-btn.active{background:linear-gradient(135deg,#2ecc714d,#27ae6066);border-color:#2ecc71;color:#2ecc71;animation:powerPulse 1.5s ease-in-out infinite}@keyframes powerPulse{0%,to{box-shadow:0 0 10px #2ecc714d}50%{box-shadow:0 0 20px #2ecc7199}}.salt-btn .salt-conductivity{font-size:.65rem;font-weight:600}.ki-info{font-size:.7rem;color:#8b4513;margin:.5rem 0 0;padding:.5rem;background:#8b45131a;border:1px solid rgba(139,69,19,.3);border-radius:.375rem;line-height:1.4}.conductivity-info{background:#3498db0d;border:1px solid rgba(52,152,219,.15)!important;border-radius:.75rem;padding:1rem!important}.conductivity-result{display:flex;flex-direction:column;gap:.5rem}.result-row{display:flex;justify-content:space-between;align-items:center;padding:.375rem 0;border-bottom:1px solid rgba(52,152,219,.1)}.result-row:last-child{border-bottom:none}.result-row span{font-size:.75rem;color:#94a3b8}.result-row strong{font-size:.8rem;color:#e2e8f0}.result-row.ki-result{background:#8b45131a;margin:.5rem -.5rem -.5rem;padding:.5rem;border-radius:0 0 .5rem .5rem}.electrode-theory{background:#9b59b61a;border:1px solid rgba(155,89,182,.2)!important;border-radius:.5rem}.electrode-theory h4{font-size:.8rem;color:#9b59b6;margin:0 0 .5rem}.electrode-theory ul{margin:0;padding-left:1rem}.electrode-theory li{font-size:.7rem;color:#94a3b8;line-height:1.6;margin-bottom:.25rem}.electrode-theory li strong{color:#e2e8f0}.electrode-label{padding:.25rem .5rem;border-radius:.25rem;font-size:.65rem;font-weight:700;white-space:nowrap}.electrode-label.anode{background:#e74c3ce6;color:#fff}.electrode-label.cathode{background:#3498dbe6;color:#fff}.bulb-status{padding:.25rem .5rem;border-radius:.25rem;font-size:.7rem;font-weight:600;background:#0f172af2;white-space:nowrap}.bulb-status.off{color:#64748b;border:1px solid rgba(100,116,139,.3)}.bulb-status.low{color:#ff9800;border:1px solid rgba(255,152,0,.3)}.bulb-status.medium{color:#ffc107;border:1px solid rgba(255,193,7,.3)}.bulb-status.high{color:#ffeb3b;border:1px solid rgba(255,235,59,.3);text-shadow:0 0 10px rgba(255,235,59,.5)}.battery-label{padding:.25rem .5rem;border-radius:.25rem;font-size:.7rem;font-weight:700;background:#0f172af2;border:1px solid rgba(52,152,219,.3);color:#e2e8f0;white-space:nowrap}.ki-reaction-info{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem 1rem;background:#8b4513e6;border-radius:.5rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ki-reaction-info .ki-title{font-size:.75rem;font-weight:700;color:#fff}.ki-reaction-info .ki-equation{font-size:.85rem;font-family:Roboto Mono,monospace;color:#ffe082;font-weight:600}.ki-reaction-info .ki-note{font-size:.65rem;color:#fffc}.utube-header{text-align:center}.utube-header h3{justify-content:center}.utube-desc{font-size:.75rem;color:#94a3b8;margin:0}.utube-info{background:#3498db0d;border:1px solid rgba(52,152,219,.15)!important;border-radius:.75rem;padding:1rem!important}.utube-result{display:flex;flex-direction:column;gap:.75rem}.utube-side{padding:.75rem;background:#3498db1a;border:1px solid rgba(52,152,219,.2);border-radius:.5rem}.utube-side.anode{background:#d4740c1a;border-color:#d4740c4d}.utube-side h4{font-size:.8rem;margin:0 0 .375rem;color:#3498db}.utube-side.anode h4{color:#d4740c}.utube-side .reaction-eq{font-size:.7rem;font-family:Roboto Mono,monospace;color:#e2e8f0;margin:0 0 .25rem;display:block}.utube-side .result-text{font-size:.75rem;font-weight:600;color:#27ae60;margin:0}.utube-theory{background:#9b59b61a;border:1px solid rgba(155,89,182,.2)!important;border-radius:.5rem}.utube-theory h4{font-size:.8rem;color:#9b59b6;margin:0 0 .5rem}.utube-theory ul{margin:0;padding-left:1rem}.utube-theory li{font-size:.7rem;color:#94a3b8;line-height:1.6;margin-bottom:.25rem}.utube-theory li strong{color:#e2e8f0}.utube-electrode-label{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.4rem .6rem;border-radius:.5rem;background:#0f172af2;border:2px solid rgba(52,152,219,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.utube-electrode-label.cathode{border-color:#3498dbb3}.utube-electrode-label.anode{border-color:#e74c3cb3}.utube-electrode-label.active{animation:electrodeGlow 1.5s ease-in-out infinite}.utube-electrode-label.cathode.active{box-shadow:0 0 15px #3498db66}.utube-electrode-label.anode.active{box-shadow:0 0 15px #e74c3c66}@keyframes electrodeGlow{0%,to{opacity:1}50%{opacity:.85}}.utube-electrode-label .terminal-symbol{font-size:1.1rem;font-weight:700}.utube-electrode-label.cathode .terminal-symbol{color:#3498db}.utube-electrode-label.anode .terminal-symbol{color:#e74c3c}.utube-electrode-label .terminal-name{font-size:.6rem;color:#94a3b8;font-weight:600}.utube-side-label{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.6rem .9rem;background:#0f172af2;border-radius:.6rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(52,152,219,.3)}.utube-side-label.cathode{border-color:#3498db80}.utube-side-label.anode{border-color:#d4740c80}.utube-side-label .electrode-icon{font-size:1.2rem}.utube-side-label .label-title{font-size:.85rem;font-weight:700;color:#e2e8f0}.utube-side-label.cathode .label-title{color:#3498db}.utube-side-label.anode .label-title{color:#d4740c}.utube-side-label .label-product{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:#94a3b8}.utube-side-label .label-product.active{animation:productPulse 2s ease-in-out infinite}.utube-side-label .label-product.iodine{color:#d4740c}@keyframes productPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.02)}}.utube-side-label .bubble-icon,.utube-side-label .iodine-icon{font-size:.85rem}.utube-ki-label{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.6rem 1rem;background:linear-gradient(135deg,#0f172af2,#1a2a40f2);border:1px solid rgba(52,152,219,.4);border-radius:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.utube-ki-label.enhanced{border-width:2px;box-shadow:0 4px 20px #0000004d}.utube-ki-label .ki-icon{font-size:1.25rem}.utube-ki-label .ki-formula{font-size:1rem;font-weight:700;color:#3498db;font-family:Roboto Mono,monospace}.utube-ki-label .ki-name{font-size:.65rem;color:#94a3b8}.reaction-label{padding:.5rem .75rem;border-radius:.5rem;font-size:.75rem;font-family:Roboto Mono,monospace;background:#0f172af2;border:1px solid rgba(52,152,219,.3);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.reaction-label.cathode{color:#3498db;border-color:#3498db80}.reaction-label.anode{color:#d4740c;border-color:#d4740c80}.reaction-label.enhanced{display:flex;flex-direction:column;align-items:center;gap:.2rem}.reaction-label .reaction-title{font-size:.6rem;font-weight:600;color:#94a3b8;font-family:inherit}.reaction-label .reaction-eq{font-size:.8rem;font-weight:600}.reaction-label.cathode .reaction-eq{color:#3498db}.reaction-label.anode .reaction-eq{color:#d4740c}.power-supply-display{display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.25rem .5rem}.power-supply-display.enhanced{background:#00000080;border-radius:.25rem;padding:.4rem .6rem}.power-supply-display .ps-label{font-size:.5rem;color:#64748b;letter-spacing:.05em}.power-supply-display .ps-voltage{font-size:.9rem;font-weight:700;font-family:Roboto Mono,monospace;color:#27ae60;text-shadow:0 0 8px rgba(39,174,96,.5)}.power-supply-display .ps-current{font-size:.7rem;font-family:Roboto Mono,monospace;color:#3498db}.power-supply-display .ps-value{font-size:.75rem;font-weight:600;font-family:Roboto Mono,monospace;color:#27ae60}.knob-label{font-size:.45rem;color:#64748b;font-weight:600;letter-spacing:.05em}.terminal-label{font-size:.8rem;font-weight:700;padding:.1rem .3rem;border-radius:.15rem}.terminal-label.red{color:#e74c3c}.terminal-label.black{color:#94a3b8}.stoichiometry-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0f0a1a,#1a1030,#0a0f15);overflow:hidden}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:#0f172ae6;border:1px solid rgba(155,89,182,.5);border-radius:.75rem;color:#94a3b8;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-btn-3d:hover{border-color:#9b59b6;color:#fff;transform:scale(1.05)}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:#0f172af2;border:1px solid rgba(155,89,182,.3);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-3d h1 svg{color:#9b59b6}.mode-tabs button.active{background:linear-gradient(135deg,#9b59b6,#8e44ad);color:#fff}.action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#9b59b633;border:1px solid rgba(155,89,182,.4);border-radius:.5rem;color:#94a3b8;cursor:pointer;transition:all .2s ease}.action-btn:hover,.action-btn.active{background:#9b59b666;color:#fff}.molecule-label{padding:.15rem .35rem;background:#0f172ae6;border-radius:.25rem;font-size:.55rem;font-weight:700;font-family:Roboto Mono,monospace;color:#e2e8f0;white-space:nowrap}.molecule-label.product{background:#2ecc714d;border:1px solid rgba(46,204,113,.5);color:#2ecc71}.molecule-label.excess{background:#f39c124d;border:1px solid rgba(243,156,18,.5);color:#f39c12}.container-label{display:flex;flex-direction:column;align-items:center;padding:.5rem .75rem;background:#0f172af2;border:1px solid rgba(155,89,182,.3);border-radius:.5rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.container-label .formula{font-size:1.125rem;font-weight:700;font-family:Roboto Mono,monospace}.container-label .moles{font-size:.75rem;color:#e2e8f0;margin-top:.25rem}.container-label .particles{font-size:.6rem;color:#64748b}.product-container-label{display:flex;flex-direction:column;align-items:center;padding:.5rem .75rem;background:#0f172af2;border:1px solid rgba(46,204,113,.4);border-radius:.5rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);min-width:100px}.product-container-label .title{font-size:.7rem;font-weight:600;color:#2ecc71;margin-bottom:.375rem}.product-item{display:flex;justify-content:space-between;width:100%;gap:.5rem;margin-top:.25rem}.product-item .formula{font-size:.85rem;font-weight:700;font-family:Roboto Mono,monospace}.product-item .moles{font-size:.7rem;color:#94a3b8}.limiting-badge{padding:.4rem .8rem;background:#f39c1233;border:1px solid #F39C12;border-radius:.5rem;font-size:.7rem;font-weight:600;color:#f39c12;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}.equation-display{padding:.625rem 1.25rem;background:#0f172af2;border:1px solid rgba(155,89,182,.4);border-radius:.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.equation-display .equation{font-size:1rem;font-weight:600;font-family:Roboto Mono,monospace;color:#9b59b6}.reaction-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:300px;background:#0f172af2;border:1px solid rgba(155,89,182,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.reaction-info-panel h2{display:flex;align-items:center;gap:.5rem;font-size:1rem;color:#fff;margin:0 0 .75rem}.reaction-info-panel h2 svg{color:#9b59b6}.equation-box{padding:.75rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.2);border-radius:.5rem;margin-bottom:1rem}.equation-box h4{font-size:.7rem;color:#9b59b6;margin:0 0 .5rem}.equation-box .equation{font-size:1rem;font-weight:600;font-family:Roboto Mono,monospace;color:#e2e8f0;word-break:break-word}.type-badge{display:inline-block;padding:.375rem .75rem;background:#9b59b633;border:1px solid rgba(155,89,182,.4);border-radius:1rem;font-size:.7rem;font-weight:600;color:#9b59b6;margin-bottom:1rem}.calculation-results{padding:.75rem;background:#2ecc710d;border:1px solid rgba(46,204,113,.2);border-radius:.5rem;margin-bottom:1rem}.calculation-results h4{display:flex;align-items:center;gap:.375rem;font-size:.8rem;color:#2ecc71;margin:0 0 .75rem}.result-row{display:flex;justify-content:space-between;align-items:center;padding:.375rem 0;font-size:.75rem}.result-row .label{color:#94a3b8}.result-row .value{color:#e2e8f0;font-weight:600;font-family:Roboto Mono,monospace}.result-row .mass{color:#64748b;font-size:.65rem}.result-row.limiting{padding:.5rem;background:#f39c121a;border-radius:.375rem;margin-bottom:.5rem}.result-row.limiting .value{color:#f39c12}.result-section{margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(46,204,113,.2)}.result-section h5{font-size:.7rem;color:#64748b;margin:0 0 .375rem}.result-section.excess{border-top-color:#f39c1233}.result-section.excess h5{color:#f39c12}.description{font-size:.75rem;color:#94a3b8;line-height:1.5;margin:0}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:300px;max-height:calc(100vh - 7rem);overflow-y:auto;background:#0f172af2;border:1px solid rgba(155,89,182,.3);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-panel-3d::-webkit-scrollbar-thumb{background:#9b59b680;border-radius:2px}.panel-section{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid rgba(155,89,182,.2)}.panel-section h3{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#e2e8f0;margin:0 0 .75rem}.reaction-list{display:flex;flex-direction:column;gap:.375rem;max-height:180px;overflow-y:auto}.reaction-btn{display:flex;align-items:center;justify-content:space-between;padding:.625rem .75rem;background:#9b59b60d;border:1px solid rgba(155,89,182,.2);border-radius:.5rem;cursor:pointer;transition:all .2s ease}.reaction-btn:hover{background:#9b59b626;border-color:#9b59b666}.reaction-btn.selected{background:#9b59b633;border-color:#9b59b6}.reaction-btn .reaction-name{font-size:.8rem;color:#e2e8f0;font-weight:500}.reaction-btn .reaction-type{font-size:.65rem;color:#9b59b6;padding:.2rem .4rem;background:#9b59b626;border-radius:.25rem}.reactant-slider{margin-bottom:1rem}.reactant-slider:last-child{margin-bottom:0}.slider-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.375rem}.slider-header .formula{font-size:.9rem;font-weight:700;font-family:Roboto Mono,monospace}.slider-header .value{font-size:.8rem;color:#e2e8f0;font-family:Roboto Mono,monospace}.reactant-slider input[type=range]{width:100%;height:6px;border-radius:3px;background:#9b59b633;appearance:none;cursor:pointer}.reactant-slider input[type=range]::-webkit-slider-thumb{appearance:none;width:16px;height:16px;border-radius:50%;background:#9b59b6;cursor:pointer}.slider-info{display:flex;justify-content:space-between;margin-top:.25rem;font-size:.65rem;color:#64748b}.toggle-group{display:flex;align-items:center;gap:.5rem;cursor:pointer}.toggle-group input[type=checkbox]{width:1rem;height:1rem;accent-color:#9B59B6;cursor:pointer}.toggle-group span{font-size:.8rem;color:#e2e8f0}.react-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem;background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:.5rem;color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s}.react-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #9b59b666}.challenge-header h3{margin:0;color:#9b59b6}.score-display{font-size:.875rem;font-weight:700;color:#9b59b6;background:#9b59b626;padding:.375rem .75rem;border-radius:1rem}.challenge-option{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.2);border-radius:.5rem;color:#e2e8f0;font-size:.8rem;cursor:pointer;transition:all .2s ease;text-align:left}.challenge-option:hover:not(:disabled){background:#9b59b633;border-color:#9b59b666}.challenge-option.correct{background:#2ecc7133;border-color:#2ecc71;color:#2ecc71}.next-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer}.challenge-complete button{padding:.5rem 1.5rem;background:#9b59b64d;border:1px solid #9B59B6;border-radius:.5rem;color:#fff;cursor:pointer}.learn-card{padding:.75rem;border-radius:.5rem}.learn-card.mole{background:#3498db1a;border:1px solid rgba(52,152,219,.3)}.learn-card.ratio{background:#9b59b61a;border:1px solid rgba(155,89,182,.3)}.learn-card.limiting{background:#f39c121a;border:1px solid rgba(243,156,18,.3)}.learn-card.excess{background:#e74c3c1a;border:1px solid rgba(231,76,60,.3)}.learn-card.steps{background:#2ecc711a;border:1px solid rgba(46,204,113,.3)}.learn-card h4{font-size:.8rem;margin:0 0 .5rem}.learn-card.mole h4{color:#3498db}.learn-card.ratio h4{color:#9b59b6}.learn-card.limiting h4{color:#f39c12}.learn-card.excess h4{color:#e74c3c}.learn-card.steps h4{color:#2ecc71}.learn-card .formula{display:block;margin-top:.375rem;font-size:.9rem;font-weight:600;font-family:Roboto Mono,monospace;color:#e2e8f0}.learn-card ol{margin:0;padding-left:1rem}.learn-card li{font-size:.7rem;color:#94a3b8;line-height:1.6}.tip-section{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.2);border-radius:.5rem}.tip-section svg{color:#9b59b6;flex-shrink:0;margin-top:2px}.info-modal-3d{width:100%;max-width:550px;max-height:85vh;overflow-y:auto;background:linear-gradient(135deg,#1a1030,#0a0f15);border:1px solid rgba(155,89,182,.4);border-radius:1.5rem}.info-modal-3d .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(155,89,182,.2);position:sticky;top:0;background:inherit}.info-modal-3d .modal-header h2 svg{color:#9b59b6}.info-modal-3d h3{font-size:1rem;color:#e2e8f0;margin:0 0 .75rem}.info-modal-3d p{font-size:.875rem;color:#94a3b8;line-height:1.6;margin:0}.info-modal-3d ul{margin:0;padding-left:1.25rem}.info-modal-3d li{font-size:.875rem;color:#94a3b8;line-height:1.6;margin-bottom:.5rem}.info-modal-3d li strong{color:#9b59b6}.formula-box{padding:1rem;background:#9b59b61a;border:1px solid rgba(155,89,182,.3);border-radius:.5rem}.formula-box p{font-family:Roboto Mono,monospace;margin-bottom:.5rem}.formula-box p:last-child{margin-bottom:0}@media(max-width:1024px){.reaction-info-panel{display:none}}@media(max-width:768px){.header-3d{flex-wrap:wrap;justify-content:center}.header-3d h1{font-size:.875rem}.control-panel-3d{position:fixed;inset:auto 0 0;width:100%;max-height:50vh;border-radius:1rem 1rem 0 0}}@media(max-width:480px){.mode-tabs button{padding:.375rem .5rem;font-size:.65rem}}.equation-balancer-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:#0f172ae6;border:1px solid rgba(243,156,18,.5);border-radius:.75rem;color:#94a3b8;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-btn-3d:hover{border-color:#f39c12;color:#fff;transform:scale(1.05)}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:#0f172af2;border:1px solid rgba(243,156,18,.3);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-3d h1{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:700;color:#fff;margin:0}.header-3d h1 svg{color:#f39c12}.mode-tabs{display:flex;gap:.25rem;background:#0000004d;padding:.25rem;border-radius:.5rem}.mode-tabs button{padding:.5rem .75rem;background:transparent;border:none;border-radius:.375rem;color:#94a3b8;font-size:.75rem;cursor:pointer;transition:all .2s}.mode-tabs button:hover{color:#fff}.mode-tabs button.active{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff}.action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#f39c1233;border:1px solid rgba(243,156,18,.4);border-radius:.5rem;color:#94a3b8;cursor:pointer;transition:all .2s ease}.action-btn:hover{background:#f39c1266;color:#fff}.coefficient-display{font-size:1.25rem;font-weight:700;color:#f39c12;background:#0f172af2;padding:.25rem .5rem;border-radius:.375rem;border:2px solid rgba(243,156,18,.5);min-width:28px;text-align:center}.coefficient-display.active{border-color:#f39c12}.molecule-formula{font-size:.8rem;font-weight:600;color:#e2e8f0;background:#0f172af2;padding:.25rem .5rem;border-radius:.25rem;border:2px solid;white-space:nowrap}.scale-status{font-size:.9rem;font-weight:700;padding:.5rem 1rem;border-radius:.5rem}.scale-status.balanced{background:#2ecc71e6;color:#fff}.scale-status.unbalanced{background:#f39c12e6;color:#fff}.success-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:200;display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 3rem;background:#2ecc71f2;border-radius:1rem;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.success-overlay svg{animation:bounce .6s ease infinite alternate}.success-overlay h2{margin:0;font-size:1.5rem}@keyframes bounce{0%{transform:scale(1)}to{transform:scale(1.1)}}.balancer-info-panel{position:absolute;top:5rem;left:1rem;z-index:100;width:280px;max-height:calc(100vh - 7rem);overflow-y:auto;background:#0f172af2;border:1px solid rgba(243,156,18,.3);border-radius:1rem;padding:1.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.balancer-info-panel::-webkit-scrollbar{width:4px}.balancer-info-panel::-webkit-scrollbar-thumb{background:#f39c1280;border-radius:2px}.balancer-info-panel h2{display:flex;align-items:center;gap:.5rem;font-size:1rem;color:#fff;margin:0 0 1rem}.balancer-info-panel h2 svg{color:#f39c12}.equation-name{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.equation-name h3{margin:0;font-size:1rem;color:#f39c12}.solved-count{font-size:.7rem;color:#94a3b8;background:#2ecc7133;padding:.25rem .5rem;border-radius:.25rem}.equation-display{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#f39c121a;border:1px solid rgba(243,156,18,.3);border-radius:.5rem;margin-bottom:1rem;flex-wrap:wrap;justify-content:center}.eq-side{display:flex;align-items:center;font-size:.9rem}.eq-side .coef{font-weight:700;color:#f39c12;margin-right:.125rem}.eq-side .mol{font-weight:600}.arrow{font-size:1.25rem;color:#94a3b8;transition:color .3s}.arrow.balanced{color:#2ecc71}.atom-balance{padding:.75rem;background:#ffffff08;border-radius:.5rem}.atom-balance h4{font-size:.8rem;color:#e2e8f0;margin:0 0 .5rem}.atom-table{display:flex;flex-direction:column;gap:.25rem}.atom-row{display:grid;grid-template-columns:1fr 1fr 1fr .5fr;gap:.5rem;font-size:.75rem;padding:.375rem;border-radius:.25rem;text-align:center}.atom-row.header{color:#94a3b8;font-weight:600}.atom-row.balanced{background:#2ecc7126;color:#2ecc71}.atom-row.unbalanced{background:#e74c3c26;color:#e74c3c}.atom-row .element{font-weight:700;text-align:left}.control-panel-3d{position:absolute;top:5rem;right:1rem;z-index:100;width:280px;max-height:calc(100vh - 7rem);overflow-y:auto;background:#0f172af2;border:1px solid rgba(243,156,18,.3);border-radius:1rem;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-panel-3d::-webkit-scrollbar{width:4px}.control-panel-3d::-webkit-scrollbar-thumb{background:#f39c1280;border-radius:2px}.panel-section{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid rgba(243,156,18,.2)}.panel-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.panel-section h3{font-size:.875rem;font-weight:600;color:#e2e8f0;margin:0 0 .75rem}.coef-control{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.mol-label{font-size:.9rem;font-weight:600}.coef-buttons{display:flex;align-items:center;gap:.5rem}.coef-buttons button{width:28px;height:28px;background:#f39c1233;border:1px solid rgba(243,156,18,.4);border-radius:.375rem;color:#f39c12;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s}.coef-buttons button:hover{background:#f39c1266}.coef-value{font-size:1rem;font-weight:700;color:#f39c12;min-width:20px;text-align:center}.equation-selector{display:flex;flex-direction:column;gap:.375rem}.equation-selector button{padding:.5rem .75rem;background:#f39c121a;border:1px solid rgba(243,156,18,.3);border-radius:.375rem;color:#94a3b8;font-size:.75rem;text-align:left;cursor:pointer;transition:all .2s}.equation-selector button:hover{background:#f39c1233;color:#fff}.equation-selector button.active{background:#f39c1266;border-color:#f39c12;color:#fff}.challenge-panel{padding:0}.challenge-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.challenge-header h3{margin:0;color:#f39c12}.score-display{font-size:.875rem;font-weight:700;color:#f39c12;background:#f39c1226;padding:.375rem .75rem;border-radius:1rem}.challenge-question{font-size:.875rem;color:#fff;line-height:1.5;margin:0 0 1rem}.challenge-options{display:flex;flex-direction:column;gap:.5rem}.challenge-option{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#f39c121a;border:1px solid rgba(243,156,18,.2);border-radius:.5rem;color:#e2e8f0;font-size:.75rem;cursor:pointer;transition:all .2s ease;text-align:left}.challenge-option:hover:not(:disabled){background:#f39c1233;border-color:#f39c1266}.challenge-option.correct{background:#2ecc714d;border-color:#2ecc71;color:#2ecc71}.challenge-option.incorrect{background:#e74c3c33;border-color:#e74c3c;color:#e74c3c}.challenge-feedback{margin-top:1rem;text-align:center}.correct-text{color:#2ecc71;font-weight:600}.incorrect-text{color:#e74c3c;font-weight:600}.next-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#f39c12,#e67e22);border:none;border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer}.challenge-complete{padding:1rem 0;text-align:center}.challenge-complete svg{color:#f39c12;margin-bottom:.5rem}.challenge-complete p{font-size:1.125rem;color:#fff;margin:0 0 1rem}.challenge-complete button{padding:.5rem 1.5rem;background:#f39c124d;border:1px solid #F39C12;border-radius:.5rem;color:#fff;cursor:pointer}.learn-content{display:flex;flex-direction:column;gap:.75rem}.learn-card{padding:.75rem;background:#f39c121a;border:1px solid rgba(243,156,18,.2);border-radius:.5rem}.learn-card h4{font-size:.8rem;color:#f39c12;margin:0 0 .5rem}.learn-card p{font-size:.75rem;color:#94a3b8;line-height:1.5;margin:0}.tip-section{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:#f39c121a;border:1px solid rgba(243,156,18,.2);border-radius:.5rem}.tip-section svg{color:#f39c12;flex-shrink:0;margin-top:2px}.tip-section p{margin:0;font-size:.7rem;color:#94a3b8;line-height:1.4}.info-overlay-3d{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.info-modal-3d{width:100%;max-width:550px;max-height:85vh;overflow-y:auto;background:linear-gradient(135deg,#1a1a2e,#0f0f23);border:1px solid rgba(243,156,18,.4);border-radius:1.5rem}.info-modal-3d .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(243,156,18,.2);position:sticky;top:0;background:inherit}.info-modal-3d .modal-header h2{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;color:#fff;margin:0}.info-modal-3d .modal-header h2 svg{color:#f39c12}.info-modal-3d .modal-header button{background:none;border:none;color:#94a3b8;cursor:pointer}.info-modal-3d .modal-header button:hover{color:#fff}.info-modal-3d .modal-content{padding:1.5rem}.info-modal-3d section{margin-bottom:1.5rem}.info-modal-3d section:last-child{margin-bottom:0}.info-modal-3d section h3{font-size:1rem;color:#f39c12;margin:0 0 .75rem}.info-modal-3d section p{font-size:.875rem;color:#94a3b8;line-height:1.6;margin:0}.info-modal-3d section ul{margin:0;padding-left:1.25rem}.info-modal-3d section li{font-size:.875rem;color:#94a3b8;line-height:1.8}.info-modal-3d section li strong{color:#e2e8f0}@media(max-width:768px){.header-3d{width:calc(100% - 2rem);flex-wrap:wrap;justify-content:center}.balancer-info-panel,.control-panel-3d{position:fixed;width:calc(100% - 2rem);max-height:40vh;left:1rem;right:1rem}.balancer-info-panel{top:auto;bottom:50vh}.control-panel-3d{top:auto;bottom:1rem}}.reaction-rate-3d-simulation{position:relative;width:100%;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e,#0f0f23);overflow:hidden;color:#fff}.back-btn-3d{position:absolute;top:1rem;left:1rem;z-index:100;width:40px;height:40px;background:#1e293bcc;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#e2e8f0;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:.2s}.back-btn-3d:hover{background:#e74c3c;border-color:#e74c3c}.header-3d{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;gap:1rem;padding:.5rem 1rem;background:#0f172ae6;border-radius:12px;border:1px solid rgba(231,76,60,.3);align-items:center}.header-3d h1{font-size:1rem;margin:0;display:flex;align-items:center;gap:.5rem;color:#e74c3c}.mode-tabs{display:flex;gap:.25rem;background:#0000004d;padding:4px;border-radius:8px}.mode-tabs button{background:transparent;border:none;color:#94a3b8;padding:4px 12px;border-radius:6px;font-size:.8rem;cursor:pointer}.mode-tabs button.active{background:#e74c3c;color:#fff;font-weight:700}.header-actions{display:flex;gap:.5rem}.action-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#e74c3c33;border:1px solid rgba(231,76,60,.4);border-radius:8px;color:#e2e8f0;cursor:pointer;transition:.2s}.action-btn:hover,.action-btn.active{background:#e74c3c;color:#fff}.canvas-container{position:absolute;inset:0}.temp-display{background:#0f172ae6;padding:6px 12px;border-radius:8px;font-weight:700;font-size:.9rem;display:flex;align-items:center;gap:6px;border:2px solid}.catalyst-label{background:#9b59b6e6;padding:4px 10px;border-radius:6px;font-size:.8rem;font-weight:700;color:#fff}.reaction-info-panel{position:absolute;left:1rem;top:5rem;width:260px;background:#0f172af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(231,76,60,.3);border-radius:12px;padding:1rem}.reaction-info-panel h2{display:flex;align-items:center;gap:.5rem;font-size:1rem;color:#e74c3c;margin:0 0 1rem}.rate-display{text-align:center;padding:1rem;background:#e74c3c1a;border-radius:8px;border:1px solid rgba(231,76,60,.3);margin-bottom:1rem}.rate-value{font-size:2rem;font-weight:700;color:#e74c3c}.rate-unit{display:block;font-size:.75rem;color:#94a3b8}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem}.stat-item{background:#ffffff0d;padding:.5rem;border-radius:6px;text-align:center}.stat-item .label{display:block;font-size:.65rem;color:#64748b}.stat-item .value{font-size:1rem;font-weight:700;color:#e2e8f0}.factors-legend{background:#ffffff08;padding:.75rem;border-radius:8px;border-left:3px solid #E74C3C}.factors-legend h4{margin:0 0 .5rem;font-size:.8rem;color:#e2e8f0}.factors-legend p{margin:0 0 .25rem;font-size:.75rem;color:#94a3b8}.reaction-control-panel{position:absolute;right:1rem;top:5rem;width:280px;background:#0f172af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(231,76,60,.3);border-radius:12px;padding:1rem;max-height:calc(100vh - 6rem);overflow-y:auto}.panel-section{margin-bottom:1.5rem}.panel-section h3{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#e2e8f0;margin:0 0 .75rem}.slider-group{display:flex;align-items:center;gap:.75rem}.slider-group input[type=range]{flex:1;cursor:pointer}.slider-value{font-size:.85rem;color:#94a3b8;min-width:80px;text-align:right}.catalyst-toggle{width:100%;padding:.75rem;background:#9b59b633;border:1px solid rgba(155,89,182,.4);border-radius:8px;color:#e2e8f0;font-weight:700;cursor:pointer;transition:.2s}.catalyst-toggle:hover{background:#9b59b64d}.catalyst-toggle.active{background:#9b59b6;color:#fff}.challenge-header{display:flex;justify-content:space-between;margin-bottom:1rem;color:#fbbf24;font-weight:700}.question-text{font-size:.9rem;line-height:1.4;margin-bottom:1rem;color:#e2e8f0}.options-list{display:flex;flex-direction:column;gap:.5rem}.option-btn{padding:.75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#cbd5e1;text-align:left;border-radius:8px;cursor:pointer;transition:.2s}.option-btn:hover{background:#ffffff1a}.option-btn.correct{background:#22c55e33;border-color:#22c55e;color:#4ade80}.option-btn.incorrect{background:#ef444433;border-color:#ef4444;color:#f87171}.next-level-btn{margin-top:1rem;width:100%;padding:.75rem;background:#fbbf24;border:none;border-radius:8px;color:#000;font-weight:700;cursor:pointer}.learn-panel h3{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;color:#e2e8f0}.concept-card{background:#ffffff08;padding:.75rem;border-radius:8px;margin-bottom:.5rem;border-left:3px solid #E74C3C}.concept-card h4{margin:0 0 .25rem;color:#f87171;font-size:.85rem}.concept-card p{margin:0;font-size:.75rem;color:#94a3b8}.info-overlay-3d{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.info-modal-3d{background:#1e293b;padding:2rem;border-radius:16px;width:90%;max-width:500px;border:1px solid #E74C3C}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;color:#f1f5f9}.modal-header button{background:none;border:none;color:#94a3b8;cursor:pointer}.modal-content{color:#cbd5e1;line-height:1.6}.modal-content ul{padding-left:1.25rem}.modal-content li{margin-bottom:.5rem}
