:root{--tk-page:#f4f6ef;--tk-surface:#fffefa;--tk-alt:#edf2e6;--tk-text:#203c2a;--tk-muted:#586b50;--tk-border:#d2dfc9;--tk-accent:#246c39;--tk-on:#fff;--tk-soft:#e7f1dc;--tk-danger:#b42318;--tk-danger-soft:#fff0eb;--tk-shadow:#102a1718}
:root[data-accent=blue]{--tk-accent:#245fc1;--tk-soft:#e8effc}
:root[data-accent=orange]{--tk-accent:#a94b14;--tk-soft:#fff0e3}
:root[data-accent=violet]{--tk-accent:#7043b3;--tk-soft:#f0e9fa}
:root[data-theme=dark]{--tk-page:#111b17;--tk-surface:#1b2821;--tk-alt:#24342b;--tk-text:#eef4e9;--tk-muted:#b5c2ae;--tk-border:#435747;--tk-accent:#ace175;--tk-on:#142118;--tk-soft:#29412a;--tk-danger:#ffb4a8;--tk-danger-soft:#462722;--tk-shadow:#0004}
:root[data-theme=dark][data-accent=blue]{--tk-accent:#9ec6ff;--tk-on:#122339;--tk-soft:#233446}
:root[data-theme=dark][data-accent=orange]{--tk-accent:#ffc299;--tk-on:#311a0b;--tk-soft:#453127}
:root[data-theme=dark][data-accent=violet]{--tk-accent:#d7b5ff;--tk-on:#251238;--tk-soft:#3b2e4d}
html,body,body.organized-layout{background:var(--tk-page);color:var(--tk-text)}
.organized-layout .topbar,.organized-layout .topbar .brand,.organized-layout main{color:var(--tk-text);border-color:var(--tk-border)}
.organized-layout .organized-shell{padding-bottom:calc(120px * var(--tk-text-scale,1) + env(safe-area-inset-bottom))}
.organized-layout .top-actions .icon-btn,.organized-layout .organized-nav,.organized-layout .compact-game,.organized-layout .compact-team,.organized-layout .request-row,.organized-layout .opponent-row,.organized-layout .conversation-list,.organized-layout .conversation-row,.organized-layout .settings-language,.organized-layout .action-tile,.organized-layout .hub-signin,.organized-layout .team-join-request,.organized-layout .browse-controls .search,.organized-layout .filter-compact,.organized-layout .search,.organized-layout .settings-row{background:var(--tk-surface);border-color:var(--tk-border);color:var(--tk-text);box-shadow:none}
.organized-layout .organized-nav .nav-item{color:var(--tk-muted)}
.organized-layout .organized-nav .nav-item.active,.organized-layout .game-date-block,.organized-layout .row-icon,.organized-layout .tile-icon,.organized-layout .hub-tab.active,.organized-layout .chip.active{background:var(--tk-soft);color:var(--tk-accent)}
.organized-layout .hub-tabs,.organized-layout .optional-settings,.organized-layout details>summary,.organized-layout .team-player-row{background:var(--tk-alt);border-color:var(--tk-border);color:var(--tk-text)}
.organized-layout .hub-tab,.organized-layout .chip{color:var(--tk-muted);border-color:var(--tk-border)}
.organized-layout .hub-tab.active{box-shadow:0 2px 5px var(--tk-shadow)}
.organized-layout .btn:not(.secondary):not(.danger){background:var(--tk-accent);border-color:var(--tk-accent);color:var(--tk-on)}
.organized-layout .btn.secondary,.organized-layout .filter-compact,.organized-layout .match-back{background:var(--tk-soft);border-color:var(--tk-border);color:var(--tk-accent)}
.organized-layout .btn.danger{background:var(--tk-danger-soft);color:var(--tk-danger);border-color:var(--tk-danger)}
.organized-layout .text-link{color:var(--tk-accent)}
.organized-layout .badge,.organized-layout .badge.gray{background:var(--tk-alt);color:var(--tk-text);border-color:var(--tk-border)}
.organized-layout .badge.orange{background:var(--tk-danger-soft);color:var(--tk-danger)}
.organized-layout .help,.organized-layout .sub,.organized-layout .fact-note,.organized-layout .fact-label,.organized-layout .hub-heading p,.organized-layout .compact-game-title small,.organized-layout .compact-game-place,.organized-layout .conversation-row small,.organized-layout .team-card-main small,.organized-layout .team-overview-head small,.organized-layout .opponent-row small,.organized-layout .hub-hint,.organized-layout .team-pending,.organized-layout .action-tile small,.organized-layout .request-row p,.organized-layout .version,.organized-layout .hub-signin p,.organized-layout .match-extra-facts,.organized-layout .place-status{color:var(--tk-muted)}
.organized-layout .compact-game-link,.organized-layout .team-card-main,.organized-layout .hub-heading h1,.organized-layout .match-fact strong,.organized-layout .fixture-teams b,.organized-layout .page-title{color:var(--tk-text)}
.organized-layout .compact-game-bottom,.organized-layout .conversation-row,.organized-layout .team-player-row{border-color:var(--tk-border)}
.organized-layout .account-summary,.organized-layout .next-game-compact{background:var(--tk-accent);color:var(--tk-on)}
.organized-layout .account-summary small,.organized-layout .next-game-compact>span,.organized-layout .next-game-compact strong,.organized-layout .next-game-compact small{color:inherit}
.organized-layout .club-avatar{background:var(--tk-soft);color:var(--tk-accent)}
.organized-layout .sheet{background:var(--tk-surface);color:var(--tk-text);border:1px solid var(--tk-border)}
.organized-layout .sheet-head,.organized-layout .match-footer{background:var(--tk-surface);color:var(--tk-text);border-color:var(--tk-border)}
.organized-layout .close-btn{background:var(--tk-alt);color:var(--tk-text)}
.organized-layout .form-grid input,.organized-layout .form-grid select,.organized-layout .form-grid textarea,.organized-layout .search input,.organized-layout .language-picker,.organized-layout .language-picker select{background:var(--tk-surface);color:var(--tk-text);border-color:var(--tk-border)}
.organized-layout input::placeholder,.organized-layout textarea::placeholder{color:var(--tk-muted);opacity:1}
.organized-layout .info,.organized-layout .match-decision,.organized-layout .youre-in,.organized-layout .match-note,.organized-layout .match-fact,.organized-layout .lineup-team,.organized-layout .bench,.organized-layout .chat-message,.organized-layout .match-review,.organized-layout .result-panel,.organized-layout .player-picker,.organized-layout .lineup-edit{background:var(--tk-alt);color:var(--tk-text);border-color:var(--tk-border)}
.organized-layout .match-decision.cancelled,.organized-layout .error{background:var(--tk-danger-soft);color:var(--tk-danger);border-color:var(--tk-danger)}
.organized-layout .match-decision b,.organized-layout .match-decision p,.organized-layout .chat-message p,.organized-layout .result-panel span,.organized-layout .lineup-team h3,.organized-layout .match-note p{color:inherit}
.organized-layout .lineup-team.team-2{border-color:var(--tk-accent)}
.organized-layout .fact-icon,.organized-layout .roster-number,.organized-layout .member-pill{background:var(--tk-soft);color:var(--tk-accent)}
.organized-layout .place-suggestions{background:var(--tk-surface);border-color:var(--tk-border);box-shadow:0 12px 30px var(--tk-shadow)}
.organized-layout .place-suggestions>button{color:var(--tk-text)}
.organized-layout .place-suggestions>button[aria-selected=true],.organized-layout .place-suggestions>button:hover{background:var(--tk-soft)}
.organized-layout .place-suggestions small,.organized-layout .place-attribution{color:var(--tk-muted)}
.organized-layout .web-update-notice{background:var(--tk-surface);color:var(--tk-text);border-color:var(--tk-border)}
.organized-layout .wizard-steps span{color:var(--tk-muted)}
.organized-layout .wizard-steps span.current,.organized-layout .wizard-steps span.done{color:var(--tk-accent)}
.organized-layout .google-signin{background:#fff;color:#202124;border-color:#b8bfc1}
.organized-layout .google-signin:hover{background:#f3f6fa}
.appearance-group{margin:0 0 22px;border:0;padding:0}.appearance-group legend{font-size:calc(19px * var(--tk-text-scale,1));font-weight:750;margin-bottom:12px;color:var(--tk-text)}
.appearance-choices{display:flex;gap:8px;flex-wrap:wrap}.organized-layout .appearance-choice{flex:1;min-width:80px;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;min-height:52px;border:1px solid var(--tk-border);background:var(--tk-surface);color:var(--tk-text);font-size:calc(17px * var(--tk-text-scale,1));border-radius:14px;line-height:1.5}
.organized-layout .appearance-choice[aria-pressed=true]{background:var(--tk-soft);border:2px solid var(--tk-accent);color:var(--tk-accent);font-weight:750}
.appearance-swatch{width:23px;height:23px;border-radius:50%;border:2px solid var(--tk-border);flex-shrink:0;background:var(--tk-accent)}
.appearance-swatch[data-color=green]{background:#246c39}.appearance-swatch[data-color=blue]{background:#245fc1}.appearance-swatch[data-color=orange]{background:#a94b14}.appearance-swatch[data-color=violet]{background:#7043b3}
.appearance-intro,.device-link-copy{font-size:calc(17px * var(--tk-text-scale,1));line-height:1.8;color:var(--tk-muted);margin:0 0 20px}
.device-link-actions{display:grid;gap:12px}.organized-layout .device-link-actions .btn{white-space:normal;min-height:56px;font-size:calc(18px * var(--tk-text-scale,1));text-align:center;text-decoration:none}
.device-install-note{font-size:calc(15px * var(--tk-text-scale,1));line-height:1.8;color:var(--tk-muted);margin-top:18px}
.admin-search{margin-block:15px}.admin-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:14px}.admin-summary{display:flex;gap:8px;flex-wrap:wrap;font-size:calc(15px * var(--tk-text-scale,1));color:var(--tk-muted)}
.admin-row{border:1px solid var(--tk-border);background:var(--tk-surface);border-radius:17px;padding:16px;margin-block:12px}.admin-row h3{margin:0 0 7px;font-size:calc(20px * var(--tk-text-scale,1));color:var(--tk-text);overflow-wrap:anywhere}.admin-row p{font-size:calc(16px * var(--tk-text-scale,1));line-height:1.7;color:var(--tk-muted);margin:4px 0;overflow-wrap:anywhere}.admin-row .actions{margin-top:13px}.admin-target{padding:14px;border-radius:15px;border:1px solid var(--tk-border);background:var(--tk-alt);font-size:calc(17px * var(--tk-text-scale,1));line-height:1.7;overflow-wrap:anywhere}.admin-target small{display:block;font-size:calc(14px * var(--tk-text-scale,1));color:var(--tk-muted)}
.admin-loading{padding:30px;text-align:center;color:var(--tk-muted);font-size:calc(18px * var(--tk-text-scale,1))}
:root[data-text-size=large] .organized-layout .settings-tiles,:root[data-text-size=extra] .organized-layout .settings-tiles{grid-template-columns:1fr}
:root[data-text-size=large] .organized-layout .settings-tiles .action-tile,:root[data-text-size=extra] .organized-layout .settings-tiles .action-tile{flex-direction:row;align-items:center;min-height:88px}
:root[data-text-size=extra] .organized-layout .hub-heading{align-items:flex-start;flex-wrap:wrap}
:root[data-text-size=extra] .organized-layout .browse-controls{flex-wrap:wrap}
:root[data-text-size=extra] .organized-layout .filter-compact{max-width:100%}
:root[data-text-size=extra] .organized-layout .hub-tabs{flex-wrap:wrap}
:root[data-text-size=extra] .organized-layout .hub-tab{min-width:90px}
.organized-layout button:focus-visible,.organized-layout input:focus-visible,.organized-layout select:focus-visible,.organized-layout textarea:focus-visible,.organized-layout summary:focus-visible,.organized-layout a:focus-visible{outline:3px solid var(--tk-accent);outline-offset:3px}

.organized-layout .card,.organized-layout .card-body,.organized-layout table,.organized-layout .table-wrap{background:var(--tk-surface);color:var(--tk-text);border-color:var(--tk-border)}.organized-layout .card h3,.organized-layout .meta,.organized-layout .price,.organized-layout .legal h3{color:var(--tk-text)}.organized-layout .legal p,.organized-layout .activity-row p,.organized-layout .activity-row time,.organized-layout .notice-row small{color:var(--tk-muted)}.organized-layout th,.organized-layout td{border-color:var(--tk-border)}

.appearance-choices.color-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}:root[data-text-size=extra] .appearance-choices:not(.color-choices){flex-direction:column}
/* Outcome colors stay consistent when the user chooses a different accent. */
:root{--result-win:#166534;--result-win-bg:#ecfdf5;--result-draw:#6b21a8;--result-draw-bg:#faf5ff;--result-loss:#b91c1c;--result-loss-bg:#fef2f2}
:root[data-theme="dark"]{--result-win:#86efac;--result-win-bg:#102b22;--result-draw:#d8b4fe;--result-draw-bg:#281b3a;--result-loss:#fca5a5;--result-loss-bg:#371b22}
.admin-view-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-block:16px}
.admin-view-grid button{white-space:normal;min-height:48px;font-size:calc(14px * var(--tk-text-scale,1))}
.admin-lock-intro{padding:16px 0}.admin-lock-intro>svg{width:36px;height:36px;color:var(--tk-accent)}
.admin-security{flex-wrap:wrap}.admin-member-list{border-inline-start:3px solid var(--tk-border);padding-inline-start:12px}
.admin-row details{margin-block:12px}.admin-row summary{cursor:pointer;min-height:36px}.admin-row p,.moderation-message .message-text{overflow-wrap:anywhere;white-space:pre-wrap}
.moderation-notice{padding:12px;border:1px solid var(--tk-border);border-radius:14px;background:var(--tk-surface);font-size:calc(14px * var(--tk-text-scale,1))}
.public-player-id{display:block;font-family:ui-monospace,monospace;font-size:calc(14px * var(--tk-text-scale,1));color:var(--tk-muted);overflow-wrap:anywhere;margin-block:4px}
.card-directions{margin:0 12px 12px;width:calc(100% - 24px);min-height:46px}
.match-side-name{min-width:0;display:grid;gap:8px;justify-items:center;flex:1;text-align:center}.match-side-name b{overflow-wrap:anywhere}.match-side-name small{color:var(--tk-muted)}.match-side-name button{white-space:normal;min-height:42px}
.club-history-entry{margin-bottom:18px}.club-history-list{display:grid;gap:14px;margin-block:18px}
.club-result{border:1px solid var(--tk-border);border-inline-start:5px solid;border-radius:16px;padding:16px;background:var(--tk-surface);display:grid;gap:10px}
.club-result.win{border-inline-start-color:var(--result-win)}.club-result.draw{border-inline-start-color:var(--result-draw)}.club-result.loss{border-inline-start-color:var(--result-loss)}
.club-result.win .result-outcome{color:var(--result-win);background:var(--result-win-bg)}.club-result.draw .result-outcome{color:var(--result-draw);background:var(--result-draw-bg)}.club-result.loss .result-outcome{color:var(--result-loss);background:var(--result-loss-bg)}
.club-result-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.result-outcome{border-radius:99px;padding:6px 12px;font-size:calc(15px * var(--tk-text-scale,1))}
.club-result-score{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}.club-result-score>span{overflow-wrap:anywhere;font-size:calc(16px * var(--tk-text-scale,1));font-weight:700}.club-result-score>span:last-child{text-align:end}.club-result-score>bdi{font-size:calc(25px * var(--tk-text-scale,1));font-weight:900;white-space:nowrap}
.club-result p{margin:0}.club-result small{color:var(--tk-muted);overflow-wrap:anywhere;font-size:calc(14px * var(--tk-text-scale,1))}.archived-result{display:block}
@media(max-width:480px){.admin-view-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-security{display:grid;grid-template-columns:1fr}.fixture-teams{gap:8px}.match-side-name button{font-size:calc(13px * var(--tk-text-scale,1));padding:8px}.club-result-score{gap:7px}}

.player-inline{border:0;background:transparent;color:inherit;padding:6px 0;min-height:44px;text-align:start;display:block;cursor:pointer;font:inherit}.player-inline:hover{text-decoration:underline}.player-inline .public-player-id{text-decoration:none}.player-card-head{display:flex;gap:16px;align-items:center;margin-bottom:20px}.player-facts{margin:14px 0;display:grid;gap:10px}.player-facts>div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--tk-border);padding:10px 0}.player-facts dt{color:var(--tk-muted)}.player-facts dd{margin:0;font-weight:700;overflow-wrap:anywhere;text-align:end}.player-optional .form-grid,.player-contact .form-grid{padding:14px 2px}.player-facts dt,.player-facts dd{font-size:calc(16px * var(--tk-text-scale,1))}
