@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap";:root{color:#172033;font-synthesis:none;background:#f5f7fb;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb,var(--business-primary,#2563eb) 30%,transparent);outline-offset:2px}.btn{background:var(--business-primary,#2563eb);color:#fff;min-height:46px;box-shadow:0 8px 20px color-mix(in srgb,var(--business-primary,#2563eb) 24%,transparent);border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:800;display:inline-flex}.btn.secondary{color:#1f2937;box-shadow:none;background:#fff;border:1px solid #dce2eb}.btn svg{width:18px}.card{background:var(--surface,#fff);border:1px solid var(--border,#e7ebf1);border-radius:22px;margin-bottom:14px;padding:20px;box-shadow:0 8px 30px #131f330e}.center{place-items:center;min-height:100vh;padding:24px;display:grid}.landing{background:radial-gradient(circle at 75% 15%,#dceafe 0,#0000 28%),linear-gradient(145deg,#f8fafc,#edf4ff);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:48px 20px;display:flex}.hero{text-align:center;max-width:760px}.brandmark,.admin-logo{color:#fff;background:#1e293b;border-radius:22px;place-items:center;width:68px;height:68px;margin:0 auto 24px;display:grid}.brandmark svg,.admin-logo svg{width:32px;height:32px}.eyebrow{letter-spacing:.18em;color:#64748b;font-size:12px;font-weight:800}.hero h1{letter-spacing:-.055em;color:#0f172a;margin:16px 0;font-size:clamp(42px,7vw,76px);line-height:.98}.lead{color:#64748b;max-width:650px;margin:0 auto;font-size:19px;line-height:1.6}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px;display:flex}.tenant-preview{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:54px;display:flex}.tenant-chip{background:#fff;border-radius:999px;align-items:center;gap:8px;padding:10px 15px;font-weight:700;display:flex;box-shadow:0 6px 20px #dce5f2}.tenant-chip i,.color-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.customer-shell{--surface:#fff;--border:#e6eaf0;background:var(--app-bg,#f7f8fb);max-width:430px;min-height:100vh;margin:auto;padding:28px 24px}.welcome{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.language{gap:8px;display:flex;position:absolute;top:24px;right:24px}.language button{color:#94a3b8;background:0 0;border:0;padding:8px}.language button.active{color:var(--business-primary);font-weight:800}.logo{background:var(--business-primary);color:#fff;width:92px;height:92px;box-shadow:0 18px 40px color-mix(in srgb,var(--business-primary) 30%,transparent);border-radius:28px;place-items:center;display:grid}.logo svg{width:42px;height:42px}.welcome h1{letter-spacing:-.04em;margin:24px 0 5px;font-size:34px}.welcome>p{color:#64748b;font-size:17px}.welcome .stack{gap:11px;width:100%;margin:36px 0;display:grid}.text-btn{color:var(--business-primary,#2563eb);background:0 0;border:0;padding:12px;font-weight:800}.welcome small{color:#94a3b8;margin-top:auto}.customer-bg{background:linear-gradient(145deg,color-mix(in srgb,var(--business-primary) 9%,white),white)}.auth{width:min(420px,100%);padding:32px}.auth h1{margin:4px 0 28px;font-size:30px}.field{gap:7px;margin:13px 0;display:grid}.field span{color:#536174;font-size:13px;font-weight:700}.field input,.field select,select,.search{color:#172033;background:#fff;border:1px solid #dce2ea;border-radius:12px;width:100%;min-height:46px;padding:10px 13px}.auth .btn{width:100%;margin-top:14px}.back{background:#edf1f6;border:0;border-radius:12px;width:42px;height:42px;font-size:20px}.error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:10px;padding:10px 12px}.success{color:#067647;background:#ecfdf3;border:1px solid #abefc6;border-radius:10px;padding:10px 12px}.customer-app{--app-bg:#f6f7fa;--surface:#fff;--text:#172033;--muted:#697586;--border:#e7ebf1;background:var(--app-bg);min-height:100vh;color:var(--text);padding-bottom:92px}.customer-app.theme-softBlue{--app-bg:#edf7ff;--surface:#fafdff;--border:#cfe8f7}.customer-app.theme-gameLight{--app-bg:#fff9e9;--surface:#fffefa;--border:#f4df9e}.customer-header{background:color-mix(in srgb,var(--surface) 92%,transparent);border-bottom:1px solid var(--border);z-index:5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;height:74px;padding:0 18px;display:flex;position:sticky;top:0}.business-lockup{color:inherit;background:0 0;border:0;align-items:center;gap:10px;display:flex}.mini-logo{background:var(--business-primary,#334155);color:#fff;border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.mini-logo svg{width:19px}.icon-button{background:#edf1f6;border:0;border-radius:12px;min-width:42px;min-height:42px;padding:8px;position:relative}.icon-button svg{width:20px}.icon-button em{color:#fff;background:#ef4444;border-radius:99px;min-width:18px;padding:3px;font-size:10px;font-style:normal;position:absolute;top:-3px;right:-3px}.customer-content{max-width:520px;margin:auto;padding:24px 18px}.bottom-nav{z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border-top:1px solid #e7ebf1;justify-content:center;height:75px;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{color:#8893a3;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:min(20%,104px);font-size:10px;font-weight:700;display:flex}.bottom-nav svg{width:21px}.bottom-nav button.active{color:var(--business-primary)}.greeting p,.page-title p,.admin-title p{color:var(--muted,#697586);margin:0}.greeting h1,.page-title h1{letter-spacing:-.035em;margin:3px 0 20px;font-size:28px}.level-card{background:linear-gradient(135deg,var(--business-primary),color-mix(in srgb,var(--business-primary) 65%,#111827));color:#fff;grid-template-columns:1fr auto;display:grid;overflow:hidden}.level-card span{opacity:.8;font-size:13px}.level-card h2{margin:4px 0 16px;font-size:28px}.level-card>svg{opacity:.45;width:46px;height:46px}.progress,.reward-progress{background:#ffffff40;border-radius:99px;grid-column:1/-1;height:8px;overflow:hidden}.progress i,.reward-progress div{background:#fff;border-radius:99px;height:100%;display:block}.stat-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.stat-grid .card{text-align:center;border-radius:17px;padding:14px 5px}.stat-grid b{font-size:18px;display:block}.stat-grid span{color:var(--muted);font-size:10px}.section-title,.split,.admin-title{justify-content:space-between;align-items:center;gap:14px;display:flex}.section-title{margin:24px 2px 12px}.section-title h2{margin:0;font-size:18px}.section-title button{color:var(--business-primary);background:0 0;border:0;font-weight:700}.mission-row{text-align:left;width:100%;color:inherit;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;display:grid}.mission-row:disabled{opacity:.58}.mission-row span:nth-child(2){gap:4px;display:grid}.mission-row small{color:var(--muted)}.mission-row>svg{width:18px}.mission-icon{background:color-mix(in srgb,var(--business-primary) 12%,white);width:43px;height:43px;color:var(--business-primary);border-radius:13px;place-items:center;display:grid}.mission-icon svg{width:21px}.announcement{background:color-mix(in srgb,var(--business-primary) 7%,white);gap:13px;margin-top:22px;display:flex}.announcement svg{color:var(--business-primary)}.announcement p{color:var(--muted);margin:4px 0;font-size:13px}.page-title{margin-bottom:20px}.filter-pills,.toggle,.choice{gap:7px;margin-bottom:16px;display:flex;overflow:auto}.filter-pills span,.toggle button,.choice button{white-space:nowrap;border:1px solid var(--border,#dce2ea);background:var(--surface,#fff);color:var(--muted,#64748b);border-radius:999px;padding:9px 14px}.filter-pills .active,.toggle button.active,.choice button.active{background:var(--business-primary,#1e293b);color:#fff;border-color:#0000}.mission-detail{text-align:center;padding:34px 24px}.mission-detail>svg,.reward-detail>svg{width:58px;height:58px;color:var(--business-primary);background:color-mix(in srgb,var(--business-primary) 10%,white);border-radius:18px;padding:12px}.mission-detail h1{font-size:29px}.mission-detail p{color:var(--muted);line-height:1.6}.reward-banner{color:#895800;background:#fff6d6;border-radius:12px;margin:20px 0;padding:13px;font-weight:800}.upload{border:2px dashed #cbd5e1;border-radius:14px;margin:16px 0;padding:18px;display:block}.upload input{width:100%;margin-bottom:8px}.checkin-card{text-align:center}.radar{background:color-mix(in srgb,var(--business-primary) 12%,white);border:16px solid color-mix(in srgb,var(--business-primary) 6%,white);width:116px;height:116px;color:var(--business-primary);border-radius:50%;place-items:center;margin:10px auto 22px;display:grid}.radar svg{width:40px;height:40px}.checkin-card>p{color:var(--muted)}.checkin-card>.btn{width:100%;margin:14px 0}.demo-modes{border-top:1px solid var(--border);gap:7px;margin-top:22px;padding-top:16px;display:grid}.success-panel{text-align:center;color:#067647;background:#ecfdf3}.success-panel svg{width:55px;height:55px}.panel{margin-top:12px}.podium{grid-template-columns:1fr 1.1fr 1fr;align-items:end;gap:7px;margin-top:34px;display:grid}.podium .card{text-align:center;padding:15px 4px}.podium .p1{border-color:#f2c94c;padding-top:28px;transform:translateY(-12px)}.podium span,.achievement span{font-size:28px;display:block}.podium b,.podium small{text-overflow:ellipsis;display:block;overflow:hidden}.podium small{color:var(--muted);margin-top:5px;font-size:11px}.your-rank{text-align:center;border-color:color-mix(in srgb,var(--business-primary) 40%,white)}.your-rank span,.your-rank small{color:var(--muted);font-size:12px;display:block}.your-rank b{color:var(--business-primary);font-size:42px;display:block}.rank-row,.activity-row{border-bottom:1px solid var(--border);grid-template-columns:42px 1fr auto;align-items:center;padding:14px 10px;display:grid}.rank-row.you{background:color-mix(in srgb,var(--business-primary) 8%,white);border-radius:13px}.reward-progress{background:#dfe5ed;margin-bottom:20px}.reward-progress div{background:var(--business-primary)}.reward-grid{grid-template-columns:repeat(2,1fr);gap:11px;display:grid}.reward{text-align:left;color:inherit}.reward>span{color:var(--business-primary);font-size:27px;font-weight:900}.reward h2{font-size:15px}.reward p,.reward small{color:var(--muted)}.reward-detail{text-align:center}.activity-row .plus{color:#079455;background:#ecfdf3}.activity-row .minus{color:#d92d20;background:#fef3f2}.activity-row>span{text-align:center;border-radius:9px;padding:8px;font-weight:800}.activity-row small{color:var(--muted);font-size:10px;display:block}.achievement-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.achievement{text-align:center}.achievement b,.achievement small{margin-top:7px;display:block}.achievement small{color:#079455}.achievement.locked{filter:grayscale();opacity:.5}.notice{gap:13px;display:flex}.notice>svg{color:var(--business-primary)}.notice p{color:var(--muted)}.notice.read{opacity:.65}.profile-card{text-align:center}.avatar{background:var(--business-primary);color:#fff;border-radius:50%;place-items:center;width:70px;height:70px;margin:auto;font-size:28px;font-weight:800;display:grid}.menu-row{border:0;border-bottom:1px solid var(--border);text-align:left;width:100%;min-height:57px;color:inherit;background:0 0;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;display:grid}.menu-row svg{width:20px}.menu-row.danger{color:#d92d20}.card h2{align-items:center;gap:8px;display:flex}.card h2 svg{width:22px}.choice.themes{grid-template-columns:1fr;display:grid}.switch{justify-content:space-between;align-items:center;min-height:48px;display:flex}.switch input{width:22px;height:22px;accent-color:var(--business-primary)}.toast{color:#fff;z-index:20;background:#172033;border-radius:999px;padding:11px 18px;position:fixed;bottom:90px;left:50%;transform:translate(-50%)}.status{border:0;border-radius:99px;padding:6px 9px;font-size:11px;font-weight:800}.status.pending{color:#a15c00;background:#fff5d6}.status.paid{color:#067647;background:#dcfae6}.status.rejected{color:#b42318;background:#fee4e2}.empty{text-align:center;color:#8290a3;padding:26px}.empty svg{width:36px}.admin-bg{background:#eef2f7}.admin-app{background:#f5f7fa;grid-template-columns:255px 1fr;min-height:100vh;display:grid}.admin-app aside{color:#d8dfeb;background:#111827;flex-direction:column;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.sidebar-head{align-items:center;gap:11px;padding:0 8px 22px;display:flex}.sidebar-head>div{display:grid}.sidebar-head small{color:#7f8a9e}.sidebar-head>button{display:none}.admin-app aside nav{gap:3px;display:grid}.admin-app aside nav button,.logout{color:#9eabba;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;min-height:44px;padding:0 12px;display:flex}.admin-app aside nav button svg,.logout svg{width:18px}.admin-app aside nav button.active{color:#fff;background:#283548}.logout{margin-top:auto}.admin-app>main{min-width:0}.admin-top{background:#fff;border-bottom:1px solid #e4e8ee;justify-content:flex-end;align-items:center;height:72px;padding:0 28px;display:flex}.admin-top p{color:#7a8798;margin:0;font-size:12px}.admin-top b{font-size:14px}.mobile-menu{display:none}.admin-content{max-width:1260px;margin:auto;padding:30px}.admin-title{margin-bottom:24px}.admin-title h1{letter-spacing:-.03em;margin:0;font-size:30px}.admin-title p{margin-top:5px}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:13px;display:grid}.kpi-grid .card{grid-template-columns:1fr auto;display:grid}.kpi-grid svg{color:#8a96a8;grid-column:2}.kpi-grid span{color:#667386;font-size:12px}.kpi-grid b{margin-top:9px;font-size:28px}.table{padding:0;overflow:hidden}.table-head,.table-row{text-align:left;border-bottom:1px solid #ebeff4;grid-template-columns:2fr repeat(3,1fr);align-items:center;gap:15px;padding:14px 18px;display:grid}.table-head{color:#667386;background:#f8fafc;font-size:12px}.table-row:last-child{border-bottom:0}.table-row small,.table-row span>b,.table-row span>small{display:block}.table-row small{color:#7f8b9c}.table-row.clickable{width:100%;color:inherit;background:#fff;border-top:0;border-left:0;border-right:0}.table-row svg{float:right;width:16px}.search{max-width:360px;margin-bottom:15px}.form-grid{grid-template-columns:repeat(2,1fr);gap:0 18px;display:grid}.form-grid h2,.form-grid>.btn,.form-grid>.success,.form-grid>.error{grid-column:1/-1}.form-grid .switch{border-bottom:1px solid #edf0f4}.inline{gap:9px;margin-top:14px;display:flex}.modal-form{border:2px solid #cad3df}.evidence{color:#667386;background:#e8edf3;border-radius:12px;place-items:center;width:120px;height:86px;display:grid}.action-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.super aside{background:#172033}.usage{grid-template-columns:14px 170px 1fr 100px;align-items:center;gap:12px;padding:12px 0;display:grid}.usage i{border-radius:50%;height:10px}.usage>div{background:#edf0f4;border-radius:99px;height:8px;overflow:hidden}.usage u{border-radius:99px;height:100%;display:block}.detail-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.brand-preview{color:#fff;text-align:center;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;min-height:220px;padding:20px;display:flex}.brand-preview svg{width:44px;height:44px}.brand-preview h2{margin:15px 0 0;font-size:30px}@media (width<=800px){.admin-app{grid-template-columns:1fr}.admin-app aside{z-index:50;width:255px;transition:all .2s;position:fixed;left:-270px}.admin-app aside.open{left:0;box-shadow:10px 0 40px #0004}.sidebar-head>button{color:#fff;background:0 0;border:0;margin-left:auto;display:grid}.admin-top{justify-content:space-between}.mobile-menu{background:#edf1f6;border:0;border-radius:10px;padding:9px;display:grid}.admin-content{padding:22px 14px}.kpi-grid,.action-grid{grid-template-columns:repeat(2,1fr)}.table{overflow:auto}.table>.table-row,.table>.table-head{min-width:620px}.form-grid,.detail-grid{grid-template-columns:1fr}.usage{grid-template-columns:12px 120px 1fr}.usage>b{display:none}.super aside{left:-270px}.super .admin-top{justify-content:flex-end}}@media (width<=430px){.customer-content{padding:20px 14px}.stat-grid{gap:5px}.stat-grid .card{padding:12px 2px}.reward-grid{grid-template-columns:1fr 1fr}.admin-content{padding:18px 10px}.kpi-grid{gap:7px}.kpi-grid .card{padding:15px}.kpi-grid b{font-size:23px}.action-grid{grid-template-columns:1fr}.admin-title{align-items:flex-start}.admin-title .btn{padding:0 12px}.hero h1{font-size:44px}}
