/* Sign-in, account chip, save status and access notice (server-backed build). */
[hidden] { display: none !important; }
.auth-root { min-height: 100vh; display: grid; place-items: center; padding: 24px 14px; background: #f4f6f3; }
.auth-card { width: 100%; max-width: 420px; background: #fff; border: 1px solid #dfe5df; border-radius: 14px; padding: 26px 22px; box-shadow: 0 8px 28px rgba(22, 61, 54, .08); }
.auth-card h1 { font-size: 22px; margin: 14px 0 6px; color: #12302a; }
.auth-brand { color: #163d36; }
.auth-copy { font-size: 13px; line-height: 1.55; color: #3e4f4a; margin: 0 0 16px; }
.auth-form { display: grid; gap: 12px; }
.auth-form .field label { display: block; font-weight: 600; font-size: 13px; margin-bottom: 4px; color: #1d2b27; }
.auth-form .text-input { width: 100%; box-sizing: border-box; }
.auth-error { min-height: 1.2em; color: #9b1c1c; font-size: 13px; font-weight: 600; }
.account-chip { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; min-width: 0; }
.account-who { display: grid; line-height: 1.15; min-width: 0; }
.account-who b { font-size: 12px; color: #1d2b27; overflow-wrap: anywhere; }
.account-who small { font-size: 11px; color: #4b5b56; overflow-wrap: anywhere; }
.account-store { max-width: 180px; }
.account-signout { padding: 6px 10px; font-size: 12px; }
.sync-status { font-size: 11px; color: #2f5d50; max-width: 220px; }
.sync-status[data-sync="saving"] { color: #6b4e00; }
.sync-status[data-sync="error"] { color: #9b1c1c; font-weight: 700; }
.sync-alert { margin: 10px 24px 0; padding: 10px 14px; border-radius: 10px; border: 1px solid #e3b4b4; background: #fff4f4; color: #7a1616; font-size: 13px; font-weight: 600; }
.access-notice { max-width: 760px; }
.access-notice dl { display: grid; grid-template-columns: max-content 1fr; gap: 6px 14px; font-size: 13px; }
.access-notice dt { font-weight: 700; }
/* RC2: Store Director audit log + demo-only notice */
.audit-filters { margin-bottom: 6px; }
.audit-filters .form-actions { flex-wrap: wrap; }
.audit-table td { white-space: normal; vertical-align: top; }
.audit-table code { font-size: 10px; }
.audit-who small { display: block; color: #55615c; font-size: 9px; }
.audit-muted { color: #55615c; }
.audit-correction-row td { background: #fbf7ec; }
.audit-link { font-size: 10px; text-decoration: underline; }
.audit-chain[data-chain-ok="0"] { color: #9b1c1c; font-weight: 700; }
.audit-correction-panel, .audit-detail { border-color: #c9dccf; }
.demo-only-notice { max-width: 760px; }
@media (max-width: 700px) {
  /* RC2 (GA RC1-F13): the top bar grows instead of letting the save status spill under the notice card. */
  .topbar { height: auto; min-height: 51px; flex-wrap: wrap; row-gap: 4px; padding-top: 6px; padding-bottom: 6px; }
  .top-actions { flex-wrap: wrap; gap: 6px; justify-content: flex-end; min-width: 0; }
  .account-who small { display: none; }
  .sync-status { order: 10; flex: 1 1 100%; max-width: none; text-align: right; overflow-wrap: anywhere; }
  .sync-alert { margin: 8px 10px 0; }
}
