/* Compact course information and a useful, compact signed-out cabinet. */
#demo-dialog.program-dialog{width:min(700px,calc(100% - 28px));max-height:90dvh;padding:0;overflow:auto;border-color:#513441;border-radius:20px;background:radial-gradient(ellipse at 0 0,#49182455,transparent 42%),#151317;box-shadow:0 30px 100px #000b}
#demo-dialog.program-dialog form{padding:20px clamp(20px,4vw,30px)}
#demo-dialog.program-dialog .modal-close{margin:-12px -10px 0 12px}
#demo-dialog.program-dialog h2{max-width:18ch;margin:0 0 10px;font-size:clamp(27px,4vw,36px);letter-spacing:-1px;line-height:1.08}
#demo-dialog.program-dialog .eyebrow{color:#ff8298;font-size:16px;letter-spacing:.13em}
#demo-dialog.program-dialog .program-dialog-description{max-width:58ch;margin:0 0 12px;color:#c9bdc6;font-size:16px;line-height:1.45}
.program-dialog-price{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 12px;padding:10px 14px;border:1px solid #593342;border-radius:12px;background:#25171d;color:#d6c9cf}
.program-dialog-price strong{color:#fff;font-size:18px;font-weight:650;white-space:nowrap}
.program-dialog-list{margin:0 0 12px;padding:12px 16px;border:1px solid #342f37;border-radius:14px;background:#111114}
.program-dialog-list h3{margin:0 0 6px;color:#fff;font-size:16px;font-weight:600;letter-spacing:0}
.program-dialog-list ol{display:grid;gap:0;margin:0;padding:0;list-style:none;counter-reset:chapters}
.program-dialog-list li{counter-increment:chapters;display:grid;grid-template-columns:26px minmax(0,1fr);gap:9px;padding:5px 0;border-top:1px solid #ffffff12;color:#ded6dd;font-size:16px;line-height:1.3}
.program-dialog-list li::before{content:counter(chapters,decimal-leading-zero);color:#ff647f;font-size:16px;font-variant-numeric:tabular-nums;letter-spacing:.08em;padding-top:2px}
.program-dialog-note{margin:0!important;padding:0 2px;color:#a99da7!important;font-size:16px!important;line-height:1.4!important}
#demo-dialog.program-dialog .modal-actions{display:flex;gap:10px;margin-top:14px}
#demo-dialog.program-dialog .modal-actions .button{min-height:44px;padding:0 20px}
#demo-login-view.gate{width:min(820px,calc(100% - 36px));min-height:0;margin:32px auto 56px;padding:clamp(26px,5vw,50px);border:1px solid #39363d;border-radius:20px;background:linear-gradient(145deg,#19181c,#111113 74%);box-shadow:0 24px 80px #0005}
#demo-login-view.gate h1{max-width:15ch;margin:8px 0 16px;font-size:clamp(34px,5vw,48px);letter-spacing:-1.7px}
#demo-login-view.gate>p:not(.eyebrow){max-width:58ch;margin-bottom:16px;color:#c5bdc7;font-size:16px;line-height:1.75}
#demo-login-view.gate .button{margin-top:8px}
@media(max-width:600px){#demo-dialog.program-dialog{max-height:90dvh;border-radius:16px}#demo-dialog.program-dialog form{padding:16px 16px 18px}.program-dialog-list{padding:10px 12px}.program-dialog-price{padding:9px 12px}#demo-dialog.program-dialog h2{font-size:26px}#demo-login-view.gate{width:calc(100% - 28px);margin:22px auto 36px;padding:26px 22px}#demo-login-view.gate h1{font-size:34px}}
@media(max-height:760px){#demo-dialog.program-dialog form{padding-block:12px}.program-dialog-list li{padding-block:3px}#demo-dialog.program-dialog .modal-actions{margin-top:9px}}

.email-login-form{display:grid;gap:12px;margin:24px 0;max-width:480px}.email-login-form label{font-size:16px;color:#ded5df}.email-login-form input{width:100%;min-height:52px;padding:13px 16px;background:#101013;color:#fff;border:1px solid #54434c;border-radius:10px;font:inherit;box-sizing:border-box}.email-login-form input:focus{outline:2px solid #f32b55;outline-offset:3px}.email-login-form .button{margin:0!important}.email-login-form [role=status]{margin:0;color:#d1c4ce;font-size:16px;line-height:1.6}.email-login-help{font-size:16px!important;color:#a99ca8!important}.account-security{margin:18px 0}.account-security .button{font-size:16px;min-height:40px;padding:10px 16px}

/* Compact cabinet heading without duplicate navigation. */
#cabinet-view .cabinet-intro{display:block}#cabinet-view .cabinet-intro .page-description{max-width:64ch}

.account-tools{display:flex;align-items:center;flex-wrap:wrap;gap:12px 28px;margin:14px 0 22px}.account-tools .text-link{font-size:16px}.account-security{margin-left:auto;color:#a99dae;font-size:16px;max-width:470px}.account-security summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.account-security p{font-size:16px;line-height:1.8}.account-security[open]{flex-basis:100%;margin-left:0}.account-security .button{font-size:16px}@media(max-width:700px){.account-tools{gap:6px 20px}.account-security{margin-left:0}}

/* Account actions stay together and the current-device logout is always explicit. */
.account-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0 30px;padding:22px 24px;border:1px solid #ffffff29;border-radius:16px;background:#141216}
.account-identity{display:grid;gap:5px;min-width:0}
.account-identity>span{font-size:16px;color:#b9adbf}
.account-identity>strong{font-size:16px;font-weight:550;color:#f3eaf7;overflow-wrap:anywhere}
.account-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:10px}
.account-actions .button{font-size:16px;min-height:48px;padding:12px 17px;text-decoration:none}
.account-actions .account-logout{background:#30232b;border-color:#a06479;color:#fff}
.account-actions .account-logout:hover{background:#442332;border-color:#e27398}
@media(max-width:950px){.account-tools{align-items:flex-start;flex-direction:column}.account-actions{justify-content:flex-start}}
@media(max-width:600px){.account-tools{padding:20px;margin:22px 0;gap:18px}.account-actions{width:100%;gap:10px}.account-actions .button{flex:1 1 100%;width:100%;justify-content:center;min-height:52px}.account-identity>strong{line-height:1.6}}

