@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");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}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");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}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f4f5f7;--foreground:#15171c;--bubble-bg:#fff;--bubble-border:#c9ced8;--accent:#2f4fd0;--accent-fg:#fff;--bg-star:#34288c80;--bg-grid:#15171c0d;--bg-river:#30208059;--bg-river-a:#095064b8;--bg-river-b:#3e228cb8;--bg-line:#15171c0e;--bg-node:#30208080;--bg-cat-line:#30228473;--bg-cat-halo:#3022840f;--bg-cat-core:#2c1e78b3;--bg-cat-eye:#26186cd9;--bg-cat-grad-a:#3a1e88bf;--bg-cat-grad-b:#095064c7;--bg-cat-halo-a:#3a1e8812;--bg-cat-halo-b:#09506412;--bg-stage-opacity:.65;--logo-grad-a:#5b3fc4;--logo-grad-b:#17849c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#0a0a0a;--foreground:#ededed;--bubble-bg:#1c1d20;--bubble-border:#303236;--accent:#7ea3ff;--accent-fg:#10151f;--bg-star:#cec8ff80;--bg-grid:#968ceb0d;--bg-river:#8a74f53d;--bg-river-a:#40e0f566;--bg-river-b:#a882ff66;--bg-line:#968ceb12;--bg-node:#9680fa6b;--bg-cat-line:#9e8eff6b;--bg-cat-halo:#7868dc17;--bg-cat-core:#c4b8ff99;--bg-cat-eye:#d6caffd9;--bg-cat-grad-a:#a882ffb8;--bg-cat-grad-b:#40e0f5b8;--bg-cat-halo-a:#966eff21;--bg-cat-halo-b:#3cd2eb21;--bg-stage-opacity:1;--logo-grad-a:#a882ff;--logo-grad-b:#40e0f5}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#0a0a0a;--foreground:#ededed;--bubble-bg:#1c1d20;--bubble-border:#303236;--accent:#7ea3ff;--accent-fg:#10151f;--bg-star:#cec8ff80;--bg-grid:#968ceb0d;--bg-river:#8a74f53d;--bg-river-a:#40e0f566;--bg-river-b:#a882ff66;--bg-line:#968ceb12;--bg-node:#9680fa6b;--bg-cat-line:#9e8eff6b;--bg-cat-halo:#7868dc17;--bg-cat-core:#c4b8ff99;--bg-cat-eye:#d6caffd9;--bg-cat-grad-a:#a882ffb8;--bg-cat-grad-b:#40e0f5b8;--bg-cat-halo-a:#966eff21;--bg-cat-halo-b:#3cd2eb21;--bg-stage-opacity:1;--logo-grad-a:#a882ff;--logo-grad-b:#40e0f5}html{height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--foreground);background:var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;font-family:Arial,Helvetica,sans-serif;display:flex}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}.bg-stage{z-index:-1;pointer-events:none;opacity:var(--bg-stage-opacity,1);position:fixed;inset:0;overflow:hidden}.bg-layer{will-change:transform;position:absolute;inset:-12% -6%}.bg-svg,.bg-cat-svg{width:100%;height:100%;display:block}.bg-stars{background-image:radial-gradient(1.4px 1.4px at 12% 18%, var(--bg-star) 50%, transparent 51%), radial-gradient(1.2px 1.2px at 64% 9%, var(--bg-star) 50%, transparent 51%), radial-gradient(1.6px 1.6px at 31% 63%, var(--bg-star) 50%, transparent 51%), radial-gradient(1.1px 1.1px at 83% 44%, var(--bg-star) 50%, transparent 51%), radial-gradient(1.5px 1.5px at 47% 88%, var(--bg-star) 50%, transparent 51%), radial-gradient(1.2px 1.2px at 91% 77%, var(--bg-star) 50%, transparent 51%), radial-gradient(1.3px 1.3px at 7% 82%, var(--bg-star) 50%, transparent 51%), linear-gradient(var(--bg-grid) 1px, transparent 1px), linear-gradient(90deg, var(--bg-grid) 1px, transparent 1px);background-size:520px 420px,520px 420px,520px 420px,520px 420px,520px 420px,520px 420px,520px 420px,64px 64px,64px 64px}.bg-city-net path{fill:none;stroke:url(#riverGrad);stroke-width:2px}.bg-city-grid path{fill:none;stroke:var(--bg-line);stroke-width:1px}.bg-city-nodes circle{fill:var(--bg-node)}.bg-cat{padding-top:var(--cat-top,30.5rem);place-items:start center;display:grid;inset:0}.bg-cat-float{height:var(--cat-h,18rem);aspect-ratio:240/139;max-width:88vw;animation:9s ease-in-out infinite bg-float}.bg-cat-lines polyline{fill:none;stroke:url(#catGrad);stroke-width:1.4px;stroke-linejoin:round;stroke-linecap:round}.bg-cat-whiskers polyline{fill:none;stroke:url(#catGrad);stroke-width:.8px;stroke-linecap:round;opacity:.7}.bg-star-halo{fill:url(#catGradSoft)}.bg-star-core{fill:url(#catGrad)}.bg-star-eye{fill:var(--bg-cat-eye)}@keyframes bg-float{0%,to{transform:translateY(-8px)}50%{transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.bg-cat-float{animation:none}}.site-nav{z-index:50;background:var(--background);border-bottom:1px solid var(--bubble-border);flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding:.6rem 1rem;display:flex;position:sticky;top:0}.site-nav-placeholder{border-bottom:1px solid var(--bubble-border);height:6.6rem}.nav-bar{flex:none;align-items:center;gap:.6rem;display:flex}.nav-brand{letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:.5rem;font-size:.95rem;font-weight:700;display:flex}.site-logo{flex:none;display:block}.site-logo-fill{fill:color-mix(in srgb, var(--foreground) 6%, transparent)}.nav-toggle{border:1px solid var(--bubble-border);width:2.1rem;height:2.1rem;color:var(--foreground);cursor:pointer;background:0 0;border-radius:.5rem;flex:none;place-items:center;display:grid}.nav-toggle-bars,.nav-toggle-bars:before,.nav-toggle-bars:after{background:currentColor;border-radius:1px;width:1rem;height:2px;display:block}.nav-toggle-bars{position:relative}.nav-toggle-bars:before,.nav-toggle-bars:after{content:"";position:absolute;left:0}.nav-toggle-bars:before{top:-5px}.nav-toggle-bars:after{top:5px}.nav-search{border:1px solid var(--bubble-border);background:var(--bubble-bg);border-radius:999px;flex:100%;order:3;align-items:center;gap:.5rem;padding:0 .7rem;display:flex}.nav-search:focus-within{border-color:var(--accent)}.nav-search-icon{color:color-mix(in srgb, var(--foreground) 55%, transparent);flex:none}.nav-search input{min-width:0;color:var(--foreground);font:inherit;background:0 0;border:0;flex:1;padding:.5rem 0;font-size:.9rem}.nav-search input:focus{outline:none}.nav-search input::-webkit-search-cancel-button{appearance:none}.nav-links{z-index:60;background:var(--background);border-right:1px solid var(--bubble-border);flex-direction:column;gap:.25rem;width:min(78vw,17rem);padding:4.5rem 1rem 1rem;transition:transform .2s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.nav-links.is-open{transform:translate(0)}.nav-links a{color:var(--foreground);border-radius:.5rem;padding:.65rem .6rem;font-size:.95rem}.nav-links a:hover{background:color-mix(in srgb, var(--foreground) 8%, transparent)}.nav-links a.is-current{color:var(--accent);font-weight:600}.nav-signout,.nav-links a.nav-signin{color:color-mix(in srgb, var(--foreground) 70%, transparent);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.5rem;padding:.65rem .6rem;font-size:.95rem}.nav-signout:hover:not(:disabled),.nav-links a.nav-signin:hover{background:color-mix(in srgb, var(--foreground) 8%, transparent);color:var(--foreground)}.nav-signout:disabled{opacity:.55;cursor:default}@media (min-width:768px){.nav-signout,.nav-links a.nav-signin{white-space:nowrap;padding:.4rem .55rem;font-size:.85rem}.nav-signout,.nav-signin{border-left:1px solid var(--bubble-border);border-radius:0;margin-left:.35rem;padding-left:.75rem}}.nav-backdrop{z-index:55;background:#00000080;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.nav-links{transition:none}}@media (min-width:768px){.site-nav{background:color-mix(in srgb, var(--background) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-wrap:wrap;gap:1.25rem;padding:.6rem 1.5rem}.site-nav-placeholder{height:3.4rem}.nav-toggle{display:none}.nav-search{flex:auto;order:0;min-width:0;max-width:24rem}.nav-links{z-index:auto;background:0 0;border-right:0;flex-flow:wrap;justify-content:flex-end;align-items:center;gap:.25rem;width:auto;min-width:0;margin-left:auto;padding:0;position:static;overflow:visible;transform:none}.nav-links a{white-space:nowrap;padding:.4rem .55rem;font-size:.85rem}.nav-backdrop{display:none}}.feed{width:100%;max-width:640px;margin:0 auto;padding:2rem 1rem 4rem}.feed-header{margin-bottom:1.25rem}.feed-header h1{color:color-mix(in srgb, var(--foreground) 75%, transparent);font-size:1.15rem;font-weight:600;line-height:1.3}.feed-header p{color:color-mix(in srgb, var(--foreground) 65%, transparent);margin-top:.25rem}.feed-empty{color:color-mix(in srgb, var(--foreground) 55%, transparent)}.feed-list{flex-direction:column;gap:.75rem;list-style:none;display:flex}.bubble{background:var(--bubble-bg);border:1px solid var(--bubble-border);border-radius:.25rem 1rem 1rem;padding:.75rem 1rem}.bubble-meta{color:color-mix(in srgb, var(--foreground) 60%, transparent);flex-wrap:wrap;align-items:baseline;gap:.5rem;margin-bottom:.35rem;font-size:.8rem;display:flex}.bubble-meta .share-wrap{margin-left:auto}.bubble-author{color:var(--foreground);font-weight:700}.bubble-avatar{object-fit:cover;border-radius:50%;flex:none;align-self:center;width:1.75rem;height:1.75rem}.bubble-avatar-empty{background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--foreground);place-items:center;font-size:.75rem;font-weight:700;line-height:1;display:grid}.profile-avatar-row{flex-wrap:wrap;align-items:flex-start;gap:1.25rem;margin-bottom:.5rem;display:flex}.profile-avatar-lg{object-fit:cover;border:1px solid var(--bubble-border);border-radius:50%;flex:none;width:6rem;height:6rem}.profile-avatar-empty{background:color-mix(in srgb, var(--accent) 20%, transparent);place-items:center;font-size:2rem;font-weight:700;display:grid}.profile-avatar-side{flex-direction:column;flex:16rem;gap:.75rem;min-width:0;display:flex}.profile-ok{color:#2f8f4e;font-size:.85rem}.bubble-edited{font-style:italic}.bubble-body{white-space:pre-wrap;word-break:break-word;line-height:1.45}.bubble-body-wrap{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.bubble-body-wrap .bubble-body{flex:1;min-width:0}.bubble-edit-btn{color:color-mix(in srgb, var(--foreground) 45%, transparent);font:inherit;cursor:pointer;background:0 0;border:0;flex:none;font-size:.75rem;transition:color .12s}.bubble:hover .bubble-edit-btn,.bubble-edit-btn:hover,.bubble-edit-btn:focus-visible{color:var(--accent);text-decoration:underline}.bubble-editor{flex-direction:column;gap:.4rem;display:flex}.bubble-editor textarea{border:1px solid var(--accent);background:var(--background);width:100%;min-height:4rem;color:var(--foreground);font:inherit;resize:vertical;border-radius:.5rem;padding:.5rem .6rem}.bubble-editor-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.bubble-editor-hint{color:color-mix(in srgb, var(--foreground) 50%, transparent);font-size:.7rem}.bubble-actions{flex:none;align-items:center;gap:.5rem;display:flex}.bubble-actions.is-confirming{flex:1 0 100%;justify-content:flex-end;padding-top:.15rem}.bubble-confirm-label{color:color-mix(in srgb, var(--foreground) 65%, transparent);font-size:.75rem}.bubble-edit-btn.is-danger{color:#d64545;font-weight:600}.bubble-edit-btn.is-danger:hover{color:#d64545}.bubble-attachments{flex-wrap:wrap;gap:.5rem;margin-top:.6rem;display:flex}.bubble-image{border-radius:.5rem;max-width:100%;height:auto;display:block}.bubble-pdf-link{border:1px solid var(--bubble-border);color:var(--accent);border-radius:.5rem;padding:.4rem .75rem;font-size:.85rem;display:inline-block}.pdf-shell{border:1px solid var(--bubble-border);background:var(--background);border-radius:.6rem;width:100%;overflow:hidden}.pdf-stage{background:#fff;justify-content:center;align-items:center;width:100%;min-height:8rem;display:flex;position:relative}.pdf-canvas{max-width:100%;display:block}.pdf-loading{color:#555;place-items:center;font-size:.85rem;display:grid;position:absolute;inset:0}.pdf-arrow{color:#fff;cursor:pointer;opacity:.75;background:#0000008c;border:0;border-radius:50%;place-items:center;width:2rem;height:2rem;font-size:1.4rem;line-height:1;transition:opacity .12s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.pdf-arrow:hover:not(:disabled){opacity:1}.pdf-arrow:disabled{opacity:.2;cursor:default}.pdf-arrow-prev{left:.5rem}.pdf-arrow-next{right:.5rem}.pdf-bar{border-top:1px solid var(--bubble-border);background:var(--bubble-bg);justify-content:space-between;align-items:center;gap:.75rem;padding:.4rem .7rem;font-size:.8rem;display:flex}.pdf-count{color:color-mix(in srgb, var(--foreground) 65%, transparent)}.pdf-download{color:var(--accent);text-decoration:underline}.pdf-fallback{padding:1rem;font-size:.85rem}.pdf-fallback a{color:var(--accent);text-decoration:underline}.bubble-embed{aspect-ratio:16/9;border-radius:.5rem;width:100%;margin-top:.6rem;position:relative;overflow:hidden}.bubble-embed iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.composer-signed-out{border-top:1px solid var(--bubble-border);color:color-mix(in srgb, var(--foreground) 65%, transparent);margin-top:1.5rem;padding-top:1rem}.composer-signed-out a{color:var(--accent);text-decoration:underline}.composer{border-top:1px solid var(--bubble-border);flex-direction:column;gap:.5rem;margin-top:1.5rem;padding-top:1rem;display:flex}.composer-notice{color:color-mix(in srgb, var(--foreground) 60%, transparent);font-size:.8rem}.composer-file-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.composer-chip{border:1px solid var(--bubble-border);background:var(--bubble-bg);border-radius:999px;align-self:flex-start;align-items:center;gap:.5rem;max-width:100%;padding:.3rem .4rem .3rem .7rem;font-size:.8rem;display:inline-flex}.composer-chip-name{text-overflow:ellipsis;white-space:nowrap;max-width:16rem;overflow:hidden}.composer-chip-size{color:color-mix(in srgb, var(--foreground) 55%, transparent)}.composer-chip button{background:color-mix(in srgb, var(--foreground) 14%, transparent);width:1.25rem;height:1.25rem;color:var(--foreground);cursor:pointer;border:0;border-radius:50%;place-items:center;font-size:.95rem;line-height:1;display:grid}.composer-link-input{border:1px solid var(--bubble-border);background:var(--bubble-bg);width:100%;color:var(--foreground);font:inherit;border-radius:.6rem;padding:.5rem .75rem;font-size:.9rem}.composer-bar{border:1px solid var(--bubble-border);background:var(--bubble-bg);border-radius:1.35rem;align-items:flex-end;gap:.4rem;padding:.35rem;display:flex}.composer-icon{width:2rem;height:2rem;color:color-mix(in srgb, var(--foreground) 70%, transparent);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;font-size:1.4rem;line-height:1;display:grid}.composer-icon:hover:not(:disabled){background:color-mix(in srgb, var(--foreground) 10%, transparent);color:var(--foreground)}.composer-icon.is-active{background:color-mix(in srgb, var(--accent) 20%, transparent);color:var(--accent)}.composer-input{min-width:0;max-height:9rem;color:var(--foreground);font:inherit;resize:none;field-sizing:content;background:0 0;border:0;flex:1;padding:.45rem .25rem}.composer-input:focus{outline:none}.composer-send{background:var(--accent);width:2rem;height:2rem;color:var(--accent-fg);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.composer button:disabled{opacity:.45;cursor:default}.composer-error{color:#d64545;font-size:.85rem}.admin{width:100%;max-width:720px;margin:0 auto;padding:2rem 1rem 4rem}.admin-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:1.5rem;display:flex}.admin-header h1{font-size:1.4rem;font-weight:700}.admin-nav{gap:1rem;font-size:.9rem;display:flex}.admin-nav a{color:var(--accent);text-decoration:underline}.admin-section{margin-bottom:2.5rem}.admin-section h2{margin-bottom:.75rem;font-size:1.05rem}.admin-list{flex-direction:column;gap:.6rem;list-style:none;display:flex}.admin-row{background:var(--bubble-bg);border:1px solid var(--bubble-border);border-radius:.6rem;flex-direction:column;gap:.4rem;padding:.6rem .85rem;display:flex}.admin-row-meta{color:color-mix(in srgb, var(--foreground) 65%, transparent);flex-wrap:wrap;align-items:baseline;gap:.6rem;font-size:.85rem;display:flex}.admin-reported-post{color:color-mix(in srgb, var(--foreground) 65%, transparent);font-size:.85rem}.admin-role{text-transform:uppercase;letter-spacing:.03em;color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.7rem}.admin-note{font-style:italic}.admin-status{text-transform:uppercase;letter-spacing:.03em;border:1px solid var(--bubble-border);border-radius:.3rem;padding:.1rem .4rem;font-size:.7rem}.admin-status-published{color:#2f8f4e;border-color:#2f8f4e}.admin-status-hidden{color:#b8860b;border-color:#b8860b}.admin-status-removed{color:#d64545;border-color:#d64545}.admin-btn{border:1px solid var(--bubble-border);color:var(--foreground);font:inherit;cursor:pointer;background:0 0;border-radius:.4rem;align-self:flex-start;padding:.35rem .9rem;font-size:.85rem}.admin-btn:disabled{opacity:.45;cursor:default}.admin-add-form{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.admin-add-form input{border:1px solid var(--bubble-border);background:var(--bubble-bg);color:var(--foreground);font:inherit;border-radius:.4rem;padding:.4rem .6rem}.admin-add-form input[name=email]{flex:1;min-width:180px}.admin-row-actions{flex-wrap:wrap;gap:.5rem;display:flex}.gate{text-align:center;width:100%;max-width:26rem;margin:0 auto;padding:3rem 1.25rem 4rem}.gate h1,.gate h2{letter-spacing:-.02em;font-size:1.7rem;font-weight:700}.gate-lede{color:color-mix(in srgb, var(--foreground) 65%, transparent);margin-top:.6rem;line-height:1.5}.gate-panel{border:1px solid var(--bubble-border);background:var(--bubble-bg);text-align:left;border-radius:.9rem;margin-top:2rem;padding:1.25rem}.gate-panel h3{text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.75rem;font-weight:700}.gate-help{color:color-mix(in srgb, var(--foreground) 60%, transparent);margin-top:.4rem;font-size:.82rem;line-height:1.45}.gate-form{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.gate-form label{font-size:.8rem;font-weight:600}.gate-form input{border:1px solid var(--bubble-border);background:var(--background);width:100%;color:var(--foreground);font:inherit;border-radius:.5rem;padding:.6rem .75rem}.gate-form input:focus{border-color:var(--accent);outline:none}.gate-primary{background:var(--accent);color:var(--accent-fg);font:inherit;text-align:center;cursor:pointer;border:0;border-radius:.5rem;padding:.6rem 1rem;font-weight:600;display:inline-block}.gate-primary:disabled{opacity:.55;cursor:default}.gate-sent,.gate-signedin{text-align:center;flex-direction:column;align-items:center;gap:.6rem;display:flex}.gate-sent h2{text-transform:none;letter-spacing:normal;color:var(--foreground);font-size:1rem;font-weight:700}.gate-guest{margin-top:1.5rem}.gate-secondary{cursor:pointer;border:1px solid var(--bubble-border);color:var(--foreground);background:0 0;border-radius:.5rem;padding:.55rem 1rem;font-family:inherit;font-size:.9rem;font-weight:600;display:inline-block}.gate-secondary:hover{border-color:var(--accent);color:var(--accent)}.legal{width:100%;max-width:680px;margin:0 auto;padding:2rem 1rem 3rem;line-height:1.6}.legal h1{margin-bottom:.5rem;font-size:1.6rem;font-weight:700}.legal h2{margin:2rem 0 .6rem;font-size:1.1rem;font-weight:700}.legal p,.legal ul,.legal ol{margin-bottom:.9rem}.legal ul,.legal ol{padding-left:1.4rem}.legal li{margin-bottom:.4rem}.legal a{color:var(--accent);text-decoration:underline}.legal-updated{color:color-mix(in srgb, var(--foreground) 60%, transparent);font-size:.85rem}.legal-todo{color:#000;background:#ffe066;border-radius:.2rem;padding:.05em .35em;font-weight:700}.legal-draft{background:#b8860b1f;border:1px solid #b8860b;border-left-width:4px;border-radius:.4rem;margin:1rem 0 2rem;padding:.75rem 1rem;font-size:.9rem}.legal-form{flex-direction:column;gap:.35rem;margin-top:1rem;display:flex}.legal-form label{margin-top:.6rem;font-size:.85rem;font-weight:600}.legal-form input,.legal-form select,.legal-form textarea{border:1px solid var(--bubble-border);background:var(--bubble-bg);width:100%;color:var(--foreground);font:inherit;border-radius:.4rem;padding:.5rem .65rem}.legal-form textarea{resize:vertical}.legal-form button{margin-top:1rem}.legal-hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.legal-sent{border:1px solid #2f8f4e;border-radius:.5rem;margin-top:1rem;padding:1rem 1.25rem}.legal-sent h2{margin-top:0}.site-footer{border-top:1px solid var(--bubble-border);color:color-mix(in srgb, var(--foreground) 60%, transparent);margin-top:auto;padding:1.25rem 1rem 2rem;font-size:.8rem}.site-footer nav{flex-wrap:wrap;justify-content:center;gap:.5rem 1.1rem;margin-bottom:.6rem;display:flex}.site-footer a{color:var(--accent);text-decoration:underline}.site-footer p{text-align:center}.site-nav .theme-toggle{order:1;margin-left:auto}@media (min-width:768px){.site-nav .theme-toggle{order:0;margin-left:.25rem}}.theme-toggle{border:1px solid var(--bubble-border);background:var(--bubble-bg);width:2.15rem;height:2.15rem;color:var(--foreground);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;transition:border-color .15s,transform .15s;display:grid}.theme-toggle:hover{border-color:var(--accent);transform:rotate(-12deg)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-toggle svg{width:1.05rem;height:1.05rem;display:block}@media (prefers-reduced-motion:reduce){.theme-toggle{transition:none}.theme-toggle:hover{transform:none}}.composer-attach{flex:none;position:relative}.composer-menu{z-index:30;border:1px solid var(--bubble-border);background:var(--background);border-radius:.75rem;flex-direction:column;min-width:14.5rem;padding:.3rem;display:flex;position:absolute;bottom:calc(100% + .5rem);left:0;box-shadow:0 12px 28px #00000047}.composer-menu button{width:100%;color:var(--foreground);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.5rem;align-items:center;gap:.65rem;padding:.5rem .55rem;display:flex}.composer-menu button:hover,.composer-menu button:focus-visible{background:color-mix(in srgb, var(--foreground) 9%, transparent);outline:none}.composer-menu svg{color:var(--accent);flex:none}.composer-menu span{flex-direction:column;gap:.1rem;min-width:0;display:flex}.composer-menu strong{font-size:.9rem;font-weight:600}.composer-menu em{color:color-mix(in srgb, var(--foreground) 60%, transparent);font-size:.75rem;font-style:normal}.bubble-audio{flex-direction:column;flex:100%;gap:.4rem;min-width:0;margin-top:.5rem;display:flex}.bubble-audio audio{width:100%;min-width:0;height:2.5rem}.bubble-audio figcaption{font-size:.78rem}.bubble-audio figcaption a{color:color-mix(in srgb, var(--foreground) 62%, transparent);text-underline-offset:2px;text-decoration:underline}.bubble-audio figcaption a:hover{color:var(--accent)}.admin-role-form{align-items:center;gap:.35rem;display:flex}.admin-role-form select{border:1px solid var(--bubble-border);background:var(--bubble-bg);color:var(--foreground);font:inherit;border-radius:.4rem;padding:.35rem .4rem;font-size:.82rem}.admin-role-form select:disabled{opacity:.5;cursor:not-allowed}.admin-add-form select{border:1px solid var(--bubble-border);background:var(--bubble-bg);color:var(--foreground);font:inherit;border-radius:.4rem;padding:.4rem .5rem;font-size:.85rem}.admin-hint{color:color-mix(in srgb, var(--foreground) 65%, transparent);margin-bottom:.75rem;font-size:.82rem;line-height:1.5}.share-wrap{margin-left:auto;position:relative}.share-btn{color:color-mix(in srgb, var(--foreground) 62%, transparent);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:.3rem;padding:.2rem .5rem;font-size:.75rem;display:inline-flex}.share-btn:hover,.share-btn:focus-visible{border-color:var(--bubble-border);color:var(--accent);outline:none}.share-menu{z-index:20;border:1px solid var(--bubble-border);background:var(--background);border-radius:.6rem;flex-direction:column;min-width:11rem;padding:.25rem;display:flex;position:absolute;top:calc(100% + .3rem);right:0;box-shadow:0 10px 26px #00000042}.share-menu button,.share-menu a{color:var(--foreground);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.4rem;padding:.45rem .55rem;font-size:.85rem}.share-menu button:hover,.share-menu a:hover,.share-menu button:focus-visible,.share-menu a:focus-visible{background:color-mix(in srgb, var(--foreground) 9%, transparent);outline:none}.permalink-crumb{margin-bottom:.75rem;font-size:.85rem}.permalink-crumb a{color:color-mix(in srgb, var(--foreground) 65%, transparent)}.permalink-crumb a:hover{color:var(--accent)}.member-list{flex-direction:column;gap:.5rem;margin-top:1.25rem;list-style:none;display:flex}.member-card{border:1px solid var(--bubble-border);background:var(--bubble-bg);border-radius:.75rem;align-items:center;gap:.85rem;padding:.75rem .9rem;display:flex}.member-avatar{object-fit:cover;border:1px solid var(--bubble-border);border-radius:50%;flex:none;width:56px;height:56px}.member-avatar-empty{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--foreground);place-items:center;font-size:1.4rem;font-weight:700;display:grid}.member-meta{flex-direction:column;gap:.15rem;min-width:0;display:flex}.member-name{overflow-wrap:anywhere;font-size:1rem;font-weight:600}.member-role{text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.72rem}.member-role-moderator,.member-role-admin{color:var(--accent);font-weight:700}.member-since{color:color-mix(in srgb, var(--foreground) 65%, transparent);font-size:.82rem}.admin-row-with-avatar{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.4rem .85rem;display:grid}.admin-row-with-avatar>.admin-avatar{grid-row:1/span 2}.admin-avatar{object-fit:cover;border:1px solid var(--bubble-border);border-radius:50%;flex:none;align-self:flex-start;width:40px;height:40px}.admin-avatar-empty{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--foreground);place-items:center;font-size:1rem;font-weight:700;display:grid}.bubble-time{color:inherit}.bubble-time:hover,.bubble-time:focus-visible{text-underline-offset:2px;text-decoration:underline}a.bubble-author:hover,a.bubble-author:focus-visible{color:var(--accent)}a.member-card{color:inherit;transition:border-color .15s}a.member-card:hover,a.member-card:focus-visible{border-color:var(--accent);outline:none}.member-header{align-items:center;gap:.85rem;margin-bottom:1.25rem;display:flex}.member-header .member-name{margin:0;font-size:1.35rem}.report-wrap{position:relative}.report-btn{color:color-mix(in srgb, var(--foreground) 55%, transparent);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:.2rem .5rem;font-size:.75rem}.report-btn:hover,.report-btn:focus-visible{border-color:var(--bubble-border);color:var(--foreground);outline:none}.report-done{color:color-mix(in srgb, var(--foreground) 62%, transparent);font-size:.75rem}.report-panel{z-index:25;border:1px solid var(--bubble-border);background:var(--background);border-radius:.7rem;width:min(22rem,78vw);padding:.75rem;position:absolute;top:calc(100% + .35rem);right:0;box-shadow:0 12px 28px #00000047}.report-panel label{margin-bottom:.35rem;font-size:.82rem;font-weight:600;display:block}.report-panel textarea{border:1px solid var(--bubble-border);background:var(--bubble-bg);width:100%;color:var(--foreground);font:inherit;resize:vertical;border-radius:.4rem;padding:.5rem;font-size:.85rem}.report-note{color:color-mix(in srgb, var(--foreground) 62%, transparent);margin:.5rem 0;font-size:.75rem;line-height:1.45}.report-note a{color:var(--accent);text-decoration:underline}.report-actions{align-items:center;gap:.4rem;display:flex}.report-cancel{color:color-mix(in srgb, var(--foreground) 65%, transparent);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.4rem;padding:.4rem .55rem;font-size:.85rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.admin-summary{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.6rem;margin-bottom:1.5rem;list-style:none;display:grid}.admin-tile a{border:1px solid var(--bubble-border);background:var(--bubble-bg);color:var(--foreground);border-radius:.6rem;flex-direction:column;gap:.15rem;padding:.7rem .85rem;display:flex}.admin-tile a:hover{border-color:var(--accent)}.admin-tile strong{font-size:1.5rem;line-height:1.1}.admin-tile span{color:color-mix(in srgb, var(--foreground) 65%, transparent);font-size:.78rem}.admin-tile-active a{border-color:var(--accent)}.admin-tile-active strong{color:var(--accent)}.revision-history{border-top:1px solid var(--bubble-border);margin-top:.5rem;padding-top:.5rem}.revision-history summary{cursor:pointer;color:color-mix(in srgb, var(--foreground) 70%, transparent);font-size:.82rem}.revision-history summary:hover{color:var(--accent)}.revision-list{flex-direction:column;gap:.5rem;margin-top:.5rem;list-style:none;display:flex}.revision-list li{border-left:2px solid var(--bubble-border);background:color-mix(in srgb, var(--foreground) 4%, transparent);border-radius:0 .4rem .4rem 0;padding:.5rem .6rem}.revision-list time{color:color-mix(in srgb, var(--foreground) 60%, transparent);margin-bottom:.25rem;font-size:.72rem;display:block}.officials{max-width:860px}.officials-explainer p,.officials-sources p,.officials-gaps{max-width:none}.officials-scrubber{border:1px solid var(--bubble-border);background:var(--bubble-bg);border-radius:.9rem;margin-top:2rem;padding:1.1rem 1rem 1.25rem}.scrubber-controls{justify-content:center;align-items:center;gap:1rem;margin-top:.75rem;display:flex}.scrubber-controls button{border:1px solid var(--bubble-border);background:var(--background);width:2.25rem;height:2.25rem;color:var(--foreground);cursor:pointer;border-radius:50%;flex:none;font-size:1.3rem;line-height:1}.scrubber-controls button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.scrubber-controls button:disabled{opacity:.35;cursor:default}.scrubber-year{font-variant-numeric:tabular-nums;text-align:center;min-width:4.5ch;font-size:2rem;font-weight:700}.scrubber-range{width:100%;accent-color:var(--accent);margin-top:.75rem;display:block}.scrubber-ticks{font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--foreground) 55%, transparent);justify-content:space-between;font-size:.72rem;display:flex}.seat-list{flex-direction:column;gap:.3rem;margin-top:1.1rem;list-style:none;display:flex}.seat-row{background:color-mix(in srgb, var(--foreground) 3.5%, transparent);border-radius:.5rem;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:.75rem;padding:.5rem .6rem;display:grid}.seat-ward{text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.72rem;font-weight:700}.seat-holders{flex-wrap:wrap;align-items:center;gap:.4rem;min-width:0;display:flex}.seat-holder{align-items:center;gap:.35rem;min-width:0;display:inline-flex}.seat-name{overflow-wrap:anywhere;font-weight:600}.seat-arrow{color:color-mix(in srgb, var(--foreground) 45%, transparent);margin-right:.15rem}.seat-vacant{color:color-mix(in srgb, var(--foreground) 50%, transparent);font-style:italic}.seat-note{color:color-mix(in srgb, var(--foreground) 65%, transparent);margin-top:.7rem;font-size:.8rem}.seat-role{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:.3rem;padding:.1rem .4rem;font-size:.68rem;font-weight:700}.seat-role-mayor{background:var(--accent);color:var(--accent-fg)}.seat-role-vice-mayor{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--accent)}.entry-badge{flex:none;font-size:.7rem;line-height:1}.entry-badge-elected{color:var(--accent)}.entry-badge-appointed{color:color-mix(in srgb, var(--foreground) 55%, transparent)}.provenance-mark{text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border:1px dashed color-mix(in srgb, var(--foreground) 35%, transparent);color:color-mix(in srgb, var(--foreground) 60%, transparent);border-radius:.25rem;padding:.08rem .32rem;font-size:.62rem;font-weight:700}.officials-people{margin-top:2.25rem}.people-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.entry-filter{flex-wrap:wrap;gap:.35rem;display:flex}.entry-filter button{border:1px solid var(--bubble-border);background:var(--bubble-bg);color:var(--foreground);cursor:pointer;border-radius:999px;align-items:center;gap:.3rem;padding:.3rem .6rem;font-size:.8rem;display:inline-flex}.entry-filter button:hover{border-color:var(--accent)}.entry-filter button.is-on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);font-weight:600}.people-count{color:color-mix(in srgb, var(--foreground) 62%, transparent);margin-top:.5rem;font-size:.8rem}.person-list{flex-direction:column;gap:.75rem;margin-top:1rem;list-style:none;display:flex}.person-card{border:1px solid var(--bubble-border);background:var(--bubble-bg);border-radius:.75rem;padding:.9rem 1rem}.person-card.is-current{border-color:color-mix(in srgb, var(--accent) 55%, var(--bubble-border))}.person-head{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.person-name{overflow-wrap:anywhere;font-size:1.05rem;font-weight:700}.person-current{text-transform:uppercase;letter-spacing:.06em;background:var(--accent);color:var(--accent-fg);border-radius:.3rem;padding:.1rem .4rem;font-size:.66rem;font-weight:700}.person-ward{text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb, var(--foreground) 55%, transparent);margin-left:auto;font-size:.72rem}.person-tenure{color:color-mix(in srgb, var(--foreground) 68%, transparent);margin-top:.25rem;font-size:.84rem}.person-stints{flex-wrap:wrap;gap:.3rem;margin-top:.5rem;display:flex}.term-list{border-top:1px solid var(--bubble-border);flex-direction:column;gap:.6rem;margin-top:.75rem;padding-top:.75rem;list-style:none;display:flex}.term-line{flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.86rem;display:flex}.term-span{font-weight:600}.term-ended,.term-note{color:color-mix(in srgb, var(--foreground) 65%, transparent);margin-top:.2rem;font-size:.8rem;line-height:1.5}.term-note{border-left:2px solid var(--bubble-border);padding-left:.6rem}.election{background:color-mix(in srgb, var(--foreground) 3.5%, transparent);border-radius:.5rem;margin-top:.55rem;padding:.6rem .7rem}.election-head{color:color-mix(in srgb, var(--foreground) 70%, transparent);flex-wrap:wrap;gap:.5rem;font-size:.76rem;font-weight:600;display:flex}.election-turnout{margin-left:auto;font-weight:400}.election-bars{flex-direction:column;gap:.35rem;margin-top:.5rem;list-style:none;display:flex}.election-bar{grid-template-columns:minmax(0,1fr);gap:.15rem .6rem;font-size:.8rem;display:grid}.bar-name{overflow-wrap:anywhere}.election-bar.is-subject .bar-name{font-weight:700}.bar-track{background:color-mix(in srgb, var(--foreground) 10%, transparent);border-radius:999px;grid-column:1;height:.45rem;overflow:hidden}.bar-fill{background:color-mix(in srgb, var(--foreground) 30%, transparent);border-radius:999px;height:100%;display:block}.election-bar.is-winner .bar-fill{background:var(--accent)}.bar-value{font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--foreground) 70%, transparent);font-size:.76rem}.bar-pct{margin-left:.45rem}@media (min-width:560px){.election-bar{grid-template-columns:minmax(7rem,12rem) minmax(0,1fr) auto;align-items:center}.bar-track{grid-column:auto}}.officials-sources{margin-top:2.25rem}.source-list{flex-direction:column;gap:.6rem;margin-top:.9rem;list-style:none;display:flex}.source-list li{border-left:2px solid var(--bubble-border);flex-direction:column;gap:.15rem;padding-left:.7rem;display:flex}.source-list span{color:color-mix(in srgb, var(--foreground) 65%, transparent);font-size:.82rem}.officials-gaps{background:color-mix(in srgb, var(--foreground) 4%, transparent);border-radius:.5rem;margin-top:1.1rem;padding:.75rem .85rem;font-size:.85rem}.search-hit{background:color-mix(in srgb, var(--accent) 28%, transparent);color:inherit;text-underline-offset:2px;border-radius:.2rem;padding:0 .12em;text-decoration:underline;text-decoration-thickness:1px}.bubble-citations{flex-wrap:wrap;gap:.35rem;margin-top:.5rem;list-style:none;display:flex}.citation-chip{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--bubble-border));background:color-mix(in srgb, var(--accent) 10%, transparent);max-width:100%;color:inherit;border-radius:999px;align-items:center;gap:.35rem;padding:.22rem .55rem;font-size:.78rem;line-height:1.35;text-decoration:none;display:inline-flex}.citation-chip:hover{background:color-mix(in srgb, var(--accent) 18%, transparent);border-color:var(--accent)}.citation-chip svg{color:var(--accent);flex:none}.citation-label{overflow-wrap:anywhere;font-weight:600}.citation-host{color:color-mix(in srgb, var(--foreground) 60%, transparent);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.citation-host:before{content:"·";margin-right:.35rem}.composer-source{flex-direction:column;gap:.4rem;display:flex}.composer-source-hint{color:color-mix(in srgb, var(--foreground) 60%, transparent);font-size:.72rem}.gate-updates{text-align:left;width:100%;max-width:34rem;margin:2.5rem auto 0}.gate-updates h2{text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb, var(--foreground) 60%, transparent);font-size:.78rem;font-weight:700}.gate-updates ul{flex-direction:column;gap:.35rem;margin-top:.9rem;list-style:none;display:flex}.gate-updates li{border:1px solid color-mix(in srgb, var(--logo-grad-b) 45%, transparent);border-left:3px solid var(--logo-grad-b);background:color-mix(in srgb, var(--logo-grad-b) 10%, transparent);border-radius:.4rem;overflow:hidden}.gate-updates summary,.gate-updates .update-plain{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.1rem .9rem;padding:.45rem .7rem;display:grid}.gate-updates summary{cursor:pointer;list-style:none}.gate-updates summary::-webkit-details-marker{display:none}.gate-updates summary:hover,.gate-updates summary:focus-visible{background:color-mix(in srgb, var(--logo-grad-b) 14%, transparent)}.gate-updates time{font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.74rem}.gate-updates .update-title{overflow-wrap:anywhere;min-width:0;font-size:.92rem;font-weight:600}.gate-updates .update-more{white-space:nowrap;color:var(--logo-grad-b);grid-area:1/-2;align-self:center;font-size:.72rem}.gate-updates .update-more:after{content:"See more"}.gate-updates details[open] .update-more:after{content:"Less"}.gate-updates p{color:color-mix(in srgb, var(--foreground) 68%, transparent);margin:0;padding:0 .7rem .6rem;font-size:.82rem;line-height:1.5}@media (min-width:520px){.gate-updates summary,.gate-updates .update-plain{grid-template-columns:5.5rem minmax(0,1fr) auto}.gate-updates time{grid-row:1;line-height:1.6}.gate-updates .update-title{grid-column:2}.gate-updates p{padding-left:7.1rem}}@media (min-width:900px){.gate-updates{max-width:52rem}.gate-updates ul{grid-template-columns:1fr 1fr;align-items:start;gap:.35rem .9rem;display:grid}}.cccp-lockup{text-align:left;justify-content:center;align-items:center;gap:.7rem;margin-bottom:1.1rem;display:flex}.cccp-mark{flex:none;display:block}.cccp-expansion{color:color-mix(in srgb, var(--foreground) 68%, transparent);text-wrap:balance;max-width:12.5rem;font-size:.82rem;line-height:1.4}.cccp-initial{color:var(--logo-grad-a);font-style:normal;font-weight:700}@media (max-width:26rem){.cccp-lockup{gap:.55rem}.cccp-expansion{max-width:11rem;font-size:.76rem}}.feed-brand{align-items:center;gap:.6rem;display:flex}.feed-brand .site-logo{flex:none}.post-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:.85rem;margin-top:1.25rem;list-style:none;display:grid}.post-tile{border:1px solid var(--bubble-border);background:var(--bubble-bg);border-radius:.75rem;flex-direction:column;height:100%;transition:border-color .12s,transform .12s;display:flex;position:relative;overflow:visible}.post-tile:hover,.post-tile:focus-within{border-color:var(--accent);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.post-tile{transition:none}.post-tile:hover,.post-tile:focus-within{transform:none}}.tile-media-cover,.tile-caption-link,.tile-foot-link{color:inherit;min-width:0;text-decoration:none;display:block}.tile-media-cover{place-items:center;display:grid;position:absolute;inset:0}.tile-media-text .tile-media-cover{place-items:stretch stretch}.tile-media{aspect-ratio:4/3;background:color-mix(in srgb, var(--foreground) 5%, transparent);color:color-mix(in srgb, var(--foreground) 45%, transparent);border-radius:.75rem .75rem 0 0;place-items:center;display:grid;position:relative;overflow:hidden}.tile-image{object-fit:cover;width:100%;height:100%;display:block}.tile-media-pdf .tile-image-page{object-fit:contain;background:#fff}.tile-icon,.tile-play{opacity:.75}.tile-play-overlay{color:#fff;opacity:.95;filter:drop-shadow(0 1px 4px #0009)}.tile-play-btn{z-index:2;width:64px;height:64px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tile-play-btn:hover .tile-play-overlay,.tile-play-btn:focus-visible .tile-play-overlay{opacity:1;transform:scale(1.08)}.tile-play-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tile-play-overlay{transition:transform .12s,opacity .12s}@media (prefers-reduced-motion:reduce){.tile-play-overlay{transition:none}.tile-play-btn:hover .tile-play-overlay,.tile-play-btn:focus-visible .tile-play-overlay{transform:none}}.tile-player{place-items:center;display:grid;position:absolute;inset:0}.tile-player iframe{border:0;width:100%;height:100%;display:block}.tile-player-audio{grid-template-rows:1fr auto;gap:.4rem;padding:.75rem}.tile-player-audio .tile-icon{align-self:end}.tile-player-audio audio{width:100%;max-height:40px}.tile-comments{color:color-mix(in srgb, var(--foreground) 55%, transparent);align-items:center;gap:.2rem;font-size:.72rem;display:inline-flex}.tile-media-text{background:color-mix(in srgb, var(--accent) 9%, var(--bubble-bg));place-items:stretch stretch}.tile-excerpt{height:100%;padding:.8rem .85rem 1.9rem;display:block;position:relative;overflow:hidden}.tile-excerpt-text{-webkit-line-clamp:6;line-clamp:6;color:color-mix(in srgb, var(--foreground) 88%, transparent);overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.83rem;line-height:1.45;display:-webkit-box;overflow:hidden}.tile-icon-corner{opacity:.4;position:absolute;bottom:.6rem;right:.6rem}.tile-badge{pointer-events:none;text-transform:uppercase;letter-spacing:.05em;background:color-mix(in srgb, var(--background) 82%, transparent);color:color-mix(in srgb, var(--foreground) 75%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:.3rem;padding:.1rem .4rem;font-size:.62rem;font-weight:700;position:absolute;top:.5rem;left:.5rem}.tile-foot{color:color-mix(in srgb, var(--foreground) 62%, transparent);align-items:center;min-width:0;padding:.5rem .6rem;font-size:.72rem;display:flex}.tile-foot-link{flex:auto;align-items:center;gap:.35rem;min-width:0;display:flex}.tile-avatar{object-fit:cover;border-radius:50%;flex:none;width:20px;height:20px}.tile-avatar-empty{background:color-mix(in srgb, var(--accent) 20%, transparent);color:var(--foreground);place-items:center;font-size:.62rem;font-weight:700;display:grid}.tile-author{color:color-mix(in srgb, var(--foreground) 80%, transparent);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.tile-time{font-variant-numeric:tabular-nums;flex:none;margin-left:auto}.tile-edited{flex:none;font-style:italic}.tile-caption{-webkit-line-clamp:2;line-clamp:2;color:color-mix(in srgb, var(--foreground) 90%, transparent);overflow-wrap:anywhere;-webkit-box-orient:vertical;padding:.55rem .6rem 0;font-size:.82rem;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.tile-caption-link+.tile-foot{padding-top:.35rem}.tile-actions{flex:none;align-items:center;gap:.3rem;margin-left:.4rem;display:flex}.tile-icon-btn{width:1.5rem;height:1.5rem;color:color-mix(in srgb, var(--foreground) 55%, transparent);border-radius:50%;place-items:center;text-decoration:none;display:grid}.tile-icon-btn:hover,.tile-icon-btn:focus-visible{background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--accent)}.share-wrap-compact{margin-left:0}.share-btn-compact{width:1.5rem;height:1.5rem;color:color-mix(in srgb, var(--foreground) 55%, transparent);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;padding:0;display:grid}.share-btn-compact:hover,.share-btn-compact:focus-visible{background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--accent)}.composer-caption{margin-bottom:.1rem}.pdf-picker{border:1px solid var(--bubble-border);background:color-mix(in srgb, var(--foreground) 3%, transparent);border-radius:.6rem;flex-direction:column;gap:.45rem;padding:.6rem;display:flex}.pdf-picker-stage{background:#fff;border-radius:.4rem;place-items:center;min-height:120px;max-height:260px;display:grid;position:relative;overflow:hidden}.pdf-picker-canvas{width:auto;max-width:100%;height:auto;max-height:260px;display:block}.pdf-picker-loading{color:#444;font-size:.78rem;position:absolute}.pdf-picker-controls{justify-content:center;align-items:center;gap:.75rem;display:flex}.pdf-picker-controls button{border:1px solid var(--bubble-border);background:var(--bubble-bg);width:1.9rem;height:1.9rem;color:var(--foreground);cursor:pointer;border-radius:50%;font-size:1.05rem;line-height:1}.pdf-picker-controls button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.pdf-picker-controls button:disabled{opacity:.35;cursor:default}.pdf-picker-count{font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--foreground) 70%, transparent);font-size:.78rem}.bubble-pdf-block{flex-direction:column;gap:.5rem;width:100%;display:flex}.pdf-thumb-editor{align-self:flex-start}.pdf-thumb-editor-toggle{color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:.2rem 0;font-size:.78rem;font-weight:600;text-decoration:underline}.pdf-thumb-editor-form{border:1px solid var(--bubble-border);background:color-mix(in srgb, var(--foreground) 3%, transparent);border-radius:.6rem;flex-direction:column;gap:.5rem;max-width:340px;margin-top:.4rem;padding:.6rem;display:flex}.pdf-thumb-editor-actions{gap:.5rem;display:flex}.feed-permalink{max-width:1040px}.feed-permalink .bubble-body,.feed-permalink .bubble-body-wrap{max-width:68ch}.feed-board{max-width:1780px;margin-inline:auto;padding-left:clamp(1rem,3vw,2.5rem);padding-right:clamp(1rem,3vw,2.5rem)}.feed-board>.feed-header,.feed-board>.composer,.feed-board>.composer-signed-out,.feed-board>.feed-empty{max-width:640px}.feed-board>.feed-header,.feed-board>.feed-empty{margin-left:0;margin-right:0}.feed-board>.composer,.feed-board>.composer-signed-out{margin-inline:auto}.tile-remove-wrap{z-index:3;gap:.25rem;display:flex;position:absolute;top:.4rem;right:.4rem}.tile-remove-confirm{gap:.25rem;display:flex}.tile-remove-btn{border:1px solid color-mix(in srgb, var(--foreground) 25%, transparent);background:color-mix(in srgb, var(--background) 88%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);color:color-mix(in srgb, var(--foreground) 80%, transparent);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;border-radius:.3rem;padding:.15rem .45rem;font-size:.62rem;font-weight:700;line-height:1.5}.tile-remove-btn:hover,.tile-remove-btn:focus-visible,.tile-remove-btn.is-danger{color:#e5484d;border-color:#e5484d}.tile-remove-btn.is-danger:hover:not(:disabled){color:#fff;background:#e5484d}.tile-remove-btn:disabled{opacity:.6;cursor:default}.tile-remove-error{background:color-mix(in srgb, var(--background) 92%, transparent);color:#e5484d;border-radius:.3rem;max-width:12rem;padding:.25rem .4rem;font-size:.66rem;line-height:1.35}.font-picker{gap:.35rem;margin:.5rem 0;display:grid}.font-picker-label{letter-spacing:.02em;text-transform:uppercase;color:color-mix(in srgb, var(--foreground) 60%, transparent);font-size:.75rem}.font-picker-select{border:1px solid var(--bubble-border);background:var(--background);width:100%;max-width:22rem;color:var(--foreground);border-radius:.45rem;padding:.45rem .55rem;font-size:.92rem}.font-picker-preview{border:1px dashed var(--bubble-border);color:color-mix(in srgb, var(--foreground) 85%, transparent);overflow-wrap:anywhere;border-radius:.45rem;margin:0;padding:.5rem .6rem;font-size:1.02rem;line-height:1.4}.font-picker-hint{color:color-mix(in srgb, var(--foreground) 55%, transparent);margin:0;font-size:.72rem}.composer-toggle{color:color-mix(in srgb, var(--foreground) 70%, transparent);cursor:pointer;align-items:center;gap:.45rem;margin:.15rem 0 .35rem;font-size:.78rem;display:flex}.composer-toggle input{accent-color:var(--accent);cursor:pointer;width:.95rem;height:.95rem}.comments{border-top:1px solid var(--bubble-border);max-width:68ch;margin-top:2rem;padding-top:1.25rem}.comments-head{flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;margin-bottom:.9rem;display:flex}.comments-title{margin:0;font-size:1.05rem}.comments-toggle{flex-wrap:wrap;align-items:center;gap:.4rem;display:inline-flex}.comments-toggle-hint,.comments-closed{color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.75rem}.comments-closed{margin:.75rem 0 0}.comment-list{gap:.9rem;margin:0 0 1.25rem;padding:0;list-style:none;display:grid}.comment{border:1px solid var(--bubble-border);background:var(--bubble-bg);border-radius:.6rem;padding:.7rem .85rem}.comment-meta{color:color-mix(in srgb, var(--foreground) 60%, transparent);flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.4rem;font-size:.76rem;display:flex}.comment-avatar{object-fit:cover;border-radius:50%;flex:none;width:24px;height:24px}.comment-avatar-empty{background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--foreground);place-items:center;font-size:.7rem;font-weight:600;display:grid}.comment-author{color:color-mix(in srgb, var(--foreground) 85%, transparent);font-weight:600}.comment-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:.92rem;line-height:1.5}.comment-actions{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.5rem;display:flex}.comment-editor{margin-top:.5rem}.comment-editor textarea,.comment-input{border:1px solid var(--bubble-border);background:var(--background);width:100%;min-height:4.5rem;color:var(--foreground);font:inherit;resize:vertical;border-radius:.5rem;padding:.55rem .65rem;font-size:.92rem;line-height:1.5}.comment-form-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.comment-form-hint,.comment-signed-out{color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.75rem}.feed-member{max-width:1152px}.post-grid-roomy{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}.tile-foot-meta{flex:none;align-items:center;gap:.3rem;margin-left:.35rem;display:flex}.tile-foot-link,.bubble-author,.comment-author{text-decoration:none}.tile-foot-link:hover .tile-author,.tile-foot-link:focus-visible .tile-author,.bubble-author:hover,.bubble-author:focus-visible,.comment-author:hover,.comment-author:focus-visible{color:var(--accent);text-decoration:underline}.composer-fab,.composer-backdrop,.composer-sheet-close{display:none}@media (max-width:767px){.composer-fab{right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:45;background:var(--accent);width:56px;height:56px;color:var(--accent-fg);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;box-shadow:0 6px 20px #00000059}.composer-fab[aria-expanded=true]{display:none}.composer-backdrop{z-index:58;background:#00000080;display:block;position:fixed;inset:0}main.feed>.composer{z-index:60;max-width:none;padding:.85rem 1rem calc(.85rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--bubble-border);background:var(--background);visibility:hidden;border-radius:1rem 1rem 0 0;max-height:85dvh;margin:0;transition:transform .2s,visibility .2s;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%);box-shadow:0 -8px 30px #00000059}main.feed>.composer.is-open{visibility:visible;transform:translateY(0)}main.feed>.composer.is-menu-open{overflow:visible}.composer-sheet-close{width:2rem;height:2rem;color:color-mix(in srgb, var(--foreground) 70%, transparent);cursor:pointer;background:0 0;border:0;border-radius:50%;align-self:flex-end;margin-bottom:-.25rem;padding:0;font-size:1.5rem;line-height:1;display:block}.composer-sheet-close:hover{color:var(--foreground)}}@media (prefers-reduced-motion:reduce){main.feed>.composer{transition:none}}.office-picker{gap:.5rem;margin:.35rem 0 .15rem;display:grid}.office-picker-row{color:color-mix(in srgb, var(--foreground) 70%, transparent);gap:.3rem;font-size:.78rem;display:grid}.office-picker-canvas{border:1px solid var(--bubble-border);background:#fff;border-radius:.4rem;width:100%;max-width:15rem;height:auto}.bubble-doc{border:1px solid var(--bubble-border);background:color-mix(in srgb, var(--foreground) 4%, transparent);width:100%;color:inherit;border-radius:.6rem;align-items:center;gap:.7rem;padding:.7rem .85rem;text-decoration:none;display:flex}.bubble-doc:hover,.bubble-doc:focus-visible{border-color:var(--accent)}.bubble-doc svg{color:color-mix(in srgb, var(--foreground) 55%, transparent);flex:none}.bubble-doc span{gap:.1rem;min-width:0;display:grid}.bubble-doc strong{font-size:.92rem;font-weight:600}.bubble-doc em{color:color-mix(in srgb, var(--foreground) 60%, transparent);font-size:.76rem;font-style:normal;line-height:1.4}.notif{flex:none;position:relative}.notif-button{border:1px solid var(--bubble-border);width:2.1rem;height:2.1rem;color:var(--foreground);cursor:pointer;background:0 0;border-radius:.5rem;place-items:center;padding:0;display:grid;position:relative}.notif-button:hover,.notif-button:focus-visible{border-color:var(--accent)}.notif-badge{background:var(--accent);min-width:1.05rem;height:1.05rem;color:var(--accent-fg);text-align:center;border-radius:.6rem;padding:0 .2rem;font-size:.62rem;font-weight:700;line-height:1.05rem;position:absolute;top:-.3rem;right:-.3rem}.notif-panel{z-index:70;border:1px solid var(--bubble-border);background:var(--background);border-radius:.7rem;width:min(21rem,100vw - 1.5rem);max-height:min(26rem,70vh);padding:.6rem;position:absolute;top:calc(100% + .4rem);right:0;overflow-y:auto;box-shadow:0 14px 34px #0000004d}.notif-head{justify-content:space-between;align-items:center;gap:.5rem;padding:.1rem .3rem .5rem;font-size:.82rem;display:flex}.notif-list{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.notif-list a,.notif-static{color:inherit;border-radius:.45rem;gap:.15rem;padding:.5rem .55rem;text-decoration:none;display:grid}.notif-list a:hover,.notif-list a:focus-visible{background:color-mix(in srgb, var(--accent) 12%, transparent)}.notif-list li.is-unread a,.notif-list li.is-unread .notif-static{border-left:3px solid var(--logo-grad-b);background:color-mix(in srgb, var(--logo-grad-b) 8%, transparent)}.notif-summary{overflow-wrap:anywhere;font-size:.82rem;line-height:1.45}.notif-list time{color:color-mix(in srgb, var(--foreground) 55%, transparent);font-size:.7rem}.notif-empty,.notif-foot{color:color-mix(in srgb, var(--foreground) 55%, transparent);margin:0;padding:.5rem .3rem .2rem;font-size:.74rem;line-height:1.5}.notif-foot{border-top:1px solid var(--bubble-border);margin-top:.45rem}.site-nav .notif{order:1;margin-left:auto}.site-nav .notif+.theme-toggle{margin-left:.4rem}@media (min-width:768px){.site-nav .notif{order:0;margin-left:.25rem}}.notif-list li{transition:transform .18s,opacity .18s}@media (prefers-reduced-motion:reduce){.notif-list li{transition:none}}@media (max-width:767px){.notif{position:static}.notif-panel{width:auto;max-width:none;top:calc(100% + .35rem);left:.6rem;right:.6rem}.notif-head .bubble-edit-btn{display:none}}.gate-overlay{z-index:100;background:color-mix(in srgb, var(--background) 55%, transparent);-webkit-backdrop-filter:blur(2.5px);backdrop-filter:blur(2.5px);justify-content:center;align-items:flex-start;padding:max(1rem,4vh) 1rem 3rem;display:flex;position:fixed;inset:0;overflow-y:auto}:root[data-gate=seen] .gate-overlay{display:none}:root:not([data-gate=seen]):has(.gate-overlay){overflow:hidden}.gate-panel-wrap{width:100%;max-width:26rem;margin:auto;position:relative}.gate-panel-wrap:focus{outline:none}.gate-overlay .gate{border:1px solid var(--bubble-border);background:var(--background);border-radius:1rem;padding:1.5rem 1.25rem 1.75rem;box-shadow:0 18px 50px #00000059}.gate-dismiss{z-index:1;cursor:pointer;width:2.25rem;height:2.25rem;color:color-mix(in srgb, var(--foreground) 55%, transparent);background:0 0;border:0;border-radius:50%;place-items:center;font-size:1.5rem;line-height:1;display:grid;position:absolute;top:.4rem;right:.4rem}.gate-dismiss:hover,.gate-dismiss:focus-visible{color:var(--foreground);background:color-mix(in srgb, var(--foreground) 8%, transparent)}.gate-register{border-top:1px solid var(--bubble-border);color:color-mix(in srgb, var(--foreground) 60%, transparent);margin-top:.85rem;padding-top:.85rem;font-size:.82rem}.gate-register a{color:var(--accent);text-underline-offset:2px;font-weight:600;text-decoration:underline}.gate-updates-link{margin-top:1.25rem;font-size:.82rem}.gate-updates-link a{color:color-mix(in srgb, var(--foreground) 60%, transparent);text-underline-offset:2px;text-decoration:underline}.gate-updates-link a:hover{color:var(--accent)}@media (prefers-reduced-motion:reduce){.gate-overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--background)}}.updates-page{max-width:54rem;padding-top:2rem}.updates-head{max-width:52rem;margin:0 auto 2rem}.updates-head h1{letter-spacing:-.02em;font-size:1.5rem;font-weight:700}.updates-lede{max-width:46ch;color:color-mix(in srgb, var(--foreground) 65%, transparent);margin-top:.5rem;line-height:1.5}.updates-page .gate-updates{margin-top:0}
