:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7fb;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background:#f5f7fb;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.login-page{background:radial-gradient(circle at 0 0,#2563eb1f,#0000 35%),#f5f7fb;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:#fff;border:1px solid #e4e8f0;border-radius:18px;width:100%;max-width:440px;padding:42px;box-shadow:0 20px 50px #17203314}.brand{align-items:center;gap:14px;margin-bottom:38px;display:flex}.brand-mark{color:#fff;background:#172033;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;font-weight:700;display:flex}.brand h1{color:#172033;margin:0;font-size:25px;line-height:1.1}.brand p{color:#697386;margin:4px 0 0;font-size:13px}.login-header{margin-bottom:28px}.login-header h2{color:#172033;margin:0 0 8px;font-size:28px;line-height:1.2}.login-header p{color:#697386;margin:0;font-size:15px}.login-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:#172033;font-size:14px;font-weight:600}.form-group input{color:#172033;background:#fff;border:1px solid #d6dce6;border-radius:9px;outline:none;width:100%;padding:13px 14px;font-size:15px;transition:border-color .2s,box-shadow .2s}.form-group input::placeholder{color:#9aa3b2}.form-group input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.login-options{justify-content:space-between;align-items:center;gap:12px;margin-top:-4px;display:flex}.remember-me{color:#697386;align-items:center;gap:8px;font-size:13px;display:flex}.remember-me input{width:15px;height:15px}.forgot-password{color:#2563eb;background:0 0;border:0;padding:0;font-size:13px}.forgot-password:hover{text-decoration:underline}.sign-in-button{color:#fff;background:#172033;border:0;border-radius:9px;width:100%;padding:14px;font-size:15px;font-weight:600;transition:background .2s,transform .2s}.sign-in-button:hover{background:#25324a}.sign-in-button:active{transform:translateY(1px)}.login-footer{text-align:center;border-top:1px solid #edf0f5;margin-top:32px;padding-top:22px}.login-footer p{color:#172033;margin:0 0 3px;font-size:12px;font-weight:600}.login-footer span{color:#9aa3b2;font-size:11px}.logout-button{color:#fff;cursor:pointer;background:#172033;border:1px solid #172033;border-radius:8px;margin:16px auto 0;padding:10px 28px;font-size:13px;font-weight:600;transition:background .2s,transform .2s;display:block}.logout-button:hover{background:#25324a}.logout-button:active{transform:translateY(1px)}@media (width<=520px){.login-page{padding:16px}.login-card{border-radius:14px;padding:30px 24px}.login-options{flex-direction:column;align-items:flex-start}}.login-error{color:#b42318;background:#fff5f5;border:1px solid #f1b8b8;border-radius:8px;padding:11px 13px;font-size:13px;line-height:1.4}.voucher-result{border-top:1px solid #e5e7eb;margin-top:28px;padding-top:24px}.voucher-result-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.voucher-result-header h2{margin:0;font-size:24px}.voucher-status{color:#166534;letter-spacing:.04em;background:#dcfce7;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.voucher-amount{color:#111827;margin-bottom:22px;font-size:32px;font-weight:800}.voucher-details{flex-direction:column;gap:14px;display:flex}.voucher-details>div{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:12px;display:flex}.voucher-details>div:last-child{border-bottom:none;padding-bottom:0}.voucher-details span{color:#6b7280;white-space:nowrap;flex:1;font-size:14px}.voucher-details strong{color:#111827;text-align:right;flex-shrink:0;font-size:14px}.redeem-button{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:10px;width:100%;margin-top:24px;padding:14px 18px;font-size:16px;font-weight:700}.redeem-button:hover{background:#15803d}.redeem-button:disabled{opacity:.6;cursor:not-allowed}.redemption-success{color:#166534;background:#dcfce7;border-radius:8px;margin-top:16px;padding:12px 14px;font-size:14px;font-weight:600}.merchant-page{color:#0f172a;background:#f8fafc;min-height:100vh;display:flex}.merchant-sidebar{color:#fff;background:#172033;flex-direction:column;width:250px;min-width:250px;padding:24px 16px;display:flex}.merchant-brand{align-items:center;gap:12px;padding:4px 8px 28px;display:flex}.merchant-brand-mark{color:#172033;background:#fff;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;font-size:20px;font-weight:800;display:flex}.merchant-brand h1{margin:0;font-size:20px}.merchant-brand p{color:#94a3b8;margin:3px 0 0;font-size:11px}.merchant-nav{flex-direction:column;gap:5px;display:flex}.merchant-nav button{color:#cbd5e1;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;width:100%;padding:12px 14px;font-size:14px;font-weight:600}.merchant-nav button:hover{color:#fff;background:#263247}.merchant-nav .merchant-nav-active{color:#172033;background:#fff}.merchant-sidebar-footer{border-top:1px solid #334155;margin-top:auto;padding:18px 8px 4px}.merchant-sidebar-footer div{flex-direction:column;gap:4px;margin-bottom:14px;display:flex}.merchant-sidebar-footer strong{font-size:13px}.merchant-sidebar-footer span{color:#94a3b8;font-size:12px}.merchant-logout{color:#cbd5e1;cursor:pointer;background:0 0;border:1px solid #475569;border-radius:7px;width:100%;padding:9px 12px;font-size:13px;font-weight:600}.merchant-logout:hover{color:#fff;background:#263247}.merchant-content{flex:1;min-width:0}.merchant-topbar{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;min-height:76px;padding:0 32px;display:flex}.merchant-topbar h2{margin:0;font-size:20px}.merchant-topbar p{color:#64748b;margin:4px 0 0;font-size:12px}.merchant-user{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600}.merchant-main{padding:32px}.merchant-welcome{margin-bottom:24px}.merchant-welcome h1{margin:0 0 6px;font-size:26px}.merchant-welcome p{color:#64748b;margin:0}.merchant-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.merchant-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.merchant-card span{color:#64748b;margin-bottom:10px;font-size:13px;font-weight:600;display:block}.merchant-card strong{color:#172033;font-size:28px}.merchant-panels{grid-template-columns:2fr 1fr;gap:16px;display:grid}.merchant-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;min-height:220px;padding:20px}.merchant-panel h3{margin:0 0 8px;font-size:16px}.merchant-panel p{color:#64748b;margin:0;font-size:13px}.merchant-placeholder{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:32px}.merchant-placeholder h1{margin:0 0 8px;font-size:24px}.merchant-placeholder p{color:#64748b;margin:0}@media (width<=900px){.merchant-sidebar{width:210px;min-width:210px}.merchant-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.merchant-panels{grid-template-columns:1fr}}@media (width<=700px){.merchant-page{flex-direction:column}.merchant-sidebar{width:100%;min-width:0;padding:16px}.merchant-brand{padding-bottom:16px}.merchant-nav{flex-direction:row;overflow-x:auto}.merchant-nav button{width:auto;min-width:max-content}.merchant-sidebar-footer{display:none}.merchant-topbar{padding:0 20px}.merchant-main{padding:20px}}@media (width<=500px){.merchant-kpis{grid-template-columns:1fr}.merchant-user{display:none}}.merchant-redemptions-panel{min-width:0}.merchant-panel-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.merchant-panel-header h3{margin:0}.merchant-panel-header>span{color:#64748b;font-size:12px;font-weight:600}.merchant-redemption-list{flex-direction:column;display:flex}.merchant-redemption-item{border-bottom:1px solid #e2e8f0;padding:14px 0}.merchant-redemption-item:last-child{border-bottom:none;padding-bottom:0}.merchant-redemption-main{justify-content:space-between;align-items:center;gap:12px;display:flex}.merchant-redemption-main>div{min-width:0}.merchant-redemption-main strong{color:#172033;font-size:14px;display:block}.merchant-redemption-reference{color:#64748b;margin-top:3px;font-size:11px;display:block}.merchant-redemption-status{letter-spacing:.3px;border-radius:999px;flex-shrink:0;padding:4px 8px;font-size:10px;font-weight:700}.merchant-status-completed{color:#166534;background:#dcfce7}.merchant-status-pending{color:#92400e;background:#fef3c7}.merchant-status-reversed{color:#991b1b;background:#fee2e2}.merchant-redemption-details{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.merchant-redemption-details>div{min-width:0}.merchant-redemption-details span{color:#64748b;margin-bottom:3px;font-size:11px;font-weight:600;display:block}.merchant-redemption-details strong{color:#172033;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;display:block;overflow:hidden}@media (width<=700px){.merchant-redemption-details{grid-template-columns:repeat(2,minmax(0,1fr))}}.merchant-settlement-panel{min-width:0}.merchant-settlement-status-row{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;padding-bottom:18px;display:flex}.merchant-settlement-status-row>span{color:#64748b;font-size:12px;font-weight:600}.merchant-settlement-summary{border-bottom:1px solid #e2e8f0;grid-template-columns:1fr 1fr;gap:16px;padding:18px 0;display:grid}.merchant-settlement-summary span,.merchant-settlement-period span{color:#64748b;margin-bottom:5px;font-size:11px;font-weight:600;display:block}.merchant-settlement-summary strong,.merchant-settlement-period strong{color:#172033;font-size:14px;font-weight:600;display:block}.merchant-settlement-period{padding-top:16px}.merchant-settlement-period+.merchant-settlement-period{padding-top:14px}.store-manager-page{color:#0f172a;background:#f8fafc;min-height:100vh;display:flex}.store-manager-sidebar{color:#fff;background:#172033;flex-direction:column;width:250px;min-width:250px;padding:24px 16px;display:flex}.store-manager-brand{align-items:center;gap:12px;padding:4px 8px 28px;display:flex}.store-manager-brand-mark{color:#172033;background:#fff;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;font-size:20px;font-weight:800;display:flex}.store-manager-brand h1{margin:0;font-size:20px}.store-manager-brand p{color:#94a3b8;margin:3px 0 0;font-size:11px}.store-manager-nav{flex-direction:column;gap:5px;display:flex}.store-manager-nav button{color:#cbd5e1;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;width:100%;padding:12px 14px;font-size:14px;font-weight:600}.store-manager-nav button:hover{color:#fff;background:#263247}.store-manager-nav .store-manager-nav-active{color:#172033;background:#fff}.store-manager-sidebar-footer{border-top:1px solid #334155;margin-top:auto;padding:18px 8px 4px}.store-manager-sidebar-footer div{flex-direction:column;gap:4px;margin-bottom:14px;display:flex}.store-manager-sidebar-footer strong{font-size:13px}.store-manager-sidebar-footer span{color:#94a3b8;font-size:12px}.store-manager-logout{color:#cbd5e1;cursor:pointer;background:0 0;border:1px solid #475569;border-radius:7px;width:100%;padding:9px 12px;font-size:13px;font-weight:600}.store-manager-logout:hover{color:#fff;background:#263247}.store-manager-content{flex:1;min-width:0}.store-manager-topbar{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;min-height:76px;padding:0 32px;display:flex}.store-manager-topbar h2{margin:0;font-size:20px}.store-manager-topbar p{color:#64748b;margin:4px 0 0;font-size:12px}.store-manager-user{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600}.store-manager-main{padding:32px}.store-manager-welcome{margin-bottom:24px}.store-manager-welcome h1{margin:0 0 6px;font-size:26px}.store-manager-welcome p{color:#64748b;margin:0}.store-manager-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.store-manager-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.store-manager-card span{color:#64748b;margin-bottom:10px;font-size:13px;font-weight:600;display:block}.store-manager-card strong{color:#172033;font-size:28px}.store-manager-panels{grid-template-columns:2fr 1fr;gap:16px;display:grid}.store-manager-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;min-height:220px;padding:20px}.store-manager-panel h3{margin:0 0 8px;font-size:16px}.store-manager-panel p{color:#64748b;margin:0;font-size:13px}.store-manager-placeholder{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:32px}.store-manager-placeholder h1{margin:0 0 8px;font-size:24px}.store-manager-placeholder p{color:#64748b;margin:0}@media (width<=900px){.store-manager-sidebar{width:210px;min-width:210px}.store-manager-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.store-manager-panels{grid-template-columns:1fr}}@media (width<=700px){.store-manager-page{flex-direction:column}.store-manager-sidebar{width:100%;min-width:0;padding:16px}.store-manager-brand{padding-bottom:16px}.store-manager-nav{flex-direction:row;overflow-x:auto}.store-manager-nav button{width:auto;min-width:max-content}.store-manager-sidebar-footer{display:none}.store-manager-topbar{padding:0 20px}.store-manager-main{padding:20px}}@media (width<=500px){.store-manager-kpis{grid-template-columns:1fr}.store-manager-user{display:none}}
