@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-vietnamese-wght-normal-CHiFlh_0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-ext-wght-normal-Dg-wlmqe.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-wght-normal-CaVRRdDk.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0a0b;--fg:#f3f1ec;--muted:#9a958c;--muted-dim:#6f6b63;--accent:#e8c07d;--accent-ink:#1c160a;--glass:#1010128c;--glass-strong:#0e0e10d1;--hairline:#ffffff1a;--hairline-soft:#ffffff0f;--hover:#ffffff1a;--row-active:#e8c07d29;--r-lg:18px;--r-md:12px;--r-sm:9px;--ease:cubic-bezier(.22, .61, .36, 1);--font-ui:"Hanken Grotesk Variable", -apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, sans-serif;--font-mono:"Geist Mono Variable", ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace;font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;min-height:100dvh;color:var(--fg);margin:0;overflow:hidden}#stage{width:100vw;width:100dvw;height:100vh;background:#000;height:100dvh;position:fixed;top:0;left:0}#stage canvas{width:100%;height:100%;display:block}button{font:inherit;color:inherit;cursor:pointer}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.empty{--wall:#1b1916;--mat:#2a2624;--window:#0d0c0b;z-index:30;background:var(--wall);transition:opacity .45s var(--ease), visibility .45s var(--ease);place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}body.has-folder .empty{opacity:0;visibility:hidden;pointer-events:none}.welcome{width:100%;max-width:1360px;padding:calc(clamp(24px, 5vh, 64px) + env(safe-area-inset-top,0px)) calc(clamp(16px, 5vw, 72px) + env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) calc(clamp(16px, 5vw, 72px) + env(safe-area-inset-left,0px));grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-template-areas:"text print""facts print""foot foot";gap:clamp(40px,6vh,72px) clamp(40px,6vw,112px);display:grid}.welcome__text{grid-area:text;align-self:end;max-width:38rem}.wordmark{color:var(--accent);letter-spacing:-.02em;align-items:center;gap:10px;margin:0 0 clamp(28px,6vh,56px);font-size:18px;font-weight:700;display:inline-flex}.wordmark__mark{width:26px;height:26px}.welcome__title{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(38px,4vw,68px);font-weight:500;line-height:1.02}.welcome__lede{max-width:30em;color:var(--muted);margin:24px 0 0;font-size:18px;line-height:1.5}.facts{grid-area:facts;align-self:start;gap:18px;max-width:38rem;margin:0;display:grid}.facts div{border-left:1px solid var(--hairline);padding-left:16px}.facts dt{font-size:15px;font-weight:600}.facts dd{color:var(--muted);margin:3px 0 0;font-size:15px;line-height:1.45}.print{animation:hang .9s var(--ease) both;grid-area:print;align-self:center;margin:0}.print__mat{background:var(--mat);padding:8% 8% 10.5%;box-shadow:inset 0 1px #ffffff0d,0 24px 44px -20px #000c,0 2px 6px #00000059}.print__window{aspect-ratio:3/2;background:var(--window);text-align:center;transition:background .2s var(--ease), border-color .2s var(--ease);border:4px solid #1c1918;border-color:#1c1918 #38332f #433d39 #332e2b;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:16px;display:flex;box-shadow:inset 0 10px 14px -10px #000000b3}.print__window .btn--primary{padding:12px 22px;font-size:16px}.print__drop{color:var(--muted);margin:0;font-size:14px}.print__links{flex-wrap:wrap;justify-content:center;gap:4px 12px;display:flex}body.touch .print__links{flex-direction:column;align-items:center;gap:12px}body.dragging .print__window{border-color:var(--accent);background:#17140f}body.dragging .print__drop{color:var(--accent)}.print__caption{max-width:46em;color:var(--muted-dim);margin:18px 0 0;font-size:13px;line-height:1.55}.welcome__foot{color:var(--muted-dim);flex-wrap:wrap;grid-area:foot;justify-content:space-between;gap:4px 24px;font-size:13px;display:flex}.welcome__foot p{margin:0}#app-version{font-variant-numeric:tabular-nums}.welcome__foot a{color:var(--muted);border-bottom:1px solid var(--hairline);text-decoration:none}.welcome__foot a:hover{color:var(--accent);border-color:var(--accent)}@media (max-width:860px){.welcome{grid-template-columns:minmax(0,1fr);grid-template-areas:"text""print""facts""foot"}.welcome__text,.facts{max-width:none}.wordmark{margin-bottom:28px}.welcome__lede{font-size:17px}.print__window .btn--primary{padding:10px 18px;font-size:15px}}@keyframes hang{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.print{animation:none}}.btn{border:1px solid var(--hairline);border-radius:var(--r-sm);transition:background .15s var(--ease), border-color .15s var(--ease), transform .1s var(--ease);background:#ffffff0d;padding:10px 16px;font-size:14px;font-weight:500}.btn:hover{background:var(--hover)}.btn:active{transform:translateY(1px)}.btn--block{width:100%}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.btn--primary:hover{background:#f0cd92;border-color:#f0cd92}.linkbtn{color:var(--muted);border-radius:var(--r-sm);text-underline-offset:3px;transition:color .14s var(--ease);background:0 0;border:none;padding:6px 8px;font-size:13px;text-decoration:underline}.linkbtn:hover{color:var(--fg)}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body.touch #pick-folder,body.touch #empty-folder,body.touch #empty-drop,body.touch .print__keys{display:none}body.touch #empty-photos{border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);border-radius:var(--r-sm);padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none}body.touch #empty-photos:hover{color:var(--accent-ink);background:#f0cd92}label.btn,label.linkbtn{cursor:pointer}.scrim{z-index:14;pointer-events:none;opacity:0;height:220px;transition:opacity .3s var(--ease);background:linear-gradient(#0000,#00000052 55%,#000000b8);position:fixed;bottom:0;left:0;right:0}body.has-folder .scrim{opacity:1}.controls{left:50%;bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:16;width:min(720px, calc(100vw - 32px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));background:var(--glass);-webkit-backdrop-filter:blur(26px)saturate(150%);border:1px solid var(--hairline);border-radius:var(--r-lg);opacity:0;pointer-events:none;transition:opacity .3s var(--ease), transform .3s var(--ease);position:fixed;overflow:hidden;transform:translate(-50%)translateY(12px);box-shadow:0 18px 50px #00000080}body.has-folder .controls{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.progress{background:var(--hairline-soft);width:100%;height:2px}.progress__fill{background:var(--accent);transform-origin:0;will-change:transform;width:100%;height:100%;transform:scaleX(0);box-shadow:0 0 8px #e8c07d80}.controls__bar{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:11px 14px;display:grid}.controls__start{align-items:center;gap:6px;min-width:0;margin-left:-6px;display:flex}.controls__meta{flex-direction:column;gap:1px;min-width:0;display:flex}.counter{font-family:var(--font-mono);letter-spacing:.06em;color:var(--fg);font-variant-numeric:tabular-nums;font-size:12px;font-weight:500}.folder-name{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:11.5px;overflow:hidden}.controls__transport{justify-self:center;align-items:center;gap:6px;display:flex}.controls__actions{justify-self:end;align-items:center;gap:2px;display:flex}@media (max-width:480px){.controls__meta,#help-btn{display:none}.controls__bar{gap:4px;padding:10px}.controls__start{margin-left:0}.controls .iconbtn:not(.iconbtn--play){width:40px;height:40px}}@media (max-width:359px){#shuffle{display:none}.controls__transport{gap:2px}}.iconbtn{width:44px;height:44px;color:var(--fg);transition:background .14s var(--ease), transform .1s var(--ease), color .14s var(--ease);background:0 0;border:none;border-radius:50%;place-items:center;display:inline-grid}.iconbtn svg{width:21px;height:21px;display:block}.iconbtn:hover{background:var(--hover)}.iconbtn:active{transform:scale(.92)}.iconbtn--play{background:var(--fg);color:#0a0a0b;width:52px;height:52px}.iconbtn--play svg{width:24px;height:24px}.iconbtn--play:hover{background:#fff}.iconbtn svg.i-pause,.iconbtn svg.i-collapse,body.playing .iconbtn--play svg.i-play{display:none}body.playing .iconbtn--play svg.i-pause{display:block}body.fullscreen .iconbtn svg.i-expand{display:none}body.fullscreen .iconbtn svg.i-collapse{display:block}.drawer-scrim{z-index:18;opacity:0;transition:opacity .28s var(--ease);background:#0006;position:fixed;inset:0}body.panel-open .drawer-scrim{opacity:1}.drawer-scrim[hidden]{pointer-events:none;display:block}body.panel-open .drawer-scrim{pointer-events:auto}.panel{z-index:20;top:calc(14px + env(safe-area-inset-top,0px));right:calc(14px + env(safe-area-inset-right,0px));bottom:calc(14px + env(safe-area-inset-bottom,0px));background:var(--glass-strong);-webkit-backdrop-filter:blur(28px)saturate(150%);border:1px solid var(--hairline);border-radius:var(--r-lg);width:350px;max-width:calc(100vw - 28px);transition:transform .32s var(--ease);flex-direction:column;display:flex;position:fixed;transform:translate(calc(100% + 24px));box-shadow:0 24px 70px #0000008c}body.panel-open .panel{transform:none}.panel__head{border-bottom:1px solid var(--hairline-soft);justify-content:space-between;align-items:center;padding:16px 12px 14px 20px;display:flex}.panel__head h2{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:600}.panel__head .iconbtn{width:44px;height:44px}.panel__head .iconbtn svg{width:18px;height:18px}.panel__body{flex-direction:column;flex:1;gap:16px;min-height:0;padding:18px 20px;display:flex;overflow:hidden}.field{flex-direction:column;gap:7px;display:flex}.field--split{flex-direction:row;gap:12px}.field--split>div{flex-direction:column;flex:1;gap:7px;display:flex}.field--toggles{gap:12px}.field--list{flex:1;min-height:0}.lbl{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:11px;font-weight:500}select,input[type=number]{border:1px solid var(--hairline);width:100%;color:var(--fg);border-radius:var(--r-sm);font:inherit;transition:border-color .14s var(--ease), background .14s var(--ease);background:#ffffff0a;padding:9px 11px;font-size:14px}select:hover,input[type=number]:hover{background:#ffffff0f}select:focus-visible,input:focus-visible{border-color:var(--accent)}.toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;font-size:13.5px;display:flex}.toggle[hidden]{display:none}.toggle input{accent-color:var(--accent);cursor:pointer;width:16px;height:16px;margin:0}.list-head{color:var(--muted);justify-content:space-between;align-items:baseline;font-size:12px;display:flex}#list-count{color:var(--fg);font-weight:500}.muted{color:var(--muted)}.small{font-size:11px}.vlist{border-top:1px solid var(--hairline-soft);contain:strict;scrollbar-width:thin;scrollbar-color:var(--muted-dim) transparent;flex:1;margin-top:8px;position:relative;overflow:hidden auto}.vlist-spacer{pointer-events:none;width:100%;position:relative}.vlist-row{border-radius:var(--r-sm);cursor:pointer;-webkit-user-select:none;user-select:none;pointer-events:auto;contain:content;transition:background .1s var(--ease);align-items:center;gap:10px;padding:0 8px;font-size:12.5px;display:flex;position:absolute;left:0;right:0}.vlist-row:hover{background:var(--hover)}.vlist-row.active{background:var(--row-active);color:var(--accent)}.vlist-row .idx{color:var(--muted-dim);width:38px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;flex-shrink:0;font-size:11px}.vlist-row.active .idx{color:var(--accent)}.vlist-row .name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.help{z-index:40;animation:fade .2s var(--ease);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.help[hidden]{display:none}.help__card{background:var(--glass-strong);-webkit-backdrop-filter:blur(28px)saturate(150%);border:1px solid var(--hairline);border-radius:var(--r-lg);width:min(440px,100vw - 32px);animation:pop .26s var(--ease);padding:8px 8px 20px;box-shadow:0 30px 80px #0009}.help__head{justify-content:space-between;align-items:center;padding:10px 8px 8px 18px;display:flex}.help__head h2{margin:0;font-size:16px;font-weight:600}.help__grid{gap:4px;margin:6px 0 0;padding:0 12px;display:grid}.help__grid>div{border-radius:var(--r-sm);align-items:center;gap:14px;padding:9px 10px;display:flex}.help__grid>div:nth-child(odd){background:#ffffff08}.help__grid dt{gap:5px;min-width:96px;margin:0;display:flex}.help__grid dd{color:var(--muted);margin:0;font-size:13.5px}kbd{font-family:var(--font-mono);color:var(--fg);border:1px solid var(--hairline);text-align:center;background:#ffffff14;border-bottom-width:2px;border-radius:5px;min-width:14px;padding:2px 7px;font-size:11px}.toast{left:50%;bottom:calc(96px + env(safe-area-inset-bottom,0px));z-index:50;border-radius:var(--r-md);background:var(--glass-strong);-webkit-backdrop-filter:blur(24px)saturate(150%);border:1px solid var(--hairline);max-width:min(420px,100vw - 32px);color:var(--fg);text-align:center;opacity:0;pointer-events:none;transition:opacity .28s var(--ease), transform .28s var(--ease);padding:11px 16px;font-size:13.5px;line-height:1.45;position:fixed;transform:translate(-50%)translateY(8px);box-shadow:0 16px 44px #00000080}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}body.standalone #fullscreen,body.standalone #install-btn{display:none}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:none}}body.idle .controls,body.idle .scrim{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .4s var(--ease), visibility .4s var(--ease)}body.idle{cursor:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}.focus-ring{outline:2px solid var(--accent);outline-offset:3px}.vlist:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.vlist-row[aria-selected=true]{background:var(--hover)}.vlist-row.focused{outline:2px solid var(--accent);outline-offset:-2px}#stage canvas{opacity:0;transition:opacity .6s var(--ease)}#stage canvas.is-ready{opacity:1}
