
/* Member-only functional additions. Baseline selectors are not redefined. */
.member-toolbar{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:30px}.member-account{text-align:right;color:#536170}.member-account strong{display:block;color:var(--navy-deep);font-size:18px}.member-account a{font-size:14px}.member-alert{padding:14px 18px;margin-bottom:20px;border:1px solid #d9e6ef;border-radius:10px;background:#fff}.member-alert.success{border-color:#9ac9b0;background:#f3fbf6}.member-alert.error{border-color:#efb8bd;background:#fff8f8}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.dashboard-card{display:block;padding:26px;border:1px solid #dbe5ed;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.dashboard-card strong{display:block;margin-bottom:8px;color:var(--navy-deep);font-size:20px}.dashboard-card span{color:var(--text-sub)}.member-panel{padding:30px;border:1px solid #dbe5ed;border-radius:var(--radius);background:#fff}.member-table-wrap{overflow:auto}.member-table{width:100%;border-collapse:collapse}.member-table th,.member-table td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.forum-topic{padding:22px 0;border-bottom:1px solid var(--line)}.forum-reply{margin:16px 0 0 28px;padding:16px;border-left:3px solid #dbe5ed;background:#f8fbfd}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-columns .span-2{grid-column:1/-1}.member-panel input,.member-panel select,.member-panel textarea{width:100%;padding:12px 14px;border:1px solid #cfdbe4;border-radius:8px;font:inherit}.member-panel textarea{min-height:120px}.member-panel label{display:block;margin-bottom:7px;font-weight:600;color:var(--navy-deep)}.member-panel .button{margin-top:12px}.member-topbar{margin-bottom:20px;color:#536170}.document-list{display:grid;gap:12px}.document-item{display:flex;gap:16px;align-items:center;padding:16px;border:1px solid #dbe5ed;border-radius:10px;background:#fff}.document-item strong{display:block;color:var(--navy-deep)}.doc-type{font-weight:700;color:var(--jaspa-red)}.doc-arrow{margin-left:auto}.library-notice{margin-bottom:20px;padding:14px 18px;background:#f5faff;border:1px solid #d9e6ef;border-radius:10px}.year-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.year-nav button{padding:8px 14px;border:1px solid #dbe5ed;background:#fff;border-radius:999px}.year-nav button.is-active{background:var(--navy-deep);color:#fff}.library-year{display:none}.library-year.is-active{display:block}@media(max-width:720px){.dashboard-grid,.form-columns{grid-template-columns:1fr}.form-columns .span-2{grid-column:auto}.member-toolbar{display:block}.member-account{text-align:left;margin-top:12px}}

/* Functional controls use the same visual language as the baseline .button components. */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border:1px solid var(--navy);border-radius:999px;background:var(--navy);color:#fff;font:inherit;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background-color .2s ease,color .2s ease}.btn:hover{transform:translateY(-2px);background:var(--navy-deep);color:#fff}.btn.btn-secondary{background:#fff;color:var(--navy);border-color:#cbd9e5}.btn.btn-secondary:hover{border-color:var(--navy);background:#fff;color:var(--navy)}
.hp-field{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* Registration form alignment (v5.0.1) */
.login-card .member-type-options{
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:10px 28px;
  margin-top:10px;
}
.login-card .member-type-options label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0;
  color:var(--text);
  font-weight:500;
  line-height:1.5;
  white-space:nowrap;
  cursor:pointer;
}
.login-card .member-type-options input[type="radio"]{
  flex:0 0 auto;
  width:18px;
  height:18px;
  margin:0;
  padding:0;
  vertical-align:middle;
  accent-color:var(--jaspa-red);
}
.login-card label.consent{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:0;
  color:var(--text);
  font-weight:400;
  line-height:1.7;
  cursor:pointer;
}
.login-card label.consent input[type="checkbox"]{
  flex:0 0 auto;
  width:18px;
  height:18px;
  margin:4px 0 0;
  padding:0;
  vertical-align:top;
  accent-color:var(--jaspa-red);
}
.login-card label.consent span{
  display:block;
  min-width:0;
}
@media(max-width:720px){
  .login-card .member-type-options{
    flex-wrap:wrap;
    gap:10px 20px;
  }
}


/* Member function navigation */
.member-function-nav{border-top:1px solid #e6edf2;border-bottom:1px solid #dbe5ed;background:#fff}.member-function-nav ul{display:flex;align-items:center;gap:0;margin:0;padding:0;list-style:none;overflow-x:auto;white-space:nowrap}.member-function-nav li{margin:0}.member-function-nav a{display:block;padding:12px 16px;color:var(--navy-deep);font-size:14px;font-weight:600;text-decoration:none}.member-function-nav a:hover,.member-function-nav a:focus{background:#f4f8fb;color:var(--jaspa-red)}@media(max-width:720px){.member-function-nav a{padding:11px 13px;font-size:13px}}


/* Recruitment hub (v5.2.0) */
.recruitment-member-card{display:flex;flex-direction:column;align-items:flex-start}.recruitment-member-card>span{display:block;min-height:3.2em}.member-card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.member-card-actions .btn{margin:0}@media(max-width:720px){.recruitment-member-card>span{min-height:0}.member-card-actions{width:100%}.member-card-actions .btn{width:100%}}
/* v5.4.0 submission lifecycle controls */
.jaspa-submission-actions{align-items:center}
.btn.btn-danger{background:#fff;border-color:#b42318;color:#b42318}
.btn.btn-danger:hover,.btn.btn-danger:focus{background:#fff1f0;border-color:#912018;color:#912018}
#my-submissions{scroll-margin-top:150px}
