:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f7f8;--surface:#fff;--surface-2:#eef3f3;--text:#10202b;--muted:#667781;--line:#dce5e6;--accent:#d71920;--accent-dark:#ae1218;--teal:#0f8f7e;--teal-dark:#086f63;--red:#b42318;--green:#087443;--amber:#b97809;--shadow:0 18px 46px #10202b17;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;touch-action:manipulation;min-height:100%;overflow-x:hidden}body{overscroll-behavior-y:none;-webkit-font-smoothing:antialiased;background:linear-gradient(135deg, #d719200d, transparent 34%), var(--bg);width:100%;min-height:100dvh;color:var(--text);margin:0;overflow-x:hidden}#root{min-height:100dvh}button,input,select,textarea{font:inherit;font-size:16px}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0}.app-shell{grid-template-columns:280px 1fr;min-height:100dvh;display:grid}.sidebar{color:#fff;background:#10202b;flex-direction:column;gap:24px;padding:28px;display:flex}.brand,.page-header,.row-between,.action-row{align-items:center;gap:12px;display:flex}.brand-mark{background:var(--accent);border-radius:8px;place-items:center;width:44px;height:44px;font-weight:900;display:grid}.brand-logo{object-fit:contain;background:#fff;border-radius:8px;width:58px;height:44px;padding:5px}.brand span,.sidebar-note span{color:#ffffffad;font-size:13px;display:block}.role-tabs{gap:8px;display:grid}.role-tabs button,.logout{color:#ffffffbd;text-align:left;background:0 0;border-radius:8px;padding:12px 14px;font-weight:800}.role-tabs button.active{color:#fff;background:#ffffff21}.logout{align-items:center;gap:8px;margin-top:auto;display:flex}.sidebar-note{border-top:1px solid #ffffff24;margin-top:auto;padding-top:18px}.main{padding:max(28px, env(safe-area-inset-top)) max(28px, env(safe-area-inset-right)) max(28px, env(safe-area-inset-bottom)) max(28px, env(safe-area-inset-left));min-width:0}.page-header{justify-content:space-between;margin-bottom:18px}.report-actions{justify-content:flex-end;align-items:end;gap:10px;display:flex}.report-actions label{min-width:160px}.eyebrow{color:var(--muted);text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:900}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:34px;line-height:1.05}h2{font-size:18px}.auth-card,.setup-panel,.panel,.task-card,.redeem-card,.points-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.auth-card,.setup-panel{width:100%;margin:0;padding:22px}.auth-layout{grid-template-columns:minmax(320px,480px) minmax(280px,380px);justify-content:center;align-items:stretch;gap:18px;width:min(920px,100%);margin:8vh auto;display:grid}.auth-logo{width:min(260px,70%);height:auto;margin-bottom:14px;display:block}.brand-visual{color:#fff;min-height:520px;box-shadow:var(--shadow);background:linear-gradient(160deg,#10202bd1,#10202bfa),radial-gradient(circle at 20% 10%,#d7192080,#0000 32%);border:1px solid #10202b14;border-radius:8px;align-content:end;gap:18px;padding:22px;display:grid;position:relative;overflow:hidden}.brand-visual:before{content:"";pointer-events:none;background-color:#0000;background-image:linear-gradient(90deg,#ffffff0f 1px,#0000 1px),linear-gradient(0deg,#ffffff0a 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:42px 42px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}.brand-visual-logo{z-index:1;background:#fff;border-radius:8px;width:min(280px,100%);padding:12px;position:relative}.route-line{border-top:5px solid var(--accent);opacity:.82;border-radius:50%;width:130%;height:94px;position:absolute;top:44%;left:-12%;transform:rotate(-9deg)}.route-line:after{content:"";border-top:4px solid #ffffffd1;border-radius:50%;width:72%;position:absolute;top:35px;left:12%}.visual-copy,.visual-metrics{z-index:1;position:relative}.visual-copy strong,.visual-copy span{display:block}.visual-copy strong{margin-bottom:8px;font-size:28px;line-height:1.05}.visual-copy span{color:#ffffffb8;line-height:1.45}.visual-metrics{gap:10px;display:grid}.visual-metrics div{color:#ffffffdb;background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;align-items:center;gap:10px;padding:12px;font-weight:800;display:flex}.segmented{background:var(--surface-2);border-radius:8px;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:18px;padding:5px;display:grid}.segmented button{color:var(--muted);background:0 0;border-radius:6px;padding:10px;font-weight:850}.segmented button.active{color:var(--text);background:#fff}.form-grid,.task-list,.rows{gap:12px;display:grid}label{color:var(--muted);gap:7px;font-size:12px;font-weight:850;display:grid}input,select,textarea{border:1px solid var(--line);min-width:0;color:var(--text);background:#fff;border-radius:8px;padding:12px}textarea{resize:vertical;min-height:80px}.two-col,.fuel-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.fuel-fields{grid-template-columns:repeat(3,1fr);margin:10px 0}.primary,.secondary,.danger{border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:11px 14px;font-weight:900;display:inline-flex}.primary{background:var(--teal);color:#fff}.primary:hover{background:var(--teal-dark)}.secondary{background:var(--surface-2);color:var(--text)}.danger{color:var(--red);background:#fff0ee}button:disabled{cursor:not-allowed;opacity:.58}.driver-layout{width:min(460px,100%);margin:0 auto}.points-card{color:#fff;background:#10202b;margin-bottom:14px;padding:18px}.points-card span,.points-card small{color:#ffffffad;display:block}.points-card strong{margin:8px 0 4px;font-size:46px;line-height:1;display:block}.redeem-card,.task-card,.panel{padding:16px}.redeem-card{background:#fbfcfc;gap:12px;margin-bottom:14px;display:grid}.redeem-card span,.hint,.row span,.approval-card span{color:var(--muted);font-size:12px}.task-card h3{margin-bottom:5px}.meta-line{color:var(--muted);flex-wrap:wrap;gap:7px;margin-bottom:10px;font-size:12px;font-weight:800;display:flex}.badge{background:var(--surface-2);color:var(--muted);border-radius:999px;align-items:center;padding:4px 8px;font-size:12px;font-weight:900;display:inline-flex}.badge.pending{color:var(--amber);background:#fff5df}.badge.approved{color:var(--green);background:#e9f8ef}.badge.rejected{color:var(--red);background:#fff0ee}.photo-picker{background:#fbfcfc;border:1px dashed #a9b9bd;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:70px;margin:10px 0;display:flex;position:relative}.photo-picker input{opacity:0;position:absolute;inset:0}.photo-picker span{color:var(--muted);font-size:12px}.photo-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0;display:grid}.photo-preview{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:8px;text-decoration:none;overflow:hidden}.photo-preview img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.photo-preview span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.photo-preview-meta{grid-template-columns:1fr 34px;align-items:center;gap:6px;padding:7px 8px;display:grid}.photo-remove{width:30px;height:30px;color:var(--red);background:#fff0ee;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.admin-photos{max-width:320px}.admin-grid{grid-template-columns:minmax(360px,1.15fr) minmax(300px,.85fr);gap:16px;display:grid}.approvals-panel{grid-row:span 2}.admin-tabs{gap:8px;margin:0 0 14px;padding-bottom:4px;display:flex;overflow-x:auto}.admin-tabs button{color:var(--muted);box-shadow:inset 0 0 0 1px var(--line);background:#fff;border-radius:8px;flex:none;align-items:center;gap:7px;padding:10px 12px;font-weight:900;display:inline-flex}.admin-tabs button.active{color:#fff;box-shadow:none;background:#10202b}.admin-tabs span{min-width:22px;color:var(--teal);background:#0f8f7e24;border-radius:999px;padding:2px 6px;font-size:12px}.admin-tabs button.active span{color:#fff;background:#ffffff29}.admin-tab-content{gap:16px;display:grid}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px;display:grid}.metric-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px}.metric-grid span{color:var(--muted);font-size:13px;font-weight:850}.metric-grid strong{margin-top:8px;font-size:30px;display:block}.row,.approval-card{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr auto;align-items:start;gap:12px;padding:13px;display:grid}.row strong,.row span,.approval-card strong,.approval-card span{display:block}.action-row{flex-wrap:wrap;justify-content:flex-start}.template-list{gap:10px;margin-top:12px;display:grid}.task-editor{gap:10px;display:grid}.template-chip{background:var(--surface-2);color:var(--muted);border-radius:999px;padding:7px 9px;font-size:12px;font-weight:800}.checkbox-line{align-items:center;gap:9px;display:flex}.checkbox-line input{width:18px;height:18px}.auth-info{flex-direction:column;justify-content:center;min-height:520px;display:flex}.auth-info-icon{width:64px;height:64px;color:var(--green);background:#eefaf4;border-radius:8px;place-items:center;margin:14px 0 18px;display:grid}.auth-info.error .auth-info-icon{color:var(--red);background:#fff0ee}.auth-info.neutral .auth-info-icon{background:var(--surface-2);color:var(--teal)}.auth-info p{color:var(--muted);margin:14px 0 22px;line-height:1.55}.panel-heading,.input-with-icon,.delivery-state>div{align-items:center;gap:9px;display:flex}.panel-heading{justify-content:space-between;margin-bottom:16px}.panel-heading h2,.bonus-history-admin h3,.bonus-review h3{margin-bottom:0}.bonus-award-section{gap:16px;display:grid}.bonus-form{max-width:760px}.input-with-icon{border:1px solid var(--line);background:#fff;border-radius:8px;padding-left:12px}.input-with-icon svg{color:var(--muted);flex:none}.input-with-icon input{border:0;width:100%;padding-left:0}.selection-note{color:var(--muted);margin:-2px 0 2px;font-size:13px}.bonus-review,.bonus-result{border:1px solid var(--line);background:#fbfcfc;border-radius:8px;padding:16px}.bonus-review dl{gap:0;margin:14px 0 18px;display:grid}.bonus-review dl>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(110px,.3fr) 1fr;gap:14px;padding:10px 0;display:grid}.bonus-review dt{color:var(--muted);font-size:12px;font-weight:850}.bonus-review dd{margin:0;font-weight:750}.bonus-result .success strong,.bonus-result .success span{display:block}.bonus-result .success span{margin-top:4px;font-size:13px}.delivery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.delivery-state{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;padding:12px}.delivery-state.sent{border-color:#a9d8c1}.delivery-state.failed{border-color:#efb7b0}.delivery-state span,.delivery-state small{margin-top:5px;display:block}.delivery-state small{overflow-wrap:anywhere;color:var(--red)}.bonus-history-admin{border-top:1px solid var(--line);gap:10px;padding-top:18px;display:grid}.bonus-award-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:13px;display:grid}.bonus-award-row span,.bonus-award-row p{color:var(--muted);margin:4px 0 0;font-size:12px;display:block}.notification-summary{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.status-pill{background:var(--surface-2);color:var(--muted);border-radius:999px;padding:4px 8px;font-size:12px;font-weight:850}.status-pill.sent{color:var(--green);background:#e9f8ef}.status-pill.failed{color:var(--red);background:#fff0ee}.compact{padding:7px 9px;font-size:12px}.section-heading{border-top:1px solid var(--line);margin:8px 0 12px;padding-top:20px}.points-positive{color:var(--green)}.bonus-history-row p{color:var(--muted);margin:5px 0 0;font-size:12px}.toast-inline,.success,.error{border-radius:8px;margin-bottom:14px;padding:12px}.success{color:var(--green);background:#eefaf4}.toast-inline{right:max(18px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));z-index:20;width:min(420px,100vw - 36px);color:var(--green);background:#eefaf4;border:1px solid #a9d8c1;margin:0;font-weight:800;position:fixed;box-shadow:0 16px 36px #0c232b2e}.toast-inline.toast-error{color:var(--red);background:#fff0ee;border-color:#efb7b0}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error{color:var(--red);background:#fff0ee}.empty{color:var(--muted);text-align:center;border:1px dashed #cbd6d8;border-radius:8px;padding:18px}@media (width<=900px){.app-shell{grid-template-columns:1fr}.auth-layout{grid-template-columns:1fr;margin:0 auto}.brand-visual{display:none}.sidebar{z-index:5;padding:max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) 14px max(14px, env(safe-area-inset-left));gap:12px;position:sticky;top:0}.role-tabs{grid-template-columns:1fr 1fr}.brand span,.sidebar-note{display:none}.logout{text-align:center;background:#ffffff1a;justify-content:center;margin-top:0;padding:10px 12px}.main{padding:14px max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left))}.admin-grid,.metric-grid{grid-template-columns:1fr}}@media (width<=520px){.two-col,.fuel-fields,.row,.approval-card,.delivery-grid,.bonus-award-row,.bonus-review dl>div{grid-template-columns:1fr}.notification-summary{align-items:flex-start}.auth-info{min-height:auto}.page-header,.report-actions{flex-direction:column;align-items:stretch}.report-actions label{min-width:0}.auth-logo{width:min(230px,82%)}}
