:root{
 color-scheme:dark;
 --bg:#0b1423;--panel:#142238;--panel-soft:#1b2c45;
 --line:#2b3e59;--line-strong:#415879;--text:#edf4ff;--muted:#b6c8df;
 --brand:#8ba9ff;--brand-hover:#668beb;--brand-soft:#223b65;--brand-line:#48669d;
 --danger:#ff9fa7;--danger-soft:#3e2534;--ok:#73e2bf;--ok-soft:#173e38;
 --warn:#ffcb81;--warn-soft:#493821;--info:#a9bdff;
 --shadow:0 12px 34px rgba(0,0,0,.23);
}
*{box-sizing:border-box}
html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--text)}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
.app{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh;background:var(--bg)}
.content{min-width:0;background:var(--bg)}
.sidebar{position:sticky;top:0;height:100vh;padding:22px 16px;border-right:1px solid var(--line);background:#fff;display:flex;flex-direction:column;overflow:hidden}
.brand{display:flex;gap:12px;align-items:center;padding:0 8px 18px;border-bottom:1px solid #f0f3f7;margin-bottom:8px}
.brand-mark,.login-logo,.service-icon{display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-weight:900;border:1px solid var(--brand-line)}
.brand-mark{width:42px;height:42px;border-radius:12px}.brand h1{font-size:16px;margin:0}.brand small{color:var(--muted)}
.nav{display:grid;gap:5px;min-height:0;flex:1;overflow-y:auto;overflow-x:hidden;padding-right:4px;padding-bottom:12px;align-content:start;scrollbar-gutter:stable}.nav a{padding:10px 12px;border-radius:10px;color:#475467;font-size:14px;font-weight:650;border:1px solid transparent}
.nav a:hover{background:#f8fafc;border-color:#eef2f6;color:#1f2937}.nav a.active{background:var(--brand-soft);border-color:#dbeafe;color:#1d4ed8}
.nav-title{padding:18px 12px 6px;color:#98a2b3;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.sidebar-bottom{position:static;margin-top:auto;padding-top:12px;flex:0 0 auto;border-top:1px solid #f0f3f7}
.main{padding:28px;max-width:1640px;margin:auto}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px;padding:2px 2px 0}.topbar h2{margin:3px 0 0;font-size:25px;color:#111827}.who{text-align:right;color:var(--muted);font-size:13px}.who strong{color:#1f2937;font-size:14px}.wallet-pill{display:inline-block;margin-top:5px;padding:4px 8px;border-radius:999px;background:var(--ok-soft);color:var(--ok);font-weight:800}.kicker{color:var(--brand);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.grid{display:grid;gap:16px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.two-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.split{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:16px}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.card-body{padding:18px}.stat-label{color:var(--muted);font-size:13px}.stat-value{font-size:28px;font-weight:850;margin-top:7px;color:#111827}.stat-note{color:#98a2b3;font-size:12px;margin-top:5px}
.section-head{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:17px 18px;border-bottom:1px solid var(--line);background:#fff;border-radius:16px 16px 0 0}.section-head h3{margin:0;font-size:16px;color:#111827}.section-head p{margin:4px 0 0;color:var(--muted);font-size:12px}
.table-wrap{overflow:auto;background:#fff;border-radius:0 0 16px 16px}.table{width:100%;border-collapse:collapse;min-width:820px;background:#fff}.table th,.table td{padding:13px 16px;border-bottom:1px solid #edf0f5;text-align:left;font-size:13px;vertical-align:middle;background:#fff}.table th{color:#667085;font-size:11px;text-transform:uppercase;letter-spacing:.07em;background:#f8fafc}.table tr:hover td{background:#f9fbff}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.label{font-size:12px;color:#475467;font-weight:750}
.input,.select,.textarea{width:100%;border:1px solid var(--line-strong);background:#fff;color:#1f2937;border-radius:10px;padding:10px 12px;outline:none;transition:.15s;box-shadow:0 1px 2px rgba(16,24,40,.02)}.input::placeholder,.textarea::placeholder{color:#98a2b3}.input:focus,.select:focus,.textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px rgba(37,99,235,.10)}.textarea{min-height:90px;resize:vertical}.textarea.compact{min-height:56px;margin-top:8px}.small-input{min-width:115px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:10px;padding:9px 13px;font-weight:800;font-size:13px;cursor:pointer}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-hover)}.btn-ghost{background:#fff;border-color:var(--line-strong);color:#344054}.btn-ghost:hover{background:#f8fafc}.btn-danger{background:var(--danger-soft);border-color:#fecdd3;color:var(--danger)}.btn-sm{padding:7px 10px;font-size:12px}.btn-block{width:100%}
.actions,.quick-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.quick-actions{margin-bottom:16px}.badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:850}.badge-ok{background:var(--ok-soft);color:var(--ok)}.badge-off{background:#f2f4f7;color:#667085}.badge-warn{background:var(--warn-soft);color:var(--warn)}.badge-danger{background:#fef3f2;color:var(--danger)}.badge-info{background:#eff8ff;color:var(--info)}
.flash{padding:12px 14px;border-radius:11px;margin-bottom:14px;border:1px solid;font-size:13px}.flash-success{background:var(--ok-soft);border-color:#abefc6;color:var(--ok)}.flash-error{background:#fef3f2;border-color:#fecdca;color:var(--danger)}
.muted{color:var(--muted)}.money{font-variant-numeric:tabular-nums;font-weight:750}.strong{font-weight:850}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:#475467}.nowrap{white-space:nowrap}.empty{padding:34px;text-align:center;color:var(--muted);background:#fff}.note{padding:13px;border:1px solid var(--line-strong);border-radius:11px;background:#f8fafc;color:#475467;font-size:12px}.privacy-note{padding:12px 14px;border:1px solid #bfdbfe;border-radius:11px;background:#eff6ff;color:#344054;font-size:12px}.top-note{margin-bottom:16px}
.rate-row{display:grid;grid-template-columns:minmax(0,1fr) 180px 120px;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #edf0f5}.form-actions{padding-top:16px}.search-form{display:flex;gap:8px}.mobile-nav{display:none}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f8fafc}.login-card-wrap{width:min(940px,100%);display:grid;grid-template-columns:1fr 430px;gap:18px}.login-side{padding:44px 30px;border-radius:20px;background:#fff;color:#1f2937;border:1px solid var(--line);box-shadow:var(--shadow);position:relative;overflow:hidden}.login-side:before{content:'';position:absolute;width:260px;height:260px;border-radius:999px;background:#eff6ff;right:-100px;top:-110px}.login-side:after{content:'';position:absolute;width:180px;height:180px;border-radius:999px;background:#f0fdf4;left:-80px;bottom:-90px}.login-side>*{position:relative;z-index:1}.login-side h1{font-size:34px;line-height:1.08;margin:16px 0 12px;color:#111827}.login-side p{color:#667085;line-height:1.65}.login-badge{display:inline-block;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800}.security-list{display:grid;gap:9px;margin-top:24px;color:#475467;font-size:13px}.security-list span{padding:10px 12px;border:1px solid #eef2f6;background:#f9fbff;border-radius:10px}.security-list span:before{content:'✓';margin-right:8px;color:#16a34a;font-weight:900}.login-card{padding:28px;background:#fff}.login-logo{width:52px;height:52px;border-radius:15px;font-size:18px}.login-title{margin:14px 0 6px;font-size:27px;color:#111827}.login-copy{color:var(--muted);margin:0 0 22px;font-size:14px}.helper{font-size:12px;color:#667085;margin-top:16px}.helper a{color:var(--brand);font-weight:750}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.service-card{background:#fff}.service-card h3{margin:14px 0 6px;font-size:17px;color:#111827}.service-card p{color:var(--muted);font-size:13px;line-height:1.55;min-height:40px}.service-icon{width:42px;height:42px;border-radius:12px}.service-price{font-size:22px;font-weight:900;margin:16px 0;color:#111827}.service-meta{display:grid;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.service-meta strong{color:#1f2937}
.wallet-hero{padding:16px;border-radius:13px;background:#eff6ff;border:1px solid #dbeafe;margin-bottom:16px}.wallet-hero span{display:block;font-size:12px;color:#475467}.wallet-hero strong{font-size:28px;color:#1d4ed8}.note-list{display:grid;gap:10px}.note-list>div{padding:12px 12px 12px 38px;background:#f8fafc;border:1px solid #eaecf0;border-radius:10px;position:relative;font-size:13px;color:#475467}.note-list>div:before{content:'✓';position:absolute;left:14px;color:#16a34a;font-weight:900}.consent{display:flex;gap:10px;align-items:flex-start;padding:12px;background:#f8fafc;border:1px solid var(--line-strong);border-radius:10px;font-size:12px;color:#475467}.consent input{margin-top:2px}.charge-box{display:flex;align-items:center;justify-content:space-between;padding:14px;border-radius:12px;background:#eff6ff;border:1px solid #dbeafe}.charge-box span{color:#475467;font-size:13px}.charge-box strong{font-size:20px;color:#1d4ed8}
.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-grid>div,.detail-list>div{display:grid;gap:4px;padding:11px;border-radius:10px;background:#f8fafc;border:1px solid #eaecf0}.detail-grid span,.detail-list span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.detail-grid strong,.detail-list strong{font-size:13px;word-break:break-word;color:#1f2937}.detail-list{display:grid;gap:8px}.line{border:0;border-top:1px solid var(--line);margin:18px 0}.result-box{margin-top:14px;padding:14px;border:1px solid var(--line-strong);border-radius:11px;background:#f8fafc}.result-box .label{margin-bottom:8px}.result-text{white-space:normal;word-break:break-word;font-weight:700}.result-inline{font-weight:700;color:#344054}.form-actions{display:flex;justify-content:flex-end}.compact-actions{gap:4px}
@media(max-width:1180px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.split,.two-cols{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.app{display:block}.sidebar{display:none}.mobile-nav{display:flex;overflow:auto;gap:7px;padding:10px 14px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}.mobile-nav a{white-space:nowrap;padding:8px 10px;border-radius:9px;background:#f8fafc;border:1px solid #eef2f6;color:#344054;font-size:12px}.main{padding:18px}.form-grid{grid-template-columns:1fr}.login-card-wrap{grid-template-columns:1fr;max-width:500px}.login-side{display:none}.rate-row{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.topbar .who{display:none}}
@media(max-width:600px){.main{padding:14px}.stats,.service-grid{grid-template-columns:1fr}.card-body{padding:15px}.topbar h2{font-size:21px}.section-head{align-items:flex-start;flex-direction:column}.search-form{width:100%}.search-form .input{min-width:0}.actions .btn{width:auto}.login-card{padding:22px}.table{min-width:720px}}

/* 2026-09 UI polish: user service catalog + login */
.services-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;margin-bottom:18px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.services-eyebrow{display:inline-block;margin-bottom:6px;color:var(--brand);font-size:11px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.services-hero h3{margin:0 0 7px;font-size:21px;color:#111827}.services-hero p{margin:0;max-width:720px;color:var(--muted);font-size:13px;line-height:1.6}.services-wallet{min-width:180px;padding:13px 16px;border:1px solid #dbeafe;background:#f8fbff;border-radius:13px;text-align:right}.services-wallet span{display:block;color:#64748b;font-size:11px;font-weight:700}.services-wallet strong{display:block;margin-top:4px;color:#1d4ed8;font-size:21px}
.user-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.service-box{display:flex;flex-direction:column;min-height:300px;background:#fff;border:1px solid #e4e7ec;border-radius:18px;box-shadow:0 3px 12px rgba(16,24,40,.045);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.service-box:hover{transform:translateY(-2px);border-color:#bfdbfe;box-shadow:0 10px 28px rgba(37,99,235,.09)}.service-box-top{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 8px}.service-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#eff6ff;border:1px solid #dbeafe;color:#1d4ed8;font-size:14px;font-weight:900;letter-spacing:.04em}.service-category{display:inline-flex;padding:6px 9px;border-radius:999px;background:#f8fafc;border:1px solid #eef2f6;color:#64748b;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.service-box-content{padding:8px 18px 18px;flex:1}.service-box-content h3{margin:0 0 8px;color:#101828;font-size:17px;line-height:1.3}.service-box-content p{margin:0;color:#667085;font-size:12.5px;line-height:1.65}.service-box-footer{padding:15px 18px 18px;border-top:1px solid #f0f2f5;background:#fcfdff}.service-charge{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:12px}.service-charge span{color:#667085;font-size:11px;font-weight:700}.service-charge strong{color:#111827;font-size:20px}.service-action{width:100%;justify-content:space-between;padding:10px 13px}
.login-shell{padding:30px 18px;background:linear-gradient(180deg,#f8fbff 0,#f7f8fa 100%)}.login-page{width:min(500px,100%)}.login-brand-row{display:flex;align-items:center;justify-content:center;gap:11px;margin-bottom:18px;color:#101828}.login-brand-row .login-logo{margin:0;width:44px;height:44px;border-radius:13px}.login-brand-row div:last-child{display:grid}.login-brand-row strong{font-size:15px}.login-brand-row span{color:#667085;font-size:11px;margin-top:2px}.login-card{padding:30px;border-radius:20px;box-shadow:0 14px 40px rgba(16,24,40,.08);border-color:#e5e9f0}.login-head{text-align:center;margin-bottom:22px}.login-shield{display:grid;place-items:center;width:46px;height:46px;margin:0 auto 10px;border-radius:50%;background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb;font-size:18px;font-weight:900}.login-title{margin:0 0 6px;font-size:26px}.login-copy{margin:0;color:#667085}.login-form{display:grid;gap:16px}.role-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.role-option{cursor:pointer}.role-option input{position:absolute;opacity:0;pointer-events:none}.role-option-box{display:grid;gap:3px;padding:11px 9px;border:1px solid #e4e7ec;border-radius:11px;background:#fff;text-align:center;transition:.15s}.role-option-box strong{color:#344054;font-size:12px}.role-option-box small{color:#98a2b3;font-size:9px;line-height:1.3}.role-option input:checked+.role-option-box{border-color:#60a5fa;background:#eff6ff;box-shadow:0 0 0 2px rgba(37,99,235,.08)}.role-option input:checked+.role-option-box strong{color:#1d4ed8}.input-lg{padding:12px 13px}.login-submit{padding:12px 14px;margin-top:2px;font-size:14px}.login-security{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:18px;padding-top:17px;border-top:1px solid #eef2f6}.login-security span{padding:5px 8px;border-radius:999px;background:#f8fafc;border:1px solid #eef2f6;color:#667085;font-size:9.5px;font-weight:700}.login-helper{text-align:center;margin-bottom:0}.login-footer-note{text-align:center;color:#98a2b3;font-size:10px;margin:14px 0 0}
@media(max-width:1180px){.user-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.services-hero{align-items:flex-start;flex-direction:column;padding:18px}.services-wallet{width:100%;text-align:left}.user-service-grid{grid-template-columns:1fr}.service-box{min-height:0}.role-picker{grid-template-columns:1fr}.role-option-box{text-align:left;padding:11px 13px}.login-card{padding:22px}.login-shell{padding:18px 14px}.login-brand-row{margin-bottom:14px}}

/* API/favorites/settings upgrade */
.service-section-title{display:flex;align-items:center;justify-content:space-between;margin:22px 2px 12px;color:#344054}.service-section-title>div{display:flex;gap:8px;align-items:center}.service-section-title>div span{color:#f59e0b;font-size:18px}.service-section-title small{color:#98a2b3}.service-box.is-favorite{border-color:#fde68a;box-shadow:0 6px 22px rgba(245,158,11,.08)}.service-box-top{gap:9px}.service-badges{display:flex;flex:1;flex-wrap:wrap;gap:6px;align-items:center}.service-mode{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.service-mode.api{background:#ecfdf3;color:#067647}.service-mode.flow{background:#f5f3ff;color:#6941c6}.service-mode.manual{background:#fffaeb;color:#b54708}.favorite-form{margin-left:auto}.favorite-btn{width:34px;height:34px;border-radius:10px;border:1px solid #e4e7ec;background:#fff;color:#f59e0b;font-size:20px;line-height:1;cursor:pointer}.favorite-btn:hover{background:#fffbeb;border-color:#fde68a}.captcha-box{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid #dbeafe;background:#f8fbff;border-radius:12px}.captcha-box img{max-width:190px;max-height:72px;border-radius:7px;border:1px solid #d0d5dd;background:#fff}.captcha-box span{font-size:11px;color:#667085}.result-downloads{padding:16px 0;border-top:1px solid var(--line);margin-top:16px}.result-downloads h4{margin:0 0 10px}.api-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.api-result-item,.api-result-group{padding:12px;border:1px solid #eaecf0;background:#f8fafc;border-radius:11px;min-width:0}.api-result-item{display:grid;gap:5px}.api-result-item span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#667085}.api-result-item strong{font-size:13px;color:#1f2937;word-break:break-word}.api-result-group{grid-column:1/-1}.api-result-group>strong{display:block;margin-bottom:9px}.bulk-save-bar{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#f8fbff;border-bottom:1px solid #dbeafe;color:#475467;font-size:12px}.bulk-save-bar.bottom{position:static;border-top:1px solid #dbeafe;border-bottom:0;border-radius:0 0 16px 16px}.service-admin-table .input{min-width:220px}.service-admin-table .textarea{min-width:300px}.service-admin-table .price-input{min-width:110px;max-width:140px}.switch-line{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:12px;color:#475467}.settings-stack{display:grid;gap:16px}.sticky-save{position:sticky;bottom:12px;z-index:5;justify-content:flex-end;padding:10px 12px;background:rgba(255,255,255,.95);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);backdrop-filter:blur(8px)}
@media(max-width:680px){.api-result-grid{grid-template-columns:1fr}.captcha-box{align-items:flex-start;flex-direction:column}.bulk-save-bar{position:static;align-items:stretch;flex-direction:column}.bulk-save-bar .btn{width:100%}.sticky-save{position:static}.service-section-title{margin-top:18px}}

/* v4 payment + admin history */
.btn-success{background:#067647;color:#fff;border-color:#067647}.btn-success:hover{background:#05603a;border-color:#05603a}
.payment-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:16px}.payment-card{min-height:430px}.payment-balance{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:1px solid #dbe7f3;background:#f8fbff;border-radius:14px;margin-bottom:18px}.payment-balance span{font-size:13px;color:var(--muted);font-weight:700}.payment-balance strong{font-size:24px;color:#175cd3}.payment-qr-step{text-align:center}.payment-qr-shell{max-width:420px;margin:0 auto;padding:20px;border:1px solid #dbe7f3;border-radius:18px;background:#fbfdff}.payment-amount-label{font-size:16px;margin-bottom:14px;color:#344054}.payment-amount-label strong{color:#175cd3;font-size:22px}.payment-qr-image{display:block;width:min(280px,100%);aspect-ratio:1/1;object-fit:contain;margin:0 auto;padding:10px;border:1px solid #eaecf0;border-radius:16px;background:#fff}.payment-status{display:inline-flex;margin-top:16px;padding:9px 13px;border-radius:999px;font-weight:800;font-size:13px}.payment-status.waiting{background:#fffaeb;color:#b54708}.payment-status.success{background:#ecfdf3;color:#067647}.payment-status.error{background:#fef3f2;color:#b42318}.payment-timer{margin-top:10px;font-weight:800;color:#475467}.payment-actions{justify-content:center;margin-top:14px}.payment-success{max-width:520px;margin:24px auto;text-align:center}.payment-success-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;background:#ecfdf3;color:#067647;font-size:34px;font-weight:900}.payment-success .detail-list{text-align:left;margin:18px 0}.payment-message{margin-top:14px;padding:12px 14px;border-radius:12px;font-weight:700}.payment-message.error{background:#fef3f2;color:#b42318}.payment-message.success{background:#ecfdf3;color:#067647}.history-warning{padding:14px 16px;border-radius:14px;background:#fff4ed;border:1px solid #fedf89;margin-bottom:18px;color:#93370d}.history-warning strong{display:block;margin-bottom:4px}.history-warning p{margin:0;color:#b54708}.history-count-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.history-count{padding:13px 14px;border:1px solid #eaecf0;border-radius:12px;background:#fcfcfd}.history-count span{display:block;font-size:12px;color:var(--muted);font-weight:700}.history-count strong{display:block;font-size:22px;margin-top:3px;color:#101828}
@media(max-width:900px){.payment-layout{grid-template-columns:1fr}.history-count-grid{grid-template-columns:1fr}}

/* v5 service search + session manager + protected delete */
.service-search-bar{display:flex;align-items:center;gap:14px;justify-content:space-between;margin:16px 0 8px;padding:12px 14px;border:1px solid #e4e7ec;border-radius:15px;background:#fff;box-shadow:0 2px 8px rgba(16,24,40,.035)}
.service-search-input{position:relative;display:flex;align-items:center;flex:1;max-width:760px}.service-search-input>span{position:absolute;left:13px;color:#667085;font-size:20px;pointer-events:none}.service-search-input .input{padding-left:42px;margin:0}
.service-search-count{display:flex;align-items:baseline;gap:5px;white-space:nowrap;color:#667085;font-size:11px}.service-search-count strong{font-size:20px;color:#175cd3}.service-search-empty{margin:14px 0}.service-catalog-section[hidden],.service-box[hidden]{display:none!important}
.sessions-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid #eaecf0}.sessions-actions form{margin:0}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.danger-zone{margin-top:16px;border-color:#fecdca;background:#fff}.danger-zone .section-head{background:#fff8f7}.danger-zone h3{color:#b42318}
@media(max-width:680px){.service-search-bar{align-items:stretch;flex-direction:column}.service-search-count{justify-content:flex-end}.sessions-actions{align-items:stretch;flex-direction:column}.sessions-actions form,.sessions-actions .btn{width:100%}}

/* v7 cutter result previews */
.result-preview-section{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.result-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.result-preview-head h4{margin:0;color:#101828;font-size:16px}.result-preview-head p{margin:4px 0 0;color:#667085;font-size:12px}
.result-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.result-preview-card{min-width:0;background:#fff;border:1px solid #e4e7ec;border-radius:14px;overflow:hidden;box-shadow:0 2px 8px rgba(16,24,40,.04)}
.result-preview-title{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 12px;border-bottom:1px solid #eaecf0;background:#f8fafc}
.result-preview-title strong{font-size:13px;color:#1d2939}.result-preview-title span{font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#475467;background:#fff;border:1px solid #e4e7ec;border-radius:999px;padding:4px 7px}
.result-image-wrap{display:flex;align-items:center;justify-content:center;min-height:260px;padding:12px;background:#f2f4f7;text-decoration:none}
.result-image-wrap img{display:block;width:100%;max-height:390px;object-fit:contain;border-radius:8px;background:#fff}
.result-pdf-wrap{height:390px;background:#f2f4f7}.result-pdf-wrap iframe{display:block;width:100%;height:100%;border:0;background:#fff}
.result-generic-preview{display:flex;align-items:center;justify-content:center;min-height:220px;padding:20px;text-align:center;color:#667085;background:#f8fafc;font-size:12px}
.result-preview-actions{display:flex;gap:8px;flex-wrap:wrap;padding:11px 12px;border-top:1px solid #eaecf0}.result-preview-actions .btn{flex:1;justify-content:center;min-width:110px}
@media(max-width:1050px){.result-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.result-preview-grid{grid-template-columns:1fr}.result-image-wrap{min-height:220px}.result-pdf-wrap{height:340px}}

/* v8 Alpine/CSP shell + partial page navigation + universal PDF viewer */
[x-cloak]{display:none!important}
.panel-progress{position:fixed;z-index:9999;left:0;right:0;top:0;height:3px;pointer-events:none;opacity:0;overflow:hidden;background:transparent;transition:opacity .15s ease}
.panel-progress span{display:block;width:36%;height:100%;background:var(--brand);transform:translateX(-120%)}
.panel-is-loading .panel-progress{opacity:1}.panel-is-loading .panel-progress span{animation:panelProgress 1s ease-in-out infinite}
@keyframes panelProgress{0%{transform:translateX(-120%)}55%{transform:translateX(130%)}100%{transform:translateX(310%)}}
.panel-is-loading #page-content{opacity:.72;transition:opacity .12s ease}.panel-is-loading .sidebar,.panel-is-loading .mobile-nav{pointer-events:auto}
.form-is-submitting{opacity:.78}.form-is-submitting .btn{cursor:wait}
.mobile-nav a.active{background:var(--brand-soft);border-color:#dbeafe;color:#1d4ed8}
.pdf-dialog{width:min(1180px,calc(100vw - 32px));height:min(88vh,900px);padding:0;border:0;border-radius:18px;background:#fff;box-shadow:0 24px 80px rgba(15,23,42,.24)}
.pdf-dialog::backdrop{background:rgba(15,23,42,.52);backdrop-filter:blur(2px)}
.pdf-dialog-card{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#fff;border-radius:18px;overflow:hidden}
.pdf-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line);background:#fff}
.pdf-dialog-head>div{display:grid;gap:2px}.pdf-dialog-head strong{font-size:15px;color:#101828}.pdf-dialog-head span{font-size:11px;color:#667085}
.pdf-dialog-body{min-height:0;background:#f2f4f7;padding:10px}.pdf-dialog-body iframe{display:block;width:100%;height:100%;border:0;border-radius:10px;background:#fff}
.pdf-dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--line);background:#fff}
@media(max-width:680px){.pdf-dialog{width:calc(100vw - 16px);height:92vh;border-radius:14px}.pdf-dialog-head{padding:11px 12px}.pdf-dialog-actions{padding:10px 12px;flex-direction:column}.pdf-dialog-actions .btn{width:100%}.pdf-dialog-body{padding:6px}}

/* v11 · AP Rice Card */
.rice-review-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid #dbeafe;background:#eff6ff;border-radius:16px;margin-bottom:16px}.rice-review-head div{display:grid;gap:4px}.rice-review-head strong{font-size:16px;color:#0f172a}.rice-review-head span{font-size:12px;color:#64748b}.rice-head-card{display:flex;align-items:center;gap:16px;padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;margin:14px 0}.rice-head-photo{width:72px;height:86px;border-radius:12px;background:#f1f5f9;border:1px solid #e2e8f0;overflow:hidden;display:grid;place-items:center;color:#94a3b8;font-weight:700}.rice-head-photo img{width:100%;height:100%;object-fit:cover}.rice-head-data{display:grid;gap:4px}.rice-head-data strong{font-size:16px}.rice-head-data span,.rice-head-data small{color:#64748b}.rice-members{margin-top:18px}.section-head.compact{padding:0 0 12px;margin-bottom:8px}.input.input-sm,.select.select-sm{min-width:120px;padding:8px 10px;font-size:12px}.result-primary-action{display:flex;justify-content:flex-end;margin:0 0 16px}.rice-download-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.rice-card-view{overflow-x:auto;padding:4px 0 18px}.rice-sheet{width:min(100%,920px);min-width:760px;margin:0 auto;background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.06)}.rice-side-label{text-align:center;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#475569;margin:2px 0 10px}.rice-card-separator{height:22px;border-bottom:2px dashed #cbd5e1;margin:12px 0 20px}.rice-card-canvas{position:relative;width:100%;background:#fff;overflow:hidden}.rice-template{width:100%;height:auto;display:block}.rice-overlay{position:absolute;inset:0;font-family:"Noto Sans Telugu","Nirmala UI",Gautami,Arial,sans-serif;color:#000}.rice-f-state{position:absolute;top:38%;left:32.5%;font-size:16px;font-weight:600}.rice-f-number{position:absolute;top:43%;left:32.5%;font-size:21px;font-weight:800;letter-spacing:1px}.rice-f-name{position:absolute;top:51.5%;left:32.5%;font-size:17px;font-weight:700}.rice-f-dob{position:absolute;top:58.5%;left:32.5%;font-size:17px;font-weight:600}.rice-f-gender{position:absolute;top:65.5%;left:32.5%;font-size:17px;font-weight:600}.rice-f-count{position:absolute;top:72%;left:32.5%;font-size:21px;font-weight:700}.rice-f-fps{position:absolute;top:79%;left:32.5%;font-size:21px;font-weight:700}.rice-f-shop{position:absolute;top:86.5%;left:32.5%;font-size:17px;font-weight:600;max-width:52%}.rice-f-photo{position:absolute;top:38%;right:5.5%;width:14%;height:25%;overflow:hidden;border-radius:4px}.rice-f-photo img{width:100%;height:100%;object-fit:cover}.rice-f-qr{position:absolute;top:68%;right:6%;width:13%}.rice-f-qr img{width:100%;display:block}.rice-member-no,.rice-member-name,.rice-member-dob,.rice-member-gender,.rice-member-relation{position:absolute;font-size:13px;font-weight:600;line-height:1.2}.rice-member-no{left:2%;width:9.5%;text-align:center}.rice-member-name{left:9.5%;width:41%;padding-left:3%;text-align:left}.rice-member-dob{left:50.5%;width:22.5%;text-align:center}.rice-member-gender{left:73%;width:9%;text-align:center}.rice-member-relation{left:82%;width:18%;text-align:center}.rice-b-address{position:absolute;top:69%;left:28%;font-size:14px;font-weight:700;width:65%;line-height:1.4}.rice-b-taluk{position:absolute;top:82%;left:33%;font-size:16px;font-weight:700;width:60%}@media(max-width:900px){.rice-sheet{transform-origin:top left}.rice-review-head{align-items:flex-start;flex-direction:column}.rice-head-card{align-items:flex-start}.rice-members .table{min-width:920px}}


/* v13 Registration, WhatsApp recovery and ABHA flow */
.login-quick-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:16px}.login-quick-links a{font-weight:700;text-decoration:none;color:#2563eb;background:#eff6ff;border:1px solid #dbeafe;padding:9px 13px;border-radius:999px}.guest-wide{width:min(100%,680px)}.register-card{max-width:680px}.phone-field,.suffix-input{display:flex;align-items:stretch;gap:0}.phone-field>span,.suffix-input>span{display:flex;align-items:center;padding:0 14px;border:1px solid #dbe3ef;background:#f8fafc;color:#475569;font-weight:800;white-space:nowrap}.phone-field>span{border-radius:12px 0 0 12px;border-right:0}.suffix-input>span{border-radius:0 12px 12px 0;border-left:0}.phone-field .input{border-radius:0 12px 12px 0}.suffix-input .input{border-radius:12px 0 0 12px}.toggle-row{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;cursor:pointer}.toggle-row input{width:20px;height:20px;margin-top:2px}.toggle-row span{display:flex;flex-direction:column;gap:3px}.toggle-row small{color:#64748b}.abha-address-list{display:grid;gap:8px}.abha-address-option{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #dbe3ef;border-radius:12px;background:#f8fafc;cursor:pointer}.abha-address-option:has(input:checked){border-color:#2563eb;background:#eff6ff}.abha-address-option span{font-weight:750;color:#1e293b}

.brand-mark,.login-logo{overflow:hidden}
.brand-mark img,.login-logo img,.brand-logo-image,.login-logo-image{display:block;width:100%;height:100%;object-fit:contain}
.brand-fallback-text{display:grid;place-items:center;width:100%;height:100%}
.brand-mark{background:#fff}
.login-logo{background:#fff}
.brand-upload-box{display:grid;gap:12px}
.brand-upload-preview{display:flex;align-items:center;justify-content:flex-start;padding:12px;border:1px solid var(--line);border-radius:14px;background:#f8fafc}
.brand-settings-preview{display:block;max-width:180px;max-height:72px;object-fit:contain}
.brand-upload-empty{padding:12px;border:1px dashed #cbd5e1;border-radius:14px;background:#f8fafc;color:#64748b;font-size:13px}
.checkbox-inline{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#475467}
.checkbox-inline input{margin:0}

.ration-result{display:grid;gap:16px;margin-top:18px}
.ration-result-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:18px;border:1px solid #dbeafe;background:#f8fbff;border-radius:16px}
.ration-result-hero h3{margin:4px 0 3px;font-size:22px;color:#111827}.ration-result-hero p{margin:0;color:#64748b}
.ration-result-numbers{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:10px;min-width:min(480px,100%)}
.ration-result-numbers>div,.ration-address-card{padding:12px 14px;border:1px solid #dbeafe;border-radius:12px;background:#fff}
.ration-result-numbers span,.ration-address-card span{display:block;color:#64748b;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}
.ration-result-numbers strong{display:block;margin-top:4px;font-size:18px;color:#0f172a;letter-spacing:.03em}.ration-result-numbers small{display:block;margin-top:4px;color:#64748b;font-size:10px}
.ration-address-card strong{display:block;margin-top:5px;color:#1f2937;line-height:1.55}.ration-address-group{padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.ration-address-group>strong{display:block;margin-bottom:12px;color:#1f2937}.ration-family{padding-top:4px}.aadhaar-full-cell{font-weight:850;white-space:nowrap;color:#111827}.ration-family-table td{vertical-align:top}.ration-summary-grid{margin-top:0}
@media(max-width:900px){.ration-result-hero{flex-direction:column}.ration-result-numbers{min-width:0;width:100%;grid-template-columns:1fr}.ration-family-table{min-width:980px}}

.update-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:13px 15px;border:1px solid #bfdbfe;border-radius:14px;background:#eff6ff;box-shadow:0 6px 18px rgba(37,99,235,.06)}
.update-notice>div{display:grid;gap:2px}.update-notice strong{color:#1d4ed8;font-size:13px}.update-notice span{color:#475467;font-size:12px}.update-release-card{border-color:#bfdbfe;background:linear-gradient(180deg,#fff 0,#f8fbff 100%)}
@media(max-width:680px){.update-notice{align-items:flex-start;flex-direction:column}.update-notice .btn{width:100%}}

.nav::-webkit-scrollbar{width:7px}.nav::-webkit-scrollbar-thumb{background:#d0d5dd;border-radius:999px}.nav::-webkit-scrollbar-track{background:transparent}

/* v28.5 User Studio */
.studio-bank-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:13px;margin:14px 0}
.studio-bank-card{display:flex;flex-direction:column;gap:13px;padding:20px 17px;border:1px solid #d8e1ef;border-top:5px solid var(--bank);border-radius:14px;background:#fff;text-decoration:none;color:#152237;box-shadow:0 4px 15px #142d5010}
.studio-bank-card:hover{box-shadow:0 8px 20px #142d5023;transform:translateY(-2px)}
.studio-bank-card small{color:#64748b}.studio-bank-dot{width:24px;height:24px;background:var(--bank);border-radius:50%}
.studio-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.studio-canvas-wrap{margin-top:24px;overflow:auto;border:1px solid #d7dfe9;border-radius:12px;padding:12px;background:#edf2f9;text-align:center}

/* v28.8.17: polished accessible light/dark theme (standard login) */

html,body{transition:background-color .18s ease,color .18s ease}
.sidebar{background:linear-gradient(180deg,#fff 0%,#f9fbff 100%);box-shadow:3px 0 24px rgba(33,61,94,.025)}
.nav a.active{border-color:#cdd8ff;background:linear-gradient(90deg,#edf2ff,#f5f8ff);color:#2546b5}
.card{box-shadow:var(--shadow);border-radius:18px}
.card:hover{border-color:#d6dff0}
.stat-value{letter-spacing:-.035em}
.stat-label{font-weight:750;letter-spacing:.01em}
.btn-primary{background:linear-gradient(135deg,#4267f4,#3152d2);box-shadow:0 4px 12px rgba(54,92,245,.14)}
.btn-primary:hover{background:linear-gradient(135deg,#3154e3,#263eb4)}
.login-shell{background:radial-gradient(circle at 15% 10%,#e7efff 0%,transparent 38%),radial-gradient(circle at 90% 85%,#e4f9f2 0%,transparent 32%),#f7f9fd}
.login-card{border-color:#dbe4f3;box-shadow:0 25px 70px rgba(38,65,113,.105)}
.login-shield{background:linear-gradient(135deg,#e8eefe,#e4f7fd);border-color:#c6d4fc}
.theme-switch{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:35px;padding:7px 12px;border-radius:999px;background:var(--panel);color:var(--text);border:1px solid var(--line-strong);cursor:pointer;font-weight:800;font-size:12px;box-shadow:0 3px 10px rgba(16,24,40,.06);white-space:nowrap}
.theme-switch:hover{border-color:var(--brand);color:var(--brand)}
.theme-switch:focus-visible{outline:3px solid var(--brand-line);outline-offset:2px}
.theme-switch-guest{position:fixed;top:18px;right:18px;z-index:99}
.topbar-person{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-bottom:4px}
.topbar-person strong{max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[data-theme="dark"]{
 color-scheme:dark;
 --bg:#0c1423;--panel:#142238;--panel-soft:#192b45;
 --line:#2b3c55;--line-strong:#39516f;--text:#e9f0fb;--muted:#adc0d9;
 --brand:#86a4ff;--brand-hover:#6688ed;--brand-soft:#1d3154;--brand-line:#395a93;
 --danger:#ff9da6;--danger-soft:#3c2636;--ok:#69deb6;--ok-soft:#133f39;
 --warn:#ffce7b;--warn-soft:#46351c;--info:#9ab6ff;
 --shadow:0 12px 32px rgba(0,0,0,.19);
}
[data-theme="dark"] html,[data-theme="dark"] body{background:var(--bg);color:var(--text)}
[data-theme="dark"] .app,[data-theme="dark"] .content{background:var(--bg)}
[data-theme="dark"] .sidebar{background:linear-gradient(180deg,#142339,#111e32);border-color:var(--line)}
[data-theme="dark"] .brand{border-color:var(--line)}
[data-theme="dark"] .sidebar-bottom{border-color:var(--line)}
[data-theme="dark"] .nav a{color:var(--muted)}
[data-theme="dark"] .nav a:hover,[data-theme="dark"] .nav a.active{background:#213a60;color:#f4f7ff;border-color:#36557d}
[data-theme="dark"] .nav-title{color:#879ebc}
[data-theme="dark"] .card,[data-theme="dark"] .login-card,[data-theme="dark"] .login-side,[data-theme="dark"] .service-box,[data-theme="dark"] .result-preview-card,[data-theme="dark"] .payment-qr-shell,[data-theme="dark"] .history-count,[data-theme="dark"] .service-search-bar{background:var(--panel);color:var(--text);border-color:var(--line)}
[data-theme="dark"] .section-head,[data-theme="dark"] .table-wrap,[data-theme="dark"] .table,[data-theme="dark"] .table td{background:var(--panel);color:var(--text);border-color:var(--line)}
[data-theme="dark"] .table th,[data-theme="dark"] .table tr:hover td,[data-theme="dark"] .result-preview-title,[data-theme="dark"] .service-box-footer,[data-theme="dark"] .detail-list,[data-theme="dark"] .result-generic-preview{background:var(--panel-soft);color:var(--text);border-color:var(--line)}
[data-theme="dark"] .input,[data-theme="dark"] .select,[data-theme="dark"] .textarea,[data-theme="dark"] select,[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),[data-theme="dark"] textarea{background:#0e1c30;color:var(--text);border-color:var(--line-strong)}
[data-theme="dark"] .input::placeholder,[data-theme="dark"] textarea::placeholder{color:#889bb7}
[data-theme="dark"] .btn-ghost,[data-theme="dark"] .theme-switch{background:#203450;color:var(--text);border-color:var(--line-strong)}
[data-theme="dark"] .btn-ghost:hover,[data-theme="dark"] .theme-switch:hover{background:#2a4365}
[data-theme="dark"] .btn-primary{background:linear-gradient(135deg,#4a70e9,#3555c2);color:#fff}
[data-theme="dark"] .topbar h2,[data-theme="dark"] .topbar .who strong,[data-theme="dark"] .stat-value,[data-theme="dark"] .section-head h3,[data-theme="dark"] .service-box-content h3,[data-theme="dark"] .service-charge strong,[data-theme="dark"] .result-preview-head h4,[data-theme="dark"] .result-preview-title strong,[data-theme="dark"] .login-title,[data-theme="dark"] .login-brand-row,[data-theme="dark"] .login-side h1,[data-theme="dark"] .history-count strong{color:var(--text)}
[data-theme="dark"] .stat-note,[data-theme="dark"] .login-brand-row span,[data-theme="dark"] .login-copy,[data-theme="dark"] .login-side p,[data-theme="dark"] .service-box-content p,[data-theme="dark"] .service-charge span,[data-theme="dark"] .label,[data-theme="dark"] .helper,[data-theme="dark"] .muted,[data-theme="dark"] .result-preview-head p{color:var(--muted)}
[data-theme="dark"] .login-shell{background:radial-gradient(circle at 20% 10%,#1a3152,transparent 45%),radial-gradient(circle at 95% 85%,#163833,transparent 40%),var(--bg)}
[data-theme="dark"] .login-brand-row strong{color:var(--text)}
[data-theme="dark"] .login-security span,[data-theme="dark"] .security-list span,[data-theme="dark"] .service-category{background:#1d304c;border-color:var(--line);color:var(--muted)}
[data-theme="dark"] .login-shield,[data-theme="dark"] .brand-mark,[data-theme="dark"] .service-icon{background:#243d67;color:#b3c8ff;border-color:#36547e}
[data-theme="dark"] .mobile-nav{background:#142339;border-color:var(--line)}
[data-theme="dark"] .mobile-nav a{background:#1b304e;color:var(--text);border-color:var(--line)}
[data-theme="dark"] .service-box-footer,[data-theme="dark"] .login-security{border-color:var(--line)}
[data-theme="dark"] .note,[data-theme="dark"] .empty{background:#1b2d47;color:var(--muted);border-color:var(--line)}
[data-theme="dark"] .pdf-dialog-card,[data-theme="dark"] .pdf-dialog-head,[data-theme="dark"] .pdf-dialog-actions{background:var(--panel);color:var(--text);border-color:var(--line)}
@media(max-width:860px){[data-theme="dark"] .mobile-nav{background:#152239}}
@media(max-width:600px){.theme-switch-guest{top:10px;right:10px}.login-shell{padding-top:76px}.topbar-person .theme-switch{padding:7px 9px}}
@media(prefers-reduced-motion:reduce){html,body,.theme-switch{transition:none!important}}

/* v28.8.21 — Dark-only design. Light mode and toggle were removed by request. */
html[data-theme="dark"]{color-scheme:dark;scroll-behavior:smooth}
[data-theme="dark"] .login-side,[data-theme="dark"] .services-hero,[data-theme="dark"] .service-search-bar,
[data-theme="dark"] .service-section-title,[data-theme="dark"] .history-filter,
[data-theme="dark"] .payment-card,[data-theme="dark"] .payment-layout .card,
[data-theme="dark"] .studio-bank-card,[data-theme="dark"] .result-image-wrap,
[data-theme="dark"] .result-pdf-wrap,[data-theme="dark"] .result-generic-preview,
[data-theme="dark"] .retailer-service-total{background:var(--panel);color:var(--text);border-color:var(--line)}
[data-theme="dark"] .services-hero h3,[data-theme="dark"] .service-section-title,
[data-theme="dark"] .studio-bank-card,[data-theme="dark"] .login-title,
[data-theme="dark"] .topbar-person strong{color:var(--text)}
[data-theme="dark"] .nav a.active{background:linear-gradient(90deg,#2a4678,#21385c);border-color:#506b9c;color:#f3f7ff}
[data-theme="dark"] .sidebar{background:linear-gradient(180deg,#172943,#101c30)}
[data-theme="dark"] .card{box-shadow:0 12px 36px rgba(0,0,0,.16)}
[data-theme="dark"] .badge-off{background:#2e3b4d;color:#bbcadd}
[data-theme="dark"] .badge-danger,[data-theme="dark"] .flash-error{background:#462636;color:#ffb3ba;border-color:#6c3b4e}
[data-theme="dark"] .badge-warn{background:#40351e;color:#ffce8a}
[data-theme="dark"] .badge-info{background:#213961;color:#aec6ff}
[data-theme="dark"] .flash-success{background:#183c37;border-color:#286554;color:#93e6c8}
[data-theme="dark"] .code,[data-theme="dark"] .stat-note,[data-theme="dark"] .service-search-count,
[data-theme="dark"] .service-search-count strong{color:var(--muted)}
[data-theme="dark"] .service-search-count strong{color:var(--brand)}
[data-theme="dark"] .payment-balance,[data-theme="dark"] .session-item,
[data-theme="dark"] .service-meta,[data-theme="dark"] .service-section-title{
 border-color:var(--line)}
[data-theme="dark"] .table th{background:#20344f}
[data-theme="dark"] input[type="search"]::-webkit-search-cancel-button{filter:invert(1)}
[data-theme="dark"] .wallet-pill{color:var(--ok);background:var(--ok-soft)}
/* Dark finishing touches across older modules that used hard-coded light fills. */
[data-theme="dark"] .service-card h3,[data-theme="dark"] .service-card .service-meta strong,
[data-theme="dark"] .wallet-hero strong,[data-theme="dark"] .detail-list strong,
[data-theme="dark"] .ration-address-card strong,[data-theme="dark"] .login-brand-row strong{
 color:var(--text)}
[data-theme="dark"] .service-card,[data-theme="dark"] .wallet-hero,
[data-theme="dark"] .detail-grid>div,[data-theme="dark"] .detail-list>div,
[data-theme="dark"] .privacy-note,[data-theme="dark"] .rice-review-head,
[data-theme="dark"] .brand-upload-preview,[data-theme="dark"] .brand-upload-empty,
[data-theme="dark"] .ration-result-hero,[data-theme="dark"] .ration-result-numbers>div,
[data-theme="dark"] .ration-address-card,[data-theme="dark"] .ration-address-group{
 background:var(--panel-soft);border-color:var(--line);color:var(--text)}
[data-theme="dark"] .wallet-hero span,[data-theme="dark"] .service-meta span,
[data-theme="dark"] .brand-upload-empty{color:var(--muted)}
[data-theme="dark"] .login-quick-links a{background:#203554;color:#bcd0ff;border-color:var(--line)}
[data-theme="dark"] .login-quick-links a:hover{background:#294369}
[data-theme="dark"] .result-preview-title span{background:#223856;color:var(--muted);border-color:var(--line)}
[data-theme="dark"] .pdf-dialog,[data-theme="dark"] .pdf-dialog-body{background:#142238;color:var(--text)}
[data-theme="dark"] .result-preview-head h4,[data-theme="dark"] .ration-result-hero strong{color:var(--text)}
[data-theme="dark"] .result-generic-preview{color:var(--muted)}


/* v28.8.22 — Flat, direct-click service cards across Retailer Dashboard + Services. */
.retailer-service-catalog{margin:24px 0 0}
.retailer-catalog-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}
.retailer-catalog-heading h3{margin:4px 0 6px;color:var(--text);font-size:23px;font-weight:850;letter-spacing:-.035em}
.retailer-catalog-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.retailer-service-total{display:flex;align-items:center;gap:9px;white-space:nowrap;padding:12px 15px;border-radius:14px;border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow)}
.retailer-service-total strong{color:#aac3ff;font-size:23px;line-height:1}
.retailer-service-total span{color:var(--muted);font-size:11px;font-weight:750}
.retailer-search-bar{margin:0 0 17px!important}
.retailer-flat-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
[data-theme="dark"] .retailer-service-card{position:relative;isolation:isolate;min-height:250px;background:linear-gradient(155deg,#1d314e 0%,#172941 75%);border:1px solid #355071;border-radius:19px;box-shadow:0 8px 28px rgba(0,0,0,.16);transition:transform .18s,border-color .18s,box-shadow .18s}
[data-theme="dark"] .retailer-service-card:nth-child(4n+2){background:linear-gradient(155deg,#203c49 0%,#172b3e 75%)}
[data-theme="dark"] .retailer-service-card:nth-child(4n+3){background:linear-gradient(155deg,#2b314f 0%,#192940 75%)}
[data-theme="dark"] .retailer-service-card:hover,[data-theme="dark"] .retailer-service-card:focus-within{transform:translateY(-3px);border-color:#82a3e9;box-shadow:0 15px 38px rgba(4,12,30,.38)}
.retailer-service-card.is-favorite{border-color:#a48048}
.retailer-service-card .service-box-top{padding:17px 18px 7px;gap:10px}
.retailer-service-card .service-icon{flex:none;width:45px;height:45px;border-radius:13px;background:#263f66;color:#bdd0ff;border:1px solid #42618e}
.retailer-service-card .service-mode{margin-left:auto;white-space:nowrap;background:#28415e;color:#c3d8fb;border:1px solid #395677}
.retailer-service-card .service-mode.api{color:#a2e6cb;background:#1b4945;border-color:#29635b}
.retailer-service-card .service-mode.flow{color:#d8bdff;background:#3b325b;border-color:#544579}
.retailer-service-card .service-mode.manual{color:#ffe1a5;background:#50402d;border-color:#66543b}
.retailer-service-card .favorite-form{position:relative;z-index:4;margin:0}
.retailer-service-card .favorite-btn{background:#283b56;border:1px solid #405875;color:#ffcf72;width:35px;height:35px}
.retailer-service-card .favorite-btn:hover{background:#3a4f6e}
.retailer-service-card .service-box-content{padding:10px 18px 15px;flex:1}
.retailer-service-card .service-box-content h3{margin:0 0 9px;color:#f4f7ff;font-size:17px;line-height:1.35;font-weight:800}
.retailer-service-card .service-box-content p{margin:0;color:#aebed3;font-size:12px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.retailer-service-card .service-box-footer{padding:13px 18px 17px;border-top:1px solid #344a68;background:rgba(11,23,40,.35)}
.retailer-service-card .service-charge{margin-bottom:10px}
.retailer-service-card .service-charge span{color:#9eb3ce}
.retailer-service-card .service-charge strong{color:#f8faff;font-size:20px}
.retailer-service-card .service-action{display:flex;align-items:center;justify-content:space-between;text-decoration:none;border-radius:11px;font-weight:750;position:relative;z-index:2}
/* Cards open by direct native link; JavaScript adds card-surface click. */
.retailer-service-card{cursor:pointer}
.retailer-service-card[hidden]{display:none!important}
.retailer-search-empty{margin:14px 0}
@media(max-width:1100px){.retailer-flat-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.retailer-flat-service-grid{grid-template-columns:1fr;gap:12px}.retailer-catalog-heading{align-items:flex-start;flex-direction:column;gap:11px}.retailer-catalog-heading h3{font-size:20px}.retailer-service-total{padding:10px 12px}.retailer-service-card{min-height:0}.retailer-service-card .service-box-content{padding-bottom:13px}}
@media(prefers-reduced-motion:reduce){.retailer-service-card{transition:none}}
