:root{--base:#101214;--surface:#181B1F;--raised:#22262C;--line:#30353D;--text:#ECEDEB;--muted:#A2A8B0;--accent:#CFD3CD;--space-page:24px;--space-card:24px;color-scheme:dark}
::selection{background:#CFD3CD;color:#101214}
input,textarea{caret-color:var(--accent)}
a{text-underline-offset:4px}
button,a,input,select,textarea{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
button,.button{transition:background-color 120ms ease-out,color 120ms ease-out,border-color 120ms ease-out}
button:disabled{cursor:default}
.site-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font:500 28px Arial,sans-serif;letter-spacing:-1px;color:var(--text);min-height:44px}
.header-logo{display:block;width:160px;height:44px;object-fit:contain;mix-blend-mode:lighten}
@media (hover:hover){
  button:enabled:hover,.button:hover{border-color:var(--muted)}
  button.primary:enabled:hover,.button.primary:hover{background:var(--text)}
  button.quiet-action:enabled:hover{color:var(--text)!important;text-decoration:underline}
  a[href]:not(.button):hover{text-decoration:underline}
  :is(.site-brand,.brand):hover .header-logo{filter:brightness(1.16)}
  :is(input,select,textarea):enabled:hover{border-color:var(--muted)}
  :is(select,input[type=checkbox]):enabled:hover{cursor:pointer}
}
.header-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.field-hint{display:block;font-size:12px;line-height:1.5;color:var(--muted);margin-top:8px}
.password-control{display:flex;align-items:center;gap:8px;margin-top:8px}
.password-control input{min-width:0;flex:1;margin:0}
.password-control button{padding:8px;min-height:44px;font-size:12px;flex-shrink:0}
[aria-invalid=true]{border-color:#efb4ad!important}
[role=status]:empty{display:none}
.quiet-action{background:transparent!important;border-color:transparent!important;color:var(--muted)!important}
@media(max-width:600px){:root{--space-page:20px;--space-card:20px}.site-brand{font-size:25px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
