:root{color:#153149;background:#f4f7fa;font-synthesis:none;--navy:#102a43;--accent:#1d5ca6;--muted:#6c7e8d;--border:#e1e8ee}*{box-sizing:border-box}body{margin:0;font-size:20px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #4b82c3;outline-offset:3px}a{color:inherit}h1,h2,h3,p{margin:0}h1{font-size:2.25rem;line-height:1.2;letter-spacing:-1.1px;font-weight:650}h2{font-size:1.25rem;letter-spacing:-.3px;font-weight:650}h3{font-size:1rem;font-weight:650}small{font-size:.8125rem}button{border:0;background:none;color:inherit}.shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--navy);color:#d7e4ed;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:32px 20px 20px}.brand{display:block;text-decoration:none;font-size:1.5rem;letter-spacing:-.8px;font-weight:650;color:white;position:relative;margin-bottom:44px;padding-left:9px}.brand-mark{color:#9ac1f0;margin-right:5px;font-size:1.8rem}.brand-small{display:block;font-size:.625rem;letter-spacing:2.5px;font-weight:500;color:#94b0c4;margin-left:37px}.club-label{font-size:.6875rem;letter-spacing:1.8px;color:#8ea8bc;margin:0 10px 8px}.sidebar select{width:100%;color:#e4f0f7;background:#1d3b53;border:1px solid #335168;border-radius:7px;font-size:.875rem;padding:12px 7px}.season{font-size:.8125rem;color:#97aec0;padding:9px 10px 22px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.nav-item{display:flex;align-items:center;text-align:left;gap:12px;padding:12px 13px;border-radius:6px;font-size:.875rem;color:#bdd0df;font-weight:500}.nav-item:hover{background:#1a3a52}.nav-item.active{background:#24475e;color:#fff;box-shadow:inset 3px 0 #8fb6e9}.nav-icon{font-size:1.3rem;line-height:1;width:23px;text-align:center;font-weight:400}.count{background:#c5dcf7;color:#102a43;font-size:.75rem;border-radius:4px;margin-left:auto;padding:1px 6px}.sidebar-bottom{margin-top:auto}.club-tools{padding:20px 10px;display:flex;flex-direction:column;gap:5px}.sidebar-link{text-align:left;color:#9eb6c8;font-size:.8125rem;padding:3px 0}.user{border-top:1px solid #2b475e;padding:21px 1px 0;display:flex;align-items:center;gap:10px}.user strong{font-size:.8125rem;color:#edf5fa;display:block}.user small{display:block;color:#99b1c3;font-size:.75rem}.avatar{height:36px;width:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.75rem;font-weight:650}.avatar.teal{background:#dceafa;color:#234f7b}.signout{font-size:1.4rem;margin-left:auto;color:#9eb6c8;padding:3px}.main{min-width:0}.topbar{height:75px;border-bottom:1px solid var(--border);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 42px;font-size:.8125rem;color:var(--muted)}.topbar .muted{padding:0 12px;color:#b6c4ce}.topbar strong{color:#294359;font-weight:500}.updates-button{position:relative;font-size:1.5rem}.badge{font-size:.625rem;background:#dd7656;color:white;border-radius:50%;padding:1px 5px;position:absolute;top:0;right:-4px}.content{max-width:1390px;margin:auto;padding:38px 42px 45px}.page-header{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:29px}.eyebrow{font-size:.6875rem;font-weight:650;letter-spacing:1.7px;color:var(--accent);margin-bottom:9px}.subtitle{color:var(--muted);font-size:.875rem;line-height:1.7;margin-top:8px}.primary,.secondary,.light-button,.selected-available,.selected-unavailable{padding:11px 18px;border-radius:6px;font-size:.875rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;white-space:normal}.primary{background:var(--accent);color:#fff;box-shadow:0 2px 3px #0b716814}.primary:hover{background:#164a87}.secondary{background:white;border:1px solid #cdd9e3;color:#29475d}.secondary:hover{background:#f0f5f8}.text-button{padding:5px 0;font-size:.875rem;color:var(--accent);font-weight:550}.text-button:hover{text-decoration:underline}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:31px}.stat{background:white;border:1px solid var(--border);border-radius:8px;padding:19px 21px}.stat-label{font-size:.8125rem;font-weight:500;color:#617585;display:flex;justify-content:space-between;gap:10px;align-items:center}.stat-label span{font-size:1.125rem;color:#94adbd}.stat>strong{display:block;font-size:1.85rem;line-height:1.4;letter-spacing:-.5px;font-weight:650;margin-top:7px}.stat>small{display:block;color:#7d8d99;font-size:.75rem;margin-top:2px}.overview-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:27px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.section-heading h2{font-size:1.0625rem}.tiny{font-size:.625rem;letter-spacing:1.3px;color:#8394a0}.lower{margin-top:28px}.next-card{background:#173d57;border-radius:9px;padding:26px;color:white;position:relative;overflow:hidden}.next-card:after{content:'';position:absolute;width:310px;height:310px;border:1px solid #ffffff13;border-radius:50%;right:-145px;top:18px;box-shadow:0 0 0 30px #ffffff05,0 0 0 60px #ffffff04;pointer-events:none}.next-top{display:flex;justify-content:space-between;gap:10px}.next-top .eyebrow{color:#bfd5f0;letter-spacing:1.1px;font-size:.75rem}.tag{color:#b6cedd;background:#2a516b;font-size:.625rem;letter-spacing:1px;padding:4px 8px;border-radius:4px;height:24px;white-space:nowrap}.next-card h2{font-size:1.9rem;line-height:1.5;letter-spacing:-.65px;margin:15px 0 19px;font-weight:600}.versus{font-size:1.125rem;color:#82a5ba;font-weight:400;padding-right:7px}.next-details{display:flex;flex-direction:column;gap:8px;font-size:.875rem;color:#c7d9e7}.next-bottom{border-top:1px solid #ffffff20;margin-top:25px;padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:20px;position:relative;z-index:1}.light-label{display:block;font-size:.625rem;letter-spacing:1.1px;color:#a5bfd0;margin-bottom:6px}.light-button{background:#fff;color:#193d53}.pill{display:inline-flex;align-items:center;font-size:.75rem;font-weight:550;padding:4px 9px;border-radius:4px;white-space:nowrap;line-height:1.45}.pill.available,.pill.paid,.pill.selected{background:#e4f5ee;color:#1c775f}.pill.pending{background:#fff1d6;color:#8f641c}.pill.unavailable{background:#fbe9e9;color:#ad4547}.pill.unpaid{background:#fff0df;color:#a5621c}.panel{background:#fff;border:1px solid var(--border);border-radius:8px}.checklist{padding:3px 21px}.checklist>div{display:flex;gap:15px;padding:22px 0;border-bottom:1px solid #edf1f5}.checklist>div:last-child{border:0}.check-icon{height:30px;width:30px;background:#eff6f8;border-radius:50%;color:#658698;display:flex;align-items:center;justify-content:center;flex-shrink:0}.checklist strong{font-size:.875rem;font-weight:600}.checklist p{font-size:.8125rem;color:var(--muted);margin:4px 0 8px}.checklist .text-button{font-size:.8125rem}.notices{padding:5px 21px}.notices>div{display:flex;gap:12px;padding:17px 0;border-bottom:1px solid #edf1f5}.notices>div:last-child{border:0}.notice-icon{font-size:1.2rem;color:#7795a9;flex-shrink:0}.notices p{font-size:.8125rem;color:#526b7d}.notices small{display:block;color:#8a9ba8;margin-top:6px;font-size:.75rem}.club-note{padding:23px 4px;color:#6e8797}.club-note .eyebrow{color:#8da2b0;font-size:.625rem}.club-note p{font-size:.875rem;line-height:1.9}.fixture-list{overflow:hidden}.fixture-row{width:100%;text-align:left;display:flex;align-items:center;gap:17px;padding:19px 21px;border-bottom:1px solid #edf1f5}.fixture-row:last-child{border:0}.fixture-row:hover{background:#f7fafc}.date-tile{display:flex;flex-direction:column;text-align:center;background:#eff4f8;border:1px solid #e1eaf0;min-width:48px;border-radius:6px;padding:6px 8px;line-height:1.25}.date-tile strong{font-size:1.25rem;font-weight:600}.date-tile small{font-size:.625rem;text-transform:uppercase;letter-spacing:.8px;color:#708898;margin-top:4px}.fixture-info{flex:1;min-width:0}.fixture-info strong{display:block;font-size:.875rem;font-weight:600}.fixture-info small{display:block;font-size:.75rem;color:#788c9b;margin-top:5px}.row-status{text-align:right}.row-status small{display:block;font-size:.6875rem;color:#8395a1;margin-top:6px}.chevron{color:#9bb0bd;font-size:1.25rem}.score{font-weight:650;font-size:1rem;letter-spacing:1px}.muted{color:var(--muted);font-size:.8125rem}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.tabs{padding:4px;background:#e8eef3;display:flex;border-radius:7px;gap:4px}.tabs button{font-size:.875rem;padding:8px 15px;border-radius:5px;color:#62798a}.tabs .active{background:#fff;color:#17394f;box-shadow:0 2px 3px #183e5110;font-weight:600}.search{display:flex;align-items:center;gap:10px;padding:9px 15px;border-radius:7px;border:1px solid #d8e2e9;background:#fff}.search input{border:0;outline:none;width:230px;color:#29475d;font-size:.875rem}.search span{font-size:1.5rem;color:#8aa0b0;line-height:1}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{background:#f9fbfc;color:#7b8e9b;font-size:.6875rem;text-transform:uppercase;letter-spacing:1px;font-weight:600;padding:17px 22px;border-bottom:1px solid var(--border)}td{font-size:.875rem;padding:18px 22px;border-bottom:1px solid #edf1f5}tr:last-child td{border-bottom:0}td strong{font-weight:550}td small{display:block;color:#8192a0;font-size:.75rem;margin-top:4px}.person{display:flex;align-items:center;gap:12px}.person small{display:block;color:#8093a2;font-size:.75rem;margin-top:2px}.color-0{background:#e9edf9;color:#5868a2}.color-1{background:#e0f0ee;color:#337e72}.color-2{background:#f7eddf;color:#ae8350}.color-3{background:#e5eff8;color:#4c7ea0}.large{width:45px;height:45px;font-size:.875rem}.you{font-size:.625rem;letter-spacing:1px;color:#96a8b4;padding-left:6px}.capitalize{text-transform:capitalize}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.amount{font-weight:600}.footnote{font-size:.8125rem;color:#7d91a0;line-height:1.7;margin-top:16px}.danger{color:#b74747!important}.pool-intro{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px;margin-bottom:24px}.inline-label{display:flex;align-items:center;gap:15px;color:#698191;font-size:.875rem}.inline-label select{min-width:300px}.member-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.member-card{padding:23px}.member-card .person{margin-bottom:20px}.member-card p{font-size:.8125rem;color:#6d8594;line-height:1.7;margin-top:13px}.member-card small{display:block;color:#8498a5;font-size:.75rem;margin-top:6px}.member-card .text-button{display:block;margin-top:16px}.availability-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:25px}.form-panel{padding:28px}.form-panel form{margin-top:25px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.field>span{font-size:.875rem;font-weight:550;color:#425d70}input,select,textarea{width:100%;min-height:44px;border:1px solid #cfdce5;border-radius:6px;padding:10px 12px;background:white;color:#244358;font-size:.875rem}select{text-transform:none}textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 19px}.checkbox{display:flex;align-items:flex-start;gap:12px;font-size:.875rem;margin:22px 0}.checkbox input{height:19px;width:19px;min-height:19px;accent-color:var(--accent);flex-shrink:0;margin:2px 0}.checkbox strong{font-size:.875rem;font-weight:550}.checkbox small{display:block;color:#7e91a0;margin-top:4px}hr{border:0;border-top:1px solid var(--border);margin:28px 0}.hint{padding:26px}.hint p{color:#708594;font-size:.875rem;margin:14px 0 24px;line-height:1.9}.form-error{color:#b74343;font-size:.875rem;margin:14px 0}.form-error:empty{display:none}.form-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:25px}.updates-list{overflow:hidden}.update{display:flex;gap:17px;padding:24px;border-bottom:1px solid #e6edf2;align-items:flex-start}.update:last-child{border:0}.update.unread{background:#f3faf9}.update p{font-size:.875rem}.update small{display:block;margin-top:6px;color:#7f94a2;font-size:.75rem}.unread-dot{height:7px;width:7px;background:var(--accent);border-radius:50%;margin:8px 0 0 auto;flex-shrink:0}footer{font-size:.6875rem;color:#899ca9;border-top:1px solid #e7edf2;padding:20px 42px}footer span{padding:0 9px;color:#b2c2cc}.empty{text-align:center;padding:55px 24px;color:#7e93a2}.empty>span{font-size:2rem;color:#9db7c6}.empty h3{color:#395a70;margin-top:12px}.empty p{font-size:.875rem;margin-top:6px}.empty-inline{padding:23px;color:#879aa8;font-size:.875rem}.loading{padding:60px;text-align:center;color:#6c8596}.modal-overlay{position:fixed;inset:0;background:#0a213d80;backdrop-filter:blur(3px);z-index:20;display:flex;justify-content:center;align-items:flex-start;overflow-y:auto;padding:40px 20px}.modal{background:#fff;width:990px;max-width:100%;border-radius:12px;box-shadow:0 20px 70px #00172a50}.modal.wide{width:990px}.modal header{padding:24px 28px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;gap:20px;align-items:center}.modal header .eyebrow{font-size:.625rem}.modal h2{font-size:1.45rem}.close{font-size:1.8rem;color:#8399a8;padding:1px 8px;line-height:1.2}.modal-body{padding:26px 28px}.fixture-modal-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;font-size:.875rem;color:#5e798c}.fixture-notes{padding:15px;background:#f1f6f9;border-radius:6px;margin-top:20px;color:#627e91;font-size:.875rem}.rsvp-section{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:25px 0;padding:24px 0}.rsvp-section p{font-size:.8125rem;color:#8094a2;margin:4px 0 15px}.rsvp-buttons{display:flex;gap:10px;flex-wrap:wrap}.selected-available{color:#19735c;background:#e0f2e9;border:1px solid #88c5ad}.selected-unavailable{color:#a34343;background:#fceaea;border:1px solid #dfb1b1}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:17px 0}.team-slot{border:1px solid var(--border);background:#f9fbfc;border-radius:6px;padding:15px;display:flex;flex-direction:column;gap:10px;min-width:0}.team-slot select{font-size:.8125rem;padding:8px}.team-slot strong{font-size:.875rem}.team-slot .pill{align-self:flex-start}.position-label{font-size:.625rem;letter-spacing:1.2px;color:#7190a2;font-weight:650}.responses,.score-section{border-top:1px solid var(--border);margin-top:25px;padding-top:22px}.response-summary{display:flex;gap:18px;flex-wrap:wrap;margin:15px 0}.response-summary strong{font-size:.8125rem;margin-left:4px}details{font-size:.8125rem;color:#657f91}summary{cursor:pointer;padding:5px 0}.response-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;padding-top:16px}.response-list>div{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #ecf1f4;padding:6px 0}.response-list .pill{font-size:.625rem}.score-inputs{display:flex;gap:15px;align-items:center;margin-top:15px}.score-inputs .field{flex:1;min-width:0}.score-inputs input{font-size:1.2rem;max-width:130px}.result-score{font-size:2rem;font-weight:600;margin:15px 0}.member-form-name{font-size:1.2rem;font-weight:600;margin-bottom:22px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);color:white;background:#163e53;padding:13px 24px;border-radius:7px;font-size:.875rem;box-shadow:0 4px 20px #152f4725;max-width:90%;opacity:0;pointer-events:none;z-index:40;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,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}.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-story{background:#14374f;color:#fff;padding:50px 65px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-story:after{content:'';width:550px;height:550px;border:1px solid #ffffff12;box-shadow:0 0 0 50px #ffffff04,0 0 0 100px #ffffff03;border-radius:50%;position:absolute;right:-325px;bottom:-190px;pointer-events:none}.auth-story .eyebrow{color:#84d9ca}.auth-story h1{font-size:3.75rem;line-height:1.2;letter-spacing:-1.7px;margin:22px 0}.auth-story p:not(.eyebrow){color:#adc8d9;font-size:1rem;max-width:330px;line-height:1.9}.auth-story>small{color:#779caf;font-size:.8125rem}.auth-stat{margin-top:40px;border-left:2px solid #74cdbd;padding-left:20px;display:flex;flex-direction:column;gap:4px}.auth-stat span:first-child{font-size:1.3rem;letter-spacing:1px}.auth-stat span:last-child{color:#91b1c3;font-size:.875rem}.auth-form{display:flex;align-items:center;justify-content:center;padding:45px}.auth-card{width:370px;max-width:100%}.auth-card h2{font-size:1.9rem;line-height:1.3;letter-spacing:-.7px}.auth-card form{margin-top:28px}.full{width:100%}.auth-card .text-button.full{margin-top:13px}.demo-box{margin-top:29px;padding:22px;background:#eaf1f6;border:1px solid #dee8ee;border-radius:8px}.demo-box strong{font-size:.875rem}.demo-box p{font-size:.8125rem;color:#738c9d;margin:5px 0 17px}.demo-box small{display:block;text-align:center;font-size:.6875rem;color:#7e96a6;margin-top:13px}.welcome{max-width:720px;margin:100px auto;padding:35px}.welcome .brand{color:#153b52;padding:0}.welcome p:not(.eyebrow){color:#728a9a;margin:20px 0}.actions{display:flex;gap:15px;flex-wrap:wrap}
@media(min-width:1500px){.content{padding-top:45px}.next-card{padding:30px}.next-card h2{font-size:2.1rem}}
@media(max-width:1150px){.shell{grid-template-columns:220px minmax(0,1fr)}.sidebar{padding:28px 15px 18px}.content{padding:30px 25px}.topbar{padding:0 25px}.stats{gap:11px}.stat{padding:17px 15px}.stat-label{font-size:.75rem}.stat>strong{font-size:1.6rem}.overview-grid{gap:20px;grid-template-columns:minmax(0,1.3fr) minmax(250px,1fr)}.next-card h2{font-size:1.6rem}.fixture-row{gap:12px;padding:17px 15px}.row-status small{display:none}.member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-story{padding:40px}.auth-story h1{font-size:3rem}.page-header{align-items:flex-start}h1{font-size:2rem}.fixture-info small{font-size:.6875rem}.fixture-row .chevron{display:none}}
@media(max-width:850px){.shell{grid-template-columns:1fr}.sidebar{height:auto;position:relative;padding:17px 20px;display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.brand{margin:0;padding:0;font-size:1.3rem}.brand-small{font-size:.5rem}.club-label,.season,.sidebar-bottom{display:none}.sidebar select{align-self:center}.sidebar nav{grid-column:1/-1;display:flex;flex-direction:row;overflow:auto;gap:4px;padding-top:8px}.nav-item{white-space:nowrap;padding:9px 12px;font-size:.8125rem}.nav-icon{font-size:1.1rem;width:auto}.nav-item.active{box-shadow:inset 0 -2px #8fb6e9}.count{font-size:.6875rem}.topbar{height:55px}.content{padding:27px 23px}.stats{grid-template-columns:1fr 1fr}.overview-grid{grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr)}.availability-grid{grid-template-columns:1fr}.hint{max-width:100%}.page-header .primary{font-size:.8125rem;padding:10px 15px}.three{grid-template-columns:repeat(3,1fr)}.auth-story{padding:35px}.auth-story h1{font-size:2.8rem}.auth-form{padding:35px 25px}.pool-intro{align-items:flex-start;flex-direction:column}.toolbar{flex-wrap:wrap}.sidebar nav:after{content:'';min-width:5px}footer{padding:20px 23px}}
@media(max-width:650px){.overview-grid{grid-template-columns:1fr}.overview-grid aside{margin-top:7px}.club-note{display:none}.page-header{gap:15px}.eyebrow{font-size:.625rem;letter-spacing:1.25px}h1{font-size:1.7rem;letter-spacing:-.7px}.subtitle{font-size:.8125rem}.page-header .primary{max-width:120px;min-width:100px}.stat>strong{font-size:1.65rem}.stat{padding:16px}.stat-label{font-size:.75rem}.stat>small{font-size:.6875rem}.content{padding:25px 17px}.topbar{padding:0 18px;font-size:.6875rem}.topbar .muted{padding:0 7px}.next-card h2{font-size:1.85rem}.next-details{font-size:.8125rem}.fixture-row{gap:12px;padding:17px 14px}.fixture-info strong{font-size:.8125rem}.fixture-info small{font-size:.6875rem}.row-status .pill{font-size:.625rem;padding:4px 7px}.date-tile{min-width:42px;padding:6px}.toolbar{gap:14px}.tabs{width:100%;justify-content:stretch}.tabs button{flex:1;font-size:.8125rem}.three{grid-template-columns:1fr}.member-grid{grid-template-columns:1fr}.inline-label{width:100%;align-items:flex-start;flex-direction:column;gap:8px}.inline-label select{width:100%;min-width:0}.pool-intro{padding:22px}.form-panel{padding:22px}.form-grid{grid-template-columns:1fr}.modal-overlay{padding:15px 10px}.modal header{padding:20px}.modal-body{padding:22px 20px}.modal h2{font-size:1.25rem}.fixture-modal-meta{grid-template-columns:1fr;font-size:.8125rem}.team-grid{grid-template-columns:1fr}.response-list{grid-template-columns:1fr}.score-inputs .field>span{min-height:42px;font-size:.8125rem}.score-inputs{gap:12px}.rsvp-buttons .secondary,.rsvp-buttons .selected-available,.rsvp-buttons .selected-unavailable{font-size:.8125rem;padding:10px 14px}.auth{grid-template-columns:1fr}.auth-story{padding:27px;min-height:300px}.auth-story .brand{margin-bottom:28px}.auth-story h1{font-size:2.1rem;margin:10px 0;line-height:1.2}.auth-story h1 br{display:none}.auth-story p:not(.eyebrow){font-size:.875rem;max-width:100%;margin:12px 0}.auth-story .auth-stat,.auth-story>small{display:none}.auth-form{padding:35px 25px}.auth-card h2{font-size:1.6rem}.search{width:100%}.search input{width:100%}footer{padding:20px 17px;font-size:.625rem}.welcome{margin:35px auto;padding:25px}.sidebar{padding:17px 15px;gap:12px}.sidebar .brand{font-size:1.15rem}.sidebar .brand-mark{font-size:1.3rem}.sidebar select{font-size:.75rem;padding:10px 6px}.brand-small{margin-left:26px;letter-spacing:1.7px}.stats{margin-bottom:25px}.next-bottom{gap:12px}.light-button{font-size:.8125rem;padding:10px 16px}.form-footer{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.topbar-actions{display:flex;align-items:center;gap:18px}.account-button{display:none}.modal-open{overflow:hidden}@media(max-width:850px){.account-button{display:inline-flex;align-items:center;justify-content:center;height:32px;width:32px;border-radius:50%;background:#e4f1ee;color:#247866;font-size:.6875rem;font-weight:650}.topbar-actions{gap:12px}}
/* First End branding and season administration. */
:root{--accent:#c52b48}.primary:hover{background:#ac2340}.brand{display:flex;align-items:center;gap:11px;padding-left:0;letter-spacing:-.4px}.brand-small{margin:2px 0 0;letter-spacing:0;font-size:.6875rem;text-transform:none;color:#b3c5d1}.club-logo{width:44px;height:44px;background:#fff;border-radius:50%;padding:3px;object-fit:contain;flex-shrink:0}.season-label{font-size:.6875rem;color:#9cb4c6;margin:12px 0 18px;display:flex;align-items:center;gap:10px}.season-label select{flex:1;font-size:.8125rem;padding:6px;min-height:34px}.calendar-link{text-decoration:none}.event-total{margin-bottom:18px}.event-month{margin-bottom:25px}.compact{margin:0}.league-tabs{display:flex;gap:8px;flex-wrap:wrap}.league-tabs button{border:1px solid #d7e2e9;background:#fff;border-radius:6px;padding:11px 16px;font-size:.875rem}.league-tabs button.active{background:#183e56;color:white;border-color:#183e56}.league-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.league-heading h2{font-size:1.55rem}.standings th:not(:nth-child(2)),.standings td:not(:nth-child(2)){text-align:center}.standings th,.standings td{padding:17px 15px}.standings td.points{font-size:1.1rem;font-weight:700;color:#c52b48}.rank{font-size:.875rem;font-weight:650;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#edf3f7;color:#708596}.rank.leader{background:#173c54;color:white}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.setup-panel{padding:24px}.setup-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 0;border-bottom:1px solid #edf1f5}.setup-row:last-child{border:0}.setup-row strong{font-size:.875rem;font-weight:600}.setup-row p{font-size:.8125rem;color:#6e8798;margin:5px 0}.setup-row small{font-size:.75rem;color:#7992a3}.rink-rosters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.rink-rosters article{border:1px solid #dfe8ee;border-radius:7px;padding:17px}.roster-row{display:flex;gap:10px;justify-content:space-between;font-size:.75rem;color:#6a8293;padding-top:10px}.roster-row strong{font-weight:500;color:#2d4e63;text-align:right}.reminder-status{background:#fff4dd;border:1px solid #eedcae;padding:15px;border-radius:6px;margin-top:15px}.reminder-status strong{font-size:.875rem;color:#8b692c}.reminder-status p{font-size:.8125rem;color:#967a48;margin-top:6px}.reminder-status.ready{background:#e8f5ee;border-color:#b6d8c6}.reminder-status.ready strong,.reminder-status.ready p{color:#2d7356}.email-jobs{margin-top:22px}.email-jobs details{border-top:1px solid #e5ecf2;padding:13px 0}.email-jobs summary{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.email-jobs details>div{padding:15px 0}.email-jobs small{display:block;margin-top:5px;color:#7e93a2}.email-jobs pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.8125rem;background:#f4f7fa;padding:18px;line-height:1.8;border-radius:6px}.match-banner{margin-bottom:22px}.match-banner h3{font-size:1.2rem;margin-top:12px}.match-banner h3 span{font-size:.875rem;color:#8ba0ae;padding:0 8px}.team-section+.team-section{margin-top:26px;border-top:1px solid #e2eaf0;padding-top:24px}.slot-hint{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.8125rem;color:#7b91a0;margin-bottom:20px}.time-slot{background:#edf4f8;border:1px solid #d4e1e9;padding:5px 10px;border-radius:5px;font-size:.8125rem;color:#315870;min-height:34px}.auth-story .brand{font-size:1.9rem}.auth-story .club-logo{width:55px;height:55px}.sidebar .brand{margin-bottom:30px}.season-label select{width:auto}.sidebar{overflow-y:auto}.sidebar nav .nav-item{padding-top:9px;padding-bottom:9px}.sidebar .club-tools{padding-top:15px;padding-bottom:15px}
@media(max-width:1100px){.setup-grid{grid-template-columns:1fr}.rink-rosters{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar .brand{font-size:1.35rem}.brand-small{font-size:.625rem}.club-logo{width:38px;height:38px}}
@media(max-width:850px){.sidebar .brand{margin:0}.sidebar{overflow:visible}.season-label{grid-column:1/-1;margin:0;max-width:185px}.season-label select{font-size:.75rem}.sidebar nav{grid-column:1/-1;padding-top:3px}.sidebar nav .nav-item{padding:9px 12px}.sidebar .brand{font-size:1.3rem}.brand-small{font-size:.625rem}.setup-panel{padding:22px}}
@media(max-width:650px){.rink-rosters{grid-template-columns:1fr}.league-heading{align-items:flex-start;flex-direction:column;gap:12px}.league-heading h2{font-size:1.3rem}.league-tabs button{font-size:.8125rem;padding:10px 12px}.setup-row{align-items:flex-start}.setup-panel .section-heading{flex-wrap:wrap}.setup-panel .section-heading h2{font-size:1rem}.event-tools .calendar-link{width:100%}.event-tools .tabs{width:100%}.sidebar .club-logo{width:34px;height:34px}.sidebar .brand{font-size:1.2rem;gap:8px}.sidebar .brand-small{font-size:.5625rem}.season-label{max-width:165px}.email-jobs summary{font-size:.75rem}.standings td,.standings th{padding:15px 12px}.score-section .actions{flex-wrap:wrap}.league-tabs{gap:7px}}
.preview-banner{background:#e9f1f8;border:1px solid #d5e2ec;color:#294f68;border-radius:7px;padding:12px 16px;font-size:.8125rem;margin:-7px 0 24px;font-weight:600}.preview-banner span{display:block;font-size:.75rem;font-weight:400;color:#6e8697;margin-top:3px}.club-identity{display:flex;align-items:center;gap:20px;padding:22px 25px;margin-bottom:24px}.club-identity .eyebrow{margin-bottom:4px}.club-identity h2{font-size:1.25rem}.club-identity .subtitle{margin-top:3px}.club-crest{width:76px;height:76px;background:#edf3f7;border:1px solid #dce6ee;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.club-crest img{width:100%;height:100%;object-fit:contain;padding:5px;border-radius:9px}.club-crest span{font-size:1.4rem;color:#6f8d9f;font-weight:600}.upload-logo{margin-left:auto;cursor:pointer;position:relative;overflow:hidden}.upload-logo input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.roster-filter{margin:5px 0 24px}.club-identity .upload-logo:focus-within{outline:3px solid #4b82c3;outline-offset:3px}@media(max-width:650px){.club-identity{padding:19px;gap:14px;flex-wrap:wrap}.club-identity>div:nth-child(2){flex:1;min-width:0}.club-identity h2{font-size:1rem}.club-crest{height:58px;width:58px}.upload-logo{margin:0;width:100%}.preview-banner{padding:12px;font-size:.75rem}.roster-filter select{min-width:0}}

[hidden]{display:none!important}
select:disabled,input[readonly]{background:#f1f3f5;color:#68717d;cursor:default}

.billing-toolbar{flex-wrap:wrap;gap:10px}.invoice-instructions{white-space:pre-wrap}.invoice-totals{margin:20px 0}.invoice-totals p{display:flex;justify-content:space-between;gap:16px}

.site-admin-shell{max-width:1440px;margin:0 auto}.site-admin-header{padding:24px 36px;display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #dde5e3}.site-admin-header .brand-small{color:#647973}.audit-json{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;max-width:420px;background:#f3f6f5;padding:12px;border-radius:8px}.site-admin-shell table td{vertical-align:top}.site-admin-shell table th{white-space:nowrap}@media(max-width:600px){.site-admin-header{padding:18px;align-items:flex-start;flex-direction:column}.site-admin-shell .content{padding:20px 16px}}

.match-comment{border-bottom:1px solid #e3e8ef;padding:14px 0}.match-comment small{display:block;color:#63758a;margin-top:4px}.match-comment p{white-space:pre-wrap;overflow-wrap:anywhere}

/* Desktop workspace: independent layout, shared First End palette. */
.avatar{background:#e6edf9;color:#365b88;overflow:hidden;flex:none}.photo-avatar{padding:0;border:0;cursor:zoom-in}.photo-avatar img{width:100%;height:100%;object-fit:cover}.avatar.large{width:78px;height:78px}.contact-grid,.personal-game-grid,.invoice-card-grid,.web-club-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.contact-card{display:flex;align-items:center;gap:16px;padding:22px}.contact-card>div{min-width:0;flex:1}.contact-card strong{font-size:20px}.contact-card small{display:block;color:#8290a2;font-size:15px}.contact-number{display:block;padding:3px 0;color:#125dcc;font-size:17.5px}.personal-fixture-tools{position:sticky;top:104px;z-index:4;display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:14px 0;margin-bottom:20px;background:#f5f7fbed;backdrop-filter:blur(16px)}.personal-fixture-tools .tabs{border-radius:12px;background:#e5ebf4}.personal-fixture-tools .tabs button.active{background:white;color:#235caa;border:0;box-shadow:0 1px 5px #233f6814}.personal-game{text-align:left;display:block;width:100%;padding:24px;min-height:190px}.personal-game h2{font-size:26.25px;margin:14px 0 10px}.personal-game p{font-size:17.5px;margin-bottom:4px}.personal-game>small{font-size:15px;color:#7c899a}.personal-game>div{margin-top:16px}.club-context{font-weight:650;color:#344f72!important;font-size:15px}.club-context:not(td){display:block}.compact-invoice{padding:24px}.compact-invoice h3{margin:10px 0}.compact-invoice p{margin:8px 0;display:flex;justify-content:space-between}.compact-invoice summary{cursor:pointer;list-style:none}.compact-invoice summary::-webkit-details-marker{display:none}.compact-invoice summary small{color:#8291a6;font-size:15px}.web-profile-summary{padding:26px;display:flex;align-items:center;gap:22px;margin-bottom:22px}.web-profile-summary p{font-size:17.5px;color:#718096;margin-top:3px}.web-profile-summary .actions{gap:8px;margin-top:15px}.web-profile-summary .actions button{font-size:15px;min-height:38px;padding:8px 14px}.menu-personal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0 30px}.menu-link{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:15px 18px;min-height:55px;font-size:17.5px}.menu-link svg{color:#4a74ac;width:22px;height:22px}.menu-link>span:last-child{margin-left:auto;color:#8e9fb5;font-size:25px}.web-club-menu>.panel{padding:20px}.web-club-menu h2{font-size:25px;margin-bottom:3px}.web-club-menu>.panel>.muted{font-size:15px;margin-bottom:14px}.web-club-menu .menu-link{border-bottom:1px solid #ecf0f6;padding:13px 0}.menu-link:hover{color:#125dcc}.form-panel{padding:25px}.form-panel h2{margin-bottom:12px}.form-panel h3{margin:20px 0 12px}.form-panel .field{margin-bottom:18px}.narrow-form{max-width:650px}.notification-list{display:grid;gap:14px}.notification-list .update{padding:22px;align-items:flex-start;gap:18px}.notification-list .update>div{flex:1}.notification-list .update p{margin:7px 0;font-size:18.75px}.notification-list .update.unread{background:#dceafa;border:1px solid #aac6ed;border-radius:22px}.notification-list .update.unread p{color:#234c7c;font-weight:550}.notification-list .update>svg{color:#4f77ac}.notification-list .update .pill.pending{background:#2462b3;color:#fff}.reply-context{font-size:16.25px;color:#4d6485;margin:12px 0}.match-comment{display:flex;gap:12px;align-items:flex-start;border:0;padding:8px 0}.match-comment>.avatar{width:36px;height:36px;font-size:15px}.comment-bubble{background:#eef2f8;border:1px solid #e2e9f2;border-radius:0 16px 16px;padding:13px 16px;flex:1}.match-comment.mine .comment-bubble{background:#deebfc;border-color:#c6daf5}.comment-bubble>strong{font-size:16.25px}.comment-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0;font-size:17.5px}.comment-bubble small{font-size:13.75px;color:#7b8ba1}.comment-bubble .text-button{font-size:13.75px;margin-left:8px}.comment-replies{padding-left:46px}#fixture-discussion{background:#f8fafd;padding:22px;border-radius:20px}#fixture-discussion>h3{margin-bottom:14px}#comment-form textarea{min-height:90px;font-size:20px}.web-photo-viewer{max-width:min(90vw,750px);border:0;border-radius:22px;padding:28px;background:#152030;color:white}.web-photo-viewer::backdrop{background:#10151dd9;backdrop-filter:blur(10px)}.web-photo-viewer>button{float:right;color:white;font-size:35px}.web-photo-viewer>h2{padding-right:44px}.web-photo-viewer>img{display:block;max-width:100%;max-height:72vh;object-fit:contain;margin:20px auto 0;border-radius:16px}.web-login{min-height:100dvh;display:grid;place-items:center;padding:32px;background:radial-gradient(ellipse at 50% 0,#e0eafa,transparent 65%),#f5f7fb}.web-login .auth-card{width:100%;max-width:430px;background:white;border:1px solid #e7edf5;border-radius:28px;padding:38px;box-shadow:0 20px 60px #294b7710}.login-brand{text-align:center;margin-bottom:28px}.login-brand>img{width:140px;height:140px;object-fit:contain;margin-bottom:12px}.login-brand h1{font-size:33.75px;font-weight:400;letter-spacing:-.8px}.login-brand h1 strong{font-weight:750}.login-brand p{font-size:16.25px;color:#71839a;margin:0}.demo-box{font-size:15px;margin-top:20px}.web-login .auth-card>h2{font-size:22.5px;margin-bottom:16px}.preview-banner{border-radius:14px;background:#e7effb;color:#5c7394;padding:10px 15px;font-size:15px;margin-bottom:20px}.player-unavailable{opacity:.4;text-decoration:line-through}

:root{color:#192638;background:#f5f7fb;--navy:#192638;--accent:#125dcc;--muted:#687587;--border:#e1e7ef}
body{background:#f5f7fb;font-size:17.5px}svg{width:21px;height:21px;flex:none;fill:none}button,a,summary{touch-action:manipulation}button{transition:background .15s,color .15s}h1{font-size:37.5px;letter-spacing:-.8px}h2{font-size:21.25px}.primary{background:#125dcc;color:white}.primary:hover{background:#0b4dab}.secondary{background:#fff;border-color:#d5dfeb;color:#31527b}.primary,.secondary{border-radius:7px;min-height:38px;padding:9px 15px;font-size:16.25px}.text-button{color:#125dcc;font-size:16.25px}.panel{border-radius:10px;box-shadow:0 2px 6px #203f6803}.pill{border-radius:20px;padding:4px 9px;font-size:13.75px}.pill.available,.pill.paid{background:#e1f3e9;color:#23603d}.pill.pending{background:#fff1cd;color:#805719}.pill.unavailable,.pill.unpaid{background:#fde7e8;color:#9b3444}
.shell.desktop-web{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100dvh}.desktop-web .sidebar{display:flex;position:sticky;top:0;height:100dvh;overflow:auto;background:#edf2f8;color:#324966;padding:23px 16px 16px;border-right:1px solid #dae3ef}.desktop-web .brand{display:flex;align-items:center;gap:9px;color:#203149;padding:0;margin:0 0 26px;font-size:20px;letter-spacing:-.4px;font-weight:400}.brand>img{width:40px;height:40px;object-fit:contain}.brand small{display:block;font-size:12.5px;color:#7b899d;letter-spacing:0}.workspace-picker{padding:12px;background:#fff;border:1px solid var(--border);border-radius:9px}.workspace-picker label{font-size:11.25px;letter-spacing:1.3px;color:#8290a2;display:block}.desktop-web #club-switch{margin:6px 0;border:0;padding:0;background:transparent;color:#243c5a;font-weight:650;font-size:15px}.workspace-picker small{font-size:13.75px;color:#7b899d}.desktop-web .club-label{font-size:11.25px;letter-spacing:1.3px;color:#8390a2;margin:23px 11px 7px}.desktop-web .sidebar nav{gap:2px}.desktop-web .nav-item{display:flex;flex-direction:row;gap:10px;width:100%;padding:9px 11px;border-radius:7px;font-size:15px;min-height:36px;color:#536984;box-shadow:none;text-align:left}.desktop-web .nav-item svg{width:18px;height:18px}.desktop-web .nav-item:hover{background:#e0e9f5}.desktop-web .nav-item.active{background:#dce8fa;color:#1256b1;font-weight:650;box-shadow:inset 3px 0 #125dcc}.desktop-web .count{background:#125dcc;color:white;border-radius:10px;margin-left:auto;font-size:12.5px}.desktop-web .season-label{display:flex;gap:10px;align-items:center;padding:10px 11px;color:#7e8a9b;font-size:13.75px}.desktop-web #season-switch{width:100%;background:transparent;color:#324966;border:0;padding:4px;font-size:15px}.desktop-web .sidebar-bottom{margin-top:auto;padding-top:22px}.desktop-web .user{border-top:1px solid #dbe3ee;padding-top:14px;gap:10px}.desktop-web .user strong{color:#263c59;font-size:13.75px}.desktop-web .user small{color:#72829a;font-size:12.5px;max-width:148px;overflow-wrap:anywhere}.sidebar-bottom>.text-button{margin:9px 0 0 46px;font-size:13.75px}.site-admin-link{margin-top:18px}.site-admin-link button{font-size:13.75px;width:100%}
.workspace-bar{height:64px;position:sticky;top:0;z-index:6;background:#ffffffd9;border-bottom:1px solid #e1e7ef;backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:16px}.workspace-context{display:flex;align-items:center;gap:10px;min-width:0}.workspace-context img{width:30px;height:30px;object-fit:contain}.workspace-context strong{font-size:15px}.workspace-context>span{font-size:13.75px;border-left:1px solid #dce4ee;padding-left:12px;color:#8290a2}.header-notifications{display:flex;align-items:center;gap:6px;font-size:13.75px;color:#536984}.account-link{border-left:1px solid #dce4ee;padding-left:18px;font-size:13.75px;font-weight:600}.desktop-web .content{max-width:1680px;width:100%;padding:30px 32px 38px}.desktop-web .page-header{margin-bottom:24px;align-items:center}.desktop-web .eyebrow{font-size:11.25px;letter-spacing:1.4px;color:#71849d;margin-bottom:8px}.desktop-web .subtitle{font-size:15px;color:#7c899b;margin-top:8px;max-width:760px}.desktop-web footer{font-size:12.5px;padding:0 32px 24px;color:#919db0}.preview-banner{display:flex;align-items:center;justify-content:space-between;padding:9px 13px;border-radius:6px;font-size:13.75px;margin-bottom:22px;background:#eaf1fc}.preview-banner .text-button{font-size:13.75px}.dashboard-stats{gap:16px;margin-bottom:24px}.desktop-web .stat{padding:17px 19px;border-radius:9px}.stat-label{font-size:13.75px;color:#71819a}.stat>strong{font-size:33.75px;letter-spacing:-.7px;margin:4px 0}.stat>small{font-size:12.5px;color:#8290a2}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}.dashboard-main,.dashboard-aside{display:grid;gap:22px;min-width:0}.dashboard-panel{overflow:hidden}.dashboard-panel>.section-heading{padding:17px 19px;margin:0;border-bottom:1px solid #e9eef5}.dashboard-panel h2{font-size:17.5px}.dashboard-panel .section-heading .text-button{font-size:13.75px}.desktop-web .table-wrap{overflow:auto}.desktop-web table{font-size:15px;width:100%}.desktop-web th{background:#f9fbfe;text-transform:none;letter-spacing:0;font-size:12.5px;color:#7a8ba2;font-weight:600;padding:12px 16px;white-space:nowrap}.desktop-web td{padding:14px 16px;border-bottom:1px solid #edf1f6;vertical-align:middle}.desktop-web tbody tr:last-child td{border-bottom:0}.desktop-web tbody tr:hover{background:#f8fbff}.desktop-web td>small{display:block;font-size:12.5px;color:#8693a7;margin-top:3px}.desktop-web .score{font-size:18.75px;white-space:nowrap;color:#284b78}.schedule-table td{font-size:13.75px}.schedule-table td>strong{font-size:15px}.schedule-date{white-space:nowrap}.schedule-table td:nth-last-child(2){white-space:nowrap}.schedule-table .text-button{font-size:13.75px}.competition-previews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.competition-previews article{padding:16px 18px;border-right:1px solid #edf1f6}.competition-previews article:last-child{border:0}.competition-preview-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:8px}.competition-preview-heading h3{font-size:16.25px}.competition-preview-heading small{color:#8291a7;font-size:12.5px}.competition-previews td,.competition-previews th{padding:8px 7px}.next-match-desktop{padding:22px;background:linear-gradient(135deg,#f6faff,#e7f0fe);border-color:#cddcf2}.next-match-desktop h2{font-size:25px;line-height:1.4;margin-bottom:15px}.next-match-desktop>p:not(.eyebrow){font-size:15px;margin-bottom:6px}.next-match-desktop>small{font-size:13.75px;color:#7e8eaa}.next-match-desktop .actions{margin-top:20px;flex-wrap:wrap;justify-content:space-between}.next-match-desktop .primary{font-size:13.75px;padding:8px 12px}.attention-row{display:flex;align-items:center;gap:11px;text-align:left;width:100%;padding:15px 17px;border-bottom:1px solid #edf1f6}.attention-row:last-child{border:0}.attention-row:hover{background:#f6f9fe}.task-count{width:30px;height:30px;border-radius:8px;background:#f1f5fa;color:#8897ab;display:grid;place-items:center;flex:none;font-size:15px;font-weight:700}.task-count.needs-attention{background:#e3edfd;color:#125dcc}.attention-row>span:nth-child(2){flex:1}.attention-row strong{display:block;font-size:13.75px}.attention-row small{display:block;color:#8b98ab;font-size:12.5px;line-height:1.6;margin-top:2px}.attention-row>span:last-child{color:#99a6ba}.club-details .club-identity{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:0;box-shadow:none;padding:18px;margin:0;background:transparent}.club-details .club-crest{width:40px;height:40px;border-radius:7px;flex:none;background:#edf3fc;font-size:15px}.club-details .club-identity h2{font-size:15px;line-height:1.5}.club-details .club-identity .eyebrow{display:none}.club-details .club-identity .subtitle{font-size:12.5px;margin-top:3px}.club-details .club-identity>div:nth-child(2){flex:1;min-width:0}.club-details .upload-logo{font-size:12.5px;padding:6px 9px;min-height:28px;margin-top:4px}.club-details #home-club-switch{display:none}.club-details>a{display:block;padding:0 18px 18px;font-size:13.75px}.directory-toolbar{justify-content:space-between}.directory-toolbar .search{width:360px;max-width:100%}.directory-person{display:flex;align-items:center;gap:13px;white-space:nowrap}.directory-person .avatar{width:34px;height:34px}.contact-number{font-size:15px}.personal-fixture-tools{position:static;background:transparent;backdrop-filter:none;padding:0;gap:16px;margin-bottom:15px}.personal-fixture-tools .secondary{margin-left:auto}.desktop-web .tabs,.league-tabs{border-radius:7px}.desktop-web .tabs button,.league-tabs button{font-size:15px;padding:8px 15px}.event-tools{margin-bottom:16px}.event-total{font-size:13.75px;margin-bottom:17px}.account-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px}.account-layout .web-profile-summary{margin:0;padding:28px;align-items:center}.account-clubs{grid-column:1/-1}.account-settings-list{padding:10px 19px}.account-settings-list .menu-link{padding:15px 0;border-bottom:1px solid #edf1f6;font-size:15px}.account-settings-list .menu-link:last-child{border:0}.account-settings-list .menu-link small{display:block;font-size:13.75px;color:#8795a9;margin-top:4px}.desktop-web .setup-panel,.desktop-web .pool-intro,.desktop-web .form-panel{padding:24px}.desktop-web .member-card{padding:20px}.desktop-web .notification-list .update{border-radius:9px;padding:18px}.desktop-web .notification-list .update p{font-size:16.25px}.desktop-web .compact-invoice{border-radius:10px;padding:20px}.desktop-web .invoice-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.desktop-web .narrow-form{max-width:700px}
@media(min-width:1600px){.dashboard-layout{grid-template-columns:minmax(0,1fr) 340px}.desktop-web .content{padding:36px 42px}.workspace-bar{padding:0 42px}}
@media(max-width:1200px){.shell.desktop-web{grid-template-columns:210px minmax(0,1fr)}.desktop-web .content{padding:24px}.workspace-bar{padding:0 24px}.dashboard-layout{grid-template-columns:minmax(0,1fr)}.dashboard-aside{grid-template-columns:repeat(3,minmax(0,1fr))}.desktop-web .invoice-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.next-match-desktop h2{font-size:21.25px}.account-layout{grid-template-columns:1fr}.account-clubs{grid-column:auto}}
@media(max-width:900px){.shell.desktop-web{grid-template-columns:190px minmax(0,1fr)}.desktop-web .brand{font-size:16.25px}.desktop-web .sidebar{padding:18px 10px}.workspace-bar .account-link{display:none}.workspace-context>span{display:none}.desktop-web .page-header{align-items:flex-start;gap:12px}.desktop-web h1{font-size:31.25px}.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-aside{grid-template-columns:1fr}.competition-previews{grid-template-columns:1fr}.competition-previews article{border:0;border-bottom:1px solid #edf1f6}.directory-toolbar{flex-wrap:wrap}.desktop-web .stats.three{grid-template-columns:1fr}.desktop-web .content{padding:20px}.desktop-web .invoice-card-grid{grid-template-columns:1fr}}
@media(max-width:650px){.shell.desktop-web{display:block}.desktop-web .sidebar{display:flex;position:relative;height:auto;width:auto;overflow:visible;border-bottom:1px solid var(--border);padding:16px}.desktop-web .sidebar .brand{margin-bottom:14px}.desktop-web .sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-web .sidebar .sidebar-bottom,.desktop-web .sidebar .season-label{display:none}.desktop-web .club-label{margin-top:14px}.desktop-web .workspace-picker{padding:8px 12px}.workspace-bar{padding:0 16px;height:54px}.workspace-context strong{font-size:13.75px}.header-notifications span{display:none}.desktop-web .content{padding:22px 16px}.desktop-web .page-header{flex-direction:column}.desktop-web footer{padding:0 16px 24px}.personal-fixture-tools .secondary{margin-left:0}.desktop-web .web-profile-summary{padding:20px;flex-wrap:wrap}.dashboard-stats{gap:10px}.desktop-web .stat{padding:14px}.stat>strong{font-size:28.75px}.notification-list .update{gap:10px}.comment-replies{padding-left:20px}}
@media(prefers-reduced-transparency:reduce){.workspace-bar{background:white;backdrop-filter:none}}

.desktop-login{grid-template-columns:minmax(0,500px) minmax(0,430px);justify-content:center;gap:100px;padding:70px 40px;background:linear-gradient(115deg,#edf3fc,#f7f9fc 60%)}.login-introduction .login-brand{text-align:left;margin-bottom:60px}.login-introduction .login-brand>img{width:80px;height:80px;margin-bottom:18px}.login-introduction .login-brand h1{font-size:37.5px}.login-introduction>h2{font-size:47.5px;line-height:1.2;letter-spacing:-1.2px;max-width:440px;margin-bottom:20px}.login-introduction>p{font-size:20px;color:#7b8ba3;max-width:380px}.login-capabilities{display:grid;gap:20px;margin-top:38px;font-size:16.25px;color:#4c678c}.login-capabilities>span{display:flex;align-items:center;gap:12px}.desktop-login .auth-card{border-radius:12px;padding:38px;box-shadow:0 15px 45px #294b7708}.desktop-login .auth-card>h2{font-size:28.75px;margin-bottom:8px}.desktop-login .auth-card>.subtitle{font-size:15px;margin-bottom:26px}.desktop-login .auth-card .field{margin-bottom:18px}.account-layout>.dashboard-panel>h2{padding:18px 20px;border-bottom:1px solid #e9eef5}
@media(max-width:900px){.desktop-login{gap:36px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:40px 24px}.login-introduction>h2{font-size:37.5px}}
@media(max-width:650px){.desktop-login{grid-template-columns:1fr;padding:30px 20px;gap:24px}.login-introduction .login-brand{margin-bottom:0;text-align:center}.login-introduction .login-brand>img{width:60px;height:60px}.login-introduction>h2,.login-introduction>p,.login-capabilities{display:none}.desktop-login .auth-card{padding:26px;max-width:430px}.desktop-login .login-brand h1{font-size:31.25px}}

/* Personal header and club-only sidebar. */
.website-layout{--header-height:88px}.site-header{height:var(--header-height);position:sticky;top:0;z-index:12;display:flex;align-items:center;gap:36px;background:#fff;border-bottom:1px solid #dce4ee;padding:0 30px;box-shadow:0 2px 12px #1c3d6606}.site-header .brand{display:flex;align-items:center;gap:12px;color:#192638;padding:0;margin:0;font-size:26.25px;font-weight:400;letter-spacing:-.5px;white-space:nowrap}.site-header .brand img{height:52px;width:52px}.site-header .brand small{font-size:13.75px;color:#5e718a}.site-header nav{display:flex;align-items:stretch;align-self:stretch;gap:6px;flex:1}.header-link{display:flex;align-items:center;gap:7px;font-size:18.75px;font-weight:550;color:#5d6e85;padding:0 17px;border-bottom:3px solid transparent}.header-link:hover{background:#f5f8fd;color:#125dcc}.header-link.active{border-color:#125dcc;color:#125dcc;background:#f4f8ff}.site-header .count{font-size:12.5px;background:#125dcc;color:#fff;border-radius:12px;margin-left:0}.header-account{display:flex;align-items:center;gap:12px}.header-account .text-button{font-size:15px;white-space:nowrap}.website-layout .sidebar{top:var(--header-height);height:calc(100dvh - var(--header-height));padding:25px 14px;background:#eef3f9}.sidebar-title{font-size:18.75px;margin:0 12px 19px;color:#405571}.sidebar-club{border-bottom:1px solid #d9e3ef;padding-bottom:14px;margin-bottom:14px}.sidebar-club :is(summary,.club-summary){display:flex;gap:10px;align-items:center;cursor:pointer;list-style:none;padding:8px 6px;border-radius:7px}.sidebar-club :is(summary,.club-summary)::-webkit-details-marker{display:none}.sidebar-club :is(summary,.club-summary):hover{background:#e1eaf6}.sidebar-club-badge{display:grid;place-items:center;background:#fff;border:1px solid #d7e2f0;width:44px;height:44px;flex:none;border-radius:10px;font-size:15px;font-weight:700;color:#4d6790;overflow:hidden}.sidebar-club-badge img{width:100%;height:100%;object-fit:contain;padding:3px}.sidebar-club :is(summary,.club-summary)>span:nth-child(2){min-width:0;flex:1}.sidebar-club strong{font-size:16.25px;display:block;line-height:1.4;color:#213d63;overflow-wrap:anywhere}.sidebar-club small{font-size:13.75px;color:#637b9a;display:block;margin-top:4px}.club-disclosure{font-size:20px;color:#7185a0;transition:transform .15s}.sidebar-club[open] .club-disclosure{transform:rotate(180deg)}.sidebar-club nav{margin-top:10px}.website-layout .sidebar .nav-item{font-size:16.25px;padding:10px 12px;min-height:39px}.sidebar-club>p{font-size:15px;padding:10px}.website-layout .content{max-width:1450px;padding:36px 40px}.website-layout .page-header h1{font-size:42.5px}.website-layout .page-header .subtitle{font-size:18.75px;color:#5e728e}.website-layout .page-header .season-label{display:flex;align-items:center;gap:8px;font-size:15px;color:#637b9a}.website-layout #season-switch{font-size:16.25px;color:#2e4669;background:white;border:1px solid #d8e2ef;border-radius:6px;padding:8px}.website-layout footer{display:flex;justify-content:space-between;align-items:center}.notification-actions{position:sticky;top:var(--header-height);z-index:8;padding:12px 40px;background:#f5f7fbe8;backdrop-filter:blur(20px);text-align:right;border-bottom:1px solid #e5ebf3}
.simple-dashboard{display:grid;gap:26px}.dashboard-hero{display:flex;align-items:center;justify-content:space-between;padding:38px 42px;background:linear-gradient(120deg,#163e79,#125dcc);color:white;border-radius:14px;min-height:290px;overflow:hidden;position:relative}.dashboard-hero>div:first-child{z-index:1;min-width:0}.desktop-web .dashboard-hero .eyebrow{font-size:15px;color:#bfd4f6;letter-spacing:1.5px;margin-bottom:16px}.hero-club{font-size:18.75px;color:#e1ebfb;margin-bottom:8px}.dashboard-hero h2{font-size:42.5px;line-height:1.25;letter-spacing:-.8px;max-width:740px;margin-bottom:20px}.hero-date{font-size:25px;font-weight:600;margin-bottom:7px}.hero-location{font-size:18.75px;color:#d5e2f6}.dashboard-hero .actions{margin-top:26px;gap:20px}.hero-button{display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:white;color:#15477e;font-size:18.75px;font-weight:650;padding:12px 22px;min-height:44px}.hero-button:hover{background:#e4efff}.dashboard-hero>.hero-button{margin-top:25px}.dashboard-hero .pill{padding:7px 12px;font-size:16.25px}.hero-art{height:170px;width:170px;border-radius:50%;background:#ffffff0e;border:1px solid #ffffff18;display:grid;place-items:center;flex:none;margin-left:25px;transform:rotate(-8deg);box-shadow:0 0 0 28px #ffffff05,0 0 0 60px #ffffff03}.hero-art svg{width:78px;height:78px;color:#a9ccff;stroke-width:1.2}.dashboard-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:26px}.dashboard-shortcut{position:relative;text-align:left;padding:26px 30px;border-radius:12px;border:1px solid #dbe5f1;display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:180px;background:white}.dashboard-shortcut>svg{position:absolute;right:30px;top:28px;width:30px;height:30px;color:#5283be}.dashboard-shortcut>span:first-of-type{font-size:21.25px;font-weight:600;color:#305073}.dashboard-shortcut>strong{font-size:45px;letter-spacing:-1px;color:#183b69}.dashboard-shortcut>small{font-size:17.5px;color:#597492}.dashboard-shortcut .shortcut-link{font-size:16.25px;color:#125dcc;font-weight:600;margin-top:10px}.fees-shortcut{background:#e7f0fc;border-color:#c9dcf4}.notifications-shortcut{background:#fff;border-left:5px solid #125dcc}.dashboard-shortcut:hover{box-shadow:0 6px 18px #1c4d8412;border-color:#93b5e3}.dashboard-upcoming{overflow:hidden}.dashboard-upcoming>.section-heading{padding:23px 28px;border-bottom:1px solid #e3ebf5;margin:0}.dashboard-upcoming h2{font-size:26.25px}.dashboard-upcoming .section-heading p{font-size:17.5px;color:#67809f;margin-top:5px}.dashboard-game-row{display:flex;align-items:center;gap:22px;padding:22px 28px;width:100%;text-align:left;border-bottom:1px solid #e6edf6}.dashboard-game-row:last-child{border:0}.dashboard-game-row:hover{background:#f3f7fe}.dashboard-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:58px;background:#ecf2fb;color:#255184;padding:7px;border-radius:8px}.dashboard-date>strong{font-size:30px}.dashboard-date small{font-size:15px}.dashboard-game-title{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.dashboard-game-title>small{font-size:15px;font-weight:650;color:#315580}.dashboard-game-title>strong{font-size:21.25px}.dashboard-game-title>span{font-size:16.25px;color:#637d9c}.dashboard-game-row .pill{font-size:15px}.desktop-web .content>.club-identity,.setup-grid~.club-identity{margin-bottom:24px}
@media(max-width:1200px){.site-header{gap:20px;padding:0 22px}.site-header .brand{font-size:21.25px}.site-header .brand img{width:44px;height:44px}.header-link{font-size:16.25px;padding:0 12px}.website-layout .content{padding:28px}.hero-art{width:120px;height:120px}.dashboard-hero h2{font-size:36.25px}.dashboard-hero{padding:30px}.header-account .avatar{display:none}}
@media(max-width:950px){.website-layout{--header-height:126px}.site-header{height:126px;flex-wrap:wrap;gap:0;padding:15px 20px 0;align-content:space-between}.site-header .brand{flex:1}.header-account .avatar{display:flex}.site-header nav{order:3;flex-basis:100%;height:52px;overflow:auto}.header-link{white-space:nowrap;padding:0 14px}.website-layout .sidebar{padding:20px 10px}.sidebar-club :is(summary,.club-summary){gap:8px}.sidebar-club-badge{width:34px;height:34px}.sidebar-club strong{font-size:15px}.hero-art{display:none}.dashboard-hero h2{font-size:33.75px}.dashboard-shortcuts{gap:16px}.dashboard-shortcut{padding:22px}.dashboard-shortcut>strong{font-size:37.5px}.dashboard-shortcut>svg{right:20px;width:24px}.dashboard-game-row{gap:14px;padding:18px}.dashboard-game-title>strong{font-size:18.75px}}
@media(max-width:650px){.website-layout .sidebar{position:relative;top:auto;height:auto;display:block;padding:18px 16px}.sidebar-title{margin-bottom:12px}.sidebar-club{margin-bottom:8px;padding-bottom:8px}.sidebar-club nav{display:grid;grid-template-columns:1fr 1fr}.website-layout .content{padding:24px 16px}.website-layout .page-header h1{font-size:36.25px}.website-layout .page-header .subtitle{font-size:17.5px}.dashboard-hero{padding:24px;min-height:260px}.dashboard-hero h2{font-size:33.75px}.hero-date{font-size:21.25px}.hero-location{font-size:16.25px}.dashboard-shortcuts{gap:12px}.dashboard-shortcut{padding:20px 16px}.dashboard-shortcut>span:first-of-type{font-size:18.75px}.dashboard-shortcut>svg{display:none}.dashboard-shortcut>small{font-size:15px}.dashboard-upcoming>.section-heading{padding:20px;align-items:flex-start}.dashboard-upcoming .section-heading .secondary{font-size:13.75px;padding:8px}.dashboard-game-row{flex-wrap:wrap}.dashboard-game-title{flex-basis:calc(100% - 80px)}.dashboard-game-row>.pill{margin-left:72px}.dashboard-upcoming h2{font-size:23.75px}.dashboard-upcoming .section-heading p{font-size:15px}.notification-actions{padding:10px 16px}}
.website-layout .sidebar nav{display:flex;flex-direction:column;overflow:visible;padding:0}.website-layout .sidebar nav:after{display:none}
@media(max-width:650px){.website-layout .sidebar nav{display:grid;grid-template-columns:1fr 1fr}}

/* Comfortable default desktop scale, approximately 125% of the earlier layout. */
.website-layout{--header-height:110px}.site-header .brand img{width:65px;height:65px}.site-header .brand{gap:14px}.site-header .brand small{font-size:14px}.header-link{font-size:18px;padding:0 18px}.site-header .count{font-size:12px}.header-account .avatar{width:42px;height:42px}.header-account .text-button{font-size:15px}.website-layout .shell.desktop-web{grid-template-columns:290px minmax(0,1fr)}.website-layout .sidebar{padding:28px 18px}.sidebar-club-badge{width:52px;height:52px}.sidebar-club :is(summary,.club-summary){padding:10px 7px;gap:12px}.sidebar-club strong{font-size:16px}.sidebar-club small{font-size:14px}.website-layout .sidebar .nav-item{font-size:16px;min-height:48px;padding:12px 14px}.website-layout .sidebar .nav-item svg{width:22px;height:22px}.primary,.secondary{min-height:46px;padding:12px 19px}.pill{padding:6px 12px}.desktop-web .pill{font-size:14px}.field input,.field select,.field textarea,select,input,textarea{font-size:16px;min-height:44px}.desktop-web table{font-size:15px}.desktop-web th{font-size:13px;padding:15px 18px}.desktop-web td{font-size:15px;padding:17px 18px}.desktop-web td>small{font-size:13px}.schedule-table td>strong{font-size:15px}.schedule-table .text-button{font-size:14px}.contact-number{font-size:16px}.desktop-web .score{font-size:19px}.desktop-web .tabs button,.league-tabs button{font-size:15px;padding:11px 18px}.directory-person .avatar{width:42px;height:42px}.website-layout .content{max-width:1650px;padding:38px 40px}.website-layout .page-header h1{font-size:40px}.website-layout .page-header .subtitle{font-size:18px}.hero-button{font-size:18px;min-height:52px;padding:14px 26px}.dashboard-hero{padding:42px;min-height:330px}.dashboard-hero h2{font-size:40px}.hero-date{font-size:24px}.hero-location{font-size:18px}.dashboard-shortcut{padding:30px 34px;min-height:210px}.dashboard-game-row{padding:26px 30px}.dashboard-date{min-width:68px}.dashboard-game-title>strong{font-size:21px}.dashboard-game-title>small{font-size:15px}.dashboard-game-title>span{font-size:16px}.desktop-web .dashboard-game-row .pill{font-size:15px}.desktop-web .dashboard-hero .pill{font-size:16px}.preview-banner{font-size:14px;padding:12px 16px}.preview-banner .text-button{font-size:14px}
@media(max-width:1200px){.website-layout{--header-height:146px}.site-header{height:var(--header-height);flex-wrap:wrap;gap:0;padding:18px 24px 0;align-content:space-between}.site-header .brand{flex:1;font-size:24px}.site-header .brand img{width:54px;height:54px}.site-header nav{order:3;flex-basis:100%;height:62px;overflow:auto}.header-link{white-space:nowrap;padding:0 18px}.header-account .avatar{display:flex}.website-layout .shell.desktop-web{grid-template-columns:260px minmax(0,1fr)}.website-layout .content{padding:30px}.dashboard-hero{padding:32px}.dashboard-hero h2{font-size:34px}.hero-art{display:none}}
@media(max-width:850px){.website-layout .shell.desktop-web{grid-template-columns:230px minmax(0,1fr)}.website-layout .sidebar{padding:20px 12px}.sidebar-club-badge{width:42px;height:42px}.sidebar-club strong{font-size:15px}.sidebar-club small{font-size:13px}.website-layout .sidebar .nav-item{font-size:15px;padding:11px 10px}.website-layout .content{padding:24px}.dashboard-shortcuts{grid-template-columns:1fr}.dashboard-shortcut{min-height:180px}.dashboard-hero h2{font-size:31px}.website-layout .page-header h1{font-size:34px}.website-layout .page-header .subtitle{font-size:16px}}
@media(max-width:650px){.website-layout .shell.desktop-web{display:block}.website-layout .sidebar{height:auto;top:auto;padding:18px 16px}.site-header{padding-left:16px;padding-right:16px}.header-link{font-size:16px;padding:0 14px}.site-header .brand{font-size:21px}.site-header .brand img{width:46px;height:46px}.header-account .avatar{display:none}.website-layout .content{padding:24px 16px}.dashboard-hero{padding:26px;min-height:290px}.dashboard-hero h2{font-size:31px}.hero-date{font-size:21px}.hero-location{font-size:16px}.dashboard-game-row{padding:20px;gap:14px}.dashboard-game-title>strong{font-size:18px}.dashboard-game-title>small{font-size:14px}.dashboard-game-title>span{font-size:14px}.dashboard-date{min-width:58px}.dashboard-shortcuts{grid-template-columns:1fr 1fr}.dashboard-shortcut{padding:22px 16px}.dashboard-shortcut>strong{font-size:34px}.dashboard-shortcut>span:first-of-type{font-size:17px}.dashboard-shortcut>small{font-size:14px}.dashboard-upcoming>.section-heading{flex-wrap:wrap;gap:14px}}
:root{font-size:20px}input[type="checkbox"],input[type="radio"]{min-height:0}

/* Curling identity on the dashboard; a single club stays expanded. */
.sidebar-club.single-club .club-summary{cursor:default}.sidebar-club.single-club .club-summary:hover{background:transparent}
.dashboard-hero{background:linear-gradient(115deg,#102642,#183a60);border:1px solid #203f61}.hero-art{background:#f2f6fc;border-color:#ffffff40;transform:rotate(-8deg);box-shadow:0 0 0 28px #ffffff04,0 0 0 60px #ffffff02}.hero-art img{width:122px;height:122px;object-fit:contain}.dashboard-hero .hero-art svg{display:none}
@media(max-width:1200px){.hero-art img{width:88px;height:88px}}
@media(max-width:650px){}
.dashboard-hero .hero-art{display:grid}
@media(max-width:1200px){.dashboard-hero .hero-art{width:100px;height:100px;margin-left:20px}.dashboard-hero .hero-art img{width:78px;height:78px}}
@media(max-width:850px){.dashboard-hero .hero-art{display:none}}

/* Shared photo masthead, clear navigation row and account disclosure. */
.website-layout{--header-height:244px}.site-header{height:var(--header-height);padding:0;display:flex;flex-direction:column;align-items:stretch;gap:0;flex-wrap:nowrap;overflow:visible;background:white;border-bottom:1px solid #dce4ee}.header-masthead{height:176px;flex:none;display:flex;align-items:center;padding:20px 38px;background-color:#eaf1f8;background-image:linear-gradient(90deg,#f5f8fc80 0%,#f5f8fc35 38%,#f5f8fc00 65%),url('/curling-banner.jpg');background-size:100% 100%,cover;background-position:center,center 72%;background-repeat:no-repeat}.site-header .brand{flex:none;gap:20px;font-size:32px;letter-spacing:-.7px;text-shadow:0 1px 0 #fff;color:#172f50}.site-header .brand img{width:92px;height:92px;filter:drop-shadow(0 2px 3px #1c345612)}.site-header .brand strong{font-weight:750}.site-header .brand small{font-size:16px;color:#4e6685;margin-top:4px}.header-menu-bar{height:68px;display:flex;align-items:stretch;justify-content:space-between;gap:20px;padding:0 32px;background:#fff;flex:none}.site-header .header-menu-bar nav{order:0;flex:1;flex-basis:auto;height:68px;overflow:visible;gap:8px;align-self:stretch}.header-link{font-size:18px;padding:0 20px;white-space:nowrap;color:#415872}.profile-menu{position:relative;align-self:center;flex:none}.profile-menu>summary{display:flex;align-items:center;gap:11px;min-height:52px;padding:6px 12px;cursor:pointer;list-style:none;border-radius:8px;font-size:17px;font-weight:600;color:#2c476b}.profile-menu>summary::-webkit-details-marker{display:none}.profile-menu>summary:hover,.profile-menu[open]>summary{background:#edf3fc}.header-profile-avatar{width:38px;height:38px;background:#e3edfa;color:#365b88;font-size:13px}.header-profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-menu-chevron{font-size:21px;margin-left:6px;color:#5a7395}.profile-menu[open] .profile-menu-chevron{transform:rotate(180deg)}.profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:300px;max-width:calc(100vw - 32px);padding:8px;background:white;border:1px solid #dce5f2;border-radius:12px;box-shadow:0 15px 40px #142c4e28;z-index:30}.profile-dropdown>p{padding:12px 14px;border-bottom:1px solid #e7edf5;margin-bottom:6px}.profile-dropdown>p strong{display:block;font-size:16px;color:#203b60}.profile-dropdown>p small{display:block;overflow-wrap:anywhere;font-size:13px;color:#627c9b;margin-top:3px}.profile-dropdown>button{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:12px 14px;font-size:16px;min-height:46px;border-radius:7px;color:#334f76}.profile-dropdown>button svg{width:20px;height:20px;color:#537aa9}.profile-dropdown>button:hover,.profile-dropdown>button[aria-current="page"]{background:#edf3fd;color:#125dcc}.profile-dropdown>.profile-signout{margin-top:6px;border-top:1px solid #e7edf5;border-radius:0;color:#8b3c48}.profile-page{max-width:950px;padding:36px;gap:28px}.profile-page h2{font-size:28px}.profile-page p{font-size:17px}.profile-page .avatar.large{width:110px;height:110px}.profile-page .actions{margin-top:22px;gap:12px}.profile-page .actions button{font-size:16px;min-height:46px;padding:12px 18px}
@media(min-width:1700px){.website-layout{--header-height:268px}.header-masthead{height:200px;background-size:100% 100%,cover;background-position:center,center 72%}}
@media(max-width:1100px){.header-masthead{padding-left:26px;background-size:100% 100%,cover;background-image:linear-gradient(90deg,#f5f8fc80 0%,#f5f8fc35 38%,#f5f8fc00 65%),url('/curling-banner.jpg')}.site-header .brand{font-size:29px}.site-header .brand img{width:84px;height:84px}.header-menu-bar{padding:0 20px;gap:10px}.site-header .header-menu-bar nav{gap:0}.header-link{font-size:16px;padding:0 14px}.profile-menu>summary{font-size:16px;gap:8px;padding:6px 8px}}
@media(max-width:760px){.website-layout{--header-height:260px}.header-masthead{height:142px;padding:18px 20px;background-size:100% 100%,cover;background-position:center,65% 72%;background-image:linear-gradient(90deg,#f5f8fc65,#f5f8fc15 65%,#f5f8fc00),url('/curling-banner.jpg')}.site-header .brand{font-size:25px;gap:14px}.site-header .brand img{width:72px;height:72px}.site-header .brand small{font-size:14px}.header-menu-bar{height:118px;padding:0 16px;flex-wrap:wrap;gap:0;align-content:start}.site-header .header-menu-bar nav{order:2;flex-basis:100%;height:58px;overflow:auto;gap:0}.header-link{font-size:16px;padding:0 13px;flex:none}.profile-menu{margin-left:auto;height:60px;display:flex;align-items:center}.profile-menu>summary{min-height:48px}.profile-dropdown{top:55px}.header-profile-avatar{width:34px;height:34px}.profile-page{padding:24px;flex-wrap:wrap}.profile-page .avatar.large{width:86px;height:86px}.profile-page h2{font-size:24px}}

.header-masthead .brand{background:#ffffffbf;border:1px solid #ffffffa6;border-radius:12px;padding:10px 18px;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
@media(max-width:760px){.header-masthead .brand{padding:9px 12px}}
@media(prefers-reduced-transparency:reduce){.header-masthead .brand{background:#f5f8fc;backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Consistent badges, centred chevron and navigation aligned with the club rail. */
.attendance-badge{border-radius:7px}.profile-menu-chevron{display:flex;align-items:center;justify-content:center;line-height:0;width:20px;height:20px;flex:none}.profile-menu-chevron svg{width:18px;height:18px;display:block}
.directory-toolbar .search{width:440px;max-width:100%;padding:10px 14px;min-height:52px}.directory-toolbar .search input{flex:1 1 0%;width:100%;min-width:0;max-width:100%;min-height:30px;padding:0;margin:0;line-height:1.5;font-size:16px;box-sizing:border-box}
.website-layout{--club-sidebar-width:290px}.website-layout .shell.desktop-web{grid-template-columns:var(--club-sidebar-width) minmax(0,1fr)}.header-menu-bar{padding-left:calc(var(--club-sidebar-width) + 20px)}.site-header .header-menu-bar nav{min-width:0}
@media(max-width:1200px){.website-layout{--club-sidebar-width:260px}}
@media(max-width:1000px){.website-layout{--header-height:294px}.header-menu-bar{height:118px;flex-wrap:wrap;gap:0;align-content:start}.site-header .header-menu-bar nav{order:2;flex-basis:100%;height:58px;overflow:auto;gap:0}.profile-menu{margin-left:auto;height:60px;display:flex;align-items:center}.profile-dropdown{top:55px}}
@media(max-width:850px){.website-layout{--club-sidebar-width:230px}}
@media(max-width:760px){.website-layout{--header-height:260px}}
@media(max-width:650px){.website-layout .shell.desktop-web{display:block}.header-menu-bar{padding-left:16px}.directory-toolbar .search{width:100%}}

/* A softer photo treatment, with club navigation state retained by the controller. */
.header-masthead{background-image:linear-gradient(100deg,#102d50e8 0%,#173f65b8 38%,#22578473 70%,#2c64814d 100%),url('/curling-banner.jpg');background-color:#173f65}.header-masthead .brand{background:transparent;border-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;color:#fff;text-shadow:0 2px 10px #0b25442b}.header-masthead .brand small{color:#e0ebf8}.header-masthead .brand img{background:#f5f8fce6;border-radius:50%;filter:drop-shadow(0 3px 8px #091e3730)}
.header-menu-bar{position:relative}.club-rail-heading{position:absolute;left:0;top:0;width:var(--club-sidebar-width);height:68px;display:flex;align-items:center;margin:0;padding:0 28px;background:#eef3f9;color:#405571;font-size:18px;font-weight:650;border-right:1px solid #dae3ef}.sidebar-mobile-title{display:none}
@media(max-width:1000px){.club-rail-heading{top:60px;height:58px;padding-left:24px}}
@media(max-width:650px){.club-rail-heading{display:none}.sidebar-mobile-title{display:block;font-size:17px;color:#405571;margin:0 6px 14px}}

/* Notification tools sit below the heading, without shifting the title. */
.notification-actions{position:static;padding:0;margin:-4px 0 22px;background:transparent;border:0;backdrop-filter:none;text-align:right}

/* RCCC registration: separate private information from club directory. */
.rccc-fields{border:1px solid var(--border,#d8e0e8);border-radius:12px;padding:20px;margin:20px 0;min-width:0}.rccc-fields legend{font-weight:700;padding:0 8px}.rccc-fields .form-grid{align-items:start}.rccc-intro{padding:24px;display:flex;gap:24px;align-items:center;justify-content:space-between}.rccc-intro p{margin:10px 0}.rccc-entry{padding-top:20px;border-top:1px solid #d8e0e8}.rccc-profile-hint{font-size:.9rem;color:#52657c}.desktop-login:has(.rccc-fields){align-items:start}.desktop-login:has(.rccc-fields) .auth-card{max-width:620px;width:100%}@media(max-width:700px){.rccc-intro{align-items:stretch;flex-direction:column}.rccc-fields{padding:14px}}

.member-name{font-size:inherit;font-weight:700;text-align:left;padding:0}.member-contact-heading{display:flex;align-items:center;gap:16px;margin-bottom:24px}.contact-card-details{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-card-details dt{font-weight:700;color:#52657c}.contact-card-details dd{margin:6px 0;overflow-wrap:anywhere}.season-draft-banner{background:#eaf1ff;border:1px solid #aec9ee;border-radius:12px;padding:20px;margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.season-draft-banner p{margin:8px 0 0}.season-admin-record{border-bottom:1px solid #d8e0e8;padding:16px 0}.season-admin-record summary{cursor:pointer}.season-admin-record .setup-row{padding:14px 0}#sc-club-fields[hidden]{display:none}@media(max-width:700px){.season-draft-banner{flex-direction:column;align-items:stretch}.contact-card-details{grid-template-columns:1fr}}

/* Member editor sections keep primary saving separate from database and lifecycle actions. */
#member-form .form-footer{display:flex;gap:12px;justify-content:flex-end;margin-top:28px;padding-top:20px;border-top:1px solid var(--border)}
.member-editor-extras{margin-top:32px;padding-top:28px;display:grid;gap:28px}.member-database-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.membership-end-section{border:1px solid var(--border);border-radius:12px;padding:20px;background:#f8fafc}.membership-end-section summary{font-weight:650;cursor:pointer}.membership-end-section form{display:grid;gap:18px;padding-top:24px}.membership-end-section .form-footer{margin-top:6px;display:flex;justify-content:flex-end}.member-details-photo .web-avatar,.member-details-photo .avatar{width:88px;height:88px;font-size:1.8rem}.member-contact-heading{gap:24px;margin-bottom:28px}.contact-card-details dd{overflow-wrap:anywhere}.member-editor-extras #rccc-status-form{display:grid;gap:18px}
@media(max-width:650px){.member-database-actions{align-items:stretch;flex-direction:column}.member-database-actions>*{text-align:center}.member-details-photo .web-avatar,.member-details-photo .avatar{width:72px;height:72px}}

/* First End blue club palette, shared across workspaces. */
:root{--navy:#102a43;--accent:#1d5ca6;--muted:#546878;--border:#dbe5eb;background:#f0f5f8;color:var(--navy)}
body{background:#f0f5f8;color:var(--navy)}
.primary{background:var(--accent);color:#fff;box-shadow:none;border-radius:7px;font-weight:650}.primary:hover{background:#164a87}.secondary{background:#fff;border-color:#b9cad5;color:var(--navy);border-radius:7px;font-weight:650}.secondary:hover{background:#eef3fa}.text-button{color:var(--accent)}
input[type=checkbox],input[type=radio]{accent-color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:#4b82c3}
.panel,.dashboard-shortcut,.dashboard-game-row,.auth-card,.modal,.profile-dropdown{border-color:var(--border)}.panel,.dashboard-shortcut{border-radius:12px}.modal,.profile-dropdown{border-radius:14px;box-shadow:0 24px 55px #163f5820}
.website-layout .sidebar{background:var(--navy);color:#c9d8e4}.club-rail-heading{background:var(--navy);color:#fff;border-right-color:#ffffff20}.sidebar-mobile-title{color:#fff}.sidebar-club{border-color:#ffffff26}.sidebar-club strong{color:#fff}.sidebar-club small,.club-disclosure,.sidebar-club>p{color:#bdcedb}.sidebar-club-badge{border-color:#ffffff30;color:var(--navy)}.sidebar-club :is(summary,.club-summary):hover{background:#213f62}.sidebar-club.single-club .club-summary:hover{background:transparent}.website-layout .sidebar .nav-item{color:#c9d8e4}.website-layout .sidebar .nav-item:hover{background:#213f62;color:#fff}.website-layout .sidebar .nav-item.active{background:#213f62;color:#fff;box-shadow:inset 3px 0 #9ac1f0}.website-layout .sidebar .sidebar-bottom,.website-layout .sidebar .sidebar-link{color:#bdcedb}
.header-link{color:var(--muted)}.header-link:hover,.header-link.active{color:var(--accent);background:#eaf1fb}.header-link.active{border-color:var(--accent)}.profile-menu>summary{color:var(--navy)}.profile-menu>summary:hover,.profile-menu[open]>summary{background:#eaf1fb}.profile-menu-chevron{color:var(--muted)}.header-profile-avatar,.avatar.teal{background:#dceafa;color:#234f7b}.profile-dropdown>button{color:var(--navy)}.profile-dropdown>button svg{color:var(--accent)}.profile-dropdown>button:hover,.profile-dropdown>button[aria-current=page]{background:#eaf1fb;color:var(--accent)}.profile-dropdown>.profile-signout{color:#99374a}
.header-masthead{background-image:linear-gradient(100deg,#102a43ed 0%,#102a43ba 38%,#102a4373 70%,#102a434d 100%),url('/curling-banner.jpg');background-color:var(--navy)}.header-masthead .brand small{color:#c1d8f5}
.dashboard-hero{background:var(--navy);border-color:var(--navy);border-radius:12px;box-shadow:0 12px 30px #163f5814}.dashboard-hero .eyebrow{color:#c1d8f5}.hero-button{background:#eaf2fc;color:var(--navy);border-radius:7px}.hero-button:hover{background:#fff}.dashboard-shortcut>strong,.dashboard-shortcut>span:first-of-type{color:var(--navy)}.dashboard-shortcut>svg,.dashboard-shortcut .shortcut-link{color:var(--accent)}.dashboard-shortcut>small{color:var(--muted)}.dashboard-shortcut:hover{border-color:#9ebee5;box-shadow:0 8px 24px #163f5810}.dashboard-game-title>strong{color:var(--navy)}.dashboard-game-title>small,.dashboard-game-title>span{color:var(--muted)}
.pill,.attendance-badge{border-radius:6px}.pill.available,.pill.paid,.pill.selected,.attendance-badge.available{background:#dff2e9;color:#176442}.pill.pending,.attendance-badge.pending{background:#fff1d5;color:#835409}.pill.unavailable,.attendance-badge.unavailable{background:#fbe3e6;color:#99374a}.tabs button.active,.league-tabs button.active{background:var(--navy);color:#fff}.notification-list .update.unread{background:#eaf1fb;border-color:#9ebee5}.notification-list .update .pill.pending{background:var(--accent);color:#fff}.match-comment.mine .comment-bubble{background:#eaf1fb;border-color:#cbdbef}.comment-bubble{background:#f0f5f8;border-color:var(--border)}.season-draft-banner{background:#eaf1fb;border-color:#9ebee5}.desktop-login{background:linear-gradient(115deg,#eaf1fb,#f0f5f8 60%)}

/* Coaching sessions retain the desktop workspace's rhythm and clear actions. */
#coaching-fields {border:1px solid var(--line,#dce4ec);border-radius:14px;padding:24px;margin:20px 0;min-width:0}
#coaching-fields[hidden] {display:none}
#coaching-fields legend {font-weight:700;padding:0 8px}
.coaching-summary {padding-bottom:20px;border-bottom:1px solid #dce4ec}
.coaching-place-list {margin:16px 0 24px}
.coaching-place-row {display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid #dce4ec}
.coaching-place-row small {display:block;color:#5f7083;margin-top:6px;text-transform:capitalize}
.coaching-place-row .actions {flex-wrap:wrap}
#coaching-invite-form {padding:20px;background:#f3f6fa;border-radius:12px;margin:24px 0}
@media(max-width:650px){.coaching-place-row{align-items:flex-start;flex-direction:column}}

.sub-settings {margin:24px 0;padding:28px}
.sub-request-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-top:24px}
.sub-request-card {padding:28px}
.sub-request-card h2 {font-size:23px;margin:18px 0 12px}
.sub-offer-row {display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 0;border-bottom:1px solid #dce4ec;flex-wrap:wrap}
.sub-fixture-link {padding:20px;background:#eef4fa;border-radius:12px;margin:0 0 24px}
.sub-discussion {margin-top:28px;padding:24px;background:#f3f6fa;border-radius:14px}
#sub-invite-form {margin:24px 0}
.attendance-cover {margin:18px 0 0;padding:18px;border-radius:12px;background:#eef4fa}
.attendance-cover p {margin:0 0 12px}

.website-layout .club-site-footer {display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);gap:24px;align-items:center;padding:18px 32px;border-top:1px solid var(--border);font-size:14px;color:var(--muted)}
.club-site-footer .footer-wordmark {margin:0;font-weight:400;line-height:1.6}
.club-site-footer .footer-wordmark strong {font-weight:700;color:var(--navy)}
.club-site-footer .footer-tagline {padding:0;color:var(--muted);white-space:nowrap}
.club-site-footer .footer-stone {display:block;width:64px;height:64px;object-fit:contain;justify-self:center}
.club-site-footer .footer-actions {justify-self:end;text-align:right}
@media(max-width:700px){.website-layout .club-site-footer{grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr);gap:12px;padding:18px 16px;font-size:12px}.club-site-footer .footer-stone{width:56px;height:56px}.club-site-footer .footer-tagline{display:block;white-space:normal}.club-site-footer .footer-actions .text-button{font-size:12px}}

/* The shared page heading is independent of actions and description length. */
.website-layout .desktop-web .page-header {display:block;margin:0 0 12px;padding:0;border:0}
.page-header .page-heading,.page-header .page-toolbar {display:grid;grid-template-columns:minmax(0,1fr) 224px;column-gap:28px;align-items:start}
.page-header .page-heading-text {min-width:0}
.website-layout .page-header .page-club-name {min-height:26px;line-height:20px;margin:0 0 6px;font-size:13px;letter-spacing:1px;overflow-wrap:anywhere}
.website-layout .page-header h1 {margin:0;min-height:52px;line-height:1.2}
.page-header .page-season {min-height:84px;justify-self:stretch}
.website-layout .desktop-web .page-header .season-label {display:flex;flex-direction:column;align-items:stretch;gap:8px;width:100%;max-width:none;margin:0;padding:0;font-size:13px;line-height:20px}
.page-header .season-label span {min-height:26px;line-height:20px}
.website-layout .page-header .season-label select {width:100%;min-height:48px;flex:none;font-size:16px;padding:10px 14px;border-radius:7px;background:#fff;border:1px solid var(--border);color:var(--navy)}
.page-header .page-toolbar {min-height:48px;margin-top:5px}
.website-layout .page-header .page-description {margin:0;min-height:48px;line-height:24px;max-width:none;font-size:17px;color:var(--muted)}
.page-header .page-actions {display:flex;justify-content:flex-end;align-items:flex-start;min-height:48px}
.website-layout .page-header .page-actions :is(.primary,.secondary) {width:100%;max-width:none;min-height:48px;margin:0;padding:10px 14px;font-size:16px;line-height:22px}
.page-header .notification-actions {width:100%;margin:0;padding:0}
@media(max-width:900px){.page-header .page-heading,.page-header .page-toolbar{grid-template-columns:minmax(0,1fr) 200px;column-gap:20px}.website-layout .page-header h1{font-size:32px;min-height:77px}.page-header .page-season{min-height:109px}.website-layout .page-header .page-description{font-size:16px}}
@media(max-width:520px){.page-header .page-heading{grid-template-columns:minmax(0,1fr) 136px;column-gap:14px}.website-layout .page-header h1{font-size:28px;min-height:68px}.page-header .page-season{min-height:100px}.website-layout .page-header .season-label select{font-size:14px;padding:10px 8px}.page-header .page-toolbar{grid-template-columns:minmax(0,1fr);gap:12px;min-height:108px}.page-header .page-actions{justify-content:flex-start}.website-layout .page-header .page-actions :is(.primary,.secondary){width:auto;min-width:180px}}

/* Match the next-fixture status and action typography on the dashboard. */
.desktop-web .dashboard-hero :is(.pill,.hero-button){font-size:18px;line-height:24px;font-weight:650;border-radius:7px}

.club-update-message,.notification-list .update p { white-space:pre-wrap; overflow-wrap:anywhere; }
/* Club announcements: separate sender, context, body and actions. */
.notification-list .update{align-items:start;gap:20px}
.notification-content{min-width:0;display:grid;gap:12px}
.notification-content p,.notification-content h3{margin:0}
.notification-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}
.notification-subject{line-height:1.35;overflow-wrap:anywhere}
.club-update-reader{display:grid;gap:24px}
.update-sender{display:flex;align-items:center;gap:16px;min-width:0}
.update-sender .avatar{width:56px;height:56px;flex:none}
.update-sender>div{display:grid;gap:4px;min-width:0}
.update-sender strong{overflow-wrap:anywhere}
.update-sender small{color:#5f7083}
.club-update-reader .update-context{margin:0;padding-bottom:20px;border-bottom:1px solid #dce4ec}
.club-update-reader .club-update-message{line-height:1.65}
/* Coaching details use the same section rhythm as club setup. */
#coaching-view{display:grid;gap:24px}
.coaching-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;margin:0}
.coaching-facts dt{color:#5f7083;margin-bottom:6px}
.coaching-facts dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.coaching-summary p{margin:0}
.coaching-capacity{padding:14px 16px;background:#eaf1fb;border-radius:8px;margin-top:24px!important;color:#244a77}
.coaching-plan{margin-top:24px;display:grid;gap:12px}
.coaching-plan h3,.coaching-booking h3,.coaching-management>h3{margin:0}
.coaching-plan .notes{line-height:1.6}
.coaching-booking{display:flex;flex-wrap:wrap;gap:16px;margin:0;padding:24px;background:#f0f5fa;border:1px solid #dce4ec;border-radius:12px}
.coaching-booking>h3,.coaching-booking>p{flex-basis:100%;margin:0}
.coaching-management{padding-top:8px}
.coaching-invite{padding:24px;background:#f0f5fa;border-radius:12px;margin:24px 0}
.coaching-invite .modal-footer{margin-top:16px;padding-top:16px}
.coaching-settings{gap:12px;flex-wrap:wrap}
#coaching-view+#fixture-discussion{margin-top:24px}
@media(max-width:650px){.coaching-facts{grid-template-columns:1fr}.notification-list .update{gap:12px}.notification-list .update>.pill{grid-column:2;justify-self:start}.coaching-booking,.coaching-invite{padding:20px}.update-sender .avatar{width:48px;height:48px}}
.demo-login-club{padding:20px 0;border-bottom:1px solid var(--border)}
.demo-login-club:last-child{border-bottom:0;padding-bottom:0}
.demo-login-club h3{margin-bottom:12px}
.demo-login-club .actions{display:flex;gap:12px;flex-wrap:wrap}

/* Shared club conversation feed */
.community-feed{display:grid;gap:24px;max-width:960px}.community-filters{margin-bottom:24px}.community-filters button[aria-pressed=true]{background:#e7eef8;color:#163b65;border-color:#a9bcd6}.community-post{padding:28px;scroll-margin-top:24px}.community-post h2{margin:20px 0 12px}.community-post-top{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:12px}.community-post-top>.pill{margin-left:auto}.community-post-top .update-sender{margin:0;flex:1}.community-post-top small{display:block;color:var(--muted)}.community-fixture{background:#edf2f9;border-radius:8px;padding:18px;margin:20px 0}.community-fixture p{margin:6px 0 0}.community-discussion{border-top:1px solid #dce4ef;margin-top:22px;padding-top:22px}.community-discussion form{margin-top:22px}.community-discussion .comment-bubble small{display:block;margin-top:4px}.community-discussion .comment-replies{padding-left:24px}.community-post>.actions{margin-top:20px}@media(max-width:650px){.community-post{padding:20px}.community-post-top>.pill{margin-left:0}.community-discussion .comment-replies{padding-left:12px}}
.invoice-card-grid>.empty{grid-column:1/-1;width:100%;text-align:center}

/* Dashboard: the next game and the latest club conversations share the top row. */
.dashboard-top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr);gap:26px;align-items:stretch}.dashboard-top>*{min-width:0}.dashboard-top .dashboard-hero{padding:32px;align-items:flex-start;min-height:320px}.dashboard-top .dashboard-hero h2{font-size:var(--text-page);max-width:none}.dashboard-top .hero-art{position:absolute;right:18px;bottom:18px;width:120px;opacity:.13;pointer-events:none}.dashboard-top .hero-art img{width:100%;height:auto}.dashboard-top .dashboard-hero>div:first-child{width:100%}.dashboard-club-updates{padding:26px;overflow:hidden}.dashboard-club-updates .section-heading{margin-bottom:12px}.dashboard-club-updates .section-heading p{color:#61738b;margin:6px 0 0}.dashboard-update-row{display:flex;align-items:flex-start;gap:14px;width:100%;text-align:left;padding:18px 0;border-bottom:1px solid #e4eaf2;border-radius:0;background:transparent}.dashboard-update-row:last-child{border-bottom:0}.dashboard-update-row:hover{background:#f1f5fb}.dashboard-update-badge{width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:8px;background:#e8eff9;color:#244d80;font-weight:600}.dashboard-update-badge img{width:100%;height:100%;object-fit:contain}.dashboard-update-text{display:grid;gap:6px;min-width:0;flex:1}.dashboard-update-text small{color:#536983}.dashboard-update-text strong{color:#1b3657}.dashboard-update-text>span{color:#61738b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dashboard-update-arrow{align-self:center;color:#536983;font-size:24px}@media(max-width:1050px){.dashboard-top{grid-template-columns:minmax(0,1fr)}.dashboard-top .dashboard-hero{min-height:280px}}@media(max-width:650px){.dashboard-top .dashboard-hero,.dashboard-club-updates{padding:22px}.dashboard-update-badge{width:40px;height:40px}.dashboard-update-row{gap:10px}}

/* Compact, readable notification rows and foreground alerts. */
.desktop-web .compact-notifications{display:grid;gap:12px}.desktop-web .compact-notifications .update{display:flex;align-items:flex-start;gap:16px;padding:16px 20px;cursor:pointer}.notification-club-badge{display:grid;place-items:center;width:40px;height:40px;flex:none;background:#e8eff9;color:#244d80;border-radius:8px}.notification-club-badge img{width:100%;height:100%;object-fit:contain}.notification-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.notification-meta .club-context{color:#244263}.notification-unread{margin-left:auto;font-size:var(--text-detail);color:#1658a2;font-weight:600}.desktop-web .compact-notifications .notification-content p{margin:6px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.desktop-web .compact-notifications .notification-subject{margin:6px 0;font-size:var(--text-body)}.notification-open-link{padding:2px 0;min-height:30px}.update-receipts{display:flex;gap:16px;align-items:center}.update-viewers{display:grid;gap:20px}.update-viewers small{display:block;margin-top:4px}#live-notification-root{position:fixed;right:24px;top:24px;z-index:120;width:min(420px,calc(100vw - 32px))}.foreground-notification{display:flex;background:#fff;border:1px solid #c9d8ec;border-left:4px solid #2361a5;border-radius:10px;box-shadow:0 12px 36px #10264228;padding:14px;gap:10px}.foreground-notification-open{display:flex;gap:12px;flex:1;min-width:0;text-align:left;align-items:flex-start;padding:0}.foreground-notification-open>span:last-child{display:grid;gap:6px;min-width:0}.foreground-notification-open strong{overflow-wrap:anywhere}.foreground-notification-open small,.foreground-notification-open span>span{color:#536983;font-size:var(--text-detail)}.foreground-notification-close{align-self:start;font-size:24px;min-width:32px;min-height:32px;padding:0}@media(max-width:650px){.desktop-web .compact-notifications .update{padding:14px;gap:10px}#live-notification-root{right:16px;top:16px}.notification-meta{gap:6px}}
/* Keep the dashboard stone badge square and upright at every viewport size. */
.dashboard-top .dashboard-hero .hero-art{width:120px;height:120px;aspect-ratio:1;top:50%;bottom:auto;right:40px;transform:translateY(-50%);margin:0}
.dashboard-top .dashboard-hero .hero-art img{width:100%;height:100%;object-fit:contain}

/* Stable fixture columns across filters, month groups and result views. */
html{scrollbar-gutter:stable}
.desktop-web .schedule-table{table-layout:fixed;width:100%;min-width:980px}
.desktop-web .schedule-table-personal{min-width:1160px}
.schedule-col-date{width:190px}.schedule-col-club{width:180px}.schedule-col-location{width:22%}.schedule-col-status{width:190px}.schedule-col-action{width:90px}
.desktop-web .schedule-table :is(th,td){overflow-wrap:anywhere;white-space:normal}
.desktop-web .schedule-table .schedule-date{white-space:normal}
.desktop-web .schedule-table td:last-child{white-space:nowrap}
.desktop-web .schedule-table .pill{max-width:100%;white-space:normal}

/* Remove the retired subtitle row; actions retain their own compact row. */
.website-layout .desktop-web .page-header{margin-bottom:20px}
.page-header .page-toolbar{min-height:0;margin-top:0}
.page-header .page-toolbar-empty{display:none}
.page-header .page-actions{min-height:0}
.page-header .page-toolbar:not(.page-toolbar-empty){margin-top:4px}
/* The vertical section gap matches the horizontal fixture/update gap. */
.website-layout .simple-dashboard{--dashboard-section-gap:26px;gap:var(--dashboard-section-gap)}
.website-layout .simple-dashboard>.dashboard-top{gap:var(--dashboard-section-gap)}
.website-layout .simple-dashboard>.dashboard-top,.website-layout .simple-dashboard>.dashboard-shortcuts,.website-layout .simple-dashboard>.dashboard-upcoming{margin-block:0}
@media(max-width:520px){.page-header .page-toolbar{min-height:0;gap:0}.page-header .page-toolbar-empty{display:none}}

/* Fees and notifications form a compact stacked summary beside the next fixture. */
.website-layout .dashboard-top .dashboard-side-summary{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr));gap:var(--dashboard-section-gap);min-width:0}
.website-layout .dashboard-side-summary .dashboard-shortcut{min-height:0;padding:18px 24px;gap:4px;justify-content:center}
.website-layout .dashboard-side-summary .dashboard-shortcut>span:first-of-type{font-size:18px}
.website-layout .dashboard-side-summary .dashboard-shortcut>strong{font-size:32px;line-height:1.15}
.website-layout .dashboard-side-summary .dashboard-shortcut>small{font-size:14px;line-height:1.4}
.website-layout .dashboard-side-summary .shortcut-link{font-size:14px;margin-top:2px}
.website-layout .dashboard-side-summary .dashboard-shortcut>svg{top:20px;right:24px}
@media(max-width:1050px) and (min-width:651px){.website-layout .dashboard-top .dashboard-side-summary{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}}

/* Consistent closed select controls in Safari and Chromium; retain native menus. */
select:not([multiple]):not([size]){
 -webkit-appearance:none;appearance:none;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23315f94' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;
 background-repeat:no-repeat!important;background-position:right 12px center!important;background-size:16px 16px!important;padding-right:38px!important;
}
/* Personal fixtures fit the available content width, including smaller laptops. */
.desktop-web .schedule-table-personal{min-width:0;width:100%;table-layout:fixed}
.schedule-table-personal .schedule-col-date{width:16%}
.schedule-table-personal .schedule-col-club{width:16%}
.schedule-table-personal .schedule-col-fixture{width:25%}
.schedule-table-personal .schedule-col-location{width:18%}
.schedule-table-personal .schedule-col-status{width:16%}
.schedule-table-personal .schedule-col-action{width:9%}
.desktop-web .schedule-table-personal td:last-child{white-space:normal}
.schedule-table-personal td:last-child button{max-width:100%;padding-inline:0;white-space:normal;overflow-wrap:anywhere}
.personal-fixture-tools{flex-wrap:wrap}
.personal-fixture-tools .inline-label{min-width:0;max-width:100%}
.personal-fixture-tools select{min-width:0;max-width:100%}
@media(max-width:1100px){.desktop-web .schedule-table-personal :is(th,td){padding:12px 8px}.desktop-web .schedule-table-personal td{font-size:14px}.desktop-web .schedule-table-personal th{font-size:12px}.schedule-table-personal small{font-size:12px}.schedule-table-personal .pill{font-size:12px;padding:4px 6px}}
@media(max-width:650px){.desktop-web .schedule-table-personal :is(th,td){padding:10px 4px}.desktop-web .schedule-table-personal td,.schedule-table-personal small{font-size:12px}.desktop-web .schedule-table-personal th,.schedule-table-personal .pill{font-size:11px}}

/* Notification groups share the dashboard's columns and section spacing. */
.notifications-workspace{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr);gap:26px;align-items:start}
.notifications-workspace>*{min-width:0}
.notification-side-column{display:grid;gap:26px;min-width:0}
.notification-group{overflow:hidden}
.notification-group>.section-heading{padding:22px 24px;margin:0;border-bottom:1px solid var(--border);gap:12px;align-items:center}
.notification-group-count{font-size:var(--text-detail);color:var(--accent);white-space:nowrap}
.desktop-web .notification-group .compact-notifications{display:block}
.desktop-web .notification-group .compact-notifications .update{margin:0;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:16px 20px}
.desktop-web .notification-group .compact-notifications .update:last-child{border-bottom:0}
.notification-group .notification-content{min-width:0;flex:1;gap:6px}
.notification-group .notification-content :is(p,h3,small){overflow-wrap:anywhere}
.notification-group .notification-club-badge{width:48px;height:48px;font-weight:600}
.notification-group .notification-open-link{text-align:left}
.notification-group .empty{padding:28px 20px}
@media(max-width:1050px){.notifications-workspace{grid-template-columns:minmax(0,1fr)}}
@media(max-width:650px){.notification-group>.section-heading{padding:18px 16px}.desktop-web .notification-group .compact-notifications .update{padding:14px 16px}.notification-group .notification-club-badge{width:40px;height:40px}}

/* Standings compress padding and wrap headings before requiring horizontal space. */
.desktop-web .standings .league-standings-table{width:100%;min-width:0;table-layout:fixed;white-space:normal}
.league-rank-col{width:6%}.league-rink-col{width:24%}.league-stat-col{width:6.36%}
.desktop-web .standings .league-standings-table :is(th,td){padding:12px 5px;white-space:normal;overflow-wrap:anywhere}
.desktop-web .standings .league-standings-table th{font-size:12px;line-height:1.35}
.desktop-web .standings .league-standings-table td{font-size:14px}
.league-standings-table td small{font-size:12px}
.league-standings-table .rank{width:24px;height:24px;font-size:12px}
.rink-roster-name{cursor:pointer;border-bottom:1px dotted #91a9c3}
.rink-roster-name:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:650px){
 .league-standings-table :is(th,td,col):is(:nth-child(4),:nth-child(5),:nth-child(6),:nth-child(7),:nth-child(8),:nth-child(10),:nth-child(11)){display:none}
 .league-rank-col{width:9%}.league-rink-col{width:35%}.league-stat-col{width:14%}
 .desktop-web .standings .league-standings-table :is(th,td){padding:10px 4px}
}

.league-mobile-breakdown{display:none;font-size:12px;margin-top:8px}
.league-mobile-breakdown summary{cursor:pointer;color:var(--accent)}
.league-mobile-breakdown dl{margin:8px 0 0;display:grid;gap:4px}
.league-mobile-breakdown dl>div{display:flex;justify-content:space-between;gap:6px}
.league-mobile-breakdown dd{margin:0}
@media(max-width:650px){.league-mobile-breakdown{display:block}}

/* Final league results appear only after every scheduled league game is scored. */
.league-winner-banner{display:flex;align-items:center;gap:20px;padding:24px 28px;border-radius:12px;background:var(--navy);color:white;margin:0 0 22px}
.league-winner-banner>svg{width:48px;height:48px;flex:none;color:#e6c67a}
.league-winner-banner .eyebrow{font-size:12px;color:#e6c67a;margin-bottom:6px}
.league-winner-banner h3{font-size:26px;line-height:1.25;overflow-wrap:anywhere}
.league-winner-banner p:last-child{font-size:14px;color:#d9e5f3;margin-top:6px}
.league-winner-row td{background:#f5f0e2}
.league-winner-label{display:table;font-size:11px;font-weight:600;line-height:1.4;border-radius:5px;padding:3px 7px;background:var(--navy);color:white;margin-top:7px}
@media(max-width:650px){.league-winner-banner{padding:20px;gap:14px}.league-winner-banner h3{font-size:22px}.league-winner-banner>svg{width:36px;height:36px}}

/* Rink previews sit outside the scrolling table so their contents remain visible. */
.rink-roster-tooltip{position:fixed;z-index:130;width:300px;max-width:calc(100vw - 24px);padding:18px 20px;background:white;border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px #102a4326;color:var(--navy);pointer-events:none}
.rink-roster-tooltip>strong{display:block;font-size:17px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--border)}
.rink-roster-tooltip p{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;font-size:14px;line-height:1.5;margin:6px 0}
.rink-roster-tooltip p span{color:var(--muted)}
.rink-roster-tooltip p strong{font-weight:500;overflow-wrap:anywhere}

/* Compact chat actions and a single selection save action. */
.comment-bubble .message-actions{display:flex;align-items:center;gap:12px;margin-top:10px;width:100%}
.comment-bubble .message-actions .text-button{font-size:12px;line-height:18px;min-height:24px;padding:2px 0;margin:0;border-radius:3px;font-weight:500}
.comment-bubble .message-actions .message-delete{margin-left:auto}
.fixture-selection-footer{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}
.fixture-selection-footer small{color:var(--muted)}
#fixture-selection-form+.sub-fixture-link,.team-section+.sub-fixture-link{margin-top:28px}
.sub-fixture-link .section-heading{margin-bottom:14px;gap:12px}
.cover-needed-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--border)}
.cover-needed-row>span{display:grid;gap:4px}.cover-needed-row small{text-transform:capitalize;color:var(--muted)}
.attendance-cover{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--navy);color:white;border:1px solid var(--navy);margin:20px 0 0;padding:22px}
.attendance-cover strong{font-size:18px;display:block;margin-bottom:6px}.attendance-cover p{color:#d7e5f5;font-size:14px;margin:0}
.attendance-cover .primary{background:white;color:var(--navy);flex:none;border:1px solid white}.attendance-cover .primary:hover{background:#e5edf8}
/* Live notification dropdown for all clubs, with history in the club feed. */
.notification-menu{display:flex;position:relative;align-self:stretch;flex:none}
.notification-menu>summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;height:100%}
.notification-menu>summary::-webkit-details-marker{display:none}.notification-menu[open]>summary{background:#eaf1fb;color:var(--accent)}
.notification-dropdown{position:fixed;z-index:65;top:248px;right:24px;width:480px;max-width:calc(100vw - 24px);max-height:65vh;display:flex;flex-direction:column;background:white;border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 50px #102a4330;overflow:hidden;text-align:left}
.notification-menu:not([open]) .notification-dropdown{display:none}
.notification-dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;gap:14px;border-bottom:1px solid var(--border);flex:none}
.notification-dropdown-header h2{font-size:20px}.notification-dropdown-header .text-button{font-size:13px;min-height:28px;padding:3px 0}
.notification-dropdown .notification-list{overflow-y:auto;overscroll-behavior:contain;display:block;min-height:0}
.notification-dropdown .update{display:flex;gap:12px;align-items:flex-start;padding:15px 18px;border:0;border-bottom:1px solid var(--border);border-radius:0;cursor:pointer}
.notification-dropdown .update.unread{background:#eaf1fb}.notification-dropdown .notification-content{flex:1;min-width:0;gap:5px}
.notification-dropdown .notification-content p{font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}
.notification-dropdown .notification-subject{font-size:15px;line-height:1.4}.notification-dropdown .notification-meta{gap:6px;font-size:12px}
.notification-dropdown .notification-meta small,.notification-dropdown .notification-unread{font-size:11px}
.notification-dropdown .notification-open-link{font-size:12px;min-height:24px;padding:2px 0;text-align:left}
.notification-dropdown-footer{flex:none;border-top:1px solid var(--border);padding:12px 18px;background:#f7f9fc}.notification-dropdown-footer p{font-size:12px;color:var(--muted)}
.notification-dropdown-footer .text-button{font-size:13px;min-height:26px;padding:2px 0}
.community-notification{overflow:hidden}.desktop-web .community-notification .update{border:0;padding:20px;border-radius:0}.community-filters{flex-wrap:wrap}
/* Cover requests: status, offers, confirmation and discussion have distinct sections. */
.sub-request-layout{display:grid;gap:28px}#sub-request-controls{display:grid;gap:24px}
.sub-request-summary{background:#eef3fa;border:1px solid #d4e1f0;border-radius:10px;padding:20px;display:grid;gap:10px}
.sub-request-summary .section-heading{margin:0;gap:12px}.sub-request-summary h3{font-size:22px;line-height:1.3}.sub-request-summary .muted{font-size:14px}
.sub-request-note{white-space:pre-wrap;border-top:1px solid #d4e1f0;padding-top:12px;line-height:1.6}
.cover-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;counter-reset:cover;margin:0;padding:0;gap:12px}
.cover-progress li{counter-increment:cover;font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px}
.cover-progress li::before{content:counter(cover);display:grid;place-items:center;width:26px;height:26px;flex:none;background:#edf2f8;border-radius:50%;font-weight:600}
.cover-progress .complete::before,.cover-progress .current::before{background:var(--navy);color:white}.cover-progress .current{color:var(--navy);font-weight:600}
.sub-request-section{display:grid;gap:14px}.sub-request-section .section-heading{margin:0}.sub-request-section h3,.sub-discussion>h3{font-size:20px}
.sub-request-section p{font-size:15px;line-height:1.6}.sub-request-manage-actions{display:flex;justify-content:space-between;gap:12px}
.sub-request-manage-actions .text-button{font-size:13px;padding:4px 0;min-height:28px}
.sub-offer-row{display:flex;align-items:center;justify-content:space-between;padding:16px;border:1px solid var(--border);border-radius:8px;gap:16px}
.sub-offer-row>div{display:grid;gap:5px}.sub-offer-row small{color:var(--muted)}.sub-offer-row button{font-size:14px}
.sub-empty-state{background:#f7f9fc;padding:16px;border-radius:8px;color:var(--muted)}.sub-invitations{display:grid;gap:8px;padding-top:14px}
.sub-invitations h4{font-size:14px;margin:0;color:var(--muted)}.sub-invitations p{display:flex;justify-content:space-between;gap:12px}.sub-invitations small{color:var(--muted)}
.sub-arranged-invite{border:1px solid var(--border);border-radius:8px;padding:16px 18px}.sub-arranged-invite>summary{cursor:pointer;font-weight:600;font-size:15px}
.sub-arranged-invite form{display:grid;gap:16px;margin-top:18px}.sub-arranged-invite form p{font-size:14px;line-height:1.6}.sub-arranged-invite .field{margin:0}.sub-arranged-invite button{justify-self:start}
.sub-discussion{border-top:1px solid var(--border);padding-top:24px;display:grid;gap:18px}#sub-comment-form{display:grid;gap:12px}
#sub-comment-form .field,#sub-reply-label{margin:0}#sub-comment-form textarea{min-height:90px}#sub-comment-form button{justify-self:start}
.sub-request-footer{border-top:1px solid var(--border);padding-top:20px}.cover-request-explainer{background:#eef3fa;border-radius:8px;padding:18px;margin:20px 0;line-height:1.6;font-size:14px}.cover-request-explainer ol{padding-left:20px;margin:10px 0}
@media(max-width:650px){.attendance-cover{align-items:flex-start;flex-direction:column;gap:14px}.sub-offer-row{align-items:flex-start;flex-direction:column}.cover-progress{gap:6px}.cover-progress li{flex-direction:column;text-align:center;gap:6px}.notification-dropdown-header{padding:14px 16px}.notification-dropdown .update{padding:14px 16px}}

/* Inline substitute conversations keep the request and replies together. */
.cover-feed-discussion{margin-top:var(--space-4,20px);border-top:1px solid var(--border,#dbe3ee);padding-top:var(--space-4,20px)}
.cover-feed-messages .match-comment{gap:10px;margin:12px 0}.cover-feed-messages .person-avatar{width:36px;height:36px;flex-shrink:0}.cover-feed-messages .comment-bubble{font-size:15px;line-height:1.5}.cover-feed-messages .comment-bubble small{display:block;font-size:12px}.cover-feed-messages .comment-bubble p{margin:6px 0;white-space:pre-wrap;overflow-wrap:anywhere}.cover-feed-messages .comment-replies{margin-left:44px}.sub-feed-comment-form{margin-top:16px}.sub-feed-comment-form textarea{min-height:70px;resize:vertical}.cover-compose-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.cover-compose-footer .form-error{margin:0}.cover-compose-footer button{flex-shrink:0}.cover-empty{font-size:15px;margin:0 0 12px}.cover-feed-discussion .reply-context:empty{display:none}

.cover-feed-controls{margin-top:18px}.cover-inline-assignment{border:1px solid var(--border);border-radius:12px;background:#f4f7fc}.cover-inline-assignment>summary{padding:12px 16px;font-weight:600;cursor:pointer;color:var(--navy)}.cover-inline-assignment .sub-request-section{padding:0 16px 16px;margin:0;border:0}.cover-inline-assignment form{display:grid;gap:12px}.cover-inline-assignment h3{margin-top:8px}.cover-feed-controls>.message-actions{margin-top:8px}

/* Shared compact discussions: fixtures, club updates and substitute requests. */
.match-comment,.cover-feed-messages .match-comment{padding:3px 0;margin:0;gap:8px}
.comment-bubble{padding:5px 10px;line-height:1.35;border-radius:0 12px 12px}
.comment-bubble p,.cover-feed-messages .comment-bubble p{margin:2px 0;font-size:14px;line-height:1.35}
.comment-bubble small,.community-discussion .comment-bubble small{margin-top:2px;line-height:1.3}
.comment-bubble .message-actions{margin-top:2px;gap:10px}
.comment-bubble .message-actions .text-button{font-size:10px;min-height:18px;line-height:14px;padding:2px 0}
.comment-replies,.community-discussion .comment-replies,.cover-feed-messages .comment-replies{margin-left:0;padding-left:30px}
#fixture-discussion,.sub-discussion{padding:16px;border-radius:12px}
#fixture-discussion>h3,.sub-discussion>h3{margin-bottom:8px}
.sub-discussion{margin-top:16px;gap:10px}
.community-discussion,.cover-feed-discussion{margin-top:12px;padding-top:12px}
#comment-form,#sub-comment-form,.community-discussion form{display:grid;gap:8px;margin-top:10px}
#comment-form .field,#sub-comment-form .field,.community-discussion form .field{margin:0;gap:4px}
#comment-form .field>span,#sub-comment-form .field>span,.community-discussion form .field>span{font-size:14px;line-height:1.4}
#comment-form textarea,#sub-comment-form textarea,.update-comment-form textarea,.sub-feed-comment-form textarea{min-height:60px;height:60px;padding:7px 10px;font-size:16px;line-height:22px;resize:vertical}
#comment-form>.primary,#sub-comment-form>.primary,.update-comment-form>.primary,.cover-compose-footer>.primary{justify-self:start;min-height:32px;padding:5px 12px;font-size:14px;line-height:22px}
#comment-form .reply-context,#sub-comment-form #sub-reply-label,.community-discussion form .reply-context{margin:0;font-size:14px;line-height:1.4}
#comment-form .reply-context:empty,#sub-reply-label:empty,.community-discussion form .reply-context:empty,#comment-form .form-error:empty,#sub-comment-form .form-error:empty,.community-discussion form .form-error:empty{display:none}
.cover-compose-footer{gap:8px}.cover-empty{margin-bottom:6px}
@media(max-width:650px){.comment-replies,.community-discussion .comment-replies,.cover-feed-messages .comment-replies{padding-left:18px}}

.comment-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;line-height:17px}.comment-heading>span{min-width:0;overflow-wrap:anywhere}.comment-heading strong{font-size:13px;font-weight:600}.comment-heading time{font-size:11px;line-height:17px;white-space:nowrap;color:var(--muted);flex-shrink:0}.comment-bubble .comment-heading small{display:inline;font-size:11px;margin:0}.match-comment>.avatar,.cover-feed-messages .match-comment>.avatar{width:28px;height:28px;font-size:11px}.cover-feed-messages .comment-bubble{line-height:1.35}

/* First End discussions use a flat feed rather than speech bubbles. */
.match-comment,.cover-feed-messages .match-comment{gap:10px;padding:5px 0}
.comment-bubble,.match-comment.mine .comment-bubble{background:transparent;border:0;border-radius:0;padding:0;min-width:0;box-shadow:none}
.comment-heading{align-items:baseline;gap:12px;min-height:18px}
.comment-bubble .message-actions{margin-top:2px;gap:8px}
.comment-thread+.comment-thread{border-top:1px solid #e8eef5;margin-top:5px;padding-top:5px}
.comment-replies,.community-discussion .comment-replies,.cover-feed-messages .comment-replies{border-left:1px solid #dce6f2;padding-left:12px;margin-left:13px}
.comment-replies:empty{display:none}
.match-comment>.avatar,.cover-feed-messages .match-comment>.avatar{width:28px;height:28px;box-shadow:0 0 0 1px #e4ebf4}
#fixture-discussion,.sub-discussion{background:#f8fafc;border-radius:8px}
#comment-form textarea,#sub-comment-form textarea,.update-comment-form textarea,.sub-feed-comment-form textarea{border-radius:7px;border-color:#d9e3ef;background:white}
#comment-form textarea:focus,#sub-comment-form textarea:focus,.update-comment-form textarea:focus,.sub-feed-comment-form textarea:focus{border-color:#789dc8}
@media(max-width:650px){.comment-replies,.community-discussion .comment-replies,.cover-feed-messages .comment-replies{padding-left:10px;margin-left:10px}}

.edit-request-close{margin-top:24px;padding-top:20px;border-top:1px solid var(--border);display:grid;gap:12px}.edit-request-close h3,.edit-request-close p{margin:0}.edit-request-close>.secondary{justify-self:start}
.directory-willingness{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 20px;padding:14px 18px;background:#edf3fa;border-radius:8px}.directory-willingness .checkbox{margin:0;flex:1}.directory-willingness .form-error:empty{display:none}
.announcement-attachments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.announcement-attachment{min-width:0}.announcement-attachment>a{display:flex;align-items:center;gap:12px;padding:12px;background:#f1f5fb;border:1px solid var(--border);border-radius:8px;text-decoration:none;overflow-wrap:anywhere}.announcement-attachment>a:has(img){display:block;padding:0;overflow:hidden}.announcement-attachment img{display:block;width:100%;max-height:320px;object-fit:contain;background:#eef3f9}.announcement-attachment small{display:block;font-size:12px;color:var(--muted)}.announcement-attachment .checkbox{font-size:13px;margin-top:8px}@media(max-width:650px){.announcement-attachments{grid-template-columns:minmax(0,1fr)}}

.club-admin-divider{height:1px;background:#dce4ee;margin:12px 14px 10px}

.rink-request-positions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.rink-request-positions .pill{font-weight:500}

.fixture-player-request{margin:20px 0;padding:18px 20px;border:1px solid #cbdbee;border-radius:10px;background:#eef4fc;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.fixture-player-request>div{flex:1;min-width:220px}.fixture-player-request h3{margin:0 0 6px}.fixture-player-request p{margin:0;color:#527090}.fixture-player-request button{flex-shrink:0}

.foreground-notification{transition:opacity 250ms ease,transform 250ms ease}.foreground-notification.is-dismissed{opacity:0;transform:translateY(-8px);pointer-events:none}
@media(prefers-reduced-motion:reduce){.foreground-notification{transition:none}}

.modal :is(#sub-create-form,#sub-comment-form,#rink-request-form) textarea{min-height:140px;height:140px;resize:vertical}

.intentions-rounds{display:grid;gap:24px}.intentions-round{padding:24px}.intentions-round>summary{cursor:pointer;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:20px}.intentions-round>summary small{flex-basis:100%;color:var(--muted)}.intentions-round-body{display:grid;gap:24px;margin-top:24px}.intentions-response-form{display:grid;gap:20px}.intention-opportunities{display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.intentions-summary{display:grid;gap:16px;border-top:1px solid var(--border);padding-top:24px}.intentions-member summary{cursor:pointer;font-weight:500}.intentions-member p{margin:12px 0}.intentions-prompt{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.rink-intentions-filter{background:#f0f5fb;border-radius:8px;padding:20px;margin:20px 0}.rink-intentions-filter .checkbox{margin:12px 0}.intentions-management{flex-wrap:wrap}.intentions-saved{color:#176442}
@media(max-width:650px){.intention-opportunities{grid-template-columns:1fr}.intentions-prompt{align-items:flex-start;flex-direction:column}}

/* Club planning uses the same spacing as other setup sections. */
.club-setup .rink-rosters{margin-top:24px}
.new-season-competitions{margin-bottom:24px}
.club-setup [data-setup-section="intentions"] .section-heading{gap:20px;flex-wrap:wrap}

.rink-builder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}.rink-slot-empty{border-left:3px solid #d69c2f;padding-left:12px}.rink-plan-warning{background:#fff4db;border:1px solid #e6c578;border-radius:8px;padding:16px;color:#704d10}.rink-builder-grid .field{margin-bottom:16px}

.rink-planning-link{margin-bottom:24px}

/* Registration, setup and committee forms share the same vertical rhythm. */
.auth-help{margin:1rem 0 .65rem;text-align:center;font-size:.95rem;line-height:1.5}
.auth-help a{display:inline-block;padding:.3rem .5rem}
.desktop-login.registration-layout{grid-template-columns:minmax(260px,.7fr) minmax(620px,1.5fr);max-width:1360px}
.registration-layout .auth-card{width:100%;max-width:none;padding:2rem 2.5rem}
.registration-layout .rccc-fields{margin-block:1.25rem}
#registration-challenge{margin-block:1rem}
.logo-options{display:flex;gap:1rem;align-items:center;margin-block:1rem}
.editor-footer{justify-content:space-between;gap:1rem;align-items:center}
.form-footer{margin-top:1.5rem}
.form-section,.form-note{margin-top:1.25rem;margin-bottom:1.25rem}
#rink-plan-form .setup-panel>h2{margin-bottom:1rem}
#rink-plan-form .setup-panel>p{margin-block:1rem 1.25rem}
#modal-root .subtitle{margin-bottom:1.25rem}
#modal-root>.modal p+.actions,.modal-card p+.actions{margin-top:1.5rem}
.daily-times{border:0;padding:0;margin:1.5rem 0}
.daily-times legend,.office-role-fields legend,.email-preference-fields legend{font-weight:600;margin-bottom:1rem}
.day-times{display:grid;grid-template-columns:110px 1fr auto;gap:1rem;align-items:start;padding:.75rem 0;border-bottom:1px solid var(--border,#e1e7ef)}
.day-time-list{display:flex;flex-wrap:wrap;gap:.5rem}
.daily-time-entry{display:flex;align-items:center;gap:.35rem}
.daily-time-entry input{width:125px}
.daily-time-entry .text-button{font-size:.85rem;padding:.25rem}
.office-role-fields,.email-preference-fields{border:0;padding:0;margin-block:1rem}
.office-role-fields .checkbox,.email-preference-fields .checkbox{margin-bottom:.65rem}
.rink-slot-moved select{border:2px solid #c54150;background:#fff0f2}
.rink-slot-moved>span{color:#a32638}
.league-winner-label{display:inline-flex!important;align-items:center;justify-content:center;width:auto!important;max-width:none!important;min-height:0!important;line-height:1.2!important;padding:.3em .65em!important;border-radius:.5rem;background:#dcefe3;color:#216841;white-space:nowrap;vertical-align:middle;margin-left:.5rem}
input[type=date],input[type=datetime-local],input[type=time],input[type=month]{font:inherit;color:inherit;min-height:var(--control-height,44px);border-radius:.65rem;background-color:#fff;padding:.65rem .85rem;color-scheme:light}
@media(max-width:900px){.desktop-login.registration-layout{grid-template-columns:1fr}.registration-layout .auth-card{padding:1.5rem}.day-times{grid-template-columns:90px 1fr}.day-times>.add-day-time{grid-column:2;justify-self:start}}
.first-end-date{position:relative;width:100%}.calendar-value{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none}
.date-trigger{width:100%;text-align:left;min-height:48px;border:1px solid var(--border);border-radius:10px;background:white;color:var(--navy);padding:12px 15px;font:inherit;font-weight:400}
.date-trigger:after{content:'▦';float:right;color:var(--accent)}
.calendar-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:100;width:330px;max-width:calc(100vw - 40px);padding:16px;background:white;border:1px solid var(--border);border-radius:14px;box-shadow:0 14px 40px #132e4f25}
.calendar-heading{display:flex;gap:6px;align-items:center;margin-bottom:12px}.calendar-heading select{width:135px!important;min-height:36px!important;padding:6px!important}.calendar-heading input{width:76px!important;min-height:36px!important;padding:6px!important}
.calendar-heading button,.calendar-grid button{background:#f1f5fb;border:0;border-radius:7px;color:var(--navy);padding:7px;min-height:34px;font-size:14px}.calendar-heading button{min-width:28px}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.calendar-grid span{font-size:12px;color:var(--muted)}.calendar-grid button:hover{background:#dbe8fb}.calendar-grid button.selected{background:var(--accent);color:white}.calendar-grid button:disabled{opacity:.25;cursor:default}
.calendar-time{display:flex;align-items:center;gap:12px;margin:14px 0;font-size:14px}.calendar-time input{width:135px}.calendar-done{width:100%;font-size:14px}.calendar-close{font-size:13px!important;margin-top:8px}
