/* Interactive chord recognition — real client-side game, no accounts or fake stats. */
.omera-quest-section{margin:24px auto 42px;min-width:0}
.quest-shell{min-width:0;overflow:hidden;border:1px solid var(--om-border);border-radius:24px;background:radial-gradient(ellipse at 95% -5%,#176f7150,transparent 50%),linear-gradient(140deg,#0b223a,#10243b 70%,#112e3b);color:#ecf8fc;box-shadow:var(--om-elev);padding:clamp(20px,3vw,32px);position:relative}
html[data-theme="light"] .quest-shell{background:radial-gradient(ellipse at 95% -5%,#69e3cb32,transparent 50%),linear-gradient(140deg,#edf8fa,#e9f2fa);color:#203a48}
.quest-shell .quest-top,.quest-shell .quest-mode,.quest-shell .quest-metrics,.quest-shell .quest-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.quest-kicker{font-size:11px;letter-spacing:.095em;color:var(--om-accent);font-weight:540}
.quest-shell h2{font-size:clamp(24px,3.6vw,37px);letter-spacing:-.04em;font-weight:565!important;margin:7px 0 4px;color:inherit!important}
.quest-shell p{font-size:12px;line-height:1.5;opacity:.77;margin:0}
.quest-mode{margin:18px 0 12px;justify-content:flex-start!important}
.quest-mode button{min-height:38px;padding:8px 15px;border-radius:999px;border:1px solid #47728a;background:#1c3850;color:#d7eaf2;font-weight:510;font-size:12px}
.quest-mode button[aria-pressed=true]{color:#103241;background:#7cedd5;border-color:#7cedd5}
html[data-theme="light"] .quest-mode button:not([aria-pressed=true]){background:#e1edf1;color:#334e5a;border-color:#b8d4d9}
.quest-metrics{border-top:1px solid #6da9b437;padding:15px 0 12px;justify-content:flex-start!important;gap:12px 22px!important}
.quest-metrics span{font-size:12px;color:inherit;opacity:.83}
.quest-metrics strong{font-size:17px;font-weight:570!important;color:var(--om-accent)}
.quest-progress{height:6px;width:100%;background:#7ec6d322;border-radius:999px;overflow:hidden;margin:2px 0 12px}
.quest-progress>span{display:block;height:100%;width:0;background:linear-gradient(90deg,#4bd2c2,#9af2dc);border-radius:inherit;transition:width .36s ease}
.quest-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(14px,3vw,34px);align-items:center}
.quest-visual{min-height:202px;display:grid;place-items:center;position:relative;border:1px solid #598fa438;border-radius:19px;background:radial-gradient(ellipse at 50% 45%,#1c667647,transparent 73%),#091e3240;overflow:hidden;padding:12px}
.quest-visual:before,.quest-visual:after{content:'';position:absolute;border:1px solid #5be9c819;border-radius:50%;width:250px;height:250px;pointer-events:none}
.quest-visual:after{width:186px;height:186px}
.quest-fretboard{display:block;position:relative;z-index:1;height:190px;width:196px;max-width:100%;filter:drop-shadow(0 4px 20px #35e4c41e)}
.q-string{stroke:#b4e2e0}.q-fret{stroke:#8cabb6}.q-string-title{font-size:12px;fill:#c7e6e7}.q-finger{fill:#65e5c9;stroke:#bcfff1;stroke-width:1}.q-open{fill:none;stroke:#9af6e1;stroke-width:1.7}
html[data-theme="light"] .q-string-title{fill:#2b5662}
.quest-shell.quest-plucking .q-string{animation:omera-quest-twang .5s ease-in-out both;animation-delay:calc(var(--s)*40ms);transform-origin:center}
@keyframes omera-quest-twang{0%,100%{transform:translateX(0)}25%{transform:translateX(3px)}60%{transform:translateX(-1.5px)}}
.quest-wave{display:flex;justify-content:center;align-items:center;gap:3px;min-height:150px;width:min(100%,270px);position:relative;z-index:1}
.quest-wave i{width:4px;height:var(--h);border-radius:100px;background:#68e8d6;box-shadow:0 0 11px #48e6ce5a}
.quest-plucking .quest-wave i{animation:omera-wave .48s ease-in-out both;animation-delay:calc(var(--n)*12ms)}
@keyframes omera-wave{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.4)}}
.quest-question{color:inherit!important;font-weight:555!important;font-size:clamp(18px,2.2vw,24px);margin:0 0 14px}
.quest-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.quest-choice{border:1px solid #44728c;background:#1a344e;color:#f2fafd;border-radius:15px;min-height:68px;font-size:clamp(19px,2.8vw,25px);font-weight:520!important;transition:transform .14s ease,border-color .16s ease,background .16s ease}
.quest-choice:not(:disabled):hover{transform:translateY(-2px);border-color:#79f1d5;background:#25526a}
.quest-choice:active{transform:scale(.98)}
.quest-choice.is-correct{border-color:#80f4da!important;background:#225f60!important;color:white!important;box-shadow:0 0 0 2px #66e9cd44}
.quest-choice.is-wrong{border-color:#f8aa9f!important;background:#66444b!important}
html[data-theme="light"] .quest-choice:not(.is-correct,.is-wrong){background:#f3f9fc;color:#243e51;border-color:#b9d1dd}
.quest-status{display:flex;align-items:center;min-height:28px;margin-top:10px!important;font-size:12px;opacity:1!important;color:#a9e8e0}
html[data-theme="light"] .quest-status{color:#356871}
.quest-controls{justify-content:flex-start!important;margin-top:12px}
.quest-controls button,.quest-continue{border:1px solid #4d8c99;background:#183d54;color:#d2f7ef;border-radius:12px;min-height:43px;padding:10px 19px;font-size:12px;font-weight:540!important;transition:transform .15s ease}
.quest-continue{background:#70e8d0!important;color:#103340!important;border-color:transparent!important}
.quest-controls button:not(:disabled):hover{transform:translateY(-2px)}
.quest-shell [hidden]{display:none!important}
.quest-medal{width:94px;height:94px;border-radius:50%;display:grid;place-items:center;color:#153649;font-size:52px;background:radial-gradient(circle at 20% 20%,#c8fff0,#4bd9c3);box-shadow:0 0 0 12px #68ecc72b,0 0 60px #6ff1d540;z-index:1}
.quest-shell[data-state=finished] .quest-choices{display:none}
.quest-shell[data-state=finished] .quest-visual{min-height:192px}
.omera-quest-feature-link{display:inline-flex;align-items:center;gap:9px;color:var(--om-accent);font-weight:560;font-size:13px;text-decoration:none}
/* The full-size game deserves focus; it does not invent levels, friends, or achievements. */
.quest-page-main{max-width:1190px;padding:30px 20px 65px;margin:auto}
.quest-page-intro{margin:0 0 24px}.quest-page-intro h1{margin:6px 0 7px;font-weight:560!important;font-size:clamp(29px,4vw,47px)}
.quest-page-intro p{color:var(--om-subtle);max-width:690px}
.quest-full .quest-shell{padding:clamp(22px,4vw,48px)}
.quest-full .quest-stage{gap:clamp(24px,5vw,65px)}
.quest-full .quest-visual{min-height:290px}.quest-full .quest-fretboard{width:285px;height:275px}
.quest-full .quest-choice{min-height:90px}
@media(max-width:650px){
 .quest-stage{grid-template-columns:1fr;gap:14px}
 .quest-visual{min-height:180px}.quest-fretboard{height:165px;width:175px}
 .quest-full .quest-visual{min-height:200px}.quest-full .quest-fretboard{height:190px;width:198px}
 .quest-metrics{gap:7px 17px!important}.quest-choices{gap:8px}.quest-choice,.quest-full .quest-choice{min-height:59px}
 .quest-shell{padding:19px;border-radius:19px}
}
@media(prefers-reduced-motion:reduce){.quest-shell *{animation:none!important;transition:none!important;transform:none!important}}
