/* Shared pastel surfaces for public pages, club pages and tournament administration. */
:root{--tw-blue:#d8e9f8;--tw-blue-soft:#e4eef8;--tw-beige:#f0dfc2;--tw-beige-soft:#f6e9d3;--tw-green:#d9ecdc;--tw-green-soft:#e2efdf;--tw-surface-line:#bdcfe0;--tw-surface-ink:#173650}
body,body.tt-tournament-page,body[data-club-page]{background:var(--tw-blue-soft)}
body .header{background:#dceaf7;border-bottom-color:#bbd0e3}
body .soft,body .section.soft{background:var(--tw-green)}
body .hero-panel{background:var(--tw-beige-soft)}
body .event-card,body .leader-card,body .local-site-card{background:var(--tw-beige-soft);border-color:#e4dccb}
body .event-card:nth-child(3n+2),body .leader-card:nth-child(3n+2),body .local-site-card:nth-child(3n+2){background:var(--tw-green-soft);border-color:#d0e3d6}
body .event-card:nth-child(3n),body .leader-card:nth-child(3n),body .local-site-card:nth-child(3n){background:var(--tw-blue);border-color:#ccdced}
body .event-date{background:#e1edf8}body .club-banner{background:var(--tw-beige);border-color:#e4dccb}body .profile-art{background:var(--tw-green)}
body .support-person,body .support-control,body .login-box{background:var(--tw-beige);border-color:#dfd5c3}
body .chat-panel,body .chat-messages{background:var(--tw-blue)}body .chat-heading{background:var(--tw-green)}body .chat-message{background:var(--tw-beige-soft)}
body .support-form{background:var(--tw-green-soft);border:1px solid #d0e3d6;border-radius:10px;padding:20px}
body .support-form input,body .support-form textarea,body .support-form select{background:#f8fbff;border-color:#b7cbdc}
body .ranking-table tbody tr:nth-child(odd){background:var(--tw-blue-soft)}body .ranking-table tbody tr:nth-child(even){background:var(--tw-green-soft)}
body[data-club-page] .club-events{background:var(--tw-blue);border-color:#cbddeb}
body[data-club-page] .club-event{background:var(--tw-beige-soft);border-color:#e4dac8}
body[data-club-page] .club-event:nth-child(even){background:var(--tw-green-soft);border-color:#cee1d5}
body[data-club-page] .club-bottom,body[data-club-page] .club-no-events{background:var(--tw-beige);border-color:#e4dac8}
body .club-directory .club-card,body .club-directory .club-directory-head{background:var(--tw-blue-soft)}
/* Stronger scoping keeps these colours consistent when the workbench CSS loads later. */
body.tt-tournament-page .tt-enhanced .tt-class-nav{background:var(--tw-blue);border-color:#cbddeb}
body.tt-tournament-page .tt-class-nav a:not([aria-current]){background:var(--tw-blue-soft)}
body.tt-tournament-page .tt-class-nav a.tt-nav-team:not([aria-current]){background:var(--tw-beige)}
body.tt-tournament-page .tt-pairing-column{background:var(--tw-beige-soft);border-color:#e6ddcc}
body.tt-tournament-page .tt-round{background:var(--tw-blue);border-color:#cbddeb}
body.tt-tournament-page .tt-round>summary{background:#dae9f8}
body.tt-tournament-page .tt-enhanced .tt-match{background:var(--tw-green-soft);border-color:#ccddd1}
body.tt-tournament-page .tt-enhanced .tt-match:nth-child(even){background:var(--tw-blue);border-color:#b7cfe5}
body.tt-tournament-page .tt-enhanced .tt-match.tt-corrected{background:#fff0d7;border-left-color:#d98500}
body.tt-tournament-page .tt-enhanced .tt-team-game{background:var(--tw-blue);border-color:#ccdaea}
body.tt-tournament-page .tt-enhanced .tt-team-game:nth-child(even){background:var(--tw-beige)}
body.tt-tournament-page .tt-standing-column{background:var(--tw-green);border-color:#c9dfd1}
body.tt-tournament-page .tt-standing-column table{background:var(--tw-green)}
body.tt-tournament-page .tt-standing-column tbody tr:nth-child(odd){background:#d4e8d9}
body.tt-tournament-page .tt-standing-column tbody tr:nth-child(even){background:#e0efdf}
body.tt-tournament-page .tt-standing-column td{border-bottom-color:#d2e3d7}
body.tt-tournament-page .tt-enhanced .tt-checkin-row{background:var(--tw-blue-soft)}
body.tt-tournament-page .tt-enhanced .tt-checkin-row:nth-child(even){background:var(--tw-green-soft)}
body.tt-tournament-page .tt-enhanced .tt-team-setup{background:var(--tw-beige);border-color:#e5d6bc}
body.tt-tournament-page .tt-dashboard-action{background:var(--tw-blue);border-color:#b7cfe5}
body.tt-tournament-page .tt-stat-blue{background:#d4e6f9;border-color:#b6cfea}
body.tt-tournament-page .tt-stat-orange{background:#f5e0bf;border-color:#e4c898}
body.tt-tournament-page .tt-stat-green{background:#d3eadc;border-color:#b2d5bf}
body.tt-tournament-page .tt-stat-violet{background:#e3ddf3;border-color:#cbbfe5}
body.tt-tournament-page .tt-dashboard-action:nth-child(2){background:var(--tw-beige);border-color:#e4d7c0}
body.tt-tournament-page .tt-dashboard-action:nth-child(3){background:var(--tw-green);border-color:#cde1d3}
body.tt-tournament-page .tt-connection{background:var(--tw-beige-soft)}
body.tt-tournament-page .tt-connected{background:var(--tw-green)}
body.tt-tournament-page .tt-action-copy small,body.tt-tournament-page .tt-console-heading>span,body.tt-tournament-page .tt-connection small,body.tt-tournament-page .tt-dialog-intro,body.tt-tournament-page .tt-game-id{color:#425c73}
body.tt-tournament-page .tt-dialog,body.tt-tournament-page .tt-dialog-body{background:var(--tw-blue-soft)}
body.tt-tournament-page #tt-help-dialog .tt-dialog-body{background:var(--tw-beige-soft)}
body.tt-tournament-page #tt-log-dialog .tt-dialog-body{background:var(--tw-green-soft)}
body.tt-tournament-page .tt-dialog .tt-source-link{background:var(--tw-green);border-color:#cde1d3}
body.tt-tournament-page .tt-dialog .tt-source-link:nth-of-type(even){background:var(--tw-beige);border-color:#e4d7c0}
body #tt-workspace>.tt-box{background:var(--tw-beige-soft);border:1px solid #e4d7c0}
body #tt-workspace>.tt-box:nth-of-type(even){background:var(--tw-green-soft);border-color:#cde1d3}
/* A countable point and a written result remain clearly distinct. */
body:has(#counter){background:var(--tw-blue-soft)}
body:has(#counter) main{background:var(--tw-beige-soft);border-color:#dfd8ca}
body:has(#counter) .names{background:var(--tw-green);border-radius:10px;padding:12px}
body:has(#counter) #result-form{background:var(--tw-blue);border-radius:10px;padding:16px}
@media(max-width:599px){body .support-form{padding:14px}}
