@font-face{font-family:Fraunces;font-style:normal;font-weight:500 700;font-display:swap;src:url(../fonts/fraunces.woff2) format("woff2")}@font-face{font-family:Courier Prime;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/courier-prime-400.woff2) format("woff2")}@font-face{font-family:Courier Prime;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/courier-prime-700.woff2) format("woff2")}:root{--paper:#F2F5EF;--card:#FBFCF9;--ink:#12331F;--ink-soft:#4E6B58;--line:#C9D6CB;--urgent:#B5301F;--urgent-bg:#F6DAD5;--soon:#8F6712;--soon-bg:#F3E9CF;--ok-bg:#E3EDE2;--gold:#8A6D1F;--gold-bright:#C9A227;--note-bg:#F3E9CF;--note-ink:#5c4a12;--mono:"Courier Prime",ui-monospace,Menlo,monospace;--disp:"Fraunces",Georgia,serif;--body:system-ui,-apple-system,"Segoe UI",sans-serif}@media (prefers-color-scheme: dark){:root{--paper:#0F1F16;--card:#162A1E;--ink:#E8EFE6;--ink-soft:#9DB5A3;--line:#2F4A39;--urgent:#F08A7A;--urgent-bg:#4A2420;--soon:#E2B957;--soon-bg:#3E3214;--ok-bg:#22392B;--gold:#D9B74A;--gold-bright:#E2C35C;--note-bg:#2E2A15;--note-ink:#E2CF8A}}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;padding:0}body{font-family:var(--body);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;display:flex;justify-content:center;min-height:100vh;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}.app{width:100%;max-width:480px;padding:calc(14px + env(safe-area-inset-top)) 16px calc(30px + env(safe-area-inset-bottom))}button{font-family:var(--body)}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.wordmark{font-family:var(--disp);font-weight:700;font-size:26px;letter-spacing:-.01em}.wordmark span{color:var(--gold)}.bell{background:none;border:1.5px solid var(--line);border-radius:99px;padding:5px 11px;font-size:12px;color:var(--ink-soft);cursor:pointer;font-family:var(--mono)}.bell.on{border-color:var(--ink);color:var(--ink)}.bell:empty{display:none}.plate{background:var(--card);border:2px solid var(--ink);border-radius:6px;padding:18px 16px 14px;margin:14px 0 8px;position:relative;box-shadow:0 0 0 5px var(--card),0 0 0 6px var(--line)}.plate:before,.plate:after{content:"";position:absolute;top:6px;bottom:6px;width:0;border-left:1px dashed var(--line)}.plate:before{left:6px}.plate:after{right:6px}.plate-label{font-family:var(--mono);font-size:11px;letter-spacing:.28em;color:var(--ink-soft);text-transform:uppercase;text-align:center}.plate-amount{font-family:var(--mono);font-weight:700;font-size:46px;text-align:center;letter-spacing:-.01em;margin:4px 0 2px;transition:transform .25s}.plate-amount.bump{transform:scale(1.06)}.plate-sub{font-size:12.5px;color:var(--ink-soft);text-align:center;min-height:16px}.plate-sub b{color:var(--urgent);font-weight:700}.rescued-strip{display:flex;justify-content:center;gap:8px;align-items:baseline;font-family:var(--mono);font-size:13px;color:var(--gold);margin:10px 0 2px}.rescued-strip b{font-size:16px}.rescued-strip span{font-size:12px;color:var(--ink-soft)}nav{display:flex;gap:6px;margin:16px 0 12px}nav button{flex:1;font-size:13.5px;font-weight:600;padding:10px 4px;border-radius:7px;border:1.5px solid var(--line);background:transparent;color:var(--ink-soft);cursor:pointer;min-height:44px}nav button.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}h2{font-family:var(--disp);font-weight:600;font-size:19px;margin:18px 0 8px}h3{font-family:var(--disp);font-weight:600;font-size:16px;margin:14px 0 6px}.note{font-size:13px;color:var(--ink-soft);line-height:1.5;margin:4px 0 12px}.note a,.note button.link{color:var(--ink);font-weight:600;background:none;border:none;padding:0;font-size:inherit;cursor:pointer;text-decoration:underline}.ticket{background:var(--card);border:1.5px solid var(--line);border-radius:5px;margin-bottom:12px;position:relative;padding:13px 14px 12px 26px;transition:opacity .35s,transform .35s}.ticket:before{content:"";position:absolute;left:12px;top:6px;bottom:6px;width:0;border-left:1.5px dashed var(--line)}.ticket:after{content:"";position:absolute;left:2.5px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--paper);border:1.5px solid var(--line)}.ticket.urgent{border-color:var(--urgent)}.ticket.urgent:before{border-left-color:var(--urgent)}.ticket.gone{opacity:0;transform:translate(24px)}.ticket.new{animation:slidein .35s ease-out}@keyframes slidein{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.t-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.t-merchant{font-family:var(--disp);font-weight:600;font-size:16.5px}.t-amount{font-family:var(--mono);font-weight:700;font-size:18px;white-space:nowrap}.t-label{font-size:12.5px;color:var(--ink-soft);margin-top:2px}.t-row{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:8px;flex-wrap:wrap}.chip{font-family:var(--mono);font-size:12px;font-weight:700;padding:3px 9px;border-radius:99px;white-space:nowrap}.chip.ok{background:var(--ok-bg);color:var(--ink)}.chip.soon{background:var(--soon-bg);color:var(--soon)}.chip.urgent{background:var(--urgent-bg);color:var(--urgent)}.t-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.t-actions button{font-size:12px;font-weight:600;padding:7px 10px;border-radius:6px;border:1.2px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;min-height:32px}.t-actions .primary{background:var(--ink);border-color:var(--ink);color:var(--paper)}.t-actions .icon{padding:7px 9px;font-size:13px}.hero{border:1.5px solid var(--line);border-radius:8px;padding:22px 18px;background:var(--card)}.hero h2{margin:0 0 8px;font-size:22px;line-height:1.2}.hero p{font-size:14px;color:var(--ink-soft);line-height:1.55;margin:0 0 6px}.how{display:grid;gap:8px;margin:14px 0 4px}.how div{display:flex;gap:10px;font-size:13px;color:var(--ink-soft);line-height:1.45}.how b{font-family:var(--mono);color:var(--gold);flex:none;width:18px}.btn{display:inline-block;width:100%;text-align:center;font-size:15px;font-weight:700;padding:13px;border-radius:8px;border:none;cursor:pointer;background:var(--ink);color:var(--paper);margin-top:12px;min-height:48px}.btn.ghost{background:transparent;border:1.5px solid var(--line);color:var(--ink)}.btn.slim{width:auto;padding:9px 16px;font-size:13.5px;min-height:40px}.btn.gold{background:var(--gold);color:#fff}.btn:disabled{opacity:.5}textarea,input,select{width:100%;font-family:var(--body);font-size:16px;color:var(--ink);background:var(--card);border:1.5px solid var(--line);border-radius:7px;padding:11px;margin:4px 0 12px}textarea{font-family:var(--mono);font-size:13px;min-height:120px;resize:vertical}label{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:1px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.chips{display:flex;flex-wrap:wrap;gap:7px;margin:6px 0 12px}.chips button{font-size:13px;font-weight:600;padding:8px 12px;border-radius:99px;border:1.5px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;min-height:36px}.chips button.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.hint{font-size:12px;color:var(--ink-soft);line-height:1.45;margin:-4px 0 12px;font-style:italic}.verify-note{background:var(--note-bg);border-radius:7px;padding:10px 12px;font-size:12.5px;color:var(--note-ink);line-height:1.45;margin-bottom:10px}.archive-item{font-size:14px;color:var(--ink-soft);padding:9px 2px;border-bottom:1px solid var(--line)}.archive-item s{opacity:.7}.rule-line{font-size:12px;color:var(--ink-soft);font-style:italic;margin-top:10px}details{margin-top:18px}summary{cursor:pointer;font-family:var(--disp);font-weight:600;font-size:16px;color:var(--ink)}.official{display:block;width:100%;text-align:left;background:var(--card);border:1.5px solid var(--line);border-radius:7px;padding:13px 14px;margin-bottom:10px;text-decoration:none;color:var(--ink);cursor:pointer}.official b{font-family:var(--disp);font-size:15.5px}.official span{display:block;font-size:12.5px;color:var(--ink-soft);margin-top:3px;line-height:1.4}.stat-big{font-family:var(--mono);font-weight:700;font-size:30px;color:var(--gold);margin:2px 0}.cta-ios{border:1.5px dashed var(--line);border-radius:8px;padding:14px;margin-top:18px;font-size:13px;color:var(--ink-soft);line-height:1.5;text-align:center}.cta-ios b{color:var(--ink)}footer{margin-top:26px;text-align:center;font-size:11px;color:var(--ink-soft);line-height:1.6}.foot-links{margin-bottom:6px}footer button{background:none;border:none;color:var(--ink-soft);text-decoration:underline;cursor:pointer;font-size:11px;padding:4px 2px}.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%) translateY(16px);background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:8px;font-family:var(--mono);font-size:13px;opacity:0;transition:.25s;pointer-events:none;max-width:90%;z-index:50;text-align:center}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.modal{position:fixed;inset:0;background:#08140c8c;display:flex;align-items:flex-end;justify-content:center;z-index:40;padding:0}.modal[hidden]{display:none}.sheet{background:var(--paper);width:100%;max-width:480px;border-radius:16px 16px 0 0;padding:20px 18px calc(20px + env(safe-area-inset-bottom));max-height:92vh;overflow:auto;animation:up .25s ease-out}@keyframes up{0%{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}.sheet h2{margin-top:4px}.stamp{font-family:var(--mono);font-weight:700;letter-spacing:.2em;color:var(--urgent);border:3px solid var(--urgent);border-radius:6px;display:inline-block;padding:4px 12px;transform:rotate(-6deg);font-size:18px;margin:6px 0 10px;animation:stamp .4s cubic-bezier(.2,1.4,.4,1)}@keyframes stamp{0%{transform:rotate(-6deg) scale(2.2);opacity:0}to{transform:rotate(-6deg) scale(1);opacity:1}}.share-preview{width:100%;display:block;margin:8px 0}.plus-list{list-style:none;padding:0;margin:10px 0 4px}.plus-list li{padding:7px 0;border-bottom:1px solid var(--line);font-size:14px;display:flex;gap:10px}.plus-list li b{color:var(--gold);font-family:var(--mono)}.price{font-family:var(--mono);font-weight:700;font-size:15px;text-align:center;margin:12px 0 2px}.fine{font-size:11px;color:var(--ink-soft);text-align:center;line-height:1.5;margin-top:10px}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}
