.lesson-banner{display:block;width:100%;height:auto;max-height:340px;object-fit:cover;border-radius:16px;margin-bottom:24px;background:#f3f7ff}.servo-safety{border:2px solid #efb957;border-left:7px solid #d59122;border-radius:12px;background:#fff8e8;padding:18px 22px;margin:20px 0}.servo-safety strong{font-size:21px;color:#724600}.servo-safety p{margin-bottom:0}.robot-addon{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;background:#eef5ff;border-color:#a8c5ed;align-items:center}.robot-addon>img{width:100%;height:220px;object-fit:cover;border-radius:12px}.addon-label,.addon-badge{display:inline-block;background:#e8f0ff;color:#145bbc;border-radius:7px;padding:4px 9px;font-size:13px;font-weight:600}.addon-badge{margin-top:8px;align-self:flex-start;border:1px solid #bed3f2}.addon-actions{display:flex;gap:6px;flex-wrap:wrap}.button.secondary{background:white;color:#145bbc;border:1px solid #aac5ed}.robot-credit{font-size:13px;color:#536a84;line-height:1.8}.addon-promo{display:grid;grid-template-columns:240px 1fr;gap:24px;margin:24px 0 0;background:#eef5ff;border:1px solid #c1d5f2;border-radius:16px;padding:18px;align-items:center}.addon-promo img{display:block;width:100%;height:170px;object-fit:cover;border-radius:12px}.addon-promo h2{font-size:23px;margin:0 0 10px}.addon-filter{display:flex;align-items:center;gap:9px;font-weight:500}.addon-filter input{width:20px;height:20px;accent-color:#145bbc}.lesson-card img{height:180px!important}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #d6006c;outline-offset:3px}article[id^="sheet-"]{scroll-margin-top:25px}@media(max-width:650px){.robot-addon,.addon-promo{grid-template-columns:1fr}.robot-addon>img{height:180px}.addon-promo{gap:15px}.addon-promo img{height:180px}.lesson-banner{max-height:230px}.addon-actions .button{margin:0;flex:1 1 140px;text-align:center}.servo-safety{padding:14px}}
@media(max-width:650px){main{padding:16px}#portal{padding:0;border:0;background:transparent}#lesson{padding:16px}}

.jaime-lesson{border:1px solid #b7cfee;border-left:5px solid #145bbc;background:#f6f9ff;margin:22px 0}.jaime-lesson li{margin:9px 0}.jaime-note{font-size:14px;color:#536a84}.jaime-study img{width:100%;height:auto;border-radius:14px}.jaime-study li{margin:10px 0}

/* Compact progress table; worksheet controls keep their original size. */
.lesson-progress table{font-size:13px;line-height:1.4}
.lesson-progress th,.lesson-progress td{padding:5px 9px;vertical-align:middle}
.lesson-progress button[data-open]{font:inherit;font-size:13px;line-height:1.35;padding:6px 10px;margin:0;border-radius:7px;min-height:32px;text-align:left}
.lesson-progress th:first-child{width:35%}
@media(max-width:650px){.lesson-progress table{font-size:12px;min-width:620px}.lesson-progress th,.lesson-progress td{padding:5px 7px}.lesson-progress button[data-open]{font-size:12px}}

/* Horizontal lesson navigation with text and colour for every status. */
.lesson-progress-strip{display:flex;flex-wrap:wrap;gap:7px;align-items:stretch}
.lesson-status-button{display:flex;flex-direction:column;gap:3px;align-items:flex-start;justify-content:center;flex:0 1 auto;max-width:240px;margin:0;padding:7px 10px;border:1px solid;border-radius:8px;font-family:inherit;font-size:12px;line-height:1.4;text-align:left;cursor:pointer}
.lesson-status-button small{font-size:10px;font-weight:400}
.lesson-status-button.status-pending{background:#f1f5f9;color:#475569;border-color:#cbd5e1}
.lesson-status-button.status-working{background:#fff4d6;color:#7a4b00;border-color:#e9c46a}
.lesson-status-button.status-submitted{background:#e8f1ff;color:#145bbc;border-color:#98bbed}
.lesson-status-button.status-reviewed{background:#e8f7ed;color:#166534;border-color:#9bd3ad}
.lesson-status-button:hover{filter:brightness(.96)}
@media(max-width:650px){.lesson-status-button{flex:1 1 140px;max-width:none;font-size:11px;padding:7px 8px}}
