/* アカウント操作と言語選択は、どのページでも同じ位置・同じ表示にする。 */
.topbar.site-topbar{display:flex;align-items:center;flex-wrap:nowrap;gap:14px;max-width:none;margin:0;padding:14px 22px;}
.site-topbar .brand{display:flex;align-items:center;flex:0 1 180px;min-width:72px;min-height:44px;line-height:1;text-decoration:none;background:none;filter:none;}
.site-topbar .brand img{display:block;width:100%;height:auto;}
.site-topbar #lang-switch{margin-left:auto;flex-shrink:0;}
.language-picker{display:inline-block;position:relative;flex-shrink:0;vertical-align:middle;}
.language-picker summary{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px;border:1px solid var(--border);border-radius:9px;color:var(--text);font-size:.82rem;font-weight:600;white-space:nowrap;list-style:none;cursor:pointer;}
.language-picker summary::-webkit-details-marker{display:none;}
.language-picker summary::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);}
.language-picker[open] summary,.language-picker summary:hover{border-color:var(--accent);}
.language-options{position:absolute;z-index:30;right:0;top:100%;width:160px;max-width:calc(100vw - 24px);margin:8px 0 0;padding:6px;list-style:none;border:1px solid var(--border);border-radius:10px;background:var(--bg-elev,var(--panel,#16161c));box-shadow:var(--shadow);}
.language-options button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:44px;padding:10px;border:0;border-radius:6px;background:transparent;color:var(--text);font:inherit;font-size:.9rem;text-align:left;cursor:pointer;}
.language-options button:hover{background:var(--bg-elev2,var(--panel2,#20202a));}
.language-options button[aria-pressed="true"]{color:var(--accent);font-weight:700;}
[data-header-account]{min-width:0;max-width:240px;}
.account-login{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:10px;background:var(--bg-elev2,var(--panel2,#20202a));color:var(--text);text-decoration:none;font-weight:700;min-height:48px;font-size:.85rem;padding:10px 12px;white-space:nowrap;}
.account-home{display:flex;flex-direction:column;justify-content:center;min-width:0;max-width:240px;min-height:48px;padding:6px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-elev2,var(--panel2,#20202a));line-height:1.3;color:var(--text);text-decoration:none;}
.account-home:hover{text-decoration:none;}
.account-home:hover .account-label{text-decoration:underline;}
.account-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim);font-size:.72rem;}
.account-label{font-size:.88rem;font-weight:700;white-space:nowrap;}
.account-home:focus-visible,.language-picker summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px;}
@media(max-width:600px){
  .topbar.site-topbar{gap:8px;padding:10px 12px;}
  .site-topbar .brand{flex-basis:132px;}
  .account-login,.account-home{padding:6px 9px;}
  .account-home{max-width:100%;}
}
@media(max-width:360px){
  .topbar.site-topbar{gap:6px;padding:10px;}
  .site-topbar .brand{flex-basis:112px;}
  .account-login{font-size:.78rem;padding:6px 8px;}
  .language-picker summary{font-size:.78rem;padding:8px 6px;}
}


/* 戻り先・大会の操作は共通ヘッダーの直下に置く。 */
.page-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;padding:10px 22px;border-bottom:1px solid var(--border);font-size:.85rem;}
.page-toolbar a{white-space:nowrap;min-height:36px;display:inline-flex;align-items:center;}
.page-toolbar #status-line,.page-toolbar .offbar{margin-left:auto;}
.page-toolbar input{width:min(320px,100%);}
.live-top .site-topbar,.judge-head .site-topbar{position:static;background:transparent;box-shadow:none;border-bottom:0;backdrop-filter:none;padding:0 0 8px;}
.live-top .page-toolbar,.judge-head .page-toolbar{padding:0;border:0;}
.site-topbar #lang-switch{display:inline-flex;}
@media(max-width:600px){.page-toolbar{padding:8px 12px;}}
@media print{[data-site-header],.page-toolbar{display:none!important;}}
