.cat-page{background:linear-gradient(170deg, var(--g-bg-from) 0%, var(--g-bg-via) 35%, var(--g-bg-mid) 70%, var(--g-bg-to) 100%);color:var(--g-text);border-radius:0;min-height:calc(100vh - 64px);margin:0;padding:2.5rem clamp(1rem,4vw,3rem) 3rem;position:relative;overflow:clip}.cat-bg{pointer-events:none;z-index:0;position:absolute;inset:0}.cat-bg__grid{opacity:.5;background-image:linear-gradient(#3b82f60f 1px,#0000 1px),linear-gradient(90deg,#3b82f60f 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 80%);mask-image:radial-gradient(#000 30%,#0000 80%)}.cat-bg__yarn{position:absolute;inset:0}.cat-bg__yarn span{background:var(--g-accent);width:8px;height:8px;box-shadow:0 0 12px var(--g-accent);opacity:0;border-radius:50%;animation:14s linear infinite cat-yarn;position:absolute}.cat-bg__yarn span:first-child{animation-delay:0s;left:10%}.cat-bg__yarn span:nth-child(2){animation-delay:3s;left:28%}.cat-bg__yarn span:nth-child(3){animation-delay:6s;left:52%}.cat-bg__yarn span:nth-child(4){animation-delay:9s;left:73%}.cat-bg__yarn span:nth-child(5){animation-delay:12s;left:88%}@keyframes cat-yarn{0%{opacity:0;transform:translateY(110vh)}10%{opacity:.6}90%{opacity:.4}to{opacity:0;transform:translateY(-10vh)}}.cat-page>:not(.g-bg):not(.cat-toast):not(.cat-nav){z-index:1;position:relative}.cat-stage{text-align:center;background:linear-gradient(135deg,#3b82f61a,#0a1a358c);border:1px dashed #3b82f64d;border-radius:1rem;max-width:540px;margin:1.5rem auto 0;padding:.85rem}.cat-svg{width:100%;height:auto;max-height:200px;display:block}.cat-cat{transform:translate(40px,158px)}.cat-cat--seq{animation:cat-walk-jump calc((var(--cat-walks,3) * 1.3s) + 3.6s) linear forwards}@keyframes cat-walk-jump{0%{transform:translate(40px,158px)}6%{transform:translate(70px,156px)}12%{transform:translate(100px,158px)}18%{transform:translate(130px,156px)}24%{transform:translate(160px,158px)}30%{transform:translate(190px,156px)}36%{transform:translate(220px,158px)}42%{transform:translate(250px,156px)}48%{transform:translate(280px,158px)}54%{transform:translate(300px,156px)}60%{transform:translate(310px,158px)}70%{transform:translate(345px,100px)}78%{transform:translate(370px,123px)}85%{transform:translate(370px,123px)scaleX(1.15)}90%{transform:translate(370px,123px)scaleX(1)}to{transform:translate(370px,123px)scaleX(1)}}.cat-leg{transform-box:fill-box;transform-origin:50% 0}.cat-cat--seq .cat-leg--bl{animation:.65s ease-in-out infinite cat-leg-front}.cat-cat--seq .cat-leg--br,.cat-cat--seq .cat-leg--fl{animation:.65s ease-in-out infinite cat-leg-back}.cat-cat--seq .cat-leg--fr{animation:.65s ease-in-out infinite cat-leg-front}@keyframes cat-leg-front{0%,to{transform:rotate(0)}50%{transform:rotate(25deg)}}@keyframes cat-leg-back{0%,to{transform:rotate(0)}50%{transform:rotate(-25deg)}}.cat-tail{transform-box:fill-box;transform-origin:0 100%;animation:.7s ease-in-out infinite cat-tail}@keyframes cat-tail{0%,to{transform:rotate(-5deg)}50%{transform:rotate(15deg)}}.cat-bubble{transition:opacity .4s}.cat-bubble--pop{transform-box:fill-box;transform-origin:14px 100%;animation:.5s cubic-bezier(.34,1.56,.64,1) forwards cat-bubble-pop}@keyframes cat-bubble-pop{0%{opacity:0;transform:translate(330px,40px)scale(0)}60%{opacity:1;transform:translate(330px,40px)scale(1.2)}to{opacity:1;transform:translate(330px,40px)scale(1)}}.cat-nav{top:calc(var(--header-height) + 8px);z-index:5;backdrop-filter:blur(10px);background:#0a1a3599;border:1px solid #1e3a8a80;border-radius:.85rem;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0 0 2.5rem;padding:.85rem;display:flex;position:sticky}@media (width<=767px){.cat-nav{position:relative;top:auto}}.cat-nav__pill{color:var(--g-text-muted);background:#1e3a8a4d;border:1px solid #3b82f640;border-radius:9999px;align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.78rem;font-weight:600;text-decoration:none;transition:transform .15s,background .15s,border-color .15s;display:inline-flex}.cat-nav__pill:hover{border-color:var(--g-accent);color:#fff;background:#3b82f64d;transform:translateY(-1px)}.cat-section{scroll-margin-top:var(--g-jump-offset,6rem);margin:0 0 3.5rem}.cat-section__head{border-left:4px solid var(--g-accent);background:linear-gradient(90deg,#1e3a8a59,#0a1a3573 70%);border-radius:.6rem;align-items:center;gap:1.25rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem;display:flex}.cat-section__ico{color:var(--g-accent-mid);filter:drop-shadow(0 0 8px #3b82f680);flex-shrink:0;animation:4s ease-in-out infinite cat-ico-float;display:inline-flex}.cat-section__ico svg{width:2.2rem;height:2.2rem;display:block}@keyframes cat-ico-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)rotate(-3deg)}}.cat-section__head h2{color:#fff;margin:0;font-size:1.4rem;font-weight:800}.cat-section__head p{color:var(--g-text-muted);margin:.3rem 0 0;font-size:.95rem;line-height:1.55}.cat-tools{grid-template-columns:1fr;gap:.75rem;margin:1.25rem 0;display:grid}@media (width>=640px){.cat-tools{grid-template-columns:1fr 1fr}}@media (width>=1024px){.cat-tools{grid-template-columns:repeat(3,1fr)}}@media (width>=1400px){.cat-tools{grid-template-columns:repeat(4,1fr)}}.cat-tool{border:1px solid #1e3a8a80;border-left:3px solid var(--assured-phase-alert-deep);background:#0a1a358c;border-radius:.6rem;padding:1rem 1.15rem;transition:transform .18s,border-color .18s,box-shadow .18s;position:relative;overflow:hidden}.cat-tool:before{content:"";opacity:0;pointer-events:none;background:radial-gradient(circle at 0 0,#3b82f61a,#0000 60%);transition:opacity .2s;position:absolute;inset:0}.cat-tool:hover{border-left-color:var(--g-accent);border-color:#3b82f680;transform:translateY(-2px);box-shadow:0 8px 22px -10px #3b82f659}.cat-tool:hover:before{opacity:1}.cat-tool :is(h3,h4){color:var(--g-accent-mid);margin:0 0 .35rem;font-size:.96rem;font-weight:700;line-height:1.5}.cat-tool p{color:var(--g-text-muted);margin:0;font-size:.85rem;line-height:1.5}.cat-tool p em{color:var(--g-accent-mid);font-style:italic}.cat-toast{background:linear-gradient(135deg, var(--g-accent), #1e3a8a);border:1px solid var(--g-accent-mid);color:#fff;font-family:var(--font-mono);letter-spacing:.04em;z-index:1000;border-radius:9999px;padding:.85rem 1.5rem;font-size:.88rem;font-weight:600;animation:.35s ease-out cat-toast-in;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 14px 36px -10px #3b82f699}.cat-toast.is-out{animation:.4s ease-in forwards cat-toast-out}@keyframes cat-toast-in{0%{opacity:0;transform:translate(-50%)translateY(40px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes cat-toast-out{to{opacity:0;transform:translate(-50%)translateY(40px)}}.cat-foot{text-align:center;background:#0a1a358c;border:1px solid #1e3a8a80;border-radius:.75rem;margin:2rem 0 0;padding:1.25rem 1.5rem}.cat-foot p{color:var(--g-text-muted);margin:0;font-size:.92rem;line-height:1.55}.cat-foot a{color:var(--g-accent-mid);text-decoration:underline}.cat-anims-paused :not(.cat-toast),.cat-anims-paused :before,.cat-anims-paused :after{animation-play-state:paused!important}.cat-anim-toggle{color:var(--g-text);cursor:pointer;background:#1e3a8a80;border:1px solid #60a5fa80;border-radius:9999px;align-items:center;gap:.5rem;padding:.7rem 1.3rem;font-family:inherit;font-size:.95rem;font-weight:700;transition:border-color .18s;display:inline-flex}.cat-anim-toggle:hover{border-color:var(--g-accent-mid)}.cat-anim-toggle:focus-visible{outline:2px solid var(--g-accent-mid);outline-offset:2px}.cat-anim-toggle__icon{display:inline-flex}.cat-anim-toggle__icon svg{width:1.1rem;height:1.1rem;display:block}.cat-anim-toggle__icon--play,.cat-anims-paused .cat-anim-toggle__icon--pause{display:none}.cat-anims-paused .cat-anim-toggle__icon--play{display:inline-flex}.cat-section__phases{color:var(--assured-text-dim);margin:.4rem 0 0;font-size:.78rem}.cat-section__phases a{color:var(--g-accent-light);border-bottom:1px solid #60a5fa59;text-decoration:none}.cat-section__phases a:hover{color:var(--g-text);border-bottom-color:var(--g-accent-mid)}.cat-search{min-width:13rem;color:var(--g-text);background:#0a1a35b3;border:1px solid #60a5fa66;border-radius:9999px;padding:.6rem 1rem;font-family:inherit;font-size:1rem}.cat-search:focus{outline-offset:2px;border-color:var(--g-accent-mid);outline:2px solid #0000;box-shadow:0 0 0 4px #60a5fa2e}@media (pointer:coarse){.cat-nav__pill{min-height:2.75rem}}.cat-search::placeholder{color:var(--assured-text-dim)}.cat-search-count{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cat-empty{text-align:center;max-width:42rem;color:var(--g-accent-light);background:#0a1a358c;border:1px dashed #60a5fa66;border-radius:.75rem;margin:1.5rem auto;padding:1.5rem}.cat-tool p.cat-tool__use{margin-top:.45rem}.cat-tool__use strong{color:var(--g-accent-light);font-weight:700}.cat-tool p.cat-tool__meta{color:var(--assured-text-dim);border-top:1px solid #1e3a8a73;margin-top:.55rem;padding-top:.45rem;font-size:.75rem}.cat-tool__meta a{color:var(--g-accent-light);border-bottom:1px solid #60a5fa59;text-decoration:none}.cat-tool__meta a:hover,.cat-tool__meta a:focus-visible{color:var(--g-text);border-bottom-color:var(--g-accent-mid)}.cat-tool .g-cite{margin-top:.4rem;margin-right:.5rem}.cat-callout{border:1px solid #f59e0b73;border-left:3px solid var(--assured-warn);background:#78350f38;border-radius:.6rem;margin:1rem 0 0;padding:.85rem 1.1rem}.cat-callout p{color:#fde68a;margin:0;font-size:.9rem;line-height:1.55}.cat-callout strong{color:#fbbf24}.cat-map-wrap{-webkit-overflow-scrolling:touch;margin:1.25rem 0 0;overflow-x:auto}.cat-map{border-collapse:collapse;width:100%;min-width:40rem;color:var(--g-text-muted);font-size:.85rem;line-height:1.45}.cat-map caption{caption-side:top;text-align:left;color:var(--assured-text-dim);padding:0 0 .5rem;font-size:.78rem}.cat-map th,.cat-map td{text-align:left;vertical-align:top;border-bottom:1px solid #1e3a8a80;padding:.55rem .7rem}.cat-map thead th{color:var(--g-accent-light);border-bottom:2px solid #3b82f680;font-weight:700}.cat-map tbody th{color:var(--g-text);font-weight:600}.cat-map a{color:var(--g-accent-light);border-bottom:1px solid #60a5fa59;text-decoration:none}.cat-map a:hover,.cat-map a:focus-visible{color:var(--g-text);border-bottom-color:var(--g-accent-mid)}.cat-map__note{color:var(--g-text-muted);margin:.9rem 0 0;font-size:.88rem;line-height:1.55}.cat-map__note strong{color:var(--g-accent-light)}.cat-tool{scroll-margin-top:var(--g-jump-offset,90px)}.cat-tool:target{border-color:var(--g-accent);box-shadow:0 0 0 2px #3b82f666}@media (prefers-reduced-motion:reduce){.cat-cat,.cat-tail,.cat-leg,.cat-bubble,.cat-section__ico,.cat-bg__yarn span,.cat-toast{transition:none!important;animation:none!important}}
