body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-shell{--gray-tone:58%;--surface-alpha:0.56;--surface-rgb:19,22,26;--glass-blur:16px;--stroke-strength:0.5;--bg:#111417;--bg-elevated:linear-gradient(135deg,rgba(var(--surface-rgb),var(--surface-alpha)),rgba(var(--surface-rgb),0));--panel:#ffffff0a;--panel-strong:#ffffff14;--panel-soft:rgba(255,255,255,calc(var(--surface-alpha)*0.35));--text:#edf2f7;--muted:#edf2f7b3;--line:rgba(255,255,255,calc(var(--stroke-strength)*0.24));--accent:#ffffffe6;--shadow:#00000059;background:radial-gradient(circle at top left,#ffffff17,#0000 30%),radial-gradient(circle at bottom right,#ffffff0f,#0000 28%),linear-gradient(135deg,var(--bg),color-mix(in srgb,var(--bg) 78%,#dfe6ef 22%));color:var(--text);isolation:isolate;min-height:100vh;overflow:hidden;padding:28px clamp(18px,4vw,52px) 40px;position:relative;transition:background .35s ease,color .35s ease}.app-shell:after,.app-shell:before{content:"";inset:-12% -8%;pointer-events:none;position:absolute;z-index:0}.app-shell:before{animation:webDrift 22s linear infinite;background-image:linear-gradient(#ffffff14 1px,#0000 0),linear-gradient(90deg,#ffffff14 1px,#0000 0),linear-gradient(130deg,#0000,#ffffff0f 46%,#0000 54%);background-position:50%;background-size:126px 126px,126px 126px,100% 100%;opacity:.75;transform:perspective(1000px) rotateX(72deg) scale(1.5)}.app-shell:after{animation:webSweep 18s ease-in-out infinite alternate;background-image:linear-gradient(120deg,#0000,#ffffff1a 42%,#0000 58%),linear-gradient(45deg,#0000,#ffffff14 50%,#0000 62%);background-position:0 0,100% 100%;background-size:130% 130%,120% 120%;inset:0;opacity:.6}.app-shell.light{--bg:#eef1f4;--surface-rgb:255,255,255;--panel:#1114170a;--panel-strong:#11141714;--panel-soft:rgba(17,20,23,calc(var(--surface-alpha)*0.22));--text:#1b1f24;--muted:#1b1f24b3;--line:rgba(18,21,25,calc(var(--stroke-strength)*0.24));--accent:#111417e6;--shadow:#1f23261f;background:radial-gradient(circle at top left,#14171c14,#0000 32%),radial-gradient(circle at bottom right,#14171c0a,#0000 26%),linear-gradient(135deg,var(--bg),#dfe4ea)}.glass-modal,.hero-panel,.status-panel,.topbar{backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));background:var(--bg-elevated);border:1px solid var(--line);box-shadow:0 18px 50px -28px var(--shadow)}.topbar{align-items:center;border-radius:22px;display:flex;gap:14px;justify-content:space-between;margin:0 auto 28px;max-width:1180px;padding:14px 18px;position:relative;z-index:2}.logo-card-image{height:4in;object-fit:contain;width:4in}.close-button svg,.icon-button svg,.menu-item svg,.spark-icon svg{display:block;height:18px;width:18px}.eyebrow{color:var(--muted);font-size:.7rem;letter-spacing:.18em;margin:0;text-transform:uppercase}.brand h1,.hero-copy h2,.modal-header h3,.panel-header h3{letter-spacing:-.05em;margin:0}.brand h1{font-size:clamp(1rem,2vw,1.4rem)}.menu{align-items:center;background:#ffffff05;border:1px solid var(--line);border-radius:18px;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:6px}.close-button,.icon-button,.link-button,.menu-item,.primary-action,.secondary-action,.theme-option{font:inherit}.menu-item{align-items:center;background:#0000;border:1px solid #0000;border-radius:12px;color:var(--muted);cursor:pointer;display:inline-flex;gap:8px;padding:10px 12px;transition:all .2s ease}.close-button:focus-visible,.close-button:hover,.icon-button:focus-visible,.icon-button:hover,.link-button:focus-visible,.link-button:hover,.menu-item:focus-visible,.menu-item:hover,.secondary-action:focus-visible,.secondary-action:hover,.theme-option:focus-visible,.theme-option:hover{background:#ffffff0d;border-color:var(--line);outline:none}.menu-item span{font-size:.8rem}.topbar-actions{align-items:center;display:flex;gap:10px}.admin-menu{position:relative}.admin-menu-trigger{align-items:center;background:#ffffff08;border:1px solid var(--line);border-radius:12px;color:var(--text);cursor:pointer;display:inline-flex;font:inherit;gap:8px;min-height:42px;padding:0 12px}.admin-menu-trigger:focus-visible,.admin-menu-trigger:hover{background:#ffffff14;border-color:var(--line);outline:none}.admin-menu-trigger svg{height:16px;width:16px}.admin-menu-dropdown{background:var(--bg);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 32px -16px var(--shadow);min-width:150px;padding:6px;position:absolute;right:0;top:calc(100% + 8px);z-index:5}.admin-menu-dropdown button{background:#0000;border:0;border-radius:9px;color:var(--text);cursor:pointer;font:inherit;padding:10px 12px;text-align:left;width:100%}.admin-menu-dropdown button:focus-visible,.admin-menu-dropdown button:hover{background:var(--panel-strong);outline:none}.close-button,.icon-button{background:#ffffff08;border:1px solid var(--line);border-radius:12px;color:var(--text);cursor:pointer;display:grid;height:42px;place-items:center;transition:all .2s ease;width:42px}.connection-button{position:relative}.home-button{color:#0f6}.home-button:focus-visible,.home-button:hover{background:#00ff661a;border-color:#00ff668c;box-shadow:0 0 14px #00ff6629;color:#0f6}.topbar-alert-button{position:relative}.topbar-unread-count{background:#ef4444;border:2px solid var(--bg-elevated);border-radius:999px;color:#fff;display:grid;font-size:.64rem;font-weight:800;height:18px;line-height:1;min-width:18px;padding:0 4px;place-items:center;position:absolute;right:-5px;top:-5px}.connection-indicator{background:#858b93;border:1px solid var(--bg);border-radius:50%;bottom:5px;height:8px;position:absolute;right:5px;width:8px}.connection-button.connected .connection-indicator{background:#6eb98a}.content{grid-gap:28px;display:grid;gap:28px;grid-template-columns:1.6fr .9fr;margin:0 auto;max-width:1180px;position:relative;z-index:1}.glass-panel{border-radius:28px;padding:clamp(22px,2vw,30px)}.logo-panel{display:grid;grid-column:1/-1;place-items:center}.hero-panel{grid-gap:20px;align-items:center;display:grid;gap:20px;grid-template-columns:1.2fr .8fr;min-height:430px}.hero-copy{display:flex;flex-direction:column;gap:18px}.hero-copy h2{font-size:clamp(2.6rem,4vw,4.3rem);line-height:.96;max-width:560px}.lede{color:var(--muted);font-size:1.04rem;line-height:1.7;margin:0;max-width:560px}.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.primary-action,.secondary-action{align-items:center;border-radius:12px;display:inline-flex;justify-content:center;padding:13px 18px;text-decoration:none;transition:transform .2s ease,background .2s ease}.primary-action{background:linear-gradient(135deg,#ffffffe6,#afb6c0f0);border:1px solid #fff6;color:#101214;font-weight:700}.secondary-action{background:#0000;border:1px solid var(--line);color:var(--text);cursor:pointer}.primary-action:focus-visible,.primary-action:hover,.secondary-action:focus-visible,.secondary-action:hover{transform:translateY(-1px)}.hero-visual{display:flex;flex-direction:column;gap:18px;justify-self:end;width:min(100%,350px)}.mini-card{background:linear-gradient(180deg,rgba(var(--surface-rgb),calc(var(--surface-alpha)*.18)),rgba(var(--surface-rgb),0));border:1px solid var(--line);border-radius:24px;box-shadow:inset 0 1px 0 #ffffff14}.card-large{min-height:220px;padding:16px 18px 12px}.mini-head{display:flex;gap:6px;margin-bottom:20px}.dot{background:#ffffff73;border-radius:50%;display:inline-block;height:9px;width:9px}.chart-bars{align-items:flex-end;display:flex;gap:10px;height:150px;padding:0 6px 10px}.chart-bars span{background:linear-gradient(180deg,#ffffffb3,#ffffff2e);border-radius:999px 999px 0 0;flex:1 1}.card-small{align-items:center;display:flex;gap:14px;padding:16px 18px;width:max-content}.card-small svg{color:var(--text);height:22px;width:22px}.card-small strong,.metric-grid strong{display:block;font-size:1.3rem;letter-spacing:-.05em}.card-small span,.metric-grid span{color:var(--muted);font-size:.73rem;letter-spacing:.08em;text-transform:uppercase}.status-panel{flex-direction:column;min-height:430px}.modal-header,.panel-header,.status-panel{display:flex;justify-content:space-between}.modal-header,.panel-header{align-items:center;gap:12px}.link-button{background:#0000;border:1px solid var(--line);border-radius:10px;color:var(--text);cursor:pointer;padding:10px 12px}.metric-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:26px}.metric-grid>div{background:var(--panel-soft);border:1px solid var(--line);border-radius:18px;padding:16px 12px}.tone-preview{align-items:center;display:flex;gap:10px;margin-top:26px;padding-top:8px}.tone-swatch{background:#fff3;border:1px solid var(--line);border-radius:16px;flex:1 1;height:78px}.tone-one{background:hsl(210 8% calc(var(--gray-tone) + 20%))}.tone-two{background:hsl(210 8% calc(var(--gray-tone) + 8%))}.tone-three{background:hsl(210 8% calc(var(--gray-tone) - 4%))}.tone-four{background:hsl(210 8% calc(var(--gray-tone) - 14%))}.modal-backdrop{backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));background:#080a0c6b;display:grid;inset:0;place-items:center;position:fixed;z-index:20}.glass-modal{border-radius:26px;padding:20px;width:min(90vw,430px)}.connection-form{grid-gap:12px;display:grid;gap:12px;margin-top:20px}.connection-description{color:var(--muted);line-height:1.6;margin:0 0 6px}.connection-form label{color:var(--muted);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}.connection-form input{background:#ffffff0a;border:1px solid var(--line);border-radius:12px;box-sizing:border-box;color:var(--text);font:inherit;padding:13px 14px;width:100%}.connection-form input:focus-visible{outline:2px solid var(--muted);outline-offset:2px}.connection-form input::placeholder{color:var(--muted)}.connection-form input:disabled{cursor:not-allowed;opacity:.55}.connection-error,.connection-notice{border:1px solid var(--line);border-radius:12px;font-size:.9rem;line-height:1.5;margin:0;padding:12px}.connection-notice{background:var(--panel);color:var(--muted)}.connection-notice code{color:var(--text);font-size:.85em}.connection-error{background:#821e1e29;border-color:#ff8c8c59;color:#ffb7b7}.connection-submit{cursor:pointer;font:inherit;margin-top:6px;width:100%}.connection-submit:disabled{cursor:not-allowed;opacity:.55}.connection-status{grid-gap:14px;align-items:start;display:grid;gap:14px;grid-template-columns:auto 1fr;margin-top:24px}.connection-status-icon{border:1px solid var(--line);border-radius:50%;color:#6eb98a;display:grid;height:38px;place-items:center;width:38px}.connection-status-icon svg{height:20px;width:20px}.connection-status strong{display:block;margin:2px 0 8px}.connection-status p{color:var(--muted);font-size:.9rem;line-height:1.5;margin:0 0 6px;overflow-wrap:anywhere}.connection-status .secondary-action{grid-column:2;justify-self:start}.setting-group{grid-gap:12px;display:grid;gap:12px;margin-top:22px}.setting-group label,.setting-group span{color:var(--muted);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}.range-row{align-items:center;display:flex;gap:14px}.range-row input{accent-color:#dfe3e8;flex:1 1}.range-row span{color:var(--text);font-size:.9rem;letter-spacing:.04em;min-width:44px;text-align:right;text-transform:none}.theme-switches{display:flex;gap:10px}.theme-option{background:#ffffff05;border:1px solid var(--line);border-radius:12px;color:var(--text);cursor:pointer;flex:1 1;padding:12px 14px}.theme-option.active{background:#ffffff14;border-color:#ffffff2e}.electronics-menu,.settings-menu{position:relative}.electronics-menu-trigger{min-width:62px;padding:0 9px;width:auto}.electronics-menu-trigger svg{height:20px;width:20px}.electronics-menu-dropdown{background:var(--bg);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 32px -16px var(--shadow);max-height:min(72vh,480px);overflow-y:auto;padding:6px;position:absolute;right:0;top:calc(100% + 8px);width:min(310px,calc(100vw - 36px));z-index:10}.electronics-menu-dropdown button{grid-gap:4px;background:#0000;border:0;border-radius:9px;color:var(--text);cursor:pointer;display:grid;font:inherit;gap:4px;padding:10px 12px;text-align:left;width:100%}.electronics-menu-dropdown button:focus-visible,.electronics-menu-dropdown button:hover{background:var(--panel-strong);outline:none}.electronics-menu-dropdown button>span{font-size:.82rem;font-weight:650}.electronics-menu-dropdown button>small{color:var(--muted);font-size:.7rem}.display-menu{position:relative}.display-menu-trigger{min-width:62px;padding:0 9px;width:auto}.display-menu-trigger svg:last-child{height:13px;width:13px}.display-menu-dropdown{background:var(--bg);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 32px -16px var(--shadow);max-height:min(72vh,500px);overflow-y:auto;padding:6px;position:absolute;right:0;top:calc(100% + 8px);width:min(300px,calc(100vw - 36px));z-index:10}.display-menu-dropdown button{grid-gap:4px;background:#0000;border:0;border-radius:9px;color:var(--text);cursor:pointer;display:grid;font:inherit;gap:4px;padding:10px 12px;text-align:left;width:100%}.display-menu-dropdown button:focus-visible,.display-menu-dropdown button:hover{background:var(--panel-strong);outline:none}.display-menu-dropdown button>span{font-size:.82rem;font-weight:650}.display-menu-dropdown button>small{color:var(--muted);font-size:.7rem}.settings-button{display:inline-flex;gap:7px;min-width:62px;padding:0 10px;width:auto}.settings-button svg:last-child{height:14px;width:14px}.settings-menu-dropdown{background:var(--bg);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 32px -16px var(--shadow);min-width:210px;padding:6px;position:absolute;right:0;top:calc(100% + 8px);width:max-content;z-index:5}.settings-menu-dropdown button{align-items:center;background:#0000;border:0;border-radius:9px;color:var(--text);cursor:pointer;display:flex;font:inherit;gap:10px;padding:10px 12px;text-align:left;width:100%}.settings-menu-dropdown button svg{flex:0 0 17px;height:17px;width:17px}.settings-menu-dropdown .settings-toggle{justify-content:space-between}.settings-toggle-indicator{background:var(--panel-strong);border:1px solid var(--line);border-radius:999px;box-sizing:border-box;flex:0 0 32px;height:18px;position:relative;transition:background .16s ease;width:32px}.settings-toggle-indicator:after{background:var(--muted);border-radius:50%;content:"";height:12px;left:2px;position:absolute;top:2px;transition:transform .16s ease,background .16s ease;width:12px}.settings-toggle[aria-checked=true] .settings-toggle-indicator{background:var(--text)}.settings-toggle[aria-checked=true] .settings-toggle-indicator:after{background:var(--bg);transform:translateX(14px)}.settings-toggle:disabled{cursor:wait;opacity:.65}.settings-menu-dropdown button:focus-visible,.settings-menu-dropdown button:hover{background:var(--panel-strong);outline:none}.settings-menu-divider{background:var(--line);height:1px;margin:5px 8px}.tool-page{backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));background:var(--bg-elevated);border:1px solid var(--line);box-shadow:0 18px 50px -28px var(--shadow);box-sizing:border-box;margin:0 auto;position:relative;width:min(100%,940px);z-index:1}.content.tool-content{display:block}.audio-visualizer-page{margin:0 auto;position:relative;width:min(100%,1700px);z-index:1}.content.audio-content{display:block;max-width:none;width:100%}.audio-visualizer{--visualizer-bg:#09090b;--visualizer-panel:#18181bd1;--visualizer-border:#3f3f46e6;background:var(--visualizer-bg);border:1px solid var(--visualizer-border);border-radius:22px;color:#f4f4f5;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;overflow:hidden;width:100%}.audio-visualizer,.audio-visualizer *,.audio-visualizer :after,.audio-visualizer :before{box-sizing:border-box}.audio-visualizer-header{background:#18181bf5;border-bottom:1px solid var(--visualizer-border);padding:18px 24px;position:relative;z-index:1}.audio-visualizer-header-inner{align-items:center;display:flex;gap:24px;justify-content:space-between;margin:0 auto;max-width:1600px}.audio-visualizer-header-inner>div:first-child,.audio-visualizer-header-inner>div:first-child>div{align-items:center;display:flex;gap:14px;min-width:0}.audio-visualizer-header-inner>div:first-child>div:last-child{align-items:flex-start;flex-direction:column;gap:2px}.audio-visualizer-header h1,.audio-visualizer-header p{margin:0}.audio-visualizer-header h1{font-size:1rem;line-height:1.3;white-space:nowrap}.audio-visualizer-header p{color:#a1a1aa;font-size:.76rem}.audio-visualizer-header p[title]{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-visualizer-header-inner>div:last-child,.audio-visualizer-header-inner>div:last-child>div{align-items:center;display:flex;gap:10px}.audio-visualizer-header button,.audio-visualizer-main button{align-items:center;background:#18181b;border:1px solid var(--visualizer-border);border-radius:10px;color:#d4d4d8;cursor:pointer;display:inline-flex;font:inherit;font-size:.78rem;gap:7px;justify-content:center;min-height:36px;padding:7px 11px;transition:background .15s ease,border-color .15s ease,color .15s ease}.audio-visualizer-header button:hover,.audio-visualizer-main button:hover{background:#27272a;border-color:#71717a;color:#fff}.audio-visualizer-example-select{background:#18181b;border:1px solid var(--visualizer-border);border-radius:10px;color:#a1a1aa;cursor:pointer;font:inherit;font-size:.78rem;max-width:220px;min-height:36px;padding:7px 32px 7px 11px}.audio-visualizer-example-select.is-active{color:#f4f4f5}.audio-visualizer-example-select:focus-visible{outline:2px solid #a1a1aa;outline-offset:2px}.audio-visualizer-example-select option{background:#18181b;color:#f4f4f5}.audio-visualizer button svg{display:block;flex:0 0 auto;height:18px;width:18px}.audio-visualizer-header input[type=file]{display:none}.audio-visualizer-main{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,2fr) minmax(270px,1fr);margin:0 auto;padding:22px;width:min(100%,1600px)}.audio-visualizer-controls,.audio-visualizer-primary{display:flex;flex-direction:column;gap:18px;min-width:0}.audio-visualizer-control-card,.audio-visualizer-metric,.audio-visualizer-scope-card{background:var(--visualizer-panel);border:1px solid var(--visualizer-border);border-radius:16px;box-shadow:0 12px 28px #00000038;min-width:0}.audio-visualizer-scope-card{padding:16px}.audio-visualizer-scope-card>div:first-child{align-items:center;border-bottom:1px solid #3f3f46b3;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:14px;padding-bottom:12px}.audio-visualizer-scope-card>div:first-child>div{align-items:center;display:flex;gap:10px}.audio-visualizer-scope-card>div:first-child>div>span,.audio-visualizer-scope-card>div:last-child,.audio-visualizer-scope-card>div:last-child>div{color:#a1a1aa;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem}.audio-visualizer-scope{aspect-ratio:16/9;background:#09090b;border:1px solid #3f3f46b3;border-radius:12px;min-height:250px;overflow:hidden;position:relative;width:100%}.audio-visualizer-scope canvas{display:block;height:100%;width:100%}.audio-visualizer-measurements{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.audio-visualizer-metric{padding:14px}.audio-visualizer-metric>span{color:#a1a1aa;font-size:.68rem;text-transform:uppercase}.audio-visualizer-metric>div{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.35rem;font-weight:700}.audio-visualizer-metric>div span{color:#a1a1aa;font-size:.7rem;font-weight:400}.audio-visualizer-metric>div:last-child{background:#3f3f46;border-radius:99px;height:6px;margin-top:10px;overflow:hidden}.audio-visualizer-metric>div:last-child>div{border-radius:inherit;height:100%}.audio-visualizer-control-card{display:flex;flex-direction:column;gap:16px;padding:18px}.audio-visualizer-control-card h2{align-items:center;border-bottom:1px solid #3f3f46b3;color:#e4e4e7;display:flex;font-size:.82rem;gap:8px;letter-spacing:.06em;margin:0;padding-bottom:12px;text-transform:uppercase}.audio-visualizer-control-card>div{min-width:0}.audio-visualizer-control-card>div>div:first-child{align-items:center;display:flex;gap:12px;justify-content:space-between}.audio-visualizer-control-card span{color:#a1a1aa;font-size:.72rem}.audio-visualizer-control-card strong{color:#e4e4e7;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.audio-visualizer input[type=range]{accent-color:#d4d4d8;cursor:pointer;display:block;height:6px;margin:10px 0 0;width:100%}.audio-visualizer-builder-button{white-space:nowrap}.visualizer-help-backdrop{align-items:center!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;background:#000000d9!important;display:flex!important;inset:0!important;justify-content:center!important;padding:16px!important;position:fixed!important;z-index:99999!important}.visualizer-help-modal{background:#121215!important;border:1px solid #52525bcc!important;border-radius:20px!important;box-shadow:0 25px 50px -12px #000000e6!important;color:#f4f4f5!important;display:flex!important;flex-direction:column!important;font-family:inherit!important;max-height:88vh!important;max-width:820px!important;overflow:hidden!important;position:relative!important;width:100%!important}.visualizer-help-modal-header{align-items:center!important;background:#09090b!important;border-bottom:1px solid #3f3f4699!important;display:flex!important;justify-content:space-between!important;padding:18px 24px!important}.visualizer-help-modal-body{display:flex!important;flex-direction:column!important;gap:24px!important;overflow-y:auto!important;padding:24px!important}.visualizer-help-modal-footer{background:#09090b!important;border-top:1px solid #3f3f4699!important;display:flex!important;justify-content:flex-end!important;padding:16px 24px!important}.synth-builder-page{margin:0 auto;position:relative;width:min(100%,1400px);z-index:1}.synth-builder{color:var(--text)}.synth-builder-header{grid-gap:24px;align-items:center;display:grid;gap:24px;grid-template-columns:auto 1fr;margin-bottom:20px}.synth-builder-back{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:12px;color:var(--text);cursor:pointer;display:inline-flex;font:inherit;gap:8px;padding:11px 14px}.synth-builder-back:focus-visible,.synth-builder-back:hover{background:var(--panel-strong);outline:2px solid var(--muted);outline-offset:2px}.synth-builder-back svg{height:17px;width:17px}.synth-builder-header h1{font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:-.05em;margin:5px 0}.synth-builder-intro{color:var(--muted);line-height:1.5;margin:0}.draw-shape-layout,.synth-builder-layout{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1.6fr) minmax(270px,.8fr)}.draw-shape-canvas-heading{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.draw-shape-canvas-heading h2{margin:0}.draw-shape-canvas-heading p,.draw-shape-hint{color:var(--muted);font-size:.82rem;line-height:1.5;margin:5px 0 0}.draw-shape-canvas{aspect-ratio:1;background:#09090b;border:1px solid var(--line);border-radius:12px;cursor:crosshair;display:block;height:auto;justify-self:center;touch-action:none;width:min(100%,760px)}.draw-shape-clear{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:10px;color:var(--text);cursor:pointer;display:inline-flex;flex:0 0 auto;font:inherit;font-size:.82rem;gap:7px;padding:8px 11px}.draw-shape-clear svg{height:16px;width:16px}.draw-shape-clear:focus-visible,.draw-shape-clear:hover{background:var(--panel-strong);outline:2px solid var(--muted);outline-offset:2px}.synth-builder-controls{grid-gap:16px;display:grid;gap:16px;min-width:0}.synth-builder-card,.synth-builder-preview{backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));background:var(--bg-elevated);border:1px solid var(--line);border-radius:20px;box-shadow:0 18px 50px -28px var(--shadow);min-width:0;padding:22px}.synth-builder-card{grid-gap:16px;display:grid;gap:16px}.synth-builder-card h2,.synth-builder-preview h2{font-size:1rem;letter-spacing:-.02em;margin:0}.synth-fields-two{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.synth-field{grid-gap:8px;color:var(--muted);display:grid;font-size:.83rem;gap:8px;min-width:0}.synth-field input:not([type=range]),.synth-field select{background:#ffffff0a;border:1px solid var(--line);border-radius:10px;box-sizing:border-box;color:var(--text);font:inherit;min-height:42px;padding:9px 12px;width:100%}.synth-field select option{background:#171b1f;color:#edf2f7}.synth-field input[type=range]{accent-color:var(--text);width:100%}.synth-field input:disabled{cursor:not-allowed;opacity:.45}.synth-check{align-items:center;color:var(--muted);display:inline-flex;font-size:.83rem;gap:10px}.synth-check input{accent-color:var(--text);height:16px;width:16px}.synth-normalize{align-self:end;min-height:42px}.synth-builder-preview{align-items:flex-start;display:flex;flex-direction:column;gap:14px;position:sticky;top:24px}.synth-wave-preview{background:#09090b;border:1px solid var(--line);border-radius:12px;overflow:hidden;width:100%}.synth-wave-preview-toolbar{align-items:center;color:var(--muted);display:flex;font-size:.78rem;gap:12px;justify-content:space-between}.synth-wave-preview-toolbar>div{background:var(--panel);border:1px solid var(--line);border-radius:9px;display:inline-flex;gap:4px;padding:3px}.synth-wave-preview-toolbar button{background:#0000;border:0;border-radius:6px;color:var(--muted);cursor:pointer;font:inherit;min-height:29px;padding:4px 10px}.synth-wave-preview-toolbar button[aria-pressed=true]{background:var(--panel-strong);color:var(--text)}.synth-wave-preview-toolbar button:focus-visible{outline:2px solid var(--muted);outline-offset:2px}.synth-wave-preview canvas{display:block;height:auto;width:100%}.synth-preview-icon{background:var(--panel);border:1px solid var(--line);border-radius:14px;display:grid;height:48px;place-items:center;width:48px}.synth-preview-icon svg{height:23px;width:23px}.synth-builder-preview>p{color:var(--muted);font-size:.84rem;line-height:1.5;margin:0}.synth-preview-actions{grid-gap:10px;display:grid;gap:10px;margin-top:6px;width:100%}.synth-preview-actions button{align-items:center;border:1px solid var(--line);border-radius:11px;color:var(--text);cursor:pointer;display:inline-flex;font:inherit;gap:8px;justify-content:center;min-height:44px;padding:10px 14px;transition:background .2s ease,border-color .2s ease}.synth-preview-actions button:focus-visible,.synth-preview-actions button:hover{border-color:var(--muted);outline:none}.synth-preview-actions svg{height:17px;width:17px}.synth-action-primary{background:var(--text);color:var(--bg)!important}.synth-action-secondary{background:var(--panel)}.synth-builder-error,.synth-preview-help{font-size:.78rem!important}.synth-builder-error{color:#ffb7b7!important}.synth-builder-success{color:#8ee5a1!important;font-size:.82rem}.synth-preview-actions button:disabled{cursor:not-allowed;opacity:.5}.synth-spinner{animation:synthSpin .9s linear infinite}@keyframes synthSpin{to{transform:rotate(1turn)}}.synth-library-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000a8;display:grid;inset:0;padding:20px;place-items:center;position:fixed;z-index:20}.synth-library-modal{background:var(--bg);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 80px #0006;color:var(--text);max-height:min(82vh,760px);overflow:auto;width:min(100%,680px)}.synth-library-modal>header{align-items:flex-start;background:var(--bg);border-bottom:1px solid var(--line);display:flex;gap:16px;justify-content:space-between;padding:22px;position:sticky;top:0;z-index:1}.synth-library-modal>header h2{margin:6px 0}.synth-library-message,.synth-library-modal>header p:last-child{color:var(--muted);font-size:.86rem;line-height:1.5;margin:0}.synth-library-list button,.synth-library-modal footer button,.synth-library-modal>header button{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:10px;color:var(--text);cursor:pointer;display:inline-flex;font:inherit;gap:7px;justify-content:center;min-height:38px;padding:8px 12px}.synth-library-modal>header button{flex:0 0 auto;padding:8px;width:38px}.synth-library-list button svg,.synth-library-modal>header button svg{height:17px;width:17px}.synth-library-message{padding:24px 22px}.synth-library-list{grid-gap:10px;display:grid;gap:10px;list-style:none;margin:0;padding:16px}.synth-library-list li{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:13px;display:flex;gap:16px;justify-content:space-between;padding:14px}.synth-library-list li>div:first-child{grid-gap:4px;display:grid;gap:4px;min-width:0}.synth-library-list li>div:first-child span{color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}.synth-library-list li>div:last-child{display:flex;flex:0 0 auto;gap:8px}.synth-library-list button:focus-visible,.synth-library-list button:hover,.synth-library-modal footer button:focus-visible,.synth-library-modal footer button:hover{background:var(--panel-strong);outline:none}.synth-library-list button:disabled{cursor:wait;opacity:.5}.synth-library-error{margin:0 16px 16px}.synth-library-modal footer{display:flex;justify-content:flex-end;padding:0 22px 20px}.tool-page-header{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;padding-bottom:24px}.tool-page-header h2{font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:-.05em;margin:8px 0 0}.signal-generator-page{padding:clamp(18px,3vw,26px);width:min(100%,820px)}.signal-generator-page .tool-page-header{padding-bottom:17px}.signal-generator-page .tool-page-header h2{font-size:clamp(1.55rem,3vw,2rem)}.signal-generator{grid-gap:18px;display:grid;gap:18px;padding-top:18px}.signal-generator-footer,.signal-generator-level label,.signal-generator-monitor-heading,.signal-generator-toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between}.signal-generator-choices,.signal-generator-modes{background:var(--panel);border:1px solid var(--line);border-radius:12px;display:flex;flex-wrap:wrap;gap:6px;padding:4px}.signal-generator-choices button,.signal-generator-modes button{background:#0000;border:1px solid #0000;border-radius:8px;color:var(--muted);cursor:pointer;font:inherit;font-size:.82rem;min-height:34px;padding:7px 13px;text-transform:capitalize;transition:color .18s ease,background .18s ease,border-color .18s ease}.signal-generator-choices button:focus-visible,.signal-generator-choices button:hover,.signal-generator-modes button:focus-visible,.signal-generator-modes button:hover{border-color:var(--line);color:var(--text);outline:none}.signal-generator-choices button.active,.signal-generator-modes button.active{background:#00e6761f;border-color:#00e67659;color:#55e89c}.signal-generator-status{align-items:center;color:var(--muted);display:inline-flex;font-size:.76rem;gap:8px}.signal-generator-status>span{background:#80878d;border-radius:50%;height:7px;width:7px}.signal-generator-status.is-playing>span{background:#00e676;box-shadow:0 0 10px #00e676a6}.signal-generator-monitor{background-color:#090d0b;background-image:linear-gradient(hsla(0,0%,100%,.035) 1px,#0000 0),linear-gradient(90deg,hsla(0,0%,100%,.035) 1px,#0000 0);background-size:25% 50%;border:1px solid #ffffff1a;border-radius:14px;color:#d4ded8;overflow:hidden;padding:13px 15px 8px}.signal-generator-monitor-heading{color:#e0ebe59e;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.signal-generator-monitor-heading span:last-child{color:#55e89c;letter-spacing:.05em}.signal-generator-monitor canvas{display:block;height:128px;margin-top:8px;width:100%}.signal-generator-monitor-scale{color:#e0ebe573;display:flex;font-size:.63rem;justify-content:space-between}.signal-generator-controls{grid-gap:20px 26px;align-items:end;display:grid;gap:20px 26px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.signal-generator-choice-set{border:0;margin:0;min-width:0;padding:0}.signal-generator-choice-set legend,.signal-generator-frequency>label,.signal-generator-level label{color:var(--muted);display:block;font-size:.69rem;font-weight:650;letter-spacing:.12em;margin-bottom:9px;text-transform:uppercase}.signal-generator-choices{align-items:center;min-height:42px}.signal-generator-choices button{flex:1 1 auto;font-size:.76rem;min-height:31px;padding:6px 9px}.signal-generator-noise-choices button{min-width:55px}.signal-generator-frequency-row{align-items:center;display:flex;gap:9px}.signal-generator-frequency-row input{font-feature-settings:"tnum";background:var(--panel);border:1px solid var(--line);border-radius:9px;box-sizing:border-box;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;min-width:0;padding:9px 11px;width:100%}.signal-generator-frequency-row input:focus-visible{outline:2px solid #00e676;outline-offset:2px}.signal-generator-frequency-row>span{color:var(--muted);font-size:.8rem}.signal-generator-hop-range>label,.signal-generator-hop-rate>label{align-items:center;color:var(--muted);display:flex;font-size:.69rem;font-weight:650;justify-content:space-between;letter-spacing:.12em;margin-bottom:9px;text-transform:uppercase}.signal-generator-hop-inputs{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.signal-generator-hop-inputs>label{grid-gap:6px;align-items:center;color:var(--muted);display:grid;font-size:.68rem;gap:6px;grid-template-columns:auto minmax(0,1fr) auto;min-width:0}.signal-generator-hop-inputs input{font-feature-settings:"tnum";background:var(--panel);border:1px solid var(--line);border-radius:8px;box-sizing:border-box;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;min-width:0;padding:8px;width:100%}.signal-generator-hop-inputs input:focus-visible{outline:2px solid #00e676;outline-offset:2px}.signal-generator-hop-inputs>span{color:var(--muted)}.signal-generator-hop-rate label output{color:var(--text);font-size:.75rem;letter-spacing:0;text-transform:none}.signal-generator-frequency>input,.signal-generator-hop-rate>input,.signal-generator-level>input{accent-color:#00e676;cursor:pointer;display:block;margin:10px 0 0;width:100%}.signal-generator-level label{align-items:center;display:flex;justify-content:space-between;margin-bottom:0}.signal-generator-level label output{font-feature-settings:"tnum";color:var(--text);font-size:.75rem;font-variant-numeric:tabular-nums;letter-spacing:0}.signal-generator-level-scale{color:var(--muted);display:flex;font-size:.65rem;justify-content:space-between;margin-top:6px}.signal-generator-footer{border-top:1px solid var(--line);padding-top:3px}.signal-generator-footer p{color:var(--muted);font-size:.76rem;line-height:1.5;margin:0}.signal-generator-play{align-items:center;background:#00e676;border:1px solid #00e676;border-radius:10px;color:#07130c;cursor:pointer;display:inline-flex;font:inherit;font-size:.84rem;font-weight:700;gap:8px;justify-content:center;min-height:42px;padding:0 17px;transition:filter .2s ease,transform .2s ease;white-space:nowrap}.signal-generator-play:focus-visible,.signal-generator-play:hover{filter:brightness(1.08);outline:2px solid #00e67666;outline-offset:3px}.signal-generator-play:active{transform:translateY(1px)}.signal-generator-play.is-playing{background:var(--panel-strong);border-color:var(--line);color:var(--text)}.signal-generator-play svg{height:16px;width:16px}.signal-generator-error{color:#ffb7b7;font-size:.82rem;margin:0}.electronics-page{padding:clamp(18px,3vw,28px);width:min(100%,900px)}.electronics-page .tool-page-header{padding-bottom:16px}.electronics-page .tool-page-header h2{font-size:clamp(1.55rem,3vw,2rem)}.electronics-calculator{grid-gap:20px;display:grid;gap:20px;padding-top:18px}.electronics-calculator-header{align-items:end;display:flex;gap:18px;justify-content:space-between}.electronics-calculator-header>div{grid-gap:6px;display:grid;gap:6px}.electronics-kicker,.electronics-select-label>span{color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.electronics-calculator-header p{color:var(--muted);font-size:.86rem;margin:0}.electronics-select-label{grid-gap:6px;display:grid;gap:6px;min-width:min(260px,48%)}.electronics-field select,.electronics-select-label select{background:var(--bg);border:1px solid var(--line);border-radius:9px;box-sizing:border-box;color:var(--text);font:inherit;font-size:.8rem;min-height:40px;padding:8px 34px 8px 11px}.electronics-field select:focus-visible,.electronics-select-label select:focus-visible{outline:2px solid #00e676b3;outline-offset:2px}.electronics-calculator-body{grid-gap:18px;display:grid;gap:18px}.electronics-fields{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.electronics-field{grid-gap:7px;align-content:start;color:var(--muted);display:grid;font-size:.7rem;font-weight:650;gap:7px;letter-spacing:.08em;min-width:0;text-transform:uppercase}.electronics-input-wrap{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:9px;display:flex;min-height:40px;min-width:0;padding:0 10px}.electronics-input-wrap:focus-within{outline:2px solid #00e6768c;outline-offset:1px}.electronics-input-wrap input{font-feature-settings:"tnum";background:#0000;border:0;color:var(--text);font:inherit;font-size:.86rem;font-variant-numeric:tabular-nums;letter-spacing:0;min-width:0;outline:0;padding:8px 0;text-transform:none;width:100%}.electronics-input-wrap>span{color:var(--muted);flex:0 0 auto;font-size:.74rem;font-weight:500;letter-spacing:0;text-transform:none}.electronics-field select{letter-spacing:0;text-transform:none;width:100%}.electronics-results{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.electronics-result{grid-gap:7px;align-content:start;background:var(--panel);border:1px solid var(--line);border-radius:11px;display:grid;gap:7px;min-width:0;padding:14px}.electronics-result>span{color:var(--muted);font-size:.66rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.electronics-result strong{font-feature-settings:"tnum";color:#55e89c;font-size:clamp(1rem,2vw,1.25rem);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.electronics-result small{color:var(--muted);font-size:.68rem}.electronics-note{border-top:1px solid var(--line);color:var(--muted);font-size:.74rem;line-height:1.5;margin:0;padding-top:12px}.color-code-body{align-items:center;grid-template-columns:minmax(160px,.7fr) minmax(0,1.3fr)}.resistor-color-preview{background:var(--panel);border:1px solid var(--line);border-radius:11px;display:grid;min-height:105px;place-items:center}.resistor-body{align-items:center;background:linear-gradient(180deg,#d9bd90,#b99867 50%,#d1b282);border:1px solid #876840cc;border-radius:17px;box-shadow:0 5px 14px #0003;display:flex;height:38px;justify-content:space-evenly;position:relative;width:min(90%,240px)}.resistor-body:after,.resistor-body:before{background:#a9afb4;content:"";height:3px;position:absolute;top:17px;width:24px;z-index:0}.resistor-body:before{right:100%}.resistor-body:after{left:100%}.resistor-band{background:var(--band-color);border-left:1px solid #0003;border-right:1px solid #0003;height:36px;width:8px;z-index:1}.electronics-fields:has(#band-first){grid-template-columns:repeat(2,minmax(0,1fr))}.display-page{padding:clamp(14px,2.6vw,24px);width:min(100%,1120px)}.display-page .tool-page-header{padding-bottom:15px}.display-page .tool-page-header h2{font-size:clamp(1.5rem,3vw,2rem)}.display-tools-container{display:flex;flex-direction:column;gap:18px}.display-tools-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.display-tool-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;color:var(--text);cursor:pointer;display:flex;flex-direction:column;font:inherit;gap:4px;padding:12px 14px;text-align:left;transition:all .16s ease}.display-tool-card:hover{background:var(--panel-strong);border-color:#fff3;transform:translateY(-1px)}.display-tool-card.active{background:var(--panel-strong);border-color:var(--text);box-shadow:0 0 0 1px var(--text)}.display-tool-card-title{color:var(--text);font-size:.85rem;font-weight:650}.display-tool-card-desc{color:var(--muted);font-size:.72rem;line-height:1.3}.display-tool-view{--display-background:#101411;--display-foreground:#f4f7f5;--display-accent:#0f6;background:var(--display-background);border:1px solid var(--line);border-radius:16px;color:var(--display-foreground);display:flex;flex-direction:column;margin-top:16px;min-height:510px;overflow:hidden;position:relative}.display-tool-view.is-fullscreen,.display-tool-view:fullscreen{border:0;border-radius:0;height:100%;margin:0;min-height:100vh;width:100%}.display-tool-view.is-fullscreen .display-stage,.display-tool-view:fullscreen .display-stage{flex:1 1}.display-tool-header{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0d0bd1;border-bottom:1px solid #ffffff1f;display:flex;gap:16px;justify-content:space-between;padding:14px 16px;position:relative;z-index:5}.display-tool-select{grid-gap:5px 12px;align-items:center;display:grid;gap:5px 12px;grid-template-columns:auto minmax(180px,1fr)}.display-tool-kicker{color:#e7eee9a3;font-size:.62rem;font-weight:700;grid-column:1/-1;letter-spacing:.15em;text-transform:uppercase}.display-tool-select label{color:#e7eee9b8;font-size:.72rem}.display-stage input:not([type=color]):not([type=checkbox]),.display-stage select,.display-tool-select select{background:#ffffff14;border:1px solid #fff3;border-radius:8px;box-sizing:border-box;color:inherit;font:inherit;font-size:.82rem;min-height:36px;padding:7px 10px}.display-stage select option,.display-tool-select select option{background:#151a17;color:#edf2f7}.display-fullscreen-button:focus-visible,.display-stage button:focus-visible,.display-stage input:focus-visible,.display-stage select:focus-visible,.display-tool-select select:focus-visible{outline:2px solid var(--display-accent);outline-offset:2px}.display-fullscreen-button,.display-primary-button,.display-secondary-button{align-items:center;background:#ffffff14;border:1px solid #fff3;border-radius:8px;color:inherit;cursor:pointer;display:inline-flex;font:inherit;font-size:.76rem;font-weight:650;gap:7px;justify-content:center;min-height:37px;padding:0 12px}.display-fullscreen-button svg{height:16px;width:16px}.display-primary-button{background:var(--display-accent);border-color:var(--display-accent);color:#07130c}.display-fullscreen-button:hover,.display-secondary-button:hover{background:#ffffff26}.display-primary-button:disabled,.display-secondary-button:disabled{cursor:not-allowed;opacity:.45}.display-stage{align-items:center;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:16px;justify-content:center;min-height:420px;padding:clamp(18px,4vw,44px);position:relative}.display-config-field{align-self:flex-start;color:#e7eee9c7;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.display-stage>input:not([type=color]):not([type=checkbox]),.display-stage>select{width:min(100%,520px)}.display-stage input[type=color]{background:#0000;border:1px solid #ffffff3d;border-radius:8px;height:36px;padding:2px;width:52px}.display-action-row{display:flex;flex-wrap:wrap;gap:8px}.led-banner-stage{align-items:stretch;justify-content:center}.led-banner-marquee{align-items:center;background:#020503;border:1px solid #0f63;border-radius:12px;color:#0f6;color:var(--banner-color,#0f6);display:flex;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(1.5rem,6vw,4rem);font-weight:800;letter-spacing:.14em;min-height:130px;overflow:hidden;text-shadow:0 0 18px currentColor;white-space:nowrap}.led-banner-marquee span{animation:display-marquee 20s linear infinite;min-width:max-content;padding-left:100%}@keyframes display-marquee{to{transform:translateX(-100%)}}.digital-clock-stage{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;gap:12px;text-align:center}.digital-clock-time{font-feature-settings:"tnum";color:var(--display-accent);font-size:clamp(3.5rem,14vw,10rem);font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.07em;line-height:1;text-shadow:0 0 28px color-mix(in srgb,var(--display-accent) 42%,#0000)}.digital-clock-date{color:#f4f7f5b8;font-size:clamp(.9rem,2.8vw,1.3rem);margin-bottom:14px}.countdown-stage{text-align:center}.countdown-time{font-feature-settings:"tnum";color:var(--display-accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(4rem,17vw,11rem);font-variant-numeric:tabular-nums;font-weight:750;letter-spacing:-.07em;line-height:1}.countdown-time.is-finished{color:#ff6961}.scoreboard-stage{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.scoreboard-team{grid-gap:clamp(12px,3vh,28px);align-content:center;background:hsla(0,0%,100%,.045);border:1px solid #ffffff29;border-radius:14px;display:grid;gap:clamp(12px,3vh,28px);justify-items:center;padding:20px;text-align:center}.scoreboard-team input{font-size:clamp(.9rem,2vw,1.4rem)!important;font-weight:700;letter-spacing:.08em;text-align:center;width:min(100%,340px)!important}.scoreboard-team>strong{font-feature-settings:"tnum";color:var(--display-accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(5rem,18vw,12rem);font-variant-numeric:tabular-nums;line-height:.95}.scoreboard-reset{grid-column:1/-1;justify-self:center}.name-display-stage{gap:18px;text-align:center}.name-display-output{font-size:clamp(2.5rem,12vw,8rem);font-weight:850;letter-spacing:-.05em;line-height:1.05;overflow-wrap:anywhere;text-shadow:0 0 30px currentColor;width:100%}.ticker-stage{align-items:stretch}.ticker-stage>input[type=range]{accent-color:var(--display-accent)}.news-ticker-bar{align-items:center;background:#050806;border-block:3px solid #0f6;border-block:3px solid var(--banner-color,#0f6);color:#0f6;color:var(--banner-color,#0f6);display:flex;font-size:clamp(1.25rem,4vw,2.8rem);font-weight:750;min-height:96px;overflow:hidden;white-space:nowrap}.news-ticker-bar span{animation:display-ticker 20s linear infinite;animation:display-ticker var(--ticker-duration,20s) linear infinite;min-width:max-content}@keyframes display-ticker{to{transform:translateX(-50%)}}.matrix-rain-stage{background:#000;min-height:440px;padding:0}.matrix-rain-stage canvas{display:block;height:100%;min-height:inherit;width:100%}.color-screen-stage{align-items:center}.color-screen-stage>input[type=color]{height:44px;width:64px}.color-screen-swatches{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:12px}.color-screen-swatches button{border:2px solid #ffffff73;border-radius:50%;cursor:pointer;height:42px;width:42px}.color-screen-stage>span{color:#ffffffc7;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.test-panel-stage{background:#050505;gap:12px}.test-pattern-display{display:flex;min-height:260px;width:100%}.test-pattern-display span{flex:1 1}.pattern-grayscale .test-pattern-display{min-height:120px}.test-pattern-grid{background-image:linear-gradient(#ffffff1f 1px,#0000 0),linear-gradient(90deg,#ffffff1f 1px,#0000 0);background-size:10% 10%;inset:0 0 75px;opacity:0;pointer-events:none;position:absolute}.pattern-grid .test-pattern-grid{background-size:5% 10%;opacity:1}.test-panel-stage>label,.test-panel-stage>select{z-index:1}.strobe-stage{background:#050505;text-align:center}.strobe-stage.is-strobing{animation:display-slow-strobe 1s step-end infinite}.strobe-stage>strong{font-size:clamp(2rem,6vw,4rem)}.pixel-fixer-stage>p,.strobe-stage>p{color:#f4f7f5b8;font-size:.9rem;line-height:1.6;max-width:560px}.strobe-stage>label{align-items:center;color:#f4f7f5d1;display:flex;font-size:.8rem;gap:9px}.strobe-stage>label input{accent-color:var(--display-accent);height:18px;width:18px}@keyframes display-slow-strobe{0%,49%{background:#f7f7f7;color:#080808}50%,to{background:#050505;color:#f7f7f7}}.pixel-fixer-stage{text-align:center;transition:background-color .35s ease}.pixel-fixer-stage>strong{font-size:clamp(1.8rem,5vw,3.6rem)}.display-tool-error{bottom:8px;color:#ffaaa5;font-size:.76rem;left:12px;margin:0;position:absolute;right:12px;z-index:6}.display-tool-view.is-fullscreen .display-tool-header,.display-tool-view:fullscreen .display-tool-header{background:#0a0d0ba8}@media (prefers-reduced-motion:reduce){.led-banner-marquee span,.matrix-rain-stage canvas,.news-ticker-bar span,.pixel-fixer-stage,.strobe-stage.is-strobing{animation:none!important;transition:none!important}}.generator-layout{grid-gap:clamp(24px,6vw,64px);align-items:center;display:grid;gap:clamp(24px,6vw,64px);grid-template-columns:minmax(0,1fr) auto;padding-top:30px}.generator-single{margin:30px auto 0;width:min(100%,720px)}.generator-controls{grid-gap:14px;display:grid;gap:14px}.character-options legend,.tool-label{color:var(--muted);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}.tool-input{background:#ffffff0a;border:1px solid var(--line);border-radius:12px;box-sizing:border-box;color:var(--text);font:inherit;padding:13px 14px;width:100%}.tool-input:focus-visible{outline:2px solid var(--muted);outline-offset:2px}.tool-textarea{line-height:1.5;min-height:120px;resize:vertical}.tool-textarea::placeholder{color:var(--muted)}.tool-select option{background:#171b1f;color:#edf2f7}.tool-help{color:var(--muted);font-size:.88rem;line-height:1.55;margin:0}.contact-form{grid-gap:18px;display:grid;gap:18px;margin:28px auto 0;width:min(100%,760px)}.contact-form .tool-label{grid-gap:8px;display:grid;gap:8px}.contact-fields-two{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.contact-error,.contact-success,.mail-inbox-state{border:1px solid var(--line);border-radius:12px;font-size:.88rem;line-height:1.5;margin:0;padding:12px 14px}.contact-error{border-color:#ff787866;color:#ffb7b7}.contact-success{border-color:#00ff6659;color:#8ee5a1}.information-page{grid-gap:14px;color:var(--muted);display:grid;gap:14px;line-height:1.7;margin:28px auto 0;max-width:720px}.information-page h3,.information-page p{margin:0}.information-page h3{color:var(--text);font-size:1.2rem}.information-feature-grid{grid-gap:18px 28px;display:grid;gap:18px 28px;grid-template-columns:repeat(2,minmax(0,1fr))}.information-feature-grid section{grid-gap:6px;align-content:start;display:grid;gap:6px}.information-feature-grid h4{color:var(--text);font-size:.98rem;margin:0}.information-page .secondary-action{justify-self:start}.mail-inbox{margin-top:24px}.mail-inbox-summary{color:var(--muted);font-size:.88rem;margin:0 0 14px}.mail-message-list{grid-gap:12px;display:grid;gap:12px;list-style:none;margin:0;padding:0}.mail-message{grid-gap:10px;background:var(--bg-elevated);border:1px solid var(--line);border-radius:16px;display:grid;gap:10px;grid-template-rows:auto auto;padding:14px 18px;transition:border-color .2s ease,box-shadow .2s ease}.mail-message.is-unread{border-color:#00ff6661;box-shadow:inset 3px 0 #0f6}.mail-message-row{align-items:center;display:flex}.mail-message-row-top{gap:16px;justify-content:space-between;min-height:38px}.mail-message-meta{align-items:baseline;display:flex;flex-wrap:wrap;gap:12px;min-width:0}.mail-message-subject{color:var(--text);font-size:1rem;font-weight:600;margin:0;overflow-wrap:anywhere}.mail-message-sender{color:var(--muted);font-size:.82rem;margin:0}.mail-message-sender a{color:inherit;text-decoration:underline;text-underline-offset:2px}.mail-message-sender a:hover{color:var(--text)}.mail-message-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.mail-message-status{border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.72rem;letter-spacing:.06em;padding:3px 8px;text-transform:uppercase}.mail-message-icon-button{align-items:center;background:#ffffff08;border:1px solid var(--line);border-radius:10px;color:var(--muted);cursor:pointer;display:inline-flex;height:36px;justify-content:center;min-height:36px;min-width:36px;padding:0;transition:color .15s ease,border-color .15s ease,background .15s ease;width:36px}.mail-message-icon-button svg{height:17px;width:17px}.mail-message-icon-button:focus-visible:not(:disabled),.mail-message-icon-button:hover:not(:disabled){background:#ffffff14;border-color:#ffffff40;color:var(--text)}.mail-message-export-button:focus-visible,.mail-message-export-button:hover{background:#00ff6614;border-color:#0f66;color:#0f6}.mail-message-delete-button:focus-visible:not(:disabled),.mail-message-delete-button:hover:not(:disabled){background:#ff55661a;border-color:#f566;color:#f56}.mail-message-icon-button:disabled{cursor:wait;opacity:.5}.mail-message-row-bottom{min-width:0}.mail-message-body{color:var(--text);font-size:.88rem;line-height:1.5;margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.qr-preview{display:flex;flex-direction:column;place-items:center;align-items:center;background:#fff;border-radius:22px;box-shadow:0 18px 50px -28px var(--shadow);color:#202327;gap:14px;min-height:256px;min-width:256px;padding:16px}.qr-preview svg{display:block;height:auto;max-width:100%}.qr-preview p{line-height:1.5;max-width:180px;text-align:center}.qr-download-button{background:#0000;border:1px solid #202327;border-radius:12px;color:#202327;cursor:pointer;display:grid;height:44px;padding:0;place-items:center;transition:background .2s ease,color .2s ease;width:44px}.qr-download-button svg{height:21px;width:21px}.qr-download-button:focus-visible:not(:disabled),.qr-download-button:hover:not(:disabled){background:#202327;color:#fff;outline:none}.qr-download-button:disabled{cursor:not-allowed;opacity:.45}.tool-setting{margin:0 0 8px}.character-options{border:0;margin:0;padding:0}.character-options legend{margin-bottom:12px}.character-option-list{display:flex;flex-wrap:wrap;gap:10px}.character-option-list label{align-items:center;border:1px solid var(--line);border-radius:11px;color:var(--muted);cursor:pointer;display:inline-flex;gap:8px;padding:10px 12px}.character-option-list input{accent-color:var(--text)}.tool-action{cursor:pointer;font:inherit;justify-self:start;margin-top:6px}.tool-output-row{align-items:stretch;display:flex;gap:10px}.generated-password,.hash-output{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;min-width:0}.hash-output{display:block;line-height:1.5;overflow-wrap:anywhere}.tool-output-row .secondary-action{flex:0 0 auto}.tool-error{color:#ffb7b7;font-size:.9rem;line-height:1.5;margin:0}@keyframes webDrift{0%{transform:perspective(1000px) rotateX(72deg) scale(1.25) translateZ(0)}50%{transform:perspective(1000px) rotateX(72deg) scale(1.4) translate3d(18px,-8px,0)}to{transform:perspective(1000px) rotateX(72deg) scale(1.25) translate3d(-12px,10px,0)}}@keyframes webSweep{0%{opacity:.35;transform:scale(1) translate3d(-10px,0,0)}to{opacity:.65;transform:scale(1.16) translate3d(14px,-12px,0)}}@media (max-width:900px){.topbar{max-width:100%}.audio-visualizer-main,.content,.hero-panel{grid-template-columns:1fr}.audio-visualizer-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.draw-shape-layout,.synth-builder-layout{grid-template-columns:1fr}.synth-builder-preview{position:static}.generator-layout,.tool-page-header{align-items:stretch;flex-direction:column;grid-template-columns:1fr}.generator-layout{display:grid}.electronics-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.qr-preview{justify-self:center;max-width:100%;min-height:0;min-width:0;width:max-content}.tool-output-row{flex-direction:column}.tool-output-row .secondary-action{align-self:flex-start}.topbar{flex-wrap:wrap;justify-content:center}.menu{order:3;width:100%}}@media (max-width:520px){.app-shell{padding-top:18px}.topbar{padding:12px 14px}.topbar-actions{justify-content:center;width:100%}.hero-copy h2{font-size:2.5rem}.metric-grid{grid-template-columns:1fr}.audio-visualizer-header{padding:16px}.audio-visualizer-header-inner{align-items:stretch;flex-direction:column}.audio-visualizer-header-inner>div:last-child{align-items:flex-start;flex-wrap:wrap}.audio-visualizer-main{padding:12px}.audio-visualizer-controls,.audio-visualizer-measurements{grid-template-columns:1fr}.audio-visualizer-scope-card{padding:10px}.synth-builder-header{gap:16px;grid-template-columns:1fr}.synth-builder-card,.synth-builder-preview{padding:16px}.contact-fields-two,.synth-fields-two{grid-template-columns:1fr}.electronics-calculator-header{align-items:stretch;flex-direction:column}.electronics-select-label{min-width:0}.electronics-fields,.electronics-fields:has(#band-first),.electronics-results{grid-template-columns:minmax(0,1fr)}.color-code-body{grid-template-columns:minmax(0,1fr)}.display-tool-header{align-items:stretch;flex-direction:column}.display-tool-select{grid-template-columns:1fr}.display-tool-kicker{grid-column:auto}.display-fullscreen-button{width:100%}.display-stage{min-height:360px;padding:16px}.scoreboard-stage{grid-template-columns:minmax(0,1fr)}.scoreboard-reset{grid-column:auto}.signal-generator-controls{gap:18px;grid-template-columns:minmax(0,1fr)}.signal-generator-footer{align-items:flex-start;flex-direction:column}.signal-generator-play{width:100%}.synth-library-backdrop{padding:10px}.synth-library-modal>header{padding:16px}.synth-library-list li{align-items:stretch;flex-direction:column}.synth-library-list li>div:last-child{justify-content:flex-end}}.arduino-page{padding:20px;width:min(100%,1240px)}.arduino-simulator{color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;position:relative}.arduino-simulator-runtime{border:0;height:0;pointer-events:none;position:fixed;visibility:hidden;width:0}.arduino-actions,.arduino-analog-control>span,.arduino-panel-heading,.arduino-simulator-toolbar{align-items:center;display:flex}.arduino-simulator-toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:12px;justify-content:space-between;padding-bottom:14px}.arduino-help-backdrop{box-sizing:border-box;padding:18px;z-index:30}.arduino-help-modal{box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr);max-height:min(84vh,760px);width:min(92vw,660px)}.arduino-help-modal .modal-header{margin-bottom:12px}.arduino-help-modal .modal-header h3{margin:0}.arduino-sketch-modal{box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr);max-height:min(84vh,720px);width:min(92vw,620px)}.arduino-sketch-modal .modal-header{margin-bottom:12px}.arduino-sketch-modal .modal-header h3{margin:0}.arduino-sketch-form{grid-gap:14px;align-content:start;display:grid;gap:14px;overflow-y:auto}.arduino-sketch-confirmation{grid-gap:16px;align-content:start;color:var(--muted);display:grid;font-size:.9rem;gap:16px;line-height:1.5}.arduino-sketch-confirmation p{margin:0}.arduino-sketch-confirm-actions{display:flex;gap:8px;justify-content:flex-end}.arduino-sketch-field{grid-gap:6px;color:var(--muted);display:grid;font-size:.78rem;font-weight:650;gap:6px}.arduino-sketch-field input,.arduino-sketch-field textarea{background:var(--bg);border:1px solid var(--line);border-radius:9px;box-sizing:border-box;color:var(--text);font:inherit;font-size:.9rem;padding:10px 11px;width:100%}.arduino-sketch-field textarea{resize:vertical}.arduino-sketch-field input:focus-visible,.arduino-sketch-field textarea:focus-visible{outline:2px solid #22d3ee;outline-offset:2px}.arduino-sketch-list{grid-gap:9px;align-content:start;display:grid;gap:9px;overflow-y:auto;padding:1px 4px 4px 0}.arduino-sketch-item{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:9px;display:flex;gap:12px;justify-content:space-between;min-width:0;padding:11px}.arduino-sketch-details{min-width:0}.arduino-sketch-details h4{font-size:.9rem;margin:0 0 3px;overflow-wrap:anywhere}.arduino-sketch-account,.arduino-sketch-details time,.arduino-sketch-empty,.arduino-sketch-message,.arduino-sketch-status{color:var(--muted);font-size:.74rem}.arduino-sketch-status{line-height:1.4;margin:4px 0 0}.arduino-sketch-details p{color:var(--muted);font-size:.8rem;line-height:1.45;margin:6px 0 0;overflow-wrap:anywhere}.arduino-sketch-item-actions{display:flex;flex:0 0 auto;gap:6px}.arduino-delete-sketch-button{align-items:center;display:inline-flex;gap:5px}.arduino-delete-sketch-button svg{height:14px;width:14px}.arduino-sketch-account,.arduino-sketch-empty,.arduino-sketch-message{margin:8px 0 0}.arduino-sketch-message{color:#86efac}.arduino-sketch-empty{padding:12px 0}.arduino-help-content{grid-gap:14px;display:grid;gap:14px;overflow-y:auto;padding:2px 6px 4px 0}.arduino-help-content section{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:11px 12px}.arduino-help-content h4{font-size:.84rem;margin:0 0 5px}.arduino-help-content p{color:var(--muted);font-size:.78rem;line-height:1.55;margin:0}.arduino-help-content code{color:#a5f3fc;font:.9em ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;overflow-wrap:anywhere}.arduino-help-safety{background:#fbbf240f!important;border-color:#fbbf244d!important}.arduino-example-picker{grid-gap:5px;color:var(--muted);display:grid;font-size:.7rem;font-weight:700;gap:5px;letter-spacing:.08em;text-transform:uppercase}.arduino-example-picker select{background:var(--bg);border:1px solid var(--line);border-radius:9px;color:var(--text);font:inherit;font-size:.82rem;letter-spacing:normal;max-width:100%;min-width:190px;padding:8px 30px 8px 10px;text-transform:none}.arduino-actions{flex-wrap:wrap;gap:7px}.arduino-help-button{align-items:center;display:inline-flex;gap:6px}.arduino-help-button svg{height:15px;width:15px}.arduino-button,.arduino-clear-button{background:var(--panel);border:1px solid var(--line);border-radius:9px;color:var(--text);cursor:pointer;font:inherit;font-size:.78rem;font-weight:650}.arduino-button{padding:8px 11px}.arduino-icon-button{display:inline-grid;flex:0 0 36px;height:36px;padding:0;place-items:center;width:36px}.arduino-icon-button svg{height:16px;width:16px}.arduino-icon-spinning{animation:arduino-icon-spin .9s linear infinite}@keyframes arduino-icon-spin{to{transform:rotate(1turn)}}.arduino-button:hover,.arduino-clear-button:hover{background:var(--panel-strong)}.arduino-button:focus-visible,.arduino-clear-button:focus-visible,.arduino-code-editor:focus-visible,.arduino-example-picker select:focus-visible,.arduino-switch:focus-visible{outline:2px solid #22d3ee;outline-offset:2px}.arduino-button:disabled{cursor:wait;opacity:.65}.arduino-run-button{background:#22d3ee21;border-color:#22d3ee73}.arduino-run-status{align-items:center;color:var(--muted);display:inline-flex;font-size:.73rem;font-weight:700;gap:7px}.arduino-run-status:before{background:#94a3b8;border-radius:50%;content:"";height:7px;width:7px}.arduino-run-status.is-running:before{background:#34d399;box-shadow:0 0 9px #34d39999}.arduino-run-status.is-paused:before,.arduino-run-status.is-starting:before{background:#fbbf24}.arduino-error{color:#fca5a5;font-size:.82rem;margin:10px 0 0}.arduino-simulator-layout{grid-gap:12px;align-items:start;display:grid;gap:12px;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);padding-top:12px}.arduino-side-panels{grid-gap:12px;display:grid;gap:12px;min-width:0}.arduino-panel{background:var(--panel);border:1px solid var(--line);border-radius:13px;min-width:0;padding:13px}.arduino-panel-heading{gap:10px;justify-content:space-between;margin-bottom:11px}.arduino-panel-heading h3{font-size:.91rem;font-weight:650;margin:2px 0 0}.arduino-panel-heading>div+span,.arduino-panel-heading>span{color:var(--muted);font-size:.7rem}.arduino-kicker{color:#67e8f9;font-size:.61rem;font-weight:750;letter-spacing:.11em;margin:0}.arduino-code-editor{background:#02060cc7;border:1px solid var(--line);border-radius:10px;box-sizing:border-box;color:#d6e5f4;display:block;font:.8rem/1.55 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;min-height:352px;padding:13px;resize:vertical;tab-size:2;width:100%}.arduino-safety-note{color:var(--muted);font-size:.69rem;line-height:1.45;margin:9px 1px 0}.arduino-pin-grid{grid-gap:5px;display:grid;gap:5px;grid-template-columns:repeat(4,minmax(0,1fr))}.arduino-pin{align-items:center;background:#02060c3d;border:1px solid var(--line);border-radius:7px;color:var(--muted);display:flex;font-size:.64rem;gap:5px;justify-content:space-between;min-width:0;padding:6px 7px}.arduino-pin span:first-child{color:var(--text);font-weight:700}.arduino-pin span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arduino-pin.is-high{background:#10b9811a;border-color:#34d3995c;color:#6ee7b7}.arduino-switch-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr))}.arduino-switch{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;color:var(--muted);cursor:pointer;display:flex;font:inherit;font-size:.68rem;gap:5px;justify-content:space-between;padding:7px 8px}.arduino-switch strong{color:var(--text);font-size:.6rem}.arduino-switch.is-on{background:#22d3ee1a;border-color:#22d3ee61;color:#67e8f9}.arduino-analog-controls{grid-gap:7px 12px;display:grid;gap:7px 12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.arduino-analog-control{grid-gap:3px;color:var(--muted);display:grid;font-size:.66rem;gap:3px}.arduino-analog-control>span{justify-content:space-between}.arduino-analog-control output{font-feature-settings:"tnum";color:var(--text);font-variant-numeric:tabular-nums}.arduino-analog-control input{accent-color:#22d3ee;margin:0;width:100%}.arduino-clear-button{font-size:.67rem;padding:5px 8px}.arduino-serial-output{background:#02060c94;border:1px solid var(--line);border-radius:8px;color:#b9d9d3;font:.7rem/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;max-height:150px;min-height:75px;overflow:auto;padding:8px 10px}.arduino-serial-output p{color:var(--muted);font-family:inherit;margin:0}.arduino-serial-output pre{font:inherit;margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.arduino-components-panel{grid-gap:10px;display:grid;gap:10px}.arduino-components-panel>.arduino-panel-heading{margin-bottom:0}.arduino-device-toggles{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.arduino-device-toggle{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;color:var(--text);cursor:pointer;display:flex;font-size:.72rem;gap:8px;min-width:0;padding:8px 9px}.arduino-device-toggle input{accent-color:#22d3ee;height:15px;margin:0;width:15px}.arduino-device-card{grid-gap:10px;background:#02060c38;border:1px solid var(--line);border-radius:10px;display:grid;gap:10px;min-width:0;padding:11px}.arduino-device-title{align-items:center;display:flex;gap:8px;justify-content:space-between}.arduino-device-title h4{font-size:.79rem;font-weight:650;margin:2px 0 0}.arduino-device-idle,.arduino-device-live{color:var(--muted);font-size:.66rem;font-weight:650;text-align:right}.arduino-device-live{color:#6ee7b7}.arduino-device-body{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:78px minmax(0,1fr)}.arduino-device-connection,.arduino-matrix-connections{grid-gap:6px;align-content:start;color:var(--muted);display:grid;font-size:.67rem;gap:6px}.arduino-device-connection small,.arduino-matrix-connections small{color:var(--muted);font-size:.62rem;line-height:1.45}.arduino-device-connection code,.arduino-matrix-connections code{color:#a5f3fc;font:.62rem/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;overflow-wrap:anywhere}.arduino-connection{align-items:center;color:var(--muted);display:flex;font-size:.66rem;gap:8px;justify-content:space-between}.arduino-connection select{background:var(--bg);border:1px solid var(--line);border-radius:6px;color:var(--text);font:inherit;min-width:58px;padding:4px 6px}.arduino-connection select:focus-visible,.arduino-volume-control input:focus-visible{outline:2px solid #22d3ee;outline-offset:2px}.arduino-motor-visual,.arduino-servo-visual{display:grid;height:70px;justify-self:center;place-items:center;width:70px}.arduino-motor-visual{background:radial-gradient(circle,#22d3ee24,#02060c66 66%);border:2px solid #22d3ee85;border-radius:50%;box-shadow:inset 0 0 16px #22d3ee1a}.arduino-motor-rotor{border:2px solid #a5f3fcb3;border-radius:50%;display:block;height:42px;position:relative;width:42px}.arduino-motor-rotor:after,.arduino-motor-rotor:before{background:#67e8f9;border-radius:999px;content:"";inset:18px 4px;position:absolute}.arduino-motor-rotor:after{transform:rotate(90deg)}.arduino-motor-rotor i{background:#a5f3fcd1;border-radius:999px;inset:8px 18px;position:absolute}.arduino-motor-rotor i:nth-child(2){transform:rotate(45deg)}.arduino-motor-rotor i:nth-child(3){transform:rotate(90deg)}.arduino-motor-rotor i:nth-child(4){transform:rotate(135deg)}.arduino-motor-visual.is-running .arduino-motor-rotor{animation:arduinoMotorSpin 1s linear infinite;animation:arduinoMotorSpin var(--motor-period,1s) linear infinite}@keyframes arduinoMotorSpin{to{transform:rotate(1turn)}}.arduino-servo-visual{align-content:center;color:var(--text);font-size:.68rem;gap:4px;justify-items:center}.arduino-servo-dial{background:radial-gradient(circle,#22d3ee1a,#0000 70%);border:2px solid #22d3ee8c;border-radius:50%;height:48px;position:relative;width:48px}.arduino-servo-dial:after,.arduino-servo-dial:before{background:#67e8f9;content:"";height:2px;position:absolute;top:22px;width:6px}.arduino-servo-dial:before{left:0}.arduino-servo-dial:after{right:0}.arduino-servo-dial i{background:#a5f3fc;border-radius:2px;height:3px;left:21px;position:absolute;top:21px;transform-origin:2px 2px;width:20px}.arduino-led-matrix{grid-gap:3px;background:#080e13;border:1px solid #22d3ee52;border-radius:9px;box-shadow:inset 0 0 18px #000000b3;display:grid;gap:3px;grid-template-columns:repeat(8,9px);justify-content:center;padding:9px}.arduino-led-matrix span{background:#26343c;border-radius:50%;height:9px;width:9px}.arduino-led-matrix span.is-lit{background:#fbbf24;box-shadow:0 0 6px #fbbf24bf}.arduino-matrix-connections{grid-template-columns:1fr}.arduino-matrix-device-body{grid-template-columns:minmax(0,176px) minmax(0,1fr)}.arduino-led-matrix{aspect-ratio:1;box-sizing:border-box;gap:4px;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));max-width:176px;width:100%}.arduino-led-matrix span{height:100%;min-width:0;width:100%}.arduino-speaker-controls{align-items:center;grid-template-columns:1fr auto}.arduino-speaker-controls>small,.arduino-speaker-controls>span{grid-column:1/-1}.arduino-volume-control{grid-gap:8px;align-items:center;display:grid;font-size:.66rem;gap:8px;grid-column:1/-1;grid-template-columns:52px minmax(0,1fr)}.arduino-volume-control input{accent-color:#22d3ee;margin:0;width:100%}@media (prefers-reduced-motion:reduce){.arduino-motor-visual.is-running .arduino-motor-rotor{animation:none}}@media (max-width:900px){.arduino-simulator-layout{grid-template-columns:minmax(0,1fr)}.arduino-code-editor{min-height:290px}}@media (max-width:600px){.information-feature-grid{grid-template-columns:minmax(0,1fr)}.arduino-page{padding:14px}.arduino-simulator-toolbar{align-items:stretch}.arduino-example-picker,.arduino-example-picker select{width:100%}.arduino-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.arduino-help-button{justify-content:center}.arduino-sketch-item{align-items:stretch;flex-direction:column}.arduino-sketch-item-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.arduino-button{padding:8px 6px}.arduino-run-status{grid-column:1/-1}.arduino-pin-grid,.arduino-switch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.arduino-device-body{grid-template-columns:70px minmax(0,1fr)}.arduino-matrix-device-body{grid-template-columns:minmax(0,1fr)}.arduino-led-matrix{justify-self:center;width:min(100%,176px)}.arduino-matrix-connections{grid-column:1/-1}}
/*# sourceMappingURL=main.e86b6f50.css.map*/