/* Landing hero only: ILP navy/gold identity treatment, existing data and photo resolver. */
:is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero {
  --passport-navy:#061842;--passport-gold:#d4a017;
  display:grid;grid-template-columns:240px minmax(0,1fr) minmax(220px,300px);gap:0 28px;
  padding:0;overflow:hidden;isolation:isolate;border:1px solid #d8e0eb;border-radius:22px;
  background:#fbfcff;box-shadow:0 14px 32px rgba(6,24,66,.1);
}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-hero .learner-passport-identity-band {
  grid-column:1/-1;grid-row:1;min-width:0;min-height:172px;display:flex;flex-direction:column;justify-content:center;
  padding:30px 32px 30px 268px;background:var(--passport-navy);border-bottom:4px solid var(--passport-gold);
}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-band h2 {margin:0;color:#fff;font-size:clamp(1.8rem,3vw,3.1rem);line-height:1.14;overflow-wrap:anywhere;}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-band p {margin:12px 0 0;color:var(--passport-gold);font-size:1.08rem;font-weight:800;letter-spacing:.12em;overflow-wrap:anywhere;}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero .learner-landing-hero__photo {grid-column:1;grid-row:2;align-self:start;z-index:1;margin:-100px 0 30px 30px;}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero .learner-landing-hero__photo .learner-photo {
  width:200px;height:200px;min-width:0;max-width:100%;border-radius:50%;border:4px solid var(--passport-gold);
  background:var(--passport-navy);color:#fff;font-size:2.6rem;box-shadow:0 12px 24px rgba(6,24,66,.18),0 0 0 5px #fbfcff;
}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero .learner-landing-hero__photo img {object-fit:cover;object-position:center 30%;border-radius:50%;}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-hero .learner-landing-hero__identity {grid-column:2;grid-row:2;padding:28px 0 32px;}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-hero .learner-landing-hero__identity h3 {margin:0 0 12px;color:var(--passport-navy);font-size:1.4rem;line-height:1.25;}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-hero .premium-reference-contact-row {display:grid;gap:10px;margin-top:20px;}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-hero .premium-reference-contact-row a {display:flex;align-items:center;gap:10px;min-width:0;min-height:36px;color:#344b68;font-size:.94rem;line-height:1.5;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere;}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-hero .premium-reference-contact-row a:focus-visible {outline:3px solid #896719;outline-offset:4px;border-radius:4px;}
:is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero .learner-landing-hero__progress {grid-column:3;grid-row:2;margin:28px 30px 32px 0;padding:0 0 0 28px;border-top:0;border-left:1px solid #dce3ec;align-self:start;}
@media(max-width:1050px){
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero {grid-template-columns:190px minmax(0,1fr);gap:0 24px;}
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-hero .learner-passport-identity-band {padding-left:214px;}
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero .learner-landing-hero__photo {margin:-80px 0 24px 24px;}
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero .learner-landing-hero__photo .learner-photo {width:160px;height:160px;}
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-hero .learner-landing-hero__identity {padding-right:24px;padding-bottom:24px;}
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero .learner-landing-hero__progress {grid-column:2;grid-row:3;margin:0 24px 28px 0;padding:20px 0 0;border-left:0;border-top:1px solid #dce3ec;}
}
@media(max-width:600px){
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero {grid-template-columns:minmax(0,1fr);gap:0;}
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-hero .learner-passport-identity-band {padding:28px 20px 96px;text-align:center;min-height:0;}
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero .learner-landing-hero__photo {grid-column:1;grid-row:2;justify-self:center;margin:-68px 0 22px;}
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero .learner-landing-hero__photo .learner-photo {width:136px;height:136px;}
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-hero .learner-landing-hero__identity {grid-column:1;grid-row:3;padding:0 22px 24px;}
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-passport-identity-hero .learner-landing-hero__identity > span {font-size:.95rem;}
  :is(#learnerPortalContent, .parent-learner-mirror) .learner-landing-premium .learner-passport-identity-hero .learner-landing-hero__progress {grid-column:1;grid-row:4;margin:0 22px 28px;padding-top:22px;}
}

/* Standard learner Passport: reference-led learner record hero and assessment cards. */
.lpv2 {--lpv2-navy:#062746;--lpv2-ink:#051b40;--lpv2-gold:#f4ce70;}
.lpv2 *, .lpv2 *::before, .lpv2 *::after {box-sizing:border-box;}
.lpv2 .lpv2-hero {position:relative;isolation:isolate;overflow:hidden;border-radius:26px;background:var(--lpv2-navy);color:white;box-shadow:0 16px 40px #06274618;}
.lpv2 .lpv2-identity {position:relative;z-index:1;padding:42px 44px 36px;width:65%;min-height:350px;}
.lpv2 .lpv2-kicker {font-size:11px;font-weight:800;letter-spacing:2px;color:#9c7523;margin:0 0 16px;}
.lpv2 .lpv2-hero .lpv2-kicker {color:var(--lpv2-gold);margin-bottom:20px;}
.lpv2 .lpv2-identity h2 {font-size:clamp(32px,4vw,58px);font-weight:800;line-height:1.08;letter-spacing:-.025em;margin:0 0 18px;color:#fff;text-transform:capitalize;overflow-wrap:anywhere;}
.lpv2 .lpv2-id-row {min-height:32px;display:flex;align-items:center;gap:12px;color:var(--lpv2-gold);margin:0 0 18px;}
.lpv2 .lpv2-id {color:var(--lpv2-gold);font-size:15px;font-weight:800;letter-spacing:2px;margin:0;}
.lpv2 .lpv2-qualification {font-size:15px;line-height:1.6;color:#fff;margin:0;max-width:50ch;}
.lpv2 .lpv2-tags {display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.lpv2 .lpv2-tags span {padding:7px 12px;border:1px solid #ffffff25;border-radius:30px;background:#ffffff10;font-size:12px;color:#f3f6fa;}
.lpv2 .lpv2-photo {position:absolute;inset:0 0 0 auto;width:48%;z-index:-2;background:#234b68;}
.lpv2 .lpv2-photo .learner-photo {position:absolute;inset:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;border-radius:0;box-shadow:none;background:#234b68;color:#fff;font-size:5rem;overflow:hidden;}
.lpv2 .lpv2-photo img {width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center 50%;border-radius:0;}
.lpv2 .lpv2-hero::after {content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#062746 36%,#062746cc 55%,#06274610 100%);pointer-events:none;}
.lpv2 .lpv2-hero .tfe-achievements-gateway {position:static;display:inline-flex;min-height:40px;width:100%;max-width:100%;padding:0;border:0;border-radius:2px;background:transparent;margin:0;color:var(--lpv2-gold);gap:12px;text-align:left;}
.lpv2 .lpv2-hero .tfe-achievements-gateway small {display:none;}
.lpv2 .lpv2-hero .tfe-achievements-gateway .tfe-rosette {display:block;width:40px;flex:0 0 40px;}
.lpv2 .lpv2-hero .tfe-achievements-gateway .tfe-rosette img {width:100%;height:40px;object-fit:contain;}
.lpv2 .lpv2-hero .tfe-achievements-gateway strong {font-size:15px;color:var(--lpv2-gold);text-transform:uppercase;letter-spacing:1px;}
.lpv2 .lpv2-metrics {position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:24px 36px;background:#001b34bf;border-top:1px solid #ffffff22;}
.lpv2 .lpv2-achievement-metric>dt {display:none;}
.lpv2 .lpv2-achievement-metric>dd {display:flex;}
.lpv2 .lpv2-metrics dt {color:#d9bd7b;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;margin:0 0 7px;}
.lpv2 .lpv2-metrics dd {margin:0;color:#fff;font-size:17px;font-weight:800;line-height:1.45;}
.lpv2 .lpv2-primary {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0 34px;align-items:start;grid-auto-rows:auto;}
.lpv2 .lpv2-card {min-width:0;display:flex;flex-direction:column;padding:24px 22px;min-height:510px;border:1px solid #e0e7ee;border-radius:20px;background:linear-gradient(135deg,#fff,#fcfdff);box-shadow:0 5px 20px #0627460a;color:var(--lpv2-ink);}
.lpv2 .lpv2-card header {display:flex;align-items:center;gap:14px;min-height:82px;padding-bottom:20px;border-bottom:1px solid #e5ebf1;}
.lpv2 .lpv2-icon {display:grid;place-items:center;flex:0 0 52px;height:52px;background:linear-gradient(135deg,#001b40,#073653);border-radius:50%;color:#fff;}
.lpv2 .lpv2-icon svg {width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.7;}
.lpv2 .lpv2-card h3 {font-size:clamp(17px,1.48vw,23px);font-weight:800;letter-spacing:-.035em;line-height:1.3;margin:0 0 5px;color:var(--lpv2-ink);}
.lpv2 .lpv2-card p {font-size:14px;line-height:1.55;margin:0;color:#49607d;}
.lpv2 .lpv2-card-body {flex:1;display:flex;flex-direction:column;gap:26px;padding:26px 0 24px;}
.lpv2 .lpv2-visual-row {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:center;flex:1;}
.lpv2 .lpv2-orbit {position:relative;aspect-ratio:1;min-width:0;width:100%;max-width:210px;margin:auto;color:var(--lpv2-ink);}
.lpv2 .lpv2-orbit>svg {display:block;width:100%;height:100%;transform:rotate(-90deg);overflow:visible;}
.lpv2 .lpv2-orbit circle {fill:none;stroke-width:11;}
.lpv2 .lpv2-orbit-track {stroke:#dce2e8;}
.lpv2 .lpv2-orbit-fill {stroke:#16ad60;stroke-linecap:round;stroke-dasharray:var(--lpv2-value) 100;filter:drop-shadow(0 4px 5px #17ab5d25);}
.lpv2 .lpv2-orbit>div {position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:22px;text-align:center;gap:6px;}
.lpv2 .lpv2-orbit strong {font-size:clamp(32px,3.5vw,52px);font-weight:850;line-height:1;letter-spacing:-.055em;}
.lpv2 .lpv2-orbit em {font-style:normal;font-size:.58em;}
.lpv2 .lpv2-orbit span {font-size:14px;color:#4b6380;line-height:1.3;}
.lpv2 .lpv2-orbit.is-today .lpv2-orbit-track {stroke:#f0e1b8;}
.lpv2 .lpv2-orbit.is-today strong {color:#ae7a13;}
.lpv2 .lpv2-orbit.is-revision .lpv2-orbit-track {stroke:#dce6ef;}
.lpv2 .lpv2-orbit strong svg {width:50px;height:50px;fill:none;stroke:#154773;stroke-width:1.5;}
.lpv2 .lpv2-facts {margin:0;border-left:1px solid #e6ebf1;padding-left:18px;display:grid;gap:22px;}
.lpv2 .lpv2-facts>div {display:flex;gap:10px;align-items:flex-start;}
.lpv2 .lpv2-fact-icon {display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border:1px solid #b8cbd8;color:#0b4966;border-radius:50%;}
.lpv2 .lpv2-fact-icon svg {width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.8;}
.lpv2 .lpv2-facts dt {font-size:16px;font-weight:800;color:var(--lpv2-ink);margin:0 0 5px;}
.lpv2 .lpv2-facts dd {margin:0;color:#4a6180;font-size:13px;line-height:1.5;}
.lpv2 .lpv2-state-copy {min-width:0;min-height:0;}
.lpv2 .lpv2-revision-items {max-height:260px;overflow-y:auto;overscroll-behavior:contain;padding:0 12px 0 22px;scrollbar-color:#9fb4c7 #edf2f6;scrollbar-width:thin;}
.lpv2 .lpv2-revision-items li+li {margin-top:12px;}
.lpv2 .lpv2-card h4 {font-size:16px;font-weight:800;line-height:1.45;margin:0 0 10px;color:var(--lpv2-ink);}
.lpv2 .lpv2-notice {display:flex;gap:14px;align-items:flex-start;border-radius:10px;padding:18px;min-height:116px;}
.lpv2 .lpv2-notice>span {flex:0 0 28px;}
.lpv2 .lpv2-notice svg {width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:1.8;}
.lpv2 .lpv2-notice strong {display:block;font-size:16px;line-height:1.4;margin-bottom:5px;}
.lpv2 .lpv2-notice p {font-size:13px;}
.lpv2 .is-green {background:#edf8f2;color:#078448;}
.lpv2 .is-gold {background:#fcf7e9;color:#936812;}
.lpv2 .is-blue {background:#eff4f9;color:#174e74;}
.lpv2 .lpv2-action,.lpv2 .lpv2-action-status {display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;padding:12px 15px;border:1px solid #dae4ee;border-radius:9px;font-size:12px;font-weight:800;line-height:1.45;text-align:left;}
.lpv2 .lpv2-action {margin-top:auto;background:#eff4f9;color:#062746;cursor:pointer;}
.lpv2 .lpv2-action--gold {background:#fcf7e9;color:#092841;border-color:#eadcb7;}
.lpv2 .lpv2-action-status {margin-top:auto;background:#f5f7fa;color:#637286;font-weight:500;font-size:11px;}
.lpv2 .lpv2-action:hover {filter:brightness(.98);}
.lpv2 .lpv2-action:focus-visible {outline:3px solid #c99a34;outline-offset:4px;}
.lpv2 .lpv2-progress-details {margin-top:auto;}
.lpv2 .lpv2-progress-details summary {list-style:none;}
.lpv2 .lpv2-progress-details summary::-webkit-details-marker {display:none;}
.lpv2 .lpv2-progress-details>div {padding-top:20px;}
.lpv2 .lpv2-progress-details>div p {margin-bottom:12px;}
.lpv2 .lpv2-progress-details>div button {width:100%;margin-top:12px;}
.lpv2 .lpv2-hero .tfe-achievements-gateway:focus-visible {outline:3px solid #c59932;outline-offset:-3px;}
/* Six existing learner front doors; colour variants are scoped to the second row. */
.lpv2 .is-practical {--lpv2-ring:#a7cee9;--lpv2-pastel:#eef6fc;--lpv2-track:#e6f0f8;}
.lpv2 .is-theory {--lpv2-ring:#c2afe3;--lpv2-pastel:#f5f1fb;--lpv2-track:#eee7f7;}
.lpv2 .is-attendance-core {--lpv2-ring:#9ccdb0;--lpv2-pastel:#edf8f1;--lpv2-track:#e1f0e7;}
.lpv2 .lpv2-core-card .lpv2-orbit-track {stroke:var(--lpv2-track);}
.lpv2 .lpv2-core-card .lpv2-orbit-fill {stroke:var(--lpv2-ring);filter:none;}
.lpv2 .lpv2-core-card .lpv2-notice,.lpv2 .lpv2-core-card .lpv2-action {background:var(--lpv2-pastel);color:var(--lpv2-navy);}
.lpv2 .lpv2-hub {position:relative;isolation:isolate;overflow:hidden;min-height:300px;border:1px solid #e0e7ee;border-radius:20px;background:#fff;box-shadow:0 5px 20px #0627460a;}
.lpv2 .lpv2-hub-photo {position:absolute;inset:0 0 0 auto;width:48%;z-index:-1;mask-image:linear-gradient(90deg,transparent,#000 12%);}
.lpv2 .lpv2-hub-photo img {display:block;width:100%;height:100%;object-fit:cover;object-position:center 60%;}
.lpv2 .lpv2-hub-photo::after {content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,#ffffffea 12%,#ffffff65 40%,transparent 76%);}
.lpv2 .lpv2-hub-copy {position:relative;width:60%;padding:44px;}
.lpv2 .lpv2-hub h2 {margin:0 0 16px;color:var(--lpv2-navy);font-size:clamp(28px,3vw,42px);letter-spacing:-.035em;}
.lpv2 .lpv2-hub-copy>p:not(.lpv2-kicker) {max-width:42ch;color:#49607d;font-size:16px;line-height:1.6;margin:0 0 24px;}
.lpv2 .lpv2-hub-action {display:inline-flex;align-items:center;gap:24px;padding:14px 18px;border:1px solid #c5a054;border-radius:9px;background:#ffffffeb;color:var(--lpv2-navy);font-size:12px;font-weight:800;cursor:pointer;}
.lpv2 .lpv2-hub-action span {color:#a97e27;font-size:20px;}
.lpv2 .lpv2-hub-action:hover {background:#fcf7e9;}
.lpv2 .lpv2-hub-action:focus-visible {outline:3px solid #c99a34;outline-offset:4px;}
@media(max-width:1100px) and (min-width:761px){.lpv2 .lpv2-primary{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:760px){.lpv2 .lpv2-primary{grid-auto-rows:auto;}.lpv2 .lpv2-hub-copy{width:100%;padding:28px 24px 190px;}.lpv2 .lpv2-hub-photo{inset:auto 0 0;width:100%;height:200px;mask-image:linear-gradient(180deg,transparent,#000 12%);}.lpv2 .lpv2-hub-photo::after{background:linear-gradient(180deg,#fff 0%,#ffffffb0 20%,transparent 65%);}}
.lpv2 .lpv2-support {margin-top:24px;}
@media(min-width:1600px){.lpv2 .lpv2-identity {min-height:360px;}.lpv2 .lpv2-card {padding:26px;min-height:550px;}.lpv2 .lpv2-card-body {padding-top:30px;gap:32px;}}
@media(max-width:1100px) and (min-width:761px){.lpv2 .lpv2-card {padding:20px 16px;}.lpv2 .lpv2-card header {align-items:flex-start;gap:10px;min-height:102px;}.lpv2 .lpv2-icon {flex-basis:40px;height:40px;}.lpv2 .lpv2-visual-row {grid-template-columns:1fr;gap:20px;align-content:start;}.lpv2 .lpv2-orbit {max-width:160px;}.lpv2 .lpv2-facts {border-left:0;padding-left:0;grid-template-columns:1fr 1fr;gap:10px;}.lpv2 .lpv2-fact-icon {display:none;}.lpv2 .lpv2-state-copy {text-align:center;}.lpv2 .lpv2-notice {padding:14px;gap:10px;min-height:170px;}.lpv2 .lpv2-notice>span {display:none;}.lpv2 .lpv2-primary {gap:12px;}.lpv2 .lpv2-identity {padding:34px;width:70%;}}
@media(max-width:760px){.lpv2 .lpv2-primary {grid-template-columns:minmax(0,1fr);gap:18px;}.lpv2 .lpv2-card {min-height:480px;padding:24px;}.lpv2 .lpv2-card h3 {font-size:21px;}.lpv2 .lpv2-hero {display:flex;flex-direction:column;}.lpv2 .lpv2-identity {padding:28px 24px 24px;width:100%;min-height:0;order:0;}.lpv2 .lpv2-photo {position:relative;inset:auto;width:100%;height:290px;z-index:0;order:1;}.lpv2 .lpv2-photo::after {content:'';position:absolute;inset:0;background:linear-gradient(180deg,#062746 0%,transparent 30%,#06274633 100%);pointer-events:none;}.lpv2 .lpv2-hero::after {display:none;}.lpv2 .lpv2-metrics {order:2;grid-template-columns:1fr;padding:22px 24px;gap:18px;}.lpv2 .lpv2-metrics>div+div {border-top:1px solid #ffffff20;padding-top:14px;}.lpv2 .lpv2-orbit {max-width:180px;}.lpv2 .lpv2-orbit strong {font-size:40px;}.lpv2 .lpv2-id-row {flex-wrap:wrap;}.lpv2 .lpv2-visual-row {gap:14px;}.lpv2 .lpv2-facts {padding-left:14px;}.lpv2 .lpv2-fact-icon {display:none;}.lpv2 .lpv2-card header {min-height:84px;}.lpv2 .lpv2-notice {min-height:112px;}}
@media(prefers-reduced-motion:no-preference){.lpv2 .lpv2-action {transition:filter .18s;}}
/* Override the shared Passport's 22px SVG icon rule only within this pilot. */
:is(#learnerPortalContent, [data-tutor-learner-dashboard]) .lpv2 .lpv2-orbit>svg {width:100%;height:100%;}
:is(#learnerPortalContent, [data-tutor-learner-dashboard]) .lpv2 .lpv2-orbit strong svg {width:50px;height:50px;}
:is(#learnerPortalContent, [data-tutor-learner-dashboard]) .lpv2 .lpv2-icon svg {width:27px;height:27px;}
:is(#learnerPortalContent, [data-tutor-learner-dashboard]) .lpv2 .lpv2-fact-icon svg {width:17px;height:17px;}
:is(#learnerPortalContent, [data-tutor-learner-dashboard]) .lpv2 .lpv2-notice svg {width:28px;height:28px;}

/* Use the existing Ready when you are notice treatment for the daily-dashboard entry. */
.lpv2 .lpv2-teaching-day-action{background:#fcf7e9;color:#936812;border-top:1px solid #eadcb7;text-transform:none}
[data-learner-day-root]{min-width:0;max-width:100%}
[data-learner-day-root]>button{margin-bottom:16px}
[data-learner-day-timeline]{margin-top:16px;min-width:0}

/* The tutor embed does not inherit the learner-page single-column shell. */
#tutorSignoffPanel > [data-tutor-learner-dashboard] {width:100%;min-width:0;}
#tutorSignoffPanel > [data-tutor-learner-dashboard] > .lpv2 {grid-template-columns:minmax(0,1fr);gap:28px;min-width:0;}
/* Preserve the learner shell's contact-row treatment in the tutor embed. */
[data-tutor-learner-dashboard] .lpv2-support .premium-reference-contact-row {display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:18px;color:#344b68;font-weight:750;}
[data-tutor-learner-dashboard] .lpv2-support .premium-reference-contact-row svg {width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;color:#896719;flex-shrink:0;}
[data-tutor-learner-dashboard] .lpv2-support .premium-reference-contact-row i {display:none;}

/* Learner-only ILP shell: shared Passport components, no assessment data feed. */
#learnerPortalContent .learner-premium-ilp {display:grid;grid-template-columns:minmax(0,1fr);gap:28px;width:100%;min-width:0;padding:64px 0 88px;--lpv2-ink:#10263e;--lpv2-navy:#062746;--lpv2-gold:#d9bd7b;}
.learner-premium-ilp .ilp-back {justify-self:start;}
.lpv2.learner-premium-ilp .ilp-hero {background:linear-gradient(110deg,#f7fbff,#dceeff);color:var(--lpv2-ink);}
.lpv2.learner-premium-ilp .ilp-hero::after {background:linear-gradient(90deg,#f5faff 35%,#edf7ffeb 50%,#e2f0ff16 78%);}
.lpv2.learner-premium-ilp .lpv2-identity {width:68%;min-height:360px;}
.lpv2.learner-premium-ilp .lpv2-identity h2 {color:var(--lpv2-ink);font-size:clamp(30px,3.4vw,52px);text-transform:none;}
.lpv2.learner-premium-ilp .lpv2-hero .lpv2-kicker {color:#2866a5;}
.lpv2.learner-premium-ilp .lpv2-qualification {color:#344f70;max-width:42ch;}
.learner-premium-ilp .ilp-learner-name {font-size:20px;font-weight:750;margin:0 0 8px;color:#173a5e;}
.learner-premium-ilp .ilp-layout {display:grid;grid-template-columns:minmax(0,2.2fr) minmax(260px,1fr);gap:24px;align-items:start;}
.learner-premium-ilp .ilp-main,.learner-premium-ilp .ilp-sidebar {display:grid;gap:24px;min-width:0;}
.lpv2.learner-premium-ilp .lpv2-card {min-height:0;padding:28px;}
.lpv2.learner-premium-ilp .ilp-summary {display:grid;grid-template-columns:160px minmax(0,1fr);gap:28px;align-items:center;}
.lpv2.learner-premium-ilp .ilp-summary .lpv2-orbit {width:160px;}
.lpv2.learner-premium-ilp .ilp-summary .lpv2-orbit span {font-size:12px;}
.lpv2.learner-premium-ilp .ilp-summary h3 {margin:0 0 12px;}
.lpv2.learner-premium-ilp .ilp-summary .lpv2-kicker {font-size:10px;letter-spacing:1.5px;color:#2866a5;margin-bottom:10px;}
.lpv2.learner-premium-ilp .ilp-unavailable {margin-top:16px;font-size:12px;color:#597087;}
.lpv2.learner-premium-ilp .lpv2-card header {min-height:0;}
.learner-premium-ilp .ilp-empty {display:flex;flex-direction:column;align-items:center;text-align:center;padding:44px 12px;gap:16px;}
.learner-premium-ilp .ilp-empty h4 {margin:0;font-size:20px;color:#173a5e;}
.learner-premium-ilp .ilp-empty p {max-width:44ch;}
.learner-premium-ilp .ilp-empty-icon {display:grid;place-items:center;width:64px;height:64px;background:#ecf5ff;border-radius:18px;color:#356b9d;}
.learner-premium-ilp .ilp-empty-icon svg {width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.7;}
.learner-premium-ilp .ilp-pending {font-size:12px;font-weight:650;background:#f0f5fa;color:#526b81;padding:8px 14px;border-radius:30px;}
.learner-premium-ilp .ilp-status-guide {list-style:none;padding:22px 0;margin:0;display:grid;gap:14px;}
.learner-premium-ilp .ilp-state {display:inline-flex;padding:9px 14px;border-radius:12px;font-size:14px;font-weight:700;}
.learner-premium-ilp .ilp-state.is-achieved {color:#16774b;background:#e8f8ed;}
.learner-premium-ilp .ilp-state.is-progress {color:#925809;background:#fff4df;}
.learner-premium-ilp .ilp-state.is-revision {color:#b53857;background:#fff0f4;}
.learner-premium-ilp .ilp-state.is-pending {color:#526b81;background:#edf2f7;}
.learner-premium-ilp .ilp-future-actions {display:grid;gap:12px;margin:22px 0;}
.lpv2.learner-premium-ilp .ilp-future-actions button {margin:0;border-radius:10px;cursor:not-allowed;opacity:.65;width:100%;}
@media(max-width:1050px){.learner-premium-ilp .ilp-layout{grid-template-columns:minmax(0,1fr);}.learner-premium-ilp .ilp-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:760px){.lpv2.learner-premium-ilp .lpv2-identity{width:100%;min-height:0;padding:28px 24px;}.lpv2.learner-premium-ilp .lpv2-photo{background:#e2f0ff;}.lpv2.learner-premium-ilp .lpv2-photo::after{background:linear-gradient(180deg,#edf7ff,transparent 35%);}.learner-premium-ilp .ilp-sidebar{grid-template-columns:minmax(0,1fr);}.lpv2.learner-premium-ilp .ilp-summary{grid-template-columns:minmax(0,1fr);gap:20px;text-align:center;}.lpv2.learner-premium-ilp .lpv2-card{padding:24px;}.learner-premium-ilp .ilp-empty{padding:32px 0;}}
