.j-toy{color:#263c5b;background:#eeeedf;border:1px solid #c6c5ae;padding:32px;position:relative;box-shadow:6px 6px #d9d5bd;margin:42px 40px 0!important}.toy-heading{border-bottom:1px solid #c6c5ae;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:26px;padding-bottom:24px;display:flex}.toy-heading h3{letter-spacing:-.025em;font:34px/1.15 Georgia,serif;margin:10px 0 0!important}.toy-index{color:#a59c7c;font:48px/1 Pixel,monospace}.toy-two-column{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:32px;display:grid}.toy-controls{flex-direction:column;gap:16px;display:flex}.j-toy p{font:17px/1.6 Georgia,serif}.j-toy .toy-small{color:#586258;font:13px/1.6 monospace}.toy-button{min-height:42px;box-shadow:none;cursor:pointer;color:#344bb1!important;white-space:normal!important;background:0 0!important;border:1px solid #344bb1!important;border-radius:0!important;height:auto!important;padding:9px 13px!important;font:14px/1.4 Pixel,monospace!important}.toy-button:hover{background:#dce0ef!important}.toy-button:disabled{opacity:.4;cursor:default}.toy-button[aria-pressed=true],.toy-button.toy-primary{box-shadow:3px 3px #c3b982;color:#faf7eb!important;background:#344bb1!important}.toy-buttons{flex-wrap:wrap;gap:8px;display:flex}:is(.j-toy button:focus-visible,.j-toy summary:focus-visible){outline-offset:4px;outline:3px solid #b65b36!important}.j-toy figcaption{color:#586258;border-top:1px solid #c6c5ae;margin-top:25px;padding-top:16px;font:12px/1.65 monospace}.toy-status-line{justify-content:space-between;align-items:center;gap:20px;min-height:44px;margin-top:18px;display:flex}.toy-status-line>output,.toy-hint{font:14px/1.5 monospace}.toy-hint summary{cursor:pointer;text-underline-offset:4px;padding:8px 0;text-decoration:underline}.toy-hint p{margin-top:10px;font-size:15px}.toy-monitor{background:#263c5b;border:1px solid #1f2d40;padding:14px 14px 35px;position:relative;box-shadow:5px 5px #bcb8a2}.toy-frame{aspect-ratio:16/10;isolation:isolate;background:#1b2d37;position:relative;overflow:hidden}.toy-frame>img{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;transition:transform .2s,filter .3s}.toy-tone-1>img{filter:sepia(.5)brightness(.65)saturate(.8)hue-rotate(325deg)}.toy-tone-2>img{filter:grayscale()contrast(1.15)}.toy-thirds{pointer-events:none;background:linear-gradient(90deg,#0000 33.1%,#faf7eb65 33.1% 33.5%,#0000 33.5% 66.2%,#faf7eb65 66.2% 66.6%,#0000 66.6%),linear-gradient(#0000 33.1%,#faf7eb65 33.1% 33.5%,#0000 33.5% 66.2%,#faf7eb65 66.2% 66.6%,#0000 66.6%);position:absolute;inset:0}.toy-monitor-label{letter-spacing:.09em;color:#f4db9f;font:11px Pixel,monospace;position:absolute;bottom:9px;left:15px}.toy-controls>label{justify-content:space-between;margin-bottom:-8px;font:13px Pixel,monospace;display:flex}.toy-slider{width:100%;min-height:26px;padding:8px 0}.toy-slider>[data-orientation=horizontal]{height:22px}.toy-slider [data-slot=slider-track]{width:100%;background:#c3c6b5!important;height:5px!important}.toy-slider [data-slot=slider-range]{height:100%;background:#344bb1!important}.toy-slider [data-slot=slider-thumb]{box-shadow:2px 2px #b5b5a0;background:#faf7eb!important;border:2px solid #344bb1!important;border-radius:0!important;width:20px!important;height:20px!important}.toy-filmstrip{background:#dcdcc9;border-top:5px dotted #faf7eb;border-bottom:5px dotted #faf7eb;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:26px;padding:14px;display:grid}.toy-shot{cursor:pointer;background:#faf7eb;border:2px solid #0000;min-width:0;padding:0;position:relative}.toy-shot.is-active{border-color:#344bb1;box-shadow:3px 3px #344bb1}.toy-shot:disabled{cursor:default}.toy-empty-frame{aspect-ratio:16/10;color:#7b7f70;justify-content:center;align-items:center;font:11px Pixel,monospace;display:flex}.toy-frame-number{color:#fff;background:#263c5b;padding:3px 7px;font:12px Pixel,monospace;position:absolute;bottom:0;left:0}.j-toy-02{background:#e2e9dc;border-color:#a5b6a1}.toy-board{background:#263e39;padding:25px 35px;position:relative;box-shadow:5px 5px #9baf99}.toy-wire-grid{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.toy-wire{aspect-ratio:1;cursor:pointer;background:#304d43;border:1px solid #617569;min-width:0;padding:0}.toy-wire:hover{background:#3f6053}.toy-wire svg{width:100%;height:100%;display:block}.toy-wire path{stroke:#819e85;stroke-width:10px;fill:none;stroke-linecap:square}.toy-wire circle{fill:#aec0a0;stroke:#304d43;stroke-width:2px}.toy-wire.is-powered path{stroke:#f3cc70}.toy-wire.is-powered circle{fill:#ffebae}.toy-terminal{color:#dce7c9;font:11px Pixel,monospace;position:absolute}.toy-source{top:39%;left:3px}.toy-output{top:59%;right:1px}.is-complete .toy-output{color:#ffe6a0}.toy-meter{background:#f3f3e5;border:1px solid #bbcab1;align-items:center;gap:12px;padding:16px;display:flex}.toy-meter output{font:17px Pixel,monospace}.toy-led{background:#8b9384;border:3px solid #56674c;flex-shrink:0;width:17px;height:17px;box-shadow:3px 3px #d4d9c8}.toy-led.is-on{background:#f2d17b;border-color:#96752e;box-shadow:0 0 20px #d8b13c99}.toy-pixel-grid{background:#263c5b;grid-template-columns:repeat(8,minmax(0,1fr));gap:2px;width:100%;max-width:360px;margin:auto;padding:12px;display:grid;box-shadow:6px 6px #c5b981}.toy-pixel-grid button{aspect-ratio:1;cursor:crosshair;border:0;min-width:0;padding:0}.toy-pixel-grid button:hover{outline-offset:-2px;outline:2px solid #b45a3d}.toy-palette{gap:12px;display:flex}.toy-palette button{color:#263c5b;cursor:pointer;border:1px solid #9b9e8d;width:47px;height:47px;font:24px Georgia,serif;box-shadow:3px 3px #ccc6ad}.toy-palette button[aria-pressed=true]{outline-offset:3px;outline:2px solid #344bb1}.toy-palette button:nth-child(2){color:#fff}.toy-number-rack{grid-template-columns:repeat(12,1fr);gap:6px;margin:24px 0;display:grid}.toy-number{aspect-ratio:1;cursor:pointer;color:#263c5b!important;background:#faf7eb!important;border:1px solid #a3a891!important;border-radius:0!important;min-width:0!important;height:auto!important;padding:0!important;font:22px Pixel,monospace!important}.toy-number[aria-pressed=true]{box-shadow:3px 3px #c7ba8c;color:#fff!important;background:#344bb1!important}.toy-number:disabled{opacity:.35;cursor:default}.toy-sum-board{grid-template-columns:repeat(10,minmax(0,1fr));align-items:center;gap:8px;min-height:106px;display:grid}.toy-sum{text-align:center;background:#faf7eb;border:1px solid #b8c3ad;padding:12px 3px;animation:.2s ease-out toy-appear}.toy-sum span{font:11px monospace;display:block}.toy-sum b{font:30px Georgia,serif;display:block}.toy-sum.has-collision{color:#833e27;background:#f0d2bc;border-color:#b75d3d}.j-toy-05{background:#e4e8ed;border-color:#b5bfc9}.toy-protein-stage{background:#f4f4e8;border:1px solid #bcc4c8;padding:15px;box-shadow:5px 5px #bdc8d1}.toy-protein-stage svg{width:100%;height:auto;max-height:320px;display:block}.toy-chain-labels{justify-content:space-around;font:12px Pixel,monospace;display:flex}.toy-chain-backbone{fill:none;stroke-width:12px;stroke-linecap:round;opacity:.3}.toy-chain-backbone.a{stroke:#344bb1}.toy-chain-backbone.b{stroke:#ac5b3b}.toy-residue.a{fill:#d6dcf1;stroke:#344bb1;stroke-width:2px}.toy-residue.b{fill:#f0dac5;stroke:#ad6242;stroke-width:2px}.toy-protein-stage text{text-anchor:middle;fill:#263c5b;font:24px Georgia,serif}.toy-contact{stroke:#a4acb0;stroke-width:2px;stroke-dasharray:4 5}.toy-contact.is-match{stroke:#557b42;stroke-width:4px;stroke-dasharray:none}.toy-contact.is-mismatch{stroke:#b7593e;stroke-width:3px;stroke-dasharray:3 5}.toy-protein-stage .toy-contact-result{font:16px Arial,sans-serif}.toy-fit-result{background:#f4f4e8;border:1px solid #bbc5c8;align-items:center;gap:18px;min-height:85px;padding:16px;font:15px/1.5 Georgia,serif;display:flex}.toy-fit-result strong{white-space:nowrap;color:#344bb1;font:38px Pixel,monospace}.toy-fit-result span{max-width:240px}@keyframes toy-appear{0%{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}@media (max-width:900px){.j-toy{padding:26px}.toy-two-column{grid-template-columns:1fr;gap:28px}.toy-monitor{width:100%;max-width:540px;margin:auto}.toy-board{width:100%;max-width:410px;margin:auto}.toy-number-rack{grid-template-columns:repeat(6,1fr)}.toy-sum-board{grid-template-columns:repeat(5,1fr)}.toy-controls{gap:17px}.toy-protein-stage{width:100%;max-width:400px;margin:auto}}@media (max-width:600px){.j-toy{padding:20px;box-shadow:4px 4px #d9d5bd;margin:32px 16px 0!important}.toy-heading{gap:12px;margin-bottom:22px;padding-bottom:20px}.toy-heading h3{font-size:29px}.toy-index{font-size:32px}.toy-status-line{flex-direction:column;align-items:flex-start;gap:12px}.toy-status-line output{font-size:16px}.toy-filmstrip{gap:7px;margin-top:20px;padding:8px}.toy-empty-frame{padding:5px;font-size:9px;line-height:1.5}.toy-frame-number{padding:1px 5px;font-size:10px}.toy-number-rack{gap:7px}.toy-number{min-height:38px;font-size:22px!important}.toy-sum-board{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;min-height:80px}.toy-sum{padding:9px 1px}.toy-sum b{font-size:25px}.toy-sum span{font-size:10px}.toy-pixel-grid{gap:2px;padding:8px}.toy-board{padding:22px 28px}.toy-terminal{font-size:9px}.toy-palette{gap:15px}.toy-palette button{width:44px;height:44px}.j-toy figcaption{font-size:11px}.toy-heading .j-kicker{font-size:11px!important}.toy-instructions{font-size:16px!important}}@media (prefers-reduced-motion:reduce){.j-toy *{transition:none!important;animation:none!important}}@media print{.j-toy{break-inside:avoid;box-shadow:none}.toy-button,.toy-slider,.toy-hint{display:none!important}}.toy-slider>div{touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;width:100%;height:24px;display:flex;position:relative}.toy-slider [data-slot=slider-track]{flex-grow:1;position:relative;overflow:hidden}.toy-paint-workspace{flex-direction:column;gap:16px;min-width:0;display:flex}.toy-paint-workspace .toy-palette{justify-content:center}.toy-paint-workspace>.toy-small{text-align:center}.toy-zoom{align-self:center}.toy-pixel-viewport{overscroll-behavior-x:contain;scrollbar-width:thin;padding:4px 8px 10px;overflow-x:auto}.toy-pixel-viewport.is-zoomed .toy-pixel-grid{width:414px;max-width:none;margin:0 auto}.toy-pixel-viewport.is-zoomed .toy-pixel-grid button{min-height:46px}.toy-docking-controls{flex-direction:column;gap:12px;margin-top:12px;display:flex}.toy-docking-controls .toy-buttons{grid-template-columns:1fr 1fr;display:grid}.toy-docking-controls .toy-small{text-align:center}.j-toy button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (max-width:600px){.j-toy{padding:16px 14px;box-shadow:3px 3px #d9d5bd;margin:24px 8px 0!important}.toy-heading{gap:8px;margin-bottom:20px;padding-bottom:16px}.toy-heading h3{font-size:27px;line-height:1.15}.toy-index{flex-shrink:0;font-size:25px}.toy-two-column{gap:20px}.toy-button{min-height:48px;padding:11px 12px!important;font-size:15px!important}.toy-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.toy-buttons[aria-label=Color\ treatment]{grid-template-columns:repeat(3,minmax(0,1fr))}.toy-buttons[aria-label=Color\ treatment] .toy-button{padding:10px 4px!important;font-size:13px!important}.toy-controls>label{margin-bottom:-12px;font-size:15px}.toy-slider{padding:4px 12px}.toy-slider>div{height:44px}.toy-slider [data-slot=slider-thumb]{width:32px!important;height:32px!important}.toy-slider [data-slot=slider-track]{height:7px!important}.toy-monitor{padding:8px 8px 30px}.toy-monitor-label{font-size:12px;left:10px}.toy-filmstrip{gap:8px;padding:6px}.toy-shot,.toy-shot .toy-frame{min-height:64px}.toy-empty-frame{min-height:64px;font-size:12px;line-height:1.3}.toy-frame-number{font-size:12px}.toy-status-line>.toy-button{width:100%}.toy-board{padding:18px 24px}.toy-wire{min-height:44px}.toy-number-rack{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}.toy-number{aspect-ratio:auto;min-height:52px;font-size:25px!important}.toy-sum-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.toy-sum span{font-size:12px}.toy-sum b{font-size:28px}.toy-palette button{width:48px;height:48px}.toy-pixel-grid{padding:6px}.toy-pixel-viewport{margin:0 -6px;padding-left:6px;padding-right:6px}.toy-protein-stage{padding:12px}.toy-protein-stage svg{max-height:250px}.toy-fit-result{min-height:72px;padding:12px}.toy-hint summary{min-height:48px;padding:12px 0}.j-toy .toy-small,.j-toy figcaption{font-size:13px;line-height:1.6}.j-toy .toy-chain-labels{font-size:14px}}@media (max-width:360px){.toy-buttons[aria-label=Color\ treatment]{grid-template-columns:1fr}.toy-sum-board{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:600px){.journal .motion-control{max-width:calc(100% - 32px);margin:0 auto 24px;position:relative;bottom:auto;right:auto}}
