.student-web{
  --orange:#215da9;
  --orange-dark:#173c70;
  --cream:#eaf1fb;
  --ink:#112641;
  --muted:#53647a;
  --line:#dce5f1;
  --blue:#215da9;
  --shadow:0 8px 30px rgba(25,60,111,.07);
  background:#f2f5f9;
}
.student-web .topbar{
  background:#fff;
  border-color:#dce5f1;
}
.student-web .brand{color:#173c70;min-width:0}
.student-web .brand strong{font-size:17px;letter-spacing:0}
.student-web .brand small{color:#53647a}
.student-brand-mark{object-fit:contain;border-radius:9px;flex:none}
.student-web .header-actions{min-width:0}
.student-web #headerLogin{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.student-web .bottom-nav{background:#fff;border-color:#dce5f1;gap:clamp(12px,7vw,92px)}
.student-web .bottom-nav button{min-width:62px;color:#53647a}
.student-web .bottom-nav button i{font-size:16px}
.student-web .bottom-nav button.active{color:#173c70}
.student-web .legal-footer{background:#173c70;color:#edf4ff;border-color:#173c70}
.student-web .legal-footer a{color:inherit}
.student-web .login-dialog,.student-web .invoice-dialog{border-color:#dce5f1;border-radius:14px}
.student-web :is(input,select,textarea):focus-visible,.student-web button:focus-visible,.student-web a:focus-visible{
  outline:2px solid #3174be;outline-offset:2px;
}
.student-web :is(.page-hero,.jobs-hero,.profile-hero){
  background:#fff;color:#173c70;border:1px solid #dce5f1;border-radius:13px;
}
.student-web :is(.page-hero,.jobs-hero,.profile-hero) p{color:#53647a}
.student-web .student-redirect{padding:28px 16px;text-align:center}
.student-web .student-redirect a{color:#205ba7}
.student-web #sourceView .sr2,.student-web #statusContent .sr2{
  --sr2-blue:#205ba7;--sr2-line:#dce5f1;color:#142744
}
.student-web #sourceView .sr2-card,.student-web #statusContent .sr2-card{
  border:1px solid #dce5f1;border-radius:12px
}
.student-web :is(#sourceView,#statusContent) .sr2 button{
  border-color:#d4e0ef;color:#163b72;border-radius:9px
}
.student-web :is(#sourceView,#statusContent) .sr2 button.primary{
  background:#215da9;border-color:#215da9;color:#fff
}
.student-web :is(#sourceView,#statusContent) .sr2 button.primary:disabled{opacity:.56}
.student-web #sourceView .sr2 input:not([type=checkbox]),.student-web #sourceView .sr2 select,
.student-web #sourceView .sr2 textarea,.student-web #statusContent .sr2 input:not([type=checkbox]),
.student-web #statusContent .sr2 select,.student-web #statusContent .sr2 textarea{
  background:#fcfdff;border-color:#d2deed;border-radius:8px;color:#122743
}
.student-web :is(#sourceView,#statusContent) .sr2 label{color:#273c59}
.student-web :is(#sourceView,#statusContent) .sr2-class-card{
  background:#edf4fe;border-color:#dae7f7
}
.student-web :is(#sourceView,#statusContent) .sr2-class-card i{color:#215da9}
.student-web :is(#sourceView,#statusContent) .sr2 h3{color:#163b72}
.student-web .source-entry-state{padding-inline:18px}
.student-web .source-web-toolbar{border-bottom-color:#dce5f1}
.student-web .source-web-toolbar h1{color:#173c70}
.student-web .student-stepper{
  list-style:none;margin:14px 0;padding:14px 0;display:grid;grid-template-columns:repeat(3,1fr);
  position:relative;background:#fff;border:1px solid #dce5f1;border-radius:10px;
  scroll-margin-top:80px
}
.student-web .student-stepper::before{
  content:"";position:absolute;left:16.66%;right:16.66%;top:29px;height:1px;background:#dce5f1
}
.student-web .student-stepper li{position:relative;display:grid;justify-items:center;gap:6px;color:#52647c;text-align:center;font-size:13px}
.student-web .student-stepper li span{
  display:grid;place-items:center;min-width:30px;min-height:30px;background:#edf2f8;border-radius:50%;
  color:#53647a;font-weight:700;
}
.student-web .student-stepper li[aria-current=step]{color:#173c70}
.student-web .student-stepper li[aria-current=step] span{background:#215da9;color:#fff}
.student-web .student-stepper li.done span{background:#dceafb;color:#173c70}
.student-web .student-stage-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 20px;justify-content:flex-end}
.student-web .student-stage-notice{width:100%;color:#805a22;line-height:1.55}
.student-web .student-stage-notice:empty{display:none}
.student-web .student-confirm-summary{color:#53647a}
.student-web .student-receipt{
  border-top:4px solid #215da9!important;display:grid;gap:8px;justify-items:start;
}
.student-web .student-receipt h2,.student-web .student-receipt p{margin:0}
.student-web .sr2 [hidden]{display:none!important}
@media(max-width:500px){
  .student-web .brand{gap:8px}
  .student-web .brand strong{font-size:14px;white-space:normal}
  .student-web .brand small{font-size:11px}
  .student-brand-mark{width:34px;height:34px}
  .student-web .header-actions{flex-shrink:0}
  .student-web .training-test-badge{max-width:104px;font-size:10px}
  .student-web .source-entry-state{padding-inline:12px}
  .student-web .bottom-nav{gap:12px}
  .student-web .bottom-nav button{min-width:54px}
  .student-web :is(#sourceView,#statusContent) .sr2-card{padding:16px}
}
@media(max-width:600px){
  .student-web:has(#catalogView.active){padding-bottom:env(safe-area-inset-bottom)}
  .student-web:has(#catalogView.active) :is(.topbar,.bottom-nav,.legal-footer){display:none}
}
.student-web .bottom-nav button{display:grid;justify-items:center;align-content:center;gap:5px;line-height:1.15}
html:has(.student-web){scroll-padding-bottom:calc(80px + env(safe-area-inset-bottom))}

.student-web .student-identity-capture{
  margin:18px 0 14px;
  padding:16px;
  border:1px solid #dce5f1;
  border-radius:12px;
  background:#f6f9fe;
}
.student-web .student-identity-capture h4{
  margin:0 0 6px;
  color:#173c70;
  font-size:17px;
}
.student-web .student-identity-hint{
  margin:0 0 10px;
  color:#53647a;
  font-size:13px;
  line-height:1.55;
}
.student-web .sr2 .student-identity-consent{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:7px;
  margin:12px 0;
  color:#273c59;
  font-size:13px;
  line-height:1.55;
}
.student-web .student-identity-consent input{margin:3px 0 0;accent-color:#205ba7}
.student-web .student-identity-consent a{color:#205ba7}
.student-web .student-identity-sides{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.student-web .student-identity-side{
  min-width:0;
  padding:13px;
  border:1px solid #dce5f1;
  border-radius:9px;
  background:#fff;
}
.student-web .student-identity-side strong{color:#173c70;font-size:14px;line-height:1.5}
.student-web .student-identity-side-status{
  min-height:20px;
  margin:4px 0 9px;
  color:#53647a;
  font-size:13px;
  line-height:1.5;
  overflow-wrap:anywhere;
}
.student-web .student-identity-side-status[data-state="error"]{color:#a63838}
.student-web .student-identity-side-status[data-state="ready"]{color:#187451;font-weight:650}
.student-web .student-identity-photo-actions{display:flex;flex-wrap:wrap;gap:6px}
.student-web .sr2 .student-identity-picker,
.student-web .sr2 .student-identity-existing-camera{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  max-width:100%;
  padding:6px 10px;
  border:1px solid #d2deed;
  border-radius:8px;
  background:#fff;
  color:#205ba7;
  font-size:13px;
  font-weight:650;
}
.student-web .sr2 .student-identity-existing-camera{margin-top:5px}
.student-web .student-identity-picker input[type="file"],
.student-web .student-identity-existing-camera input[type="file"]{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  min-width:0;
  opacity:0;
  cursor:pointer;
}
.student-web .student-identity-picker:has(input:disabled),
.student-web .student-identity-existing-camera:has(input:disabled){opacity:.6}
.student-web .student-identity-picker:focus-within,
.student-web .student-identity-existing-camera:focus-within{outline:2px solid #3174be;outline-offset:2px}
.student-web .student-identity-summary{margin-top:10px}
.student-web .student-identity-summary p:last-child{margin-bottom:0}
.student-web .student-identity-values{
  padding:10px;
  border:1px solid #dce5f1;
  border-radius:9px;
  background:#fff;
}
.student-web .student-identity-values summary{color:#205ba7;cursor:pointer;font-weight:650}
.student-web .student-identity-values dl{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px 12px;
  margin:10px 0;
}
.student-web .student-identity-values dl div{min-width:0}
.student-web .student-identity-values dt{color:#53647a;font-size:12px}
.student-web .student-identity-values dd{margin:2px 0 0;overflow-wrap:anywhere;font-size:14px}
.student-web .sr2 form[data-sr-person-form] input[readonly]{
  background:#f0f4f9;
  color:#425672;
}
@media(max-width:500px){
  .student-web .student-identity-capture{padding:12px}
  .student-web .student-identity-sides{grid-template-columns:1fr}
}
