.tools-header{flex-shrink:0;padding:clamp(18px,2.2vh,28px) clamp(28px,4.5vw,64px) clamp(14px,1.8vh,22px);border-bottom:1px solid var(--ekko-border);background:transparent}.tools-body{flex:1;gap:clamp(28px,4vw,48px);overflow:hidden;padding:clamp(18px,2.4vh,32px) clamp(28px,4.5vw,64px);min-height:0}.tools-body,.tools-footer{display:flex;background:transparent}.tools-footer{flex-shrink:0;border-top:1px solid var(--ekko-border);padding:16px clamp(28px,4.5vw,64px);align-items:center;justify-content:space-between;gap:20px}.tools-right{flex:1;min-width:0;display:flex;flex-direction:column;gap:clamp(8px,1.2vh,12px);overflow:hidden;animation:panel-in .22s ease}@keyframes panel-in{0%{opacity:0}to{opacity:1}}.tools-cat-header{display:flex;align-items:center;gap:8px;flex-shrink:0}.cat-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.tool-grid-3x2{flex:1;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:clamp(10px,1.2vw,16px)}.tc-cell,.tool-grid-3x2{overflow:hidden;min-height:0}.tc-cell{border-radius:20px;padding:10px 12px;display:flex;flex-direction:column;text-decoration:none;animation:card-in .22s ease both;animation-delay:calc(var(--tool-idx, 0) * .04s);position:relative;backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%);transition:border-color .24s ease,background .24s ease,transform .14s ease;border-left:3px solid var(--c,var(--ekko-accent))}.tc-coming{opacity:.82}.tc-live{cursor:pointer}.tc-live:hover{transform:translateY(-2px);text-decoration:none!important}.tc-live:active{transform:scale(.97);opacity:.85}@keyframes card-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes card-in-coming{0%{opacity:0;transform:translateY(5px)}to{opacity:.82;transform:translateY(0)}}.tc-coming{animation-name:card-in-coming}.cat-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:100%;padding:2px 4px 6px;flex-shrink:0}.cat-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:99px;border:1.5px solid var(--ekko-border);background:var(--ekko-surface);color:var(--ekko-muted);font-size:12.5px;letter-spacing:.01em;line-height:1;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .12s ease}.cat-chip svg{display:block;flex-shrink:0}.cat-chip.active{border-color:var(--c,var(--ekko-accent));background:color-mix(in srgb,var(--c,var(--ekko-accent)) 14%,transparent);color:var(--c,var(--ekko-accent));font-weight:600}.cat-chip:active{transform:scale(.96)}@media (max-width:767px){.tools-header{padding:10px 20px 8px}.tools-body{flex-direction:column;gap:10px;padding:10px 14px 6px}.tools-right{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.tool-grid-3x2{grid-template-columns:repeat(2,1fr);grid-template-rows:unset;grid-auto-rows:minmax(110px,auto);overflow:visible;gap:10px}.fc-art-wrap{max-height:42%;padding:6px 6px 0}.fc-content{padding:5px 10px 8px;gap:2px}.fc-name{font-size:13px}.fc-badge{font-size:8px;padding:2px 5px}.fc-blurb{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:10px}.fc-launch{display:none}.tc-cell{padding:8px 10px;border-radius:16px}.all-cats-grid-full{grid-template-columns:repeat(2,1fr)}.all-cats-topbar{padding:12px 20px}.tools-footer{flex-direction:column;align-items:flex-start;gap:2px;padding:10px 20px}}.header-chips{display:flex;justify-content:center;margin-top:10px}.view-all-btn{margin-left:auto;font-family:var(--font-jetbrains-mono),"JetBrains Mono",monospace;font-size:10px;letter-spacing:.12em;-webkit-tap-highlight-color:transparent;outline:none;text-transform:uppercase;color:var(--ekko-muted);cursor:pointer;background:none;border:none;padding:4px 0;transition:color .2s ease,opacity .2s ease;white-space:nowrap;font-weight:500}.view-all-btn:hover{color:var(--ekko-text);opacity:.8}.all-cats-overlay{position:absolute;inset:0;background:var(--ekko-bg);z-index:20;transform:translateY(100%);transition:transform .48s cubic-bezier(.32,.72,0,1);display:flex;flex-direction:column;overflow:hidden}.all-cats-overlay.visible{transform:translateY(0)}.all-cats-topbar{flex-shrink:0;padding:12px clamp(20px,3vw,48px);border-bottom:1px solid var(--ekko-border);display:flex;align-items:center;justify-content:space-between}.back-btn{font-family:var(--font-jetbrains-mono),"JetBrains Mono",monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ekko-muted);cursor:pointer;background:none;border:none;padding:4px 8px;border-radius:6px;transition:color .2s ease,background .2s ease}.back-btn:hover{color:var(--ekko-text);background:var(--ekko-surface)}.all-cats-grid-full{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.4vw,18px);padding:clamp(14px,2vh,24px) clamp(20px,3vw,48px);align-content:start}.all-cat-card{background:var(--ekko-surface);border:1px solid var(--ekko-border);border-radius:12px;padding:14px;cursor:pointer;display:flex;flex-direction:column;gap:10px;opacity:0;transition:border-color .2s ease,box-shadow .2s ease}.all-cats-overlay.visible .all-cat-card{animation:cat-card-in .32s ease both;animation-delay:calc(.28s + var(--cat-idx, 0) * .06s)}@keyframes cat-card-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.all-cat-card:hover{border-color:var(--c);box-shadow:0 0 0 1px var(--c),0 4px 20px rgba(0,0,0,.15)}.all-cat-card-header{display:flex;align-items:center;gap:10px}.all-cat-orb{width:32px;height:32px;border-radius:50%;flex-shrink:0;background:radial-gradient(circle at 28% 28%,rgba(255,255,255,.8) 0,rgba(255,255,255,.15) 28%,transparent 52%),radial-gradient(circle at 70% 75%,rgba(0,0,0,.22) 0,rgba(0,0,0,0) 46%),var(--c,#888);display:flex;align-items:center;justify-content:center}.all-cat-tool-list{display:flex;flex-direction:column;gap:5px}.all-cat-tool-row{display:flex;align-items:center;gap:7px;font-family:var(--font-jetbrains-mono),"JetBrains Mono",monospace;font-size:10px;letter-spacing:.04em;color:var(--ekko-text)}.all-cat-tool-row.coming{color:var(--ekko-muted);opacity:.55}.fc-card{position:relative;border-radius:20px;padding:0;display:flex;flex-direction:column;overflow:hidden;text-decoration:none!important;cursor:pointer;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);animation:card-in .22s ease both;animation-delay:calc(var(--tool-idx, 0) * .05s);transition:border-color .24s ease,transform .14s ease,box-shadow .24s ease;min-height:0}.fc-card:hover{transform:translateY(-2px)}.fc-badge{font-family:var(--font-jetbrains-mono),"JetBrains Mono",monospace;font-size:9px;font-weight:700;letter-spacing:.12em;padding:2px 7px;border-radius:3px;flex-shrink:0;white-space:nowrap}.fc-art-wrap{flex:1 1 0;min-height:0;max-height:46%;width:100%;display:flex;align-items:center;justify-content:center;padding:6px 6px 0;overflow:hidden;will-change:transform;transition:transform .28s cubic-bezier(.34,1.56,.64,1)}.fc-card:hover .fc-art-wrap{transform:scale(1.04)}.fc-content{flex-shrink:0;padding:4px 10px 8px;display:flex;flex-direction:column;gap:4px;background:transparent}.fc-name-row{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.fc-name{font-family:var(--font-instrument-serif),"Instrument Serif",Georgia,serif;font-size:clamp(14px,1.5vw,17px);font-weight:600;color:var(--ekko-text);letter-spacing:-.01em;line-height:1.15}.fc-blurb{font-size:clamp(9px,.72vw,10px);color:var(--ekko-muted);line-height:1.4}.fc-blurb,.fc-launch{font-family:Inter,system-ui,sans-serif}.fc-launch{align-self:flex-start;margin-top:1px;padding:3px 9px;border-radius:5px;font-size:10px;font-weight:600;letter-spacing:.02em}@keyframes hdr-cat{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}