/* GO ARENA · Unified Design System v8  |  Load LAST on every page.
   Uses existing HTML, PHP, JS IDs and keeps board/fullscreen interactions intact. */
@import url('https://fonts.googleapis.com/css2?family=Prompt:wght@400;500;600;700&display=swap');
:root{
 --go-ink:#112c38; --go-deep:#0c2934; --go-teal:#087f79; --go-teal-strong:#076660;
 --go-accent:#d7ad70; --go-muted:#667b88; --go-border:#dbe8e8;
 --go-bg:#f3f8f7; --go-card:#ffffff; --go-soft:#eaf5f3;
 --go-shadow:0 20px 55px rgba(16,61,67,.085); --go-radius:22px;
 font-family:'Prompt',system-ui,-apple-system,'Segoe UI',sans-serif;
 color:var(--go-ink);background:var(--go-bg);color-scheme:light;
}
html{scroll-behavior:smooth}
body{font-family:'Prompt',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--go-ink);
 background:radial-gradient(ellipse 65% 35% at 92% 0%,#dbf1e9 0%,transparent 78%),linear-gradient(155deg,#f6faf9,#edf5f4 68%,#f9fbfb);min-height:100dvh}
a{color:var(--go-teal-strong);text-underline-offset:3px}
a:hover{color:var(--go-teal)}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid #4cc6b5;outline-offset:3px}
:where(button,input,select,textarea){font-family:inherit}
:where(button,.button,.nav-cta){transition:background-color .16s,box-shadow .16s,transform .16s,border-color .16s}
:where(button,.button,.nav-cta):not(:disabled):hover{transform:translateY(-1px)}
:where(button,.button,.nav-cta):disabled{cursor:not-allowed;opacity:.57}
:where(.panel,.card,.feature,.nicknameCard,.courseOverview,.turnCard){border-radius:var(--go-radius);border-color:var(--go-border);box-shadow:var(--go-shadow)}
/* Landing */
.site-header{background:rgba(255,255,255,.91);border-color:var(--go-border);backdrop-filter:blur(15px)}
.logo,.logo b{color:var(--go-deep)}.mark,.accent,.feature-link,.steps span{color:var(--go-teal)}
.nav-cta,.button.primary{background:var(--go-deep);color:#fff;box-shadow:0 9px 22px #123d4b24}
.nav-cta:hover,.button.primary:hover{background:var(--go-teal-strong);color:#fff}
.button.outline{border-color:var(--go-border);background:#fff;color:var(--go-deep)}
.eyebrow{color:var(--go-teal-strong)}.dot{background:#42bda5}
.hero-copy>p,.section p,.feature p,.steps p{color:var(--go-muted)}
.hero-art{background:radial-gradient(circle,#d6eae3,transparent 71%)}
.feature{border-color:var(--go-border);box-shadow:var(--go-shadow)}
.feature-link{color:var(--go-teal-strong)}.steps>div{border-color:#afdad0}
.last-cta{background:linear-gradient(120deg,#0b2b35,#0e554f);color:#fff}
.last-cta p{color:#c7e2df}
/* Main play header + lobby, board and training */
body>header:not(.site-header),.arenaHeader{background:rgba(255,255,255,.93);border-bottom:1px solid var(--go-border);backdrop-filter:blur(16px)}
.brand,.brand a{color:var(--go-deep)!important}
.brand strong{color:var(--go-teal-strong)}
.brand small,.muted,.hint,.courseOverview .muted{color:var(--go-muted)}
main>.panel,.playPanel,.auth{background:var(--go-card);border:1px solid var(--go-border);box-shadow:var(--go-shadow)}
:where(.panel,.card,.modal,.nicknameCard,.courseTask,.trainingSidebar,.trainingFeedback){border-color:var(--go-border)}
:where(.auth input,.auth select,.settingsGrid input,.settingsGrid select,.realForm input,.realForm select,.nicknameEdit input,.card input,.card select,.card textarea,.modal input){background:#fbfdfd;border:1px solid #cbdedc;color:var(--go-ink);border-radius:12px}
:where(.auth input,.auth select,.settingsGrid input,.settingsGrid select,.realForm input,.realForm select,.nicknameEdit input,.card input,.card select,.card textarea,.modal input):focus{outline:none;border-color:var(--go-teal);box-shadow:0 0 0 3px #14a99a23}
:where(button.primary,button[type=submit]:not(.secondary):not(.danger),.mode.active,.fullscreenBtn[aria-pressed=true]){background:var(--go-teal-strong);color:#fff;border-color:transparent}
:where(button.primary,button[type=submit]:not(.secondary):not(.danger)):hover{background:var(--go-deep)}
:where(button.secondary,.fullscreenBtn,.tabs button:not(.active)){background:var(--go-soft);color:var(--go-deep);border:1px solid #cae2de}
:where(button.secondary,.fullscreenBtn):hover{background:#d9efeb}
button.danger{background:#fff1ee;color:#ac4239;border-color:#f0c6be}
button.danger:hover{background:#ffe3db}
.tabs button.active{background:var(--go-teal-strong);color:#fff}
.modeGrid .mode{border-color:var(--go-border);background:linear-gradient(155deg,#fff,#f6faf9);color:var(--go-deep);box-shadow:0 10px 22px #103b4410}
.modeGrid .mode:hover{border-color:#61b7ad;box-shadow:0 15px 32px #114d4520}
.modeGrid .mode strong{color:var(--go-deep)}
.nicknameCard,.courseOverview{background:linear-gradient(130deg,#edf8f4,#fff);border-color:#cbe6e0}
.myStanding,.courseBadge{color:var(--go-teal-strong)}
.courseMeter{background:#dceeea}.courseMeter span,#courseMeterFill{background:linear-gradient(90deg,#0d877c,#49b9a6)}
.courseLessons button{border-color:#d7e7e4}.courseLessons button:hover{border-color:#65b7ac}
.courseTask{background:#edf8f4}
.boardOuter{border-color:#c7dcd6;box-shadow:0 18px 36px #164e4420}
.boardOuter canvas{max-width:100%;touch-action:manipulation}
.gameLayout aside{border-color:var(--go-border)}
.turnCard{background:var(--go-soft)}
.rankingTable th,.tableScroll th{background:#ecf6f3;color:var(--go-deep)}
.rankingTable tr:nth-child(even),.tableScroll tr:nth-child(even){background:#f8fbfa}
.rankingScroll,.tableScroll{border-radius:15px;border:1px solid var(--go-border)}
.modal{background:#fff;box-shadow:0 30px 80px #082e3554}
/* Profile / email / reset views */
.wrap{color:var(--go-ink)}
.wrap nav{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.wrap nav a{color:var(--go-teal-strong)}
.wrap .card{background:#fff;border:1px solid var(--go-border);box-shadow:var(--go-shadow)}
.wrap p{color:var(--go-muted)}
.wrap :where(input,select,textarea){background:#fbfdfd;border:1px solid #cbdedc;color:var(--go-ink)}
.wrap :where(input,select,textarea):focus{outline:none;border-color:var(--go-teal);box-shadow:0 0 0 3px #14a99a23}
.wrap button{background:var(--go-teal-strong);color:white;box-shadow:0 7px 16px #0a6c6324}
.wrap button:hover{background:var(--go-deep)}
.wrap .stats article{background:linear-gradient(150deg,#fff,#f3faf7);border-color:var(--go-border)}
.wrap .stats strong{color:var(--go-deep)}
.wrap .stats span{color:var(--go-muted)}
#profileMsg,#passwordMsg,#message{color:var(--go-teal-strong)}
/* Tablet/iPad and accessible motion. No changes to fixed fullscreen sizing rules. */
@media(max-width:768px){.site-header,.arenaHeader{padding-inline:16px}.wrap{padding:16px;margin-top:14px}.wrap .card{padding:19px}.panel{border-radius:18px}}
@media(max-width:520px){.brand small{display:none}.wrap .stats{gap:9px}.site-header .nav-cta{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
