.touch-screen-page{--touch-ink:#102033;--touch-muted:#4b5f75;--touch-border:#d7e2ef;--touch-panel:#ffffff;--touch-soft:#f5f8fb;--touch-surface:#f8fbfd;--touch-primary:#0f766e;--touch-primary-strong:#115e59;--touch-blue:#2563eb;--touch-amber:#b45309;--touch-danger:#be123c;--touch-good:#15803d}.touch-hero-header{align-items:flex-end}.touch-hero-summary{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;max-width:360px}.touch-hero-summary span{border:1px solid rgba(15,118,110,.28);border-radius:999px;color:var(--touch-primary-strong);background:rgba(240,253,250,.92);font-size:.86rem;font-weight:700;padding:.38rem .7rem}.touch-diagnostic{max-width:1180px;margin:0 auto;padding:1rem;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,253,.98));color:var(--touch-ink)}.touch-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.touch-action-row,.touch-mode-tabs,.touch-run-controls{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.touch-mode-tabs{min-width:0}.touch-action-row button,.touch-mode-tabs button,.touch-run-controls button{min-height:40px;border:1px solid var(--touch-border);border-radius:8px;background:#fff;color:var(--touch-ink);cursor:pointer;font:inherit;font-size:.92rem;font-weight:700;line-height:1.1;padding:.62rem .82rem;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.touch-action-row button:hover,.touch-mode-tabs button:hover,.touch-run-controls button:hover{border-color:rgba(15,118,110,.45);color:var(--touch-primary-strong);transform:translateY(-1px)}.touch-mode-tabs button.is-active{background:var(--touch-primary);border-color:var(--touch-primary);color:#fff}.touch-action-row button[data-action=reset]{border-color:rgba(190,18,60,.25);color:var(--touch-danger)}.touch-main-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:1rem;align-items:stretch}.touch-quick-guide{align-items:center;background:rgba(240,253,250,.92);border:1px solid rgba(15,118,110,.24);border-radius:8px;color:var(--touch-muted);display:flex;flex-wrap:wrap;gap:.35rem .6rem;justify-content:center;line-height:1.35;margin:-.25rem 0 1rem;padding:.62rem .78rem;text-align:center}.touch-quick-guide span{font-size:.9rem;font-weight:700}.touch-quick-guide a{color:var(--touch-primary-strong);font-size:.9rem;font-weight:900;text-decoration:underline;text-underline-offset:0.18em}.touch-side-panel,.touch-test-panel{min-width:0}.touch-canvas-shell{position:relative;min-height:520px;height:min(68vh,720px);border:1px solid var(--touch-border);border-radius:8px;background:var(--touch-surface);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.72)}#touchSurface{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair;-webkit-tap-highlight-color:transparent}.touch-center-status{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);min-width:min(86%,360px);border:1px solid rgba(15,118,110,.24);border-radius:8px;background:rgba(255,255,255,.9);color:var(--touch-ink);font-size:1rem;font-weight:800;line-height:1.35;padding:.82rem 1rem;text-align:center;pointer-events:none;box-shadow:0 18px 45px rgba(15,23,42,.12)}.touch-center-status.is-muted{opacity:.72}.touch-run-controls{justify-content:space-between;margin-top:.75rem}.touch-toggle{display:inline-flex;align-items:center;gap:.45rem;min-height:40px;border:1px solid var(--touch-border);border-radius:8px;background:#fff;color:var(--touch-muted);cursor:pointer;font-size:.92rem;font-weight:700;padding:.52rem .68rem}.touch-toggle input{width:1rem;height:1rem;accent-color:var(--touch-primary)}.touch-side-panel{display:grid;align-content:start;gap:1rem}.touch-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.touch-guide-panel,.touch-history-panel,.touch-info-panel,.touch-progress-block,.touch-stat{border:1px solid var(--touch-border);border-radius:8px;background:var(--touch-panel)}.touch-stat{min-height:82px;padding:.82rem}.touch-stat-wide{grid-column:1/-1}.touch-stat span{display:block;color:var(--touch-primary-strong);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.42rem;font-weight:900;line-height:1.1;overflow-wrap:anywhere}.touch-stat small{display:block;color:var(--touch-muted);font-size:.76rem;font-weight:800;letter-spacing:.04em;margin-top:.3rem;text-transform:uppercase}.touch-guide-panel,.touch-history-panel,.touch-info-panel,.touch-progress-block{padding:1rem}.touch-progress-label{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--touch-muted);font-size:.88rem;font-weight:800}.touch-progress-label strong{color:var(--touch-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.touch-progress-track{height:10px;border-radius:999px;background:#e2e8f0;margin-top:.75rem;overflow:hidden}.touch-progress-track span{display:block;width:0%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--touch-primary),#22c55e);transition:width .18s ease}.touch-guide-panel h2,.touch-history-panel h2,.touch-info-panel h2{color:var(--touch-ink);font-size:1rem;line-height:1.2;margin:0 0 .72rem}.touch-guide-panel p{color:var(--touch-muted);font-size:.9rem;line-height:1.48;margin:0 0 .78rem}.touch-guide-panel a{color:var(--touch-primary-strong);display:inline-flex;font-size:.92rem;font-weight:800;line-height:1.32;text-decoration:underline;text-underline-offset:0.18em}.touch-info-panel dl{display:grid;gap:.48rem;margin:0}.touch-info-panel dl div{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;border-bottom:1px solid rgba(215,226,239,.75);padding-bottom:.42rem}.touch-info-panel dl div:last-child{border-bottom:0;padding-bottom:0}.touch-info-panel dt{color:var(--touch-muted);font-size:.85rem;font-weight:700}.touch-info-panel dd{color:var(--touch-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem;font-weight:800;margin:0;text-align:right}.touch-history-panel ol{display:grid;gap:.45rem;list-style-position:inside;margin:0;padding:0}.touch-history-panel li{color:var(--touch-muted);font-size:.9rem;line-height:1.35}.touch-diagnostic[data-ghost=running] .touch-canvas-shell{border-color:rgba(190,18,60,.45);box-shadow:inset 0 0 0 1px rgba(190,18,60,.16),0 0 0 4px rgba(190,18,60,.08)}.touch-diagnostic:fullscreen{width:100vw;height:100vh;max-width:none;border-radius:0;padding:.75rem}.touch-diagnostic:fullscreen .touch-main-grid{height:calc(100vh - 5.9rem)}.touch-diagnostic:fullscreen .touch-canvas-shell{height:100%;min-height:0}.touch-trust .trust-title{color:var(--touch-ink)}.touch-faq-list{display:grid;gap:.75rem;max-width:920px;margin:0 auto}.touch-faq-list details{border:1px solid var(--touch-border);border-radius:8px;background:#fff;padding:.9rem 1rem}.touch-faq-list summary{color:var(--touch-ink);cursor:pointer;font-weight:800}.touch-faq-list p{color:var(--touch-muted);line-height:1.65;margin:.65rem 0 0}html.dark-theme .touch-screen-page{--touch-ink:#e5eef8;--touch-muted:#aec0d2;--touch-border:#334155;--touch-panel:#101827;--touch-soft:#0f172a;--touch-surface:#0b1220;--touch-primary:#2dd4bf;--touch-primary-strong:#5eead4}html.dark-theme .touch-diagnostic{background:linear-gradient(180deg,rgba(15,23,42,.98),rgba(11,18,32,.98))}html.dark-theme .touch-action-row button,html.dark-theme .touch-center-status,html.dark-theme .touch-faq-list details,html.dark-theme .touch-guide-panel,html.dark-theme .touch-history-panel,html.dark-theme .touch-info-panel,html.dark-theme .touch-mode-tabs button,html.dark-theme .touch-progress-block,html.dark-theme .touch-run-controls button,html.dark-theme .touch-stat,html.dark-theme .touch-toggle{background:#101827}html.dark-theme .touch-mode-tabs button.is-active{background:#0f766e;color:#ecfeff}html.dark-theme .touch-center-status{box-shadow:0 18px 45px rgba(0,0,0,.32)}html.dark-theme .touch-quick-guide{background:rgba(20,83,76,.34)}@media (max-width:980px){.touch-hero-header{align-items:flex-start}.touch-hero-summary{justify-content:flex-start}.touch-toolbar{align-items:stretch;flex-direction:column}.touch-main-grid{grid-template-columns:1fr}.touch-canvas-shell{height:min(64vh,620px);min-height:430px}.touch-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:620px){.touch-diagnostic{padding:.65rem .65rem .65rem 3.55rem}.touch-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.touch-action-row button,.touch-mode-tabs button,.touch-run-controls button{min-width:0;width:100%}.touch-action-row,.touch-run-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.touch-quick-guide{align-items:flex-start;flex-direction:column;justify-content:flex-start;margin-bottom:.72rem;padding:.58rem .68rem;text-align:left}.touch-canvas-shell{height:56vh;min-height:340px}.touch-center-status{min-width:min(92%,300px);font-size:.92rem}.touch-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.touch-info-panel dl div{align-items:flex-start;flex-direction:column;gap:.18rem}.touch-info-panel dd{text-align:left}.touch-guide-panel p,.touch-history-panel li{font-size:.86rem}}@media (max-width:360px){.touch-diagnostic{padding-left:3.1rem}}