.column.lab{max-width:1000px}.column.lab>.work-head,.column.lab>.work-intro,.column.lab>.work-back,.column.lab>.work-foot{max-width:560px}.column.lab>.work-intro{margin-bottom:.2rem}.column.lab>.lab-guide{max-width:560px;margin-bottom:2.4rem}.lab-guide ul{margin:0;padding:0;list-style:none}.lab-guide li{color:var(--muted);text-wrap:pretty;padding:.35rem 0 .35rem 1.1rem;position:relative}.lab-guide li:before{content:"";opacity:.6;background:currentColor;border-radius:50%;width:4px;height:4px;position:absolute;top:.95rem;left:.2rem}.lab-guide strong{color:var(--ink);font-weight:500}.column.lab>.work-intro code,.lab-guide code{font-family:var(--font-pixel);color:var(--ink);background:var(--hairline);border-radius:4px;padding:.05em .35em;font-size:.75rem}.lab-tag{margin-left:0}.lab-stage{grid-template-columns:minmax(0,1fr) 248px;align-items:start;gap:1.25rem;display:grid}.lab-frame{aspect-ratio:16/10;isolation:isolate;touch-action:none;background:#0b0b0d;border-radius:14px;position:sticky;top:1rem;overflow:hidden}.lab-canvas{cursor:crosshair;width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;display:block}.lab-static{background:linear-gradient(#2e1a44 0%,#f0703c 58% 60%,#3a2242 60%,#1c1024 100%);display:none;position:absolute;inset:0}.lab-frame.is-static .lab-canvas{display:none}.lab-frame.is-static .lab-static{display:block}.lab-badge{font-family:var(--font-pixel);color:#f3efe9;-webkit-backdrop-filter:blur(6px);background:#08080a8c;border-radius:999px;align-items:center;gap:.45rem;margin:0;padding:.3rem .65rem .32rem;font-size:.75rem;display:inline-flex;position:absolute;top:.8rem;left:.8rem}.lab-sound{color:#f3efe9;cursor:pointer;-webkit-backdrop-filter:blur(6px);width:2rem;height:2rem;transition:background .24s var(--ease-exit);background:#08080a8c;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:.8rem;right:.8rem}.lab-sound:hover{background:#08080abf}.lab-sound .wave{display:none}.lab-sound[aria-pressed=true] .wave{display:block}.lab-sound[aria-pressed=true] .mute{display:none}.lab-badge .dot{width:.45em;height:.45em;transition:background .3s var(--ease-exit);background:#9a9a9a;border-radius:50%}.lab-badge[data-mode=live] .dot{background:#4ade80}.lab-badge[data-mode=thinking] .dot{background:#ffcd6c;animation:.9s ease-in-out infinite labpulse}.lab-badge[data-mode=manual] .dot{background:#60a5fa}.lab-badge[data-mode=replay] .dot{background:#f59e0b}@keyframes labpulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}.lab-meter{color:#f3efe9;font-family:var(--font-pixel);-webkit-backdrop-filter:blur(6px);background:#08080a8c;border-radius:10px;gap:1rem;margin:0;padding:.55rem .8rem;font-size:.75rem;display:flex;position:absolute;bottom:.8rem;right:.8rem}.lab-meter div{flex-direction:column;gap:.1rem;min-width:3.4rem;display:flex}.lab-meter dt{letter-spacing:.06em;text-transform:uppercase;opacity:.6;font-size:.625rem}.lab-meter dd{font-variant-numeric:tabular-nums;margin:0}.lab-decisions{border:1px solid var(--hairline);border-radius:14px;flex-direction:column;gap:1.1rem;padding:1rem 1.1rem;display:flex}.lab-question h3{font-family:var(--font-pixel);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:baseline;margin:0 0 .5rem;font-size:.75rem;font-weight:400;display:flex}.lab-answer{color:var(--ink);text-transform:none;letter-spacing:0;font-variant-numeric:tabular-nums}.lab-bar{--p:0;--swatch:var(--ink);color:var(--muted);transition:color .3s var(--ease-exit);grid-template-columns:5.2rem 1fr 2.4rem;align-items:center;gap:.5rem;padding:.16rem 0;font-size:.75rem;display:grid}.lab-bar.is-leading{color:var(--ink)}.lab-bar .track{background:var(--hairline);border-radius:999px;height:6px;position:relative;overflow:hidden}.lab-bar .fill{transform-origin:0;transform:scaleX(var(--p));background:var(--swatch);border-radius:inherit;transition:transform .45s var(--ease-exit);position:absolute;inset:0}.lab-bar .value{text-align:right;font-family:var(--font-pixel);font-variant-numeric:tabular-nums}.lab-bar.is-threshold{--swatch:var(--learning)}.lab-bar .mark{background:var(--ink);opacity:.5;width:1px;position:absolute;top:0;bottom:0;left:70%}.lab-latency{border-top:1px solid var(--hairline);font-family:var(--font-pixel);color:var(--muted);margin:0;padding-top:.6rem;font-size:.75rem}.lab-latency span{color:var(--ink);font-variant-numeric:tabular-nums}.lab-source{margin-top:1.5rem}.lab-source-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 1rem;margin-bottom:.6rem;display:flex}.lab-source-head label{color:var(--muted)}.lab-presets{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.lab-chip{appearance:none;font:inherit;color:var(--ink);border:1px solid var(--hairline);cursor:pointer;transition:background .24s var(--ease-exit), border-color .24s var(--ease-exit), transform .24s var(--ease-exit);background:0 0;border-radius:999px;padding:.3rem .7rem .34rem;font-size:.8125rem;font-weight:500}.lab-chip:hover{background:var(--hairline);border-color:#0000}.lab-chip:active{transform:scale(.97)}.lab-chip.is-quiet{color:var(--muted)}.lab-text{width:100%;font:inherit;color:var(--ink);border:1px solid var(--hairline);resize:vertical;transition:border-color .24s var(--ease-exit);background:0 0;border-radius:12px;padding:.85rem 1rem;line-height:1.45;display:block}.lab-text:focus{border-color:color-mix(in srgb, var(--ink) 32%, transparent);outline:none}.lab-text.is-typing{caret-color:#0000}.lab-note{color:var(--learning);margin:.6rem 0 0;font-size:.8125rem}.lab-knobs{border-top:1px solid var(--hairline);transition:color .3s var(--ease-exit);flex-direction:column;gap:.3rem;padding-top:.9rem;display:flex}.lab-knobs h3{font-family:var(--font-pixel);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:baseline;margin:0 0 .45rem;font-size:.75rem;font-weight:400;display:flex}.lab-knobs.is-manual h3{color:var(--accent)}.lab-release{appearance:none;font:inherit;letter-spacing:0;text-transform:none;color:var(--ink);border:0;border-bottom:1px solid var(--hairline);cursor:pointer;background:0 0;padding:0}.lab-knob{--swatch:var(--ink);color:var(--muted);grid-template-columns:5.2rem 1fr 2.4rem;align-items:center;gap:.5rem;font-size:.75rem;display:grid}.lab-knob .value{text-align:right;font-family:var(--font-pixel);font-variant-numeric:tabular-nums}.lab-knob input[type=range]{--fill:25%;-webkit-appearance:none;appearance:none;cursor:grab;background:0 0;width:100%;height:1.3rem;margin:0}.lab-knob input[type=range]:active{cursor:grabbing}.lab-knob input[type=range]:focus-visible{outline:none}.lab-knob input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--swatch) 0 var(--fill), var(--hairline) var(--fill) 100%);border-radius:999px;height:6px}.lab-knob input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--white);border:2px solid var(--swatch);width:12px;height:12px;box-shadow:0 0 0 0 color-mix(in srgb, var(--swatch) 30%, transparent);transition:transform .2s var(--ease-exit), box-shadow .2s var(--ease-exit);border-radius:3px;margin-top:-3px}.lab-knob input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.15)}.lab-knob input[type=range]:active::-webkit-slider-thumb,.lab-knob input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px color-mix(in srgb, var(--swatch) 30%, transparent)}.lab-knob input[type=range]::-moz-range-track{background:var(--hairline);border-radius:999px;height:6px}.lab-knob input[type=range]::-moz-range-progress{background:var(--swatch);border-radius:999px;height:6px}.lab-knob input[type=range]::-moz-range-thumb{background:var(--white);border:2px solid var(--swatch);border-radius:3px;width:8px;height:8px}.lab-knob-actions{flex-wrap:wrap;gap:.4rem;margin-top:.4rem;display:flex}.lab-hint{color:var(--muted);margin:.6rem 0 0;font-size:.75rem;line-height:1.35}.lab-questions{max-width:640px;margin-top:2rem}.lab-questions summary{cursor:pointer;color:var(--muted);transition:color .24s var(--ease-exit);list-style:none}.lab-questions summary:hover{color:var(--ink)}.lab-questions summary::-webkit-details-marker{display:none}.lab-questions summary:before{content:"→ ";transition:transform .24s var(--ease-exit);display:inline-block}.lab-questions[open] summary:before{transform:rotate(90deg)}.lab-code{margin:.9rem 0 0}.lab-code-head{border:1px solid var(--hairline);background:color-mix(in srgb, var(--ink) 3%, transparent);font-family:var(--font-pixel);color:var(--muted);border-bottom:0;border-radius:8px 8px 0 0;align-items:center;gap:.75rem;padding:.5rem .85rem;font-size:.75rem;display:flex}.lab-code-path{color:var(--ink);align-items:center;gap:.4rem;display:inline-flex}.lab-code-path .middot{opacity:.5;background:currentColor;border-radius:50%;width:3px;height:3px}.lab-code-badge{color:var(--learning);background:color-mix(in srgb, var(--learning) 12%, transparent);border-radius:10px;padding:.1em .55em .15em}.lab-code-copy{appearance:none;font:inherit;color:var(--muted);border:1px solid var(--hairline);cursor:pointer;transition:color .24s var(--ease-exit), border-color .24s var(--ease-exit);background:0 0;border-radius:999px;margin-left:auto;padding:.15em .6em .2em}.lab-code-copy:hover{color:var(--ink);border-color:color-mix(in srgb, var(--ink) 30%, transparent)}.lab-questions .lab-code pre{border:1px solid var(--hairline);font-family:var(--font-pixel);tab-size:2;border-radius:0 0 8px 8px;margin:0;padding:.9rem 1rem;font-size:.75rem;line-height:1.6;overflow-x:auto;background:var(--white)!important}.lab-code pre,.lab-code pre span{color:var(--shiki-light)}html.dark .lab-code pre,html.dark .lab-code pre span{color:var(--shiki-dark)}.lab-code-note{color:var(--muted);text-wrap:pretty;margin:.8rem 0 0;font-size:.8125rem}.lab-code-note code{font-family:var(--font-pixel);color:var(--ink);background:var(--hairline);border-radius:4px;padding:.05em .35em;font-size:.75rem}.lab-query{--code-kw:#ab5959;--code-fn:#59873a;--code-str:#b56959;--code-pn:#999;margin-bottom:1.25rem}html.dark .lab-query{--code-kw:#cb7676;--code-fn:#80a665;--code-str:#c98a7d;--code-pn:#666}.lab-line{font-family:var(--font-pixel);color:var(--ink);border:1px solid var(--hairline);transition:border-color .24s var(--ease-exit);border-radius:12px;flex-wrap:wrap;align-items:center;gap:.35rem 0;padding:.8rem 1rem;font-size:.875rem;line-height:1.5;display:flex}.lab-line:focus-within{border-color:color-mix(in srgb, var(--ink) 32%, transparent)}.lab-line .kw{color:var(--code-kw);margin-right:.5em}.lab-line .fn{color:var(--code-fn)}.lab-line .pn,.lab-line .opt{color:var(--code-pn)}.lab-line .opt[hidden]{display:none}.lab-grow{min-width:10ch;max-width:100%;display:inline-grid;position:relative}.lab-grow:after{content:attr(data-grow) " ";visibility:hidden;white-space:pre;font:inherit;grid-area:1/1}.lab-predicate{width:100%;min-width:0;font:inherit;color:var(--code-str);background:0 0;border:0;outline:none;grid-area:1/1;margin:0;padding:0}.lab-predicate::placeholder{color:color-mix(in srgb, var(--code-str) 45%, transparent)}.lab-run{appearance:none;font:inherit;color:var(--muted);border:1px solid var(--hairline);cursor:pointer;transition:color .24s var(--ease-exit), border-color .24s var(--ease-exit);background:0 0;border-radius:999px;margin-left:auto;padding:.2rem .6rem .24rem;font-size:.75rem}.lab-run:hover{color:var(--ink);border-color:color-mix(in srgb, var(--ink) 30%, transparent)}.lab-query-foot{flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-top:.7rem;display:flex}.lab-query-foot .lab-code-copy{margin-left:auto}.lab-modes{gap:.25rem;display:inline-flex}.lab-modes .lab-chip{font-family:var(--font-pixel);font-size:.75rem;font-weight:400}.lab-chip[aria-pressed=true]{color:var(--white);background:var(--ink);border-color:var(--ink)}.lab-chip[aria-pressed=true]:hover{background:var(--ink)}.lab-stage-filter{grid-template-columns:minmax(0,1fr) 232px}.lab-decisions.is-sticky{position:sticky;top:1rem}.lab-badge.is-inline{color:var(--ink);background:var(--hairline);-webkit-backdrop-filter:none;align-self:flex-start;position:static}.lab-stats{font-family:var(--font-pixel);grid-template-columns:1fr 1fr;gap:.55rem .75rem;margin:0;font-size:.75rem;display:grid}.lab-stats div{flex-direction:column;gap:.1rem;display:flex}.lab-stats dt{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.625rem}.lab-stats dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:0}.lab-knobs[hidden]{display:none}.lab-table{border:1px solid var(--hairline);border-radius:14px;overflow:hidden}.lab-row-head,.lab-row-main{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr) 7.25rem;align-items:center;gap:.75rem;padding:.55rem .9rem;display:grid}.lab-row-head{font-family:var(--font-pixel);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--hairline);font-size:.625rem}.lab-row-head span:last-child{text-align:right}.lab-row{--p:0;--swatch:var(--muted);border-bottom:1px solid var(--hairline);transition:opacity .35s var(--ease-exit), background .3s var(--ease-exit)}.lab-row:last-child{border-bottom:0}.lab-row-main{width:100%;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;margin:0}.lab-row-main:hover{background:color-mix(in srgb, var(--ink) 3%, transparent)}.lab-row-main .name,.lab-row-main .org{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.lab-row-main .name{font-size:.8125rem}.lab-row-main .org{color:var(--muted);font-size:.6875rem}.lab-row .p{grid-template-columns:1fr 2.6rem;align-items:center;gap:.5rem;display:grid}.lab-row .track{background:var(--hairline);border-radius:999px;height:6px;position:relative;overflow:hidden}.lab-row .fill{transform-origin:0;transform:scaleX(var(--p));background:var(--swatch);border-radius:inherit;transition:transform .5s var(--ease-exit), background .3s var(--ease-exit);position:absolute;inset:0}.lab-row .mark{top:0;bottom:0;left:var(--lab-threshold,50%);background:var(--ink);opacity:.35;width:1px;position:absolute}.lab-table[data-mode=rank] .lab-row .mark{display:none}.lab-row .value{font-family:var(--font-pixel);text-align:right;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem}.lab-row.is-pending .track:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--ink) 14%, transparent), transparent);animation:1.4s ease-in-out infinite labshimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes labshimmer{to{transform:translate(100%)}}.lab-row.is-in{--swatch:#22a06b}.lab-row.is-in .value{color:var(--ink)}.lab-table[data-mode=rank] .lab-row.is-in{--swatch:color-mix(in srgb, var(--accent) 70%, var(--ink))}.lab-table[data-mode=rank] .lab-row.is-top{--swatch:var(--accent)}.lab-row.is-out{opacity:.42}.lab-row.is-open{background:color-mix(in srgb, var(--ink) 3%, transparent)}.lab-saw{font-family:var(--font-pixel);color:var(--muted);text-wrap:pretty;margin:0;padding:0 .9rem .75rem;font-size:.6875rem;line-height:1.55}.lab-saw[hidden]{display:none}.lab-questions+.lab-questions{margin-top:1rem}.lab-questions .lab-code+.lab-code{margin-top:.8rem}.lab-questions .lab-code:not(:has(.lab-code-head)) pre{border-radius:8px}.lab-event{margin-bottom:1.25rem}.lab-event-row{gap:.5rem;display:flex}.lab-event-input{min-width:0;font:inherit;color:var(--ink);border:1px solid var(--hairline);transition:border-color .24s var(--ease-exit);background:0 0;border-radius:12px;flex:1;padding:.75rem 1rem}.lab-event-input:focus{border-color:color-mix(in srgb, var(--ink) 32%, transparent);outline:none}.lab-chip.is-primary{color:var(--white);background:var(--ink);border-color:var(--ink);white-space:nowrap}.lab-chip.is-primary:hover{background:color-mix(in srgb, var(--ink) 85%, var(--white))}.lab-event .lab-presets{margin-top:.7rem}.lab-frame-crowd{cursor:crosshair;background:#c9bda4}.lab-frame-crowd .lab-canvas{cursor:crosshair}.lab-frame.is-static .lab-frame-hint,.lab-frame.is-static .lab-badge,.lab-frame.is-static .lab-meter{display:none}.lab-badge-effect{text-transform:uppercase;letter-spacing:.06em;font-size:.625rem;top:auto;bottom:.8rem;left:.8rem}.lab-badge-effect[hidden]{display:none}.lab-frame-hint{font-family:var(--font-pixel);color:#f3efe9;pointer-events:none;transition:opacity .3s var(--ease-exit);background:#08080a73;border-radius:999px;margin:0;padding:.25rem .6rem;font-size:.6875rem;position:absolute;top:.85rem;left:50%;transform:translate(-50%)}.lab-frame-hint[hidden]{display:none}.lab-person-bio{color:var(--ink);text-wrap:pretty;margin:0;font-size:.8125rem;line-height:1.45}.lab-person[hidden],.lab-hint[hidden]{display:none}.column.lab>.work-foot{margin-top:3rem}@media (width<=760px){.lab-stage{grid-template-columns:1fr}.lab-decisions.is-sticky{position:static}.lab-row-head,.lab-row-main{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 5.6rem;gap:.5rem;padding:.5rem .7rem}.lab-row-head .pulse,.lab-row-main .pulse{display:none}.lab-line{font-size:.8125rem}.lab-frame{position:relative;top:auto}.lab-meter{gap:.7rem;padding:.45rem .6rem}.lab-meter div{min-width:2.6rem}}@media (prefers-reduced-motion:reduce){.lab-badge[data-mode=thinking] .dot,.lab-row.is-pending .track:after{animation:none}.lab-row .fill,.lab-bar .fill{transition:none}}.lab-frame-truco{--px:3;--card-w:calc(26px * var(--px));--card-h:calc(36px * var(--px));--felt:#1f5d3a;--felt-dark:#17472c;--wood:#241a12;--paper:#fff8e6;--gold:#ffe58f;aspect-ratio:4/3;background-color:var(--felt);background-image:radial-gradient(ellipse at 50% 42%, #ffffff1f, transparent 62%), repeating-conic-gradient(#00000017 0 25%, transparent 0 50%);background-size:auto, calc(2px * var(--px)) calc(2px * var(--px));box-shadow:inset 0 0 0 calc(2px * var(--px)) var(--felt-dark);cursor:default;touch-action:auto}.truco-table{grid-template-rows:auto minmax(0,1fr) auto auto;gap:.35rem;padding:2.9rem 1rem .85rem;display:grid;position:absolute;inset:0}.truco-side{justify-content:center;display:flex;position:relative}.truco-hand{min-height:var(--card-h);justify-content:center;align-items:flex-end;gap:.4rem;display:flex}.truco-hand[data-hand=jev]{align-items:flex-start;gap:0}.truco-hand[data-hand=jev] .truco-card{margin:0 calc(var(--card-w) * -.12)}.truco-tricks{justify-content:center;align-items:center;gap:1.4rem;min-height:0;display:flex}.truco-trick{width:var(--card-w);transition:opacity .3s var(--ease-exit);flex-direction:column;display:flex;position:relative}.truco-trick .slot{width:var(--card-w);height:var(--card-h);position:relative}.truco-trick .slot[data-slot=you]{margin-top:calc(var(--card-h) * -.42)}.truco-trick .slot:before{content:"";border-radius:calc(2px * var(--px));transition:opacity .3s var(--ease-exit);border:2px solid #ffffff1a;position:absolute;inset:0}.truco-trick .slot:has(.truco-card):before{opacity:0}.truco-trick .slot[data-slot=you] .truco-card{z-index:2}.truco-trick[data-winner=you] .slot[data-slot=jev] .truco-card canvas,.truco-trick[data-winner=jev] .slot[data-slot=you] .truco-card canvas{filter:brightness(.62)saturate(.7)}.truco-trick[data-winner=you] .slot[data-slot=you] .truco-card canvas,.truco-trick[data-winner=jev] .slot[data-slot=jev] .truco-card canvas{box-shadow:0 0 0 calc(1px * var(--px)) var(--gold), 0 calc(2px * var(--px)) 0 #00000059}.truco-trick[data-winner=tie] .truco-card canvas{box-shadow:0 0 0 calc(1px * var(--px)) #ffffff8c, 0 calc(2px * var(--px)) 0 #00000059}.truco-card{--dx:0px;--dy:0px;--lift:0px;--tilt:0deg;--fly:1;width:var(--card-w);height:var(--card-h);border-radius:calc(2px * var(--px));cursor:default;transform:translate3d(var(--dx), calc(var(--dy) + var(--lift)), 0) rotate(var(--tilt)) scale(var(--fly));transform-origin:50% 85%;transition:transform .46s var(--ease-exit), filter .3s var(--ease-exit);-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;padding:0;position:relative}.truco-card.is-moving{transition:none}.truco-card:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.truco-card.is-playable{cursor:pointer}.truco-card.is-playable:hover,.truco-card.is-playable:focus-visible{--lift:calc(-4px * var(--px));z-index:4}.truco-hand[data-hand=you] .truco-card:disabled{filter:brightness(.78)saturate(.85)}.truco-card .face{perspective:500px;width:100%;height:100%;animation:3.4s ease-in-out infinite trucofloat;animation-delay:var(--delay,0s);display:block}.truco-card.is-thrown .face{animation:none}.truco-card canvas{width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;border-radius:calc(2px * var(--px));box-shadow:0 calc(2px * var(--px)) 0 #00000059;transition:transform .16s ease-in, filter .3s var(--ease-exit), box-shadow .3s var(--ease-exit);display:block}.truco-card.is-flipping canvas{transform:rotateY(90deg)}@keyframes trucofloat{0%,to{transform:translateY(0)rotate(-.8deg)}50%{transform:translateY(-3px)rotate(.8deg)}}.truco-deck{width:var(--card-w);height:var(--card-h);pointer-events:none;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.truco-deck canvas{width:100%;height:100%;image-rendering:pixelated;border-radius:calc(2px * var(--px));position:absolute;inset:0}.truco-deck canvas:nth-child(2){transform:translate(calc(-1px * var(--px)), calc(-1px * var(--px)))}.truco-deck canvas:nth-child(3){transform:translate(calc(-2px * var(--px)), calc(-2px * var(--px)))}.truco-bubble,.truco-toast{z-index:6;font-family:var(--font-pixel);color:var(--wood);background:var(--paper);border:3px solid var(--wood);white-space:nowrap;pointer-events:none;margin:0;padding:.4rem .75rem .45rem;font-size:.875rem;line-height:1.2;position:absolute;box-shadow:4px 4px #0006}.truco-bubble{top:50%;left:calc(50% + var(--card-w) * 1.75);transform:translateY(-50%)}.truco-bubble:before{content:"";background:var(--paper);border-left:3px solid var(--wood);border-bottom:3px solid var(--wood);width:10px;height:10px;position:absolute;top:50%;left:-9px;transform:translateY(-50%)rotate(45deg)}.truco-bubble[data-tone=call],.truco-bubble[data-tone=call]:before{background:var(--gold)}.truco-bubble[data-tone=fold],.truco-bubble[data-tone=fold]:before{background:#d7d2c4}.truco-bubble[hidden],.truco-toast[hidden]{display:none}.truco-bubble.is-popping{animation:trucopop .3s var(--ease-exit)}.truco-toast{background:var(--gold);top:44%;left:50%;transform:translate(-50%,-50%)}.truco-toast.is-popping{animation:trucotoast .3s var(--ease-exit)}@keyframes trucopop{0%{transform:translateY(-50%)scale(.5)}to{transform:translateY(-50%)scale(1)}}@keyframes trucotoast{0%{transform:translate(-50%,-50%)scale(.5)}to{transform:translate(-50%,-50%)scale(1)}}.truco-actions{flex-wrap:wrap;justify-content:center;gap:.4rem;min-height:2.25rem;display:flex}.truco-button{--button:#3b6fe0;appearance:none;font-family:var(--font-pixel);color:var(--paper);background:var(--button);cursor:pointer;border:0;border-radius:4px;padding:.45rem .85rem .5rem;font-size:.875rem;line-height:1;transition:transform .1s ease-out,box-shadow .1s ease-out,opacity .2s ease-out;box-shadow:inset 0 -3px #00000047,inset 0 2px #ffffff38,0 3px #00000073}.truco-button:hover{transform:translateY(-1px)}.truco-button:active{transform:translateY(2px);box-shadow:inset 0 -1px #00000047,inset 0 2px #ffffff38,0 1px #00000073}.truco-button:disabled{opacity:.45;cursor:default;transform:none}.truco-button[data-kind=envido],.truco-button[data-kind=real],.truco-button[data-kind=falta]{--button:#3b6fe0}.truco-button[data-kind=truco],.truco-button[data-kind=retruco],.truco-button[data-kind=vale]{--button:#d4383f}.truco-button[data-kind=quiero]{--button:#3f8f3a}.truco-button[data-kind=no]{--button:#6b7280}.truco-button[data-kind=mazo]{--button:#3a2c20}.truco-banner{z-index:9;text-align:center;-webkit-backdrop-filter:blur(3px);background:#08080a80;flex-direction:column;justify-content:center;align-items:center;gap:.55rem;padding:1rem;display:flex;position:absolute;inset:0}.truco-banner[hidden]{display:none}.truco-banner h3{font-family:var(--font-pixel);color:var(--paper);text-shadow:3px 3px 0 var(--wood), -1px -1px 0 var(--wood), 1px -1px 0 var(--wood), -1px 1px 0 var(--wood);margin:0;font-size:1.75rem;font-weight:400}.truco-banner p{font-family:var(--font-pixel);color:var(--gold);text-shadow:2px 2px 0 var(--wood);margin:0 0 .4rem;font-size:.875rem}.truco-banner .truco-button[hidden]{display:none}.truco-banner.is-popping h3{animation:trucobanner .4s var(--ease-exit)}@keyframes trucobanner{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.truco-score{font-variant-numeric:tabular-nums;top:.8rem;left:auto;right:.8rem}.truco-tally{font-family:var(--font-pixel);color:var(--muted);grid-template-columns:2rem 1fr 1.6rem;align-items:center;gap:.5rem;padding:.2rem 0;font-size:.75rem;display:grid}.truco-tally b{text-align:right;color:var(--ink);font-variant-numeric:tabular-nums;font-weight:400}.truco-tally svg{display:block;overflow:visible}.truco-tally line{stroke:var(--hairline);transition:stroke .35s var(--ease-exit)}.truco-tally line.is-lit{stroke:var(--learning)}.truco-log{color:var(--muted);margin:0;padding:0 0 0 1.2rem;font-size:.8125rem;line-height:1.5}.truco-log li::marker{font-family:var(--font-pixel);font-size:.6875rem}.truco-log:empty:before{content:"Nothing yet.";color:var(--muted);margin-left:-1.2rem;font-size:.8125rem;display:block}.truco-peek{display:flex}.truco-read summary{font-family:var(--font-pixel);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);cursor:pointer;font-size:.75rem;list-style:none}.truco-read summary::-webkit-details-marker{display:none}.truco-read summary:before{content:"+ "}.truco-read[open] summary:before{content:"– "}.truco-view{max-height:15rem;font-family:var(--font-pixel);white-space:pre-wrap;color:var(--ink);margin:.5rem 0 0;font-size:.6875rem;line-height:1.5;overflow:auto}.lab-decisions .lab-note{margin-top:0}@media (width<=760px){.lab-frame-truco{--px:2;aspect-ratio:4/5}.truco-table{padding:2.6rem .6rem .7rem}.truco-tricks{gap:.8rem}.truco-bubble{font-size:.75rem;left:auto;right:.4rem}.truco-bubble:before,.truco-deck{display:none}.truco-banner h3{font-size:1.25rem}}@media (prefers-reduced-motion:reduce){.truco-card,.truco-card canvas{transition:none}.truco-card .face,.truco-bubble.is-popping,.truco-toast.is-popping,.truco-banner.is-popping h3{animation:none}}.truco-steps{flex-direction:column;gap:.55rem;display:flex}.truco-step-title{font-family:var(--font-pixel);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 .15rem;font-size:.625rem}.lab-frame-snake{--paper:#fff8e6;--gold:#ffe58f;--wood:#241a12;background:#6b4a32;outline:none}.lab-frame-snake:focus-visible{box-shadow:0 0 0 2px var(--accent)}.lab-frame-snake .lab-canvas{cursor:default}.snake-banner{text-align:center;background:#140e0a6b;flex-direction:column;justify-content:center;align-items:center;gap:.55rem;padding:1rem;display:flex;position:absolute;inset:0}.snake-banner[hidden]{display:none}.snake-banner h3{font-family:var(--font-pixel);color:var(--paper);text-shadow:3px 3px 0 var(--wood), -1px -1px 0 var(--wood), 1px -1px 0 var(--wood), -1px 1px 0 var(--wood);margin:0;font-size:1.75rem;font-weight:400}.snake-banner p{font-family:var(--font-pixel);color:var(--gold);text-shadow:2px 2px 0 var(--wood);margin:0 0 .4rem;font-size:.875rem}.snake-banner-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.snake-banner .truco-button{--button:#3f8f3a}.snake-banner .snake-quiet{--button:#3a2c20}.snake-banner .truco-button[hidden]{display:none}
