.preference-choices{display:flex;align-items:center;gap:.4rem}
.preference-menu{position:relative}
.preference-menu>summary,.preference-heading{display:flex;align-items:center;gap:.4rem;list-style:none;cursor:pointer;padding:.6rem;border-radius:.5rem;min-height:44px;font-size:.875rem}
.preference-menu>summary::-webkit-details-marker{display:none}
.preference-menu>summary .icon:last-child,.preference-heading .icon:last-child{width:.85rem}
.preference-options{position:absolute;inset-inline-end:0;top:calc(100% + .35rem);z-index:1100;min-width:160px;padding:.5rem;border:1px solid var(--tblr-border-color,var(--line));border-radius:.65rem;background:var(--tblr-bg-surface,var(--surface));color:var(--tblr-body-color,var(--ink));box-shadow:0 12px 32px #0002}
.preference-label{display:block;font-size:.75rem;opacity:.75;padding:.3rem .6rem}
.preference-options button{display:block;width:100%;border:0;border-radius:.35rem;padding:.55rem .7rem;background:transparent;color:inherit;text-align:start;font:inherit;cursor:pointer}
.preference-options button:hover,.preference-options button:focus-visible,.preference-options button[aria-pressed=true]{background:var(--tblr-primary-lt,var(--bg));font-weight:650}
.language-picker{width:min(340px,calc(100vw - 32px));padding:.65rem}
.language-search{display:block;margin:.2rem .15rem .6rem}
.language-search input{display:block;width:100%;min-height:42px;padding:.55rem .7rem;border:1px solid var(--tblr-border-color,var(--line));border-radius:.45rem;background:var(--tblr-bg-surface,var(--surface));color:inherit;font:inherit}
.language-options{max-height:min(55vh,430px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.language-options button{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.language-options button small{font-size:.72rem;font-weight:400;opacity:.65;text-align:end}
.language-empty{margin:.5rem;padding:.65rem;font-size:.85rem;opacity:.7}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.mobile-preferences{display:none}
.header-tools{display:flex;align-items:center;gap:.5rem;margin-inline-start:auto}
.profile-panel{z-index:1100}
.profile-panel .profile-action{display:flex;align-items:center;gap:.5rem;width:100%;min-height:44px;padding:.6rem .7rem;border:0;border-radius:.4rem;background:transparent;color:inherit;text-align:start;text-decoration:none;font:inherit;cursor:pointer}
.profile-panel .profile-action:hover,.profile-panel .profile-action:focus-visible{background:var(--tblr-primary-lt,var(--bg))}
.profile-panel form{margin:0}
.public-header{flex-wrap:wrap}
.public-header .header-tools{flex-wrap:wrap}
.public-header nav{gap:1rem}
.public-header .preference-options{max-width:calc(100vw - 32px)}
@media(max-width:767px){
  .desktop-preferences{display:none}
  .mobile-preferences{display:block}
  .mobile-preferences .preference-choices{display:block}
  .mobile-preferences .preference-menu>.preference-heading{pointer-events:none;padding:.5rem 0}
  .mobile-preferences .preference-menu>.preference-heading>.icon:last-child{display:none}
  .mobile-preferences .preference-options{position:static;box-shadow:none;border:0;padding:0;margin-bottom:.75rem;min-width:0;width:100%}
  .mobile-preferences .preference-menu:not(.language-menu)>.preference-options{display:flex;flex-wrap:wrap;gap:.2rem}
  .mobile-preferences .preference-label{display:none}
  .mobile-preferences .preference-options button{border:1px solid var(--tblr-border-color,var(--line));font-size:.8rem;padding:.45rem}
  .mobile-preferences .language-search{margin:.25rem 0 .5rem}
  .mobile-preferences .language-options{max-height:38vh}
  .shell-header>.header-tools{max-width:65%}
  .profile summary>span{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .public-header .header-tools{width:100%;min-width:0;justify-content:space-between}
  .public-header nav{width:100%;min-width:0;flex-direction:row;flex-wrap:wrap;align-items:center}
  .public-header nav a{min-width:0;white-space:normal;overflow-wrap:anywhere}
  .public-header .preference-menu>summary{padding:.4rem}
  .public-header .preference-menu:first-child .preference-options{inset-inline-start:0;inset-inline-end:auto}
}
@media(max-width:480px){
  .public-header{align-items:stretch}
  .public-header .header-tools{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch}
  .public-header nav{align-items:stretch}
  .public-header nav a{text-align:start}
}
