:root{--motion-pop:cubic-bezier(.2,1.45,.35,1);--motion-swoop:cubic-bezier(.18,.72,.18,1)}.qcard,.j-card,.reco-card,.mini-q,.cat-bento .ct{backface-visibility:hidden;transform-origin:50% 100%;will-change:transform}.qcard .cover .glyph,.j-card .cover .glyph,.reco-card .cover .glyph,.mini-q .cover .glyph,.mini-q .mq-cover .glyph,.cat-bento .ct .ct-vis,.cat-bento .ct .ct-glyph .glyph{transition:transform .46s var(--motion-pop),opacity .24s ease,filter .24s ease}.qcard:is(:hover,:focus-visible),.j-card:is(:hover,:focus-visible),.reco-card:is(:hover,:focus-visible){border-color:color-mix(in oklch,var(--accent) 42%,var(--rule-2));box-shadow:0 18px 44px -28px color-mix(in oklch,var(--ink) 42%,transparent),var(--shadow-md);transform:translateY(-6px) rotate(-.25deg)}.grid>.qcard:nth-child(even):is(:hover,:focus-visible),.journal-grid>.j-card:nth-child(even):is(:hover,:focus-visible),.grid>.reco-card:nth-child(even):is(:hover,:focus-visible){transform:translateY(-6px) rotate(.25deg)}.qcard:is(:hover,:focus-visible) .cover .glyph,.j-card:is(:hover,:focus-visible) .cover .glyph,.reco-card:is(:hover,:focus-visible) .cover .glyph{filter:saturate(1.08);transform:translateY(-3px) scale(1.065) rotate(-2deg)}.qcard .qfoot .arrow,.link-arrow,.btn-gradient .arrow,.next-btn .arrow{transition:transform .22s var(--motion-swoop)}.qcard:is(:hover,:focus-visible) .qfoot .arrow,.link-arrow:is(:hover,:focus-visible),.btn-gradient:is(:hover,:focus-visible) .arrow,.next-btn:is(:hover,:focus-visible) .arrow{transform:translateX(4px)}.cat-bento .ct::after{content:"";position:absolute;inset:12px;border:1px solid color-mix(in oklch,var(--accent) 28%,transparent);border-radius:calc(var(--r-xl) - 8px);opacity:0;pointer-events:none;transform:scale(.96);transition:opacity .28s ease,transform .36s var(--motion-swoop)}.cat-bento .ct:is(:hover,:focus-visible){border-color:color-mix(in oklch,var(--accent) 36%,var(--rule-2));box-shadow:0 20px 48px -30px color-mix(in oklch,var(--ink) 45%,transparent),var(--shadow-lg);transform:translateY(-7px) rotate(.25deg)}.cat-bento .ct:is(:hover,:focus-visible)::after{opacity:.85;transform:scale(1)}.cat-bento .ct:is(:hover,:focus-visible) .ct-vis{transform:scale(1.06)}.cat-bento .ct:is(:hover,:focus-visible) .ct-glyph .glyph{transform:scale(1.07) rotate(-3deg)}.mini-q:is(:hover,:focus-visible){box-shadow:var(--shadow-sm);transform:translateY(-3px)}.mini-q:is(:hover,:focus-visible) .mq-cover .glyph{transform:scale(1.08) rotate(-2deg)}.nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:linear-gradient(90deg,var(--accent),color-mix(in oklch,var(--accent) 48%,var(--xp,#C8902E)));border-radius:999px;opacity:0;transform:scaleX(0);transform-origin:left center;transition:opacity .18s ease,transform .24s var(--motion-swoop)}.site-header .nav-links a::after{bottom:-17px}.nav-links a:is(:hover,:focus-visible)::after,.nav-links a.is-active::after{opacity:1;transform:scaleX(1)}.mobile-menu a{transition:color .16s ease,background-color .16s ease,transform .16s var(--motion-swoop)}.mobile-menu a:is(:hover,:focus-visible){transform:translateX(3px)}.tyc-search-overlay{opacity:0;transition:opacity .22s ease}.tyc-search-overlay.is-open{opacity:1}.tyc-search-item,.search-result{transition:background-color .14s ease,border-color .14s ease,transform .14s var(--motion-swoop)}.tyc-search-item:is(:hover,.is-active),.search-result:is(:hover,.is-active){transform:translateX(3px)}.demo-frame{transform:translateZ(0)}.demo-opt{overflow:hidden;transform-origin:left center;transition:background .25s,border-color .25s,color .25s,box-shadow .2s ease,transform .2s var(--motion-swoop)}.demo-opt::after{content:"";position:absolute;left:46px;top:50%;width:18px;height:18px;border:2px solid var(--accent);border-radius:999px;opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.25)}.demo-opt.hover,.demo-opt.selected{box-shadow:0 8px 24px -18px color-mix(in oklch,var(--ink) 40%,transparent);transform:translateX(3px)}.demo-opt.selected::after{animation:demo-ripple .34s ease-out forwards}.demo-opt.correct,.demo-opt.wrong{animation:demo-answer-pop .34s var(--motion-pop)}.demo-result.show .ring{animation:demo-result-pop .58s var(--motion-pop) both}.timer-ring.warn:not(.danger){animation:timer-warn-pulse 1s ease-in-out infinite}.timer-ring.danger .tval{color:var(--danger)}.combo-banner.show .bolt{animation:combo-bolt .34s var(--motion-pop) 2}.option.correct .mark,.option.wrong .mark{animation:answer-mark-pop .34s var(--motion-pop) both}.res-hero .scoreline .pts,.result .scoreline .pts{text-shadow:0 10px 28px color-mix(in oklch,var(--xp) 18%,transparent)}.res-accuracy .track .af,.result .accuracy-track .af{overflow:hidden;position:relative}.res-accuracy .track .af::after,.result .accuracy-track .af::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,color-mix(in oklch,white 48%,transparent),transparent);transform:translateX(-105%);animation:accuracy-sheen 1.2s ease .28s both}.res-hero .stars .star.lit,.result .stars .star.lit{transform-origin:50% 60%}@keyframes demo-ripple{0%{opacity:.7;transform:translate(-50%,-50%) scale(.25)}100%{opacity:0;transform:translate(-50%,-50%) scale(2.6)}}@keyframes demo-answer-pop{0%{transform:translateX(3px) scale(1)}45%{transform:translateX(3px) scale(1.018)}100%{transform:translateX(3px) scale(1)}}@keyframes demo-result-pop{0%{opacity:0;transform:scale(.88) rotate(-4deg)}100%{opacity:1;transform:none}}@keyframes timer-warn-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}@keyframes combo-bolt{0%{transform:scale(.9) rotate(-12deg)}70%{transform:scale(1.2) rotate(8deg)}100%{transform:none}}@keyframes answer-mark-pop{0%{transform:scale(.4) rotate(-18deg)}75%{transform:scale(1.14) rotate(5deg)}100%{transform:scale(1)}}@keyframes accuracy-sheen{0%{transform:translateX(-105%)}100%{transform:translateX(105%)}}@media (prefers-reduced-motion:reduce){.qcard,.j-card,.reco-card,.mini-q,.cat-bento .ct,.mobile-menu a,.tyc-search-item,.search-result,.demo-opt,.demo-result.show .ring,.timer-ring.warn:not(.danger),.combo-banner.show .bolt,.option.correct .mark,.option.wrong .mark{animation:none !important;transform:none !important;transition:none !important}.qcard .cover .glyph,.j-card .cover .glyph,.reco-card .cover .glyph,.mini-q .cover .glyph,.mini-q .mq-cover .glyph,.cat-bento .ct .ct-vis,.cat-bento .ct .ct-glyph .glyph,.res-accuracy .track .af::after,.result .accuracy-track .af::after{animation:none !important;transform:none !important;transition:none !important}.tyc-search-overlay{opacity:1;transition:none !important}}