:root,[data-tema=oscuro]{--bg-base: #0a0a0a;--bg-card: #0f0f0f;--bg-input: #0a0a0a;--bg-elevated: #1a1a1a;--bg-overlay: rgba(10, 10, 10, .85);--border-soft: #1a1a1a;--border-medium: #222;--border-strong: #333;--border-accent: #444;--text-base: #f5f5f5;--text-soft: #c0c0c0;--text-muted: #888;--text-dim: #666;--text-faint: #444;--text-ghost: #2a2a2a;--accent: #d4ff3a;--accent-2: #4dd0ff;--accent-soft: rgba(212, 255, 58, .12);--accent-border: rgba(212, 255, 58, .3);--accent-glow: rgba(212, 255, 58, .5);--danger: #ff6b6b;--success: #34d399;--overlay: rgba(0, 0, 0, .85);--scheme: dark;--grain: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' /%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E")}[data-tema=claro]{--bg-base: #fafaf7;--bg-card: #fff;--bg-input: #fff;--bg-elevated: #f0f0eb;--bg-overlay: rgba(255, 255, 255, .85);--border-soft: #ececec;--border-medium: #d4d4d4;--border-strong: #bbb;--border-accent: #999;--text-base: #0a0a0a;--text-soft: #2a2a2a;--text-muted: #555;--text-dim: #888;--text-faint: #aaa;--text-ghost: #ddd;--accent: #6b8e00;--accent-2: #0891b2;--accent-soft: rgba(107, 142, 0, .08);--accent-border: rgba(107, 142, 0, .3);--accent-glow: rgba(107, 142, 0, .4);--danger: #dc2626;--success: #059669;--overlay: rgba(0, 0, 0, .4);--scheme: light}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg-base);color:var(--text-base);font-family:Inter Tight,sans-serif;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);overflow-x:hidden;color-scheme:var(--scheme);transition:background .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;min-height:100dvh;position:relative}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:var(--grain);pointer-events:none;opacity:.4;z-index:1;mix-blend-mode:overlay}#root{position:relative;z-index:2}a{color:inherit;text-decoration:none}input,textarea,select,button{font-family:inherit;font-size:16px}button{cursor:pointer;border:none;background:none;color:inherit}button:active{transform:scale(.98)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--border-medium)}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}input,textarea{font-family:JetBrains Mono,monospace;background:var(--bg-card);border:1px solid var(--border-medium);color:var(--text-base);padding:12px 14px;font-size:14px;outline:none;transition:border-color .15s,background .3s ease;width:100%;border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}input:focus,textarea:focus{border-color:var(--accent)}select{background:var(--bg-card);color:var(--text-base);border:1px solid var(--border-medium)}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.fadeUp{animation:fadeUp .6s ease forwards}.fadeIn{animation:fadeIn .6s ease forwards}.scaleIn{animation:scaleIn .5s ease forwards}.stagger-1{animation-delay:.1s;opacity:0}.stagger-2{animation-delay:.25s;opacity:0}.stagger-3{animation-delay:.4s;opacity:0}.stagger-4{animation-delay:.55s;opacity:0}.stagger-5{animation-delay:.7s;opacity:0}@media (max-width: 768px){button{min-height:44px}}.display{font-family:Fraunces,serif;font-weight:700;letter-spacing:-.02em;line-height:.95}.display-italic{font-family:Cormorant,serif;font-style:italic;font-weight:400;letter-spacing:-.01em}.mono{font-family:JetBrains Mono,monospace;letter-spacing:.02em}.eyebrow{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--text-dim);font-weight:600}.prose li:before{content:"→";position:absolute;left:0;color:var(--accent);font-weight:700}.prose ol li:before{content:""}.prose ol li{list-style:decimal;padding-left:8px}.prose ul ul{margin-top:8px;margin-bottom:8px;padding-left:20px}.prose code{word-break:break-word}.prose pre{white-space:pre-wrap;word-break:break-word}
