:root{--ground: #0b1220;--surface: #131c2e;--surface-2: #182339;--line: #223049;--text: #e7ecf3;--muted: #7c8aa3;--accent: #e0a458;--good: #4fb477;--warn: #d96a5b;--info: #5b9bd9;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--display: "Space Grotesk", system-ui, sans-serif;--body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--ground);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit}.app{max-width:480px;margin:0 auto;min-height:100vh;padding-bottom:40px}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#0b1220e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.wordmark{font-family:var(--mono);font-weight:700;font-size:13px;letter-spacing:.28em;color:var(--text);text-transform:uppercase}.wordmark span{color:var(--accent)}.livedot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--good);margin-right:7px;vertical-align:middle;box-shadow:0 0 #4fb47799;animation:pulse 2.4s infinite}@keyframes pulse{0%{box-shadow:0 0 #4fb47780}70%{box-shadow:0 0 0 6px #4fb47700}to{box-shadow:0 0 #4fb47700}}@media (prefers-reduced-motion: reduce){.livedot{animation:none}}.btn{border:1px solid var(--line);background:var(--surface-2);color:var(--text);padding:8px 14px;border-radius:8px;font-size:13px;font-weight:600}.btn-accent{background:var(--accent);color:#201603;border-color:transparent}.btn-accent:active{transform:translateY(1px)}.btn:disabled{opacity:.5}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.stat{background:var(--ground);padding:12px 8px;text-align:center}.stat .n{font-family:var(--mono);font-size:19px;font-weight:700}.stat .l{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:3px}.filters{display:flex;gap:8px;padding:12px 16px;overflow-x:auto}.chip{white-space:nowrap;border:1px solid var(--line);background:transparent;color:var(--muted);padding:6px 12px;border-radius:999px;font-size:12px;font-weight:600}.chip.on{background:var(--surface-2);color:var(--text);border-color:var(--accent)}.list{display:flex;flex-direction:column;gap:12px;padding:4px 16px}.ticket{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 15px;position:relative}.ticket.review{border-left:3px solid var(--info)}.ticket-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.addr{font-family:var(--display);font-weight:600;font-size:15px;line-height:1.25}.pc{color:var(--muted);font-size:12px;font-family:var(--mono);margin-top:2px}.discount{text-align:right;flex-shrink:0}.discount .pct{font-family:var(--mono);font-weight:700;font-size:26px;line-height:1}.discount .cap{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.marginbar{height:4px;border-radius:2px;background:var(--line);margin-top:6px;overflow:hidden}.marginbar>i{display:block;height:100%;border-radius:2px}.figs{display:flex;gap:18px;margin:12px 0 10px;font-family:var(--mono);font-size:13px}.figs .k{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.figs .v{font-weight:500;margin-top:2px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.tag{font-size:11px;padding:3px 8px;border-radius:6px;background:var(--surface-2);color:var(--muted)}.tag.sig{color:var(--accent)}.tag.reduced{color:var(--good);border:1px solid rgba(79,180,119,.35)}.tag.review{color:var(--info)}.offers{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-radius:8px;overflow:hidden}.offer{background:var(--surface-2);padding:8px 6px;text-align:center}.offer .k{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.offer .v{font-family:var(--mono);font-weight:700;font-size:14px;margin-top:3px}.offer.open .v{color:var(--accent)}.offer.ceiling .v{color:var(--warn)}.score{--p: 0;width:44px;height:44px;border-radius:50%;flex-shrink:0;background:conic-gradient(var(--accent) calc(var(--p) * 1%),var(--line) 0);display:grid;place-items:center}.score>i{width:34px;height:34px;border-radius:50%;background:var(--surface);display:grid;place-items:center;font-family:var(--mono);font-weight:700;font-size:13px;font-style:normal}.detail{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line)}.statusrow{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.status-opt{font-size:12px;padding:5px 10px;border-radius:7px;border:1px solid var(--line);background:transparent;color:var(--muted)}.status-opt.on{background:var(--surface-2);color:var(--text);border-color:var(--accent)}.notes{width:100%;background:var(--ground);border:1px solid var(--line);border-radius:8px;color:var(--text);padding:8px 10px;font-size:13px;resize:vertical;min-height:46px}.center{min-height:100vh;display:grid;place-items:center;padding:24px}.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px 22px;width:100%;max-width:360px}.card h1{font-family:var(--mono);font-size:15px;letter-spacing:.28em;text-transform:uppercase;margin:0 0 4px}.card h1 span{color:var(--accent)}.card p.sub{color:var(--muted);font-size:13px;margin:0 0 20px}.field{display:block;margin-bottom:12px}.field span{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px}.field input{width:100%;background:var(--ground);border:1px solid var(--line);border-radius:9px;padding:11px 12px;color:var(--text);font-size:15px}.err{color:var(--warn);font-size:13px;margin:8px 0 0}.empty{text-align:center;color:var(--muted);padding:60px 24px}.empty .big{font-family:var(--display);color:var(--text);font-size:17px;margin-bottom:6px}.view-listing{display:block;width:100%;text-align:center;margin-top:10px;text-decoration:none;background:var(--accent);color:#201603;border-color:transparent}.view-listing:active{transform:translateY(1px)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
