:root{--bg:#0f172a;--surface:#1e293b;--surface-2:#334155;--text:#f1f5f9;--muted:#94a3b8;--accent:#38bdf8;--danger:#f87171;--radius:12px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);font-family:system-ui,Segoe UI,Tahoma,Noto Naskh Arabic,sans-serif}.app-shell{max-width:480px;margin-inline:auto;padding:1rem}@media (width>=768px){.app-shell{max-width:720px;padding:2rem}}.topbar{justify-content:space-between;align-items:center;gap:.75rem;margin-block-end:1.5rem;display:flex}.brand{flex-direction:column;display:flex}.brand strong{font-size:1.1rem}.brand span{color:var(--muted);font-size:.8rem}.card{background:var(--surface);border-radius:var(--radius);margin-block-end:1rem;padding:1.25rem}.field{flex-direction:column;gap:.35rem;margin-block-end:1rem;display:flex}.check-row{align-items:center;gap:.4rem;margin-block:.4rem;display:flex}.check-row+.field{margin-block-start:.75rem}.field label{color:var(--muted);font-size:.85rem}input,select,button{font:inherit;border:1px solid var(--surface-2);background:var(--surface-2);color:var(--text);border-radius:8px;padding:.7rem .85rem;font-size:16px}input:focus,select:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button{cursor:pointer;background:var(--accent);color:#082f49;border:none;width:100%;font-weight:600}button:disabled{opacity:.6;cursor:progress}.btn-ghost{width:auto;color:var(--text);border:1px solid var(--surface-2);background:0 0}.lang-switch{width:auto;padding-block:.4rem}.error{color:var(--danger);margin-block-start:.25rem;font-size:.85rem}.banner-warning{border-radius:var(--radius);background:#fbbf241f;border:1px solid #fbbf2459;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-block-end:1rem;padding:.75rem 1rem;font-size:.9rem;display:flex}.banner-warning .muted{margin-block-start:.25rem;font-size:.85rem}.row{border-block-end:1px solid var(--surface-2);justify-content:space-between;gap:.5rem;padding-block:.4rem;display:flex}.row:last-child{border-block-end:none}.row .muted{color:var(--muted)}.badge{background:var(--surface-2);color:var(--muted);white-space:nowrap;border-radius:999px;margin-inline-end:.4rem;padding:.1rem .45rem;font-size:.7rem;display:inline-block}.help{background:var(--surface-2);block-size:1.05rem;inline-size:1.05rem;color:var(--muted);cursor:help;-webkit-user-select:none;user-select:none;border-radius:999px;justify-content:center;align-items:center;margin-inline-start:.35rem;font-size:.7rem;font-weight:700;display:inline-flex}.subfield{flex-direction:column;gap:.35rem;display:flex}.divider{border:none;border-block-start:1px solid var(--surface-2);margin-block:1rem}.opt-row{align-items:flex-start;gap:.5rem;margin-block-end:.75rem;display:flex}.opt-row .grow{flex:1}.q-detail{border-block-end:1px solid var(--surface-2);padding:.6rem .2rem .9rem}.bilingual{flex-direction:column;gap:.15rem;display:flex}.q-options,.q-blanks{flex-direction:column;gap:.4rem;margin:.6rem 0 0;padding:0;list-style:none;display:flex}.q-options li,.q-blanks li{align-items:baseline;gap:.5rem;display:flex}.q-options .mark{color:var(--muted)}.q-options li.correct,.q-options li.correct .mark{color:#4ade80}.q-explanation{flex-direction:column;gap:.2rem;margin-block-start:.6rem;display:flex}.q-fillgap{margin:0 0 .4rem;line-height:2}.gap-chip{color:#4ade80;background:#4ade8026;border-radius:6px;align-items:center;gap:.25rem;margin-inline:.15rem;padding:.05rem .4rem;display:inline-flex}.gap-cs-badge{background:var(--surface-2);color:var(--muted);border-radius:4px;padding:0 .25rem;font-size:.65rem}.gap-row{border-block-end:1px solid var(--surface-2);flex-wrap:wrap;align-items:center;gap:.5rem;padding-block:.4rem;display:flex}.gap-row .gap-answers{flex-direction:column;flex:1;gap:.1rem;min-inline-size:6rem;display:flex}.gap-row .gap-cs{white-space:nowrap;align-items:center;gap:.35rem;display:flex}.gap-row .gap-points{inline-size:5rem}.badge-draft{background:var(--surface-2);color:var(--muted)}.badge-published{color:#4ade80;background:#4ade8026}.preview-grid{grid-template-columns:1fr;gap:.75rem;margin-block-start:1rem;display:grid}@media (width>=768px){.preview-grid{grid-template-columns:repeat(3,1fr)}}.preview-paper{background:var(--bg);border:1px solid var(--surface-2);border-radius:8px;padding:.6rem .75rem}.preview-seed{margin-block-end:.4rem;font-size:.75rem}.preview-q{margin-block-end:.6rem;font-size:.85rem}.preview-opts{color:var(--muted);margin:.25rem 0 0;padding-inline-start:1.2rem}.pool-block{border-inline-start:3px solid var(--surface-2);margin-block:.6rem;padding-inline-start:.6rem}.pool-block .pool-member{padding-inline-start:.6rem;font-size:.9rem}.pool-block .pool-hint{margin-block:.15rem .4rem;font-size:.78rem}.take-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.timer{font-variant-numeric:tabular-nums;background:var(--surface-2);white-space:nowrap;border-radius:8px;padding:.25rem .6rem}.timer-low{color:var(--danger);background:#f8717133}body.no-copy{-webkit-user-select:none;user-select:none}body.no-copy input,body.no-copy textarea{-webkit-user-select:text;user-select:text}.take-nocopy-note{margin-block:-.5rem .75rem;font-size:.78rem}.take-q{margin-block-end:.6rem}.take-option{align-items:center;gap:.5rem;padding-block:.35rem;display:flex}.settings-heading{align-items:center;gap:.4rem;font-size:1.05rem;font-weight:700;display:inline-flex}.field input:disabled{opacity:.5;cursor:not-allowed}.take-pagemeta{padding-block:.5rem}.take-nav-row{justify-content:space-between;gap:.75rem;display:flex}.pager-row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.pager-btn{border:1px solid var(--surface-2);background:var(--surface-2);width:auto;min-width:2.6rem;color:var(--text,#e5e7eb);font-variant-numeric:tabular-nums;text-align:center;border-radius:8px;flex:none;padding:.55rem .6rem;font-weight:600}.pager-btn.active{background:var(--accent);color:#082f49;border-color:#0000}.pager-btn.gap:not(.active){color:#fca5a5;background:#f8717126;border-color:#f871718c}.pager-submit{flex:auto;min-width:9rem}.card.q-unanswered{border-color:#f871718c;box-shadow:inset 3px 0 #f87171bf}.q-flag{color:#fca5a5;vertical-align:middle;background:#f8717126;border:1px solid #f8717166;border-radius:999px;margin-inline-start:.5rem;padding:.1rem .45rem;font-size:.7rem;font-weight:600}.notice{border-radius:10px;align-items:flex-start;gap:.6rem;margin-block:.7rem;padding:.7rem .9rem;display:flex}.notice p{margin:0}.notice p+p{margin-block-start:.25rem}.notice-icon{font-size:1.15rem;line-height:1.35}.notice-warn{color:#fcd34d;background:#fbbf2421;border:1px solid #fbbf2480}.row.timed-out,.review-q.timed-out{background:#f8717117;border-radius:6px;padding-inline-start:.6rem;box-shadow:inset 3px 0 #f87171bf}.waiting-dots{letter-spacing:.3rem;color:var(--muted);animation:1.4s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.3}}.result-score{margin-block:.4rem;font-size:1.6rem;font-weight:700}.mark-ok{color:#4ade80}.mark-bad{color:var(--danger)}.badge-pass{color:#4ade80;background:#4ade8026}.badge-fail{color:var(--danger);background:#f8717133}.share-row{flex-wrap:wrap;align-items:flex-start;gap:1rem;display:flex}.share-row .grow{flex:1;min-inline-size:12rem}.session-block{border:1px solid var(--surface-2);border-radius:.5rem;margin-block:.8rem;padding:.8rem}.session-caret{width:auto;color:var(--muted);background:0 0;border:none;flex:none;padding:.2rem .4rem;font-size:.9rem;line-height:1}.session-caret:hover{color:var(--text)}.session-block .session-name{width:auto;flex:1;min-inline-size:8rem;font-weight:600}.session-fields{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.6rem;margin-block:.6rem;display:grid}.session-fields .field{margin-block:0}.pw-input{display:flex;position:relative}.pw-input input{flex:1;min-width:0;padding-inline-end:2.6rem}.pw-reveal{width:auto;color:var(--muted);background:0 0;border:none;justify-content:center;align-items:center;padding:0 .7rem;display:flex;position:absolute;inset-block:0;inset-inline-end:0}.pw-reveal:hover{color:var(--text)}.session-tag{margin-inline-start:.4rem;font-size:.78rem}.reg-field-row{border-block-end:1px solid var(--surface-2);flex-wrap:wrap;align-items:center;gap:.4rem;padding-block:.4rem;display:flex}.reg-field-row input{width:auto;flex:1;min-inline-size:5rem}.reg-field-row select{width:auto}.badge-att-pending{color:var(--accent);background:#38bdf826}.badge-att-in_progress{background:var(--surface-2);color:var(--text)}.badge-att-submitted{background:var(--surface-2);color:var(--muted)}.badge-att-graded{color:#4ade80;background:#4ade8026}.withdrawn-section{border-block-start:1px solid var(--surface-2);margin-block-start:.75rem;padding-block-start:.5rem}.withdrawn-row{opacity:.72;border-inline-start:2px solid var(--surface-2);margin-block-end:.4rem;padding-inline-start:.6rem}.withdrawn-meta{margin-block:.1rem .3rem;font-size:.78rem}.badge-withdrawn{color:var(--danger);background:#f8717126}.struck{text-decoration:line-through}.btn-danger{color:var(--danger)}.purge-log{border-block-start:1px dashed var(--surface-2);opacity:.8;margin-block-start:.5rem;padding-block-start:.4rem}.status-dot{border-radius:50%;block-size:.6rem;inline-size:.6rem;margin-inline-end:.4rem;display:inline-block}.status-dot.online{background:#4ade80}.status-dot.offline{background:var(--danger)}.variant-tabs-card{padding-block-end:.85rem}.variant-tab-strip{flex-wrap:wrap;gap:.4rem;display:flex}.variant-tab{border:1px solid var(--surface-2);background:var(--surface-2);color:var(--text);cursor:pointer;border-radius:999px;padding:.35rem .75rem;font-size:.85rem}.variant-tab.active{border-color:var(--accent);outline:2px solid var(--accent)}.variant-tab.inactive{color:var(--muted);opacity:.7}.variant-tab .dot{color:var(--danger);margin-inline-start:.3rem}.variant-tab.add{color:var(--accent);background:0 0}.variant-tab:disabled{opacity:.5;cursor:not-allowed}.variant-actions{align-items:center;gap:1rem;margin-block-start:.75rem;display:flex}.variant-actions label{align-items:center;gap:.4rem;display:flex}.variant-block+.variant-block{border-block-start:1px solid var(--surface-2);margin-block-start:.75rem;padding-block-start:.75rem}.variant-head{align-items:center;gap:.5rem;margin-block-end:.35rem;font-size:.8rem;display:flex}.attempt-review{border-inline-start:2px solid var(--surface-2);margin-block:.5rem 1rem;padding-inline-start:.5rem}.review-q+.review-q{margin-block-start:.85rem}.review-q-head{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.review-q-meta{white-space:nowrap;align-items:center;gap:.5rem;margin-inline-start:auto;display:flex}.review-opts{margin:.4rem 0 0;padding:0;list-style:none}.review-opt{border-radius:6px;align-items:center;gap:.5rem;padding:.2rem .4rem;display:flex}.review-opt .mark{text-align:center;width:1.2rem;color:var(--muted)}.review-opt.correct,.review-opt.correct .mark{color:#4ade80}.review-opt.selected{background:var(--surface-2)}.review-opt.wrong,.review-opt.wrong .mark,.wrong{color:var(--danger)}.take-fillgap{line-height:2.2}.gap-input{width:8rem;margin-inline:.25rem;padding:.2rem .4rem;display:inline-block}.short-answer{resize:vertical;width:100%;min-height:5rem}.review-short{flex-direction:column;gap:.5rem;display:flex}.review-short-answer{background:var(--surface-2,#7f7f7f14);border-radius:6px;padding:.5rem .75rem}.review-grade{align-items:center;gap:.5rem;display:flex}.review-grade .gap-points{width:5rem}.review-grade-actions{margin-block-start:.75rem}.section-toggle{width:100%;color:inherit;text-align:start;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:.5rem;padding:0;display:flex}.section-toggle h2{margin:0}.section-caret{color:var(--muted);font-size:.9rem}.section-body{margin-block-start:1rem}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.6rem;margin-block:.5rem 1rem;display:grid}.stat{background:var(--surface-2);border-radius:var(--radius);flex-direction:column;gap:.15rem;padding:.6rem .8rem;display:flex}.stat .stat-value{font-size:1.35rem;font-weight:700}.stat .stat-label{color:var(--muted);font-size:.75rem}.item-analytics{border-block-start:1px solid var(--surface-2);padding-block:.7rem}.item-analytics:first-of-type{border-block-start:none}.item-analytics-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.item-analytics-title{flex:1;min-inline-size:10rem;font-weight:600}.metric-chip{background:var(--surface-2);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.15rem .55rem;font-size:.75rem;display:inline-flex}.metric-good{color:#4ade80;background:#4ade8026}.metric-warn{color:#fbbf24;background:#fbbf2426}.metric-bad{color:var(--danger);background:#f8717133}.distractors{flex-direction:column;gap:.3rem;margin-block-start:.5rem;display:flex}.distractor{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.distractor-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-inline-size:6rem;overflow:hidden}.distractor-text.correct{color:#4ade80;font-weight:600}.distractor-bar{background:var(--surface-2);border-radius:999px;flex:2;block-size:.55rem;overflow:hidden}.distractor-bar-fill{background:var(--muted);block-size:100%}.distractor-bar-fill.correct{background:#4ade80}.distractor-count{text-align:end;inline-size:4.5rem;color:var(--muted);font-size:.8rem}.builder-layout{grid-template-columns:1fr;align-items:start;gap:1rem;display:grid}.app-shell:has(.builder-layout){max-width:1468px}@media (width>=1024px){.builder-layout{grid-template-columns:17rem minmax(min(52rem,100% - 18rem),1fr) minmax(0,17rem)}.version-rail{position:sticky;inset-block-start:1rem}}.version-rail h2{margin-block:0 .25rem;font-size:1rem}.version-list{flex-direction:column;gap:.3rem;max-block-size:22rem;margin-block:.75rem;display:flex;overflow-y:auto}.version-row{border-radius:8px;align-items:center;gap:.25rem;padding-inline:.25rem;display:flex}.version-row.active{background:var(--surface-2)}.version-pick{inline-size:auto;min-inline-size:0;color:inherit;text-align:start;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:auto;align-items:flex-start;gap:.15rem;padding:.45rem .35rem;display:flex}.version-name{text-overflow:ellipsis;white-space:nowrap;max-inline-size:100%;font-weight:600;overflow:hidden}.version-meta{flex-wrap:wrap;align-items:center;gap:.3rem;font-size:.72rem;display:flex}.version-meta .badge{margin-inline-end:0}.version-meta>span+span:before{content:"·";margin-inline-end:.3rem}.version-meta>.badge+span:before{content:none}.version-actions{flex:none;gap:.1rem;display:flex}.version-action{inline-size:auto;padding:.35rem .45rem;font-size:.95rem;line-height:1}.version-action.danger{color:var(--danger)}.version-row input{min-inline-size:0}.qr-button{cursor:zoom-in;background:0 0;border:none;border-radius:6px;inline-size:auto;padding:0;line-height:0}.qr-button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.qr-overlay{z-index:50;background:#0f172ae0;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.qr-sheet{color:#0f172a;border-radius:var(--radius);text-align:center;background:#fff;max-block-size:94vh;max-inline-size:min(94vw,34rem);padding:1rem;overflow:auto}.qr-sheet svg{block-size:auto;inline-size:min(100%,68vh);margin-inline:auto;display:block}.qr-caption{margin-block:.7rem .2rem;font-weight:700}.qr-link{color:#475569;word-break:break-all;margin-block:0 .7rem;font-size:.8rem}.qr-sheet .btn-ghost{color:#0f172a;border-color:#cbd5e1}
