:root{--color-bg: #f4f5f7;--color-bg-elevated: #ffffff;--color-fg: #1a1d23;--color-fg-muted: #5b6472;--color-primary: #2563c7;--color-primary-fg: #ffffff;--color-success: #188049;--color-error: #c23636;--color-border: #dde1e7;--shadow-card: 0 1px 3px rgba(20, 22, 26, .1), 0 4px 14px rgba(20, 22, 26, .06);--color-module-atencion: #0033cc;--color-module-conceptual: #8a1c9e;--color-module-numeros: #0a7a78;--color-module-visuo: #b35b00;--color-game-bg: #e9e9e9;--color-game-bg-2: #c9c9c9;--color-game-fg: #14161a;--color-game-fg-muted: #4a5160;--color-chart-good: #0ca30c;--color-chart-warning: #fab219;--color-chart-critical: #d03b3b;--color-chart-grid: #2c313c;--color-chart-surface-bg: #1f232b;--color-chart-surface-fg: #f2f3f5;--color-chart-surface-fg-muted: #c7cbd1;--color-chart-surface-border: #3a3f4a;--font-size-sm: 14px;--font-size-base: 18px;--font-size-consigna: 22px;--target-min: 48px;--gap-min: 8px;--font-family: Inter, "Atkinson Hyperlegible", system-ui, -apple-system, Segoe UI, Arial, sans-serif}:root[data-theme=dark]{--color-bg: #14161a;--color-bg-elevated: #1f232b;--color-fg: #f2f3f5;--color-fg-muted: #c7cbd1;--color-primary: #5b9bd5;--color-primary-fg: #0a0e14;--color-success: #2ecc71;--color-error: #ff6b6b;--color-border: #3a3f4a;--shadow-card: none;--color-module-atencion: #6fa8f0;--color-module-conceptual: #d77be0;--color-module-numeros: #3fc9c4;--color-module-visuo: #f0a94e}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-fg);font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.5}h1,h2,h3{line-height:1.25}button{font-family:inherit;font-size:1rem}a{color:var(--color-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--target-min);min-width:var(--target-min);padding:10px 20px;margin:var(--gap-min);border-radius:10px;border:2px solid transparent;background:var(--color-bg-elevated);color:var(--color-fg);font-weight:600;cursor:pointer;box-shadow:var(--shadow-card);text-decoration:none;transition:border-color .15s ease,transform .1s ease}.btn:hover{border-color:var(--color-primary)}.btn:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.btn:active{transform:translateY(1px);border-color:var(--color-primary)}.btn-primary{background:var(--color-primary);color:var(--color-primary-fg)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.stack{display:flex;flex-direction:column;gap:16px}.page{max-width:900px;margin:0 auto;padding:24px 16px 64px}.card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:12px;padding:20px;box-shadow:var(--shadow-card)}.game-area{position:relative;width:100%;aspect-ratio:780 / 580;max-width:780px;margin:0 auto;background:var(--color-game-bg);border-radius:12px;overflow:hidden;touch-action:none;--color-fg: var(--color-game-fg);--color-fg-muted: var(--color-game-fg-muted)}.game-area--alt{background:var(--color-game-bg-2)}.chart-surface{background:var(--color-chart-surface-bg);color:var(--color-chart-surface-fg);border:1px solid var(--color-chart-surface-border);border-radius:12px;padding:16px;--color-fg: var(--color-chart-surface-fg);--color-fg-muted: var(--color-chart-surface-fg-muted)}.chart-surface .card{background:#ffffff0f;border-color:var(--color-chart-surface-border);box-shadow:none}.empty-state{text-align:center;padding:40px 16px}table{color:var(--color-fg)}th{color:var(--color-fg-muted);font-weight:600}@media (prefers-reduced-motion: reduce){:where(*,*:before,*:after):not(.game-area,.game-area *){animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
