body .home-menu h1{width:100%;max-width:400px;margin-bottom:24px}
body .home-menu:has([data-page="main"]) h1{width:110%;max-width:none;margin-left:-5%}
.home-main:has([data-page="main"]){padding-bottom:100px}
.home-utilities{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));display:flex;gap:12px;z-index:5}
.home-utilities button{width:52px;height:52px;padding:14px;border:1px solid #bba26a88;border-radius:50%;background:#13271eed;color:#e4d2a5;cursor:pointer;box-shadow:0 3px 12px #0004}
.home-utilities svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.home-utilities button:hover{background:#2b3d2c}.home-utilities button:focus-visible{outline:2px solid #dcc18b;outline-offset:4px}
.public-profile-heading{display:flex;align-items:center;gap:22px;margin:22px 0}.public-profile-heading .portrait{display:block;flex:0 0 96px;width:96px;height:96px;border:1px solid #bba26a;border-radius:50%}
.public-profile-heading h2{margin:0;font:26px/1.3 "Literata",Georgia,serif;overflow-wrap:anywhere}.public-profile-heading p{margin:6px 0 10px;color:#bebfa8;overflow-wrap:anywhere}.public-profile-heading strong{color:#ddc58b}
.public-profile-history{border-top:1px solid #bba26a55;margin-top:24px;padding-top:12px}.public-profile-history h3{font:22px "Literata",Georgia,serif}
.public-profile-history .match-history{padding-left:0}.public-profile-history .match-history li{list-style:none}.public-profile-history .match-heading{flex-wrap:wrap}.public-profile-history .history-opponents{flex-wrap:wrap}
#modal:has(.public-profile){width:min(620px,calc(100vw - 32px));max-height:90dvh;overflow-y:auto}.public-profile [data-friend-action],.public-profile .history-pages button{color:#ead8ae;background:#203327;border:1px solid #bba26a88;padding:10px 14px;border-radius:5px;cursor:pointer}
.leaderboard [data-player-profile]{cursor:pointer}.leaderboard [data-player-profile]:hover{text-decoration:underline}
@media(max-width:650px){.home-utilities{right:18px;bottom:max(18px,env(safe-area-inset-bottom))}.public-profile-heading{gap:16px}.public-profile-heading .portrait{flex-basis:80px;width:80px;height:80px}.public-profile-heading h2{font-size:23px}body .home-menu:has([data-page="profile"]){width:100%}}
body .home-menu:has([data-page="profile"]){width:min(600px,100%)}
body .home-menu:has([data-page="profile"]) h1{margin:0 auto 28px;max-width:340px}
body .home-menu:has([data-page="profile"]) .home-subhead{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
body .home-menu:has([data-page="profile"]) .home-subhead .home-back{justify-self:start}
#public-profile-root,.public-profile{color:#e5dcc5}
body .public-profile-heading{position:static;display:flex;justify-content:center;align-items:center;width:auto;height:auto;padding:24px 0;margin:0;gap:28px;border:0;background:none;text-align:left}
body .public-profile-heading>div{flex:0 1 auto;min-width:0}
body .public-profile-heading .portrait{flex:0 0 112px;width:112px;height:112px;margin:0}
body .public-profile-heading h2{font:28px/1.3 "Literata",Georgia,serif;margin:0}
body .public-profile-heading p{font:14px/1.5 "Golos Text",sans-serif;margin:7px 0 12px}
body .profile-renown{display:inline-grid;grid-template-columns:22px auto 22px;gap:3px 7px;align-items:center;text-align:center;font:22px/1.2 "Literata",Georgia,serif;color:#d7b776}
.profile-renown small{grid-column:1/-1;font:10px/1.2 "Golos Text",sans-serif;letter-spacing:.08em}
.profile-totals,.profile-results{display:grid;text-align:center;padding:22px 0;gap:0}
.profile-totals{grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #bba26a55}
.profile-results{grid-template-columns:repeat(3,minmax(0,1fr));padding:15px 0 26px}
.profile-totals>div+div,.profile-results>div+div{border-left:1px solid #bba26a40}
.profile-totals strong,.profile-results strong{display:block;font:28px/1.3 "Literata",Georgia,serif;color:#ecd9ae}
.profile-totals span,.profile-results span{display:block;margin-top:5px;font:14px/1.4 "Golos Text",sans-serif;color:#d0c8af}
.profile-stat-caption{display:flex;align-items:center;gap:16px;margin:0;color:#b5a47c;font:12px/1.4 "Golos Text",sans-serif;text-align:center}
.profile-stat-caption:before,.profile-stat-caption:after{content:'';height:1px;flex:1;background:#bba26a40}
body .profile-actions{display:flex;flex-wrap:wrap;margin:0;padding:0;border:0;gap:10px}
body .profile-actions button{flex:1 1 180px;padding:12px 18px;min-height:48px;border:1px solid #bba26a88;border-radius:5px;background:#10201766;color:#e5dcc5;text-align:center;font:16px/1.4 "Literata",Georgia,serif;cursor:pointer}
.profile-actions p{flex-basis:100%;margin:0 0 4px}.profile-actions button:hover{background:#293a29}
[data-friend-status]:empty{display:none}
body details.public-profile-history{margin-top:18px;padding:0;border:1px solid #bba26a55;border-radius:5px}
.public-profile-history summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;cursor:pointer;list-style:none;font:18px/1.3 "Literata",Georgia,serif}
.public-profile-history summary::-webkit-details-marker{display:none}
.public-profile-history summary small{display:block;margin-top:5px;font:12px/1.4 "Golos Text",sans-serif;color:#b5a47c}
.public-profile-history[open] .profile-chevron{transform:rotate(180deg)}
.public-profile-history .match-history{margin:0;padding:0 18px}.public-profile-history .empty-state{padding:18px}.public-profile-history .history-pages{display:none}
.public-profile-history summary:focus-visible{outline:2px solid #dcc18b;outline-offset:3px}
@media(max-width:650px){body .public-profile-heading{justify-content:flex-start;gap:20px;padding:22px 0}body .public-profile-heading .portrait{flex-basis:88px;width:88px;height:88px}body .public-profile-heading h2{font-size:23px}.profile-totals strong,.profile-results strong{font-size:25px}.profile-totals span,.profile-results span{font-size:12px}body .home-menu:has([data-page="profile"]) h1{max-width:280px}.public-profile-history summary{padding:14px}.public-profile-history .match-history{padding:0 12px}}
body .profile-actions{flex-direction:row;align-items:stretch}
body .profile-actions button{width:100%;height:auto;max-width:none;font:16px/1.4 "Literata",Georgia,serif}
.profile-renown svg{width:20px;height:24px}.profile-renown svg:nth-of-type(2){transform:scaleX(-1)}
body .public-profile-heading .profile-renown{display:inline-flex;align-items:center;gap:6px;font:20px/1.2 "Literata",Georgia,serif;color:#d7b776}
body .public-profile-heading .profile-renown svg{width:20px;height:20px;flex:0 0 20px;transform:translateY(1px)}
body #modal #stay{background:transparent;box-shadow:none;color:#ded8c5;border:1px solid #bba26a66}
body #modal #confirm-leave{background:linear-gradient(#634237,#452d25);border:1px solid #b796628a;color:#f4e3be;box-shadow:inset 0 1px 0 #efd4a31c}
body #modal #confirm-leave:hover{background:linear-gradient(#78503c,#58372b)}
body .public-profile-heading .profile-renown>span{position:relative;top:-2px}

.home-utilities button{position:relative}.friend-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 4px;border-radius:12px;background:#bc3535;color:#fff;font:600 12px/20px sans-serif;box-shadow:0 0 0 2px #14261d}.home-main{padding-bottom:90px}

.bot-roster{display:flex;gap:16px;flex-wrap:wrap;margin:12px 0 20px}.bot-roster>span{display:flex;align-items:center;gap:8px;font-size:14px}.bot-roster .avatar-art{display:block;width:36px;height:36px;border-radius:50%;border:1px solid #bba26a88}

body #app .home-subhead:has(.profile-logout){display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}
body #app .home-subhead .profile-logout{justify-self:end;display:inline-flex;align-items:center;justify-content:center;gap:7px;width:auto;min-height:44px;margin:0;padding:8px 10px;border:1px solid #bba26a77;border-radius:6px;background:#14261c;color:#e6d5b0;font:14px/1.2 'Golos Text',sans-serif;white-space:nowrap}
body #app .profile-logout svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body #app .home-subhead .profile-logout:hover{background:#39402a;color:#fff0cb;border-color:#c8ae73}
body #app .profile-logout:focus-visible{outline:2px solid #e9ce91;outline-offset:3px}
@media(max-width:380px){body #app .home-subhead:has(.profile-logout){gap:8px}body #app .home-subhead .profile-logout{gap:5px;padding:8px;font-size:13px}body #app .home-subhead:has(.profile-logout) h2{font-size:22px}}

/* Compact live counts and account sign-in controls. */
body #app .home-online{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:20px 0 0;color:#bac0ab;font:13px/1.4 'Golos Text',sans-serif}
.home-online .online-label{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.home-online .online-dot{color:#b7d989;font-weight:700}.home-online .online-divider{color:#9d916766}
.home-online .online-chip{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.online-chip svg{width:15px;height:15px;fill:none;stroke:#baa46a;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}body #app .home-online strong{font-weight:400;min-width:1ch;font-size:14px;color:#efd398;font-variant-numeric:tabular-nums}
.signin-heading h3{font-size:25px;line-height:1.25;margin:0 0 12px}.signin-heading p,.signin-note,.signin-confirm p{font:14px/1.5 'Golos Text',sans-serif;color:#b9c3b2}.signin-password,.signin-provider{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid #baa46a33}.signin-password{padding:16px;background:linear-gradient(110deg,#33473399,#14261ccc);border:1px solid #baa46a66;border-radius:10px;margin:20px 0 8px}.signin-symbol{display:grid;place-items:center;width:36px;height:36px;border:1px solid #baa46a66;border-radius:10px;color:#dfc585;font:600 15px/1 sans-serif}.signin-password strong,.signin-provider strong{display:block;font-size:19px}.signin-password span:not(.signin-symbol),.signin-provider span:not(.signin-symbol){display:block;font:13px/1.5 'Golos Text',sans-serif;color:#b9c3b2;overflow-wrap:anywhere}.signin-provider.is-linked>div>span{color:#b9d398}
body #app .signin-provider button,body #app .signin-password button{width:auto;min-height:40px;padding:8px 12px;margin:0;border-radius:7px;font:14px/1.2 'Golos Text',sans-serif}.signin-providers button:disabled{opacity:.45;cursor:default}.signin-confirm{margin:20px 0;padding:18px;border:1px solid #baa46a77;border-radius:10px;background:#162c22}.signin-confirm h4{margin:0;font-size:22px}.signin-confirm>div{display:flex;gap:10px}.signin-confirm>div button{flex:1}.password-settings{margin-top:24px;border-top:1px solid #baa46a44;padding:18px 0}.password-settings summary{cursor:pointer;font-size:19px}.password-settings form{margin-top:18px}
@media(max-width:480px){body #app .home-online{gap:6px;font-size:12px}.home-online .online-chip{gap:4px}.home-online .online-label{gap:6px}.signin-heading h3{font-size:23px}.signin-password{grid-template-columns:32px minmax(0,1fr);padding:12px}.signin-password button{grid-column:2;justify-self:start}.signin-password,.signin-provider{gap:8px}.signin-provider{grid-template-columns:32px minmax(0,1fr) auto}.signin-symbol{width:30px;height:30px;font-size:12px}body #app .signin-provider button{padding:7px 9px;font-size:12px}.signin-provider strong{font-size:18px}}
@media(max-width:360px){body #app .home-online{gap:4px;font-size:11px}.home-online .online-chip,.home-online .online-label{gap:3px}.home-online .online-chip svg{width:13px;height:13px}body #app .home-online strong{font-size:12px}}

.signin-symbol svg{display:block;width:22px;height:22px;flex:none}@media(max-width:480px){.signin-symbol svg{width:20px;height:20px}}
