[hidden]{display:none!important}
:root{
  --cpp-bg:#f3efe7;
  --cpp-paper:#fffdf8;
  --cpp-ink:#243126;
  --cpp-muted:#6f746f;
  --cpp-line:#ded5c7;
  --cpp-brand:#2d5f4a;
  --cpp-brand-dark:#20372e;
  --cpp-accent:#d99d3f;
  --cpp-danger:#aa3b2d;
  --cpp-shadow:0 18px 45px rgba(51,45,35,.13);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--cpp-ink)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.global-toast{position:fixed;z-index:5000;right:20px;bottom:20px;max-width:min(440px,calc(100vw - 32px));padding:.85rem 1rem;border-radius:14px;background:var(--cpp-brand-dark);color:#fff;box-shadow:var(--cpp-shadow);opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}
.global-toast.show{opacity:1;transform:none}
.global-toast[data-mode="error"]{background:var(--cpp-danger)}
.auth-dialog{border:0;border-radius:22px;padding:0;box-shadow:0 35px 90px rgba(0,0,0,.3);max-width:min(92vw,460px);width:100%}
.auth-dialog::backdrop{background:rgba(20,33,27,.62);backdrop-filter:blur(4px)}
.auth-card{position:relative;padding:1.5rem;background:var(--cpp-paper)}
.auth-card h2{margin:.25rem 0;font-size:2rem}
.auth-card p{color:var(--cpp-muted);line-height:1.5}
.auth-card label{display:grid;gap:.4rem;font-weight:750;margin:1rem 0}
.auth-card input{width:100%;border:1px solid var(--cpp-line);border-radius:14px;padding:.8rem;background:#fff}
.dialog-close{position:absolute;right:.8rem;top:.7rem;border:0;background:transparent;font-size:1.8rem;color:var(--cpp-muted)}
.primary-button,.secondary-button,.danger-button{border:0;border-radius:999px;padding:.75rem 1rem;font-weight:800;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.45rem}
.primary-button{background:var(--cpp-brand);color:#fff}
.secondary-button{background:#fff;color:var(--cpp-brand);border:1px solid var(--cpp-brand)}
.danger-button{background:var(--cpp-danger);color:#fff}
.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{opacity:.55;cursor:not-allowed}
.form-error{color:var(--cpp-danger)!important;background:#fff1ee;border:1px solid #efb9af;padding:.7rem;border-radius:12px}
.eyebrow.dark{color:var(--cpp-brand);letter-spacing:.14em;text-transform:uppercase;font-size:.75rem;font-weight:800}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media(max-width:640px){.global-toast{right:12px;left:12px;bottom:12px;text-align:center}.auth-card{padding:1.2rem}}
