:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17332f;background:#f4f5ef;font-synthesis:none;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}main{max-width:1120px;padding:32px 40px;margin:auto}header{height:104px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dce1d7}.wordmark{color:inherit;text-decoration:none;font-weight:750;letter-spacing:-1.2px;font-size:27px;display:flex;align-items:center}.logo{background:#173c34;color:#d6f587;display:inline-grid;place-items:center;width:34px;height:34px;border-radius:9px;font-size:32px;margin-right:10px;line-height:1}.wordmark-dot{color:#6c8e3c}.header-tag,.eyebrow,.rig>span,footer{font-size:10px;letter-spacing:1.6px;font-weight:700}.header-tag{color:#718077}.intro{padding:52px 0 36px;position:relative}.eyebrow{display:flex;align-items:center;gap:8px;color:#66816a}.dot{width:7px;height:7px;background:#83a447;display:inline-block;border-radius:50%;flex-shrink:0}h1{font-size:clamp(40px,6vw,60px);letter-spacing:-2.5px;line-height:1.08;font-weight:600;margin:20px 0}h1>span{color:#829276}.intro>p{position:absolute;right:15px;bottom:43px;font-size:14px;color:#728174;line-height:1.8}.layout{display:grid;grid-template-columns:1fr 1.16fr;gap:22px;align-items:start}.panel{background:#fff;border:1px solid #e0e5da;border-radius:18px;padding:26px;box-shadow:0 6px 22px #223b2304}.panel-heading{display:flex;gap:10px;align-items:center;margin-bottom:24px}.step{color:#8c9c86;font-size:11px;border:1px solid #dde5d7;border-radius:50%;width:25px;height:25px;display:grid;place-items:center}h2{font-size:17px;letter-spacing:-.4px;margin:0;font-weight:650}.save-state{font-size:10px;color:#718369;margin-left:auto}.rig{background:#f5f7f0;border-radius:10px;padding:15px 17px;margin-bottom:25px}.rig>span{color:#8b9982;display:block;margin-bottom:8px;font-size:9px}.rig strong{font-size:13px;display:inline-block;margin-right:12px;font-weight:650}.rig i{font-size:10px;font-style:normal;font-weight:400;color:#7b8c72;margin-left:2px}.rig p{margin:7px 0 0;color:#819078;font-size:11px}label{display:block;font-size:12px;font-weight:600;margin:0 0 8px}label span{color:#8d9789;font-size:10px;float:right;font-weight:400}input,textarea{width:100%;border:1px solid #dbe2d4;background:#fff;border-radius:8px;color:#294333;padding:12px;outline:none;min-height:46px}textarea{resize:vertical;font-size:14px;font-variant-numeric:tabular-nums}input{font-size:16px}input:focus,textarea:focus{border-color:#65874d;box-shadow:0 0 0 3px #86ab6520}textarea::placeholder{color:#a7b09f}.hint,.small{font-size:11px;line-height:1.7;color:#7c8974;margin:8px 0 20px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.field-pair label{font-size:11px}.field-pair input{font-variant-numeric:tabular-nums}details{border-top:1px solid #edf0e8;margin-top:24px;padding-top:16px}summary{font-size:12px;color:#6c7e62;cursor:pointer;padding:6px 0}details .hint{margin:15px 0 0}.primary,.secondary{width:100%;border-radius:8px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;min-height:48px}.primary{margin-top:23px;background:#193e34;color:#e8f1dd;border:1px solid #193e34}.primary:hover{background:#28523f}.primary>span,.secondary>span{font-size:20px;line-height:1}.local-note{font-size:10px;color:#929c8b;text-align:center;margin:12px 0 0}.results{padding-bottom:22px;overflow:visible}.empty{min-height:370px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:28px 0}.signal{display:flex;align-items:center;justify-content:center;width:110px;height:110px;border-radius:50%;background:repeating-radial-gradient(circle,#f8faf4 0 20px,#e7eddf 21px 22px);color:#87a36c;font-size:28px;letter-spacing:3px;margin-bottom:20px}.empty h3{font-size:20px;letter-spacing:-.5px;font-weight:550;margin:5px 0 8px}.empty p{font-size:12px;line-height:1.8;color:#87927d;max-width:320px;margin:0}.empty-tag{border:1px solid #e2e9d9;border-radius:5px;padding:4px 9px;margin-top:19px;letter-spacing:1px;font-size:9px;color:#8a9a7d}.venue-note{border-top:1px solid #e6ecdf;padding-top:18px;display:flex;gap:10px;color:#8b977e}.venue-note>span{font-size:17px}.venue-note p{margin:0;font-size:10px;line-height:1.8}.venue-note strong{font-weight:550;color:#66785a}.result-summary{background:#eef5e5;padding:11px 13px;border-radius:8px;display:flex;gap:8px;align-items:center;font-size:12px}.result-summary>span:last-child{margin-left:auto;color:#7b9066;font-size:10px}.channel{display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf0e9;padding:15px 0}.channel-index{width:28px;height:32px;display:grid;place-items:center;background:#eff4e7;border-radius:6px;color:#7b925b;font-size:11px}.channel-index.stereo{background:#e4eee7;color:#426b52}.channel-name h3{font-size:12px;font-weight:600;margin:0}.channel-name p{font-size:10px;color:#8c9882;margin:3px 0 0}.channel-name p span{margin:0 5px}.frequency{margin-left:auto;text-align:right;font-variant-numeric:tabular-nums;font-size:23px;font-weight:550;letter-spacing:-.8px}.frequency small{display:block;font-size:9px;color:#8f9d83;font-weight:400;letter-spacing:.5px}.margin{font-size:10px;color:#849576;margin:16px 0}.margin strong{font-weight:600}.secondary{border:1px solid #dce6d3;background:#f7faf2;color:#577447;margin-bottom:8px}.error{font-size:12px;background:#fff1ec;border-radius:8px;padding:12px;color:#9a4b2d}footer{display:flex;justify-content:space-between;font-size:9px;color:#95a08e;margin:32px 0 25px;gap:20px}footer span:last-child{letter-spacing:0;font-weight:400}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #88a65f;outline-offset:4px}.animated{animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.animated{animation:none}}@media(max-width:760px){main{padding:20px;max-width:540px}header{height:78px}.header-tag{font-size:8px;letter-spacing:1px}.intro{padding:34px 0 28px}.intro>p{position:static;font-size:13px;margin:18px 0 0}.intro>p br{display:none}h1{font-size:44px;margin:16px 0}.layout{grid-template-columns:1fr;gap:18px}.panel{padding:22px}.empty{min-height:290px}.save-state{font-size:9px}.frequency{font-size:22px}footer{flex-direction:column;gap:8px;margin-bottom:28px}.field-pair{gap:14px}.eyebrow{font-size:9px}}@media(max-width:360px){main{padding:16px 12px}.panel{padding:17px}h1{font-size:39px}.channel{gap:8px}.frequency{font-size:20px}.save-state{font-size:8px}.header-tag{display:none}}.spectrum-section{margin-top:18px}.ghost-toggle{display:flex;align-items:center;gap:10px;min-height:44px;margin:0;font-size:12px;cursor:pointer}.ghost-toggle>span:first-child{float:none;color:#516744;font-size:12px;font-weight:500;margin-right:auto}.ghost-toggle input{position:absolute;width:1px;height:1px;min-height:0;padding:0;opacity:0}.switch-track{position:relative;float:none;width:38px;height:22px;border-radius:12px;background:#cbd5c1;flex-shrink:0}.switch-track:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0002}.ghost-toggle input:checked+.switch-track{background:#356b50}.ghost-toggle input:checked+.switch-track:after{left:19px}.ghost-toggle input:focus-visible+.switch-track{outline:3px solid #88a65f;outline-offset:3px}.spectrum-plot{display:block;width:100%;height:auto;min-height:110px;overflow:visible;margin:4px 0 12px}.spectrum-plot text{font-size:14px;fill:#748368}.ghost-help{margin:0;font-size:10px}.occupied-legend{display:flex;gap:6px 12px;flex-wrap:wrap;font-size:10px;color:#75816b}.occupied-legend span{display:inline-flex;align-items:center;gap:5px}.occupied-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.channel-row{display:block;padding:0;margin:0 0 12px;border:1px solid #dce5d4;border-radius:10px;background:#fff}.channel-row.is-highlighted .channel-select{background:#edf4e5;border-color:#8da87a}.channel-select:hover{background:#f4f8ee}.channel-select{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;text-align:left;border:1px solid transparent;border-radius:9px 9px 0 0;background:#fff;color:inherit;padding:12px;transition:background-color .12s ease}.channel-select .channel-index{flex-shrink:0}.channel-select .channel-name strong{display:block;font-size:12px;font-weight:600}.channel-meta{display:block;font-size:10px;color:#8c9882;margin-top:3px}.row-im3{padding:10px 12px;min-height:48px;gap:8px;border-top:1px solid #dce5d4;border-radius:0 0 9px 9px;background:#f5f7f1}.row-im3:hover{background:#eaf0e3}.row-im3>span:first-child{font-size:10px}.row-im3 .im3-abbr{float:none;font-size:9px;color:#89977f}.channel-select:focus-visible{outline:2px solid #88a65f;outline-offset:2px}@media(prefers-reduced-motion:reduce){.channel-select{transition:none}}@media(max-width:360px){.channel-select{gap:8px}.row-im3{padding:10px 12px}.row-im3>span:first-child{font-size:9px}}.im3-count{display:inline-block;min-width:5ch;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.switch-save-error{min-height:1.7em;font-size:10px;line-height:1.7;margin:0 0 8px;color:#9a4b2d}.spectrum-sticky-header{position:sticky;top:0;z-index:5;background:#fff;padding:12px 0 8px;border-bottom:1px solid #e6ecdf;box-shadow:0 8px 12px -12px #17332f55}.spectrum-sticky-header .switch-save-error{margin-bottom:0}.spectrum-section .channel-list{padding-top:12px}
