@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;600&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap";:root{--bg:#f6f8fc;--bg-accent:#e9eef7;--card:#fff;--border:#e2e8f0;--ink:#0f172a;--muted:#475569;--accent:#1f4b99;--accent-2:#3b82f6;--danger:#dc2626;--shadow:0 18px 32px #0f172a14;--mono:"IBM Plex Mono", ui-monospace, Consolas, monospace;color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:IBM Plex Sans,system-ui,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(180deg, var(--bg-accent), var(--bg));min-height:100svh;margin:0}#root{min-height:100svh}h1,h2,h3{margin:0 0 12px}p{margin:0;line-height:1.6}button,input,textarea{font-family:inherit}.app-shell{flex-direction:column;min-height:100svh;display:flex}.admin-shell{color:#0f172a;background:#eef3f9;width:100%;min-height:100svh}.admin-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.admin-pill{color:#1f2937;background:#e2e8f0;border-radius:999px;padding:6px 12px;font-size:.9rem}.admin-main{box-sizing:border-box;flex-direction:column;gap:20px;width:100%;min-height:100svh;padding:0;display:flex}.admin-shell .card{background:#f9fbff;border-color:#dbe3ef}.admin-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-search{flex-wrap:wrap;align-items:flex-end;gap:12px;width:100%;display:flex}.admin-search .field,.admin-search .input{width:100%}.admin-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.search-input{width:100%;position:relative}.search-input .input{padding-left:44px}.search-icon{color:#94a3b8;width:18px;height:18px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.admin-list{flex-direction:column;gap:16px;display:flex}.admin-card{background:#f9fbff;border-radius:16px;flex-direction:column;gap:14px;width:100%;padding:20px 24px;display:flex;box-shadow:0 10px 25px #0f172a14}.admin-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-meta{color:#475569;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;font-size:.95rem;display:grid}.admin-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-links{flex:420px}.share-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.share-row .input{flex:420px;min-width:280px}.copy-toast{color:#fff;background:#0f172a;border-radius:999px;padding:6px 10px;font-size:.8rem}.admin-actions-row{flex-wrap:wrap;gap:10px;display:flex}.admin-footer{justify-content:flex-end;display:flex}.badge{border-radius:999px;padding:6px 12px;font-size:.85rem;font-weight:600}.badge-live{color:#16a34a;background:#22c55e1f}.badge-draft{color:#64748b;background:#94a3b833}.admin-form{flex-direction:column;gap:20px;display:flex}.admin-form-card{width:100%;max-width:none}.admin-back{justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-questions{flex-direction:column;gap:16px;display:flex}.admin-questions-grid{grid-template-columns:minmax(280px,1fr) minmax(320px,1fr);grid-auto-rows:1fr;align-items:stretch;gap:20px;display:grid}.question-form-card,.question-list-card{flex-direction:column;height:100%;display:flex}.question-list-card{min-height:560px;overflow:hidden}.question-list-card h3{margin-bottom:12px}.results-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.results-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:16px 0;display:grid}.summary-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.summary-value{color:#0f172a;font-size:1.4rem;font-weight:700}.results-filters{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:16px 0;display:grid}.results-table{gap:8px;display:grid}.results-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:1.6fr 1.2fr 1fr 1.4fr .8fr .8fr;align-items:center;gap:12px;padding:12px 14px;font-size:.95rem;display:grid}.results-head{background:#eef2f7;font-weight:600}@media (width<=960px){.admin-main{padding:24px}.admin-questions-grid{grid-template-columns:1fr}}.question-list{flex-direction:column;flex:1;gap:14px;padding-right:4px;display:flex;overflow-y:auto}.question-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.question-card .form-row{flex-wrap:nowrap;margin-left:auto}.helper{color:var(--muted);flex-direction:column;gap:4px;margin-top:8px;font-size:.85rem;display:flex}.helper-code{font-family:var(--mono);color:#1f2937;word-break:break-word;background:#eef2f7;border-radius:8px;padding:6px 8px;font-size:.8rem}.question-card>div{flex:260px;min-width:0}.question-card strong{white-space:normal;word-break:break-word;display:block}.results-table{max-height:420px;padding-right:4px;overflow:auto}.app-header{text-align:center;padding:32px 20px 0}.app-title{letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:clamp(1.9rem,2.4vw,2.8rem)}.app-subtitle{color:var(--muted);margin:8px 0 0}.app-body{flex:1;justify-content:center;padding:24px;display:flex}.panel{flex-direction:column;gap:20px;width:min(980px,100%);display:flex}.admin-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;display:grid}.header-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.auth-card{flex-direction:column;gap:12px;display:flex}.role-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px;display:grid}.back-button{color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:0;font-weight:600;display:inline-flex}.icon{width:18px;height:18px}.card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;padding:24px}.form-stack{flex-direction:column;gap:16px;margin-top:20px;display:flex}.question-form-card .form-stack{margin-top:12px}.field{flex-direction:column;gap:8px;font-weight:600;display:flex}.input{border:1px solid var(--border);background:#fff;border-radius:12px;padding:12px 16px;font-size:1rem}.input:disabled{background:#f3f0e8}.form-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.checkbox{flex-direction:row;align-items:center;gap:10px;font-weight:500}.checkbox input{width:18px;height:18px}.btn{cursor:pointer;border:none;border-radius:999px;padding:10px 18px;font-weight:600;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-1px);box-shadow:0 10px 18px #00000014}.btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{background:var(--accent);color:#fff}.btn-secondary{color:#0f172a;background:#e2e8f0}.btn-ghost{border:1px solid var(--border);background:0 0}.btn-danger{background:var(--danger);color:#fff}.btn-success{color:#fff;background:#16a34a}.list{flex-direction:column;gap:12px;margin-top:16px;display:flex}.list-item{border:1px solid var(--border);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.list-item.active{border-color:var(--accent);box-shadow:0 10px 18px #1f7a8c1f}.link-row{text-align:left;cursor:pointer;background:0 0;border:none;flex:1;padding:0}.option-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.tag{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:999px;align-items:center;padding:6px 12px;font-size:.9rem;display:inline-flex}.muted{color:var(--muted)}.test-stack{flex-direction:column;gap:16px;display:flex}.progress{justify-content:space-between;align-items:center;gap:16px;display:flex}.timer{font-family:var(--mono);letter-spacing:.1em;font-size:1.2rem}.warning{color:var(--danger);background:#c83e3e1f;border:1px solid #c83e3e33;border-radius:12px;padding:12px 16px;font-weight:600}.fullscreen-overlay{z-index:20;background:#0f172a80;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.fullscreen-modal{border:1px solid var(--border);text-align:center;background:#fff;border-radius:16px;flex-direction:column;gap:16px;width:min(520px,100%);padding:24px;display:flex;box-shadow:0 24px 48px #0f172a33}.confirm-overlay{z-index:25;background:#0f172a80;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.confirm-modal{border:1px solid var(--border);background:#fff;border-radius:16px;flex-direction:column;gap:16px;width:min(520px,100%);padding:24px;display:flex;box-shadow:0 24px 48px #0f172a33}.confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.notice{color:#b42318;background:#c83e3e14;border:1px solid #c83e3e40;border-radius:12px;align-items:flex-start;gap:10px;padding:12px 14px;font-weight:600;display:flex}.notice-icon{color:#b42318;flex:none;justify-content:center;align-items:center;width:20px;height:20px;margin-top:2px;display:inline-flex}.notice-icon svg{width:20px;height:20px}.option-list{gap:12px;margin-top:18px;display:grid}.question-image{border:1px solid var(--border);background:#fff;border-radius:12px;margin:12px 0 6px;overflow:hidden}.question-image img{object-fit:contain;width:100%;height:auto;max-height:320px;display:block}.question-image-preview{border:1px solid var(--border);background:#fff;border-radius:12px;flex-direction:column;gap:10px;padding:10px 12px;display:flex}.question-image-preview img{object-fit:contain;border:1px solid #e2e8f0;border-radius:10px;width:100%;height:auto;max-height:180px}.option{border:1px solid var(--border);text-align:left;cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;font-size:1rem;transition:border-color .2s,background .2s;display:flex}.option:hover{border-color:var(--accent)}.option.selected{border-color:var(--accent);background:#1f7a8c1f}.option-label{color:var(--accent);font-weight:700}.nav-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.result-card{flex-direction:column;gap:18px;display:flex}.score-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;display:grid}.score-value{font-size:2rem;font-weight:700}.result-note{border:1px dashed var(--border);background:#fff;border-radius:12px;padding:10px 14px}@media (width<=720px){.progress{flex-direction:column;align-items:flex-start}.btn{justify-content:center;width:100%}.nav-row{width:100%}}
