/* Color samples with native details disclosure and keyboard-accessible buttons. */
.theme-picker { position:relative; width:44px; height:44px; z-index:25; }
.theme-picker[hidden] { display:none; }
.theme-trigger { display:flex; align-items:center; justify-content:center; width:44px; height:44px; cursor:pointer; list-style:none; color:var(--brand); background:var(--paper); border:1px solid var(--line); border-radius:8px; }
.theme-trigger::-webkit-details-marker { display:none; }
.theme-trigger svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.6; }
.theme-trigger:focus,.theme-swatch:focus { outline:2px solid var(--brand); outline-offset:3px; }
.theme-options { position:absolute; right:0; top:52px; display:flex; gap:8px; width:218px; padding:12px; color:var(--ink); background:var(--white); border:1px solid var(--line); border-radius:12px; box-shadow:0 12px 32px #0003; }
.theme-picker:not([open]) .theme-options { display:none; }
.theme-swatch { flex:0 0 42px; height:42px; padding:5px; background:transparent; border:2px solid transparent; border-radius:50%; cursor:pointer; }
.theme-swatch span { display:block; width:28px; height:28px; border:1px solid #777; border-radius:50%; }
.theme-swatch--white span { background:#fff; }
.theme-swatch--blue span { background:linear-gradient(135deg,#168af3,#071526); }
.theme-swatch--green span { background:linear-gradient(135deg,#28c56b,#072614); }
.theme-swatch--red span { background:linear-gradient(135deg,#f65b63,#d5232a 55%,#631019); }
.theme-swatch[aria-pressed="true"] { border-color:var(--brand); }
.theme-swatch:hover { background:var(--paper); }
@media (min-width:1101px) {
  .header-inner { grid-template-columns:auto minmax(0,1fr) auto 44px; gap:20px; }
  .main-nav { gap:20px; }
  .language-picker { padding-left:18px; margin-left:0; }
}
@media (max-width:1100px) {
  .header-inner { grid-template-columns:auto minmax(0,1fr) 44px 44px; gap:12px; }
  .header-inner .menu-toggle { grid-column:4; }
  .theme-picker { grid-row:1; grid-column:3; }
}
@media (max-width:600px) {
  .header-inner { grid-template-columns:92px minmax(0,1fr) 44px 44px; gap:8px; }
  .header-inner .brand { width:92px; }
}
@media (max-width:360px) {
  .header-inner { grid-template-columns:76px minmax(0,1fr) 44px 44px; gap:6px; }
  .header-inner .brand { width:76px; }
}

@supports not (display:grid) { .theme-picker { display:inline-block; vertical-align:middle; margin-left:8px; } }
@media print { .theme-picker { display:none !important; } }

/* Compact language samples, matching the appearance and menu controls. */
.header-inner .language-picker { width:44px; padding:0; margin:0; border:0; justify-self:end; }
.header-inner .language-trigger { width:44px; height:44px; padding:0; justify-content:center; border:1px solid var(--line); border-radius:8px; background:var(--paper); }
.language-trigger .language-chevron { display:none; }
.language-current-name,.language-options a span { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.header-inner .language-options { right:0; left:auto; min-width:0; width:250px; padding:10px; display:grid; grid-template-columns:repeat(5,44px); gap:2px; }
.language-picker:not([open]) .language-options { display:none; }
.header-inner .language-options a { display:flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; }
@media (max-width:1100px) { .header-inner { grid-template-columns:minmax(0,1fr) 44px 44px 44px; } }
@supports not (display:grid) { .header-inner .language-options a { display:inline-flex; } }

.language-options a[aria-current="page"]::after { display:none; }
.language-options a[aria-current="page"] { box-shadow:inset 0 0 0 2px var(--brand); }
@media (max-width:1100px) { .header-inner .language-options { right:-112px; } }
@media (max-width:600px) { .header-inner .language-options { right:-104px; } }
@media (max-width:360px) { .header-inner .language-options { right:-100px; } }
