:root { --ink:#11263d; --blue:#174f80; --orange:#ef7c32; --paper:#f4f1ea; --line:#d9dee3; }
html { font-size:16px; min-height:100%; }
body { color:var(--ink); background:var(--paper); margin:0; min-height:100vh; display:flex; flex-direction:column; font-family:Inter,Segoe UI,sans-serif; }
.navbar { background:#fff!important; }
.navbar-brand { color:var(--ink)!important; font-weight:800; letter-spacing:-.02em; }
.navbar>.navbar-shell { display:grid; grid-template-columns:auto minmax(0,1fr); gap:.35rem 1.5rem; align-items:start; }
.navigation-stack { grid-column:2; min-width:0; flex-direction:column; align-items:stretch!important; }
.navigation-row { flex-direction:row; flex-wrap:wrap; }
.user-navigation { margin-top:.25rem; padding-top:.25rem; border-top:1px solid var(--line); }
.user-navigation .nav-link { font-size:.9rem; }
.navbar-nav .nav-link { border-radius:8px; font-weight:600; }
.navbar-nav .nav-link.active { color:var(--blue)!important; background:#eaf2f8; box-shadow:inset 0 -3px 0 var(--orange); font-weight:800; }
.brand-mark { color:var(--orange); margin-right:.35rem; }
.announcement-strip{margin-top:-1rem;margin-bottom:1rem;background:var(--orange);color:#291708;box-shadow:0 5px 16px rgba(17,38,61,.12)}.announcement-strip-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:44px;padding-top:.4rem;padding-bottom:.4rem}.announcement-strip-inner.single-announcement{grid-template-columns:1fr}.announcement-slides{min-width:0}.announcement-slides p{display:flex;align-items:center;justify-content:center;gap:.7rem;margin:0;text-align:center}.announcement-slides p[hidden]{display:none}.announcement-slides strong{padding:.15rem .45rem;border-radius:999px;background:#fff7;color:#fff;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}.announcement-slides span{font-weight:750;overflow-wrap:anywhere}.announcement-pins{display:flex;align-items:center;justify-content:center;gap:.1rem}.announcement-pin{position:relative;width:30px;height:34px;padding:3px;border:0;background:transparent;cursor:pointer}.announcement-pin::before{position:absolute;right:13px;bottom:3px;width:12.25px;height:12.25px;border-radius:50%;background:#000;content:"";visibility:hidden}.announcement-pin::after{position:absolute;right:4px;bottom:3px;width:13px;height:27px;background:#fff;content:"";-webkit-mask:url("../images/kuzelka-aktuality.svg") center/contain no-repeat;mask:url("../images/kuzelka-aktuality.svg") center/contain no-repeat}.announcement-pin[aria-pressed="true"]::before{visibility:visible}.announcement-pin:focus-visible{outline:2px solid #291708;outline-offset:1px;border-radius:4px}
.announcement-pin::before{z-index:2}.announcement-pin::after{z-index:1}
.hero { padding:4.5rem 0 3rem; max-width:760px; }
.hero h1 { font-size:clamp(2.8rem,7vw,5.5rem); font-weight:900; line-height:.92; letter-spacing:-.055em; }
.hero p:not(.eyebrow) { font-size:1.2rem; color:#526274; margin-top:1.25rem; }
.eyebrow { color:var(--orange); font-weight:800; text-transform:uppercase; letter-spacing:.13em; }
.dashboard-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:1.5rem; }
.panel { background:#fff; border:1px solid var(--line); border-radius:18px; padding:1.35rem; box-shadow:0 14px 35px rgba(17,38,61,.06); }
.panel-heading { display:flex; justify-content:space-between; align-items:baseline; margin-bottom:1rem; }
.panel-heading h2 { font-size:1.15rem; font-weight:800; }
.panel-heading a { color:var(--blue); font-size:.88rem; font-weight:700; }
.match-card { padding:1rem 0; display:grid; grid-template-columns:1fr auto 1fr; gap:.7rem; align-items:center; border-top:1px solid var(--line); }
.match-card>div { grid-column:1/-1; display:flex; gap:.6rem; color:#677687; font-size:.83rem; }
.match-card strong:last-child { text-align:right; }
.group-badge { display:inline-grid; place-items:center; min-width:1.7rem; height:1.7rem; padding:0 .4rem; border-radius:99px; background:var(--ink); color:#fff; font-weight:800; font-size:.78rem; }
.result-row { display:grid; grid-template-columns:auto 1fr auto 1fr; align-items:center; gap:.65rem; padding:.9rem 0; border-top:1px solid var(--line); }
.result-row span:last-child { text-align:right; }
.result-row strong { color:var(--orange); font-size:1.15rem; }
footer { background:#fff; }
.footer { position:static; width:100%; margin-top:auto; line-height:60px; }
body > .container { flex:1 0 auto; width:100%; }
@media (max-width:767px) { .dashboard-grid{grid-template-columns:1fr}.hero{padding:3rem 0 2rem}.result-row{font-size:.88rem} }
@media (max-width:575.98px) { .navbar>.navbar-shell{grid-template-columns:minmax(0,1fr) auto;align-items:center}.navigation-stack{grid-column:1/-1}.navigation-row{flex-direction:column}.user-navigation{margin-top:.5rem;padding-top:.5rem}.navbar-nav .nav-link{padding-left:.75rem;padding-right:.75rem} }
.btn:focus,.nav-link:focus,a:focus { outline:3px solid rgba(239,124,50,.45); outline-offset:2px; box-shadow:none; }
.logout-button{border:0;background:transparent}.auth-card{max-width:580px;margin:5rem auto;background:#fff;border:1px solid var(--line);border-radius:18px;padding:2rem;box-shadow:0 14px 35px rgba(17,38,61,.06)}.auth-card h1{font-weight:900;letter-spacing:-.04em}.auth-card .notice{margin-top:1rem}
.page-heading{padding:3rem 0 1.5rem}.page-heading h1{font-size:clamp(2.3rem,5vw,4rem);font-weight:900;letter-spacing:-.045em}.page-heading>p:last-child{color:#627184}
.admin-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:1.5rem}.panel h2{font-size:1.15rem;font-weight:800;margin-bottom:1rem}
form label{display:block;font-weight:700;font-size:.84rem;margin:.7rem 0 .3rem}form input,form select{width:100%;border:1px solid #bac4ce;border-radius:8px;padding:.65rem;background:#fff;color:var(--ink)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.primary-button{border:0;border-radius:9px;background:var(--blue);color:#fff;font-weight:800;padding:.7rem 1rem;margin-top:1rem}.text-button{border:0;background:none;color:#a43d2f;font-weight:700;padding:.2rem}.simple-list{list-style:none;padding:0;margin:1.1rem 0 0;max-height:240px;overflow:auto}.simple-list li{display:flex;justify-content:space-between;gap:.8rem;padding:.6rem 0;border-top:1px solid var(--line);font-size:.9rem}.simple-list li span{color:#657486}
.inline-edit{display:flex;align-items:center;gap:.35rem;flex:1}.inline-edit input{padding:.35rem .45rem;min-width:0}.inline-edit .text-button{color:var(--blue);white-space:nowrap}
.player-create-form,.player-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;align-items:end}.player-create-form label{display:flex;flex-direction:column;gap:.3rem;margin:0}.player-create-form input,.player-create-form select,.player-edit-form input,.player-edit-form select{width:100%;min-width:0;padding:.45rem}.player-edit-form{flex:1;width:100%}.player-edit-form .text-button{height:40px;color:var(--blue)}
.team-create-form,.team-edit-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(200px,1fr) auto;gap:.55rem;align-items:end}.team-create-form{margin-bottom:1rem}.team-create-form label{margin:0 0 .3rem}.team-create-form .primary-button{height:42px;margin:0}.team-edit-form{flex:1;width:100%}.team-edit-form input,.team-edit-form select{min-width:0;padding:.45rem}.team-edit-form .text-button{height:40px;color:var(--blue)}
.excel-import-panel{margin-bottom:1.5rem}.excel-import-panel .panel-heading{align-items:center}.excel-import-panel .panel-heading h2{margin:0}.excel-import-panel .secondary-button{text-decoration:none;white-space:nowrap}.excel-import-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:.75rem;align-items:end;margin-top:1rem}.excel-import-form label{grid-column:1/-1;margin:0}.excel-import-form input{padding:.5rem}.excel-import-form .primary-button{height:42px;margin:0}.excel-import-panel .empty-state{margin:.8rem 0 0}
.announcement-admin-panel{margin-bottom:1.5rem}.announcement-admin-panel .panel-heading h2{margin:0}.announcement-create-form{display:grid;grid-template-columns:minmax(260px,2fr) minmax(180px,1fr) minmax(180px,1fr) auto auto;gap:.65rem;align-items:end}.announcement-create-form>label:not(.announcement-active-option){display:grid;gap:.3rem;margin:0}.announcement-create-form>label:first-child{grid-column:1/-1}.announcement-create-form .primary-button{height:42px;margin:0}.announcement-active-option{display:flex!important;align-items:center;gap:.4rem;min-height:42px;margin:0!important;white-space:nowrap}.announcement-active-option input[type=checkbox]{width:auto}.announcement-admin-list{display:grid;gap:.75rem;margin-top:1rem}.announcement-admin-item{display:flex;align-items:end;gap:.65rem;padding:.8rem;border:1px solid var(--line);border-radius:10px;background:#fbfcfd}.announcement-edit-form{display:grid;grid-template-columns:minmax(260px,2fr) minmax(170px,1fr) minmax(170px,1fr) auto auto;gap:.55rem;align-items:end;flex:1}.announcement-edit-form label{display:grid;gap:.25rem;margin:0}.announcement-edit-form input{min-width:0;padding:.45rem}.announcement-edit-form .text-button{height:40px}.announcement-delete-form{padding-bottom:.55rem}
.lifecycle-list{max-height:360px}.lifecycle-list li{align-items:center;flex-wrap:wrap}.lifecycle-status{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%}.season-edit-form{display:grid;grid-template-columns:minmax(130px,1fr) auto;gap:.4rem;flex:1}.season-edit-form input{min-width:0;padding:.4rem}.lifecycle-save{color:var(--blue)}.inactive-record{opacity:.68;background:#f7f8f9}
.notice{padding:.9rem 1rem;border-radius:9px;margin-bottom:1rem}.notice.success{background:#e3f4ea;color:#145c35}.notice.error{background:#fbe8e5;color:#8b2e23}.fixture-panel{margin-bottom:3rem}.fixture-form{display:grid;grid-template-columns:1fr 1fr 1fr 95px 80px 80px 1.2fr;gap:.65rem;align-items:end}.fixture-form .primary-button{height:42px}.fixture-training-option{display:flex!important;align-items:center;gap:.4rem;min-height:42px}.fixture-training-option input{width:auto}.batch-create-form{display:grid;gap:.8rem}.batch-entry-list{display:grid;gap:.8rem}.batch-entry{padding:.85rem;border:1px solid var(--line);border-radius:10px;background:#fbfcfd}.batch-entry label{margin:0}.batch-actions{display:flex;align-items:center;gap:.75rem}.batch-actions .primary-button{margin:0}.add-row-button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:0;border-radius:50%;background:var(--orange);color:#fff;font-size:1.65rem;font-weight:900;line-height:1}.remove-row-button{grid-column:1/-1;justify-self:end;border:0;background:transparent;color:#a43d2f;font-weight:700}.table-wrap{overflow-x:auto;margin-top:1.2rem}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.7rem;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#617184}
.schedule-validation-form{display:flex;align-items:end;gap:.65rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line)}.schedule-validation-form label{margin:0}.schedule-validation-form select{max-width:360px}.schedule-validation-result ul{margin:.8rem 0 0;padding:0;list-style:none}.schedule-validation-result li{padding:.65rem .8rem;border-radius:7px;margin-top:.4rem}.schedule-error{background:#fbe8e5;color:#8b2e23}.schedule-warning{background:#fff2cf;color:#76520b}.fixture-table{min-width:940px}.fixture-edit{position:relative}.fixture-edit summary{cursor:pointer;color:var(--blue);font-weight:700}.fixture-edit[open]{min-width:620px}.fixture-edit-form{display:grid;grid-template-columns:1fr 1fr 70px 70px 170px;gap:.5rem;align-items:end;margin-top:.7rem;padding:.8rem;background:#f7f9fb;border:1px solid var(--line);border-radius:9px}.fixture-edit-form label{display:flex;flex-direction:column;gap:.25rem;margin:0;font-size:.75rem}.fixture-edit-form input,.fixture-edit-form select{min-width:0;padding:.45rem}.fixture-edit-actions{grid-column:1/-1}.fixture-delete-form{margin-top:.35rem}.danger-text{color:#a9382a}
.empty-state{color:#677687;margin:1rem 0 0}
.users-panel table{min-width:920px}.users-panel th:nth-child(1){width:17%}.users-panel th:nth-child(2){width:28%}.users-panel th:nth-child(3){width:11%}.users-panel th:nth-child(4){width:34%}.users-panel th:nth-child(5){width:10%}.user-role-form{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-width:300px}.user-role-options{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem 1rem}.user-role-form label{display:inline-flex;align-items:center;gap:.4rem;margin:0;font-size:.9rem;white-space:nowrap}.user-role-form input[type=checkbox]{width:1rem;height:1rem;margin:0;padding:0;flex:0 0 auto}.user-role-form .text-button{color:var(--blue);white-space:nowrap}.users-audit-panel{margin-top:1.5rem}
.score-sheet{margin-bottom:1.5rem}.score-sheet-heading{display:flex;align-items:baseline;justify-content:space-between}.score-sheet-heading span{color:#657486;font-weight:700}.score-table{min-width:1200px}.score-table th:not(:nth-child(2)){white-space:normal;min-width:92px}.score-table th:nth-child(2){min-width:190px}.score-table input,.score-table select{min-width:0;padding:.5rem}.player-total{font-weight:800;color:var(--blue);text-align:center}.score-summary{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem 3rem;background:var(--ink);color:#fff;border-radius:14px;padding:1.2rem;margin-bottom:1.5rem;font-size:1.1rem}.score-summary strong{color:#ffad72;font-size:1.4rem;margin-left:.4rem}.scorecard-upload{margin-bottom:1.5rem}.score-actions{display:flex;justify-content:flex-end;align-items:center;gap:1rem;margin:0 0 3rem}.score-actions a{margin-right:auto}.secondary-button{border:1px solid var(--blue);border-radius:9px;background:#fff;color:var(--blue);font-weight:800;padding:.7rem 1rem}.score-actions .primary-button{margin-top:0}
.score-table .input-validation-error{border:2px solid #b42318;background:#fff4f2}.field-validation-error{display:block;color:#b42318;font-size:.72rem;font-weight:700;line-height:1.2;margin-top:.3rem;white-space:normal}.field-validation-valid{display:none}
.match-entry{padding-top:2rem}.match-entry-title{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.match-entry-title h1{font-size:clamp(2rem,4vw,3.4rem);font-weight:900;letter-spacing:-.045em;margin:0}.match-entry-title .eyebrow{margin-bottom:.35rem}.match-entry-title-actions{display:flex;align-items:center;gap:.75rem}.match-entry-title-actions .primary-button{margin:0}.match-entry-title-actions .secondary-button{text-decoration:none}
.match-meta{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;padding:0;margin-bottom:1.5rem;overflow:hidden}.match-meta>div:not(.match-teams){display:flex;flex-direction:column;gap:.25rem;padding:1.1rem 1.25rem}.match-meta span{color:#657486;font-size:.8rem}.match-meta strong{font-size:.95rem}.match-teams{grid-column:1/-1;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;text-align:center;border-top:1px solid var(--line);padding:1.1rem 1.25rem}.match-teams strong{font-size:1.2rem}.home-color{color:var(--blue)!important}.away-color{color:#b64032!important}
.duel-list{display:grid;gap:1rem;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.25rem}.duel-card{display:grid;grid-template-columns:64px minmax(390px,1fr) 90px minmax(390px,1fr);gap:0;padding:0;overflow:hidden;min-width:1020px}.duel-number{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid var(--line);background:#f8fafc}.duel-number span,.duel-points>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:#657486}.duel-number strong{font-size:1.35rem}.duel-side{padding:1rem 1.15rem}.home-side{background:linear-gradient(90deg,#fff 70%,#f1f7fc)}.away-side{background:linear-gradient(90deg,#fff8f7,#fff)}.duel-side>label{color:var(--blue);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .35rem}.away-side>label{color:#a5392e}.duel-side>select{font-weight:700;margin-bottom:.7rem}.lane-rows{display:grid;gap:.35rem}.lane-row{display:grid;grid-template-columns:76px minmax(70px,1fr) minmax(70px,1fr) 58px;align-items:start;gap:.45rem}.lane-row>strong{font-size:.78rem;padding-top:.62rem}.lane-row input{padding:.45rem;text-align:center}.lane-row output,.lane-row>span:last-child{display:block;text-align:center;font-weight:800;padding-top:.55rem}.lane-head{align-items:end}.lane-head span{font-size:.68rem;font-weight:700;text-align:center;color:#657486}.faults-row{padding-top:.15rem;border-top:1px dashed var(--line)}.player-result{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:.75rem;padding:.6rem .75rem;border-radius:8px}.player-result span{font-size:.75rem;font-weight:700}.player-result strong{font-size:1.25rem}.home-result{background:#e9f4fc;color:var(--blue)}.away-result{background:#fff0ed;color:#a5392e}.duel-points{display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid var(--line);border-right:1px solid var(--line);background:#fff}.duel-points div{display:flex;align-items:center;gap:.6rem}.duel-points strong{font-size:2rem}.duel-points b{color:#657486}
.match-totals{display:grid;grid-template-columns:1fr 210px 1fr;padding:0;overflow:hidden;margin-bottom:1.5rem}.team-statistics{display:grid;grid-template-columns:repeat(5,minmax(80px,1fr));align-items:stretch}.team-statistics>div{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;padding:1.1rem .65rem;text-align:center}.team-statistics span,.match-score>span,.match-score small{font-size:.72rem;color:#657486}.team-statistics strong{font-size:1.1rem}.home-statistics{background:#f2f8fd}.away-statistics{background:#fff5f3}.team-pins{background:rgba(255,255,255,.65)}.team-pins strong{font-size:1.75rem;color:var(--blue)}.away-statistics .team-pins strong{color:#b64032}.match-score{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;border-left:1px solid var(--line);border-right:1px solid var(--line);padding:1rem}.match-score div{display:flex;align-items:center;gap:.65rem}.match-score div strong{font-size:2.2rem}.match-score small strong{font-size:1rem;color:var(--ink)}
.match-entry .input-validation-error{border:2px solid #b42318;background:#fff4f2}.match-entry .scorecard-upload{margin-bottom:1rem}
@media(max-width:900px){.match-entry-title{align-items:flex-start;flex-direction:column}.match-entry-title-actions{width:100%;justify-content:space-between}.match-meta{grid-template-columns:repeat(3,1fr)}.match-totals{grid-template-columns:1fr}.match-score{order:-1;border:0;border-bottom:1px solid var(--line)}.team-statistics{grid-template-columns:repeat(5,minmax(90px,1fr));overflow-x:auto}}@media(max-width:560px){.match-entry-title-actions{align-items:stretch;flex-direction:column}.match-entry-title-actions>*{text-align:center}.match-meta{grid-template-columns:repeat(2,1fr)}.match-teams{grid-template-columns:1fr;gap:.4rem}.score-actions{align-items:stretch;flex-direction:column}.score-actions a{margin:0}.score-actions .primary-button{width:100%}}
@media(max-width:900px){.admin-grid{grid-template-columns:1fr}.fixture-form{grid-template-columns:1fr 1fr}.fixture-form .primary-button{height:auto}.fixture-edit-form{grid-template-columns:1fr 1fr}}@media(max-width:560px){.form-row,.fixture-form,.season-edit-form,.fixture-edit-form,.player-create-form,.player-edit-form,.team-create-form,.team-edit-form,.excel-import-form{grid-template-columns:1fr}.schedule-validation-form{align-items:stretch;flex-direction:column}.schedule-validation-form select{max-width:none}}
.result-filters{display:flex;flex-wrap:wrap;align-items:end;gap:1rem;margin-bottom:1.5rem}.result-filters label{min-width:180px;margin:0}.result-filters .primary-button{margin:0}.public-results{display:grid;gap:.25rem;margin-bottom:3rem}.public-result-row{display:grid;grid-template-columns:1.2fr 1fr auto 1fr;gap:.75rem;align-items:center;padding:1rem;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);border-radius:10px}.public-result-row:hover{background:#f7fafc}.public-result-row>b{color:var(--orange);font-size:1.3rem}.public-result-row>strong:nth-of-type(2){text-align:right}.public-result-row>small{grid-column:1/-1;color:#657486}.back-link{display:inline-block;margin:2rem 0 1rem}.result-detail-header{text-align:center;margin-bottom:1.5rem}.result-detail-header>div{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;font-size:1.35rem}.result-detail-header>div>b{color:var(--orange);font-size:2.4rem}.public-performance{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.performance-team h2{font-weight:800}.performance-card{border:1px solid var(--line);border-radius:10px;margin:.75rem 0;overflow:hidden}.performance-card header,.performance-card div{display:grid;grid-template-columns:70px 1fr 1fr 55px;gap:.5rem;padding:.65rem .8rem;align-items:center}.performance-card header{grid-template-columns:30px 1fr auto;background:#f4f8fb}.away .performance-card header{background:#fff3f0}.performance-card div{font-size:.85rem;border-top:1px solid var(--line)}.performance-card footer{padding:.55rem .8rem;font-size:.8rem;color:#657486}.scorecard-public{margin-bottom:3rem}.scorecard-public img{display:block;max-width:100%;max-height:900px;margin:auto;border-radius:10px}.result-row{text-decoration:none;color:var(--ink)}
@media(max-width:767px){.result-filters{align-items:stretch;flex-direction:column}.result-filters label{width:100%}.public-result-row{grid-template-columns:1fr auto 1fr}.public-result-row>span:first-child{grid-column:1/-1}.public-performance{grid-template-columns:1fr}.result-detail-header>div{font-size:1rem}.performance-card header,.performance-card div{grid-template-columns:58px 1fr 1fr 45px}}
.standings-panel{margin-bottom:1.5rem}.standings-panel .panel-heading span{color:#657486;font-size:.85rem}.standings-table{min-width:800px}.standings-table tbody tr:hover{background:#f7fafc}.standings-table th:not(:nth-child(2)),.standings-table td:not(:nth-child(2)){text-align:center}.standings-table td:first-child{width:70px}.highlight-number{color:var(--blue);font-weight:900}.individuals-panel{margin-bottom:3rem}.individuals-panel .standings-table{min-width:1050px}.individuals-panel .standings-table th:nth-child(2),.individuals-panel .standings-table td:nth-child(2){text-align:left}
.cross-table-panel{margin-bottom:1.5rem}.cross-table-panel .panel-heading span{color:#657486;font-size:.85rem}.cross-table-wrap{overflow:auto}.cross-table{border-collapse:separate;border-spacing:2px;min-width:max-content}.cross-table th{white-space:normal;text-align:center;max-width:105px;min-width:92px;font-size:.7rem}.cross-table th:first-child{position:sticky;left:0;z-index:2;min-width:160px;max-width:190px;text-align:left;background:#fff}.cross-table td{height:72px;min-width:92px;padding:.2rem;border:1px solid var(--line);text-align:center}.cross-diagonal{background:repeating-linear-gradient(45deg,#dfe5ea,#dfe5ea 4px,#f5f7f8 4px,#f5f7f8 8px)}.cross-result-cell{display:table-cell;vertical-align:middle}.cross-match{display:flex;justify-content:space-between;align-items:center;gap:.3rem;border-radius:5px;padding:.3rem .38rem;text-decoration:none}.cross-match+.cross-match{margin-top:.2rem}.cross-match strong{font-size:.82rem}.cross-match small{font-size:.67rem}.cross-home{background:#e8f3fb;color:var(--blue)}.cross-away{background:#fff0cf;color:#76520a}.cross-empty{color:#9aa5af}.cross-legend{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:.75rem;color:#657486;font-size:.78rem}.cross-legend span{display:flex;align-items:center;gap:.4rem}.cross-legend i{width:.9rem;height:.9rem;border-radius:3px}.legend-home{background:#e8f3fb;border:1px solid #b8d7ed}.legend-away{background:#fff0cf;border:1px solid #ead18f}
.schedule-filters .checkbox-filter{display:flex;align-items:center;gap:.55rem;min-width:auto;padding:.65rem 0}.checkbox-filter input{width:1.05rem;height:1.05rem;margin:0}.schedule-rounds{display:grid;gap:1.25rem;margin-bottom:3rem}.schedule-round{padding-bottom:.5rem}.schedule-round .panel-heading span{color:#657486;font-size:.85rem}.schedule-fixture{display:grid;grid-template-columns:190px minmax(300px,1fr) 150px;align-items:center;gap:1rem;padding:1rem .4rem;border-top:1px solid var(--line)}.fixture-date{display:flex;flex-direction:column;color:#657486;font-size:.85rem}.fixture-date strong{color:var(--ink);font-size:1.15rem}.fixture-teams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.8rem}.fixture-teams strong:last-of-type{text-align:right}.fixture-teams small{grid-column:1/-1;text-align:center;color:#73808e}.fixture-result{display:flex;flex-direction:column;align-items:center;color:var(--blue);text-decoration:none}.fixture-result strong{font-size:1.4rem;color:var(--orange)}.fixture-status{text-align:center;color:#657486;font-size:.83rem}.schedule-fixture.played{background:#fafbfc}.schedule-empty{margin-bottom:3rem}
@media(max-width:767px){.schedule-fixture{grid-template-columns:1fr auto}.fixture-date{grid-column:1/-1;flex-direction:row;justify-content:space-between}.fixture-teams{grid-template-columns:1fr auto 1fr}.fixture-result,.fixture-status{min-width:90px}.schedule-filters .checkbox-filter{width:auto}}
.status-chip{display:inline-block;border-radius:99px;background:#e7edf2;padding:.25rem .6rem;font-size:.76rem;font-weight:800}.played-chip{background:#e3f4ea;color:#145c35}
.matches-panel{margin-bottom:3rem}.matches-table{min-width:850px}.matches-table tbody tr:hover{background:#f7fafc}.match-status{display:inline-block;border-radius:99px;background:#e7edf2;padding:.25rem .6rem;font-size:.76rem;font-weight:800}.match-result-link{color:var(--blue);font-weight:800;text-decoration:none}.match-result-link:hover{text-decoration:underline}
.public-rosters-panel,.roster-empty{margin-bottom:3rem}.public-rosters-table{min-width:850px}.public-rosters-table tbody tr:hover{background:#f7fafc}.public-rosters-table td{vertical-align:top}.public-rosters-table a{color:var(--blue);text-decoration:none}.public-rosters-table a:hover{text-decoration:underline}.roster-team-name{min-width:180px;background:#fbfcfd}.roster-role{display:inline-block;border-radius:99px;background:#e7edf2;padding:.25rem .6rem;font-size:.76rem;font-weight:800}
@media(max-width:767px){.schedule-management td:last-child{min-width:330px}.schedule-action{grid-template-columns:1fr}.schedule-action .primary-button,.schedule-action .text-button{width:100%}}
.club-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:1.5rem;align-items:stretch;margin-bottom:1.5rem}.club-intro{display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:2.4rem;background:var(--ink);color:#fff;border-radius:18px;box-shadow:0 14px 35px rgba(17,38,61,.12)}.club-intro h1{font-size:clamp(2.8rem,6vw,5rem);font-weight:900;line-height:.95;letter-spacing:-.055em}.club-intro p:last-child{max-width:610px;margin:1rem 0 0;color:#d8e3ed;font-size:1.08rem}.club-intro .eyebrow{color:#ffad72}.venue-card{display:flex;flex-direction:column;justify-content:space-between}.venue-card h2,.club-details h2{font-size:1.3rem;font-weight:900}.venue-address{margin:.8rem 0 1.1rem;font-size:1.3rem;line-height:1.35}.venue-address span{display:block;color:#657486;font-size:.95rem}.map-button{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;text-decoration:none;margin-top:.5rem}.club-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-bottom:1.5rem}.club-facts dl{display:grid;grid-template-columns:1fr auto;gap:.7rem 1rem;margin:0}.club-facts dt{color:#657486;font-weight:500}.club-facts dd{margin:0;text-align:right;font-weight:800}.club-contact-list{display:grid;gap:1rem}.club-contact{padding-top:1rem;border-top:1px solid var(--line)}.club-contact:first-child{padding-top:0;border:0}.club-contact span{display:block;color:#657486;font-size:.82rem}.club-contact strong{display:block;margin:.15rem 0;font-size:1.05rem}.club-contact a{color:var(--blue);font-weight:700;text-decoration:none}.club-source{margin:0 0 3rem;color:#657486;font-size:.82rem}.club-source a{color:var(--blue)}
@media(max-width:900px){.club-hero{grid-template-columns:1fr}.club-facts{grid-template-columns:1fr 1fr}}@media(max-width:560px){.club-intro{min-height:auto;padding:1.6rem}.club-facts{grid-template-columns:1fr}}
.documentation-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;margin-bottom:3rem}.documentation-panel h2{font-size:1.4rem}.documentation-panel ul{margin:.8rem 0 0}.documentation-download{display:flex;flex-direction:column;align-items:center;gap:.5rem;min-width:220px;padding:1.3rem;border-radius:14px;background:#f2f7fb}.documentation-download .primary-button{margin:0;text-decoration:none;text-align:center}.documentation-download small{color:#657486;text-align:center}@media(max-width:650px){.documentation-panel{grid-template-columns:1fr}.documentation-download{align-items:stretch}}
.notice.warning{background:#fff0c9;color:#76520a}
.season-delete-panel{border:1px solid #e3a39b;background:#fffafa}.season-delete-details>summary{display:flex;align-items:center;gap:.75rem;color:#8b2e23;cursor:pointer;list-style:none}.season-delete-details>summary::-webkit-details-marker{display:none}.season-delete-details>summary::before{content:"▸";font-size:1.2rem;transition:transform .15s}.season-delete-details[open]>summary::before{transform:rotate(90deg)}.season-delete-details>summary span{display:grid;gap:.15rem}.season-delete-details>summary strong{font-size:1.15rem}.season-delete-details>summary small{color:#76524d;font-weight:500}.season-delete-content{padding-top:1.25rem}.season-delete-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1fr) auto;gap:1rem;align-items:end}.season-delete-form>label{display:grid;gap:.35rem;margin:0}.season-delete-summary{grid-column:1/-1;padding:1rem;border-radius:10px;background:#fff0ed;color:#6f281f}.season-delete-summary>strong{display:block;margin-bottom:.7rem}.season-delete-summary dl{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:.55rem 1rem;margin:0}.season-delete-summary dl div{display:flex;justify-content:space-between;gap:.6rem;border-bottom:1px solid #edc7c1;padding:.25rem 0}.season-delete-summary dd{margin:0;font-weight:900}.season-delete-summary p{margin:.8rem 0 0}.season-delete-form .season-orphan-option{grid-column:1/-1;display:flex;grid-template-columns:none;align-items:flex-start;gap:.7rem;padding:.85rem;border:1px solid #edc7c1;border-radius:9px;background:#fff}.season-orphan-option input{width:auto;margin-top:.2rem}.season-orphan-option span{display:grid;gap:.25rem;font-weight:800}.season-orphan-option small{color:#6f5a57;font-weight:500}.danger-button{min-height:44px;padding:.65rem 1rem;border:0;border-radius:8px;background:#a43d2f;color:#fff;font-weight:800;cursor:pointer}.danger-button:hover{background:#843025}.danger-button:disabled{background:#c6b8b6;cursor:not-allowed}
@media(max-width:900px){.season-delete-form{grid-template-columns:1fr}.season-delete-summary dl{grid-template-columns:1fr 1fr}}@media(max-width:560px){.season-delete-summary dl{grid-template-columns:1fr}}
@media(max-width:900px){.event-form,.event-edit-form{grid-template-columns:1fr 1fr}.event-form .event-description{grid-column:auto}.event-form button,.event-edit-form button{width:100%}}@media(max-width:600px){.event-form,.event-edit-form{grid-template-columns:1fr}.calendar-day{grid-template-columns:1fr}.calendar-day>header{flex-direction:row;gap:.6rem;justify-content:flex-start}.calendar-item{grid-template-columns:1fr}.calendar-navigation h2{font-size:1rem}.calendar-navigation a{font-size:.8rem}}
.google-calendar-panel{margin-bottom:3rem;padding:1rem}.google-calendar-panel iframe{display:block;width:100%;height:720px;border:0;border-radius:8px}.google-calendar-panel p{margin:1rem 0 0;text-align:right}.google-calendar-panel a{color:var(--blue);font-weight:700}.google-calendar-missing{margin-bottom:3rem}.google-calendar-missing p{margin-bottom:0}@media(max-width:767px){.google-calendar-panel{padding:.35rem}.google-calendar-panel iframe{height:620px}.google-calendar-panel p{padding:0 .65rem;text-align:left}}
.results-admin-table{width:100%;min-width:1050px;table-layout:fixed}.results-admin-table th:nth-child(1){width:155px}.results-admin-table th:nth-child(2){width:80px}.results-admin-table th:nth-child(3),.results-admin-table th:nth-child(4){width:130px}.results-admin-table th:nth-child(5){width:140px}.results-admin-table th:nth-child(6){width:90px}.results-admin-table th:nth-child(7){width:320px}.results-admin-table td{vertical-align:top}.forfeit-reason{display:block;max-width:130px;color:#8b2e23;white-space:normal}.result-actions{width:320px;white-space:normal}.forfeit-control{width:100%;max-width:300px;margin-top:.45rem}.forfeit-control summary{cursor:pointer;color:#a43d2f;font-weight:700}.forfeit-control form{display:grid;grid-template-columns:1fr;gap:.55rem;width:100%;margin-top:.5rem;padding:.7rem;background:#fff4f2;border-radius:8px}.forfeit-control label{display:flex;flex-direction:column;gap:.25rem;margin:0;white-space:normal}.forfeit-control input,.forfeit-control select{display:block;width:100%;min-width:0;padding:.45rem}.forfeit-control .primary-button{width:100%;margin:0;background:#a43d2f}
.forfeit-public{grid-column:1/-1;color:#a43d2f;font-size:.8rem}.forfeit-notice{background:#fff0ed;color:#8b2e23;margin-bottom:1.5rem}
.table-panel details pre{max-width:42rem;max-height:18rem;overflow:auto;margin-top:.5rem;padding:.75rem;border-radius:.5rem;background:#f4f1e9;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.78rem}.table-panel details h3{margin:.75rem 0 .25rem;font-size:.85rem}
.friendly-error{max-width:760px;margin:4rem auto;padding:clamp(2rem,5vw,4rem);text-align:center}.friendly-error h1{margin:.15rem 0 1rem}.friendly-error>p:not(.eyebrow):not(.error-reference){max-width:34rem;margin:0 auto 1.5rem;color:#56677a;font-size:1.05rem}.error-actions{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap}.error-reference{margin:2rem 0 0;color:#657486;font-size:.85rem}.error-reference code{user-select:all}
.record-delete{flex-basis:100%;padding:.45rem .65rem;border:1px solid #edc7c1;border-radius:8px;background:#fffafa}.record-delete>summary{cursor:pointer;color:#a43d2f;font-weight:700}.record-delete form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:.65rem 1rem;align-items:end;padding-top:.65rem}.record-delete p{grid-column:1/-1;margin:0;color:#76524d;font-size:.82rem}.record-delete label{margin:0}.record-delete .danger-button{margin:0}.record-delete input{margin-top:.3rem}@media(max-width:560px){.record-delete form{grid-template-columns:1fr}.record-delete .danger-button{width:100%}}
@media(max-width:900px){.announcement-create-form,.announcement-edit-form{grid-template-columns:1fr 1fr}.announcement-create-form>label:first-child,.announcement-edit-form>label:first-of-type{grid-column:1/-1}.announcement-admin-item{align-items:stretch;flex-direction:column}.announcement-delete-form{padding:0}}@media(max-width:560px){.announcement-strip-inner{grid-template-columns:1fr}.announcement-pins{flex-wrap:wrap}.announcement-slides p{align-items:flex-start;flex-direction:column;gap:.15rem;text-align:left}.announcement-create-form,.announcement-edit-form{grid-template-columns:1fr}.announcement-create-form>label:first-child,.announcement-edit-form>label:first-of-type{grid-column:auto}}
.feedback-launcher{position:fixed;right:1.5rem;bottom:1.5rem;z-index:1050;width:58px;height:58px;border:0;border-radius:50%;background:var(--blue);color:#fff;box-shadow:0 10px 30px #0d2b4660;font-size:1.5rem}.feedback-launcher:hover{transform:translateY(-2px)}.feedback-widget{position:fixed;right:1.5rem;bottom:5.7rem;z-index:1050;width:min(420px,calc(100vw - 2rem));max-height:calc(100vh - 8rem);overflow:auto;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 20px 55px #0d2b4650;opacity:0;visibility:hidden;transform:translateY(12px);transition:.2s}.feedback-widget.open{opacity:1;visibility:visible;transform:none}.feedback-widget>header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:1rem 1.2rem;background:var(--blue);color:#fff}.feedback-widget>header div{display:grid}.feedback-widget>header small{opacity:.8}.feedback-widget>header button{border:0;background:transparent;color:#fff;font-size:1.7rem}.feedback-widget form{padding:1rem}.feedback-widget-error{margin:1rem 1rem 0;padding:.7rem;border-radius:8px;background:#ffe9e5;color:#8b2e23}.feedback-step{display:none}.feedback-step.active{display:grid;gap:1rem}.bot-message{position:relative;margin:0 2rem 0 0;padding:.8rem 1rem;border-radius:4px 14px 14px 14px;background:#edf4fa;color:#18344d}.feedback-type-choice{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.feedback-type-choice input{position:absolute;opacity:0}.feedback-type-choice span{display:block;padding:.85rem;border:2px solid var(--line);border-radius:10px;text-align:center;font-weight:700;cursor:pointer}.feedback-type-choice input:checked+span{border-color:var(--orange);background:#fff3e9;color:#9a4218}.feedback-step label{display:grid;gap:.35rem;font-weight:700}.feedback-step input,.feedback-step textarea{width:100%}.feedback-step-actions{display:flex;justify-content:space-between;gap:.7rem}.feedback-dropzone{display:grid;gap:.65rem;padding:1.2rem;border:2px dashed #a9bac9;border-radius:12px;text-align:center;color:#526779}.feedback-dropzone.dragging{border-color:var(--orange);background:#fff8f1}.feedback-dropzone>span{font-size:.8rem}.feedback-image-preview img{display:block;max-width:100%;max-height:180px;margin:auto;border-radius:8px}.feedback-image-preview button{border:0;background:transparent;color:#a43d2f;text-decoration:underline}.feedback-filters{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr)) 2fr auto auto;align-items:end;gap:.8rem}.feedback-filters label{display:grid;gap:.25rem;font-weight:700}.feedback-filters>a{padding:.65rem 0}.feedback-status{display:inline-block;padding:.25rem .6rem;border-radius:999px;font-size:.76rem;font-weight:800;white-space:nowrap}.feedback-status.reported{background:#fff2ce;color:#775100}.feedback-status.accepted{background:#e7f1fb;color:#145386}.feedback-status.done{background:#e2f4e8;color:#176b39}.feedback-status.rejected{background:#ffe5e1;color:#923326}.feedback-detail-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem}.feedback-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:2rem}.feedback-description,.comment-list p,.feedback-history p{white-space:pre-wrap}.feedback-image{margin:1.5rem 0 0}.feedback-image img{max-width:100%;max-height:650px;border:1px solid var(--line);border-radius:10px}.feedback-image figcaption{color:#657486;font-size:.8rem}.feedback-technical dl{display:grid;grid-template-columns:1fr;gap:.2rem}.feedback-technical dt{margin-top:.6rem}.feedback-technical dd{overflow-wrap:anywhere}.feedback-edit>summary{cursor:pointer;font-size:1.1rem;font-weight:800}.stacked-form,.comment-form,.feedback-status-form{display:grid;gap:.8rem;margin-top:1rem}.stacked-form label,.comment-form label,.feedback-status-form label{display:grid;gap:.3rem;font-weight:700}.check-label{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.check-label input{width:auto}.comment-list{display:grid;gap:.8rem;margin:1rem 0}.comment-list article{padding:1rem;border-left:4px solid var(--orange);border-radius:0 8px 8px 0;background:#f8fafb}.comment-list header{display:flex;justify-content:space-between;gap:1rem}.comment-list time{color:#657486;font-size:.8rem}.feedback-history ol{display:grid;gap:.8rem;padding:0;list-style:none}.feedback-history li{display:grid;grid-template-columns:110px 1fr;gap:1rem;align-items:start}.feedback-table small{display:block;max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:900px){.feedback-filters{grid-template-columns:1fr 1fr}.feedback-detail-grid{grid-template-columns:1fr}}@media(max-width:600px){.feedback-widget{right:1rem;bottom:5.2rem}.feedback-launcher{right:1rem;bottom:1rem}.feedback-filters{grid-template-columns:1fr}.feedback-detail-heading{align-items:start;flex-direction:column}.feedback-history li{grid-template-columns:1fr}.feedback-type-choice{grid-template-columns:1fr}}
