@charset "UTF-8";
:root{--ink:#20231f;--muted:#676b62;--gold:#f3b727;--pale:#fdf0bd;--paper:#f8f7f2;--white:#fff;--line:#e3e4db;--green:#305e47;--red:#a1352b;--radius:20px;--shadow:0 12px 30px #242b1c08;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit}a{color:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.57}a{text-decoration:none}button,a,input,select,textarea{outline-offset:4px}*:focus-visible{outline:3px solid #496cd4}h1,h2,h3,p{margin:0}h1{font-size:clamp(34px,5vw,62px);line-height:1.05;letter-spacing:-2.5px;font-weight:800}h2{font-size:27px;line-height:1.2;letter-spacing:-.8px}h3{font-size:19px;line-height:1.3;letter-spacing:-.3px}small,.small{font-size:13px}img{max-width:100%;display:block}svg{width:21px;height:21px;flex-shrink:0}input,select,textarea{width:100%;border:1px solid #c9cdc0;border-radius:10px;background:#fff;padding:12px;color:var(--ink);min-height:46px}input[type=checkbox]{width:20px;min-height:20px;height:20px;accent-color:var(--green)}textarea{resize:vertical;min-height:90px}label{display:grid;gap:7px;font-weight:600;font-size:14px}form{display:grid;gap:17px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;background:var(--ink);color:#fff;padding:12px 20px;min-height:46px;border-radius:11px;font-weight:700;font-size:14px;white-space:normal;text-align:center}.btn:hover{filter:brightness(1.12)}.btn.gold{background:var(--gold);color:var(--ink)}.btn.outline{border:1px solid #bfc5b7;background:transparent;color:var(--ink)}.btn.light{background:#f0f1e9;color:var(--ink)}.btn.danger{background:var(--red);color:#fff}.btn.wide{width:100%}.btn.small{padding:9px 14px;min-height:40px}.text-link{background:none;border:0;color:var(--green);text-decoration:underline;font-weight:650;padding:4px}.icon-btn{width:42px;height:42px;padding:10px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:50%;color:var(--ink)}.muted{color:var(--muted)}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;color:var(--green)}.stack{display:grid;gap:18px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.between{justify-content:space-between}.spacer{flex:1}.tag{display:inline-flex;align-items:center;gap:5px;background:#edf2e9;border:1px solid #dde5d9;color:#365443;padding:4px 9px;border-radius:7px;font-size:11px;font-weight:800;letter-spacing:.2px}.tag.amber{background:#fff1c7;border-color:#efdfa4;color:#745716}.tag.dim{background:#f2f2ef;color:#656a60;border-color:var(--line)}
#header{position:sticky;top:0;z-index:20;background:#f8f7f2f5;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{max-width:1240px;margin:auto;height:88px;display:flex;align-items:center;padding:0 32px;gap:40px}.brand{display:inline-flex;align-items:center;gap:11px;font-size:25px;font-weight:850;letter-spacing:-1px;white-space:nowrap}.brand img{width:42px;border-radius:10px}.brand b{font-weight:850}.brand .brand-perks{color:#867029}.desktop-nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:650}.desktop-nav a{padding:30px 0;position:relative;color:var(--muted)}.desktop-nav a.active{color:var(--ink)}.desktop-nav a.active:after{content:'';position:absolute;height:3px;bottom:18px;left:0;right:0;border-radius:4px;background:var(--gold)}.account-pill{display:flex;gap:9px;align-items:center;font-size:14px;font-weight:700}.avatar{background:#e9eddf;border-radius:50%;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center}.header-action{margin-left:auto}.header-action .btn{padding:10px 16px}
#main{max-width:1240px;margin:auto;padding:38px 32px 80px;min-height:calc(100vh - 210px)}.hero{position:relative;overflow:hidden;background:#e9eddc;border:1px solid #dde2ce;border-radius:24px;padding:40px 42px;min-height:290px;display:grid;grid-template-columns:1.5fr 1fr;gap:30px;align-items:center;margin-bottom:32px}.hero-copy{display:grid;gap:15px;max-width:630px}.hero h1 em{font-style:normal;color:var(--green)}.hero p{color:#596150;max-width:440px;font-size:15px}.hero-visual{display:flex;justify-content:center;align-items:center;min-height:200px;position:relative}.ticket{background:var(--ink);color:#fff;width:260px;padding:27px;border-radius:16px;transform:rotate(8deg);box-shadow:10px 18px 0 #cbd5bc;position:relative}.ticket:before,.ticket:after{content:'';position:absolute;top:55%;width:24px;height:24px;border-radius:50%;background:#e9eddc}.ticket:before{left:-12px}.ticket:after{right:-12px}.ticket-label{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:#c1cab6}.ticket-title{font-size:36px;font-weight:800;letter-spacing:-1px;line-height:1.05;margin:14px 0 24px;color:var(--gold)}.ticket-bottom{border-top:1px dashed #737c69;padding-top:15px;display:flex;align-items:center;justify-content:space-between;font-size:12px}.ticket svg{width:30px;height:30px;color:var(--gold)}.hero-pill{position:absolute;bottom:-6px;left:8px;transform:rotate(-7deg);background:#fff;border-radius:50px;padding:10px 15px;box-shadow:var(--shadow);font-weight:700;font-size:13px;border:1px solid var(--line)}
.page-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.page-head h1{font-size:38px;letter-spacing:-1.4px}.page-head p{color:var(--muted);margin-top:9px;font-size:15px}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:15px;margin:28px 0 18px}.section-head h2{font-size:24px}.toolbar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.search{position:relative;flex:1;min-width:230px}.search input{padding-left:43px;min-height:50px}.search svg{position:absolute;left:14px;top:15px;color:var(--muted)}.toolbar select{width:auto;min-width:160px;font-size:14px}.toolbar .btn{min-height:50px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:5px 0 22px}.chip{border:1px solid var(--line);border-radius:30px;padding:8px 15px;background:#fff;font-size:13px;font-weight:650}.chip.selected{background:var(--ink);color:#fff;border-color:var(--ink)}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.deal-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .18s}.deal-card:hover{transform:translateY(-3px)}.deal-art{position:relative;display:block;height:170px;overflow:hidden;background:#e4e9db}.deal-art img{width:100%;height:100%;object-fit:cover}.deal-art .tag{position:absolute;left:15px;top:14px;background:#fffffff0;border-color:#ffffff88;color:var(--ink)}.deal-art .save-top{position:absolute;right:12px;top:12px}.placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(130deg,#d7e0c8,#edf0e7);position:relative;overflow:hidden}.placeholder:before{content:'';position:absolute;width:180px;height:180px;border:30px solid #fff6;border-radius:50%;right:-40px;top:-50px}.placeholder span{color:#718064;font-size:50px;font-weight:750;letter-spacing:-3px;transform:rotate(-6deg)}.deal-body{padding:19px 20px 17px;display:grid;gap:9px;flex:1}.merchant{font-size:11px;letter-spacing:1px;text-transform:uppercase;font-weight:800;color:var(--muted)}.deal-body h3{min-height:48px}.deal-offer{font-size:14px;color:var(--green);font-weight:650}.location{font-size:12px;color:var(--muted);display:flex;align-items:start;gap:5px}.location svg{width:15px;height:15px;margin-top:2px}.deal-bottom{padding:14px 20px;border-top:1px solid #eff0e8;display:flex;align-items:center;justify-content:space-between;gap:8px}.deal-bottom a{font-size:13px;font-weight:750;display:inline-flex;align-items:center;gap:5px}.deal-bottom svg{width:16px;height:16px}.deadline{font-size:11px;color:var(--muted)}.badge-available{width:6px;height:6px;display:inline-block;background:#548260;border-radius:50%;margin-right:5px}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}.notice{padding:16px 18px;border:1px solid #e2d4a4;background:#fff4ce;color:#6d571c;border-radius:12px;font-size:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}.notice.error{border-color:#edc9c5;background:#fff0ee;color:var(--red)}.empty{max-width:570px;margin:50px auto;text-align:center;display:grid;justify-items:center;gap:17px;padding:35px 25px}.empty svg{width:42px;height:42px;color:#829475}.empty p{color:var(--muted)}.pagination{margin-top:27px;display:flex;align-items:center;justify-content:center;gap:18px}.loading{min-height:200px;display:grid;place-items:center;color:var(--muted)}
.detail-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:28px;align-items:start}.detail-photo{height:330px;border-radius:var(--radius);overflow:hidden;background:#e7eddd;margin-bottom:25px}.detail-photo img{width:100%;height:100%;object-fit:cover}.detail-photo .placeholder span{font-size:100px}.detail-title{font-size:34px;letter-spacing:-1px;line-height:1.13}.detail-info{display:grid;gap:18px}.detail-info p{white-space:pre-line}.detail-sticky{position:sticky;top:115px}.rule-list{padding:16px 0;border-top:1px solid var(--line);display:grid;gap:12px}.rule-list p{font-size:14px}.back{display:inline-flex;align-items:center;gap:7px;font-size:14px;color:var(--muted);margin-bottom:20px}.back svg{width:17px}.program-card{display:grid;gap:15px}.program-icon{width:42px;height:42px;border-radius:12px;background:#e9eddc;display:flex;align-items:center;justify-content:center;color:var(--green)}progress{width:100%;height:9px;border:0;border-radius:8px;appearance:none;background:#edf0e7}progress::-webkit-progress-bar{background:#edf0e7;border-radius:8px}progress::-webkit-progress-value{background:var(--green);border-radius:8px}progress::-moz-progress-bar{background:var(--green);border-radius:8px}.points-panel{background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.points-panel h2{font-size:56px;letter-spacing:-2px;color:var(--gold);margin:5px 0}.points-panel .muted{color:#b9c3b0}.points-panel svg{width:70px;height:70px;color:var(--gold)}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.history-list{display:grid;gap:0}.history-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}.history-item:last-child{border:0}.history-item p{font-weight:650}.positive{color:var(--green)}.negative{color:var(--red)}.receipt{max-width:580px;margin:0 auto}.receipt .stamp{width:62px;height:62px;border-radius:50%;background:#e5efdf;display:flex;align-items:center;justify-content:center;margin:auto;color:var(--green)}.receipt .stamp svg{width:30px;height:30px}.receipt-head{text-align:center;padding:8px 0 25px;display:grid;gap:12px;border-bottom:2px dashed var(--line)}.receipt-code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:clamp(14px,3.4vw,22px);font-weight:700;text-align:center;letter-spacing:1px;background:#f1f3eb;padding:20px 12px;border-radius:10px;overflow-wrap:anywhere}.receipt h1{font-size:33px;letter-spacing:-1px}.receipt-details{padding-top:24px;display:grid;gap:18px}.auth-wrap{max-width:460px;margin:18px auto}.auth-wrap .panel{padding:32px}.auth-wrap h1{font-size:33px;letter-spacing:-1px;margin-bottom:10px}.auth-wrap .intro{color:var(--muted);font-size:14px;margin-bottom:25px}.form-message{font-size:14px;margin-top:5px;white-space:pre-wrap}.form-message.error{color:var(--red)}.check-row{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:400}.check-row input{margin-top:3px;flex-shrink:0}.account-menu{display:flex;gap:10px;flex-wrap:wrap}.divider{height:1px;background:var(--line);margin:20px 0}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.stat strong{font-size:27px;display:block}.stat span{font-size:12px;color:var(--muted)}details{border:1px solid var(--line);border-radius:14px;background:white;padding:19px;margin:18px 0}summary{cursor:pointer;font-weight:750}details[open] summary{margin-bottom:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.full{grid-column:1/-1}pre{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;background:#f3f5ee;padding:18px;border-radius:10px}.admin-list{display:grid;gap:12px;margin:18px 0}.admin-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px}.admin-item p{font-size:14px;font-weight:650}
#footer{max-width:1176px;margin:auto;padding:24px 0 34px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-links{display:flex;gap:18px;flex-wrap:wrap}#mobile-nav{display:none}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#252d22;color:#fff;border-radius:12px;padding:15px 23px;z-index:100;box-shadow:0 6px 30px #0002;max-width:90vw;font-size:14px}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:#fff;padding:10px}.skip:focus{top:15px}#connection{background:#fff0c2;text-align:center;padding:10px 15px;font-size:13px}dialog{border:1px solid var(--line);border-radius:22px;max-width:470px;width:calc(100% - 32px);padding:28px;color:var(--ink);box-shadow:0 20px 100px #0003}dialog::backdrop{background:#19221799;backdrop-filter:blur(3px)}dialog h2{margin-bottom:13px}dialog p{font-size:14px;color:var(--muted);margin-bottom:20px}dialog .row{margin-top:22px;justify-content:flex-end}.legal{max-width:760px;display:grid;gap:20px;margin:auto}.legal h1{font-size:38px}.legal h2{font-size:23px}
@media(min-width:1000px){.deal-card:nth-child(3n+2) .placeholder{background:linear-gradient(130deg,#e6d8b7,#f4ecd9)}.deal-card:nth-child(3n) .placeholder{background:linear-gradient(130deg,#d5ddd9,#eaf0ee)}}
@media(max-width:1000px){.header-inner{gap:20px}.desktop-nav{gap:18px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1.2fr .8fr;padding:30px}.hero h1{font-size:46px}.ticket{width:210px;padding:22px}.ticket-title{font-size:30px}.hero-pill{left:-10px}.admin-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){body{font-size:15px}.header-inner{height:72px;padding:0 20px}.brand{font-size:23px;gap:8px}.brand img{width:36px}.desktop-nav{display:none}.header-action .btn{font-size:12px;padding:8px 12px;min-height:38px}.account-pill .account-name{display:none}#main{padding:22px 18px 60px;min-height:calc(100vh - 170px)}.hero{padding:27px 24px;grid-template-columns:1fr;min-height:unset;margin-bottom:24px;gap:0}.hero h1{font-size:40px;letter-spacing:-1.8px}.hero p{font-size:14px}.hero-copy{gap:13px}.hero-visual{display:none}.hero .btn{align-self:start;justify-self:start}.hero .eyebrow{font-size:10px}.page-head{align-items:start}.page-head h1{font-size:31px}.page-head p{font-size:14px}.toolbar{gap:9px}.toolbar select{flex:1;min-width:140px;font-size:13px}.search{flex-basis:100%}.toolbar .btn{font-size:13px}.grid{gap:14px}.deal-art{height:135px}.deal-body{padding:15px;gap:7px}.deal-body h3{font-size:16px;min-height:42px}.deal-offer{font-size:13px}.merchant{font-size:9px;letter-spacing:.7px}.deal-bottom{padding:12px 15px}.deal-bottom a{font-size:12px}.deadline{font-size:10px}.deal-art .tag{left:9px;top:10px;font-size:9px;max-width:calc(100% - 16px)}.deal-art .save-top{display:none}.location{font-size:11px}.section-head h2{font-size:22px}.detail-grid,.two-column{grid-template-columns:1fr}.detail-sticky{position:static;grid-row:1}.detail-grid .detail-visual-block{grid-row:2}.detail-photo{height:230px}.detail-title{font-size:28px}.panel{padding:21px}.points-panel h2{font-size:48px}.points-panel svg{width:55px;height:55px}.auth-wrap{margin-top:0}.auth-wrap .panel{padding:25px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:1}.program-card{gap:13px}.program-card h3{font-size:17px}.program-card p{font-size:13px}.program-grid{grid-template-columns:1fr}#footer{margin:0 20px 85px;flex-direction:column;align-items:start;gap:14px;padding-top:20px}#mobile-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:25;background:#fffffff5;border-top:1px solid var(--line);padding:9px 8px calc(9px + env(safe-area-inset-bottom));justify-content:space-around;backdrop-filter:blur(12px)}#mobile-nav a{display:grid;justify-items:center;gap:4px;font-size:10px;font-weight:650;color:var(--muted);min-width:54px;padding:3px 6px;border-radius:10px}#mobile-nav a.active{color:var(--ink);background:#fff3cb}#mobile-nav svg{width:21px;height:21px}#toast{bottom:95px;width:max-content;max-width:calc(100% - 30px);font-size:13px}.notice{font-size:13px}.receipt{max-width:100%}.empty{padding:24px 10px;margin:25px auto}.legal h1{font-size:32px}}
@media(max-width:370px){.grid{grid-template-columns:1fr}.deal-art{height:175px}.hero h1{font-size:35px}.header-inner{padding:0 14px}.brand{font-size:21px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{#header,#footer,#mobile-nav,.btn,.text-link{display:none!important}body{background:#fff}#main{padding:0}.receipt{box-shadow:none;border:0}.receipt:after{content:'A printed receipt does not show live verification status. Staff must check the code in PaddPerks.';display:block;font-size:12px;margin-top:25px}}

/* Deals-only: four existing navigation destinations. */
#mobile-nav{grid-template-columns:repeat(4,minmax(0,1fr));}

.receipt-qr{text-align:center;margin:1rem auto}.receipt-qr img{max-width:100%;height:auto;background:white;padding:10px;border-radius:8px}.receipt-countdown{font-size:1.4rem;font-weight:700}.receipt-countdown.error{color:#c62828}
