:root{--bg:#f6f4ef;--card:#fff;--ink:#1c1b19;--mute:#77736b;--line:#e3dfd6;--on:#1f9d55;--off:#c0392b}@media (prefers-color-scheme:dark){:root{--bg:#161513;--card:#201f1c;--ink:#f1eee8;--mute:#9a958b;--line:#34322d}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:16px/1.45 system-ui,-apple-system,Segoe UI,sans-serif}main{max-width:760px;margin:0 auto;padding:28px 16px 60px}header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}h1{margin:0;font-size:22px}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;margin-bottom:14px;padding:18px}input{border:1px solid var(--line);color:var(--ink);font:inherit;background:0 0;border-radius:10px;width:100%;min-width:0;padding:10px 12px}input:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.btn{background:var(--ink);color:var(--bg);font:inherit;cursor:pointer;white-space:nowrap;border:0;border-radius:10px;padding:10px 16px}.btn:disabled{opacity:.5;cursor:default}.link{color:var(--mute);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.link:hover{color:var(--ink)}.add{grid-template-columns:1fr 2fr auto;gap:10px;display:grid}@media (max-width:600px){.add{grid-template-columns:1fr}}.item{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.qrbox{background:#fff;border-radius:10px;flex:none;width:148px;height:148px;padding:8px;position:relative}.qrbox img{width:100%;height:100%;transition:opacity .2s;display:block}.qrbox.off img{opacity:.08}.qrbox.off:after{content:"OFF";color:var(--off);place-items:center;font-size:26px;font-weight:800;display:grid;position:absolute;inset:0}.info{flex:1;min-width:200px}.info b{font-size:17px}.info small{color:var(--mute);word-break:break-all;display:block}.row{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:10px;display:flex}.switch{background:var(--off);cursor:pointer;border:0;border-radius:30px;flex:none;width:56px;height:30px;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .2s;position:absolute;top:3px;left:3px}.switch[aria-checked=true]{background:var(--on)}.switch[aria-checked=true]:after{transform:translate(26px)}.status{font-weight:600}.empty{color:var(--mute);text-align:center}.err{color:var(--off);margin:8px 0 0;font-size:14px}.login{max-width:340px;margin:16vh auto 0}.login h1{margin-bottom:14px}
