@keyframes qm-wait-turn{to{transform:rotate(360deg)}}
html body .qm-waiting::before{content:"";display:inline-block;box-sizing:border-box;width:16px;height:16px;margin-right:9px;flex:none;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-3px;animation:qm-wait-turn .8s linear infinite}
html body .qm-waiting:not(button)::after{content:attr(data-qm-elapsed);display:inline-block;margin-left:12px;font-size:12px;font-weight:400;white-space:nowrap;opacity:.7;font-variant-numeric:tabular-nums}
html.qm-page-hidden body .qm-waiting::before{animation-play-state:paused}
html body :is(.tool-video-loading,.local-repair-detection,.local-device-note.qm-waiting,.account-loading){font-size:14px;font-weight:400;line-height:1.7}
html body .local-device-note.qm-waiting{color:var(--ink,#25252a);background:transparent;min-height:54px;padding:14px 0}
html body .local-progress-head h3::before{content:"";display:inline-block;width:16px;height:16px;margin-right:10px;border:2px solid #b8b8bf;border-top-color:var(--accent,#d33a2c);border-radius:50%;vertical-align:-2px;animation:qm-wait-turn .8s linear infinite}
html body .pv-video-status.is-connection-help{width:calc(100% - 40px);max-width:280px;box-sizing:border-box;white-space:normal;flex-wrap:wrap;flex-direction:column;align-items:center;gap:14px;padding:18px;text-align:center;font-size:14px;line-height:1.65}
html body .pv-video-status.is-connection-help .pv-video-message{min-width:0;overflow-wrap:anywhere}
html body .pv-video-status.is-connection-help .pv-video-retry{min-height:44px;padding:10px 16px;white-space:normal}
html body .local-resolution-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
html body .local-resolution-option{display:flex;flex-direction:column;gap:4px;align-items:flex-start;min-width:0;min-height:68px;padding:13px 16px;border:1px solid #dedee4;border-radius:10px;background:#fff;color:var(--ink,#25252a);font:inherit;cursor:pointer;text-align:left;transition:border-color .15s,background-color .15s}
html body .local-resolution-option strong{font-size:16px;font-weight:600;line-height:1.4}
html body .local-resolution-option small{font-size:12px;color:var(--ink-soft,#66656d);font-weight:400}
html body .local-resolution-option[aria-pressed="true"]{border-color:var(--accent,#d33a2c);background:#fff7f5}
html body .local-resolution-option:focus-visible{outline:2px solid var(--accent,#d33a2c);outline-offset:3px}
html body .local-enhance-native{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
html body .local-tool-form .local-control{margin-bottom:22px}
html body .local-repair-overlays{position:absolute;inset:0;pointer-events:none}
html body .local-repair-overlays .local-image-region{pointer-events:auto;border-color:#f7cc72;background:rgba(242,185,72,.08)}
html body .local-repair-overlays .local-image-region.is-selected{border-color:#fff;box-shadow:0 0 0 1px #4c6988}
html body .local-repair-overlays .local-image-region>span:first-child{font-size:12px;background:#25364b;color:#fff;border-radius:3px;padding:2px 5px;pointer-events:none}
html body .local-repair-candidates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}
html body .local-repair-choice{display:flex;align-items:flex-start;gap:10px;min-height:56px;padding:12px;border:1px solid #e2e2e7;border-radius:9px;cursor:pointer}
html body .local-repair-choice:has(input:checked){background:#fff8f5;border-color:#e8b6aa}
html body .local-repair-choice input{margin-top:3px;width:18px;height:18px;accent-color:var(--accent,#d33a2c);flex:none}
html body .local-repair-choice span{min-width:0}
html body .local-repair-choice strong{display:block;font-size:14px;font-weight:500;line-height:1.6;overflow-wrap:anywhere}
html body .local-repair-choice small{display:block;font-size:12px;font-weight:400;line-height:1.6;color:var(--ink-soft,#66656d)}
html body .local-repair-detection{min-height:26px;margin-top:16px}
html body .local-repair-adjust{margin:16px 0 22px}
html body .tool-workbench-actions button{min-height:44px;padding:10px 16px;border:1px solid #e0e0e5;border-radius:9px;background:#fff;color:var(--ink,#25252a);font:inherit;font-size:14px;font-weight:500;line-height:1.5;cursor:pointer}
html body .tool-workbench-actions button:hover{background:#f4f4f6}
html body .tool-media-placeholder{display:grid;place-items:center;width:100%;min-height:90px;padding:20px;color:#e3e3e8;font-size:14px;line-height:1.65;text-align:center;box-sizing:border-box}
@media(max-width:840px){html body .local-resolution-option{padding:11px 12px}html body .local-repair-candidates{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html body .qm-waiting::before,html body .local-progress-head h3::before{animation-duration:2s}}

html body:not(.is-tool-route) .source-shell.has-source:not(.is-editing) #sourceTitle{display:none}
html body:not(.is-tool-route) .source-shell.has-source:not(.is-editing) #sourceDescription{font-size:16px;font-weight:500;line-height:1.65;color:var(--ink,#25252a);margin:0;max-width:65ch}
html body:not(.is-tool-route) .source-shell.has-source:not(.is-editing) .source-head{align-items:center;gap:24px}
html body:not(.is-tool-route) .collect-tool-head{margin-bottom:18px}
html body .tool-media-placeholder[hidden]{display:none!important}

html body:not(.is-tool-route) .ch-head :is(.ch-sub,.ch-count){display:none}

html body .tool-workbench{grid-template-rows:auto;row-gap:24px}
html body .tool-workbench>.tool-preview{grid-column:1;grid-row:1}
html body .tool-panel-stack{grid-column:2;grid-row:1;min-width:0}
html body .tool-panel-stack>.tool-workbench-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px;margin:18px 0 0}
html body .local-repair-other{grid-column:1 / -1;color:var(--ink-soft,#66656d);font-size:13px}
html body .local-repair-other summary{cursor:pointer;min-height:36px;line-height:36px}
html body .local-repair-other .local-repair-choice{margin-top:10px;color:var(--ink,#25252a)}
@media(max-width:840px){html body .tool-workbench>.tool-preview,html body .tool-panel-stack{grid-column:1;grid-row:auto}}

html body:not(.is-tool-route) #sourceCurrent{display:none!important}

html body .tool-preview-hint{font-size:14px;line-height:1.7}
