.member-wrap{width:min(940px,calc(100% - 32px));margin:40px auto 80px}.member-wrap h1{font-size:clamp(1.8rem,5vw,3rem)}.member-wrap section{margin:28px 0;padding:24px;border:1px solid #34454b;border-radius:18px;background:#142329}.member-wrap label{display:grid;gap:8px;margin:18px 0}.member-wrap input,.member-wrap textarea{width:100%;box-sizing:border-box}.member-wrap input[type=checkbox]{width:20px}.member-wrap .check-label{display:block}.member-tabs,.member-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:16px 0}.member-tabs button[aria-pressed=true]{background:#c3e740;color:#132027}.member-plan{border:1px solid #43535b;padding:20px;border-radius:14px;margin:18px 0;overflow-wrap:anywhere}.member-plan h3{margin:0 0 8px}.member-plan button{font-size:.95rem}.member-wrap details{margin:24px 0}.member-wrap summary{cursor:pointer;font-weight:700;padding:14px 0}.member-wrap dialog{width:min(680px,calc(100% - 40px));max-height:85vh;overflow:auto;color:#f4f4ed;background:#142329;border:1px solid #75828a;border-radius:18px;padding:24px}.member-wrap dialog::backdrop{background:#0009}.member-wrap footer{margin-top:32px}.member-wrap a{color:#c3e740}#memberStatus{min-height:28px;white-space:pre-line}#adminPlanContent{overflow-wrap:anywhere}#adminPlanContent pre{white-space:pre-wrap;max-height:40vh;overflow:auto;font-size:.85rem}button:disabled{opacity:.55;cursor:wait}.member-plan small{display:block;color:#bcc9cd}.member-page [hidden]{display:none!important}@media(max-width:550px){.member-wrap section{padding:16px}.member-page .app-header{position:static;flex-wrap:wrap;gap:12px}.member-toolbar button{flex:1}.member-tabs button{flex:1 1 120px}.member-wrap dialog{padding:16px}}.cloud-save-status{padding:12px 0;white-space:pre-line}
.member-wrap a.primary-link{color:#142027}.member-wrap a.primary-link:hover{color:#142027}

/* V3.1: focused account entry and confirmation state */
.member-wrap{max-width:940px;margin-top:28px}.member-wrap>h1{margin-bottom:10px}.member-wrap #memberStatus{color:#bcc9cd;margin-top:0}
#authSection,#mailSection,#tokenSection,#otpSection{max-width:560px;margin:24px auto}.member-tabs{gap:8px;margin:0 0 24px}.member-tabs button{flex:1;background:transparent;color:#f4f4ed;border:1px solid #43535b}.member-tabs button[aria-pressed=true]{background:#c3e740;color:#132027}
.auth-intro{color:#bcc9cd;margin:0 0 22px;line-height:1.5}#authTitle{margin-bottom:10px;font-size:1.6rem}#authSubmit{width:100%;margin-top:16px}
.member-wrap .text-button{background:none;border:0;box-shadow:none;color:#c3e740;font-size:.9rem;padding:10px 0;text-decoration:underline;text-underline-offset:3px;min-height:44px;cursor:pointer}#forgotLink{display:block;margin-left:auto}
.password-entry{display:flex;align-items:stretch;border:1px solid #43535b;border-radius:12px;overflow:hidden}.member-wrap .password-entry input{min-width:0;border:0;border-radius:0;flex:1}.password-toggle{border:0;border-left:1px solid #43535b;background:#203239;color:#e7edeb;min-width:88px;font-size:.85rem;padding:8px 12px;cursor:pointer}.field-hint{font-size:.85rem;color:#bcc9cd;line-height:1.5;margin:10px 0 0}
.member-wrap .auth-help{margin:24px 0 0;border-top:1px solid #34454b}.auth-help summary{font-size:.92rem}.auth-help p{line-height:1.6;color:#bcc9cd;font-size:.92rem}.auth-help button{max-width:100%;white-space:normal}.auth-help .text-button{display:block;margin-top:8px}
.mail-icon{display:grid;place-items:center;width:52px;height:52px;font-size:1.8rem;color:#c3e740;background:#263929;border-radius:16px;margin-bottom:20px}.mail-confirmation h2{font-size:1.65rem}.mail-confirmation p{line-height:1.6}.mail-address{font-weight:700;color:#c3e740;overflow-wrap:anywhere}.mail-confirmation ol{padding-left:22px;line-height:1.7;margin:22px 0}.mail-confirmation li{padding:5px 0}#mailLogin{width:100%;margin-top:12px}#mailStatus:empty{display:none}#mailStatus{white-space:pre-line;padding:12px;border-left:3px solid #c3e740;scroll-margin:90px}.mail-confirmation{scroll-margin:90px}
@media(max-width:550px){.member-wrap{margin-top:22px}.member-wrap>h1{font-size:1.7rem}.member-wrap section{margin-top:20px}.member-tabs button{flex:1 1 0;padding:12px 8px;font-size:.9rem}.member-tabs{margin-bottom:22px}.member-wrap label{margin:16px 0 8px}.password-entry input{font-size:16px}.auth-intro{font-size:.95rem}#authTitle{font-size:1.4rem}}
