:root { font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #1f2328; background: #f7f7f4; font-synthesis: none; text-rendering: optimizeLegibility; -webkit-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; --surface: #f7f7f4; --panel: #ffffff; --panel-2: #f0f1ee; --text: #1f2328; --muted: #6f747a; --line: #dedfdc; --accent: #2563eb; --accent-soft: #e7efff; --green: #15a46b; --danger: #c2413a; --shadow: 0 18px 48px rgba(20, 24, 31, 0.16); } [data-theme="dark"] { color-scheme: dark; color: #f4f4f5; background: #171717; --surface: #171717; --panel: #1f1f1f; --panel-2: #262626; --text: #f4f4f5; --muted: #a1a1aa; --line: #303030; --accent: #9fb7ff; --accent-soft: rgba(159, 183, 255, 0.16); --green: #37c58a; --danger: #ff6b62; --shadow: 0 18px 48px rgba(0, 0, 0, 0.36); } .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; white-space: nowrap; border: 0; clip: rect(0, 0, 0, 0); } * { box-sizing: border-box; } html, body, #root { width: 100%; height: 100%; margin: 0; overflow: hidden; overscroll-behavior: none; } body { position: fixed; inset: 0; width: 100%; overflow: hidden; touch-action: pan-y; } button, input, textarea { font: inherit; } button { -webkit-tap-highlight-color: transparent; } button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; } @media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: 1ms !important; } } .app-shell { position: fixed; inset: 0; display: grid; grid-template-rows: auto 1fr auto; width: 100vw; max-width: 100vw; height: var(--app-height, 100dvh); min-height: 0; background: linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(247, 247, 244, 0)), var(--surface); color: var(--text); overflow: hidden; overscroll-behavior: none; touch-action: pan-y; } [data-theme="dark"] .app-shell { background: var(--surface); } .top-bar { display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; align-items: center; gap: 12px; min-width: 0; padding: calc(env(safe-area-inset-top, 0px) + 12px) 16px 10px; background: rgba(247, 247, 244, 0.9); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(222, 223, 220, 0.8); z-index: 20; } [data-theme="dark"] .top-bar { background: rgba(23, 23, 23, 0.94); border-bottom-color: rgba(48, 48, 48, 0.9); } .icon-button, .ghost-icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px; width: 44px; height: 44px; border: 0; border-radius: 999px; color: #353a40; background: transparent; } [data-theme="dark"] .icon-button, [data-theme="dark"] .ghost-icon { color: #f4f4f5; } [data-theme="dark"] .icon-button:active, [data-theme="dark"] .ghost-icon:active { background: #262626; } .icon-button:active, .ghost-icon:active { background: #ecedea; } .top-docs-logo { display: block; border-radius: 7px; box-shadow: 0 0 0 1px rgba(24, 28, 33, 0.08); } [data-theme="dark"] .top-docs-logo { box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.16); } .top-title { display: flex; flex-direction: column; min-width: 0; } .top-title strong { font-size: 17px; line-height: 21px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .connection-status { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; line-height: 16px; } .connection-status.is-connected { color: var(--green); } .connection-status.is-connecting { color: #64748b; } .connection-status.is-disconnected { color: var(--danger); }