:root{--bg:#0f172a;--card:#16213c;--line:#2b3a5c;--text:#e8edf7;--muted:#94a3b8;--good:#4ade80;--bad:#f87171;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}body{background:var(--bg);min-height:100dvh;margin:0}.screen{max-width:24rem;margin:0 auto;padding:3rem 1rem}.screen h1{letter-spacing:-.01em;margin:0 0 .5rem;font-size:1.5rem}.screen p{color:var(--muted);margin:0 0 1.25rem}.screen label{color:var(--muted);margin-bottom:.35rem;font-size:.875rem;display:block}.screen input{width:100%;font:inherit;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:.6rem;padding:.7rem .85rem}.screen input:focus-visible{outline:2px solid var(--text);outline-offset:1px}.screen button{font:inherit;border:1px solid var(--line);background:var(--card);color:inherit;cursor:pointer;border-radius:.6rem;padding:.7rem 1.1rem}.screen button:disabled{opacity:.5;cursor:default}.screen button.primary{background:var(--text);width:100%;color:var(--bg);border-color:var(--text);margin-top:1rem;font-weight:600}.screen button.link{color:var(--muted);background:0 0;border:0;padding:0;text-decoration:underline}.screen .error{color:var(--bad);margin:1rem 0 0}.screen .hint{color:var(--muted);margin:.75rem 0 0;font-size:.875rem}.screen .actions{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.screen input.code{letter-spacing:.35em;text-align:center;font-variant-numeric:tabular-nums;font-size:1.75rem}.app{min-height:100dvh}.app-main{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}.app-nav{z-index:10;padding:.35rem .25rem calc(.35rem + env(safe-area-inset-bottom));background:var(--card);border-top:1px solid var(--line);justify-content:space-around;gap:.25rem;display:flex;position:fixed;inset:auto 0 0}.app-nav .app-name{display:none}.nav-item{min-width:0;font:inherit;white-space:nowrap;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.5rem;flex:1;padding:.45rem .1rem;font-size:.6875rem;line-height:1.2}.nav-item.selected{color:var(--text);background:var(--bg);font-weight:600}.page{max-width:44rem;margin:0 auto;padding:1rem}.page h1{letter-spacing:-.01em;margin:0 0 .75rem;font-size:1.375rem}.page h2{color:var(--muted);margin:1.5rem 0 .5rem;font-size:1rem;font-weight:600}.page-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.page .hint{color:var(--muted);margin:.5rem 0;font-size:.875rem}.page .error{color:var(--bad);margin:.75rem 0}.page .good{color:var(--good);margin:.75rem 0}.tabs,.toggle{background:var(--card);border:1px solid var(--line);border-radius:.6rem;justify-content:space-between;gap:.25rem;padding:.25rem;display:flex}.tabs{margin:.75rem 0}.tabs button,.toggle button{font:inherit;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:.45rem;flex:0 auto;padding:.45rem .5rem;font-size:.8125rem}.tabs button.selected,.toggle button.selected{color:var(--bg);background:var(--text);font-weight:600}.filters{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.filters input[type=search]{min-width:0;font:inherit;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:.6rem;flex:12rem;padding:.6rem .75rem}.rows{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.row,.card{text-align:left;width:100%;font:inherit;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:.7rem;padding:.75rem .85rem;display:block}.row{cursor:pointer}.row-name{font-weight:600;display:block}.row-meta{color:var(--muted);margin-top:.15rem;font-size:.8125rem;display:block}.counts{gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.counts li{text-align:center;background:var(--card);border:1px solid var(--line);color:var(--muted);border-radius:.7rem;flex:1;padding:.75rem;font-size:.8125rem}.counts .count{color:var(--text);font-size:1.5rem;font-weight:700;display:block}.empty{text-align:center;border:1px dashed var(--line);border-radius:.7rem;padding:2rem 1rem}.field{margin-bottom:.9rem}.field-label{color:var(--muted);margin-bottom:.3rem;font-size:.875rem;display:block}.field input,.field select,.field textarea,.inline select{width:100%;font:inherit;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:.6rem;padding:.65rem .8rem}.field textarea{resize:vertical}.field .hint,.field .error{margin:.3rem 0 0;font-size:.8125rem}.field .error{color:var(--bad)}.field .hint{color:var(--muted)}.check{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.check input{width:1.1rem;height:1.1rem}.inline{align-items:center;gap:.5rem;display:flex}.inline select{width:auto;padding:.35rem .5rem}.page button,.panel button{font:inherit;color:inherit;background:var(--card);border:1px solid var(--line);cursor:pointer;border-radius:.6rem;padding:.65rem 1rem}.page button:disabled,.panel button:disabled{opacity:.5;cursor:default}.page button.primary,.panel button.primary{width:100%;color:var(--bg);background:var(--text);border-color:var(--text);margin-top:.5rem;font-weight:600}.page button.primary.compact{width:auto;margin:0;padding:.5rem .9rem}.page button.link,.panel button.link{color:var(--muted);background:0 0;border:0;padding:.35rem 0;text-decoration:underline}.page button.link.danger,.panel button.link.danger{color:var(--bad)}.actions{flex-wrap:wrap;gap:1rem;margin-top:.75rem;display:flex}.panel-backdrop{z-index:20;background:#00000080;position:fixed;inset:0}.panel{z-index:21;padding:1rem 1rem calc(2rem + env(safe-area-inset-bottom));background:var(--bg);position:fixed;inset:0;overflow-y:auto}.panel-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.panel-head h2{margin:0;font-size:1.125rem}@media (min-width:48rem){.app{grid-template-columns:14rem 1fr;display:grid}.app-main{padding-bottom:2rem}.app-nav{border-top:0;border-right:1px solid var(--line);flex-direction:column;justify-content:flex-start;gap:.25rem;height:100dvh;padding:1rem .75rem;position:sticky;inset:0 auto 0 0}.app-nav .app-name{letter-spacing:-.01em;margin-bottom:1rem;padding:0 .5rem;font-weight:700;display:block}.nav-item{text-align:left;flex:none;width:100%;padding:.6rem .75rem;font-size:.9375rem}.tabs{justify-content:flex-start}.tabs button,.toggle button{padding:.45rem .75rem;font-size:.875rem}.page{padding:1.5rem}.panel{border-left:1px solid var(--line);width:min(28rem,100%);padding:1.5rem;inset:0 0 0 auto}}
