.event-times{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}
.event-times>div{padding:18px;background:#f0f5fa;border-radius:10px}
.event-times small,.event-venue small{display:block;color:#536579;font-size:.875rem;margin-bottom:6px}
.event-times strong{display:block;font-size:1.5rem;font-variant-numeric:tabular-nums;color:#162d4c}
.event-venue{padding:16px 0}.event-venue strong{display:block;font-size:1.05rem}
.poll-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.poll-group{border:1px solid #d8e1ed;border-radius:12px;padding:16px;min-width:0}
.poll-count{display:inline-block;background:#e7f0fb;border-radius:20px;padding:2px 9px;font-size:.9rem;color:#174d82}
.poll-person{padding:12px 0;border-top:1px solid #e4eaf2;overflow-wrap:anywhere}
.poll-person.my-response{background:#edf5ff;padding:12px;border-radius:8px}
.poll-person small{font-weight:400}.transport-marker{display:inline-block;font-size:.875rem;margin:8px 4px 0 0;padding:4px 7px;border-radius:6px;background:#edf2f8;color:#243d5d}
.disabled-option{opacity:.5}.disabled-option input{cursor:not-allowed}
.response-summary{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid #e4eaf2;margin-bottom:12px}
.installer{max-width:780px;margin:40px auto;padding:20px}
.event-detail-card .event-times{margin:0 0 12px;gap:10px}
.event-detail-card .event-times>div{padding:12px 16px}
.event-detail-card .event-venue{padding:4px 0 12px}
.event-notes{margin:0 0 12px;border:0;padding:0}
.event-notes summary{font-size:.875rem;cursor:pointer;color:#174d82}
.availability-panel{max-width:780px;margin:20px auto 0;outline-offset:5px}
.poll-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.poll-heading h3{margin:0}
.poll-bars{border:1px solid #cfdeed;border-radius:12px;background:#f7fbff;overflow:hidden}
.poll-option{border:0;border-radius:0;margin:0;padding:0;background:transparent}
.poll-option+.poll-option{border-top:1px solid #dfebf6}
.poll-option summary{display:block;cursor:pointer;list-style:none;padding:14px 18px;color:#162d4c;min-height:64px}
.poll-option summary::-webkit-details-marker{display:none}
.poll-option summary:hover{background:#edf5fe}
.poll-option summary:focus-visible,.poll-view-votes:focus-visible{outline:3px solid #236ca6;outline-offset:-3px}
.poll-label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.poll-label>span{display:flex;gap:14px;align-items:center;font-variant-numeric:tabular-nums}
.poll-chevron{display:inline-block}.poll-option[open] .poll-chevron{transform:rotate(180deg)}
.poll-option progress{display:block;width:100%;height:9px;border:0;border-radius:8px;overflow:hidden;background:#dce9f5;color:#2f80c2;appearance:none}
.poll-option progress::-webkit-progress-bar{background:#dce9f5;border-radius:8px}
.poll-option progress::-webkit-progress-value{background:#2f80c2;border-radius:8px}
.poll-option progress::-moz-progress-bar{background:#2f80c2;border-radius:8px}
.poll-option-1 progress::-webkit-progress-value{background:#526b86}.poll-option-1 progress::-moz-progress-bar{background:#526b86}
.poll-option-2 progress::-webkit-progress-value{background:#7e91a7}.poll-option-2 progress::-moz-progress-bar{background:#7e91a7}
.poll-voters{padding:0 18px 12px}
.poll-person{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.poll-person .transport-marker{margin:0 4px 0 0}
.poll-person-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.poll-person-actions .button{min-height:44px;white-space:normal}
.poll-view-votes{display:block;width:100%;padding:14px;border:0;background:transparent;color:#174d82;font:inherit;font-weight:600;cursor:pointer;min-height:44px}
.poll-response-controls{border-top:1px solid #d8e1ed;padding-top:14px}
.poll-response-controls>.button{width:100%}
.response-summary{justify-content:space-between;margin:0;padding:10px 0}
.response-summary>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#response-editor .availability-form{margin:12px 0 0;padding:0;border:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){.poll-option summary{padding:12px}.poll-voters{padding:0 12px 10px}.response-summary>div{gap:6px}.event-detail-card .event-times>div{padding:10px}}
@media(max-width:850px){.poll-groups{grid-template-columns:1fr}}
@media(max-width:450px){.event-times{grid-template-columns:1fr;gap:8px}.event-times>div{display:flex;align-items:center;justify-content:space-between}.event-times small{margin:0}.event-times strong{font-size:1.35rem}}
.squad-jpg-preview{display:block;width:100%;height:auto;border:1px solid #dbe4ee}
#builder-editor .pitch-slot{min-width:0}
#builder-editor .pitch-slot select{width:100%;max-width:100%;font-size:12px}
#builder-editor .pitch-slot label{color:white}
#builder-editor .form-actions{flex-wrap:wrap}
#builder-status{color:#295881}
/* All football pitches share the same blue surface, including the admin builder. */
.pitch{background:repeating-linear-gradient(0deg,#185da0 0,#185da0 12.5%,#216bab 12.5%,#216bab 25%);border-color:#84b9e3}
.pitch::before,.pitch::after{border-color:#ffffff90}
.pitch-slot select{background:#102c53;border-color:#90b7d9;color:#fff}
.pitch-slot small{color:#e3f0fb}.pitch .shirt{background:#fff;color:#133658}
.home-pinned-events{margin-bottom:1.5rem}.home-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;align-items:start}
.home-event-card{margin:0;min-width:0}.home-event-card h3{font-size:1.2rem;line-height:1.35;margin-bottom:.5rem;overflow-wrap:anywhere}
.home-event-card p{margin-bottom:.55rem}.home-event-date{font-weight:650}
.pin-label{font-size:.875rem;color:#2a6fa7}.home-voting-line{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;margin:.8rem 0}
.voting-status{display:inline-block;font-size:.875rem;font-weight:650;padding:.3rem .55rem;border:1px solid #bed8ec;border-radius:5px;background:#eaf4fc;color:#1a5686}
.voting-status.is-closed{background:#eef1f4;color:#465b70;border-color:#d4dde4}.response-needed{font-size:.875rem;font-weight:650;color:#825000;background:#fff4db;padding:.3rem .55rem;border-radius:5px}
.home-poll{display:grid;gap:.55rem;margin:1rem 0}.home-poll-group{border:1px solid #dbe6ef;border-radius:9px;background:#f8fbfd;overflow:hidden}
.home-poll-group summary{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .8rem;cursor:pointer;font-size:.9rem;font-weight:700;list-style:none;color:#243d5d}
.home-poll-group summary::-webkit-details-marker{display:none}.home-poll-group summary::before{content:'›';font-size:1.35rem;line-height:1;transform:rotate(0deg);transition:transform .14s ease;color:#6c849b}.home-poll-group[open] summary::before{transform:rotate(90deg)}
.home-poll-group summary span{flex:1}.home-poll-group summary b{min-width:2rem;text-align:center;padding:.2rem .5rem;border-radius:999px;background:#e5eef6;color:#243d5d;font-variant-numeric:tabular-nums}
.home-poll-group-0{border-left:4px solid #2f80c2}.home-poll-group-0 summary b{background:#dceefa;color:#155b8c}.home-poll-group-1{border-left:4px solid #607b97}.home-poll-group-1 summary b{background:#e5ebf0;color:#405a72}.home-poll-group-2{border-left:4px solid #d5962d}.home-poll-group-2 summary b{background:#fff0d4;color:#7a5007}
.home-poll-group-list{padding:0 .8rem .7rem;border-top:1px solid #e6edf3;background:#fff}.home-poll-group-list .poll-person:first-child{border-top:0}.home-poll-empty{margin:.7rem 0 0}
.extra-subs{border:0;padding:0;margin:.6rem 0}.extra-subs summary{min-height:44px;display:flex;align-items:center;color:#1c5c91;cursor:pointer;font-weight:650;font-size:.875rem}
.home-response-controls{border-top:1px solid #dbe6ef;padding-top:.8rem}.home-response{display:grid;gap:.6rem;margin:.6rem 0}
.home-response>div:first-child{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.875rem}.home-response .button-group{flex-wrap:wrap}
.home-card-actions,.home-admin-controls,.event-pin-controls,.squad-pin-controls{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}
.home-card-actions{margin-top:1rem}.home-admin-controls{margin-top:1rem;border-top:1px solid #dbe6ef;padding-top:.8rem;justify-content:space-between}
.event-pin-controls{margin-bottom:1rem}.squad-pin-controls{margin:1rem 0}.squad-pin-controls p{margin:0}
.home-squad-card{margin-bottom:1.5rem}.home-squad-card .card-header{align-items:start;gap:1rem}.home-squad-card .card-header h2{margin:0;display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}
.home-squad-card h3{font-size:1.35rem;margin-bottom:.5rem}.home-fixture-date{font-weight:750;font-size:1.1rem;margin:0 0 .3rem}.home-fixture-times{margin-bottom:.4rem;font-variant-numeric:tabular-nums}
.home-squad-grid{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(180px,1fr);gap:1.5rem}.home-squad-grid h4{margin:.4rem 0 .75rem}.home-squad-grid>div,.home-squad-grid>aside{min-width:0}
.home-pitch{min-height:480px}.home-pitch .pitch-slot span{font-size:.875rem;line-height:1.25;overflow-wrap:anywhere;background:#102c53;padding:.2rem;border-radius:4px}.home-pitch .pitch-slot small{font-size:.75rem}
.home-sub{display:flex;align-items:center;gap:.65rem;padding:.5rem 0;overflow-wrap:anywhere}.home-sub .avatar{width:32px;height:32px;min-width:32px;font-size:.875rem}.home-sub strong{font-size:.95rem}
.home-stats{margin-top:1rem}.deletion-counts>div{display:flex;gap:1rem;justify-content:space-between;border-bottom:1px solid #dbe6ef;padding:.45rem 0}.deletion-counts dd{margin:0;font-weight:700}
@media(max-width:1100px){.home-event-grid{grid-template-columns:1fr}}
@media(max-width:760px){.home-squad-grid{grid-template-columns:1fr}.home-squad-card .card-header{flex-wrap:wrap}.home-pitch{min-height:520px;padding:1rem .4rem}.home-pitch .pitch-row{gap:.2rem}.home-card-actions .button{flex:1}.home-admin-controls{justify-content:flex-start}}
@media(max-width:420px){.home-pitch .shirt{width:30px;height:30px;font-size:.875rem}.home-pitch .pitch-slot span{font-size:.8rem}.home-pitch{min-height:540px}}
.motm-bar{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap;width:100%;margin:0 0 24px;padding:14px 18px;border:1px solid #dfe7c5;border-radius:12px;color:#334529}
.motm-heading{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;min-width:0;flex:1 1 240px}
.motm-bar h2{font-size:1rem;letter-spacing:0;margin:0;white-space:nowrap}
.motm-player{font-size:1.05rem;overflow-wrap:anywhere}
.motm-bar .motm-fixture{font-size:.875rem;margin:0;flex:1 1 200px;overflow-wrap:anywhere}
.motm-citation{font-size:.875rem;min-width:0}
.motm-citation summary{cursor:pointer;padding:10px 0;font-weight:600}
.motm-citation[open]{flex-basis:100%}
.motm-citation p{margin:8px 0 0;overflow-wrap:anywhere}
.home-updates{min-width:0}
@media(max-width:600px){.motm-bar{gap:8px 12px;padding:12px 14px}.motm-heading{flex-basis:100%}.motm-bar .motm-fixture{flex-basis:100%}}
.builder-notes{margin-top:24px}.builder-note{background:#f3f7fc;border:1px solid #dae4f0;border-radius:12px;padding:14px 16px;margin:12px 0}.builder-note header{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}.builder-note time{font-size:.8rem;color:#596b82}.builder-note p{margin-bottom:0;overflow-wrap:anywhere}.builder-notes textarea{width:100%}
.transport-area{overflow-wrap:anywhere;margin:.65rem 0}
.transport-request-editor{margin:0 0 1rem;padding:1rem;border:1px solid var(--line,#dce3ea);border-radius:10px}
.transport-request-editor summary,.transport-propose summary{cursor:pointer;font-weight:600;padding:.5rem 0}
.transport-request-editor form{margin-top:.75rem}
.transport-self-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}
.transport-self-actions strong{min-width:0;overflow-wrap:anywhere}
.transport-self-actions .button{min-height:44px;white-space:normal}
.backup-success{padding:1.2rem;background:#edf7f0;border:1px solid #c8e4d0;border-radius:12px}
.transport-propose{margin-top:.75rem}
[data-transport-location][hidden]{display:none!important}
.pickup-contact-options{display:flex;flex-wrap:wrap;gap:.6rem}
.pickup-message-context{overflow-wrap:anywhere}
.maintenance-page{max-width:1180px;margin-top:24px}
.maintenance-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px;padding:0 4px}
.maintenance-head h1{margin:.2rem 0 .45rem}.maintenance-head p{margin-bottom:0}
.maintenance-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}
.maintenance-metrics .card{margin:0;padding:18px;display:flex;flex-direction:column;gap:5px}
.maintenance-metrics small{color:#607389;font-weight:650}.maintenance-metrics strong{font-size:1.5rem;color:#142d4d;line-height:1.25;overflow-wrap:anywhere}
.maintenance-metrics span{font-size:.8rem;color:#627286}.maintenance-metrics .maintenance-date{font-size:1rem;margin:.35rem 0}
.maintenance-good{display:inline-flex!important;align-items:center;width:max-content;max-width:100%;padding:3px 8px;border-radius:999px;background:#e6f4eb;color:#226642!important;font-weight:700}
.maintenance-jumps{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 20px;padding:12px;background:#fff;border:1px solid #dce5ef;border-radius:12px;position:sticky;top:8px;z-index:2;box-shadow:0 4px 16px #1634530c}
.maintenance-jumps a{min-height:44px;display:flex;align-items:center;padding:8px 14px;border-radius:8px;color:#1a5f98;font-weight:700}
.maintenance-jumps a:hover{background:#edf5fc}
.maintenance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.maintenance-grid>.card{height:100%}.maintenance-page code{overflow-wrap:anywhere}
.maintenance-scan-badge{padding:6px 10px;border-radius:999px;background:#e9f3fc;color:#185a8f;font-weight:750;white-space:nowrap}
.maintenance-protected{margin:18px 0;padding:16px;border-left:4px solid #2f80c2;background:#f1f7fc;border-radius:0 9px 9px 0}
.maintenance-protected h3{margin:0 0 6px}.maintenance-protected p{margin:0;color:#425b73;font-size:.9rem}
.maintenance-cleanup-form{padding-top:18px;border-top:1px solid #dfe7ef}
.maintenance-success{background:#edf7f0;border-color:#c8e4d0}.maintenance-success h2{color:#205f3d}
.maintenance-good-line{padding:14px;background:#edf7f0;border:1px solid #c8e4d0;border-radius:9px;color:#205f3d;font-weight:700}
.maintenance-definition{margin:0}.maintenance-definition>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e2e9ef}
.maintenance-definition dt{color:#5b6d80}.maintenance-definition dd{margin:0;text-align:right;font-weight:750;overflow-wrap:anywhere}
.maintenance-upgrade{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.maintenance-upgrade>div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:12px;min-width:210px}
@media(max-width:850px){.maintenance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-grid{grid-template-columns:1fr}.maintenance-grid>.card{height:auto}.maintenance-upgrade{flex-direction:column}.maintenance-upgrade>div:last-child{align-items:flex-start;min-width:0}}
@media(max-width:560px){.maintenance-page{padding:12px;margin-top:8px}.maintenance-head{flex-direction:column;gap:14px}.maintenance-head .button{width:100%}.maintenance-metrics{grid-template-columns:1fr 1fr;gap:9px}.maintenance-metrics .card{padding:13px}.maintenance-metrics strong{font-size:1.15rem}.maintenance-jumps{position:static;display:grid;grid-template-columns:1fr 1fr}.maintenance-jumps a{justify-content:center}.maintenance-page>.card{padding:1.1rem}.maintenance-cleanup-form .button{width:100%}}
