@font-face{font-family:"PE Sans";src:url('/fonts/dm-sans-400.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"PE Sans";src:url('/fonts/dm-sans-500.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"PE Sans";src:url('/fonts/dm-sans-600.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
:root{--pe-body-font:"PE Sans","Avenir Next",system-ui,sans-serif;--pe-font:"PE Sans","Avenir Next",system-ui,sans-serif}
html:root body,html:root body :is(h1,h2,h3,h4,h5,h6,p,a,span,small,strong,b,label,button,input,textarea,select,option,summary,li,td,th,legend,figcaption,div,section,article,header,footer,aside,nav,dl,dt,dd,fieldset),html:root body :is(.control-shell,.teacher-station,.teacher-directory,.advisory-calendar,.chat-control-layout) :is(h1,h2,h3,h4,p,a,span,small,strong,b,label,button,input,textarea,select,summary,li,td,th){font-family:"PE Sans","Avenir Next",system-ui,sans-serif!important;-webkit-font-smoothing:antialiased;font-synthesis:none}
html:root body :is(h1,h2,h3,h4,h5,h6){font-weight:600!important;letter-spacing:-.02em;line-height:1.3}
html:root body :is(button,label,summary){font-weight:500}
html:root body :is(input,textarea){letter-spacing:normal}
html:root body :is(code,pre,kbd,samp){font-family:ui-monospace,SFMono-Regular,monospace!important}

/* Shared readable type scale. Contextual status colors remain owned by each component. */
html:root body{font-size:16px;line-height:1.6}
html:root body :is(main,.pe-app,.control-shell,.teacher-station,.trial-access-page) h1{font-size:clamp(28px,2.6vw,38px)!important;line-height:1.25!important}
html:root body :is(main,.pe-app,.control-shell,.teacher-station,.trial-access-page) h2{font-size:clamp(22px,1.8vw,28px)!important;line-height:1.3!important}
html:root body :is(main,.pe-app,.control-shell,.teacher-station,.trial-access-page) h3{font-size:20px!important;line-height:1.4!important}
html:root body :is(main,.pe-app,.control-shell,.teacher-station,.trial-access-page) :is(p,li,dd,td){font-size:16px!important;line-height:1.6!important}
html:root body :is(main,.pe-app,.control-shell,.teacher-station,.trial-access-page) :is(label,button,select,input,textarea,summary){font-size:16px!important;line-height:1.5!important}
html:root body :is(main,.pe-app,.control-shell,.teacher-station,.trial-access-page) :is(small,figcaption){font-size:14px!important;line-height:1.5!important}
html:root body :is(main,.pe-app,.control-shell,.teacher-station,.trial-access-page) p{text-align:start!important;text-align-last:auto;hyphens:none!important;overflow-wrap:break-word}
html:root body :is(nav,button,label,summary) {text-align:left;hyphens:none}
html:root body :is(.pc-descriptor-cards,.pc-review-path,.feedback-steps,.pc-instrument-context,.chat-admin-thread,.station-metrics) p{text-align:left!important;hyphens:none!important}
@media(max-width:600px){html:root body :is(main,.pe-app,.control-shell,.teacher-station,.trial-access-page) :is(input,textarea,select){font-size:16px!important}html:root body :is(main,.pe-app,.control-shell,.teacher-station,.trial-access-page) p{text-align:left;hyphens:none}}

/* Consistent spacing for prose, diagrams and controls. */
html:root body :is(.control-grid,.engine-summary,.engine-case-grid,.diagnostics-overview,.support-steps,.ub-coherence-map,.cb-construction-scheme,.ub-overview-flow,.payment-route,.lc-score) p{text-align:start!important;hyphens:none!important}
html:root body :is(main,.pe-app,.control-shell,.teacher-station) :is(p,li,dd){word-spacing:normal;letter-spacing:normal;overflow-wrap:break-word}
html:root body img{max-width:100%;height:auto}
@media(max-width:760px){html:root body :is(main,.pe-app,.control-shell,.teacher-station,.trial-access-page) p{text-align:start!important;hyphens:none!important}}
@media(prefers-reduced-motion:reduce){html:root{scroll-behavior:auto}html:root body *{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Landing hierarchy: readable at wide desktop sizes without shrinking mobile text. */
html:root body .pilot-home .pilot-intro h1{font-size:clamp(36px,3.5vw,58px)!important;line-height:1.15!important;max-width:18ch}
html:root body .pilot-home .pilot-intro p{font-size:clamp(18px,1.35vw,22px)!important;max-width:60ch;text-align:start;line-height:1.65!important}
html:root body .pilot-home .pilot-engine-launcher strong{font-size:22px;line-height:1.35}
html:root body .pilot-home .pilot-engine-launcher small{font-size:17px!important;line-height:1.55!important}
html:root body .pilot-home :is(.pilot-nav-actions a,.pilot-cover-actions a,.pilot-plan-action,.pilot-footer a){font-size:18px;line-height:1.5}
html:root body .pilot-home .pilot-brand strong{font-size:20px}
html:root body .pilot-home :is(.pilot-brand small,.pilot-kicker,.pilot-engine-launcher span,.pilot-cover-visual>aside span){font-size:15px}
html:root body .pilot-home .pilot-cover-main figcaption strong{font-size:24px;line-height:1.4}
html:root body .pilot-home .pilot-plan-price strong{font-size:36px}
html:root body .pilot-home .pilot-plan-price span{font-size:17px}
html:root body .pilot-home .pilot-engine-launcher>a{min-width:0;height:auto}
@media(max-width:1100px){html:root body .pilot-home .pilot-engine-launcher{grid-template-columns:1fr}}
@media(max-width:640px){html:root body .pilot-home .pilot-brand strong{font-size:18px}html:root body .pilot-home .pilot-brand small{font-size:14px}html:root body .pilot-home .pilot-cover-main figcaption strong{font-size:20px}}

/* Compact footer cards, matching the secondary resource links. */
html:root body .pilot-home .pilot-footer h2{font-size:18px!important;line-height:1.35!important;font-weight:600!important}
html:root body .pilot-home .pilot-footer :is(p,a){font-size:16px!important;line-height:1.5!important;text-align:start!important;hyphens:none!important}

/* Compact plan details and checkout controls. */
html:root body .pilot-home :is(.pilot-plan-support,.pilot-plan-billing,.pilot-plans-note,.plan-engine-details summary,.plan-engine-details li){font-size:16px!important;line-height:1.5!important;text-align:start!important;hyphens:none!important;word-spacing:normal!important}
html:root body .pilot-home .pilot-plan-action{font-size:17px!important;line-height:1.4!important;padding:14px 20px;min-height:48px;text-align:center}

/* Balanced introductory cards and image caption. */
html:root body .pilot-home .pilot-intro p{font-size:17px!important;line-height:1.55!important;text-align:start!important;hyphens:none!important}
html:root body .pilot-home .pilot-engine-launcher strong{font-size:19px!important;line-height:1.35!important}
html:root body .pilot-home .pilot-engine-launcher small{font-size:16px!important;line-height:1.5!important}
html:root body .pilot-home .pilot-cover-main figcaption strong{font-size:20px!important;line-height:1.4!important}
html:root body .pilot-home .pilot-cover-actions a{font-size:16px!important;line-height:1.5!important}

/* Compact owner navigation; keep form text readable across devices. */
html:root body .control-shell .control-sidebar nav button,html:root body .control-shell .control-sidebar nav button span{font-size:14px!important;line-height:1.4!important;font-weight:500!important}
html:root body .control-shell .control-sidebar nav button{padding:10px 14px!important;min-height:44px}
html:root body .control-shell .control-owner :is(button,summary,a,span){font-size:14px!important;line-height:1.5!important}
html:root body .control-shell .control-owner>b{font-size:16px!important;font-weight:600!important}
html:root body .control-shell .control-owner small{font-size:12px!important;letter-spacing:.06em}
html:root body .control-shell .control-brand b{font-size:18px!important}
html:root body .control-shell .control-brand small{font-size:13px!important}
html:root body .control-shell .control-owner button{padding:10px 12px!important;min-height:44px}

/* Review panel: concise hierarchy and a readable sequence of actions. */
html:root body .lc-fb{container-type:inline-size;min-width:0;overflow-wrap:break-word}
html:root body .lc-fb-h{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:16px}
html:root body .lc-fb-h h3{font-size:20px!important;line-height:1.3!important;margin:0}
html:root body .lc-live{font-size:13px!important}
html:root body .lc-score.is-cpeip{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:16px}
html:root body .lc-score.is-cpeip .lc-lvl{min-width:0}
html:root body .lc-score.is-cpeip .lc-amb{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
html:root body .lc-score.is-cpeip .lc-amb span{min-width:0;padding:10px 8px;font-size:13px!important}
html:root body .lc-score.is-cpeip .lc-amb b{font-size:13px!important;overflow-wrap:anywhere}
html:root body .lc-fb :is(p,small){font-size:15px!important;line-height:1.5!important;text-align:start!important;hyphens:none!important}
html:root body .lc-next-step{display:grid;gap:12px;margin:14px;padding:16px;background:#fff}
html:root body .lc-next-step>strong{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#496175}
html:root body .lc-next-step h4{font-size:18px!important;line-height:1.35;margin:0}
html:root body .lc-next-step .lc-guidance-block{padding:12px 14px;margin:0;border-radius:10px;background:#fff7e6;border-left:3px solid #b7852c}
html:root body .lc-next-step .lc-guidance-block.is-action{background:#edf3f7;border-left-color:#386986}
html:root body .lc-guidance-block>b{font-size:13px;line-height:1.4;color:#294d62}
html:root body .lc-guidance-block p{margin:8px 0 0}
html:root body .lc-next-step .lc-btn{font-size:15px!important;min-height:44px;white-space:normal}
@container(min-width:620px){html:root body .lc-next-step{grid-template-columns:1fr 1fr}html:root body .lc-next-step>:is(strong,h4,button,small){grid-column:1/-1}}

/* Curriculum programme: numbered indicators, grouped by unit. */
html:root body .ub-indicator-content .ub-programme-unit{margin:14px 0;padding:14px;border:1px solid #c4d8e6;border-radius:14px;background:#fff}
html:root body .ub-programme-unit>summary{display:list-item;cursor:pointer;padding:10px;color:#234b64;font-size:16px!important;line-height:1.4!important}
html:root body .ub-programme-unit>summary b{display:inline-block;margin-left:12px;padding:4px 8px;border-radius:8px;background:#eaf1fa;font-size:12px;font-weight:500}
html:root body .ub-programme-indicators{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px;padding:0;list-style:none;margin:16px 0}
html:root body .ub-programme-indicators li{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid #c4d8e6;border-radius:12px;background:#eef5fc;min-width:0}
html:root body .ub-programme-indicators li:nth-child(3n+2){background:#f3eef9;border-color:#d9cdea}
html:root body .ub-programme-indicators li:nth-child(3n){background:#edf3f7;border-color:#bfd6e4}
html:root body .ub-programme-indicators li>span{flex-shrink:0;display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#fff;color:#24495f;font-size:13px;font-weight:600}
html:root body .ub-programme-indicators p,html:root body .ub-programme-unit>p{margin:0;font-size:15px!important;line-height:1.55!important;text-align:start!important;hyphens:none!important;color:#244154}
html:root body .ub-programme-unit>a{display:inline-flex;margin-top:12px;min-height:44px;align-items:center;font-size:14px}

/* Instrument design: one type scale, grouped and editable. */
html:root body .pc-instrument-coach{color:#203e52}
html:root body .pc-instrument-coach h2{font-size:22px!important;line-height:1.3!important}
html:root body .pc-instrument-coach h3{font-size:18px!important;line-height:1.4!important}
html:root body .pc-instrument-coach :is(p,label,summary,button,select,textarea){font-size:16px!important;line-height:1.5!important;text-align:start!important;hyphens:none!important}
html:root body .pc-instrument-coach small{font-size:13px!important;line-height:1.5!important}
html:root body .pc-instrument-coach .pc-instrument-context{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin:16px 0}
html:root body .pc-instrument-coach .pc-instrument-context>:is(article,label){display:grid;align-content:start;gap:10px;min-width:0;padding:18px;border:1px solid #bfd5e4;border-radius:12px;background:#edf5fb}
html:root body .pc-instrument-coach .pc-instrument-context>:nth-child(3n+2){background:#f3eef9;border-color:#d8cce9}
html:root body .pc-instrument-coach .pc-instrument-context>:nth-child(3n){background:#edf3f7;border-color:#bfd6e3}
html:root body .pc-instrument-coach :is(textarea,select){box-sizing:border-box;width:100%;min-width:0;padding:12px;border:1px solid #aac2d2;border-radius:8px;background:#fff;color:#203e52}
html:root body .pc-instrument-coach textarea{resize:vertical}
html:root body .pc-instrument-coach details{margin:16px 0;padding:16px;border:1px solid #cadbe6;border-radius:12px;background:#fafcfe}
html:root body .pc-instrument-coach summary{cursor:pointer;min-height:32px;font-weight:600}
html:root body .pc-instrument-review{margin:20px 0;padding:18px;border:1px solid #cfcee7;border-radius:14px;background:#f5f2fb}
html:root body .pc-instrument-coach .pc-indicator-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;padding:0;list-style:none}
html:root body .pc-instrument-coach .pc-indicator-cards li{padding:14px;border:1px solid #c7d9e4;border-radius:10px;background:#fff;font-size:15px!important}
html:root body .pc-instrument-coach button{min-height:44px}

/* Compact, expandable route beneath the workspace. */
html:root body .ub-overview-details>summary{position:relative;padding:10px 12px;min-height:44px;color:#23495e}
html:root body .ub-route-label{display:inline-block;margin-right:12px;padding:5px 9px;border-radius:8px;background:#e6eff4;color:#274f66;font-size:12px;font-weight:600}
html:root body .ub-route-hint{display:inline-block;margin-left:12px;font-size:13px;color:#516b7d}
html:root body .ub-overview-details .ub-overview-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;padding:0;list-style:none}
html:root body .ub-overview-details .ub-overview-flow li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px 12px;padding:16px;border:1px solid #c5d7e6;border-radius:12px;background:#edf5fc;min-width:0}
html:root body .ub-overview-details .ub-overview-flow li:nth-child(2){background:#f3eef9;border-color:#d8ccea}
html:root body .ub-overview-details .ub-overview-flow li:nth-child(3){background:#edf3f7;border-color:#bfd6e3}
html:root body .ub-overview-details .ub-overview-flow li:nth-child(4){background:#fff6e7;border-color:#ead7ad}
html:root body .ub-overview-details .ub-overview-flow li>span{grid-row:1/3;width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:#fff;color:#24495f;font-size:13px}
html:root body .ub-overview-details .ub-overview-flow strong{font-size:16px;line-height:1.4}
html:root body .ub-overview-details .ub-overview-flow small{font-size:14px!important;line-height:1.5!important}
html:root body .ub-overview-details .pe-tool-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
html:root body .ub-overview-details .pe-tool-links a{min-height:44px;display:inline-flex;align-items:center;padding:8px 12px;border:1px solid #c5d7e6;border-radius:8px;font-size:14px}
@media(max-width:600px){html:root body .ub-route-hint{display:block;margin:8px 0 0}html:root body .ub-route-label{display:table;margin-bottom:8px}}

/* Destino de una indicación: señal visible además del color. */
[data-edit-destination="true"] { outline: 3px solid #216f91; outline-offset: 5px; border-radius: 8px; scroll-margin-block: 100px; }
[data-edit-destination="true"]::before { content: "Estás aquí · edita este apartado"; display: block; color: #164b64; background: #e8f4fa; padding: 8px 12px; font: 600 14px/1.5 var(--pe-font); border-radius: 6px; margin-bottom: 8px; }
.pc-instrument-review button { font-size: 15px; min-height: 44px; margin-top: 8px; white-space: normal; }

/* Payment controls remain usable on narrow screens and at browser zoom. */
html:root body .payment-checkout select{box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding:12px;border:1px solid #aec4d4;border-radius:8px;background:#fff;color:#203e52;font-size:16px!important;line-height:1.5}
html:root body .payment-direct-access{min-width:0;margin:16px 0;padding:16px;border:1px solid #b3cede;border-radius:12px;background:#edf3f7}
html:root body .payment-direct-access a{white-space:normal;overflow-wrap:anywhere;min-height:44px}
html:root body .payment-direct-access p{font-size:14px!important;line-height:1.5!important}

html:root body .lc-assessment-indicators ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;padding:0;list-style:none}
html:root body .lc-assessment-indicators li{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid #b9d4e8;border-radius:12px;background:#edf5fc;font-size:16px!important;line-height:1.55!important;min-width:0}
html:root body .lc-assessment-indicators li:nth-child(3n+2){background:#f3eef9;border-color:#d6c9e7}
html:root body .lc-assessment-indicators li:nth-child(3n){background:#edf3f7;border-color:#b8d1e0}
html:root body .lc-assessment-indicators code{font-family:var(--pe-font)!important;font-size:13px;font-weight:600;color:#254c67}
html:root body .lc-build-instrument{padding:18px;margin:16px 0;border:1px solid #bfd3e0;border-radius:12px;background:#f7fafc;min-width:0}
html:root body .lc-build-instrument select{box-sizing:border-box;width:100%;min-width:0;padding:12px;font-size:16px!important;background:#fff;border:1px solid #a9c2d4;border-radius:8px}
html:root body .lc-instrument-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:10px;padding:0;list-style:none}
html:root body .lc-instrument-flow li{display:grid;gap:6px;padding:14px;background:#eaf3fa;border-radius:10px;font-size:15px!important}
html:root body .lc-instrument-flow li:nth-child(2){background:#edf3f7}html:root body .lc-instrument-flow li:nth-child(3){background:#f3eef9}html:root body .lc-instrument-flow li:nth-child(4){background:#fff4e2}
html:root body .lc-instrument-examples{padding:16px;margin-block:16px;border:1px solid #d3cbe5;border-radius:12px;background:#f7f4fc}

/* AssessmentComposer also appears outside the portfolio coach: style its own labels. */
html:root body .pe-assessment-selector{margin:18px 0;padding:18px;border:1px solid #c5d8e5;border-radius:14px;background:#f8fbfd;min-width:0}
html:root body .pe-assessment-selector>summary{font-family:var(--pe-font)!important;font-size:16px!important;line-height:1.5!important;font-weight:600;color:#21485f;cursor:pointer;padding:8px 0}
html:root body .pe-assessment-selector .pe-indicator-options{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;margin:16px 0;padding:0;min-width:0}
html:root body .pe-indicator-options>.pe-indicator-option{display:grid!important;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:12px;margin:0;padding:16px;border:1px solid #b4cee2;border-radius:12px;background:#eaf3fc;color:#193e55;min-width:0;box-sizing:border-box;cursor:pointer;text-align:start!important}
html:root body .pe-indicator-options>.pe-indicator-option:nth-child(3n+2){background:#f2edfa;border-color:#d2c4e8}
html:root body .pe-indicator-options>.pe-indicator-option:nth-child(3n){background:#eaf2f6;border-color:#b8d2e1}
html:root body .pe-indicator-option[data-selected="true"]{box-shadow:inset 0 0 0 1px #437994}
html:root body .pe-indicator-option:focus-within{outline:3px solid #276b94;outline-offset:3px}
html:root body .pe-indicator-option>input[type="checkbox"]{position:static!important;appearance:auto!important;width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;max-width:20px;margin:3px 0!important;padding:0!important;accent-color:#195675;float:none!important}
html:root body .pe-indicator-copy{display:grid!important;gap:8px;min-width:0}
html:root body .pe-indicator-copy :is(strong,span,small){display:block!important;font-family:var(--pe-font)!important;font-size:15px!important;line-height:1.55!important;letter-spacing:normal!important;white-space:normal!important;text-align:start!important;hyphens:none!important;overflow-wrap:anywhere}
html:root body .pe-indicator-copy small{font-size:13px!important;color:#34586b}
html:root body .pe-assessment-selector :is(.pe-indicator-help,.pe-indicator-count){font-size:14px!important;line-height:1.5!important;text-align:start!important;hyphens:none!important;margin:10px 0}
html:root body .pe-assessment-selector textarea{box-sizing:border-box;width:100%;min-width:0;font-size:16px!important;line-height:1.6!important;text-align:start!important;min-height:140px;background:white;border:1px solid #aec7d9;border-radius:10px;padding:12px;resize:vertical}
@media(max-width:540px){html:root body .pe-assessment-selector{padding:12px}html:root body .pe-assessment-selector .pe-indicator-options{grid-template-columns:minmax(0,1fr)}}

/* Full-width review: never lay the disclosure summary beside its body. */
html:root body .pe-final-class-review{display:block!important;width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:18px;margin:18px 0;overflow:visible!important;background:#f7fafc;border:1px solid #c5d6e4;border-radius:14px}
html:root body .pe-final-class-review>h4{font-size:19px!important;line-height:1.4;margin:0 0 10px}
html:root body .lc-rubric{display:block!important;width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin:12px 0;padding:0;border:1px solid #bdcfe0;border-radius:12px;background:#fff;overflow:visible;grid-column:1/-1}
html:root body .lc-rubric.is-fold>summary{display:flex!important;position:static;flex-wrap:wrap;gap:10px;align-items:center;box-sizing:border-box;width:100%;min-height:52px;padding:12px 16px;background:#edf4fa;border-radius:12px;color:#214760}
html:root body .lc-rubric .lc-crit-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;max-width:100%}
html:root body .lc-rubric .lc-crit-row>b{flex:1 1 180px;min-width:0;font-size:15px!important;line-height:1.5!important;white-space:normal}
html:root body .lc-rubric>.lc-crit-row{padding:14px}
html:root body .lc-rubric .lc-pill{margin-left:0;white-space:normal;font-size:13px!important}
html:root body .lc-rubric>.lc-rubric-body{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:16px;float:none;position:static;grid-column:1/-1}
html:root body details.lc-rubric:not([open])>.lc-rubric-body{display:none!important}
html:root body .lc-rubric-body>*{min-width:0;max-width:100%;box-sizing:border-box;margin:0;overflow-wrap:anywhere}
html:root body .lc-rubric-body .lc-desc{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px;padding:0;list-style:none}
html:root body .lc-rubric-body .lc-desc>li{display:flex;flex-direction:column;gap:8px;min-width:0;padding:14px;border:1px solid #d6c5c2;background:#fff1ec;color:#4d3833;border-radius:10px;font-size:15px!important;line-height:1.55}
html:root body .lc-rubric-body .lc-desc>li[data-level="1"]{background:#fff6e6;border-color:#e5d1a7;color:#664d21}
html:root body .lc-rubric-body .lc-desc>li[data-level="2"]{background:#edf5fc;border-color:#b9d4e8;color:#244d6a}
html:root body .lc-rubric-body .lc-desc>li[data-level="3"]{background:#edf3f7;border-color:#b7d1e0;color:#244558}
html:root body .lc-rubric-body .lc-desc>li>b{font-size:13px!important;color:inherit;text-transform:none}
html:root body .lc-rubric-body .lc-desc>li.is-here{outline:2px solid #536889;outline-offset:1px}
html:root body .pe-classroom-scale,html:root body .pe-descriptor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:12px;margin:14px 0;min-width:0}
html:root body .pe-classroom-scale>span,html:root body .pe-descriptor-grid>:is(label,article){display:block;padding:14px;border:1px solid #c5d4e5;border-radius:12px;background:#fceeea;font-size:15px!important;line-height:1.5!important;min-width:0;color:#213f54}
html:root body .pe-classroom-scale>:nth-child(2),html:root body .pe-descriptor-grid>:is(label,article):nth-child(2){background:#fff5df}
html:root body .pe-classroom-scale>:nth-child(3),html:root body .pe-descriptor-grid>:is(label,article):nth-child(3){background:#eaf3fc}
html:root body .pe-classroom-scale>:nth-child(4),html:root body .pe-descriptor-grid>:is(label,article):nth-child(4){background:#eaf2f6}
html:root body .pe-criterion-editor{padding:16px;margin:16px 0;border:1px solid #c3d5e4;border-radius:14px;background:#fff;min-width:0}
html:root body .pe-criterion-editor textarea{box-sizing:border-box;width:100%;min-width:0;min-height:180px;resize:vertical;padding:12px;border:1px solid #abc3d4;border-radius:8px;background:#fff;font-size:16px!important;line-height:1.5!important;margin-top:10px}
html:root body .pe-criterion-editor :is(h4,p,summary,small){text-align:start!important;hyphens:none!important;line-height:1.5!important;overflow-wrap:anywhere}
html:root body .pe-criterion-editor details{margin-top:12px}
@media(max-width:540px){html:root body .pe-final-class-review{padding:12px}html:root body .lc-rubric>.lc-rubric-body{padding:12px}}

html:root body .pe-private-teaching-resource{padding:18px;border:1px solid #cdbce4;border-radius:14px;background:#f6f1fc;margin:18px 0;min-width:0}
html:root body .pe-private-teaching-resource>summary{font-size:16px!important;line-height:1.5!important;font-weight:600;cursor:pointer}
html:root body .lc-rubric,html:root body .pe-criterion-editor{container-type:inline-size}
html:root body .lc-rubric-body .lc-desc,html:root body .pe-criterion-editor .pe-descriptor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@container (min-width:920px){html:root body .lc-rubric-body .lc-desc,html:root body .pe-criterion-editor .pe-descriptor-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@container (max-width:460px){html:root body .lc-rubric-body .lc-desc,html:root body .pe-criterion-editor .pe-descriptor-grid{grid-template-columns:minmax(0,1fr)}}

html:root body .pe-assessment-design{padding:16px;margin:18px 0;border:1px solid #bcd4e3;border-radius:14px;background:#f7fafc}
html:root body .pe-assessment-design>summary{font-size:16px!important;font-weight:600;cursor:pointer;line-height:1.5!important}
html:root body .pe-assessment-design-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:14px;margin:14px 0}
html:root body .pe-assessment-design-grid>label{display:grid;gap:8px;min-width:0;padding:16px;border:1px solid #bdd2e2;border-radius:12px;background:#eaf3fc}
html:root body .pe-assessment-design-grid>label:nth-child(3n+2){background:#f2ecfa;border-color:#d3c6e5}
html:root body .pe-assessment-design-grid>label:nth-child(3n){background:#eaf2f6;border-color:#b8d1e0}
html:root body .pe-assessment-design-grid :is(strong,small){font-size:15px!important;line-height:1.5!important;text-align:start!important;white-space:normal}
html:root body .pe-assessment-design-grid small{font-size:14px!important}
html:root body .pe-assessment-design-grid textarea{box-sizing:border-box;width:100%;min-width:0;min-height:100px;resize:vertical;font-size:16px!important;line-height:1.5!important;padding:12px;background:white;border:1px solid #abc6d8;border-radius:8px}

/* Shared commercial hierarchy: a learning route is separate from plan benefits. */
.pe-learning-route{max-width:1280px;margin:2rem auto;padding:clamp(1rem,3vw,2rem);color:#17324a}
.pe-learning-route>p{font-size:1rem;line-height:1.55;text-align:left}
.pe-learning-route ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;padding:0;list-style:none}
.pe-learning-route li{padding:1.1rem;border-radius:16px;background:#eaf3fc;border-top:3px solid #3979af;min-width:0}
.pe-learning-route li:nth-child(2){background:#edf3f7;border-color:#165d86}.pe-learning-route li:nth-child(3){background:#f3effb;border-color:#7853ad}.pe-learning-route li:nth-child(4){background:#fff5e5;border-color:#aa741f}
.pe-learning-route li>span{font-size:.875rem;font-weight:600}.pe-learning-route h3{font-size:1.125rem;line-height:1.35;margin:.6rem 0}.pe-learning-route li p{font-size:1rem;line-height:1.5;text-align:left;hyphens:none;margin:0}
.pe-plan-groups section{padding:1rem;margin:.8rem 0;background:#edf4fb;border:1px solid #d8e4ef;border-radius:14px}.pe-plan-groups section:nth-child(2){background:#edf3f7;border-color:#c8dce8}
.pe-plan-groups h4{font-family:inherit!important;font-size:1rem!important;margin:0 0 .75rem;color:#17324a}.pe-plan-groups ul{list-style:none;margin:0;padding:0!important;display:grid;gap:.7rem}.pe-plan-groups li{display:flex;align-items:flex-start;gap:.6rem;font-size:1rem!important;line-height:1.45;text-align:left;hyphens:none}.pe-plan-groups li svg{width:18px;height:18px;flex-shrink:0;margin-top:3px;color:#225a7a}
@media(max-width:900px){.pe-learning-route ol{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.pe-learning-route ol{grid-template-columns:1fr}}

/* Continuity controls must fit their own grid tracks, including at 320 CSS px. */
html:root body main.unit-builder .ub-topbar{min-width:0;max-width:100%;box-sizing:border-box}
html:root body main.unit-builder .ub-topbar nav{min-width:0;max-width:100%;display:flex;flex-wrap:wrap;gap:10px}
html:root body main.unit-builder .ub-topbar nav :is(button,a){min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box;font-size:1rem!important;line-height:1.4!important;min-height:44px}
@media(max-width:700px){html:root body main.unit-builder .ub-topbar{display:flex;flex-direction:column;padding:12px;gap:12px}html:root body main.unit-builder .ub-topbar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}html:root body main.unit-builder .ub-topbar nav :is(button,a){width:100%;padding:10px 8px}html:root body main.unit-builder .ub-topbar .ub-trial-account{grid-column:1/-1}}
html:root body .cb-continuity-options{margin:12px 16px;padding:12px 16px;border:1px solid #bed3e3;border-radius:12px;background:#f2f8fc}
html:root body .cb-continuity-options>summary{cursor:pointer;font-size:1rem;line-height:1.5;min-height:24px}
html:root body .cb-continuity-options .pilot-continuity{margin:12px 0 0}
