/* Bar-table artwork is local and decorative. Account controls stay shared. */
body:has(.signin-screen:not([hidden])) {
  --signin-paper: #120e0c;
  background: var(--signin-paper);
}
.signin-screen {
  --signin-card: #1d1714;
  --signin-ink: #efe6d6;
  --signin-muted: #a39684;
  --signin-action-background: #d9a441;
  --signin-hover: #ecbb5e;
  --signin-line: #43362d;
  --signin-focus: #fff0be;
  --signin-action-ink: #1a1206;
  --signin-width: 540px;
  --signin-space: 24px;
  --signin-small: 12px;
  --signin-padding: clamp(24px, 6vw, 56px);
  --signin-radius: 16px;
  --signin-action-radius: 8px;
  --signin-title: clamp(36px, 6vw, 56px);
  --panel-width: 300px;
  --panel-face: #120e0c;
  --panel-felt: #1f5c3d;
  --panel-felt-dark: #123524;
  --panel-rail: #4a2c17;
  --panel-rail-width: 6px;
  --panel-card: clamp(44px, 12vw, 60px);
  --panel-cylinder: clamp(48px, 13vw, 64px);
  --panel-fan: 9deg;
  --panel-tuck: -0.35;
  --panel-rise: 6px;
  --signin-caption: 13px;
  --signin-tracking: 0.14em;
  --signin-border: 1px;
  --signin-outline: 3px;
  --signin-shadow: 0 12px 42px #26382b0b;
  display: grid;
  place-items: center;
  width: 100%;
  height: auto;
  min-height: 85svh;
  padding: var(--signin-padding) var(--signin-space);
  color-scheme: dark;
  color: var(--signin-ink);
  background: var(--signin-paper);
  font:
    16px/1.6 system-ui,
    sans-serif;
}
.signin-screen[hidden] {
  display: none;
}
body:has(.signin-screen:not([hidden])) > main:not(.signin-screen) {
  max-width: none;
  padding: 0;
}
.signin-card {
  width: min(100%, var(--signin-width));
  padding: var(--signin-padding);
  border: var(--signin-border) solid var(--signin-line);
  border-radius: var(--signin-radius);
  background: var(--signin-card);
  box-shadow: var(--signin-shadow);
  text-align: center;
}
.signin-panel {
  width: min(100%, var(--panel-width));
  margin: 0 auto var(--signin-space);
  padding: var(--signin-small);
  border: var(--signin-border) solid var(--signin-line);
  border-radius: var(--signin-action-radius);
  background: var(--panel-face);
}
.signin-status {
  display: block;
  color: var(--signin-muted);
  font: var(--signin-caption) monospace;
  letter-spacing: var(--signin-tracking);
}
.signin-felt {
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  gap: var(--signin-small);
  margin: var(--signin-small) 0;
  padding: var(--signin-space) var(--signin-small);
  border: var(--panel-rail-width) solid var(--panel-rail);
  border-radius: var(--signin-radius);
  background: radial-gradient(
    ellipse at center,
    var(--panel-felt),
    var(--panel-felt-dark)
  );
}
.signin-felt .cylinder {
  --cylinder: var(--panel-cylinder);
}
.signin-hand {
  --card-size: var(--panel-card);
  display: flex;
}
.signin-hand .dealt {
  transform: rotate(
      calc((var(--index) - (var(--count) - 1) / 2) * var(--panel-fan))
    )
    translateY(
      calc(
        (var(--index) - (var(--count) - 1) / 2) *
          (var(--index) - (var(--count) - 1) / 2) * var(--panel-rise)
      )
    );
}
.signin-hand .dealt + .dealt {
  margin-left: calc(var(--panel-card) * var(--panel-tuck));
}
.signin-card .signin-eyebrow {
  margin: var(--signin-small) 0 var(--signin-space);
  color: var(--signin-muted);
  font-size: var(--signin-caption);
  font-weight: 700;
  letter-spacing: var(--signin-tracking);
}
.signin-card h1 {
  margin: 0 0 var(--signin-space);
  font:
    500 var(--signin-title) / 1.1 Georgia,
    serif;
  letter-spacing: normal;
}
.signin-card .signin-description {
  margin: 0 0 var(--signin-space);
  color: var(--signin-muted);
}
.signin-card .signin-action {
  display: block;
  padding: var(--signin-small) var(--signin-space);
  border-radius: var(--signin-action-radius);
  background: var(--signin-action-background);
  color: var(--signin-action-ink);
  text-decoration: none;
  font-weight: 600;
}
.signin-card .signin-action:hover {
  background: var(--signin-hover);
}
.signin-card .signin-action:focus-visible {
  outline: var(--signin-outline) solid var(--signin-focus);
  outline-offset: var(--signin-outline);
}
.signin-card .signin-note {
  margin: var(--signin-space) 0 0;
  color: var(--signin-muted);
  font-size: var(--signin-caption);
}
