:root{color-scheme:light;--ink:#183437;--muted:#52696c;--line:#d4dfdc;--paper:#f4f6f1;--green:#12614f;--red:#9b3434}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif}header{height:94px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 max(24px,calc((100vw - 1240px)/2))}.brand{display:flex;align-items:center;gap:14px;font-size:24px;font-weight:750;color:var(--green);text-decoration:none}.brand>span{font-size:20px;color:var(--ink)}.brand small{display:block;font-size:13px;font-weight:450;color:var(--muted)}main{max-width:1240px;padding:24px;margin:auto;min-height:calc(100vh - 175px)}h1{font-size:38px;letter-spacing:-1.1px;line-height:1.15;margin:10px 0 14px}h2{font-size:22px;line-height:1.3;margin:0 0 16px}h3{font-size:18px;margin:24px 0 12px}p{margin:10px 0 20px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:1.8px;color:var(--green)}.page-title{display:flex;align-items:center;justify-content:space-between;margin:22px 0 30px;gap:20px}.page-title p{color:var(--muted);margin:0}.card{background:#fff;border:1px solid var(--line);padding:28px;border-radius:8px}.narrow{max-width:490px;margin:55px auto}.narrow form{display:grid;gap:12px}.narrow .primary{margin:8px 0}.muted,.footnote{color:var(--muted);font-size:14px}.workspace{display:grid;grid-template-columns:235px minmax(0,1fr);gap:24px;margin:26px 0}aside{padding-top:15px}aside h2{font-size:15px;text-transform:uppercase;letter-spacing:1px}button{font:600 14px/1.3 system-ui;min-height:43px;padding:11px 17px;border:1px solid var(--line);border-radius:5px;background:white;color:var(--ink);cursor:pointer}button:hover{background:#ecf2ee}button:disabled{opacity:.55;cursor:wait}.primary{background:var(--green);border-color:var(--green);color:white}.primary:hover{background:#0c4c3d}.danger{color:var(--red)}.device{display:block;width:100%;text-align:left;margin:7px 0;padding:15px;overflow-wrap:anywhere}.device.active{border-left:4px solid var(--green);background:#e3eee7}.device small{display:block;font-weight:400;font-size:13px;margin-top:5px;color:var(--muted)}input{width:100%;padding:12px;font:16px system-ui;border:1px solid #91a7a1;border-radius:4px;min-height:45px}label{display:block;font-size:14px;font-weight:600;margin-bottom:6px}.inline{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.inline>div{flex:1;min-width:200px}.status-row{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.badge{font-size:13px;padding:5px 10px;border-radius:4px;background:#edf1ed}.good{background:#e1f0e7;color:#174e3f}.pending{background:#fff1ce;color:#6b5014}.blocked{background:#f8e5e3;color:#913332}table{width:100%;border-collapse:collapse;margin:16px 0}th{text-align:left;color:var(--muted);font-size:13px;font-weight:650;border-bottom:1px solid var(--line);padding:12px 8px}td{border-bottom:1px solid #e6ece8;padding:16px 8px;vertical-align:middle}td:first-child{max-width:330px;overflow-wrap:anywhere}td small{display:block;color:var(--muted);font-size:12px;margin-top:5px}td:last-child{text-align:right}.table-wrap{overflow:auto}.empty{text-align:center;padding:45px 20px;color:var(--muted)}.empty h2{color:var(--ink)}.detail-top{display:flex;justify-content:space-between;gap:18px;align-items:start}.detail-top h2{overflow-wrap:anywhere}.mono,.code{font-family:ui-monospace,Consolas,monospace;overflow-wrap:anywhere}.code{font-size:30px;letter-spacing:4px;background:#edf3eb;padding:12px;display:inline-block}#notice:not(:empty){border-left:4px solid var(--green);background:#e4efe8;padding:12px 16px}#notice.error{border-color:var(--red);background:#fae9e7}footer{max-width:1240px;margin:auto;padding:24px;color:var(--muted);font-size:13px;border-top:1px solid var(--line)}:focus-visible{outline:3px solid #bb7e22;outline-offset:3px}[hidden]{display:none!important}@media(max-width:760px){header{padding:0 20px;height:80px}main{padding:20px}.workspace{grid-template-columns:1fr}.page-title{align-items:start}h1{font-size:30px}.card{padding:20px}#devices{display:flex;gap:8px;flex-wrap:wrap}.device{width:auto;min-width:150px}.detail-top{flex-wrap:wrap}th,td{padding:12px 5px}.inline button{flex:1}}
