.qs{min-height:100vh;display:flex;flex-direction:column;background:var(--paper);color:var(--ink)}.qs-btn{display:inline-flex;align-items:center;justify-content:center;padding:.7em 1.9em;border:1px solid var(--ink);border-radius:3px;background:var(--paper-2);color:var(--ink);font-family:var(--font-body);font-weight:700;font-size:.92rem;letter-spacing:.16em;text-decoration:none;transition:background .18s ease,color .18s ease,transform .12s ease}.qs-btn:hover{background:var(--ink);color:var(--paper)}.qs-btn:active{transform:translateY(2px)}.qs-btn--fill{background:var(--amber-deep);border-color:var(--amber-deep);color:var(--white)}.qs-btn--fill:hover{background:var(--amber);border-color:var(--amber);color:var(--white)}.qs-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem clamp(16px,3vw,32px);border-bottom:1px solid var(--hairline-strong)}.qs-bar__brand{display:inline-flex;align-items:center;gap:.75rem;text-decoration:none}.qs-bar__seal{display:grid;place-items:center;width:2.3rem;height:2.3rem;border:1.5px solid var(--vermilion);border-radius:50%;color:var(--vermilion);font-family:var(--font-display);font-weight:900;font-size:1.05rem}.qs-bar__brand b{display:flex;flex-direction:column;font-family:var(--font-display);font-size:.95rem;line-height:1.35}.qs-bar__brand i{font-style:normal;font-family:var(--font-en);font-weight:500;font-size:.62rem;letter-spacing:.24em;color:var(--muted)}.qs-bar__nav{display:flex;align-items:center;gap:clamp(.8rem,2.4vw,1.6rem);font-size:.83rem;letter-spacing:.08em}.qs-bar__nav a{text-decoration:none;border-bottom:1px solid transparent}.qs-bar__nav a:hover{border-bottom-color:var(--amber)}.qs-bar__sound{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--hairline-strong);border-radius:50%;background:transparent;color:var(--ink);font-family:var(--font-display);font-size:.78rem}.qs-bar__sound:hover{border-color:var(--amber-deep);color:var(--amber-deep)}.qs-bar__sound.is-off{opacity:.4;text-decoration:line-through}.qs-main{flex:1;width:min(100% - clamp(24px,5vw,56px),1180px);margin-inline:auto;padding-block:clamp(32px,5vw,60px)}.qs-head__en{margin:0 0 .9rem;font-family:var(--font-en);font-size:.68rem;font-weight:700;letter-spacing:.36em;color:var(--amber-deep)}.qs-head h1{margin:0;font-size:clamp(2rem,5.5vw,3.2rem);font-weight:900;letter-spacing:.08em}.qs-head__copy{margin:1rem 0 clamp(1.6rem,3vw,2.4rem);font-size:.92rem;color:var(--muted)}.qs-stage{position:relative;border:1px solid var(--hairline-strong);border-radius:var(--radius-card);overflow:hidden;background:var(--ink);box-shadow:var(--shadow-lift)}.qs-canvas{display:block;width:100%;height:clamp(340px,54vh,540px);touch-action:none;cursor:default}.qs-canvas:focus-visible{outline:2px solid var(--amber);outline-offset:-4px}.qs-hud{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;pointer-events:none}.qs-hud__room{display:inline-flex;align-items:center;gap:.6rem;margin:0;padding:.35rem .9rem;border:1px solid var(--hairline-dark-strong);border-radius:3px;background:#0e16268c;backdrop-filter:blur(4px);font-family:var(--font-display);font-size:.88rem;letter-spacing:.16em;color:var(--star)}.qs-hud__room i{font-style:normal;display:grid;place-items:center;width:1.5rem;height:1.5rem;border:1px solid var(--vermilion);border-radius:2px;font-size:.72rem;color:var(--vermilion)}.qs-hud__cards{display:inline-flex;align-items:baseline;gap:.2rem;margin:0;padding:.35rem .9rem;border:1px solid var(--hairline-dark-strong);border-radius:3px;background:#0e16268c;backdrop-filter:blur(4px);font-family:var(--font-display);color:var(--star);font-variant-numeric:tabular-nums}.qs-hud__cards b{font-size:1.15rem;font-weight:900;color:var(--amber-bright)}.qs-hud__cards i{font-style:normal;margin-left:.35em;font-size:.72rem;color:#f5f1e699}.qs-hud__cards.is-bump b{animation:qs-bump .34s cubic-bezier(.2,1.6,.4,1)}@keyframes qs-bump{40%{transform:scale(1.35)}}.qs-rail{position:absolute;left:1rem;right:1rem;bottom:.75rem;height:3px;border-radius:2px;background:#e8dfc824;pointer-events:none}.qs-rail__tick{position:absolute;top:-3px;width:1px;height:9px;background:#e8dfc857}.qs-rail__me{position:absolute;top:-3.5px;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:var(--amber-bright);box-shadow:0 0 10px 2px #e08a2e99;transition:left .12s linear}.qs-panel[hidden]{display:none}.qs-panel{position:absolute;left:clamp(.8rem,2vw,1.4rem);bottom:clamp(1.6rem,4vw,2.2rem);width:min(360px,64%);padding:1.1rem 1.2rem 1.2rem;border:1px solid var(--hairline-dark-strong);border-left:3px solid var(--amber);border-radius:6px;background:#0e1626e0;backdrop-filter:blur(6px);color:var(--star);animation:qs-panel-in .42s cubic-bezier(.2,1.1,.3,1) both}@keyframes qs-panel-in{0%{opacity:0;transform:translateY(14px)}}.qs-panel__en{margin:0 0 .4rem;font-family:var(--font-en);font-size:.6rem;font-weight:700;letter-spacing:.3em;color:var(--amber-bright)}.qs-panel__title{margin:0;font-family:var(--font-display);font-weight:900;font-size:1.25rem;letter-spacing:.06em}.qs-panel__tag{display:inline-block;margin-left:.6em;padding:.15em .6em;border:1px solid var(--vermilion);border-radius:2px;font-family:var(--font-body);font-size:.62rem;font-weight:700;letter-spacing:.16em;color:var(--vermilion);vertical-align:.18em}.qs-panel__copy{margin:.6rem 0 0;font-size:.85rem;line-height:1.85;color:var(--muted-on-dark)}.qs-panel__points{margin:.7rem 0 0;padding:0;list-style:none}.qs-panel__points li{position:relative;padding-left:.9rem;font-size:.78rem;line-height:1.8;color:var(--muted-on-dark)}.qs-panel__points li:before{content:"";position:absolute;left:0;top:.75em;width:4px;height:1px;background:var(--amber-bright)}.qs-panel__q{margin:.8rem 0 0;padding-top:.7rem;border-top:1px solid var(--hairline-dark);font-family:var(--font-display);font-size:.88rem;color:var(--star)}.qs-panel__q i{font-style:normal;margin-right:.6em;font-size:.6rem;letter-spacing:.24em;color:var(--amber-bright)}.qs-panel__links{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:.9rem}.qs-panel__links a{font-size:.78rem;font-weight:700;letter-spacing:.1em;color:var(--amber-bright);text-decoration:none;border-bottom:1px solid rgb(224 138 46 / 40%)}.qs-panel__links a:hover{color:var(--white);border-bottom-color:var(--white)}.qs-toast[hidden]{display:none}.qs-toast{position:absolute;top:4rem;left:50%;transform:translate(-50%);max-width:min(30rem,84%);margin:0;padding:.8rem 1.4rem;border:1px solid var(--amber);border-radius:4px;background:#140f0aeb;font-family:var(--font-display);font-weight:700;font-size:clamp(.9rem,2vw,1.05rem);text-align:center;color:var(--star);animation:qs-toast-in .38s cubic-bezier(.2,1.3,.3,1) both}.qs-toast i{display:block;font-style:normal;margin-bottom:.3rem;font-family:var(--font-en);font-size:.6rem;letter-spacing:.3em;color:var(--amber-bright)}@keyframes qs-toast-in{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}.qs-touch{position:absolute;left:0;right:0;bottom:2.2rem;display:none;justify-content:space-between;padding-inline:1rem;pointer-events:none}.qs-touch button{display:grid;place-items:center;width:3.6rem;height:3.6rem;border:1px solid var(--hairline-dark-strong);border-radius:50%;background:#0e1626b3;color:var(--star);font-family:var(--font-display);font-size:1.2rem;pointer-events:auto;user-select:none;-webkit-user-select:none}.qs-touch button:active{background:var(--amber-deep);border-color:var(--amber-deep);color:var(--white)}.qs-touch [data-btn=left]{margin-right:auto}.qs-touch [data-btn=right]{margin-right:auto;margin-left:.7rem}.qs-stage.is-touch .qs-touch{display:flex}.qs-start[hidden],.qs-end[hidden]{display:none}.qs-start,.qs-end{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;padding:1.5rem;text-align:center;background:#0a101eeb;color:var(--star);animation:qs-panel-in .4s ease both}.qs-start__en{margin:0;font-family:var(--font-en);font-size:.66rem;font-weight:700;letter-spacing:.42em;color:var(--amber-bright)}.qs-start h2,.qs-end h2{margin:.2rem 0 .8rem;font-family:var(--font-display);font-weight:900;font-size:clamp(1.4rem,3.6vw,2rem);letter-spacing:.08em}.qs-start__keys{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 2rem;margin:0 0 1.4rem}.qs-start__keys dt{font-family:var(--font-en);font-size:.66rem;font-weight:700;letter-spacing:.2em;color:var(--amber-bright)}.qs-start__keys dd{margin:.25rem 0 0;font-size:.82rem;color:var(--muted-on-dark)}.qs-start__note{margin:1.1rem 0 0;font-size:.75rem;color:#f5f1e673}.qs-end__copy{margin:0 0 1.4rem;font-family:var(--font-display);font-size:.95rem;line-height:2;color:var(--muted-on-dark)}.qs-end__score{display:flex;gap:2rem;margin:0 0 1.6rem;padding:.9rem 0;border-block:1px solid var(--hairline-dark)}.qs-end__score dt{font-size:.6rem;font-weight:700;letter-spacing:.24em;color:var(--muted-on-dark)}.qs-end__score dd{margin:.3rem 0 0;font-family:var(--font-display);font-weight:900;font-size:1.15rem;color:var(--star)}.qs-end__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem}.qs-end__actions .qs-btn{border-color:var(--hairline-dark-strong);background:transparent;color:var(--star)}.qs-end__actions .qs-btn:hover{background:var(--star);color:var(--ink)}.qs-end__actions .qs-btn--fill{background:var(--amber-deep);border-color:var(--amber-deep);color:var(--white)}.qs-map{margin-top:clamp(2.4rem,5vw,4rem);padding-top:clamp(2rem,4vw,3rem);border-top:1px solid var(--hairline-strong)}.qs-map__title{margin:0;font-size:clamp(1.3rem,3vw,1.8rem);font-weight:900;letter-spacing:.06em}.qs-map__lead{margin:.6rem 0 2rem;font-size:.88rem;color:var(--muted)}.qs-map__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1px;margin:0 0 clamp(2.4rem,4vw,3.4rem);padding:0;list-style:none;background:var(--hairline);border:1px solid var(--hairline)}.qs-map__list li{display:flex;gap:1rem;padding:1.2rem 1.3rem;background:var(--paper-2)}.qs-map__list i{flex-shrink:0;display:grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--hairline-strong);border-radius:2px;font-style:normal;font-family:var(--font-display);font-weight:700;font-size:.85rem}.qs-map__en{margin:0 0 .2rem;font-family:var(--font-en);font-size:.58rem;font-weight:700;letter-spacing:.28em;color:var(--amber-deep)}.qs-map__list h3{margin:0;font-size:1.02rem;font-weight:700;letter-spacing:.04em}.qs-map__copy{margin:.4rem 0 0;font-size:.8rem;line-height:1.8;color:var(--muted)}.qs-map__sub{margin:0 0 1.2rem;font-size:1.1rem;font-weight:700;letter-spacing:.06em}.qs-map__programs{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.6rem;margin:0;padding:0;list-style:none}.qs-map__programs a{display:flex;flex-direction:column;gap:.3rem;height:100%;padding:.9rem 1rem;border:1px solid var(--hairline);border-radius:5px;background:var(--paper-2);text-decoration:none;transition:border-color .18s ease,transform .16s ease}.qs-map__programs a:hover{transform:translateY(-3px);border-color:var(--ink);color:inherit}.qs-map__programs b{font-family:var(--font-display);font-size:.95rem;letter-spacing:.04em}.qs-map__programs span{font-size:.78rem;line-height:1.7;color:var(--muted)}.qs-foot{padding:clamp(32px,5vw,56px) clamp(24px,5vw,56px);background:var(--ink);color:var(--muted-on-dark)}.qs-foot p{width:min(100%,1180px);margin-inline:auto;font-family:var(--font-display);color:var(--star)}.qs-foot__colophon{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;margin-top:1.6rem!important;padding-top:1rem;border-top:1px solid var(--hairline-dark);font-family:var(--font-en)!important;font-size:.7rem;letter-spacing:.2em;color:var(--muted-on-dark)!important}@media (max-width: 760px){.qs-bar__brand i{display:none}.qs-panel{top:3.6rem;bottom:auto;left:.8rem;width:calc(100% - 1.6rem);max-height:42%;overflow-y:auto;padding:.8rem .9rem .9rem}.qs-panel__points{display:none}.qs-panel__title{font-size:1.05rem}.qs-panel__copy{font-size:.78rem;line-height:1.7}.qs-panel__q{font-size:.8rem}.qs-toast{top:auto;bottom:6.4rem}.qs-touch{bottom:1.2rem}}
