:root{--header-height:84px;--social-muted:#b5bfae}
body{font-size:16px}.app-shell{padding:0}.app-header{position:sticky;top:0;z-index:1600;padding:16px 24px;display:flex;gap:22px;border-bottom:1px solid var(--social-line);box-shadow:none}.app-brand{background:none;border:0;color:var(--social-accent);font:800 27px system-ui;cursor:pointer;letter-spacing:-1px}.app-brand span{color:var(--social-text);font-size:17px;letter-spacing:1px}.app-header .toolbar-links{gap:3px;align-items:center}.app-header .toolbar-links button{font-size:15px;white-space:nowrap;background:transparent;border-color:transparent;padding:10px 12px;min-height:44px}.app-header .toolbar-links button:hover{background:var(--social-soft)}.header-account{display:flex;align-items:center;gap:8px}.header-account select,.header-account button{font:inherit;font-size:14px;color:var(--social-text);background:var(--social-soft);border:1px solid var(--social-line);border-radius:10px;min-height:44px;padding:8px 10px}.header-account button{max-width:165px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.home-screen{display:block!important;max-width:1180px;margin:auto;min-height:0}.home-screen[style*="display: none"]{display:none!important}.home-content{padding:42px 24px}.home-hero{min-height:310px;border:1px solid var(--social-line);border-radius:24px;padding:40px;box-shadow:none}.home-hero h1{font-size:clamp(30px,4vw,52px);letter-spacing:-1px}.home-hero p{font-size:18px;line-height:1.7;max-width:440px}.home-hero .hero-actions{margin-top:28px}.home-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.home-shortcuts button{display:flex;flex-direction:column;align-items:flex-start;gap:28px;padding:28px;border:1px solid var(--social-line);background:var(--social-panel);color:var(--social-text);border-radius:18px;cursor:pointer;text-align:left;font:inherit}.home-shortcuts button:hover{border-color:var(--social-accent);transform:translateY(-2px)}.home-shortcuts strong{font-size:20px}.shortcut-symbol{font-size:30px;color:var(--social-accent)}
.card-eyebrow,.hero-kicker,.panel-kicker,.social-eyebrow,.home-footer,.online-badge,.clock-label+strong+small{display:none!important}.play-stage{padding-top:var(--header-height)}.play-stage-header{grid-template-columns:170px 1fr 170px}.play-stage-header>div:nth-child(2){grid-column:2}.play-stage-header h2{font-size:24px}.network-status{font-size:15px;line-height:1.6}.network-panel h2{font-size:22px}.network-row{gap:10px}.network-row button{font-size:15px}.room-lobby p,.room-hint,.room-footer p,.room-seat small,.room-member small{font-size:14px}.room-seat-name{font-size:16px}.room-lobby-preview button{font-size:15px}.room-place-buttons button{font-size:15px}.arena-room-options>label:first-child,.arena-checkbox{font-size:15px}.arena-format{font-size:15px}.setup .settings-grid{gap:14px}.player-config label{font-size:16px}.time-choice-grid{display:none}.time-config select{display:block!important}.setup{box-shadow:none}.setup-title-block{margin-bottom:20px}.play-choice-card small{font-size:15px}.play-choice-modal p{font-size:16px}
.social-dialog{box-shadow:0 22px 80px #0005}.social-dialog button,.social-dialog select,.social-dialog input,.social-dialog textarea{font-size:16px;min-height:44px}.social-dialog h3{font-size:21px}.social-header h2{font-size:28px}.social-header{padding:24px}.social-header p:empty{display:none}.social-tabs button{font-size:15px}.social-meta,.person-top small,.person-presence,.chat-header small,.social-people-list small{font-size:14px}.social-dialog p{font-size:15px;line-height:1.6}.avatar-setting p{font-size:15px}.avatar-choice-grid button{padding:4px}.avatar-crop label{font-size:14px}.profile-dialog{width:min(920px,100%)}.profile-page{padding:24px}.profile-page .home-card{margin-bottom:24px;box-shadow:none}.profile-stats{gap:10px}.profile-stat span{font-size:14px}.profile-message{font-size:14px}.profile-message:empty{display:none}.history-home h2{font-size:24px}.match-meta,.match-main small{font-size:14px}
.arena-content{padding:24px}.arena-section-heading{margin-bottom:14px}.arena-history-tabs{display:flex;gap:8px;margin:0 0 20px}.arena-history-tabs [aria-selected=true]{background:var(--social-accent);color:var(--social-ink)}.arena-card p,.arena-detail-header p,.arena-match-footer small{font-size:14px}.arena-card h3{font-size:22px}.arena-pill{font-size:13px}.arena-participant,.arena-player{font-size:16px}.arena-player small,.arena-participant span{font-size:13px}.arena-detail-header h3{font-size:28px}.arena-round>h4{font-size:15px}.arena-match-footer button{font-size:14px}.arena-level-setting{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0}.arena-level-setting label{font-size:16px}.arena-gamebar{font-size:15px;max-width:1200px;margin:18px auto}.arena-gamebar>span{font-size:15px}.arena-gamebar button{font-size:14px}.game.active{margin:0 auto;max-width:1260px;padding:24px}.players-info{gap:10px}.player-box{padding:12px!important}.player-box>div{font-size:16px}.player-box .player-type,.player-box .team-name{display:none}.room-player-avatar .kaz-avatar{width:36px;height:36px}.history-panel{max-height:470px;overflow:auto}.history-panel h3{font-size:19px}.history-list li{font-size:15px}.controls .btn{font-size:15px}.turn-notice{padding:15px 18px;background:var(--social-soft);border:1px solid var(--social-line);border-radius:12px;margin-bottom:18px;color:var(--social-text);display:flex;align-items:center;gap:16px;justify-content:space-between}.turn-notice button{font:inherit;padding:10px;border:0;border-radius:8px;background:var(--social-accent);color:var(--social-ink);cursor:pointer}
#matchEndOverlay{z-index:2500}.match-end-dialog{max-width:580px;padding:32px;text-align:center}.match-end-mark{width:64px;height:64px;margin:0 auto 20px;border-radius:50%;background:var(--social-accent);color:var(--social-ink);display:grid;place-items:center;font-size:32px}.match-end-dialog h2{color:var(--social-text);font-size:28px}.match-end-dialog p{margin-top:14px;font-size:18px}.match-end-dialog p:empty{display:none}.match-end-dialog table{margin:24px 0;border-collapse:collapse;width:100%;text-align:left}.match-end-dialog th,.match-end-dialog td{padding:12px;border-bottom:1px solid var(--social-line);font-size:16px}.match-end-dialog th:last-child,.match-end-dialog td:last-child{text-align:right}.match-end-actions{display:flex;flex-direction:column;gap:10px;margin-top:28px}.match-end-actions button{min-height:48px}#matchEndError{color:#ed9b8f}.match-clock.finished{opacity:.75}
@media(max-width:1100px){.app-header{gap:10px;flex-wrap:wrap;padding:12px 18px}.app-header .toolbar-links{order:3;flex-basis:100%;justify-content:center}.header-account{margin-left:auto}.home-hero{padding:28px}.home-content{padding:28px 20px}}
@media(max-width:760px){.app-header{padding:9px 12px;gap:6px}.app-header .toolbar-links{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;max-width:100%;padding-bottom:3px}.app-header .toolbar-links button{flex:0 0 auto;padding:8px 11px;font-size:15px}.app-brand{font-size:24px}.app-brand span{font-size:15px}.header-account button{max-width:130px;font-size:13px}.header-account select{width:66px}.home-content{padding:20px 14px}.home-hero{display:block;padding:26px 22px;min-height:0}.hero-board-art{display:none}.home-hero p{font-size:17px}.home-shortcuts{grid-template-columns:1fr;gap:12px}.home-shortcuts button{flex-direction:row;align-items:center;padding:20px;gap:20px}.home-shortcuts strong{font-size:19px}.home-shortcuts .shortcut-symbol{width:30px;text-align:center}.play-stage-header{grid-template-columns:auto 1fr;gap:10px;padding-bottom:16px}.play-stage-header h2{font-size:21px}.play-stage-inner{padding-top:18px}.stage-back-btn{font-size:14px}.social-header{padding:18px}.social-header h2{font-size:25px}.profile-page,.arena-content{padding:16px}.social-overlay{padding:8px}.social-dialog{max-height:96dvh}.game.active{padding:12px}.players-info{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.player-box{min-width:0}.player-box>div{font-size:14px}.player-box .piece-count{font-size:14px}.room-player-avatar{margin-bottom:5px}.history-panel{max-height:240px}.arena-gamebar{margin:12px;font-size:14px}.arena-gamebar>span{font-size:14px}.match-end-dialog{padding:26px 20px}.match-end-dialog h2{font-size:25px}.turn-notice{flex-wrap:wrap;font-size:15px}.avatar-choice-grid .kaz-avatar{width:34px;height:34px}.profile-stat strong{font-size:22px}}
.hero-board-image{display:block;width:min(382px,100%);height:auto;object-fit:contain;border-radius:18px;transform:rotate(3deg);filter:drop-shadow(0 22px 28px rgba(0,0,0,.38))}
@media(max-width:900px){.hero-board-art{display:flex;margin-top:24px}.hero-board-image{width:min(300px,88vw)}}
@media(max-width:760px){.app-header .toolbar-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;gap:2px;width:100%;padding:0}.app-header .toolbar-links button{min-width:0;padding:8px 2px;font-size:14px;white-space:normal}.app-header .toolbar-links .social-badge{margin-left:2px;min-width:15px}}
#game,.arena-gamebar{scroll-margin-top:calc(var(--header-height) + 18px)}.has-player-avatar.player-box{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:12px;row-gap:3px;text-align:left;background:var(--social-panel)!important;color:var(--social-text)!important;border:1px solid var(--social-line);border-left:4px solid var(--piece-color);border-radius:12px;box-shadow:none;align-items:center;padding:14px!important}.player-box.blue{--piece-color:#648cff}.player-box.black{--piece-color:#a4a8b2}.player-box.red{--piece-color:#ef6174}.player-box.white{--piece-color:#e7e9df}.has-player-avatar.player-box.active{border-color:var(--social-accent);border-left-color:var(--piece-color);box-shadow:0 0 0 2px var(--social-accent);transform:none}.has-player-avatar.player-box .type,.has-player-avatar.player-box .team-line{display:none!important}.has-player-avatar.player-box>div{grid-column:2;margin:0;font-size:15px;line-height:1.4;overflow-wrap:anywhere}.has-player-avatar.player-box .count{font-size:14px;color:var(--social-muted)}.has-player-avatar.player-box .room-player-avatar{grid-row:1/3;grid-column:1;margin:0}.game>.status{background:var(--social-soft);border:1px solid var(--social-line);color:var(--social-text);padding:13px 18px;font-size:18px;font-weight:600;border-radius:12px;margin:18px 0;text-align:center}.match-clock-wrap{margin:12px 0!important}.match-clock{padding:10px 18px}.players-info{margin-bottom:12px}.game .controls{margin-top:20px}.app-header{margin-top:0}
@media(max-width:760px){.has-player-avatar.player-box{grid-template-columns:30px minmax(0,1fr);column-gap:8px;padding:10px!important;min-height:80px}.has-player-avatar.player-box>div{font-size:14px}.room-player-avatar .kaz-avatar{width:30px;height:30px}.game>.status{font-size:16px;margin:14px 0}.arena-gamebar{gap:7px;padding:10px}.arena-gamebar button{padding:8px 10px}.match-clock-wrap{margin:8px 0!important}}
