/* Coach Nomin brand for Listmonk public pages (subscription form, opt-in, archive). Source: BRAND.md */
:root { --teal: #4ECDC4; --teal-dark: #36998f; --coral: #E8594E; --coral-light: #ec7e74; --gold: #C9A84C; --ink: #171717; }
body { background: #eff9f8 radial-gradient(circle at 15% 10%, rgba(78,205,196,.18), transparent 45%), radial-gradient(circle at 85% 90%, rgba(232,89,78,.12), transparent 45%); color: var(--ink); font-family: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; }
.wrap { max-width: 560px; margin: 48px auto; padding: 36px 32px; background: rgba(255,255,255,.55); border: 1px solid rgba(255,255,255,.6); border-radius: 32px; box-shadow: 0 25px 70px -25px rgba(78,205,196,.5); backdrop-filter: blur(18px); }
.header { text-align: center; margin-bottom: 8px; }
.header .logo img { width: 96px; height: 96px; border-radius: 50%; }
h1, h2, h3 { font-weight: 600; letter-spacing: -0.01em; color: var(--ink); }
h2 { text-align: center; font-size: 26px; margin: 8px 0 20px; }
p { line-height: 1.6; }
a { color: var(--teal-dark); }
label { font-weight: 500; }
input[type=text], input[type=email], input[type=password] { width: 100%; box-sizing: border-box; padding: 12px 18px; border-radius: 999px; border: 1px solid rgba(255,255,255,.7); background: rgba(255,255,255,.7); font-size: 16px; }
input:focus { outline: none; box-shadow: 0 0 0 3px rgba(78,205,196,.45); }
ul.lists li { list-style: none; padding: 10px 0; }
ul.lists li:before { content: "\2726  "; color: var(--gold); }
.button, button, input[type=submit] { display: inline-block; border: 0; border-radius: 999px; padding: 14px 32px; font-weight: 700; letter-spacing: .02em; color: #fff; background: linear-gradient(90deg, var(--coral), var(--coral-light), var(--gold)); cursor: pointer; box-shadow: 0 10px 30px -12px rgba(232,89,78,.6); }
.button:hover, button:hover, input[type=submit]:hover { opacity: .92; }
.footer, footer { text-align: center; font-size: 13px; opacity: .7; margin-top: 28px; }
.footer a, footer a { color: var(--teal-dark); }
.notice { border-radius: 20px; }
.notice.success { background: rgba(78,205,196,.18); border: 1px solid rgba(78,205,196,.5); }
.notice.error { background: rgba(232,89,78,.12); border: 1px solid rgba(232,89,78,.5); }
@media (prefers-color-scheme: dark) {
  body { background: #0a0a0a; color: #ededed; }
  .wrap { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.15); }
  h1, h2, h3 { color: #ededed; }
  input[type=text], input[type=email], input[type=password] { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.2); color: #ededed; }
}
