.nrm-inline-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}
.nrm-dashboard-columns{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:1.5rem;margin:1.5rem 0}
.nrm-dashboard-columns>section,.nrm-propose-game{border:1px solid #ddd;border-radius:14px;padding:1.25rem;background:#fff}
.nrm-request-list{display:grid;gap:1rem}.nrm-request-card{border:1px solid #ddd;border-radius:12px;padding:1rem;background:#fff}.nrm-request-card h4{margin:.25rem 0 .5rem}.nrm-request-status{display:inline-block;padding:.25rem .55rem;border-radius:999px;background:#eee;font-size:.85rem;font-weight:600}.nrm-request-status-accepted{background:#e7f5ec}.nrm-request-status-declined{background:#f9e8e8}.nrm-request-status-countered{background:#fff3d7}.nrm-request-response{margin-top:1rem;border-top:1px solid #eee;padding-top:1rem}.nrm-request-response textarea,.nrm-propose-game textarea,.nrm-propose-game input,.nrm-propose-game select{width:100%;box-sizing:border-box;margin-top:.35rem;padding:.65rem;border:1px solid #bbb;border-radius:8px}.nrm-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.nrm-propose-game label{display:block;font-weight:600;margin-bottom:1rem}.nrm-band-directory .nrm-program-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
@media(max-width:760px){.nrm-dashboard-columns,.nrm-form-grid{grid-template-columns:1fr}.nrm-inline-actions{align-items:stretch}.nrm-inline-actions a,.nrm-inline-actions button{width:100%;text-align:center;box-sizing:border-box}}

/* Native family registration — v1.2.0 */
.nrm-native-registration{max-width:980px;margin:0 auto}.nrm-registration-heading{margin:0 0 1.5rem}.nrm-registration-heading h2{margin:.2rem 0}.nrm-registration-session{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.25rem;align-items:center;padding:1.25rem;margin:0 0 1rem;background:#fff;border:1px solid #d9e0e7;border-radius:14px;box-shadow:0 2px 8px rgba(17,38,63,.05)}.nrm-registration-session h3{margin:.35rem 0}.nrm-registration-session p{margin:.25rem 0}.nrm-registration-success{max-width:720px;margin:1rem auto;padding:2rem;background:#f1faf4;border:1px solid #9dd2ad;border-radius:16px}.nrm-registration-error{margin:1rem 0;padding:1rem 1.15rem;color:#7a1d1d;background:#fff1f1;border-left:5px solid #c62828;border-radius:8px;font-weight:600}.nrm-parent-registration-form fieldset{position:relative;margin:0 0 1.25rem;padding:1.25rem;background:#fff;border:1px solid #d8e0e8;border-radius:14px}.nrm-parent-registration-form legend{padding:0 .45rem;color:var(--nrm-primary,#123b63);font-size:1.15rem;font-weight:750}.nrm-registration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.nrm-registration-grid label{display:block;font-weight:650}.nrm-registration-grid label>span{color:#b42318}.nrm-registration-grid input,.nrm-registration-grid select,.nrm-registration-grid textarea{display:block;width:100%;box-sizing:border-box;margin-top:.35rem;padding:.72rem .8rem;border:1px solid #9da9b5;border-radius:8px;background:#fff;font:inherit}.nrm-registration-grid input:focus,.nrm-registration-grid select:focus,.nrm-registration-grid textarea:focus{outline:3px solid rgba(34,113,177,.22);border-color:#2271b1}.nrm-grid-wide{grid-column:1/-1}.nrm-grid-wide small{display:block;margin-top:.4rem;color:#536170;font-weight:400}.nrm-form-note{margin:.9rem 0 0;color:#536170}.nrm-checkbox{display:flex;gap:.7rem;align-items:flex-start;line-height:1.45}.nrm-checkbox input{width:20px;height:20px;flex:0 0 auto;margin-top:.1rem}.nrm-remove-child{position:absolute;right:1rem;top:.7rem;padding:.35rem .65rem;color:#9f1c1c;background:#fff;border:1px solid #d8a5a5;border-radius:7px;cursor:pointer}.nrm-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.nrm-submit-registration{min-width:220px;min-height:48px;font-size:1rem}.nrm-registration-form-shell>.nrm-text-link{display:inline-block;margin-bottom:1rem}
@media(max-width:700px){.nrm-registration-session,.nrm-registration-grid{grid-template-columns:1fr}.nrm-registration-session>div:last-child .nrm-button{display:block;width:100%;box-sizing:border-box;text-align:center}.nrm-grid-wide{grid-column:auto}.nrm-parent-registration-form fieldset{padding:1rem}.nrm-remove-child{position:static;float:right;margin-top:-2.2rem}.nrm-submit-registration{width:100%}}
.nrm-waiver-text{max-height:300px;overflow:auto;margin:0 0 1rem;padding:1rem;background:#f6f7f8;border:1px solid #cbd3db;border-radius:8px;line-height:1.55}.nrm-waiver-text:focus{outline:3px solid rgba(34,113,177,.22);border-color:#2271b1}.nrm-signature-label{display:block;margin-top:1rem;font-weight:650}.nrm-signature-label>span{color:#b42318}.nrm-signature-label input{display:block;width:100%;box-sizing:border-box;margin-top:.35rem;padding:.72rem .8rem;border:1px solid #9da9b5;border-radius:8px;font:inherit}.nrm-waiver-fieldset .nrm-checkbox{margin-top:1rem}

/* Coach directory readability improvements — v0.6.1 */
.nrm-wrap .nrm-coaches{width:100%;max-width:1200px;margin:0 auto}
.nrm-wrap .nrm-coaches .nrm-coach-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));
    gap:1.35rem;
    align-items:stretch;
    width:100%;
}
.nrm-wrap .nrm-coaches .nrm-coach-card{
    display:flex;
    flex-direction:column;
    min-width:0;
    height:100%;
    overflow:hidden;
    background:#fff;
    border:1px solid #d7dee7;
    border-radius:14px;
    box-shadow:0 2px 8px rgba(16,38,64,.06);
}
.nrm-wrap .nrm-coaches .nrm-coach-photo{
    display:block;
    width:100%;
    height:190px;
    flex:0 0 190px;
    overflow:hidden;
    background:#edf1f5;
    border:0;
    border-radius:0;
}
.nrm-wrap .nrm-coaches .nrm-coach-photo img{
    display:block;
    width:100%;
    height:100%;
    max-width:none;
    object-fit:cover;
    object-position:center;
    margin:0;
}
.nrm-wrap .nrm-coaches .nrm-coach-placeholder{
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:3rem;
    font-weight:700;
    color:var(--nrm-primary,#163b63);
}
.nrm-wrap .nrm-coaches .nrm-coach-body{
    display:flex;
    flex-direction:column;
    flex:1 1 auto;
    min-width:0;
    padding:1.1rem 1.15rem 1.2rem;
}
.nrm-wrap .nrm-coaches .nrm-coach-body h3{
    margin:0 0 .2rem;
    font-size:1.25rem;
    line-height:1.25;
    overflow-wrap:anywhere;
}
.nrm-wrap .nrm-coaches .nrm-coach-body h3 a{
    color:var(--nrm-primary,#163b63);
    text-decoration:none;
}
.nrm-wrap .nrm-coaches .nrm-coach-body h3 a:hover,
.nrm-wrap .nrm-coaches .nrm-coach-body h3 a:focus{text-decoration:underline}
.nrm-wrap .nrm-coaches .nrm-coach-role{
    margin:0 0 .8rem;
    font-weight:700;
    color:#334155;
}
.nrm-wrap .nrm-coaches .nrm-coach-body p{
    margin:.35rem 0;
    line-height:1.5;
    overflow-wrap:anywhere;
}
.nrm-wrap .nrm-coaches .nrm-badge{
    display:inline-block;
    max-width:100%;
    padding:.4rem .65rem;
    border-radius:999px;
    background:#eef3f7;
    color:#24384b;
    font-size:.84rem;
    font-weight:600;
    line-height:1.3;
    white-space:normal;
}
.nrm-wrap .nrm-coaches .nrm-coach-body a[href^="mailto:"],
.nrm-wrap .nrm-coaches .nrm-coach-body a[href^="tel:"]{
    overflow-wrap:anywhere;
    word-break:break-word;
}
.nrm-wrap .nrm-coaches .nrm-coach-body p:has(> .nrm-button){
    margin-top:auto;
    padding-top:.9rem;
}
.nrm-wrap .nrm-coaches .nrm-button{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:44px;
    box-sizing:border-box;
    padding:.7rem 1rem;
    border-radius:999px;
    text-align:center;
    white-space:normal;
    line-height:1.25;
}
@media(max-width:700px){
    .nrm-wrap .nrm-coaches .nrm-coach-grid{grid-template-columns:1fr;gap:1rem}
    .nrm-wrap .nrm-coaches .nrm-coach-photo{height:220px;flex-basis:220px}
}

/* PWA / Recreation Updates */
.nrm-pwa-shell{max-width:1100px;margin:0 auto;padding:20px 0 40px}.nrm-pwa-hero{padding:28px;border-radius:18px;background:var(--nrm-primary,#123b63);color:#fff;margin-bottom:18px}.nrm-pwa-hero h1{color:#fff;margin:.25rem 0}.nrm-pwa-hero .nrm-kicker{color:#f3c34d}.nrm-pwa-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.nrm-button-secondary{background:#fff!important;color:var(--nrm-primary,#123b63)!important}.nrm-pwa-status{font-size:.9rem;opacity:.9}.nrm-pwa-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:18px}.nrm-pwa-panel{background:#fff;border:1px solid #dde3ea;border-radius:16px;padding:20px;margin-bottom:18px}.nrm-pwa-panel h2{margin-top:0}.nrm-pwa-team-list{display:grid;gap:8px}.nrm-pwa-team{display:flex;gap:10px;align-items:center;padding:10px 12px;background:#f6f8fa;border-radius:10px}.nrm-pwa-team input{width:20px;height:20px}.nrm-pwa-update{border-left:4px solid #a7b0ba;padding:10px 12px;margin:0 0 10px;background:#f7f8fa;border-radius:8px}.nrm-pwa-update p{margin:.35rem 0}.nrm-pwa-update small{color:#66717d}.nrm-priority-important{border-left-color:#d59b2d;background:#fff9e9}.nrm-priority-urgent{border-left-color:#c72b2b;background:#fff0f0}@media(max-width:760px){.nrm-pwa-grid{grid-template-columns:1fr}.nrm-pwa-hero{border-radius:12px;padding:20px}.nrm-pwa-panel{padding:16px}}
