: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 navigation + Home */
.main-nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;padding:12px;margin:12px auto;max-width:1200px}
.main-nav a,.main-nav button{display:inline-block;text-decoration:none;border:1px solid #c9a24d;border-radius:10px;padding:9px 12px;background:#fffaf0;color:#5d420c;font-weight:700;cursor:pointer}
.main-nav a:hover,.main-nav button:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(0,0,0,.08)}
.home-page{max-width:1200px;margin:0 auto}.hero-card{display:grid;grid-template-columns:180px 1fr;gap:30px;align-items:center;padding:35px;border-radius:20px;background:linear-gradient(135deg,#fffaf0,#f6ead0);border:1px solid #dfc27c;box-shadow:0 8px 28px rgba(80,55,10,.08)}
.hero-logo img{width:150px;height:150px;object-fit:contain;display:block;margin:auto}.eyebrow{font-weight:800;color:#9b6b08}.hero-content h2{font-size:clamp(28px,4vw,46px);margin:8px 0 12px}.hero-content p{font-size:17px;line-height:1.8;max-width:760px}.home-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.primary-btn,.secondary-btn{padding:12px 18px;border-radius:10px;text-decoration:none;font-weight:800}.primary-btn{background:#9b6b08;color:#fff}.secondary-btn{background:#fff;border:1px solid #c9a24d;color:#6b4b0d}.home-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:22px 0}.home-tile{display:flex;flex-direction:column;gap:7px;text-decoration:none;color:inherit;background:#fff;border:1px solid #e4d5b5;border-radius:15px;padding:20px;min-height:90px;box-shadow:0 3px 12px rgba(0,0,0,.05)}.home-tile b{font-size:18px}.home-tile span{color:#666}.simple-page{max-width:900px;margin:20px auto;padding:28px;background:#fff;border:1px solid #e4d5b5;border-radius:16px;line-height:1.9}.page{display:none}.page.active{display:block}
@media(max-width:760px){.hero-card{grid-template-columns:1fr;text-align:center;padding:22px}.home-grid{grid-template-columns:1fr}.main-nav{justify-content:flex-start}.main-nav a,.main-nav button{font-size:13px;padding:8px 9px}}

/* Home page: compact two-column dashboard matching the supplied design */
body.home-view{background:#111;color:#111}
body.home-view .main-nav,body.home-view .site-footer{display:none}
body.home-view .wrap{max-width:1080px;padding:0 28px 28px;background:#111}
body.home-view .home-page{display:block!important;background:#111;border:0;box-shadow:none;padding:12px 0 28px;max-width:none;border-radius:0}
.home-brand{display:flex;align-items:center;justify-content:center;gap:28px;text-align:left;background:#111;color:#fff;border-bottom:5px solid #e0b13d;padding:28px 10px 24px}
.home-logo{width:150px;height:150px;object-fit:contain;border-radius:50%;background:#fff;padding:3px;border:2px solid #e0b13d}
.home-brand h2{margin:0;color:#ffd83d;font-size:clamp(30px,4vw,54px)}
.home-brand h3{margin:8px 0;color:#fff2d0;font-size:clamp(20px,2.5vw,34px)}
.home-brand p{margin:8px 0 0;color:#fff5da;font-size:clamp(15px,1.8vw,24px)}
.home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:28px 4px 0}
.home-tile{min-height:96px;display:flex;align-items:center;justify-content:center;gap:14px;text-align:center;text-decoration:none;color:#17120a;background:linear-gradient(135deg,#e9b72d,#ffd83e);border-radius:24px;border:1px solid #ffe889;box-shadow:0 4px 0 #8f6811,0 7px 15px #0006;font-size:clamp(22px,2.6vw,34px);font-weight:800;transition:.15s}
.home-tile b{font-weight:900}.home-tile:hover{transform:translateY(-2px);filter:brightness(1.04)}
.home-grid .home-tile:last-child{grid-column:1/-1}
.month-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;margin:12px 0 16px}
.month-check{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:6px;padding:10px;border:1px solid #d8c28d;border-radius:10px;background:#fffaf0;font-weight:700}
.month-check input{width:auto}.month-check small{font-size:11px}.month-check.paid{background:#e9f8ee;border-color:#72b88a}.month-check.due{background:#fff4cf;border-color:#e0b13d}.month-check.future{opacity:.65}.month-check.not-started{opacity:.45}
.event-profile{border-left:5px solid #9b6b08}.account-feature-grid button{min-height:52px}
@media(max-width:700px){.home-brand{gap:12px;padding:18px 5px}.home-logo{width:82px;height:82px}.home-grid{gap:10px;padding-top:16px}.home-tile{min-height:72px;border-radius:16px;font-size:18px}.month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body.home-view .wrap{padding:0 10px 18px}}
