:root{--bg:#f6f7f9;--fg:#1d2330;--muted:#5d6677;--line:#d9dde5;--card:#fff;--accent:#2456c9;--accent-fg:#fff;--ok:#1b7f3b;--warn:#a15c00;--bad:#b3261e;--ok-bg:#e5f4ea;--warn-bg:#fdf1dc;--bad-bg:#fbe7e5;--info-bg:#e7eefc;color:var(--fg);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0;line-height:1.45}a{color:var(--accent)}h1{margin:0 0 .75rem;font-size:1.5rem}h2{margin:1.5rem 0 .5rem;font-size:1.15rem}.container{max-width:1100px;margin:0 auto;padding:1rem}.narrow{max-width:720px}.topbar{color:#fff;background:#1d2330}.topbar .container{flex-wrap:wrap;align-items:center;gap:1.25rem;padding-block:.6rem;display:flex}.topbar a{color:#fff;text-decoration:none}.topbar a:hover{text-decoration:underline}.topbar .brand{margin-right:.5rem;font-weight:700}.topbar .spacer{flex:1}.card{background:var(--card);border:1px solid var(--line);border-radius:8px;margin-bottom:1rem;padding:1rem 1.25rem}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.row.between{justify-content:space-between}.stack>*+*{margin-top:.75rem}.muted{color:var(--muted)}.small{font-size:.875rem}label{margin-bottom:.25rem;font-weight:600;display:block}input[type=text],input[type=email],input[type=password],input[type=number],textarea,select{border:1px solid var(--line);width:100%;font:inherit;background:#fff;border-radius:6px;padding:.5rem .6rem}textarea{min-height:5rem}textarea.code{min-height:22rem;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.85rem}.btn,button{border:1px solid var(--accent);background:var(--accent);color:var(--accent-fg);font:inherit;cursor:pointer;border-radius:6px;padding:.5rem .9rem;line-height:1.2;text-decoration:none;display:inline-block}.btn.secondary,button.secondary{color:var(--accent);background:#fff}.btn.danger,button.danger{color:var(--bad);border-color:var(--bad);background:#fff}button:disabled{opacity:.6;cursor:default}button.link{color:var(--accent);background:0 0;border:none;padding:0;text-decoration:underline}table{border-collapse:collapse;background:#fff;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.45rem .6rem}th{color:var(--muted);font-size:.85rem;font-weight:600}.table-wrap{border:1px solid var(--line);border-radius:8px;margin-bottom:1rem;overflow-x:auto}.badge{border-radius:999px;padding:.1rem .5rem;font-size:.78rem;font-weight:600;display:inline-block}.badge.UNUSED{color:#3b4455;background:#eceff3}.badge.ACTIVE{background:var(--info-bg);color:var(--accent)}.badge.COMPLETED{background:var(--ok-bg);color:var(--ok)}.badge.EXPIRED{background:var(--warn-bg);color:var(--warn)}.alert{border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem}.alert.error{background:var(--bad-bg);color:var(--bad)}.alert.ok{background:var(--ok-bg);color:var(--ok)}.alert.warn{background:var(--warn-bg);color:var(--warn)}.alert.info{background:var(--info-bg);color:#1d3f8f}.alert ul{margin:.25rem 0 0;padding-left:1.25rem}.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.stat{border:1px solid var(--line);background:#fff;border-radius:8px;padding:.75rem 1rem}.stat .n{font-size:1.5rem;font-weight:700}.question{border:1px solid var(--line);background:#fff;border-radius:8px;margin-bottom:1rem;padding:1rem}.question .qtext{white-space:pre-wrap;margin-bottom:.5rem;font-weight:600}.option{cursor:pointer;align-items:flex-start;gap:.5rem;padding:.35rem .25rem;font-weight:400;display:flex}.option input{margin-top:.25rem}.pre{white-space:pre-wrap}.timer{z-index:5;color:#fff;background:#1d2330;border-radius:0 0 8px 8px;flex-wrap:wrap;justify-content:space-between;gap:.5rem;padding:.5rem 1rem;display:flex;position:sticky;top:0}.timer.low{background:var(--bad)}.correct-mark{color:var(--ok);font-weight:700}.wrong-mark{color:var(--bad);font-weight:700}.editor-q{border:1px solid var(--line);background:#fcfcfd;border-radius:8px;margin-bottom:.75rem;padding:.75rem 1rem}.editor-a{grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;margin-bottom:.35rem;display:grid}.inline-form{display:inline}code{background:#eef0f4;border-radius:4px;padding:.05rem .3rem}.qnav{flex-wrap:wrap;gap:.35rem;margin-bottom:1rem;display:flex}.qnav-btn{min-width:2.4rem;color:var(--fg);border-color:var(--line);background:#fff;padding:.35rem .5rem}.qnav-btn.answered{background:var(--info-bg);border-color:#b9c9f0}.qnav-btn.current{outline:2px solid var(--accent);font-weight:700}.qr-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.qr-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:.75rem}.qr-card .qr svg,.qr-thumb svg{width:100%;height:auto;display:block}.qr-thumb{vertical-align:middle;width:64px;display:inline-block}.url{word-break:break-all;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.78rem}.print-only{display:none}@media print{.no-print,.topbar{display:none!important}.print-only{display:block}body{background:#fff}.print-grid{grid-template-columns:repeat(3,1fr);gap:6mm;display:grid}.print-card{break-inside:avoid;text-align:center;border:1px dashed #999;padding:3mm}}.print-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;display:grid}.print-card{text-align:center;background:#fff;border:1px dashed #999;padding:.75rem}.print-card svg{width:100%;max-width:60mm;height:auto}.locale-switcher{border:1px solid var(--line);border-radius:6px;display:inline-flex;overflow:hidden}.locale-switcher button{color:var(--fg);background:#fff;border:0;border-radius:0;padding:.25rem .55rem;font-size:.8rem}.locale-switcher button.active{background:var(--accent);color:#fff;font-weight:600}.locale-switcher.dark{border-color:#4a5366}.locale-switcher.dark button{color:#cfd5e2;background:0 0}.locale-switcher.dark button.active{color:#1d2330;background:#fff}.corner-switcher{justify-content:flex-end;padding:.5rem 1rem 0;display:flex}button.link.danger-link{color:var(--bad)}
