:root{color:#20302f;font-synthesis:none;--ink:#20302f;--muted:#657572;--surface:#fffdf8;--primary:#26786f;--primary-dark:#175c56;--accent:#f2c879;--danger:#a74343;--radius:1.25rem;--shadow:0 18px 50px #1f3e3a1a;background:#f6f3ec;font-family:Inter,ui-rounded,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}a{color:inherit}.app-shell{width:min(100% - 2rem,70rem);margin:auto}.app-header{justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 0;display:flex}.app-header nav{gap:1rem;display:flex}.app-header a{text-decoration:none}.brand{color:var(--primary-dark);font-size:1.25rem;font-weight:800}main{padding:2rem 0 4rem}.panel{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #e8e1d5;padding:clamp(1.5rem,4vw,3rem)}.narrow{width:min(100%,32rem);margin:auto}.hero{padding-block:clamp(2.5rem,8vw,6rem)}h1{max-width:18ch;margin:.25rem 0 1rem;font-size:clamp(2rem,6vw,4rem);line-height:1.05}.narrow h1,.child-panel h1{font-size:clamp(2rem,5vw,3rem)}.eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.actions.compact{margin-top:0}.button{cursor:pointer;border:0;border-radius:.9rem;justify-content:center;align-items:center;min-height:3rem;padding:.75rem 1.15rem;font-weight:750;text-decoration:none;display:inline-flex}.button.primary{color:#fff;background:var(--primary)}.button.primary:hover{background:var(--primary-dark)}.button.secondary{color:var(--ink);background:#e5efec}.button.danger{color:#fff;background:var(--danger)}.button.large{width:100%;min-height:4rem;font-size:1.1rem}.button:disabled{cursor:wait;opacity:.55}form{gap:1rem;display:grid}.inline-form{grid-template-columns:minmax(12rem,1fr) auto;align-items:end}label{gap:.4rem;font-weight:700;display:grid}input{background:#fff;border:2px solid #cfd9d5;border-radius:.8rem;min-height:3rem;padding:.65rem .8rem}input:focus{border-color:var(--primary);outline:3px solid #26786f2e}.pairing{background:#fff0c9;border-radius:1rem;width:fit-content;margin:1.5rem 0;padding:1rem 1.5rem;display:grid}.pairing strong{letter-spacing:.18em;font-size:2.5rem}.device-list{gap:.75rem;padding:0;list-style:none;display:grid}.device-list li{border-top:1px solid #e9e3d9;justify-content:space-between;align-items:center;gap:1rem;padding-top:.9rem;display:flex}.device-list li>div:first-child{gap:.25rem;display:grid}.status{color:var(--muted);text-transform:capitalize}.child-panel{text-align:center}.child-grid{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1rem;display:grid}.child-button{border-radius:var(--radius);min-height:7rem;color:var(--ink);cursor:pointer;background:#e6f2ef;border:3px solid #0000;font-size:1.5rem;font-weight:850}.child-button.selected{border-color:var(--primary);background:#cde9e2}.code-input{text-align:center;letter-spacing:.3em;width:min(100%,18rem);min-height:5rem;margin:auto;font-size:2rem}.error{color:#8a2525;font-weight:700}.success{color:var(--primary-dark);font-weight:750}pre{color:#d8eee9;background:#172523;border-radius:1rem;margin-top:1.5rem;padding:1rem;overflow:auto}.sr-only{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=42rem){.app-header,.device-list li{flex-direction:column;align-items:stretch}.app-header nav{justify-content:space-between}.inline-form{grid-template-columns:1fr}.actions.compact .button{flex:1}}@media (prefers-reduced-motion:no-preference){.button,.child-button{transition:transform .12s,background-color .12s}.button:active,.child-button:active{transform:scale(.98)}}
