.member-form{display:grid;gap:18px;margin-top:22px}.member-field{display:grid;gap:8px;font-size:.92rem;font-weight:650;color:#172035}.member-field input{width:100%;min-width:0;padding:14px 15px;border:1px solid #ccd2dc;border-radius:10px;background:#fff;color:#111624;font:inherit;font-weight:400}.member-field input:focus{outline:3px solid #97acfa;outline-offset:2px;border-color:#3e54dc}.member-field small{font-size:.78rem;font-weight:400;color:#586377}.member-check{display:flex;gap:12px;align-items:flex-start;font-size:.82rem;line-height:1.6;color:#475269}.member-check input{width:19px;height:19px;flex-shrink:0;margin-top:4px;accent-color:#3e54dc}.member-check a,.member-form a{color:#2f47cb;text-decoration:underline}.member-message,.member-service{padding:14px 16px;border:1px solid #d7dfeb;border-radius:10px;font-size:.86rem;line-height:1.6;background:#f1f5fc;color:#273956;margin:18px 0}.member-message[data-error=true]{background:#fff0f1;border-color:#efc9d0;color:#9b2335}.member-message[data-error=false]{background:#ecf7e1;border-color:#cde4b3;color:#30501d}.member-message[hidden],.member-service[hidden]{display:none}.member-form .btn{width:100%;border:0;margin-top:4px;justify-content:center;font:inherit;font-weight:700;cursor:pointer}.member-form .btn:disabled,.price-card button:disabled{opacity:.6;cursor:not-allowed}.price-card button{font:inherit;font-weight:700;border:0;cursor:pointer;white-space:normal;text-align:center}.member-account{margin-top:36px}.member-welcome{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-bottom:22px}.member-welcome h2{font-size:clamp(1.7rem,4vw,2.5rem);margin:0 0 6px}.member-welcome p{margin:0;color:#bec5d3;overflow-wrap:anywhere}.member-welcome button,.member-action{padding:11px 18px;border-radius:8px;background:transparent;border:1px solid #626b7d;color:inherit;font:inherit;cursor:pointer}.member-account-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.member-panel{background:#fff;color:#121827;border:1px solid #e0e3e9;border-radius:18px;padding:28px;min-width:0}.member-panel h3{font-size:1.25rem;margin:0 0 15px}.member-panel p{color:#556175;font-size:.94rem;line-height:1.6}.member-panel .member-action{color:#172035;border-color:#ccd2dc}.member-panel .btn{font-size:.9rem}.member-plan{font-size:1.9rem;font-weight:750;line-height:1.25;margin:14px 0}.member-pill{display:inline-block;font-size:.75rem;font-weight:700;background:#eaf4dd;color:#395225;padding:6px 10px;border-radius:30px}.member-payments{margin-top:22px}.member-table-scroll{max-width:100%;overflow-x:auto}.member-table{width:100%;border-collapse:collapse;font-size:.87rem}.member-table th,.member-table td{text-align:left;padding:13px 10px;border-bottom:1px solid #e4e7ed;white-space:nowrap}.member-table th{color:#5b6678;font-size:.76rem}.member-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.member-empty{padding:25px;background:#1b2232;border:1px solid #414c61;border-radius:16px;color:#e7ebf4}.member-empty p{color:#c6cdda}.member-legal{padding:160px 24px 70px;max-width:960px!important}.member-legal h1{font-size:clamp(2.2rem,5vw,3.5rem);line-height:1.2;margin:25px 0}.member-legal h2{font-size:1.5rem;letter-spacing:-.03em;line-height:1.35;margin:24px 0 15px}.member-legal h3{font-size:1.2rem}.member-legal section{padding:22px 0;border-top:1px solid #d8dde6}.member-legal p,.member-legal li{font-size:1rem;line-height:1.8;color:#465269}.member-legal ul,.member-legal ol{padding-left:22px}.member-legal li>span:first-child{display:none}.member-legal a{color:#304aca;overflow-wrap:anywhere}.member-legal table{width:100%;border-collapse:collapse}.member-legal td,.member-legal th{padding:10px;border:1px solid #d8dde6}.member-service code{word-break:break-all}@media(max-width:700px){.member-account-grid{grid-template-columns:1fr}.member-panel{padding:22px}.member-welcome{align-items:flex-start;flex-direction:column}.member-legal{padding-top:115px}.member-legal h2{font-size:1.3rem}.member-table th,.member-table td{padding:12px 7px}}
.access-expiry-overlay{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;background:#0b1220d9;backdrop-filter:blur(6px)}.access-expiry-dialog{position:relative;width:min(480px,100%);padding:38px;border:1px solid #3d4960;border-radius:24px;background:linear-gradient(145deg,#192235,#101725);color:#fff;box-shadow:0 28px 90px #0009;text-align:center}.access-expiry-close{position:absolute;right:16px;top:14px;width:44px;height:44px;border:0;border-radius:50%;background:#ffffff12;color:#fff;font:400 28px/1 sans-serif;cursor:pointer}.access-expiry-close:hover,.access-expiry-close:focus-visible{background:#ffffff24;outline:3px solid #c9fa71;outline-offset:2px}.access-expiry-kicker{display:block;color:#c9fa71;font-size:.73rem;font-weight:800;letter-spacing:.14em}.access-expiry-count{width:128px;height:128px;margin:24px auto 18px;border:2px solid #c9fa71;border-radius:50%;display:grid;place-content:center;background:#c9fa710d}.access-expiry-count strong{display:block;color:#c9fa71;font-size:3.8rem;line-height:.9}.access-expiry-count span{display:block;margin-top:9px;font-size:.68rem;font-weight:800;letter-spacing:.12em}.access-expiry-dialog h2{margin:0 0 12px;font-size:clamp(1.8rem,6vw,2.5rem)}.access-expiry-dialog p{margin:0 auto 24px;max-width:390px;color:#c9d0de;font-size:1rem;line-height:1.65}.access-expiry-cta{width:100%;justify-content:center}.access-expiry-later{margin-top:14px;padding:10px;border:0;background:transparent;color:#bec7d6;font:inherit;font-size:.83rem;text-decoration:underline;cursor:pointer}.access-expiry-later:focus-visible{outline:3px solid #c9fa71;outline-offset:2px}@media(max-width:700px){.access-expiry-dialog{padding:34px 22px 26px;border-radius:20px}.access-expiry-count{width:110px;height:110px}.access-expiry-count strong{font-size:3.2rem}}
.member-training{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:34px;align-items:center;margin:0 0 22px;padding:28px;border:1px solid #3d4960;border-radius:22px;background:radial-gradient(circle at 0 0,#314165 0,transparent 42%),#151d2d;box-shadow:0 24px 70px #05081440;overflow:hidden}.member-training-copy{padding:6px}.member-training-kicker{display:block;margin-bottom:13px;color:#c9fa71;font-size:.76rem;font-weight:800;letter-spacing:.13em}.member-training h3{margin:0;color:#fff;font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.15;letter-spacing:-.035em}.member-training p{margin:15px 0 0;color:#cbd2df;font-size:.96rem;line-height:1.7}.member-video{position:relative;width:100%;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#070b13;box-shadow:0 18px 45px #0008}.member-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}@media(max-width:820px){.member-training{grid-template-columns:1fr;gap:22px;padding:22px}.member-training-copy{padding:0}}

/* Native dialog keeps keyboard focus inside the expiry notice. */
dialog.access-expiry-overlay{margin:0;border:0;width:100%;height:100%;max-width:100vw;max-height:100dvh;box-sizing:border-box}dialog.access-expiry-overlay:not([open]){display:none}.access-expiry-dialog{box-sizing:border-box;max-width:100%;max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain}.access-expiry-later{min-height:44px}
