:root{--primary:#e0b13d;--primary-dark:#9b6b08;--accent:#ffd73a;--ink:#16120a;--cream:#fff9e8;--paper:#fffdf7;--muted:#6b6251;--danger:#b42318;--success:#147a3d}
*{box-sizing:border-box}body{margin:0;font-family:Arial,'Noto Sans Bengali',sans-serif;background:linear-gradient(180deg,#fff9e8,#f5edd8);color:var(--ink)}
header{display:flex;align-items:center;gap:16px;padding:18px max(20px,calc((100% - 1180px)/2));background:linear-gradient(135deg,#0c0c0b,#282012);color:#fff;border-bottom:5px solid var(--primary)}.logo{width:78px;height:78px;object-fit:contain;border-radius:50%;background:#fff;padding:3px;border:2px solid var(--primary)}h1{margin:0;color:var(--accent)}header h3,header p{margin:4px 0;color:#f6edcf}
nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;padding:12px;background:#17130d;border-bottom:1px solid #4b3a18}button{border:0;border-radius:9px;padding:11px 15px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#201600;font-weight:700;cursor:pointer;box-shadow:0 2px 5px #0002}button:hover{filter:brightness(1.05);transform:translateY(-1px)}button.danger,.danger{background:#b42318;color:#fff}.logout{background:#5b4630;color:#fff}.wrap{max-width:1180px;margin:auto;padding:22px}.page{display:none;background:var(--paper);border:1px solid #ead9ad;border-radius:16px;padding:22px;box-shadow:0 8px 25px #2c210b14}.page.active{display:block}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:15px}.full{grid-column:1/-1}label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#3b2c0d}input,textarea,select{width:100%;padding:11px;border:1px solid #cdbb88;border-radius:8px;background:#fffdf7;font:inherit;color:var(--ink)}textarea{min-height:88px}.preview,.profile-photo{max-width:130px;max-height:150px;object-fit:cover;border:2px solid var(--primary);border-radius:10px;margin-top:8px}.login-box{max-width:650px;margin:auto}.searchbar{display:flex;gap:10px;flex-wrap:wrap}.searchbar input,.searchbar select{flex:1}.card{margin:12px 0;padding:16px;background:#fffdf7;border-left:5px solid var(--primary);border-radius:10px;box-shadow:0 3px 12px #0000000b}.stat{display:inline-block;margin:5px;padding:13px 18px;border-radius:10px;background:#1a160e;color:#fff;border-bottom:3px solid var(--primary)}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse}th{background:#20190d;color:#ffe89a}th,td{padding:10px;border:1px solid #dec98f;text-align:left}.success{padding:12px;border-radius:8px;background:#e8f7ed;color:#126b35;margin-top:10px}.hint,small{color:var(--muted)}.position-add{display:flex;gap:10px;flex-wrap:wrap}.position-add input{flex:1}@media(max-width:650px){header{padding:14px;align-items:flex-start}.logo{width:58px;height:58px}header h1{font-size:22px}.wrap{padding:12px}.page{padding:15px}nav button{flex:1 1 44%}}
@media print{nav,.no-print{display:none!important}.wrap{padding:0}.page{border:0;box-shadow:none}}
/* Admin CRUD action controls */
td button{margin:2px}.danger{background:#b42318!important;color:#fff!important}
@media(max-width:700px){table{font-size:12px}td button{display:block;width:100%;margin:3px 0}}

/* Print-ready approved member ID card */
.idcard{max-width:760px;margin:18px auto;background:linear-gradient(135deg,#fffdf7,#f6e8ba);border:3px solid var(--primary-dark);border-radius:18px;overflow:hidden;box-shadow:0 8px 24px #0003}.idcard-brand{display:flex;align-items:center;gap:12px;padding:12px 18px;background:linear-gradient(135deg,#17130d,#3a2b10);color:#fff;border-bottom:4px solid var(--primary)}.idlogo{width:58px;height:58px;object-fit:contain;background:#fff;border-radius:50%;padding:3px}.orgname{font-size:24px;font-weight:800;color:#ffe89a}.established{font-weight:700;color:#fff4ca}.idcard-main{display:grid;grid-template-columns:150px 1fr 120px;gap:16px;align-items:center;padding:18px}.photo-wrap{display:flex;justify-content:center}.idphoto,.photo-placeholder{width:125px;height:150px;object-fit:cover;border:3px solid var(--primary-dark);border-radius:10px;background:#fff}.photo-placeholder{display:grid;place-items:center;color:#806b3a;font-weight:bold}.idinfo h2{margin:0 0 10px;color:#3b2c0d;font-size:25px}.idinfo p{margin:6px 0}.qr-side{text-align:center;border-left:1px dashed #a98938;padding-left:12px}.qr-side small{display:block;margin-top:5px}@media(max-width:620px){.idcard-main{grid-template-columns:1fr;text-align:center}.qr-side{border-left:0;border-top:1px dashed #a98938;padding:12px 0 0}.orgname{font-size:19px}.idinfo{text-align:left}}@media print{body{background:#fff}.print-idcard{width:85.6mm;min-height:54mm;max-width:none;border-radius:3mm;box-shadow:none;margin:0;page-break-inside:avoid}.print-idcard .idcard-brand{padding:3mm 4mm;border-bottom-width:1.2mm}.print-idcard .idlogo{width:13mm;height:13mm}.print-idcard .orgname{font-size:14pt}.print-idcard .established{font-size:8pt}.print-idcard .idcard-main{grid-template-columns:27mm 1fr 25mm;gap:3mm;padding:3.5mm}.print-idcard .idphoto,.print-idcard .photo-placeholder{width:24mm;height:29mm;border-width:.7mm;border-radius:1.5mm}.print-idcard .idinfo h2{font-size:13pt;margin-bottom:2mm}.print-idcard .idinfo p{font-size:8pt;margin:1.1mm 0}.print-idcard .qr-side{padding-left:2mm}.print-idcard .qr-side small{font-size:6pt}}


/* Site Footer */
.site-footer{margin-top:40px;padding:22px 16px;text-align:center;background:linear-gradient(135deg,#123c2d,#1f5a43);color:#fff;border-top:3px solid #d4af37;font-size:14px;line-height:1.9;box-shadow:0 -4px 16px rgba(0,0,0,.12)}
.site-footer span{font-weight:700;color:#f6d878}.site-footer a{color:#ffd95a;font-weight:700;text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-role{font-weight:700;color:#fff;margin-top:3px}
@media print{.site-footer{display:none}}

/* Accounting Module */
.account-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}.account-tab{padding-top:4px}.money-receipt{width:520px;max-width:100%;margin:16px auto;padding:18px;background:#fffdf7;border:2px solid #9b6b08;border-radius:12px;font-family:Arial,'Noto Sans Bengali',sans-serif;color:#16120a}.receipt-head{display:flex;align-items:center;gap:12px;border-bottom:2px solid #e0b13d;padding-bottom:10px}.receipt-head img{width:58px;height:58px;object-fit:contain;border-radius:50%;background:#fff;border:1px solid #e0b13d}.receipt-head h2{margin:0 0 4px;color:#7a5305}.receipt-no{padding:10px 0;text-align:right}.money-receipt table{background:#fff}.money-receipt td:first-child{font-weight:700;width:38%}.receipt-footer{margin-top:20px;text-align:right;font-size:13px}
@media print{.money-receipt{box-shadow:none!important;margin:0 auto}.account-tabs,#feeSettingsBox{display:none!important}}
.accounting-stats,.fee-dashboard-stats,.report-cards,.account-feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:12px 0}.accounting-stats .stat,.fee-dashboard-stats>div,.report-cards>div{background:#17130b;color:#fff;padding:12px;border-radius:10px;border:1px solid #c99a22;text-align:center}.account-feature-grid button{font-weight:700;padding:12px}.fee-member-card{border-left:4px solid #c99a22}.fee-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:10px 0}.fee-stats>div{background:#fff6d8;padding:10px;border-radius:8px;text-align:center}.finance-row{border:1px solid #ddd;padding:12px;border-radius:10px;margin:8px 0;background:#fffdf7}.muted{opacity:.75}.account-tab table{min-width:720px}.account-tab .tablewrap{overflow:auto}

.member-print-area{display:none}
.a4-list-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:15px}.a4-download-actions{display:flex;gap:8px;flex-wrap:wrap}
.a4-preview-stack{display:flex;flex-direction:column;gap:18px;background:#eee;padding:12px;border-radius:12px}.a4-member-sheet{box-sizing:border-box;width:100%;max-width:1120px;min-height:760px;margin:0 auto;background:#fff;color:#111;padding:28px 32px;box-shadow:0 3px 14px #0002;font-family:Arial,"Noto Sans Bengali",sans-serif}.print-header{display:flex;align-items:center;justify-content:center;gap:12px;text-align:center;margin-bottom:10px;border-bottom:2px solid #222;padding-bottom:8px;position:relative}.print-logo{width:52px;height:52px;object-fit:contain}.print-header h1{font-size:22px;margin:0 0 3px;color:#8b6500}.print-header div{font-size:13px}.print-date{position:absolute;right:0;top:4px;font-size:11px!important;color:#444}.member-print-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px}.member-print-table th,.member-print-table td{border:1px solid #333;padding:6px 5px;vertical-align:middle;overflow-wrap:anywhere}.member-print-table th{text-align:center;background:#f4e8bd;color:#111}.member-print-table th:nth-child(1){width:7%}.member-print-table th:nth-child(2){width:20%}.member-print-table th:nth-child(3){width:20%}.member-print-table th:nth-child(4){width:18%}.member-print-table th:nth-child(5){width:10%}.member-print-table th:nth-child(6){width:25%}.member-print-table .serial,.member-print-table .blood{text-align:center}.member-print-table .name{font-weight:600}.member-print-table .phone,.member-print-table .member-id{white-space:nowrap;overflow-wrap:normal}.member-print-table tr{break-inside:avoid;page-break-inside:avoid}.print-footer{display:flex;justify-content:space-between;margin-top:9px;font-size:11px;color:#333}
@media(max-width:700px){.a4-list-toolbar{align-items:stretch}.a4-download-actions{width:100%}.a4-download-actions button{flex:1}.a4-preview-stack{padding:6px;overflow-x:auto}.a4-member-sheet{min-width:760px;padding:20px}.member-print-table{font-size:10px}}
@media print{
 @page{size:A4 landscape;margin:10mm}
 body.printing-members *{visibility:hidden!important}
 body.printing-members #memberPrintArea,body.printing-members #memberPrintArea *{visibility:visible!important}
 body.printing-members #memberPrintArea{display:block!important;position:absolute;left:0;top:0;width:100%;background:#fff}
 body.printing-members .wrap{padding:0!important}
 .a4-member-sheet{width:100%;max-width:none;min-height:0;box-shadow:none;padding:0;font-family:Arial,"Noto Sans Bengali",sans-serif}
 .print-header{margin-bottom:10px}.print-logo{width:48px;height:48px}.print-header h1{font-size:20px}.print-header div{font-size:12px}.print-date{font-size:10px!important}
 .member-print-table{font-size:10px}.member-print-table th,.member-print-table td{padding:5px 4px}.member-print-table .phone,.member-print-table .member-id{white-space:nowrap}
 .print-footer{font-size:11px}
}

/* Print isolation: only the selected print target is printed */
@media print{
 body.printing-idcard *{visibility:hidden!important}
 body.printing-idcard .print-idcard,
 body.printing-idcard .print-idcard *{visibility:visible!important}
 body.printing-idcard .print-idcard{position:absolute!important;left:0;top:0;margin:0!important}
}

/* Multi-page / clean URL home layout */
.main-nav a{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;padding:11px 15px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#201600;font-weight:700;cursor:pointer;box-shadow:0 2px 5px #0002;text-decoration:none}.main-nav a:hover{filter:brightness(1.05);transform:translateY(-1px)}
.hero-home{display:grid;grid-template-columns:1fr 260px;gap:28px;align-items:center;padding:34px;border-radius:20px;background:linear-gradient(135deg,#fff7d9,#f2dfaa);border:1px solid #e1c77e;overflow:hidden}.hero-copy h2{font-size:clamp(28px,4vw,46px);line-height:1.18;margin:12px 0;color:#3a290b}.hero-copy p{font-size:17px;line-height:1.8;color:#5b4a29;max-width:720px}.hero-badge{display:inline-block;padding:7px 13px;border-radius:999px;background:#20190d;color:#ffe89a;font-weight:800}.hero-logo{display:grid;place-items:center}.hero-logo img{width:220px;height:220px;object-fit:contain;border-radius:50%;background:#fff;padding:10px;border:5px solid var(--primary);box-shadow:0 10px 30px #6d500522}.home-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.home-actions a{padding:12px 17px;border-radius:10px;background:#17130d;color:#ffe89a;text-decoration:none;font-weight:800}.home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-top:20px}.home-card{display:flex;flex-direction:column;gap:8px;padding:20px;background:#fff;border:1px solid #e4d2a2;border-radius:14px;text-decoration:none;color:var(--ink);box-shadow:0 5px 18px #0000000a;transition:.2s}.home-card:hover{transform:translateY(-3px);border-color:var(--primary)}.home-card b{font-size:18px;color:#6d4b05}.home-card span{line-height:1.6;color:var(--muted)}.home-notice{margin-top:20px;padding:20px;text-align:center;border-radius:14px;background:linear-gradient(135deg,#173d30,#286047);color:#fff}.home-notice h3{margin:0 0 5px;color:#f6d878}.home-notice p{margin:0}.about-box{max-width:850px;margin:auto;padding:24px;border-radius:16px;background:#fff9e8;border:1px solid #e1c77e;line-height:1.9}.about-box h3{color:#795207}
@media(max-width:700px){.hero-home{grid-template-columns:1fr;padding:22px}.hero-logo{order:-1}.hero-logo img{width:150px;height:150px}.main-nav a,.main-nav button{flex:1 1 44%}}
