:root{--ink:#151515;--muted:#686868;--line:#e6e2da;--paper:#fbfaf7;--card:#fff;--brand:#f6c400;--brand-ink:#16130a;--soft:#fff8d7;--green:#218c5a;--blue:#2476d3;--region-link:#a87800;--support-accent:#151515;--support-ink:#fff;--support-soft:#f1f1ef;--shadow:0 12px 30px rgba(34,28,15,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,textarea,input{font:inherit}button{cursor:pointer}body[data-region="agoura"]{--brand:#d6212b;--brand-ink:#fff;--soft:#fff0f1;--blue:#b5121b;--region-link:#b5121b;--support-accent:#d6212b;--support-ink:#fff;--support-soft:#fff0f1}
.access-gate{position:fixed;inset:0;z-index:100;background:linear-gradient(145deg,#111 0 45%,#e7b900 45% 100%);display:grid;place-items:center;padding:18px}.access-gate.hidden{display:none}.access-card{width:min(440px,100%);background:#fff;border-radius:25px;padding:25px;box-shadow:0 30px 90px rgba(0,0,0,.32)}.access-brand{display:flex;align-items:center;gap:12px}.access-card h2{margin:4px 0;font-size:28px}.access-card>p{color:var(--muted);line-height:1.5}.access-card label{display:block;font-size:13px;font-weight:850;margin:18px 0 7px}.access-card input{width:100%;border:1px solid var(--line);border-radius:12px;padding:14px}.access-card .primary{margin-top:10px}.privacy-note{font-size:12px}.demo-access{width:100%;border:0;background:transparent;padding:8px;color:#755e00;font-weight:800}.staff-bar{display:none;min-height:42px;background:#17263b;color:#fff;padding:8px max(16px,calc((100vw - 700px)/2));align-items:center;gap:12px;font-size:12px}.staff-bar.show{display:flex}.staff-bar span{opacity:.75}.staff-bar button{margin-left:auto;border:1px solid #ffffff55;background:transparent;color:#fff;border-radius:8px;padding:5px 8px}.staff-mode .topbar{top:42px}
html[data-install-region="agoura"] .access-gate,body[data-region="agoura"] .access-gate{background:linear-gradient(145deg,#111 0 45%,#d6212b 45% 100%)}
.access-card select{width:100%;border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff;color:var(--ink);font:inherit}
.topbar{position:fixed;top:0;left:0;right:0;z-index:20;height:78px;padding:12px max(18px,calc((100vw - 700px)/2));display:flex;align-items:center;justify-content:space-between;background:#fbfaf7;border-bottom:1px solid var(--line)}body{padding-top:78px}
.brand-lockup{display:flex;gap:11px;align-items:center}.region-logo,.access-logo{width:52px;height:56px;object-fit:contain}.access-logo{width:58px;height:62px}.brand-lockup h1{font-size:20px;margin:2px 0}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.11em;font-size:11px;font-weight:800;color:var(--muted)}.region-switch{border:1px solid var(--line);background:#fff;padding:9px 12px;border-radius:999px;display:flex;gap:8px;font-weight:800}
main{max-width:700px;margin:0 auto;padding:22px 16px 110px}.screen{display:none}.screen.active{display:block;animation:fade .2s ease}@keyframes fade{from{opacity:.25;transform:translateY(5px)}}
.welcome{padding:9px 2px 17px}.welcome h2,.section-head h2{font-size:28px;line-height:1.08;margin:7px 0}.welcome p:last-child{color:var(--muted);margin:5px 0}.hero-card{background:var(--ink);color:white;padding:24px;border-radius:24px;box-shadow:var(--shadow);overflow:hidden;position:relative}.hero-card:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:var(--brand);opacity:.17;right:-65px;top:-65px}.hero-top,.timeline-title,.section-head,.practice-meta,.action-row,.tag-row,.map-key,.ask-actions{display:flex;align-items:center}.hero-top,.section-head{justify-content:space-between}.pill,.status,.tag-row span,.official-badge{font-size:11px;font-weight:800;border-radius:999px;padding:7px 9px}.pill{background:var(--soft);color:#5b4a00}.status{background:#153f2a;color:#8ef0b8}.hero-card h3{font-size:28px;line-height:1.05;max-width:410px;margin:30px 0 20px}.practice-meta{gap:8px;flex-wrap:wrap;color:#d9d9d9;font-size:13px}.primary{width:100%;border:0;border-radius:13px;padding:14px 16px;background:var(--brand);color:var(--brand-ink);font-weight:900;margin-top:22px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:13px}.quick-card{min-height:135px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:19px;padding:17px;display:flex;flex-direction:column;align-items:flex-start;gap:7px;box-shadow:0 5px 18px rgba(34,28,15,.04)}.quick-card small{color:var(--muted);line-height:1.35}.quick-icon{display:grid;place-items:center;width:34px;height:34px;background:var(--soft);color:var(--blue);border-radius:10px;font-weight:900;font-size:20px}.notice,.logistics,.feedback-card,.ask-box{margin-top:14px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.notice{border-left:5px solid var(--brand)}.notice p{margin:6px 0 0;color:var(--muted);line-height:1.5}
.section-head{margin-bottom:17px}.icon-button{width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:12px;font-size:20px}.action-row{gap:9px;margin:-5px 0 14px}.secondary{border:1px solid var(--line);background:#fff;border-radius:12px;padding:11px 13px;font-weight:800;color:var(--ink)}.action-row .secondary{flex:1}.timeline-card{display:grid;grid-template-columns:58px 1fr;gap:14px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px;margin:11px 0}.timeline-card.activity-open{cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.timeline-card.activity-open:active{transform:scale(.985)}.timeline-card.activity-open:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.time-dot{width:54px;background:var(--soft);border-left:4px solid var(--brand);border-radius:8px;padding:9px 5px;text-align:center;font-weight:950;color:var(--blue);font-size:18px}.time-dot:after{content:" MIN";display:block;font-size:8px;letter-spacing:.1em;margin-top:2px}.timeline-title{justify-content:space-between;gap:10px}.timeline-title h3{margin:0;font-size:18px}.timeline-title span{font-size:12px;color:var(--muted)}.timeline-copy>p{margin:7px 0;color:var(--muted);line-height:1.42}.coach-cue{background:var(--soft);padding:10px;border-radius:10px;font-size:13px;line-height:1.4;margin:10px 0}.card-hint{display:block;margin-top:10px;color:var(--blue);font-size:12px;font-weight:850}.tag-row{flex-wrap:wrap;gap:6px}.tag-row span{background:#f1f3f4;color:#4b5357;padding:5px 8px}.video-card .tag-row span:first-child{background:var(--support-accent);color:var(--support-ink)}.challenge{background:var(--soft);border-radius:20px;padding:20px;margin:16px 0}.challenge h3{margin:7px 0;line-height:1.3}.challenge p:last-of-type{color:var(--muted);margin-bottom:10px}.challenge-action{border:0;background:transparent;color:var(--region-link);padding:5px 0;font-weight:900}.feedback-card h3{margin:6px 0 13px}.rating{display:flex;flex-wrap:wrap;gap:8px}.rating button{flex:1 1 auto}.rating button,.filters button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 11px;font-weight:750}.rating button.selected,.filters button.active{background:var(--ink);color:#fff}.feedback-card textarea,.ask-box textarea{width:100%;min-height:78px;border:1px solid var(--line);border-radius:12px;padding:12px;margin-top:11px;resize:vertical}.saved{display:none;color:var(--green);font-weight:800;font-size:13px}.saved.show{display:block}
.map-card{background:#315e35;border-radius:22px;padding:23px 16px 16px;color:#fff;box-shadow:var(--shadow)}.map-label{text-align:center;font-size:10px;letter-spacing:.16em;font-weight:900;opacity:.75}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:17px 0}.field{position:relative;min-height:135px;border:2px solid rgba(255,255,255,.8);display:flex;flex-direction:column;align-items:center;justify-content:center;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 16px,rgba(0,0,0,.025) 16px 32px)}.field:after{content:"";position:absolute;width:40px;height:40px;border:1px solid rgba(255,255,255,.55);border-radius:50%}.field span{font-size:23px;font-weight:950;z-index:1}.field small{z-index:1;margin-top:30px}.field i{font-size:10px;background:#6e55df;padding:4px 6px;border-radius:6px;z-index:1;margin-top:5px}.active-field{background:#d7aa00;color:#17130b;border-color:#fff}.trainer-field{outline:5px solid rgba(126,102,241,.55)}.map-key{gap:14px;font-size:12px}.key{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:5px}.key.yours{background:#d7aa00}.key.trainer{background:#7e66f1}.logistics h3{margin-top:0}.logistics>div{display:grid;grid-template-columns:85px 1fr;gap:10px;padding:11px 0;border-top:1px solid var(--line);font-size:14px}.logistics span{color:var(--muted)}.wide{width:100%;margin-top:12px}
.filters{display:flex;gap:7px;overflow:auto;margin-bottom:13px}.thread{display:grid;grid-template-columns:42px 1fr;gap:11px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;margin:10px 0}.avatar{width:40px;height:40px;border-radius:50%;background:var(--brand);color:var(--brand-ink);display:grid;place-items:center;font-size:12px;font-weight:900}.avatar.alt{background:#dce8fa;color:#184a85}.thread-meta{display:flex;justify-content:space-between;gap:8px}.thread-meta span{color:var(--muted);font-size:11px}.thread p{line-height:1.45}.answer{background:var(--soft);padding:12px;border-radius:12px}.official-badge{background:var(--brand);color:var(--brand-ink);padding:5px 7px}.answer small{color:var(--muted)}.reply-count{font-size:12px;color:var(--blue);font-weight:800}.ask-box label{font-weight:850}.ask-actions{justify-content:space-between;gap:10px}.ask-actions label{font-size:12px;font-weight:600}.ask-actions .primary{width:auto;margin:0;padding:11px 16px}
.bottom-nav{position:fixed;z-index:30;bottom:0;left:50%;transform:translateX(-50%);width:min(700px,100%);height:78px;padding:7px 8px max(7px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.96);border-top:1px solid var(--line);backdrop-filter:blur(16px)}.bottom-nav button{border:0;background:transparent;color:#777;font-size:9px;font-weight:800;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center}.bottom-nav button span{font-size:19px}.bottom-nav button.active{color:var(--blue)}
dialog{width:min(620px,calc(100% - 22px));max-height:88vh;border:0;border-radius:22px;padding:25px;box-shadow:0 35px 90px rgba(0,0,0,.27)}dialog::backdrop{background:rgba(12,12,12,.62);backdrop-filter:blur(4px)}.dialog-close{float:right;border:0;background:#f1f1f1;width:36px;height:36px;border-radius:50%;font-size:22px}.activity-detail h2{margin:8px 0}.activity-detail h3{margin:20px 0 8px}.activity-detail p,.activity-detail li{line-height:1.5;color:#555}.diagram-wrap{position:relative;margin:12px 0}.activity-diagram{display:block;width:100%;height:auto;border-radius:14px;background:#328348}.popup-cue{display:grid;grid-template-columns:auto 1fr;gap:10px;background:var(--soft);border-left:4px solid var(--brand);padding:13px;border-radius:10px;font-size:13px;line-height:1.45}.popup-cue b{color:var(--blue)}.setup-list{display:grid;gap:8px}.setup-list>div{display:grid;grid-template-columns:8px 1fr;gap:10px;align-items:start;background:#f7f7f5;border-radius:9px;padding:10px 11px;line-height:1.42}.setup-list i{width:7px;height:7px;border-radius:50%;background:var(--brand);margin-top:7px}.coaching-list{padding-left:22px}.coaching-list li{padding:4px 7px;border-radius:7px}.coaching-list li.emphasis{font-weight:850;color:var(--ink);background:var(--soft);margin:4px 0}.video-heading{display:flex;align-items:center;justify-content:space-between;margin-top:18px}.video-heading h3{margin:0}.video-heading span{background:var(--support-accent);color:var(--support-ink);padding:6px 9px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.pdf-link{display:inline-block;margin-top:10px;color:var(--region-link);font-weight:850}.video-frame{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:14px;margin-top:10px;background:#111}
@media(min-width:720px){main{padding-top:30px}.hero-card{padding:30px}.field{min-height:190px}.bottom-nav{border:1px solid var(--line);border-bottom:0;border-radius:18px 18px 0 0}}
.coordination{background:#fff;border:1px solid #d9d2f5;border-radius:18px;margin:10px 0 16px;overflow:hidden}.coordination summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px 16px;background:#f3f0ff;cursor:pointer}.coordination summary::-webkit-details-marker{display:none}.coordination summary div{display:flex;flex-direction:column;gap:4px}.coordination summary span{background:#5d3fd3;color:#fff;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:900}.attendance,.assignments,.team-notes{padding:15px 16px;border-top:1px solid var(--line)}.coordination h3{font-size:15px;margin:0 0 11px}.coach-status{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;padding:8px 0}.mini-avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:var(--brand-ink);font-size:10px;font-weight:900}.mini-avatar.assistant{background:#dce8fa;color:#184a85}.coach-status div:nth-child(2){display:flex;flex-direction:column}.coach-status small,.assignment-row small{color:var(--muted);font-size:10px;margin-top:2px}.status-button,.assignment-row button{border:0;border-radius:999px;padding:7px 9px;background:#ececec;color:#555;font-size:10px;font-weight:850}.status-button.confirmed,.assignment-row button:not(.unassigned){background:#dff5e9;color:#17683f}.assignment-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.assignment-row div{display:flex;flex-direction:column}.assignment-row button.unassigned{background:#f0edfb;color:#5d3fd3}.coord-note{display:grid;grid-template-columns:32px 1fr;gap:9px;background:#f7f7f5;border-radius:11px;padding:11px}.coord-note p{margin:0;font-size:12px;line-height:1.45}.team-notes form{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:10px}.team-notes input{min-width:0;border:1px solid var(--line);border-radius:10px;padding:10px}.team-notes form button{border:0;border-radius:10px;background:#5d3fd3;color:#fff;padding:0 13px;font-weight:850}
.trainer-message{display:grid;grid-template-columns:38px 1fr;gap:11px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--support-accent);border-radius:18px;padding:16px;margin-top:14px}.message-icon{width:36px;height:36px;border-radius:11px;background:var(--support-soft);display:grid;place-items:center}.message-top{display:flex;justify-content:space-between;gap:8px}.message-top span{background:var(--support-accent);color:var(--support-ink);border-radius:999px;padding:4px 7px;font-size:9px;font-weight:900}.trainer-message p{margin:6px 0;line-height:1.45;color:#4f4f4f}.trainer-message small{color:var(--muted)}.next-card{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--soft);border:1px solid color-mix(in srgb,var(--brand) 35%,white);border-radius:18px;padding:17px;margin-top:14px;color:var(--ink);text-align:left;cursor:pointer}.next-card-copy{min-width:0;display:flex;flex-direction:column;gap:5px}.next-card-copy strong{font-size:17px;line-height:1.25}.next-card-copy>span:last-child{color:var(--muted);font-size:13px;line-height:1.35}.next-card-action{color:var(--region-link);font-weight:900;white-space:nowrap}.staff-compose{display:none;margin-top:14px;background:#eef4fb;border:1px solid #cad9eb;border-radius:18px;padding:17px}.staff-mode .staff-compose{display:block}.staff-compose h3{margin:5px 0}.staff-compose textarea{width:100%;min-height:78px;border:1px solid #cad9eb;border-radius:11px;padding:11px}.week-row{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px;margin:8px 0}.week-number{width:38px;height:38px;border-radius:11px;background:#f0f0ed;display:grid;place-items:center;font-weight:950}.week-row div{display:flex;flex-direction:column;gap:4px}.week-row small{color:var(--muted);line-height:1.3}.week-row em{font-style:normal;font-size:10px;font-weight:900;border-radius:999px;padding:5px 7px}.week-row.current{border-color:var(--brand);cursor:pointer}.week-row.current .week-number{background:var(--brand);color:var(--brand-ink)}.week-row.current em{background:var(--brand);color:var(--brand-ink)}.week-row.next{background:var(--soft)}.week-row.next em{background:var(--support-accent);color:var(--support-ink)}
@media print{.topbar,.bottom-nav,.action-row,.icon-button,.feedback-card,.text-button,.quick-grid,.notice{display:none!important}body{background:#fff}.screen{display:none!important}.screen[data-screen="practice"]{display:block!important}main{max-width:none;padding:0}.timeline-card,.challenge{break-inside:avoid;box-shadow:none}.timeline-card{padding:12px;margin:7px 0}.section-head{margin-bottom:10px}body.print-recap .timeline-card{display:none}body.print-recap .challenge{margin-top:40px;font-size:20px}}

/* Decorative mark on the Today's Practice card. */
.hero-card:after{content:"⚽";width:auto;height:auto;border-radius:0;background:none;right:-20px;top:-28px;font-size:142px;line-height:1;opacity:.16;transform:rotate(-14deg);filter:grayscale(1)}

.print-recap-sheet{display:none}
@media print{
  @page{size:letter portrait;margin:.42in}
  body.print-recap .section-head,body.print-recap .action-row,body.print-recap .coordination,body.print-recap .timeline-card,body.print-recap .challenge,body.print-recap .feedback-card{display:none!important}
  body.print-recap .print-recap-sheet{display:block!important;width:100%;max-width:7.65in;margin:0 auto;color:#161616;font-size:10.5pt;overflow-wrap:anywhere}
  .print-recap-sheet header{display:flex;align-items:center;gap:13px;border-bottom:4px solid var(--brand);padding-bottom:9px;margin-bottom:9px}.print-recap-sheet header img{width:54px;height:58px;object-fit:contain;flex:0 0 auto}.print-recap-sheet header p{margin:0;font-size:8.5pt;font-weight:900;letter-spacing:.08em}.print-recap-sheet header h1{font-size:21pt;line-height:1.05;margin:2px 0}.print-recap-sheet header small{color:#555}.recap-emphasis{display:grid;grid-template-columns:112px 1fr;gap:10px;background:var(--soft);border-left:5px solid var(--brand);padding:9px 11px;margin-bottom:9px}.recap-emphasis b{white-space:nowrap}.recap-block{border:1px solid #d9d9d9;border-radius:9px;padding:10px 12px;margin:8px 0;break-inside:avoid}.recap-block>span,.recap-bookend span{display:block;font-size:8pt;font-weight:900;letter-spacing:.08em;color:#555}.recap-block h2,.recap-bookend h2{font-size:15pt;line-height:1.1;margin:2px 0 7px}.recap-how,.recap-block aside,.recap-points{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px;align-items:start}.recap-how p,.recap-block aside p{margin:0;line-height:1.3}.recap-block aside{background:var(--soft);border-left:4px solid var(--brand);padding:7px 9px;margin:7px 0}.recap-points ul{margin:0;padding-left:17px}.recap-points li{margin:0 0 3px;line-height:1.25}.recap-bookend{display:grid;grid-template-columns:180px minmax(0,1fr);gap:12px;align-items:center;border:1px solid #d9d9d9;border-radius:9px;padding:9px 12px;margin:8px 0;break-inside:avoid}.recap-bookend h2{font-size:13pt;margin:2px 0 0}.recap-bookend p{margin:0;color:#444;line-height:1.3}.print-recap-sheet footer{display:grid;grid-template-columns:112px 1fr;gap:10px;border-top:3px solid var(--ink);padding-top:9px;margin-top:10px}.print-recap-sheet footer b{white-space:nowrap}
}

/* v42 - team, parent and regional communication layer */
.preview-roles{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-top:8px}.preview-roles .demo-access{border:1px solid var(--line);border-radius:10px;min-height:44px;padding:7px;font-size:12px}.topbar-actions{display:flex;align-items:center;gap:7px}.role-switch{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 11px;font-size:11px;font-weight:850}.notification-button{position:relative;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:16px}.notification-button>span{display:none}.notification-button b{position:absolute;right:-3px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--support-accent);color:var(--support-ink);display:grid;place-items:center;font-size:9px}.urgent-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 15px;padding:12px 13px;background:#fff4da;border:1px solid #efc764;border-left:5px solid #e98b18;border-radius:14px}.urgent-banner.dismissed{display:none}.urgent-banner div{display:flex;min-width:0;flex-direction:column;gap:3px}.urgent-banner span{text-transform:uppercase;letter-spacing:.08em;color:#8d4a00;font-size:9px;font-weight:900}.urgent-banner b{font-size:13px;line-height:1.35}.urgent-banner button{border:0;background:transparent;font-size:20px;color:#8d4a00}.bottom-nav{grid-template-columns:repeat(var(--nav-count,5),1fr)}

.event-hero{background:linear-gradient(145deg,#151515,#303030);color:#fff;border-radius:23px;padding:22px;box-shadow:var(--shadow)}.event-hero h3{font-size:25px;margin:8px 0}.event-hero p:last-child{color:#ddd;line-height:1.45}.event-hero .primary{margin-top:14px}.notification-setup{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:13px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:16px}.notification-setup>div{display:flex;align-items:center;gap:10px}.notification-setup .setup-icon{width:38px;height:38px;display:grid;place-items:center;background:var(--soft);border-radius:11px}.notification-setup b{font-size:13px}.notification-setup p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.35}.notification-setup button,.push-health button{flex:0 0 auto;border:0;border-radius:10px;background:var(--support-accent);color:var(--support-ink);padding:9px 10px;font-size:10px;font-weight:900}.notification-setup.enabled{border-color:#a8ddc0;background:#f5fff9}.notification-setup button:disabled,.push-health button:disabled{background:#dff5e9;color:#17683f}.parent-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px}.parent-quick-grid button{min-height:95px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:15px;border:1px solid var(--line);border-radius:16px;background:#fff;text-align:left}.parent-quick-grid b{font-size:14px}.parent-quick-grid span{color:var(--region-link);font-size:11px;font-weight:800}.parent-quick-grid i{display:inline-grid;place-items:center;min-width:18px;height:18px;border-radius:999px;background:var(--support-accent);color:var(--support-ink);font-style:normal}.team-note-card{margin-top:13px;padding:18px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:17px}.team-note-card h3{margin:6px 0}.team-note-card p:not(.eyebrow){color:var(--muted);line-height:1.45}.team-note-card small{color:var(--muted)}

.event-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:12px;align-items:center;padding:16px;background:#fff;border:1px solid var(--line);border-radius:18px}.event-date{width:54px;height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--soft);border-radius:12px}.event-date b{font-size:23px}.event-date span{font-size:9px;font-weight:900}.event-copy small{color:var(--region-link);font-weight:850}.event-copy h3{margin:3px 0;font-size:16px}.event-copy p{margin:0;color:var(--muted);font-size:11px}.map-action,.signup-row button{border:0;border-radius:9px;background:#f0f0ed;padding:8px 9px;font-size:10px;font-weight:850}.team-module,.reach-card,.notification-composer,.recent-sends{margin-top:13px;padding:17px;background:#fff;border:1px solid var(--line);border-radius:18px}.module-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.module-head h3{margin:4px 0}.module-head>span{color:var(--muted);font-size:10px}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:13px}.segmented button{border:1px solid var(--line);background:#fff;border-radius:11px;padding:11px;font-weight:850}.segmented button.selected{background:var(--ink);color:#fff;border-color:var(--ink)}.module-status{color:var(--muted);font-size:11px;margin-bottom:0}.signup-row,.schedule-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:12px 0;border-top:1px solid var(--line)}.signup-row:first-of-type{margin-top:8px}.signup-row>div{display:flex;flex-direction:column;gap:3px}.signup-row small,.schedule-row small{color:var(--muted)}.signup-row .claimed{color:var(--green);font-size:10px;font-weight:850}.signup-row button.selected{background:#dff5e9;color:#17683f}.attendance-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.attendance-summary>div{display:flex;flex-direction:column;align-items:center;padding:12px;background:#f7f7f5;border-radius:11px}.attendance-summary b{font-size:22px}.attendance-summary span{color:var(--muted);font-size:10px}.text-button{border:0;background:transparent;color:var(--region-link);font-size:11px;font-weight:900}.schedule-row{grid-template-columns:60px 1fr}.schedule-row>span{font-size:10px;font-weight:900;color:var(--region-link)}.schedule-row div{display:flex;flex-direction:column;gap:3px}body[data-role="parent"] .coach-manager-only{display:none}body[data-role="division"] .region-audience{display:none}
.practice-rsvp-module{border-left:5px solid var(--brand)}.player-attendance{margin:10px 0 14px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:17px;overflow:hidden}.player-attendance summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px;cursor:pointer}.player-attendance summary::-webkit-details-marker{display:none}.player-attendance summary>div{display:flex;flex-direction:column;gap:4px}.player-attendance summary small{color:var(--muted);font-size:10px}.player-attendance summary>span{color:var(--region-link);font-size:10px;font-weight:900}.attendance-roster{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 14px 14px}.attendance-roster section{padding:10px;background:#f7f7f5;border-radius:10px}.attendance-roster section>div{display:flex;justify-content:space-between;gap:8px}.attendance-roster section>div span{width:20px;height:20px;display:grid;place-items:center;background:#fff;border-radius:50%;font-size:9px;font-weight:900}.attendance-roster p{margin:6px 0 0;color:var(--muted);font-size:10px;line-height:1.4}
.home-rsvp-card{margin-top:13px;padding:17px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:18px}.home-rsvp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.home-rsvp-head h3{margin:4px 0}.home-rsvp-head>button{border:0;background:transparent;color:var(--region-link);font-size:10px;font-weight:900}.home-rsvp-event{display:grid;grid-template-columns:minmax(90px,1fr) minmax(180px,1.3fr);align-items:center;gap:10px;padding:12px 0;border-top:1px solid var(--line)}.home-rsvp-event:first-of-type{margin-top:8px}.home-rsvp-event>div:first-child{display:flex;flex-direction:column;gap:3px}.home-rsvp-event small{color:var(--muted);font-size:10px}.mini-segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.mini-segmented button{border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px 3px;font-size:10px;font-weight:850}.mini-segmented button.selected{background:var(--ink);border-color:var(--ink);color:#fff}.compact-event-hero{margin-top:13px}
.team-tabs{display:flex;gap:5px;overflow-x:auto;margin:-4px 0 13px;padding-bottom:3px;scrollbar-width:none}.team-tabs::-webkit-scrollbar{display:none}.team-tabs button{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:#fff;padding:9px 11px;color:var(--muted);font-size:10px;font-weight:850}.team-tabs button.active{background:var(--ink);border-color:var(--ink);color:#fff}.team-subpanel{display:none}.team-subpanel.active{display:block}.team-roster-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;background:var(--soft);border:1px solid color-mix(in srgb,var(--brand) 38%,white);border-radius:15px}.team-roster-head>div{display:flex;align-items:center;gap:10px}.team-roster-head>div>span{font-size:24px}.team-roster-head p{margin:3px 0 0;color:var(--muted);font-size:10px}.team-roster-head button{border:0;background:#fff;border-radius:9px;padding:8px;font-size:9px;font-weight:900}.roster-section{margin-top:18px}.roster-section>.eyebrow{padding:0 7px 7px}.roster-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 7px;background:#fff;border-bottom:1px solid var(--line)}.roster-row:first-of-type{border-radius:14px 14px 0 0}.roster-row:last-of-type{border-radius:0 0 14px 14px;border-bottom:0}.roster-avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#e6e6e3;color:#777;font-size:11px;font-weight:900}.brand-avatar{background:var(--brand);color:var(--brand-ink)}.blue-avatar{background:#dce8fa;color:#184a85}.roster-row>div{display:flex;flex-direction:column;gap:3px}.roster-row small{color:var(--muted)}.roster-row em{font-size:25px;color:#aaa;font-style:normal}.muted-row{opacity:.75}.channel-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px;background:#fff;border-bottom:1px solid var(--line)}.channel-row:first-child{border-radius:15px 15px 0 0}.channel-row:nth-last-child(2){border-radius:0 0 15px 15px;border-bottom:0}.channel-icon{width:42px;height:42px;display:grid;place-items:center;background:#f2f2ef;border-radius:50%;font-size:18px}.channel-row>div{display:flex;flex-direction:column;gap:3px}.channel-row p{margin:0;color:var(--muted);font-size:11px}.channel-row em{min-width:20px;height:20px;display:grid;place-items:center;background:var(--support-accent);color:var(--support-ink);border-radius:999px;font-size:9px;font-style:normal;font-weight:900}.chat-preview{margin-top:13px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:16px}.chat-preview>div{display:flex;align-items:center;gap:10px}.chat-preview>div>div{display:flex;flex-direction:column;gap:3px}.chat-preview small{color:var(--muted)}.chat-preview p{color:var(--muted);line-height:1.45}.schedule-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:11px}.schedule-toolbar>div{display:flex;gap:6px}.schedule-toolbar button{border:1px solid var(--line);border-radius:999px;background:#fff;padding:8px 10px;font-size:10px;font-weight:850}.schedule-toolbar button.active{background:var(--ink);color:#fff}.schedule-event{display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center;margin:9px 0;padding:15px;background:#fff;border:1px solid var(--line);border-radius:16px}.schedule-event small{color:var(--region-link);font-weight:900}.schedule-event h3{margin:3px 0}.schedule-event p{margin:0 0 5px;color:var(--muted);font-size:11px}.schedule-event>div:last-child>b{color:var(--green);font-size:10px}.media-feature{padding:19px;background:var(--ink);color:#fff;border-radius:19px}.media-feature h3{font-size:22px;margin:6px 0}.media-feature p:not(.eyebrow){color:#ccc;line-height:1.45}.media-feature .primary{margin-top:8px}.media-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.media-grid article{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:14px}.media-grid article>b{display:block;padding:9px;font-size:10px}.media-add{cursor:pointer}.media-add>div{aspect-ratio:1;display:grid;place-items:center;background:var(--soft);color:var(--region-link);font-size:31px}.parent-only{display:none}body[data-role="parent"] .parent-only{display:grid}
@media(max-width:420px){.home-rsvp-event{grid-template-columns:1fr}.mini-segmented button{padding:9px 3px}}

.challenge-feature{position:relative;overflow:hidden;padding:23px;background:var(--ink);color:#fff;border-radius:22px}.challenge-number{position:absolute;right:18px;top:19px;font-size:12px;line-height:1;color:#fff;opacity:.3;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.challenge-feature h3{position:relative;font-size:25px;line-height:1.14;margin:11px 0}.challenge-feature>p:not(.eyebrow):not(.privacy-copy){position:relative;color:#ddd;line-height:1.5}.challenge-actions{position:relative;display:grid;gap:8px}.challenge-actions .primary{margin-top:8px}.challenge-actions .secondary{background:transparent;color:#fff;border-color:#ffffff55}.privacy-copy{position:relative;color:#aaa;font-size:10px;line-height:1.45;margin-bottom:0}.upload-progress{display:none;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding:15px;background:#f2fff7;border:1px solid #a8ddc0;border-radius:16px}.upload-progress.show{display:flex}.upload-progress>div{display:flex;align-items:center;gap:10px}.upload-progress>div>span{width:36px;height:36px;display:grid;place-items:center;background:#218c5a;color:#fff;border-radius:50%;font-weight:900}.upload-progress b{font-size:13px}.upload-progress p{margin:3px 0 0;color:#47715a;font-size:10px}.upload-progress button{border:0;background:transparent;color:#17683f;font-size:10px;font-weight:900}.challenge-feed-head{margin-top:24px}.challenge-feed{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.challenge-feed article{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:14px}.video-placeholder{aspect-ratio:1;display:grid;place-items:center;background:linear-gradient(145deg,#335f38,#74ad6d);color:#fff;font-size:22px}.video-placeholder.alt{background:linear-gradient(145deg,#d4a800,#f9d94b);color:#211b02}.video-placeholder.third{background:linear-gradient(145deg,#3d5a80,#98c1d9)}.challenge-feed article>div:nth-child(2){display:flex;flex-direction:column;gap:2px;padding:9px}.challenge-feed b{font-size:11px}.challenge-feed span{color:var(--muted);font-size:9px}

.push-health{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:16px}.push-health>div{display:flex;align-items:center;gap:10px}.push-health>div>span{width:36px;height:36px;display:grid;place-items:center;background:var(--soft);border-radius:10px}.push-health b{font-size:12px}.push-health p{margin:3px 0 0;color:var(--muted);font-size:10px}.inbox-list{display:grid;gap:9px;margin-top:13px}.inbox-item{display:grid;grid-template-columns:30px 1fr;gap:10px;padding:15px;background:#fff;border:1px solid var(--line);border-radius:16px;cursor:pointer}.inbox-item.unread{border-left:5px solid var(--support-accent)}.inbox-item.urgent{background:#fffaf0}.notification-symbol{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#efefed;color:#888;font-size:10px;font-weight:900}.inbox-item.unread .notification-symbol{background:var(--support-accent);color:var(--support-ink)}.inbox-item.urgent .notification-symbol{background:#e98b18;color:#fff}.notification-meta{display:flex;justify-content:space-between;gap:8px}.notification-meta b{color:var(--region-link);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.notification-meta span{color:var(--muted);font-size:9px}.inbox-item h3{margin:5px 0 3px;font-size:15px}.inbox-item p{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.inbox-item small{display:block;margin-top:7px;color:var(--muted);font-size:9px}

.reach-card div{display:flex;align-items:baseline;gap:8px}.reach-card b{font-size:30px}.reach-card span{color:var(--muted);font-size:12px}.reach-card meter{display:block;width:100%;height:12px;margin:10px 0}.reach-card small{color:var(--muted)}.notification-composer{display:grid;gap:8px}.notification-composer>label{margin-top:8px;font-size:11px;font-weight:900}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.audience-grid button{border:1px solid var(--line);background:#fff;border-radius:11px;padding:11px;text-align:left;font-size:11px;font-weight:800}.audience-grid button.selected{background:var(--ink);color:#fff;border-color:var(--ink)}.notification-composer input:not([type="checkbox"]),.notification-composer textarea,.notification-composer select{width:100%;border:1px solid var(--line);border-radius:11px;background:#fff;padding:12px}.notification-composer textarea{min-height:92px;resize:vertical}.urgent-toggle{display:flex;align-items:flex-start;gap:8px;line-height:1.35}.composer-preview{display:flex;flex-direction:column;gap:4px;margin-top:9px;padding:14px;background:#eef0f3;border-radius:14px}.composer-preview small{font-size:8px;color:#777;font-weight:900}.composer-preview b{font-size:14px}.composer-preview span{color:#555;font-size:11px;line-height:1.4}.notification-composer .primary:disabled{opacity:.4}.recent-sends #recentSends>div{display:flex;flex-direction:column;gap:3px;padding:11px 0;border-top:1px solid var(--line)}.recent-sends small{color:var(--muted)}.confirm-send h2{margin:6px 0 15px}.confirm-audience{display:flex;justify-content:space-between;gap:10px;padding:11px;background:#f2f2ef;border-radius:10px}.confirm-audience span{color:var(--muted);font-size:11px}.confirm-message{margin-top:10px;padding:15px;border:1px solid var(--line);border-left:5px solid var(--support-accent);border-radius:12px}.confirm-message small{color:var(--region-link);font-weight:900}.confirm-message h3{margin:5px 0}.confirm-message p{margin:0;color:var(--muted);line-height:1.45}.urgent-warning{color:#a35400;font-size:11px;font-weight:800}.role-picker h2{margin:6px 0}.role-picker>p{color:var(--muted);line-height:1.45}.role-picker>div{display:grid;gap:8px}.role-picker button{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:12px;background:#fff;padding:13px;text-align:left}.role-picker button span{color:var(--muted);font-size:10px}

@media(max-width:520px){.topbar{height:72px;padding-left:12px;padding-right:12px}.region-logo{width:43px;height:48px}.brand-lockup{gap:7px}.brand-lockup h1{font-size:16px}.brand-lockup .eyebrow{font-size:8px}.topbar-actions{gap:4px}.role-switch{max-width:65px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:8px 7px;font-size:9px}.region-switch{padding:8px 8px;font-size:10px}.notification-setup{align-items:flex-start}.notification-setup>div{align-items:flex-start}.event-card{grid-template-columns:54px minmax(0,1fr)}.event-card .map-action{display:none}.audience-grid{grid-template-columns:1fr}.challenge-feed{gap:6px}.preview-roles{grid-template-columns:1fr}}

/* Multi-team context, unified inbox and private challenge reactions */
.team-context-bar{position:sticky;top:72px;z-index:18;padding:8px max(12px,calc((100% - 760px)/2));background:#f6f8fb;border-bottom:1px solid var(--line)}
.team-context-bar[hidden]{display:none!important}
.team-context-bar>button{--team-accent:var(--accent);width:100%;display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;border:1px solid #d9e0e9;border-radius:14px;background:#fff;text-align:left;box-shadow:0 3px 12px #1522380a}
.team-context-dot{width:9px;height:34px;border-radius:8px;background:var(--team-accent)}
.team-context-bar button>span:nth-child(2){display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:7px}
.team-context-bar small{grid-column:1/-1;color:var(--muted);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.team-context-bar b{font-size:13px;color:var(--ink)}
.team-context-bar em{font-size:9px;color:var(--muted);font-style:normal;font-weight:800}
.team-context-bar strong{color:var(--accent-dark);font-size:10px}
.team-context-dialog article{max-width:500px}.team-context-help{color:var(--muted);font-size:12px;line-height:1.5}
#teamContextOptions{display:grid;gap:9px;margin-top:17px}
#teamContextOptions>button{--team-accent:var(--accent);display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:10px;width:100%;padding:11px;border:1px solid var(--line);border-radius:15px;background:#fff;text-align:left}
#teamContextOptions>button.selected{border-color:var(--team-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--team-accent) 18%,transparent)}
.team-avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--team-accent) 15%,white);color:var(--team-accent);font-weight:950}
#teamContextOptions button>span:nth-child(2){display:flex;flex-direction:column;gap:3px}#teamContextOptions b{font-size:12px}#teamContextOptions small{color:var(--muted);font-size:9px}
#teamContextOptions em{padding:4px 7px;border-radius:999px;background:#fff2d5;color:#8a5b00;font-size:8px;font-style:normal;font-weight:900}#teamContextOptions strong{color:var(--team-accent)}
.inbox-filters{display:flex;gap:7px;overflow:auto;margin:0 0 13px;padding-bottom:2px;scrollbar-width:none}.inbox-filters::-webkit-scrollbar{display:none}
.inbox-filters button{flex:0 0 auto;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:10px;font-weight:900}.inbox-filters button.active{background:var(--ink);border-color:var(--ink);color:#fff}
.notification-context{display:inline-flex;margin-bottom:5px;padding:3px 7px;border-radius:999px;background:#eef3fa;color:#36526f;font-size:8px;font-weight:950;letter-spacing:.05em}
.inbox-item{cursor:pointer}.inbox-item:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 38%,transparent);outline-offset:2px}.inbox-empty{padding:28px;text-align:center;color:var(--muted);font-weight:800}
.challenge-reactions{display:block;padding:0 8px 9px;border-top:1px solid var(--line)}.challenge-reactions>small{display:block;margin:7px 0 5px;color:var(--muted);font-size:8px;font-weight:900}
.challenge-reactions>div{display:flex;gap:3px}.challenge-reactions button{min-width:0;flex:1;display:flex;align-items:center;justify-content:center;gap:2px;padding:5px 2px;border:1px solid transparent;border-radius:9px;background:#f5f7fa;font-size:13px}.challenge-reactions button.selected{background:#fff4d7;border-color:#efc553;transform:scale(1.04)}.challenge-reactions button span{font-size:8px;color:#765100}
@media(max-width:520px){.team-context-bar{top:72px}.team-context-bar>button{padding:8px 10px}.team-context-bar b{font-size:12px}.team-context-bar em{display:none}#teamContextOptions>button{grid-template-columns:38px minmax(0,1fr) auto}.team-avatar{width:36px;height:36px}#teamContextOptions em{display:none}.challenge-feed{grid-template-columns:1fr}.challenge-feed article{display:grid;grid-template-columns:92px minmax(0,1fr)}.challenge-feed .video-placeholder{grid-row:1/3;aspect-ratio:auto}.challenge-reactions{grid-column:2}.challenge-reactions button{font-size:15px}}

.parent-todo,.parent-commitments{margin-top:13px;padding:17px;background:#fff;border:1px solid var(--line);border-radius:18px}.todo-row,.commitment-row{width:100%;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;padding:13px 0;border:0;border-top:1px solid var(--line);background:transparent;text-align:left}.todo-row:first-child{margin-top:8px}.todo-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:var(--soft);font-weight:900}.todo-row>span:nth-child(2),.commitment-row>span:nth-child(2){display:flex;flex-direction:column;gap:3px}.todo-row small,.commitment-row small{color:var(--muted)}.todo-row em,.commitment-row em{color:var(--region-link);font-style:normal;font-weight:900}.todo-complete{display:none;margin:12px 0 0;color:var(--green);font-weight:850}.todo-complete.show{display:block}.parent-commitments[hidden]{display:none}.commitment-date{width:42px;height:45px;display:flex!important;align-items:center;justify-content:center;gap:0!important;border-radius:10px;background:var(--soft)}.commitment-date b{font-size:18px}.commitment-date small{font-size:8px;font-weight:900;color:var(--ink)}.notification-welcome{text-align:center;padding:10px 4px}.welcome-bell{width:70px;height:70px;display:grid;place-items:center;margin:0 auto 16px;border-radius:22px;background:var(--soft);font-size:32px}.notification-welcome h2{margin:7px 0 10px}.notification-welcome>p:not(.eyebrow){color:var(--muted);line-height:1.5;margin-bottom:22px}.notification-welcome .secondary{margin-top:9px}
.compact-event-hero{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.compact-event-hero em{font-size:28px;font-style:normal}.parent-coming-up .schedule-row strong{margin-top:2px;color:var(--region-link);font-size:10px}.section-head h2 small{font-size:13px;color:var(--muted);font-weight:700}.event-field-map{margin:15px 0;padding:12px;background:#f4f7f3;border-radius:15px}.field-map-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:9px}.field-map-head>div{display:flex;flex-direction:column;gap:2px}.field-map-head span,.field-map-head small{color:var(--muted);font-size:9px}.mini-field{position:relative;height:170px;overflow:hidden;border:3px solid #fff;border-radius:10px;background:#438d50;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}.mini-field:before{content:"";position:absolute;inset:12px;border:2px solid rgba(255,255,255,.75)}.mini-field .center-line{position:absolute;left:50%;top:12px;bottom:12px;border-left:2px solid rgba(255,255,255,.75)}.mini-field .center-circle{position:absolute;left:50%;top:50%;width:42px;height:42px;border:2px solid rgba(255,255,255,.75);border-radius:50%;transform:translate(-50%,-50%)}.field-label{position:absolute;z-index:2;padding:5px 7px;border-radius:7px;background:rgba(255,255,255,.78);font-size:9px;font-weight:900}.field-label.top{left:12px;top:12px}.field-label.left{left:12px;bottom:12px}.field-label.right{right:12px;top:12px}.field-label.active{right:12px;bottom:12px;background:var(--brand);color:var(--brand-ink);outline:3px solid #fff}.mini-field>b{position:absolute;z-index:2;right:12px;bottom:43px;padding:5px 7px;border-radius:6px;background:#fff;color:#111;font-size:8px}.roster-row:not(.muted-row){cursor:pointer}.contact-detail>p{color:var(--muted)}.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:20px 0}.contact-actions a{padding:13px;border-radius:11px;background:var(--support-accent);color:var(--support-ink);text-align:center;text-decoration:none;font-weight:900}.contact-detail>small{display:block;color:var(--muted);line-height:1.45}

.season-resources{margin:0 0 12px;padding:13px;border:1px solid var(--line);border-radius:17px;background:var(--card);box-shadow:0 5px 18px rgba(34,28,15,.04)}
.season-resource-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.season-resource-actions>a,.season-resource-actions>button{min-width:0;min-height:76px;display:grid;grid-template-columns:32px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff;color:var(--ink);text-align:left;text-decoration:none}.season-resource-actions>button{font:inherit;cursor:pointer}.season-resource-actions .resource-icon{grid-row:1/3;width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:var(--soft);color:var(--blue)}.season-resource-actions .resource-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.season-resource-actions b{align-self:end;font-size:12px;line-height:1.15}.season-resource-actions em{align-self:start;color:var(--blue);font-size:10px;font-style:normal;font-weight:900}
.resource-link{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}
.resource-link span{display:flex;flex-direction:column;gap:3px}
.resource-link small{color:var(--muted)}
.resource-link em{font-style:normal;font-size:.76rem;font-weight:800;color:var(--accent-dark);white-space:nowrap}

.objectives-reminder{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:12px;padding:13px 14px;border:1px solid color-mix(in srgb,var(--brand) 55%,white);border-left:5px solid var(--brand);border-radius:15px;background:#fff;color:var(--ink);text-align:left;box-shadow:0 5px 18px rgba(34,28,15,.04)}.objectives-reminder>span:first-child{display:flex;min-width:0;flex-direction:column;gap:3px}.objectives-reminder small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.objectives-reminder b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.objectives-reminder em{font-style:normal;color:var(--region-link);font-size:11px;font-weight:900;white-space:nowrap}.objectives-detail h2{margin:7px 0 4px}.objectives-detail h3{margin:0 0 10px;color:var(--region-link);font-size:15px}.objectives-detail ul{padding-left:21px}.objectives-detail li{margin:9px 0;line-height:1.4}.objective-links{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:15px;padding-top:13px;border-top:1px solid var(--line)}.objective-links a{color:var(--region-link);font-size:12px;font-weight:900;text-decoration:none}
.season-objectives-detail h2{margin:7px 0 5px}.season-objectives-detail>p:last-of-type{margin:0;color:var(--muted)}.season-objective-options{display:grid;gap:9px;margin-top:18px}.season-objective-options button{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:13px;background:#fff;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.season-objective-options span{display:flex;flex-direction:column;gap:3px}.season-objective-options small{color:var(--muted)}.season-objective-options em{color:var(--blue);font-size:11px;font-style:normal;font-weight:900;white-space:nowrap}

.next-preview-detail h2,.home-skills-detail h2{margin:8px 0 15px;line-height:1.15}.preview-focus,.preview-home,.challenge-coach-note{display:grid;grid-template-columns:105px minmax(0,1fr);gap:10px;background:var(--soft);border-left:5px solid var(--brand);border-radius:11px;padding:12px 13px;line-height:1.4}.next-preview-detail h3{margin:20px 0 8px}.next-preview-detail ol{margin:0;padding-left:24px}.next-preview-detail li{padding:5px 0;line-height:1.35}.preview-home{margin-top:15px}.home-skills-detail>p{color:var(--muted);line-height:1.5}.home-skills-detail .primary{margin-top:10px}.home-skills-detail .saved{margin-bottom:0}.challenge-coach-note{grid-template-columns:75px minmax(0,1fr)}
.trainer-field{outline-color:color-mix(in srgb,var(--support-accent) 55%,transparent)}.field i,.key.trainer,.coordination summary span,.team-notes form button{background:var(--support-accent);color:var(--support-ink)}.coordination{border-color:color-mix(in srgb,var(--support-accent) 25%,white)}.coordination summary{background:var(--support-soft)}.assignment-row button.unassigned{background:var(--support-soft);color:var(--support-accent)}
@media(max-width:420px){.next-card{align-items:flex-start}.next-card-action{font-size:11px}.preview-focus,.preview-home,.challenge-coach-note{grid-template-columns:1fr;gap:4px}}

@media print{
  body.print-recap .welcome,body.print-recap .hero-card,body.print-recap .trainer-message,body.print-recap .next-card,body.print-recap .quick-grid,body.print-recap .notice,body.print-recap .staff-compose{display:none!important}
  body.print-recap .print-recap-sheet{max-width:7.4in;font-size:10pt;overflow:hidden}
  .recap-bookend{display:block}
  .recap-bookend h2{margin-bottom:4px}
}

/* v46 overlapping volunteer permissions, prominent attendance, and reminders */
body[data-role="manager"] .parent-capability{display:none}
.player-attendance summary b{font-size:22px;line-height:1.15}
.attendance-roster section>div span{width:30px;height:30px;font-size:14px}
.reminder-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.reminder-row:first-of-type{margin-top:8px}.reminder-row>div{display:flex;flex-direction:column;gap:3px}.reminder-row small{color:var(--muted)}
.reminder-row button{min-width:48px;border:0;border-radius:999px;padding:8px;background:#dff5e9;color:#17683f;font-size:10px;font-weight:900}.reminder-row button.off{background:#ededeb;color:#777}.reminder-state{color:#17683f!important;font-weight:900}.skills-objectives{margin:0 0 14px}

/* v47 parent navigation, RSVP status colors, and working chat */
.bottom-nav button span{width:23px;height:23px}.bottom-nav button svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.backup-families{margin-top:13px;border-top:1px solid var(--line);padding-top:10px}.backup-families summary{cursor:pointer;color:var(--region-link);font-weight:900}.backup-families div{display:grid;gap:0;margin:9px 0}.backup-families p{margin:0;padding:7px 0;border-bottom:1px solid var(--line);font-size:11px}.backup-email{display:block;text-align:center;text-decoration:none;margin-top:10px}.screen-intro{margin:-4px 0 14px;color:var(--muted);line-height:1.45}.division-team-list,.division-game-list,.game-card-review{display:grid;gap:10px}.division-team-list article,.division-game-list article,.game-card-review article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px;background:#fff;border:1px solid var(--line);border-radius:16px}.division-team-list article>div:first-child,.division-game-list article>div,.game-card-review article>div{display:flex;min-width:0;flex-direction:column;gap:4px}.division-team-list span,.division-team-list small,.division-game-list span,.division-game-list small,.game-card-review span{color:var(--muted);font-size:10px}.division-team-list article>div:last-child{display:flex;gap:5px}.division-team-list a{padding:7px;border-radius:8px;background:var(--soft);color:var(--region-link);font-size:9px;font-weight:900;text-decoration:none}.division-game-list time{min-width:64px;color:var(--region-link);font-size:9px;font-weight:900}.game-card-review p{margin:4px 0 0;color:var(--muted);font-size:11px}.game-card-review button{white-space:nowrap}@media(max-width:520px){.division-team-list article,.game-card-review article{align-items:flex-start;flex-direction:column}.division-team-list article>div:last-child{width:100%}.division-team-list a{flex:1;text-align:center}}
body[data-role="parent"] #teamTabs{display:none}body[data-role="parent"] [data-screen="team"]>.section-head{margin-bottom:12px}
.segmented button[data-practice-rsvp="Yes"].selected,.mini-segmented button[data-practice-rsvp="Yes"].selected,.segmented button[data-rsvp="Yes"].selected,.mini-segmented button[data-rsvp="Yes"].selected,.future-rsvp button[data-future-rsvp="Yes"].selected{background:#218c5a;border-color:#218c5a;color:#fff}
.segmented button[data-practice-rsvp="No"].selected,.mini-segmented button[data-practice-rsvp="No"].selected,.segmented button[data-rsvp="No"].selected,.mini-segmented button[data-rsvp="No"].selected,.future-rsvp button[data-future-rsvp="No"].selected{background:#bd3131;border-color:#bd3131;color:#fff}
.segmented button[data-practice-rsvp="Maybe"].selected,.mini-segmented button[data-practice-rsvp="Maybe"].selected,.segmented button[data-rsvp="Maybe"].selected,.mini-segmented button[data-rsvp="Maybe"].selected,.future-rsvp button[data-future-rsvp="Maybe"].selected{background:#747474;border-color:#747474;color:#fff}
.event-rsvp-totals .yes{border:1px solid #77c79d;background:#ebfaf2}.event-rsvp-totals .no{border:1px solid #e3a0a0;background:#fff1f1}
.compact-event-hero{padding:14px 16px}.compact-event-hero h3{margin:4px 0}.compact-event-hero p{margin:3px 0}.channel-row{cursor:pointer}.chat-thread p{margin:8px 0;padding:9px 11px;border-radius:10px;background:var(--soft);font-size:12px}.chat-compose{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:12px}.chat-compose input{min-width:0;border:1px solid var(--line);border-radius:10px;padding:11px}.chat-compose button{border:0;border-radius:10px;background:var(--support-accent);color:var(--support-ink);padding:0 14px;font-weight:900}

/* v48 coach attendance status colors */
.attendance-roster .attendance-yes{background:#e9f8f0;border:1px solid #8fd0ac}.attendance-roster .attendance-yes b,.attendance-roster .attendance-yes span{color:#17683f}
.attendance-roster .attendance-no{background:#fff0f0;border:1px solid #e7a2a2}.attendance-roster .attendance-no b,.attendance-roster .attendance-no span{color:#a72828}
.attendance-roster .attendance-maybe{background:#fff3e4;border:1px solid #e8b878}.attendance-roster .attendance-maybe b,.attendance-roster .attendance-maybe span{color:#a45a00}
.attendance-roster .attendance-waiting{background:#f1f1ef;border:1px solid #d2d2cf}.attendance-roster .attendance-waiting b,.attendance-roster .attendance-waiting span{color:#666}

.parent-coming-up .rsvp-answer{font-weight:950}.parent-coming-up .rsvp-answer.yes{color:#17834e}.parent-coming-up .rsvp-answer.no{color:#b52a2a}.parent-coming-up .rsvp-answer.maybe{color:#a45a00}.parent-coming-up .rsvp-answer.not-replied{color:#222}.skills-task-list{position:relative;margin:10px 0;padding-left:21px}.skills-task-list li{margin:7px 0;line-height:1.35}.challenge .skills-task-list{font-size:18px;font-weight:900}.challenge-feature .skills-task-list{font-size:21px;font-weight:900}.home-skills-detail .skills-task-list{font-size:17px;font-weight:850}
.bottom-nav{background:#fff;backdrop-filter:none;box-shadow:0 -6px 20px rgba(0,0,0,.06)}.parent-coming-up .schedule-row strong{color:var(--ink)}.attendance-roster section p{font-size:14px;line-height:1.45}.compact-challenge{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0;padding:16px 17px;border:1px solid color-mix(in srgb,var(--brand) 42%,white);border-radius:17px;background:var(--soft);text-align:left}.compact-challenge span{display:flex;flex-direction:column;gap:3px}.compact-challenge small{color:var(--muted);font-weight:850}.compact-challenge em{color:var(--region-link);font-style:normal;font-weight:900}.coach-tool-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:-4px 0 13px}.coach-tool-row button{min-height:48px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:7px;font-size:10px;font-weight:850}.favorite-activities{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px;padding:12px;border:1px solid var(--line);border-radius:12px}.favorite-activities legend{padding:0 4px;font-size:11px;font-weight:850}.favorite-activities label{font-size:10px}.feedback-confirmation.show{padding:9px 10px;border-radius:9px;background:#e8f8ef;color:#17683f}.support-grid-map{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:14px 0;padding:9px;background:#3f884a;border-radius:13px}.support-grid-map span{min-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid #fff;color:#fff;border-radius:7px}.support-grid-map span.active{background:var(--brand);color:var(--brand-ink);outline:3px solid #fff}.support-grid-map small{font-size:8px}.coach-support-detail>p{color:var(--muted);line-height:1.5}.event-attendance-details{margin-top:12px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.event-attendance-details summary{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:center;padding:13px;cursor:pointer}.event-attendance-details summary>span{font-weight:850}.event-attendance-details summary .event-rsvp-totals{justify-self:end}.event-attendance-details summary em{grid-column:1/3;color:var(--region-link);font-size:10px;font-style:normal;font-weight:900}.event-attendance-details>div{padding:0 13px 10px}.event-attendance-details section{padding:9px 0;border-top:1px solid var(--line)}.event-attendance-details section p{margin:4px 0;color:var(--muted);font-size:13px;line-height:1.4}.event-attendance-details section.yes b{color:#17834e}.event-attendance-details section.no b{color:#b52a2a}.event-attendance-details section.maybe b{color:#a45a00}.practice-topic{display:block;margin-bottom:4px;color:var(--ink);font-size:12px;text-transform:uppercase}.recap-bookend small{display:block;margin-top:3px;color:var(--region-link);font-size:8px;font-weight:900}
@media(max-width:520px){body{padding-top:72px}.coach-tool-row{grid-template-columns:1fr 1fr}.coach-tool-row button:last-child{grid-column:1/3}}

/* v56 readability and coach-tool refinements */
.diagram-wrap{padding:8px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:visible}.activity-diagram{object-fit:contain;border-radius:0}.favorite-activities label{font-size:15px;font-weight:750;line-height:1.35;padding:6px 3px}.question-search{display:grid;gap:6px;margin:0 0 12px;font-size:12px;font-weight:850}.question-search input,.tag-field select{width:100%;border:1px solid var(--line);border-radius:11px;padding:11px;background:#fff}.reply-thread{display:block}.reply-thread[hidden],[data-question-thread][hidden]{display:none!important}.reply-thread summary{display:grid;grid-template-columns:42px 1fr;gap:11px;cursor:pointer;list-style:none}.reply-thread summary::-webkit-details-marker{display:none}.coach-replies{margin:12px 0 0 53px;padding:10px 12px;background:var(--soft);border-radius:11px}.coach-replies p{margin:7px 0}.tag-field{display:grid;gap:6px;margin:10px 0 12px;font-size:12px}

/* v92 U8 review: show the weekly arrival emphasis in both quick and detail views. */
.practice-emphasis{display:grid;gap:4px;margin:14px 0;padding:13px 14px;border:1px solid color-mix(in srgb,var(--brand) 38%,white);border-left:5px solid var(--brand);border-radius:12px;background:var(--soft)}
.practice-emphasis b{color:var(--region-link);font-size:10px;letter-spacing:.05em;text-transform:uppercase}.practice-emphasis span{color:var(--ink);font-weight:850}.practice-emphasis ul{display:grid;gap:5px;margin:6px 0 0;padding-left:19px}.practice-emphasis li{color:#555}.practice-emphasis.compact{margin:10px 0;padding:10px 11px}.practice-emphasis.compact span{font-size:12px}
.activity-more{margin:10px 0 0;border:1px solid var(--line);border-radius:11px;background:#fff;overflow:hidden}.activity-more summary{padding:11px 13px;color:var(--region-link);font-size:12px;font-weight:900;cursor:pointer}.activity-more[open] summary{border-bottom:1px solid var(--line)}.activity-more .setup-list{padding:10px}.activity-more .setup-list>div{background:var(--soft)}
.compact-challenge{color:var(--ink)}.compact-challenge em{color:var(--ink)}
.home-rsvp-event>div:first-child b{font-size:15px}.home-rsvp-event small{font-size:13px;line-height:1.4;color:#4f4f4f}
.practice-topic{display:inline;margin:0;color:var(--ink);font-size:inherit;font-weight:950;text-transform:uppercase}
.coach-tool-row{grid-template-columns:repeat(2,1fr);gap:9px}
.coach-tool-row button{min-height:54px;border:2px solid var(--ink);background:var(--brand);color:var(--brand-ink);font-size:13px;font-weight:950}
body[data-region="agoura"] .coach-tool-row button{border-color:#9f1018;background:#d6212b;color:#fff}
.home-division-contact{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;margin-top:14px;padding:15px;border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:16px;background:#fff;color:var(--ink);text-align:left}.home-division-contact>span:first-child{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:var(--soft);color:var(--region-link);font-size:18px}.home-division-contact>span:nth-child(2){display:flex;flex-direction:column;gap:3px}.home-division-contact small{color:var(--muted);line-height:1.35}.home-division-contact em{color:var(--region-link);font-size:23px;font-style:normal}
@media(max-width:520px){.coach-tool-row{grid-template-columns:1fr 1fr}.coach-tool-row button:last-child{grid-column:auto}}

/* v57 parent focus, region identity, and clearer communication routing */
.skills-scoreboard{display:grid;grid-template-columns:145px minmax(0,1fr);gap:10px;margin-top:13px}.player-stars,.team-goal,.division-challenge{background:#fff;border:1px solid var(--line);border-radius:17px}.player-stars{display:flex;align-items:center;gap:10px;padding:15px}.player-stars>span{color:var(--brand);font-size:34px}.player-stars>div{display:flex;flex-direction:column}.player-stars small,.team-goal small,.division-challenge small{color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.05em}.player-stars b{font-size:28px;line-height:1}.player-stars em{margin-top:4px;color:var(--muted);font-size:9px;font-style:normal}.team-goal{padding:15px}.team-goal>div:first-child{display:flex;justify-content:space-between;gap:10px}.team-goal span{display:flex;flex-direction:column;gap:3px}.team-goal strong{color:var(--region-link)}.goal-track{height:9px;margin:10px 0 7px;overflow:hidden;border-radius:999px;background:#e7e7e3}.goal-track i{display:block;width:60%;height:100%;border-radius:inherit;background:var(--brand);transition:width .25s ease}.team-goal p{margin:0;color:var(--muted);font-size:9px}.division-challenge{margin-top:10px;padding:17px;border-left:5px solid var(--brand)}.division-challenge-head{display:flex;align-items:center;gap:10px}.division-challenge-head>span{font-size:27px}.division-challenge h3{margin:3px 0 0;font-size:16px}.division-challenge>p{margin:12px 0;color:#555;line-height:1.45}.division-progress{display:flex;justify-content:space-between;gap:12px;padding:11px;border-radius:11px;background:var(--soft)}.division-progress span{color:var(--muted);font-size:10px;text-align:right}.sponsor-note{display:block;margin-top:9px}
@media(max-width:520px){.skills-scoreboard{grid-template-columns:1fr}.division-progress{flex-direction:column}.division-progress span{text-align:left}}
.notification-count[hidden],#notificationCount[hidden]{display:none!important}
body[data-role="parent"] .compact-event-hero{background:var(--brand);color:var(--brand-ink);border:1px solid color-mix(in srgb,var(--brand) 70%,#000);box-shadow:none}
body[data-role="parent"] .compact-event-hero .eyebrow,body[data-role="parent"] .compact-event-hero p{color:color-mix(in srgb,var(--brand-ink) 75%,transparent)}
body[data-region="agoura"][data-role="parent"] .compact-event-hero{background:#fff0f1;color:#741016;border-color:#efb4b8;border-left:5px solid var(--brand)}
body[data-region="agoura"][data-role="parent"] .compact-event-hero .eyebrow,body[data-region="agoura"][data-role="parent"] .compact-event-hero p{color:#741016}
.todo-row b{color:var(--ink)}.todo-row .todo-icon{background:var(--soft);color:var(--region-link);outline:1px solid color-mix(in srgb,var(--brand) 45%,white)}
body[data-region="agoura"] .todo-row b,body[data-region="agoura"] .todo-row em{color:var(--region-link)}
.curriculum-library-cta{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;margin:14px 0;padding:15px 16px;border:1px solid #e7aeb2;border-left:5px solid #d6212b;border-radius:17px;background:#fff2f3;color:#741016;text-align:left}.curriculum-library-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#d6212b;color:#fff;font-size:21px}.curriculum-library-cta>span:nth-child(2){display:flex;flex-direction:column;gap:2px}.curriculum-library-cta small{font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.curriculum-library-cta b{font-size:17px}.curriculum-library-cta em{font-size:10px;font-style:normal}.curriculum-library-cta strong{font-size:26px}.curriculum-intro{margin:-2px 0 15px;color:var(--muted);font-size:12px;line-height:1.5}.curriculum-division-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:13px}.curriculum-division-tabs button{min-width:0;padding:11px 5px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);font-size:12px;font-weight:950}.curriculum-division-tabs button.active{border-color:#d6212b;background:#d6212b;color:#fff}.curriculum-summary{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:11px;margin-bottom:12px;padding:14px;border-radius:15px;background:#181818;color:#fff}.curriculum-summary>span{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#d6212b;font-weight:950}.curriculum-summary>div{display:flex;flex-direction:column;gap:3px}.curriculum-summary small{color:#ccc;font-size:10px}.curriculum-week-list{display:grid;gap:8px}.curriculum-week{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);text-decoration:none}.curriculum-week>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff0f1;color:#9f1018;font-size:16px;font-weight:950}.curriculum-week>div{display:flex;flex-direction:column;gap:2px;min-width:0}.curriculum-week small{color:#9f1018;font-size:8px;font-weight:950;letter-spacing:.08em}.curriculum-week b{font-size:13px;line-height:1.25}.curriculum-week em{color:var(--muted);font-size:9px;font-style:normal}.curriculum-week>strong{color:#9f1018;font-size:10px;white-space:nowrap}.curriculum-week.choice-week{opacity:.72}.curriculum-week.choice-week>span{background:#eee;color:#666}@media(max-width:390px){.curriculum-division-tabs{gap:4px}.curriculum-division-tabs button{padding:10px 2px;font-size:11px}.curriculum-week{grid-template-columns:36px minmax(0,1fr)}.curriculum-week>span{width:34px;height:34px}.curriculum-week>strong{grid-column:2}}
.inbox-item{grid-template-columns:30px minmax(0,1fr) auto}.mark-read{align-self:center;display:flex;flex-direction:column;align-items:center;gap:2px;border:1px solid var(--line);border-radius:10px;background:var(--soft);color:var(--region-link);padding:8px;font-weight:950}.mark-read span{font-size:8px;white-space:nowrap}
.chat-routing-note{margin:0 0 10px;padding:11px 12px;border-left:4px solid var(--brand);border-radius:9px;background:var(--soft);color:var(--muted);font-size:11px;line-height:1.4}
.challenge-demo-section{margin:18px 0;padding-top:15px;border-top:1px solid var(--line)}.challenge-demo-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.challenge-demo-head span{color:var(--muted);font-size:10px}.challenge-demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.challenge-demo-video{overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#fff}.challenge-demo-video video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#111}.challenge-demo-video button{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:0;background:#fff;padding:10px;text-align:left}.challenge-demo-video button span{color:var(--region-link);font-size:9px;font-weight:900}
@media(max-width:380px){.challenge-demo-grid{grid-template-columns:1fr}.challenge-demo-video video{aspect-ratio:16/9}}

.challenge-task-checklist{position:relative;display:grid;gap:8px;margin:14px 0}.challenge-task-checklist button{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:9px;width:100%;padding:11px 12px;border:1px solid #ffffff35;border-radius:13px;background:#ffffff10;color:#fff;text-align:left}.challenge-task-checklist button>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#ffffff12;color:var(--brand);font-size:22px}.challenge-task-checklist button b{font-size:15px}.challenge-task-checklist button em{color:#ccc;font-size:10px;font-style:normal;font-weight:850}.challenge-task-checklist button.completed{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 18%,transparent)}.challenge-task-checklist button.completed>span{background:var(--brand);color:var(--brand-ink)}.challenge-task-checklist button.completed em{color:var(--brand)}.challenge-proof{position:relative;margin-top:14px;padding:12px;border-radius:13px;background:#ffffff0d;border:1px solid #ffffff25}.challenge-proof b{font-size:13px}.challenge-proof p{margin:5px 0 0;color:#ccc;font-size:11px;line-height:1.45}.challenge-actions>span{color:#bbb;font-size:10px;text-align:center}.challenge-actions>span.ready{color:var(--brand);font-weight:850}

.chat-routing-note{margin:0 0 11px;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:#f1f2f3;color:#60656b;font-size:11px;line-height:1.45}.notification-routing{margin:9px 0 0;padding:10px 12px;border-radius:11px;background:#f1f2f3;color:var(--muted);font-size:11px;line-height:1.45}.contact-actions.three-actions{grid-template-columns:repeat(3,1fr)}
.equipment-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;margin-top:14px;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:#fff;text-align:left;color:var(--ink)}.equipment-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--soft);font-size:20px}.equipment-card b{display:block;font-size:16px}.equipment-card small{display:block;margin-top:3px;color:var(--muted);font-size:13px}.equipment-card em{color:var(--muted);font-size:24px;font-style:normal}.equipment-detail>p:not(.eyebrow){color:var(--muted);line-height:1.45}.equipment-detail ul{display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none}.equipment-detail li{position:relative;padding:12px 14px 12px 34px;border-radius:12px;background:var(--soft);line-height:1.4}.equipment-detail li::before{content:"✓";position:absolute;left:13px;color:var(--brand);font-weight:900}.admin-division-contact{margin-top:14px}.team-home-welcome{padding-top:2px}.team-update-form{display:grid;gap:10px;margin-top:14px}.team-update-form label{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:850}.team-update-form input,.team-update-form textarea{width:100%;border:1px solid var(--line);border-radius:11px;background:#fff;padding:11px;color:var(--ink);font:inherit}.team-update-form textarea{min-height:90px;resize:vertical}body[data-region="agoura"] .urgent-banner{background:#fff0f0;border-color:#efb5b8;border-left-color:#d6212b}body[data-region="agoura"] .urgent-banner span,body[data-region="agoura"] .urgent-banner button{color:#9f1f27}body[data-region="agoura"] .inbox-item.urgent{background:#fff2f2;border-color:#efc4c7}body[data-region="agoura"] .inbox-item.urgent .notification-symbol{background:#d6212b;color:#fff}
.team-update-destination{margin:9px 0 0;color:var(--muted);font-size:11px;line-height:1.45}
body[data-role="coach"] .team-next-event,body[data-role="manager"] .team-next-event{background:var(--brand);color:var(--brand-ink);border:1px solid color-mix(in srgb,var(--brand) 70%,#000);box-shadow:none}
body[data-role="coach"] .team-next-event .eyebrow,body[data-role="coach"] .team-next-event p,body[data-role="manager"] .team-next-event .eyebrow,body[data-role="manager"] .team-next-event p{color:color-mix(in srgb,var(--brand-ink) 75%,transparent)}
body[data-region="agoura"][data-role="coach"] .team-next-event,body[data-region="agoura"][data-role="manager"] .team-next-event{background:#fff0f1;color:#741016;border-color:#efb4b8;border-left:5px solid var(--brand)}
body[data-region="agoura"][data-role="coach"] .team-next-event .eyebrow,body[data-region="agoura"][data-role="coach"] .team-next-event p,body[data-region="agoura"][data-role="manager"] .team-next-event .eyebrow,body[data-region="agoura"][data-role="manager"] .team-next-event p{color:#741016}

/* v45 event history and event details */
.schedule-list{display:none}.schedule-list.active{display:block}.schedule-event{grid-template-columns:58px minmax(0,1fr) auto;cursor:pointer}.schedule-event>div:nth-child(2)>b{color:var(--green);font-size:10px}.schedule-event>em{color:#aaa;font-size:25px;font-style:normal}.month-label{margin:16px 3px 7px;font-size:11px;font-weight:950;letter-spacing:.1em}.past-event{position:relative;display:grid;grid-template-columns:5px minmax(0,1fr) auto;gap:12px;align-items:center;margin:9px 0;padding:15px 14px 14px 9px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.past-event .event-type{align-self:stretch;width:5px;border-radius:5px}.practice-type{background:#8a43d6}.game-type{background:#2488c9}.past-event small{color:var(--region-link);font-weight:900;text-transform:uppercase}.past-event h3{margin:3px 0}.past-event p{margin:0;color:var(--muted);font-size:11px}.past-event span{display:block;margin-top:3px;color:#555;font-size:10px}.past-event>b{align-self:start;white-space:nowrap;font-size:11px}.past-event button{grid-column:2/4;justify-self:start;border:0;border-radius:999px;background:var(--support-accent);color:var(--support-ink);padding:8px 11px;font-size:10px;font-weight:900}.event-detail h2{margin:7px 0 15px}.event-detail-meta{display:grid;gap:9px;padding:14px;background:var(--soft);border-left:5px solid var(--brand);border-radius:12px}.event-detail-meta>div{display:flex;flex-direction:column;gap:3px}.event-detail-meta span{color:var(--muted);font-size:11px}.event-detail-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}.event-detail-row>span{font-weight:850}.event-detail-row>button{border:0;background:transparent;color:var(--region-link);font-size:10px;font-weight:900}.event-rsvp-totals{display:flex;gap:5px}.event-rsvp-totals b{min-width:34px;padding:7px;border-radius:999px;background:#f1f1ef;text-align:center;font-size:10px}.event-rsvp-totals .yes{color:#17834e}.event-rsvp-totals .no{color:#b52a2a}.event-rsvp-totals .maybe,.event-rsvp-totals .waiting{color:#6f6f6f}.event-detail-copy{padding-top:14px}.event-detail-copy p{margin:5px 0;color:var(--muted);line-height:1.45}.event-form{display:grid;gap:9px}.event-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:850}.event-form input,.event-form select{width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;padding:11px}.event-form>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
body:not([data-role="parent"]) .parent-only{display:none!important}
/* v84 role scope, fixed region entrypoints, recap, and RSVP clarity */
.region-switch.locked{opacity:1;color:var(--ink);cursor:default}
.division-admin-only{display:none}
body[data-role="division"] .division-admin-only{display:block}
body[data-role="division"] .region-admin-only{display:none}
.division-scope-picker{display:grid;gap:5px;margin:0 0 12px;color:var(--muted);font-size:10px;font-weight:850}
.division-scope-picker select{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:11px;color:var(--ink);font:inherit}
.division-practice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.division-practice-grid article{display:flex;flex-direction:column;gap:3px;padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.division-practice-grid span,.division-practice-grid small{color:var(--muted);font-size:10px}
.game-recap-form .optional{color:var(--muted);font-size:9px;font-weight:700}
.game-recap-form textarea{min-height:78px}
.contact-actions button{border:0;padding:13px;border-radius:11px;background:var(--support-accent);color:var(--support-ink);text-align:center;font:inherit;font-weight:900}
.schedule-event>div:nth-child(2)>b{color:#a45a00}
.schedule-event>div:nth-child(2)>b.rsvp-confirmed{color:#17834e}
@media(max-width:520px){.division-practice-grid{grid-template-columns:1fr}}
.game-day-home-card{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;margin:13px 0;padding:15px;border:1px solid color-mix(in srgb,var(--brand) 45%,white);border-radius:17px;background:var(--soft);color:var(--ink);text-align:left}
.game-day-home-card>span:first-child{font-size:27px}.game-day-home-card>span:nth-child(2){display:flex;flex-direction:column;gap:2px}.game-day-home-card small{color:var(--muted);font-weight:850}.game-day-home-card b{font-size:16px}.game-day-home-card em{color:var(--muted);font-size:10px;font-style:normal}.game-day-home-card strong{font-size:26px}
.game-day-hero{margin-bottom:13px}.game-day-checklist{display:grid;gap:10px}.game-day-checklist .module-head{margin-bottom:2px}.game-day-checklist label{display:flex;align-items:center;gap:9px;padding:9px 0;border-top:1px solid var(--line);font-size:12px;font-weight:750}.game-day-checklist input{width:18px;height:18px;accent-color:var(--brand)}
.quarter-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.quarter-grid label{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:850}.quarter-grid input{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px;color:var(--ink)}
.field-duty-row{display:grid;grid-template-columns:54px 1fr;gap:9px;padding:11px 0;border-top:1px solid var(--line)}.field-duty-row span{color:var(--muted);font-size:11px;line-height:1.4}.game-day-recap-cta{margin-top:13px}.camera-upload{padding:12px;border:1px dashed var(--region-link);border-radius:12px;background:var(--soft)}
.camera-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.camera-button{display:block;margin-top:7px;padding:12px;border-radius:10px;background:var(--support-accent);color:var(--support-ink);text-align:center;font-size:12px;font-weight:900}
@media(max-width:520px){.quarter-grid{grid-template-columns:1fr}}

/* v88 focused game-day planner and season access */
.game-day-home-card{background:#171717;border-color:#171717;color:#fff}
.game-day-home-card small,.game-day-home-card em{color:#c8c8c8}.game-day-home-card>span:first-child{width:34px;height:34px}.game-day-home-card>span:first-child svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.next-card{background:var(--soft)}
.game-day-recap-cta{margin:0 0 13px}
.season-overview-link{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;align-items:center;margin:0 0 13px;padding:14px 15px;border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:14px;background:#fff;color:var(--ink);text-align:left}.season-overview-link span{font-size:15px;font-weight:950}.season-overview-link small{color:var(--muted);font-size:11px}.season-overview-link em{grid-column:2;grid-row:1/3;color:var(--region-link);font-size:24px;font-style:normal}
#quarterPlanner{display:grid;gap:10px;margin-top:12px}.quarter-plan{padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--soft)}.quarter-plan-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.quarter-plan-head span{color:var(--muted);font-size:10px;font-weight:850}.sub-selects{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.quarter-plan label{display:grid;gap:4px;color:var(--muted);font-size:9px;font-weight:850}.quarter-plan select{width:100%;min-width:0;border:1px solid var(--line);border-radius:9px;background:#fff;padding:9px;color:var(--ink)}.keeper-select{margin-top:8px}.keeper-select>span{color:#9b6a00}.rotation-actions{display:flex;align-items:center;gap:10px}.rotation-history summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none}.rotation-history summary::-webkit-details-marker{display:none}.rotation-history summary div{display:flex;flex-direction:column;gap:3px}.rotation-history summary>span{color:var(--region-link);font-size:11px;font-weight:900}.rotation-history[open] summary{padding-bottom:10px;border-bottom:1px solid var(--line)}#rotationTrends{display:grid;gap:7px;padding-top:10px}#rotationTrends>span{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}#rotationTrends small,#rotationTrends p{color:var(--muted);font-size:10px}
@media(max-width:390px){.sub-selects{grid-template-columns:1fr}}

/* v89 game-day polish */
.game-day-hero{display:grid;grid-template-columns:minmax(0,1fr) 22px;align-items:center;padding:15px 17px;border-radius:17px}.game-day-hero h3{margin:4px 0;font-size:19px}.game-day-hero p{margin:3px 0}.game-day-hero em{align-self:center;justify-self:end;font-size:27px;font-style:normal;line-height:1}
@media print{body.print-rotation .screen{display:none!important}body.print-rotation .screen[data-screen="game-day"]{display:block!important}body.print-rotation .screen[data-screen="game-day"]>*{display:none!important}body.print-rotation .screen[data-screen="game-day"]>.section-head,body.print-rotation .screen[data-screen="game-day"]>.rotation-module{display:block!important}body.print-rotation .rotation-actions,body.print-rotation .module-status,body.print-rotation .saved{display:none!important}body.print-rotation .rotation-module{border:0;box-shadow:none;margin:0;padding:0}body.print-rotation #quarterPlanner{grid-template-columns:1fr 1fr;gap:12px}body.print-rotation .quarter-plan{break-inside:avoid;border:1px solid #999;background:#fff}body.print-rotation select{appearance:none;border:0!important;padding:3px 0!important;font-weight:800}}
.team-recipient-picker{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:2px 0;padding:12px;border:1px solid var(--line);border-radius:12px}.team-recipient-picker[hidden]{display:none}.team-recipient-picker legend{padding:0 5px;font-size:10px;font-weight:900}.team-recipient-picker label{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:800}.team-recipient-picker input{width:17px;height:17px;accent-color:var(--brand)}
.access-gate{place-items:start center;overflow-x:hidden;overflow-y:auto}.access-card{max-width:100%;box-sizing:border-box;margin:8vh auto 24px;overflow:hidden}#clerkSignIn,#clerkSignIn>*{max-width:100%;min-width:0}
.curriculum-week{width:100%;font:inherit;text-align:left}
.timeline-copy{min-width:0}.timeline-copy>p,.coach-cue{overflow-wrap:anywhere}
.diagram-wrap{padding:10px;overflow:hidden;background:#fff}.activity-diagram{width:100%;height:auto;object-fit:contain;background:#fff}
.activity-detail .setup-list{grid-template-columns:1fr 1fr}.activity-detail .setup-list>div{min-width:0}.activity-detail .setup-list strong{display:block;margin-bottom:2px;color:var(--region-link)}
@media(max-width:520px){.activity-detail .setup-list{grid-template-columns:1fr}}
.equipment-detail .equipment-reminder{margin-top:16px;padding:12px 14px;border-radius:12px;background:#fff7e0;color:var(--ink);font-weight:750;line-height:1.45}
.single-location-layout{appearance:none;padding:0;text-align:inherit;color:inherit;width:100%;cursor:pointer}
.urgent-banner[hidden]{display:none!important}
.bottom-nav{position:fixed!important;inset:auto 0 0!important;left:0!important;transform:none!important;width:100%!important;max-width:none!important;height:calc(64px + env(safe-area-inset-bottom))!important;padding:5px max(10px,calc((100vw - 680px)/2)) env(safe-area-inset-bottom)!important;box-sizing:border-box!important;align-items:stretch!important;background:#fff!important;border-top:1px solid #ddd9d2!important;box-shadow:0 -4px 16px rgba(0,0,0,.07)!important}
.bottom-nav button{min-width:0!important;gap:2px!important;padding:3px 2px!important;line-height:1!important}.bottom-nav button span{width:21px!important;height:21px!important}.bottom-nav button svg{width:21px!important;height:21px!important}.bottom-nav button{font-size:8px!important}
main{padding-bottom:calc(84px + env(safe-area-inset-bottom))!important}
.layout-viewer{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border-radius:0;background:#f8f7f3;overflow:auto}
.layout-viewer::backdrop{background:#f8f7f3}
.layout-viewer-close{position:sticky;z-index:2;top:12px;left:12px;margin:12px;border:0;border-radius:999px;padding:11px 16px;background:#111;color:#fff;font:800 14px/1 inherit;box-shadow:0 4px 18px rgba(0,0,0,.2)}
.layout-viewer img{display:block;width:max(100%,900px);height:auto;margin:0 auto 30px}
.coach-field-finder{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 14px;align-items:center;margin:4px 0 16px;padding:14px;border:1px solid #ddd9d2;border-left:5px solid var(--brand);border-radius:15px;background:#fff}
.coach-field-finder h3{margin:0 0 2px;font-size:17px}.coach-field-finder p{margin:0;color:#666;font-size:11px;line-height:1.35}
.coach-field-finder form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.coach-field-finder input{min-width:0;border:1px solid #cfcac2;border-radius:10px;padding:11px;font:inherit}.coach-field-finder form button{border:0;border-radius:10px;padding:0 15px;background:var(--brand);color:#fff;font-weight:850}
.coach-field-finder .coach-field-results{grid-column:1/-1}
.coach-field-results{display:grid;gap:8px;margin-top:12px}.coach-field-results:empty{display:none}.coach-field-results button{display:grid;gap:3px;text-align:left;border:1px solid #e2ded7;border-left:5px solid var(--brand);border-radius:12px;padding:12px 14px;background:#faf9f6;color:var(--ink)}.coach-field-results button b{font-size:15px}.coach-field-results button span{font-size:13px;color:#5f5b55}.coach-field-results p{margin:0;padding:12px;border-radius:10px;background:#f6f3ed;color:#555}
@media(max-width:430px){.coach-field-finder{grid-template-columns:1fr}.coach-field-finder form,.coach-field-finder .coach-field-results{grid-column:1}}
