.product-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.gallery-card{background:var(--surface);border:1px solid var(--line);min-width:0;margin:0}.gallery-card>button{cursor:zoom-in;background:#e9edf2;border:0;width:100%;padding:0;display:block}.gallery-image{aspect-ratio:16/9;border-bottom:1px solid var(--line);display:block;position:relative;overflow:hidden}.gallery-image img{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform .4s}.gallery-card>button:hover img{transform:scale(1.025)}.gallery-open{color:#a9fff2;background:#071322e8;border:1px solid #39736d;padding:9px 12px;font:9px/1.4 monospace;position:absolute;bottom:14px;right:14px}.gallery-card figcaption{margin:0;padding:16px 18px;display:block}.gallery-category{letter-spacing:.07em;color:var(--accent);font:9px/1.6 monospace;display:block}.launch-page .gallery-card h3{color:var(--ink);margin:8px 0;font:700 19px/1.4 Sora,sans-serif}.gallery-card p{color:var(--muted);margin:0 0 10px;font:14px/1.6 IBM Plex Sans,sans-serif}.gallery-card figcaption a{color:var(--accent);font:10px/1.6 monospace}.gallery-provenance{color:var(--muted);margin-top:20px;font:11px/1.8 IBM Plex Sans,sans-serif}#screenshot-dialog.gallery-lightbox{width:100%;max-width:none;height:100dvh;max-height:none;color:var(--ink);background:0 0;border:0;margin:0;padding:22px;position:fixed;inset:0;overflow:hidden}#screenshot-dialog.gallery-lightbox[open]{justify-content:center;align-items:center;display:flex}#screenshot-dialog.gallery-lightbox::backdrop{backdrop-filter:blur(8px);background:#020916d9}.gallery-lightbox-panel{background:var(--surface);border:1px solid var(--accent);flex-direction:column;width:min(1320px,100%);min-height:0;max-height:100%;padding:18px;display:flex;box-shadow:0 0 60px #26bdb52b}.gallery-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}#screenshot-dialog #gallery-title{margin:5px 0 0;font:700 19px/1.4 Sora,sans-serif}#gallery-counter{color:var(--accent);font:10px monospace}#screenshot-dialog button{float:none;background:var(--soft);color:var(--ink);border:1px solid var(--line);cursor:pointer;min-height:42px;padding:10px 14px;font:11px/1.4 monospace;position:static}.gallery-monitor{border:1px solid var(--line);flex-direction:column;min-height:100px;display:flex;position:relative;overflow:hidden}.gallery-monitor:before,.gallery-monitor:after{content:"";border-color:var(--accent);pointer-events:none;z-index:1;width:18px;height:18px;position:absolute}.gallery-monitor:before{border-top:2px solid;border-left:2px solid;top:0;left:0}.gallery-monitor:after{border-bottom:2px solid;border-right:2px solid;bottom:0;right:0}.gallery-monitor-bar{background:var(--soft);color:var(--muted);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font:9px/1.5 monospace;display:flex}.gallery-scroll-frame{max-height:55dvh}.gallery-viewport{overscroll-behavior:contain;scrollbar-color:#62eee7 #061421;background:#edf0f4;flex:1;min-height:100px;max-height:none;overflow:auto}#screenshot-dialog .gallery-viewport img{width:100%;max-width:none;height:auto;max-height:none;display:block}#screenshot-dialog .gallery-viewport[data-zoom=true] img{width:var(--native-width)}#gallery-load-status{color:#34465c;padding:20px;font:12px monospace}#gallery-load-status:empty{display:none}.gallery-detail{justify-content:space-between;gap:20px;padding:14px 0;display:flex}.gallery-detail p{color:var(--muted);margin:0;font:12px/1.65 IBM Plex Sans,sans-serif}.gallery-detail a{color:var(--accent);flex-shrink:0;font:10px/1.5 monospace}.gallery-navigation{justify-content:space-between;align-items:center;gap:12px;display:flex}#gallery-instructions{color:var(--muted);text-align:center;margin:0;font:10px/1.5 monospace}.gallery-filmstrip{flex-shrink:0;gap:8px;padding-top:14px;display:flex;overflow-x:auto}#screenshot-dialog .gallery-filmstrip button{flex:0 0 80px;min-height:50px;padding:3px;position:relative}#screenshot-dialog .gallery-filmstrip button[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}#screenshot-dialog .gallery-filmstrip img{object-fit:cover;object-position:top;width:100%;height:44px}.gallery-filmstrip span{color:#c4fff7;background:#071322;padding:2px 4px;font:8px monospace;position:absolute;bottom:3px;right:3px}.gallery-announcement{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=1000px){.product-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.product-gallery{grid-template-columns:1fr;gap:14px}.gallery-card figcaption{padding:16px}#screenshot-dialog.gallery-lightbox{padding:10px}.gallery-lightbox-panel{padding:12px}#screenshot-dialog #gallery-title{font-size:15px}.gallery-toolbar{gap:10px;margin-bottom:12px}.gallery-monitor-bar>span{display:none}.gallery-monitor-bar{justify-content:space-between}.gallery-scroll-frame{max-height:43dvh}.gallery-detail{padding:10px 0;display:block}.gallery-detail p{font-size:11px;line-height:1.5}.gallery-detail a{margin-top:5px;display:inline-block}#gallery-instructions{max-width:115px;font-size:8px}#screenshot-dialog button{padding:9px;font-size:10px}.gallery-filmstrip{padding-top:10px}}@media (height<=650px){.gallery-filmstrip,.gallery-detail p{display:none}.gallery-scroll-frame{max-height:45dvh}.gallery-toolbar{margin-bottom:8px}}@media (prefers-reduced-motion:reduce){.gallery-image img{transition:none}}.release-introduction .beta-opening{margin-bottom:20px}.release-gallery{margin-block:28px 32px}.release-gallery+.prose>h2:first-child{margin-top:0}.product-gallery-compact .gallery-stage{grid-template-columns:minmax(0,1.25fr) minmax(220px,1fr)}.product-gallery-compact .gallery-stage .gallery-image{aspect-ratio:auto;width:100%;height:100%;min-height:240px}.product-gallery-compact .gallery-stage>button{min-width:0}.product-gallery-compact .gallery-stage .gallery-image img{object-fit:cover;object-position:top;width:100%;height:100%;position:absolute;inset:0}.product-gallery-compact .gallery-stage figcaption{padding:16px 20px}.product-gallery-compact .gallery-stage h3{margin:8px 0;font-size:20px;line-height:1.3}.product-gallery-compact .gallery-stage p{font-size:14px;line-height:1.55}.product-gallery-compact .gallery-stage-controls{margin-top:12px}.product-gallery-compact .gallery-selector{gap:8px;padding-block:8px}.product-gallery-compact .gallery-selector button{flex-basis:92px}.product-gallery-compact .gallery-selector img{height:44px}.release-gallery .gallery-provenance{margin:6px 0 0;font-size:11px}@media (width<=760px){.product-gallery-compact .gallery-stage{grid-template-columns:1fr}.product-gallery-compact .gallery-stage .gallery-image{height:190px;min-height:0}.product-gallery-compact .gallery-stage figcaption{padding:14px}}.product-gallery{display:block}.gallery-stage{grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);align-items:stretch;display:grid}.gallery-stage .gallery-image{aspect-ratio:16/9;border-bottom:0;border-right:1px solid var(--line);height:100%}.gallery-stage figcaption{flex-direction:column;justify-content:center;gap:0;padding:24px;display:flex}.gallery-stage-controls{color:var(--muted);align-items:center;gap:18px;margin-top:24px;font:12px monospace;display:flex}.gallery-stage-controls button{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--accent)}.gallery-selector{scrollbar-color:var(--accent) var(--soft);gap:10px;padding:12px 3px 8px;display:flex;position:relative;overflow-x:auto}.gallery-selector button{background:var(--surface);border:1px solid var(--line);color:var(--muted);text-align:left;flex:0 0 130px;padding:4px}.gallery-selector button[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 -2px var(--accent);color:var(--accent)}.gallery-selector img{object-fit:cover;object-position:top;width:100%;height:66px;display:block}.gallery-selector span{overflow-wrap:anywhere;padding:7px 3px 4px;font:9px/1.5 monospace;display:block}@media (width<=760px){.gallery-stage{grid-template-columns:1fr}.gallery-stage .gallery-image{border-right:0;border-bottom:1px solid var(--line)}.gallery-stage figcaption{padding:16px}.gallery-stage-controls{margin-top:14px}.gallery-selector button{flex-basis:104px}.gallery-selector img{height:54px}}.scroll-frame{--scroll-track:var(--soft);--scroll-thumb:color-mix(in srgb, var(--muted) 85%, var(--accent));min-width:0;min-height:0;overflow:hidden}.scroll-frame[data-scroll-ready]{background:var(--scroll-track);grid-template-rows:minmax(0,1fr) 0;grid-template-columns:minmax(0,1fr) 0;display:grid}.scroll-frame[data-scroll-y=true]{grid-template-columns:minmax(0,1fr) 24px}.scroll-frame[data-scroll-x=true]{grid-template-rows:minmax(0,1fr) 24px}.scroll-viewport{overscroll-behavior:contain;min-width:0;min-height:0;overflow:auto}dialog .scroll-frame[data-scroll-ready]>.scroll-viewport{scrollbar-width:none;scrollbar-gutter:auto}dialog .scroll-frame[data-scroll-ready]>.scroll-viewport::-webkit-scrollbar{width:0;height:0;display:none}.scroll-content{min-width:0;display:flow-root}.scroll-rail{background:var(--scroll-track);touch-action:none;user-select:none;cursor:pointer;position:relative}.scroll-rail:before{content:"";background:var(--line);pointer-events:none;position:absolute}.scroll-rail[hidden]{display:none}.scroll-rail[data-scroll-axis=y]{border-left:1px solid var(--line);grid-area:1/2}.scroll-rail[data-scroll-axis=x]{border-top:1px solid var(--line);grid-area:2/1}.scroll-rail[data-scroll-axis=y]:before{width:1px;inset:4px auto 4px 50%}.scroll-rail[data-scroll-axis=x]:before{height:1px;inset:50% 4px auto}.scroll-thumb{cursor:grab;display:block;position:absolute}.scroll-rail[data-scroll-axis=y] .scroll-thumb{top:0;left:0;right:0}.scroll-rail[data-scroll-axis=x] .scroll-thumb{top:0;bottom:0;left:0}.scroll-thumb:before{content:"";background:var(--scroll-thumb);pointer-events:none;transition:background-color .14s;position:absolute}.scroll-rail[data-scroll-axis=y] .scroll-thumb:before{width:6px;inset:3px auto 3px 50%;transform:translate(-50%)}.scroll-rail[data-scroll-axis=x] .scroll-thumb:before{height:6px;inset:50% 3px auto;transform:translateY(-50%)}.scroll-rail:hover .scroll-thumb:before,.scroll-rail:focus-visible .scroll-thumb:before,.scroll-rail[data-dragging] .scroll-thumb:before{background:var(--accent)}.scroll-rail:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.scroll-rail[data-dragging] .scroll-thumb{cursor:grabbing}@media (forced-colors:active){.scroll-frame{--scroll-track:Canvas}.scroll-rail{border-color:canvastext}.scroll-rail:before{background:canvastext}.scroll-rail .scroll-thumb:before{forced-color-adjust:none;background:buttontext}.scroll-rail:focus-visible{outline-color:highlight}}@media (prefers-reduced-motion:reduce){.scroll-thumb:before{transition:none}}
