/* Shared presentation for verified ORDA lesson engines only. */
body.olp-enabled{--gray:#536278;--muted:#59677c;background:#f4f6f8;color:#22344b}
.olp-enabled .wrap{max-width:900px}
.olp-enabled :is(.card,.pcard,.prob){border-radius:14px;border-color:#dfe5ec}
.olp-enabled :is(.card p,.pbody,.blk li,.passage .para,.prob .stem,.qtext){line-height:1.85}
.olp-enabled :is(.choice,.btn,.steps button,.tabs button,.fc-nav button){min-height:44px}
.olp-enabled :is(.choice,.explain,.expl){line-height:1.75}
.olp-enabled .choice{cursor:pointer}
.olp-enabled :is(.tabs,.steps){gap:7px}
.olp-enabled :is(.tabs,.steps) button{font-size:14px}
.olp-enabled .steps button{min-width:100px}
.olp-enabled button:focus-visible,.olp-enabled [role=button]:focus-visible{outline:3px solid #be8a2e;outline-offset:3px}
.olp-tools{background:#fff;border:1px solid #dce4ec;border-top:3px solid #dca03b;border-radius:15px;padding:20px 22px;margin:18px 0;color:#253d5c}
.olp-topline,.olp-statusrow{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.olp-topline button,.olp-statusrow button,.olp-action{border:1px solid #cbd8e5;border-radius:9px;background:#eff4f9;color:#233f62;padding:10px 13px;font-size:13px;font-weight:700;min-height:42px;cursor:pointer;line-height:1.55}
.olp-kicker{color:#8a6327;font-size:10px;letter-spacing:1.7px;font-weight:800}
.olp-path{font-size:13px!important;line-height:1.6!important;margin:4px 0!important}
.olp-statusrow{margin-top:14px;font-size:14px;font-weight:700}
.olp-statusrow button{background:#203e61;color:#fff}
.olp-tools [hidden]{display:none!important}
.olp-notice{font-size:12px!important;line-height:1.75!important;color:#57677c;margin:9px 0 0!important}
.olp-notice[role=alert]{color:#96391d;background:#fff0e8;padding:10px;border-radius:8px}
.olp-guide{margin-top:14px;border-top:1px solid #e5eaf0;padding-top:12px}
.olp-guide summary{font-size:13px;font-weight:700;cursor:pointer;padding:3px 0}
.olp-guide ol{padding:9px 0 8px 24px;margin:0;font-size:14px;line-height:1.9}
.olp-guide label{display:block;font-size:13px;font-weight:700;margin:8px 0}
.olp-guide label span{font-weight:400;color:#647184}
.olp-guide textarea{display:block;width:100%;padding:12px;border:1px solid #b6c7d9;border-radius:9px;min-height:90px;background:#fcfdff;color:#22344b;font:15px/1.7 'Malgun Gothic',sans-serif;resize:vertical}
.olp-help{font-size:12px!important;line-height:1.8!important;color:#647184;margin:8px 0 0!important}
.olp-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.olp-review-return{position:sticky;top:10px;z-index:8;background:#edf4fc;border:1px solid #bdccdf;border-radius:10px;padding:12px 15px;margin:10px 0}
.olp-review-return p{margin:0 0 7px;font-size:13px}
.olp-enabled :is(#stage,.prob,.oxq,.olp-review-return){scroll-margin-top:135px}
.olp-enabled .scorebar{gap:12px;flex-wrap:wrap}
.olp-enabled .fc .inner{min-height:190px}
.olp-enabled .fc .face{overflow:auto}
.olp-enabled .choice[aria-disabled=true]{cursor:default}
.olp-large :is(.card p,.pbody,.blk li,.passage .para,.qtext,.prob .stem,.choice,.explain,.expl,.fc .back .d){font-size:18px!important;line-height:1.9!important}
.olp-large .card h2{font-size:20px}
.olp-enabled :is(.tablewrap,.tblwrap){overflow-x:auto}
@media(max-width:600px){
 .olp-tools{padding:16px;margin:14px 0}.olp-enabled :is(.card,.pcard){padding:18px}
 .olp-enabled .steps button{flex:1 1 29%;min-width:0;font-size:12px}
 .olp-enabled .tabs button{font-size:13px;padding:10px 6px}
 .olp-enabled :is(input.blank,textarea){max-width:100%;font-size:16px}
 .olp-enabled .fc-nav{flex-wrap:wrap}.olp-enabled .fc-nav .mark{margin-left:0}
 .olp-enabled .fc .inner{min-height:225px}.olp-enabled .fc .face{padding:16px}
 .olp-enabled .olp-actions .olp-action{flex:1 1 140px}
 .olp-large .fc .inner{min-height:275px}
}
@media print{.olp-tools,.olp-actions,.olp-review-return{display:none!important}}

.olp-compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}.olp-compare-grid>div{padding:18px 14px;border:1px solid #cbd7e4;border-radius:10px;background:#f5f8fc;line-height:1.9;font-size:14px;word-break:keep-all;overflow-wrap:anywhere}@media(max-width:480px){.olp-compare-grid{grid-template-columns:1fr}}

/* Keep long mathematical expressions readable inside narrow lesson cards. */
.olp-enabled .katex{display:inline-block;max-width:100%;overflow-x:auto;overflow-y:hidden;vertical-align:middle}
.olp-enabled :is(.fml,.katex-display){max-width:100%;overflow-x:auto;overflow-y:hidden}
.olp-enabled :is(.card,.exbox,.why,.qtext){min-width:0;overflow-wrap:anywhere}
@media(max-width:600px){.olp-enabled .steps{flex-wrap:wrap}}
@media(max-width:480px){.olp-enabled .steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.olp-enabled .steps button{width:100%}}
