.modal-backdrop,.site-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(4px);z-index:80}
.team-editor,.access-review,#game-form,#announcement-form{position:fixed;z-index:81;left:50%;top:50%;transform:translate(-50%,-50%);width:min(900px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:auto;margin:0!important;border-top:6px solid #f04a00;box-shadow:0 30px 90px rgba(0,0,0,.45)}
body.modal-open,body.site-modal-open{overflow:hidden}
.admin-team:after{content:"Open roster →";display:block;color:#c93c00;font-size:.72rem;font-weight:900;margin-top:.7rem}
.admin-list-item button.review:after,.admin-list-item button.edit-access:after{content:" →"}
.team-card{cursor:pointer}.team-card:after{content:"View roster →";display:block;margin-top:.85rem;color:#f04a00;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.site-modal-backdrop{z-index:90}.site-modal{position:fixed;z-index:91;left:50%;top:50%;transform:translate(-50%,-50%);width:min(760px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:auto;background:#fff;border:0;border-top:7px solid #f04a00;padding:2rem;box-shadow:0 30px 90px rgba(0,0,0,.5)}
.site-modal-close{position:absolute;right:.8rem;top:.7rem;width:40px;height:40px;border:0;border-radius:50%;background:#111;color:#fff;font-size:1.6rem;cursor:pointer}.site-modal h2{padding-right:3rem}.modal-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin:.8rem 0 1.3rem}.modal-meta span{background:#111;color:#fff;padding:.35rem .6rem;font-size:.72rem;font-weight:900;text-transform:uppercase}.modal-roster{width:100%;border-collapse:collapse}.modal-roster th,.modal-roster td{text-align:left;border-bottom:1px solid #ddd;padding:.7rem}.modal-roster th{background:#111;color:#fff}.modal-score{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center;text-align:center;background:#111;color:#fff;padding:1.5rem}.modal-score strong{font-size:1.15rem}.modal-score b{font-size:2.5rem;color:#f04a00}.modal-note{padding:1rem;background:#f5f5f5;border-left:4px solid #f04a00;margin-top:1rem}
@media(max-width:700px){.team-editor,.access-review,#game-form,#announcement-form{width:calc(100vw - 1rem);max-height:calc(100vh - 1rem);padding:1rem}.team-editor .admin-card-head,.access-review .admin-card-head{position:sticky;top:-1rem;background:#fff;z-index:2;padding-top:.7rem}}
@media(max-width:560px){.site-modal{width:calc(100vw - 1rem);padding:1.2rem}.modal-score{grid-template-columns:1fr}.modal-score b{font-size:2rem}}
