:root{--ink:#10233f;--muted:#6b7380;--cream:#ebe5da;--paper:#fbf8f1;--line:#e6dfd4;--aqua:#68cbd3;--coral:#e8877e;--blue:#8192dc;--green:#8fb57b;--purple:#a264ab;--shadow:0 18px 50px rgba(28,39,58,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at 8% 0%,rgba(104,203,211,.16),transparent 28%),radial-gradient(circle at 92% 8%,rgba(162,100,171,.18),transparent 30%),linear-gradient(180deg,#0d1725 0%,#111c2a 50%,#0d1725 100%);background-attachment:fixed;color:var(--ink)}
button,input,select{font:inherit}button{cursor:pointer}.wrap{max-width:1180px;margin:auto;padding:20px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0 28px}.brand img{width:215px;height:auto;display:block;filter:drop-shadow(0 8px 22px rgba(0,0,0,.18))}.nav{display:flex;gap:10px;flex-wrap:wrap}.btn{border:1px solid var(--ink);background:transparent;color:var(--ink);padding:11px 16px;border-radius:999px;font-weight:800}.topbar .btn{border-color:rgba(255,255,255,.55);color:white;background:rgba(255,255,255,.04)}.btn.primary{background:var(--ink);color:white}.topbar .btn.primary{background:white;color:#10233f;border-color:white}.btn.soft{border:0;background:#edf6f4}.btn:disabled{opacity:.45;cursor:not-allowed}.screen{display:none}.screen.active{display:block}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:24px}.heroCard,.card{background:rgba(255,253,248,.98);border:1px solid rgba(230,223,212,.9);border-radius:28px;box-shadow:0 24px 70px rgba(0,0,0,.20)}.heroCard{padding:48px}.partnerCard{padding:28px;background:linear-gradient(160deg,#fbf8f1 15%,#e6efed 100%)}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#56716c}.dot{width:9px;height:9px;border-radius:50%;background:var(--aqua)}h1{font-size:clamp(44px,7vw,82px);line-height:.96;margin:22px 0 18px;letter-spacing:-.05em}h2{font-size:32px;margin:0 0 12px;letter-spacing:-.03em}h3{font-size:20px;margin:0 0 8px}p{line-height:1.6}.lead{font-size:20px;max-width:650px;color:#3f4a5a}.heroActions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.badge,.pill{display:inline-flex;padding:8px 12px;border-radius:999px;background:white;border:1px solid var(--line);font-size:12px;font-weight:900;letter-spacing:.06em}.pill{background:#eef5f3;border:0}.day{display:grid;grid-template-columns:74px 1fr;gap:18px;padding:17px 0;border-bottom:1px solid var(--line)}.day:last-child{border-bottom:0}.daynum{font-size:36px;font-weight:950;line-height:1}.dish{font-weight:850}.soup,.muted{color:var(--muted)}.soup{margin-top:4px;font-size:14px}.card{padding:28px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.form{max-width:650px;margin:30px auto}label{display:block;font-size:13px;font-weight:850;margin:16px 0 7px}input,select{width:100%;padding:14px 15px;border:1px solid #cfc9bf;background:white;border-radius:14px;color:var(--ink);outline:none}input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(129,146,220,.14)}.check{display:flex;gap:10px;margin-top:16px;color:#4b5563;font-size:13px}.check input{width:auto;margin-top:3px}.note{background:#f0ede6;border-radius:16px;padding:13px 15px;color:#646b75;font-size:13px;margin-top:16px}.otpRow{display:flex;gap:10px;align-items:center}.otpRow input{font-size:24px;font-weight:900;letter-spacing:.3em;text-align:center}.sectionTitle{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.dashboard{display:grid;grid-template-columns:310px 1fr;gap:22px}.profile{position:sticky;top:20px;align-self:start}.hello{font-size:30px;font-weight:950;margin-top:12px}.qrbox{background:white;border:1px dashed #b7b2aa;border-radius:22px;padding:20px;text-align:center;margin-top:20px}.qrbox canvas{max-width:100%;height:auto}.memberid{font-family:ui-monospace,monospace;font-size:12px;color:var(--muted)}.savingsHero{background:linear-gradient(135deg,#10233f 0%,#193253 52%,#2d2847 100%);color:white;border:0;position:relative;overflow:hidden}.savingsValue{font-size:54px;font-weight:950;letter-spacing:-.05em;margin:6px 0 4px}.savingsLabel{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;opacity:.72}.progressTrack{height:12px;background:rgba(255,255,255,.16);border-radius:999px;overflow:hidden}.progressFill{height:100%;background:linear-gradient(90deg,var(--aqua),#8fd5ba);border-radius:999px}.progressMeta{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:20px 0 9px}.progressMeta b{font-size:22px}.rewardHint{margin-top:10px;color:#d8e0ea;font-size:13px}.menuCard{padding:20px;border-radius:20px;border:1px solid var(--line);background:white;margin-bottom:10px;display:grid;grid-template-columns:70px 1fr;gap:16px}.menuCard .n{font-size:30px;font-weight:950}.promoGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.promoCard{position:relative;overflow:hidden;border-radius:22px;padding:22px;min-height:170px;border:1px solid var(--line);background:white}.promoDay{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:950}.promoTitle{font-size:24px;line-height:1.05;font-weight:950;letter-spacing:-.035em;margin:15px 0 8px}.promoPrice{font-size:34px;font-weight:950}.promoTime{font-size:13px;color:#59616d;margin-top:8px}.promoCard:nth-child(1){background:linear-gradient(145deg,#fff 20%,#f8e8e4 100%)}.promoCard:nth-child(2){background:linear-gradient(145deg,#fff 20%,#f7eed2 100%)}.promoCard:nth-child(3){background:linear-gradient(145deg,#fff 20%,#ece9f8 100%)}
.fullMenuGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.menuSection{padding:24px;border-radius:24px;background:#fff;border:1px solid var(--line)}.menuSection h3{font-size:25px}.menuItem{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.menuItem:last-child{border-bottom:0}.menuItem strong{white-space:nowrap}.menuDesc{font-size:12px;color:var(--muted);margin-top:3px}
.staffBadge{display:inline-flex;padding:8px 12px;border-radius:999px;background:#10233f;color:#fff;font-size:11px;font-weight:950;letter-spacing:.1em}.staffGrid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px}.scanPreview{margin:22px 0;border-radius:22px;min-height:260px;background:#0b1320;display:flex;align-items:center;justify-content:center;color:white;position:relative;overflow:hidden}.scanPreview video{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.scanFrame{width:165px;height:165px;border:3px solid rgba(255,255,255,.9);border-radius:20px;position:relative;z-index:2;box-shadow:0 0 0 999px rgba(0,0,0,.28)}.scanHelp{position:absolute;bottom:16px;z-index:3;font-size:12px;background:rgba(0,0,0,.55);padding:7px 10px;border-radius:999px}.manualCode{display:flex;gap:8px}.manualCode input{flex:1}.memberFound{display:none;background:#eef6f4;border-radius:18px;padding:16px;margin:16px 0}.memberFound.show{display:block}.memberMetaRow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.memberMeta{padding:10px;border-radius:14px;background:white}.memberMeta b{display:block;font-size:18px}.memberMeta span{font-size:11px;color:var(--muted)}.discountResult{display:none;border-radius:20px;background:#10233f;color:white;padding:22px;margin-top:18px}.discountResult.show{display:block}.staffCalc{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.staffCalc .box{padding:12px;border-radius:14px;background:rgba(255,255,255,.08)}.staffCalc small{display:block;color:#cbd5e1;margin-bottom:5px}.staffCalc b{font-size:21px}.scanSuccess{display:none;background:#edf7f1;border-radius:20px;padding:20px;margin-top:16px}.scanSuccess.show{display:block}.privacyNote{font-size:11px;color:var(--muted);margin-top:8px}.staffActions{display:flex;gap:8px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{padding:20px;border-radius:20px;background:white;border:1px solid var(--line)}.stat b{font-size:32px;display:block}.stat span{font-size:12px;color:var(--muted)}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:13px;border-bottom:1px solid var(--line);font-size:14px}.adminHeader{color:white}.adminHeader .muted{color:#c6ced9}.adminHeader .btn{border-color:rgba(255,255,255,.5);color:white}.hidden{display:none!important}.toast{position:fixed;right:20px;bottom:20px;z-index:1000;background:#111827;color:white;padding:13px 16px;border-radius:14px;box-shadow:0 15px 40px rgba(0,0,0,.35);display:none;max-width:360px}.toast.show{display:block}.statusBar{margin:0 0 16px;padding:10px 14px;border-radius:14px;background:#fff4d9;color:#7a5a09;font-size:13px}.statusBar.live{background:#e9f7ef;color:#2d6a4f}footer{padding:34px 0;color:#c8ced8;font-size:12px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media(max-width:850px){.wrap{padding:14px}.topbar{align-items:flex-start}.brand img{width:165px}.hero,.grid2,.dashboard,.staffGrid,.fullMenuGrid{grid-template-columns:1fr}.grid3,.promoGrid,.stats{grid-template-columns:1fr}.heroCard{padding:30px}.profile{position:static}.nav{justify-content:flex-end}.dashboard{gap:14px}.staffCalc{grid-template-columns:1fr}.memberMetaRow{grid-template-columns:1fr 1fr 1fr}.topbar .nav .desktopOnly{display:none}}

.rewardStaff{margin-top:12px;padding:14px;border-radius:16px;background:#fff7d8;border:1px solid #ead99d}.rewardStaff b{display:block;margin-bottom:3px}
