.ctc{max-width:min(var(--game-width), calc((100svh - 7rem) / .85));margin:0 0 var(--space-6);-webkit-user-select:none;user-select:none}.ctc .ctc-top{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.ctc .ctc-scores,.ctc .ctc-buttons{gap:var(--space-2);display:flex}.ctc .ctc-score{min-width:5rem;padding:.375rem var(--space-3);border-radius:var(--radius-md);background:var(--wash);text-align:center;margin:0;line-height:1.2}.ctc .ctc-label{color:var(--muted);font-size:var(--text-xs);font-weight:650;display:block}.ctc .ctc-score strong{font-size:var(--text-md);font-variant-numeric:tabular-nums;font-weight:800}.ctc .button{color:var(--ink);cursor:pointer}.ctc{--board:linear-gradient(135deg, var(--collection-from), var(--collection-to));--dot:color-mix(in srgb, var(--on-colour) 26%, transparent);--dot-hover:color-mix(in srgb, var(--on-colour) 50%, transparent);--blocked:var(--collection-top-to);--cat:var(--game-cat);--cat-eye:var(--on-colour);--ring:var(--game-cat)}.ctc .ctc-board{border-radius:var(--radius-lg);background:var(--board);padding:3%;position:relative}.ctc svg{touch-action:manipulation;-webkit-tap-highlight-color:transparent;outline:none;width:100%;height:auto;display:block;overflow:visible}.ctc svg:focus-visible{outline:2px solid var(--ring);outline-offset:8px;border-radius:var(--radius-xs)}.ctc .ctc-dot{fill:var(--dot);cursor:pointer;transform-box:fill-box;transform-origin:50%;transition:fill var(--motion-quick) ease}.ctc .ctc-dot.is-blocked{fill:var(--blocked);cursor:default}.ctc .ctc-dot.is-new{animation:.22s ease-out ctc-pop}@media (hover:hover){.ctc .ctc-dot:not(.is-blocked):hover{fill:var(--dot-hover)}}.ctc .ctc-cursor{fill:none;stroke:var(--ring);stroke-width:.07px;opacity:0;pointer-events:none}.ctc svg:focus-visible .ctc-cursor{opacity:1}.ctc .ctc-cat{pointer-events:none;transition:transform var(--move) ease-in-out, opacity var(--move) ease}.ctc .ctc-cat.is-gone{opacity:0}.ctc .ctc-ink{fill:var(--cat)}.ctc .ctc-line{fill:none;stroke:var(--cat);stroke-width:.075px;stroke-linecap:round}.ctc .ctc-eye{fill:var(--cat-eye)}.ctc .ctc-pose{visibility:hidden}.ctc .ctc-sit{visibility:visible}.ctc .ctc-tail{transform-box:fill-box;transform-origin:0 100%;animation:1.6s ease-in-out infinite alternate ctc-sway}.ctc .ctc-sit .ctc-eye{transform-box:fill-box;transform-origin:50%;animation:4s infinite ctc-blink}.ctc .ctc-cat.is-moving .ctc-hop{animation:ctc-hop var(--move) ease-in-out}.ctc .ctc-cat.is-moving .ctc-pose{animation:var(--move) steps(1, end) both}.ctc .ctc-cat.is-moving .ctc-sit{animation-name:ctc-land}.ctc .ctc-cat.is-moving .ctc-step-a{animation-name:ctc-stride}.ctc .ctc-cat.is-moving .ctc-step-b{animation-name:ctc-stride-other}.ctc .ctc-cat.is-running{transition-duration:calc(var(--move) * 2);transition-timing-function:linear}.ctc .ctc-cat.is-running .ctc-hop{animation:ctc-bound calc(var(--move) / 2) ease-in-out 4 alternate}.ctc .ctc-cat.is-running .ctc-sit{visibility:hidden}.ctc .ctc-cat.is-running .ctc-leap{animation:ctc-stride var(--move) steps(1, end) 2}.ctc .ctc-cat.is-running .ctc-step-b{animation:ctc-stride-other var(--move) steps(1, end) 2}.ctc .ctc-head,.ctc .ctc-ears{transform-box:fill-box;transition:transform var(--move) ease}.ctc .ctc-head{transform-origin:50%}.ctc .ctc-ears{transform-origin:50% 100%}.ctc .ctc-cat.is-caught .ctc-head{transform:translateY(.06px)rotate(-20deg)}.ctc .ctc-cat.is-caught .ctc-ears{transform:scaleY(.65)}.ctc .ctc-message{z-index:3;place-content:center;justify-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface) 84%, transparent);text-align:center;animation:.3s both ctc-fade;display:grid;position:absolute;inset:0}.ctc .ctc-message[hidden]{display:none}.ctc .ctc-message p{font-size:var(--text-xl);letter-spacing:-.02em;margin:0;font-weight:800}.ctc .ctc-actions{justify-content:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ctc .ctc-help{margin:var(--space-3) 0 0;color:var(--muted);font-size:var(--text-sm);text-align:center}:root[data-game-look=old] .ctc{--board:color-mix(in srgb, var(--lane-games) 16%, var(--surface));--dot:color-mix(in srgb, var(--lane-games) 36%, var(--surface));--dot-hover:color-mix(in srgb, var(--lane-games) 62%, var(--surface));--blocked:var(--lane-games);--cat:var(--ink);--cat-eye:var(--paper);--ring:var(--focus)}@keyframes ctc-pop{0%{transform:scale(.6)}60%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes ctc-fade{0%{opacity:0}}@keyframes ctc-hop{50%{transform:translateY(-.16px) rotate(var(--tilt,0deg))}}@keyframes ctc-bound{to{transform:translateY(-.08px)}}@keyframes ctc-land{0%{visibility:hidden}to{visibility:visible}}@keyframes ctc-stride{0%,50%{visibility:visible}25%,75%,to{visibility:hidden}}@keyframes ctc-stride-other{0%,50%,to{visibility:hidden}25%,75%{visibility:visible}}@keyframes ctc-sway{0%{transform:rotate(-6deg)}to{transform:rotate(8deg)}}@keyframes ctc-blink{0%,95%,to{transform:none}97.5%{transform:scaleY(.1)}}
