@font-face{font-family:Selawik;src:url(/fonts/selawk.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Selawik;src:url(/fonts/selawksb.woff2)format("woff2");font-weight:500 650;font-display:swap}@font-face{font-family:Selawik;src:url(/fonts/selawkb.woff2)format("woff2");font-weight:651 900;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1115;--mica-1:#1b2a44;--mica-2:#2a1d3a;--surface:#202228b8;--surface-strong:#1d2027;--surface-hi:#ffffff0f;--stroke:#ffffff14;--text:#f2f3f7;--text-2:#a9adb8;--accent:#4cc2ff;--on-accent:#00283d;--accent-tonal:#4cc2ff29;--accent-ink:var(--accent);--keep-ink:var(--keep);--del-ink:var(--del);--keep:#5fe3a1;--keep-tonal:#5fe3a12e;--del:#ff6b6b;--del-tonal:#ff6b6b2e;--radius-xl:32px;--radius-l:24px;--radius-m:16px;--spring:linear(0, .009, .035 2.1%, .141 4.4%, .723 12.9%, .938 16.7%, 1.017, 1.077 24.3%, 1.104, 1.111 29.9%, 1.1, 1.074 37.6%, 1.007 46.5%, .987 52%, .981, .985 63.6%, 1.002 79.7%, 1);--ease:cubic-bezier(.2, 0, 0, 1);--nav-h:76px;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px);font-family:Segoe UI Variable Text,Segoe UI Variable,Segoe UI,Selawik,-apple-system,BlinkMacSystemFont,system-ui,sans-serif}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef1f6;--mica-1:#d6e8fb;--mica-2:#e8e2f6;--surface:#ffffffb3;--surface-strong:#fff;--surface-hi:#0000000b;--stroke:#00000014;--text:#15171c;--text-2:#5c6170;--accent-ink:#0b7cc0;--accent-tonal:#4cc2ff3d;--keep-ink:#0f9a5c;--del-ink:#d64545}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:var(--app-h,100%);background:var(--bg);color:var(--text);overscroll-behavior:none;margin:0;overflow:hidden}body{-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none}[hidden]{display:none!important}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:650}.ic{flex:none;width:22px;height:22px}.ic-sm{width:16px;height:16px}.ic-lg{width:30px;height:30px}.mica{z-index:-1;pointer-events:none;background:radial-gradient(70% 55% at 10% 0%, color-mix(in srgb, var(--mica-1) 85%, transparent), transparent 75%), radial-gradient(75% 60% at 95% 100%, color-mix(in srgb, var(--mica-2) 85%, transparent), transparent 75%), var(--bg);position:fixed;inset:0}.acrylic{background:var(--surface);-webkit-backdrop-filter:blur(30px)saturate(160%);border:1px solid var(--stroke)}.screen{height:var(--app-h,100dvh);padding-top:var(--safe-t);flex-direction:column;display:flex;position:fixed;top:0;left:0;right:0}.signin{justify-content:center;align-items:center;padding:24px}.signin-card{text-align:center;max-width:380px;animation:rise .7s var(--spring) both;justify-items:center;gap:16px;display:grid}.signin-logo{border-radius:28px;width:96px;height:96px;box-shadow:0 18px 50px #00000059}.signin h1{font-size:34px}.signin p{color:var(--text-2);margin:0;line-height:1.45}.fine{color:var(--text-2);font-size:12.5px}.btn{transition:transform .35s var(--spring), border-radius .3s var(--ease), background .2s;border-radius:999px;padding:12px 22px;font-weight:600}.btn:active{border-radius:14px;transform:scale(.96)}.btn-xl{width:100%;padding:16px 24px;font-size:16px}.btn-filled{background:var(--accent);color:var(--on-accent)}.btn-tonal{background:var(--accent-tonal);color:var(--accent-ink)}.btn-outline{border:1px solid var(--stroke);background:var(--surface-hi)}.btn-danger{background:var(--del);color:#fff}.btn-text{color:var(--accent-ink)}.topbar{border-radius:var(--radius-l);z-index:5;align-items:center;gap:12px;margin:10px 12px 0;padding:10px 12px;display:flex}.topbar-tall{flex-direction:column;align-items:stretch;gap:10px;padding:16px}.title{font-size:28px}.subtitle{color:var(--text-2);margin:0;font-size:14px}.chip{background:var(--accent-tonal);color:var(--accent-ink);max-width:62%;transition:transform .35s var(--spring);border-radius:999px;align-items:center;gap:8px;padding:9px 14px;font-weight:600;display:flex}.chip:active{transform:scale(.95)}.chip span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.progress-wrap{flex:1;gap:4px;min-width:0;display:grid}.progress{background:var(--surface-hi);border-radius:99px;height:6px;overflow:hidden}.progress-bar{background:linear-gradient(90deg, var(--accent), var(--keep));width:0;height:100%;transition:width .5s var(--ease);border-radius:99px}.progress-text{color:var(--text-2);text-align:right;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.stage{flex:1;margin:12px 14px 0;position:relative}.card{border-radius:var(--radius-xl);background:var(--surface-strong);box-shadow:0 24px 60px #00000059, 0 0 0 1px var(--stroke);touch-action:none;will-change:transform;transition:transform .55s var(--spring), opacity .3s;cursor:grab;position:absolute;inset:0;overflow:hidden}.card.dragging{cursor:grabbing;transition:none}.card.behind{opacity:.7;pointer-events:none;transform:scale(.94)translateY(14px)}.card.behind2{opacity:.35;pointer-events:none;transform:scale(.88)translateY(28px)}.card img,.card video{object-fit:contain;pointer-events:none;background:#000;width:100%;height:100%;position:absolute;inset:0}.card .meta{border-radius:var(--radius-m);-webkit-backdrop-filter:blur(20px);color:#fff;background:#0a0c108c;justify-content:space-between;gap:10px;padding:10px 14px;font-size:13px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.card .meta b{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.card .meta span{opacity:.75;white-space:nowrap}.card .play{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;background:#00000073;border-radius:26px;place-items:center;width:72px;height:72px;margin:-36px 0 0 -36px;display:grid;position:absolute;top:50%;left:50%}.stamp{letter-spacing:.06em;opacity:0;background:#00000059;border:3px solid;border-radius:14px;padding:8px 16px;font-size:20px;font-weight:800;transition:opacity .1s;position:absolute;top:22px;transform:scale(.8)}.stamp-keep{color:var(--keep);left:20px;rotate:-12deg}.stamp-del{color:var(--del);right:20px;rotate:12deg}.card.fly-left{opacity:0;transition:transform .45s var(--ease), opacity .45s;transform:translate(-140%)rotate(-24deg)!important}.card.fly-right{opacity:0;transition:transform .45s var(--ease), opacity .45s;transform:translate(140%)rotate(24deg)!important}.actions{justify-content:center;align-items:center;gap:18px;padding:16px 0 14px;display:flex}.fab{transition:transform .45s var(--spring), border-radius .35s var(--ease), background .2s;border-radius:22px;place-items:center;display:grid}.fab:active{border-radius:50%;transform:scale(.9)}.fab-sm{background:var(--surface);border:1px solid var(--stroke);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:52px;height:52px}.fab-delete{background:var(--del-tonal);color:var(--del-ink)}.fab-keep{background:var(--keep-tonal);color:var(--keep-ink)}.fab:disabled{opacity:.35}.empty,.loading{text-align:center;place-content:center;justify-items:center;gap:14px;padding:24px;display:grid;position:absolute;inset:0}.empty p{color:var(--text-2);max-width:300px;margin:0}.empty-badge{background:var(--keep-tonal);width:84px;height:84px;color:var(--keep);animation:pop .8s var(--spring) both;border-radius:30px;place-items:center;display:grid}.bottom-nav{left:10px;right:10px;top:calc(var(--app-h,100dvh) - var(--nav-h) - var(--safe-b) - 8px);height:var(--nav-h);z-index:20;border-radius:28px;justify-content:space-around;align-items:center;display:flex;position:fixed}.nav-item{color:var(--text-2);flex:1;justify-items:center;gap:4px;font-size:12px;font-weight:600;display:grid}.nav-item .pill{width:60px;height:32px;transition:background .3s var(--ease), width .45s var(--spring);border-radius:16px;place-items:center;display:grid;position:relative}.nav-item.active{color:var(--text)}.nav-item.active .pill{background:var(--accent-tonal);color:var(--accent-ink);width:64px}.badge{background:var(--del);color:#fff;text-align:center;border-radius:9px;min-width:18px;height:18px;padding:0 5px;font-size:11px;line-height:18px;position:absolute;top:-4px;right:6px}.list-wrap{-webkit-overflow-scrolling:touch;flex:1;padding:12px 12px 24px;overflow-y:auto}.list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.list li{border-radius:var(--radius-m);background:var(--surface);border:1px solid var(--stroke);cursor:pointer;transition:transform .35s var(--spring), border-radius .3s var(--ease);align-items:center;gap:12px;padding:14px 16px;display:flex}.list li:active{border-radius:24px;transform:scale(.98)}.list li .ic{color:var(--accent-ink)}.list li .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.list li small{color:var(--text-2);white-space:nowrap}.list-compact li{padding:12px 14px}.segmented{scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.segmented::-webkit-scrollbar{display:none}.segmented button{background:var(--surface-hi);white-space:nowrap;transition:background .2s, transform .35s var(--spring);border-radius:999px;padding:8px 14px;font-size:13.5px;font-weight:600}.segmented button.on{background:var(--accent);color:var(--on-accent)}.crumbs{color:var(--text-2);flex-wrap:wrap;gap:2px;font-size:13px;display:flex}.crumbs button{color:var(--text-2);border-radius:8px;padding:4px 6px}.crumbs button:last-child{color:var(--text);font-weight:600}.review-here{border-radius:var(--radius-l);background:var(--accent);width:100%;color:var(--on-accent);text-align:left;transition:transform .4s var(--spring), border-radius .3s;align-items:center;gap:14px;margin-bottom:12px;padding:16px;display:flex}.review-here:active{border-radius:18px;transform:scale(.98)}.rh-icon{background:#ffffff38;border-radius:14px;place-items:center;width:40px;height:40px;display:grid}.rh-text{flex:1;display:grid}.rh-text small{opacity:.8}.grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:6px;display:grid}.tile{aspect-ratio:1;background:var(--surface-strong);animation:pop .5s var(--spring) both;border-radius:14px;position:relative;overflow:hidden}.tile img{object-fit:cover;width:100%;height:100%;display:block}.tile button{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000008c;border-radius:12px;place-items:center;width:34px;height:34px;display:grid;position:absolute;bottom:6px;right:6px}.bin-footer{text-align:center;gap:8px;margin-top:18px;display:grid}.card-group{border-radius:var(--radius-l);background:var(--surface);border:1px solid var(--stroke);margin-bottom:14px;overflow:hidden}.row{border-bottom:1px solid var(--stroke);justify-content:space-between;align-items:center;gap:12px;padding:15px 16px;display:flex}.row:last-child{border-bottom:0}.row span{color:var(--text-2)}.row small{color:var(--text-2);text-align:right}.toggle input{display:none}.toggle i{background:var(--surface-hi);border:2px solid var(--text-2);border-radius:16px;width:52px;height:32px;transition:background .2s;position:relative}.toggle i:after{content:"";background:var(--text-2);width:16px;height:16px;transition:all .4s var(--spring);border-radius:50%;position:absolute;top:6px;left:6px}.toggle input:checked+i{background:var(--accent);border-color:var(--accent-ink)}.toggle input:checked+i:after{background:var(--on-accent);width:24px;height:24px;top:2px;left:24px}.sheet-backdrop{z-index:40;background:#00000073;justify-content:center;align-items:flex-end;animation:.2s both fade;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:560px;max-height:80vh;padding:10px 16px calc(20px + var(--safe-b));animation:slideup .55s var(--spring) both;border-radius:32px 32px 0 0;gap:12px;display:grid;overflow-y:auto}.sheet h2{font-size:22px}.sheet h3{color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:600}.grabber{background:var(--text-2);opacity:.5;border-radius:3px;justify-self:center;width:40px;height:5px}#dialog{align-items:center}.dialog{width:min(92vw,400px);animation:pop .45s var(--spring) both;border-radius:28px;gap:12px;padding:24px;display:grid}.dialog p{color:var(--text-2);margin:0;line-height:1.45}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.viewer{z-index:50;background:#000;grid-template-rows:1fr auto;animation:.2s both fade;display:grid;position:fixed;inset:0}.viewer-media{position:relative;overflow:hidden}.viewer-media img,.viewer-media video{object-fit:contain;width:100%;height:100%}.viewer-close{top:calc(12px + var(--safe-t));z-index:2;position:absolute;right:12px}.viewer-info{margin:0 12px calc(12px + var(--safe-b));border-radius:var(--radius-l);gap:4px;padding:14px 16px;font-size:13.5px;display:grid}.viewer-info b{word-break:break-all;font-size:15px}.viewer-info span{color:var(--text-2)}.toast{left:50%;bottom:calc(var(--nav-h) + var(--safe-b) + 108px);z-index:60;background:var(--text);color:var(--bg);animation:rise .45s var(--spring) both;text-align:center;border-radius:16px;max-width:90vw;padding:12px 18px;font-size:14px;font-weight:600;position:fixed;transform:translate(-50%)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translate(var(--tx,0), 24px)}}.toast{--tx:-50%}@keyframes pop{0%{opacity:0;transform:scale(.85)}}@keyframes slideup{0%{transform:translateY(100%)}}.screen{max-width:560px;margin-left:auto;margin-right:auto}#tab-swipe.screen{max-width:1200px}#tab-swipe .topbar{align-self:center;width:min(560px,100% - 24px)}.stage{margin:clamp(10px,1.6vw,16px) clamp(12px,2.2vw,24px) 0}.bottom-nav{width:min(560px,100% - 20px);left:50%;right:auto;translate:-50%}.grid{grid-template-columns:repeat(auto-fill,minmax(clamp(96px,14vw,128px),1fr))}.card.shaped img{object-fit:cover}.card.shaped.dragging{transition:none}@media (prefers-reduced-motion:reduce){*{transition-duration:10ms!important;animation-duration:10ms!important}}.sprite{width:0;height:0;position:absolute;overflow:hidden}.nav-item .ic-on{display:none}.nav-item.active .ic-on{display:block}.nav-item.active .ic-off{display:none}.nav-item .pill>.ic,.nav-item .trash,.fab .ic{transform-origin:50%}.nav-item.anim[data-go=swipe] .pill>.ic{animation:shuffle .6s var(--ease)}.nav-item.anim[data-go=settings] .pill>.ic{animation:gear .7s var(--spring)}.trash{width:22px;height:22px;display:block;position:relative}.trash.ic-on{display:none}.nav-item.active .trash.ic-on{display:block}.nav-item.active .trash.ic-off{display:none}.trash .ic{position:absolute;inset:0}.trash .body{clip-path:inset(29% 0 0)}.trash .lid{clip-path:inset(0 0 71%);transform-origin:18% 27%}#act-delete.anim .ic{animation:twist .45s var(--spring)}#act-undo.anim .ic{animation:rewind .55s var(--spring)}.meta-info.anim{animation:bounce .5s var(--spring)}@keyframes shuffle{20%{transform:translate(-3px)rotate(-12deg)}45%{transform:translate(3px)rotate(10deg)}70%{transform:translate(-1px)rotate(-4deg)}}@keyframes gear{0%{transform:rotate(0)}to{transform:rotate(120deg)}}@keyframes beat{30%{transform:scale(1.3)}55%{transform:scale(.92)}75%{transform:scale(1.1)}}@keyframes twist{40%{transform:rotate(90deg)scale(.85)}}@keyframes rewind{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}@keyframes bounce{35%{transform:translateY(-5px)}65%{transform:translateY(1px)}}.folder{transform-origin:50% 80%;width:22px;height:22px;display:block;position:relative}.folder.ic-on{display:none}.nav-item.active .folder.ic-on{display:block}.nav-item.active .folder.ic-off{display:none}.folder .ic{position:absolute;inset:0}.folder .front{display:none}.folder .open{opacity:0}.nav-item.anim[data-go=folders] .folder{animation:.9s cubic-bezier(.33,0,.2,1) folder-tilt}.nav-item.anim[data-go=folders] .folder .back{animation:.9s ease-in-out folder-closed}.nav-item.anim[data-go=folders] .folder .open{animation:.9s ease-in-out folder-opened}@keyframes folder-tilt{0%{transform:none}35%,68%{transform:rotate(-14deg)translate(-1px)scale(1.06)}to{transform:none}}@keyframes folder-closed{0%,39%{opacity:1}40%,71%{opacity:0}72%,to{opacity:1}}@keyframes folder-opened{0%,16%{opacity:0}38%,72%{opacity:1}94%,to{opacity:0}}.nav-item.anim[data-go=bin] .trash .lid{animation:.9s cubic-bezier(.33,0,.2,1) lid}.nav-item.anim[data-go=bin] .trash .body{animation:.9s ease-in-out bin-dip}@keyframes lid{0%{transform:none}35%{transform:translate(-.5px,-2.5px)rotate(-26deg)}65%{transform:translate(-.5px,-2.5px)rotate(-24deg)}to{transform:none}}@keyframes bin-dip{0%,to{transform:none}35%,65%{transform:translateY(.6px)}}#app .screen{height:var(--app-h,100dvh)}#tab-swipe{padding-bottom:calc(var(--nav-h) + var(--safe-b) + 8px)}.list-wrap{padding-bottom:calc(var(--nav-h) + var(--safe-b) + 28px)}.bottom-nav{-webkit-backdrop-filter:blur(22px)saturate(180%);background:#262a346b;border:1px solid #ffffff1f;box-shadow:inset 0 1px #ffffff24,0 12px 32px #00000059}:root[data-theme=light] .bottom-nav{background:#ffffff80;border-color:#0000000f;box-shadow:inset 0 1px #fffc,0 12px 32px #0000001f}.nav-item{z-index:1;position:relative}.nav-item.active .pill{background:0 0}.nav-indicator{left:calc((var(--i,0) + .5) * 100% / 4 - 32px);pointer-events:none;z-index:0;width:64px;height:32px;transition:left .6s var(--spring);background:0 0;border-radius:16px;position:absolute;top:12px}.nav-indicator.instant{transition:none}.nav-indicator i{border-radius:inherit;background:var(--accent-tonal);width:100%;height:100%;display:block}.nav-indicator.moving i{animation:stretch .45s var(--ease)}@keyframes stretch{40%{transform:scaleX(1.35)}}#tab-swipe .topbar{position:relative;overflow:hidden}.progress-wrap{justify-content:flex-end;display:flex}.progress{background:0 0;border-radius:2px;height:2px;position:absolute;bottom:0;left:18px;right:18px}.progress-bar{background:var(--accent);opacity:.85}.progress-text{font-variant-numeric:tabular-nums;letter-spacing:.01em;opacity:.8;font-size:12.5px}.segmented.wide{background:var(--surface-hi);border-radius:999px;padding:4px}.segmented.wide button{background:0 0;flex:1}.segmented.wide button.on{background:var(--accent);color:var(--on-accent)}#theme-seg,#nav-seg{flex:1}.empty .btn{min-width:240px}.btn-danger-tonal{background:var(--del-tonal);color:var(--del-ink)}.empty .btn-filled small{opacity:.75;font-size:12.5px;font-weight:500;display:block}.list li.empty-folder{opacity:.6}.list li .done-ic{color:var(--keep-ink)!important}.list li .row-del{width:34px;height:34px;color:var(--del-ink);background:var(--del-tonal);border-radius:12px;place-items:center;display:grid}.list li small.prog{font-variant-numeric:tabular-nums}.card .card-video{opacity:0;transition:opacity .35s var(--ease)}.card.live .card-video{opacity:1}.card.shaped .card-video{object-fit:cover}.card.live .play{width:40px;height:40px;transition:all .4s var(--spring);border-radius:14px;margin:0;top:14px;left:auto;right:14px}.card.live .play .ic{width:18px;height:18px}.viewer-media{touch-action:none;cursor:zoom-in}.viewer-media img.zoomable{object-fit:fill;transform-origin:50%;will-change:transform;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:auto;max-width:none;height:auto;position:absolute}.grid-title{color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;margin:18px 4px 10px;font-size:13px;font-weight:600}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:4px}.photo-grid .tile{cursor:pointer;background:var(--surface);border-radius:10px;animation:none}.photo-grid .tile img:not([src]){visibility:hidden}.photo-grid .tile.seen img{opacity:.35;filter:saturate(.4)}.tile-seen,.tile-badge{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000080;border-radius:8px;place-items:center;width:24px;height:24px;display:grid;position:absolute}.tile-seen{color:var(--keep);bottom:5px;right:5px}.tile-badge{top:5px;left:5px}.tile-seen .ic,.tile-badge .ic{width:15px;height:15px}.move-sheet{gap:10px}.move-what{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;margin:-4px 0 2px;font-size:13.5px;overflow:hidden}.chips{scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chips button{white-space:nowrap;background:var(--accent-tonal);color:var(--accent-ink);transition:transform .35s var(--spring);border-radius:12px;align-items:center;gap:6px;padding:8px 12px;font-size:13.5px;font-weight:600;display:flex}.chips button:active{transform:scale(.95)}.chips button .ic{width:16px;height:16px}.move-list{max-height:34vh;overflow-y:auto}.move-list li.here{outline:2px solid var(--accent)}.move-new{gap:8px;display:flex}.move-new input{border:1px solid var(--stroke);background:var(--surface-hi);min-width:0;color:var(--text);font:inherit;border-radius:14px;outline:none;flex:1;padding:12px 14px;font-size:16px}.move-new input:focus{border-color:var(--accent)}.move-actions{gap:8px;display:flex}.move-actions .btn{flex:1;justify-content:center;align-items:center;gap:8px;padding:14px;display:flex}.move-actions .btn:disabled{opacity:.45}.viewer-bar{margin:0 12px calc(12px + var(--safe-b));border-radius:var(--radius-l);align-items:center;gap:12px;padding:12px 12px 12px 16px;display:flex}.viewer-bar .viewer-info{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;flex:1;min-width:0;margin:0;padding:0}.viewer-move{align-items:center;gap:6px;padding:10px 14px;display:flex}.card.fly-up{opacity:0;transition:transform .45s var(--ease), opacity .45s;transform:translateY(-130%)scale(.9)!important}.stamp-move{color:var(--accent);top:auto;bottom:90px;left:50%;translate:-50%}#act-move.anim .ic{animation:nudge .5s var(--spring)}@keyframes nudge{40%{transform:translate(4px)}}.viewer-info .place{color:var(--accent-ink);align-items:center;gap:6px;min-width:0;margin-top:4px;font-weight:600;text-decoration:none;display:flex}.viewer-info .place span{color:var(--text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.viewer-info .place em{color:var(--accent-ink);white-space:nowrap;margin-left:auto;padding-left:8px;font-size:12.5px;font-style:normal}#act-keep.anim .ic{animation:shutter .5s var(--spring)}@keyframes shutter{25%{transform:scale(.82)}55%{transform:scale(1.15)}}#stage{container-type:size}.card.shaped{width:min(100cqw, 100cqh * var(--ar));height:min(100cqh, 100cqw / var(--ar));margin:auto;inset:0}.actions{gap:clamp(8px,3vw,18px)}.fab-sm{border-radius:clamp(16px,4.5vw,22px);width:clamp(44px,12vw,52px);height:clamp(44px,12vw,52px)}.fab-lg{border-radius:clamp(22px,6.5vw,28px);width:clamp(62px,18vw,76px);height:clamp(62px,18vw,76px)}:root{--rail-w:88px;--rail-gap:12px;--rail-item:66px;--rail-pad:14px}html.nav-side .bottom-nav{left:var(--rail-gap);width:var(--rail-w);height:auto;padding:var(--rail-pad) 0;border-radius:28px;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:6px;top:50%;bottom:auto;right:auto;translate:0 -50%}html.nav-side .nav-item{flex:0 0 var(--rail-item);align-content:center}html.nav-side .nav-item .pill,html.nav-side .nav-item.active .pill{width:56px}html.nav-side .nav-indicator{width:56px;left:calc(50% - 28px);top:calc(var(--rail-pad) + var(--i,0) * (var(--rail-item) + 6px) + (var(--rail-item) - 52px) / 2 + 1px);transition:top .6s var(--spring)}html.nav-side .nav-indicator.moving i{animation:stretch-v .45s var(--ease)}@keyframes stretch-v{40%{transform:scaleY(1.3)scaleX(.9)}}html.nav-side #app .screen{left:calc(var(--rail-w) + var(--rail-gap));height:var(--app-h,100dvh);max-width:760px;margin-inline:auto;right:0}html.nav-side #app #tab-swipe.screen{max-width:none;padding-bottom:14px}html.nav-side #tab-swipe .topbar{width:min(640px,100% - 24px)}html.nav-side .list-wrap{padding-bottom:28px}html.nav-side .toast{bottom:40px}.nav-setting{display:none}@media (min-width:760px){.nav-setting{display:block}}.card .meta{cursor:pointer;align-items:center}.card .meta span{margin-left:auto}.card .meta .meta-info{opacity:.85;flex:none;width:18px;height:18px;margin-right:-2px}.spinner{background:var(--accent-tonal);width:48px;height:48px;animation:spinner-in .35s var(--spring) .25s both;border:0;border-radius:50%;position:relative}.spinner:before{content:"";background:var(--accent);animation:4.2s cubic-bezier(.4,0,.2,1) infinite spinner-morph,1.6s linear infinite spin;position:absolute;inset:7px}@keyframes spinner-in{0%{opacity:0;scale:.5}to{opacity:1;scale:1}}@keyframes spinner-morph{0%{clip-path:polygon(100% 50%,98.1% 55.1%,94.1% 59.4%,91.3% 63.4%,91.2% 68.3%,91.9% 74.2%,90.5% 79.4%,85.9% 82.4%,80.2% 83.5%,75.5% 85.2%,72.5% 89.1%,69.7% 94.2%,65.5% 97.6%,60.1% 97.3%,54.7% 94.8%,50% 93.5%,45.3% 94.8%,39.9% 97.3%,34.5% 97.6%,30.3% 94.2%,27.5% 89.1%,24.5% 85.2%,19.8% 83.5%,14.1% 82.4%,9.5% 79.4%,8.1% 74.2%,8.8% 68.3%,8.7% 63.4%,5.9% 59.4%,1.9% 55.1%,0% 50%,1.9% 44.9%,5.9% 40.6%,8.7% 36.6%,8.8% 31.7%,8.1% 25.8%,9.5% 20.6%,14.1% 17.6%,19.8% 16.5%,24.5% 14.8%,27.5% 10.9%,30.3% 5.8%,34.5% 2.4%,39.9% 2.7%,45.3% 5.2%,50% 6.5%,54.7% 5.2%,60.1% 2.7%,65.5% 2.4%,69.7% 5.8%,72.5% 10.9%,75.5% 14.8%,80.2% 16.5%,85.9% 17.6%,90.5% 20.6%,91.9% 25.8%,91.2% 31.7%,91.3% 36.6%,94.1% 40.6%,98.1% 44.9%)}14.29%{clip-path:polygon(100% 50%,97.9% 55%,93.1% 59.2%,89.1% 62.7%,88.2% 67%,89.4% 72.7%,89.7% 78.9%,87% 83.3%,81.4% 84.8%,75.1% 84.6%,70.5% 85.4%,67.4% 89.1%,64.5% 94.6%,60.3% 98.7%,55.1% 98.9%,50% 95.5%,45.6% 91.5%,41.4% 90.2%,36.4% 91.9%,30.4% 94%,25% 93.3%,21.7% 88.9%,20.5% 82.7%,19.4% 77.5%,16.2% 74.6%,10.6% 72.7%,5.1% 70%,2.7% 65.4%,4.2% 59.7%,7.5% 54.5%,9.1% 50%,7.5% 45.5%,4.2% 40.3%,2.7% 34.6%,5.1% 30%,10.6% 27.3%,16.2% 25.4%,19.4% 22.5%,20.5% 17.3%,21.7% 11.1%,25% 6.7%,30.4% 6%,36.4% 8.1%,41.4% 9.8%,45.6% 8.5%,50% 4.5%,55.1% 1.1%,60.3% 1.3%,64.5% 5.4%,67.4% 10.9%,70.5% 14.6%,75.1% 15.4%,81.4% 15.2%,87% 16.7%,89.7% 21.1%,89.4% 27.3%,88.2% 33%,89.1% 37.3%,93.1% 40.8%,97.9% 45%)}28.57%{clip-path:polygon(100% 50%,99% 55.1%,96.1% 59.8%,92.1% 63.7%,87.8% 66.8%,84% 69.6%,81.1% 72.6%,79.2% 76.3%,77.7% 80.7%,76% 85.8%,73.6% 90.8%,70% 95%,65.5% 97.6%,60.2% 98.2%,54.9% 96.9%,50% 94.2%,45.7% 91.1%,41.8% 88.4%,38.1% 86.6%,34% 85.9%,29.3% 85.8%,24% 85.8%,18.5% 85%,13.4% 82.9%,9.5% 79.4%,7.4% 74.6%,7% 69.2%,7.9% 63.7%,9.5% 58.6%,10.9% 54.1%,11.5% 50%,10.9% 45.9%,9.5% 41.4%,7.9% 36.3%,7% 30.8%,7.4% 25.4%,9.5% 20.6%,13.4% 17.1%,18.5% 15%,24% 14.2%,29.3% 14.2%,34% 14.1%,38.1% 13.4%,41.8% 11.6%,45.7% 8.9%,50% 5.8%,54.9% 3.1%,60.2% 1.8%,65.5% 2.4%,70% 5%,73.6% 9.2%,76% 14.2%,77.7% 19.3%,79.2% 23.7%,81.1% 27.4%,84% 30.4%,87.8% 33.2%,92.1% 36.3%,96.1% 40.2%,99% 44.9%)}42.86%{clip-path:polygon(100% 50%,99.6% 55.2%,98.3% 60.3%,96.3% 65%,93.6% 69.4%,90.3% 73.3%,86.6% 76.6%,82.6% 79.3%,78.4% 81.5%,74.1% 83.1%,69.8% 84.3%,65.7% 85.2%,61.6% 85.7%,57.7% 86%,53.8% 86.2%,50% 86.2%,46.2% 86.2%,42.3% 86%,38.4% 85.7%,34.3% 85.2%,30.2% 84.3%,25.9% 83.1%,21.6% 81.5%,17.4% 79.3%,13.4% 76.6%,9.7% 73.3%,6.4% 69.4%,3.7% 65%,1.7% 60.3%,.4% 55.2%,0% 50%,.4% 44.8%,1.7% 39.7%,3.7% 35%,6.4% 30.6%,9.7% 26.7%,13.4% 23.4%,17.4% 20.7%,21.6% 18.5%,25.9% 16.9%,30.2% 15.7%,34.3% 14.8%,38.4% 14.3%,42.3% 14%,46.2% 13.8%,50% 13.8%,53.8% 13.8%,57.7% 14%,61.6% 14.3%,65.7% 14.8%,69.8% 15.7%,74.1% 16.9%,78.4% 18.5%,82.6% 20.7%,86.6% 23.4%,90.3% 26.7%,93.6% 30.6%,96.3% 35%,98.3% 39.7%,99.6% 44.8%)}57.14%{clip-path:polygon(100% 50%,98.6% 55.1%,95.4% 59.6%,91.9% 63.6%,89.8% 67.7%,89.1% 72.5%,88.6% 78.1%,86.9% 83.3%,83.3% 86.9%,78.1% 88.6%,72.5% 89.1%,67.7% 89.8%,63.6% 91.9%,59.6% 95.4%,55.1% 98.6%,50% 100%,44.9% 98.6%,40.4% 95.4%,36.4% 91.9%,32.3% 89.8%,27.5% 89.1%,21.9% 88.6%,16.7% 86.9%,13.1% 83.3%,11.4% 78.1%,10.9% 72.5%,10.2% 67.7%,8.1% 63.6%,4.6% 59.6%,1.4% 55.1%,0% 50%,1.4% 44.9%,4.6% 40.4%,8.1% 36.4%,10.2% 32.3%,10.9% 27.5%,11.4% 21.9%,13.1% 16.7%,16.7% 13.1%,21.9% 11.4%,27.5% 10.9%,32.3% 10.2%,36.4% 8.1%,40.4% 4.6%,44.9% 1.4%,50% 0%,55.1% 1.4%,59.6% 4.6%,63.6% 8.1%,67.7% 10.2%,72.5% 10.9%,78.1% 11.4%,83.3% 13.1%,86.9% 16.7%,88.6% 21.9%,89.1% 27.5%,89.8% 32.3%,91.9% 36.4%,95.4% 40.4%,98.6% 44.9%)}71.43%{clip-path:polygon(100% 50%,99.3% 55.2%,97.2% 60%,94% 64.3%,90.3% 67.9%,86.3% 71%,82.6% 73.7%,79.3% 76.4%,76.4% 79.3%,73.7% 82.6%,71% 86.3%,67.9% 90.3%,64.3% 94%,60% 97.2%,55.2% 99.3%,50% 100%,44.8% 99.3%,40% 97.2%,35.7% 94%,32.1% 90.3%,29% 86.3%,26.3% 82.6%,23.6% 79.3%,20.7% 76.4%,17.4% 73.7%,13.7% 71%,9.7% 67.9%,6% 64.3%,2.8% 60%,.7% 55.2%,0% 50%,.7% 44.8%,2.8% 40%,6% 35.7%,9.7% 32.1%,13.7% 29%,17.4% 26.3%,20.7% 23.6%,23.6% 20.7%,26.3% 17.4%,29% 13.7%,32.1% 9.7%,35.7% 6%,40% 2.8%,44.8% .7%,50% 0%,55.2% .7%,60% 2.8%,64.3% 6%,67.9% 9.7%,71% 13.7%,73.7% 17.4%,76.4% 20.7%,79.3% 23.6%,82.6% 26.3%,86.3% 29%,90.3% 32.1%,94% 35.7%,97.2% 40%,99.3% 44.8%)}85.71%{clip-path:polygon(100% 50%,99.7% 55.2%,98.9% 60.4%,97.6% 65.5%,95.7% 70.3%,93.3% 75%,90.5% 79.4%,87.2% 83.5%,83.5% 87.2%,79.4% 90.5%,75% 93.3%,70.3% 95.7%,65.5% 97.6%,60.4% 98.9%,55.2% 99.7%,50% 100%,44.8% 99.7%,39.6% 98.9%,34.5% 97.6%,29.7% 95.7%,25% 93.3%,20.6% 90.5%,16.5% 87.2%,12.8% 83.5%,9.5% 79.4%,6.7% 75%,4.3% 70.3%,2.4% 65.5%,1.1% 60.4%,.3% 55.2%,0% 50%,.3% 44.8%,1.1% 39.6%,2.4% 34.5%,4.3% 29.7%,6.7% 25%,9.5% 20.6%,12.8% 16.5%,16.5% 12.8%,20.6% 9.5%,25% 6.7%,29.7% 4.3%,34.5% 2.4%,39.6% 1.1%,44.8% .3%,50% 0%,55.2% .3%,60.4% 1.1%,65.5% 2.4%,70.3% 4.3%,75% 6.7%,79.4% 9.5%,83.5% 12.8%,87.2% 16.5%,90.5% 20.6%,93.3% 25%,95.7% 29.7%,97.6% 34.5%,98.9% 39.6%,99.7% 44.8%)}to{clip-path:polygon(100% 50%,98.1% 55.1%,94.1% 59.4%,91.3% 63.4%,91.2% 68.3%,91.9% 74.2%,90.5% 79.4%,85.9% 82.4%,80.2% 83.5%,75.5% 85.2%,72.5% 89.1%,69.7% 94.2%,65.5% 97.6%,60.1% 97.3%,54.7% 94.8%,50% 93.5%,45.3% 94.8%,39.9% 97.3%,34.5% 97.6%,30.3% 94.2%,27.5% 89.1%,24.5% 85.2%,19.8% 83.5%,14.1% 82.4%,9.5% 79.4%,8.1% 74.2%,8.8% 68.3%,8.7% 63.4%,5.9% 59.4%,1.9% 55.1%,0% 50%,1.9% 44.9%,5.9% 40.6%,8.7% 36.6%,8.8% 31.7%,8.1% 25.8%,9.5% 20.6%,14.1% 17.6%,19.8% 16.5%,24.5% 14.8%,27.5% 10.9%,30.3% 5.8%,34.5% 2.4%,39.9% 2.7%,45.3% 5.2%,50% 6.5%,54.7% 5.2%,60.1% 2.7%,65.5% 2.4%,69.7% 5.8%,72.5% 10.9%,75.5% 14.8%,80.2% 16.5%,85.9% 17.6%,90.5% 20.6%,91.9% 25.8%,91.2% 31.7%,91.3% 36.6%,94.1% 40.6%,98.1% 44.9%)}}.card{transition:transform .55s var(--spring), opacity .35s var(--ease), scale .55s var(--spring);scale:1}.card.shaped{transition:transform .55s var(--spring), opacity .35s var(--ease), scale .55s var(--spring)}.card.dragging,.card.shaped.dragging{transition:none}.card:not(.has-photo){opacity:0;pointer-events:none;scale:.92}.card.has-photo:not(.no-preview){background:#000}.card img,.card img.ready{opacity:1}.card.no-preview:after{content:"No preview";color:var(--text-2);place-items:center;font-size:14px;display:grid;position:absolute;inset:0}.stage-spinner{z-index:5;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.accent-pick{flex-direction:column;align-items:stretch;gap:14px}.swatches{grid-template-columns:repeat(auto-fill,minmax(48px,1fr));justify-items:center;gap:10px;display:grid}.swatch{background:var(--sw);width:40px;height:40px;transition:border-radius .35s var(--spring), transform .45s var(--spring);border-radius:50%;place-items:center;display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffffff1f}.swatch:active{transform:scale(.88)}.swatch.on{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--sw);border-radius:14px}.swatch svg{fill:none;width:20px;height:20px;stroke:var(--on-accent);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:22;stroke-dashoffset:22px;transition:stroke-dashoffset .35s var(--ease) 50ms}.swatch.on svg{stroke-dashoffset:0}.swatch.anim{animation:swatch-pop .5s var(--spring)}@keyframes swatch-pop{40%{scale:.85}}.hex-row{align-items:center;gap:10px;display:flex}.swatch.custom{cursor:pointer;color:#fff;background:var(--sw,conic-gradient(from 90deg, #ff6f7d, #f7d154, #6ccb5f, #3fd5c9, #4cc2ff, #b98bff, #ff7ac6, #ff6f7d));flex:none;overflow:hidden}.swatch.custom.on{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--accent)}.swatch.custom .ic{filter:drop-shadow(0 1px 2px #00000059);width:18px;height:18px}.swatch.custom input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.hex-field{background:var(--surface-hi);border:1.5px solid #0000;border-radius:14px;flex:1;align-items:center;gap:2px;min-width:0;height:40px;padding:0 14px;transition:border-color .2s;display:flex}.hex-field:focus-within{border-color:var(--accent)}.hex-field span{color:var(--text-2);font-weight:600}.hex-field input{min-width:0;color:var(--text);font:inherit;letter-spacing:.06em;text-transform:uppercase;-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:0;flex:1;font-weight:600}.hex-field:has(input.bad){border-color:var(--del)}#accent-reset{flex:none;padding:8px 12px}.actions .fab{-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid #ffffff1f;box-shadow:inset 0 1px #ffffff29,0 10px 26px #00000047}.actions .fab-sm{background:#262a346b}.actions .fab-delete{background:color-mix(in srgb, var(--del) 20%, #262a3459);border-color:color-mix(in srgb, var(--del) 30%, transparent)}.actions .fab-keep{background:color-mix(in srgb, var(--keep) 20%, #262a3459);border-color:color-mix(in srgb, var(--keep) 30%, transparent)}:root[data-theme=light] .actions .fab{border-color:#0000000f;box-shadow:inset 0 1px #fffc,0 10px 26px #0000001a}:root[data-theme=light] .actions .fab-sm{background:#ffffff80}:root[data-theme=light] .actions .fab-delete{background:color-mix(in srgb, var(--del) 18%, #ffffff73)}:root[data-theme=light] .actions .fab-keep{background:color-mix(in srgb, var(--keep) 18%, #ffffff73)}.changelog summary{cursor:pointer;color:var(--text-2);justify-content:space-between;align-items:center;padding:15px 16px;list-style:none;display:flex}.changelog summary::-webkit-details-marker{display:none}.changelog .chev{width:18px;height:18px;transition:rotate .35s var(--spring)}.changelog[open] .chev{rotate:180deg}.changelog ul{animation:fade .3s var(--ease);gap:10px;margin:0;padding:0 16px 12px;list-style:none;display:grid}.changelog li{grid-template-columns:58px 1fr;gap:8px;font-size:13.5px;line-height:1.4;display:grid}.changelog li b{color:var(--accent-ink);font-weight:600}.changelog li span{color:var(--text)}.about .row{border-bottom:1px solid var(--stroke)}.spinner.mini{background:0 0;flex:none;width:20px;height:20px;animation:none;display:none}.spinner.mini:before{inset:1px}.topbar.is-loading .chip-folder{display:none}.topbar.is-loading .spinner.mini{animation:spinner-in .35s var(--spring) both;display:block}.topbar.is-loading .progress-text{color:var(--accent-ink)}.topbar.is-loading .progress-bar{animation:1.3s cubic-bezier(.4,0,.2,1) infinite indeterminate;width:35%!important}@keyframes indeterminate{0%{translate:-110%}to{translate:300%}}:root{--screen-r:0px;--card-r:var(--radius-xl);--bar-pad:10px}.topbar{padding:var(--bar-pad) calc(var(--bar-pad) + 6px) var(--bar-pad) var(--bar-pad);border-radius:999px}.progress{left:30px;right:30px}.bottom-nav{border-radius:calc(var(--nav-h) / 2)}html.nav-side .bottom-nav{border-radius:calc(var(--rail-w) / 2)}.card{border-radius:var(--card-r)}.card .meta{border-radius:calc(var(--card-r) - 12px)}.card.live .play{border-radius:calc(var(--card-r) - 14px)}.stamp{border-radius:16px}.sheet-backdrop{padding:0 8px 8px}.sheet{border-radius:32px 32px max(28px, calc(var(--screen-r) - 8px)) max(28px, calc(var(--screen-r) - 8px));padding-bottom:calc(16px + max(0px, var(--safe-b) - 8px))}.toast{border-radius:999px;padding:12px 20px}.viewer-info,.viewer-bar{border-radius:28px}.viewer-bar{padding-left:20px}.list li{border-radius:20px}.list li .row-del{border-radius:10px}.review-here{border-radius:28px}.rh-icon{border-radius:14px}.hex-field{border-radius:999px}.move-new input{border-radius:999px;padding-inline:18px}.chips button{border-radius:999px;padding-inline:14px}.tile button{border-radius:8px}.photo-grid .tile{border-radius:12px}.tile-seen,.tile-badge{border-radius:7px}.dialog{border-radius:32px;padding:24px}.dialog .btn{border-radius:999px}.topbar.topbar-tall{border-radius:36px;padding:16px}.topbar-tall .title,.topbar-tall .subtitle,.topbar-tall .crumbs{padding-inline:4px}#tab-bin .grid .tile img{cursor:pointer}.viewer-actions{flex:none;align-items:center;gap:6px;display:flex}.viewer-icon{background:var(--surface-hi);width:44px;height:44px;color:var(--text);transition:transform .4s var(--spring), background .2s;border-radius:999px;place-items:center;display:grid}.viewer-icon:active{transform:scale(.88)}.viewer-icon.anim .ic{animation:swatch-pop .5s var(--spring)}.viewer-move{border-radius:999px}#move-sheet,#dialog{z-index:55}#stage{--reveal:0}.card.behind.has-photo{opacity:var(--reveal);transform:scale(calc(.94 + .06 * var(--reveal)))}.card.behind2{opacity:0!important}.card.fly-left,.card.fly-right,.card.fly-up{pointer-events:none}.viewer{--dismiss:0;background:rgb(0 0 0/calc(1 - var(--dismiss) * .8));transition:opacity .24s var(--ease)}.viewer .viewer-bar,.viewer .viewer-close{opacity:calc(1 - var(--dismiss) * 1.6)}.viewer.closing{opacity:0}.viewer-media img.zoomable.animate{transition:transform .35s var(--spring)}.viewer.closing .viewer-media img.zoomable.animate{transition:transform .26s var(--ease)}.card.fly-left,.card.fly-right,.card.fly-up{transition:transform .42s cubic-bezier(.2,0,0,1),opacity .32s cubic-bezier(.3,0,.8,.15)!important}#app .tab:not([hidden]){view-transition-name:tab}::view-transition{pointer-events:none}::view-transition-old(root){opacity:0;animation:none}::view-transition-new(root){animation:none}::view-transition-group(tab){animation:none}::view-transition-old(tab){animation:.16s cubic-bezier(.4,0,1,1) both tab-out}::view-transition-new(tab){animation:.46s cubic-bezier(.05,.7,.1,1) 70ms both tab-in}:root{--tab-out:-28px 0;--tab-in:48px 0}:root[data-tab-dir=back]{--tab-out:28px 0;--tab-in:-48px 0}html.nav-side{--tab-out:0 -28px;--tab-in:0 48px}html.nav-side[data-tab-dir=back]{--tab-out:0 28px;--tab-in:0 -48px}@keyframes tab-out{to{opacity:0;translate:var(--tab-out)}}@keyframes tab-in{0%{opacity:0;translate:var(--tab-in)}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}
