@import"https://fonts.googleapis.com/css2?family=VT323&display=swap";.dtmf-generator{max-width:800px;width:100%;padding:2rem}.dtmf-generator h2{color:#0f0;margin-bottom:1rem;text-align:center;font-size:2rem}.dtmf-keypad{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;max-width:400px;margin-left:auto;margin-right:auto}.keypad-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.dtmf-key{aspect-ratio:1;background:#00ff001a;border:2px solid #00ff00;color:#0f0;font-size:1.5rem;font-family:VT323,monospace;cursor:pointer;transition:all .2s;text-transform:uppercase}.dtmf-key:hover{background:#00ff004d;box-shadow:0 0 15px #0f0;transform:scale(1.05)}.dtmf-key:active{background:#0f0;color:#000;box-shadow:0 0 25px #0f0}.dtmf-key.special{border-color:#f80;color:#f80}.dtmf-key.special:hover{box-shadow:0 0 15px #f80}.sequence-controls{margin-bottom:2rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.sequence-display{margin-bottom:1rem}.sequence-display label{display:block;margin-bottom:.5rem;color:#0f8}.sequence-input{width:100%;padding:.75rem;background:#00000080;border:1px solid #00ff00;color:#0f0;font-family:Courier New,monospace;font-size:1.2rem}.sequence-input:focus{outline:none;box-shadow:0 0 10px #0f0}.current-tone{display:block;margin-top:.5rem;color:#f80;font-size:1.2rem}.control-buttons{display:flex;gap:1rem}.control-buttons button{flex:1;padding:.75rem;background:transparent;border:1px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:1.2rem;cursor:pointer;transition:all .3s}.control-buttons button:hover:not(:disabled){background:#0f03;box-shadow:0 0 10px #0f0}.control-buttons button:disabled{opacity:.5;cursor:not-allowed}.freq-info{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.freq-info h3{color:#0f8;margin-bottom:1rem;text-align:center}.freq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem}.freq-item{padding:.5rem;background:#00ff000d;border:1px solid rgba(0,255,0,.2);color:#0f8;font-size:.9rem}.tone-decoder{max-width:800px;width:100%;padding:2rem}.tone-decoder h2{color:#0f0;margin-bottom:1rem;text-align:center;font-size:2rem}.decoder-controls{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.listen-button,.stop-button{padding:1rem 2rem;font-size:1.2rem;font-family:VT323,monospace;border:2px solid #00ff00;background:transparent;color:#0f0;cursor:pointer;transition:all .3s;text-transform:uppercase}.listen-button:hover{background:#0f03;box-shadow:0 0 20px #0f0}.decoder-controls button:disabled{opacity:.5;cursor:not-allowed}.spectrum-analyzer-section{margin-bottom:2rem;padding:1.75rem;background:#000c00a6;border:1px solid #00ff44;border-radius:10px;box-shadow:0 0 28px #00ff6e2e;min-height:320px;display:flex;flex-direction:column}.spectrum-analyzer-section h3{color:#76ff76;margin-bottom:1.25rem;text-align:center;letter-spacing:.12rem}.spectrum-analyzer-container{position:relative;width:100%;padding:1.15rem;border-radius:8px;overflow:hidden;background:radial-gradient(circle at top,rgba(0,255,90,.28),transparent 60%),linear-gradient(140deg,#002300d9,#000c00bf);border:1px solid rgba(0,255,120,.38);box-shadow:inset 0 0 18px #00782859,0 0 18px #00ff782e}.spectrum-analyzer-container:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(0,255,110,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,110,.04) 1px,transparent 1px);background-size:.75rem .75rem;pointer-events:none;opacity:.35}.spectrum-canvas{position:relative;z-index:1;width:100%;height:210px;display:block;border-radius:5px;border:1px solid rgba(0,255,120,.38);background:#000000d1;box-shadow:0 0 16px #00ff783b;image-rendering:optimizeQuality}.frequency-display,.detected-tones,.decoded-sequence{margin-bottom:2rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00;min-height:150px;display:flex;flex-direction:column;gap:1rem;justify-content:center}.frequency-display h3,.detected-tones h3,.decoded-sequence h3{color:#0f8;margin-bottom:1rem;text-align:center}.freq-list{display:flex;flex-wrap:wrap;gap:.5rem;min-height:3rem;align-items:center;justify-content:center}.freq-badge{padding:.5rem 1rem;background:#0f03;border:1px solid #00ff00;color:#0f0;font-family:Courier New,monospace}.no-freq,.no-tones{color:#666;font-style:italic;text-align:center;width:100%}.tone-sequence{display:flex;flex-wrap:wrap;gap:.5rem;min-height:3.5rem;align-items:center;justify-content:center}.tone-badge{padding:.75rem 1.25rem;background:#0f0;color:#000;font-size:1.5rem;font-weight:700;font-family:Courier New,monospace;border:2px solid #00ff00;box-shadow:0 0 10px #0f0;animation:appear .3s}@keyframes appear{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.sequence-output{padding:1rem;background:#00000080;border:1px solid #00ff00;color:#0f0;font-size:2rem;font-family:Courier New,monospace;text-align:center;min-height:4rem;display:flex;align-items:center;justify-content:center;letter-spacing:.5rem}.tone-telemetry{margin-bottom:2rem;padding:1.75rem;background:#000c0099;border:1px solid #00ff44;border-radius:10px;box-shadow:0 0 26px #00ff6e29}.tone-telemetry h3{color:#7cff7c;margin-bottom:1.25rem;text-align:center;letter-spacing:.12rem}.tone-telemetry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.tone-telemetry-card{background:#0000008c;border:1px solid rgba(0,255,120,.35);border-radius:8px;padding:1.25rem;box-shadow:0 0 16px #00ff6e1f;display:flex;flex-direction:column;gap:.75rem}.tone-telemetry-description{grid-column:span 2;font-size:.95rem;line-height:1.5;color:#9cff9c}.tone-label{text-transform:uppercase;letter-spacing:.18rem;font-size:.75rem;color:#00ff78b3}.tone-primary{font-size:2.75rem;font-weight:700;color:#0f6;text-align:center;text-shadow:0 0 12px rgba(0,255,120,.5)}.tone-freq-pair{text-align:center;color:#8cff8c;font-family:Courier New,monospace}.tone-playback-button{margin-top:.5rem;padding:.75rem 1rem;background:#00ff782e;border:1px solid #00ff66;color:#0f6;font-family:VT323,monospace;text-transform:uppercase;cursor:pointer;transition:all .25s}.tone-playback-button:hover{background:#00ff7852;box-shadow:0 0 18px #00ff7847}.tone-similar-list{display:flex;flex-wrap:wrap;gap:.75rem}.tone-similar-button{flex:1 1 90px;min-width:90px;padding:.75rem;background:#00ff5a2e;border:1px solid rgba(0,255,120,.4);color:#0f6;font-family:Courier New,monospace;display:flex;flex-direction:column;align-items:center;gap:.35rem;cursor:pointer;transition:all .2s}.tone-similar-button span{font-size:1.4rem;font-weight:700}.tone-similar-button small{font-size:.75rem;color:#8cffa0cc}.tone-similar-button:hover{background:#00ff784d;box-shadow:0 0 14px #00ff783b}.tone-placeholder{padding:1.25rem;text-align:center;color:#8cffa099;font-style:italic}@media (max-width: 720px){.tone-telemetry-grid{grid-template-columns:1fr}.tone-telemetry-description{grid-column:span 1}}.decoder-info{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.decoder-info h3{color:#0f8;margin-bottom:1rem}.decoder-info ul{list-style:none;padding:0}.decoder-info li{padding:.5rem 0;color:#0f8;border-bottom:1px solid rgba(0,255,0,.2)}.decoder-info li:before{content:"> ";color:#0f0}.whistle-input{max-width:800px;width:100%;padding:2rem}.whistle-input h2{color:#0f0;margin-bottom:1rem;text-align:center;font-size:2rem}.description{text-align:center;margin-bottom:2rem;color:#0f8}.whistle-controls{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.record-button,.stop-button{padding:1rem 2rem;font-size:1.2rem;font-family:VT323,monospace;border:2px solid #00ff00;background:transparent;color:#0f0;cursor:pointer;transition:all .3s;text-transform:uppercase}.record-button:hover{background:#0f03;box-shadow:0 0 20px #0f0}.stop-button{border-color:red;color:red;animation:pulse 2s infinite}.stop-button:hover{background:#f003;box-shadow:0 0 20px red}.whistle-controls button:disabled{opacity:.5;cursor:not-allowed}.frequency-visualizer{margin-bottom:2rem;padding:2.25rem 2rem;background:#000a009e;border:1px solid #00ff66;text-align:center;border-radius:14px;box-shadow:0 0 30px #00ff8c2e;display:flex;flex-direction:column;gap:1.5rem}.spectrum-analyzer-container{position:relative;width:100%;margin-bottom:1.75rem;padding:1.25rem;background:radial-gradient(circle at top,rgba(0,255,110,.3),transparent 60%),linear-gradient(135deg,#001e00d9,#000a00bf);border:1px solid rgba(0,255,130,.42);border-radius:12px;overflow:hidden;box-shadow:inset 0 0 16px #00783c59,0 0 18px #00ff8c33}.spectrum-analyzer-container:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(0,255,120,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,120,.05) 1px,transparent 1px);background-size:.75rem .75rem;pointer-events:none;opacity:.38}.spectrum-canvas{position:relative;z-index:1;width:100%;height:210px;display:block;border-radius:8px;border:1px solid rgba(0,255,140,.42);background:#000000db;box-shadow:0 0 18px #00ff8c3d;image-rendering:optimizeQuality}.frequency-visualizer h3{color:#0f8;margin-bottom:1.5rem;letter-spacing:.1rem}.freq-display{margin-bottom:1.5rem;min-height:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.freq-value{font-size:3rem;color:#0f0;font-family:Courier New,monospace;text-shadow:0 0 10px #00ff00}.note-display{font-size:2rem;color:#f80;font-family:Courier New,monospace;font-weight:700}.no-signal{color:#666;font-style:italic;font-size:1.2rem;width:100%}.amplitude-bar{width:100%;height:30px;background:#00000080;border:2px solid #00ff00;margin:1rem 0;overflow:hidden;border-radius:6px}.amplitude-fill{height:100%;background:linear-gradient(90deg,#0f0,#0f8);transition:width .1s;box-shadow:0 0 10px #0f0}.amplitude-label{color:#0f8;font-size:1rem}.note-history{margin-bottom:2rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.note-history h3{color:#0f8;margin-bottom:1rem}.history-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.75rem;min-height:3.5rem}.note-badge{padding:1rem;background:#0f03;border:1px solid #00ff00;color:#0f0;font-size:1.2rem;font-family:Courier New,monospace;text-align:center;font-weight:700;animation:appear .3s;min-height:3rem}.no-history{color:#666;font-style:italic;text-align:center;padding:2rem;width:100%}.whistle-info{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.whistle-info h3{color:#0f8;margin-bottom:1rem}.whistle-info ul{list-style:none;padding:0}.whistle-info li{padding:.5rem 0;color:#0f8;border-bottom:1px solid rgba(0,255,0,.2)}.whistle-info li:before{content:"♪ ";color:#0f0}.radio-spectrum{max-width:1200px;width:100%;padding:2rem}.radio-spectrum h2{color:#0f0;margin-bottom:1rem;text-align:center;font-size:2rem}.spectrum-visualizer{margin-bottom:3rem;padding:2rem;background:#0006;border:2px solid #00ff00;box-shadow:0 0 20px #00ff004d}.spectrum-visualizer h3{color:#0f0;margin-bottom:.5rem;text-align:center;font-size:2rem;text-shadow:0 0 10px #00ff00}.spectrum-intro{text-align:center;color:#0f8;margin-bottom:2rem;font-size:1.1rem;line-height:1.6}.spectrum-container{position:relative;margin-bottom:2rem;padding:2rem 1rem;background:#00000080;border:1px solid rgba(0,255,0,.3);border-radius:4px;min-height:300px;overflow:hidden}.spectrum-ruler{position:relative;margin-bottom:1.5rem;padding:.5rem 0}.ruler-scale{display:flex;justify-content:space-between;color:#0f8;font-family:Courier New,monospace;font-size:.85rem;margin-bottom:.5rem;padding:0 .5rem}.ruler-bar{height:3px;background:linear-gradient(to right,#e61919,#ee8c2b,#f5f53d,#1ff91f,#3df5f5,#2b2bee,#7f19e6);border-radius:2px;box-shadow:0 0 10px #00ff0080;position:relative}.ruler-bar:before{content:"";position:absolute;top:-2px;left:0;right:0;height:7px;background:repeating-linear-gradient(to right,transparent,transparent 9%,rgba(0,255,0,.2) 9%,rgba(0,255,0,.2) 10%)}.spectrum-bands-container{position:relative;height:200px;margin-top:1rem;width:100%;overflow:visible}.spectrum-band{position:absolute;height:160px;padding:.75rem;background:linear-gradient(135deg,#00ff0026,#00ff8840,#00ff0026);border:2px solid #00ff00;border-radius:4px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);text-align:center;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px #0f03;overflow:hidden;background:linear-gradient(135deg,hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.3),hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.5),hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.3));border-color:hsla(var(--band-hue, 120),calc(var(--band-saturation, 70)% + 20%),calc(var(--band-lightness, 45)% + 10%),.8);box-sizing:border-box;min-width:60px}.spectrum-band:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.5),transparent);transition:left .6s}.spectrum-band:hover:before{left:100%}.spectrum-band:hover{background:linear-gradient(135deg,hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.5),hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.7),hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.5));box-shadow:0 0 25px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.8),0 0 50px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.5),inset 0 0 20px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.2);transform:translateY(-5px) scale(1.05);border-color:hsla(var(--band-hue, 120),calc(var(--band-saturation, 70)% + 30%),calc(var(--band-lightness, 45)% + 15%),1);z-index:10}.spectrum-band.selected{background:linear-gradient(135deg,hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.6),hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.8),hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.6));box-shadow:0 0 30px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.9),0 0 60px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.6),inset 0 0 30px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.3);border-color:hsla(var(--band-hue, 120),calc(var(--band-saturation, 70)% + 40%),calc(var(--band-lightness, 45)% + 20%),1);border-width:3px;transform:translateY(-8px) scale(1.08);z-index:20;animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 0 30px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.9),0 0 60px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.6),inset 0 0 30px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.3)}50%{box-shadow:0 0 40px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,1),0 0 80px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.8),inset 0 0 40px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.4)}}.band-content{position:relative;z-index:1;width:100%}.band-label{font-size:1.5rem;font-weight:700;color:#0f0;margin-bottom:.5rem;text-shadow:0 0 10px #00ff00;letter-spacing:.05rem;color:hsla(var(--band-hue, 120),calc(var(--band-saturation, 70)% + 20%),calc(var(--band-lightness, 45)% + 25%),1);text-shadow:0 0 10px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.8);word-break:break-word}.band-range{font-size:.85rem;color:#0f8;margin-bottom:.4rem;font-family:Courier New,monospace;font-weight:700;line-height:1.2}.band-name{font-size:.75rem;color:#0f8;opacity:.9;line-height:1.3;margin-top:.4rem;word-break:break-word}.band-indicator{position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(to right,transparent,hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.9),transparent);box-shadow:0 0 10px hsla(var(--band-hue, 120),var(--band-saturation, 70)%,var(--band-lightness, 45)%,.8);opacity:.7;transition:opacity .3s}.spectrum-band:hover .band-indicator,.spectrum-band.selected .band-indicator{opacity:1;height:6px}.band-details-expanded{padding:2rem;background:linear-gradient(135deg,#0009,#0006);border:2px solid #00ff00;border-radius:4px;margin-top:2rem;box-shadow:0 0 30px #00ff004d;animation:slideIn .4s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid rgba(0,255,0,.3);flex-wrap:wrap;gap:1rem}.details-header h4{color:#0f0;margin:0;font-size:2rem;text-shadow:0 0 10px #00ff00}.details-band-code{padding:.5rem 1.5rem;background:#0f03;border:2px solid #00ff00;color:#0f0;font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;box-shadow:0 0 15px #00ff0080}.details-content{display:grid;gap:1.5rem}.detail-item{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:#00ff000d;border-left:4px solid #00ff00}.detail-label{color:#0f8;font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.1rem}.detail-value{color:#0f0;font-size:1.3rem;font-family:Courier New,monospace;font-weight:700}.low-freq-phenomena{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.low-freq-phenomena h3{color:#0f8;margin-bottom:1rem;text-align:center}.phenomena-intro{text-align:center;color:#0f8;margin-bottom:1.5rem;line-height:1.7;font-style:italic}.freq-card.special{border-color:#f80;background:linear-gradient(135deg,#ff88001a,#ff880026)}.freq-card.special:hover{background:linear-gradient(135deg,#f803,#ff880040);box-shadow:0 0 15px #ff880080}.freq-card.special .freq-name{color:#f80}.freq-card.special .freq-range{color:#fa0}.phone-frequencies{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.phone-frequencies h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.freq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.freq-card{padding:1rem;background:#00ff001a;border:1px solid #00ff00;transition:all .3s}.freq-card:hover{background:#0f03;box-shadow:0 0 10px #0f0}.freq-name{font-weight:700;color:#0f0;margin-bottom:.5rem;font-size:1.1rem}.freq-range{color:#f80;font-family:Courier New,monospace;margin-bottom:.5rem;font-size:1rem}.freq-desc{color:#0f8;font-size:.9rem;line-height:1.4}.websdr-section{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.websdr-section h3{color:#0f8;margin-bottom:1rem;text-align:center}.websdr-intro{color:#0f8;margin-bottom:1.5rem;text-align:center;line-height:1.6}.websdr-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.websdr-server{padding:1.5rem;background:#00ff001a;border:1px solid #00ff00;transition:all .3s}.websdr-server:hover{background:#0f03;box-shadow:0 0 15px #0f0}.websdr-server.global-server{background:linear-gradient(135deg,#8a2be226,#4b008226);border:2px solid #8a2be2;box-shadow:0 0 10px #8a2be24d}.websdr-server.global-server:hover{background:linear-gradient(135deg,#8a2be240,#4b008240);box-shadow:0 0 20px #8a2be280;border-color:#9370db}.websdr-server.global-server .server-header h4{color:#9370db;text-shadow:0 0 10px rgba(138,43,226,.5)}.websdr-server.global-server .server-link{border-color:#8a2be2;color:#9370db}.websdr-server.global-server .server-link:hover{background:#8a2be233;box-shadow:0 0 10px #8a2be280}.global-badge{display:inline-block;padding:.25rem .75rem;background:#8a2be233;border:1px solid #8a2be2;color:#9370db;font-size:.85rem;font-family:Courier New,monospace;border-radius:3px;font-weight:700;margin-top:.5rem;text-shadow:0 0 5px rgba(138,43,226,.3)}.server-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem;flex-wrap:wrap;gap:.5rem}.server-title-group{display:flex;flex-direction:column;gap:.5rem;flex:1}.server-header h4{color:#0f0;margin:0}.server-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.server-freq{color:#f80;font-family:Courier New,monospace;font-size:.9rem}.server-country{color:#0f8;font-size:.8rem;font-style:italic}.server-desc{color:#0f8;margin-bottom:1rem;font-size:.9rem}.server-link{display:inline-block;padding:.5rem 1rem;background:transparent;border:1px solid #00ff00;color:#0f0;text-decoration:none;transition:all .3s;font-family:VT323,monospace;font-size:1.1rem;cursor:pointer}.server-link:hover{background:#0f03;box-shadow:0 0 10px #0f0}.radio-education{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.radio-education h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.education-content{display:grid;gap:1.5rem}.edu-section{padding:1rem;background:#00ff000d;border-left:3px solid #00ff00}.edu-section h4{color:#0f0;margin-bottom:.75rem;font-size:1.2rem}.edu-section p{color:#0f8;line-height:1.7;margin:0}.a11y-stories{max-width:1000px;width:100%;padding:2rem}.a11y-stories h2{color:#0f0;margin-bottom:1rem;text-align:center;font-size:2rem}.story-impact{padding:1rem;background:#00ff001a;border-left:3px solid #00ff00;color:#0f0}.story-impact strong{color:#0f8}.key-figures{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.key-figures h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.figures-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.figure-card{padding:1.5rem;background:#00ff001a;border:1px solid #00ff00;transition:all .3s}.figure-card:hover{background:#0f03;box-shadow:0 0 15px #0f0}.figure-name{font-size:1.3rem;font-weight:700;color:#0f0;margin-bottom:.5rem}.figure-role{color:#f80;font-style:italic;margin-bottom:1rem;font-size:.95rem}.figure-contribution{color:#0f8;line-height:1.6}.lessons-section{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.lessons-section h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.lessons-content{display:grid;gap:1.5rem}.lesson{padding:1.5rem;background:#00ff000d;border-left:3px solid #00ff00}.lesson h4{color:#0f0;margin-bottom:.75rem;font-size:1.2rem}.lesson p{color:#0f8;line-height:1.7;margin:0}.lesson em{color:#0f0;font-style:italic}.connection-section{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.connection-section h3{color:#0f8;margin-bottom:1rem;text-align:center}.connection-content{color:#0f8;line-height:1.8}.connection-content p{margin-bottom:1rem}.connection-content ul{margin:1rem 0;padding-left:2rem}.connection-content li{margin:.75rem 0}.connection-content strong{color:#0f0}.connection-content em{color:#0f0;font-style:italic}.radio-lore{max-width:1000px;width:100%;padding:2rem}.radio-lore h2{color:#0f0;margin-bottom:1rem;text-align:center;font-size:2rem}.stories-section{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.stories-section h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.stories-nav{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap;justify-content:center}.story-nav-btn{padding:.5rem 1rem;background:transparent;border:1px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:1rem;cursor:pointer;transition:all .3s}.story-nav-btn:hover{background:#0f03;box-shadow:0 0 10px #0f0}.story-nav-btn.active{background:#0f0;color:#000;box-shadow:0 0 15px #0f0}.story-display{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.story-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.story-header h4{color:#0f0;margin:0;font-size:1.5rem}.story-era{color:#f80;font-family:Courier New,monospace;font-size:1rem}.story-content{color:#0f8;line-height:1.8;margin-bottom:1.5rem}.story-content p{margin-bottom:1rem}.story-significance{padding:1rem;background:#00ff001a;border-left:3px solid #00ff00;color:#0f0}.story-significance strong{color:#0f8}.connections-section{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.connections-section h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.connections-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.connection-card{padding:1.5rem;background:#00ff001a;border:1px solid #00ff00;transition:all .3s}.connection-card:hover{background:#0f03;box-shadow:0 0 15px #0f0}.connection-title{font-size:1.2rem;font-weight:700;color:#0f0;margin-bottom:.75rem}.connection-desc{color:#0f8;line-height:1.6}.technical-insights{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.technical-insights h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.insights-content{display:grid;gap:1.5rem}.insight{padding:1.5rem;background:#00ff000d;border-left:3px solid #00ff00}.insight h4{color:#0f0;margin-bottom:.75rem;font-size:1.2rem}.insight p{color:#0f8;line-height:1.7;margin:0}.listening-guide{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.listening-guide h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.guide-content{display:grid;gap:1.5rem}.guide-item{padding:1.5rem;background:#00ff000d;border:1px solid rgba(0,255,0,.3)}.guide-item h4{color:#0f0;margin-bottom:.75rem;font-size:1.2rem}.guide-item p{color:#0f8;line-height:1.7;margin:0}.frequency-tools{max-width:1000px;width:100%;padding:2rem}.frequency-tools h2{color:#0f0;margin-bottom:1rem;text-align:center;font-size:2rem}.converter-section{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.converter-section h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.converter{max-width:600px;margin:0 auto}.input-group{margin-bottom:1.5rem}.input-group label{display:block;margin-bottom:.5rem;color:#0f8;font-size:1.1rem}.input-wrapper{display:flex;gap:.5rem}.freq-input{flex:1;padding:.75rem;background:#00000080;border:1px solid #00ff00;color:#0f0;font-family:Courier New,monospace;font-size:1.2rem}.unit-select{padding:.75rem;background:#00000080;border:1px solid #00ff00;color:#0f0;font-family:Courier New,monospace;font-size:1.2rem;cursor:pointer}.unit-select:focus{outline:none;box-shadow:0 0 10px #0f0}.results{display:grid;gap:1rem}.result-card{padding:1.5rem;background:#00ff001a;border:1px solid #00ff00}.result-label{color:#0f8;font-size:.9rem;margin-bottom:.5rem}.result-value{color:#0f0;font-size:2rem;font-family:Courier New,monospace;font-weight:700;margin-bottom:.25rem}.result-detail{color:#0f8;font-size:.9rem;font-family:Courier New,monospace}.units-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1rem}.unit-item{padding:.75rem;background:#0000004d;border:1px solid rgba(0,255,0,.3);text-align:center}.unit-value{display:block;color:#0f0;font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;margin-bottom:.25rem}.unit-label{display:block;color:#0f8;font-size:.9rem}.reference-section{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.reference-section h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.freq-reference-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.freq-reference-card{padding:1.5rem;background:#00ff001a;border:1px solid #00ff00;transition:all .3s}.freq-reference-card:hover{background:#0f03;box-shadow:0 0 15px #0f0}.ref-name{font-weight:700;color:#0f0;margin-bottom:.5rem;font-size:1.1rem}.ref-range{color:#f80;font-family:Courier New,monospace;margin-bottom:.5rem;font-size:1rem}.ref-desc{color:#0f8;font-size:.9rem;margin-bottom:1rem;line-height:1.4}.use-freq-btn{width:100%;padding:.5rem;background:transparent;border:1px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:1rem;cursor:pointer;transition:all .3s}.use-freq-btn:hover{background:#0f03;box-shadow:0 0 10px #0f0}.formula-section{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.formula-section h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.formula-content{display:grid;gap:1.5rem}.formula-card{padding:1.5rem;background:#00ff000d;border-left:3px solid #00ff00}.formula-card h4{color:#0f0;margin-bottom:1rem;font-size:1.2rem}.formula{font-family:Courier New,monospace;font-size:2rem;color:#0f0;text-align:center;margin:1rem 0;font-weight:700}.formula-card p{color:#0f8;line-height:1.7;margin:.5rem 0}.formula-card strong{color:#0f0}.formula-card ul{margin:1rem 0;padding-left:2rem}.formula-card li{color:#0f8;margin:.5rem 0}.band-calculator{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.band-calculator h3{color:#0f8;margin-bottom:1rem;text-align:center}.band-intro{text-align:center;color:#0f8;margin-bottom:1rem}.band-result{margin-top:1.5rem}.band-info{padding:1.5rem;background:#00ff001a;border:2px solid #00ff00;text-align:center}.band-label{font-size:2rem;font-weight:700;color:#0f0;font-family:Courier New,monospace;margin-bottom:.5rem}.band-name{font-size:1.2rem;color:#0f8}.how-it-works{max-width:1000px;width:100%;padding:2rem}.how-it-works h2{color:#0f0;margin-bottom:1rem;text-align:center;font-size:2rem}.description{text-align:center;margin-bottom:2rem;color:#0f8;line-height:1.6}.intro-section{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.intro-section h3{color:#0f8;margin-bottom:1rem;text-align:center}.intro-content{color:#0f8;line-height:1.8}.intro-content p{margin-bottom:1rem}.intro-content strong{color:#0f0}.intro-content em{color:#0f0;font-style:italic}.intro-content ul{margin:1rem 0;padding-left:2rem}.intro-content li{margin:.5rem 0;color:#0f8}.topics-section{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.category-filter{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap;justify-content:center}.category-btn{padding:.5rem 1rem;background:transparent;border:1px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:1rem;cursor:pointer;transition:all .3s}.category-btn:hover{background:#0f03;box-shadow:0 0 10px #0f0}.category-btn.active{background:#0f0;color:#000;box-shadow:0 0 15px #0f0}.topics-nav{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;max-height:300px;overflow-y:auto}.topic-nav-btn{padding:.75rem 1rem;background:transparent;border:1px solid rgba(0,255,0,.3);color:#0f8;text-align:left;font-family:VT323,monospace;font-size:1rem;cursor:pointer;transition:all .3s}.topic-nav-btn:hover{background:#00ff001a;border-color:#0f0}.topic-nav-btn.active{background:#0f03;border-color:#0f0;color:#0f0}.topic-display{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.topic-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.topic-header h4{color:#0f0;margin:0;font-size:1.5rem}.topic-category{color:#f80;font-family:Courier New,monospace;font-size:.9rem;padding:.25rem .75rem;background:#ff88001a;border:1px solid #ff8800}.topic-content{color:#0f8;line-height:1.8;margin-bottom:1.5rem}.topic-content p{margin-bottom:1rem}.topic-keypoints{padding:1rem;background:#00ff001a;border-left:3px solid #00ff00}.topic-keypoints h5{color:#0f0;margin-bottom:.75rem;font-size:1.1rem}.topic-keypoints ul{list-style:none;padding:0;margin:0}.topic-keypoints li{color:#0f8;margin:.5rem 0;padding-left:1.5rem;position:relative}.topic-keypoints li:before{content:"→ ";color:#0f0;position:absolute;left:0}.principles-section{margin-bottom:3rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.principles-section h3{color:#0f8;margin-bottom:1.5rem;text-align:center}.principles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.principle-card{padding:1.5rem;background:#00ff001a;border:1px solid #00ff00;transition:all .3s}.principle-card:hover{background:#0f03;box-shadow:0 0 15px #0f0}.principle-card h4{color:#0f0;margin-bottom:.75rem;font-size:1.2rem}.principle-card p{color:#0f8;line-height:1.7;margin:0}.simulation-section{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.simulation-section h3{color:#0f8;margin-bottom:1rem;text-align:center}.simulation-content{color:#0f8;line-height:1.8}.simulation-content p{margin-bottom:1rem}.simulation-content strong{color:#0f0}.simulation-content ul{margin:1rem 0;padding-left:2rem}.simulation-content li{margin:.75rem 0;color:#0f8}.secret-features{max-width:800px;width:100%;padding:2rem}.secret-features h2{color:red;margin-bottom:1rem;text-align:center;font-size:2rem;text-shadow:0 0 10px #ff0000,0 0 20px #ff0000;animation:glitch .5s infinite}.warning{text-align:center;color:red;font-size:1.2rem;margin-bottom:2rem;animation:pulse 2s infinite;border:2px solid #ff0000;padding:.5rem;background:#ff00001a}.secret-panel{margin-bottom:2rem;padding:1.5rem;background:#00000080;border:2px solid #ff0000}.secret-panel h3{color:red;margin-bottom:1rem}.history-display{padding:1rem;background:#0000004d;border:1px solid #ff0000}.ascii-art{color:#0f0;font-family:Courier New,monospace;font-size:.8rem;text-align:center;white-space:pre}.secret-tools{margin-bottom:2rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.secret-tools h3{color:#0f8;margin-bottom:1rem}.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.secret-button{padding:1rem;background:transparent;border:2px solid #ff8800;color:#f80;font-family:VT323,monospace;font-size:1.1rem;cursor:pointer;transition:all .3s;text-transform:uppercase}.secret-button:hover:not(.disabled){background:#f803;box-shadow:0 0 15px #f80;transform:scale(1.05)}.secret-button.disabled{opacity:.5;cursor:not-allowed}.hack-progress{margin-bottom:2rem;padding:1.5rem;background:#00000080;border:2px solid #ff0000}.hack-progress h3{color:red;margin-bottom:1rem}.progress-bar{width:100%;height:30px;background:#00000080;border:2px solid #ff0000;margin:1rem 0;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,red,#f80);transition:width .2s;box-shadow:0 0 10px red}.progress-text{text-align:center;color:red;font-size:1.5rem;font-family:Courier New,monospace;margin-top:.5rem}.hack-complete{margin-top:1rem;padding:1rem;background:#0f03;border:2px solid #00ff00;color:#0f0;text-align:center;font-size:1.2rem;font-weight:700;animation:pulse 1s infinite}.secret-info{margin-bottom:2rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.secret-info h3{color:#0f8;margin-bottom:1rem}.info-content{color:#0f8}.info-content p{margin-bottom:1rem;line-height:1.6}.info-content ul{list-style:none;padding:0}.info-content li{padding:.5rem 0;border-bottom:1px solid rgba(0,255,0,.2)}.info-content li:before{content:"> ";color:#0f0}.easter-eggs{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.easter-eggs h3{color:#0f8;margin-bottom:1rem}.easter-eggs ul{list-style:none;padding:0}.easter-eggs li{padding:.5rem 0;color:#0f8;border-bottom:1px solid rgba(0,255,0,.2)}.main-terminal{width:100%;max-height:300px;display:flex;flex-direction:column;background:#0000004d;border-top:1px solid #00ff00}.terminal-screen{flex:1;overflow-y:auto;padding:1rem;font-size:.9rem;line-height:1.6;font-family:Courier New,monospace;max-height:200px}.terminal-line{margin-bottom:.25rem;white-space:pre-wrap;word-wrap:break-word}.terminal-line.system{color:#0f8}.terminal-line.error{color:#f44}.terminal-line.command{color:#0f0;font-weight:600}.terminal-input-row{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgba(0,255,0,.2);background:#0003}.terminal-prompt{color:#0f8;font-weight:600;font-family:Courier New,monospace}.terminal-input-row input{flex:1;background:transparent;border:none;outline:none;color:#0f0;font-family:Courier New,monospace;font-size:.9rem;padding:.25rem 0}.terminal-input-row input::placeholder{color:#0f06}.terminal-input-row input:focus{color:#0f0}.terminal-screen::-webkit-scrollbar{width:8px}.terminal-screen::-webkit-scrollbar-track{background:#0000004d}.terminal-screen::-webkit-scrollbar-thumb{background:#00ff004d;border-radius:4px}.terminal-screen::-webkit-scrollbar-thumb:hover{background:#00ff0080}@media (max-width: 720px){.main-terminal{max-height:250px}.terminal-screen{max-height:150px;font-size:.85rem;padding:.75rem}.terminal-input-row{padding:.5rem .75rem}.terminal-input-row input{font-size:.85rem}}.spot-page{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;background:linear-gradient(135deg,#0a0a0a,#1a1a2e)}.scanline-locked{background:#8888884d!important}.scanline-granted{background:#00ff004d!important}.spot-container{width:100%;max-width:800px;margin:0 auto;padding:2rem;z-index:1}.spot-content{background:#000000b3;padding:2rem}.spot-content-locked{border:2px solid #888888;box-shadow:0 0 20px #8888884d}.spot-content-granted{border:2px solid #00ff00;box-shadow:0 0 20px #00ff004d}.spot-title{font-size:2.5rem;text-align:center;margin-bottom:2rem;letter-spacing:.3rem}.spot-title-locked{color:#888;text-shadow:0 0 10px #888888,0 0 20px #888888}.spot-title-granted{color:#0f0;text-shadow:0 0 10px #00ff00,0 0 20px #00ff00}.riddle-section,.pin-section{display:flex;flex-direction:column;gap:1.5rem}.riddle-intro{font-size:1.5rem;color:#aaa;text-align:center;margin-bottom:1rem}.riddle-instruction,.pin-instruction{font-size:1.2rem;color:#888;text-align:center;margin-bottom:1rem}.riddle-clues{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0;padding:1.5rem;background:#8888880d;border:1px solid rgba(136,136,136,.3)}.riddle-clue{display:flex;gap:1rem;font-size:1.1rem;color:#aaa;line-height:1.6}.clue-number{color:#888;font-weight:700;min-width:2rem}.clue-text{flex:1}.code-form{display:flex;flex-direction:column;gap:1rem;align-items:center}.code-input{width:100%;max-width:300px;padding:1rem;background:#000c;border:2px solid #888888;color:#888;font-family:VT323,Courier New,monospace;font-size:1.5rem;text-align:center;letter-spacing:.5rem;outline:none;transition:all .3s}.code-input:focus{box-shadow:0 0 15px #888;border-color:#aaa}.code-input::placeholder{color:#88888880;letter-spacing:.2rem}.submit-btn{padding:.75rem 2rem;background:transparent;border:2px solid #888888;color:#888;font-family:VT323,Courier New,monospace;font-size:1.3rem;cursor:pointer;text-transform:uppercase;transition:all .3s;letter-spacing:.2rem}.submit-btn:hover{background:#8888881a;box-shadow:0 0 15px #888}.submit-btn:active{transform:scale(.98)}.error-message{margin-top:1rem;padding:1rem;background:#f003;border:1px solid #ff0000;color:#f66;text-align:center;font-size:1.1rem;animation:shake .5s}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.spot-message{font-size:1.2rem;color:#0f8;line-height:1.8;text-align:center;padding:2rem;background:#00ff000d;border:1px solid rgba(0,255,0,.3)}.spot-message p{margin:0}.spot-message-paragraph{margin-top:1.5rem!important}.spot-message a{color:#0f8;text-decoration:underline;transition:color .3s}.spot-message a:hover{color:#0f0;text-shadow:0 0 5px #00ff88}[data-theme=dark] .spot-content{border-color:#0c8;box-shadow:0 0 20px #00cc884d}[data-theme=dark] .spot-title{color:#0c8;text-shadow:0 0 10px #00cc88,0 0 20px #00cc88}[data-theme=dark] .code-input{border-color:#0c8;color:#0c8}[data-theme=dark] .code-input:focus{box-shadow:0 0 15px #0c8;border-color:#0a6}[data-theme=dark] .submit-btn{border-color:#0c8;color:#0c8}[data-theme=dark] .submit-btn:hover{background:#00cc881a;box-shadow:0 0 15px #0c8}[data-theme=high-contrast] .spot-content{border-color:#fff;box-shadow:0 0 20px #ffffff4d}[data-theme=high-contrast] .spot-title{color:#fff;text-shadow:none}[data-theme=high-contrast] .code-input{border-color:#fff;color:#fff;background:#000}[data-theme=high-contrast] .code-input:focus{box-shadow:0 0 15px #fff}[data-theme=high-contrast] .submit-btn{border-color:#fff;color:#fff}[data-theme=high-contrast] .submit-btn:hover{background:#fff;color:#000}.tone-generator{max-width:1200px;width:100%;padding:2rem;margin:0 auto}.tone-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.tone-generator h2{color:#0f0;margin:0;text-align:center;font-size:2rem;text-shadow:0 0 10px #00ff00,0 0 20px #00ff00;letter-spacing:.3rem}.kofi-link{padding:.75rem 1.5rem;background:#ff88001a;border:2px solid #ff8800;color:#f80;text-decoration:none;font-family:VT323,monospace;font-size:1.2rem;transition:all .3s;text-transform:uppercase;letter-spacing:.1rem}.kofi-link:hover{background:#ff88004d;box-shadow:0 0 15px #f80;transform:scale(1.05)}.tone-controls{display:flex;flex-direction:column;gap:2rem;margin-bottom:2rem}.play-control{display:flex;justify-content:center}.play-button{padding:1.5rem 3rem;background:#00ff001a;border:3px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:2rem;cursor:pointer;transition:all .3s;text-transform:uppercase;letter-spacing:.2rem;min-width:200px}.play-button:hover{background:#00ff004d;box-shadow:0 0 20px #0f0;transform:scale(1.05)}.play-button.playing{background:#0f0;color:#000;box-shadow:0 0 30px #0f0;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.frequency-display{text-align:center;padding:1.5rem;background:#00000080;border:2px solid #00ff00}.freq-value{font-size:3rem;color:#0f0;font-family:VT323,monospace;text-shadow:0 0 10px #00ff00;margin-bottom:.5rem}.note-name{font-size:1.5rem;color:#0f8;font-family:VT323,monospace}.frequency-control,.volume-control,.a4-reference{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.frequency-control label,.volume-control label,.a4-reference label{display:block;margin-bottom:1rem;color:#0f8;font-family:VT323,monospace;font-size:1.3rem}.slider-container{position:relative}.freq-slider,.vol-slider{width:100%;height:8px;background:#0f03;border:1px solid #00ff00;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.freq-slider::-webkit-slider-thumb,.vol-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;background:#0f0;border:2px solid #000;cursor:pointer;box-shadow:0 0 10px #0f0}.freq-slider::-moz-range-thumb,.vol-slider::-moz-range-thumb{width:20px;height:20px;background:#0f0;border:2px solid #000;cursor:pointer;box-shadow:0 0 10px #0f0}.slider-labels{display:flex;justify-content:space-between;margin-top:.5rem;color:#0f8;font-size:.9rem}.fine-adjustment{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.fine-adjustment label{display:block;margin-bottom:1rem;color:#0f8;font-family:VT323,monospace;font-size:1.3rem}.adjust-buttons{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;justify-content:center}.adjust-buttons button{padding:.5rem 1rem;background:transparent;border:1px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:1rem;cursor:pointer;transition:all .3s}.adjust-buttons button:hover{background:#0f03;box-shadow:0 0 10px #0f0}.freq-input{padding:.5rem;background:#00000080;border:1px solid #00ff00;color:#0f0;font-family:Courier New,monospace;font-size:1rem;text-align:center;width:120px}.freq-input:focus{outline:none;box-shadow:0 0 10px #0f0}.octave-controls{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.octave-controls button{padding:.75rem 1.5rem;background:transparent;border:2px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:1.5rem;cursor:pointer;transition:all .3s}.octave-controls button:hover{background:#0f03;box-shadow:0 0 15px #0f0}.octave-controls span{color:#0f8;font-family:VT323,monospace;font-size:1.3rem}.wave-selector{padding:1.5rem;background:#0000004d;border:1px solid #00ff00}.wave-selector label{display:block;margin-bottom:1rem;color:#0f8;font-family:VT323,monospace;font-size:1.3rem}.wave-buttons{display:flex;gap:1rem;flex-wrap:wrap}.wave-buttons button{flex:1;min-width:120px;padding:.75rem;background:transparent;border:2px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:1.2rem;cursor:pointer;transition:all .3s;text-transform:capitalize}.wave-buttons button:hover{background:#0f03;box-shadow:0 0 10px #0f0}.wave-buttons button.active{background:#0f0;color:#000;box-shadow:0 0 20px #0f0}.a4-input{width:100%;padding:.75rem;background:#00000080;border:1px solid #00ff00;color:#0f0;font-family:Courier New,monospace;font-size:1.2rem;margin-bottom:1rem}.a4-input:focus{outline:none;box-shadow:0 0 10px #0f0}.preset-a4{display:flex;gap:.5rem;flex-wrap:wrap}.preset-a4 button{flex:1;min-width:150px;padding:.5rem;background:transparent;border:1px solid #00ff88;color:#0f8;font-family:VT323,monospace;font-size:1rem;cursor:pointer;transition:all .3s}.preset-a4 button:hover{background:#0f83;box-shadow:0 0 10px #0f8}.musical-keyboard{padding:1rem;background:#0000004d;border:1px solid #00ff00}.musical-keyboard label{display:block;margin-bottom:.75rem;color:#0f8;font-family:VT323,monospace;font-size:1.2rem}.keyboard-scroll-wrapper{overflow-x:auto;overflow-y:hidden;padding:.75rem;background:#00000080;border:1px solid rgba(0,255,0,.3);-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#00ff00 rgba(0,0,0,.3)}.keyboard-scroll-wrapper::-webkit-scrollbar{height:8px}.keyboard-scroll-wrapper::-webkit-scrollbar-track{background:#0000004d}.keyboard-scroll-wrapper::-webkit-scrollbar-thumb{background:#0f0;border-radius:4px}.keyboard-scroll-wrapper::-webkit-scrollbar-thumb:hover{background:#0f8}.keyboard-container{display:flex;gap:3px;align-items:flex-end;min-width:fit-content;padding:.5rem 0}.keyboard-key{border:2px solid;cursor:pointer;transition:all .15s;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:.35rem .2rem;position:relative;font-family:VT323,monospace;-webkit-user-select:none;user-select:none;flex-shrink:0}.keyboard-key.natural{background:#dcdcdc26;border-color:#888;color:#ccc;width:32px;height:65px;font-size:.8rem}.keyboard-key.sharp{background:#28282899;border-color:#555;color:#999;width:22px;height:42px;margin-left:-11px;margin-right:-11px;z-index:1;font-size:.7rem}.keyboard-key:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00ff0080}.keyboard-key.natural:hover{background:#f0f0f040;border-color:#0f0;color:#0f0;box-shadow:0 0 10px #0f06}.keyboard-key.sharp:hover{background:#3c3c3cb3;border-color:#0f8;color:#0f8;box-shadow:0 0 10px #0f86}.keyboard-key.selected{background:#0f06;border-color:#0f0;color:#0f0;box-shadow:0 0 20px #0f0,inset 0 0 10px #00ff004d}.keyboard-key.sharp.selected{background:#0f86;border-color:#0f8;color:#0f8;box-shadow:0 0 20px #0f8,inset 0 0 10px #00ff884d}.keyboard-mobile{display:none}.note-select{width:100%;padding:.75rem 2.5rem .75rem .75rem;background:#000000b3;border:2px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:1.2rem;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2300ff00' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px}.note-select:focus{box-shadow:0 0 15px #0f0;border-color:#0f8}.note-select option{background:#000;color:#0f0;padding:.5rem}.key-label{font-size:.85rem;font-weight:700;line-height:1}.keyboard-key.sharp .key-label{font-size:.7rem}.key-octave{font-size:.6rem;margin-top:.15rem;opacity:.8;line-height:1}.keyboard-key.sharp .key-octave{font-size:.55rem}.share-control{display:flex;justify-content:center}.share-button{padding:.75rem 1.5rem;background:transparent;border:2px solid #00ff88;color:#0f8;font-family:VT323,monospace;font-size:1.2rem;cursor:pointer;transition:all .3s;text-transform:uppercase}.share-button:hover{background:#0f83;box-shadow:0 0 15px #0f8}.documentation-section{margin-bottom:1.5rem;border:1px solid #00ff00;background:#0000004d}.section-toggle{width:100%;padding:1rem;background:#00ff001a;border:none;border-bottom:1px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:1.3rem;cursor:pointer;text-align:left;transition:all .3s;display:flex;align-items:center;gap:.5rem}.section-toggle:hover{background:#0f03}.warning-section .section-toggle{background:#ff88001a;color:#f80;border-bottom-color:#f80}.warning-section .section-toggle:hover{background:#f803}.instructions-content,.warning-content,.use-cases-content{padding:1.5rem;color:#0f8;font-family:Courier New,monospace;line-height:1.6}.warning-content{color:#fa6}.instructions-content p,.warning-content p,.use-cases-content p{margin-bottom:1rem}.instructions-content ul,.use-cases-content ul{margin-left:2rem;margin-bottom:1rem}.instructions-content li,.use-cases-content li{margin-bottom:.5rem}.use-cases-content h3{color:#0f0;margin-bottom:1rem;font-size:1.5rem}.use-cases-content h4{color:#0f8;margin-top:1.5rem;margin-bottom:.5rem;font-size:1.2rem}.use-cases-content em{color:#0f0;font-style:italic}.browser-note{text-align:center;padding:1rem;color:#0f8;font-family:VT323,monospace;font-size:1rem;background:#0000004d;border:1px solid rgba(0,255,0,.3)}@media (max-width: 1024px){.keyboard-container{gap:2.5px}.keyboard-key.natural{width:30px;height:62px;font-size:.75rem}.keyboard-key.sharp{width:21px;height:40px;margin-left:-10.5px;margin-right:-10.5px;font-size:.68rem}.key-label{font-size:.75rem}.keyboard-key.sharp .key-label{font-size:.68rem}.key-octave{font-size:.58rem}}@media (max-width: 768px){.tone-generator{padding:1rem}.tone-header{flex-direction:column;align-items:center}.freq-value{font-size:2rem}.musical-keyboard{padding:.75rem}.keyboard-container{gap:2px}.keyboard-key.natural{width:28px;height:60px;font-size:.7rem}.keyboard-key.sharp{width:20px;height:38px;margin-left:-10px;margin-right:-10px;font-size:.65rem}.adjust-buttons{flex-direction:column}.freq-input{width:100%}}@media (max-width: 480px){.keyboard-desktop{display:none!important}.keyboard-mobile{display:block}.adjust-buttons{flex-direction:column}}[data-theme=dark] .tone-generator h2{color:#0c8;text-shadow:0 0 10px #00cc88,0 0 20px #00cc88}[data-theme=dark] .play-button{border-color:#0c8;color:#0c8}[data-theme=dark] .play-button:hover{background:#0c83;box-shadow:0 0 20px #0c8}[data-theme=dark] .play-button.playing{background:#0c8;color:#000;box-shadow:0 0 30px #0c8}[data-theme=high-contrast] .tone-generator h2{color:#fff;text-shadow:none}[data-theme=high-contrast] .play-button{border-color:#fff;color:#fff}[data-theme=high-contrast] .play-button:hover{background:#fff;color:#000}[data-theme=high-contrast] .play-button.playing{background:#fff;color:#000;box-shadow:none}.riley-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,#0a0a0a,#1a1a2e);position:relative}.riley-controls-top{position:absolute;top:1rem;left:1rem;right:1rem;display:flex;justify-content:space-between;align-items:center;z-index:10;gap:1rem}.riley-back-button{padding:.5rem 1rem;background:#00ff001a;border:2px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:1.2rem;cursor:pointer;transition:all .3s;text-transform:uppercase;letter-spacing:.1rem;text-decoration:none}.riley-back-button:hover{background:#0f03;box-shadow:0 0 10px #0f0;transform:translate(-2px)}.riley-kofi-button{padding:.5rem 1rem;background:#ff88001a;border:2px solid #ff8800;color:#f80;font-family:VT323,monospace;font-size:1rem;text-decoration:none;transition:all .3s;text-transform:uppercase;letter-spacing:.1rem}.riley-kofi-button:hover{background:#f803;box-shadow:0 0 10px #f80;transform:scale(1.05)}.riley-container{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:600px;gap:3rem}.riley-header{text-align:center}.riley-title{font-size:4rem;color:#0f0;font-family:VT323,monospace;text-shadow:0 0 10px #00ff00,0 0 20px #00ff00,0 0 30px #00ff00;letter-spacing:.5rem;margin-bottom:.5rem}.riley-subtitle{font-size:1.5rem;color:#0f8;font-family:VT323,monospace;letter-spacing:.2rem}.riley-button{width:300px;height:300px;border-radius:50%;border:4px solid #00ff00;background:#00ff001a;color:#0f0;font-family:VT323,monospace;font-size:2.5rem;cursor:pointer;transition:all .3s;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;box-shadow:0 0 20px #00ff004d;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;position:relative;overflow:hidden}.riley-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#0f03;transform:translate(-50%,-50%);transition:width .3s,height .3s}.riley-button:active:before{width:100%;height:100%}.riley-button:hover{background:#0f03;box-shadow:0 0 30px #00ff0080;transform:scale(1.05)}.riley-button.playing{background:#00ff004d;border-color:#0f8;color:#0f8;box-shadow:0 0 40px #0f09,0 0 60px #0f86;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 40px #0f09,0 0 60px #0f86;transform:scale(1)}50%{box-shadow:0 0 60px #0f0c,0 0 80px #0f89;transform:scale(1.02)}}.button-icon{font-size:4rem;line-height:1}.button-text{font-size:2rem;letter-spacing:.3rem;text-transform:uppercase}.riley-info{text-align:center;color:#0f8;font-family:VT323,monospace;font-size:1.2rem;line-height:1.6}.riley-info p{margin:.5rem 0}.info-note{font-size:1rem;color:#0a6;opacity:.8}@media (max-width: 768px){.riley-page{padding:4rem 1rem 1rem}.riley-controls-top{top:.5rem;left:.5rem;right:.5rem;flex-wrap:wrap}.riley-back-button{font-size:1rem;padding:.4rem .8rem}.riley-kofi-button{font-size:.9rem;padding:.4rem .8rem}.riley-container{gap:2rem}.riley-title{font-size:3rem;letter-spacing:.3rem;text-shadow:0 0 5px #00ff00,0 0 10px #00ff00}.riley-subtitle{font-size:1.2rem}.riley-button{width:280px;height:280px;font-size:2rem;border-width:3px}.button-icon{font-size:3.5rem}.button-text{font-size:1.8rem}.riley-info{font-size:1.1rem}}@media (max-width: 480px){.riley-page{padding:3.5rem .5rem .5rem}.riley-controls-top{top:.25rem;left:.25rem;right:.25rem}.riley-back-button{font-size:.9rem;padding:.35rem .7rem}.riley-kofi-button{font-size:.85rem;padding:.35rem .7rem}.riley-container{gap:1.5rem}.riley-title{font-size:2.5rem;letter-spacing:.2rem;text-shadow:0 0 3px #00ff00,0 0 6px #00ff00}.riley-subtitle{font-size:1rem;letter-spacing:.1rem}.riley-button{width:250px;height:250px;font-size:1.8rem;min-width:250px;min-height:250px}.button-icon{font-size:3rem}.button-text{font-size:1.5rem;letter-spacing:.2rem}.riley-info{font-size:1rem;padding:0 1rem}}@media (max-height: 500px) and (orientation: landscape){.riley-container{gap:1rem;flex-direction:row;flex-wrap:wrap;justify-content:center}.riley-header{flex:1 1 100%}.riley-title{font-size:2rem}.riley-subtitle{font-size:.9rem}.riley-button{width:200px;height:200px}.button-icon{font-size:2.5rem}.button-text{font-size:1.2rem}.riley-info{flex:1 1 100%;font-size:.9rem}}@media (min-width: 1024px){.riley-button{width:350px;height:350px;font-size:3rem}.button-icon{font-size:5rem}.button-text{font-size:2.5rem}}[data-theme=dark] .riley-title{color:#0c8;text-shadow:0 0 10px #00cc88,0 0 20px #00cc88,0 0 30px #00cc88}[data-theme=dark] .riley-subtitle{color:#0a6}[data-theme=dark] .riley-button{border-color:#0c8;color:#0c8}[data-theme=dark] .riley-button:hover{background:#0c83;box-shadow:0 0 30px #00cc8880}[data-theme=dark] .riley-button.playing{background:#00cc884d;border-color:#0a6;color:#0a6;box-shadow:0 0 40px #0c89,0 0 60px #0a66}[data-theme=high-contrast] .riley-title{color:#fff;text-shadow:none}[data-theme=high-contrast] .riley-subtitle{color:#fff}[data-theme=high-contrast] .riley-button{border-color:#fff;color:#fff;background:#ffffff1a}[data-theme=high-contrast] .riley-button:hover{background:#fff;color:#000}[data-theme=high-contrast] .riley-button.playing{background:#fff;color:#000;box-shadow:none}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary, #00cc00);color:var(--color-bg, #0a0a0a);padding:.75rem 1.5rem;text-decoration:none;font-weight:700;z-index:10000;border:2px solid var(--color-primary, #00cc00)}.skip-link:focus{top:0;outline:3px solid var(--color-focus, #00ffff);outline-offset:2px}*:focus-visible{outline:3px solid var(--color-focus, #00ffff);outline-offset:2px;outline-style:solid}*:focus:not(:focus-visible){outline:none}.focus-high-contrast:focus-visible{outline:4px solid var(--color-focus, #00ffff);outline-offset:3px;box-shadow:0 0 0 2px var(--color-bg, #0a0a0a)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sr-only-focusable:focus,.sr-only-focusable:active{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}.live-region[aria-live=polite],.live-region[aria-live=assertive]{position:static;width:auto;height:auto;overflow:visible}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (prefers-contrast: high){*{border-color:currentColor!important}button,a{border:2px solid currentColor!important}}.text-resizable{font-size:clamp(1rem,2vw,1.5rem)}button,a,input,select,textarea,[tabindex]:not([tabindex="-1"]){min-height:44px;min-width:44px}.contrast-aaa{color:var(--color-text, #00cc00);background-color:var(--color-bg, #0a0a0a)}.error-message{color:var(--color-error, #ff4444);font-weight:700;display:block;margin-top:.5rem}.error-message:before{content:"Error: ";font-weight:700}.success-message{color:var(--color-success, #00cc00);font-weight:700;display:block;margin-top:.5rem}.success-message:before{content:"Success: ";font-weight:700}.loading{position:relative;pointer-events:none}.loading:after{content:"Loading...";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}label{display:block;margin-bottom:.5rem;font-weight:500}label.required:after{content:" *";color:var(--color-error, #ff4444);font-weight:700}img:not([alt]){border:2px dashed var(--color-error, #ff4444)}.touch-spacing{padding:.75rem;margin:.5rem}.text-resize-test{font-size:200%}.color-indicator{display:inline-flex;align-items:center;gap:.5rem}.color-indicator:before{content:"";width:1rem;height:1rem;border-radius:50%;background-color:currentColor}.theme-selector{padding:var(--spacing-lg, 1.5rem);background:var(--color-bg-secondary, #1a1a1a);border-radius:var(--radius-lg, 12px);max-width:600px;width:100%}.theme-selector h2{margin:0 0 var(--spacing-lg, 1.5rem) 0;color:var(--color-text, #00cc00);font-size:1.5rem}.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-md, 1rem);margin-bottom:var(--spacing-lg, 1.5rem)}.theme-option{position:relative;padding:var(--spacing-md, 1rem);background:var(--color-bg-tertiary, #2a2a2a);border:2px solid var(--color-border, #00cc00);border-radius:var(--radius-md, 8px);cursor:pointer;transition:all var(--transition-base, .25s ease);text-align:left;min-height:120px;display:flex;flex-direction:column;gap:var(--spacing-sm, .5rem)}.theme-option:hover{border-color:var(--color-primary-hover, #00ff00);background:var(--color-bg-secondary, #1a1a1a);transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 8px rgba(0, 204, 0, .2))}.theme-option:focus-visible{outline:3px solid var(--color-focus, #00ffff);outline-offset:2px}.theme-option.active{border-color:var(--color-accent, #00cccc);background:var(--color-bg-secondary, #1a1a1a);box-shadow:var(--shadow-glow, 0 0 20px rgba(0, 204, 0, .5))}.theme-preview{width:100%;height:60px;border-radius:var(--radius-sm, 4px);overflow:hidden;border:1px solid var(--color-border, #00cc00)}.theme-preview-colors{display:flex;height:100%}.theme-color-primary,.theme-color-accent,.theme-color-bg{flex:1}.theme-info{display:flex;flex-direction:column;gap:.25rem}.theme-name{font-weight:700;color:var(--color-text, #00cc00);font-size:1rem}.theme-description{font-size:.875rem;color:var(--color-text-muted, #888888)}.theme-check{position:absolute;top:var(--spacing-sm, .5rem);right:var(--spacing-sm, .5rem);color:var(--color-accent, #00cccc);font-size:1.25rem;font-weight:700}.theme-close{width:100%;padding:var(--spacing-md, 1rem);background:var(--color-primary, #00cc00);color:var(--color-text-inverse, #0a0a0a);border:none;border-radius:var(--radius-md, 8px);font-weight:700;cursor:pointer;transition:background var(--transition-base, .25s ease);min-height:44px}.theme-close:hover{background:var(--color-primary-hover, #00ff00)}.theme-close:focus-visible{outline:3px solid var(--color-focus, #00ffff);outline-offset:2px}.theme-preview[data-theme=default] .theme-color-primary{background:#0c0}.theme-preview[data-theme=default] .theme-color-accent{background:#0cc}.theme-preview[data-theme=default] .theme-color-bg{background:#0a0a0a}.theme-preview[data-theme=dark] .theme-color-primary{background:#5865f2}.theme-preview[data-theme=dark] .theme-color-accent{background:#57f287}.theme-preview[data-theme=dark] .theme-color-bg{background:#1e1e1e}.theme-preview[data-theme=light] .theme-color-primary{background:#5865f2}.theme-preview[data-theme=light] .theme-color-accent{background:#57f287}.theme-preview[data-theme=light] .theme-color-bg{background:#fff}.theme-preview[data-theme=high-contrast] .theme-color-primary{background:#0f0}.theme-preview[data-theme=high-contrast] .theme-color-accent{background:#0ff}.theme-preview[data-theme=high-contrast] .theme-color-bg{background:#000}.room-manager{max-width:100%;margin:0;padding:var(--spacing-lg, 1.5rem) var(--spacing-md, 1rem);min-height:100vh;display:flex;flex-direction:column;justify-content:center}.room-manager-header{text-align:center;margin-bottom:var(--spacing-xl, 2rem)}.room-manager-header h1{font-size:2rem;margin-bottom:var(--spacing-sm, .5rem);text-shadow:0 0 10px var(--color-primary, #00cc00);color:var(--color-text, #00cc00)}.room-manager-header p{font-size:1rem;color:var(--color-text-secondary, #00ff88);margin:0}.room-manager-content{display:flex;flex-direction:column;gap:var(--spacing-lg, 1.5rem);max-width:100%}.user-name-section{display:flex;flex-direction:column;gap:var(--spacing-sm, .5rem)}.user-name-section label{font-size:1rem;color:var(--color-text, #00cc00);font-weight:500}.user-name-section input{padding:var(--spacing-md, 1rem);background:var(--color-bg-secondary, rgba(0, 0, 0, .5));border:2px solid var(--color-border, #00cc00);color:var(--color-text, #00cc00);font-family:inherit;font-size:1rem;border-radius:var(--radius-md, 8px);min-height:44px;width:100%;transition:border-color var(--transition-base, .25s ease)}.user-name-section input:focus{outline:none;border-color:var(--color-focus, #00ffff);box-shadow:0 0 0 3px #0ff3}.user-name-section input::placeholder{color:var(--color-text-muted, #888888)}.mode-selector{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm, .5rem)}.mode-selector button{padding:var(--spacing-md, 1rem);background:var(--color-bg-tertiary, rgba(0, 255, 0, .1));border:2px solid var(--color-border, #00cc00);color:var(--color-text, #00cc00);cursor:pointer;font-family:inherit;font-size:1rem;min-height:44px;border-radius:var(--radius-md, 8px);transition:all var(--transition-base, .25s ease)}.mode-selector button:hover{background:var(--color-primary-hover, rgba(0, 255, 0, .2));border-color:var(--color-primary-hover, #00ff00)}.mode-selector button:focus-visible{outline:3px solid var(--color-focus, #00ffff);outline-offset:2px}.mode-selector button.active{background:var(--color-primary, rgba(0, 204, 0, .3));border-color:var(--color-primary, #00cc00);font-weight:700}.create-room-section,.join-room-section{display:flex;flex-direction:column;gap:var(--spacing-lg, 1.5rem)}.room-code-settings{display:flex;flex-direction:column;gap:var(--spacing-md, 1rem);padding:var(--spacing-md, 1rem);background:var(--color-bg-secondary, rgba(0, 0, 0, .3));border:1px solid var(--color-border, #00cc00);border-radius:var(--radius-md, 8px)}.room-code-settings label{display:flex;flex-direction:column;gap:var(--spacing-xs, .25rem);color:var(--color-text, #00cc00);font-size:.875rem}.room-code-settings input[type=range]{width:100%;height:8px;background:var(--color-bg-tertiary, #2a2a2a);border-radius:var(--radius-full, 9999px);outline:none;-webkit-appearance:none}.room-code-settings input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;background:var(--color-primary, #00cc00);border-radius:50%;cursor:pointer}.room-code-settings input[type=range]::-moz-range-thumb{width:20px;height:20px;background:var(--color-primary, #00cc00);border-radius:50%;cursor:pointer;border:none}.room-code-settings label:has(input[type=checkbox]){flex-direction:row;align-items:center;gap:var(--spacing-sm, .5rem);cursor:pointer}.room-code-settings input[type=checkbox]{width:20px;height:20px;min-width:20px;min-height:20px;cursor:pointer;accent-color:var(--color-primary, #00cc00)}.room-options{display:flex;flex-direction:column;gap:var(--spacing-md, 1rem)}.room-options label{display:flex;align-items:center;gap:var(--spacing-sm, .5rem);cursor:pointer;color:var(--color-text, #00cc00);font-size:.875rem}.room-options input[type=checkbox]{width:20px;height:20px;min-width:20px;min-height:20px;cursor:pointer;accent-color:var(--color-primary, #00cc00)}.create-button,.join-button{padding:var(--spacing-md, 1rem) var(--spacing-lg, 1.5rem);background:var(--color-primary, rgba(0, 204, 0, .2));border:2px solid var(--color-primary, #00cc00);color:var(--color-text, #00cc00);cursor:pointer;font-family:inherit;font-size:1.125rem;font-weight:700;min-height:44px;border-radius:var(--radius-md, 8px);transition:all var(--transition-base, .25s ease)}.create-button:hover,.join-button:hover{background:var(--color-primary-hover, rgba(0, 255, 0, .3));border-color:var(--color-primary-hover, #00ff00);transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 8px rgba(0, 204, 0, .2))}.create-button:focus-visible,.join-button:focus-visible{outline:3px solid var(--color-focus, #00ffff);outline-offset:2px}.create-button:active,.join-button:active{transform:translateY(0)}.join-room-section input{padding:var(--spacing-md, 1rem);background:var(--color-bg-secondary, rgba(0, 0, 0, .5));border:2px solid var(--color-border, #00cc00);color:var(--color-text, #00cc00);font-family:inherit;font-size:1rem;border-radius:var(--radius-md, 8px);min-height:44px;width:100%;transition:border-color var(--transition-base, .25s ease)}.join-room-section input:focus{outline:none;border-color:var(--color-focus, #00ffff);box-shadow:0 0 0 3px #0ff3}.join-room-section input::placeholder{color:var(--color-text-muted, #888888)}@media (min-width: 768px){.room-manager{max-width:600px;margin:var(--spacing-xl, 2rem) auto;padding:var(--spacing-xl, 2rem);border:2px solid var(--color-border, #00cc00);border-radius:var(--radius-lg, 12px);background:var(--color-bg-secondary, rgba(0, 0, 0, .5));min-height:auto}.room-manager-header h1{font-size:2.5rem}.room-code-settings{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md, 1rem)}.room-options{display:grid;grid-template-columns:1fr 1fr}}@media (min-width: 1024px){.room-manager{max-width:700px;padding:var(--spacing-xl, 2rem) var(--spacing-xl, 3rem)}.mode-selector{gap:var(--spacing-md, 1rem)}.create-room-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl, 2rem)}}@media (prefers-reduced-motion: reduce){.create-button:hover,.join-button:hover{transform:none}}.video-call{width:100%;height:100%;display:flex;flex-direction:column;gap:var(--spacing-md, 1rem)}.video-grid{display:flex;flex-direction:column;gap:var(--spacing-md, 1rem);padding:var(--spacing-md, 1rem);flex:1;overflow-y:auto;min-height:0}.local-video,.remote-video{position:relative;background:var(--color-bg-tertiary, #000);border:2px solid var(--color-border, #00cc00);border-radius:var(--radius-md, 8px);overflow:hidden;width:100%;min-height:200px;aspect-ratio:16 / 9;transition:all var(--transition-base, .25s ease)}.local-video.active-speaker,.remote-video.active-speaker{border-color:var(--color-accent, #00cccc);border-width:3px;box-shadow:var(--shadow-glow, 0 0 20px rgba(0, 204, 0, .5));z-index:10}.local-video video,.remote-video video{width:100%;height:100%;object-fit:cover;display:block}.video-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,var(--color-bg-overlay, rgba(0, 0, 0, .75)),transparent);padding:var(--spacing-sm, .5rem) var(--spacing-md, 1rem);display:flex;align-items:center;gap:var(--spacing-xs, .25rem);z-index:5;min-height:40px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.user-name{color:var(--color-text, #00cc00);font-weight:700;font-size:.875rem;flex:1;min-width:0;text-shadow:0 1px 2px rgba(0,0,0,.8);margin-right:var(--spacing-xs, .25rem)}.indicator-group{display:flex;align-items:center;gap:var(--spacing-xs, .25rem);flex-shrink:0}.muted-indicator,.video-off-indicator,.speaking-indicator{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;background:#0009;border-radius:50%;padding:4px;box-shadow:0 2px 4px #00000080}.indicator-icon{width:100%;height:100%;display:block}.muted-indicator{color:#fff!important;background:#ed4245e6!important;border:2px solid var(--color-error, #ff4444)!important}.muted-indicator .indicator-icon{color:#fff!important;filter:drop-shadow(0 0 3px rgba(255,255,255,.8))}.video-off-indicator{color:#fff!important;background:#000000e6!important;border:2px solid var(--color-text-muted, #888888)!important}.video-off-indicator .indicator-icon{color:#fff!important;filter:drop-shadow(0 0 3px rgba(255,255,255,.8))}.speaking-indicator{color:var(--color-accent, #00cccc);background:#57f28733;border:1px solid var(--color-accent, #00cccc);animation:pulse 1s infinite}.speaking-indicator .indicator-icon{filter:drop-shadow(0 0 3px var(--color-accent, #00cccc))}.video-controls{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--spacing-sm, .5rem);padding:var(--spacing-md, 1rem);border-top:2px solid var(--color-border, #00cc00);background:var(--color-bg-secondary, rgba(0, 0, 0, .5));position:sticky;bottom:0;z-index:50}.video-controls button{padding:var(--spacing-md, 1rem);background:var(--color-bg-tertiary, rgba(0, 255, 0, .1));border:2px solid var(--color-border, #00cc00);color:var(--color-text, #00cc00);cursor:pointer;font-family:inherit;font-size:1rem;min-width:44px;min-height:44px;border-radius:var(--radius-md, 8px);transition:all var(--transition-base, .25s ease);display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs, .25rem)}.video-controls .icon{width:24px;height:24px;display:block;flex-shrink:0}.video-controls button.muted .icon,.video-controls button.video-off .icon{color:#fff!important;opacity:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.8))}.video-controls button.active .icon{color:var(--color-primary, #00ff00);opacity:1}.video-controls button:hover{background:var(--color-primary-hover, rgba(0, 255, 0, .2));border-color:var(--color-primary-hover, #00ff00);transform:translateY(-2px)}.video-controls button:focus-visible{outline:3px solid var(--color-focus, #00ffff);outline-offset:2px}.video-controls button.muted{background:var(--color-error, rgba(255, 68, 68, .9))!important;border-color:var(--color-error, #ff4444)!important;color:#fff!important}.video-controls button.muted .icon{color:#fff!important}.video-controls button.video-off{background:var(--color-error, rgba(255, 68, 68, .9))!important;border-color:var(--color-error, #ff4444)!important;color:#fff!important}.video-controls button.video-off .icon{color:#fff!important}@media (min-width: 768px){.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md, 1rem)}.local-video,.remote-video{min-height:225px;min-width:300px}.local-video.active-speaker,.remote-video.active-speaker{grid-column:span 2;min-height:300px}.video-controls{position:relative;border-top:none;border-top:2px solid var(--color-border, #00cc00)}}@media (min-width: 1024px){.video-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-lg, 1.5rem);padding:var(--spacing-lg, 1.5rem)}.video-grid:has(.local-video:only-child),.video-grid:has(.remote-video:only-child){grid-template-columns:1fr;max-width:1200px;margin:0 auto}.local-video,.remote-video{min-height:300px;min-width:400px;max-width:100%}.local-video.active-speaker,.remote-video.active-speaker{grid-column:span 2;min-height:500px;max-width:70%}.video-grid:has(.local-video:nth-child(2):last-child),.video-grid:has(.remote-video:nth-child(2):last-child){grid-template-columns:repeat(2,1fr)}.video-grid:has(.local-video:nth-child(4):last-child),.video-grid:has(.remote-video:nth-child(4):last-child){grid-template-columns:repeat(2,1fr)}.video-grid:has(.local-video:nth-child(5):last-child),.video-grid:has(.local-video:nth-child(6):last-child),.video-grid:has(.local-video:nth-child(7):last-child),.video-grid:has(.local-video:nth-child(8):last-child),.video-grid:has(.local-video:nth-child(9):last-child){grid-template-columns:repeat(3,1fr)}.video-controls{flex-wrap:nowrap;gap:var(--spacing-md, 1rem)}.video-controls button{flex:1;max-width:200px}}@media (min-width: 1024px){.video-grid.filmstrip{grid-template-columns:70% 1fr;grid-template-rows:auto}.video-grid.filmstrip .local-video.active-speaker,.video-grid.filmstrip .remote-video.active-speaker{grid-column:1;grid-row:1;min-height:500px;max-width:100%}.video-grid.filmstrip .remote-video:not(.active-speaker){width:120px;height:90px;min-width:120px;min-height:90px;grid-column:2}}.local-video video,.remote-video video{aria-label:attr(data-user-name)}@media (prefers-reduced-motion: reduce){.local-video,.remote-video{transition:none}.speaking-indicator{animation:none}.video-controls button:hover{transform:none}}.chat-panel{display:flex;flex-direction:column;height:100%;background:var(--color-bg-secondary, rgba(0, 0, 0, .5))}.chat-header{padding:var(--spacing-md, 1rem);border-bottom:2px solid var(--color-border, #00cc00);background:var(--color-bg-tertiary, rgba(0, 0, 0, .3));flex-shrink:0}.channel-selector{display:flex;gap:var(--spacing-xs, .25rem);margin-bottom:var(--spacing-sm, .5rem)}.channel-selector button{flex:1;padding:var(--spacing-sm, .5rem) var(--spacing-md, 1rem);background:var(--color-bg-tertiary, rgba(0, 255, 0, .1));border:2px solid var(--color-border, #00cc00);color:var(--color-text, #00cc00);cursor:pointer;font-family:inherit;font-size:.875rem;min-height:44px;border-radius:var(--radius-sm, 4px);transition:all var(--transition-base, .25s ease)}.channel-selector button:hover{background:var(--color-primary-hover, rgba(0, 255, 0, .2))}.channel-selector button:focus-visible{outline:3px solid var(--color-focus, #00ffff);outline-offset:2px}.channel-selector button.active{background:var(--color-primary, rgba(0, 204, 0, .3));border-color:var(--color-primary, #00cc00);font-weight:700}.dm-info{margin-top:var(--spacing-sm, .5rem);font-size:.875rem;color:var(--color-accent, #00cccc);padding:var(--spacing-xs, .25rem)}.chat-messages{flex:1;overflow-y:auto;padding:var(--spacing-md, 1rem);display:flex;flex-direction:column;gap:var(--spacing-md, 1rem);min-height:0;scroll-behavior:smooth}.chat-message{padding:var(--spacing-md, 1rem);background:var(--color-bg-tertiary, rgba(0, 255, 0, .05));border-left:3px solid var(--color-border, #00cc00);border-radius:var(--radius-sm, 4px);display:flex;flex-direction:column;gap:var(--spacing-xs, .25rem)}.chat-message.own{background:var(--color-bg-tertiary, rgba(0, 255, 0, .1));border-left-color:var(--color-accent, #00cccc);align-self:flex-end;max-width:85%}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs, .25rem);flex-wrap:wrap;gap:var(--spacing-xs, .25rem)}.sender-name{font-weight:700;color:var(--color-accent, #00cccc);font-size:.875rem}.message-time{font-size:.75rem;color:var(--color-text-muted, #888888)}.message-text{color:var(--color-text, #00cc00);font-size:.875rem;line-height:1.5;word-wrap:break-word}.dm-button{margin-top:var(--spacing-xs, .25rem);padding:var(--spacing-xs, .25rem) var(--spacing-sm, .5rem);background:var(--color-accent, rgba(0, 255, 255, .1));border:1px solid var(--color-accent, #00ffff);color:var(--color-accent, #00ffff);cursor:pointer;font-family:inherit;font-size:.75rem;border-radius:var(--radius-sm, 4px);min-height:32px;transition:all var(--transition-base, .25s ease)}.dm-button:hover{background:var(--color-accent-hover, rgba(0, 255, 255, .2))}.dm-button:focus-visible{outline:2px solid var(--color-focus, #00ffff);outline-offset:2px}.chat-input{padding:var(--spacing-md, 1rem);border-top:2px solid var(--color-border, #00cc00);display:flex;flex-direction:column;gap:var(--spacing-sm, .5rem);background:var(--color-bg-secondary, rgba(0, 0, 0, .5));flex-shrink:0}.chat-input textarea{flex:1;padding:var(--spacing-sm, .5rem);background:var(--color-bg-tertiary, rgba(0, 0, 0, .5));border:2px solid var(--color-border, #00cc00);color:var(--color-text, #00cc00);font-family:inherit;font-size:.875rem;resize:none;border-radius:var(--radius-sm, 4px);min-height:60px;max-height:120px;transition:border-color var(--transition-base, .25s ease)}.chat-input textarea:focus{outline:none;border-color:var(--color-focus, #00ffff);box-shadow:0 0 0 3px #0ff3}.chat-input textarea::placeholder{color:var(--color-text-muted, #888888)}.chat-input button{padding:var(--spacing-sm, .5rem) var(--spacing-md, 1rem);background:var(--color-primary, rgba(0, 204, 0, .2));border:2px solid var(--color-primary, #00cc00);color:var(--color-text, #00cc00);cursor:pointer;font-family:inherit;font-size:.875rem;min-height:44px;border-radius:var(--radius-sm, 4px);transition:all var(--transition-base, .25s ease)}.chat-input button:hover{background:var(--color-primary-hover, rgba(0, 255, 0, .3));border-color:var(--color-primary-hover, #00ff00)}.chat-input button:focus-visible{outline:3px solid var(--color-focus, #00ffff);outline-offset:2px}@media (min-width: 768px){.chat-input{flex-direction:row;align-items:flex-end}.chat-input textarea{min-height:44px;max-height:100px}.chat-message.own{max-width:70%}}@media (min-width: 1024px){.chat-messages{padding:var(--spacing-lg, 1.5rem)}.chat-message{padding:var(--spacing-md, 1rem) var(--spacing-lg, 1.5rem)}.message-text{font-size:1rem}}@media (prefers-reduced-motion: reduce){.chat-messages{scroll-behavior:auto}}.file-sharing-panel{display:flex;flex-direction:column;height:100%}.file-sharing-header{padding:1rem;border-bottom:1px solid #00ff00;display:flex;justify-content:space-between;align-items:center}.file-sharing-header button{padding:.5rem 1rem;background:#0f03;border:1px solid #00ff00;color:#0f0;cursor:pointer;font-family:inherit}.file-list{flex:1;overflow-y:auto;padding:1rem}.file-item{padding:1rem;margin-bottom:.5rem;background:#00ff000d;border:1px solid #00ff00}.file-info{display:flex;justify-content:space-between;margin-bottom:.5rem}.file-name{font-weight:700;color:#0f0}.file-size{color:#888;font-size:.9rem}.transfer-progress{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.progress-bar{flex:1;height:4px;background:#0f03;border-radius:2px}.progress-bar>div{height:100%;background:#0f0;border-radius:2px}.whiteboard-panel{display:flex;flex-direction:column;height:100%}.whiteboard-toolbar{padding:1rem;border-bottom:1px solid #00ff00;display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.tool-group{display:flex;gap:.5rem;align-items:center}.tool-group button{padding:.5rem 1rem;background:#00ff001a;border:1px solid #00ff00;color:#0f0;cursor:pointer;font-family:inherit}.tool-group button.active{background:#00ff004d}.tool-group button:disabled{opacity:.5;cursor:not-allowed}.whiteboard-canvas-container{flex:1;overflow:auto;background:#fff}.whiteboard-canvas{cursor:crosshair;display:block}.media-player-panel{display:flex;flex-direction:column;height:100%}.media-player-header{padding:1rem;border-bottom:1px solid #00ff00;display:flex;justify-content:space-between;align-items:center}.media-player-header select{padding:.5rem;background:#00000080;border:1px solid #00ff00;color:#0f0;font-family:inherit}.media-url-input{padding:1rem;border-bottom:1px solid #00ff00;display:flex;gap:.5rem}.media-url-input input{flex:1;padding:.5rem;background:#00000080;border:1px solid #00ff00;color:#0f0;font-family:inherit}.media-url-input button{padding:.5rem 1rem;background:#0f03;border:1px solid #00ff00;color:#0f0;cursor:pointer;font-family:inherit}.media-player-container{flex:1;padding:1rem;display:flex;align-items:center;justify-content:center}.media-info{padding:1rem;border-top:1px solid #00ff00;color:#888;font-size:.9rem}.watch-party{display:flex;flex-direction:column;height:100%}.watch-party-header{padding:1rem;border-bottom:1px solid #00ff00;display:flex;justify-content:space-between;align-items:center}.host-badge{padding:.25rem .5rem;background:#0f03;border:1px solid #00ff00;font-size:.8rem}.watch-party-controls{padding:1rem;border-bottom:1px solid #00ff00}.watch-party-controls input{width:100%;padding:.5rem;background:#00000080;border:1px solid #00ff00;color:#0f0;font-family:inherit}.watch-party-player{flex:1;padding:1rem;display:flex;align-items:center;justify-content:center}.watch-party-empty{flex:1;display:flex;align-items:center;justify-content:center;color:#888;font-size:1.2rem}.moderation-panel{display:flex;flex-direction:column;height:100%}.moderation-header{padding:1rem;border-bottom:1px solid #00ff00}.moderation-users,.moderation-banned{flex:1;overflow-y:auto;padding:1rem}.moderation-user-item{padding:1rem;margin-bottom:.5rem;background:#00ff000d;border:1px solid #00ff00}.user-info{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.role-badge{padding:.25rem .5rem;font-size:.75rem;border-radius:2px}.role-badge.host{background:#0f03;border:1px solid #00ff00;color:#0f0}.role-badge.mod{background:#ff03;border:1px solid #ffff00;color:#ff0}.muted-badge{padding:.25rem .5rem;background:#f003;border:1px solid #ff0000;color:red;font-size:.75rem}.moderation-actions{display:flex;gap:.5rem}.moderation-actions button{padding:.5rem;background:#00ff001a;border:1px solid #00ff00;color:#0f0;cursor:pointer;font-family:inherit;font-size:.8rem}.moderation-actions button.danger{background:#ff00001a;border-color:red;color:red}.banned-user-item{padding:.5rem;margin-bottom:.25rem;background:#ff00000d;border:1px solid #ff0000;display:flex;justify-content:space-between;align-items:center}.banned-user-item button{padding:.25rem .5rem;background:#00ff001a;border:1px solid #00ff00;color:#0f0;cursor:pointer;font-family:inherit;font-size:.8rem}.room-settings{padding:1rem}.room-settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.room-settings-header button{padding:.5rem 1rem;background:#00ff001a;border:1px solid #00ff00;color:#0f0;cursor:pointer;font-family:inherit}.setting-item label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.setting-item input[type=checkbox]{width:1.2rem;height:1.2rem;cursor:pointer}.recording-panel{position:fixed;bottom:1rem;right:1rem;background:#000000e6;border:2px solid #00ff00;padding:1rem;z-index:100}.recording-controls{display:flex;align-items:center;gap:1rem}.record-button,.stop-button{padding:.75rem 1.5rem;background:#0f03;border:1px solid #00ff00;color:#0f0;cursor:pointer;font-family:inherit}.stop-button{background:#f003;border-color:red;color:red}.recording-indicator{display:flex;align-items:center;gap:.5rem;color:red}.recording-dot{width:12px;height:12px;background:red;border-radius:50%;animation:pulse 1s infinite}.recordings-list{margin-top:1rem;padding-top:1rem;border-top:1px solid #00ff00}.recording-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;margin-bottom:.5rem;background:#00ff000d}.recording-item button{padding:.25rem .5rem;background:#00ff001a;border:1px solid #00ff00;color:#0f0;cursor:pointer;font-family:inherit;font-size:.8rem}.settings-modal{background:#000000f2;border:2px solid #00ff00;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #00ff00}.settings-header button{background:none;border:none;color:#0f0;font-size:2rem;cursor:pointer;padding:0;width:2rem;height:2rem}.settings-tabs{display:flex;border-bottom:1px solid #00ff00}.settings-tabs button{flex:1;padding:1rem;background:#00ff001a;border:none;border-right:1px solid #00ff00;color:#0f0;cursor:pointer;font-family:inherit}.settings-tabs button:last-child{border-right:none}.settings-tabs button.active{background:#00ff004d}.settings-content{flex:1;overflow-y:auto;padding:1rem}.settings-section{margin-bottom:2rem}.setting-item{margin-bottom:1rem}.setting-item label{display:block;margin-bottom:.5rem;color:#0f0}.setting-item select,.setting-item input[type=range]{width:100%;padding:.5rem;background:#00000080;border:1px solid #00ff00;color:#0f0;font-family:inherit}.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.theme-item{padding:2rem;background:#00ff001a;border:1px solid #00ff00;text-align:center;cursor:pointer}.version-item{margin-bottom:1.5rem;padding:1rem;background:#00ff000d;border-left:2px solid #00ff00}.version-item h4{margin-bottom:.5rem;color:#0ff}.version-item ul{list-style:none;padding-left:1rem}.version-item li{margin-bottom:.25rem;color:#0f0}.version-item li:before{content:"• ";color:#0ff}.user-list-panel{display:flex;flex-direction:column;height:100%}.user-list-header{padding:1rem;border-bottom:1px solid #00ff00}.user-list-content{flex:1;overflow-y:auto;padding:1rem}.user-list-item{display:flex;align-items:center;gap:1rem;padding:.75rem;margin-bottom:.5rem;background:#00ff000d;border:1px solid #00ff00}.user-avatar{width:40px;height:40px;border-radius:50%;background:#0f03;border:1px solid #00ff00;display:flex;align-items:center;justify-content:center;font-weight:700;color:#0f0}.user-details{flex:1;display:flex;flex-direction:column;gap:.25rem}.user-name{color:#0f0;font-weight:700}.user-badges{display:flex;gap:.25rem}.badge{padding:.125rem .25rem;font-size:.7rem;border-radius:2px}.badge.host{background:#0f03;border:1px solid #00ff00;color:#0f0}.badge.mod{background:#ff03;border:1px solid #ffff00;color:#ff0}.badge.muted{background:#f003;border:1px solid #ff0000;color:red}.banned-users-section{padding:1rem;border-top:1px solid #ff0000}.banned-users-section h4{color:red;margin-bottom:.5rem}.banned-user-item{padding:.5rem;margin-bottom:.25rem;background:#ff00000d;border:1px solid #ff0000;color:red}.empty-state{text-align:center;color:#888;padding:2rem}:root{--breakpoint-mobile: 320px;--breakpoint-tablet: 768px;--breakpoint-desktop: 1024px;--breakpoint-large: 1440px}@media (min-width: 768px){:root{--spacing-base: 1rem;--spacing-small: .5rem;--spacing-large: 2rem}}@media (min-width: 1024px){:root{--spacing-base: 1.5rem;--spacing-small: .75rem;--spacing-large: 3rem}}.mobile-only{display:block}@media (min-width: 768px){.mobile-only{display:none}}.tablet-up{display:none}@media (min-width: 768px){.tablet-up{display:block}}.desktop-up{display:none}@media (min-width: 1024px){.desktop-up{display:block}}.touch-target{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.container-mobile{width:100%;padding:0 1rem}@media (min-width: 768px){.container-mobile{max-width:600px;margin:0 auto;padding:0 2rem}}@media (min-width: 1024px){.container-mobile{max-width:1200px}}.grid-responsive{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 768px){.grid-responsive{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (min-width: 1024px){.grid-responsive{grid-template-columns:repeat(3,1fr);gap:2rem}}.text-responsive{font-size:1rem}@media (min-width: 768px){.text-responsive{font-size:1.125rem}}@media (min-width: 1024px){.text-responsive{font-size:1.25rem}}.spacing-responsive{padding:1rem}@media (min-width: 768px){.spacing-responsive{padding:1.5rem}}@media (min-width: 1024px){.spacing-responsive{padding:2rem}}:root[data-theme=default]{--color-bg: #0a0a0a;--color-bg-secondary: #1a1a1a;--color-bg-tertiary: #2a2a2a;--color-bg-overlay: rgba(0, 0, 0, .8);--color-text: #00cc00;--color-text-secondary: #00ff88;--color-text-muted: #888888;--color-text-inverse: #0a0a0a;--color-primary: #00cc00;--color-primary-hover: #00ff00;--color-primary-active: #00aa00;--color-accent: #00cccc;--color-accent-hover: #00ffff;--color-accent-active: #00aaaa;--color-success: #00cc00;--color-error: #ff4444;--color-warning: #ffaa00;--color-info: #00cccc;--color-border: #00cc00;--color-border-hover: #00ff00;--color-border-focus: #00ffff;--color-focus: #00ffff;--focus-width: 3px;--shadow-sm: 0 2px 4px rgba(0, 204, 0, .1);--shadow-md: 0 4px 8px rgba(0, 204, 0, .2);--shadow-lg: 0 8px 16px rgba(0, 204, 0, .3);--shadow-glow: 0 0 20px rgba(0, 204, 0, .5);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease}:root[data-theme=default]{color-scheme:dark}:root[data-theme=dark]{--color-bg: #1e1e1e;--color-bg-secondary: #2c2f33;--color-bg-tertiary: #36393f;--color-bg-overlay: rgba(0, 0, 0, .7);--color-text: #ffffff;--color-text-secondary: #dcddde;--color-text-muted: #72767d;--color-text-inverse: #1e1e1e;--color-primary: #5865f2;--color-primary-hover: #4752c4;--color-primary-active: #3c45a5;--color-accent: #57f287;--color-accent-hover: #43d67a;--color-accent-active: #2fb86e;--color-success: #57f287;--color-error: #ed4245;--color-warning: #faa61a;--color-info: #5865f2;--color-border: #40444b;--color-border-hover: #5865f2;--color-border-focus: #5865f2;--color-focus: #5865f2;--focus-width: 3px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .2);--shadow-md: 0 4px 8px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .4);--shadow-glow: 0 0 20px rgba(88, 101, 242, .3);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease}:root[data-theme=dark]{color-scheme:dark}:root[data-theme=light]{--color-bg: #ffffff;--color-bg-secondary: #f2f3f5;--color-bg-tertiary: #e3e5e8;--color-bg-overlay: rgba(255, 255, 255, .95);--color-text: #2c2f33;--color-text-secondary: #4f545c;--color-text-muted: #747f8d;--color-text-inverse: #ffffff;--color-primary: #5865f2;--color-primary-hover: #4752c4;--color-primary-active: #3c45a5;--color-accent: #57f287;--color-accent-hover: #43d67a;--color-accent-active: #2fb86e;--color-success: #248045;--color-error: #d32f2f;--color-warning: #f57c00;--color-info: #1976d2;--color-border: #d4d7dc;--color-border-hover: #5865f2;--color-border-focus: #5865f2;--color-focus: #5865f2;--focus-width: 3px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .1);--shadow-md: 0 2px 4px rgba(0, 0, 0, .15);--shadow-lg: 0 4px 8px rgba(0, 0, 0, .2);--shadow-glow: 0 0 20px rgba(88, 101, 242, .2);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease}:root[data-theme=light]{color-scheme:light}:root[data-theme=high-contrast]{--color-bg: #000000;--color-bg-secondary: #1a1a1a;--color-bg-tertiary: #333333;--color-bg-overlay: rgba(0, 0, 0, .95);--color-text: #ffffff;--color-text-secondary: #ffffff;--color-text-muted: #cccccc;--color-text-inverse: #000000;--color-primary: #00ff00;--color-primary-hover: #00cc00;--color-primary-active: #00aa00;--color-accent: #00ffff;--color-accent-hover: #00cccc;--color-accent-active: #00aaaa;--color-success: #00ff00;--color-error: #ff0000;--color-warning: #ffff00;--color-info: #00ffff;--color-border: #ffffff;--color-border-hover: #00ff00;--color-border-focus: #00ffff;--color-focus: #00ffff;--focus-width: 4px;--shadow-sm: 0 2px 4px rgba(255, 255, 255, .3);--shadow-md: 0 4px 8px rgba(255, 255, 255, .4);--shadow-lg: 0 8px 16px rgba(255, 255, 255, .5);--shadow-glow: 0 0 20px rgba(0, 255, 255, .8);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 6px;--radius-full: 50%;--transition-fast: .1s ease;--transition-base: .2s ease;--transition-slow: .3s ease}:root[data-theme=high-contrast]{color-scheme:dark}:root[data-theme=high-contrast] *{border-color:currentColor!important}:root[data-theme=high-contrast] button,:root[data-theme=high-contrast] a,:root[data-theme=high-contrast] input,:root[data-theme=high-contrast] select{border:2px solid currentColor!important}.trouvenet-app{width:100%;min-height:100vh;background:var(--color-bg, #0a0a0a);color:var(--color-text, #00cc00);font-family:VT323,Courier New,monospace;display:flex;flex-direction:column;position:relative}.trouvenet-header{display:flex;flex-direction:column;padding:var(--spacing-md, 1rem);border-bottom:2px solid var(--color-border, #00cc00);background:var(--color-bg-secondary, rgba(0, 0, 0, .5));position:sticky;top:0;z-index:100}.room-info{display:flex;flex-direction:column;gap:var(--spacing-sm, .5rem);margin-bottom:var(--spacing-md, 1rem)}.room-title{margin:0;font-size:1.25rem;color:var(--color-text, #00cc00);font-weight:400}.room-code{font-weight:700;color:var(--color-accent, #00cccc)}.role-badges{display:flex;gap:var(--spacing-sm, .5rem);flex-wrap:wrap}.host-badge,.mod-badge{padding:.25rem .5rem;background:var(--color-primary, rgba(0, 204, 0, .2));border:1px solid var(--color-primary, #00cc00);font-size:.75rem;border-radius:var(--radius-sm, 4px);font-weight:700}.mod-badge{background:var(--color-warning, rgba(255, 255, 0, .2));border-color:var(--color-warning, #ffff00);color:var(--color-warning, #ffff00)}.mobile-menu-toggle{display:block;padding:var(--spacing-sm, .5rem);background:var(--color-bg-tertiary, rgba(0, 255, 0, .1));border:1px solid var(--color-border, #00cc00);color:var(--color-text, #00cc00);cursor:pointer;font-family:inherit;font-size:1.5rem;min-width:44px;min-height:44px;border-radius:var(--radius-sm, 4px)}.mobile-menu-toggle:hover{background:var(--color-primary-hover, rgba(0, 255, 0, .2))}.mobile-menu-toggle:focus-visible{outline:3px solid var(--color-focus, #00ffff);outline-offset:2px}.header-controls{position:relative}.header-controls-menu{display:none;flex-direction:column;gap:var(--spacing-sm, .5rem);position:absolute;top:100%;left:0;right:0;background:var(--color-bg-secondary, rgba(0, 0, 0, .95));border:2px solid var(--color-border, #00cc00);border-radius:var(--radius-md, 8px);padding:var(--spacing-md, 1rem);margin-top:var(--spacing-sm, .5rem);z-index:200;max-height:calc(100vh - 200px);overflow-y:auto}.header-controls-menu.open{display:flex}.header-controls-menu button{width:100%;padding:var(--spacing-md, 1rem);background:var(--color-bg-tertiary, rgba(0, 255, 0, .1));border:1px solid var(--color-border, #00cc00);color:var(--color-text, #00cc00);cursor:pointer;font-family:inherit;font-size:1rem;min-height:44px;text-align:left;border-radius:var(--radius-sm, 4px);transition:all var(--transition-base, .25s ease)}.header-controls-menu button:hover,.header-controls-menu button[aria-pressed=true]{background:var(--color-primary-hover, rgba(0, 255, 0, .2));border-color:var(--color-primary-hover, #00ff00)}.header-controls-menu button:focus-visible{outline:3px solid var(--color-focus, #00ffff);outline-offset:2px}.header-controls-menu .leave-button{background:var(--color-error, rgba(255, 68, 68, .2));border-color:var(--color-error, #ff4444);color:#fff;margin-top:var(--spacing-sm, .5rem);font-weight:600}.header-controls-menu .leave-button:hover{background:var(--color-error, rgba(255, 68, 68, .5));color:#fff}@media (min-width: 768px){.trouvenet-header{flex-direction:row;justify-content:space-between;align-items:center;padding:var(--spacing-md, 1rem) var(--spacing-lg, 1.5rem)}.room-info{flex-direction:row;align-items:center;margin-bottom:0}.room-title{font-size:1.5rem}.mobile-menu-toggle{display:none}.header-controls-menu{display:flex;flex-direction:row;position:static;background:transparent;border:none;padding:0;margin:0;max-height:none;overflow:visible}.header-controls-menu button{width:auto;padding:var(--spacing-sm, .5rem) var(--spacing-md, 1rem);text-align:center;white-space:nowrap}}@media (min-width: 1024px){.trouvenet-header{padding:var(--spacing-md, 1rem) var(--spacing-xl, 2rem)}.header-controls-menu{gap:var(--spacing-md, 1rem)}}.trouvenet-main{flex:1;display:flex;flex-direction:column;position:relative;overflow:hidden}.video-section{flex:1;padding:var(--spacing-md, 1rem);overflow-y:auto;min-height:0}.sidebar-panel{position:fixed;bottom:0;left:0;right:0;height:70vh;max-height:600px;background:var(--color-bg-secondary, rgba(0, 0, 0, .95));border-top:2px solid var(--color-border, #00cc00);border-radius:var(--radius-lg, 12px) var(--radius-lg, 12px) 0 0;z-index:150;display:flex;flex-direction:column;box-shadow:var(--shadow-lg, 0 -8px 16px rgba(0, 204, 0, .3));animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (min-width: 768px){.trouvenet-main{flex-direction:row}.video-section{flex:1;min-width:0}.sidebar-panel{position:relative;width:300px;height:100%;max-height:none;border-top:none;border-left:2px solid var(--color-border, #00cc00);border-radius:0;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}}@media (min-width: 1024px){.sidebar-panel{width:320px}}.modal-overlay,.settings-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-bg-overlay, rgba(0, 0, 0, .8));display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md, 1rem);overflow-y:auto}.live-region{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media (prefers-reduced-motion: reduce){.sidebar-panel{animation:none}@keyframes slideUp,@keyframes slideInRight{from,to {transform: none;}}}.app{min-height:100vh;display:flex;flex-direction:column;position:relative}.app-header{text-align:center;padding:2rem;border-bottom:2px solid #00ff00;background:#00000080}.title{font-size:3rem;color:#0f0;text-shadow:0 0 10px #00ff00,0 0 20px #00ff00,0 0 30px #00ff00;letter-spacing:.5rem;margin-bottom:.5rem}.subtitle{font-size:1.2rem;color:#0f8;letter-spacing:.2rem}.secret-badge{margin-top:1rem;padding:.5rem 1rem;background:#ff00004d;border:1px solid #ff0000;color:red;display:inline-block;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.tab-nav{display:flex;justify-content:center;gap:1rem;padding:1rem;background:#0000004d;border-bottom:1px solid #00ff00;flex-wrap:wrap}.tab-nav button{padding:.75rem 1.5rem;background:transparent;border:1px solid #00ff00;color:#0f0;font-family:VT323,monospace;font-size:1.2rem;cursor:pointer;transition:all .3s;text-transform:uppercase}.tab-nav button:hover{background:#00ff001a;box-shadow:0 0 10px #0f0}.tab-nav button.active{background:#0f0;color:#000;box-shadow:0 0 20px #0f0}.tab-nav button.trouvenet-nav{position:relative;border:2px solid #00ffff;color:#0ff;background:#00ffff0d;box-shadow:0 0 10px #00ffff80,0 0 20px #00ffff4d,inset 0 0 10px #00ffff1a;animation:trouvenet-pulse 3s ease-in-out infinite;text-shadow:0 0 10px #00ffff}.tab-nav button.trouvenet-nav:hover{background:#00ffff26;box-shadow:0 0 15px #00ffffb3,0 0 30px #00ffff80,0 0 45px #00ffff4d,inset 0 0 15px #0ff3;transform:translateY(-2px)}.tab-nav button.trouvenet-nav.active{background:linear-gradient(135deg,#00ffff4d,#00ff004d);color:#0ff;border-color:#0ff;box-shadow:0 0 20px #0ffc,0 0 40px #0ff9,0 0 60px #0ff6,inset 0 0 20px #00ffff4d;text-shadow:0 0 15px #00ffff,0 0 25px #00ffff}@keyframes trouvenet-pulse{0%,to{box-shadow:0 0 10px #00ffff80,0 0 20px #00ffff4d,inset 0 0 10px #00ffff1a}50%{box-shadow:0 0 15px #00ffffb3,0 0 30px #00ffff80,0 0 45px #00ffff4d,inset 0 0 15px #0ff3}}@media (prefers-reduced-motion: reduce){.tab-nav button.trouvenet-nav{animation:none}}.app-main{flex:1;padding:2rem;display:flex;justify-content:center;align-items:flex-start}.app-footer{padding:1rem;background:#00000080;border-top:1px solid #00ff00}.terminal-output{font-size:1rem;color:#0f0;font-family:Courier New,monospace}.prompt{color:#0f8}.typing{animation:blink 1s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}[data-theme=dark] .app{background:#0a0a0a}[data-theme=dark] .app-header{background:#050505cc;border-bottom-color:#0c8}[data-theme=dark] .title{color:#0c8;text-shadow:0 0 10px #00cc88,0 0 20px #00cc88,0 0 30px #00cc88}[data-theme=dark] .subtitle{color:#0a6}[data-theme=dark] .tab-nav{background:#05050599;border-bottom-color:#0c8}[data-theme=dark] .tab-nav button{border-color:#0c8;color:#0c8}[data-theme=dark] .tab-nav button:hover{background:#00cc881a;box-shadow:0 0 10px #0c8}[data-theme=dark] .tab-nav button.active{background:#0c8;color:#000;box-shadow:0 0 20px #0c8}[data-theme=dark] .tab-nav button.trouvenet-nav{border-color:#9d4edd;color:#9d4edd;background:#9d4edd0d;box-shadow:0 0 10px #9d4edd80,0 0 20px #9d4edd4d,inset 0 0 10px #9d4edd1a;text-shadow:0 0 10px #9d4edd}[data-theme=dark] .tab-nav button.trouvenet-nav:hover{background:#9d4edd26;box-shadow:0 0 15px #9d4eddb3,0 0 30px #9d4edd80,0 0 45px #9d4edd4d,inset 0 0 15px #9d4edd33}[data-theme=dark] .tab-nav button.trouvenet-nav.active{background:linear-gradient(135deg,#9d4edd4d,#5865f24d);color:#c77dff;border-color:#9d4edd;box-shadow:0 0 20px #9d4eddcc,0 0 40px #9d4edd99,0 0 60px #9d4edd66,inset 0 0 20px #9d4edd4d;text-shadow:0 0 15px #c77dff,0 0 25px #c77dff}[data-theme=dark] .app-footer{background:#050505cc;border-top-color:#0c8}[data-theme=high-contrast] .app{background:#000}[data-theme=high-contrast] .app-header{background:#000;border-bottom:3px solid #ffffff}[data-theme=high-contrast] .title{color:#fff;text-shadow:none}[data-theme=high-contrast] .subtitle{color:#fff}[data-theme=high-contrast] .tab-nav{background:#000;border-bottom:2px solid #ffffff}[data-theme=high-contrast] .tab-nav button{border:2px solid #ffffff;color:#fff}[data-theme=high-contrast] .tab-nav button:hover{background:#fff;color:#000}[data-theme=high-contrast] .tab-nav button.active{background:#fff;color:#000;box-shadow:none}[data-theme=high-contrast] .tab-nav button.trouvenet-nav{border:3px solid #00ffff;color:#0ff;background:#00000080;box-shadow:0 0 15px #0ff,0 0 30px #0ff,inset 0 0 15px #0ff3;text-shadow:0 0 10px #00ffff}[data-theme=high-contrast] .tab-nav button.trouvenet-nav:hover{background:#0ff3;box-shadow:0 0 20px #0ff,0 0 40px #0ff,0 0 60px #0ff,inset 0 0 20px #00ffff4d}[data-theme=high-contrast] .tab-nav button.trouvenet-nav.active{background:#0ff;color:#000;border-color:#0ff;box-shadow:0 0 25px #0ff,0 0 50px #0ff,0 0 75px #0ff;text-shadow:none}[data-theme=high-contrast] .app-footer{background:#000;border-top:2px solid #ffffff}[data-theme=light] .tab-nav button.trouvenet-nav{border-color:#6366f1;color:#6366f1;background:#6366f10d;box-shadow:0 0 10px #6366f166,0 0 20px #6366f133,inset 0 0 10px #6366f11a;text-shadow:0 0 8px rgba(99,102,241,.6)}[data-theme=light] .tab-nav button.trouvenet-nav:hover{background:#6366f11a;box-shadow:0 0 15px #6366f199,0 0 30px #6366f166,0 0 45px #6366f133,inset 0 0 15px #6366f126}[data-theme=light] .tab-nav button.trouvenet-nav.active{background:linear-gradient(135deg,#6366f140,#8b5cf640);color:#4f46e5;border-color:#6366f1;box-shadow:0 0 20px #6366f1b3,0 0 40px #6366f180,0 0 60px #6366f14d,inset 0 0 20px #6366f133;text-shadow:0 0 12px rgba(99,102,241,.8)}.intel-reader-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:2rem;animation:fade-in .3s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.intel-reader-modal{background:#050505f2;border:1px solid rgba(255,255,255,.15);border-radius:14px;max-width:800px;max-height:85vh;width:100%;display:flex;flex-direction:column;box-shadow:0 0 40px #000c;animation:slide-up .4s ease-out}@keyframes slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.intel-reader-modal.red{border-color:#ff4d4d66;box-shadow:0 0 30px #ff4d4d33}.intel-reader-modal.orange{border-color:#ff9f4366;box-shadow:0 0 30px #ff9f4333}.intel-reader-modal.yellow{border-color:#ffee5866;box-shadow:0 0 30px #ffee5833}.intel-reader-modal.green{border-color:#6f96;box-shadow:0 0 30px #6f93}.intel-reader-modal.blue{border-color:#64c8ff66;box-shadow:0 0 30px #64c8ff33}.intel-reader-modal.indigo{border-color:#9986ff66;box-shadow:0 0 30px #9986ff33}.intel-reader-modal.violet{border-color:#d67cff66;box-shadow:0 0 30px #d67cff33}.intel-reader-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid rgba(255,255,255,.1)}.intel-reader-title{font-size:1.1rem;text-transform:uppercase;letter-spacing:.2em;color:#f5f5f5;margin:0}.intel-reader-close{background:transparent;border:1px solid rgba(255,255,255,.2);color:#f5f5f5;font-size:2rem;line-height:1;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:4px;transition:all .2s ease}.intel-reader-close:hover{background:#ffffff1a;border-color:#ffffff4d}.intel-reader-content{flex:1;overflow-y:auto;padding:2rem;font-family:IBM Plex Mono,Courier New,monospace;line-height:1.8;color:#f5f5f5e6}.intel-reader-loading,.intel-reader-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#ffffff80;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.intel-reader-error{color:#ff6b6b}.dossier-content{animation:fade-in-text .6s ease-out}@keyframes fade-in-text{0%{opacity:0}to{opacity:1}}.dossier-h1{font-size:2rem;margin:0 0 1.5rem;text-transform:uppercase;letter-spacing:.1em;color:#f5f5f5;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.75rem}.dossier-h2{font-size:1.5rem;margin:2rem 0 1rem;text-transform:uppercase;letter-spacing:.1em;color:#f5f5f5f2}.dossier-p{margin:0 0 1.25rem;font-size:.95rem;line-height:1.8}@media (max-width: 720px){.intel-reader-overlay{padding:1rem}.intel-reader-modal{max-height:90vh}.intel-reader-header{padding:1rem 1.5rem}.intel-reader-content{padding:1.5rem}.dossier-h1{font-size:1.5rem}.dossier-h2{font-size:1.25rem}}:root{--accent-red: #ff4d4d;--accent-orange: #ff9f43;--accent-yellow: #ffee58;--accent-green: #66ff99;--accent-blue: #64c8ff;--accent-indigo: #9986ff;--accent-violet: #d67cff;--accent-current: rgba(255, 255, 255, .08);--terminal-border: rgba(255, 255, 255, .08)}.afterdark{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse at top,#0a0a0af2,#020202 60%);color:#f5f5f5;font-family:IBM Plex Mono,Courier New,monospace;letter-spacing:.02em;transition:background .8s ease,color .6s ease,--accent-current .6s ease;position:relative}.afterdark.loading{justify-content:center;align-items:center;font-size:1.2rem}.afterdark-header,.afterdark-footer{padding:1.75rem 3rem;background:#0009;border-bottom:1px solid rgba(255,255,255,.08)}.afterdark-footer{border-top:1px solid rgba(255,255,255,.08);border-bottom:none;font-size:.85rem;text-transform:uppercase;letter-spacing:.2em;text-align:center}.afterdark-header{display:flex;justify-content:space-between;align-items:center;gap:2rem}.brand-block .logo{font-size:1.2rem;text-transform:uppercase;letter-spacing:.3em}.brand-block .subline{margin-top:.5rem;font-size:.85rem;color:#f5f5f599;letter-spacing:.25em}.session-block{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;text-transform:uppercase;letter-spacing:.18em}.session-label{font-size:.7rem;color:#f5f5f580}.session-value{font-size:.95rem}.afterdark-main{flex:1;display:grid;grid-template-columns:minmax(320px,1.1fr) minmax(240px,.9fr);grid-template-rows:minmax(420px,auto) minmax(320px,auto);gap:2rem;padding:2rem 3rem 3rem}.terminal-section{grid-column:1 / 2;grid-row:1 / 2;background:#050505a6;border:1px solid var(--terminal-border);border-radius:14px;padding:1.5rem;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:border-color .6s ease,box-shadow .6s ease;box-shadow:0 0 #fff0}.status-section{grid-column:2 / 3;grid-row:1 / 3;background:#0505058c;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:1.5rem;overflow:auto}.intel-section{grid-column:1 / 2;grid-row:2 / 3;background:#0505058c;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:1.5rem;overflow:hidden}.terminal{display:flex;flex-direction:column;height:100%}.terminal-screen{flex:1;overflow-y:auto;font-size:.95rem;line-height:1.6;padding-right:.5rem}.terminal-line{margin-bottom:.5rem;white-space:pre-wrap}.terminal-line.system{color:#f5f5f5cc}.terminal-line.error{color:#ff6b6b}.terminal-line.success{color:#8be564}.terminal-line.command{color:#f5f5f5;font-weight:600}.terminal-input-row{display:flex;align-items:center;gap:.75rem;margin-top:1rem;border-top:1px solid rgba(255,255,255,.08);padding-top:1rem}.terminal-prompt{color:#f5f5f599}.terminal-input-row input{flex:1;background:transparent;border:none;outline:none;color:#f5f5f5;font-family:inherit;font-size:1rem;padding:.3rem 0}.terminal-input-row input::placeholder{color:#f5f5f559}.spectrum-status{display:flex;flex-direction:column;gap:1.25rem}.spectrum-status h2,.intel-deck h2{font-size:1rem;letter-spacing:.35em;text-transform:uppercase;color:#f5f5f5bf}.spectrum-grid,.aux-grid{list-style:none;padding:0;margin:0;display:grid;gap:.75rem}.spectrum-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.aux-grid{grid-template-columns:1fr}.spectrum-cell{border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:1rem;min-height:110px;display:flex;flex-direction:column;justify-content:space-between;transition:border-color .6s ease,box-shadow .6s ease,background .6s ease,transform .3s ease;position:relative;overflow:hidden}.spectrum-cell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .6s ease;pointer-events:none}.spectrum-cell .cell-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;line-height:1.4}.spectrum-cell .cell-status{font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:#f5f5f573}.spectrum-cell.unlocked{border-color:#ffffff59;box-shadow:0 0 22px #ffffff1f;animation:pulse-glow 2s ease-in-out infinite}.spectrum-cell.unlocked.red:before{background:radial-gradient(circle,rgba(255,77,77,.15),transparent 70%);opacity:1}.spectrum-cell.unlocked.orange:before{background:radial-gradient(circle,rgba(255,159,67,.15),transparent 70%);opacity:1}.spectrum-cell.unlocked.yellow:before{background:radial-gradient(circle,rgba(255,238,88,.15),transparent 70%);opacity:1}.spectrum-cell.unlocked.green:before{background:radial-gradient(circle,rgba(102,255,153,.15),transparent 70%);opacity:1}.spectrum-cell.unlocked.blue:before{background:radial-gradient(circle,rgba(100,200,255,.15),transparent 70%);opacity:1}.spectrum-cell.unlocked.indigo:before{background:radial-gradient(circle,rgba(153,134,255,.15),transparent 70%);opacity:1}.spectrum-cell.unlocked.violet:before{background:radial-gradient(circle,rgba(214,124,255,.15),transparent 70%);opacity:1}@keyframes pulse-glow{0%,to{box-shadow:0 0 22px #ffffff1f}50%{box-shadow:0 0 32px #fff3}}.aux-divider{height:1px;background:linear-gradient(to right,transparent,rgba(255,255,255,.15),transparent);margin:.25rem 0 .75rem}.intel-deck{display:flex;flex-direction:column;gap:1.25rem;height:100%}.intel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;overflow-y:auto;padding-right:.5rem}.intel-card{border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:1rem;display:flex;flex-direction:column;gap:.75rem;min-height:220px;transition:border-color .6s ease,box-shadow .6s ease,background .6s ease,transform .3s ease;cursor:default;position:relative}.intel-card.active{cursor:pointer}.intel-card.active:hover{transform:translateY(-2px)}.intel-card.locked{opacity:.5}.intel-card.active{border-color:#ffffff40;box-shadow:0 0 18px #ffffff1a;animation:card-pulse 3s ease-in-out infinite}.intel-card.active.red{border-color:#ff4d4d66;box-shadow:0 0 20px #ff4d4d33}.intel-card.active.orange{border-color:#ff9f4366;box-shadow:0 0 20px #ff9f4333}.intel-card.active.yellow{border-color:#ffee5866;box-shadow:0 0 20px #ffee5833}.intel-card.active.green{border-color:#6f96;box-shadow:0 0 20px #6f93}.intel-card.active.blue{border-color:#64c8ff66;box-shadow:0 0 20px #64c8ff33}.intel-card.active.indigo{border-color:#9986ff66;box-shadow:0 0 20px #9986ff33}.intel-card.active.violet{border-color:#d67cff66;box-shadow:0 0 20px #d67cff33}@keyframes card-pulse{0%,to{box-shadow:0 0 18px #ffffff1a}50%{box-shadow:0 0 28px #ffffff26}}.intel-card h3{font-size:1rem;text-transform:uppercase;letter-spacing:.18em}.intel-card p{font-size:.85rem;line-height:1.6;color:#f5f5f5cc}.intel-card footer{margin-top:auto;display:flex;flex-direction:column;gap:.35rem;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase}.intel-status{color:#f5f5f5b3}.intel-hint{color:#f5f5f566}.afterdark.theme-red{--accent-current: var(--accent-red);--terminal-border: rgba(255, 77, 77, .3);background:radial-gradient(circle at 20% 20%,rgba(255,77,77,.08),transparent 50%),radial-gradient(ellipse at top,#0a0a0af2,#020202 60%)}.afterdark.theme-orange{--accent-current: var(--accent-orange);--terminal-border: rgba(255, 159, 67, .3);background:radial-gradient(circle at 80% 10%,rgba(255,159,67,.08),transparent 50%),radial-gradient(ellipse at top,#0a0a0af2,#020202 60%)}.afterdark.theme-yellow{--accent-current: var(--accent-yellow);--terminal-border: rgba(255, 238, 88, .3);background:radial-gradient(circle at 50% 0%,rgba(255,238,88,.08),transparent 50%),radial-gradient(ellipse at top,#0a0a0af2,#020202 60%)}.afterdark.theme-green{--accent-current: var(--accent-green);--terminal-border: rgba(102, 255, 153, .3);background:radial-gradient(circle at 10% 80%,rgba(102,255,153,.08),transparent 50%),radial-gradient(ellipse at top,#0a0a0af2,#020202 60%)}.afterdark.theme-blue{--accent-current: var(--accent-blue);--terminal-border: rgba(100, 200, 255, .3);background:radial-gradient(circle at 90% 80%,rgba(100,200,255,.08),transparent 50%),radial-gradient(ellipse at top,#0a0a0af2,#020202 60%)}.afterdark.theme-indigo{--accent-current: var(--accent-indigo);--terminal-border: rgba(153, 134, 255, .3);background:radial-gradient(circle at 30% 40%,rgba(153,134,255,.08),transparent 50%),radial-gradient(ellipse at top,#0a0a0af2,#020202 60%)}.afterdark.theme-violet{--accent-current: var(--accent-violet);--terminal-border: rgba(214, 124, 255, .3);background:radial-gradient(circle at 70% 60%,rgba(214,124,255,.08),transparent 50%),radial-gradient(ellipse at top,#0a0a0af2,#020202 60%)}.afterdark.theme-red.theme-orange{background:radial-gradient(circle at 20% 20%,rgba(255,77,77,.08),transparent 50%),radial-gradient(circle at 80% 10%,rgba(255,159,67,.08),transparent 50%),radial-gradient(ellipse at top,#0a0a0af2,#020202 60%)}.afterdark.theme-red.theme-orange.theme-yellow{background:radial-gradient(circle at 20% 20%,rgba(255,77,77,.08),transparent 50%),radial-gradient(circle at 80% 10%,rgba(255,159,67,.08),transparent 50%),radial-gradient(circle at 50% 0%,rgba(255,238,88,.08),transparent 50%),radial-gradient(ellipse at top,#0a0a0af2,#020202 60%)}.afterdark.theme-red .terminal-section{box-shadow:0 0 20px #ff4d4d26}.afterdark.theme-orange .terminal-section{box-shadow:0 0 20px #ff9f4326}.afterdark.theme-yellow .terminal-section{box-shadow:0 0 20px #ffee5826}.afterdark.theme-green .terminal-section{box-shadow:0 0 20px #66ff9926}.afterdark.theme-blue .terminal-section{box-shadow:0 0 20px #64c8ff26}.afterdark.theme-indigo .terminal-section{box-shadow:0 0 20px #9986ff26}.afterdark.theme-violet .terminal-section{box-shadow:0 0 20px #d67cff26}.theme-red .terminal-line.success{color:var(--accent-red);text-shadow:0 0 8px var(--accent-red)}.theme-orange .terminal-line.success{color:var(--accent-orange);text-shadow:0 0 8px var(--accent-orange)}.theme-yellow .terminal-line.success{color:var(--accent-yellow);text-shadow:0 0 8px var(--accent-yellow)}.theme-green .terminal-line.success{color:var(--accent-green);text-shadow:0 0 8px var(--accent-green)}.theme-blue .terminal-line.success{color:var(--accent-blue);text-shadow:0 0 8px var(--accent-blue)}.theme-indigo .terminal-line.success{color:var(--accent-indigo);text-shadow:0 0 8px var(--accent-indigo)}.theme-violet .terminal-line.success{color:var(--accent-violet);text-shadow:0 0 8px var(--accent-violet)}.unlock-flash{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;animation:flash-fade 1.2s ease-out forwards}@keyframes flash-fade{0%{opacity:0}20%{opacity:.4}to{opacity:0}}.unlock-flash.red{background:radial-gradient(circle,rgba(255,77,77,.3),transparent 70%)}.unlock-flash.orange{background:radial-gradient(circle,rgba(255,159,67,.3),transparent 70%)}.unlock-flash.yellow{background:radial-gradient(circle,rgba(255,238,88,.3),transparent 70%)}.unlock-flash.green{background:radial-gradient(circle,rgba(102,255,153,.3),transparent 70%)}.unlock-flash.blue{background:radial-gradient(circle,rgba(100,200,255,.3),transparent 70%)}.unlock-flash.indigo{background:radial-gradient(circle,rgba(153,134,255,.3),transparent 70%)}.unlock-flash.violet{background:radial-gradient(circle,rgba(214,124,255,.3),transparent 70%)}@media (max-width: 1200px){.afterdark-main{grid-template-columns:1fr;grid-template-rows:auto}.status-section{grid-column:1 / 2;grid-row:2 / 3}.intel-section{grid-column:1 / 2;grid-row:3 / 4}}@media (max-width: 720px){.afterdark-header,.afterdark-footer{padding:1.5rem 1.25rem}.afterdark-main{padding:1.5rem}.terminal-section,.status-section,.intel-section{padding:1.25rem}.brand-block .logo{font-size:1rem}.session-block{align-items:flex-start}}*{margin:0;padding:0;box-sizing:border-box}body{background:linear-gradient(135deg,#0a0a0a,#1a1a2e);color:#0f0;font-family:VT323,Courier New,monospace;min-height:100vh;overflow-x:hidden}#root{width:100%;min-height:100vh}@keyframes glitch{0%,to{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(-2px,-2px)}60%{transform:translate(2px,2px)}80%{transform:translate(2px,-2px)}}.glitch{animation:glitch .3s infinite}@keyframes scanline{0%{transform:translateY(0);opacity:.8}to{transform:translateY(100vh);opacity:.3}}.scanline{position:fixed;top:0;left:0;width:100%;height:2px;background:#00ff004d;animation:scanline 8s linear infinite;pointer-events:none;z-index:9999}
