:root {
  --obk-ivory: #FBF7EF; --obk-cream: #FFFDF8; --obk-marble: #E6D3AE; --obk-gold: #C9A24A;
  --obk-gold-light: #E8C979; --obk-gold-dark: #B8892F; --obk-espresso: #2B2118;
  --obk-error: #9B2C2C; --obk-ok: #2F6B3A;
}
.obk-dialog {
  width: min(28rem, calc(100vw - 2rem)); box-sizing: border-box; padding: 1.25rem 1.25rem 1rem;
  border: 1px solid var(--obk-marble); border-radius: 1rem; background: var(--obk-cream);
  color: var(--obk-espresso); box-shadow: 0 1.5rem 3rem rgba(43, 33, 24, 0.18);
  font: inherit; line-height: 1.45;
}
.obk-dialog::backdrop { background: rgba(43, 33, 24, 0.45); }
.obk-dialog__title { margin: 0 0 0.5rem; font-size: 1.15rem; }
.obk-dialog__notice { margin: 0 0 0.9rem; padding: 0.6rem 0.75rem; border-radius: 0.6rem;
  background: var(--obk-ivory); border: 1px solid var(--obk-marble); font-size: 0.92rem; }
.obk-dialog__recipient { margin: 0.25rem 0 0; font-size: 0.9rem; overflow-wrap: anywhere; }
.obk-field { display: block; margin: 0 0 0.4rem; }
.obk-field__label { display: block; margin-bottom: 0.3rem; font-weight: 600; font-size: 0.92rem; }
.obk-field__hint { margin: 0 0 0.4rem; font-size: 0.85rem; opacity: 0.8; }
.obk-input { width: 100%; box-sizing: border-box; padding: 0.55rem 0.7rem; border-radius: 0.55rem;
  border: 1px solid var(--obk-marble); background: #fff; color: inherit; font: inherit; }
.obk-input:focus-visible { outline: 2px solid var(--obk-gold); outline-offset: 1px; }
.obk-status { min-height: 1.4em; margin: 0.6rem 0; font-size: 0.92rem; overflow-wrap: anywhere; }
.obk-status--error { color: var(--obk-error); }
.obk-status--ok { color: var(--obk-ok); }
.obk-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.5rem; }
.obk-btn { padding: 0.5rem 0.95rem; border-radius: 999px; border: 1px solid var(--obk-marble);
  background: var(--obk-ivory); color: var(--obk-espresso); font: inherit; font-weight: 600; cursor: pointer; }
.obk-btn:hover:not(:disabled) { border-color: var(--obk-gold); }
.obk-btn:focus-visible { outline: 2px solid var(--obk-gold); outline-offset: 2px; }
.obk-btn:disabled { opacity: 0.55; cursor: not-allowed; }
.obk-btn--primary { background: linear-gradient(180deg, var(--obk-gold-light), var(--obk-gold));
  border-color: var(--obk-gold-dark); }
.obk-link { color: var(--obk-gold-dark); font-weight: 600; }
@media (prefers-color-scheme: dark) {
  :where(html:not([data-theme="light"])) .obk-dialog { background: #221A13; color: #F4ECDD; border-color: #4A3B2A; }
  :where(html:not([data-theme="light"])) .obk-dialog__notice { background: #2B2118; border-color: #4A3B2A; }
  :where(html:not([data-theme="light"])) .obk-input { background: #1A140F; border-color: #4A3B2A; }
  :where(html:not([data-theme="light"])) .obk-btn { background: #2B2118; color: #F4ECDD; border-color: #4A3B2A; }
  :where(html:not([data-theme="light"])) .obk-btn--primary { background: linear-gradient(180deg, var(--obk-gold-light), var(--obk-gold)); color: var(--obk-espresso); border-color: var(--obk-gold); }
  :where(html:not([data-theme="light"])) .obk-link { color: var(--obk-gold-light); }
  :where(html:not([data-theme="light"])) .obk-status--error { color: #F2A3A3; }
  :where(html:not([data-theme="light"])) .obk-status--ok { color: #9BD3A5; }
}
  :where(html[data-theme="dark"]) .obk-dialog { background: #221A13; color: #F4ECDD; border-color: #4A3B2A; }
  :where(html[data-theme="dark"]) .obk-dialog__notice { background: #2B2118; border-color: #4A3B2A; }
  :where(html[data-theme="dark"]) .obk-input { background: #1A140F; border-color: #4A3B2A; }
  :where(html[data-theme="dark"]) .obk-btn { background: #2B2118; color: #F4ECDD; border-color: #4A3B2A; }
  :where(html[data-theme="dark"]) .obk-btn--primary { background: linear-gradient(180deg, var(--obk-gold-light), var(--obk-gold)); color: var(--obk-espresso); border-color: var(--obk-gold); }
  :where(html[data-theme="dark"]) .obk-link { color: var(--obk-gold-light); }
  :where(html[data-theme="dark"]) .obk-status--error { color: #F2A3A3; }
  :where(html[data-theme="dark"]) .obk-status--ok { color: #9BD3A5; }

