:root{--graphite:#141413;--panel:#1b1b19;--panel-2:#202020;--line:#333330;--ink:#f2f0ea;--ink-soft:#8c8b85;--accent:#d6401e;--font-sans:"Helvetica Neue", "Neue Haas Grotesk", Helvetica, Arial, sans-serif;--font-mono:ui-monospace, "IBM Plex Mono", "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px}*,:before,:after{box-sizing:border-box}html,body{width:100%;min-height:100dvh;font-family:var(--font-sans);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-size:14px;line-height:1.5;overflow-x:hidden;background-color:var(--graphite)!important}::selection{background:var(--accent);color:var(--ink)}:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.btn{font-family:var(--font-sans);transition:opacity .14s,color .14s,border-color .14s,background-color .14s;box-shadow:none!important;border-radius:0!important}.btn:active,.btn:focus,.btn:focus-visible{box-shadow:none!important;transform:none!important}.btn-primary{text-transform:uppercase;letter-spacing:.1em;padding:15px 24px;font-size:12px;font-weight:700;background:var(--ink)!important;color:var(--graphite)!important;border:1px solid var(--ink)!important;border-radius:0!important}.btn-primary:hover,.btn-primary:focus{opacity:.85;background:var(--ink)!important;color:var(--graphite)!important;border-color:var(--ink)!important}.category-filter{gap:var(--space-2);margin-bottom:var(--space-6);flex-wrap:wrap;justify-content:center;display:flex}.category-btn{align-items:center;gap:var(--space-2);border:1px solid var(--line);color:var(--ink-soft);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;padding:12px 16px;font-size:11px;font-weight:500;transition:color .14s,border-color .14s;display:inline-flex}.category-btn:before{content:"";background:0 0;width:6px;height:6px;transition:background .14s}.category-btn:hover{color:var(--ink);border-color:var(--ink-soft)}.category-btn.active{color:var(--accent);border-color:var(--accent)}.category-btn.active:before{background:var(--accent)}.hub-main{width:100%;max-width:960px}.tools-grid{background:var(--line);border:1px solid var(--line);width:fit-content;max-width:100%;margin:0 auto var(--space-5);grid-template-columns:repeat(auto-fit,320px);justify-content:center;gap:1px;display:grid}.tool-card{background:var(--panel);border-radius:2px;flex-direction:column;padding:28px;display:flex}.tool-header{justify-content:space-between;align-items:baseline;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.tool-index{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-soft);font-size:12px}.featured-badge{align-items:center;gap:var(--space-2);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:10px;font-weight:500;display:inline-flex}.featured-badge:before{content:"";background:var(--accent);width:6px;height:6px}.tool-content{margin-bottom:var(--space-5);flex:1}.tool-name{font-family:var(--font-sans);color:var(--ink);margin:0 0 var(--space-3);font-size:19px;font-weight:700;line-height:1.2}.tool-description{color:var(--ink-soft);margin:0;font-size:13px;line-height:1.5}.tool-footer{justify-content:space-between;align-items:center;gap:var(--space-4);border-top:1px solid var(--line);margin-top:auto;padding-top:20px;display:flex}.tool-category{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-size:10px;font-weight:500}.tool-btn{align-items:center;gap:var(--space-2);text-transform:uppercase;letter-spacing:.1em;padding:12px 20px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.tool-btn svg{transition:opacity .14s}.tool-btn:hover{opacity:.85}.search-wrapper{max-width:480px;margin:0 auto var(--space-6);position:relative}.search-icon{left:var(--space-4);color:var(--ink-soft);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.search-input{background:var(--panel);border:1px solid var(--line);width:100%;color:var(--ink);font-family:var(--font-mono);border-radius:0;padding:14px 48px;font-size:13px;transition:border-color .14s}.search-input::placeholder{color:var(--ink-soft)}.search-input:focus{border-color:var(--ink);outline:none}.search-clear{right:var(--space-4);color:var(--ink-soft);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .14s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.search-clear:hover{color:var(--ink)}.results-counter{text-align:center;font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-soft);margin-top:var(--space-5);font-size:12px}.empty-state{text-align:center;padding:var(--space-8) var(--space-5)}.empty-state-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 var(--space-3);font-size:11px;font-weight:500}.empty-state-text{color:var(--ink);margin:0 0 var(--space-2);font-size:16px;font-weight:700}.empty-state-subtext{color:var(--ink-soft);margin:0;font-size:13px}@media (width<=768px){.hub-page{padding:var(--space-6) var(--space-4) var(--space-8)}.tools-grid{grid-template-columns:1fr}.tool-card{padding:var(--space-5)}.category-filter{gap:var(--space-2)}.category-btn{padding:10px 14px;font-size:10px}.search-input{padding:14px 44px}}.hub-page{min-height:100dvh;padding:var(--space-8) var(--space-5) var(--space-9);flex-direction:column;align-items:center;display:flex}.hub-header{text-align:center;width:100%;max-width:720px;margin-bottom:var(--space-7)}.hub-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 var(--space-4);font-size:11px;font-weight:400}.hub-wordmark{font-family:var(--font-sans);letter-spacing:-.01em;color:#0000;-webkit-text-fill-color:transparent;background-image:linear-gradient(90deg, var(--ink) 0%, var(--ink) 42%, var(--accent) 50%, var(--ink) 58%, var(--ink) 100%);background-position:200%;background-size:200%;-webkit-background-clip:text;background-clip:text;font-size:clamp(40px,8vw,52px);font-weight:700;line-height:1.05;animation:4s ease-in-out forwards barrido-acento}@keyframes barrido-acento{0%{background-position:200%}to{background-position:-200%}}.hub-wordmark strong{font-weight:700}.hub-version{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-soft);-webkit-text-fill-color:var(--ink-soft);font-size:13px;font-weight:400}.hub-tagline{color:var(--ink-soft);max-width:480px;margin:0 auto;font-size:14px;line-height:1.6}
