:root{--green:#07518d;--green-2:#063863;--accent:#d8ab00;--gold:#ffd21c;--ink:#152c43;--muted:#65788a;--line:#dce6ef;--surface:#fff;--bg:#f4f7fb;--radius:18px;--shadow:0 10px 40px rgba(13,44,28,.06)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Tahoma,'Noto Kufi Arabic',Arial,sans-serif;line-height:1.75}
button,input,select{font:inherit}
a{color:inherit;text-decoration:none}
.container{width:min(1100px,calc(100% - 38px));margin-inline:auto}
.site-head{background:var(--green-2);color:white}
.head-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 0}
.brand{display:flex;align-items:center;gap:13px}
.brand-mark{width:52px;height:52px;border:1px solid #ffd21c88;color:var(--gold);background:#ffffff12;display:grid;place-items:center;border-radius:16px;font-size:30px;line-height:1}
.brand h1{margin:0;font-size:18px;line-height:1.45}
.brand p{margin:0;color:#d5e7f7;font-size:12px}
.head-tag{border:1px solid #ffffff45;padding:7px 15px;border-radius:100px;color:#f4f9ff;font-size:13px}
.hero{background:linear-gradient(132deg,#07518d,#032f58);color:white;padding:65px 0 75px;position:relative;overflow:hidden}

.hero-inner{position:relative;max-width:790px;margin:auto;text-align:center}
.eyebrow{color:var(--gold);font-weight:700;letter-spacing:.7px;font-size:14px}
.hero h2{font-size:clamp(28px,4.1vw,48px);line-height:1.5;margin:10px 0 11px}
.hero p{font-size:16px;color:#dceafa;max-width:660px;margin:0 auto;line-height:2.1}
.gold-line{width:70px;height:4px;border-radius:10px;background:var(--gold);margin:26px auto 0}
.content{padding:48px 0 70px}
.section-top{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:23px;flex-wrap:wrap}
.section-top h3{font-size:26px;margin:0}
.section-top p{color:var(--muted);font-size:13px;margin:3px 0 0}
.counter{color:var(--green);background:#eaf2fb;border:1px solid #d7e6f3;border-radius:99px;padding:7px 14px;font-size:12px}
.group{margin:24px 0 36px}
.group-head{display:flex;align-items:center;gap:12px;margin-bottom:15px}
.group-head strong{font-size:18px;color:var(--green)}
.group-head:after{content:'';height:1px;background:#d7e3ef;flex:1}
.supporter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:16px}
.supporter-card{background:var(--surface);border-radius:var(--radius);border:1px solid #dbe5ef;box-shadow:var(--shadow);padding:26px 14px 22px;text-align:center;min-height:235px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;transition:transform .2s,border-color .2s}
.supporter-card:hover{transform:translateY(-3px);border-color:var(--accent)}
.logo-wrap{height:100px;width:180px;display:grid;place-items:center}
.logo-wrap img{max-height:100%;max-width:100%;object-fit:contain}
.logo-placeholder{width:86px;height:86px;border-radius:18px;background:#edf4fb;color:var(--green);display:grid;place-items:center;font-size:34px}
.supporter-name{font-size:16px;font-weight:700;line-height:1.7;overflow-wrap:anywhere}
.supporter-role{font-size:11px;color:#9a792e;background:#fff8e8;padding:2px 11px;border-radius:99px}
.website{font-size:12px;color:var(--green);font-weight:700;margin-top:4px}
.empty{background:white;border:1px dashed #b9cde0;padding:60px 24px;text-align:center;border-radius:var(--radius);color:var(--muted)}
.empty .symbol{font-size:48px;color:var(--accent)}
.empty h3{margin:4px 0;color:var(--green);font-size:21px}
.empty p{margin:4px auto;max-width:450px;font-size:14px}
.footer{background:#032b4c;color:#d9e8f5;padding:25px 0;text-align:center;font-size:12px}
.footer strong{color:var(--gold)}
.hidden{display:none!important}
@media(max-width:610px){.head-row{padding:12px 0}.head-tag{display:none}.brand h1{font-size:16px}.brand-mark{width:45px;height:45px}.hero{padding:45px 0 54px}.hero p{font-size:14px}.content{padding:30px 0 48px}.section-top h3{font-size:22px}.supporter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.supporter-card{padding:14px 7px;min-height:185px}.logo-wrap{width:100%;height:75px}.logo-placeholder{width:64px;height:64px}.supporter-name{font-size:13px}.group-head strong{font-size:15px}}
/* Admin */
.admin-body{background:#f0f5fa}
.admin-bar{background:var(--green-2);color:#fff}
.admin-bar-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0}
.admin-bar strong{font-size:19px}
.admin-bar small{color:#d9e9f7}
.admin-wrap{padding:35px 0 60px}
.panel{background:white;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--radius);padding:27px;margin-bottom:18px}
.login-panel{max-width:460px;margin:55px auto}
.panel h2{margin:0 0 6px;font-size:23px;color:var(--green)}
.panel-desc{font-size:13px;color:var(--muted);margin:0 0 18px}
label.field{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:13px;margin-bottom:14px}
.field input,.field select,.search-input{width:100%;min-width:0;outline:none;border-radius:10px;border:1px solid #c5d4e3;background:#fff;padding:11px 12px;font-size:14px;color:#1c3850}
.field input:focus,.field select:focus,.search-input:focus{border-color:var(--green);box-shadow:0 0 0 3px #07518d18}
.field small{color:var(--muted);font-size:11px;font-weight:400}
.btn{border:0;border-radius:10px;padding:11px 17px;font-weight:700;cursor:pointer;background:var(--green);color:white;display:inline-flex;align-items:center;justify-content:center;gap:7px}
.btn:hover{filter:brightness(1.08)}.btn:disabled{opacity:.6;cursor:wait}
.btn.light{background:#eaf2fb;color:var(--green)}
.btn.danger{background:#fff0ed;color:#ac3828}
.btn.warn{background:#fff8e6;color:#886012}
.btn.small{padding:7px 11px;font-size:12px}
.btn.outline{background:transparent;border:1px solid #ffffff75}
.full{width:100%}
.alert{padding:11px 13px;border-radius:10px;font-size:13px;margin-bottom:16px;background:#fceceb;color:#8c291b}
.alert.ok{background:#e7f5eb;color:#1e6340}
.admin-grid{display:grid;grid-template-columns:minmax(270px,400px) minmax(0,1fr);align-items:start;gap:20px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.check-field{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700;margin:4px 0 22px}
.check-field input{accent-color:var(--green);width:18px;height:18px}
.form-actions{display:flex;flex-wrap:wrap;gap:9px}
.preview{display:flex;align-items:center;gap:12px;background:#f2f6fb;border:1px dashed #adc4db;border-radius:12px;padding:10px;margin:-2px 0 18px;min-height:80px}
.preview img{width:90px;height:70px;object-fit:contain;background:#fff;border-radius:8px;padding:5px}
.preview p{color:var(--muted);font-size:11px;margin:0}
.stats{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:16px}
.stats span{font-size:12px;padding:6px 11px;border-radius:99px;background:#eaf2fb;color:var(--green)}
.toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px}
.toolbar h2{margin:0;font-size:20px}
.table-wrap{overflow-x:auto}
.admin-table{border-collapse:collapse;width:100%;font-size:13px}
.admin-table th{background:#f2f6fb;text-align:right;color:var(--green);font-size:12px}
.admin-table td,.admin-table th{border-bottom:1px solid #e3eaf2;padding:12px 9px;vertical-align:middle}
.admin-table tr:last-child td{border-bottom:0}
.admin-company{display:flex;align-items:center;gap:9px;min-width:140px}
.admin-company img{width:45px;height:42px;object-fit:contain;border:1px solid #dce5ef;border-radius:7px;padding:4px}
.admin-company .mini-placeholder{width:45px;height:42px;background:#edf3fa;display:grid;place-items:center;border-radius:7px;font-size:19px}
.admin-company strong{font-size:12px;max-width:200px;overflow-wrap:anywhere}
.actions{display:flex;flex-wrap:wrap;gap:5px}
.chip{white-space:nowrap;padding:3px 9px;border-radius:20px;background:#e5f2e9;color:#186138;font-size:11px}
.chip.off{background:#f4eded;color:#9d544d}
.admin-tips{font-size:12px;color:var(--muted);line-height:2;margin-top:14px}
@media(max-width:940px){.admin-grid{grid-template-columns:1fr}}
@media(max-width:500px){.panel{padding:17px}.admin-bar strong{font-size:16px}.form-grid{grid-template-columns:1fr}.admin-wrap{padding:20px 0}.container{width:min(1100px,calc(100% - 24px))}}

.qr-info{margin-top:21px}
.qr-url-wrap{display:flex;gap:10px;align-items:center}
.qr-url-wrap input{min-width:0;flex:1;background:#f6f8f5;border:1px solid #d7e1d8;border-radius:10px;padding:12px;font-size:14px;direction:ltr;text-align:left}
@media(max-width:600px){.qr-url-wrap{flex-direction:column;align-items:stretch}}

.account-label{color:var(--green);font-size:13px;margin:4px 0 18px;font-weight:700}
.manager-rows{display:grid;gap:10px}.manager-card{padding:13px;border:1px solid var(--line);border-radius:12px;background:#fafcf9}
.manager-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:11px}
.manager-header small{display:block;color:var(--muted);direction:ltr;text-align:right}
.activity-list{max-height:300px;overflow-y:auto;border-top:1px solid var(--line)}
.activity-item{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:7px 0;border-bottom:1px solid var(--line);font-size:12px}
.activity-item span{color:var(--muted)}

.password-reset-form{padding:12px 0 0;border-top:1px solid var(--line);margin-top:12px}
.password-reset-form .btn{margin:0 0 0 6px}

.brand-logo{width:74px;height:94px;object-fit:contain;flex-shrink:0}
.site-head{border-bottom:1px solid #ffffff20}.head-row{padding:12px 0}.brand{gap:17px}.brand h1{font-size:23px}.head-tag{color:var(--gold);border-color:#ffd21c60}
.admin-brand{display:flex;align-items:center;gap:13px}.admin-logo{width:54px;height:68px;object-fit:contain;flex-shrink:0}
.hero{background:linear-gradient(125deg,#07518d,#032f58)}.gold-line{background:#ffd21c}.footer{border-top:3px solid #ffd21c}
@media(max-width:610px){.brand-logo{width:62px;height:79px}.brand h1{font-size:19px}.brand{gap:13px}.admin-bar-inner{align-items:flex-start;flex-wrap:wrap}.admin-bar strong{font-size:15px}.admin-logo{width:42px;height:54px}}

/* Keep each supporter name in its own row below the bounded logo. */
.supporter-card{justify-content:flex-start;gap:14px;padding:24px 16px;min-width:0}
.logo-wrap{display:flex;align-items:center;justify-content:center;width:100%;height:130px;min-height:130px;flex:0 0 130px;overflow:hidden}
.logo-wrap img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;min-height:0;min-width:0;object-fit:contain}
.supporter-name{position:static;display:block;width:100%;flex:none;margin:0;font-size:19px;font-weight:700;line-height:1.8;overflow-wrap:anywhere;color:var(--ink)}
.supporter-role,.website{flex:none}
@media(max-width:610px){.supporter-card{padding:18px 10px;gap:12px}.logo-wrap{height:110px;min-height:110px;flex-basis:110px}.supporter-name{font-size:16px;line-height:1.8}}

.public-qr{display:block;max-width:100%;height:auto;margin:16px 0;background:white}
