:root{--bg:#f4f5f7;--card:#fff;--text:#14161a;--muted:#6b7280;--line:#e3e5e9;--accent:#1f9d6b;--accent-text:#fff;--warn:#c2410c;--on:#e6f6ef;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0f1115;--card:#181b21;--text:#eceef2;--muted:#9aa3b2;--line:#272b33;--accent:#4cc28c;--accent-text:#0b1a12;--warn:#fb923c;--on:#14291f}}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;font:16px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}#app{flex-direction:column;min-height:100%;display:flex}button,input,select{font:inherit;color:inherit}button{background:var(--card);border:1px solid var(--line);cursor:pointer;border-radius:10px;min-height:44px;padding:.55rem .9rem}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.primary{background:var(--accent);color:var(--accent-text);border-color:#0000;font-weight:600}button.primary:disabled{opacity:.5}button.ghost{color:var(--muted);background:0 0;border:none}.muted{color:var(--muted)}.pad{padding:1.5rem 1rem}.center{place-items:center;min-height:100vh;display:grid}#app>header{padding:calc(env(safe-area-inset-top) + .6rem) 1rem .6rem;background:var(--bg);z-index:2;align-items:center;gap:.75rem;display:flex;position:sticky;top:0}#app>header h1{flex:1;margin:0;font-size:1.15rem}.status{color:var(--accent);font-size:.8rem}.status.bad{color:var(--warn)}main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:0 1rem 6rem}nav{background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:3;display:flex;position:fixed;bottom:0;left:0;right:0}nav button{color:var(--muted);background:0 0;border:none;border-radius:0;flex:1;gap:2px;padding:.45rem .2rem;font-size:.72rem;display:grid}nav button span{font-size:1.15rem;line-height:1}nav button.active{color:var(--accent);font-weight:600}.chips{scrollbar-width:none;gap:.5rem;padding:.25rem 0 .9rem;display:flex;overflow-x:auto}.chips button{white-space:nowrap;border-radius:999px;min-height:38px}.chips button.active{background:var(--accent);color:var(--accent-text);border-color:#0000}.grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem;display:grid}.tile{background:var(--card);border:1px solid var(--line);border-radius:16px;align-content:start;gap:.5rem;padding:.8rem;transition:background .15s;display:grid}.tile.on{background:var(--on);border-color:var(--accent)}.tile>header{background:0 0;justify-content:space-between;align-items:start;gap:.25rem;padding:0;display:flex;position:static}.name{overflow-wrap:anywhere;font-size:.92rem;font-weight:600}.star{min-height:0;color:var(--line);background:0 0;border:none;padding:0 .25rem;font-size:1.1rem}.star.on{color:#eab308}.value{font-size:1.25rem;font-weight:600}.value.alert{color:var(--warn)}.row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.row button{flex:1}.stepper button{flex:0 0 48px;font-size:1.3rem}button.switch{background:var(--line);border:none;border-radius:999px;width:52px;height:30px;min-height:30px;padding:2px;position:relative}button.switch i{background:#fff;border-radius:50%;width:26px;height:26px;transition:transform .15s;display:block}button.switch[aria-checked=true]{background:var(--accent)}button.switch[aria-checked=true] i{transform:translate(22px)}input[type=range]{width:100%;accent-color:var(--accent);height:32px}.list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.list li{background:var(--card);border:1px solid var(--line);border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .9rem;display:flex}.list li div{display:grid}.list input[type=number],.list input[type=text],.list select{background:var(--bg);border:1px solid var(--line);border-radius:8px;max-width:12rem;min-height:40px;padding:.4rem .5rem}.list input[type=number]{text-align:right;width:6rem}.login{gap:1rem;width:min(22rem,100% - 2rem);margin:auto;padding:3rem 0;display:grid}.login h1{margin:0}.login label{color:var(--muted);gap:.35rem;font-size:.9rem;display:grid}.login input{background:var(--card);border:1px solid var(--line);min-height:48px;color:var(--text);border-radius:10px;padding:.7rem;font-size:1rem}.error{color:var(--warn);margin:0}.toast{left:50%;bottom:calc(env(safe-area-inset-bottom) + 4.5rem);background:var(--text);color:var(--bg);z-index:5;border-radius:10px;max-width:calc(100% - 2rem);padding:.6rem 1rem;position:fixed;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.stepper strong{white-space:nowrap;font-size:.95rem}.stepper button{flex:0 0 44px;padding:0}.stepper{gap:.25rem}.stepper button{flex:0 0 38px;min-width:0}.stepper strong{font-size:.9rem}#app>header h1 small{margin-left:.4rem;font-size:.75rem;font-weight:400}.panel{gap:.9rem;padding-bottom:2rem;display:grid}.panel h2,.panel h3{margin:.4rem 0 0}.panel h3{font-size:1rem}.panel form{background:var(--card);border:1px solid var(--line);border-radius:14px;gap:.7rem;padding:.9rem;display:grid}.panel label{color:var(--muted);gap:.3rem;font-size:.9rem;display:grid}.panel input,.panel select{background:var(--bg);border:1px solid var(--line);min-height:44px;color:var(--text);border-radius:10px;padding:.6rem;font-size:1rem}.panel .back{justify-self:start;padding-left:0}.panel .actions{gap:.4rem;display:flex}.panel .actions button{min-height:38px;padding:.3rem .7rem;font-size:.85rem}.cred{background:var(--on);border:1px solid var(--accent);border-radius:14px;gap:.4rem;padding:.9rem;display:grid}.cred dl{gap:.2rem;margin:0;display:grid}.cred dt{color:var(--muted);margin-top:.4rem;font-size:.8rem}.cred dd{margin:0}.cred code{word-break:break-all;-webkit-user-select:all;user-select:all;font-size:1.05rem}.error.pad{padding-top:0}.qr{width:min(100%,260px);height:auto;image-rendering:pixelated;background:#fff;border-radius:8px;justify-self:start;padding:4px}.big{min-height:52px;font-size:1.05rem}.center-text{text-align:center;margin:0}.tile.unreach{border-style:dashed;border-color:var(--warn)}.badge{color:var(--warn);font-size:.78rem;font-weight:600}
