:root{color-scheme:light dark;--bg: #ffffff;--fg: #111318;--muted: #5b6270;--border: #d9dce2;--accent: #1f6feb;--ok: #1a7f37;--failed: #cf222e;--pending: #8b93a1;--running: #9a6700;--banner-bg: #fff3cd;--banner-fg: #664d03}@media (prefers-color-scheme: dark){:root{--bg: #0d1117;--fg: #e6edf3;--muted: #9aa4b2;--border: #30363d;--accent: #58a6ff;--ok: #3fb950;--failed: #f85149;--pending: #6e7681;--running: #d29922;--banner-bg: #3b2f00;--banner-fg: #ffd966}}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.app-root{min-height:100vh;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));display:flex;flex-direction:column;gap:12px}.ltr{direction:ltr;unicode-bidi:isolate;display:inline-block}.demo-banner{background:var(--banner-bg);color:var(--banner-fg);border-radius:8px;padding:8px 12px;font-weight:600;text-align:center}.feature-gate{min-height:100vh;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.reminder{color:var(--muted);font-size:.95em;border-inline-start:3px solid var(--accent);padding-inline-start:10px}.connect-button,.share-button,.log-toggle button{min-height:48px;min-width:48px;font-size:1.05em;border-radius:10px;border:1px solid var(--border);background:var(--accent);color:#fff;padding:10px 18px;cursor:pointer}.connect-button:disabled{opacity:.6;cursor:default}.step-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.step{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border:1px solid var(--border);border-radius:10px;padding:10px 12px}.step-badge{font-weight:600;border-radius:999px;padding:2px 10px}.step-pending .step-badge{color:var(--pending)}.step-running .step-badge{color:var(--running)}.step-ok .step-badge{color:var(--ok)}.step-failed .step-badge{color:var(--failed)}.step-skipped .step-badge{color:var(--pending)}.step-detail{color:var(--muted);font-size:.9em}.check-failed{color:var(--failed);font-weight:600}.log-view{border-top:1px solid var(--border);padding-top:8px}.log-toggle{display:flex;gap:8px;margin-bottom:8px}.log-toggle button[aria-pressed=true]{background:var(--fg);color:var(--bg)}.log-entries{list-style:none;margin:0;padding:0;max-height:240px;overflow-y:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.log-entries li{display:flex;gap:8px;padding:2px 0;border-bottom:1px solid var(--border)}.log-tx .log-dir{color:var(--accent)}.log-rx .log-dir{color:var(--ok)}.share-report textarea{width:100%;min-height:120px}.app-shell{min-height:100vh}.app-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);padding:8px max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left))}.app-tabs button{min-height:44px;padding:8px 16px;border:none;background:none;color:var(--muted);font-size:1em;cursor:pointer;border-bottom:3px solid transparent}.app-tabs button.active{color:var(--fg);font-weight:600;border-bottom-color:var(--accent)}.recording-controls{display:flex;flex-direction:column;gap:6px}.recording-start-button,.recording-stop-button{min-height:44px;border-radius:10px;border:1px solid var(--border);background:var(--failed);color:#fff;padding:8px 16px;cursor:pointer;align-self:flex-start}.recording-start-button{background:var(--ok)}.recording-capped-message{color:var(--failed);font-weight:600}.recordings-screen{padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));display:flex;flex-direction:column;gap:12px}.session-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.session-list-item{width:100%;display:flex;flex-wrap:wrap;gap:10px;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:none;color:inherit;text-align:start;cursor:pointer}.session-list li.selected .session-list-item{border-color:var(--accent)}.demo-badge{color:var(--running);font-weight:600}.session-detail{border-top:1px solid var(--border);padding-top:12px;display:flex;flex-direction:column;gap:10px}.session-stats{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:16px}.pid-stats-table{width:100%;border-collapse:collapse}.pid-stats-table th,.pid-stats-table td{border-bottom:1px solid var(--border);padding:6px 8px;text-align:start}.playback input[type=range]{width:100%}.playback-values{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.playback-values li{display:flex;justify-content:space-between;gap:8px}.export-buttons{display:flex;gap:8px}.delete-session-button{align-self:flex-start;min-height:44px;border-radius:10px;border:1px solid var(--failed);background:none;color:var(--failed);padding:8px 16px;cursor:pointer}.delete-session-confirm{border:1px solid var(--failed);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
