
:root{
  --navy:#10285a;--navy2:#0b1e45;--blue:#1769ff;--text:#14213d;--muted:#64748b;
  --bg:#f5f8fc;--card:#fff;--line:#e4eaf2;--green:#20a447;--red:#ef3f4f;--shadow:0 4px 18px rgba(18,38,63,.08)
}
*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg)}
a{color:inherit;text-decoration:none}.topbar{height:68px;background:var(--navy);color:#fff;display:flex;align-items:center;padding:0 22px;gap:30px;position:sticky;top:0;z-index:50}
.brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:700;min-width:185px}.brand-mark{width:42px;height:42px;border-radius:9px;background:#fff;color:var(--navy);display:grid;place-items:center;font-weight:800}
.brand small{display:block;font-size:7px;letter-spacing:1.4px;opacity:.75}.menu-btn{font-size:25px;cursor:pointer}.plan-pill{background:#fff;color:#2370dd;padding:9px 18px;border-radius:5px;font-weight:600;font-size:14px}
.top-spacer{flex:1}.top-icon{font-size:22px;margin-left:20px}.account{display:flex;align-items:center;gap:10px;font-size:13px}.avatar{width:38px;height:38px;border-radius:50%;background:#dceaff;color:#1458c8;display:grid;place-items:center;font-weight:700}
.shell{display:flex;min-height:calc(100vh - 68px)}.sidebar{width:230px;background:#fff;border-right:1px solid var(--line);box-shadow:4px 0 14px rgba(0,0,0,.04);flex:0 0 230px}
.profile{padding:25px 15px 20px;display:flex;gap:12px;align-items:center}.profile-avatar{width:58px;height:58px;border-radius:50%;background:#d9e9ff;display:grid;place-items:center;font-size:26px}.profile strong{display:block;font-size:15px}.profile span{font-size:12px;color:var(--muted)}
.nav{padding-bottom:15px}.nav-label{padding:10px 24px;color:#9aa7bb;font-size:10px;font-weight:800;letter-spacing:1px}.nav a{display:flex;align-items:center;gap:13px;padding:12px 22px;font-size:14px;color:#33466a;border-left:4px solid transparent}.nav a:hover,.nav a.active{background:#111a48;color:#fff;border-left-color:#111a48}.nav .ico{width:20px;text-align:center}.new{margin-left:auto;background:#ffbd00;color:#111;border-radius:5px;padding:2px 6px;font-size:10px;font-weight:700}
.support{margin:15px;background:#f3f7fd;border-radius:8px;padding:15px;text-align:center}.support h4{margin:0 0 6px}.support p{margin:0 0 12px;color:var(--muted);font-size:12px}.support .btn{width:100%}
.content{flex:1;min-width:0}.page-title{height:66px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px;box-shadow:0 3px 12px rgba(0,0,0,.05)}.page-title h1{margin:0;font-size:25px;font-weight:500}.crumb{font-size:13px;color:#65738c}.main{padding:30px 32px}
.grid8{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.stat{background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow);padding:20px;min-height:105px;display:flex;gap:16px;align-items:center}.stat-icon{width:60px;height:60px;border-radius:50%;background:#e6f0ff;color:#1467ff;display:grid;place-items:center;font-size:24px;flex:0 0 60px}.stat h4{margin:0 0 8px;font-size:14px;font-weight:500}.stat strong{font-size:22px}.stat small{display:block;color:#2aa84a;margin-top:5px}.expired{color:var(--red)!important}
.card{background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow);padding:24px}.banner{margin-top:18px;display:flex;align-items:center;gap:22px;min-height:105px}.banner-art{width:155px;height:78px;border-radius:5px;background:linear-gradient(135deg,#eef5ff,#fff);display:grid;place-items:center;color:#1c6fff;font-size:34px}.banner h3{margin:0 0 8px;font-size:17px}.banner p{margin:0;color:#465777;font-size:14px}.btn{border:0;background:#17265b;color:#fff;padding:11px 25px;border-radius:4px;font-weight:600;cursor:pointer}.btn.blue{background:#2e5bea}.btn.green{background:#25a747}.banner .btn{margin-left:auto;min-width:145px}
.analytics{margin-top:18px;padding:0;overflow:hidden}.analytics-head{background:#29323b;color:#fff;padding:13px 20px;font-size:16px;font-weight:700}.chart{height:190px;padding:20px;display:flex;align-items:flex-end;gap:7px}.bar{flex:1;background:#cfe1ff;border-top:3px solid #2874f0;border-radius:3px 3px 0 0;min-height:6px}.months{display:flex;justify-content:space-around;color:#68758a;font-size:11px;padding:0 20px 14px}
.footer{padding:20px 32px;color:#6b7890;font-size:12px;display:flex;justify-content:space-between}.alert{padding:12px 15px;border-radius:5px;margin-bottom:15px}.success{background:#eaf8ef;color:#16753a}.error{background:#fff0f1;color:#a3212d}
.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.plan{background:#fff;border:1px solid #ddd;box-shadow:var(--shadow);text-align:center}.plan-head{background:#464b78;color:#fff;padding:17px}.plan-head h3{margin:0 0 14px;font-size:15px}.price{font-size:27px;font-weight:700}.plan-body{padding:18px;min-height:280px;text-align:left}.feature{padding:8px 0;font-size:13px}.plan-foot{padding:10px 20px;border-top:1px solid #ddd}.plan-foot .btn{width:100%}
.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.field label{display:block;font-size:13px;margin-bottom:8px}.field input,.field select,.field textarea{width:100%;padding:11px;border:1px solid #ccd6e3;border-radius:3px;font:inherit}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:13px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}.badge{padding:4px 9px;border-radius:12px;font-size:11px}.badge.active{background:#e9f8ee;color:#19853d}.badge.expired{background:#ffe8ea;color:#c12735}
@media(max-width:1050px){.grid8,.plans{grid-template-columns:repeat(2,1fr)}.sidebar{width:205px;flex-basis:205px}.form-grid{grid-template-columns:1fr}}
@media(max-width:760px){.sidebar{display:none}.topbar{padding:0 12px;gap:12px}.brand{min-width:auto}.plan-pill{display:none}.main{padding:18px}.page-title{padding:0 18px}.grid8,.plans{grid-template-columns:1fr}.banner{align-items:flex-start;flex-wrap:wrap}.banner .btn{margin-left:0}.footer{padding:18px;display:block}}

/* Phase 4: Connect UPI Merchant & Payment Accounts */
.merchant-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:24px;margin-top:22px}
.merchant-box{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:22px;display:flex;flex-direction:column;justify-content:space-between;position:relative;transition:transform .15s ease,box-shadow .15s ease}
.merchant-box:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(18,38,63,.12)}
.merchant-box-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #edf2f7}
.merchant-provider{display:flex;align-items:center;gap:10px;font-weight:700;font-size:16px;color:#1e293b}
.merchant-provider-badge{padding:4px 10px;border-radius:6px;font-size:12px;font-weight:700;letter-spacing:.3px;display:inline-flex;align-items:center;gap:5px}
.provider-paytm{background:#e0f2fe;color:#0369a1}
.provider-phonepe{background:#f3e8ff;color:#6b21a8}
.provider-gpay{background:#e8f0fe;color:#1a73e8}
.provider-bharatpe{background:#e0f7fa;color:#00838f}
.provider-sbi{background:#ede9fe;color:#4338ca}
.provider-hdfc{background:#e0e7ff;color:#1e40af}
.provider-other{background:#f1f5f9;color:#334155}
.badge-primary-gold{background:#ffc107;color:#212529;font-weight:800;font-size:11px;padding:3px 9px;border-radius:4px;display:inline-flex;align-items:center;gap:4px}
.masked-mobile{font-size:22px;font-weight:800;letter-spacing:1px;color:#0f172a;margin:8px 0}
.upi-tag{display:inline-block;background:#f8fafc;border:1px solid #e2e8f0;padding:6px 12px;border-radius:5px;font-family:monospace;font-size:13px;color:#334155;margin-bottom:12px;word-break:break-all}
.merchant-meta{font-size:13px;color:var(--muted);line-height:1.6;margin-bottom:14px}
.merchant-box-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:14px;border-top:1px solid #edf2f7;margin-top:auto}
.btn.teal{background:#009688;color:#fff}
.btn.teal:hover{background:#00796b}
.btn.danger{background:#dc2626;color:#fff}
.btn.danger:hover{background:#b91c1c}
.btn.outline{background:transparent;border:1px solid #cbd5e1;color:#334155}
.btn.outline:hover{background:#f1f5f9}
.btn.sm{padding:7px 14px;font-size:12px;font-weight:600}

/* Switch toggle */
.switch-wrap{display:flex;align-items:center;gap:8px}
.switch{position:relative;display:inline-block;width:44px;height:24px;margin:0}
.switch input{opacity:0;width:0;height:0}
.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#cbd5e1;transition:.3s;border-radius:24px}
.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:white;transition:.3s;border-radius:50%}
input:checked + .slider{background-color:#20a447}
input:checked + .slider:before{transform:translateX(20px)}
.switch-label{font-size:11px;font-weight:700}
.switch-label.active{color:#20a447}
.switch-label.inactive{color:#94a3b8}

/* Modal */
.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(15,23,42,.6);backdrop-filter:blur(2px);display:none;align-items:center;justify-content:center;z-index:100;padding:16px}
.modal-overlay.open{display:flex}
.modal-window{background:#fff;border-radius:8px;box-shadow:0 20px 45px rgba(0,0,0,.2);width:100%;max-width:580px;max-height:90vh;overflow-y:auto;position:relative}
.modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #edf2f7}
.modal-head h2{margin:0;font-size:18px;font-weight:700;color:#0f172a}
.modal-close{background:transparent;border:0;font-size:24px;cursor:pointer;color:#94a3b8;line-height:1}
.modal-close:hover{color:#0f172a}
.modal-body{padding:24px}
.modal-foot{padding:16px 24px;border-top:1px solid #edf2f7;background:#f8fafc;display:flex;justify-content:flex-end;gap:12px;border-bottom-left-radius:8px;border-bottom-right-radius:8px}

/* Phase 5: Hosted Checkout & UTR Flow */
.checkout-wrapper{min-height:100vh;background:linear-gradient(180deg,#edf2f9 0%,#f8fafc 100%);padding:30px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.checkout-card{background:#fff;border:1px solid #dbe4ee;border-radius:14px;box-shadow:0 12px 36px rgba(15,23,42,.09);width:100%;max-width:490px;overflow:hidden}
.checkout-header{background:#10285a;color:#fff;padding:18px 24px;display:flex;align-items:center;justify-content:space-between}
.checkout-brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:800}
.checkout-secure{display:flex;align-items:center;gap:6px;font-size:12px;background:rgba(255,255,255,.15);padding:5px 10px;border-radius:20px;letter-spacing:.3px}
.checkout-body{padding:26px}
.checkout-merchant{text-align:center;margin-bottom:18px}
.checkout-merchant h2{margin:0 0 4px;font-size:17px;font-weight:700;color:#0f172a}
.checkout-merchant .order-tag{font-size:12px;color:#64748b;font-family:monospace}
.checkout-amount-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px;text-align:center;margin-bottom:20px}
.checkout-amount-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.8px}
.checkout-amount-value{font-size:36px;font-weight:900;color:#0f172a;line-height:1.2;margin-top:2px}
.timer-pill{display:inline-flex;align-items:center;gap:6px;background:#fef3c7;color:#92400e;font-size:12px;font-weight:700;padding:5px 12px;border-radius:20px;margin-top:8px}
.timer-pill.urgent{background:#fee2e2;color:#991b1b;animation:pulseTimer 1.5s infinite}
@keyframes pulseTimer{0%,100%{opacity:1}50%{opacity:.6}}
.qr-stage{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:18px;text-align:center;margin-bottom:20px;box-shadow:0 2px 8px rgba(0,0,0,.03)}
.qr-graphic{display:inline-block;padding:10px;background:#fff;border-radius:10px;border:1px solid #e2e8f0}
.qr-graphic svg,.qr-graphic img{display:block;max-width:210px;height:auto;margin:0 auto}
.copy-upi-bar{display:flex;align-items:center;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px;padding:6px 8px;margin-top:14px;gap:8px}
.copy-upi-id{flex:1;font-family:monospace;font-size:14px;font-weight:700;color:#1e293b;padding-left:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.btn-copy{border:0;background:#10285a;color:#fff;padding:7px 14px;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;transition:background .2s;white-space:nowrap}
.btn-copy:hover{background:#1d4ed8}
.intent-section{margin-bottom:22px}
.intent-label{font-size:12px;font-weight:700;color:#475569;margin-bottom:10px;text-transform:uppercase;letter-spacing:.6px;text-align:center}
.intent-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.intent-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 12px;border-radius:8px;font-size:13px;font-weight:700;border:1px solid #cbd5e1;background:#fff;color:#1e293b;cursor:pointer;transition:all .15s}
.intent-btn:hover{background:#f8fafc;border-color:#94a3b8;transform:translateY(-1px)}
.intent-btn.primary-intent{grid-column:span 2;background:#10285a;color:#fff;border-color:#10285a}
.intent-btn.primary-intent:hover{background:#0b1e45}
.steps-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px 18px;margin-bottom:22px}
.steps-title{font-size:13px;font-weight:700;color:#1e293b;margin-bottom:8px;display:flex;align-items:center;gap:6px}
.steps-list{margin:0;padding-left:20px;font-size:12px;color:#475569;line-height:1.7}
.utr-card{background:#fff;border:1.5px solid #2563eb;border-radius:10px;padding:18px;margin-bottom:18px;box-shadow:0 4px 14px rgba(37,99,235,.07)}
.utr-card h3{margin:0 0 6px;font-size:15px;font-weight:700;color:#1e293b}
.utr-card p{margin:0 0 14px;font-size:12px;color:#64748b;line-height:1.5}
.utr-input{width:100%;font-size:16px;font-family:monospace;font-weight:700;letter-spacing:1.5px;padding:12px 14px;border:1.5px solid #cbd5e1;border-radius:8px;outline:none;text-transform:uppercase}
.utr-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.15)}
.btn-submit-utr{width:100%;margin-top:12px;padding:13px;font-size:15px;font-weight:700;background:#16a34a;color:#fff;border:0;border-radius:8px;cursor:pointer;transition:background .2s}
.btn-submit-utr:hover{background:#15803d}
.checkout-footer-note{text-align:center;font-size:11px;color:#94a3b8;line-height:1.6;margin-top:16px}
.status-pill{display:inline-block;padding:6px 14px;border-radius:20px;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.5px}
.status-pill.pending{background:#fef3c7;color:#92400e}
.status-pill.under_verification{background:#e0f2fe;color:#0369a1}
.status-pill.success{background:#dcfce7;color:#166534}
.status-pill.failed{background:#fee2e2;color:#991b1b}


