@import "https://fonts.googleapis.com/css2?family=Questrial&family=Poppins:wght@200;300;400;500&family=JetBrains+Mono:wght@400;500&display=swap";:root{--paper:#fbfaf6;--paper-2:#f3f1ea;--paper-3:#efede3;--paper-4:#f2efe6;--ink-900:#14140f;--ink-700:#2a2a22;--ink-500:#5c5b51;--ink-400:#6e6c61;--ink-300:#8a887c;--ink-200:#a9a79a;--rule:#eae6dc;--rule-2:#e4e0d2;--rule-3:#e9e5d9;--sage:#9ba88c;--sage-deep:#64764f;--sage-tint:#9ba88c29;--clay:#9a5b48;--clay-tint:#9a5b481f;--ink-inverse:#f3f1ea;--ark-orange:var(--sage);--ark-orange-bright:var(--sage);--ark-orange-warm:var(--sage);--ark-orange-deep:var(--sage-deep);--ark-ink:var(--ink-900);--ark-ink-soft:var(--ink-700);--ark-paper:var(--paper);--ark-paper-2:var(--paper-2);--ark-paper-3:var(--paper-3);--ark-shell:var(--rule);--ark-silver:var(--rule-2);--ark-grey-500:var(--ink-400);--ark-grey-400:var(--ink-300);--ark-grey-300:#f3f1eab8;--ark-grey-200:var(--ink-200);--ark-grey-100:var(--rule-2);--ark-dark:var(--ink-900);--ark-dark-2:var(--ink-700);--ark-dark-3:var(--ink-700);--fg-primary:var(--ink-900);--fg-secondary:var(--ink-400);--fg-inverse:var(--ink-inverse);--bg-primary:var(--paper);--bg-dark:var(--ink-900);--font-display:"Century Gothic", Questrial, "URW Gothic", Poppins, Futura, sans-serif;--font-body:"Century Gothic", Questrial, "URW Gothic", Poppins, Futura, sans-serif;--font-satoshi:var(--font-body);--font-helvetica:var(--font-body);--display:var(--font-display);--body:var(--font-body);--satoshi:var(--font-body);--helvetica:var(--font-body);--mono:var(--font-body);--code:"JetBrains Mono", ui-monospace, SFMono-Regular, monospace;--bg:var(--paper);--surface:#fff;--surface-2:var(--paper-2);--surface-3:var(--paper-3);--ink:var(--ink-900);--ink-2:var(--ink-500);--ink-3:var(--ink-400);--ink-4:var(--ink-300);--line:var(--rule);--line-2:var(--rule-2);--accent:var(--sage);--accent-press:var(--sage-deep);--accent-tint:var(--sage-tint);--accent-ink:#fff;--accent-text:var(--sage-deep);--signal:var(--sage-deep);--signal-tint:var(--sage-tint);--action:var(--ink-900);--action-ink:var(--paper);--action-hover:#23231b;--r-xs:6px;--r-sm:10px;--r:14px;--r-lg:20px;--r-xl:24px;--r-pill:64px;--sh-sm:0 1px 2px #14140f0a;--sh:0 10px 26px #14140f12;--sh-lg:0 22px 50px #14140f17;--sh-accent:0 10px 26px #14140f1a;--ease:cubic-bezier(.2,.7,.2,1);--dur:.2s;--dur-slow:.38s}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;font-weight:400;overflow-x:hidden}#root{min-height:100vh}button{cursor:pointer;font-family:inherit}a{color:inherit;transition:opacity var(--dur) var(--ease);text-decoration:none}img{max-width:100%;display:block}::selection{background:var(--ink-900);color:var(--paper)}.wrap{max-width:1180px;margin:0 auto;padding:0 24px}.measure{max-width:720px}.k{font-family:var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:8px;font-size:12px;font-weight:400;display:inline-flex}.k .idx,.k.sig{color:var(--accent-text)}h1,h2,h3,h4{font-family:var(--display);color:var(--ink);margin:0;font-weight:400}.display{font-family:var(--display);letter-spacing:-.035em;color:var(--ink);text-wrap:balance;font-size:clamp(36px,6.2vw,68px);font-weight:400;line-height:1.07}.h1{font-family:var(--display);letter-spacing:-.032em;font-size:clamp(30px,4.6vw,52px);font-weight:400;line-height:1.08}.h2{font-family:var(--display);letter-spacing:-.03em;font-size:clamp(28px,4vw,42px);font-weight:400;line-height:1.12}.h3{font-family:var(--display);letter-spacing:-.02em;font-size:19px;font-weight:400;line-height:1.25}.lead{font-family:var(--body);color:var(--ink-2);text-wrap:pretty;font-size:18px;font-weight:400;line-height:1.72}.body-t{font-family:var(--body);color:var(--ink-2);text-wrap:pretty;font-size:16px;line-height:1.78}.small{font-family:var(--body);color:var(--ink-3);font-size:14px;line-height:1.65}.mono{font-family:var(--body);color:var(--ink-2);font-size:13px}.code{font-family:var(--code);color:var(--ink-2);font-size:13px}.btn{font-family:var(--body);border-radius:var(--r-pill);transition:all var(--dur) var(--ease);white-space:nowrap;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:12px 26px;font-size:15px;font-weight:400;line-height:1;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn svg{stroke-width:1.6px;width:16px;height:16px}.btn-primary{background:var(--action);color:var(--action-ink)}.btn-primary:hover{background:var(--action-hover);opacity:1}.btn.is-disabled,.btn.is-disabled:hover{opacity:.55;cursor:not-allowed;pointer-events:none}.btn-secondary{color:var(--ink);border-color:var(--rule-2);background:#fff}.btn-secondary:hover{border-color:var(--ink-300);opacity:1;background:#fff}.btn-ghost{color:var(--ink);background:0 0;padding-left:6px;padding-right:6px}.btn-ghost:hover{color:var(--accent-text);opacity:1}.btn-signal{background:var(--sage-deep);color:#fff}.btn-signal:hover{opacity:1;background:#55653f}.btn-lg{padding:15px 34px;font-size:16px}.tag{font-family:var(--body);letter-spacing:.06em;color:var(--ink-3);border:1px solid var(--rule-2);border-radius:var(--r-pill);transition:all var(--dur) var(--ease);background:#fff;padding:5px 13px;font-size:12px}.tag:hover{border-color:var(--ink-300);color:var(--ink);opacity:1}.tag.on{background:var(--ink-900);color:var(--paper);border-color:var(--ink-900)}.pill-new{background:var(--sage-deep);color:#fff;border-radius:var(--r-pill);letter-spacing:.07em;padding:3px 10px;font-size:11px}.announce{background:var(--ink-900);color:var(--ink-inverse);flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;padding:11px 20px;font-size:13px;display:flex}.announce .dim{opacity:.72}.announce .num{font-variant-numeric:tabular-nums;letter-spacing:.04em}.announce .sep{background:#f3f1ea47;width:1px;height:12px}.announce a{color:var(--ink-inverse);text-underline-offset:3px;text-decoration:underline}.mast{z-index:60;-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--rule);background:#fbfaf6d6;position:sticky;top:0}.mast-in{align-items:center;gap:26px;height:64px;display:flex}.wm{align-items:center;gap:2px;text-decoration:none;display:flex}.wm .wmt{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);font-size:19px;font-weight:400}.wm .wmt .sage{color:var(--sage)}.wm .glyph{display:none}.wm .badge{border-radius:var(--r-pill);background:var(--sage-tint);color:var(--accent-text);letter-spacing:.07em;text-transform:uppercase;margin-left:8px;padding:3px 9px;font-size:10px}.nav{align-items:center;gap:22px;display:flex}.nav-link{font-family:var(--body);color:var(--ink-500);transition:all var(--dur) var(--ease);border-bottom:1px solid #0000;padding:6px 0;font-size:14px}.nav-link:hover{color:var(--ink);opacity:1}.nav-link.active{color:var(--ink);border-bottom-color:var(--sage)}.nav-sep{display:none}.menu-btn{border:1px solid var(--rule-2);border-radius:var(--r-pill);width:40px;height:40px;color:var(--ink);background:#fff;justify-content:center;align-items:center;display:none}.mobile-nav{display:none}.section{padding-top:84px;padding-bottom:84px}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:28px;display:flex}.sec-head .h2{margin:0}.sec-head .k{margin-bottom:8px}.panel{border:1px solid var(--rule-3);border-radius:var(--r-lg);background:#fff}.panel-warm{background:linear-gradient(180deg, var(--paper-4) 0%, #ecefe8 100%);border:1px solid var(--rule-2);border-radius:var(--r-lg)}.panel-ink{background:var(--ink-900);color:var(--ink-inverse);border-radius:var(--r-lg)}.rise{animation:rise var(--dur-slow) var(--ease) both}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes komalUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.rise{animation:none}*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=900px){.nav,.nav-sep{display:none}.menu-btn{display:flex}.mobile-nav.open{border-bottom:1px solid var(--rule);background:var(--bg);flex-direction:column;padding:12px 24px 24px;display:flex}.mobile-nav a{text-align:left;font-family:var(--body);color:var(--ink);border-bottom:1px solid var(--rule);padding:13px 0;font-size:16px}.section{padding-top:56px;padding-bottom:56px}}.hero{padding-top:84px;padding-bottom:56px;position:relative;overflow:hidden}.hero:before{content:"";background:radial-gradient(ellipse at center, var(--sage-tint) 0%, #9ba88c0d 45%, transparent 70%);pointer-events:none;z-index:0;width:900px;height:460px;position:absolute;top:-160px;left:50%;transform:translate(-50%)}.hero-grid{z-index:2;grid-template-columns:1.15fr .85fr;align-items:center;gap:52px;display:grid;position:relative}.hero-badge{border-radius:var(--r-pill);background:var(--paper-3);border:1px solid var(--rule-2);font-family:var(--body);color:var(--ink);align-items:center;gap:10px;margin-bottom:24px;padding:6px 16px 6px 7px;font-size:13px;display:inline-flex}.hero-badge .dot{background:var(--sage);border-radius:50%;width:8px;height:8px;animation:2.4s infinite pulse}@keyframes pulse{0%{transform:scale(.92);box-shadow:0 0 #9ba88cb3}70%{transform:scale(1);box-shadow:0 0 0 8px #9ba88c00}to{transform:scale(.92);box-shadow:0 0 #9ba88c00}}.hero .display .grad{color:var(--ink)}.hero .lead{max-width:580px;margin:22px 0 0}.hero-cta{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.tech-marquee{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);align-items:center;gap:24px;margin-top:40px;padding:14px 0;display:flex;position:relative;overflow:hidden}.marquee-track{white-space:nowrap;align-items:center;gap:20px;animation:34s linear infinite scrollMarquee;display:flex}@keyframes scrollMarquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.tech-pill-badge{font-family:var(--body);color:var(--ink-3);border:1px solid var(--rule);border-radius:var(--r-pill);background:#fff;align-items:center;gap:7px;padding:5px 14px;font-size:12px;display:inline-flex}.tech-pill-badge .accent-dot{background:var(--sage);border-radius:50%;width:6px;height:6px}.stats-ledger{z-index:2;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:48px;display:grid;position:relative}.stat-cell{background:var(--paper);border:1px solid var(--rule);border-radius:var(--r);text-align:left;transition:border-color var(--dur) var(--ease);padding:18px 20px}.stat-cell:hover{border-color:var(--rule-2)}.stat-num{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);font-size:30px;font-weight:400;line-height:1}.stat-num span{color:var(--accent-text)}.stat-lbl{font-family:var(--body);color:var(--ink-3);margin-top:6px;font-size:13px}.filter-tabs{border:1px solid var(--rule-2);border-radius:var(--r-pill);background:#fff;flex-wrap:wrap;align-items:center;gap:3px;width:fit-content;max-width:100%;margin-bottom:32px;padding:4px;display:flex;overflow-x:auto}.tab-btn{font-family:var(--body);border-radius:var(--r-pill);color:var(--ink-500);transition:all var(--dur) var(--ease);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:8px 15px;font-size:13px}.tab-btn:hover{color:var(--ink)}.tab-btn.active{background:var(--ink-900);color:var(--paper)}.form-input,.search-input{width:100%;font-family:var(--body);color:var(--ink);border:1px solid var(--rule-2);border-radius:var(--r-pill);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);background:#fff;outline:none;padding:13px 20px;font-size:15px}.form-input::placeholder,.search-input::placeholder{color:var(--ink-4)}.form-input:focus,.search-input:focus{border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint)}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:20px;display:grid}.theme-card{border:1px solid var(--rule-3);border-radius:var(--r-lg);transition:all var(--dur-slow) var(--ease);background:#fff;flex-direction:column;text-decoration:none;display:flex;position:relative;overflow:hidden}.theme-card:hover{border-color:var(--ink-200);box-shadow:var(--sh);transform:translateY(-3px)}.theme-preview{border-bottom:1px solid var(--rule);flex-direction:column;justify-content:space-between;height:150px;padding:24px;display:flex;position:relative;overflow:hidden}.theme-badge{z-index:2;font-family:var(--body);letter-spacing:.07em;text-transform:uppercase;border-radius:var(--r-pill);background:var(--sage-deep);color:#fff;align-self:flex-start;padding:3px 10px;font-size:11px;position:relative}.theme-frameworks{z-index:2;flex-wrap:wrap;gap:6px;display:flex;position:relative}.fw-pill{font-family:var(--body);border-radius:var(--r-pill);color:var(--paper);backdrop-filter:blur(6px);background:#14140fc7;border:1px solid #ffffff24;padding:4px 10px;font-size:11px}.theme-content{flex-direction:column;flex:1;padding:19px;display:flex}.theme-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.theme-title{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);transition:color var(--dur) var(--ease);margin:0;font-size:19px;font-weight:400;line-height:1.25}.theme-price{font-family:var(--display);color:var(--ink);white-space:nowrap;font-size:17px}.theme-price span{color:var(--ink-3);font-size:12px}.theme-tagline{font-family:var(--body);color:var(--ink-2);text-wrap:pretty;flex:1;margin:9px 0 18px;font-size:14px;line-height:1.65}.tech-stack-row{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.tech-item{font-family:var(--body);color:var(--ink-3);background:var(--paper-3);border-radius:var(--r-pill);border:1px solid var(--rule);padding:4px 10px;font-size:11.5px}.theme-footer{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;margin-top:auto;padding-top:15px;display:flex}.demo-link{font-family:var(--body);color:var(--ink-3);transition:color var(--dur) var(--ease);align-items:center;gap:6px;font-size:13.5px;display:inline-flex}.demo-link:hover{color:var(--ink);opacity:1}.ai-card{border:1px solid var(--rule-3);border-radius:var(--r-lg);transition:all var(--dur-slow) var(--ease);background:#fff;flex-direction:column;padding:28px;display:flex;position:relative}.ai-card:hover{border-color:var(--ink-200);box-shadow:var(--sh);transform:translateY(-3px)}.ai-badge{font-family:var(--body);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r-pill);background:var(--sage-tint);color:var(--accent-text);align-self:flex-start;margin-bottom:16px;padding:4px 11px;font-size:11px}.ai-title{font-family:var(--display);letter-spacing:-.025em;color:var(--ink);margin:0;font-size:24px;font-weight:400;line-height:1.18}.ai-tagline{font-family:var(--body);color:var(--ink-2);margin:10px 0 16px;font-size:15px;line-height:1.7}.ai-arch-box{background:var(--ink-900);color:var(--ink-inverse);border-radius:var(--r-sm);font-family:var(--code);margin-bottom:20px;padding:14px 16px;font-size:11.5px;line-height:1.6}.ai-arch-box label{color:var(--sage);font-family:var(--body);text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px;font-size:10px;display:block}.ai-feature-list{flex-direction:column;gap:10px;margin:0 0 24px;padding:0;list-style:none;display:flex}.ai-feature-item{font-family:var(--body);color:var(--ink-2);align-items:flex-start;gap:9px;font-size:14px;line-height:1.5;display:flex}.ai-feature-item svg{width:16px;height:16px;color:var(--accent-text);flex-shrink:0;margin-top:3px}.ai-feature-item[style*=ink-inverse] svg{color:var(--sage)}.ai-footer{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;margin-top:auto;padding-top:18px;display:flex}.features-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.feature-box{border:1px solid var(--rule-3);border-radius:var(--r-lg);transition:all var(--dur) var(--ease);background:#fff;flex-direction:column;gap:14px;padding:32px;display:flex}.feature-box:hover{border-color:var(--ink-200);box-shadow:var(--sh);transform:translateY(-3px)}.feature-icon{border-radius:var(--r-sm);background:var(--sage-tint);width:46px;height:46px;color:var(--accent-text);justify-content:center;align-items:center;display:flex}.feature-title{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);font-size:20px;font-weight:400}.feature-desc{font-family:var(--body);color:var(--ink-2);text-wrap:pretty;margin:0;font-size:15px;line-height:1.7}.pillars-card{border:1px solid var(--rule-3);border-radius:var(--r-lg);border-left:3px solid var(--sage);background:#fff;margin:32px 0;padding:36px}.pillars-card .pillar-heading{font-family:var(--display);letter-spacing:-.025em;color:var(--ink);margin-bottom:24px;font-size:24px;font-weight:400}.pillars-list{flex-direction:column;gap:20px;display:flex}.pillar-row{grid-template-columns:auto 1fr;align-items:baseline;gap:18px;display:grid}.pillar-tag{font-family:var(--body);color:var(--accent-text);background:var(--sage-tint);border-radius:var(--r-pill);white-space:nowrap;align-items:center;padding:5px 13px;font-size:12px;display:inline-flex}.pillar-text{font-family:var(--body);color:var(--ink-2);font-size:16px;line-height:1.7}.faq-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.faq-item{border:1px solid var(--rule-3);border-radius:var(--r);background:#fff;padding:24px}.faq-q{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);margin:0 0 10px;font-size:18px;font-weight:400}.faq-a{font-family:var(--body);color:var(--ink-2);margin:0;font-size:14.5px;line-height:1.7}.pass-banner{background:var(--ink-900);color:var(--ink-inverse);border-radius:var(--r-lg);padding:48px;position:relative;overflow:hidden}.pass-content{z-index:2;grid-template-columns:1.2fr .8fr;align-items:center;gap:40px;display:grid;position:relative}.pass-title{font-family:var(--display);letter-spacing:-.03em;color:var(--ink-inverse);font-size:clamp(28px,3.5vw,44px);font-weight:400;line-height:1.12}.pass-desc{font-family:var(--body);color:#f3f1eabf;margin-top:16px;font-size:16px;line-height:1.7}.pass-pricing-card{border-radius:var(--r);text-align:center;background:#f3f1ea0f;border:1px solid #f3f1ea24;padding:32px}.pass-price{font-family:var(--display);letter-spacing:-.03em;color:var(--ink-inverse);font-size:44px;font-weight:400}.pass-price span{color:#f3f1ea80;font-size:16px}.footer{background:var(--paper);border-top:1px solid var(--rule);padding:56px 0 34px}.footer-in{grid-template-columns:1.4fr repeat(3,1fr);gap:40px;display:grid}.foot-col h4{font-family:var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin:0 0 16px;font-size:12px;font-weight:400}.foot-col a{font-family:var(--body);color:var(--ink-2);transition:color var(--dur) var(--ease);margin-bottom:11px;font-size:14px;display:block}.foot-col a:hover{color:var(--ink);opacity:1}.foot-bottom{border-top:1px solid var(--rule);font-family:var(--body);color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:44px;padding-top:24px;font-size:13px;display:flex}@media (width<=900px){.hero-grid{grid-template-columns:1fr}.stats-ledger{grid-template-columns:1fr 1fr}.features-grid,.faq-grid,.pass-content{grid-template-columns:1fr}.pass-banner{padding:32px}.footer-in{grid-template-columns:1fr 1fr}}@media (width<=640px){.pillar-row{grid-template-columns:1fr;gap:8px}}@media (width<=540px){.grid-cards,.stats-ledger,.footer-in{grid-template-columns:1fr}}.nav-dropdown{display:inline-block;position:relative}.dropdown-trigger{cursor:pointer;align-items:center;gap:5px;display:inline-flex}.dropdown-trigger .chevron-icon{transition:transform var(--dur) var(--ease);align-items:center;display:inline-flex}.nav-dropdown:hover .dropdown-trigger .chevron-icon,.nav-dropdown:focus-within .dropdown-trigger .chevron-icon{transform:rotate(180deg)}.dropdown-panel{width:min(620px,100vw - 48px);color:var(--ink);border:1px solid var(--rule-2);border-radius:var(--r-lg);box-shadow:var(--sh-lg);opacity:0;visibility:hidden;pointer-events:none;transition:all var(--dur-slow) var(--ease);z-index:100;background:#fff;padding:20px;position:absolute;top:100%;left:50%;transform:translate(-50%)translateY(8px)}.nav-dropdown:hover .dropdown-panel,.nav-dropdown:focus-within .dropdown-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(4px)}.dropdown-header{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;display:flex}.dropdown-title{font-family:var(--body);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);font-size:11px}.dropdown-all-link{font-family:var(--body);color:var(--accent-text);font-size:13px;text-decoration:none}.dropdown-all-link:hover{opacity:.7}.dropdown-grid{grid-template-columns:repeat(3,1fr);gap:2px 10px;max-height:320px;padding-right:4px;display:grid;overflow-y:auto}.dropdown-grid::-webkit-scrollbar{width:5px}.dropdown-grid::-webkit-scrollbar-track{background:var(--paper-3);border-radius:4px}.dropdown-grid::-webkit-scrollbar-thumb{background:var(--sage);border-radius:4px}.dropdown-cat-item{border-radius:var(--r-pill);color:var(--ink-2);font-family:var(--body);transition:all var(--dur) var(--ease);align-items:center;gap:9px;padding:8px 10px;font-size:13px;line-height:1.3;text-decoration:none;display:flex}.dropdown-cat-item .cat-dot{background:var(--rule-2);width:5px;height:5px;transition:all var(--dur) var(--ease);border-radius:50%;flex-shrink:0}.dropdown-cat-item:hover{background:var(--paper-3);color:var(--ink);opacity:1}.dropdown-cat-item:hover .cat-dot{background:var(--sage)}.dropdown-cat-item.active{background:var(--sage-tint);color:var(--ink)}.dropdown-cat-item.active .cat-dot{background:var(--sage-deep)}.dropdown-footer{border-top:1px solid var(--rule);text-align:center;margin-top:14px;padding-top:12px}.dropdown-footer-btn{color:var(--accent-text);font-family:var(--body);transition:gap var(--dur) var(--ease);align-items:center;gap:6px;font-size:13px;text-decoration:none;display:inline-flex}.dropdown-footer-btn:hover{opacity:1;gap:10px}.mobile-cat-accordion{border-bottom:1px solid var(--rule);width:100%}.mobile-cat-trigger{width:100%;font-family:var(--body);color:var(--ink);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:13px 0;font-size:16px;display:flex}.mobile-cat-trigger span[data-mobile-cat-chevron]{transition:transform var(--dur) ease;display:flex}.mobile-cat-list{flex-direction:column;gap:4px;max-height:280px;padding:4px 0 12px 12px;display:flex;overflow-y:auto}.mobile-cat-list a{color:var(--ink-2);border:none;padding:7px 0;font-size:14px;text-decoration:none}.mobile-cat-list a:hover{color:var(--ink)}
