:root{--ink:#000;--paper:#fff;--secondary-text:#6b6b6b;--gray-fill:#ededed;--banner-fill:#f4f4f4;--sheet-backdrop:#00000059;--soft-fill:#f4f4f4;--line:#e5e5e5;--input-border:#ccc;--disabled-text:#8a8a8a;--viewer-secondary-text:#b3b3b3;--viewer-placeholder:#2a2a2a;--viewer-dot:#666;--badge:#d92d20;--highlight:#f4f4f4;--avatar-back:#d6d6d6;--faint-line:#f0f0f0;--font:-apple-system, "SF Pro Text", "Helvetica Neue", Helvetica, sans-serif;--top-bar-height:64px;--tap-target:44px;--field-height:48px;--onboarding-field-height:50px;--field-radius:10px;--column-app:600px;--column-auth:400px;--column-onboarding:420px}*{box-sizing:border-box}body{padding:0 env(safe-area-inset-right) 0 env(safe-area-inset-left);background:var(--paper);color:var(--ink);font-family:var(--font);margin:0}#root{min-height:100vh}h1,h2,p,ul{margin:0}a{color:var(--ink)}button,input{font:inherit}body:has(.lightbox[open],.sheet[open]){overflow:hidden}button{cursor:pointer}button:disabled{cursor:default}[role=alert] pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.column{max-width:calc(var(--column-app) + 32px);margin:0 auto;padding:0 16px 48px}.empty{color:var(--secondary-text);padding:24px 0}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.top-bar{padding-top:env(safe-area-inset-top);background:var(--paper);border-bottom:1px solid var(--line)}.top-bar.sticky{z-index:1;position:sticky;top:0}.top-bar-inner{max-width:calc(var(--column-app) + 16px);height:var(--top-bar-height);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;margin:0 auto;padding:0 8px;display:grid;position:relative}.top-bar h1{text-align:center;font-size:17px;font-weight:600}.top-bar-start{justify-content:flex-start;display:flex}.top-bar-end{justify-content:flex-end;align-items:center;gap:8px;display:flex}.bar-text{height:var(--tap-target);color:var(--ink);background:0 0;border:none;align-items:center;padding:0 8px;font-size:16px;text-decoration:none;display:flex}.bar-button{background:var(--ink);height:36px;color:var(--paper);border:none;border-radius:18px;align-items:center;margin-right:8px;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.bar-button:disabled{background:var(--gray-fill);color:var(--disabled-text)}.menu-button{width:var(--tap-target);height:var(--tap-target);background:0 0;border:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0;display:flex}.menu-button[aria-expanded=true]{background:var(--gray-fill)}.menu-button span{background:var(--ink);width:20px;height:2px}.menu{z-index:2;background:var(--paper);border:1px solid var(--line);border-radius:12px;flex-direction:column;width:240px;padding:8px 0;display:flex;position:absolute;top:60px;left:8px;box-shadow:0 8px 24px #0000001f}.menu a,.menu-sign-out{height:var(--tap-target);color:var(--ink);background:0 0;border:none;align-items:center;padding:0 16px;font-size:16px;text-decoration:none;display:flex}.menu a[aria-current=page]{font-weight:600}.menu hr{background:var(--line);border:none;height:1px;margin:8px 0}.menu .menu-sign-out{color:var(--secondary-text)}.menu [role=alert]{padding:0 16px}.pills{flex-wrap:wrap;gap:8px;display:flex}.pill{background:var(--gray-fill);height:36px;color:var(--ink);border:none;border-radius:18px;align-items:center;padding:0 16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.primary{background:var(--ink);height:50px;color:var(--paper);border:none;border-radius:25px;justify-content:center;align-items:center;margin-top:8px;font-size:17px;font-weight:600;text-decoration:none;display:flex}.quiet{height:var(--tap-target);color:var(--secondary-text);background:0 0;border:none;align-self:center;align-items:center;padding:0 8px;font-size:15px;text-decoration:none;display:flex}.field{color:var(--secondary-text);flex-direction:column;gap:8px;font-size:14px;display:flex}.field input{height:var(--field-height);border:1px solid var(--input-border);border-radius:var(--field-radius);background:var(--paper);color:var(--ink);padding:0 14px;font-size:17px}.auth{max-width:calc(var(--column-auth) + 32px);flex-direction:column;margin:0 auto;display:flex}.auth h1{font-size:28px;font-weight:700}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-back{height:var(--tap-target);color:var(--ink);align-self:flex-start;align-items:center;font-size:16px;text-decoration:none;display:flex}.note{color:var(--secondary-text);font-size:16px;line-height:1.45}.set-password,.verify-email{gap:16px;padding:64px 16px 48px}.set-password .auth-back{margin-bottom:8px}.set-password .field:first-child{margin-top:8px}.onboarding{min-height:100dvh;max-width:var(--column-onboarding);flex-direction:column;margin:0 auto;padding:88px 24px 40px;display:flex}.onboarding h1{font-size:30px;font-weight:700;line-height:1.2}.onboarding>h1{margin-bottom:24px}.onboarding h1.hello{font-size:34px;line-height:1.15}.onboarding-text{flex-direction:column;gap:16px;display:flex}.onboarding-text.welcome{gap:20px}.onboarding-text p{font-size:19px;line-height:1.4}.onboarding-text strong{font-weight:600}.onboarding-form{flex-direction:column;flex:1;display:flex}.onboarding .field input{height:var(--onboarding-field-height)}.onboarding .auth-back{background:0 0;border:none;margin:-44px 0 0 -8px;padding:0 8px}.onboarding-actions{flex-direction:column;margin-top:auto;padding-top:40px;display:flex}.onboarding-actions>p{color:var(--secondary-text);text-align:center;margin-bottom:14px;font-size:15px}.onboarding-actions .quiet{margin-top:6px}.onboarding-actions [role=alert]{margin-top:12px}.onboarding-actions.choices{gap:10px}.onboarding-actions.choices>p{margin-bottom:8px;font-size:14px}.cta{background:var(--ink);height:54px;color:var(--paper);border:none;border-radius:27px;justify-content:center;align-items:center;font-size:17px;font-weight:600;text-decoration:none;display:flex}.cta.secondary{background:var(--gray-fill);color:var(--ink)}.signed-in-as{background:var(--soft-fill);color:var(--secondary-text);border-radius:12px;flex-direction:column;gap:2px;padding:14px 16px;font-size:13px;display:flex}.signed-in-as strong{color:var(--ink);font-size:17px}.get-app{margin:0;padding:0;list-style:none}.get-app li{border-top:1px solid var(--line);align-items:center;gap:14px;padding:16px 0;display:flex}.get-app li:last-child{border-bottom:1px solid var(--line)}.get-app .step{background:var(--gray-fill);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;font-weight:700;display:flex}.get-app .app{color:var(--secondary-text);flex-direction:column;flex:1;gap:2px;font-size:14px;display:flex}.get-app strong{color:var(--ink);font-size:17px;font-weight:600}.get-app a{background:var(--gray-fill);height:40px;color:var(--ink);border-radius:20px;align-items:center;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.get-app a.install{background:var(--ink);color:var(--paper)}.server{border-top:1px solid var(--line);flex-direction:column;gap:12px;margin-top:28px;padding-top:16px;display:flex}.server-row{color:var(--secondary-text);justify-content:space-between;align-items:center;font-size:15px;display:flex}.switch{background:var(--input-border);border:none;border-radius:16px;justify-content:flex-start;width:51px;height:31px;padding:2px;display:flex}.switch[aria-checked=true]{background:var(--ink);justify-content:flex-end}.switch span{background:var(--paper);border-radius:50%;width:27px;height:27px;box-shadow:0 1px 3px #0000004d}.segmented{background:var(--gray-fill);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.segmented button{height:40px;color:var(--ink);background:0 0;border:none;border-radius:9px;font-size:15px;font-weight:600}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.avatar{background:var(--line);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.byline{align-items:center;gap:12px;display:flex}a.byline{color:var(--ink);align-self:flex-start;text-decoration:none}.byline-text{flex-direction:column;gap:2px;min-width:0;display:flex}.name{font-size:16px;font-weight:600;text-decoration:none}.meta{color:var(--secondary-text);font-size:14px}.moment{border-bottom:1px solid var(--line);flex-direction:column;gap:14px;padding:24px 0;display:flex}.media{aspect-ratio:4/3;background:var(--gray-fill);border-radius:8px;position:relative;overflow:hidden}.media-strip{scroll-snap-type:x mandatory;scrollbar-width:none;height:100%;display:flex;overflow-x:auto}.media-strip>*{object-fit:cover;scroll-snap-align:start;background:0 0;border:none;flex:0 0 100%;width:100%;height:100%;padding:0}.media-strip img{object-fit:cover;width:100%;height:100%;display:block}.media-strip img.loading{visibility:hidden}.media-count{background:var(--ink);height:26px;color:var(--paper);border-radius:13px;align-items:center;padding:0 12px;font-size:13px;font-weight:600;display:flex;position:absolute;top:12px;right:12px}.arrow{width:var(--tap-target);height:var(--tap-target);color:var(--ink);background:#ffffffeb;border:none;border-radius:50%;justify-content:center;align-items:center;margin-top:-22px;padding:0 0 3px;font-size:24px;line-height:1;display:flex;position:absolute;top:50%;box-shadow:0 1px 4px #0003}.arrow.previous{left:12px}.arrow.next{right:12px}.dots{justify-content:center;display:flex}.media+.dots{margin-top:-8px}.dots button{background:0 0;border:none;justify-content:center;align-items:center;width:14px;height:24px;padding:0;display:flex}.dots span{background:var(--input-border);border-radius:50%;width:8px;height:8px}.dots [aria-current] span{background:var(--ink)}.caption{white-space:pre-line;overflow-wrap:anywhere;font-size:16px;line-height:1.45}.reactions{flex-direction:column;gap:14px;display:flex}.viewers{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.viewer{text-decoration:none;display:flex;position:relative}.viewers-divider{background:var(--line);width:1px;height:24px}.my-reaction{width:var(--tap-target);height:var(--tap-target);color:var(--ink);background:0 0;border:none;justify-content:center;align-items:center;margin:-6px;padding:0;display:flex}.my-reaction .avatar{border:1.5px dashed var(--ink);background:var(--paper)}.my-reaction.reacted .avatar{border:2px solid var(--ink)}.my-reaction:not(.reacted) .reaction-badge{font-size:13px}.picker{gap:6px}.picker .pill{padding:0 12px}.pill[aria-pressed=true]{background:var(--ink);color:var(--paper)}.reaction-badge{border:1.5px solid var(--paper);background:var(--ink);min-width:18px;height:18px;color:var(--paper);border-radius:9px;justify-content:center;align-items:center;padding:0 3px;font-size:9px;font-weight:700;display:flex;position:absolute;bottom:-5px;right:-5px}.comments{flex-direction:column;gap:8px;display:flex}.comments p{overflow-wrap:anywhere;font-size:15px;line-height:1.45}.comments a{font-weight:600;text-decoration:none}.comment-time{color:var(--secondary-text)}.more{height:32px;color:var(--secondary-text);background:0 0;border:none;align-self:flex-start;align-items:center;padding:0;font-size:15px;display:flex}.skeleton .avatar{background:var(--gray-fill);width:44px;height:44px}.skeleton-line{background:var(--gray-fill);border-radius:7px;width:160px;height:14px}.lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--ink);color:var(--paper);border:none;margin:0}.lightbox[open]{flex-direction:column;display:flex}.lightbox-bar{height:var(--top-bar-height);flex-shrink:0;grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);align-items:center;padding:0 16px;display:grid}.lightbox-actions{justify-self:start;align-items:center;gap:8px;display:flex}.lightbox-action{height:var(--tap-target);color:var(--paper);background:0 0;border:none;align-items:center;gap:6px;padding:0 8px;font-size:16px;text-decoration:none;display:flex}.lightbox-count{text-align:center;grid-column:2;font-size:15px;font-weight:600}.lightbox-zoom{grid-column:3;justify-self:end;align-items:center;display:flex}.lightbox-zoom button{width:var(--tap-target);height:var(--tap-target);color:var(--paper);background:0 0;border:none;padding:0;font-size:20px}.lightbox-zoom button:disabled{color:var(--viewer-dot)}.lightbox-zoom span{text-align:center;min-width:48px;color:var(--viewer-secondary-text);font-variant-numeric:tabular-nums;font-size:15px}.lightbox-main{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;min-height:0;padding:0 16px;display:flex}.lightbox-frame{aspect-ratio:4/3;width:100%;max-width:1100px;max-height:72vh;position:relative}.lightbox-strip{scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x;height:100%;display:flex;overflow-x:auto}.lightbox-strip.zoomed{touch-action:none;cursor:grab;overflow-x:hidden}.lightbox-slide{scroll-snap-align:start;flex:0 0 100%;justify-content:center;align-items:center;display:flex;overflow:hidden}.lightbox-slide:empty{background:var(--viewer-placeholder)}.lightbox-slide img,.lightbox-slide video{object-fit:contain;max-width:100%;max-height:100%}.lightbox .arrow{width:48px;height:48px;color:var(--paper);box-shadow:none;background:#ffffff26;margin-top:-24px;font-size:26px}.lightbox .actual-size{width:var(--tap-target);height:var(--tap-target);color:var(--paper);background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;bottom:12px;right:12px}.lightbox-actual{background:var(--ink);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;outline:none;position:fixed;inset:0;overflow:hidden}.lightbox-actual:active{cursor:grabbing}.lightbox-actual img{position:absolute;top:50%;left:50%}.lightbox .dots span{background:var(--viewer-dot)}.lightbox .dots [aria-current] span{background:var(--paper)}.lightbox-footer{text-align:center;flex-direction:column;align-items:center;gap:2px;padding:16px 24px 32px;display:flex}.lightbox-footer .name{font-size:15px}.lightbox-footer .meta{color:var(--viewer-secondary-text)}.add-to-home{background:var(--banner-fill);border-radius:14px;flex-direction:column;gap:12px;margin-top:16px;padding:16px;display:flex}.add-to-home strong{font-size:17px;font-weight:600}.add-to-home p{color:var(--secondary-text);font-size:15px;line-height:1.4}.add-to-home div{gap:8px;display:flex}.add-to-home button{height:40px;color:var(--secondary-text);background:0 0;border:none;border-radius:20px;padding:0 14px;font-size:15px}.add-to-home button:first-child{background:var(--ink);color:var(--paper);padding:0 18px;font-weight:600}.sheet{width:100%;max-width:none;padding:28px 24px calc(40px + env(safe-area-inset-bottom));background:var(--paper);color:var(--ink);border:none;border-radius:24px 24px 0 0;margin:auto 0 0}.sheet[open]{flex-direction:column;gap:18px;display:flex}.sheet::backdrop{background:var(--sheet-backdrop)}.sheet h2{font-size:22px;font-weight:700}.sheet ol{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.sheet li{align-items:center;gap:14px;font-size:17px;display:flex}.sheet li>span:first-child{background:var(--gray-fill);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;font-weight:700;display:flex}.sheet li:first-child>span:last-child{align-items:center;gap:6px;display:flex}.sheet strong{font-weight:600}.sheet .primary{border-radius:27px;height:54px;margin-top:6px}.profile-head{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:32px 0;display:flex}.profile-head>div{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.profile-head h2{font-size:28px;font-weight:700}.edit-profile{flex-direction:column;gap:32px;padding-top:40px;display:flex}.photo-row{align-items:center;gap:20px;display:flex}.new-moment{flex-direction:column;gap:16px;padding-top:32px;display:flex}.new-moment.selected{padding-top:24px}.choose{background:var(--gray-fill);height:260px;color:var(--ink);border:none;border-radius:12px;font-size:17px;font-weight:600}.hint{color:var(--secondary-text);text-align:center;font-size:14px;line-height:1.4}.tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.tile{aspect-ratio:1;background:var(--gray-fill);object-fit:cover;border-radius:6px;width:100%;display:block}.tile-item{position:relative}.remove{width:var(--tap-target);height:var(--tap-target);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:0;right:0}.remove span{border:1.5px solid var(--paper);background:var(--ink);width:26px;height:26px;color:var(--paper);border-radius:50%;justify-content:center;align-items:center;font-size:17px;line-height:1;display:flex}.add-more{aspect-ratio:1;border:1.5px dashed var(--input-border);color:var(--ink);background:0 0;border-radius:6px;font-size:15px;font-weight:600}.caption-input{border:1px solid var(--input-border);border-radius:var(--field-radius);background:var(--paper);width:100%;color:var(--ink);font:inherit;resize:vertical;padding:12px 14px;font-size:16px}.bell{width:var(--tap-target);height:var(--tap-target);color:var(--ink);justify-content:center;align-items:center;display:flex;position:relative}.bell-circle{border:1px solid var(--line);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.bell-badge{border:2px solid var(--paper);background:var(--badge);min-width:18px;height:18px;color:var(--paper);border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:700;display:flex;position:absolute;top:0;right:-2px}.notifications h2{color:var(--secondary-text);font-size:14px;font-weight:600}.notifications-head{justify-content:space-between;align-items:center;padding:18px 0 8px;display:flex}.notifications-earlier{padding:24px 0 8px}.mark-all{height:36px;color:var(--ink);background:0 0;border:none;padding:0;font-size:15px;font-weight:600}.notification{--row-bg:var(--paper);background:var(--row-bg);color:var(--ink);border-radius:10px;align-items:flex-start;gap:14px;padding:14px 14px 14px 24px;text-decoration:none;display:flex;position:relative}.notification.unread{--row-bg:var(--highlight)}.unread-dot{background:var(--ink);border-radius:50%;width:8px;height:8px;position:absolute;top:33px;left:9px}.avatar-stack{flex-shrink:0;width:44px;height:44px;position:relative}.avatar-stack .avatar{position:absolute;top:0;left:0}.avatar-stack .avatar+.avatar{border:2px solid var(--row-bg);background:var(--avatar-back);inset:auto 0 0 auto}.notification-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.notification-sentence{overflow-wrap:anywhere;font-size:16px;line-height:1.4}.notification-sentence strong{font-weight:600}.notification-meta{color:var(--secondary-text);flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;display:flex}.notification-glyphs{color:var(--ink);font-weight:600}.chip{border:1px solid var(--input-border);height:22px;color:var(--ink);border-radius:11px;align-items:center;padding:0 9px;font-size:12px;display:flex}.notification-thumb{background:var(--gray-fill);border-radius:6px;flex-shrink:0;width:52px;height:52px;overflow:hidden}.notification-thumb img{object-fit:cover;width:100%;height:100%;display:block}.caught-up{text-align:center;padding-top:160px;padding-bottom:160px;font-size:18px;font-weight:600}.settings{padding-top:28px}.settings h2{color:var(--secondary-text);margin-bottom:6px;font-size:14px;font-weight:600}.setting-row{border-top:1px solid var(--faint-line);border-bottom:1px solid var(--faint-line);justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:8px 0;font-size:16px;display:flex}.setting-row .switch{flex-shrink:0}.moment-page{border-bottom:none;gap:16px}.more-button{width:var(--tap-target);height:var(--tap-target);color:var(--ink);letter-spacing:1px;background:0 0;border:none;border-radius:50%;padding:0;font-size:18px;font-weight:700}.more-button[aria-expanded=true]{background:var(--gray-fill)}.moment-menu{width:280px;padding:6px 0;top:58px;left:auto;right:8px}.moment-menu [role=menuitem]{height:var(--tap-target);color:var(--ink);text-align:left;background:0 0;border:none;padding:0 16px;font-size:15px}.page-comments{flex-direction:column;padding-top:8px;display:flex}.page-comments h2{color:var(--secondary-text);margin-bottom:4px;font-size:14px;font-weight:600}.page-comment{border-radius:10px;gap:12px;margin:0 -12px;padding:12px;display:flex}.page-comment.highlighted{background:var(--highlight)}.page-comment-text{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;font-size:16px;line-height:1.45;display:flex}.page-comment-head{align-items:baseline;gap:8px;display:flex}.page-comment-head strong{font-size:15px;font-weight:600}.page-comment-head .comment-time{font-size:14px}.page-comments .comment-form{margin-top:12px}.page-comments .comment-form input{height:var(--tap-target);border-radius:22px;font-size:16px}.page-comments .comment-form button{height:var(--tap-target);border-radius:22px;padding:0 20px;font-size:15px}.comment-form{align-items:center;gap:8px;display:flex}.comment-form input{border:1px solid var(--input-border);background:var(--paper);min-width:0;height:42px;color:var(--ink);border-radius:21px;flex:1;padding:0 16px;font-size:15px}.comment-form button{background:var(--ink);height:42px;color:var(--paper);border:none;border-radius:21px;padding:0 18px;font-size:14px;font-weight:600}
