/* Public appearance is independent of the management theme. Keep the two
   dark token blocks identical: explicit choice and script-free device mode. */
:root[data-public-theme="light"] { color-scheme: light; }
:root[data-public-theme="dark"] {
  color-scheme: dark;
  --public-page: #101722;
  --public-surface: #192333;
  --public-panel: #233148;
  --public-inverse: #131d2d;
  --public-inverse-text: #edf2fa;
  --public-ink: #edf2fa;
  --public-muted: #bac6d8;
  --public-link: #a9c3ff;
  --public-border: #43536c;
  --public-input-border: #7a8ea9;
  --public-accent-soft: #433039;
  --public-glow: rgba(125, 77, 72, .12);
  --public-success-bg: #193d2c;
  --public-success-text: #9be3b4;
  --public-warm-bg: #3b301a;
  --public-warm-text: #ffdb94;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-public-theme="light"]) {
    color-scheme: dark;
    --public-page: #101722;
    --public-surface: #192333;
    --public-panel: #233148;
    --public-inverse: #131d2d;
    --public-inverse-text: #edf2fa;
    --public-ink: #edf2fa;
    --public-muted: #bac6d8;
    --public-link: #a9c3ff;
    --public-border: #43536c;
    --public-input-border: #7a8ea9;
    --public-accent-soft: #433039;
    --public-glow: rgba(125, 77, 72, .12);
    --public-success-bg: #193d2c;
    --public-success-text: #9be3b4;
    --public-warm-bg: #3b301a;
    --public-warm-text: #ffdb94;
  }
}

.public-appearance[hidden] { display: none; }
.public-appearance {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: .6rem;
  margin: 0 0 1rem;
  font-size: .875rem;
  font-weight: 650;
}
.public-appearance select {
  width: auto;
  min-width: 6.5rem;
  min-height: 2.75rem;
  padding: .5rem .65rem;
  border: 1px solid var(--public-input-border, #aeb7c5);
  border-radius: .55rem;
  background: var(--public-surface, #fff);
  color: var(--public-ink, #172033);
  font: inherit;
  cursor: pointer;
}
:root :is(a, button, input, select, textarea, summary):focus-visible {
  outline: .2rem solid var(--public-link, #2457e6);
  outline-offset: .2rem;
}
input::placeholder, textarea::placeholder {
  color: var(--public-muted, #667084);
  opacity: 1;
}
input[type="checkbox"] { accent-color: #2457e6; }
.schedule-header .public-appearance { color: #d9e0ec; }
.schedule-header { display: flow-root; }
@media (min-width: 36rem) {
  .schedule-header .public-appearance { float: right; margin-left: 1rem; }
}
@media print {
  .public-appearance { display: none; }
}
