.q-root{--bg:#faf8f4;--text:#26241f;--main:#3f5d45;--soft:#e8eee6;--border:#ddd8cc;--muted:#6b675e;--ok:#2f7a3e;--ng:#b3412e}.q-root .lead{color:var(--muted);margin:0 0 16px;font-size:.92rem}.q-root .q-notice{background:#fae9db;border-radius:8px;margin:0 0 16px;padding:10px 14px;font-size:.88rem}.q-root .q-notice p{color:#8a4b1c;margin:0 0 4px;font-weight:700}.q-root .q-notice ul{margin:0;padding-left:1.2em}.q-root .panel{border:1px solid var(--border);background:#fff;border-radius:12px;margin-bottom:16px;padding:16px}.q-root .panel h2{margin:0 0 8px;font-size:1.05rem}.q-root .scope label{padding:4px 0;display:block}.q-root .picker{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.q-root .picker[hidden]{display:none}.q-root .picker .tools{gap:8px;margin-bottom:8px;display:flex}.q-root .picker fieldset{border:0;margin:0 0 8px;padding:0}.q-root .picker legend{color:var(--main);font-size:.9rem;font-weight:700}.q-root .picker .grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:0 8px;display:grid}.q-root .picker .grid label{font-size:.9rem}.q-root .tag{vertical-align:1px;border-radius:3px;margin-left:4px;padding:0 5px;font-size:.72rem}.q-root .tag.hunt{background:var(--soft);color:var(--main)}.q-root .tag.non{color:var(--ng);background:#f3e6e3}.q-root button{font:inherit;cursor:pointer}.q-root .btn{border:1px solid var(--main);background:var(--main);color:#fff;border-radius:8px;padding:10px 18px}.q-root .btn.sub{color:var(--main);background:#fff;padding:4px 10px;font-size:.85rem}.q-root .btn:disabled{opacity:.4;cursor:default}.q-root .quiz[hidden]{display:none}.q-root .progress{color:var(--muted);justify-content:space-between;margin-bottom:8px;font-size:.9rem;display:flex}.q-root .figure{border:1px solid var(--border);aspect-ratio:3/2;background:#fff;border-radius:12px;justify-content:center;align-items:center;width:100%;padding:8px;display:flex;overflow:hidden}.q-root .figure img.photo{object-fit:cover;border-radius:8px;width:100%;height:100%}.q-root .figure img{object-fit:contain;max-width:100%;max-height:100%}.q-root .q{margin:12px 0 8px;font-weight:700}.q-root .choices{gap:8px;display:grid}.q-root .choice{text-align:left;border:2px solid var(--border);color:var(--text);background:#fff;border-radius:10px;padding:12px 14px}.q-root .choice.selected{border-color:var(--main);background:var(--soft)}.q-root .ask{color:var(--main);margin:14px 0 6px;font-size:.92rem;font-weight:700}.q-root .hunt-choices{grid-template-columns:1fr 1fr;gap:8px;display:grid}.q-root .hunt-choices .choice{text-align:center;font-weight:700}.q-root .choice.correct{border-color:var(--ok);background:#eef6ef;border-width:3px}.q-root .choice.wrong{border-color:var(--ng);background:#fbefec}.q-root .choice:disabled{cursor:default}.q-root .result{margin-top:16px}.q-root .result[hidden]{display:none}.q-root .q-mark{font-size:1.6rem;font-weight:700;line-height:1.3}.q-root .q-mark.ok{color:var(--ok)}.q-root .q-mark.ng{color:var(--ng)}.q-root .answer-name{margin:8px 0 0;font-size:1.2rem;font-weight:700}.q-root .note{color:var(--ng);margin:4px 0 0;font-size:.88rem}.q-root .points{background:var(--soft);border-radius:8px;margin-top:10px;padding:10px 14px}.q-root .points p{color:var(--main);margin:0 0 4px;font-size:.9rem;font-weight:700}.q-root .points ul{margin:0;padding-left:1.2em}.q-root .q-talk[hidden]{display:none}.q-root .next{text-align:right;margin-top:16px}.q-root .gallery[hidden]{display:none}.q-root .gallery h3{color:var(--main);margin:16px 0 8px;font-size:1rem}.q-root .gallery .q-cards{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}@media (min-width:600px){.q-root .gallery .q-cards{grid-template-columns:repeat(4,1fr)}}.q-root .q-card{border:1px solid var(--border);text-align:center;background:#fff;border-radius:8px;padding:6px;font-size:.8rem;line-height:1.4}.q-root .q-card .ph{justify-content:center;align-items:center;height:90px;display:flex}.q-root .q-card img{object-fit:contain;max-width:100%;max-height:90px}.q-root .q-card .nm{margin-top:4px;font-weight:700}.q-root .q-card .fn{color:var(--muted);word-break:break-all;font-size:.68rem}.q-root .q-card img{cursor:zoom-in}.q-root .viewer[hidden]{display:none}.q-root .viewer{z-index:50;background:#141410d9;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.q-root .viewer .box{background:#fff;border-radius:12px;width:100%;max-width:680px;padding:10px}.q-root .viewer .ph{aspect-ratio:3/2;justify-content:center;align-items:center;display:flex}.q-root .viewer img{object-fit:contain;border-radius:8px;width:100%;height:100%}.q-root .viewer .box{max-height:calc(100vh - 32px);overflow-y:auto}.q-root .viewer .points,.q-root .viewer .q-talk{margin-top:8px}.q-root .viewer .cap{justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-weight:700;display:flex}.q-root .finish[hidden]{display:none}.q-root .finish{text-align:center;padding:24px 16px}.q-root .finish .score{color:var(--main);font-size:1.6rem;font-weight:700}.q-root .missing,.q-root .credit{color:var(--muted);font-size:.84rem}.q-root .credit{border-top:1px solid var(--border);margin-top:24px;padding-top:12px}.q-root .credit a{color:#1558b0}.q-root p{margin:0 0 8px}.q-root .q-h{margin:0 0 8px;font-size:1.05rem;font-weight:700}.q-root .q-h3{color:var(--main);margin:16px 0 8px;font-size:1rem;font-weight:700}.q-root .figure img,.q-root .q-card img,.q-root .viewer img{border-radius:8px;display:block}.q-root .figure img{height:100%}.q-root li{margin-bottom:2px}.q-root .q-small{color:var(--muted);margin:-8px 0 16px;font-size:.82rem}@media (max-width:600px){.q-root .choices{grid-template-columns:1fr 1fr;gap:6px}.q-root .choice{padding:10px;font-size:.95rem}.q-root .ask{margin:10px 0 4px}.q-root .progress{margin-bottom:4px}}.q-root .inline-note{color:var(--ng);margin-left:10px;font-size:.85rem;font-weight:400;display:inline-block}.q-root #ansNote:empty,.q-root .choices[hidden],.q-root .ask[hidden]{display:none}.q-root .mark-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.q-root .mark-row .btn{flex:none}.q-root .q-talk{margin:16px 0 4px}.q-root .q-talk .talk__body{margin:0}.q-root .num-row{flex-wrap:wrap;gap:0 16px;display:flex}
