:root{--blue:#0f2a44;--orange:#f28c28;--bg:#f4f7fb;--card:#fff;--text:#17202a;--muted:#617084;--border:#dce3ec;--ok:#157347;--warn:#9a6700;--bad:#b42318;--radius:18px}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:17px;line-height:1.5}button,a.button,input,select,textarea{font:inherit}button,a.button{border:0;border-radius:14px;padding:13px 18px;min-height:48px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:var(--orange);color:#161616;font-weight:800}.secondary{background:#e8eef5;color:var(--blue);font-weight:700}.link{background:transparent;color:var(--blue);text-decoration:underline}.big{width:100%;font-size:1.1rem}.page{width:min(1120px,100%);margin:0 auto;padding:18px}.narrow{width:min(650px,100%)}.hero{min-height:100vh;display:grid;place-items:center}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:0 8px 26px #0f2a4414}.center{text-align:center}.badge,.theme{display:inline-flex;background:#eaf1f8;color:var(--blue);font-weight:800;border-radius:999px;padding:5px 12px;font-size:.88rem}.muted{color:var(--muted)}.rgpd{background:#fff7ed;border-left:5px solid var(--orange);padding:12px;border-radius:12px}.alert{background:#fff0ef;border:1px solid #ffd2ce;color:#9f1d15;padding:12px;border-radius:12px;margin:12px 0}label{display:grid;gap:6px;font-weight:700;margin:12px 0}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:13px;padding:13px 14px;background:#fff;min-height:48px}textarea{min-height:95px}.quiz-head{position:sticky;top:0;background:#f4f7fbf0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2;padding:10px 0 12px}.progress{height:12px;background:#dce3ec;border-radius:999px;overflow:hidden;margin-top:8px}.progress span{display:block;height:100%;background:var(--orange)}.hint{font-weight:700;color:var(--blue)}.answers{display:grid;gap:12px;margin:18px 0}.answer{width:100%;text-align:left;background:#fff;border:2px solid var(--border);color:var(--text);justify-content:flex-start;font-weight:700;padding:16px}.answer.selected{border-color:var(--orange);background:#fff7ed}.check{width:28px;height:28px;display:inline-grid;place-items:center;border:2px solid var(--border);border-radius:8px;font-weight:900;flex:none}.selected .check{background:var(--orange);border-color:var(--orange)}.row{display:flex;gap:12px;flex-wrap:wrap}.between{justify-content:space-between}.result-head{text-align:center;margin-bottom:18px}.result-head h1{font-size:3.2rem;margin:.2em 0}.score{font-size:1.3rem;font-weight:900;color:var(--blue)}.pill{display:inline-flex;border-radius:999px;padding:6px 12px;font-weight:900;background:#eee}.pill.ok{background:#e9f7ef;color:var(--ok)}.pill.warn{background:#fff4db;color:var(--warn)}.pill.bad{background:#ffebe9;color:var(--bad)}.grid-cards,.cards-list{display:grid;gap:14px}.correction h2,.trainee h2{font-size:1.2rem;margin:.35em 0}.topbar{position:sticky;top:0;z-index:3;background:var(--blue);color:#fff;margin:-18px -18px 18px;padding:14px 18px;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.nav-actions{display:flex;gap:8px;flex-wrap:wrap}.nav-actions button{background:#ffffff21;color:#fff;border:1px solid rgba(255,255,255,.22);min-height:42px;padding:9px 12px}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;align-items:end;margin-bottom:14px}.filters label{margin:0}.trainee{display:grid;gap:8px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f2a448c;padding:14px;overflow:auto;z-index:10}.modal-card{width:min(900px,100%);margin:0 auto}.close{float:right;background:#e8eef5}.mini{border:1px solid var(--border);border-radius:14px;padding:14px;margin:12px 0;background:#fbfdff}.grid-admin{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:16px}.answer-edit{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;margin:8px 0}.inline{display:flex;align-items:center;gap:8px;margin:0}.inline input{width:auto;min-height:auto}.update-banner{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;background:var(--blue);color:#fff;box-shadow:0 8px 24px #0003}hr{border:0;border-top:1px solid var(--border);margin:20px 0}@media (max-width:720px){body{font-size:16px}.page{padding:12px}.card{padding:18px;border-radius:16px}.grid-admin{grid-template-columns:1fr}.topbar{margin:-12px -12px 12px}.nav-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.row.between{display:grid;grid-template-columns:1fr 1fr}.answer-edit,.filters{grid-template-columns:1fr}.result-head h1{font-size:2.6rem}}@media (max-width:380px){.nav-actions,.row.between{grid-template-columns:1fr}button,a.button{width:100%}}.answer{align-items:flex-start}.answer-content{display:grid;gap:10px;flex:1}.image-open{padding:0;min-height:0;background:transparent;border:0;width:100%;display:block}.answer-image{width:100%;max-height:220px;object-fit:contain;border-radius:14px;background:#f2f5f8;border:1px solid var(--border)}.correction-answers{display:grid;gap:8px;margin:12px 0}.correction-answer{display:grid;grid-template-columns:auto 86px 1fr;gap:10px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:10px;background:#fff}.correction-answer.correct{border-left:5px solid var(--ok)}.correction-answer.wrong{border-left:5px solid var(--bad)}.correction-answer.selected{background:#fff7ed}.correction-answer .order{width:30px;height:30px;border-radius:999px;background:#eaf1f8;color:var(--blue);font-weight:900;display:grid;place-items:center}.correction-image{width:86px;height:64px;object-fit:contain;border-radius:10px;background:#f2f5f8;border:1px solid var(--border)}.answer-admin-main{display:grid;gap:8px}.admin-image-line{display:grid;grid-template-columns:96px 1fr;gap:10px;align-items:center}.admin-image-line img{width:96px;height:72px;object-fit:contain;border-radius:10px;border:1px solid var(--border);background:#f2f5f8}input[type=file]{padding:10px;background:#fff}.answer-edit{grid-template-columns:1fr auto;border:1px dashed var(--border);border-radius:14px;padding:10px}@media (max-width:720px){.answer{display:grid;grid-template-columns:auto 1fr}.answer-image{max-height:180px}.correction-answer{grid-template-columns:auto 1fr}.correction-image{grid-column:2;width:100%;height:120px}.admin-image-line{grid-template-columns:1fr}.admin-image-line img{width:100%;height:150px}.answer-edit{grid-template-columns:1fr}}.admin-answer-image-zone{display:grid;gap:10px;background:#f8fafc;border:1px solid var(--border);border-radius:14px;padding:12px}.admin-image-actions{display:grid;gap:8px}.file-button{position:relative;overflow:hidden;width:fit-content}.file-button input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.admin-answer-image-zone label{margin:0}@media (max-width:720px){.file-button{width:100%}.admin-image-actions{grid-template-columns:1fr}.admin-answer-image-zone{padding:10px}}.notice{background:#eef8f0;border:1px solid #cfe9d8;color:#155724;padding:12px;border-radius:12px;margin:12px 0}.danger{background:#ffebe9;color:#8a1f16;font-weight:800;border:1px solid #ffc6c1}.nav-actions button.active{background:var(--orange);color:#111;border-color:var(--orange);font-weight:900}.error-pre{white-space:pre-wrap;background:#f8fafc;border:1px solid var(--border);border-radius:12px;padding:10px;overflow:auto}.one-col{grid-template-columns:1fr}.compact-head{margin-bottom:14px}.inline-edit{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:center}.answer-edit-actions{display:grid;gap:10px;align-items:start}.answer-edit-actions button{width:100%}.topbar strong{white-space:nowrap}.app{overflow-x:hidden}@media (max-width:720px){.inline-edit{grid-template-columns:1fr}.nav-actions button,.topbar strong{width:100%}.answer-edit-actions{grid-template-columns:1fr}.row .danger,.row .secondary,.row .primary{flex:1 1 180px}}@media (max-width:420px){.row{display:grid;grid-template-columns:1fr}.modal{padding:8px}.modal-card{padding:14px}}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.switch-line{background:#f8fafc;border:1px solid var(--border);border-radius:14px;padding:12px}.questions-section{display:grid;gap:14px}.question-editor{margin-bottom:14px}.maintenance-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.maintenance .alert{margin-bottom:16px}.topbar{overflow-x:hidden}.nav-actions{max-width:100%}@media (min-width:721px){.nav-actions{overflow-x:auto;flex-wrap:nowrap}.nav-actions button{white-space:nowrap;flex:0 0 auto}}@media (max-width:720px){.two-cols{grid-template-columns:1fr}.nav-actions{display:flex;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.nav-actions button{width:auto;white-space:nowrap;flex:0 0 auto}.topbar{display:block}.topbar strong{display:block;margin-bottom:10px}.maintenance-actions{grid-template-columns:1fr}}.question-image{width:100%;max-height:320px;object-fit:contain;border-radius:16px;background:#eef5f8;border:1px solid var(--border);margin:10px 0 14px}.question-image.small{max-height:180px}.question-admin-image{margin:12px 0 18px}.question-editor .question-image{max-height:220px}@media (max-width:720px){.question-image{max-height:240px}.question-image.small{max-height:140px}}.version-badge{width:fit-content;max-width:100%;margin:14px auto 0;padding:6px 10px;border-radius:999px;background:#eaf1f8;color:var(--blue);font-weight:800;font-size:.78rem;text-align:center}.compact{padding:14px}.compact h2{margin:.25rem 0}.compact-filters{padding:14px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.compact-filters input,.compact-filters select{min-height:42px;padding:9px 10px}.compact-results{display:grid;gap:8px}.result-row{display:grid;grid-template-columns:1.4fr 1.4fr auto auto auto;align-items:center;gap:10px;background:#fff;border:1px solid var(--border);border-radius:14px;padding:10px 12px;box-shadow:0 4px 14px #0f2a440d}.result-main{display:grid;gap:1px}.result-main strong{font-size:1rem}.result-main span,.result-dates{font-size:.88rem;color:var(--muted)}.result-dates{display:grid;gap:1px}.result-row .score{font-size:1rem;margin:0;white-space:nowrap}.compact-button{min-height:38px;padding:8px 12px}.topbar{gap:8px}.topbar strong{font-size:1rem}.hide-small{display:inline}.nav-actions{display:grid;grid-template-columns:repeat(8,auto);gap:6px;align-items:center}.nav-actions button{min-height:38px;padding:7px 10px;font-size:.92rem;border-radius:11px}.update-banner{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;background:var(--blue);color:#fff;border-radius:16px;padding:10px 12px;box-shadow:0 10px 30px #00000038;display:flex;gap:10px;align-items:center;justify-content:center}.update-banner button{background:var(--orange);color:#111;min-height:38px;padding:8px 12px}.question-editor .notice{margin-top:0}@media (max-width:900px){.result-row{grid-template-columns:1fr auto;align-items:start}.result-dates,.result-row .score{grid-column:1 / -1}.result-row .pill{justify-self:start}.compact-button{justify-self:stretch}}@media (max-width:720px){.nav-actions{display:grid;grid-template-columns:repeat(3,1fr);overflow:visible;padding-bottom:0}.nav-actions button{width:100%;white-space:normal;font-size:.86rem;min-height:38px;padding:7px 6px}.hide-small{display:none}.result-row{grid-template-columns:1fr;gap:6px;padding:11px}.result-dates{font-size:.86rem}.result-row .pill,.compact-button{justify-self:stretch}.compact-filters{grid-template-columns:1fr;padding:12px}.version-badge{font-size:.74rem}.update-banner{align-items:stretch;flex-direction:column;text-align:center}.update-banner button{width:100%}}@media (max-width:380px){.nav-actions{grid-template-columns:repeat(2,1fr)}}.qr-card{margin:22px auto 16px;padding:18px;border:1px solid var(--border);border-radius:18px;background:#f8fafc;display:grid;gap:10px;place-items:center;text-align:center;width:min(100%,330px)}.qr-card h2{margin:.1rem 0;font-size:1.25rem;color:var(--blue)}.qr-card p{margin:0;color:var(--muted)}.qr-frame{background:#fff;border:1px solid var(--border);border-radius:18px;padding:14px;box-shadow:0 6px 18px #0f2a4414}.qr-frame img{display:block;width:210px;height:210px;image-rendering:pixelated}.qr-link{font-weight:800;color:var(--blue);word-break:break-word}.question-card.is-editing{border-color:var(--orange);box-shadow:0 10px 30px #f28c2829}.question-card.is-editing>.question-editor{margin:0;padding:0;border:0;box-shadow:none;background:transparent}.question-answer-summary{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 14px}.answer-summary{border:1px solid var(--border);background:#f8fafc;border-radius:999px;padding:5px 9px;font-size:.88rem;color:var(--muted)}.answer-summary.correct{background:#e9f7ef;color:var(--ok);border-color:#cfe9d8;font-weight:800}@media (max-width:720px){.qr-card{width:100%;padding:16px}.qr-frame img{width:190px;height:190px}.question-answer-summary{display:grid;grid-template-columns:1fr}.answer-summary{border-radius:12px}}@media (min-width:1100px){.qr-frame img{width:220px;height:220px}}.correction-grid{display:grid;gap:12px}.correction-card-compact{padding:14px;overflow:hidden}.correction-question-head{display:grid;gap:4px;margin-bottom:8px}.correction-question-head .theme{width:fit-content;font-size:.78rem;padding:4px 9px}.correction-question-head h2{font-size:1.05rem;line-height:1.28;margin:2px 0 0;color:var(--blue)}.points-line{margin:0;font-size:.95rem;color:var(--text)}.correction-summary-lines{display:grid;gap:5px;margin:8px 0;font-size:.92rem}.correction-summary-lines p{margin:0;background:#f8fafc;border:1px solid var(--border);border-radius:12px;padding:7px 9px}.answer-details{margin-top:8px}.answer-details summary{cursor:pointer;font-weight:900;color:var(--blue);padding:8px 0;list-style:none}.answer-details summary::-webkit-details-marker{display:none}.answer-details summary:after{content:" +";font-weight:900;color:var(--orange)}.answer-details[open] summary:after{content:" –"}.compact-correction-answers{gap:6px;margin:6px 0 0}.compact-answer{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:start;padding:8px 9px;border-radius:13px;border:1px solid var(--border);border-left-width:4px;background:#fff;min-height:0}.compact-answer.good-checked{border-left-color:var(--ok);background:#fbfffc}.compact-answer.wrong-checked{border-left-color:var(--bad);background:snow}.compact-answer.missed-correct{border-left-color:var(--orange);background:#fffaf2}.compact-answer.neutral{border-left-color:#cfd8e3;background:#fff}.compact-answer .order{width:26px;height:26px;border-radius:999px;background:#eaf1f8;color:var(--blue);font-size:.92rem;font-weight:900;display:grid;place-items:center;line-height:1;margin-top:1px}.correction-answer-body{min-width:0;display:grid;gap:5px}.correction-answer-body strong{font-size:.98rem;line-height:1.25;word-break:break-word}.status-badges{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.mini-badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 7px;font-size:.76rem;font-weight:900;line-height:1.15;border:1px solid transparent;white-space:nowrap}.mini-badge.checked{background:#fff4db;color:#6f4800;border-color:#f6d899}.mini-badge.unchecked{background:#eef2f7;color:#475569;border-color:#d8e0ea}.mini-badge.good-checked{background:#e9f7ef;color:var(--ok);border-color:#bfe4cc}.mini-badge.wrong-checked{background:#ffebe9;color:var(--bad);border-color:#ffc6c1}.mini-badge.missed-correct{background:#fff4db;color:var(--warn);border-color:#f6d899}.mini-badge.neutral{background:#f1f5f9;color:#475569;border-color:#d8e0ea}.compact-correction-image{grid-column:2;width:min(160px,100%);height:auto;max-height:120px;object-fit:contain;border-radius:10px;background:#f2f5f8;border:1px solid var(--border);justify-self:start;margin:2px 0}.explanation-compact{font-size:.92rem;margin:8px 0 0}.correction-card-compact .question-image.small{max-height:150px;margin:8px 0 10px}@media (max-width:720px){.correction-card-compact{padding:12px}.correction-question-head h2{font-size:1rem}.correction-summary-lines{font-size:.88rem}.compact-answer{grid-template-columns:30px minmax(0,1fr);gap:7px;padding:7px 8px;border-radius:12px}.compact-answer .order{width:24px;height:24px;font-size:.86rem}.correction-answer-body strong{font-size:.94rem}.mini-badge{font-size:.72rem;padding:3px 6px}.compact-correction-image{width:min(140px,100%);max-height:105px}.answer-details summary{padding:6px 0}.correction-card-compact .question-image.small{max-height:125px}}@media (max-width:380px){.status-badges{gap:4px}.mini-badge{font-size:.7rem;padding:3px 5px}.compact-correction-image{width:min(120px,100%);max-height:95px}}
