.account-app{min-height:100dvh;background:#fffdf8;display:flex;flex-direction:column}.account-header{max-width:1240px;width:100%;margin:auto;display:flex;align-items:center;gap:24px;padding:24px 32px;border-bottom:1px solid #e5dce9}.account-header img{width:156px;display:block}.account-header>span{font-size:13px;color:#65516e}.account-header>.button{margin-left:auto;min-height:44px;background:#fff;color:#442054}.account-app main{min-height:0;width:100%;max-width:1240px;margin:auto;padding:48px 32px;flex:1}.account-entry{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center;padding:24px 0}.account-eyebrow{display:block;color:#725582;font-size:13px;font-weight:600;margin-bottom:18px}.entry-story h1{font-size:52px;max-width:11ch;line-height:1.07;color:#30113f}.entry-story>p{font-size:17px;line-height:1.75;max-width:43ch;margin:24px 0 32px;color:#65516e}.entry-stages{list-style:none;padding:0;margin:0;display:grid;gap:24px}.entry-stages li{display:flex;gap:18px;align-items:center}.entry-stages li>span{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#ffdf66;color:#30113f;font-size:18px;font-weight:700;flex:none}.entry-stages strong{font-size:17px;color:#442054}.entry-stages p{font-size:14px;line-height:1.7;margin-top:3px;color:#65516e}.account-form{background:#30113f;border-radius:24px;padding:36px;color:#fff;box-shadow:0 16px 40px #30113f16}.account-form h2{font-size:27px;color:#fff;margin-bottom:12px}.account-form>p{color:#e1cde9;font-size:14px;line-height:1.7}.account-form label{display:block;margin:24px 0 8px;font-size:14px;font-weight:600}.account-form input{width:100%;min-height:54px;padding:12px 14px;border:1px solid #90749f;border-radius:10px;background:#fff;color:#30113f;font-size:17px}.password-field{position:relative}.password-field input{padding-right:88px}.password-field button{position:absolute;right:4px;top:4px;bottom:4px;background:#f4edf8;color:#442054;border:0;border-radius:7px;padding:0 12px;min-width:74px;font-size:12px}.account-app .account-form .primary{background:#ffdf66;color:#30113f;border:0;margin-top:28px;min-height:54px;justify-content:space-between}.account-app .account-form .primary:hover{background:#ffe98d}.account-form .account-error{color:#ffdaa9;margin-top:14px}.account-error:empty{display:none}.account-form .account-help{font-size:12px;margin-top:20px;line-height:1.7}.account-bottom{max-width:1240px;width:100%;padding:22px 32px;margin:auto;color:#786484;font-size:12px;display:flex;justify-content:space-between;gap:24px}.account-bottom a{min-height:44px;display:flex;align-items:center}.account-welcome{display:flex;justify-content:space-between;align-items:center;gap:40px;margin:0 0 36px}.account-welcome h1{font-size:42px;color:#30113f;margin-bottom:16px;overflow-wrap:anywhere}.account-welcome p{font-size:18px;color:#65516e}.account-welcome img{width:260px;max-height:170px;object-fit:cover;border-radius:18px;border:6px solid #f1e7f7}.account-stages{display:grid;grid-template-columns:1fr 1fr;gap:24px}.account-stage{padding:28px;background:#f3edf8;border-radius:22px;display:flex;flex-direction:column;align-items:stretch}.class-stage{background:#eaf5ee}.stage-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:24px}.stage-number{font-size:28px;font-weight:700;color:#442054}.stage-tag{font-size:12px;color:#65516e}.account-stage h2{font-size:30px;color:#30113f;margin-bottom:14px}.account-stage p{font-size:16px;line-height:1.7;color:#65516e;max-width:44ch;margin-bottom:28px}.account-stage .button{min-height:54px;justify-content:space-between;margin-top:auto}.class-locked{padding:16px 18px;border:1px dashed #a6c8b2;border-radius:12px;color:#375c44;line-height:1.6;margin-top:auto}.account-note{font-size:14px;color:#65516e;line-height:1.75;margin:26px 0;max-width:75ch}.account-admin-heading{display:flex;gap:24px;justify-content:space-between;align-items:center;margin-bottom:30px}.account-admin-heading h1{font-size:36px;color:#30113f}.account-admin-heading p{max-width:65ch;line-height:1.7;margin-top:12px}.create-account{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:20px;background:#f3edf8;padding:24px;border-radius:18px}.create-account label{margin:0;font-size:13px;font-weight:600;color:#442054}.create-account input,.create-account select{margin-top:8px;min-height:48px;background:#fff}.create-account button{min-height:48px}.create-account>p{grid-column:1/-1;margin:0}.create-account>p:empty{display:none}.created-access{padding:24px;margin:24px 0;border:1px solid #d6be8a;background:#fff5d4;border-radius:18px}.created-access h2{font-size:22px;margin-bottom:12px}.created-access dl{display:grid;grid-template-columns:150px 1fr;gap:10px;margin:18px 0}.created-access dt{font-size:13px;color:#725b2c}.created-access dd{margin:0;font-weight:600;overflow-wrap:anywhere}.created-access>p{overflow-wrap:anywhere;color:#725b2c;font-size:13px;line-height:1.7}.student-list{margin-top:36px}.student-list>h2{font-size:24px;margin-bottom:20px}.student-account-row{padding:22px 0;border-bottom:1px solid #e5dce9;display:flex;justify-content:space-between;gap:24px;align-items:center}.student-account-row h3{font-size:19px;margin-bottom:6px;overflow-wrap:anywhere}.student-account-row p{font-size:13px;line-height:1.7}.student-account-row .row-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.student-account-row .button{font-size:12px;min-height:44px}.account-save-status{font-size:11px;color:#5b6a55;max-width:180px}.account-save-status[data-state=error]{color:#8c4521}.account-app .button{transition:transform 160ms,background 160ms}.account-app .button:active{transform:translateY(1px)}
@media(max-width:800px){.account-header{padding:18px 20px;gap:16px}.account-header img{width:132px}.account-header>span{display:none}.account-app main{padding:28px 20px}.account-entry{grid-template-columns:1fr;gap:28px;padding:0}.entry-story h1{font-size:38px;max-width:14ch}.entry-story>p{margin:18px 0}.entry-stages{grid-template-columns:1fr 1fr;gap:16px}.entry-stages li{align-items:flex-start;gap:10px}.entry-stages li>span{width:34px;height:34px;border-radius:10px;font-size:14px}.entry-stages strong{font-size:15px}.entry-stages p{font-size:12px}.account-form{padding:26px}.account-form h2{font-size:24px}.account-welcome{gap:20px;align-items:flex-start}.account-welcome img{width:110px;max-height:95px}.account-welcome h1{font-size:30px}.account-welcome p{font-size:15px}.account-eyebrow{font-size:11px;line-height:1.6}.account-stages{grid-template-columns:1fr;gap:18px}.account-stage{padding:24px}.account-stage h2{font-size:26px}.account-stage p{font-size:15px}.account-bottom{padding:16px 20px;align-items:center}.account-admin-heading{display:block}.account-admin-heading .button{margin-top:18px}.create-account{grid-template-columns:1fr}.student-account-row{align-items:flex-start;flex-direction:column;gap:14px}.student-account-row .row-actions{justify-content:flex-start}.created-access dl{grid-template-columns:1fr;gap:5px}.created-access dd{margin-bottom:12px}.account-save-status{max-width:110px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.account-app .button{transition:none}.account-app .button:active{transform:none}}

.account-welcome .account-track{font-size:14px;font-weight:600;margin-bottom:12px;color:#725582}
.created-access h3{font-size:14px;margin:18px 0 8px;color:#725b2c}.created-list{margin:0;padding-left:18px;overflow-wrap:anywhere;font-size:14px;line-height:1.8;font-variant-numeric:tabular-nums}
.student-account-row .button.danger{background:transparent;border-color:transparent;color:#8c2d2d;text-decoration:underline;text-underline-offset:3px}.student-account-row .button.danger:hover{background:#fbeaea}
