
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#09243e;background:#f6f3eb}*{box-sizing:border-box}body{margin:0}button{font:inherit;cursor:pointer}button:focus-visible{outline:3px solid #187ea3;outline-offset:3px}.app{min-height:100vh}.masthead{background:#062941;color:#fff;padding:18px max(32px,calc((100vw - 1056px)/2));display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:14px;color:inherit;text-decoration:none}.brand:focus-visible{outline:3px solid #e3d1af;outline-offset:5px;border-radius:6px}.brand-mark{width:56px;height:56px;border:2px solid #c7a05e;border-radius:50%;overflow:hidden;position:relative;background:#081d2a;flex:none}.brand-mark img{position:absolute;width:830px;max-width:none;left:-48px;top:-139px}.brand-name{font-size:1.18rem;letter-spacing:.12em;line-height:1.1;font-weight:800}.brand-small{display:block;font-size:1.18rem;line-height:1.1;letter-spacing:.31em;color:#d9c5a1;margin-top:2px}.admin-link{color:#e3d1af;font-size:.85rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap;align-self:flex-end;padding-bottom:2px}.season-label{font-size:.83rem;color:#e3d1af;text-align:right}.season-label strong{display:block;color:white;font-size:1.15rem;margin-top:3px}.shell{width:100%;max-width:1120px;margin-inline:auto;padding:34px 32px 32px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:#956c2e;font-size:.76rem;font-weight:800}.intro{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.intro .eyebrow{font-size:1rem;letter-spacing:.12em;line-height:1.35}.intro h1{font-family:Georgia,serif;font-size:clamp(2.5rem,4vw,3.5rem);margin:8px 0 10px;line-height:1.08;color:#082b49}.intro p{margin:0;color:#526477;font-size:1rem}.pill{background:#e8dbc3;color:#704e19;padding:9px 14px;border-radius:99px;font-weight:700;font-size:.85rem;white-space:nowrap}.layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:24px}.layout > div,.sidebar{min-width:0}.card{background:#fffefa;border:1px solid #e9e4d9;border-radius:23px;box-shadow:0 14px 35px rgba(16,42,60,.06);padding:25px}.card h2{font-size:1.25rem;margin:0 0 18px}.week-selector{display:flex;gap:7px;overflow-x:auto;padding:2px 1px 13px;scrollbar-width:thin}.week-selector button{border:0;background:#edf0f1;color:#29405a;width:37px;height:37px;border-radius:50%;font-weight:700;flex:none}.week-selector button.active{background:#08639a;color:#fff}.week-selector button.champ{background:#b88a3b;color:#fff}.week-selector button.champ.active{box-shadow:0 0 0 3px #f1dcaf}.event{display:flex;align-items:center;gap:25px;padding:20px 0 0;border-top:1px solid #e8e9e6}.date-block{border-radius:16px;background:#f3f2ed;text-align:center;padding:12px 18px;min-width:88px}.date-block span{display:block;font-size:.73rem;font-weight:800;letter-spacing:.06em}.date-block strong{display:block;font-family:Georgia,serif;font-size:2.7rem;font-weight:400;line-height:1}.event-details h3{font-family:Georgia,serif;font-size:1.55rem;margin:0 0 8px}.event-details p{margin:5px 0;color:#42576b}.small-icon{display:inline-block;width:20px;color:#98743c}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:clamp(14px,2vw,28px);flex-wrap:wrap}.section-head button,.text-button{background:none;border:0;color:#096294;font-weight:700;padding:7px 0}.standings{width:100%;border-collapse:collapse;font-size:.93rem}.standings th{background:#eff1f2;color:#415168;text-align:left;font-size:.72rem;letter-spacing:.06em;padding:8px}.standings td{border-bottom:1px solid #edf0ef;padding:9px 8px}.standings td:last-child,.standings th:last-child{text-align:right;font-weight:700}.standings tbody tr:last-child td{border-bottom:0}.championship-results{table-layout:fixed}.championship-results th:first-child,.championship-results td:first-child{text-align:center;vertical-align:middle}.championship-results th:last-child,.championship-results td:last-child{text-align:left;vertical-align:middle;overflow-wrap:anywhere}.medal{display:inline-grid;place-items:center;background:#bd8d37;color:white;border-radius:50%;width:25px;height:25px;font-size:.78rem;font-weight:800}.medal.silver{background:#a4a4a4}.medal.bronze{background:#a86b38}.sidebar{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-content:start}.layout > div > .card,.sidebar > .card{min-width:0;max-width:100%}.trophy{font-size:2.7rem;color:#b68b44;line-height:1}.champ-card{background:#082e4b;color:#fff;position:relative;overflow:hidden}.champ-card:after{content:'♠';position:absolute;right:-10px;top:-54px;font-size:16rem;color:rgba(255,255,255,.035);pointer-events:none}.champ-card .eyebrow{color:#dbbd82}.champ-card h2{font-family:Georgia,serif;font-size:2rem;margin:7px 0}.champ-card p{color:#d5e1e7;line-height:1.55}.champ-card button,.primary{background:#fff;color:#082e4b;border:0;border-radius:100px;padding:12px 19px;font-weight:800}.champ-card button{margin-top:8px}.qualify{line-height:1.55;color:#4a5a68;margin:0 0 16px}.mini-score{display:grid;grid-template-columns:1fr auto;border-top:1px solid #e8e9e6;padding:11px 2px;font-size:.93rem}.mini-score strong{color:#9b6c24}.rules{background:#f3ede1;border-radius:15px;padding:14px 17px;font-size:.88rem;line-height:1.5;color:#46515a;margin-top:18px}.rules strong{display:block;color:#15324a;margin-bottom:4px}.tabs{display:flex;border-bottom:1px solid #e7e9e8;gap:6px;margin-bottom:18px;overflow-x:auto}.tabs button{border:0;background:none;padding:11px 13px;color:#51657a;white-space:nowrap}.tabs button.active{color:#062e4b;border-bottom:3px solid #0a6597;font-weight:800}.result-title{font-size:.95rem;font-weight:800;margin-bottom:8px}.empty{color:#647484;padding:26px 0;line-height:1.5}.bottom-nav{display:none}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:760px){.masthead{padding:14px 16px}.brand-mark{width:47px;height:47px}.brand-mark img{transform:scale(.84);transform-origin:top left}.brand-name{font-size:.92rem}.brand-small{font-size:.92rem}.admin-link{color:#e3d1af;font-size:.85rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap;align-self:flex-end;padding-bottom:2px}.season-label{display:none}.admin-link{font-size:.75rem}.shell{padding:26px 16px 24px}.intro{align-items:start}.intro h1{font-size:clamp(2.25rem,7vw,2.8rem)}.pill{font-size:.73rem}.layout{display:block}.sidebar{margin-top:18px}.card{padding:20px;border-radius:20px}.event{gap:16px}.date-block{min-width:76px;padding:12px}.date-block strong{font-size:2.25rem}.event-details h3{font-size:1.3rem}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:5;background:#fffefa;box-shadow:0 -5px 20px #09243e18;justify-content:space-around;padding:9px 10px calc(8px + env(safe-area-inset-bottom))}.bottom-nav button{background:none;border:0;color:#5b6c7d;font-size:.7rem;min-width:67px}.bottom-nav button.active{color:#073451;font-weight:800}.bottom-nav span{display:block;font-size:1.2rem;margin-bottom:2px}}@media(max-width:600px){.masthead{padding-inline:16px}.shell{padding-inline:16px}.season-table{table-layout:fixed;font-size:.875rem}.season-table th,.season-table td{box-sizing:border-box;padding:9px 2px}.season-table th{font-size:.75rem;letter-spacing:0}.season-table col:nth-child(1){width:14%}.season-table col:nth-child(2){width:30%}.season-table col:nth-child(3){width:18%}.season-table col:nth-child(4){width:22%}.season-table col:nth-child(5){width:16%}.desktop-label{display:none}.mobile-label{display:inline}}@media(max-width:390px){.intro h1{font-size:2.3rem}.pill{padding:7px 10px}}
 .season-summary{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}.stat{background:#f1f4f3;border-radius:13px;padding:11px 14px;color:#4c6070;font-size:.83rem}.stat strong{display:block;color:#092e4b;font-size:1.4rem;line-height:1.15}.table-scroll{overflow-x:auto}.season-table{width:100%;min-width:0}.season-table th,.season-table td{white-space:nowrap}.season-table td:nth-child(2){overflow:hidden;text-overflow:ellipsis}.mobile-label{display:none}.season-table td:nth-child(3){font-weight:800;color:#092e4b}.season-table th:first-child,.season-table td:first-child,.season-table th:nth-child(n+3),.season-table td:nth-child(n+3){text-align:center}.data-note{font-size:.83rem;color:#647484;line-height:1.5;margin:15px 0 0}#championshipWinner{margin-top:0;display:flex;align-items:center;gap:12px}#championshipWinner[hidden]{display:none}.champion-star{font-size:2.5rem;line-height:1;flex:none}.champion-copy{display:flex;flex-direction:column;gap:3px;min-width:0;line-height:1.3}.champion-copy strong{font-size:1.1rem;overflow-wrap:anywhere}.winner-note{background:#f8f0df;border:1px solid #e8d3a9;border-radius:12px;padding:12px 14px;color:#6f4d1c;font-weight:700;margin:17px 0}.week-win{display:inline-block;color:#9b6c24;font-size:.75rem;margin-left:5px;font-weight:800}.player-details{display:grid;gap:9px}.player-row{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #edf0ef;padding:6px 2px;font-size:.9rem;line-height:1.35}.player-row strong{min-width:0}.player-row span:last-child{color:#526477;text-align:right;min-width:0} .season-picker{display:grid;gap:5px;color:#704e19;font-size:.85rem;font-weight:800}.season-picker details{position:relative;width:max-content;max-width:100%;color:#082e4b}.season-picker summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px;white-space:nowrap;cursor:pointer;background:#fffefa;border:1px solid #b9aa90;border-radius:10px;padding:9px 10px;font-size:15px;font-weight:700;box-sizing:border-box}.season-picker summary::-webkit-details-marker{display:none}.season-picker summary:focus-visible,.season-options button:focus-visible{outline:3px solid #6fb8e6;outline-offset:2px}.season-options{position:absolute;z-index:20;right:0;top:calc(100% + 5px);width:max-content;min-width:100%;max-width:min(92vw,360px);max-height:45vh;overflow:auto;box-sizing:border-box;padding:5px;background:#fffefa;border:1px solid #b9aa90;border-radius:10px;box-shadow:0 12px 30px #082e4b33}.season-options button{display:block;width:100%;text-align:left;white-space:nowrap;border:0;border-radius:6px;background:transparent;color:#082e4b;padding:10px 8px;font:600 15px/1.3 system-ui,sans-serif;cursor:pointer}.season-options button:hover,.season-options button[aria-current="true"]{background:#e8f0f3}@media(max-width:600px){.intro{flex-wrap:wrap}.season-picker{width:100%}.season-picker details{width:100%}.season-options{left:0;right:auto;width:100%;max-width:none}}@media(max-width:760px){.layout{display:flex;flex-direction:column;gap:18px}.layout > div,.sidebar{display:contents}#standings{order:1}#schedule{order:2}}#schedule,#standings{scroll-margin-top:20px}@media(max-width:600px){.season-table .desktop-label{display:none}.season-table .mobile-label{display:inline}.season-table th{font-size:.875rem}}@media(max-width:600px){#standings .section-head{flex-direction:column;align-items:flex-start;gap:4px}#standings .text-button{white-space:nowrap}}.admin-short{display:none}
@media(max-width:600px){
  .masthead{gap:12px;padding:12px 16px;min-width:0}
  .brand{gap:10px;min-width:0}
  .brand-mark{width:44px;height:44px}
  .brand-name,.brand-small{font-size:.82rem;line-height:1.05}
  .brand-small{letter-spacing:.27em;margin-top:3px}
  .admin-link{flex:none;align-self:flex-end;font-size:.82rem;padding:0 0 2px 8px}
  .admin-full{display:none}.admin-short{display:inline}
  .shell{padding-top:22px}
  .intro{gap:15px;margin-bottom:22px}
  .intro .eyebrow{font-size:.76rem;letter-spacing:.1em}
  .intro h1{font-size:clamp(2rem,8vw,2.35rem);line-height:1.1;margin:5px 0 7px}
  .intro p{font-size:.9rem;line-height:1.35}
  .season-picker{gap:6px;font-size:.82rem}
  .season-picker summary{min-height:45px}
  #standings{padding:18px 16px}
  #standings .section-head{gap:3px;margin-bottom:12px}
  #standings .section-head h2{font-size:1.2rem;margin:0}
  #standings .text-button{font-size:.84rem;padding:3px 0}
  .bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding-inline:6px}
  .bottom-nav button{min-width:0;padding-inline:0;font-size:.65rem;white-space:nowrap}
}


.intro > div:first-child{border-left:3px solid #bd8d37;padding-left:17px}
.intro .eyebrow{font-size:.72rem;letter-spacing:.12em;line-height:1.25}
.intro h1{font-size:clamp(2.25rem,3.5vw,3rem);letter-spacing:-.025em;margin:4px 0 5px}
.intro{margin-bottom:18px}
@media(max-width:760px){.intro > div:first-child{padding-left:12px;border-left-width:2px}.intro h1{font-size:clamp(2rem,8vw,2.5rem)}.intro{margin-bottom:16px}}
#standings .intro{align-items:center;flex-wrap:wrap;gap:18px;margin:0 0 22px;padding:0 0 22px;border-bottom:1px solid #e9e4d9}
#standings .intro > div:first-child{min-width:240px;flex:1}
#standings .intro h1{font-size:clamp(2rem,3vw,2.65rem)}
#standings .season-picker{min-width:220px}
@media(max-width:760px){#standings .intro{gap:12px;margin-bottom:18px;padding-bottom:18px}#standings .season-picker{width:100%}#standings .intro > div:first-child{min-width:0}}

#printPreview{position:fixed;inset:0;z-index:100;background:#e7e7e7;overflow:auto;padding:20px;color:#111}#printPreview[hidden]{display:none}.print-controls{max-width:816px;margin:0 auto 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.print-controls button,.print-controls select{padding:8px 12px;font:inherit}.paper{background:white;width:7.5in;min-height:10in;margin:auto;padding:0.12in;font-family:Arial,sans-serif;box-shadow:0 3px 20px #0002}.paper h1{font-size:20px;margin:0 0 6px}.paper .paper-meta{font-size:12px;margin-bottom:16px}.paper-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.paper h2{font-size:14px;margin:0 0 7px}.paper table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:11px}.paper th{text-align:left;font-size:10px;border-bottom:2px solid #111;height:24px}.paper td{border-bottom:1px solid #bbb;height:25px;padding:3px 2px;white-space:nowrap;overflow-wrap:normal}.paper .pts{width:32px;text-align:right;padding-right:7px}.paper .ft{width:22px;text-align:center}.paper .wins{width:30px;text-align:center}.paper .print-standings td.pts{font-weight:700}.paper .weekly-form{margin-top:24px}.paper .weekly-form:first-child{margin-top:0}.paper .weekly-form td{height:30px}.paper .paper-foot{font-size:10px;margin-top:16px;color:#444}.paper-page+.paper-page{break-before:page;margin-top:30px}
@media(max-width:760px){#printPreview{padding:12px}.paper{width:100%;min-width:0}.paper-columns{gap:14px}.paper td{font-size:10px}}
@page{size:letter portrait;margin:.5in}
@media print{body>*{display:none!important}body>#printPreview{display:block!important;position:static;padding:0;overflow:visible;background:white}.print-controls{display:none!important}.paper{width:7.5in;min-height:0;padding:0;box-shadow:none;margin:0}.paper-columns{gap:24px}.paper td{font-size:11px}.paper-page{break-inside:avoid}.paper-page+.paper-page{margin-top:0}.paper h1{font-size:20px}}
.brand-mark svg{display:block;width:100%;height:100%;overflow:hidden}
/* Compact schedule and aligned player details. */
#schedule{padding:18px}
#schedule h2{margin-bottom:12px;font-size:1.15rem}
#schedule .week-selector{gap:5px;padding-bottom:10px}
#schedule .week-selector button{width:34px;height:34px;font-size:.875rem}
#schedule .event{gap:12px;padding:12px 0}
#schedule .date-block{min-width:66px;padding:8px 10px;border-radius:10px}
#schedule .date-block strong{font-size:2rem}
#schedule .date-block span{font-size:.65rem;letter-spacing:.02em}
#schedule .event-details{min-width:0}
#schedule .event-details h3{font-size:1.2rem;margin:0 0 4px}
#schedule .event-details p{font-size:.85rem;line-height:1.35;margin:3px 0}
#schedule .tabs{gap:0;margin-bottom:12px}
#schedule .tabs button{flex:1;padding:10px 5px;font-size:.85rem}
#schedule .result-title{font-size:.875rem;margin-bottom:6px}
#schedule .winner-note{padding:9px 10px;margin:8px 0;font-size:.875rem;border-radius:9px}
#schedule #championshipWinner{margin:0 0 12px}
#schedule .standings{font-size:.9rem;table-layout:fixed}
#schedule .standings th{font-size:.7rem;letter-spacing:.025em;padding:7px 5px}
#schedule .standings td{padding:6px 5px;line-height:1.3;vertical-align:middle}
#schedule .standings th:first-child,#schedule .standings td:first-child{width:42px;text-align:center}
#schedule .standings:not(.championship-results) th:last-child,#schedule .standings:not(.championship-results) td:last-child{width:57px}
#schedule .standings td:nth-child(2){overflow-wrap:anywhere}
#schedule .medal{width:22px;height:22px;font-size:.75rem}
#schedule .week-win{font-size:.68rem;white-space:nowrap}
#schedule .empty{padding:16px 0}
#schedule .player-details{display:block}
.player-detail-head,.player-detail-summary{display:grid;grid-template-columns:minmax(0,1fr) 32px 40px;gap:6px;align-items:center}
.player-detail-head{background:#eff1f2;color:#415168;padding:7px 6px;font-size:.68rem;font-weight:800}
.player-detail-head span:not(:first-child),.player-detail-summary>span{text-align:center;font-variant-numeric:tabular-nums}
.player-detail-item{padding:7px 6px;border-bottom:1px solid #e1e6e8}
.player-detail-item:nth-child(odd){background:#f7f8f6}
.player-detail-summary{font-size:.875rem;line-height:1.35}
.player-detail-summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.player-week-finishes{display:flex;flex-wrap:wrap;gap:3px 10px;margin-top:4px;font-size:.75rem;line-height:1.45;color:#183b55;font-variant-numeric:tabular-nums}
.player-week-finishes>span{white-space:nowrap}
.finish-week{color:#526477}
@media(max-width:600px){#schedule{padding:16px}#schedule .champion-copy strong{font-size:1rem}}

/* A quiet, expandable player list keeps weekly detail within reach. */
#schedule .player-detail-hint{font-size:.8rem;color:#526477;margin:0 0 10px;line-height:1.4}
#schedule .player-detail-head{padding:7px 8px;grid-template-columns:minmax(0,1fr) 34px 42px}
#schedule .player-detail-item{padding:0;background:transparent;border-bottom:1px solid #dde3e5}
#schedule .player-detail-summary{list-style:none;cursor:pointer;min-height:44px;padding:10px 8px;grid-template-columns:minmax(0,1fr) 34px 42px;font-size:.9rem}
#schedule .player-detail-summary::-webkit-details-marker{display:none}
#schedule .player-detail-summary strong{display:flex;gap:8px;align-items:center;font-weight:650}
#schedule .player-detail-summary strong::before{content:'›';color:#096294;flex:none;font-size:1.2rem;line-height:1}
#schedule .player-detail-item[open] .player-detail-summary strong::before{transform:rotate(90deg)}
#schedule .player-detail-summary>span{font-weight:700;color:#183b55}
#schedule .player-detail-summary:hover{background:#f1f5f6}
#schedule .player-detail-summary:focus-visible{outline:3px solid #187ea3;outline-offset:-3px}
#schedule .player-detail-item[open]{background:#f4f7f7}
#schedule .player-week-finishes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0 8px 10px 25px;font-size:.8rem}
#schedule .player-week-finishes>span{padding:5px 0;display:flex;gap:5px;align-items:baseline}
#schedule .finish-week{font-weight:400}
#schedule .player-no-finishes{font-size:.8rem;color:#526477;margin:0;padding:0 8px 12px 25px}

#schedule .week-selector button{width:auto;min-width:62px;padding:0 10px;border-radius:8px;white-space:nowrap}
#schedule .week-selector button.champ{min-width:34px}
#schedule .player-week-finishes{grid-template-columns:repeat(2,minmax(0,1fr))}

#schedule .player-week-finishes{display:flex;flex-wrap:wrap;gap:2px 12px}
#schedule .player-week-finishes>span{padding:2px 0;gap:4px}
#schedule .season-picker{margin:0 0 14px;width:100%}#schedule .season-picker details{width:100%}#schedule .season-options{left:0;right:auto;width:100%;max-width:none}
/* Balanced, compact desktop series heading. */
@media(min-width:761px){
  #standings .intro{margin-bottom:18px;padding-bottom:18px}
  #standings .intro > div:first-child{padding-left:14px}
  #standings .intro .eyebrow{font-size:.88rem;letter-spacing:.06em;line-height:1.35}
  #standings .intro h1{font-size:2.15rem;line-height:1.12;margin:5px 0 7px}
  #standings .intro p{font-size:.93rem;line-height:1.35}
}
/* Dates and title at left, series details at right. */
@media(min-width:761px){
  #standings .intro{margin-bottom:10px;padding-bottom:0;border-bottom:0}
  #standings .intro > div:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 24px;min-width:0;flex:1 1 100%;padding:0 0 9px;border-left:0;border-bottom:3px solid #bd8d37}
  #standings .intro .eyebrow{grid-column:1;grid-row:1;font-size:.85rem;letter-spacing:.03em;line-height:1.35}
  #standings .intro h1{grid-column:1;grid-row:2;font-size:2rem;line-height:1.12;margin:0;white-space:nowrap}
  #standings .intro p{grid-column:2;grid-row:2;font-size:.85rem;line-height:1.5;margin:0}
  #standings .intro p span{white-space:nowrap}
}
.schedule-results > h2{color:#526477}.standings-through{display:inline;font:inherit;color:#526477;margin-left:0;letter-spacing:0;white-space:nowrap}#weeklyWinner[hidden]{display:none}
/* Selected cream-and-gold desktop banner and aligned standings row. */
@media(min-width:761px){
  #standings .intro{margin:-25px -25px 10px;padding:25px 25px 14px;background:linear-gradient(180deg,#fffdf7 0%,#f7eed9 100%);border-radius:22px 22px 0 0;border-bottom:2px solid #bd8d37;box-shadow:0 3px 8px rgba(112,78,25,.04)}
  #standings .intro > div:first-child{border-bottom:0;padding-bottom:0}
  #standings .section-head{align-items:baseline;flex-wrap:nowrap;gap:12px;margin-bottom:16px}
  #standings .section-head h2{font-size:clamp(.9rem,1.65vw,1.25rem);line-height:1.3;margin:0;white-space:nowrap}
  #standings .section-head .text-button{font-size:clamp(.8rem,1.4vw,1rem);line-height:1.3;padding:0;white-space:nowrap;flex-shrink:0}
}

/* Pale blue panel separates date selection and the winner from results. */
@media(min-width:761px){
  #schedule .schedule-banner{margin:-18px -18px 18px;padding:18px;background:linear-gradient(145deg,#f0f6f9 0%,#dfebf2 100%);border:0;border-bottom:1px solid #cbdde7;border-radius:22px 22px 0 0;box-shadow:0 5px 12px rgba(8,46,75,.08)}
  #schedule .schedule-banner .season-picker{color:#244c66}
  #schedule .schedule-banner .season-picker summary{background:#fffefa;border-color:#aac1ce}
  #schedule .schedule-banner #championshipWinner{margin-bottom:0;background:#fffaf0;border-color:#e2cca2}
  #schedule .schedule-banner #weeklyWinner{margin-bottom:0}
}

/* Mobile series banner matches desktop colors. */
@media(max-width:760px){
  #standings .intro > div:first-child{border-left:0;padding-left:0}
  #standings .section-head{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0 0 12px;padding:0}
  #standings .section-head h2{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 .3em;margin:0;line-height:1.3;text-align:left}
  #standings .standings-through{margin:0}
  #standings .section-head .text-button{margin:0;padding:0;line-height:1.3}
  #standings .intro{margin:-20px -20px 10px;padding:20px 20px 14px;background:linear-gradient(180deg,#fffdf7 0%,#f7eed9 100%);border:0;border-bottom:2px solid #bd8d37;border-radius:19px 19px 0 0;box-shadow:0 3px 8px rgba(112,78,25,.04)}
  #schedule .schedule-banner{margin:-18px -18px 18px;padding:18px;background:linear-gradient(145deg,#f0f6f9 0%,#dfebf2 100%);border-bottom:1px solid #cbdde7;border-radius:19px 19px 0 0;box-shadow:0 5px 12px rgba(8,46,75,.08)}
  #schedule .schedule-banner .season-picker{color:#244c66}
  #schedule .schedule-banner .season-picker summary{background:#fffefa;border-color:#aac1ce}
  #schedule .schedule-banner #championshipWinner{margin-bottom:0;background:#fffaf0;border-color:#e2cca2}
  #schedule .schedule-banner #weeklyWinner{margin-bottom:0}
}
@media(max-width:600px){#schedule .schedule-banner{margin:-16px -16px 18px;padding:16px}#standings .intro{margin:-18px -16px 10px;padding:18px 16px 14px}}

/* Single-line brand on mobile. */
.brand-word-space{display:none}
@media(max-width:760px){
  .app{width:100%;max-width:100%;overflow-x:clip}
  .masthead,.shell{width:100%;max-width:100%;min-width:0}
  .masthead{flex-wrap:wrap}
  .layout{width:100%;min-width:0;align-items:stretch}
  #standings,#schedule,.shell > .intro{width:100%;min-width:0;max-width:100%}
  .table-scroll,.tabs,.week-selector{min-width:0;max-width:100%}
  .brand{max-width:100%}
  .brand > :last-child{min-width:0}
  .brand > :last-child{display:flex;align-items:baseline;gap:.3em;white-space:nowrap;padding-bottom:2px}
  .brand{align-items:flex-end}
  .brand-name,.brand-small{font-size:clamp(1rem,4.4vw,1.2rem);font-weight:800;letter-spacing:.015em;line-height:1.1}
  .brand-name br{display:none}
  .brand-word-space{display:inline}
  .brand-small{display:inline;margin-top:0}
}
/* Separate dates and results with a visible page-background gap. */
#schedule.card{padding:0;background:transparent;border:0;box-shadow:none;border-radius:0}
#schedule .schedule-banner{margin:0 0 18px;padding:18px;border:1px solid #d9e3e8;border-radius:22px;background:linear-gradient(145deg,#f0f6f9 0%,#dfebf2 100%);box-shadow:0 5px 12px rgba(8,46,75,.06)}
#schedule .schedule-results{padding:18px}
@media(max-width:760px){#schedule .schedule-banner{border-radius:19px}}
@media(max-width:600px){#schedule .schedule-banner,#schedule .schedule-results{padding:16px}}
/* Mobile divider between standings and dates / schedule. */
@media(max-width:760px){#schedule::before{content:"";display:block;height:3px;margin:2px 0 20px;border-radius:3px;background:#b68b44;box-shadow:0 1px 0 #ffffff}}
@media(max-width:760px){#standings .intro p{display:flex;align-items:baseline;gap:0;white-space:nowrap;font-size:clamp(11px,3.5vw,16px);font-weight:500;letter-spacing:-.025em;line-height:1.5;margin-inline:0}#standings .intro p br{display:none}#standings .intro p .championship-tagline::before{content:" • ";white-space:pre;color:#956c2e}}
/* Space between the series banner and standings. */
#standings .intro{margin-bottom:24px}
#standings.card{padding:0;background:transparent;border:0;box-shadow:none;border-radius:0}
#standings .intro{margin:0 0 20px;padding:25px;border:1px solid #e9e4d9;border-bottom:2px solid #bd8d37;border-radius:22px;background:linear-gradient(180deg,#fffdf7 0%,#f7eed9 100%)}
#standings .standings-body{padding:25px}
@media(max-width:760px){#standings .intro{padding:20px;border-radius:19px}#standings .standings-body{padding:20px}}
@media(max-width:600px){#standings .intro{padding:18px 16px}#standings .standings-body{padding:18px 16px}}
#standings .intro{border-bottom:1px solid #e9e4d9;border-left:4px solid #bd8d37}
#standings .intro,#schedule .schedule-banner{margin-bottom:12px}
#schedule .schedule-banner{border-left:4px solid #bd8d37}
#standings .intro,#schedule .schedule-banner{border-left:1px solid #e1ddd2;border-top:3px solid #bd8d37}
#standings .intro,#schedule .schedule-banner{border:1px solid rgba(8,46,75,.08);box-shadow:0 4px 12px rgba(8,46,75,.07)}
#standings .intro{background:linear-gradient(180deg,#fbf6e9,#eee1c6)}
#schedule .schedule-banner{background:linear-gradient(180deg,#edf4f7,#d9e6ee)}
@media(max-width:760px){.bottom-nav a{font-size:.6rem!important;padding:8px 0!important}.bottom-nav a span{font-size:1.1rem}}
[hidden]{display:none!important}
.layout[hidden],#administrator-panel[hidden]{display:none!important}.page-tabs{display:flex;gap:8px;margin:0 0 16px;border:0;padding:0}.page-tabs button{background:#fff9ed;color:#062941;border:1px solid #c5a05d;border-radius:999px;padding:12px 24px;font-weight:750;font-size:1rem;cursor:pointer;box-shadow:0 2px 5px #0629410d}.page-tabs button.active{background:#062941;color:#fff;border-color:#062941;box-shadow:0 2px 5px #0629411a}.page-tabs button:focus-visible{outline:3px solid #c5a05d;outline-offset:3px}@media(max-width:760px){.page-tabs{padding-left:0;gap:6px;margin-bottom:12px}.page-tabs button{flex:1;padding:12px 8px;font-size:.95rem}}
.masthead{height:92px;min-height:92px;flex-wrap:nowrap}.brand-mark svg{width:100%;height:100%}@media(max-width:760px){.masthead{height:75px;min-height:75px}}@media(max-width:600px){.masthead{height:68px;min-height:68px}}html[data-initial-tab="host"] .layout{display:none!important}html[data-initial-tab="host"] #administrator-panel{display:block!important}#standings{min-height:var(--refresh-standings,0px)}#tabContent{min-height:var(--refresh-tabContent,0px)}#administrator-frame{min-height:max(520px,var(--refresh-administrator-frame,520px))}
html[data-initial-tab="stats"] .layout{display:none!important}html[data-initial-tab="stats"] #player-stats-panel{display:block!important}#player-stats-panel[hidden]{display:none}#player-stats-frame{min-height:max(520px,var(--refresh-player-stats-frame,520px))}@media(max-width:760px){.page-tabs button{flex:1;min-width:0;padding:10px 8px;white-space:nowrap;font-size:14px}.page-tabs{gap:5px}}
/* Keep touch-and-hold on public scoreboards from selecting and magnifying text. */
.layout,.page-tabs{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
/* Keep horizontal swipes inside the week strip rather than moving the page. */
html{overflow-anchor:none;overflow-x:hidden;overscroll-behavior-x:none}
body{width:100%;min-width:0;overflow-x:hidden;overscroll-behavior-x:none}
@supports(overflow:clip){html,body{overflow-x:clip}}
.app{width:100%;min-width:0;max-width:100%}
.layout>*{min-width:0;max-width:100%}
.week-selector,.table-scroll{overscroll-behavior-x:contain;max-width:100%;min-width:0}
@media print{html,body{overflow:visible}}
/* Shared title-box treatment, based on the Poker Series header. */
:is(#standings .intro,.intro.gold-title){display:block;height:auto;min-height:0;margin:0 0 12px;padding:25px;border:1px solid rgba(8,46,75,.08);border-radius:22px;background:linear-gradient(180deg,#fbf6e9,#eee1c6);box-shadow:0 4px 12px rgba(8,46,75,.07)}
:is(#standings .intro,.intro.gold-title)>div:first-child{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px 24px;min-width:0;border:0;padding:0}
:is(#standings .intro,.intro.gold-title) .eyebrow{grid-column:1;grid-row:1;text-transform:uppercase;color:#956c2e;font-size:.85rem;font-weight:800;letter-spacing:.03em;line-height:1.35}
:is(#standings .intro,.intro.gold-title) h1{grid-column:1;grid-row:2;font:700 2rem/1.12 Georgia,serif;letter-spacing:-.025em;color:#082b49;margin:0;white-space:normal;overflow-wrap:break-word}
:is(#standings .intro,.intro.gold-title) p{grid-column:2;grid-row:2;font-size:.85rem;font-weight:400;letter-spacing:normal;line-height:1.5;color:#526477;margin:0;white-space:normal}
:is(#standings .intro,.intro.gold-title) p span{white-space:normal}
@media(max-width:760px){
:is(#standings .intro,.intro.gold-title){padding:20px;border-radius:19px}
:is(#standings .intro,.intro.gold-title)>div:first-child{display:block}
:is(#standings .intro,.intro.gold-title) .eyebrow{font-size:.72rem;letter-spacing:.12em;line-height:1.25}
:is(#standings .intro,.intro.gold-title) h1{font-size:clamp(2rem,8vw,2.5rem);line-height:1.1;margin:8px 0 8px}
:is(#standings .intro,.intro.gold-title) p{display:flex;flex-wrap:wrap;align-items:baseline;gap:0;font-size:clamp(11px,3.5vw,16px);font-weight:500;letter-spacing:-.025em;line-height:1.5}
}
@media(max-width:600px){:is(#standings .intro,.intro.gold-title){padding:18px 16px}}
/* Give the stats description its full width on tablet and desktop. */
@media(min-width:761px){
.intro.gold-title:not(#standings .intro)>div:first-child{grid-template-columns:max-content minmax(0,1fr)}
.intro.gold-title:not(#standings .intro) h1{white-space:nowrap}
.intro.gold-title:not(#standings .intro) p{grid-column:1 / -1;grid-row:3;white-space:nowrap}
}
/* Keep the series description together beneath the title on larger screens. */
@media(min-width:761px){
#standings .intro>div:first-child{grid-template-columns:minmax(0,1fr)}
#standings .intro p{grid-column:1;grid-row:3;display:block;white-space:nowrap}
#standings .intro p br{display:none}
#standings .intro p .championship-tagline::before{content:" • ";white-space:pre;color:#956c2e}
}
/* Improve readability of the Player Stats description on phones. */
@media(max-width:760px){
.intro.gold-title:not(#standings .intro) p{font-size:16px;line-height:1.5;letter-spacing:normal}
}
/* Match description type across both title boxes; fit the series line as one unit. */
#standings .intro p{font-size:.85rem;font-weight:400;line-height:1.5;letter-spacing:normal;white-space:nowrap}
@media(max-width:760px){
#standings .intro p{display:block;font-size:16px;font-weight:400;line-height:1.5;letter-spacing:-.04em;white-space:nowrap}
#standings .intro p br{display:none}
}
/* Keep each mobile section close to its selector. */
@media(max-width:760px){
#standings .series-mobile-tabs{margin-bottom:12px}
.layout[data-series-view="schedule"]{gap:0}
.layout[data-series-view="schedule"] #standings{margin-bottom:0;padding-bottom:0}
.layout[data-series-view="schedule"] #standings .series-mobile-tabs{margin-bottom:12px}
}
/* Keep the Player Stats description at regular weight on every screen. */
.intro.gold-title:not(#standings .intro) p{font-weight:400}
/* Compact the series ranking numbers and give player names the remaining space. */
#standings .season-table{table-layout:fixed}
#standings .season-table col:nth-child(1){width:42px}
#standings .season-table col:nth-child(2){width:auto}
#standings .season-table col:nth-child(3){width:64px}
#standings .season-table col:nth-child(4){width:100px}
#standings .season-table col:nth-child(5){width:50px}
@media(max-width:760px){
#standings .season-table col:nth-child(1){width:36px}
#standings .season-table col:nth-child(2){width:auto}
#standings .season-table col:nth-child(3){width:42px}
#standings .season-table col:nth-child(4){width:30px}
#standings .season-table col:nth-child(5){width:36px}
#standings .season-table th,#standings .season-table td{padding-left:2px;padding-right:2px}
}
/* Separate Rank and Player headings without spreading out the numeric columns. */
@media(max-width:760px){
#standings .season-table col:nth-child(1){width:44px}
#standings .season-table th:nth-child(2),#standings .season-table td:nth-child(2){padding-left:7px;padding-right:7px}
#standings .season-table th:nth-child(n+3),#standings .season-table td:nth-child(n+3){padding-left:4px;padding-right:4px}
#standings .season-table col:nth-child(3){width:44px}
#standings .season-table col:nth-child(4){width:32px}
#standings .season-table col:nth-child(5){width:38px}
}
@media(max-width:760px){
#standings .season-table col:nth-child(5){width:48px}
#standings .season-table th:last-child,#standings .season-table td:last-child{padding-right:12px}
}
@media(max-width:760px){
#standings .season-table th:nth-child(3),#standings .season-table td:nth-child(3){text-align:left;padding-left:2px;padding-right:4px}
}
/* Share unused name-column space with the numeric columns on iPad and desktop. */
@media(min-width:761px){
#standings .season-table col:nth-child(1){width:50px}
#standings .season-table col:nth-child(3){width:80px}
#standings .season-table col:nth-child(4){width:124px}
#standings .season-table col:nth-child(5){width:68px}
#standings .season-table th,#standings .season-table td{padding-left:8px;padding-right:8px}
.stats-table th:first-child,.stats-table td:first-child{width:50px}
.stats-table th:nth-child(3),.stats-table td:nth-child(3){width:80px}
.stats-table th:nth-child(4),.stats-table td:nth-child(4){width:124px}
.stats-table th:nth-child(5),.stats-table td:nth-child(5),.stats-table th:nth-child(6),.stats-table td:nth-child(6){width:64px}
.stats-table th:nth-child(n+3),.stats-table td:nth-child(n+3){padding-left:8px;padding-right:8px}
}

/* Match the mobile section gaps to the Poker Series title box. */
@media(max-width:760px){
#standings .intro,#schedule .schedule-banner{margin-bottom:12px}
}

/* Bring the week selector slightly closer to the mobile date box. */
@media(max-width:760px){
#schedule .schedule-banner{margin-bottom:6px}
}

/* Isolate the mobile schedule scroller from Safari's outer page viewport. */
@media screen and (max-width:760px){
 html:has(.layout:not([hidden])[data-series-view="schedule"]),
 html:has(.layout:not([hidden])[data-series-view="schedule"]) body{height:100%;overflow:hidden;overscroll-behavior:none}
 body:has(.layout:not([hidden])[data-series-view="schedule"])>.app{position:fixed;inset:0;width:100%;height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:none;-webkit-overflow-scrolling:touch}
 body:has(.layout:not([hidden])[data-series-view="schedule"]) .shell{min-width:0}
 .week-selector{position:relative;isolation:isolate;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom}
 .week-selector button{position:relative}
}
.series-mobile-tabs{display:none}
@media(max-width:760px){
.series-mobile-tabs{display:flex;gap:8px;margin:0 0 12px}
#schedule .schedule-results>h2{display:none}
.series-mobile-tabs button{flex:1;min-width:0;min-height:44px;padding:10px 8px;border:1px solid #c5a05d;border-radius:12px;background:#fff9ed;color:#062941;font-size:.9rem;font-weight:700}
.series-mobile-tabs button[aria-pressed="true"]{background:#062941;color:#fff;border-color:#062941}
.layout[data-series-view="standings"]>.sidebar{display:none}
.layout[data-series-view="schedule"] #mobile-standings{display:none}
.layout[data-series-view="schedule"] #standings{min-height:0}
.layout[data-series-view="schedule"] #tabContent{min-height:0}
.layout[data-series-view="schedule"]>.sidebar{display:block;margin-top:0}
.layout[data-series-view="schedule"] #schedule{display:block}
.layout[data-series-view] > div{display:block}
#schedule::before{display:none}
}
@media(min-width:761px){html[data-initial-tab="stats"] .page-tabs,.shell:has(#player-stats-panel:not([hidden])) > .page-tabs{margin-bottom:16px}}


/* Standalone series use the shared Blue Iguana styles with their own masthead. */
.layout[hidden]{display:none}
.series-spade{display:grid;place-items:center;color:#efd59e;font:44px/1 Georgia,serif;background:#052238}
.series-hub-link{color:#e3d1af;font-weight:700;white-space:nowrap}
.series-stats{max-width:760px;margin:0 auto}
.series-player-details{list-style:none;padding:0;display:grid;gap:6px}
.series-player-details li{display:flex;justify-content:space-between;gap:16px;padding:8px 12px;border-radius:8px;background:linear-gradient(#fbf6e9,#eee1c6)}
.series-host{max-width:930px;margin:auto}
.series-host.admin-columns{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);gap:24px;align-items:start}
.series-host section{background:#f7f9f9;border:1px solid #dce5e8;border-left:5px solid #b68b44;border-radius:14px;padding:18px 22px;margin-bottom:16px}
.series-host h1,.series-host h2{font:1.5rem/1.25 Georgia,serif;color:#082e4b;margin:0 0 8px}
.series-host p{color:#42576b}
.series-host label{display:block;font-weight:700;margin:0 0 10px}
.series-host input,.series-host select{display:block;width:100%;font:inherit;padding:8px 10px;margin-top:5px;border:1px solid #cbd6df;border-radius:8px;background:#fff;color:#09243e}
.series-host button{padding:9px 16px;background:#0d5276;color:#fff;border:0;border-radius:8px;font-weight:700}
.series-host button.secondary{color:#184b64;background:#e5ecef}
.series-host button:disabled{opacity:.5}
.series-host .weekly-results-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
.series-host .context-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:14px;margin:12px 0}
.series-host .series-check{display:flex;align-items:center;gap:8px}
.series-host .series-check input{width:auto;margin:0}
.series-host form+h2{margin-top:18px}
.series-alert,.series-message{padding:10px 14px;border-radius:8px;background:#f6e0db;color:#762719}
.series-message{background:#e3efe9;color:#185738}
.series-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:760px){.series-host.admin-columns{grid-template-columns:1fr;gap:0}.series-spade{font-size:33px}.series-hub-link{font-size:.8rem}}
.brand-mark.series-custom-logo{display:grid;place-items:center;overflow:hidden;background:#052238}
.brand-mark.series-custom-logo img{display:block;width:100%;height:100%;object-fit:contain;transform:none}
.series-host .host-event-controls{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr);gap:14px;align-items:end;margin-bottom:12px}
.series-host .host-event-controls label,.series-host .host-field-label{display:block;margin:0;font-size:14px;font-weight:700;line-height:21px}
.host-date-picker{position:relative;margin-top:5px}
.series-host .host-event-controls select,.host-date-picker summary{width:100%;height:44px;padding:9px 10px;border:1px solid #aeb9be;border-radius:9px;background:#fff;color:#09243e;font:400 16px/24px system-ui,sans-serif}
.host-date-picker summary{display:flex;align-items:center;justify-content:space-between;gap:4px;list-style:none;cursor:pointer}
.host-date-picker summary::-webkit-details-marker{display:none}
.host-date-picker summary span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.host-date-options{position:absolute;z-index:10;top:calc(100% + 4px);left:0;min-width:100%;width:max-content;max-width:calc(100vw - 48px);padding:5px;border:1px solid #aeb9be;border-radius:9px;background:#fff;box-shadow:0 12px 25px #09243e2b}
.series-host .host-date-options button{display:block;width:100%;text-align:left;padding:10px 12px;border-radius:6px;background:#e8f0f3;color:#09243e;font:600 14px/1.35 system-ui,sans-serif}

.series-host.admin-columns section{margin:0;background:#f5f6f7;border-left-color:#b08e50}
.series-host .weekly-results{padding:18px 22px}
.series-host .weekly-results-heading{margin-bottom:14px}
.series-host .weekly-results-heading h1{margin:0}
.series-host .host-text-button{padding:0;background:none;color:#285e8a;text-decoration:underline;white-space:nowrap}
.series-host .weekly-results label{margin:0;font-size:14px;line-height:21px}
.series-host .weekly-results input,.series-host .weekly-results select{height:44px;border:1px solid #aeb9be;border-radius:9px;font-size:16px;font-weight:400}
.host-player-picker{position:relative;min-width:0}
.host-player-options{position:absolute;z-index:20;top:calc(100% + 5px);inset-inline:0;max-height:176px;overflow:auto;background:#fff;border:1px solid #aeb9be;border-radius:9px;box-shadow:0 8px 20px #09243e20}
.series-host .host-player-options button{display:block;width:100%;min-height:44px;padding:10px 12px;border-radius:0;background:#fff;color:#10263c;text-align:left;font-weight:500}
.series-host .host-player-options button:hover,.series-host .host-player-options button:focus-visible{background:#e8f0f3;outline-offset:-3px}
.series-host .host-player-options .host-add-option{border-top:1px solid #dce5e8;font-weight:700}
.host-player-options p{margin:0;padding:10px 12px;font-size:14px}
.host-result-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.series-host .host-result-actions button{min-height:44px;border-radius:28px;background:#10263c;color:#fff}
.series-host .host-result-actions button.secondary{background:#e6dbc4;color:#694d23}
.series-host .host-result-actions button.host-text-button{background:transparent;color:#285e8a}
.host-inline-add{margin-top:16px;padding-top:12px;border-top:1px solid #dce5e8}
.series-host .host-inline-add input{flex:1 1 120px;min-width:0;margin:0}
.series-host .weekly-results form+h2{margin-top:24px}
.host-posted-results{width:100%;border-collapse:collapse;text-align:left}
.host-posted-results th,.host-posted-results td{padding:7px 8px;border-bottom:1px solid #e5e5de}
.host-posted-results td:first-child{width:116px;font-weight:800}
.host-posted-results td:nth-child(2){color:#42576b;overflow-wrap:anywhere}
.series-host .host-roster{padding:22px 24px}
.host-roster-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:12px 0 14px}
.series-host .host-roster-grid button{padding:0;aspect-ratio:1;border-radius:6px;background:#e8e4da;color:#10263c;font-size:14px}
.series-host .host-roster-grid button[aria-pressed="true"]{background:#10263c;color:#fff}
.host-roster-letter{font-weight:700;border-bottom:1px solid #dce5e8;padding-bottom:6px}
.host-roster ul,.host-roster p{list-style:none;padding:0;margin:8px 0 0;font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.host-footer{grid-column:1/-1;border-top:1px solid #dce5e8;padding-top:14px}
@media(max-width:900px){
  .series-host.admin-columns{grid-template-columns:minmax(0,1fr);gap:16px}
}
@media(max-width:560px){
  .series-host .weekly-results,.series-host .host-roster{padding:16px}
  .series-host .host-event-controls{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:10px}
  .series-host .context-grid{gap:10px}
}
.series-host button.host-lock-week{margin-top:14px;background:#b68b44;color:#09243e}
.host-next-season{margin-bottom:14px;padding:12px 14px;border-radius:9px;background:#f3ede1}
.host-next-season p:first-child{margin-top:0}

.brand-mark.series-custom-logo img{position:static;inset:auto;max-width:100%}

.brand-mark.series-custom-logo.vr-league-logo{width:64px;height:64px;border:0;border-radius:0;background:transparent;overflow:visible}
@media(max-width:760px){.brand-mark.series-custom-logo.vr-league-logo{width:54px;height:54px}}

.brand-mark.series-default-logo{background-image:url('/assets/games.png');background-size:300% 100%;background-position:12.5% center;background-repeat:no-repeat}

/* Enlarge header artwork without changing the ribbon layout. */
.masthead .brand-mark{transform:scale(1.12);transform-origin:center}

.masthead .league-qr-trigger{flex:none;margin-left:auto;border:1px solid #d9c5a180;border-radius:8px;background:#ffffff0b;color:#efd9b0;padding:10px 13px;min-height:44px;font:700 13px/1.2 system-ui;cursor:pointer;white-space:nowrap}.league-qr-dialog{box-sizing:border-box;width:min(390px,calc(100vw - 32px));max-height:calc(100svh - 32px);overflow:auto;padding:24px;border:1px solid #d9c5a1;border-radius:18px;background:#fffefa;color:#09243e;text-align:center;font-family:system-ui;box-shadow:0 20px 70px #0006}.league-qr-dialog::backdrop{background:#021827b8}.league-qr-close{display:block;margin:0 0 14px auto;border:0;background:transparent;color:#476071;font:600 14px system-ui;cursor:pointer;min-height:36px}.league-qr-dialog h2{margin:0;font:700 24px/1.2 system-ui;color:#09243e}.league-qr-dialog p{margin:10px 0;color:#526477;font-size:14px}.league-qr-image{background:white;margin:14px auto;max-width:290px}.league-qr-image svg{display:block;width:100%;height:auto}.league-qr-url{display:block;overflow-wrap:anywhere;color:#476071;font-size:13px}.league-qr-download{display:block;margin-top:20px;padding:13px;border-radius:8px;background:#062941;color:#fff0d3;text-decoration:none;font-size:14px;font-weight:700}@media(max-width:760px){.masthead{gap:10px}.masthead .league-qr-trigger{padding:9px;font-size:11px}}@media print{.league-qr-trigger{display:none!important}}

.masthead .league-qr-trigger{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:9px;color:#efd9b0;background:transparent;border-color:transparent}.masthead .league-qr-trigger:hover{background:#ffffff12}.league-qr-trigger svg{display:block;flex:none}

/* Keep the league title stacked, including on phones. */
.masthead{flex-wrap:nowrap}
.masthead .brand{align-items:center;min-width:0;flex:1}
.masthead .brand>:last-child{display:block;min-width:0;white-space:normal;padding-bottom:0}
.masthead .brand-name{display:block;font-size:inherit;line-height:1.05;font-weight:800;letter-spacing:.07em;color:#fff}
.masthead .brand-name br{display:block}
.masthead .brand-word-space{display:none}
.masthead .brand-small{display:block;font-size:inherit;line-height:1.1;letter-spacing:.18em;margin-top:3px;color:#d9c5a1;font-weight:800}
.masthead .league-name-line{display:block;white-space:nowrap}
@media(max-width:760px){.masthead .brand-name,.masthead .brand-small{letter-spacing:.035em}.masthead .brand-small{letter-spacing:.18em}.masthead .brand{gap:12px}.masthead .brand>:last-child{font-size:inherit}}

/* Match Blue Iguana’s uppercase league header. */
.masthead .brand-name,.masthead .brand-small{text-transform:uppercase}

/* Equal title line rhythm and a larger QR icon inset from the edge. */
.masthead .brand-name,.masthead .brand-small{line-height:1.12;margin-top:0;margin-bottom:0}
.masthead .league-qr-trigger{margin-right:10px;width:48px;height:48px;padding:8px}
.masthead .league-qr-trigger svg{width:32px;height:32px}

/* Let multi-line league names determine header height, below mobile browser chrome. */
.masthead{height:auto;min-height:92px}
@media(max-width:760px){.masthead{height:auto;min-height:92px;padding-top:calc(32px + env(safe-area-inset-top,0px));padding-bottom:26px}}

/* Shared mobile poker ribbon dimensions. */
@media(max-width:760px){.masthead{box-sizing:border-box;height:calc(88px + env(safe-area-inset-top,0px));min-height:calc(88px + env(safe-area-inset-top,0px));padding-top:calc(12px + env(safe-area-inset-top,0px));padding-bottom:12px;align-items:center}}

@media(max-width:760px){.masthead .brand-mark{transform:scale(1.22);transform-origin:center}}

/* Shared, compact host tools matching Blue Iguana. */
.series-host .host-access{max-width:450px;box-sizing:border-box;margin:0}
.series-host .host-access h1{background:linear-gradient(#faf5e8,#eadbb5);padding:9px 14px;border:1px solid #d6c39d;border-radius:10px;font:700 20px/1.25 system-ui,sans-serif;margin:0 0 10px;letter-spacing:normal}
.series-host .host-access>p{margin:0 0 12px;font-size:16px}
.series-host .host-access label{font-size:14px;line-height:21px;margin:12px 0 0}
.series-host .host-access label:first-child{margin-top:0}
.series-host .host-access input,.series-host .host-access select{height:44px;font:400 16px/24px system-ui,sans-serif;border-color:#aeb9be;border-radius:9px}
.series-host .host-access button{width:100%;margin-top:12px;min-height:44px;border-radius:28px;background:#062941;color:white;font:800 16px system-ui,sans-serif}
.host-support{display:grid;gap:20px;min-width:0}
.series-host.host-toolbar{max-width:none;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;font:14px/1.4 system-ui,sans-serif}
.series-host.host-toolbar button{background:#062941;border-radius:28px;min-height:44px;color:#fff}
.series-host .manage-hosts{padding:22px 24px}
.series-host .manage-hosts summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;font:600 14px/1.5 system-ui,sans-serif;min-height:32px}
.manage-hosts summary::-webkit-details-marker{display:none}
.manage-hosts summary:after{content:'＋';font-size:18px;font-weight:400}
.manage-hosts details[open]>summary:after{content:'−'}
.manage-hosts summary:focus-visible{outline:3px solid #6fb8e6;outline-offset:2px}
.manage-hosts .host-row,.manage-hosts .host-add-panel{border-top:1px solid #d6dce0;padding:0}
.manage-hosts .host-row>strong{display:block;font:600 14px/32px system-ui,sans-serif}
.manage-hosts .host-add-panel>summary{min-height:44px;color:#096294}
.manage-hosts .host-result-actions{margin:8px 0 12px}
.manage-hosts .host-admin-role{font-size:12px;font-weight:400;color:#526477}
.manage-hosts form{padding:0 0 12px}
.series-host .manage-hosts label{font-size:14px;margin:12px 0 6px}
.series-host .manage-hosts input,.series-host .manage-hosts select{min-height:44px;font-size:16px}
.series-host .manage-hosts p{font-size:14px}
.series-host .manage-hosts form>button{width:100%;min-height:44px;border-radius:28px;background:#062941;color:#fff}
.host-star{color:#a87924}
@media(max-width:560px){.series-host .host-access{padding:12px 14px}.series-host .manage-hosts{padding:16px}.host-support{gap:16px}}

/* Match Blue Iguana host management type, spacing, and controls exactly. */
.series-host .manage-hosts h2{font:400 24px/1.25 Georgia,serif;margin:0 0 8px;color:#082e4b;letter-spacing:normal}
.series-host .manage-hosts{background:#f7f9f9;border-left-color:#b68b44;border-radius:14px}
.series-host .manage-hosts .host-row{font-size:14px}
.series-host .manage-hosts .host-row>strong{font-weight:700}
.series-host .manage-hosts .host-row button{background:#e8dbc3;color:#704e19;font:800 14px system-ui,sans-serif;border-radius:28px;padding:8px 12px;min-height:44px}
.series-host .manage-hosts .host-admin-role{font-size:12px;font-weight:400;color:#526477}
.series-host .host-roster .host-star{color:#a87924!important;font-family:Arial,sans-serif;font-variant-emoji:text;font-size:14px}
.series-host .manage-hosts input,.series-host .manage-hosts select{border-color:#aeb9be;border-radius:9px}
.series-host .manage-hosts form>button{font:800 16px system-ui,sans-serif;padding:12px 23px}

/* Keep the login panel flush with the navigation, as on Blue Iguana. */
.series-host:has(>.host-access){max-width:none;margin:0}
.series-host section.host-access{width:100%;max-width:450px;padding:22px 24px}
.series-host .host-access label{font-size:16px;line-height:24px;margin:12px 0 0}
.series-host .host-access label:first-child{margin-top:0}
.series-host .host-access input,.series-host .host-access select{margin-top:6px}
.series-host .host-access button{font:800 16px/24px system-ui,sans-serif;padding:12px 23px;min-height:48px}
@media(max-width:560px){.series-host section.host-access{padding:12px 14px}}

/* Reserve the scrollbar width before standings grow beyond the viewport. */
html{scrollbar-gutter:stable}

/* Shared tablet and desktop logo size for all poker club sites. */
@media(min-width:601px){.masthead{height:104px;min-height:104px;padding-block:16px}.masthead .brand-mark{width:72px;height:72px}}

/* Match Blue Iguana header type at each viewport size. */
.masthead .league-brand-copy{font-size:1.18rem}
@media(max-width:760px){.masthead .league-brand-copy{font-size:.82rem}}
@media(max-width:600px){.masthead .league-brand-copy{font-size:clamp(1rem,4.4vw,1.2rem)}}

.series-host .host-attendance{margin:0 0 14px;border:1px solid #d7d2c6;border-radius:9px;background:#fff}
.host-attendance summary{padding:11px 12px;min-height:44px;cursor:pointer;font-weight:700}
.host-attendance summary span{float:right;color:#4a5b64;font-size:14px;font-weight:500}
.host-attendance form{padding:4px 12px 12px}
.host-attendance .attendance-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}
.series-host .attendance-actions button{min-height:44px;background:#10263c;white-space:nowrap}
.host-attendance ul{list-style:none;margin:0;padding:0 12px 7px}
.host-attendance li{display:flex;align-items:center;justify-content:space-between;min-height:40px;border-top:1px solid #ebe8e0;gap:8px}
.series-host .host-attendance li button{min-height:40px}

#schedule .live-week-results h2{display:block;margin:0 0 4px}
.live-week-results>p{margin:0 0 12px;color:#536578;font-size:.88rem}
@media(min-width:761px){
  .layout[data-live-week="true"]{grid-template-columns:minmax(0,1fr)}
  .layout[data-live-week="true"]>div{display:none}
}
