:root{--color-primary:#1281c3;--color-primary-dark:#1268b1;--color-primary-light:#1599d3;--color-bg:#eef3f7;--color-card:#fff;--color-badge-bg:#e3f1fa;--color-text:#111827;--color-text-muted:#6b7280;--color-text-faint:#9aa6b2;--color-border:#dbe6ee;--color-error:#c0392b;--radius:16px;--radius-sm:12px;--gradient-primary:linear-gradient(135deg, #1599d3 0%, #1268b1 100%);--shadow-card:0 8px 28px #1281c31a;--shadow-btn:0 6px 18px #1281c352}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);direction:rtl;margin:0;font-family:Tajawal,Segoe UI,Tahoma,sans-serif}.form-page{max-width:600px;min-height:100vh;margin:0 auto;padding-bottom:60px}.form-hero{background:var(--gradient-primary);text-align:center;border-radius:0 0 28px 28px;padding:36px 20px 28px;position:relative;overflow:hidden}.form-hero:before{content:"";background:#ffffff14;border-radius:50%;width:180px;height:180px;position:absolute;top:-60px;left:-40px}.form-hero:after{content:"";background:#ffffff12;border-radius:50%;width:160px;height:160px;position:absolute;bottom:-80px;right:-30px}.form-logo-badge{width:76px;height:76px;box-shadow:var(--shadow-card);z-index:1;background:#fff;border-radius:20px;justify-content:center;align-items:center;margin:0 auto 14px;display:flex;position:relative}.form-logo-badge img{object-fit:contain;width:44px;height:44px}.form-hero h1{color:#fff;z-index:1;margin:0;font-size:1.3rem;position:relative}.progress-tracker{padding:24px 24px 4px}.progress-tracker-track{align-items:center;display:flex}.progress-dot{border:2px solid var(--color-border);background:#fff;border-radius:50%;flex-shrink:0;width:18px;height:18px;transition:all .2s}.progress-dot.active,.progress-dot.complete{background:var(--color-primary);border-color:#fff;box-shadow:0 0 0 3px #1281c32e}.progress-line{background:var(--color-border);border-radius:3px;flex:1;height:6px;margin:0 -1px}.progress-line.complete{background:var(--color-primary)}.progress-bar-label{text-align:left;color:var(--color-text-faint);margin-top:10px;font-size:.78rem;display:block}.form-step{background:var(--color-card);border-radius:var(--radius);box-shadow:var(--shadow-card);margin:8px 20px 24px;padding:28px 24px}.form-step h2{border-right:4px solid var(--color-primary);color:var(--color-text);align-items:center;gap:8px;margin:0 0 20px;padding-right:14px;font-size:1.15rem;display:flex}.form-step h2 svg{color:var(--color-primary);font-size:1.1rem}.field{margin-bottom:20px}.field label{color:var(--color-text-muted);margin-bottom:8px;font-size:.9rem;font-weight:700;display:block}.field-hint{color:var(--color-text-faint);margin-top:-10px;margin-bottom:16px;font-size:.85rem}input[type=text],input[type=tel],input[type=number],input[type=password],select,textarea{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-text);background:#f4f8fb;padding:13px 16px;font-family:inherit;font-size:1rem;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);background:#fff;outline:none;box-shadow:0 0 0 3px #1281c326}textarea{resize:vertical}.field-with-icon{position:relative}.field-with-icon input{padding-right:52px}.field-icon-badge{background:var(--color-badge-bg);width:30px;height:30px;color:var(--color-primary);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.checkbox-group,.radio-group{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.checkbox-item,.radio-item{cursor:pointer;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:#f4f8fb;align-items:center;gap:10px;padding:12px 14px;font-size:.95rem;transition:border-color .15s,background .15s;display:flex}:is(.checkbox-item:has(input:checked),.radio-item:has(input:checked)){border-color:var(--color-primary);background:var(--color-badge-bg)}.checkbox-item input,.radio-item input{width:18px;height:18px;accent-color:var(--color-primary);flex-shrink:0}.pledge-text{text-align:center;color:var(--color-primary-dark);background:var(--color-badge-bg);border-radius:var(--radius-sm);margin-bottom:20px;padding:18px;font-size:1.05rem;font-weight:700}.pledge-checkbox{justify-content:center;font-weight:700}.form-error{color:var(--color-error);border-radius:var(--radius-sm);background:#fbeaea;border:1px solid #f3c6c1;margin:0 20px 16px;padding:12px 16px;font-size:.9rem}.form-nav{justify-content:space-between;gap:12px;margin:0 20px;display:flex}.btn{border-radius:var(--radius-sm);cursor:pointer;text-align:center;border:none;flex:1;padding:15px;font-size:1rem;font-weight:700;text-decoration:none;transition:transform .1s,opacity .15s;display:inline-block}.btn:active{transform:scale(.98)}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-btn)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-secondary{color:var(--color-text);border:1.5px solid var(--color-border);background:#fff}.success-screen{text-align:center;max-width:480px;margin:0 auto;padding:80px 20px}.success-screen h1{color:var(--color-text);margin-bottom:12px}.success-screen p{color:var(--color-text-muted);margin-bottom:28px}.success-screen .btn{padding:13px 36px;display:inline-block}.admin-page h1{color:var(--color-text);margin-bottom:24px}.admin-table-wrapper{background:var(--color-card);border-radius:var(--radius);box-shadow:var(--shadow-card);overflow-x:auto}table.admin-table{border-collapse:collapse;width:100%;font-size:.9rem}table.admin-table th,table.admin-table td{text-align:right;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:14px 16px}table.admin-table th{color:var(--color-text);background:#f4f8fb;font-weight:700}@media (width<=480px){.form-step{margin:8px 14px 20px;padding:22px 18px}.form-nav,.form-error{margin-left:14px;margin-right:14px}}.custom-select{position:relative}.custom-select-trigger{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-text);cursor:pointer;text-align:center;background:#f4f8fb;justify-content:center;align-items:center;padding:13px 40px 13px 16px;font-family:inherit;font-size:1rem;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.custom-select-trigger:hover{border-color:var(--color-primary-light)}.custom-select-trigger.open{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #1281c326}.custom-select-trigger .placeholder{color:var(--color-text-faint)}.custom-select-caret{color:var(--color-text-faint);flex-shrink:0;transition:transform .2s;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.custom-select-trigger.open .custom-select-caret{color:var(--color-primary);transform:translateY(-50%)rotate(180deg)}.custom-select-menu{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);z-index:20;background:#fff;padding:6px;animation:.15s selectFadeIn;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 12px 30px #1281c329}@keyframes selectFadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.custom-select-option{cursor:pointer;color:var(--color-text);border-radius:9px;justify-content:space-between;align-items:center;padding:11px 14px;font-size:.95rem;transition:background .12s;display:flex}.custom-select-option:hover{background:var(--color-bg)}.custom-select-option.selected{background:var(--color-badge-bg);color:var(--color-primary-dark);font-weight:700}.custom-select-option svg{color:var(--color-primary)}.btn-primary:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 8px 22px #1281c366}.btn-secondary:hover{background:var(--color-bg);border-color:var(--color-primary-light)}.checkbox-item:hover,.radio-item:hover{border-color:var(--color-primary-light)}.progress-dot,.progress-line{transition:background .25s,border-color .25s,box-shadow .25s}input,select,textarea,.custom-select-trigger{transition:border-color .15s,box-shadow .15s,background .15s}textarea{resize:none;min-height:46px;line-height:1.5;overflow:hidden}.field-hint-inline{color:var(--color-primary-dark);margin:8px 0 0;font-weight:600}.pledge-step{text-align:center;padding-top:36px;padding-bottom:32px}.pledge-icon-circle{background:var(--gradient-primary);color:#fff;width:76px;height:76px;box-shadow:var(--shadow-btn);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 18px;font-size:34px;display:flex}.form-step h2.pledge-heading{border:none;justify-content:center;margin-bottom:18px;padding:0;font-size:1.3rem}.pledge-text{font-size:1.15rem;line-height:1.7}.pledge-checkbox{justify-content:center;padding:16px;font-size:1.05rem}.success-page{max-width:520px;margin:0 auto;padding-bottom:60px}.success-hero{background:var(--gradient-primary);text-align:center;color:#fff;border-radius:0 0 28px 28px;padding:56px 24px 40px}.success-icon-circle{color:#fff;background:#ffffff29;border-radius:50%;justify-content:center;align-items:center;width:84px;height:84px;margin:0 auto 20px;font-size:44px;display:flex}.success-hero h1{margin:0 0 10px;font-size:1.4rem}.success-hero p{opacity:.92;margin:0;font-size:.95rem}.success-info-card{background:var(--color-card);border-radius:var(--radius);box-shadow:var(--shadow-card);z-index:2;margin:-20px 20px 24px;padding:8px;position:relative}.success-info-row{text-align:right;align-items:flex-start;gap:14px;padding:16px;display:flex}.success-info-row+.success-info-row{border-top:1px solid var(--color-border)}.success-info-icon{background:var(--color-badge-bg);width:40px;height:40px;color:var(--color-primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:flex}.success-info-title{margin:0 0 4px;font-size:.95rem;font-weight:700}.success-info-desc{color:var(--color-text-muted);margin:0;font-size:.88rem}.success-btn{justify-content:center;align-items:center;gap:8px;width:calc(100% - 40px);margin:0 20px;display:flex}.dob-picker{gap:10px;display:flex}.dob-field{flex:1;min-width:0}.dob-field-month{flex:1.4}.dob-label{color:var(--color-text-faint);margin-bottom:6px;font-size:.78rem;font-weight:600;display:block}.dob-picker .custom-select-trigger{padding:12px 10px;font-size:.92rem}.dob-picker .custom-select-menu{max-height:220px;overflow-y:auto}@media (width<=400px){.dob-picker{gap:6px}.dob-picker .custom-select-trigger{padding:10px 8px;font-size:.84rem}}.admin-page{max-width:720px;margin:0 auto;padding-bottom:60px}.admin-hero{background:var(--gradient-primary);text-align:center;color:#fff;border-radius:0 0 28px 28px;padding:44px 24px 32px}.admin-hero-icon{background:#ffffff29;border-radius:18px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 14px;font-size:32px;display:flex}.admin-hero h1{color:#fff;margin:0 0 6px;font-size:1.4rem}.admin-hero p{opacity:.9;margin:0;font-size:.9rem}.admin-stats{z-index:2;gap:12px;margin:-24px 20px 24px;display:flex;position:relative}.admin-stat-card{background:var(--color-card);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);text-align:center;flex:1;padding:16px 10px}.admin-stat-value{color:var(--color-primary);font-size:1.6rem;font-weight:800;display:block}.admin-stat-label{color:var(--color-text-muted);margin-top:4px;font-size:.75rem;display:block}.admin-status-text{text-align:center;color:var(--color-text-muted);padding:30px 20px}.admin-error{margin:0 20px 16px}.admin-cards{flex-direction:column;gap:16px;padding:0 20px;display:flex}.admin-card{background:var(--color-card);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:20px}.admin-card-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.admin-avatar{background:var(--gradient-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.1rem;font-weight:800;display:flex}.admin-card-heading{flex:1;min-width:0}.admin-card-heading h3{color:var(--color-text);margin:0;font-size:1.02rem}.admin-card-date{color:var(--color-text-faint);font-size:.78rem}.admin-pledge-badge{color:#1a8a4a;white-space:nowrap;background:#e6f6ea;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:6px 10px;font-size:.78rem;font-weight:700;display:flex}.admin-pledge-badge.declined{color:var(--color-error);background:#fbeaea}.admin-card-meta{border-bottom:1px solid var(--color-border);color:var(--color-text-muted);flex-wrap:wrap;gap:10px 18px;margin-bottom:14px;padding-bottom:14px;font-size:.85rem;display:flex}.admin-card-meta span{align-items:center;gap:6px;display:flex}.admin-card-meta svg{color:var(--color-primary)}.admin-card-section{margin-bottom:14px}.admin-card-section:last-child{margin-bottom:0}.admin-card-section-label{color:var(--color-primary-dark);align-items:center;gap:6px;margin-bottom:8px;font-size:.8rem;font-weight:700;display:flex}.admin-card-text{color:var(--color-text);margin:0;font-size:.9rem;line-height:1.6}.admin-quote{background:var(--color-badge-bg);border-radius:10px;padding:12px 14px;font-style:italic}.admin-chip-row{flex-wrap:wrap;gap:8px;display:flex}.admin-chip{background:var(--color-badge-bg);color:var(--color-primary-dark);border-radius:999px;padding:6px 12px;font-size:.82rem;font-weight:600}.admin-chip-other{color:#a8631a;background:#fef3e2}.eligibility-notice{border-radius:var(--radius-sm);color:#8a6d1f;background:#fff8e6;border:1px solid #f0dca3;align-items:flex-start;gap:10px;margin:16px 20px 0;padding:14px 16px;font-size:.85rem;display:flex}.eligibility-notice svg{color:#c99a1f;flex-shrink:0;margin-top:1px;font-size:18px}.eligibility-notice p{margin:0;line-height:1.6}.field-hint-warning{color:var(--color-error);background:#fbeaea;border-radius:8px;align-items:center;gap:6px;margin:10px 0 0;padding:10px 12px;font-size:.85rem;font-weight:600;display:flex}.field-hint-warning svg{flex-shrink:0}.dob-trigger{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-text);text-align:right;cursor:pointer;background:#f4f8fb;padding:13px 52px 13px 16px;font-family:inherit;font-size:1rem;transition:border-color .15s,box-shadow .15s}.dob-trigger:hover{border-color:var(--color-primary-light)}.dob-trigger.placeholder{color:var(--color-text-faint)}.dob-modal-overlay{z-index:100;background:#11182780;justify-content:center;align-items:flex-end;animation:.15s overlayFadeIn;display:flex;position:fixed;inset:0}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.dob-modal{background:#fff;border-radius:20px 20px 0 0;flex-direction:column;width:100%;max-width:480px;max-height:70vh;animation:.2s modalSlideUp;display:flex}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media (width>=560px){.dob-modal-overlay{align-items:center}.dob-modal{border-radius:20px;max-height:60vh}}.dob-modal-header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.dob-modal-header h3{color:var(--color-text);margin:0;font-size:1.05rem}.dob-modal-back,.dob-modal-close{background:var(--color-bg);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .15s;display:flex}.dob-modal-back:hover,.dob-modal-close:hover{background:var(--color-badge-bg);color:var(--color-primary)}.dob-modal-list{padding:10px 14px 20px;overflow-y:auto}.dob-modal-option{text-align:center;width:100%;color:var(--color-text);cursor:pointer;background:0 0;border:none;border-radius:10px;min-height:44px;padding:14px;font-size:1rem;transition:background .12s;display:block}.dob-modal-option:hover{background:var(--color-bg)}.dob-modal-option.selected{background:var(--color-badge-bg);color:var(--color-primary-dark);font-weight:700}.admin-login-page{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.admin-login-card{background:var(--color-card);border-radius:var(--radius);box-shadow:var(--shadow-card);text-align:center;width:100%;max-width:380px;padding:40px 32px}.admin-login-icon{background:var(--gradient-primary);color:#fff;border-radius:18px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 18px;font-size:30px;display:flex}.admin-login-card h1{color:var(--color-text);margin:0 0 6px;font-size:1.2rem}.admin-login-card p{color:var(--color-text-muted);margin:0 0 24px;font-size:.88rem}.admin-login-form{text-align:right}.admin-login-form .btn{width:100%;margin-top:16px}.admin-login-error{margin:12px 0 0}.admin-checking{background:var(--color-bg);min-height:100vh}
