/* One visible appearance control for the public site, sign-in and workspace. */
:root { --theme-control-bg:#fff; --theme-control-text:#233c47; --theme-control-border:#bdccd0; --theme-focus:#527bb4; }
html[data-theme="dark"] { --theme-control-bg:#172e38; --theme-control-text:#e8f0f5; --theme-control-border:#47606c; --theme-focus:#abc9eb; }
html .theme-toggle { display:inline-flex; align-items:center; justify-content:center; gap:8px; width:auto; min-width:116px; min-height:42px; flex:none; padding:9px 12px; border:1px solid var(--theme-control-border); border-radius:4px; background:var(--theme-control-bg); color:var(--theme-control-text); font:650 13px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; white-space:nowrap; cursor:pointer; box-shadow:none; }
html .theme-toggle:hover { border-color:var(--theme-focus); background:var(--theme-control-bg); color:var(--theme-control-text); }
html .theme-toggle:focus-visible { outline:3px solid var(--theme-focus); outline-offset:3px; }
.theme-toggle > [aria-hidden] { font-size:19px; line-height:1; }
html .theme-floating { position:fixed; top:18px; right:18px; z-index:80; }
.site-header .nav { gap:20px; }
.site-header .nav-links { gap:24px; margin-left:auto; }
.site-header .theme-toggle { order:3; }
@media (max-width:1100px) and (min-width:701px) { .site-header .nav { gap:12px; } .site-header .nav-links { gap:16px; font-size:.83rem; } .site-header .nav-links .button { padding:0 12px; font-size:.8rem; } }
@media (max-width:700px) {
  .site-header .nav { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:8px; padding-top:10px; padding-bottom:10px; }
  .site-header .brand { min-width:0; margin-right:0; font-size:.9rem; }
  .site-header .menu-button { order:initial; min-height:42px; }
  .site-header .theme-toggle { order:initial; min-width:42px; width:42px; padding:8px; }
  .site-header .theme-toggle [data-theme-label] { display:none; }
  .site-header .nav-links { top:100%; }
}
