:root{--ink:#102a36;--gold:#dfbd75;--paper:#faf7ee}*{box-sizing:border-box}body.workspace{margin:0;background:var(--paper);color:var(--ink);font:17px/1.5 system-ui}body.workspace header{display:flex;align-items:center;gap:22px;padding:18px 6%;background:var(--ink);color:white}body.workspace header a{color:inherit;text-decoration:none}body.workspace main{max-width:1060px;margin:30px auto;padding:0 22px}h1{font-family:Georgia,serif;font-weight:500}button,.button{font:inherit;border:0;border-radius:9px;background:var(--ink);color:white;padding:10px 18px;cursor:pointer}button:disabled{opacity:.6;cursor:wait}input,select,textarea{font:inherit;width:100%;padding:9px 11px;border:1px solid #a2b0b4;border-radius:7px;background:white}label{display:block;font-size:14px}form.compact{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;align-items:end;background:white;border:1px solid #dce0dc;border-radius:14px;padding:20px;margin:16px 0}section.panel{background:white;border:1px solid #dce0dc;border-radius:14px;padding:22px;margin:18px 0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.card{background:white;border:1px solid #bdcaca;border-radius:12px;padding:22px;color:var(--ink);text-align:left}.card strong{display:block;font-size:21px}.message{min-height:24px;color:#8d2720;white-space:pre-wrap}table{border-collapse:collapse;width:100%}th,td{padding:10px;border-bottom:1px solid #dde3e4;text-align:left}pre{white-space:pre-wrap;overflow-wrap:anywhere}.topbar{padding-right:95px!important}.matless-stage{--reveal:1}.reveal-ui{visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important}.matless-rotate{display:none!important}.brand-name{font-family:Georgia,serif}a[data-app-link]{text-decoration:none}.home-login{position:fixed;top:16px;left:18px;z-index:99}.matless-film{pointer-events:none}@media(max-width:700px){.matless-stage{position:relative;left:0;top:0;transform:none;width:100%;min-height:100dvh;aspect-ratio:auto;container-type:normal}.matless-background{width:100%;height:100%;object-fit:cover;opacity:.55}.matless-film{display:none}.matless-stage .brand{position:relative;top:auto;left:auto;right:auto;padding:60px 20px 25px;transform:none;width:auto;text-align:center}.matless-stage .brand-name{font-size:40px}.matless-stage .brand-tagline{font-size:20px}.matless-stage .brand-subline{font-size:14px}.matless-stage .reveal-ui{position:relative;inset:auto;padding:0 18px 28px}.matless-stage .role-cards{position:relative;inset:auto;width:auto;gap:10px}.matless-stage .role-card{min-height:65px;height:auto;padding:12px;gap:10px}.matless-stage .role-icon{width:35px;height:35px}.matless-stage .role-copy strong{font-size:18px}.matless-stage .role-copy small{font-size:13px}.matless-stage .arrow{font-size:22px}.matless-stage .info-menu{position:relative;inset:auto;display:flex;flex-wrap:wrap;gap:14px;margin-top:25px;font-size:12px}html body:has(.matless-stage){height:auto;overflow:auto}.workspace header{flex-wrap:wrap}form.compact{grid-template-columns:1fr}}
.matless-stage{--reveal:1!important;display:block!important}.matless-stage .reveal-ui{filter:none!important}.matless-stage .role-card{backdrop-filter:blur(8px)}
@media(max-width:700px){.matless-stage .role-card{grid-template-columns:35px 1fr 18px;border-radius:10px}.matless-stage .role-icon svg{width:30px;height:30px}.matless-stage .practice-card .role-copy strong{font-size:18px}.matless-stage .info-menu{width:auto}.matless-stage .info-menu a{font-size:12px}.matless-stage .brand-symbol{font-size:18px}.matless-stage .right-scrim{width:100%;background:rgba(0,0,0,.45)}}

/* Author display:grid must not reveal forms carrying the hidden attribute. */
body.workspace [hidden]{display:none!important}
#school-enrol>div{grid-column:1/-1;overflow-wrap:anywhere}
#school-enrol p{margin:.3rem 0 .8rem}

/* Separate information and account links; retain the existing scene and card animation. */
.matless-stage .role-with-login{position:relative;grid-template-columns:minmax(0,1fr) auto;gap:.7cqw;padding:0 .8cqw 0 0}
.matless-stage .role-info{display:grid;grid-template-columns:3cqw minmax(0,1fr) 1cqw;align-items:center;gap:.7cqw;align-self:stretch;padding:0 0 0 1.4cqw;color:inherit;text-decoration:none;min-width:0;border-radius:inherit}
.matless-stage .role-login{position:relative;display:flex;align-items:center;justify-content:center;padding:.55cqw .55cqw;max-width:7.8cqw;border:1px solid rgba(236,213,162,.28);border-radius:.45cqw;background:rgba(246,241,231,.045);color:rgba(246,241,231,.9);font:inherit;font-size:.9cqw;line-height:1.2;text-align:center;text-decoration:none;transition:background .2s,border-color .2s}
.matless-stage .role-login:hover{background:rgba(246,241,231,.12);border-color:rgba(236,213,162,.65)}
.matless-stage .role-info:focus-visible,.matless-stage .role-login:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.auth-links{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.8rem;font-size:.85rem;font-weight:400}
.topnav .auth-links{padding-left:.8rem;border-left:1px solid #b6a77c55}
.topbar>.topnav{min-width:0;flex:1 1 420px;justify-content:flex-end;flex-wrap:wrap}
.topnav .auth-links a{display:inline-block!important}
.student-public{--ink:#f7f3e9}
.auth-links a{color:inherit!important;background:transparent!important;text-decoration:none;border-bottom:1px solid currentColor;border-radius:0!important;padding:.25rem 0!important;line-height:1.4;opacity:.85}
.auth-links a:hover,.auth-links a:focus-visible{opacity:1}
.auth-links a:focus-visible,.registration-entry summary:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.registration-entry{margin:1.2rem 0;padding:.8rem 0;border-top:1px solid #a2b0b455;scroll-margin-top:1rem}
.registration-entry summary{cursor:pointer;font-size:.95rem}
.registration-link{font-size:.95rem}.registration-link a{color:inherit;text-underline-offset:3px}
.auth-choices h2{font-size:1.2rem;margin-top:0}.auth-choices a{color:var(--ink)}
@media(max-width:700px){
  .matless-stage .role-with-login{grid-template-columns:minmax(0,1fr) auto;padding:0 10px 0 0;gap:8px}
  .matless-stage .role-info{grid-template-columns:30px minmax(0,1fr) 12px;gap:8px;padding:12px 0 12px 12px}
  .matless-stage .role-login{font-size:12px;max-width:88px;min-height:36px;padding:7px 8px;border-radius:6px}
  .matless-stage .role-info .role-copy strong{font-size:clamp(14px,4vw,18px)}
  .matless-stage .role-info .role-copy small{font-size:12px}
  .topnav .auth-links{padding-left:0;border-left:0}
  .student-public .topbar{height:auto;min-height:92px;flex-wrap:wrap;padding:16px 18px 12px!important;gap:12px}
  .student-public .brand{padding-right:90px}
  .student-public .topnav{flex-basis:100%;justify-content:space-between;gap:12px}
  .student-public .student-entry{padding-top:155px}
}
