:root { color-scheme: light; }
* { box-sizing: border-box; }
[hidden] { display: none !important; }
.access-body {
  margin: 0;
  min-width: 280px;
  background: #f7f8fa;
  color: #242932;
  font: 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
}
.access-main { min-height: 100svh; display: grid; place-content: center; padding: 32px 20px; }
.access-card { width: min(340px, calc(100vw - 40px)); }
.access-card h1 { margin: 0 0 26px; font-size: 20px; font-weight: 550; line-height: 1.5; text-align: center; }
.access-label { display: block; margin-bottom: 8px; font-size: 14px; color: #505964; }
.access-field {
  display: block;
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid #adb6c3;
  border-radius: 8px;
  background: #fff;
  color: #242932;
  font: inherit;
}
.access-field:focus { border-color: #3b4a61; outline: 3px solid #dbe2ec; outline-offset: 1px; }
.access-field::placeholder { color: #6b7480; opacity: 1; }
.access-button {
  display: block;
  width: 100%;
  min-height: 48px;
  margin-top: 18px;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 11px 16px;
  background: #283342;
  color: #fff;
  font: inherit;
  font-weight: 550;
  cursor: pointer;
}
.access-button:hover:not(:disabled) { background: #151e2a; }
.access-button:focus-visible, .access-error:focus-visible { outline: 3px solid #516b8d; outline-offset: 4px; }
.access-button:disabled { color: #344154; background: #ccd3dc; cursor: not-allowed; }
.access-error { margin: 15px 0 0; color: #a12626; font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
.access-notice { margin: 0 0 18px; color: #505964; font-size: 14px; line-height: 1.7; text-align: center; }
@media (prefers-reduced-motion: reduce) { .access-main * { animation: none !important; transition: none !important; } }
