.prod-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:1.5rem;align-items:start}.prod-grid>*{min-width:0}.prod-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.prod-fields>*{min-width:0}.prod-fields .prod-wide{grid-column:1/-1}.prod-controls h2,.prod-output h2{margin:0 0 1rem}.prod-output p{overflow-wrap:anywhere}.prod-output .sos-stats{margin-bottom:1rem}.prod-output dd{line-height:1.3}.prod-output .df-table{min-width:0;font-size:.85rem}.prod-output .df-table td,.prod-output .df-table th{padding:.65rem .55rem;overflow-wrap:anywhere}.prod-output .df-table-wrap{max-height:450px;overflow:auto;margin:1rem 0}.prod-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.prod-error{border:1px solid #ff8a8a;border-radius:10px;padding:.8rem;color:#ffb4b4}.prod-canvas{width:100%;height:280px;display:block;border-radius:12px;background:#08080d;margin-top:1rem}.dip-switches{display:flex;flex-wrap:wrap;gap:.5rem}.dip-switch{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.7rem;border:1px solid var(--line);border-radius:10px;min-width:64px;cursor:pointer}.dip-switch input{width:24px!important;height:24px!important;min-height:24px!important;accent-color:var(--amber)}.dip-switch:has(input:checked){background:rgba(255,180,0,.12);color:var(--amber)}.prod-output .btn{min-height:44px}.prod-code{font:700 clamp(2rem,8vw,4rem)/1.2 var(--head);letter-spacing:.12em;color:var(--amber);overflow-wrap:anywhere}.qr-preview{background:#fff;padding:1rem;border-radius:12px;max-width:400px;margin:1rem auto}.qr-preview svg,.qr-preview canvas{display:block;width:100%;height:auto;image-rendering:pixelated}.prod-fields fieldset{border:0;margin:0;padding:0}.prod-fields legend{margin-bottom:.8rem;font-size:.85rem;color:var(--muted)}
@media(max-width:980px){.prod-grid{grid-template-columns:1fr}}@media(max-width:520px){.prod-fields{grid-template-columns:1fr}.prod-output .sos-stats{grid-template-columns:1fr 1fr}.prod-canvas{height:240px}.prod-output .df-table{font-size:.78rem}.prod-output .df-table td,.prod-output .df-table th{padding:.55rem .35rem}.prod-actions .btn{flex:1 1 auto}.prod-controls,.prod-output{padding:1rem}}

/* Powered-speaker presets: native touch-friendly dropdown; styles scoped to this tool. */
[data-tool="speaker-coverage"] .speaker-preset{padding:1rem;border:1px solid rgba(255,180,0,.3);border-radius:12px;background:rgba(255,180,0,.045)}
[data-tool="speaker-coverage"] .speaker-preset .unit-field{margin:0}
[data-tool="speaker-coverage"] .speaker-preset p{margin:.65rem 0 0;line-height:1.6;overflow-wrap:anywhere}
[data-tool="speaker-coverage"] .speaker-preset a{color:var(--amber);text-underline-offset:3px}
[data-tool="speaker-coverage"] #margin-help{margin:0;line-height:1.6}
