.account-entry-shell{max-width:1000px;padding:32px 24px 48px;margin:auto}.account-entry-shell>.eyebrow{margin:26px 0 12px;color:#2457e6}.account-entry-shell>h1{font-size:44px;letter-spacing:-1.5px}.account-entry-shell>p{font-size:16px;line-height:1.5}.account-entry-options{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}.account-entry-options .entry-login-panel{display:flex;flex-direction:column;margin:16px 0 0}.account-entry-options .entry-primary{margin-top:auto}.account-entry-options label{font-size:14px;margin:10px 0}.account-entry-options h2{font-size:28px}.account-entry-options .check-line{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.4}.account-entry-options input[type=checkbox]{width:20px;min-height:20px;margin:0}.account-entry-shell .small{font-size:13px;line-height:1.5;color:#605e56}.account-entry-shell #account-status{color:#2457e6;font-weight:700}.account-entry-shell #account-continue{display:flex;align-items:center;justify-content:center;text-decoration:none}.account-entry-shell #account-signout{margin-top:18px}.account-entry-shell #self-checkout{border:2px solid #b7d96b}@media(max-width:700px),(hover:none) and (pointer:coarse) and (max-width:1100px){.account-entry-shell{padding:24px 20px}.account-entry-options{grid-template-columns:1fr;gap:12px}.account-entry-shell>h1{font-size:34px}.account-entry-options .entry-login-panel{padding:20px}}

.teacher-welcome .account-entry-shell{max-width:1280px}
.teacher-welcome .account-entry-options{grid-template-columns:repeat(3,minmax(0,1fr))}
.teacher-welcome .entry-login-panel{min-width:0}
#teacher-welcome-demo p{font-size:16px;line-height:1.5;margin:0 0 18px}
#teacher-welcome-demo .entry-primary{display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;background:#fff;color:#171713;border:1px solid #d8d3c9;margin-top:auto}
@media(max-width:700px),(hover:none) and (pointer:coarse) and (max-width:1100px){.teacher-welcome .account-entry-options{grid-template-columns:1fr}}
#teacher-welcome-demo .entry-primary{margin-top:12px}

/* Desktop pupil entry; existing phone, teacher and self-study styles retained. */
@media(min-width:761px) and (hover:hover) and (pointer:fine){
 .student-desktop-welcome .common-content{overflow:hidden;padding:20px}
 .student-desktop-welcome .common-content>.account-entry-shell{height:100%;display:flex;flex-direction:column;min-height:0}
 .student-desktop-welcome .account-entry-shell>h1{font-size:34px;line-height:1.15;margin:0 0 6px}
 .student-desktop-welcome .account-entry-shell>p{margin:0 0 10px;font-size:14px;line-height:1.35}
 .student-desktop-welcome #account-status[data-entry-idle=true],.student-desktop-welcome #account-status:empty,.student-desktop-welcome #student-direct{display:none}
 .student-desktop-welcome .account-entry-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;flex:1;min-height:0;margin:6px 0 12px}
 .student-desktop-welcome .entry-login-panel{background:#fce8f1;margin:0;padding:18px;min-width:0;gap:8px}
 .student-desktop-welcome .entry-login-panel>.eyebrow{font-size:11px;margin:0;line-height:1.4}
 .student-desktop-welcome .entry-login-panel h2{font-size:24px;line-height:1.15;letter-spacing:-.5px;margin:0 0 8px}
 .student-desktop-welcome .entry-login-panel>p{font-size:14px;line-height:1.4;margin:0}
 .student-desktop-welcome .entry-login-panel label{font-size:13px;margin:0;line-height:1.25}
 .student-desktop-welcome .entry-login-panel input:not([type=checkbox]){font-size:16px;min-height:40px;padding:8px;margin-top:4px}
 .student-desktop-welcome .entry-primary{color:#fff;display:flex;align-items:center;justify-content:center;min-height:42px;padding:10px;font-size:13px;text-align:center;text-decoration:none}
 .student-desktop-welcome #existing-account>.entry-primary{order:1}
 .student-desktop-welcome #existing-account>a{font-size:12px;line-height:1.3;margin-top:0}
 .student-desktop-welcome #new-account{display:flex;flex-direction:column;gap:8px}
 .student-desktop-welcome #new-account .small{font-size:12px;line-height:1.3;align-self:start}
 .student-desktop-welcome .check-line{font-size:12px}
 .student-desktop-welcome .account-entry-shell>p:last-of-type{margin-bottom:0}
 @media(max-height:850px){
  .student-desktop-welcome .common-content{padding:12px 18px}
  .student-desktop-welcome .account-entry-shell>h1{font-size:30px;margin-bottom:4px}
  .student-desktop-welcome .account-entry-shell>p{font-size:13px;margin-bottom:6px}
  .student-desktop-welcome .account-entry-options{gap:14px;margin:4px 0 6px}
  .student-desktop-welcome .entry-login-panel{padding:12px;gap:4px}
  .student-desktop-welcome .entry-login-panel h2{font-size:20px;margin-bottom:4px}
  .student-desktop-welcome .entry-login-panel input:not([type=checkbox]){min-height:36px;padding:6px 8px;margin-top:2px}
  .student-desktop-welcome .entry-login-panel label{font-size:12px}
  .student-desktop-welcome .entry-primary{min-height:36px;padding:8px;font-size:12px}
  .student-desktop-welcome #new-account{gap:4px}
 }
}

/* Compact only the signup card on short desktop windows; keep phone styles. */
@media(min-width:761px) and (hover:hover) and (pointer:fine) and (max-height:680px){
 .student-desktop-welcome #new-account{gap:0;padding-top:8px;padding-bottom:12px}
 .student-desktop-welcome #new-account h2{margin-bottom:0}
 .student-desktop-welcome #new-account input:not([type=checkbox]){min-height:32px;padding:4px 8px;margin-top:1px}
 .student-desktop-welcome #new-account .small{font-size:11px;line-height:1.15}
 .student-desktop-welcome #new-account .check-line{font-size:11px;line-height:1.15}
}

@media(min-width:761px) and (hover:hover) and (pointer:fine){
 .student-desktop-welcome #student-code-form{display:flex;flex-direction:column;flex:1;min-height:0;gap:8px}
 .student-desktop-welcome #student-code-form .entry-primary{width:100%;margin-top:auto}
}
