.badges-admin .badge-progress{width:100%;height:14px;accent-color:#1677bd}
.badge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px}
.badge-card{border:1px solid #dce4ec;border-radius:14px;padding:20px;min-width:0;background:#fff}
.badge-card-art{display:flex;align-items:center;gap:16px;min-height:100px}
.badge-art{max-width:100%;width:180px;height:100px;object-fit:contain;object-position:left center}
.badge-icon{width:40px;height:40px;object-fit:contain}
.badge-placeholder{font-size:48px;color:#1677bd}
.badge-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:14px}
.badge-card dd{margin:0;text-align:right;overflow-wrap:anywhere}
.badge-card dt{color:#607080}
.badge-card details,.badge-card>form{margin-top:14px}
.badges-admin summary{cursor:pointer;font-weight:600}
.badge-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.badges-admin .owner-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.badges-admin .editor-form label:has(input[type=checkbox]){display:flex;align-items:center;gap:10px}
.badges-admin .editor-form input[type=checkbox]{width:18px;height:18px;margin:0;flex:0 0 auto}
.badges-admin>.admin-card{margin-bottom:18px}
.badges-admin .section-heading{flex-wrap:wrap;gap:12px}
.badges-admin .btn{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border:1px solid #bdd6f2;border-radius:10px;background:#fff;color:#075db5;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none;cursor:pointer}
.badges-admin .btn-primary{background:#0b7cff;border-color:#0b7cff;color:#fff}
.badges-admin .btn-outline-secondary{border-color:#cbd5e1;color:#475569}
.badges-admin .btn:hover{filter:brightness(.96)}
.badges-admin .btn:focus-visible{outline:3px solid #90c2ff;outline-offset:2px}
.badges-admin input:not([type=checkbox]),.badges-admin select,.badges-admin textarea{max-width:100%;min-width:0}
.badge-search{display:flex;gap:12px;align-items:end;flex-wrap:wrap}
.badges-admin .table-wrap{overflow-x:auto}
.badges-admin table{width:100%;min-width:620px}
.badges-admin td,.badges-admin th{text-align:left;padding:12px;vertical-align:top}
@media(max-width:640px){.badge-form-grid{grid-template-columns:1fr}.badges-admin .admin-page-head{align-items:stretch;flex-direction:column}.badge-card{padding:16px}}
/* Member recognition and attached benefits remain visually distinct. */
.member-badge-grid{margin:20px 0;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-items:start}
.member-badge-entry{min-width:0}
.member-badge-card{padding:24px;box-shadow:0 8px 24px #15345008}
.member-badge-art{display:block;width:160px;height:160px;object-fit:contain;margin:0 0 20px}
.member-badge-card h4,.member-benefit h4{font-size:20px;margin:0 0 12px;overflow-wrap:anywhere}
.member-badge-card .owner-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.member-benefit{margin-top:14px;padding:22px;border:1px solid #dce7f3;border-radius:14px;background:#f5f9ff}
.member-benefit-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#526982}
.member-benefit h3{margin:12px 0 4px}
.member-benefit p:last-child{margin-bottom:0}
.member-badge-dialog{max-width:min(560px,calc(100vw - 32px))}
.menu-logout .dashboard-nav-icon{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:600px){.member-badge-grid{grid-template-columns:1fr}.member-badge-card{padding:20px}}
.member-badge-card .btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border:1px solid #0b7cff;border-radius:10px;background:#fff;color:#0670ef;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none;cursor:pointer}
.member-badge-card .btn:hover{background:#edf5ff}
.member-badge-card .btn:focus-visible{outline:3px solid #90c2ff;outline-offset:2px}
