.page-header{padding:44px 0 20px;background:#fff;text-align:center}.page-header h1{font-size:2.2rem;font-weight:700;margin:0 0 8px}.page-header .accent{color:#ff6b35}.page-header p{color:#5a6e85;font-size:1.05rem;max-width:560px;margin:0 auto 20px}.header-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.btn-register{display:inline-flex;align-items:center;gap:8px;background:#ff6b35;color:#fff;text-decoration:none;padding:14px 28px;border-radius:40px;font-weight:700;font-size:.95rem;transition:all .2s ease}.btn-register:hover{background:#e85a28;transform:translateY(-2px)}.btn-request{display:inline-flex;align-items:center;gap:8px;background:#fff;color:#d14343;border:1.5px solid #D14343;padding:14px 28px;border-radius:40px;font-weight:700;font-size:.95rem;cursor:pointer;transition:all .2s ease}.btn-request:hover{background:#d14343;color:#fff;transform:translateY(-2px)}.group-section{padding:18px 0 60px;background:#f8fafc}.group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:18px;max-width:900px;margin:0 auto}.group-tile{display:flex;flex-direction:column;align-items:center;gap:10px;background:#fff;border:1px solid #EEF3F9;border-radius:20px;padding:28px 16px;text-decoration:none;transition:all .25s ease}.group-tile:hover{transform:translateY(-4px);box-shadow:0 12px 28px #00000014;border-color:#ff6b35}.group-tile.is-empty{opacity:.55}.group-badge{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:#fff0ea;color:#d14343;font-weight:800;font-size:1.3rem}.group-count{font-size:.85rem;color:#5a6e85;font-weight:600;text-align:center}.empty-state{text-align:center;background:#fff;border-radius:20px;padding:50px 24px;border:1px dashed #E5EAF0}.empty-state i{font-size:2rem;color:#d7e0ec;margin-bottom:12px}.empty-state p{font-weight:700;color:#1b2a4a;margin-bottom:4px}.empty-state span{color:#8fa0bc;font-size:.85rem;display:block;margin-bottom:20px}.btn-register-outline{display:inline-flex;align-items:center;gap:8px;background:transparent;color:#ff6b35;border:1.5px solid #FF6B35;text-decoration:none;padding:10px 22px;border-radius:40px;font-weight:600;font-size:.9rem;transition:all .2s ease}.btn-register-outline:hover{background:#ff6b35;color:#fff}.br-overlay{display:none;position:fixed;inset:0;background:#0f172a8c;z-index:2200;align-items:flex-end;justify-content:center}.br-overlay.open{display:flex}@media(min-width:640px){.br-overlay{align-items:center;padding:20px}}.br-modal{position:relative;background:#fff;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;border-radius:24px 24px 0 0;padding:30px 24px 26px}@media(min-width:640px){.br-modal{border-radius:24px}}.br-close{position:absolute;top:16px;right:16px;background:#f8fafc;border:none;width:34px;height:34px;border-radius:50%;color:#5a6e85;font-size:1rem;cursor:pointer}.br-modal h3{font-size:1.2rem;font-weight:700;color:#1b2a4a;margin:0 0 16px}.br-tabs{display:flex;gap:8px;background:#f8fafc;border-radius:14px;padding:4px;margin-bottom:18px}.br-tab{flex:1;background:transparent;border:none;padding:10px;border-radius:10px;font-weight:600;font-size:.85rem;color:#5a6e85;cursor:pointer}.br-tab.active{background:#fff;color:#d14343;box-shadow:0 2px 8px #0000000f}.br-tab-panel{display:none}.br-tab-panel.active{display:block}.br-sub{font-size:.85rem;color:#5a6e85;margin:0 0 18px;line-height:1.6}.br-login-notice{text-align:center;padding:30px 10px;background:#f8fafc;border-radius:16px;font-weight:600;color:#1b2a4a}.br-form{display:flex;flex-direction:column;gap:14px}.br-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.br-form label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;font-weight:600;color:#1b2a4a}.br-form input,.br-form select,.br-form textarea{border:1.5px solid #EEF3F9;border-radius:12px;padding:11px 13px;font-size:.9rem;font-family:inherit;color:#1b2a4a}.br-form input:focus,.br-form select:focus,.br-form textarea:focus{outline:none;border-color:#d14343}.btn-submit-request{display:flex;align-items:center;justify-content:center;gap:8px;background:#d14343;color:#fff;border:none;padding:14px;border-radius:40px;font-weight:700;font-size:.95rem;cursor:pointer;margin-top:4px}.btn-submit-request:disabled{background:#d7e0ec;cursor:not-allowed}.br-feedback{font-size:.82rem;font-weight:600;margin:0;display:none}.br-feedback.error{display:block;color:#d14343}.br-feedback.success{display:block;color:#1e9e5a}.br-loading,.br-empty{text-align:center;padding:40px 10px;color:#8fa0bc;font-size:.9rem}.br-empty i{font-size:1.6rem;display:block;margin-bottom:10px;color:#d7e0ec}.br-requests-list{display:flex;flex-direction:column;gap:14px}.req-card{border:1px solid #EEF3F9;border-radius:16px;padding:16px}.req-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.req-group{font-weight:800;color:#d14343;font-size:1.1rem}.req-status{font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:20px;background:#fff0ea;color:#d14343}.req-status.status-fulfilled{background:#e7f8ee;color:#1e9e5a}.req-status.status-expired,.req-status.status-cancelled{background:#f1f4f8;color:#8fa0bc}.req-meta{font-size:.8rem;color:#8fa0bc;margin:0 0 6px}.req-details{font-size:.85rem;color:#5a6e85;margin:0 0 10px}.donor-list{background:#f8fafc;border-radius:12px;padding:10px 12px;margin-bottom:10px}.donor-list-title{font-size:.78rem;font-weight:700;color:#1b2a4a;margin:0 0 6px}.donor-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;font-size:.85rem;border-top:1px solid #EEF3F9}.donor-row:first-of-type{border-top:none}.donor-name{color:#1b2a4a;font-weight:600}.donor-phone{color:#ff6b35;text-decoration:none;font-weight:700}.no-responses{font-size:.8rem;color:#8fa0bc;margin:0}.btn-fulfill{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;background:#1e9e5a;color:#fff;border:none;padding:11px;border-radius:40px;font-weight:700;font-size:.85rem;cursor:pointer}.btn-fulfill:disabled{background:#d7e0ec;cursor:not-allowed}@media(max-width:768px){.page-header h1{font-size:1.7rem}.group-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px}.group-badge{width:54px;height:54px;font-size:1.1rem}.br-form-row{grid-template-columns:1fr}}
