#hub-tools {display:flex;flex-wrap:wrap;gap:10px;margin-block:18px}
#hub-tools[hidden],#hub-result [hidden] {display:none!important}
#hub-tools button,#hub-result button {min-block-size:44px}
#hub-status:empty {display:none}
.hub-print-tools {display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-block:16px}
.hub-print-tools select {width:auto;min-block-size:44px}
#hub-document {background:white;padding:clamp(14px,3vw,36px);border:1px solid #e3eae6;border-radius:16px;overflow-wrap:anywhere}
.hub-copy {white-space:pre-line}
.hub-question,.hub-scene,.hub-slide {padding-block:12px;border-block-end:1px solid #e3eae6}
.hub-question label {display:block;padding:6px;cursor:pointer}
.hub-question input[type=radio],#hub-key-toggle {width:auto}
.hub-question img,.hub-scene img {display:block;max-width:min(100%,440px);height:auto}
.hub-choices {display:flex;flex-wrap:wrap;gap:8px 24px;list-style:none;padding-inline-start:10px}
.hub-lines {block-size:26px;border-block-end:1px dotted #61736c}
.hub-key,.hub-source {color:#426052}
.hub-table {overflow:auto}
.hub-table table {width:100%;border-collapse:collapse}
.hub-table :is(th,td) {border:1px solid #e3eae6;padding:6px;text-align:start;vertical-align:top}
@media print {
 body.tb-generation {padding:0!important;background:white!important}
 .tb-generation #app {padding:0!important;margin:0!important;width:auto!important;max-width:none!important}
 .tb-generation #app>h1,.tb-generation #app>.no-print {display:none!important}
 #hub-document {padding:0;border:0;border-radius:0;font-size:11pt}
 #hub-document h2 {font-size:18pt}
 #hub-document h3 {font-size:13pt;break-after:avoid}
 .hub-question,.hub-scene,.hub-slide,.hub-table tr {break-inside:avoid}
 .hub-table {overflow:visible}
}
.tb-generation .premium-context-button {display:none!important}

.tb-template { margin: 1rem 0; padding: .8rem 1rem; border: 1px solid var(--line,#d8ded9); border-radius: .75rem; }
.tb-template summary { cursor: pointer; font-weight: 700; }
.tb-template input[type="checkbox"] { width: auto; }
.tb-template textarea,.tb-template input[type="search"] { width: 100%; }
.tb-mapping { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .7rem; border-block-end: 1px solid var(--line,#d8ded9); padding-block: .5rem; overflow-wrap: anywhere; }
.tb-mapping select { width: 100%; align-self: center; }
.tb-resource-text { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; }
@media (max-width: 650px) { .tb-mapping { grid-template-columns: 1fr; } }

#hub-exam-config fieldset {padding:.6rem;margin-block:.7rem;border:1px solid #d8ded9;border-radius:.65rem;min-inline-size:0}
.hub-exam-options {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:.3rem}
#hub-exam-config label {display:block;padding:.25rem}
#hub-exam-config input[type=number] {inline-size:5rem}
#hub-exam-config button {min-block-size:44px}
.hub-scene img {max-inline-size:min(100%,54rem);margin-inline:auto;border-radius:.5rem}
.hub-marking {border-block-start:2px solid #426052;margin-block-start:1.5rem}
@media print {
 .hub-scene img {max-inline-size:100%;max-block-size:100mm;object-fit:contain;border-radius:0}
 .hub-marking {break-before:page}
}

.nb-proof {margin-inline:0;padding:.65rem 1rem;border-inline-start:3px solid #147d70;background:#eaf5f0}
.nb-proof p {font-size:1.2rem;line-height:2;margin-block:.2rem}
@media print {.nb-proof {background:white;break-inside:avoid}}

.hub-worksheet .hub-question,.hub-question{border:2px solid #9aa99c;border-radius:14px;background:#fffdf6;padding:20px!important;margin:16px 0;break-inside:avoid}.hub-plan-scope{padding:18px;border:1px solid #9aa99c;border-radius:14px;margin:18px 0}.hub-plan-scope label{display:flex;align-items:center;gap:12px;padding:8px}.hub-plan-scope input{width:22px;height:22px}@media print{.hub-plan-scope{display:none}.hub-question{box-shadow:none}}
