:root{--bg:#f5f6f8;--surface:#fff;--surface-2:#f0f2f5;--text:#16181d;--muted:#5b6270;--border:#dfe2e8;--accent:#1a56db;--accent-text:#fff;--good:#0b6b3a;--good-bg:#e3f4ea;--bad:#a4262c;--bad-bg:#fbe9ea;--warn:#8a5300;--warn-bg:#fff2d9;--shadow:0 1px 2px #1018280f, 0 1px 3px #10182814;--radius:12px;color:var(--text);background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0f1218;--surface:#181c24;--surface-2:#212733;--text:#e8eaee;--muted:#a0a7b5;--border:#2c3341;--accent:#6ea0ff;--accent-text:#0b1020;--good:#6fdca0;--good-bg:#123524;--bad:#ff9aa0;--bad-bg:#40181b;--warn:#ffc56b;--warn-bg:#3b2a0c;--shadow:0 1px 2px #0006}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;line-height:1.45}a{color:var(--accent)}h1{margin:.25rem 0 1rem;font-size:1.6rem}h2{margin:1.5rem 0 .75rem;font-size:1.15rem}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--muted)}.small{font-size:.85rem}header nav{background:var(--surface);border-bottom:1px solid var(--border);z-index:5;flex-wrap:wrap;align-items:center;gap:.25rem;padding:.5rem 1rem;display:flex;position:sticky;top:0}header nav a{color:var(--muted);border-radius:8px;padding:.4rem .8rem;font-weight:500;text-decoration:none}header nav a:hover{background:var(--surface-2)}header nav a.active{background:var(--surface-2);color:var(--text);font-weight:600}main{max-width:1700px;margin:0 auto;padding:1.25rem 1rem 3rem}button,select,input:not([type=checkbox]){font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.4rem .7rem}button{cursor:pointer;background:var(--surface-2)}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.55;cursor:not-allowed}button[type=submit]{background:var(--accent);color:var(--accent-text);border-color:var(--accent);font-weight:600}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);gap:.6rem;max-width:44rem;margin:0 0 1.25rem;padding:1rem 1.25rem;display:grid}form h2{margin:0}label{color:var(--muted);gap:.2rem;font-size:.9rem;display:grid}label:has(input[type=checkbox]){align-items:center;gap:.4rem;display:flex}[role=alert]{color:var(--bad)}.toolbar{flex-wrap:wrap;align-items:end;gap:.75rem;margin-bottom:.5rem;display:flex}.toolbar label{min-width:12rem}.energy-list{gap:.25rem;margin:.75rem 0;padding:0;list-style:none;display:grid}.energy-row{font-variant-numeric:tabular-nums;border-radius:6px;grid-template-columns:3.5rem 1fr 8.5rem 4.5rem;align-items:center;gap:.5rem;padding:.2rem .5rem;display:grid}.energy-bar{background:var(--border);border-radius:4px;height:.9rem;display:block;overflow:hidden}.energy-bar>span{background:var(--bad);height:100%;display:block}.energy-cheap{background:var(--good-bg)}.energy-cheap .energy-bar>span{background:var(--good)}.energy-now{outline:2px solid var(--accent)}.energy-price{text-align:right}.energy-tag{color:var(--good);font-weight:600}@media (width<=480px){.energy-row{grid-template-columns:3rem 1fr 7rem}.energy-tag{display:none}}.segmented{border:1px solid var(--border);border-radius:8px;margin-left:auto;display:inline-flex;overflow:hidden}.segmented button{background:var(--surface);border:0;border-radius:0}.segmented button[aria-pressed=true]{background:var(--accent);color:var(--accent-text);text-decoration:none}.category-filter{flex-wrap:wrap;gap:.4rem;margin:.5rem 0;display:flex}.category-filter button{background:var(--surface);border-radius:999px;align-items:center;gap:.4rem;display:inline-flex}.category-filter button[aria-pressed=true]{background:var(--accent);color:var(--accent-text);text-decoration:none}.category-dot{border:1px solid var(--border);border-radius:50%;width:.7rem;height:.7rem}.category-count{opacity:.8;font-size:.8rem;font-weight:600}.category-section{background:var(--surface);border:1px solid var(--border);border-left:8px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin:0 0 .75rem;padding:.6rem 1rem}.category-head{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.category-head h2{margin:0;font-size:1.05rem}.category-tag{border-radius:999px;padding:.1rem .7rem;display:inline-block}.category-actions{flex-wrap:wrap;gap:.4rem;display:inline-flex}.category-toggle{margin-left:auto}.category-edit,.category-delete{background:var(--surface-2);border-radius:8px;flex-wrap:wrap;align-items:end;gap:.5rem;margin:.6rem 0;padding:.6rem .8rem;display:flex}.category-delete p{flex-basis:100%;margin:0}.category-section .table-scroll{margin-top:.6rem;overflow-x:visible}.category-section .sortable-table th,.category-section .sortable-table td{white-space:normal;vertical-align:top}.category-section .sortable-table th:first-child{width:40%}.chip{background:var(--surface-2);color:var(--muted);border-radius:999px;padding:.1rem .55rem;font-size:.8rem;font-weight:600;display:inline-block}.chip-good,.chip-deal{background:var(--good-bg);color:var(--good)}.chip-bad{background:var(--bad-bg);color:var(--bad)}.chip-warn{background:var(--warn-bg);color:var(--warn);margin-left:.4rem}.badge-below{background:var(--good-bg);color:var(--good);border-radius:999px;padding:.05rem .5rem;font-size:.75rem;font-weight:700}.eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.72rem;font-weight:700}.price-big{font-variant-numeric:tabular-nums;font-size:1.5rem}.price-hero{font-variant-numeric:tabular-nums;font-size:2.6rem;line-height:1.1}.grid{grid-template-columns:repeat(auto-fill,minmax(max(15rem,20% - .4rem),1fr));gap:.5rem;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0;box-shadow:var(--shadow);flex-direction:column;gap:.25rem;padding:0;font-size:.875rem;display:flex;overflow:hidden}.card>:not(.card-band){margin-inline:.5rem}.card>:first-child:not(.card-band),.card-band+*{margin-top:.35rem}.card-band{margin:0;padding:.1rem .35rem}.card-band select{width:100%;min-width:0;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:.1rem .15rem;font-size:.8rem;font-weight:600}.card-band select:focus-visible{outline-offset:1px;outline:2px solid}.card-band select option{color:var(--text);background:var(--surface)}.card-deal{border-color:var(--good)}.card-head{justify-content:space-between;align-items:center;gap:.35rem;display:flex}.card-head h2{overflow-wrap:anywhere;flex:1;min-width:0;margin:0;font-size:.95rem;font-weight:600;line-height:1.15}.card-head a{color:var(--text);text-decoration:none}.card-head a:hover{text-decoration:underline}.card-best{background:var(--surface-2);border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:.1rem .5rem;padding:.35rem .5rem;display:flex}.card-best .eyebrow{flex-basis:100%}.offers{margin:0;padding:0;list-style:none;display:grid}.offer{border-top:1px solid var(--border);justify-content:space-between;gap:.5rem;padding:.2rem .1rem;display:flex}.offer-store{overflow-wrap:anywhere;min-width:0}.offer-best .offer-price{color:var(--good);font-weight:700}.offer-price{font-variant-numeric:tabular-nums;white-space:nowrap}.card-foot{flex-wrap:wrap;align-items:center;gap:.15rem .35rem;margin-top:auto;margin-bottom:.3rem;display:flex}.card-foot .chip{white-space:nowrap;text-overflow:ellipsis;min-width:0;max-width:100%;overflow:hidden}.card-foot .card-checked{white-space:nowrap;margin-left:auto}.hero{border:1px solid var(--border);border-left:6px solid var(--good);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;align-items:flex-start;gap:.3rem;margin-bottom:1rem;padding:1.1rem 1.25rem;display:flex}.rank{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:.9rem;margin:0;padding:0;list-style:none;display:grid}.rank-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);gap:.5rem;padding:.9rem 1rem;display:grid}.rank-best{border-color:var(--good);box-shadow:0 0 0 1px var(--good)}.rank-item[aria-busy=true] .price-big{animation:1s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35}}.rank-head{align-items:center;gap:.5rem;display:flex}.rank-pos{background:var(--surface-2);border-radius:50%;place-items:center;width:1.6rem;height:1.6rem;font-size:.8rem;font-weight:700;display:inline-grid}.rank-best .rank-pos{background:var(--good);color:var(--surface)}.rank-name{font-weight:600}.rank-price{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.bar{background:var(--surface-2);border-radius:3px;height:6px;overflow:hidden}.bar span{background:var(--accent);height:100%;display:block}.rank-best .bar span{background:var(--good)}.rank-foot{flex-wrap:wrap;justify-content:space-between;gap:.5rem;display:flex}.product-header{margin-bottom:1rem}.product-header h1{margin-bottom:.25rem}.login form{flex-direction:column;gap:.5rem;max-width:20rem;display:flex}.error{color:var(--bad)}.table-scroll{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.sortable-table{border-collapse:collapse;width:100%}.sortable-table th,.sortable-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:.5rem .55rem}.sortable-table th{background:var(--surface-2)}.sortable-table th button{all:unset;cursor:pointer;font-weight:700}.sortable-table th button:focus-visible{outline:2px solid var(--accent)}tr.below-threshold{background:var(--good-bg);font-weight:600}.dialog-backdrop{background:#0000008c;place-items:center;display:grid;position:fixed;inset:0}.dialog{background:var(--surface);color:var(--text);border-radius:var(--radius);max-width:40rem;max-height:80vh;padding:1rem 1.5rem;overflow:auto}.dialog:focus-visible{outline:2px solid var(--accent)}.nav-badge{border:1px solid;border-radius:.8rem;margin-left:.25rem;padding:0 .4rem;font-size:.8em;font-weight:700}.warning-banner{border:2px solid;border-radius:8px;padding:.5rem .75rem;font-weight:700}.row-blocked{font-weight:700}.hint{margin:.25rem 0 0;font-size:.9em}@media (width<=600px){.grid,.rank{grid-template-columns:1fr}.price-hero{font-size:2.1rem}.segmented{margin-left:0}}@media (prefers-reduced-motion:reduce){.rank-item[aria-busy=true] .price-big{animation:none}}form.threshold-editor{box-shadow:none;background:0 0;border:0;align-items:center;gap:.4rem;max-width:none;margin:0;padding:0;display:flex}.threshold-editor input{width:5rem}.sortable-table th{white-space:normal;vertical-align:bottom;line-height:1.2}.sortable-table .threshold-editor input[placeholder]{width:6.5rem}.card-figures{grid-template-columns:repeat(3,minmax(0,1fr));gap:.1rem .4rem;margin-block:0;display:grid}.card-figures .fig{flex-direction:column;gap:0;min-width:0;display:flex}.card-figures .muted{white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.card-figures dt,.card-figures dd{margin:0}.card-figures dd{flex-direction:column;display:flex}.card-figures .price-big{font-size:1.0625rem;line-height:1.1}.card .eyebrow{font-size:.7rem}.card-toggle{padding:0 .35rem;font-size:.75rem;line-height:1.4}.card-move{align-items:center;gap:.1rem;display:inline-flex}.card-move button{padding:0 .3rem;font-size:.75rem;line-height:1.3}.drag-handle{cursor:grab;color:var(--muted,inherit);-webkit-user-select:none;user-select:none;padding:0 .2rem}.card-dragging{opacity:.45}.product-image{object-fit:contain;border:1px solid var(--border);background:#fff;border-radius:8px;flex:none;width:56px;height:56px}.card-head .product-image{border-radius:4px;width:36px;height:36px}.product-header{display:flow-root}.product-header .product-image{float:right;margin-left:1rem}.product-meta{margin:1em 0}.pvp-editor{flex-wrap:wrap;align-items:center;gap:.3rem .5rem;display:inline-flex}form.pvp-editor{box-shadow:none;vertical-align:middle;background:0 0;border:0;max-width:none;margin:0;padding:0}form.pvp-editor label{align-items:center;gap:.4rem;display:inline-flex}.pvp-editor p{flex-basis:100%;margin:0}.alert-prefs{border-collapse:collapse;width:100%;max-width:60rem;margin:.5rem 0 1rem}.alert-prefs th,.alert-prefs td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:.5rem .6rem}.alert-prefs td{text-align:center}.alert-prefs th[scope=row]{font-weight:600}.alert-prefs th .muted{font-weight:400;display:block}.alert-prefs input[type=checkbox]{width:1.15rem;height:1.15rem}form.drop-percent{flex-wrap:wrap;align-items:end;gap:.4rem .7rem;max-width:44rem;display:flex}form.drop-percent p{flex-basis:100%;margin:0}.card.card-hit{--surface:#fff;--surface-2:#f0f2f5;--text:#16181d;--muted:#5b6270;--border:#dfe2e8;--good:#0b6b3a;--good-bg:#e3f4ea;--bad:#a4262c;--bad-bg:#fbe9ea;color:#16181d;background:#fff;border:2px solid #16a34a;box-shadow:0 0 0 3px #ffffff2e}.card-hit .card-head a{color:#16181d}.card-drop{background:var(--good-bg);color:var(--good);border-radius:6px;padding:.1rem .45rem;font-size:.85rem;font-weight:700}.threshold-alert{color:#111827;border-radius:var(--radius);background:#fff;border:3px solid #16a34a;margin:0 0 1rem;padding:.8rem 1.1rem;box-shadow:0 0 0 4px #ffffff2e}.threshold-alert header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.threshold-alert h2{color:#15803d;margin:0;font-size:1.3rem}.threshold-alert button{color:#111827;background:#f3f4f6;border:1px solid #9ca3af}.threshold-alert ul{gap:.4rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.threshold-alert li{border-top:1px solid #e5e7eb;flex-wrap:wrap;align-items:center;gap:.4rem 1rem;padding:.35rem 0;display:flex}.threshold-alert-where{flex:12rem;font-weight:600}.threshold-alert-price{font-variant-numeric:tabular-nums;color:#15803d;font-size:1.7rem}.threshold-alert-limit{color:#4b5563}.threshold-alert .threshold-alert-buy{color:#fff;background:#15803d;border-radius:8px;padding:.45rem 1rem;font-weight:700;text-decoration:none}.threshold-alert .threshold-alert-buy:hover,.threshold-alert .threshold-alert-buy:focus-visible{background:#166534;outline:2px solid #111827}@media (prefers-reduced-motion:no-preference){.threshold-alert{animation:.5s ease-out threshold-alert-in}}@keyframes threshold-alert-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.product-toolbar{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1rem;margin:.6rem 0;display:flex}.add-link{flex-wrap:wrap;flex:24rem;align-items:flex-end;gap:.5rem;max-width:40rem;display:flex}.add-link label{flex:16rem}.add-link-message{flex-basis:100%;margin:0}.product-toolbar-category{margin-left:auto}
