@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.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:initial;--lightningcss-dark: ;color-scheme:light dark;--color-bg:#f6efe4;--color-bg-deep:#eed6bd;--color-surface:#fffaf2;--color-surface-sunken:#efe3d0;--color-text:#2b211a;--color-text-muted:#7a6656;--color-accent:#b4532a;--color-accent-soft:#f3e3cf;--color-on-accent:#fffaf2;--color-border:#e6d8c4;--color-danger:#b42318;--color-you:#b4532a;--color-partner:#6f8f72;--color-scrim:#2b211a66;--illustration-filter:none;--font-family:"Nunito Variable", system-ui, sans-serif;--font-size-xs:.8125rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.75rem;--font-weight-regular:400;--font-weight-semibold:600;--font-weight-bold:800;--line-height-tight:1.15;--line-height-body:1.5;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--radius-card:14px;--radius-control:10px;--radius-pill:999px;--shadow-seal:inset 0 -3px 0 #0000002e, 0 2px 6px #0003;--tabbar-height:4.5rem;--page-max-width:36rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-bg:#17130f;--color-bg-deep:#21170f;--color-surface:#211b16;--color-surface-sunken:#2a221b;--color-text:#f3e7d6;--color-text-muted:#a8927d;--color-accent:#e89a5c;--color-accent-soft:#3a2a1d;--color-on-accent:#1b140e;--color-border:#3a2f25;--color-danger:#f97066;--color-you:#e89a5c;--color-partner:#8fbf9f;--color-scrim:#0000008c;--illustration-filter:brightness(.6) saturate(.9)}}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-family);color:var(--color-text);background:var(--color-bg);-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;font-size:100%}html,body,#root{height:100%}body{line-height:var(--line-height-body);background:linear-gradient(var(--color-bg) 55%, var(--color-bg-deep)) fixed;margin:0}h1,h2,p{margin:0}h1{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);text-wrap:balance}h2{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}a{color:var(--color-accent);font-weight:var(--font-weight-semibold)}img{max-width:100%}.page{z-index:1;max-width:var(--page-max-width);padding:var(--space-6) var(--space-4) calc(var(--tabbar-height) + var(--space-6) + env(safe-area-inset-bottom));gap:var(--space-4);flex-direction:column;margin:0 auto;display:flex;position:relative}.page--plain{padding-bottom:var(--space-8);justify-content:center;min-height:100%}.stack{gap:var(--space-3);flex-direction:column;display:flex}.row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.actions{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap-reverse;display:flex}.actions>:last-child{margin-left:auto}.page-header{gap:var(--space-1);flex-direction:column;display:flex}.eyebrow{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.text-muted{color:var(--color-text-muted)}.text-small{font-size:var(--font-size-sm)}.text-error{color:var(--color-danger);font-size:var(--font-size-sm)}.entry-text{white-space:pre-wrap;overflow-wrap:anywhere}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.card--sunken{background:var(--color-surface-sunken)}.card__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.card__title{font-size:var(--font-size-md);font-weight:var(--font-weight-bold)}.button{font:inherit;font-weight:var(--font-weight-bold);font-size:var(--font-size-md);min-height:2.75rem;padding:var(--space-2) var(--space-5);border-radius:var(--radius-pill);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);text-align:center;white-space:nowrap;border:1px solid #0000;line-height:1.2;display:inline-flex}.button:disabled{opacity:.55;cursor:default}.button:focus-visible,.chip:focus-within,.field:focus-visible,.tabbar__item:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.button--primary{background:var(--color-accent);color:var(--color-on-accent)}.button--secondary{color:var(--color-accent);border-color:var(--color-border);background:0 0}.button--quiet{color:var(--color-accent);padding-inline:var(--space-2);background:0 0}.button--block{width:100%}.button svg{flex:none;width:1.25rem;height:1.25rem}.chip svg{width:1rem;height:1rem}.chip{align-items:center;gap:var(--space-1);min-height:2.25rem;padding:var(--space-1) var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-pill);color:var(--color-accent);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);cursor:pointer;display:inline-flex}.field-label{gap:var(--space-2);font-weight:var(--font-weight-semibold);flex-direction:column;display:flex}.field{font:inherit;font-weight:var(--font-weight-regular);width:100%;min-height:2.75rem;padding:var(--space-3);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-control)}.field:focus{border-color:var(--color-accent);outline:none}textarea.field{resize:vertical;min-height:7.5rem;line-height:var(--line-height-body)}.field::placeholder{color:var(--color-text-muted);opacity:.8}.photo{border-radius:calc(var(--radius-card) - 4px);width:100%;display:block}.sealed{text-align:center;justify-content:center;align-items:center;gap:var(--space-2);min-height:10rem}.seal{width:3.25rem;height:3.25rem;margin-bottom:var(--space-2);background:var(--color-accent);color:var(--color-on-accent);box-shadow:var(--shadow-seal);border-radius:50%;place-items:center;display:grid}.seal svg{width:1.375rem;height:1.375rem}.sealed__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.code{font-family:ui-monospace,monospace;font-size:var(--font-size-sm);word-break:break-all;padding:var(--space-3);background:var(--color-surface-sunken);border-radius:var(--radius-control)}.divider{border:0;border-top:1px solid var(--color-border);width:100%;margin:0}.tabbar{z-index:2;justify-content:center;gap:var(--space-1);padding:var(--space-2) var(--space-2) calc(var(--space-3) + env(safe-area-inset-bottom));background:var(--color-surface);border-top:1px solid var(--color-border);display:flex;position:fixed;inset:auto 0 0}.tabbar__item{align-items:center;gap:var(--space-1);min-width:0;max-width:9rem;padding:var(--space-1) 0;font:inherit;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;display:flex}.tabbar__icon{border-radius:var(--radius-pill);place-items:center;width:3.5rem;height:1.875rem;display:grid}.tabbar__icon svg{width:1.375rem;height:1.375rem}.tabbar__label{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.tabbar__item[aria-current=page]{color:var(--color-accent);font-weight:var(--font-weight-bold)}.tabbar__item[aria-current=page] .tabbar__icon{background:var(--color-accent-soft)}.icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.page--scene{min-height:100%}.scene{pointer-events:none;-webkit-user-select:none;user-select:none;margin-top:auto;margin-bottom:calc(-1 * var(--space-5))}.scene img{width:100%;height:auto;display:block}.scene--wide{margin-inline:calc(-1 * var(--space-4));-webkit-mask-image:linear-gradient(#0000,#000 40%);mask-image:linear-gradient(#0000,#000 40%)}.scene--wide img{filter:var(--illustration-filter)}@media (prefers-color-scheme:dark){.scene--wide{-webkit-mask-image:radial-gradient(62% 70% at 50% 62%,#000 55%,#0000 100%);mask-image:radial-gradient(62% 70% at 50% 62%,#000 55%,#0000 100%)}}.scene--tinkering{width:min(80%,22rem);margin-right:calc(-1 * var(--space-4));align-self:flex-end;-webkit-mask-image:linear-gradient(90deg,#0000,#000 30%),linear-gradient(#0000,#000 30%);mask-image:linear-gradient(90deg,#0000,#000 30%),linear-gradient(#0000,#000 30%);-webkit-mask-composite:source-in;mask-composite:intersect}.logo{border-radius:2.5rem;align-self:center;width:11rem;height:11rem}.filters{gap:var(--space-2);scrollbar-width:none;margin-inline:calc(-1 * var(--space-4));padding-inline:var(--space-4);display:flex;overflow-x:auto}.filter{font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--space-1) var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);min-height:2.25rem;color:var(--color-text-muted);cursor:pointer;flex:none}.filter[aria-pressed=true]{background:var(--color-text);border-color:var(--color-text);color:var(--color-bg);font-weight:var(--font-weight-bold)}.together{align-items:center;gap:var(--space-4);background:var(--color-accent);color:var(--color-on-accent);border:0;flex-direction:row}.together img{border-radius:1rem;flex:none;width:3.5rem;height:3.5rem}.together__big{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);display:block}.together .text-small{opacity:.9}@media (prefers-color-scheme:dark){.together{background:var(--color-accent-soft);color:var(--color-text)}}.upcoming{align-items:center;gap:var(--space-3);background:var(--color-accent-soft);padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);border:0;flex-direction:row}.timeline{gap:var(--space-3);padding-left:var(--space-6);flex-direction:column;display:flex;position:relative}.timeline:before{content:"";background:var(--color-border);width:2px;position:absolute;top:.375rem;bottom:0;left:.4375rem}.timeline__year{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-muted);position:relative}.timeline__year:before{content:"";left:calc(-1 * var(--space-6) + .125rem);background:var(--color-bg);border:2px solid var(--color-text-muted);border-radius:50%;width:.625rem;height:.625rem;position:absolute;top:.3rem}.story-card{cursor:pointer;text-align:left;font:inherit;color:inherit;width:100%;position:relative}.story-card:before{content:"";left:calc(-1 * var(--space-6) + .25rem);background:var(--color-accent);border-radius:50%;width:.5rem;height:.5rem;position:absolute;top:1.1rem}.story-card__cover{aspect-ratio:3;object-fit:cover;border-radius:calc(var(--radius-card) - 4px);width:100%;display:block}.story-card__row{align-items:center;gap:var(--space-3);display:flex}.story-card__thumb{object-fit:cover;border-radius:var(--radius-control);flex:none;width:3.5rem;height:3.5rem}.story-card .seal{flex:none;width:2.25rem;height:2.25rem;margin:0}.story-card .seal svg{width:1rem;height:1rem}.kind-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-accent);text-transform:uppercase;letter-spacing:.06em}.avatars{gap:.2rem;display:inline-flex}.avatar{width:1.25rem;height:1.25rem;font-size:.6875rem;font-weight:var(--font-weight-bold);color:var(--color-on-accent);background:var(--color-you);border-radius:50%;flex:none;place-items:center;display:inline-grid}.avatar--partner{background:var(--color-partner)}.fab{z-index:2;right:max(var(--space-4), calc((100% - var(--page-max-width)) / 2 + var(--space-4)));bottom:calc(var(--tabbar-height) + var(--space-5) + env(safe-area-inset-bottom));background:var(--color-accent);width:3.5rem;height:3.5rem;color:var(--color-on-accent);cursor:pointer;border:0;border-radius:1.125rem;place-items:center;display:grid;position:fixed;box-shadow:0 6px 16px #00000040}.fab svg{width:1.75rem;height:1.75rem}.sheet{width:100%;max-width:var(--page-max-width);max-height:90%;padding:var(--space-3) var(--space-4) calc(var(--space-6) + env(safe-area-inset-bottom));background:var(--color-surface);color:var(--color-text);border:0;border-radius:1.375rem 1.375rem 0 0;margin:auto auto 0}.sheet::backdrop{background:var(--color-scrim)}.sheet__grab{background:var(--color-border);width:2.5rem;height:.25rem;margin:0 auto var(--space-3);border-radius:2px}.kind-picker{gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.kind-option{font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-control);padding:var(--space-3) var(--space-1);align-items:center;gap:var(--space-1);cursor:pointer;background:0 0;flex-direction:column;display:flex}.kind-option[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent);font-weight:var(--font-weight-bold)}.kind-option svg{width:1.375rem;height:1.375rem}.switch-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.switch{appearance:none;border-radius:var(--radius-pill);background:var(--color-border);cursor:pointer;flex:none;width:2.75rem;height:1.625rem;margin:0;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:1.25rem;height:1.25rem;transition:translate .15s;position:absolute;top:3px;left:3px}.switch:checked{background:var(--color-accent)}.switch:checked:after{translate:1.125rem}.field-row{gap:var(--space-3);display:flex}.field-row>*{flex:1;min-width:0}.item-hero{gap:var(--space-2);flex-direction:column;display:flex}.back{align-self:flex-start}.places{gap:var(--space-2);flex-wrap:wrap;display:flex}.place{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-accent);background:var(--color-accent-soft);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill)}.section-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.contribution{gap:var(--space-2);flex-direction:column;display:flex}.contribution__meta{align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-muted);display:flex}.diary-line{gap:var(--space-3);font-size:var(--font-size-sm);display:flex}.diary-line__day{width:3.5rem;color:var(--color-text-muted);font-weight:var(--font-weight-semibold);flex:none}.story-card__text{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.map{border-radius:var(--radius-card);border:1px solid var(--color-border);background:var(--color-surface-sunken);height:15rem;overflow:hidden}.map--tall{height:20rem}.map-pin{cursor:pointer;background:0 0;border:0;width:1.75rem;height:2.25rem;padding:0}.map-pin__drop{background:var(--color-accent);border:2px solid var(--color-surface);border-radius:50% 50% 50% 0;width:1.75rem;height:1.75rem;display:block;rotate:-45deg;box-shadow:0 2px 6px #0000004d}.maplibregl-ctrl-attrib{font-family:var(--font-family);font-size:.6875rem}.place--removable{font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);cursor:pointer;border:0}.place-results{border:1px solid var(--color-border);border-radius:var(--radius-control);flex-direction:column;display:flex;overflow:hidden}.place-results>p{padding:var(--space-3)}.place-result{font:inherit;color:inherit;text-align:left;background:var(--color-surface);border:0;border-top:1px solid var(--color-border);padding:var(--space-2) var(--space-3);cursor:pointer;flex-direction:column;display:flex}.place-result:first-child{border-top:0}.place--suggestion{border:1px dashed var(--color-accent);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);cursor:pointer;background:0 0}
