.hb-surface .site-footer{width:100%;max-width:74rem;margin:3.5rem auto 0;padding-top:1.5rem;border-top:1px solid var(--line);color:var(--muted);font-size:.8rem}.hb-surface .site-footer nav{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem 1.5rem}.hb-surface .site-footer a{display:inline-flex;align-items:center;min-height:2.75rem;color:var(--muted);text-decoration:none}.hb-surface .site-footer a:hover{color:var(--text);text-decoration:underline}.hb-surface .site-footer a.privacy-link{font-weight:700;color:var(--text)}.hb-surface .site-footer small{display:block;margin-top:.5rem;font-size:.75rem}.hb-surface .account-shell>.site-footer{max-width:48rem}.hb-surface .legal-shell{max-width:56rem;margin:0 auto;padding:2rem 1.25rem 3rem}.hb-surface .legal-document{padding:clamp(1.25rem,4vw,3rem);border:1px solid var(--line);border-radius:.35rem;background:var(--surface)}.hb-surface .legal-document h1{margin:0;font-size:clamp(1.65rem,5vw,2.5rem);letter-spacing:-.035em}.hb-surface .legal-home-bottom{display:flex;align-items:center;width:-moz-fit-content;width:fit-content;min-height:2.75rem;margin-top:2rem;font-size:.875rem}.hb-surface .legal-meta{margin-top:.75rem;color:var(--muted);font-size:.8rem}.hb-surface .legal-content{line-height:1.85;overflow-wrap:anywhere;word-break:keep-all}.hb-surface .legal-content section{margin-top:2.5rem}.hb-surface .legal-content h2{margin:0 0 .9rem;font-size:1.15rem}.hb-surface .legal-content p{margin:.8rem 0}.hb-surface .legal-content ol,.hb-surface .legal-content ul{padding-left:1.3rem}.hb-surface .legal-content li+li{margin-top:.65rem}.hb-surface .legal-document a{color:var(--text);text-underline-offset:.2em}.hb-surface .legal-document a:focus-visible,.hb-surface .site-footer a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:.1rem}.hb-surface .legal-data-list>div{padding:1rem 0;border-bottom:1px solid var(--line)}.hb-surface .legal-data-list dt{font-weight:700}.hb-surface .legal-data-list dd{margin:.4rem 0 0}.hb-surface .legal-piece-preview{display:grid;grid-template-columns:repeat(6,minmax(0,3.25rem));grid-gap:clamp(.25rem,1vw,.5rem);gap:clamp(.25rem,1vw,.5rem)}.hb-surface .legal-piece-preview img{display:block;width:100%;height:auto}@media (max-width:38rem){.hb-surface .site-footer nav{column-gap:1rem}.hb-surface .legal-shell{padding:1rem .75rem 2rem}}.hb-surface .account-shell{padding:2rem 1rem 3rem;min-height:100vh}.hb-surface:has(.account-shell){scrollbar-gutter:stable both-edges}.hb-surface .account-card{width:min(100%,48rem);min-width:0;max-width:48rem;margin:0 auto;padding:clamp(1rem,4vw,2.5rem);border:1px solid var(--line);border-radius:1.3rem;background:var(--surface)}.hb-surface .account-card h1{font-size:clamp(1.8rem,5vw,2.7rem)}.hb-surface .account-card h2{font-size:1.15rem;margin-top:1.8rem}.hb-surface .account-card li,.hb-surface .account-card p{line-height:1.6}.hb-surface .account-card a,.hb-surface .game-shell a,.hb-surface .lobby-shell a,.hb-surface .seat-owner a{color:var(--accent)}.hb-surface .account-card form,.hb-surface .account-card label{display:grid;grid-gap:.65rem;gap:.65rem}.hb-surface .account-card form{gap:1rem}.hb-surface .account-field-hint{margin:.4rem 0 0;font-size:.8125rem}.hb-surface .account-card .identity-input::placeholder{font-size:.8125rem;color:var(--muted);opacity:1}.hb-surface .account-card input:not([type=checkbox]):not(.sr-only),.hb-surface .account-card textarea{width:100%;min-height:2.8rem;padding:.7rem;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:.55rem;font:inherit}.hb-surface .account-card button{margin:.3rem .4rem .3rem 0}.hb-surface .account-card a:focus-visible,.hb-surface .account-card input:focus-visible,.hb-surface .account-card textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.hb-surface .account-card .checkbox-label{display:flex;align-items:center;gap:.8rem;min-height:2.75rem;cursor:pointer}.hb-surface .account-card .checkbox-label input[type=checkbox]{flex:0 0 1.25rem;width:1.25rem;height:1.25rem;min-height:1.25rem;margin:0;padding:0;accent-color:var(--accent)}.hb-surface .disclosure{border:1px solid var(--line);border-radius:.75rem;padding:1rem;margin:1rem 0;background:var(--surface-alt)}.hb-surface .account-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem;align-items:center}.hb-surface .account-user-code-text{margin-left:auto;text-align:right;color:var(--muted);font-size:.75rem}.hb-surface .onboarding-card>h1{margin:0 0 1.5rem}.hb-surface .onboarding-card form{gap:.75rem}.hb-surface .onboarding-card .account-field-hint{margin:-.25rem 0 0}.hb-surface .nickname-availability{margin:-.25rem 0 0;min-height:1.3em}.hb-surface .onboarding-card .disclosure{margin:.25rem 0 0}.hb-surface .account-card .disclosure h2{margin:0 0 .8rem}.hb-surface .deactivation-password{display:grid;grid-gap:.65rem;gap:.65rem;margin:1.25rem 0}.hb-surface .signup-email-label{display:flex;align-items:center;gap:.75rem}.hb-surface .signup-email-label .verified-email{margin-left:auto;font-size:.8125rem;color:var(--muted)}.hb-surface .verification-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.65rem;gap:.65rem}.hb-surface .verification-code-meta{display:flex;justify-content:space-between;align-items:center;font-size:.8125rem;color:var(--muted)}.hb-surface .account-card .text-button{border:0;padding:0;margin:0;background:transparent;color:var(--muted);font:inherit;text-decoration:underline;text-underline-offset:3px}.hb-surface .email-signup-form input[readonly]{color:var(--muted);background:var(--surface-alt)}.hb-surface .email-signup-form .helper{margin:-.25rem 0 0}.hb-surface .account-card .verification-code-row button{margin:0;min-width:4rem}@media (max-width:600px){.hb-surface .account-user-code-text{flex-basis:100%}}.hb-surface .account-notice{padding:.8rem 1rem;background:var(--surface-alt)}.hb-surface .stats-table{width:100%;border-collapse:collapse;margin:1rem 0}.hb-surface .stats-table td,.hb-surface .stats-table th{text-align:center;padding:.75rem .3rem;border-bottom:1px solid var(--line)}.hb-surface .profile-games{padding-left:1.3rem}.hb-surface .profile-games li{margin-bottom:.65rem}.hb-surface .account-card pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.85rem}.hb-surface{color-scheme:light;--page:#f2f2f2;--surface:#ffffff;--surface-alt:#eaeaea;--text:#303030;--muted:#666666;--line:#d6d6d6;--accent:#343434;--on-accent:#ffffff;--success:#414141;--danger:#913e3e;--danger-bg:#fbf2f2;--danger-line:#ddbbbb;--focus-ring:rgb(48 48 48/18%);--board-light:#ebebeb;--board-dark:#ababab;--selection:#565656;--move-hint:rgb(24 24 24/42%);font-family:var(--font-a-gothic),"a고딕12",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text)}.hb-surface *{box-sizing:border-box}.hb-surface{min-height:100%;margin:0}.hb-surface button,.hb-surface input,.hb-surface select{font:inherit}.hb-surface button,.hb-surface select{cursor:pointer}.hb-surface button:disabled,.hb-surface select:disabled{cursor:not-allowed;opacity:.48}.hb-surface{background:var(--page);line-height:1.5}.hb-surface .shell{display:grid;min-height:100vh;place-items:center;padding:3rem 2rem}.hb-surface .intro{width:min(100%,54rem)}.hb-surface .eyebrow,.hb-surface .panel-label{margin:0 0 .75rem;color:var(--accent);font-size:.78rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.hb-surface h1,.hb-surface h2,.hb-surface p{overflow-wrap:anywhere}.hb-surface h1{margin:0;font-size:clamp(2.75rem,8vw,6.5rem);font-weight:760;letter-spacing:-.06em;line-height:.94}.hb-surface h2{margin:0;font-size:1.5rem}.hb-surface .summary{max-width:36rem;margin:1.5rem 0 2.5rem;font-size:1.125rem;line-height:1.7}.hb-surface .helper{margin:0;color:var(--muted);font-size:.86rem;line-height:1.55}.hb-surface .closed-card,.hb-surface .dev-login,.hb-surface .loading-card,.hb-surface .lobby-panel,.hb-surface .phase-card{border:1px solid var(--line);border-radius:1rem;background:var(--surface);box-shadow:0 1.5rem 5rem rgba(0,0,0,.18)}.hb-surface .dev-login{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.25rem}.hb-surface input,.hb-surface select{min-height:2.8rem;border:1px solid var(--line);border-radius:.7rem;outline:none;background:var(--surface);color:var(--text)}.hb-surface select{min-width:9rem;padding:0 2.4rem 0 .85rem}.hb-surface input{width:8rem;padding:0 .85rem}.hb-surface button:focus-visible,.hb-surface input:focus,.hb-surface select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.hb-surface .home-actions{display:grid;grid-template-columns:minmax(12rem,.8fr) minmax(19rem,1.2fr);grid-gap:1rem;gap:1rem;margin-top:1rem}.hb-surface .code-entry{padding:1rem 1.1rem;border:1px solid var(--line);border-radius:1rem;background:var(--surface)}.hb-surface .code-entry label,.hb-surface .field-label{display:block;margin-bottom:.55rem;color:var(--muted);font-size:.82rem;font-weight:650}.hb-surface .code-entry>div{display:flex;gap:.6rem}.hb-surface .danger-button,.hb-surface .ghost-button,.hb-surface .primary-button,.hb-surface .secondary-button{min-height:2.8rem;padding:.68rem 1rem;border-radius:.72rem;font-weight:720;transition:transform .12s ease,background .12s ease}.hb-surface .danger-button:hover:not(:disabled),.hb-surface .ghost-button:hover:not(:disabled),.hb-surface .primary-button:hover:not(:disabled),.hb-surface .secondary-button:hover:not(:disabled){transform:translateY(-1px)}.hb-surface .primary-button{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent)}.hb-surface .secondary-button{border:1px solid var(--line);background:var(--surface-alt);color:var(--text)}.hb-surface .danger-button{border:1px solid var(--danger-line);background:var(--danger-bg);color:var(--danger)}.hb-surface .ghost-button{border:1px solid transparent;background:transparent;color:var(--muted)}.hb-surface .wide{width:100%}.hb-surface .compact{min-height:2.25rem;padding:.38rem .65rem;font-size:.78rem}.hb-surface .phase-card{display:grid;grid-gap:.35rem;gap:.35rem;margin-top:1rem;padding:1.1rem 1.25rem}.hb-surface .phase-card span{color:var(--accent);font-size:.78rem;font-weight:750}.hb-surface .error-message,.hb-surface .notice-message,.hb-surface .phase-card p{margin:0;color:var(--muted);font-size:.88rem}.hb-surface .error-message,.hb-surface .notice-message{margin-top:1rem;padding:.8rem 1rem;border:1px solid var(--danger-line);border-radius:.75rem;background:var(--danger-bg);color:var(--danger)}.hb-surface .lobby-shell{width:min(100%,80rem);min-height:100vh;margin:0 auto;padding:2.5rem 2rem 4rem}.hb-surface .header-actions,.hb-surface .lobby-header,.hb-surface .panel-heading,.hb-surface .seat-card-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.hb-surface .lobby-header h1{font-size:clamp(2.5rem,7vw,5rem)}.hb-surface .lobby-layout{display:grid;grid-template-columns:minmax(0,1fr) 21rem;grid-gap:1rem;gap:1rem;margin-top:1.5rem}.hb-surface .lobby-panel{padding:1.25rem}.hb-surface .lobby-sidebar{display:grid;align-content:start;grid-gap:1rem;gap:1rem}.hb-surface .seat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin:1.25rem 0}.hb-surface .seat-card{position:relative;min-height:10.5rem;padding:1rem;border:1px solid var(--line);border-radius:.85rem;background:var(--surface)}.hb-surface .seat-card-mine{border-color:var(--accent);background:var(--surface-alt)}.hb-surface .seat-owner{min-height:2.6rem;margin:1rem 0;color:var(--muted);font-size:.9rem}.hb-surface .presence,.hb-surface .ready-badge,.hb-surface .version-badge{color:var(--muted);font-size:.72rem;font-weight:700}.hb-surface .presence.online,.hb-surface .ready-badge,.hb-surface .start-ready{color:var(--success)}.hb-surface .seat-actions{display:flex;flex-wrap:wrap;gap:.35rem}.hb-surface .ready-badge{position:absolute;right:1rem;bottom:1rem}.hb-surface .room-facts{display:grid;grid-gap:.8rem;gap:.8rem;margin:0}.hb-surface .room-facts div{display:flex;justify-content:space-between;gap:1rem}.hb-surface .room-facts dt{color:var(--muted)}.hb-surface .room-facts dd{margin:0;font-weight:700}.hb-surface .toggle-row{display:flex;align-items:center;gap:.65rem;margin-top:1rem;color:var(--muted);font-size:.84rem}.hb-surface .toggle-row input{width:1rem;min-height:auto}.hb-surface .start-panel .primary-button{margin-top:1rem}.hb-surface .start-ready,.hb-surface .start-waiting{margin:.75rem 0 0;font-size:.8rem;text-align:center}.hb-surface .start-waiting{color:var(--muted)}.hb-surface .closed-card,.hb-surface .loading-card{width:min(100%,38rem);margin:10vh auto 0;padding:2rem}.hb-surface .closed-card h1{margin-bottom:2rem;font-size:2.5rem}.hb-surface .lobby-loading-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}.hb-surface .sr-only{position:absolute;width:1px;height:1px;min-width:0;min-height:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:54rem){.hb-surface .home-actions,.hb-surface .lobby-layout{grid-template-columns:1fr}.hb-surface .lobby-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:38rem){.hb-surface .lobby-shell,.hb-surface .shell{padding:2rem 1rem}.hb-surface .dev-login,.hb-surface .header-actions,.hb-surface .lobby-header{align-items:stretch;flex-direction:column}.hb-surface .lobby-sidebar,.hb-surface .seat-grid{grid-template-columns:1fr}.hb-surface .code-entry>div{flex-direction:column}.hb-surface input,.hb-surface select{width:100%}}.hb-surface .game-shell{min-height:100vh;padding:28px clamp(16px,3vw,44px) 44px}.hb-surface .game-header{align-items:center;display:flex;justify-content:space-between;margin:0 auto 20px;max-width:1320px}.hb-surface .game-header h1{font-size:clamp(1.35rem,3vw,2.2rem);margin:4px 0}.hb-surface .game-layout{align-items:start;grid-gap:20px;gap:20px;grid-template-columns:minmax(210px,.75fr) minmax(360px,680px) minmax(240px,.85fr);max-width:1320px}.hb-surface .game-control-panel,.hb-surface .game-team-panel{display:grid;grid-gap:14px;gap:14px}.hb-surface .game-player{background:var(--surface);border:1px solid var(--line);border-radius:14px;display:grid;grid-gap:4px;gap:4px;padding:12px 14px}.hb-surface .game-player>span:first-child{color:var(--muted);font-size:.78rem;font-weight:700}.hb-surface .offline-dot,.hb-surface .online-dot{font-size:.75rem}.hb-surface .online-dot{color:var(--success)}.hb-surface .offline-dot{color:var(--danger)}.hb-surface .team-clock{background:var(--surface-alt);border:2px solid transparent;border-radius:16px;color:white;font-size:clamp(1.45rem,4vw,2.3rem);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:800;padding:14px;text-align:center}.hb-surface .clock-running{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.hb-surface .board-wrap{min-width:0;width:100%;container:chess-team/inline-size}.hb-surface .chess-board{aspect-ratio:1;border:8px solid var(--line);border-radius:8px;box-shadow:0 18px 42px rgba(32,25,20,.2);display:grid;grid-template-columns:repeat(8,1fr);overflow:hidden;width:100%}.hb-surface .board-square{align-items:center;border:0;border-radius:0;color:inherit;cursor:default;display:flex;justify-content:center;min-width:0;padding:0;position:relative}.hb-surface .board-square:hover:not(:disabled){transform:none}.hb-surface .light-square{background:var(--board-light)}.hb-surface .dark-square{background:var(--board-dark)}.hb-surface .legal-target,.hb-surface .movable-square{cursor:pointer}.hb-surface .movable-square:after{border:3px solid var(--move-hint);border-radius:50%;content:"";inset:8%;position:absolute}.hb-surface .selected-square{box-shadow:inset 0 0 0 5px var(--selection)}.hb-surface .legal-target:before{background:var(--move-hint);border-radius:50%;content:"";height:22%;position:absolute;width:22%}.hb-surface .piece-glyph{font-family:Segoe UI Symbol,Noto Sans Symbols,sans-serif;font-size:clamp(1.9rem,6vw,4.8rem);line-height:1;position:relative;text-shadow:0 2px 1px rgba(255,255,255,.25);z-index:1}.hb-surface .square-name{bottom:2px;font-size:clamp(.46rem,1.1vw,.7rem);font-weight:800;left:3px;opacity:.58;position:absolute}.hb-surface .piece-type-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,1fr)}.hb-surface .piece-type{border-radius:10px;color:var(--text);padding:10px 8px}.hb-surface .piece-type:disabled{cursor:not-allowed;opacity:.38}.hb-surface .piece-type:not(:disabled){border-color:var(--accent);cursor:pointer}.hb-surface .selected-type{background:var(--accent);color:white}.hb-surface .selected-piece-note{color:var(--success);font-weight:800;margin-bottom:0}.hb-surface .move-list-panel{max-height:none;overflow:visible}.hb-surface .move-list{display:grid;grid-gap:6px;gap:6px;margin:10px 0 0;padding-left:24px}.hb-surface .move-list li{align-items:center;display:flex;gap:10px;justify-content:space-between}.hb-surface .move-list li span{color:var(--muted);font-size:.8rem}.hb-surface .game-actions-panel{display:grid;grid-gap:12px;gap:12px}.hb-surface .draw-controls{border-top:1px solid var(--line);display:grid;grid-gap:8px;gap:8px;padding-top:12px}.hb-surface .draw-controls p,.hb-surface .rematch-controls p{margin:0}.hb-surface .confirmation-actions,.hb-surface .draw-action-buttons{display:flex;flex-wrap:wrap;gap:8px}.hb-surface .game-result-card{background:var(--surface-alt);border:1px solid var(--accent);color:var(--text);border-radius:18px;padding:18px}.hb-surface .game-result-card h2{font-size:2rem;margin:6px 0}.hb-surface .rematch-controls{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.hb-surface .link-button{display:inline-block;margin-top:8px;text-decoration:none}.hb-surface .opening-splash,.hb-surface .promotion-backdrop{align-items:center;background:rgba(22,27,24,.72);display:flex;inset:0;justify-content:center;position:fixed;z-index:20}.hb-surface .opening-splash{color:white;flex-direction:column;gap:10px}.hb-surface .opening-splash .brand-wordmark{color:#fff;font-size:clamp(2rem,8vw,5rem)}.hb-surface .promotion-dialog{background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 70px rgba(0,0,0,.35);max-width:430px;padding:24px;width:calc(100% - 32px)}.hb-surface .promotion-dialog h2{margin-top:0}.hb-surface .action-confirmation p{line-height:1.6}.hb-surface .confirmation-actions{margin-top:20px}.hb-surface .promotion-options{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,1fr);margin:18px 0}@media (max-width:1020px){.hb-surface .game-layout{grid-template-columns:minmax(180px,.7fr) minmax(360px,1.4fr)}.hb-surface .game-control-panel{grid-column:1/-1;grid-template-columns:repeat(2,1fr)}}@media (max-width:720px){.hb-surface .game-shell{padding:18px 10px 32px}.hb-surface .game-header{align-items:flex-start;gap:12px}.hb-surface .game-layout{display:flex;flex-direction:column}.hb-surface .board-wrap{order:-1}.hb-surface .game-control-panel,.hb-surface .game-team-panel{grid-template-columns:1fr 1fr;width:100%}.hb-surface .piece-glyph{font-size:clamp(2rem,11vw,3.6rem)}.hb-surface .game-actions-panel,.hb-surface .game-result-card,.hb-surface .move-list-panel{grid-column:1/-1}}.hb-surface .record-board .board-square{cursor:default}.hb-surface .replay-controls{margin-left:1.25rem;display:flex;gap:.5rem;margin-top:1rem}.hb-surface .replay-controls button{flex:1 1;min-height:2.75rem;color:var(--text);background:var(--surface-alt);border:1px solid var(--line);border-radius:.5rem}.hb-surface .replay-position{text-align:center}.hb-surface .turn-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.hb-surface .turn-details>div{background:var(--surface);padding:.8rem;border-radius:.6rem}.hb-surface .turn-details dt{color:var(--accent);font-size:.85rem}.hb-surface .turn-details dd{margin:.4rem 0 0}.hb-surface .record-pgn-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:.375rem}.hb-surface .record-pgn-actions>a,.hb-surface .record-pgn-actions>button{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:2rem;padding:.375rem .5rem;font-size:.75rem;line-height:1.4;white-space:nowrap;text-decoration:none}.hb-surface .record-moves{list-style:none;padding:0;max-height:28rem;overflow:auto}.hb-surface .record-moves button{width:100%;display:grid;grid-gap:.4rem;gap:.4rem;text-align:left;padding:.75rem;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:.4rem}.hb-surface .record-moves button[aria-current=step]{border-color:var(--accent);background:var(--surface-alt)}.hb-surface .record-moves span{font-size:.8rem;color:var(--accent)}.hb-surface .record-shell a{color:var(--accent)}.hb-surface .record-shell .primary-button{color:var(--page)}.hb-surface .record-shell .game-layout>*,.hb-surface .record-shell .game-player{min-width:0;overflow-wrap:anywhere}.hb-surface .record-shell .game-control-panel{grid-template-columns:minmax(0,1fr);min-width:0}.hb-surface .record-white-piece{color:#fffaf0;-webkit-text-stroke:.7px #263244;text-shadow:0 1px 2px #182235}.hb-surface .record-black-piece{color:#182235;-webkit-text-stroke:.4px #fffaf0;text-shadow:0 1px 1px #fffaf0}.hb-surface .site-header{display:flex;align-items:center;gap:2.5rem;height:4.25rem;padding:0 clamp(1rem,3vw,3rem);border-bottom:1px solid var(--line);background:var(--surface)}.hb-surface .site-brand{display:flex;align-items:baseline;gap:.55rem;text-decoration:none;color:var(--text)}.hb-surface .site-brand>span:first-child{font-family:var(--font-a-gothic),sans-serif;font-size:1.7rem;letter-spacing:-.07em;font-weight:700}.hb-surface .brand-separator{padding:0 .1em;color:var(--muted);font-weight:400}.hb-surface .brand-caption{font-size:.75rem;letter-spacing:.18em;color:var(--muted)}.hb-surface .site-header nav{display:flex;gap:1.5rem;margin-left:auto;font-size:.9rem}.hb-surface a{color:var(--accent);text-underline-offset:.2em}.hb-surface .site-header nav a{text-decoration:none}.hb-surface .site-header nav a:hover{text-decoration:underline}.hb-surface h1{font-size:clamp(2rem,5vw,3.4rem);font-weight:700;letter-spacing:-.035em;line-height:1.2}.hb-surface h2{font-size:1.25rem;line-height:1.35}.hb-surface .eyebrow,.hb-surface .panel-label{font-size:.875rem;letter-spacing:.025em}.hb-surface .helper{font-size:.875rem}.hb-surface .shell{min-height:calc(100vh - 4.25rem);padding:2.5rem 1.25rem}.hb-surface .intro{max-width:46rem}.hb-surface .summary{color:var(--muted);margin:1rem 0 1.75rem;font-size:1rem}.hb-surface .account-card,.hb-surface .closed-card,.hb-surface .code-entry,.hb-surface .dev-login,.hb-surface .disclosure,.hb-surface .game-player,.hb-surface .game-result-card,.hb-surface .loading-card,.hb-surface .lobby-panel,.hb-surface .phase-card,.hb-surface .promotion-dialog,.hb-surface .seat-card{border-radius:.35rem;box-shadow:0 2px 5px rgb(0 0 0/3%)}.hb-surface .dev-login+.dev-login{margin-top:.75rem}.hb-surface .account-card input:not([type=checkbox]),.hb-surface .account-card textarea,.hb-surface .danger-button,.hb-surface .ghost-button,.hb-surface .primary-button,.hb-surface .secondary-button,.hb-surface input,.hb-surface select{border-radius:.25rem}.hb-surface .danger-button:hover:not(:disabled),.hb-surface .ghost-button:hover:not(:disabled),.hb-surface .primary-button:hover:not(:disabled),.hb-surface .secondary-button:hover:not(:disabled){transform:none;filter:brightness(.93)}.hb-surface .account-card .primary-button,.hb-surface .game-shell .primary-button,.hb-surface .lobby-shell .primary-button,.hb-surface .primary-button{color:var(--on-accent)}.hb-surface .secondary-button{background:var(--surface)}.hb-surface .ghost-button:hover:not(:disabled){background:var(--surface-alt)}.hb-surface :focus-visible{outline:2px solid var(--accent);outline-offset:3px}.hb-surface button{touch-action:manipulation}.hb-surface .compact,.hb-surface .presence,.hb-surface .ready-badge,.hb-surface .version-badge{font-size:.8125rem}.hb-surface .lobby-header h1{font-size:clamp(1.8rem,4vw,2.7rem)}.hb-surface .lobby-shell{padding-top:2rem}.hb-surface .seat-card-mine{border:2px solid var(--accent)}.hb-surface .game-shell{padding-top:1.5rem;min-height:calc(100vh - 4.25rem)}.hb-surface .game-header{gap:1rem}.hb-surface .game-header h1{line-height:1.35}.hb-surface .game-layout>*{min-width:0}.hb-surface .game-player{overflow-wrap:anywhere}.hb-surface .game-player>span:first-child{font-size:.875rem}.hb-surface .game-player strong{font-weight:700}.hb-surface .team-clock{border-radius:.25rem;color:var(--text);font-weight:700}.hb-surface .clock-running{background:var(--accent);color:var(--on-accent);box-shadow:none}.hb-surface .game-result-card{border-color:var(--line)}.hb-surface .game-result-card h2{font-size:2.1rem}.hb-surface .game-control-panel,.hb-surface .game-team-panel{gap:.75rem}.hb-surface .move-list li span,.hb-surface .record-moves span{font-size:.875rem}.hb-surface .record-shell .primary-button{color:var(--on-accent)}.hb-surface .replay-controls button{border-radius:.2rem}.hb-surface .record-moves button{border-radius:0;border-width:0 0 1px}.hb-surface .record-moves button[aria-current=step]{box-shadow:inset 3px 0 var(--accent)}.hb-surface .turn-details>div{border:1px solid var(--line);border-radius:.25rem}.hb-surface .promotion-dialog{color:var(--text)}.hb-surface .account-card h1{line-height:1.3}@media (max-width:720px){.hb-surface .game-control-panel{grid-template-columns:minmax(0,1fr)}.hb-surface .site-header{gap:.75rem;height:3.75rem}.hb-surface .site-brand>span:first-child{font-size:1.4rem}.hb-surface .site-header nav{gap:1rem}.hb-surface .brand-caption{display:none}.hb-surface .game-header .eyebrow{margin-bottom:.3rem}}.hb-surface .board-frame{position:relative;margin:0 0 1.4rem 1.25rem;width:calc(100% - 1.25rem)}.hb-surface .image-board{display:block;position:relative;border:0;border-radius:0;overflow:visible;box-shadow:0 2px 8px rgb(0 0 0/12%)}.hb-surface .board-image,.hb-surface .image-board{-webkit-user-select:none;-moz-user-select:none;user-select:none}.hb-surface .board-image{pointer-events:none}.hb-surface .board-hit-layer{position:absolute;inset:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr))}.hb-surface .image-board .board-square{background:transparent;min-height:0;aspect-ratio:1}.hb-surface .chess-piece{display:block;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.hb-surface .board-square .chess-piece{width:96%;height:96%;position:relative;z-index:1}.hb-surface .board-promotion-layer{position:absolute;inset:0;z-index:10}.hb-surface .board-promotion-menu{position:absolute;top:0;width:12.5%;display:flex;flex-direction:column;background:#fff;box-shadow:0 3px 12px rgb(0 0 0/30%)}.hb-surface .board-promotion-bottom{top:auto;bottom:0;flex-direction:column-reverse}.hb-surface .board-promotion-menu button{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:100%;aspect-ratio:1;min-height:0;padding:0;margin:0;border:0;border-radius:0;background:#fff;box-shadow:none;cursor:pointer;touch-action:manipulation}.hb-surface .board-promotion-menu .chess-piece{width:96%;height:96%}.hb-surface .board-promotion-menu .board-promotion-cancel{aspect-ratio:2;min-height:24px;background:#eee;color:#777}.hb-surface .board-promotion-cancel svg{width:30%;max-width:26px;fill:none;stroke:currentColor;stroke-width:3}.hb-surface .board-promotion-menu button:hover{background:#ddd}.hb-surface .board-promotion-menu button:focus-visible{outline:2px solid #444;outline-offset:-2px}.hb-surface .image-board .last-move-square{background:rgb(30 30 30/12%)}.hb-surface .image-board .selected-square{background:rgb(30 30 30/25%);box-shadow:inset 0 0 0 3px var(--accent)}.hb-surface .image-board .movable-square:after{display:none}.hb-surface .image-board .movable-square:hover{background:rgb(255 255 255/22%)}.hb-surface .image-board .board-square{-webkit-tap-highlight-color:transparent}.hb-surface .image-board .board-square:focus-visible{outline:none;box-shadow:none}.hb-surface .image-board .board-square.selected-square:focus-visible{box-shadow:inset 0 0 0 3px var(--accent)}.hb-surface .image-board .legal-target:has(.chess-piece):before{width:88%;height:88%;background:transparent;border:4px solid var(--move-hint)}.hb-surface .board-draggable{touch-action:none}.hb-surface .drag-origin .chess-piece{opacity:.25}.hb-surface .drag-piece{position:absolute;width:12.5%;height:12.5%;transform:translate(-50%,-50%);z-index:10;pointer-events:none;filter:drop-shadow(0 6px 4px rgb(0 0 0/20%))}.hb-surface .board-files,.hb-surface .board-ranks{position:absolute;display:grid;color:var(--muted);font-size:.75rem;font-weight:700;pointer-events:none}.hb-surface .board-ranks{top:0;bottom:0;left:-1.25rem;width:1.25rem;grid-template-rows:repeat(8,1fr);align-items:center;text-align:center}.hb-surface .board-files{bottom:-1.35rem;left:0;right:0;height:1.35rem;grid-template-columns:repeat(8,1fr);align-items:center;text-align:center}.hb-surface .piece-type-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.hb-surface .piece-type{position:relative;aspect-ratio:1;padding:.35rem;border:1px solid var(--line);border-radius:.25rem;background:var(--surface)}.hb-surface .piece-type:not(:disabled){border-color:#8a8a8a}.hb-surface .piece-type:not(:disabled):hover{background:var(--surface-alt);border-color:var(--accent)}.hb-surface .piece-type:disabled{opacity:.28}.hb-surface .piece-type .chess-piece{max-height:6rem}.hb-surface .piece-type.selected-type{background:var(--surface-alt);border:2px solid var(--accent);opacity:1}.hb-surface .piece-selected-mark{position:absolute;bottom:.15rem;right:.2rem;width:1.2rem;height:1.2rem;font-size:.8rem;line-height:1.2rem;border-radius:50%;background:var(--accent);color:var(--on-accent)}.hb-surface .selected-piece-note{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text)}.hb-surface .selected-piece-note .chess-piece{width:2rem;height:2rem}.hb-surface .promotion-options{grid-template-columns:repeat(4,minmax(0,1fr))}.hb-surface .promotion-piece{min-height:4rem}.hb-surface .intro>h1{margin-bottom:1.75rem}@media (max-width:720px){.hb-surface .piece-type-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:.3rem}.hb-surface .piece-type{padding:.1rem}.hb-surface .game-control-panel>.lobby-panel:first-child{padding:.85rem}}.hb-surface .mobile-clock{display:none}.hb-surface .eyebrow,.hb-surface .panel-label{text-transform:none}.hb-surface .game-header>div{min-width:0}.hb-surface .game-header>button{flex:0 0 auto;white-space:nowrap}@media (min-width:1021px){.hb-surface .game-layout{grid-template-columns:minmax(12rem,.8fr) minmax(22.5rem,min(42.5rem,calc(100svh - 13.5rem))) minmax(15rem,1fr)}}@media (max-width:720px){.hb-surface .game-header{margin-bottom:1rem}.hb-surface .game-header h1{font-size:1.2rem}.hb-surface .game-header>button{font-size:.875rem;padding:.55rem .65rem}.hb-surface .game-shell:not(.record-shell) .game-layout{gap:.75rem}.hb-surface .game-shell:not(.record-shell) .game-control-panel{display:contents}.hb-surface .game-shell:not(.record-shell) .game-control-panel>section{width:100%}.hb-surface .game-shell:not(.record-shell) .game-control-panel>section:first-child{order:0}.hb-surface .game-shell:not(.record-shell) .game-team-panel{order:1}.hb-surface .game-shell:not(.record-shell) .move-list-panel{order:2}.hb-surface .game-shell:not(.record-shell) .game-actions-panel{order:3}.hb-surface .game-team-panel>.team-clock{display:none}.hb-surface .record-shell .game-team-panel>.team-clock{display:block}.hb-surface .mobile-clock{display:flex;align-items:center;justify-content:space-between;font-size:1.5rem;padding:.25rem .75rem;margin:0 0 .6rem 1.25rem}.hb-surface .mobile-clock>span{font-size:.875rem}.hb-surface .board-wrap>.mobile-clock:last-child{margin-bottom:0}.hb-surface .game-player{padding:.65rem .75rem}}.hb-surface .game-layout{grid-template-columns:minmax(0,1fr) minmax(22.5rem,42.5rem) minmax(16rem,20rem);max-width:1440px}.hb-surface .game-control-panel{min-width:0}.hb-surface .board-team-row{--capture-size:1.15rem;--capture-step:0.8rem;--capture-width:calc(var(--capture-step) * 7 + var(--capture-size));--clock-font-size:clamp(1.35rem,2.5vw,1.9rem);--clock-padding-block:0.3rem;--clock-height:calc(var(--clock-font-size) * 1.3 + var(--clock-padding-block) * 2 + 2px);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-rows:auto auto;align-items:center;grid-gap:.15rem .5rem;gap:.15rem .5rem;min-height:4.4rem;margin-left:1.25rem;padding:.45rem 0}.hb-surface .board-team-row:first-child{margin-bottom:.4rem}.hb-surface .board-team-row:has(+.board-history-controls),.hb-surface .board-team-row:last-child{margin-top:.25rem}.hb-surface .board-player{display:flex;align-items:center;gap:.5rem;padding:.3rem;border-radius:.25rem;min-width:0;position:relative;grid-row:1/3}.hb-surface .brain-player{grid-column:1;justify-self:start;max-width:100%}.hb-surface .hand-player{grid-column:3;justify-self:end;flex-direction:row-reverse;text-align:right;max-width:100%}.hb-surface .player-avatar-link{display:inline-flex;flex:0 0 auto;line-height:0;border-radius:.2rem}.hb-surface .player-avatar{flex:0 0 auto;width:2.5rem;height:2.5rem;object-fit:cover;background:#c6c6c6;border-radius:.2rem}.hb-surface .board-player-identity{display:grid;line-height:1.25;grid-gap:.1rem;gap:.1rem}.hb-surface .board-player-identity>a,.hb-surface .board-player-identity>strong{color:inherit;text-decoration:none;font-size:.875rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hb-surface .board-player-identity>span{color:var(--muted);font-size:.75rem}.hb-surface .board-player[data-active=true]{background:#292929;color:#fff}.hb-surface .board-player[data-active=true] .board-player-identity>span{color:#ddd}.hb-surface .board-team-clock{grid-column:2;grid-row:1/3;display:flex;align-items:center;justify-content:center;gap:.4rem;background:#e0e0e0;color:#6b6b6b;border:1px solid #d0d0d0;border-radius:.25rem;padding:var(--clock-padding-block) .65rem;min-width:6.3rem;height:var(--clock-height);font-size:var(--clock-font-size);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.3}.hb-surface .board-team-clock[data-running=true]{background:#292929;border-color:#292929;color:white;box-shadow:0 0 0 2px #fff,0 0 0 3px #999}.hb-surface .board-team-clock[data-unlimited=true]>strong{display:flex;align-items:center;justify-content:center}.hb-surface .clock-infinity{display:block;width:1.2em;height:.8em}.hb-surface .clock-indicator{width:.3rem;height:.3rem;background:currentColor;border-radius:50%;opacity:0}.hb-surface [data-running=true]>.clock-indicator{opacity:1;animation:clock-beat 1s steps(2) infinite}@keyframes clock-beat{50%{opacity:.25}}.hb-surface .captured-material{--capture-score-height:0px;--capture-row-height:var(--capture-size);grid-column:4;grid-row:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:0;height:var(--clock-height);width:var(--capture-width);pointer-events:none;z-index:1;min-width:0}.hb-surface .captured-material:has(.material-advantage[data-empty=false]){--capture-score-height:0.75rem}.hb-surface .captured-material:has(.captured-pieces>:nth-child(9)){--capture-row-height:min(var(--capture-size),calc((var(--clock-height) - var(--capture-score-height)) / 2))}.hb-surface .captured-pieces{display:grid;grid-template-columns:repeat(8,var(--capture-step));grid-auto-rows:var(--capture-row-height);align-items:center;padding-right:calc(var(--capture-size) - var(--capture-step));grid-gap:0;gap:0;flex:0 0 auto}.hb-surface .captured-pieces:empty{display:none}.hb-surface .captured-pieces .chess-piece{width:var(--capture-size);height:var(--capture-row-height);object-fit:contain;margin:0}.hb-surface .material-advantage{font-size:.75rem;line-height:1;min-width:3ch;white-space:nowrap;text-align:left;flex:0 0 auto}.hb-surface .material-advantage[data-empty=true]{display:none}.hb-surface .paired-move-list{list-style:none;padding:0;margin:0;max-height:22rem;overflow-y:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-height:3rem}.hb-surface .paired-move-list>li{display:grid;grid-template-columns:1.8rem minmax(0,1fr) minmax(0,1fr) minmax(4.6rem,1.3fr);grid-gap:.3rem;gap:.3rem;align-items:center;min-height:2.5rem;padding:.25rem .35rem;font-size:.875rem}.hb-surface .paired-move-list>li:nth-child(2n){background:#ededed}.hb-surface .move-number{color:var(--muted);font-size:.75rem}.hb-surface .move-san{min-width:0}.hb-surface .move-san button,.hb-surface .move-san strong{font-size:.875rem;padding:.2rem;border:0;color:inherit;background:transparent;white-space:nowrap}.hb-surface .move-san button[aria-current=step]{background:#333;color:#fff;border-radius:.15rem}.hb-surface .move-time-pair{display:grid;grid-gap:.15rem;gap:.15rem}.hb-surface .move-time{display:flex;align-items:center;gap:.2rem;font-size:.75rem;line-height:1;white-space:nowrap}.hb-surface .move-time>span:last-child{min-width:2.8rem;text-align:right}.hb-surface .move-time-track{display:flex;flex:1 1;justify-content:flex-end;height:.4rem;background:#ddd;min-width:0;overflow:hidden;border-radius:1px}.hb-surface .move-time-brain{background:#a0a0a0}.hb-surface .move-time-hand{background:#4d4d4d}.hb-surface .empty-time{height:.75rem}.hb-surface .paired-move-list>.incomplete-turn{display:block}.hb-surface .compact-game-actions{display:flex;gap:.2rem;align-items:center}.hb-surface .compact-game-actions button{font-size:.875rem;padding:.45rem .65rem}.hb-surface .game-action-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.hb-surface .end-action-anchor{position:relative}.hb-surface .end-action-popover{position:absolute;right:0;bottom:calc(100% + .6rem);width:18rem;max-width:calc(100vw - 3rem);padding:1rem;background:var(--surface);border:1px solid #aaa;box-shadow:0 4px 18px #0003;z-index:20;border-radius:.35rem}.hb-surface .end-action-popover h2{font-size:1rem;margin:0 0 .5rem}.hb-surface .end-action-popover p{font-size:.875rem;margin:0 0 .7rem;color:var(--muted)}.hb-surface .draw-response{border-top:1px solid var(--line);padding-top:.65rem;font-size:.875rem;display:grid;grid-gap:.5rem;gap:.5rem}.hb-surface .game-actions-panel{padding:.65rem}.hb-surface .move-list-panel{padding:.5rem}.hb-surface .live-history-controls{display:flex;align-items:center;gap:.25rem;padding-top:.5rem;margin-top:.5rem;border-top:1px solid var(--line)}.hb-surface .history-step-buttons{display:flex;gap:.1rem;flex:0 0 auto}.hb-surface .history-step-buttons>button{min-width:2.25rem;min-height:2.25rem;display:inline-flex;align-items:center;justify-content:center;padding:.3rem .35rem}.hb-surface .live-history-controls>.board-flip-button{margin-left:auto;font-size:.8rem;padding:.4rem;white-space:nowrap}.hb-surface .history-navigation-icon{display:block;width:22px;height:22px;flex:0 0 auto}@media (min-width:1021px){.hb-surface .game-layout{grid-template-columns:minmax(0,1fr) minmax(22.5rem,min(42.5rem,calc(100svh - 15rem))) minmax(16rem,20rem)}}@media (max-width:1020px){.hb-surface .game-left-space{display:none}.hb-surface .game-layout{grid-template-columns:minmax(0,1fr) 17rem}}@media (max-width:720px){.hb-surface .game-layout{display:flex;flex-direction:column;gap:.75rem}.hb-surface .board-wrap{order:0}.hb-surface .game-shell:not(.record-shell) .game-control-panel,.hb-surface .record-shell .game-control-panel{display:grid;width:100%;order:1}.hb-surface .game-control-panel>section{order:0!important}.hb-surface .board-team-row{--clock-font-size:1.35rem;--clock-padding-block:0.25rem;gap:.1rem .25rem;min-height:4rem}.hb-surface .board-player{gap:.25rem;padding:.2rem}.hb-surface .board-player-identity>a,.hb-surface .board-player-identity>strong{font-size:.875rem}.hb-surface .board-team-clock{min-width:4.7rem;padding:.25rem .3rem;font-size:1.35rem;gap:.2rem}.hb-surface .end-action-popover{right:auto;left:-5rem}}@media (prefers-reduced-motion:reduce){.hb-surface [data-running=true]>.clock-indicator{animation:none}}.hb-surface .avatar-editor{display:grid;grid-template-columns:8rem minmax(0,1fr);align-items:start;grid-gap:1rem;gap:1rem;margin:1.5rem 0}.hb-surface .account-avatar{width:5rem;height:5rem}.hb-surface .avatar-editor .account-avatar{width:8rem;height:8rem}.hb-surface .avatar-editor>div{display:flex;flex-direction:column;justify-content:space-between;min-height:8rem;gap:.5rem}.hb-surface .avatar-editor .avatar-actions button,.hb-surface .avatar-editor .helper{margin:0}.hb-surface .avatar-actions{display:flex;flex-wrap:wrap;gap:.5rem}.hb-surface .avatar-editor>[role=status]{width:100%;grid-column:1/-1}@media (max-width:540px){.hb-surface .avatar-editor{grid-template-columns:1fr;justify-items:center}.hb-surface .avatar-editor>div{width:100%;min-height:0}}.hb-surface .move-time>span:last-child{min-width:3.5rem}.hb-surface .game-shell{padding:.9rem clamp(1rem,3vw,2.75rem) 2.5rem;min-height:0}.hb-surface .game-layout{display:grid;grid-template-columns:minmax(0,min(43rem,calc(100svh - 12rem))) minmax(18rem,22rem);grid-gap:2rem;gap:2rem;max-width:1160px;margin:0 auto}.hb-surface .game-left-space{display:none}.hb-surface .game-control-panel{gap:1.25rem;padding-top:.6rem}.hb-surface .game-control-panel>.lobby-panel{padding:1.1rem}.hb-surface .board-team-row{grid-template-columns:minmax(0,1fr) var(--capture-width) auto var(--capture-width) minmax(0,1fr);grid-template-rows:minmax(2.5rem,auto);min-height:3.2rem;gap:.1rem .5rem;padding:.3rem 0}.hb-surface .brain-player{grid-column:1/3}.hb-surface .hand-player{grid-column:5}.hb-surface .board-team-clock{grid-row:1;grid-column:3;min-width:6rem}.hb-surface .board-player{grid-row:1}.hb-surface .move-time-track{background:transparent}.hb-surface .move-time-brain{background:#ababab}.hb-surface .move-time-hand{background:#404040}.hb-surface .paired-move-list{min-height:5rem}.hb-surface .paired-move-list>li{padding:.5rem .4rem}.hb-surface .record-result-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:.25rem .65rem}.hb-surface .record-result-heading h1{font-size:2rem;font-weight:800;line-height:1.2;margin:0}.hb-surface .record-result-heading p{font-size:.9rem;font-weight:400;margin:0}.hb-surface .record-summary{font-size:.75rem;font-weight:400;color:var(--muted);margin:.5rem 0 0}.hb-surface .record-notation-panel>h2{margin:0 0 1rem}.hb-surface .record-notation-panel .record-pgn-actions{margin-bottom:.65rem}.hb-surface .record-return-button{display:flex;justify-content:center;align-items:center;gap:.4rem;text-decoration:none}.hb-surface .pgn-message{font-size:.875rem;color:var(--muted);margin:0 0 .65rem}.hb-surface .pgn-message:empty{display:none}.hb-surface .game-actions-panel{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.hb-surface .game-actions-panel>.draw-response{flex-basis:100%}.hb-surface .board-flip-button{font-size:.875rem;padding:.45rem .65rem}.hb-surface .compact-game-actions{flex-wrap:wrap}.hb-surface .game-shell .turn-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0 0 1.25rem}.hb-surface .turn-details>div{padding:1rem 1.2rem;border-radius:.3rem}@media (max-width:1020px){.hb-surface .game-layout{grid-template-columns:minmax(0,1fr) minmax(16rem,19rem);gap:1.25rem}.hb-surface .board-wrap{grid-column:1/-1}.hb-surface .board-team-row{gap:.3rem}}@media (max-width:720px){.hb-surface .game-layout{display:flex;gap:1rem}.hb-surface .game-shell:not(.record-shell) .game-control-panel{display:grid;padding-top:0}.hb-surface .board-team-row{gap:.2rem;min-height:4.2rem}.hb-surface .board-team-clock{min-width:4.6rem}.hb-surface .game-control-panel>.lobby-panel{padding:1rem}.hb-surface .game-shell{padding-top:.5rem}}@container chess-team (max-width: 560px){.hb-surface .board-team-row{--capture-size:0.95rem;--capture-step:0.55rem;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-rows:minmax(2.5rem,auto) 1.25rem;row-gap:.1rem}.hb-surface .brain-player{grid-column:1}.hb-surface .hand-player{grid-column:3}.hb-surface .board-team-clock{grid-column:2}.hb-surface .captured-material{--capture-row-height:var(--capture-size);grid-column:1/-1;grid-row:2;height:1.25rem;width:auto;display:flex;flex-direction:row;align-items:center;gap:.15rem;justify-self:end}.hb-surface .captured-pieces{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:var(--capture-step);grid-template-rows:var(--capture-size);height:var(--capture-size)}.hb-surface .material-advantage{width:3ch;flex:0 0 3ch;text-align:right;align-self:center}.hb-surface .material-advantage[data-empty=true]{display:block;visibility:hidden}}.hb-surface .board-arrows{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none;color:#4b4437;opacity:.8}.hb-surface .board-square.candidate-square{box-shadow:inset 0 0 0 4px #333,inset 0 0 0 6px #ffffffb3;background:#ffffff35;z-index:2}.hb-surface .board-square.invalid-candidate-square{outline:2px dashed #555;outline-offset:-5px}.hb-surface .player-role-status{display:flex;flex-wrap:nowrap;align-items:baseline;column-gap:.2em}.hb-surface .profile-countdown{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.hb-surface .disconnected-mark{white-space:nowrap}.hb-surface .board-player-identity{min-width:0}.hb-surface .hand-player .player-role-status{justify-content:flex-end}@container chess-team (max-width: 420px){.hb-surface .board-player{display:grid;grid-template-columns:2.5rem minmax(0,1fr);grid-gap:.1rem .25rem;gap:.1rem .25rem}.hb-surface .hand-player{grid-template-columns:minmax(0,1fr) 2.5rem}.hb-surface .board-player>.player-avatar,.hb-surface .board-player>.player-avatar-link{grid-row:1/3;grid-column:1}.hb-surface .hand-player>.player-avatar,.hb-surface .hand-player>.player-avatar-link{grid-column:2}.hb-surface .board-player-identity{display:contents}.hb-surface .board-player-identity>a,.hb-surface .board-player-identity>strong{grid-row:1;align-self:end;line-height:1.25rem}.hb-surface .board-player .player-role-status{grid-column:2;grid-row:2;align-self:start;line-height:1.25}.hb-surface .hand-player .player-role-status{grid-column:1}.hb-surface :is(.brain-player,.hand-player){grid-template-rows:2.5rem .9375rem}.hb-surface :is(.brain-player,.hand-player)>.player-avatar,.hb-surface :is(.brain-player,.hand-player)>.player-avatar-link{grid-row:1}.hb-surface :is(.brain-player,.hand-player) .board-player-identity>a,.hb-surface :is(.brain-player,.hand-player) .board-player-identity>strong{align-self:center}.hb-surface :is(.brain-player,.hand-player) .player-role-status{grid-column:1/-1;font-size:min(.75rem,2.8cqi)}}.hb-surface .draw-response{padding-top:.75rem;margin-top:.5rem}.hb-surface .lobby-shell{min-height:calc(100vh - 4.25rem)}.hb-surface .lobby-layout{margin-top:0;gap:1.5rem;align-items:stretch;grid-template-areas:"seats sidebar" "chat sidebar";grid-template-rows:auto minmax(17rem,1fr)}.hb-surface .lobby-seats-panel{grid-area:seats;padding:clamp(1rem,2.5vw,2rem)}.hb-surface .lobby-sidebar{grid-area:sidebar;display:flex;flex-direction:column;min-height:50rem}.hb-surface .lobby-sidebar .lobby-start-panel,.hb-surface .lobby-sidebar .room-exit-actions{margin-top:auto}.hb-surface .lobby-sidebar .lobby-start-panel+.room-exit-actions{margin-top:0}.hb-surface .lobby-start-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.hb-surface .lobby-start-panel>button:only-of-type{grid-column:1/-1}.hb-surface .lobby-random-options{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line)}.hb-surface .lobby-random-colors{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.875rem}.hb-surface .lobby-random-colors input,.hb-surface .lobby-random-colors label{cursor:pointer}.hb-surface .lobby-random-colors input{width:1.1rem;height:1.1rem;min-height:0;margin:0;padding:0;accent-color:var(--accent)}.hb-surface .lobby-random-roles{margin-top:.75rem}.hb-surface .lobby-chat{grid-area:chat;display:flex;flex-direction:column;contain:size;min-width:0;min-height:23rem;max-height:23rem;height:23rem;align-self:end;padding-bottom:1.1rem}.hb-surface .lobby-chat-log{flex:1 1;height:0;min-height:0;display:grid;grid-template-columns:fit-content(35%) minmax(0,1fr) auto;grid-column-gap:.65rem;column-gap:.65rem;align-content:start;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable both-edges;padding-inline:.35rem;font-size:.875rem}.hb-surface .lobby-chat-log:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hb-surface .lobby-chat-message{display:grid;grid-column:1/-1;grid-template-columns:subgrid;align-items:baseline;padding:.45rem 0}.hb-surface .lobby-chat-message+.lobby-chat-message{border-top:1px solid #eeeeee}.hb-surface .lobby-chat-message.game-chat-notice{display:block;grid-column:1/-1;padding:.65rem 0;text-align:center;line-height:1.65;word-break:keep-all;overflow-wrap:anywhere;color:var(--muted)}.hb-surface .board-history-controls{display:flex;justify-content:center;gap:.75rem;margin:.25rem 0 0 1.25rem}.hb-surface .board-history-controls button{display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;height:2.75rem;padding:.4375rem}.hb-surface .board-history-controls .history-navigation-icon{width:1.75rem;height:1.75rem}.hb-surface .lobby-chat-author{min-width:0;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hb-surface .chat-send-status,.hb-surface .lobby-chat-message time{white-space:nowrap;color:var(--muted);font-size:.7rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hb-surface .chat-send-recovery{display:flex;gap:.5rem;flex:0 0 auto}.hb-surface .lobby-chat-message p{min-width:0;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.hb-surface .lobby-chat-form{flex:0 0 auto;display:flex;gap:.5rem;margin-top:.75rem}.hb-surface .lobby-chat-form input{flex:1 1;min-width:0;width:0;padding:.65rem .75rem;border:1px solid var(--line);border-radius:.25rem;background:var(--surface);color:var(--text);font-size:.875rem}.hb-surface .lobby-chat-form button{flex:0 0 auto;min-height:2.75rem;padding:.6rem .8rem;font-size:.875rem}.hb-surface .lobby-chat-feedback{flex:0 0 auto;min-height:1.15rem;margin:.35rem 0 0;color:var(--danger);font-size:.75rem}.hb-surface .lobby-teams{display:grid;grid-gap:1.5rem;gap:1.5rem}.hb-surface .lobby-team{display:grid;grid-template-columns:3.5rem repeat(2,minmax(0,1fr));grid-gap:.85rem;gap:.85rem;align-items:stretch}.hb-surface .lobby-team+.lobby-team{padding-top:1.5rem;border-top:1px solid var(--line)}.hb-surface .lobby-team-piece{align-self:center;width:3.5rem;height:3.5rem}.hb-surface .lobby-team-piece .chess-piece{width:100%;height:100%}.hb-surface .lobby-seat-slot{container-type:inline-size;display:flex;min-width:0}.hb-surface .lobby-seat-card{--seat-unit:min(1rem,7.8cqi);position:relative;display:flex;flex:1 1;flex-direction:column;min-width:0;min-height:calc(10 * var(--seat-unit));padding:var(--seat-unit);border:1px solid var(--line);border-radius:.35rem;background:var(--surface)}.hb-surface .lobby-seat-mine{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--surface-alt)}.hb-surface .lobby-seat-identity{display:flex;align-items:center;gap:calc(.65 * var(--seat-unit));min-width:0;min-height:calc(3 * var(--seat-unit));padding-right:calc(.8 * var(--seat-unit))}.hb-surface .lobby-remove-player{position:absolute;right:.25rem;top:.25rem;display:grid;place-items:center;min-height:calc(2 * var(--seat-unit));width:calc(2 * var(--seat-unit));padding:0;border:0;background:transparent;color:var(--muted);font-size:calc(1.25 * var(--seat-unit));cursor:pointer}.hb-surface .lobby-remove-player:hover{color:var(--danger);background:var(--danger-bg)}.hb-surface .lobby-seat-identity .player-avatar{width:calc(2.5 * var(--seat-unit));height:calc(2.5 * var(--seat-unit))}.hb-surface .lobby-seat-card .board-player-identity>a,.hb-surface .lobby-seat-card .board-player-identity>strong{font-size:calc(.875 * var(--seat-unit))}.hb-surface .lobby-seat-card .board-player-identity>span,.hb-surface .lobby-seat-status{font-size:calc(.75 * var(--seat-unit))}.hb-surface .lobby-seat-status{min-height:calc(1.35 * var(--seat-unit));margin:calc(.5 * var(--seat-unit)) 0;color:var(--muted)}.hb-surface .lobby-seat-card .seat-actions{flex-wrap:nowrap;align-items:center;margin-top:auto;min-height:0;gap:calc(.35 * var(--seat-unit))}.hb-surface .lobby-seat-card .compact,.hb-surface .mc-participation-actions .compact{flex:0 0 auto;width:min(5rem,calc((100% - .35 * var(--seat-unit)) / 2));min-width:0;height:calc(2.4 * var(--seat-unit));min-height:0;padding:0 calc(.35 * var(--seat-unit));font-size:calc(.875 * var(--seat-unit));line-height:1.2;white-space:nowrap}.hb-surface .lobby-ready-button{margin:0 0 0 auto}.hb-surface .lobby-section-title{margin:0 0 1rem;font-size:1rem}.hb-surface .room-invite{display:grid;grid-gap:.6rem;gap:.6rem;text-align:center}.hb-surface .room-invite>span{color:var(--muted);font-size:.85rem}.hb-surface .room-invite>strong{font-size:2.5rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.15em;line-height:1.2}.hb-surface .invite-message{min-height:1.25rem;color:var(--muted);font-size:.75rem}.hb-surface .room-info-panel .room-facts{border-top:1px solid var(--line);padding-top:1rem;font-size:.875rem}.hb-surface .room-info-panel .room-facts dd{min-width:0;text-align:right;overflow-wrap:anywhere}.hb-surface .time-preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.45rem;gap:.45rem}.hb-surface .time-preset-button{min-width:0;min-height:2.75rem;padding:.65rem .2rem;border:1px solid var(--line);border-radius:.25rem;background:var(--surface);color:var(--text);font:inherit;font-size:.875rem;cursor:pointer}.hb-surface .time-preset-button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.hb-surface .time-preset-button:hover:not(:disabled):not([aria-pressed=true]){background:var(--surface-alt)}.hb-surface .time-preset-button:disabled{opacity:1;cursor:default}.hb-surface .time-preset-button:disabled:not([aria-pressed=true]){color:var(--muted)}.hb-surface .custom-time-button{grid-column:span 2}.hb-surface .custom-time-control{display:grid;grid-gap:.85rem;gap:.85rem;margin-top:.375rem}.hb-surface .custom-time-fields{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-gap:.5rem;gap:.5rem;align-items:end}.hb-surface .custom-time-fields label{display:grid;grid-gap:.25rem;gap:.25rem;min-width:0;font-size:.75rem;color:var(--muted)}.hb-surface .custom-time-fields input{width:100%;min-width:0;padding:.6rem;min-height:2.75rem}.hb-surface .custom-time-plus{padding-bottom:.65rem}.hb-surface .lobby-start-panel .toggle-row{margin:0 0 1.25rem}.hb-surface .room-exit-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.65rem;gap:.65rem}.hb-surface .room-exit-actions>:only-child{grid-column:1/-1}.hb-surface .room-exit-actions>*{padding:.75rem .4rem;text-align:center}@media (max-width:1180px){.hb-surface .lobby-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"seats" "info" "settings" "chat" "start" "exit";grid-template-rows:auto auto auto 23rem auto auto}.hb-surface .lobby-layout:not(:has(.lobby-start-panel)){grid-template-areas:"seats" "info" "settings" "chat" "exit";grid-template-rows:auto auto auto 23rem auto}.hb-surface .lobby-sidebar{display:contents}.hb-surface .room-info-panel{grid-area:info}.hb-surface .lobby-settings-panel{grid-area:settings;min-height:22.25rem}.hb-surface .lobby-start-panel{grid-area:start}.hb-surface .room-exit-actions{grid-area:exit}.hb-surface .lobby-chat{height:23rem;min-height:23rem;max-height:23rem}}@media (max-width:38rem){.hb-surface .lobby-shell{padding:1rem .75rem 2rem}.hb-surface .lobby-layout{gap:1rem}.hb-surface .lobby-team{grid-template-columns:2rem repeat(2,minmax(0,1fr));gap:.5rem}.hb-surface .lobby-team-piece{width:2rem;height:2rem}}.hb-surface .home-shell{display:block;min-height:100vh;padding:clamp(2rem,7vh,5rem) 1.25rem}.hb-surface .home-intro{max-width:60rem;margin:0 auto}.hb-surface .home-intro>h1{margin:0 0 2rem;font-size:clamp(2rem,5vw,3rem)}.hb-surface .brand-wordmark{display:inline-flex;flex-direction:column;align-items:center;gap:.2em;color:var(--text);font-family:var(--font-brand-wordmark),sans-serif;font-size:clamp(1.8rem,6.5vw,3.25rem);font-style:normal;line-height:1}.hb-surface .google-login-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:40px;padding:0 12px;border:1px solid #747775;border-radius:4px;background:#fff;color:#1f1f1f;font-size:14px;font-weight:500;line-height:20px;text-decoration:none}.hb-surface .google-login-button img{flex:0 0 20px}.hb-surface .login-shell{display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:2rem 1rem}.hb-surface .login-shell>.account-card{width:min(100%,24rem);margin:0 auto;padding:2rem}.hb-surface .login-shell .account-card h1{margin-bottom:1.5rem}.hb-surface .email-action-form,.hb-surface .login-form form{display:grid;grid-gap:.65rem;gap:.65rem}.hb-surface .login-form .google-login-button{display:flex;width:100%;margin-top:0}.hb-surface .auth-field-error{margin:-.25rem 0 0;color:#9c3131;font-size:.8125rem;line-height:1.5}.hb-surface .login-shell input[aria-invalid=true]{border-color:#9c3131}.hb-surface .login-submit{margin-top:.4rem}.hb-surface .auth-divider{display:flex;align-items:center;gap:.75rem;margin:1.3rem 0;color:var(--muted);font-size:.8125rem}.hb-surface .auth-divider:after,.hb-surface .auth-divider:before{content:"";height:1px;background:var(--line);flex:1 1}.hb-surface .signup-link{margin:1.5rem 0 0;text-align:center;color:var(--muted);font-size:.875rem}.hb-surface .signup-link a{color:var(--text);text-underline-offset:3px}.hb-surface .login-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:.65rem;gap:.65rem;margin-top:.5rem}.hb-surface .forgot-password-link{justify-self:end;font-size:.8125rem;text-decoration:underline;text-underline-offset:3px}.hb-surface .password-input{display:flex;align-items:center;position:relative}.hb-surface .password-input input{width:100%;padding-right:2.8rem}.hb-surface .password-input button{position:absolute;right:.2rem;display:grid;place-items:center;width:2.4rem;height:2.4rem;padding:0;border:0;background:transparent;color:var(--muted)}.hb-surface .password-input button:focus-visible{outline:2px solid var(--text)}.hb-surface .login-return-link{display:inline-block;margin-top:1.5rem}.hb-surface .google-login-button:hover{background:#f8faff}.hb-surface .google-login-button:focus-visible{outline:2px solid #1f1f1f;outline-offset:3px}.hb-surface .home-logout{flex-shrink:0}.hb-surface .home-profile-name.home-login-link{text-decoration:underline;text-underline-offset:.18em}.hb-surface .identity-input:disabled{background:#ededed;color:var(--muted);cursor:not-allowed}.hb-surface .account-field-hint span{display:block;margin-top:.25rem}.hb-surface .brand-wordmark-name{display:flex;align-items:baseline;gap:.22em;font-weight:800;letter-spacing:-.035em;white-space:nowrap}.hb-surface .brand-wordmark-chess{padding-left:.48em;font-size:.43em;font-weight:500;letter-spacing:.48em}.hb-surface .home-intro>.home-wordmark-title{line-height:1;text-align:center}.hb-surface .page-brand{margin:0 0 1.25rem;text-align:center}.hb-surface .game-shell>.page-brand{width:100%;margin-inline:auto}.hb-surface .account-shell>.page-brand{max-width:48rem;margin-inline:auto}.hb-surface .brand-home-link{display:inline-flex;min-height:2.75rem;text-decoration:none;border-radius:.2rem}.hb-surface .page-brand .brand-wordmark{font-size:clamp(1.65rem,5.5vw,2.2rem)}.hb-surface .brand-home-link:hover{opacity:.75}.hb-surface .brand-home-link:focus-visible{outline:2px solid var(--text);outline-offset:.5rem}.hb-surface .home-profile-card{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.6rem;background:var(--surface);border:1px solid var(--line);border-radius:.35rem}.hb-surface .home-profile-identity{display:flex;align-items:center;gap:1rem;min-width:0}.hb-surface .home-profile-identity>div{min-width:0}.hb-surface .home-avatar{width:4.5rem;height:4.5rem}.hb-surface .home-profile-name{display:block;color:var(--text);font-size:1.4rem;font-weight:700;text-decoration:none;overflow-wrap:anywhere}.hb-surface .home-profile-identity p{margin:.4rem 0 0;font-size:.9rem;color:var(--muted)}.hb-surface .home-test-user{display:grid;grid-gap:.5rem;gap:.5rem;color:var(--muted);font-size:.75rem;min-width:0}.hb-surface .home-test-user select{max-width:16rem;width:100%;font-size:.875rem}.hb-surface .home-intro .home-actions{grid-template-columns:minmax(9rem,1fr) minmax(17rem,1.35fr) minmax(11rem,1fr);align-items:stretch;gap:1rem;margin-top:1.5rem}.hb-surface .home-actions .code-entry{display:flex;align-items:stretch;gap:.35rem;padding:.35rem;border:1px solid var(--line);border-radius:.25rem;background:var(--surface);box-shadow:none;min-width:0}.hb-surface .home-actions .code-entry:focus-within{border-color:var(--accent)}.hb-surface .home-actions .code-entry input{width:5.5rem;min-width:0;border:0;border-right:1px solid var(--line);letter-spacing:.15em;text-align:center}.hb-surface .home-actions .code-entry button{flex:1 1;border:0}.hb-surface .home-actions .code-entry>*{min-height:2.6rem}.hb-surface .home-actions .code-entry,.hb-surface .home-actions>button,.hb-surface .home-room-portal{min-height:3.4rem}.hb-surface .home-login,.hb-surface .home-room-portal,.hb-surface .profile-settings{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.hb-surface .profile-header{display:flex;align-items:center;gap:1.1rem;margin:0 0 2rem}.hb-surface .home-guide{margin-top:3rem;padding:clamp(1.25rem,4vw,2.5rem);border:1px solid var(--line);border-radius:.35rem;background:var(--surface)}.hb-surface .home-guide p{margin:0;line-height:1.8;word-break:keep-all;overflow-wrap:break-word}.hb-surface .home-guide-lead{font-size:1.1rem}.hb-surface .home-guide-step{margin-top:2rem}.hb-surface .home-guide .home-guide-picker{width:min(100%,17rem);margin:1.25rem auto 0;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.hb-surface .home-guide-picker .piece-type:not(.selected-type){opacity:.28}.hb-surface .home-guide-picker .piece-selected-mark{text-align:center}.hb-surface .home-guide-board{position:relative;width:min(100%,24rem);aspect-ratio:1;margin:1.25rem auto 0;box-shadow:0 2px 8px rgb(0 0 0/10%);-webkit-user-select:none;-moz-user-select:none;user-select:none}.hb-surface .home-guide-piece-layer{position:absolute;inset:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr))}.hb-surface .home-guide-square{display:grid;place-items:center;min-width:0;min-height:0}.hb-surface .home-guide-square .chess-piece{width:96%;height:96%}.hb-surface .home-guide-rings{position:absolute;inset:0;width:100%;height:100%;color:#424242;pointer-events:none}.hb-surface .home-guide-notes{margin:2rem 0 0;padding-left:1.25rem;color:var(--muted);font-size:.9rem;line-height:1.8}.hb-surface .home-guide-notes li+li{margin-top:.35rem}.hb-surface .profile-heading{min-width:0;flex:1 1}.hb-surface .profile-card .profile-heading h1{font-size:clamp(1.35rem,4vw,2rem);line-height:1.25;margin:0;overflow-wrap:anywhere}.hb-surface .profile-card .profile-heading p{margin:.4rem 0 0;font-size:.9rem;color:var(--muted);overflow-wrap:anywhere}.hb-surface .profile-header-actions{display:flex;align-items:center;gap:.5rem;flex:0 0 auto;margin-left:auto}.hb-surface .profile-settings{flex:0 0 auto;font-size:.875rem;white-space:nowrap}@media (max-width:800px){.hb-surface .home-intro .home-actions{grid-template-columns:1fr}.hb-surface .home-room-portal{grid-row:1}}@media (max-width:540px){.hb-surface .home-profile-card{align-items:stretch;flex-direction:column;padding:1.25rem}.hb-surface .home-test-user select{max-width:none}.hb-surface .profile-header{gap:.7rem;flex-wrap:wrap}.hb-surface .profile-heading{flex-basis:calc(100% - 4.2rem)}.hb-surface .profile-header-actions{justify-content:flex-end}.hb-surface .profile-header .account-avatar{width:3.5rem;height:3.5rem}.hb-surface .profile-settings{padding:.5rem .65rem;min-height:2.6rem}}.hb-surface .password-settings{margin-top:1.5rem;padding:1rem 0;border-top:1px solid var(--border,#dededb)}.hb-surface .password-settings>summary{cursor:pointer;font-size:.9rem;font-weight:600}.hb-surface .account-card .password-settings form{display:grid;grid-gap:.7rem;gap:.7rem;margin-top:1.25rem}.hb-surface .password-settings form>label:not(:first-child){margin-top:.5rem}.hb-surface .password-settings .helper{margin:.25rem 0}.hb-surface .session-list{list-style:none;padding:0;max-height:16rem;overflow-y:auto}.hb-surface .session-list li{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 0;border-bottom:1px solid #ddd}.hb-surface .session-list li>span{min-width:0;overflow-wrap:anywhere}.hb-surface .session-list li>button{flex-shrink:0}.hb-surface .maintenance-banner{text-align:center;padding:.75rem 1rem;border-bottom:1px solid #bdbdb8;background:#eeeae0;color:#282828}.hb-surface .admin-protected{border:0;padding:0;margin:0;min-width:0}.hb-surface .admin-security{margin-bottom:1.5rem}.hb-surface .admin-security h2{margin-top:0}.hb-surface .admin-shell>.account-card{width:min(100%,76rem);max-width:76rem}.hb-surface .account-card>.account-admin-link{margin:1.25rem 0 0}.hb-surface .account-admin-link a{display:inline-block;padding-block:.35rem}.hb-surface .admin-back-link{display:inline-flex;align-items:center;margin:0}.hb-surface .account-card>.admin-title{margin:.7rem 0 1.75rem}.hb-surface .admin-directory{min-width:0;margin-block:2rem}.hb-surface .admin-directory>h2{margin-bottom:.85rem}.hb-surface .account-card .admin-search{grid-template-columns:minmax(12rem,1fr) minmax(8.75rem,11rem) auto;align-items:center;gap:.75rem}.hb-surface .account-card .admin-search>button,.hb-surface .account-card .admin-search>input,.hb-surface .admin-search select{height:2.9rem;min-height:2.9rem;margin:0}.hb-surface .admin-select-wrap{position:relative;display:block}.hb-surface .admin-select-wrap svg{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;pointer-events:none}.hb-surface .admin-search select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:.6rem 2.4rem .6rem .8rem;border:1px solid var(--line);border-radius:.55rem;background:var(--surface);color:inherit;font:inherit}.hb-surface .admin-search select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.hb-surface .admin-mobile-sort{display:none}.hb-surface .admin-sort-control{display:inline-flex;align-items:center;gap:.45rem}.hb-surface .admin-sort-arrows{display:inline-flex;gap:.1rem}.hb-surface .account-card .admin-sort-arrows button{width:1.75rem;min-height:2rem;margin:0;padding:0;font:inherit;font-size:.7rem;color:var(--muted);background:transparent;border:1px solid transparent;border-radius:.35rem}.hb-surface .admin-sort-arrows button[aria-pressed=true]{color:var(--text);background:var(--surface-alt);border-color:var(--line)}.hb-surface .admin-directory .admin-table-wrap[aria-busy=true]{opacity:.5}.hb-surface .admin-table-wrap{overflow-x:auto;margin-top:1.25rem;border:1px solid var(--line);border-radius:.65rem}.hb-surface .admin-users{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.hb-surface .admin-users td,.hb-surface .admin-users th{padding:.8rem;border-bottom:1px solid var(--line)}.hb-surface .admin-users button,.hb-surface .admin-users th{white-space:nowrap}.hb-surface .account-card .admin-users button{margin:0}.hb-surface .admin-users tr:last-child td{border-bottom:0}.hb-surface .admin-users tr[aria-selected=true]{background:#f0f0ed}.hb-surface .admin-user-name{display:flex;gap:.75rem;align-items:center;min-width:10rem;overflow-wrap:anywhere}.hb-surface .admin-user-name .player-avatar{width:2.5rem;height:2.5rem}.hb-surface .admin-nickname-history small,.hb-surface .admin-user-name small{display:block;color:var(--muted)}.hb-surface .admin-code{font-size:.85rem;font-family:ui-monospace,monospace;overflow-wrap:anywhere}.hb-surface .admin-users .admin-code{white-space:nowrap}.hb-surface .admin-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-block:1rem;flex-wrap:wrap}.hb-surface .admin-page-numbers{display:inline-flex;flex-wrap:wrap;gap:.2rem;justify-content:center}.hb-surface .account-card .admin-pagination button{margin:0}.hb-surface .account-card .admin-page-button{min-width:2.25rem;min-height:2.5rem;padding:.3rem;border:1px solid transparent;border-radius:.4rem;background:transparent;color:inherit;font:inherit}.hb-surface .admin-page-button[aria-current=page]{border-color:var(--line);background:var(--surface-alt);font-weight:700}.hb-surface .admin-list-count{text-align:center;color:var(--muted);font-size:.8rem}.hb-surface .admin-users .admin-detail-row>td{padding:0}.hb-surface .admin-registration{overflow-wrap:anywhere}.hb-surface .admin-user-detail{margin:0;padding:1.25rem 1.5rem;background:var(--surface-alt)}.hb-surface .admin-user-detail .account-actions{margin-top:1rem}.hb-surface .admin-user-detail header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.hb-surface .account-card .admin-user-detail header h2{margin:0;overflow-wrap:anywhere}.hb-surface .admin-user-detail h3{margin:1.5rem 0 .75rem}.hb-surface .admin-nickname-history{max-height:20rem;overflow-y:auto;padding-left:1.4rem}.hb-surface .admin-nickname-history li{padding-block:.6rem;overflow-wrap:anywhere}.hb-surface .admin-section{border-top:1px solid var(--line);padding-block:1rem}.hb-surface .admin-section summary{cursor:pointer;padding:.5rem 0;margin-bottom:1rem}@media (max-width:640px){.hb-surface .account-card .admin-search{grid-template-columns:minmax(0,1fr) auto}.hb-surface .admin-search>input{grid-column:1/-1}.hb-surface .admin-mobile-sort{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem;margin-top:1rem;font-size:.8rem}.hb-surface .admin-sort-control{gap:.1rem}.hb-surface .account-card .admin-sort-arrows button{width:1.5rem;min-height:2.5rem}.hb-surface .admin-pagination{gap:.5rem;font-size:.8rem}.hb-surface .admin-pagination button{padding-inline:.65rem}.hb-surface .admin-users thead{display:none}.hb-surface .admin-users,.hb-surface .admin-users tbody{display:block}.hb-surface .admin-users tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.65rem;gap:.65rem;padding:.85rem;border-bottom:1px solid var(--line)}.hb-surface .admin-users tr:last-child{border-bottom:0}.hb-surface .admin-users td{display:block;padding:0;border:0}.hb-surface .admin-users td:nth-child(2){grid-column:1/-1;white-space:normal}.hb-surface .admin-users td:nth-child(3):before{content:"가입일 ";color:var(--muted)}.hb-surface .admin-users td:last-child{grid-column:2;grid-row:1}.hb-surface .admin-users .admin-detail-row{display:block;padding:0}.hb-surface .admin-user-detail{padding:1rem}.hb-surface .admin-page-numbers{order:3;flex-basis:100%}.hb-surface .admin-user-name{min-width:0}}.hb-surface .auth-bot-check{margin:.5rem 0;min-height:65px}.hb-surface .cycle-button{min-height:2rem;min-width:4rem;padding:.3rem .5rem;font-size:.8rem}.hb-surface .image-board .reserved-square{--pending-move-color:rgba(238,104,104,0.27)}.hb-surface .image-board .premove-square{--pending-move-color:rgba(104,148,238,0.27)}.hb-surface .image-board .premove-square,.hb-surface .image-board .reserved-square{background-color:var(--pending-move-color)}.hb-surface .premove-target:before{content:"";position:absolute;width:22%;height:22%;background:#467ab7;border-radius:50%;pointer-events:none}.hb-surface .image-board .premove-target:has(.chess-piece):before{width:88%;height:88%;background:transparent;border:4px solid #467ab7}.hb-surface .home-guide{container-type:inline-size}.hb-surface .home-guide-section{margin-top:2.5rem;padding-top:2.5rem;border-top:1px solid var(--line)}.hb-surface .home-guide-section h2{display:flex;align-items:baseline;gap:.7rem;margin:0 0 .9rem;font-size:1.15rem;line-height:1.5;word-break:keep-all}.hb-surface .home-guide-section h2>span{color:var(--muted);font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hb-surface .home-guide-rules article{border-bottom:1px solid var(--line);padding:1.1rem 0}.hb-surface .home-guide-rules h3{margin:0 0 .75rem;font-size:1rem;line-height:1.6}.hb-surface .home-guide-rules article p{color:var(--muted);font-size:.9rem}@container (max-width: 38rem){.hb-surface .home-guide-section{margin-top:2rem;padding-top:2rem}}