.lpc-qt{--lpc-ok:#1e8e3e;--lpc-bad:#d93025;--lpc-line:#d0d5dd;--lpc-soft:#f5f7fa;--lpc-acc:#2563eb;margin:8px 0 4px}
.lpc-qt-help{font-size:.9em;color:#667085;margin:0 0 8px}
.lpc-qt button{font:inherit}
.lpc-qt .is-ok{border-color:var(--lpc-ok)!important;background:#e6f4ea!important}
.lpc-qt .is-bad{border-color:var(--lpc-bad)!important;background:#fce8e6!important}
.lpc-qt .is-missed{border-style:dashed!important;border-color:var(--lpc-ok)!important}
.lpc-qt .question-response{margin-top:10px}
.lpc-opt,.lpc-chip{display:block;width:100%;text-align:left;padding:8px 12px;margin:0 0 6px;border:1px solid var(--lpc-line);border-radius:8px;background:#fff;cursor:pointer;color:inherit;line-height:1.4}
.lpc-opt.is-on,.lpc-chip:hover:not(:disabled){border-color:var(--lpc-acc);background:#eff4ff}
.lpc-opt:disabled,.lpc-chip:disabled{cursor:default}
/* bowtie */
.lpc-bt-diagram{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;align-items:center;margin:0 0 14px;padding:14px;background:var(--lpc-soft);border-radius:10px;position:relative}
.lpc-bt-side .lpc-bt-slots{display:flex;flex-direction:column;gap:8px}
.lpc-bt-center{display:flex;justify-content:center;position:relative}
.lpc-bt-center:before,.lpc-bt-center:after{content:"";position:absolute;top:50%;width:18%;border-top:2px solid #98a2b3}
.lpc-bt-center:before{left:0}.lpc-bt-center:after{right:0}
.lpc-bt-center .lpc-bt-slots{width:60%}
.lpc-bt-slot{min-height:38px;padding:8px;border:2px dashed #98a2b3;border-radius:8px;background:#fff;font-size:.9em;text-align:center}
.lpc-bt-slot.is-filled{border-style:solid;border-color:var(--lpc-acc)}
.lpc-bt-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.lpc-bt-head{display:flex;justify-content:space-between;gap:6px;margin:0 0 6px}
.lpc-bt-head small{color:#667085}
@media(max-width:640px){.lpc-bt-cols{grid-template-columns:1fr}.lpc-bt-diagram{grid-template-columns:1fr;gap:8px}.lpc-bt-center:before,.lpc-bt-center:after{display:none}.lpc-bt-center .lpc-bt-slots{width:100%}}
/* drag & drop */
.lpc-dd{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lpc-dd-box{min-height:120px;padding:10px;border:1px solid var(--lpc-line);border-radius:10px;background:var(--lpc-soft)}
.lpc-dd-box.is-resp{border:2px dashed var(--lpc-acc);background:#fff}
.lpc-dd-title{font-weight:600;margin:0 0 8px}
.lpc-dd-empty{color:#98a2b3;font-size:.9em;margin:0}
.lpc-chip{cursor:grab}
@media(max-width:640px){.lpc-dd{grid-template-columns:1fr}}
/* highlight */
.lpc-hl{line-height:1.9}
.lpc-hl-seg{cursor:pointer;border-bottom:1px dotted #98a2b3;border-radius:3px;padding:1px 2px;border:1px solid transparent}
.lpc-hl-seg:hover{background:#fff8c5}
.lpc-hl-seg.is-on{background:#fde047}
.lpc-hl-seg.is-ok{background:#c6efce!important}
/* hot spot */
.lpc-hs{position:relative;display:inline-block;max-width:100%;user-select:none;border-radius:8px;overflow:hidden;outline-offset:2px}
.lpc-hs.is-active{cursor:crosshair}
.lpc-hs img{display:block;max-width:100%;height:auto}
.lpc-hs-zone{position:absolute;border:2px solid var(--lpc-ok);background:rgba(30,142,62,.18);border-radius:4px}
.lpc-hs-pin{position:absolute;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:var(--lpc-acc);border:3px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.4)}
.lpc-hs-pin.is-ok{background:var(--lpc-ok)}.lpc-hs-pin.is-bad{background:var(--lpc-bad)}
/* matching */
.lpc-mt-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--lpc-line);border-radius:8px;margin:0 0 6px}
.lpc-mt-row select{width:100%}
.lpc-mt-sol{grid-column:2;color:var(--lpc-ok)}
@media(max-width:640px){.lpc-mt-row{grid-template-columns:1fr}.lpc-mt-sol{grid-column:1}}
/* matrix */
.lpc-mx-wrap{overflow-x:auto}
.lpc-mx{border-collapse:collapse;width:100%}
.lpc-mx th,.lpc-mx td{border:1px solid var(--lpc-line);padding:8px;text-align:center}
.lpc-mx tbody th{text-align:left;font-weight:normal}
.lpc-mx thead th{background:var(--lpc-soft)}
/* ordering */
.lpc-or{list-style:decimal;margin:0;padding:0 0 0 28px}
.lpc-or-item{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;margin:0 0 6px;border:1px solid var(--lpc-line);border-radius:8px;background:#fff}
.lpc-or-item[draggable=true]{cursor:grab}
.lpc-or-h{color:#98a2b3}
.lpc-or-text{flex:1}
.lpc-or-btns button{border:1px solid var(--lpc-line);background:#fff;border-radius:6px;padding:2px 8px;cursor:pointer;margin-left:2px}
.lpc-or-sol{flex-basis:100%;color:var(--lpc-ok)}
/* essay */
.lpc-es{width:100%;box-sizing:border-box;padding:10px;border:1px solid var(--lpc-line);border-radius:8px;font:inherit}
.lpc-es-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:.85em;color:#667085;margin-top:4px}
.lpc-es-meta.is-short span:first-child{color:var(--lpc-bad)}
.lpc-qt .question-response{display:flex;gap:10px;align-items:center}
.lpc-bt-slot{display:flex;align-items:center;justify-content:center}
.lpc-qt .lpc-hs-pin.is-ok{background:var(--lpc-ok)!important;border-color:#fff!important}.lpc-qt .lpc-hs-pin.is-bad{background:var(--lpc-bad)!important;border-color:#fff!important}
