/* Courtly's green palette for public sign-in and venue workspaces. */
html:has(body.auth-game-mode),html:has(body.venue-game-mode){color-scheme:dark;scrollbar-color:#497856 #061b1a}
body.auth-game-mode,body.venue-game-mode{--paper:#061b1a;--ink:#edf9ee;--muted:#aac6b7;--line:#396752;--bs-body-color:#edf9ee;--bs-secondary-color:#aac6b7;background:radial-gradient(ellipse at 12% 0%,#0c8a5b55,transparent 55%),#061b1a;color:#edf9ee;color-scheme:dark}
body:is(.auth-game-mode,.venue-game-mode) :is(h1,h2,h3,h4,h5,h6,strong,.form-label){color:#edf9ee}
body:is(.auth-game-mode,.venue-game-mode) :is(p,.hint,.form-text,.text-muted,small,.lead-copy){color:#aac6b7}
body:is(.auth-game-mode,.venue-game-mode) a{color:#bce9c9}
body:is(.auth-game-mode,.venue-game-mode) :is(.site-header,.site-footer,.nav-links,.workspace-header,.workspace-links,.auth-form,.panel,.admin-panel,.stat-card,.admin-stat,.owner-stat,.owner-court,.owner-court-details,.owner-overview-card,.owner-section,.owner-card,.owner-court-row,.reservation-card,.court-editor-section,.court-editor-photo,.court-date-limits,.workspace-logout,.admin-sidebar,.admin-topbar,.admin-content,.admin-metric,.admin-stat-card,.admin-table-wrap,.admin-card,.owner-kpi,.owner-kpi-card,.owner-overview-section,.owner-activity-card,.owner-summary-card){background:#102f29;border-color:#396752;color:#edf9ee;box-shadow:0 8px 24px #0002}
body:is(.auth-game-mode,.venue-game-mode) :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,textarea,.form-control,.form-select,.google-signin,.password-wrap button,.btn-outline-brand,.mobile-toggle){background-color:#092520;border-color:#487961;color:#edf9ee}
body:is(.auth-game-mode,.venue-game-mode) :is(input,textarea)::placeholder{color:#91ad9f}
body:is(.auth-game-mode,.venue-game-mode) input:-webkit-autofill{box-shadow:0 0 0 1000px #092520 inset!important;-webkit-text-fill-color:#edf9ee}
body:is(.auth-game-mode,.venue-game-mode) :is(.btn-brand,.btn-brand:hover){background:#008c6f;color:#fff;border-color:#27a980}
body.venue-game-mode :is(th,td,.table,.table-striped>tbody>tr:nth-of-type(odd)>*){--bs-table-bg:#102f29;--bs-table-striped-bg:#163a30;--bs-table-color:#edf9ee;--bs-table-striped-color:#edf9ee;background-color:transparent;color:#edf9ee;border-color:#396752}
body.venue-game-mode .court-editor-heading{background:#163a30;color:#edf9ee;border-color:#396752}
body:is(.auth-game-mode,.venue-game-mode) .auth-divider:before,body:is(.auth-game-mode,.venue-game-mode) .auth-divider:after{background:#396752}
body.auth-game-mode .auth-aside{background:#143e2c;color:#edf9ee}
body.auth-game-mode .auth-form{border:1px solid #396752;border-radius:24px;padding:24px}
body.auth-game-mode .auth-foot a{color:#d6f082}
body.venue-game-mode.venue-game-mode :is(.operations-metric,.operations-action,.operations-panel){background:#102f29;border-color:#396752;color:#edf9ee}
body.venue-game-mode.venue-game-mode :is(.operations-metric strong,.operations-action strong,.operations-panel h2){color:#edf9ee}
body.venue-game-mode.venue-game-mode :is(.reservation-summary>a,.reservation-summary>div,.reservation-filters,.reservation-record,.reservation-record-top,.reservation-receipt,.reservation-review,.reservation-payments,.reservation-details){background:#102f29;color:#edf9ee;border-color:#396752}
body.venue-game-mode.venue-game-mode :is(.receipt-decision,.received-payment,.match-card,.booking-panel,.booking-category-nav,.payment-primary,.court-setup,.next-game-form){background:#102f29;color:#edf9ee;border-color:#396752}
body.venue-game-mode.venue-game-mode :is(.court-editor-actions,.court-editor .court-days label){background:#102f29;color:#d8ebdf;border-color:#487961}
@media(max-width:600px){html:has(body.auth-game-mode),html:has(body.venue-game-mode){scrollbar-width:none}html:has(body.auth-game-mode)::-webkit-scrollbar,html:has(body.venue-game-mode)::-webkit-scrollbar{width:0}}

body.venue-game-mode.venue-game-mode :is(.admin-panel,.admin-stat,.owner-dashboard .admin-report-link,.owner-court-details,.reservation-summary,.reservation-payment,.court-editor-section,.admin-topbar,.admin-sidebar){background:#102f29;border-color:#396752;color:#edf9ee}
body.venue-game-mode.venue-game-mode :is(.owner-dashboard .admin-stat strong,.owner-dashboard .admin-panel h2,.owner-dashboard .owner-page-title,.admin-list strong,.admin-topbar strong,.owner-court-details h3){color:#edf9ee}

body.venue-game-mode.venue-game-mode :is(.owner-profile-brand,.owner-profile-logo,.owner-profile-copy small,.workspace-contact.selected,.workspace-message p,.workspace-chat-history,.workspace-message-form,.owner-open-session,.metric,.admin-months>div){background:#102f29;color:#d8ebdf;border-color:#487961}
body.venue-game-mode.venue-game-mode :is(.status,.owner-booking-type,.admin-badge){background:#224b3a;color:#d1ebc0;border-color:#527258}
body.venue-game-mode.venue-game-mode .workspace-message.mine p{background:#075941;color:#f1ffe7}
body.venue-game-mode.venue-game-mode .owner-profile-copy strong{color:#edf9ee}
body:is(.auth-game-mode,.venue-game-mode) .alert-success{background:#173b2e;color:#cfeebc;border-color:#497856}
body:is(.auth-game-mode,.venue-game-mode) .alert-danger{background:#422b2b;color:#ffd0c8;border-color:#87564e}
body:is(.auth-game-mode,.venue-game-mode) .brand{color:#d6f082}

/* Public authentication navigation must remain readable when opened on mobile. */
body.auth-game-mode .nav-links a{color:#edf9ee}
@media(max-width:767px){body.auth-game-mode .nav-links{max-height:calc(100dvh - 76px);overflow-y:auto;padding:20px max(24px,env(safe-area-inset-right)) 24px max(24px,env(safe-area-inset-left))}body.auth-game-mode .nav-links>a:not(.btn){min-height:44px;display:flex;align-items:center}body.auth-game-mode .mobile-toggle{min-width:44px;min-height:44px}}
