
/* Kalakilpailut.fi v1.0.5 – yhteinen responsiivinen ilme */
:root{--navy:#103b63;--blue:#1769aa;--pale:#e8f2fb;--border:#cbd9e8;--ink:#18344f;--orange:#ffb13b}
body{background:#f3f7fb;color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.site-header{background:linear-gradient(90deg,rgba(3,31,57,.93),rgba(3,50,78,.68)),url('assets/footer-underwater.png') center 45%/cover;color:#fff;padding:15px 20px 0;box-shadow:0 3px 12px #092a4433}
.site-header .site-logo{width:min(540px,100%);max-height:190px;object-fit:contain;filter:drop-shadow(0 2px 4px #001c35)}
.site-header .site-nav{background:linear-gradient(90deg,#0c3358,#14527d);margin:14px -20px 0;padding:13px 16px;gap:10px 27px}
.site-header .site-nav a{font-size:15px;font-weight:650;letter-spacing:.01em;padding:4px 2px}
.site-header .site-nav a:hover,.site-header .site-nav a:focus-visible{color:#ffce78;text-decoration:none}
main{max-width:1120px;margin:26px auto;padding:30px 36px;border:1px solid #d7e3ee;box-shadow:0 5px 26px #173f6012;border-radius:14px;background:#fff}
main h1{color:#123c66;font-size:clamp(23px,3vw,31px);margin-top:0}h2,h3{color:#123c66}
input,select,textarea{border:1px solid #b7cbe0;border-radius:7px;background:#fff}input:focus,select:focus,textarea:focus{outline:2px solid #67a5e0;outline-offset:1px}
button{background:#1765a8;border-radius:8px;font-weight:650}button:hover{background:#104c82}
a{color:#125d9b}a:hover{color:#0a385f}
.site-footer{background-color:#063b58;min-height:420px}.footer-content{padding-top:55px}
.kk-card{border:1px solid #d3e0ed;border-radius:12px;background:#fff;padding:18px 20px;margin:15px 0;box-shadow:0 2px 12px #173f6009}
.kk-card h2{font-size:20px;margin:0 0 12px}.kk-muted{color:#61788c}.kk-entry{padding:11px 0;border-bottom:1px solid #e2eaf2}.kk-entry:last-child{border-bottom:0}
.kk-entry a{font-weight:650;text-decoration:none}.kk-entry small{display:block;margin-top:4px;color:#61788c}
.kk-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0 22px}.kk-tabs a{padding:9px 14px;border-radius:7px;background:#e9f3fd;text-decoration:none;font-weight:650}
.kk-club-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.kk-info{background:#eaf3fc;border:1px solid #c8dff3;padding:12px 16px;border-radius:9px}
@media(max-width:760px){main{margin:12px;padding:18px}.site-header{padding:12px 12px 0}.site-header .site-nav{margin:12px -12px 0;gap:7px 15px}.kk-club-grid{grid-template-columns:1fr}}

/* v1.0.9: Kausikilpailun pistematriisi ja seurasivun arkistolinkki */
.kk-cup-scroll{overflow-x:auto;max-width:100%;margin:12px 0 30px;border:1px solid #cbd9e8;border-radius:8px}
.kk-cup-table{border-collapse:separate;border-spacing:0;width:100%;min-width:max-content;font-variant-numeric:tabular-nums;font-size:14px}
.kk-cup-table th,.kk-cup-table td{border-right:1px solid #d8e3ed;border-bottom:1px solid #d8e3ed;padding:9px 11px;text-align:center;white-space:nowrap}
.kk-cup-table thead th{background:#103b63;color:white;font-weight:700}
.kk-cup-table thead a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.kk-cup-table tbody tr:nth-child(even){background:#f0f6fb}
.kk-cup-table .kk-cup-name{text-align:left;position:sticky;left:0;z-index:1;background:#fff;min-width:150px}
.kk-cup-table tbody tr:nth-child(even) .kk-cup-name{background:#f0f6fb}
.kk-cup-table thead .kk-cup-name{background:#103b63;z-index:2}
.kk-cup-table .kk-cup-rank{min-width:35px}
.kk-cup-table .kk-cup-total{font-weight:750;background:#e5f0fa;color:#103b63}
.kk-cup-table .kk-cup-win{background:#ffdb71;font-weight:750;color:#3b310c}
.kk-cup-table .kk-cup-absent{background:#d7dce2;color:#536477}
.kk-cup-table .kk-cup-unpublished{background:#e7edf3;color:#647789}
.kk-all-results{display:inline-block;background:#e8f2fb;border:1px solid #cbd9e8;border-radius:7px;padding:10px 14px;font-weight:700;text-decoration:none}

/* v1.0.11: kausikilpailun koko rivin korostus myös kiinnitetyssä nimisarakkeessa */
.kk-cup-table tbody tr:hover > th,.kk-cup-table tbody tr:hover > td{background:#cfe9f2;color:#103b63}
.kk-cup-table tbody tr:hover > .kk-cup-name{background:#cfe9f2}
.kk-cup-table tbody tr:hover > .kk-cup-win{background:#f5cd5b;color:#3b310c}
.kk-cup-table tbody tr:hover > .kk-cup-total{background:#b7dced}
.kk-cup-table tbody tr:hover > .kk-cup-absent,.kk-cup-table tbody tr:hover > .kk-cup-unpublished{background:#bfd3df}

/* v1.0.12 etusivun teemavalitsin */
.kk-theme-switch{max-width:1180px;margin:16px auto -12px;padding:0 18px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:#24465f;font-size:14px}
.kk-theme-switch button{margin:0;padding:7px 13px;border:1px solid #9fbdd5;border-radius:8px;background:#fff;color:#174e7b;font:inherit;cursor:pointer}
.kk-theme-switch button[aria-pressed="true"]{background:#174e7b;color:#fff;border-color:#174e7b}
/* v1.0.14 seuran tiedotteet */
.kk-editor-toolbar{display:flex;flex-wrap:wrap;gap:5px;border:1px solid #bacbd6;background:#edf3f8;padding:7px;border-radius:8px 8px 0 0}
.kk-editor-toolbar button{width:auto;margin:0;padding:7px 11px;font-size:13px}
.kk-rich-editor{min-height:190px;padding:14px;border:1px solid #bacbd6;border-top:0;border-radius:0 0 8px 8px;background:white;line-height:1.6;overflow-wrap:anywhere}
.kk-rich-editor:focus{outline:2px solid #467ca5}
.kk-announcement-content{line-height:1.65;overflow-wrap:anywhere}
.kk-announcement-content a{overflow-wrap:anywhere}

.kk-club-section{padding:12px 0;border-bottom:1px solid #e2eaf2}.kk-club-section:last-child{border-bottom:0}.kk-club-section h3{margin:0 0 10px}.kk-announcement-content{overflow-wrap:anywhere}

/* v1.0.19: tulostaulukoiden yhtenäinen viimeistely */
.kk-group-scroll{max-width:100%;overflow-x:auto;margin:12px 0 24px}
.kk-group-table{width:max-content;min-width:min(100%,520px);max-width:100%;border:1px solid #9bb4c8;border-radius:9px;border-spacing:0;overflow:hidden;font-variant-numeric:tabular-nums}
.kk-group-table th{background:#174e7b;color:#fff;text-align:left;padding:10px 13px}
.kk-group-table td{padding:9px 13px;border-bottom:1px solid #d4e0e8}
.kk-group-table tr:last-child td{border-bottom:0}
.kk-group-table tbody tr.shade-a{background:#fff}
.kk-group-table tbody tr.shade-b{background:#eaf2f8}
.kk-group-table th:last-child,.kk-group-table td:last-child{text-align:right;white-space:nowrap}
.kk-group-table tbody tr:hover{background:#d7e9f5}
.kk-cup-table .kk-cup-rank{position:sticky;left:0;z-index:2;background:#fff}
.kk-cup-table tbody tr:nth-child(even) .kk-cup-rank{background:#f0f6fb}
.kk-cup-table .kk-cup-name{left:52px}
.kk-cup-table thead .kk-cup-rank{background:#103b63;z-index:4}
.kk-cup-table thead .kk-cup-name{z-index:3}
.kk-cup-table .kk-cup-total{position:sticky;right:0;z-index:2;border-left:2px solid #91a9b9}
.kk-cup-table thead .kk-cup-total{background:#103b63;color:#fff;z-index:4}

/* v1.0.20: responsiivinen tulosruudukko ja ryhmien syöttö */
.kk-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;align-items:start;margin:14px 0 26px}
.kk-results-series{min-width:0}.kk-results-series>h2{text-align:center;margin:10px 0}
.kk-results-series .result-table{margin:12px auto 22px;max-width:100%}
.kk-group-scroll{display:flex;justify-content:center}
.kk-group-table{margin:0 auto}
.kk-group-entry-scroll{max-width:100%;overflow-x:auto}
.kk-group-entry-table{width:100%;min-width:600px;border-collapse:collapse}
.kk-group-entry-table th{text-align:left;background:#174e7b;color:#fff;padding:9px}
.kk-group-entry-table td{padding:5px;border-bottom:1px solid #d8e4ed}
.kk-group-entry-table input,.kk-group-entry-table select{width:100%;box-sizing:border-box;min-width:0}
.kk-group-entry-table td:nth-child(1){width:22%}.kk-group-entry-table td:nth-child(2){width:37%}.kk-group-entry-table td:nth-child(3){width:19%}.kk-group-entry-table td:nth-child(4){width:14%}
.kk-group-actions{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0}.kk-group-actions button{width:auto}
.kk-group-bulk textarea{width:100%;box-sizing:border-box}.kk-remove-member{padding:6px 10px}
.kk-cancel-button{display:inline-block;margin-left:10px;padding:10px 15px;background:#e8f0f7;border-radius:8px;text-decoration:none}
.kk-delete-form{margin-top:30px;padding-top:16px;border-top:1px solid #d8e4ed}.kk-delete-button{background:#9a2830}.kk-delete-button:hover{background:#761e25}
@media(max-width:760px){.kk-results-grid{grid-template-columns:minmax(0,1fr)}.kk-results-series .result-table{max-width:100%}}
