.tuner-canvas{width:100%;height:100%}.settings-panel{position:fixed;bottom:2rem;right:2rem;display:flex;flex-direction:column;align-items:flex-end;gap:1rem;z-index:100}.settings-toggle{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#ccc;padding:.5rem 1rem;border-radius:20px;cursor:pointer;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:all .2s}.settings-toggle:hover{background:#fff3;color:#fff}.settings-content{display:flex;flex-direction:column;gap:1.5rem;padding:1rem;color:#ffffffe6}.setting-group{display:flex;flex-direction:column;gap:.5rem}.setting-group label{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;font-weight:500}.setting-group input[type=range]{width:100%}.setting-group input[type=range] .hint{font-size:.75rem;color:#888;font-style:italic}.tuner-body{position:relative;width:340px;height:520px;margin:0 auto;border-radius:40px;background:linear-gradient(145deg,#2a2a2a,#222);box-shadow:20px 20px 60px #1a1a1a,-20px -20px 60px #323232,inset 0 0 0 2px #ffffff0d;display:flex;flex-direction:column;align-items:center;padding:30px;gap:25px;box-sizing:border-box}.tuner-screen-bezel{width:100%;flex:1;background:#000;border-radius:20px;padding:4px;box-shadow:inset 2px 2px 5px #000c,inset -1px -1px 2px #ffffff1a;position:relative;overflow:hidden}.gauge-wrapper canvas{width:100%!important;height:auto!important;max-width:100%;display:block}.tuner-screen{width:100%;height:100%;background:#080808;border-radius:16px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:1.5rem;box-sizing:border-box;background-image:linear-gradient(160deg,rgba(255,255,255,.03) 0%,transparent 40%)}.tuner-main-display{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;max-width:100%;overflow:hidden;animation:screenOn .4s ease-out}@keyframes screenOn{0%{opacity:0;filter:blur(5px)}to{opacity:1;filter:blur(0)}}.tuner-controls{width:100%;display:flex;justify-content:center;align-items:center;padding-bottom:10px}.three-way-switch{display:flex;flex-direction:column;gap:8px;align-items:center;width:200px}.switch-labels{display:flex;justify-content:space-between;width:100%;padding:0 10px}.switch-labels span{font-size:.7rem;font-weight:700;color:#ffffff4d;letter-spacing:1px;cursor:pointer;width:33%;text-align:center}.switch-track-horiz{width:100%;height:36px;background:#151515;border-radius:18px;position:relative;box-shadow:inset 2px 2px 5px #000c,inset -1px -1px 2px #ffffff1a;border:1px solid rgba(255,255,255,.05);display:flex;touch-action:none;cursor:pointer}.switch-zone{flex:1;z-index:2}.switch-slider-knob{position:absolute;top:2px;left:2px;width:calc(33.333% - 4px);height:30px;background:linear-gradient(145deg,#3a3a3a,#2a2a2a);border-radius:15px;box-shadow:0 2px 4px #0006,inset 1px 1px 2px #fff3;pointer-events:none;z-index:1}.switch-slider-knob:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:4px;height:12px;background:#00000080;border-radius:2px}.gauge-wrapper{width:100%;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:0}.note-info{text-align:center;margin-bottom:2rem;width:100%}.note-name{font-size:4rem;font-weight:700;line-height:1;margin-bottom:.5rem;font-variant-numeric:tabular-nums;letter-spacing:-2px;text-shadow:0 0 10px rgba(255,255,255,.1)}.note-octave-sub{font-size:1.5rem;font-weight:400;opacity:.6;margin-left:2px;vertical-align:super}.freq-stats{display:flex;align-items:center;justify-content:center;gap:1rem;font-family:Geist Mono,monospace;font-size:.9rem;color:#ffffff80}.stat-item small{font-size:.7em;opacity:.7;margin-left:2px}.stat-separator{opacity:.2}.text-green-400{color:#4ade80;text-shadow:0 0 20px rgba(74,222,128,.4)}.text-yellow-400{color:#facc15}.text-red-400{color:#f87171}.screen-header{display:flex;justify-content:center;border-bottom:1px solid rgba(241,245,251,.1);padding-bottom:.5rem}.screen-header h3{margin:0;font-size:.9rem;text-transform:uppercase;letter-spacing:2px;font-weight:600;color:#fffc}:root{--root-font-family: "Inter", system-ui, -apple-system, sans-serif;--line-height: 1.5;--font-weight: 400;--color-bg: #121212;--color-text: #e0e0e0;--color-primary: #646cff;--color-accent: #535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;background-color:var(--color-bg);background-image:radial-gradient(circle at 50% 0%,#1e1e24,#121212);color:var(--color-text);font-family:var(--root-font-family);-webkit-font-smoothing:antialiased}.app-container{width:100%;max-width:800px;margin:0 auto;padding:2rem;text-align:center}header h1{font-weight:200;letter-spacing:.1em;text-transform:uppercase;font-size:1.5rem;opacity:.6;margin-bottom:4rem}.tuner-scene{display:flex;flex-direction:column;align-items:center;gap:2.5rem;perspective:1000px}.controls-area{z-index:100}.mic-button{padding:1.2em 2.5em;font-size:1.1em;font-weight:600;letter-spacing:.05em;background-color:transparent;color:var(--color-primary);border:1px solid var(--color-primary);border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 0 15px #646cff1a}.mic-button:hover{background-color:#646cff1a;box-shadow:0 0 25px #646cff4d;transform:translateY(-2px)}.mic-button.active{background-color:#ff4b4b1a;color:#ff4b4b;border-color:#ff4b4b;box-shadow:0 0 15px #ff4b4b1a}.mic-button.active:hover{background-color:#ff4b4b33;box-shadow:0 0 25px #ff4b4b4d}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
