@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(./figtree-latin-ext-wght-normal-DCwSJGxG.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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(./figtree-latin-wght-normal-D_ZTVpCC.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{--snap:#fffc00;--snap-ink:#0a0a0a;--bg:#fff;--fg:#0a0a0a;--surface:#f1f1f1;--surface-2:#e6e6e6;--muted:#7a7a7a;--line:#00000014;--header-bg:#ffffffd1;--shadow:0 10px 40px #0000001f;--radius:10px;--ease:cubic-bezier(.2, .8, .2, 1);--font:"Figtree Variable", "Figtree", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#000;--fg:#f5f5f5;--surface:#161616;--surface-2:#222;--muted:#8d8d8d;--line:#ffffff14;--header-bg:#000000c7;--shadow:0 10px 40px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{font-family:var(--font);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow-x:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}:focus-visible{outline:3px solid var(--snap);outline-offset:2px;border-radius:8px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.brand{letter-spacing:-.02em;align-items:center;gap:10px;font-size:20px;font-weight:800;text-decoration:none;display:inline-flex}.brand svg{flex:none;width:34px;height:34px}.btn{letter-spacing:-.01em;height:54px;transition:transform .25s var(--ease), background-color .2s, box-shadow .25s var(--ease);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 26px;font-size:17px;font-weight:750;display:inline-flex}.btn:active{transform:scale(.96)}.btn svg{width:20px;height:20px}.btn-dark{background:var(--snap-ink);color:#fff;box-shadow:0 8px 24px #0000002e}.btn-dark:hover{transform:translateY(-2px);box-shadow:0 14px 30px #0000003d}.btn-ghost{color:var(--snap-ink);background:#00000012}.btn-ghost:hover{background:#0000001f}.icon-btn{background:var(--surface);width:40px;height:40px;transition:background-color .2s, transform .2s var(--ease);border-radius:999px;place-items:center;display:grid}.icon-btn:hover{background:var(--surface-2)}.icon-btn:active{transform:scale(.92)}.icon-btn svg{width:20px;height:20px}.landing{background:var(--snap);min-height:100dvh;color:var(--snap-ink);flex-direction:column;display:flex;position:relative;overflow:hidden}.landing-top{padding:calc(20px + env(safe-area-inset-top)) clamp(16px, 4vw, 48px) 20px;z-index:2;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.landing-links{gap:8px;display:flex}.landing-top .gh{background:#00000012;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:15px;font-weight:650;text-decoration:none;display:inline-flex}.landing-top .gh.install{background:var(--snap-ink);color:var(--snap)}.landing-top .gh svg{width:18px;height:18px}.landing-main{z-index:1;flex:1;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(24px,5vw,80px);padding:0 clamp(16px,4vw,48px);display:grid;position:relative}.hero h1{letter-spacing:-.055em;white-space:pre-line;margin:0 0 24px;font-size:clamp(44px,8.4vw,116px);font-weight:850;line-height:.92}.hero p{opacity:.82;max-width:34ch;margin:0 0 32px;font-size:clamp(17px,1.6vw,20px);font-weight:500;line-height:1.45}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.hero-hint{opacity:.6;margin-top:16px;font-size:14px;font-weight:600}.hero-error{background:var(--snap-ink);color:#fff;border-radius:14px;max-width:46ch;margin-top:18px;padding:12px 16px;font-size:14px;font-weight:600}.hero-note{opacity:.6;max-width:46ch;margin-top:10px;font-size:13px}.preview{background:var(--snap-ink);border-radius:40px;justify-self:center;width:100%;max-width:380px;height:min(620px,72dvh);padding:14px;position:relative;overflow:hidden;transform:rotate(3deg);box-shadow:0 40px 80px #00000040}.preview-cols{border-radius:28px;grid-template-columns:repeat(3,1fr);gap:5px;height:100%;display:grid;overflow:hidden}.preview-col{flex-direction:column;gap:5px;animation:26s linear infinite preview-scroll;display:flex}.preview-col:nth-child(2){animation-duration:32s;animation-direction:reverse}.preview-col:nth-child(3){animation-duration:22s}.preview-tile{aspect-ratio:2/3;border-radius:8px;flex:none}@keyframes preview-scroll{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.preview-scrub{background:#ffffff2e;border-radius:4px;width:4px;position:absolute;top:30px;bottom:30px;right:22px}.preview-thumb{background:var(--snap);width:20px;height:34px;animation:preview-thumb 7s var(--ease) infinite alternate;border-radius:10px;position:absolute;right:-8px}.preview-bubble{background:var(--snap);height:40px;color:var(--snap-ink);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;place-items:center;padding:8px 14px;font-size:18px;font-weight:800;display:grid;position:absolute;top:50%;right:26px;overflow:hidden;translate:0 -50%}@keyframes preview-thumb{0%{top:0%}to{top:calc(100% - 34px)}}.steps{z-index:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:28px clamp(16px,4vw,48px) 0;display:grid;position:relative}.steps h2{text-transform:uppercase;letter-spacing:.08em;opacity:.55;grid-column:1/-1;margin:0 0 4px;font-size:14px;font-weight:800}.step{background:#0000000f;border-radius:18px;align-items:flex-start;gap:12px;padding:14px 16px;font-size:14px;font-weight:600;line-height:1.35;display:flex}.step b{background:var(--snap-ink);width:26px;height:26px;color:var(--snap);border-radius:999px;flex:none;place-items:center;font-size:13px;display:grid}.landing-foot{padding:24px clamp(16px, 4vw, 48px) calc(24px + env(safe-area-inset-bottom));opacity:.6;z-index:1;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;font-size:13px;font-weight:600;display:flex;position:relative}.drop-veil{z-index:50;border:3px dashed var(--snap);color:var(--snap);letter-spacing:-.03em;text-align:center;pointer-events:none;background:#0a0a0aeb;border-radius:32px;place-items:center;padding:24px;font-size:clamp(26px,4vw,44px);font-weight:850;display:grid;position:fixed;inset:12px}@media (width<=860px){.landing-main{grid-template-columns:1fr;padding-top:12px}.preview{display:none}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.steps{grid-template-columns:1fr}.hero-actions .btn{width:100%}.landing-top a.gh span{display:none}}.loading{z-index:40;background:var(--snap);color:var(--snap-ink);text-align:center;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.loading-inner{width:min(420px,100%)}.loading-mark{width:76px;height:76px;margin:0 auto 28px}.loading-count{letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:clamp(56px,12vw,96px);font-weight:850;line-height:1}.loading-label{margin-top:10px;font-size:17px;font-weight:700}.loading-bar{background:#0000001a;border-radius:99px;height:8px;margin-top:24px;overflow:hidden}.loading-bar>div{border-radius:inherit;background:var(--snap-ink);height:100%;transition:width .3s var(--ease)}.loading-bar.indeterminate>div{width:35%;animation:indeterminate 1.1s var(--ease) infinite}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(290%)}}.loading-current{opacity:.55;white-space:nowrap;text-overflow:ellipsis;margin-top:14px;font-size:13px;font-weight:600;overflow:hidden}.lib-header{z-index:20;background:var(--header-bg);-webkit-backdrop-filter:saturate(1.6)blur(20px);position:sticky;top:0}.lib-header-row{max-width:1400px;padding:calc(14px + env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));justify-content:space-between;align-items:center;gap:12px;margin:0 auto;display:flex}.lib-title{align-items:center;gap:12px;min-width:0;display:flex}.lib-title svg{flex:none;width:36px;height:36px}.lib-title h1{letter-spacing:-.035em;margin:0;font-size:24px;font-weight:850;line-height:1.05}.lib-title small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;display:block;overflow:hidden}.lib-actions{gap:8px;display:flex;position:relative}.menu{background:var(--bg);min-width:240px;box-shadow:var(--shadow);border:1px solid var(--line);z-index:30;border-radius:18px;padding:6px;position:absolute;top:48px;right:0}.menu button{text-align:left;border-radius:12px;align-items:center;gap:10px;width:100%;padding:12px 14px;font-size:15px;font-weight:650;display:flex}.menu button:hover{background:var(--surface)}.menu svg{width:18px;height:18px}.tabs{max-width:1400px;padding:0 max(16px, env(safe-area-inset-right)) 12px max(16px, env(safe-area-inset-left));margin:0 auto}.segmented{background:var(--surface);border-radius:999px;gap:2px;padding:4px;display:inline-flex}.segmented button{height:36px;color:var(--muted);border-radius:999px;padding:0 18px;font-size:15px;font-weight:750;transition:color .2s;position:relative}.segmented button[aria-pressed=true]{color:var(--snap-ink)}.segmented .pill{background:var(--snap);z-index:0;border-radius:999px;position:absolute;inset:0}.segmented span{z-index:1;position:relative}.lib-body{max-width:1400px;padding:0 max(16px, env(safe-area-inset-right)) calc(120px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));margin:0 auto}.flashback{padding:8px 0 6px}.flashback h2{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 12px;font-size:13px;font-weight:800}.flashback-row{scrollbar-width:none;gap:16px;margin:0 -2px;padding:2px 2px 8px;display:flex;overflow-x:auto}.flashback-row::-webkit-scrollbar{display:none}.bubble{flex-direction:column;flex:none;align-items:center;gap:8px;width:84px;display:flex}.bubble-ring{background:conic-gradient(from 210deg, var(--snap), #ffd400, var(--snap));width:76px;height:76px;transition:transform .3s var(--ease);border-radius:999px;padding:3px}.bubble:hover .bubble-ring{transform:scale(1.06)}.bubble-ring>div{border:3px solid var(--bg);background:var(--surface);border-radius:999px;width:100%;height:100%;overflow:hidden}.bubble-ring img{object-fit:cover;width:100%;height:100%;display:block}.bubble small{text-align:center;font-size:12px;font-weight:750;line-height:1.2}.month-header{justify-content:space-between;align-items:baseline;height:100%;padding:22px 2px 10px;display:flex}.month-header h3{letter-spacing:-.02em;margin:0;font-size:19px;font-weight:800}.month-header span{color:var(--muted);font-size:13px;font-weight:600}.tile{border-radius:var(--radius);background:var(--surface);isolation:isolate;width:100%;height:100%;display:block;position:relative;overflow:hidden}.tile:after{content:"";border-radius:inherit;box-shadow:inset 0 0 0 0 var(--snap);transition:box-shadow .2s var(--ease);pointer-events:none;position:absolute;inset:0}.tile:hover:after{box-shadow:inset 0 0 0 3px var(--snap)}.tile img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .35s var(--ease), transform .5s var(--ease);display:block;transform:scale(1.04)}.tile img.loaded{opacity:1;transform:none}.tile .shimmer{background:linear-gradient(100deg, transparent 30%, #7f7f7f1f 50%, transparent 70%) var(--surface);background-size:250% 100%;animation:1.4s linear infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.tile-badge{color:#fff;font-variant-numeric:tabular-nums;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000008c;border-radius:999px;align-items:center;gap:4px;padding:3px 7px 3px 5px;font-size:11px;font-weight:750;display:inline-flex;position:absolute;bottom:6px;left:6px}.tile-badge svg{width:11px;height:11px}.tile-broken{color:var(--muted);place-items:center;display:grid;position:absolute;inset:0}.tile-broken svg{width:26px;height:26px}.empty{text-align:center;color:var(--muted);padding:80px 0;font-weight:650}.scrubber{right:env(safe-area-inset-right);bottom:calc(18px + env(safe-area-inset-bottom));z-index:25;touch-action:none;width:56px;transition:opacity .35s var(--ease);position:fixed}.scrubber[data-visible=false]{opacity:0;pointer-events:none}.scrubber[data-visible=false] .scrubber-handle{pointer-events:auto}.scrubber{-webkit-user-select:none;user-select:none}.scrubber-rail{background:var(--line);border-radius:4px;width:4px;transition:background-color .2s;position:absolute;top:0;bottom:0;right:12px}.scrubber[data-dragging=true] .scrubber-rail{background:color-mix(in srgb, var(--fg) 16%, transparent)}.scrubber-year{font-variant-numeric:tabular-nums;color:var(--muted);pointer-events:none;background:var(--bg);opacity:0;transition:opacity .25s var(--ease), color .2s;border-radius:6px;padding:2px 6px;font-size:12px;font-weight:800;position:absolute;right:26px;translate:0 -50%}.scrubber[data-dragging=true] .scrubber-year,.scrubber:hover .scrubber-year{opacity:1}.scrubber-year.active{color:var(--fg)}.scrubber-handle{background:var(--snap);cursor:grab;width:20px;height:44px;transition:width .2s var(--ease), right .2s var(--ease);border-radius:12px;place-items:center;display:grid;position:absolute;right:4px;box-shadow:0 4px 14px #00000040}.scrubber-handle:before{content:"";background:linear-gradient(var(--snap-ink), var(--snap-ink)) 0 0 / 100% 2px no-repeat, linear-gradient(var(--snap-ink), var(--snap-ink)) 0 50% / 100% 2px no-repeat, linear-gradient(var(--snap-ink), var(--snap-ink)) 0 100% / 100% 2px no-repeat;opacity:.7;width:8px;height:14px}.scrubber[data-dragging=true] .scrubber-handle{cursor:grabbing;width:26px;right:1px}.scrubber-bubble{background:var(--snap);color:var(--snap-ink);letter-spacing:-.01em;white-space:nowrap;pointer-events:none;font-variant-numeric:tabular-nums;border-radius:999px;padding:10px 16px;font-size:17px;font-weight:850;position:absolute;right:40px;translate:0 -50%;box-shadow:0 8px 26px #00000040}.scrubber-bubble b{font-weight:850}.viewer{z-index:60;color:#fff;touch-action:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0}.viewer-backdrop{background:#000;position:absolute;inset:0}.viewer-stage{place-items:center;display:grid;position:absolute;inset:0}.viewer-media{background:#111;position:relative;overflow:hidden}@media (width>=700px){.viewer-media{border-radius:18px}}.viewer-media img,.viewer-media video{object-fit:fill;width:100%;height:100%;display:block;position:absolute;inset:0}.viewer-media .overlay-layer{pointer-events:none;transition:opacity .25s var(--ease)}.viewer-loading{place-items:center;display:grid;position:absolute;inset:0}.spinner{border:3px solid #fff3;border-top-color:var(--snap);border-radius:999px;width:34px;height:34px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.viewer-error{text-align:center;color:#ffffffb3;place-items:center;padding:24px;font-weight:650;display:grid;position:absolute;inset:0}.viewer-top{padding:max(10px, env(safe-area-inset-top)) 12px 40px;z-index:2;pointer-events:none;background:linear-gradient(#0000008c,#0000);position:absolute;top:0;left:0;right:0}.viewer-top>*{pointer-events:auto}.viewer-top-inner{max-width:560px;margin:0 auto}@media (width>=700px){.viewer-top{padding-top:36px}.viewer-top-inner{padding:0 12px}}.segments{gap:3px;height:3px;margin-bottom:12px;display:flex}.segments>div{background:#ffffff52;border-radius:3px;flex:1;overflow:hidden}.segments>div>i{transform-origin:0;background:#fff;height:100%;display:block}.viewer-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.viewer-date{text-shadow:0 1px 8px #00000059;min-width:0}.viewer-date strong{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:800;display:block;overflow:hidden}.viewer-date span{opacity:.85;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:13px;font-weight:600;display:flex}.viewer-date a{color:var(--snap);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.viewer-date a svg{width:13px;height:13px}.viewer-buttons{flex:none;gap:6px;display:flex}.viewer-btn{-webkit-backdrop-filter:blur(10px);color:#fff;width:40px;height:40px;transition:background-color .2s, transform .2s var(--ease);background:#00000059;border-radius:999px;place-items:center;display:grid}.viewer-btn:hover{background:#0000008c}.viewer-btn:active{transform:scale(.9)}.viewer-btn[aria-pressed=true]{background:var(--snap);color:var(--snap-ink)}.viewer-btn svg{width:20px;height:20px}.viewer-nav{z-index:2;color:#fff;background:#ffffff1f;border-radius:999px;place-items:center;width:52px;height:52px;transition:background-color .2s,opacity .2s;display:grid;position:absolute;top:50%;translate:0 -50%}.viewer-nav:hover{background:#ffffff38}.viewer-nav:disabled{opacity:0;pointer-events:none}.viewer-nav svg{width:24px;height:24px}.viewer-nav.prev{left:24px}.viewer-nav.next{right:24px}@media (hover:none),(width<=700px){.viewer-nav{display:none}}.viewer-bottom{padding:40px 16px max(16px, env(safe-area-inset-bottom));z-index:2;opacity:.85;font-variant-numeric:tabular-nums;pointer-events:none;background:linear-gradient(#0000,#00000073);justify-content:center;font-size:13px;font-weight:700;display:flex;position:absolute;bottom:0;left:0;right:0}.video-progress{z-index:1;background:#fff3;height:3px;position:absolute;bottom:0;left:0;right:0}.video-progress i{background:var(--snap);transform-origin:0;height:100%;display:block}.paused-hint{pointer-events:none;z-index:1;place-items:center;display:grid;position:absolute;inset:0}.paused-hint div{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000073;border-radius:999px;place-items:center;width:72px;height:72px;display:grid}.paused-hint svg{width:30px;height:30px}.sheet-backdrop{z-index:70;background:#00000073;position:fixed;inset:0}.sheet{z-index:71;max-width:520px;padding:10px 20px calc(24px + env(safe-area-inset-bottom));background:var(--bg);color:var(--fg);touch-action:none;border-radius:28px 28px 0 0;margin:0 auto;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 40px #00000040}.sheet-grip{background:var(--surface-2);border-radius:5px;width:40px;height:5px;margin:0 auto 14px}.sheet-close{position:absolute;top:14px;right:14px}.sheet-app{align-items:center;gap:14px;margin-bottom:20px;padding-right:44px;display:flex}.sheet-app>svg{flex:none;width:56px;height:56px}.sheet-app h2{letter-spacing:-.02em;margin:0 0 4px;font-size:21px;font-weight:850}.sheet-app p{color:var(--muted);margin:0;font-size:14px;font-weight:550;line-height:1.35}.sheet-steps{gap:8px;margin:0;padding:0;list-style:none;display:grid}.sheet-steps li{background:var(--surface);border-radius:16px;align-items:center;gap:12px;padding:14px 16px;font-size:15px;font-weight:650;display:flex}.sheet-steps li span{flex:1}.sheet-steps b{background:var(--snap);width:26px;height:26px;color:var(--snap-ink);border-radius:999px;flex:none;place-items:center;font-size:13px;display:grid}.sheet-steps svg{color:#0a84ff;flex:none;width:24px;height:24px}
