/* 5CKN Member Accounts — mobile-first, isolated from child theme. */
.ncc-auth { --ncc-a-green: #1e7f5c; --ncc-a-ink: #19352b; box-sizing: border-box; max-width: 520px; margin: 20px auto 46px; padding: 0 16px; color: var(--ncc-a-ink); }
.ncc-auth *, .ncc-auth *::before, .ncc-auth *::after { box-sizing: border-box; }
.ncc-auth__brand { font-size: 15px; font-weight: 850; letter-spacing: .08em; padding: 18px 0 14px; }
.ncc-auth__brand span { font-size: 11px; font-weight: 650; letter-spacing: .065em; color: #64756e; }
.ncc-auth__panel { background: #fff; border: 1px solid #e2eae6; border-radius: 22px; padding: clamp(22px, 5vw, 36px); box-shadow: 0 15px 60px rgba(18,53,38,.06); }
.ncc-auth__eyebrow { color: var(--ncc-a-green); letter-spacing: .11em; font-size: 11px; font-weight: 800; }
.ncc-auth h2 { font-size: clamp(24px, 5vw, 34px); margin: 8px 0; letter-spacing: -.035em; line-height: 1.2; }
.ncc-auth h3 { margin: 28px 0 14px; font-size: 19px; }
.ncc-auth__intro { color: #586b63; line-height: 1.6; font-size: 14px; margin-bottom: 22px; }
.ncc-auth__form { display: grid; gap: 16px; }
.ncc-auth__form > label { display: grid; gap: 7px; color: #314a3e; font-weight: 680; font-size: 13px; }
.ncc-auth__form input:not([type=checkbox]) { width: 100%; min-height: 48px; border: 1px solid #cfdbd5; border-radius: 12px; padding: 11px 14px; background: #fff; font: inherit; font-size: 16px; color: #19352b; }
.ncc-auth__form input:focus-visible, .ncc-auth__button:focus-visible, .ncc-auth a:focus-visible { outline: 2px solid var(--ncc-a-green); outline-offset: 2px; }
.ncc-auth__inline { display: flex!important; gap: 10px!important; align-items: flex-start; line-height: 1.55; font-weight: 500!important; }
.ncc-auth__inline input { margin-top: 3px; min-width: 18px; min-height: 18px; }
.ncc-auth__button { display: flex; justify-content: center; align-items: center; min-height: 48px; padding: 13px 20px; border: 0; border-radius: 12px; background: var(--ncc-a-green); color: #fff!important; font: inherit; font-size: 14px; font-weight: 800; text-align: center; text-decoration: none!important; cursor: pointer; transition: background .18s ease, transform .16s ease; }
.ncc-auth__button:hover { background: #176f50; }
.ncc-auth__button:active { transform: scale(.985); }
.ncc-auth__links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin-top: 18px; font-size: 13px; font-weight: 650; }
.ncc-auth__links a { padding: 8px 0; color: var(--ncc-a-green); }
.ncc-auth__notice { border-left: 3px solid var(--ncc-a-green); padding: 11px 13px; border-radius: 6px; background: #eff9f3; font-size: 13px; line-height: 1.6; }
.ncc-auth__identity { display: grid; gap: 5px; padding: 15px; border-radius: 12px; background: #f3f8f5; overflow-wrap: anywhere; }
.ncc-auth__identity span { color: #617269; font-size: 13px; }
.ncc-auth__honey { position: absolute!important; inset: auto!important; width: 1px!important; height: 1px!important; opacity: 0!important; overflow: hidden!important; pointer-events: none!important; }
@media (min-width: 768px) { .ncc-auth { margin: 48px auto 76px; } }
@media (prefers-reduced-motion: reduce) { .ncc-auth__button { transition: none; } }
