@font-face{font-family:PrizeDisplay;src:url("/assets/Montserrat-ExtraBold.ttf") format("truetype");font-weight:800;font-display:swap}
@font-face{font-family:PrizeBody;src:url("/assets/MontserratAlternates-Medium.ttf") format("truetype");font-weight:500;font-display:swap}

:root{
  --page-background:#171412;--page-gradient-end:#2b1818;
  --text:#f6f0e8;--text-muted:#e0cbbc;
  --accent:#ffcf45;--accent-ink:#1b1515;
  --surface:#29211e;--surface-border:#574741;--surface-radius:13px;--surface-shadow:0 4px 14px #100b0980;
  --field:#241d1b;--field-border:#725f58;--secondary:#3d312d;--control-radius:9px;
  --brand-red:#a9040b;--brand-logo-width:clamp(94px,calc(56px + 12vw),164px);
  /* Twice the centre of E, R, M, A and O, divided by the original SVG viewBox width. */
  --brand-row-ratio:.35975560;
  color-scheme:dark;background:var(--page-background);color:var(--text);font:16px/1.55 system-ui,sans-serif
}
*{box-sizing:border-box}
body{margin:0;min-height:100svh;background:linear-gradient(155deg,var(--page-background) 35%,var(--page-gradient-end) 100%)}
[hidden]{display:none!important}

.hero{
  margin-bottom:24px;padding:clamp(22px,5vw,48px);border:1px solid #66403a;border-radius:16px;
  background:#301b1a;box-shadow:0 6px 20px #0d080861
}
.hero > :last-child{margin-bottom:0}
:is(.card,.panel,.manager-nav,.client-invite){
  min-width:0;border:1px solid var(--surface-border);border-radius:var(--surface-radius);
  background:var(--surface);box-shadow:var(--surface-shadow)
}
:is(input,select,textarea,button,.button){font:inherit;min-height:44px;border-radius:var(--control-radius)}
:is(input,select,textarea){padding:8px 12px;border:1px solid var(--field-border);background:var(--field);color:inherit}
:is(button,.button){
  display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border:0;
  background:var(--accent);color:var(--accent-ink);font-weight:750;cursor:pointer;text-align:center;text-decoration:none
}
:is(button.secondary,.button.secondary,.quiet){background:var(--secondary);color:var(--text)}
button:disabled{opacity:.55;cursor:default}
:is(button,.button,input,select,textarea,summary):focus-visible{outline:2px solid var(--accent);outline-offset:3px}

:is(.app-header,.client-header,.winner-header){
  position:sticky;top:0;z-index:3;transition:background-color .18s ease
}
:is(.app-header,.client-header,.winner-header).is-scrolled{
  background:#171412bf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)
}
:is(.app-header,.client-header-inner,.winner-header){
  --logo-width:var(--brand-logo-width);
  --header-row-height:calc(var(--logo-width) * var(--brand-row-ratio));
  /* Twice the distance from the axis to the red rectangle's lower edge. */
  --header-control-height:calc(var(--logo-width) * .195);
  display:flex;justify-content:space-between;align-items:center;gap:12px
}
:is(.app-brand,.client-header-inner,.winner-brand) > img{
  /* The appended word widens the image while the original red rectangle keeps its width. */
  display:block;width:calc(var(--logo-width) * 1.34791974);height:auto;align-self:flex-start;flex:none
}
:is(.client-header-inner,.winner-brand)::before{
  content:"";position:absolute;inset-block-start:calc(-1 * var(--header-safe-top));
  inline-size:var(--logo-width);block-size:var(--header-safe-top);background:var(--brand-red);pointer-events:none
}
.language-control{
  position:relative;display:grid;place-items:center;flex:none;width:var(--header-control-height);height:var(--header-control-height);
  border:1px solid var(--field-border);border-radius:var(--control-radius);background:var(--field);color:var(--text)
}
.language-control:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.language-control svg{width:min(22px,calc(var(--header-control-height) * .78));height:auto}
.language-control select{
  position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);
  width:max(100%,24px);height:max(100%,36px);min-height:0;opacity:0;cursor:pointer
}
@media(prefers-reduced-motion:reduce){
  :is(.app-header,.client-header,.winner-header){transition:none}
}
