/* V132 base and reset */
* { box-sizing: border-box; }
html, body { width: 100%; min-height: 100%; margin: 0; padding: 0; overflow: hidden; }
body {
    min-height: 100vh;
    padding-top: var(--header-height);
    background:
        radial-gradient(circle at 50% 18%, rgba(45, 88, 120, .22), transparent 42%),
        radial-gradient(circle at 18% 82%, rgba(140, 92, 255, .12), transparent 34%),
        linear-gradient(145deg, var(--bg-deep), #080d13 48%, #020306);
    color: var(--text);
    font-family: var(--font-main);
    user-select: none;
}
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
img { display: block; max-width: 100%; }
[hidden], .hidden { display: none !important; }
input, textarea, select, [contenteditable="true"], .entity-description, .conversation-messages, .ai-response-output, .tooltip-section { user-select: text; }
:where(button, a, input, select, textarea, [tabindex], .card-list-item, .hotspot):focus { outline: 0; }
:where(button, a, input, select, textarea, [tabindex], .card-list-item, .hotspot):focus-visible {
    outline: 2px solid color-mix(in srgb, var(--gold) 55%, transparent);
    outline-offset: 2px;
}
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: rgba(255,255,255,.035); border-radius: 999px; }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,.18); border-radius: 999px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,.28); }
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { transition-duration: 1ms !important; animation-duration: 1ms !important; }
}
