:root{--olive:#7d9f2c;--orange:#e77b23;--red:#d93b30;--wine:#711a39;--sand:#e4cb96;--paper:#fffaf0;--ink:#321421;--muted:#755f68;--line:#eadcc6;--white:#fff}*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;color:var(--ink);background:var(--paper);font-family:"DM Sans",sans-serif}button,input{font:inherit}.hidden{display:none!important}.eyebrow{color:var(--orange);font:800 11px Outfit;letter-spacing:1.7px}.login-view{min-height:100svh;padding:22px;background:radial-gradient(circle at 88% 10%,#e77b2350,transparent 28%),linear-gradient(145deg,var(--wine),#481024);color:#fff}.back-link{display:inline-flex;padding:10px 0;color:#f7e8c9;text-decoration:none;font-weight:700;font-size:13px}.login-shell{width:min(1040px,100%);min-height:calc(100svh - 90px);margin:auto;display:grid;align-items:center;gap:34px}.login-brand picture{display:block}.login-brand img{width:min(330px,85vw);height:115px;object-fit:contain;object-position:left center}.login-brand>span{display:block;margin-top:30px;color:var(--sand);font:800 11px Outfit;letter-spacing:2.3px}.login-brand h1{max-width:600px;margin:14px 0;font:800 clamp(46px,8vw,88px)/.88 Outfit;letter-spacing:-3px}.login-brand p{max-width:520px;color:#f1dfe6;line-height:1.65}.login-card{padding:25px;border:1px solid #ffffff31;border-radius:25px;background:#fffaf0fa;color:var(--ink);box-shadow:0 28px 60px #24071358}.login-card h2,.card-heading h2{margin:8px 0 6px;font:800 26px Outfit}.login-card>p{margin:0 0 21px;color:var(--muted);font-size:14px}.login-card label,#awardForm>label{display:grid;gap:7px;margin:13px 0;color:var(--wine);font-weight:800;font-size:13px}input{width:100%;min-height:50px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);outline:0}input:focus{border-color:var(--orange);box-shadow:0 0 0 4px #e77b2320}.primary-button{width:100%;min-height:52px;margin-top:9px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;border:0;border-radius:15px;background:var(--wine);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 12px 22px #711a3930}.primary-button span{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#ffffff20}.primary-button:disabled{opacity:.6;cursor:wait}.form-message{min-height:20px!important;margin:10px 0 0!important;color:var(--red)!important;font-weight:700}.dashboard{min-height:100svh}.topbar{height:76px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;background:var(--wine);color:#fff}.dashboard-logo img{width:122px;height:49px;object-fit:contain;object-position:left}.account{display:flex;align-items:center;gap:12px}.account div{display:none;text-align:right}.account small{display:block;color:#ddc1cb}.account button,.card-heading button{padding:9px 13px;border:1px solid #ffffff4d;border-radius:11px;background:#ffffff12;color:#fff;font-weight:800;cursor:pointer}.content{width:min(1180px,100%);margin:auto;padding:29px 16px 60px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.page-heading h1{margin:8px 0 5px;font:800 clamp(32px,6vw,53px)/1 Outfit;letter-spacing:-1.5px}.page-heading p{margin:0;color:var(--muted)}.live-pill{display:none;align-items:center;gap:7px;padding:8px 11px;border-radius:99px;background:#7d9f2c17;color:#516a17;font-weight:800;font-size:11px}.live-pill i{width:7px;height:7px;border-radius:50%;background:var(--olive)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0}.stats article{min-width:0;padding:15px 12px;border-radius:18px;color:#fff;box-shadow:0 12px 25px #43112418}.stats article:nth-child(1){background:var(--olive)}.stats article:nth-child(2){background:var(--red)}.stats article:nth-child(3){background:var(--orange)}.stats span,.stats small{display:block;font-size:10px;font-weight:700}.stats strong{display:block;margin:5px 0;font:800 clamp(25px,7vw,39px) Outfit;overflow:hidden;text-overflow:ellipsis}.workspace{display:grid;gap:15px}.operation-card,.history-card{padding:20px;border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:0 16px 38px #5c20300c}.card-heading{display:flex;justify-content:space-between;align-items:flex-start}.step{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--sand);color:var(--wine);font:800 13px Outfit}.card-heading button{border-color:var(--line);background:var(--paper);color:var(--wine);font-size:19px}fieldset{padding:0;margin:20px 0 14px;border:0}legend{margin-bottom:8px;color:var(--wine);font-weight:800;font-size:13px}.type-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.type-option{position:relative;display:block;cursor:pointer}.type-option input{position:absolute;width:1px;height:1px;opacity:0}.type-option span{min-height:74px;padding:13px;display:grid;align-content:center;border:2px solid var(--line);border-radius:16px;transition:.2s}.type-option b,.type-option small{display:block}.type-option small{margin-top:4px;color:var(--muted);font-size:10px}.type-option.visit input:checked+span{border-color:var(--olive);background:#7d9f2c10;color:#516a17}.type-option.purchase input:checked+span{border-color:var(--red);background:#d93b3010;color:var(--red)}.scan-row{display:grid;gap:8px}.camera-button{min-height:48px;border:0;border-radius:13px;background:var(--sand);color:var(--wine);font-weight:800;cursor:pointer}.award-preview{margin:17px 0;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:14px;background:var(--paper);border:1px dashed var(--sand);font-size:12px}.award-preview strong{color:var(--wine);font:800 18px Outfit}.award-preview.purchase{background:#d93b300b;border-color:var(--red)}.award-preview.purchase strong{color:var(--red)}.recent-list{display:grid;gap:9px;margin-top:18px}.recent-row{padding:12px;display:grid;grid-template-columns:39px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:15px;background:var(--paper)}.recent-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:var(--olive);color:#fff;font-weight:800}.recent-icon.purchase{background:var(--red)}.recent-row b,.recent-row small{display:block}.recent-row small{margin-top:3px;color:var(--muted);font-size:10px}.recent-row>strong{color:var(--wine);font:800 13px Outfit}.empty{padding:25px 10px;text-align:center;color:var(--muted)}.scanner{position:fixed;z-index:40;inset:0;padding:16px;display:grid;place-items:center;background:#2b091acb;backdrop-filter:blur(6px)}.scanner-card{position:relative;width:min(500px,100%);padding:25px;border-radius:24px;background:#fff}.scanner-card h2{margin:8px 40px 5px 0;font:800 25px Outfit}.scanner-card p,.scanner-card>small{color:var(--muted)}.close-button{position:absolute;right:16px;top:16px;width:36px;height:36px;border:0;border-radius:50%;background:var(--sand);color:var(--wine);font-size:22px;cursor:pointer}.camera-frame{position:relative;overflow:hidden;aspect-ratio:1;margin:18px 0 10px;border-radius:20px;background:#1f0713}.camera-frame video{width:100%;height:100%;object-fit:cover}.camera-frame i{position:absolute;inset:17%;border:3px solid var(--sand);border-radius:18px;box-shadow:0 0 0 999px #24071445}.toast{position:fixed;z-index:60;left:50%;bottom:24px;width:min(420px,calc(100% - 30px));padding:14px 17px;transform:translateX(-50%);border-radius:14px;background:var(--ink);color:#fff;text-align:center;font-weight:700;box-shadow:0 15px 40px #23071340}.loading{position:fixed;z-index:70;inset:0;display:grid;place-content:center;justify-items:center;background:var(--wine);color:#fff}.loading img{width:min(290px,72vw);height:110px;object-fit:contain}.loading span{width:34px;height:34px;border:3px solid #ffffff42;border-top-color:var(--sand);border-radius:50%;animation:spin .8s linear infinite}.loading p{color:#efdfe5;font-weight:700}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:560px){.account div,.live-pill{display:block}.live-pill{display:flex}.scan-row{grid-template-columns:1fr auto}.camera-button{padding:0 17px}.content{padding-inline:28px}.operation-card,.history-card{padding:27px}}@media(min-width:850px){.login-shell{grid-template-columns:1.3fr .7fr}.login-card{padding:34px}.workspace{grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);align-items:start}.stats{gap:14px}.stats article{padding:20px}.topbar{height:86px;padding:0 max(28px,calc((100vw - 1180px)/2))}.dashboard-logo img{width:180px;height:62px}}
