:root{--ink:#0b0b0b;--paper:#f3f1ec;--ink-2:color-mix(in srgb, var(--ink) 88%, var(--paper));--ink-3:color-mix(in srgb, var(--ink) 70%, var(--paper));--line:color-mix(in srgb, var(--paper) 16%, transparent);--dim:color-mix(in srgb, var(--paper) 58%, transparent);--serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Noto Serif", Georgia, serif;--sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--tab-cut:34px;--tab-x1:34%;--tab-x2:44%;--gutter:8px;--radius:14px}*{box-sizing:border-box}html,body{background:var(--ink);color:var(--paper);margin:0;padding:0}body{font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><g fill='%23f3f1ec' fill-opacity='0.05' font-family='monospace' font-size='11'><text x='14' y='30'>~</text><text x='120' y='58'>·</text><text x='200' y='20'>-</text><text x='70' y='110'>~ ·</text><text x='170' y='150'>-</text><text x='30' y='190'>·</text><text x='130' y='210'>~</text><text x='215' y='230'>·</text></g></svg>");font-weight:300}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}img{max-width:100%;display:block}:focus-visible{outline:1px solid var(--paper);outline-offset:3px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.folder-bottom{clip-path:polygon(0 0, 100% 0, 100% 100%, var(--tab-x2) 100%, var(--tab-x1) calc(100% - var(--tab-cut)), 0 calc(100% - var(--tab-cut)))}.folder-top{clip-path:polygon(0 var(--tab-cut), calc(100% - var(--tab-x2)) var(--tab-cut), calc(100% - var(--tab-x1)) 0, 100% 0, 100% 100%, 0 100%)}.fish-canvas{pointer-events:none;z-index:30;width:100vw;height:100vh;position:fixed;inset:0}.cover{background:var(--ink-2);height:100svh;min-height:520px;position:relative;overflow:hidden}.cover-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.cover-scrim{background:linear-gradient(#00000047,#0000001a 45%,#0000009e);position:absolute;inset:0}.cover-copy{left:clamp(20px,5vw,64px);right:clamp(20px,5vw,64px);bottom:calc(var(--tab-cut) + clamp(28px, 7vh, 72px));z-index:2;position:absolute}.eyebrow{letter-spacing:.02em;color:var(--dim);margin:0 0 6px;font-size:.8rem}.title{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-size:clamp(2rem,7.5vw,4.6rem);font-weight:300;line-height:1.05}.subline{color:var(--dim);margin:10px 0 0;font-size:.85rem}.presents{color:var(--dim);margin:6px 0 22px;font-size:.85rem}.btn-line{border:1px solid var(--paper);letter-spacing:.04em;min-height:44px;color:var(--paper);background:0 0;border-radius:999px;align-items:center;gap:10px;padding:0 22px;font-size:.9rem;display:inline-flex;position:relative;overflow:hidden}.btn-line:hover{background:var(--paper);color:var(--ink)}.btn-line[aria-busy=true]{cursor:default}.btn-line .fill{background:currentColor;height:2px;transition:width .6s linear;position:absolute;bottom:0;left:0}.btn-quiet{min-height:44px;color:var(--dim);text-underline-offset:4px;padding:0 6px;font-size:.85rem;text-decoration:underline}.btn-quiet:hover{color:var(--paper)}.fine{color:var(--dim);margin:8px 0 0;font-size:.75rem}.topbar{z-index:40;height:52px;padding:0 max(14px, env(safe-area-inset-right)) 0 max(14px, env(safe-area-inset-left));background:color-mix(in srgb, var(--ink) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);align-items:center;gap:12px;transition:transform .35s;display:flex;position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.topbar[data-show=true]{transform:none}.topbar .name{min-width:0;font-family:var(--serif);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:1rem;overflow:hidden}.logo{object-fit:cover;border-radius:50%;flex:none;width:28px;height:28px}.logo-initial{border:1px solid var(--paper);border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:.8rem;display:grid}.icon-btn{width:44px;height:44px;color:var(--paper);border-radius:50%;place-items:center;display:grid}.icon-btn:hover{background:color-mix(in srgb, var(--paper) 10%, transparent)}.icon-btn svg{fill:none;stroke:currentColor;stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.icon-btn[aria-pressed=true] svg .fillable{fill:currentColor}.gallery{z-index:1;padding:clamp(20px, 4vw, 48px) var(--gutter) 40px;position:relative}.cols{gap:var(--gutter);align-items:flex-start;max-width:1680px;margin:0 auto;display:flex}.col{gap:var(--gutter);flex-direction:column;flex:1 1 0;min-width:0;display:flex}.tile{border-radius:var(--radius);background:var(--ink-2);isolation:isolate;width:100%;padding:0;display:block;position:relative;overflow:hidden}.tile img{object-fit:cover;width:100%;height:100%;transition:filter 1.2s,opacity .6s;position:absolute;inset:0}.tile .water{background-color:#050505;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><g fill='%23f3f1ec' fill-opacity='0.16' font-family='monospace' font-size='10'><text x='8' y='18'>~</text><text x='64' y='36'>·</text><text x='96' y='12'>-</text><text x='30' y='64'>~ ·</text><text x='84' y='88'>-</text><text x='14' y='108'>·</text><text x='70' y='112'>~</text></g></svg>");position:absolute;inset:0}.tile .veil{background:var(--ink);pointer-events:none;transition:opacity 1.2s;position:absolute;inset:0}.tile .glyph{width:18px;height:18px;color:var(--paper);filter:drop-shadow(0 0 2px #0009);position:absolute;top:8px;right:8px}.tile .glyph svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.tile .glyph.star{left:8px;right:auto}.tile .glyph.star svg{fill:currentColor}.tile[data-rejected=true] .reject-veil{background:#0b0b0ba8;position:absolute;inset:0}.tile[data-rejected=true] .strike{background:var(--paper);opacity:.8;height:1px;position:absolute;top:50%;left:12%;right:12%;transform:rotate(-12deg)}.sentinel{height:1px}.empty{text-align:center;color:var(--dim);font-family:var(--serif);padding:64px 0}.viewer{z-index:60;background:var(--ink);flex-direction:column;display:flex;position:fixed;inset:0}.viewer-bar{justify-content:space-between;align-items:center;height:56px;padding:0 8px;display:flex}.viewer-stage{touch-action:pan-y;flex:1;place-items:center;min-height:0;padding:0 clamp(0px,4vw,56px);display:grid;position:relative}.viewer-stage img{object-fit:contain;grid-area:1/1;width:auto;max-width:100%;height:auto;max-height:100%}.viewer-stage .under{opacity:1}.viewer-count{color:var(--dim);font-size:.8rem}.viewer-bottom{padding:6px 8px max(10px, env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:6px;display:flex}.viewer-actions{justify-content:center;align-items:center;gap:6px;display:flex}.seg{border:1px solid var(--line);border-radius:999px;padding:2px;display:inline-flex}.seg button{min-height:30px;color:var(--dim);border-radius:999px;padding:0 14px;font-size:.78rem}.seg button[aria-pressed=true]{background:var(--paper);color:var(--ink)}.nav-btn{position:absolute;top:50%;transform:translateY(-50%)}.nav-btn.prev{left:4px}.nav-btn.next{right:4px}@media (max-width:700px){.nav-btn{display:none}}.sheet{z-index:2;background:var(--ink-2);border-top:1px solid var(--line);padding:18px clamp(16px, 5vw, 32px) max(18px, env(safe-area-inset-bottom));border-radius:18px 18px 0 0;flex-direction:column;gap:12px;max-width:560px;margin:0 auto;display:flex;position:absolute;bottom:0;left:0;right:0}.sheet label{color:var(--dim);font-size:.8rem}.sheet textarea,.sheet input{width:100%;color:var(--paper);border:1px solid var(--line);font:inherit;background:0 0;border-radius:10px;padding:10px 12px;font-size:16px}.sheet textarea{resize:vertical;min-height:96px}.sheet .row{justify-content:flex-end;gap:10px;display:flex}.sheet .reply{font-family:var(--serif);border-left:1px solid var(--line);margin:0;padding-left:12px;font-size:.95rem}.toast{z-index:80;background:var(--paper);color:var(--ink);border-radius:999px;padding:8px 14px;font-size:.8rem;position:fixed;bottom:84px;left:50%;transform:translate(-50%)}.footer{z-index:1;background:var(--ink-2);padding:calc(var(--tab-cut) + clamp(48px, 10vh, 120px)) clamp(20px, 6vw, 80px) clamp(64px, 12vh, 160px);margin-top:clamp(80px,16vh,200px);position:relative}.footer-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:clamp(36px,8vh,80px);display:flex}.org{align-items:center;gap:16px;display:flex}.org img,.org .logo-initial{object-fit:cover;border-radius:50%;width:56px;height:56px;font-size:1.3rem}.org h2{font-family:var(--serif);margin:0;font-size:1.6rem;font-weight:300}.org-lines{color:var(--dim);flex-wrap:wrap;gap:6px 18px;margin:18px 0 0;font-size:.9rem;display:flex}.org-lines a{text-underline-offset:4px}.legal{color:var(--dim);flex-wrap:wrap;gap:8px 22px;margin-top:clamp(40px,9vh,96px);font-size:.78rem;display:flex}.legal a{text-decoration:none}.legal a:hover{text-decoration:underline}.closed{place-items:center;min-height:100svh;padding:24px;display:grid}.closed-card{background:var(--ink-2);width:100%;max-width:520px;padding:calc(var(--tab-cut) + 40px) 32px 48px;text-align:left}.closed-card h1{font-family:var(--serif);margin:0 0 10px;font-size:1.8rem;font-weight:300}.closed-card p{color:var(--dim);margin:0 0 22px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
