:root{--green:#0f3b2a;--green-2:#15553d;--gold:#b7832f;--ink:#13211c;--paper:#fbfdfb;--soft:#eef5f1;--line:#dfe8e3;--muted:#53645c;--error:#a13b2a;--shadow:0 12px 30px rgba(15,59,42,.09)}
.auth-status,.live-summary{max-width:1340px;margin:1rem auto 0;padding:1rem clamp(1rem,4vw,3rem);border:1px solid var(--line);border-radius:.6rem;background:var(--soft)}.auth-status.auth-failure{border-color:var(--error);color:#7d2016}.live-summary{background:#fff;border-left:4px solid var(--green)}
.learner-live-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.learner-card-grid{display:grid;gap:.75rem}.learner-live-card{border:1px solid var(--line);border-radius:.55rem;padding:1rem;background:var(--soft);min-width:0;overflow-wrap:anywhere}#learning-reviewer-preview-body{overflow-wrap:anywhere}.learner-live-card h4{margin:0 0 .5rem;overflow-wrap:anywhere}.learner-live-card dl{display:grid;grid-template-columns:max-content 1fr;gap:.25rem .7rem;margin:0}.learner-live-card dt{font-weight:700}.learner-live-card dd{margin:0;overflow-wrap:anywhere}@media(max-width:700px){.learner-live-grid{grid-template-columns:1fr}.learner-live-card dl{grid-template-columns:1fr}.learner-live-card dd{margin-bottom:.35rem}}
.training-boundary{padding:.7rem .85rem;background:#fff5df;border:1px solid #dfbf78;border-radius:.4rem}.practice-error{color:#7d2016;font-weight:700}.practice-receipt{display:grid;grid-template-columns:max-content 1fr;gap:.3rem .8rem;padding:.8rem;background:var(--soft);border-radius:.4rem}.practice-receipt div{display:contents}.practice-receipt dt{font-weight:800}.practice-receipt dd{margin:0;overflow-wrap:anywhere}
.locale-picker{display:inline-flex;align-items:center;gap:.35rem;color:var(--ink);font-size:.85rem;font-weight:750}.locale-picker select{max-width:10rem;padding:.45rem;border:1px solid var(--green);border-radius:.35rem;background:#fff;color:var(--ink);font:inherit}.locale-picker select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.scenario-panel{margin:1rem auto;max-width:1180px}.scenario-panel .course-card{display:flex;flex-direction:column;align-items:flex-start}.scenario-panel .course-card .button{margin-top:auto}
.practice-task{display:grid;gap:.8rem;margin:1rem 0;padding:1rem;border:1px solid var(--line);border-radius:.55rem;background:var(--soft)}.practice-task h3,.practice-task p{margin:0}.practice-field{display:grid;gap:.25rem;font-weight:750}.practice-field input,.practice-field select{max-width:34rem;padding:.6rem .7rem;border:1px solid var(--green);border-radius:.35rem;background:#fff;color:var(--ink);font:inherit}.practice-field input:focus-visible,.practice-field select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.practice-task details{padding:.65rem .75rem;border:1px solid var(--line);border-radius:.35rem;background:#fff}.practice-task summary{color:var(--green);font-weight:800;cursor:pointer}.practice-journey{width:100%;padding:1rem;border-left:4px solid var(--green);background:var(--soft);border-radius:.35rem}.practice-journey h3{margin:0 0 .5rem}.practice-journey ol{margin:0;padding-left:1.4rem}.practice-journey li{color:var(--muted)}.practice-journey li.complete{color:var(--green);font-weight:800}.practice-journey li.current{color:var(--ink);font-weight:800}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif}.skip-link{position:absolute;left:1rem;top:-4rem;background:var(--paper);color:var(--green);padding:.65rem 1rem;z-index:10;border:2px solid var(--green);border-radius:.4rem}.skip-link:focus{top:1rem}.prototype-banner{background:var(--green);color:#fff;text-align:center;padding:.58rem 1rem;font-size:.9rem}.site-header{min-height:76px;display:flex;align-items:center;gap:2rem;padding:1rem clamp(1rem,4vw,4.5rem);border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;align-items:center;gap:.7rem;color:var(--ink);text-decoration:none;min-width:max-content}.brand img{width:40px;height:40px}.brand span,.profile span{display:grid;line-height:1.08}.brand small,.profile small{font-size:.73rem;color:var(--muted);margin-top:.25rem}.site-header nav{display:flex;gap:.2rem;margin-right:auto}.site-header nav a{padding:.45rem .7rem;color:var(--ink);text-decoration:none;border-radius:.35rem}.site-header nav a:hover,.site-header nav a:focus,.site-header nav .active{background:var(--soft);color:var(--green);font-weight:700}.profile{display:flex;align-items:center;gap:.6rem;font-size:.85rem}.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--gold);color:#fff;font-weight:800}.hero{background:linear-gradient(120deg,var(--soft),#fff 58%);padding:clamp(2.5rem,6vw,5.5rem) clamp(1rem,8vw,10rem);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,.6fr);gap:3rem;align-items:center;border-bottom:1px solid var(--line)}.hero h1{font-size:clamp(2.1rem,4.5vw,4rem);line-height:1.08;letter-spacing:-.04em;max-width:17ch;margin:.1rem 0 1rem}.hero p{max-width:62ch;color:#314239}.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:.72rem;font-weight:800;color:var(--green);margin:0 0 .45rem}.progress-summary{background:#fff;border:1px solid var(--line);border-radius:.8rem;padding:1.5rem;box-shadow:var(--shadow);position:relative}.progress-summary p{margin:0;color:var(--muted)}.progress-summary strong{font-size:2.6rem;line-height:1.2}.status-dot{position:absolute;right:1.3rem;top:1.3rem;width:.7rem;height:.7rem;border-radius:50%;background:var(--gold)}.progress{height:.65rem;background:var(--soft);border-radius:99px;overflow:hidden;margin:.7rem 0}.progress span{display:block;height:100%;background:var(--green)}.progress-summary small{color:var(--muted)}.layout{max-width:1340px;margin:auto;padding:clamp(2rem,5vw,4.5rem) clamp(1rem,4vw,3rem);display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:2rem}.primary-column{display:grid;gap:2.7rem}.sidebar{display:grid;align-content:start;gap:1rem}.panel,.course-feature,.course-card,.feedback-panel{border:1px solid var(--line);border-radius:.8rem;background:#fff}.targeting{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.25rem 1.5rem;background:var(--soft)}h2{font-size:1.45rem;line-height:1.2;margin:.1rem 0 .5rem}h3{font-size:1.15rem;line-height:1.25;margin:.25rem 0 .5rem}p{margin:.35rem 0 1rem}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.section-heading a,.evidence-card a{color:var(--green);font-weight:700}.pill{font-size:.72rem;line-height:1;padding:.38rem .55rem;border:1px solid var(--line);border-radius:99px;color:#365146;white-space:nowrap}.pill.current{background:#fff5df;border-color:#dfbf78;color:#694b11}.course-feature{padding:1.5rem;display:grid;grid-template-columns:52px 1fr;gap:1.15rem;box-shadow:var(--shadow);border-left:5px solid var(--gold)}.course-number{width:42px;height:42px;display:grid;place-items:center;border-radius:.45rem;background:var(--green);color:#fff;font-weight:800;font-size:1.15rem}.course-feature h3{font-size:1.45rem}.course-meta{display:flex;gap:.7rem;flex-wrap:wrap;color:var(--muted);font-size:.83rem}.course-meta span:not(:last-child)::after{content:"";display:inline-block;height:.8rem;border-left:1px solid var(--line);margin-left:.7rem;vertical-align:middle}.button-row{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.3rem}.button{display:inline-block;border:2px solid var(--green);background:var(--green);color:#fff;padding:.64rem .9rem;border-radius:.4rem;font:inherit;font-weight:750;cursor:pointer;text-decoration:none}.button:hover{background:var(--green-2);border-color:var(--green-2)}.button:focus-visible,.text-button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.button.secondary{background:#fff;color:var(--green)}.button.secondary:hover{background:var(--soft)}.text-button{border:0;background:none;padding:.3rem;color:var(--green);font:inherit;font-weight:800;text-align:left;cursor:pointer}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.course-card{padding:1.15rem;min-height:200px;display:flex;flex-direction:column}.course-card p{color:#405249}.course-card small{margin-top:auto;color:var(--muted)}.card-top{display:flex;justify-content:space-between;align-items:center}.icon-circle{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--soft);color:var(--green);font-weight:800}.complete .icon-circle{background:var(--green);color:#fff}.active-card{border-color:#d1ad62;box-shadow:0 5px 18px rgba(183,131,47,.12)}.feedback-panel{padding:1.5rem;display:flex;justify-content:space-between;gap:2rem;align-items:center;background:var(--green);color:#fff}.feedback-panel .eyebrow{color:#f6d89b}.feedback-panel h2{max-width:27ch}.feedback-panel p{max-width:68ch;color:#e4eee8}.feedback-panel .secondary{border-color:#fff}.coach-card,.sidebar .panel{padding:1.25rem}.coach-card{border-top:4px solid var(--gold)}.coach-card p,.sidebar .panel>p:not(.eyebrow){color:#405249}.evidence-card ul{padding-left:1.2rem;margin:.6rem 0 1rem}.evidence-card li{margin:.35rem 0}.notice{max-width:1340px;margin:0 auto 4rem;padding:1.5rem clamp(1rem,4vw,3rem);background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.notice p{max-width:75ch}footer{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.5rem clamp(1rem,4vw,4.5rem);background:var(--ink);color:#e4eee8;font-size:.82rem}dialog{max-width:680px;width:calc(100% - 2rem);border:1px solid var(--line);border-radius:.8rem;box-shadow:0 20px 60px rgba(0,0,0,.28);color:var(--ink);padding:0}dialog::backdrop{background:rgba(19,33,28,.62)}dialog form{padding:clamp(1.35rem,4vw,2.25rem);position:relative}.dialog-close{position:absolute;right:1rem;top:1rem;border:0;border-radius:50%;background:var(--soft);width:32px;height:32px;font-size:1.55rem;line-height:1;cursor:pointer;color:var(--ink)}.steps{padding-left:1.35rem}.steps li{margin:.8rem 0}.steps code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:var(--soft);padding:.08rem .25rem;border-radius:.2rem}.callout{padding:1rem;border-left:4px solid var(--gold);background:#fff8e8}.selection-list{display:grid;gap:.7rem}.selection-list div{display:grid;grid-template-columns:145px 1fr;padding-bottom:.7rem;border-bottom:1px solid var(--line)}.selection-list dt{font-weight:800}.selection-list dd{margin:0}.receipt{background:var(--soft);padding:1rem;border-radius:.45rem;margin:1rem 0}.receipt p{margin:.35rem 0}@media(max-width:850px){.site-header{gap:1rem;flex-wrap:wrap}.site-header nav{order:3;width:100%;overflow:auto}.profile{margin-left:auto}.hero,.layout{grid-template-columns:1fr}.sidebar{grid-template-columns:repeat(3,minmax(0,1fr))}.course-grid{grid-template-columns:1fr}.course-card{min-height:unset}}@media(max-width:620px){.profile span:last-child{display:none}.hero{padding:2.5rem 1rem}.targeting,.feedback-panel{display:block}.targeting .text-button,.feedback-panel .button{margin-top:.8rem}.sidebar{grid-template-columns:1fr}.course-feature{grid-template-columns:1fr}.course-number{width:36px;height:36px}.selection-list div{grid-template-columns:1fr}.selection-list dt{margin-bottom:.15rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.learning-search,.learning-pathway{margin-top:1.4rem;padding:1rem;border:1px solid var(--line);border-radius:.6rem;background:var(--soft)}.search-row{display:flex;gap:.6rem;align-items:center}.search-row input{flex:1;min-width:0;padding:.65rem .75rem;border:1px solid var(--green);border-radius:.35rem;background:var(--surface,#fff);color:var(--ink);font:inherit}.search-row input:focus-visible,.pathway-controls select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.search-results,.micro-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.7rem;margin-top:.9rem}.search-result,.micro-card{padding:.8rem;border:1px solid var(--line);border-radius:.45rem;background:var(--surface,#fff)}.search-result h4,.micro-card h4{margin:.55rem 0}.pathway-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.pathway-controls label{display:grid;gap:.3rem;font-weight:750}.pathway-controls select{padding:.6rem;border:1px solid var(--green);border-radius:.35rem;background:var(--surface,#fff);color:var(--ink);font:inherit}@media(max-width:620px){.search-row{align-items:stretch;flex-direction:column}.pathway-controls{grid-template-columns:1fr}}
.route-picker{max-width:1340px;margin:0 auto;padding:clamp(1.6rem,4vw,3rem) clamp(1rem,4vw,3rem) 0}.route-picker-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem}.route-picker-heading p:not(.eyebrow){max-width:60ch;color:var(--muted)}.route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.route-card{display:grid;gap:.35rem;padding:1.25rem;text-decoration:none;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:.8rem;box-shadow:var(--shadow);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.route-card:hover,.route-card:focus-visible{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 16px 34px rgba(15,59,42,.14)}.route-card:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.route-card strong{font-size:1.05rem}.route-card>span:last-child{color:var(--muted);font-size:.9rem}.route-card-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;font-weight:800;color:var(--green)}.route-icon{display:grid;place-items:center;width:2.2rem;height:2.2rem;margin-bottom:.35rem;border-radius:.65rem;background:var(--soft);color:var(--green);font-size:1.2rem;font-weight:900}.route-card-operations .route-icon{background:#fff5df;color:#795315}.route-card-admin .route-icon{background:#f8e9e7;color:#8d3024}@media(max-width:850px){.route-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.route-picker-heading{display:block}.route-picker-heading .text-button{display:inline-block;margin-top:.5rem}.route-grid{grid-template-columns:1fr}}
:root[data-theme="dark"]{--ink:#f3f7f3;--muted:#b9c9bf;--line:#42584b;--soft:#17251e;--surface:#101813;background:#0b110d;color:var(--ink)}:root[data-theme="dark"] body{background:#0b110d;color:var(--ink)}:root[data-theme="dark"] .site-header, :root[data-theme="dark"] .panel, :root[data-theme="dark"] .course-card, :root[data-theme="dark"] .search-result, :root[data-theme="dark"] .search-row input, :root[data-theme="dark"] .pathway-controls select{background:var(--surface);color:var(--ink)}:root[data-theme="dark"] .review-hero{background:linear-gradient(120deg,#17251e,#0b110d 58%)}
:root[data-theme="dark"] .learning-assistant .search-row{flex-wrap:wrap}:root[data-theme="dark"] .learning-assistant .search-row input{min-width:0;flex:1 1 14rem}

/* Keep the public shell usable when Arabic text or browser text zoom expands controls. */
@media (max-width: 620px) {
  .site-header { min-width: 0; }
  .brand { min-width: 0; max-width: 100%; }
  .brand span { min-width: 0; overflow-wrap: anywhere; }
  .profile { width: 100%; min-width: 0; flex-wrap: wrap; justify-content: flex-end; }
  .locale-picker { min-width: 0; max-width: 100%; flex-wrap: wrap; }
  .locale-picker select { min-width: 0; max-width: 100%; width: auto; }
  .profile .button { max-width: 100%; white-space: normal; }
}

/* Grid children must be allowed to shrink under RTL text expansion and zoom. */
.hero, .layout, .primary-column, .sidebar,
.hero > *, .layout > *, .primary-column > *, .sidebar > * {
  min-width: 0;
  max-width: 100%;
}

@media (max-width: 620px) {
  .course-grid, .search-results, .micro-grid { grid-template-columns: minmax(0, 1fr); width: 100%; }
  .course-card, .search-result, .micro-card { min-width: 0; width: 100%; }
  .progress-summary strong { display: block; max-width: 100%; overflow-wrap: anywhere; }
  .pill { white-space: normal; overflow-wrap: anywhere; }
}
:root[data-theme="dark"] .learning-assistant .search-row{flex-wrap:wrap}:root[data-theme="dark"] .learning-assistant .search-row input{min-width:0;flex:1 1 14rem}
.learning-assistant .search-row{flex-wrap:wrap}.learning-assistant .search-row input{min-width:0;flex:1 1 14rem}
/* Academy is the public product identity; review-route mechanics retain their internal Learning identifiers. */
body:has(.review-layout) .brand small{font-size:0}
body:has(.review-layout) .brand small::after{content:"Academy · practical review preview";font-size:.73rem;color:var(--muted)}
.certification-preview{max-width:1340px;margin:2rem auto 0;padding:1.5rem clamp(1rem,4vw,3rem);background:linear-gradient(135deg,var(--soft),#fff 70%)}
.certification-intro{max-width:78ch;color:#405249}
.certification-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:1.1rem}
.certification-card{position:relative;min-width:0;padding:1.15rem;border:1px solid var(--line);border-radius:.7rem;background:#fff;border-top:4px solid var(--gold);box-shadow:var(--shadow)}
.certification-card h3{margin-top:.7rem}.certification-card p{min-height:4.2rem;color:#405249}.certification-card small{font-weight:800;color:var(--green)}
.certification-number{display:inline-grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--green);color:#fff;font-size:.78rem;font-weight:800}
.certification-boundary{margin:1.2rem 0 0;padding:.8rem 1rem;border-left:4px solid var(--gold);background:#fff8e8;color:#694b11;font-size:.9rem}
@media(max-width:850px){.certification-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.certification-grid{grid-template-columns:1fr}.certification-card p{min-height:0}}
/* Dark mode: every public surface must move together; no light cards or low-contrast text. */
:root[data-theme="dark"]{--paper:#0b110d;--ink:#eef7f1;--soft:#17251e;--surface:#101813;--line:#42584b;--muted:#b9c9bf;--green:#4fb889;--green-2:#69c79c;--gold:#d7aa55;--error:#e47762}
:root[data-theme="dark"] body{background:var(--paper);color:var(--ink)}
:root[data-theme="dark"] .site-header,:root[data-theme="dark"] .panel,:root[data-theme="dark"] .course-feature,:root[data-theme="dark"] .course-card,:root[data-theme="dark"] .progress-summary,:root[data-theme="dark"] .route-card,:root[data-theme="dark"] .search-result,:root[data-theme="dark"] .micro-card,:root[data-theme="dark"] .certification-card{background:var(--surface);color:var(--ink);border-color:var(--line)}
:root[data-theme="dark"] .hero{background:linear-gradient(120deg,#17251e,#0b110d 65%);color:var(--ink)}
:root[data-theme="dark"] .hero p,:root[data-theme="dark"] .course-card p,:root[data-theme="dark"] .certification-intro,:root[data-theme="dark"] .certification-card p,:root[data-theme="dark"] .coach-card p,:root[data-theme="dark"] .sidebar .panel>p:not(.eyebrow){color:#c6d6cd}
:root[data-theme="dark"] .targeting,:root[data-theme="dark"] .learning-search,:root[data-theme="dark"] .learning-pathway,:root[data-theme="dark"] .notice,:root[data-theme="dark"] .route-picker{background:var(--soft);color:var(--ink)}
:root[data-theme="dark"] .route-card>span:last-child,:root[data-theme="dark"] .route-picker-heading p:not(.eyebrow),:root[data-theme="dark"] .course-meta,:root[data-theme="dark"] .course-card small{color:#b9c9bf}
:root[data-theme="dark"] .route-card-operations .route-icon{background:#493a1f;color:#f3ca77}:root[data-theme="dark"] .route-card-admin .route-icon{background:#472522;color:#f19b86}
:root[data-theme="dark"] .button.secondary{background:var(--surface);color:#d9f1e4;border-color:var(--green)}
:root[data-theme="dark"] .locale-picker select,:root[data-theme="dark"] .search-row input,:root[data-theme="dark"] .pathway-controls select{background:var(--surface);color:var(--ink);border-color:var(--green)}
:root[data-theme="dark"] .pill{color:#d5e8dc}:root[data-theme="dark"] .pill.current{background:#493a1f;border-color:#a98235;color:#ffe0a0}
:root[data-theme="dark"] .callout,:root[data-theme="dark"] .certification-boundary{background:#342b18;color:#ffe0a0;border-color:var(--gold)}
:root[data-theme="dark"] .dialog-close{background:var(--soft);color:var(--ink)}
