@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{font-family:"DM Sans",system-ui,sans-serif;background:#f4f7fb;color:#163452}body{background:#f4f7fb;color:#163452}header{padding:16px 26px;background:#082f56;min-height:80px;display:flex;justify-content:space-between}header b{font:800 23px Manrope;letter-spacing:-.04em}header .header-brand{display:flex;align-items:center;gap:16px}header .header-brand img{width:120px;height:54px;object-fit:contain;background:#fff;border-radius:7px;padding:5px}main{max-width:1440px;margin:29px auto;padding:0 25px}main h1{font:800 30px Manrope;letter-spacing:-.035em;margin:2px 0 12px}main h2{font:700 20px Manrope}.panel{border:1px solid #e0e8f1;box-shadow:0 9px 28px #0a2e5010;border-radius:15px;padding:26px}.tabs{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid #dbe5ed}.tabs button{border-radius:8px;padding:11px 14px;font-size:12px;text-transform:capitalize;background:#fff;box-shadow:0 2px 8px #10204006}.tabs button.active{background:#0862ad;border-color:#0862ad;color:#fff}.stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;margin:20px 0 26px}.stat{background:#fff;border:1px solid #e0eaf2;border-radius:13px;padding:20px;box-shadow:0 7px 20px #10204008}.stat span{display:block;color:#72849a;font-size:11px;font-weight:700}.stat strong{display:block;color:#103e75;font:800 27px Manrope;margin:8px 0 0}.stats-section{display:grid;grid-template-columns:1fr 1fr;gap:20px}.metric-line{margin:15px 0}.metric-line .metric-title{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#47617a;font-weight:700}.metric-track{height:12px;background:#ebf0f6;border-radius:10px;margin-top:8px;overflow:hidden}.metric-bar{height:100%;background:linear-gradient(90deg,#1e88d4,#ff7136);border-radius:10px;min-width:3px}.tiny{color:#71849a;font-size:12px}.status-pill{display:inline-flex;border-radius:20px;background:#eaf3fc;color:#136198;padding:4px 9px;font-weight:800;font-size:11px}.action-group{display:flex;gap:5px;flex-wrap:wrap}.action-group button{font-size:11px;padding:7px 9px}button{background:#145f9d}button.alt{background:#eef4f9;color:#14517d}button.danger{background:#b63b48}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.table{max-height:630px;overflow:auto}table th{position:sticky;top:0;background:#f4f8fc;z-index:1;color:#526a81}table td{font-size:12px}#message{border-radius:9px}#signin .grid{grid-template-columns:repeat(2,1fr)}.role-info{background:#ecf6ff;border-left:3px solid #1680c1;color:#215577;padding:14px;border-radius:7px;margin-bottom:18px}.action-shortcuts{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.action-shortcuts button{background:#ecf4fa;color:#175482}@media(max-width:1080px){.stat-grid{grid-template-columns:repeat(3,1fr)}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.stat-grid{grid-template-columns:repeat(2,1fr)}.stats-section,.grid,#signin .grid{grid-template-columns:1fr}main{padding:0 15px}.panel{padding:17px}header{padding:14px}.tabs button{padding:8px 10px}}

/* Production-style administration: searchable records and accessible action forms */
.admin-filters{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:16px 0 21px}
.admin-filters label{min-width:190px;flex:1;max-width:355px;font-size:12px;margin:0}
.admin-filters input,.admin-filters select{margin-top:6px;background:#f9fcff}
.admin-filters #filteredCount{margin-bottom:11px;white-space:nowrap}
tr[hidden]{display:none!important}
.admin-dialog{width:min(520px,calc(100vw - 30px));border:1px solid #dbe6f0;border-radius:18px;background:#fff;padding:29px;box-shadow:0 22px 75px #09274c30;color:#173554}
.admin-dialog::backdrop{background:#071c36a8;backdrop-filter:blur(3px)}
.admin-dialog h2{margin:0 0 20px;font-size:22px}
.admin-dialog label{display:grid;gap:8px;font-size:12px;margin-bottom:16px}
.admin-dialog input,.admin-dialog select{background:#fff;min-height:43px}
.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.dialog-actions button{white-space:nowrap}
@media(max-width:650px){.admin-filters label{min-width:100%;max-width:none}.admin-dialog{padding:19px}}

/* Real order detail dialog: readable totals and scroll-safe on mobile */
.order-detail-dialog{width:min(780px,calc(100vw - 28px));max-height:min(85vh,880px);overflow:auto}
.order-detail-dialog h2{margin:0}
.order-detail-dialog .table{max-height:300px;overflow:auto;margin:16px 0}
.order-breakdown{border-top:1px solid #d7e5f0;padding:16px 0;display:grid;gap:8px}
.order-breakdown>div{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:13px}
.order-breakdown .total{border-top:1px solid #d7e5f0;padding-top:12px;font-size:17px;color:#0b528d}
@media(max-width:650px){.order-detail-dialog{padding:16px}.order-detail-dialog .table{max-width:100%}}

/* Scheme member KYC: only permitted profile data and masked PAN are displayed */
.member-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:20px 0}
.member-detail-grid>div{padding:12px 14px;background:#f3f7fb;border:1px solid #dce7f0;border-radius:9px;min-width:0}
.member-detail-grid small{display:block;color:#607b94;font-size:11px;margin-bottom:5px}
.member-detail-grid strong{display:block;overflow-wrap:anywhere;font-size:13px;color:#173b5c}
#festivalMemberDialog .task-delivery{border-left:3px solid #ec813c;background:#fff8f1;padding:14px;border-radius:7px;margin:14px 0;overflow-wrap:anywhere}
#festivalMemberDialog .task-delivery p{white-space:pre-wrap;margin-bottom:0;font-size:13px}
@media(max-width:600px){.member-detail-grid{grid-template-columns:1fr}}
