:root{--bg:#0e0e10;--fg:#f4f4f5;--fg-muted:#a1a1aa;--control-bg:#18181bb8;--control-hover:#ffffff1f;--segment:#ffffff47;--segment-filled:#fff;--shadow:0 8px 32px #00000073;--fade:opacity .2s ease;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);overscroll-behavior:none;-webkit-tap-highlight-color:transparent;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.message{text-align:center;height:100%;color:var(--fg-muted);place-items:center;padding:16px;display:grid}.viewer{background:var(--bg);-webkit-user-select:none;user-select:none;position:fixed;inset:0}.viewer img,.viewer video{-webkit-user-drag:none;-webkit-touch-callout:none}.stage{touch-action:none;position:absolute;inset:0}.zone{z-index:10;position:absolute}.zone-top-left{padding:max(16px, env(safe-area-inset-top)) 16px 16px max(16px, env(safe-area-inset-left));top:0;left:0}.zone-top-right{padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 16px 16px;top:0;right:0}.zone-bottom{padding:24px max(16px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));bottom:0;left:0;right:0}.controls{opacity:0;transition:var(--fade)}.viewer.controls-shown .controls,.zone:focus-within .controls{opacity:1}.viewer.touch:not(.controls-shown) .zone:not(:focus-within){pointer-events:none}.viewer:before,.viewer:after{content:"";z-index:5;pointer-events:none;opacity:0;transition:var(--fade);position:absolute;left:0;right:0}.viewer:before{background:linear-gradient(#00000073,#0000);height:120px;top:0}.viewer:after{background:linear-gradient(#0000,#0000008c);height:160px;bottom:0}.viewer.controls-shown:before,.viewer.controls-shown:after{opacity:1}.stage.cursor-prev{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='18' fill='white' fill-opacity='0.92'/%3E%3Cpath d='M23 13l-7 7 7 7' fill='none' stroke='%230e0e10' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 20 20,w-resize}.stage.cursor-next{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='18' fill='white' fill-opacity='0.92'/%3E%3Cpath d='M17 13l7 7-7 7' fill='none' stroke='%230e0e10' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 20 20,e-resize}.logo{background:#ffffffeb;border-radius:10px;place-items:center;width:40px;height:40px;padding:7px;display:grid}.logo img{object-fit:contain;width:100%;height:100%;display:block}.icon-button{background:var(--control-bg);-webkit-backdrop-filter:blur(8px);border-radius:10px;place-items:center;width:40px;height:40px;transition:background .15s;display:inline-grid}.icon-button:hover:not(:disabled){background:var(--control-hover)}.icon-button:disabled{opacity:.35;cursor:default}.icon-button:focus-visible,.segment:focus-visible,.overview-item:focus-visible{outline:2px solid var(--fg);outline-offset:2px}.bottom-bar{flex-direction:column;gap:10px;display:flex}.progress{gap:4px;display:flex}.segment{background:linear-gradient(var(--segment), var(--segment)) center / 100% 4px no-repeat;flex:1;height:16px}.segment.filled{background-image:linear-gradient(var(--segment-filled), var(--segment-filled))}.bar-row{justify-content:space-between;align-items:center;display:flex}.bar-group{align-items:center;gap:8px;display:flex}.counter{text-align:center;font-variant-numeric:tabular-nums;text-shadow:0 1px 4px #0009;min-width:56px;font-size:14px}.image-slide,.video-slide,.slide-error{justify-content:center;align-items:center;padding:2vmin;display:flex;position:absolute;inset:0}.image-slide img{object-fit:contain;max-width:100%;max-height:100%;box-shadow:var(--shadow);transform-origin:50%;-webkit-user-drag:none}.image-slide.zoomed{cursor:grab}.image-slide.zoomed:active{cursor:grabbing}.video-slide video{cursor:pointer;max-width:100%;max-height:100%;box-shadow:var(--shadow);background:#000}.video-button{background:var(--control-bg);-webkit-backdrop-filter:blur(8px);border-radius:50%;place-items:center;width:72px;height:72px;display:grid;position:absolute}.video-button svg{width:32px;height:32px}.pause-button{opacity:0;transition:var(--fade);pointer-events:none}@media (hover:hover){.video-slide:hover .pause-button{opacity:1;pointer-events:auto}}.viewer.controls-shown .pause-button{opacity:1;pointer-events:auto}.landing-slide{overscroll-behavior:contain;touch-action:pan-y;position:absolute;inset:0;overflow-y:auto}.landing-slide img{-webkit-user-drag:none;width:100%;display:block}.landing-slide img.mobile{width:min(100%,430px);box-shadow:var(--shadow);margin:2vmin auto}.slide-error{color:var(--fg-muted);text-align:center}.overview{z-index:20;background:var(--bg);padding:72px max(16px,4vw) 32px;position:absolute;inset:0;overflow-y:auto}.overview-close{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));z-index:1;position:fixed}.overview-grid{grid-template-columns:repeat(auto-fill,minmax(min(200px,40vw),1fr));gap:28px;max-width:1400px;margin:0 auto;display:grid}.overview-item{aspect-ratio:4/5;border-radius:6px;justify-content:center;align-items:center;display:flex;position:relative}.overview-item img,.overview-item video{object-fit:contain;max-width:100%;max-height:100%;box-shadow:var(--shadow);transition:transform .15s}.overview-item.landing img,.overview-item.landing video{object-fit:cover;object-position:top;width:100%;height:100%}.overview-item:hover img,.overview-item:hover video{transform:translateY(-3px)}.overview-item.current img,.overview-item.current video{outline:2px solid var(--fg);outline-offset:3px}.overview-number{color:var(--fg-muted);font-variant-numeric:tabular-nums;font-size:13px;position:absolute;bottom:-22px;left:0;right:0}.toast{z-index:30;left:50%;top:max(24px, env(safe-area-inset-top));background:var(--fg);color:var(--bg);box-shadow:var(--shadow);border-radius:10px;padding:10px 16px;font-size:14px;position:absolute;transform:translate(-50%)}
