:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1218;--surface:#171b24;--surface-2:#1e2430;--border:#2a3140;--text:#e6e9ef;--muted:#8b94a7;--accent:#4f9cf9;--accent-hover:#6aaefb;--accent-text:#08111f;--star:#f5b83d;--danger:#f06a6a;--success:#4cc38a;--radius:10px;color:var(--text);background:var(--bg);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0}.app{max-width:820px;padding:calc(32px + env(safe-area-inset-top)) calc(20px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(20px + env(safe-area-inset-left));text-align:left;margin:0 auto}h1{letter-spacing:-.01em;margin:0 0 20px;font-size:1.75rem;font-weight:700}h2{margin:0 0 12px;font-size:1.05rem;font-weight:600}h2 small{color:var(--muted);margin-left:8px;font-weight:400}input,select,button{font:inherit;color:var(--text)}input[type=text],input[type=number],input:not([type]),select{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;min-width:0;padding:9px 12px}input::placeholder{color:var(--muted)}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button{cursor:pointer}.add button[type=submit],.fav-add{background:var(--accent);color:var(--accent-text);border:none;border-radius:8px;padding:9px 18px;font-weight:600;transition:background .15s}.add button[type=submit]:hover,.fav-add:hover{background:var(--accent-hover)}input[type=checkbox]{width:20px;height:20px;accent-color:var(--success);cursor:pointer;flex:none}.add{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);gap:8px;margin-bottom:24px;padding:14px;display:flex}.name-field{flex:1;min-width:0;position:relative}.name-field input{width:100%}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:16px;display:flex}.tabs button{color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-weight:500}.tabs button:hover{color:var(--text)}.tabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent)}ul{margin:0;padding:0;list-style:none}li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:10px;margin-bottom:8px;padding:10px 14px;display:flex}li.done{background:0 0}li.done .name{color:var(--muted);text-decoration:line-through}.name{overflow-wrap:anywhere;flex:1;min-width:0}.meta{color:var(--muted);white-space:nowrap}.qty{width:76px}.empty{color:var(--muted);text-align:center;padding:24px 0}.star,.del{color:var(--muted);background:0 0;border:none;border-radius:6px;flex:none;padding:4px 8px;font-size:1.15rem;line-height:1}.star:hover,.star.on{color:var(--star)}.del:hover{color:var(--danger)}.fav-add{padding:7px 14px;font-size:.9rem}.actions{justify-content:space-between;gap:12px;margin-top:12px;display:flex}.link{color:var(--muted);background:0 0;border:none;padding:4px 0;text-decoration:underline}.link:hover{color:var(--text)}.link.danger{color:var(--danger)}footer{color:var(--muted);overflow-wrap:anywhere;margin-top:32px;font-size:.8rem}@media (width<=640px){.app{padding:calc(20px + env(safe-area-inset-top)) calc(14px + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(14px + env(safe-area-inset-left))}h1{font-size:1.4rem}.add{flex-wrap:wrap;padding:12px}.name-field{flex:100%}.add .qty{flex:1 1 0;width:auto}.add select{flex:1 1 0}.add button[type=submit]{flex:100%;padding:11px}.tabs button{flex:1;padding:12px 8px}li{flex-wrap:wrap;row-gap:8px}li .name{flex:calc(100% - 36px)}li .qty{flex:70px;width:auto}li select{flex:2 90px}li .meta{flex:1}.actions{flex-direction:column;align-items:flex-start}}.install{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;margin-top:24px;padding:9px 16px}.install:hover{border-color:var(--accent)}.install-hint{color:var(--muted);margin:24px 0 0;font-size:.85rem}.name.edit{background:0 0;border-color:#0000;padding-left:6px}.name.edit:hover{border-color:var(--border)}.name.edit:focus{background:var(--surface-2);border-color:var(--accent)}.suggestions{z-index:10;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;max-height:220px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0008}.suggestions li{cursor:pointer;background:0 0;border:none;border-radius:0;margin:0;padding:10px 12px}.suggestions li.active,.suggestions li:hover{background:var(--border)}.suggestions li{flex-wrap:nowrap}.suggestions li .name{flex:1}.suggestions li .meta{flex:none}.add-package{gap:8px;margin-bottom:12px;display:flex}.add-package input{flex:1;min-width:0}.add-package button{background:var(--accent);color:var(--accent-text);border:none;border-radius:8px;padding:9px 18px;font-weight:600}.login{max-width:420px;padding-top:15vh}.login-form input{flex:1;min-width:0}.error{color:var(--danger);margin:0}.signout{margin-left:12px}
