/* v31: one compact challenge board. World, pause and options remain available. */
.qte-panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:11;width:min(392px,calc(100% - 28px));padding:14px 18px 12px;border:3px solid #303521;border-radius:10px;background:#eee2b8;box-shadow:5px 6px 0 #1b291b77;color:#33412a;touch-action:none;user-select:none;-webkit-user-select:none;pointer-events:auto}
.qte-panel .qte-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0}
.qte-eyebrow{display:block;color:#777344;letter-spacing:1px;font-size:9px;margin-bottom:3px}.qte-title{font-size:21px;font-weight:900;line-height:1.2}.qte-clock{font:bold 25px Georgia,serif;color:#8f512c;min-width:55px;text-align:right;font-variant-numeric:tabular-nums}.qte-clock.urgent{color:#a43424}
.qte-instruction{font-size:11px;line-height:1.45;margin:9px 0 6px;min-height:16px;color:#5a6542}
.qte-visual{height:66px;display:grid;place-items:center;margin:0 0 7px}.qte-mash-art{display:flex;align-items:center;justify-content:center;gap:14px;height:64px}.qte-mash-art svg{width:100px;height:48px}.qte-pull{font:bold 30px Georgia,serif;color:#a47b30}.qte-panel[data-mode=mash] .qte-action{background:#e8c16b}
.qte-meter{width:100%;padding:0 7px}.qte-meter-labels{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#8e633c;margin-bottom:11px}.qte-zone-label{color:#476b32;font-size:11px}.qte-track{height:20px;position:relative;background:repeating-linear-gradient(130deg,#b49468 0,#b49468 6px,#c5ab7b 6px,#c5ab7b 12px);border:2px solid #3a432c;border-radius:5px}.qte-zone{display:block;position:absolute;top:0;bottom:0;background:#94b45b;border-left:2px dashed #e9f1b3;border-right:2px dashed #e9f1b3}.qte-cursor{display:block;position:absolute;top:-6px;bottom:-6px;width:5px;background:#fff5d3;border:1px solid #323a24;border-radius:2px;transform:translateX(-50%);box-shadow:1px 1px 0 #2c391b88}.qte-cursor span{position:absolute;left:50%;top:-12px;transform:translateX(-50%);font-size:14px;line-height:14px;color:#303a21;font-style:normal}.qte-meter.in-zone .qte-cursor{background:#f9ed89}.qte-meter.danger .qte-cursor{background:#c76943}.qte-meter.danger .qte-zone-label{color:#9c482d}
.qte-sequence{display:flex;align-items:center;justify-content:center;gap:10px}.qte-sequence span{display:grid;place-items:center;width:42px;height:42px;border:2px solid #899569;border-radius:6px;background:#dcdcae;color:#737d51;font:bold 24px sans-serif;position:relative}.qte-sequence span.current{background:#e9bb65;border-color:#454c2b;color:#29351f;box-shadow:2px 2px 0 #565831}.qte-sequence span.current:after{content:'下一步';position:absolute;bottom:-15px;left:50%;transform:translateX(-50%);font:8px sans-serif;white-space:nowrap;color:#79572d}.qte-sequence span.done{background:#b9cb87;color:#4b6735;border-color:#778956}
.qte-alternate-cue{display:grid;grid-template-columns:47px auto;column-gap:8px;align-items:center;justify-content:center}.qte-next-arrow{grid-row:1/3;font:bold 46px/1 sans-serif;color:#a06c2b}.qte-next-label{font-size:15px}.qte-alternate-cue small{font-size:9px;color:#747444;margin-top:4px}
.qte-controls{margin:0 0 10px}.qte-single{display:flex}.qte-action,.qte-direction,.qte-side{min-height:48px;border:2px solid #39432a!important;border-radius:7px;background:#ccd59d;box-shadow:2px 3px 0 #5d643a;color:#364425;touch-action:none!important;font-weight:900}.qte-action{width:100%;font-size:16px;letter-spacing:1px}.qte-panel .qte-action:disabled,.qte-panel .qte-direction:disabled,.qte-panel .qte-side:disabled{opacity:.75}.qte-panel button.is-pressed,.qte-panel.is-holding .qte-action{background:#edbe65;transform:translateY(2px);box-shadow:1px 1px 0 #5d643a}.qte-panel button:focus-visible{outline:3px solid #fff1aa;outline-offset:3px}.qte-directions{display:grid;grid-template-columns:repeat(4,minmax(44px,1fr));gap:8px}.qte-direction{display:flex;align-items:center;justify-content:center;gap:7px;font-size:27px;line-height:1}.qte-direction small{font-size:10px;color:#626d44}.qte-direction.expected,.qte-side.expected{background:#e8be70;border-color:#5e4c29!important}.qte-sides{display:grid;grid-template-columns:1fr 1fr;gap:14px}.qte-side{min-width:60px;display:flex;align-items:center;justify-content:center;gap:12px}.qte-side span{font:bold 29px sans-serif}.qte-side b{font-size:15px}
.qte-progress-heading{display:flex;justify-content:space-between;font-size:9px;margin:0 0 4px;color:#6c7547}.qte-progress-heading b{color:#43582e;font-size:10px}.qte-progress{height:10px;background:#b4b187;border:2px solid #4b5732;border-radius:4px;overflow:hidden}.qte-progress-fill{display:block;height:100%;width:0;background:#829f48}
.qte-footer{margin-top:7px;text-align:center;min-height:29px}.qte-feedback{display:block;font-size:10px;line-height:1.4;font-weight:700;color:#765929;min-height:14px}.qte-input-hint{display:block;font-size:8px;line-height:1.4;color:#797b52;margin-top:2px}.qte-panel.is-ready .qte-instruction{color:#996931;font-weight:700}
body.qte-active #fishing-panel,body.qte-active #touch-controls,body.qte-active #play-tip{display:none!important}
.mobile-ui .qte-panel{top:calc(80px + env(safe-area-inset-top));transform:translateX(-50%);width:min(382px,calc(100% - 28px));padding:10px 14px 9px}
.mobile-ui .qte-eyebrow{font-size:8px;margin-bottom:1px}.mobile-ui .qte-title{font-size:18px}.mobile-ui .qte-clock{font-size:23px}.mobile-ui .qte-instruction{margin:6px 0 3px;font-size:10px}.mobile-ui .qte-visual{height:55px;margin-bottom:6px}.mobile-ui .qte-mash-art{height:52px}.mobile-ui .qte-controls{margin-bottom:8px}.mobile-ui .qte-footer{margin-top:5px}.mobile-ui .qte-panel button{min-height:46px}.mobile-ui .qte-input-hint{font-size:8px}
@media(max-height:360px){
  .mobile-ui .qte-panel{top:calc(74px + env(safe-area-inset-top));padding:8px 12px 7px;width:min(370px,calc(100% - 24px))}
  .mobile-ui .qte-eyebrow{display:none}.mobile-ui .qte-title{font-size:17px}.mobile-ui .qte-clock{font-size:21px}.mobile-ui .qte-instruction{margin:5px 0 2px;line-height:1.3}.mobile-ui .qte-visual{height:46px;margin-bottom:7px}.mobile-ui .qte-mash-art{height:43px}.mobile-ui .qte-mash-art svg{height:39px}.mobile-ui .qte-sequence span{height:32px;width:36px;font-size:22px}.mobile-ui .qte-sequence span.current:after{bottom:-12px;font-size:7px}.mobile-ui .qte-track{height:17px}.mobile-ui .qte-meter-labels{margin-bottom:10px}.mobile-ui .qte-next-arrow{font-size:36px}.mobile-ui .qte-next-label{font-size:14px}.mobile-ui .qte-alternate-cue small{margin-top:2px;font-size:8px}.mobile-ui .qte-controls{margin-bottom:7px}.mobile-ui .qte-panel button{min-height:44px}.mobile-ui .qte-footer{min-height:25px;margin-top:4px}.mobile-ui .qte-feedback{font-size:9px}.mobile-ui .qte-input-hint{font-size:7px}
}
@media(prefers-reduced-motion:reduce){.qte-panel button{transition:none!important}.qte-panel button.is-pressed{transform:none}.qte-progress-fill{transition:none}}
