*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#152538;background:#f4f6f8}.top{min-height:82px;background:linear-gradient(#082d56,#061d39);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:12px 28px}.logo{display:flex;align-items:center;text-decoration:none}.site-logo-img{height:84px;width:auto;display:block}.account{font-size:14px}.account a{color:#fff}.inline{display:inline}.inline button{background:none;border:0;color:#fff;text-decoration:underline;cursor:pointer;font:inherit}.nav{display:flex;background:linear-gradient(#15549a,#07336a);border-bottom:2px solid #09213d;padding-left:20px}.nav a{color:#fff;text-decoration:none;font-weight:800;padding:10px 24px;border-right:1px solid #5680aa}.nav a:hover{background:#1c64ad}.shell{max-width:1280px;margin:auto;padding:28px 18px 50px}.hero{display:grid;grid-template-columns:1.5fr 1fr;gap:25px;align-items:start;padding:45px 15px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:800;color:#23639f}.hero h1{font-size:43px;line-height:1.08;margin:12px 0}.hero h1 span{color:#0b4e91}.hero p{font-size:18px;line-height:1.6;color:#506070}.hero-card,.auth-card,.form-card{background:#fff;border:1px solid #ccd3db;border-radius:5px;box-shadow:0 4px 18px #00000010;padding:28px}.hero-side{display:flex;flex-direction:column;gap:16px}
.hero-card{border-top:5px solid #0b4e91}.hero-card li{padding:8px 0}.hero-actions{display:flex;gap:10px}.button{display:inline-block;padding:10px 17px;border-radius:4px;border:1px solid #aeb7c0;background:linear-gradient(#fff,#e8e8e8);color:#17314d;text-decoration:none;font-weight:800;cursor:pointer}.button.primary{background:linear-gradient(#39b965,#188a41);border-color:#15743a;color:#fff}.auth-card,.form-card{max-width:580px;margin:25px auto}.auth-card h1,.form-card h1{margin-top:0}.auth-card form,.form-card form{display:grid;gap:15px}.auth-card label,.form-card label{font-weight:700;display:grid;gap:6px}.auth-card input,.form-card input,.form-card select{height:42px;padding:8px;border:1px solid #b9c2cb;border-radius:3px;font-size:15px}.flash{padding:12px;border-radius:4px;margin-bottom:14px;background:#ffe9e9;border:1px solid #e3aaaa;color:#8c2020}.flash.ok{background:#e8f7ed;color:#176b35}.page-head,.poolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px}.page-head h1,.poolbar h1{margin:0 0 5px}.pool-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.pool-card{background:#fff;border:1px solid #ccd3db;border-top:4px solid #0b4e91;border-radius:4px;padding:18px;color:#203247;text-decoration:none;box-shadow:0 2px 8px #0000000b}.pool-card:hover{box-shadow:0 5px 15px #0002;transform:translateY(-1px)}.pool-name{font-size:20px;font-weight:800;margin-bottom:10px}.code{letter-spacing:2px}.empty{background:#fff;padding:30px;border:1px solid #ccd3db;text-align:center}.weekbar{display:flex;gap:30px;justify-content:center;align-items:center;background:#e8edf3;padding:10px;margin-bottom:12px;font-size:20px}.weekbar a{font-size:30px;color:#0b4e91;text-decoration:none}.switch-weeks{text-align:right;color:#152538;padding:4px 2px;margin-bottom:12px;font-size:16px}.switch-weeks-label{font-weight:800;margin-right:4px;color:#c0182f;font-size:18px}.switch-weeks a{color:#0b4e91;text-decoration:none;margin:0 3px}.switch-weeks a:hover{text-decoration:underline}.switch-weeks b{margin:0 3px}.pool-layout{display:grid;grid-template-columns:300px 1fr;gap:14px}.pool-layout>section{order:2}.pool-layout>aside{order:1}.panel{background:#fff;border:1px solid #c8ced5;box-shadow:0 1px 2px #0001;margin-bottom:14px}.panel-title{background:linear-gradient(#15549a,#07336a);color:#fff;font-weight:800;padding:8px 10px}.pick-head,.pick-row{display:grid;grid-template-columns:100px 1fr 24px 1fr 155px 75px;align-items:center}.pick-head{font-size:10px;font-weight:800;color:#52606d;background:#f0f2f5;padding:8px}.pick-row{min-height:45px;padding:5px 8px;border-bottom:1px solid #e5e8eb}.pick-row:nth-child(even){background:#fafafa}.pick-row label{white-space:nowrap}.pick-row select{height:30px}.actions{padding:12px;text-align:center}.pad{padding:12px;line-height:1.8}.entry{border-bottom:1px solid #eee;padding:4px 0}.big-code{font-size:38px;font-weight:900;letter-spacing:5px;color:#0b4e91;background:#eef5fc;padding:16px;text-align:center}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.members{width:100%;border-collapse:collapse}.members th,.members td{padding:9px;border-bottom:1px solid #e1e5e9;text-align:left}.members th{background:#f0f2f5}footer{background:#061d37;color:#fff;padding:14px 20px;text-align:center;font-size:12px}@media(max-width:900px){.hero,.pool-layout,.admin-grid{grid-template-columns:1fr}.pool-layout>section,.pool-layout>aside{order:0}.top{padding:12px 15px}.site-logo-img{height:60px}.account{font-size:12px}.nav{overflow:auto}.nav a{white-space:nowrap;padding:9px 14px}.pick-head{display:none}.pick-row{grid-template-columns:75px 1fr;gap:5px;padding:9px}.pick-row>span:nth-child(3){display:none}.pick-row>span:nth-child(4){grid-column:2}.pick-row>span:nth-child(5){grid-column:2}.pick-row select{grid-column:2}.hero h1{font-size:33px}.page-head,.poolbar{align-items:flex-start;flex-direction:column}}

/* --- Commissioner Control Center additions ------------------------------ */
.tabs{display:flex;gap:2px;background:#c8ced5;padding:2px;border-radius:4px;margin-bottom:14px;flex-wrap:wrap}
.tab{flex:1;text-align:center;padding:10px 14px;background:#fff;color:#17314d;text-decoration:none;font-weight:800;font-size:13px;white-space:nowrap}
.tab.active{background:linear-gradient(#15549a,#07336a);color:#fff}
.tab:not(.active):hover{background:#eef2f6}
.hint{color:#6b7785;font-size:13px;margin:-6px 0 4px}
.hint-inline{font-weight:400;color:#6b7785;font-size:12px}
.practice-prompt{margin:0 0 10px;font-size:15px}
.practice-prompt a{color:#c0182f;font-weight:800;text-decoration:none}
.practice-prompt a:hover{text-decoration:underline}
.button.small{padding:6px 10px;font-size:12px}
.button.danger{background:linear-gradient(#e85c5c,#c62d2d);border-color:#a32222;color:#fff}
.inline-form{display:flex;gap:6px;align-items:center;margin:0}
.inline-form input{height:32px;padding:4px 8px;border:1px solid #b9c2cb;border-radius:3px;font-size:13px}
.badge{display:inline-block;padding:3px 9px;border-radius:3px;font-size:11px;font-weight:800;letter-spacing:.5px}
.badge-commissioner{background:#eef5fc;color:#0b4e91}
.badge-open{background:#e8f7ed;color:#176b35}
.panel-title-link{display:block;color:#fff;text-decoration:none;cursor:pointer}
.panel-title-link:hover{background:linear-gradient(#1c64ad,#0a3d7c)}
.pool-logo-small{height:34px;width:auto;max-width:80px;vertical-align:middle;margin-right:10px;border-radius:4px;object-fit:contain}
.pool-logo-large{max-width:100%;max-height:220px;border-radius:4px;object-fit:contain}
.badge-closed{background:#fde;background:#f6e6e6;color:#8c2020}
.badge-locked{background:#fde9d0;color:#93540a}
.week-controls{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}
.score-input{width:60px;height:32px;padding:4px 6px;border:1px solid #b9c2cb;border-radius:3px}
.pick-row.locked{background:#f6e6e6}
.lock-tag{font-size:11px;font-weight:800;color:#8c2020;background:#fde;padding:2px 6px;border-radius:2px;vertical-align:middle}
.announcement{border-bottom:1px solid #eee;padding:10px 0}
.announcement:last-child{border-bottom:none}
.announcement-body{font-size:15px;line-height:1.5}
.announcement-meta{font-size:12px;color:#6b7785;margin-top:4px;display:flex;gap:10px;align-items:center}
.help-icon{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:50%;border:1.5px solid #0b4e91;color:#0b4e91;font-size:12px;font-weight:800;cursor:pointer;margin-left:6px;vertical-align:middle;background:#eef5fc;user-select:none}
.help-icon:hover,.help-icon:focus{background:#0b4e91;color:#fff;outline:none}
.help-modal-overlay{display:none;position:fixed;inset:0;background:#00000066;z-index:200;align-items:center;justify-content:center;padding:20px}
.help-modal-overlay.open{display:flex}
.help-modal{background:#fff;max-width:520px;width:100%;border-radius:6px;overflow:hidden;box-shadow:0 10px 40px #00000040}
.help-modal-header{background:linear-gradient(#15549a,#07336a);color:#fff;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;font-weight:800}
.help-modal-header button{background:none;border:0;color:#fff;font-size:22px;cursor:pointer;line-height:1;padding:0}
.help-modal-body{padding:18px 16px;line-height:1.6;font-size:14px;color:#203247;max-height:60vh;overflow-y:auto}
.help-modal-body p{margin:0 0 12px}
.help-modal-body p:last-child{margin-bottom:0}
.help-modal-footer{padding:12px 16px;border-top:1px solid #e5e8eb;text-align:right}
.format-group{border-left:3px solid #d7dfe6;padding-left:14px;margin:4px 0 10px}
.format-group-label{font-weight:800;font-size:13px;color:#3a4a5a;letter-spacing:.3px;text-transform:uppercase;margin-bottom:6px}
.form-card textarea{padding:8px;border:1px solid #b9c2cb;border-radius:3px;font:inherit;resize:vertical}
.form-card label.checkbox-row{display:flex!important;align-items:center;gap:8px}
.form-card label.checkbox-row input{height:auto;width:16px;flex:0 0 auto}
.standings-table td b{color:#0b4e91}
.link-button{background:none;border:0;color:#0b4e91;text-decoration:underline;cursor:pointer;font:inherit;padding:0}
.tiebreaker-box{display:flex;align-items:center;gap:10px;padding:14px 12px;background:#f0f2f5;border-top:1px solid #e5e8eb;font-size:16px;flex-wrap:wrap}
.tiebreaker-box .score-input{width:90px;height:38px;font-size:16px}
.key-checkbox{display:flex;align-items:center;gap:4px;font-weight:800;font-size:14px;color:#93540a;white-space:nowrap}
.key-checkbox input{width:16px;height:16px}
@media(max-width:900px){.tabs{flex-direction:column}.week-controls{flex-direction:column;align-items:flex-start}}

/* --- Pick sheet redesign (OFP-style team bars) -------------------------- */
/* Sized up across the board (day headers, team names, times, scores) since
   a lot of players in this pool are older and were finding the original
   sizes hard to read - larger text plus slightly wider fixed-width grid
   columns so nothing wraps or gets cut off at the bigger sizes. */
.day-panel{margin-bottom:2px}
.day-header{background:linear-gradient(#5a6b7d,#3d4a58);color:#fff;font-weight:800;font-size:14px;letter-spacing:.3px;padding:9px 12px}
.game-row{display:grid;grid-template-columns:88px 1fr 66px 1fr 76px 74px;gap:8px;align-items:center;padding:10px;border-bottom:1px solid #e5e8eb;background:#fff}
.game-row:nth-child(even){background:#fafafa}
.game-row.locked{background:#f6efe6}
.game-time{font-size:13px;color:#52606d;font-weight:700;line-height:1.3}
.team-bar{display:block;text-align:center;padding:12px 8px;border-radius:4px;border:1px solid #b9c2cb;background:#eef2f6;color:#203247;font-weight:800;font-size:16px;cursor:pointer;margin:0}
.team-bar input{display:none}
.team-bar.picked,.team-bar:has(input:checked){background:linear-gradient(#15549a,#07336a);color:#fff;border-color:#07336a}
.team-bar.readonly{cursor:default}
.team-bar.hidden-pick{background:#e5e8eb;color:#9aa5b1;font-style:italic;cursor:default}
.team-bar.result-win{background:linear-gradient(#39b965,#188a41);color:#fff;border-color:#15743a}
.team-bar.result-loss{background:linear-gradient(#e85c5c,#c62d2d);color:#fff;border-color:#a32222}
.team-bar.result-keywin{background:linear-gradient(#39b965,#188a41);color:#fff;border-color:#15743a;box-shadow:0 0 0 2px #f6c945 inset}
.team-bar.result-keyloss{background:linear-gradient(#e85c5c,#c62d2d);color:#fff;border-color:#a32222;box-shadow:0 0 0 2px #f6c945 inset}
.spread{text-align:center;font-size:12px;color:#52606d;font-weight:800;white-space:nowrap}
.extra-cell{text-align:center;font-size:13px}
.final-score{text-align:center;font-size:14px;font-weight:800;color:#17314d;white-space:nowrap}
.picks-footer{display:flex;justify-content:space-between;padding:10px 12px;background:#f0f2f5;font-size:15px;font-weight:800;color:#3a4a5a;border-top:1px solid #e5e8eb;margin-top:2px}
@media(max-width:900px){
  .game-row{grid-template-columns:1fr 1fr;gap:6px;padding:10px}
  .game-time{grid-column:1/-1}
  .spread{grid-column:1/-1}
}

/* --- "Picks ▾" nav dropdown --------------------------------------------- */
.dropdown-nav{position:relative;display:inline-block}
.dropdown-menu{display:none;position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid #ccd3db;border-radius:4px;box-shadow:0 4px 14px #00000022;min-width:170px;z-index:30;overflow:hidden}
.dropdown-nav.open .dropdown-menu{display:block}
.dropdown-menu a{display:block;padding:9px 14px;color:#17314d;text-decoration:none;font-weight:700;font-size:13px;border-bottom:1px solid #eee}
.dropdown-menu a:last-child{border-bottom:none}
.dropdown-menu a:hover{background:#eef2f6}

/* --- Top nav dropdowns (Pools / Picks / Standings / Manage Pool) --------- */
.nav{align-items:stretch}
.nav .dropdown-nav{display:flex}
.nav .dropdown-nav .dropdown-menu{margin-top:0;top:100%;border-radius:0 0 4px 4px}
.nav-drop{appearance:none;background:none;border:0;border-right:1px solid #5680aa;color:#fff;text-decoration:none;font-weight:800;font-family:inherit;font-size:1em;padding:10px 24px;cursor:pointer}
.nav-drop:hover{background:#1c64ad}
.dropdown-nav.open .nav-drop{background:#1c64ad}
.nav-pool-name{display:flex;align-items:center;color:#fff;text-decoration:none;font-weight:800;padding:10px 20px 10px 24px;border-right:1px solid #5680aa;background:#0a3d73;white-space:nowrap}
.nav-pool-name:hover{background:#0d4a8a}
.nav-right{margin-left:auto;display:flex}
.nav-right .dropdown-nav .dropdown-menu{left:auto;right:0;border-radius:4px 0 4px 4px}
.nav-right .nav-drop{border-right:0;border-left:1px solid #5680aa}
@media(max-width:900px){.nav-drop{padding:9px 14px}.nav-pool-name{padding:9px 14px}}

/* --- FAQ accordion -------------------------------------------------------
   Native <details>/<summary> - no JS needed, works with keyboard/screen
   readers automatically. Styled to echo the blue header bar + red accent
   used across the rest of the site (help-modal header, switch-weeks label). */
.faq-section{border:1px solid #d7dfe6;border-radius:6px;margin-bottom:10px;overflow:hidden;background:#fff}
.faq-section summary{cursor:pointer;list-style:none;background:linear-gradient(#15549a,#07336a);color:#fff;font-weight:800;padding:12px 16px;font-size:15px;letter-spacing:.2px}
.faq-section summary::-webkit-details-marker{display:none}
.faq-section summary::before{content:"▸";display:inline-block;margin-right:10px;transition:transform .15s}
.faq-section[open] summary::before{transform:rotate(90deg)}
.faq-section summary:hover{background:linear-gradient(#1c64ad,#0a3d73)}
.faq-section-body{padding:16px 18px}
.faq-item{margin-bottom:16px}
.faq-item:last-child{margin-bottom:0}
.faq-q{font-weight:800;color:#0a3d73;margin:0 0 6px}
.faq-a{color:#33465a;line-height:1.6;font-size:14px}
.faq-a b{color:#152538}

/* --- Poolwide Picks grid -------------------------------------------------
   Laid out OFP-style: one row per entry (best performers first), one
   column per game. The No./User Name columns stay pinned to the left as
   the table scrolls horizontally through the week's games. */
.poolwide-wrap{overflow-x:auto}
.poolwide-table{border-collapse:collapse;font-size:12px;white-space:nowrap;width:100%}
.poolwide-table th,.poolwide-table td{padding:7px 10px;border:1px solid #e1e5e9;text-align:center}
.poolwide-table th{background:#f0f2f5;font-size:11px;vertical-align:bottom}
.poolwide-table td.pw-no,.poolwide-table th.pw-no{position:sticky;left:0;background:#fff;z-index:2;width:28px}
.poolwide-table th.pw-no{background:#f0f2f5;z-index:3}
.poolwide-table td.pw-name,.poolwide-table th.pw-name{position:sticky;left:28px;background:#fff;z-index:2;text-align:left;font-weight:700;box-shadow:1px 0 0 #e1e5e9}
.poolwide-table th.pw-name{background:#f0f2f5;z-index:3}
.poolwide-table td.pw-hidden{color:#c3c9d1}
.poolwide-table td.pw-side-home{font-weight:800;color:#0b4e91}
.poolwide-table td.pw-side-away{font-weight:800;color:#c1631b}
.poolwide-table td.pw-loss{text-decoration:line-through;opacity:.6}
.poolwide-table td.pw-key{box-shadow:inset 0 0 0 2px #f6c945}
.poolwide-table tr.pw-row{cursor:pointer}
.poolwide-table tr.pw-row:hover td{background:#f7fafc}
.poolwide-table tr.pw-row:hover td.pw-no,.poolwide-table tr.pw-row:hover td.pw-name{background:#f7fafc}
.poolwide-table tr.pw-row.pw-highlighted td{background:#fdf3d8}
.poolwide-table tr.pw-row.pw-highlighted td.pw-no,.poolwide-table tr.pw-row.pw-highlighted td.pw-name{background:#fbe9bd}
.poolwide-table tr.pw-summary td{background:#f7f4e9;font-weight:800;color:#3a4a5a}
.poolwide-table tr.pw-summary td.pw-no,.poolwide-table tr.pw-summary td.pw-name{background:#f7f4e9}

/* --- Dashboard pool cards (with self-leave footer) ---------------------- */
.pool-card-link{color:inherit;text-decoration:none;display:block}
.pool-card-footer{margin-top:12px;padding-top:10px;border-top:1px solid #eee}
.pool-card-footer form{margin:0}
.pool-card-footer button{font-size:11px;color:#8c2020;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;font-weight:700}