.question-bank-layout{display:grid;gap:18px}
.question-builder{border-color:#e0e9df;background:linear-gradient(145deg,#fff 78%,#f7faf6)}
.question-authoring-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 16px;padding:6px;border:1px solid #e4eae3;border-radius:11px;background:#f7f9f6}
.question-authoring-tab{min-height:40px;padding:0 15px;border:1px solid transparent;border-radius:8px;background:transparent;color:#657369;font-size:.7rem;font-weight:700;cursor:pointer}
.question-authoring-tab:hover{background:#eef3ed;color:#355c40}
.question-authoring-tab.is-active{border-color:#dfe8dd;background:white;color:#315b3d;box-shadow:0 2px 6px rgba(30,55,35,.06)}
.question-authoring-panel{min-width:0}
.question-authoring-panel[hidden]{display:none}
.question-editor-form{gap:17px}
.question-editor-intro{padding:14px 16px;border:1px solid #e3ebe1;border-radius:11px;background:#f7faf6}
.question-editor-intro p{margin:7px 0 0;color:#718075;font-size:.7rem;line-height:1.6}
.question-source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.question-answer-label{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:-9px}
.question-answer-label strong{font-size:.73rem}
.question-answer-label span{color:#8b968d;font-size:.61rem}
.question-private-note{display:grid;align-content:center;gap:4px;padding:10px 12px;border:1px solid #e4ebdc;border-radius:9px;background:#f6f8ef}
.question-private-note b{color:#4d694c;font-size:.67rem}
.question-private-note span{color:#788276;font-size:.62rem;line-height:1.5}
.question-option-panel{padding:15px;border:1px solid var(--line);border-radius:11px;background:#fbfcfa}
.question-option-panel .card-heading{margin-bottom:11px}
.question-option-panel .card-heading h3{margin:0 0 4px;font-size:.78rem}
.question-option-panel .card-heading p{margin:0;color:#849087;font-size:.64rem}
.question-bank-library-head{display:grid;gap:14px;padding:18px}
.question-bank-library-head h2{margin:0 0 4px;font-size:.94rem}
.question-bank-library-head p{margin:0;color:#859188;font-size:.66rem}
.question-bank-filters{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,.45fr) minmax(150px,.45fr);gap:8px}
.question-bank-filters input,.question-bank-filters select{min-height:39px;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#526057;font-size:.68rem}
.question-bank-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.question-bank-card{min-width:0;padding:17px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 3px 13px rgba(28,48,34,.035)}
.question-card-top,.question-card-badges{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.question-card-top{justify-content:space-between;margin-bottom:12px}
.question-kind-badge,.question-meta-badge{display:inline-flex;align-items:center;min-height:23px;padding:0 8px;border-radius:99px;background:#eaf2eb;color:#3d6947;font-size:.57rem;font-weight:750}
.question-meta-badge{background:#f4f1e7;color:#86704a}
.question-bank-body{min-height:46px;color:#27352b;font-size:.77rem;line-height:1.65}
.question-bank-body p:first-child{margin-top:0}
.question-bank-body p:last-child{margin-bottom:0}
.question-bank-body img,.question-answer-details img{max-width:100%;height:auto;border-radius:8px}
.question-bank-body table,.question-answer-details table{width:100%;border-collapse:collapse}
.question-bank-body th,.question-bank-body td,.question-answer-details th,.question-answer-details td{padding:7px 9px;border:1px solid #dfe7df;text-align:left}
.question-card-options{display:grid;gap:6px;margin:13px 0}
.question-card-options span{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:8px;background:#f7f9f7;color:#69756c;font-size:.65rem}
.question-card-options span.is-correct{background:#edf6ee;color:#347244}
.question-card-options b{flex:none;color:#667a69}
.question-card-meta{display:flex;flex-wrap:wrap;gap:5px 11px;margin-top:12px;padding-top:11px;border-top:1px solid #eff2ef;color:#818d84;font-size:.58rem}
.question-tag-list{display:flex;gap:5px;flex-wrap:wrap;margin-top:9px}
.question-tag-list span{padding:4px 7px;border-radius:99px;background:#f3f5f2;color:#768378;font-size:.56rem}
.question-answer-details{margin-top:12px;padding-top:10px;border-top:1px dashed #dce5dc}
.question-answer-details summary{color:#56715b;cursor:pointer;font-size:.64rem;font-weight:750}
.question-answer-details .rich-body{padding:10px 0;color:#59675c;font-size:.68rem;line-height:1.7}
.question-answer-details small{color:#3c7549;font-size:.61rem;font-weight:700}
.question-card-actions{display:flex;justify-content:flex-end;align-items:center;gap:11px;margin-top:11px;padding-top:10px;border-top:1px solid #eff2ef}
.question-card-actions .danger-link{font-size:.65rem}
.student-question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.student-question-card{min-width:0;padding:18px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 4px 17px rgba(28,48,34,.04)}
.student-question-prompt{margin:10px 0 14px;color:#27352b;font-size:.8rem;line-height:1.72}
.student-question-prompt p:first-child{margin-top:0}
.student-question-prompt p:last-child{margin-bottom:0}
.student-question-prompt img,.student-question-prompt table,.question-model-answer img,.question-model-answer table{max-width:100%;height:auto}
.student-question-prompt table,.question-model-answer table{width:100%;border-collapse:collapse}
.student-question-prompt td,.student-question-prompt th,.question-model-answer td,.question-model-answer th{padding:7px 9px;border:1px solid #dfe7df;text-align:left}
.question-practice-form{display:grid;gap:3px;margin-top:12px;padding-top:10px;border-top:1px solid #edf0ed}
.question-practice-form .button{justify-self:start;margin-top:6px}
.answer-feedback.is-incorrect{background:#fbefed;color:#9b514a}
.answer-feedback.is-correct{background:#eef6ef;color:#3e7249}
.question-model-answer{margin-top:13px;padding:13px;border:1px solid #dfeadf;border-radius:10px;background:#f8fbf7}
.question-model-answer .rich-body{margin-top:8px;color:#4e5f51;font-size:.72rem;line-height:1.75}
.question-library-count{margin:0 2px 10px;color:#808d83;font-size:.64rem}
.question-bank-student-filters{align-items:flex-end;padding:14px;border:1px solid var(--line);border-radius:12px;background:white}
.question-collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.question-collection-card{display:flex;align-items:center;gap:12px;width:100%;min-width:0;padding:16px;text-align:left;color:var(--ink);cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.question-collection-card>span:nth-child(2){display:grid;gap:5px;flex:1;min-width:0}
.question-collection-card strong{font-size:.76rem;line-height:1.4}
.question-collection-card small{color:var(--muted);font-size:.62rem;line-height:1.5}
.question-collection-summary{cursor:default}
.question-collection-summary:hover{transform:none}
.question-practice-session{margin-bottom:14px}
.question-practice-current{margin-top:14px}
.question-practice-progress{height:5px;overflow:hidden;border-radius:99px;background:#edf1ed}
.question-practice-progress span{display:block;height:100%;border-radius:inherit;background:#54835d;transition:width .2s ease}
.question-review-row{padding:14px 0;border-top:1px solid var(--line)}
.question-review-row .rich-body{margin:9px 0;color:#344438;font-size:.76rem;line-height:1.65}
.question-review-answer{margin:5px 0 9px;color:#506352;font-size:.66rem;font-weight:700}
.question-written-list{margin-top:20px}
.question-written-list>.card-heading{margin-bottom:11px}
.question-written-list h3{margin:0 0 4px;font-size:.9rem}
.question-written-list p{margin:0;color:var(--muted);font-size:.67rem}
select[name="questionIds"]{min-height:230px;padding:7px}
select[name="questionIds"] option{padding:5px}
@media(max-width:850px){.student-question-grid,.question-collection-grid{grid-template-columns:1fr}}
@media(max-width:600px){.question-bank-student-filters{align-items:stretch}.question-bank-student-filters .field{width:100%}}
@media(max-width:1000px){.question-bank-cards{grid-template-columns:1fr}.question-source-grid{grid-template-columns:1fr 1fr}.question-source-grid .field:last-child{grid-column:1/-1}}
@media(max-width:600px){.question-bank-filters{grid-template-columns:1fr}.question-source-grid{grid-template-columns:1fr}.question-source-grid .field:last-child{grid-column:auto}.question-answer-label{align-items:flex-start;flex-direction:column;gap:3px}}
