.brief-page .brief-dateline{margin-bottom:1.25rem}.brief-page .brief-dateline h1{color:var(--public-ink)}.brief-page .brief-edition-meta{margin-top:.375rem;color:var(--public-muted);font-size:.8125rem;line-height:1.7}.brief-page .brief-archive{padding-block:.25rem;scrollbar-width:none}.brief-page .brief-archive::-webkit-scrollbar{display:none}.brief-page .brief-archive-label,.brief-page .brief-chip{font-size:.75rem;color:var(--public-muted)}.brief-page .brief-chip{padding:.25rem .625rem;border:1px solid var(--public-line);border-radius:.5rem;font-family:var(--font-jetbrains),ui-monospace,monospace;transition:color .15s}.brief-page .brief-chip:hover{color:var(--public-ink)}.brief-page .brief-chip[aria-current=page]{background:var(--public-accent);color:#fff;border-color:transparent}.brief-page .brief-pager{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;font-size:.8125rem}.brief-page .brief-pager>:first-child{justify-self:start}.brief-page .brief-pager>:last-child{justify-self:end}.brief-page .brief-pager a{color:var(--public-muted);text-underline-offset:.2em}.brief-page .brief-pager a:hover{color:var(--public-ink);text-decoration:underline}.brief-page .brief-pager [aria-disabled=true]{color:var(--public-muted);opacity:.4}.brief-page .brief-pager-top{margin-top:.75rem}.brief-page .brief-pager-bottom{margin-top:2rem;border-top:1px solid var(--public-line);padding-top:1rem}.brief-page .brief-overview{border:1px solid;padding:1.125rem 1.25rem;margin-bottom:1.25rem;border-color:var(--public-line);border-radius:.625rem;background:var(--public-wash)}.brief-page .brief-overview p{color:var(--public-ink);font-size:.9375rem;line-height:1.75}.brief-page .brief-categories{gap:.5rem;margin-bottom:1rem}.brief-page .brief-filter{min-height:2.25rem;border-radius:.5rem;font-size:.8125rem}.brief-page .brief-filter:not([aria-pressed=true]){border-color:var(--public-line);color:var(--public-muted)}.brief-page .brief-filter:not([aria-pressed=true]):hover{color:var(--public-ink)}.brief-page .brief-filter[aria-pressed=true]{background:var(--public-accent);color:#fff;border-color:transparent}html.dark .public-site .brief-page .brief-chip[aria-current=page],html.dark .public-site .brief-page .brief-filter[aria-pressed=true]{color:#0f1115}.brief-page .brief-stories{gap:.75rem}.brief-page .brief-story{border-color:var(--public-line);border-radius:.625rem;background:var(--public-paper)}.brief-page .brief-story-body{padding:1rem 1.125rem}.public-site .brief-page .brief-story h3{color:var(--public-ink);line-height:1.5;font-weight:600}.public-site .brief-page .brief-story-lead h3{font-size:1.375rem}.public-site .brief-page .brief-story-mid h3{font-size:1.125rem}.public-site .brief-page .brief-story-row h3{font-size:1rem}.brief-page .brief-story-time{margin-left:auto;font-size:.6875rem;color:var(--public-muted);white-space:nowrap}.brief-page .brief-story-summary{color:var(--public-muted);font-size:.9375rem;line-height:1.75;margin-top:.5rem}.brief-page .brief-story-sources{margin-top:.75rem}.brief-page .brief-story-sources a{color:var(--public-muted);font-size:.75rem;padding-block:.125rem;text-underline-offset:.2em}.brief-page .brief-story-sources a:hover{color:var(--public-ink)}.brief-page .brief-archive-group{margin-top:1.25rem}.brief-page .brief-archive-section{margin-top:3rem;scroll-margin-top:calc(var(--public-header-height, 76px) + 1rem)}.brief-page .brief-archive-heading{color:var(--public-ink)}.public-site .brief-page .brief-archive-month{font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--public-muted);margin-bottom:.25rem}.brief-page .brief-archive-list{border-top:1px solid var(--public-line)}.brief-page .brief-archive-list a{display:grid;grid-template-columns:6.5rem minmax(0,1fr) auto;gap:.75rem;align-items:baseline;padding:.625rem 0;border-bottom:1px solid var(--public-line)}.brief-page .brief-archive-list a:hover .brief-archive-headline{text-decoration:underline;text-underline-offset:.2em}.brief-page .brief-archive-date{font-family:var(--font-jetbrains),ui-monospace,monospace;font-size:.8125rem;color:var(--public-muted)}.brief-page .brief-archive-headline{color:var(--public-ink);font-size:.9375rem;line-height:1.55;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brief-page .brief-archive-count{font-family:var(--font-jetbrains),ui-monospace,monospace;font-size:.75rem;color:var(--public-muted)}@media (max-width:639px){.brief-page .brief-story-body{padding:.9375rem}.public-site .brief-page .brief-story-lead h3{font-size:1.25rem}.brief-page .brief-overview{padding:1rem}.brief-page .brief-story-meta{flex-wrap:wrap;row-gap:.5rem}.brief-page .brief-archive-list a{grid-template-columns:minmax(0,1fr) auto;row-gap:.125rem}.brief-page .brief-archive-date{grid-column:1/-1}.brief-page .brief-archive-headline{white-space:normal}}@media (pointer:coarse){.brief-page .brief-chip,.brief-page .brief-filter,.brief-page .brief-pager a,.brief-page .brief-story-sources a{min-height:2.75rem;display:inline-flex;align-items:center}}.brief-page .news-share-trigger{min-height:2.25rem;padding:0 .75rem;gap:.375rem;font-size:.8125rem;color:var(--public-muted)}.brief-page .news-share-trigger:hover,.news-share-dialog{color:var(--public-ink)}.news-share-dialog{border:1px solid var(--public-line);border-radius:1.25rem;background:var(--public-paper);box-shadow:0 24px 64px rgba(0,0,0,.25)}.news-share-dialog h2{color:var(--public-ink)}.news-share-close{border-radius:.5rem;color:var(--public-muted)}.news-share-close:hover{background:var(--public-wash);color:var(--public-ink)}.news-share-muted{color:var(--public-muted)}.news-share-note{color:var(--public-accent)}.news-share-error{color:#dc2626}.news-share-link{border:1px solid var(--public-line);border-radius:.75rem;background:var(--public-wash);color:var(--public-muted)}.news-share-link>div:first-child{color:var(--public-ink)}.brief-page .brief-x{margin-top:2.5rem}.brief-page .brief-x h2{color:var(--public-ink)}.brief-page .brief-x-note{margin-top:.375rem;color:var(--public-muted);font-size:.8125rem;line-height:1.7}.brief-page .brief-x-list{margin-top:1rem;display:flex;flex-direction:column;gap:.75rem;list-style:none;padding:0}.brief-page .brief-x-item{border:1px solid var(--public-line)}.public-site .brief-page .brief-x-item h3{font-size:1.0625rem;line-height:1.5;color:var(--public-ink);font-weight:600}.brief-page .brief-x-text{margin-top:.5rem;max-width:40em;color:var(--public-ink);font-size:.9375rem;line-height:1.85;opacity:.88}.brief-page .brief-x-posts{margin-top:.875rem;padding-top:.75rem;border-top:1px dashed var(--public-line);display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;list-style:none}.brief-page .brief-x-posts li{display:inline-flex;align-items:center;gap:.5rem;font-size:.8125rem}.brief-page .brief-x-posts a{display:inline-flex;align-items:center;gap:.375rem;color:var(--public-ink);font-weight:500}.brief-page .brief-x-posts a:hover .brief-x-author{text-decoration:underline;text-underline-offset:.2em}.brief-page .brief-x-count{color:var(--public-muted);font-family:var(--font-jetbrains),ui-monospace,monospace;font-size:.75rem}@media (max-width:639px){.brief-page .brief-x-text{font-size:.9375rem;line-height:1.8}.brief-page .brief-x-posts{flex-direction:column;gap:.5rem}}.public-events{--bg:var(--public-paper);--wash:var(--public-wash);--ink:var(--public-ink);--ink-2:color-mix(in srgb,var(--public-ink) 70%,var(--public-muted));--ink-3:var(--public-muted);--hairline:var(--public-line);--hairline-2:color-mix(in srgb,var(--public-line) 80%,var(--public-muted));--vermilion:var(--public-accent);--vermilion-deep:color-mix(in srgb,var(--public-accent) 80%,var(--public-ink));--on-accent:#ffffff;--font-sans:var(--font-inter),Inter,-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;--font-mono:var(--font-geist-mono),ui-monospace,"SF Mono",Menlo,"PingFang SC",monospace;--gutter:clamp(16px,4.5vw,24px)}html:has(.public-events){scroll-behavior:auto}.public-events{color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}.public-events button,.public-events input,.public-events select{font:inherit}.public-events a,.public-events button,.public-events input,.public-events select{-webkit-tap-highlight-color:transparent}.public-events a:focus-visible,.public-events button:focus-visible,.public-events input:focus-visible,.public-events select:focus-visible{outline:3px solid var(--vermilion-deep);outline-offset:2px}.public-events .sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.app-header{padding:22px 0 0;border-bottom:1px solid var(--hairline)}.header-top{justify-content:space-between;gap:14px}.header-top,.site-identity{display:flex;align-items:center}.site-identity{gap:11px;min-width:0}.site-mark{flex:0 0 auto;display:grid;place-items:center;width:38px;height:38px;border-radius:7px;background:var(--vermilion);color:var(--on-accent);font-size:19px;font-weight:800;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.22)}.site-eyebrow{margin:0;overflow:hidden;color:var(--ink-2);font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:.14em;white-space:nowrap;text-overflow:ellipsis}.app-header h1{margin:0}.site-intro{max-width:56ch;margin:10px 0 0;color:var(--ink-2);font-size:14px;line-height:1.65}.header-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px 9px;margin:14px 0 0;color:var(--ink-3);font-family:var(--font-mono);font-size:11px;letter-spacing:.02em;font-variant-numeric:tabular-nums}.meta-dot{color:var(--hairline-2)}.view-switch{display:flex;gap:24px;margin-top:16px}.view-switch button{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 0 11px;border:0;background:transparent;color:var(--ink-3);cursor:pointer;font-size:14px;font-weight:680;transition:color .12s ease}.view-switch button:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;background:transparent}.view-switch button.active,.view-switch button:hover{color:var(--ink)}.view-switch button.active:after{background:var(--vermilion)}.view-switch small{display:inline-grid;min-width:22px;height:20px;padding:0 6px;place-items:center;border-radius:999px;font-family:var(--font-mono);font-size:9.5px;font-weight:700;font-variant-numeric:tabular-nums}.view-switch button.active small,.view-switch small{background:var(--public-wash);color:var(--public-ink)}.language-switch{flex:0 0 auto;display:inline-flex;gap:2px;padding:3px;border:1px solid var(--hairline-2);border-radius:999px;background:var(--bg)}.language-switch button{min-width:56px;min-height:44px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--ink-3);cursor:pointer;font-size:12px;font-weight:650;transition:color .12s ease,background-color .12s ease}.language-switch button:hover{color:var(--ink)}.language-switch button.active{background:var(--ink);color:var(--bg)}.tool-body{padding-bottom:56px}.filter-panel{display:grid;gap:10px;padding:16px 0 14px}.search-field,.select-filters label{display:grid;gap:6px;min-width:0}.field-label{color:var(--ink-3);font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:.08em}.search-field input,.select-filters select{height:46px;border:1px solid var(--hairline-2);border-radius:9px;background:var(--bg);color:var(--ink);font-size:16px;transition:border-color .12s ease}.search-field input{width:100%;padding:0 14px}.search-field input:hover,.select-filters select:hover{border-color:var(--ink-3)}.search-field input:focus,.select-filters select:focus{border-color:var(--ink)}.search-field input::placeholder{color:var(--ink-3);opacity:1}.select-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.select-filters select{width:100%;padding:0 30px 0 12px;cursor:pointer;text-overflow:ellipsis}@media (max-width:719px){.filter-panel .field-label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}@media (max-width:399px){.public-events:lang(en) .select-filters{grid-template-columns:minmax(0,1fr)}}.date-bar{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--public-paper) 94%,transparent);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);border-bottom:1px solid var(--hairline);box-shadow:0 8px 18px -14px rgba(22,25,28,.28)}.date-bar-inner{display:flex;flex-wrap:wrap;align-items:center;gap:0 10px;padding:9px 0}.date-tabs{flex:1 1 100%;min-width:0;display:flex;gap:6px;margin:-4px;padding:4px 26px 4px 4px;overflow-x:auto;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:none;mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}.date-tabs::-webkit-scrollbar{display:none}.date-tabs button{position:relative;flex:0 0 auto;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:54px;height:50px;padding:0 11px;border:1px solid var(--hairline-2);border-radius:9px;background:var(--bg);color:var(--ink-2);cursor:pointer;white-space:nowrap;transition:border-color .12s ease,color .12s ease,background-color .12s ease}.tab-day{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.tab-day,.tab-num{font-family:var(--font-mono)}.tab-num{font-size:15px;font-weight:650;font-variant-numeric:tabular-nums}.date-tabs button:hover{border-color:var(--ink-3);color:var(--ink)}.date-tabs button.active{border-color:var(--vermilion);background:var(--vermilion);color:var(--on-accent)}.date-tabs button.active .tab-day{color:var(--on-accent)}.tab-zero{position:absolute;top:4px;right:5px;color:var(--ink-3);font-family:var(--font-mono);font-size:8px;font-weight:700}.date-tabs button.active .tab-zero{color:var(--on-accent)}.month-filter{display:flex;align-items:center;gap:10px;min-width:0}.month-filter>span{color:var(--ink-3);font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:.08em}.month-filter select{width:min(240px,calc(100vw - var(--gutter) * 2 - 54px));height:44px;padding:0 34px 0 12px;border:1px solid var(--hairline-2);border-radius:9px;background:var(--bg);color:var(--ink);cursor:pointer;font-size:16px}.month-filter select:disabled{color:var(--ink-3);cursor:default}.month-filter select:focus{border-color:var(--ink)}.results-line{flex:1 1 100%;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;padding-top:8px;border-top:1px solid var(--hairline);color:var(--ink-3);font-family:var(--font-mono);font-size:11px;white-space:nowrap}.empty-state button,.results-line button{min-height:44px;padding:0 10px;border:1px solid var(--hairline-2);border-radius:8px;background:var(--bg);color:var(--vermilion-deep);cursor:pointer;font-family:var(--font-mono);font-size:11px;font-weight:700}.empty-state button:hover,.results-line button:hover{color:var(--vermilion-deep)}.event-results:focus-visible{outline:3px solid var(--vermilion-deep);outline-offset:4px}.day-section{display:grid;gap:14px;padding:24px 0 30px;border-top:1px solid var(--hairline-2)}.day-heading{display:flex;align-items:baseline;gap:10px}.day-heading h2,.day-heading p,.day-heading span{margin:0}.day-heading p{color:var(--vermilion);font-family:var(--font-mono);font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums}.day-heading h2{line-height:1.05}.day-heading span{margin-left:auto;color:var(--ink-3);font-family:var(--font-mono);font-size:11px;white-space:nowrap}.event-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.pagination-controls{display:flex;align-items:center;justify-content:center;gap:14px;padding:8px 0 34px}.pagination-controls p{margin:0;color:var(--ink-3);font-family:var(--font-mono);font-size:11px;font-variant-numeric:tabular-nums}.pagination-controls p:focus-visible{outline:3px solid var(--vermilion-deep);outline-offset:4px}.pagination-controls button{min-height:44px;padding:0 18px;border:1px solid var(--hairline-2);border-radius:9px;background:var(--bg);color:var(--vermilion-deep);cursor:pointer;font-size:13px;font-weight:700}.pagination-controls button:hover{border-color:var(--vermilion)}@media (max-width:559px){.pagination-controls{flex-direction:column;align-items:stretch;gap:10px}.pagination-controls p{text-align:center}.pagination-controls button{width:100%}}.event-card{--category-color:#6d7680;display:flex;flex-direction:column;overflow:hidden;padding:17px;border:1px solid var(--hairline);border-radius:10px;background:var(--bg);transition:border-color .15s ease}.event-media{position:relative;aspect-ratio:16/9;margin:-17px -17px 15px;overflow:hidden;border-bottom:1px solid var(--hairline-2);background:var(--wash)}.event-media img{display:block;width:100%;height:100%;object-fit:cover}.event-media-contain img{object-fit:contain}.generated-image-badge{position:absolute;right:9px;bottom:9px;padding:5px 8px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(20,27,35,.78);color:#fff;font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.03em;line-height:1;backdrop-filter:blur(5px)}@media (hover:hover){.event-card:hover{border-color:var(--hairline-2)}}.event-card[data-category="Talks & demos"]{--category-color:#41618e}.event-card[data-category=Social]{--category-color:#b06e2f}.event-card[data-category=Meetup]{--category-color:#2e7a68}.event-card[data-category=Workshop]{--category-color:#8d5070}.event-card[data-category=Movement]{--category-color:#407d92}.event-card[data-category=Creative]{--category-color:#7d6a3e}.card-meta{justify-content:space-between;gap:10px}.card-meta,.card-tags{display:flex;align-items:center}.card-tags{min-width:0;flex-wrap:wrap;gap:6px}.category-tag{gap:6px;padding:4px 9px 4px 8px;background:color-mix(in srgb,var(--category-color) 9%,var(--bg));color:color-mix(in srgb,var(--category-color) 78%,var(--ink));font-weight:650}.category-tag,.topic-tag{display:inline-flex;align-items:center;border-radius:999px;font-family:var(--font-mono);font-size:10px;letter-spacing:.03em;white-space:nowrap}.topic-tag{padding:4px 9px;background:color-mix(in srgb,var(--vermilion) 12%,var(--bg));color:color-mix(in srgb,var(--vermilion) 70%,var(--ink));font-weight:700}.category-tag:before{content:"";width:7px;height:7px;border-radius:999px;background:var(--category-color)}.card-meta time{color:var(--ink-3);font-family:var(--font-mono);font-size:11px;font-variant-numeric:tabular-nums;text-align:right}.event-card h3{margin:12px 0 4px;font-size:17px;font-weight:600;line-height:1.5;letter-spacing:-.015em}.event-original-title{margin:0 0 10px;color:var(--ink-2);font-size:11.5px;line-height:1.5}.event-summary{margin:0 0 14px;color:var(--ink-2);font-size:13px;line-height:1.68}.event-details{display:grid;gap:6px}.event-details p{margin:0;display:grid;grid-template-columns:46px minmax(0,1fr);gap:8px;font-size:11.5px;line-height:1.5}.event-details p>span{padding-top:1px;color:var(--ink-3);font-family:var(--font-mono);font-size:10.5px}.event-details strong{min-width:0;color:var(--ink-2);font-weight:500}.public-events:lang(en) .event-details p{grid-template-columns:64px minmax(0,1fr)}.card-footer{margin-top:auto;padding-top:13px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--hairline)}.registration-state{color:var(--ink-3);font-family:var(--font-mono);font-size:10.5px}.registration-state.cancelled{color:#aa4038;font-weight:700}.source-unavailable{color:var(--ink-3);font-family:var(--font-mono);font-size:10.5px;text-align:right}.past-event-card{background:color-mix(in srgb,var(--wash) 34%,var(--bg))}.card-footer a{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:var(--vermilion);text-decoration:none;font-size:12.5px;font-weight:680;transition:color .12s ease}.card-footer a:hover{color:var(--vermilion-deep)}.card-footer a span{transition:transform .15s ease}.card-footer a:hover span{transform:translate(2px,-2px)}.source-scope-panel,.topic-scope-panel{display:flex;align-items:center;justify-content:space-between;gap:14px}.topic-scope-panel{padding:16px 0 4px}.source-scope-panel{padding:12px 0;border-top:1px solid var(--hairline)}.source-scope-label,.topic-scope-label{flex:0 0 auto;color:var(--ink-3);font-family:var(--font-mono);font-size:10.5px;font-weight:650;letter-spacing:.08em}.source-scope-switch,.topic-scope-switch{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.topic-scope-switch{width:min(100%,640px);grid-template-columns:repeat(3,minmax(0,1fr))}.source-scope-switch button,.topic-scope-switch button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 13px;border:1px solid var(--hairline-2);border-radius:9px;background:var(--bg);color:var(--ink-2);cursor:pointer;font-size:12px;font-weight:680;white-space:nowrap}.topic-scope-switch button{min-height:48px;white-space:normal}.source-scope-switch button:hover,.topic-scope-switch button:hover{border-color:var(--ink-3);color:var(--ink)}.source-scope-switch button.active,.topic-scope-switch button.active{border-color:var(--vermilion);background:var(--vermilion);color:var(--on-accent)}.source-scope-switch strong,.topic-scope-switch strong{min-width:23px;height:20px;display:inline-grid;place-items:center;padding:0 5px;border-radius:999px;background:var(--wash);color:var(--ink-2);font-family:var(--font-mono);font-size:9.5px;font-variant-numeric:tabular-nums}.source-scope-switch button.active strong,.topic-scope-switch button.active strong{background:rgba(0,0,0,.16);color:var(--on-accent)}.empty-state{padding:60px 20px;border-top:2px solid var(--ink);text-align:center}.empty-state p{margin:0 0 14px;color:var(--ink-2)}.empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.events-footnote{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:22px 0 calc(22px + env(safe-area-inset-bottom));border-top:1px solid var(--hairline);color:var(--ink-3);font-size:12px;line-height:1.6}.events-footnote p{margin:0}.events-footnote a{color:var(--ink);font-family:var(--font-mono);font-size:11px;text-underline-offset:3px}.events-footnote a:hover{color:var(--vermilion)}.events-footnote>span{font-family:var(--font-mono);font-size:10.5px;white-space:nowrap}@media (min-width:560px){.event-grid{grid-template-columns:repeat(auto-fill,minmax(272px,1fr));gap:14px}}@media (min-width:720px){.app-header{padding:24px 0 0}.filter-panel{grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:14px;padding:20px 0 16px}.select-filters{grid-template-columns:repeat(2,172px)}.date-bar-inner{flex-wrap:nowrap;padding:10px 0}.date-tabs{flex:1 1 auto}.history-bar .date-bar-inner{justify-content:space-between}.results-line{flex:0 0 auto;margin-top:0;padding-top:0;border-top:0}.events-footnote{flex-direction:row;align-items:center;justify-content:space-between;gap:20px}}@media (max-width:559px){.source-scope-panel,.topic-scope-panel{align-items:stretch;flex-direction:column;gap:8px}.source-scope-switch,.topic-scope-switch{width:100%}}@media (max-width:439px){.topic-scope-switch{grid-template-columns:repeat(3,minmax(0,1fr))}.topic-scope-switch button{flex-direction:column;gap:5px;min-height:66px;padding:8px 4px;font-size:11px;line-height:1.35}.source-scope-switch{grid-template-columns:minmax(0,1fr)}}@media (min-width:900px){.app-header{padding:24px 0 0}.tool-body{padding-bottom:72px}.day-section{grid-template-columns:112px minmax(0,1fr);gap:20px;padding:24px 0 30px}.day-heading{align-self:start;position:sticky;top:86px;display:block}.day-heading p{font-size:13px}.day-heading h2{margin-top:3px}.day-heading span{display:block;margin:8px 0 0}.event-details p{grid-template-columns:52px minmax(0,1fr)}}@media (max-width:359px){.header-top,.site-identity{gap:8px}.site-mark{width:34px;height:34px;font-size:17px}.site-eyebrow{overflow:visible;font-size:9px;letter-spacing:.08em;text-overflow:clip}.language-switch button{min-width:0;padding:0 8px;font-size:11px}.view-switch{gap:18px}}@media (prefers-reduced-motion:reduce){.public-events,.public-events *,.public-events :after,.public-events :before{transition-duration:.01ms!important;animation-duration:.01ms!important}}.newsletter-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:14px 0 4px}.newsletter-actions a{font-size:14px;font-weight:650;text-underline-offset:4px}@media(max-width:600px){.newsletter-actions{gap:18px;margin-top:18px}}.events-footnote{flex-wrap:wrap}.events-footnote>.analytics-preference{flex-basis:100%;font-size:.75rem;white-space:normal;font-family:inherit}.analytics-preference button{text-decoration:underline;text-underline-offset:3px;cursor:pointer}html.dark .public-events{color-scheme:dark;--on-accent:var(--public-paper)}@supports not (backdrop-filter:blur(1px)){.date-bar{background:var(--public-paper)}}@layer components{.blog-v2 .prose{color:var(--tw-prose-body);max-width:65ch}.blog-v2 .prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.blog-v2 .prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.blog-v2 .prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.blog-v2 .prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.blog-v2 .prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.blog-v2 .prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.blog-v2 .prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.blog-v2 .prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.blog-v2 .prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.blog-v2 .prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.blog-v2 .prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.blog-v2 .prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.blog-v2 .prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.blog-v2 .prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.blog-v2 .prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.blog-v2 .prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.blog-v2 .prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.blog-v2 .prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.blog-v2 .prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.blog-v2 .prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.blog-v2 .prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.blog-v2 .prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.blog-v2 .prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.blog-v2 .prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.blog-v2 .prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.blog-v2 .prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.blog-v2 .prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.blog-v2 .prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.blog-v2 .prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.blog-v2 .prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.blog-v2 .prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.blog-v2 .prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.blog-v2 .prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.blog-v2 .prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.blog-v2 .prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.blog-v2 .prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.blog-v2 .prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.blog-v2 .prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.blog-v2 .prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after,.blog-v2 .prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.blog-v2 .prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.blog-v2 .prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.blog-v2 .prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.blog-v2 .prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.blog-v2 .prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.blog-v2 .prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.blog-v2 .prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.blog-v2 .prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.blog-v2 .prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.blog-v2 .prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after,.blog-v2 .prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.blog-v2 .prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.blog-v2 .prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.blog-v2 .prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.blog-v2 .prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.blog-v2 .prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.blog-v2 .prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.blog-v2 .prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.blog-v2 .prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.blog-v2 .prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.blog-v2 .prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.blog-v2 .prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.blog-v2 .prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.blog-v2 .prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.blog-v2 .prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.blog-v2 .prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.blog-v2 .prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.blog-v2 .prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.blog-v2 .prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.blog-v2 .prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.blog-v2 .prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.blog-v2 .prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.blog-v2 .prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.blog-v2 .prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.blog-v2 .prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.blog-v2 .prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.blog-v2 .prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.blog-v2 .prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)),.blog-v2 .prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.blog-v2 .prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.blog-v2 .prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.blog-v2 .prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.blog-v2 .prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.blog-v2 .prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.blog-v2 .prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.blog-v2 .prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.blog-v2 .prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.blog-v2 .prose-zinc{--tw-prose-body:oklch(37% .013 285.805);--tw-prose-headings:oklch(21% .006 285.885);--tw-prose-lead:oklch(44.2% .017 285.786);--tw-prose-links:oklch(21% .006 285.885);--tw-prose-bold:oklch(21% .006 285.885);--tw-prose-counters:oklch(55.2% .016 285.938);--tw-prose-bullets:oklch(87.1% .006 286.286);--tw-prose-hr:oklch(92% .004 286.32);--tw-prose-quotes:oklch(21% .006 285.885);--tw-prose-quote-borders:oklch(92% .004 286.32);--tw-prose-captions:oklch(55.2% .016 285.938);--tw-prose-kbd:oklch(21% .006 285.885);--tw-prose-kbd-shadows:oklab(21% .00164225 -.00577088/.1);--tw-prose-code:oklch(21% .006 285.885);--tw-prose-pre-code:oklch(92% .004 286.32);--tw-prose-pre-bg:oklch(27.4% .006 286.033);--tw-prose-th-borders:oklch(87.1% .006 286.286);--tw-prose-td-borders:oklch(92% .004 286.32);--tw-prose-invert-body:oklch(87.1% .006 286.286);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.5% .015 286.067);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.5% .015 286.067);--tw-prose-invert-bullets:oklch(44.2% .017 285.786);--tw-prose-invert-hr:oklch(37% .013 285.805);--tw-prose-invert-quotes:oklch(96.7% .001 286.375);--tw-prose-invert-quote-borders:oklch(37% .013 285.805);--tw-prose-invert-captions:oklch(70.5% .015 286.067);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.1% .006 286.286);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.2% .017 285.786);--tw-prose-invert-td-borders:oklch(37% .013 285.805)}.blog-v2 .dark\:prose-invert:where(.dark,.dark *){--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-kbd:var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}}@layer utilities{.blog-v2 .prose-headings\:font-bold :where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-font-weight:700;font-weight:700}.blog-v2 .prose-headings\:tracking-tight :where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-tracking:-0.025em;letter-spacing:-.025em}.blog-v2 .prose-headings\:text-zinc-950 :where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *)){color:#1b1f27}.blog-v2 .dark\:prose-headings\:text-white:where(.dark,.dark *) :where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *)){color:#fff}.blog-v2 .prose-h1\:text-3xl :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.875rem;line-height:var(--tw-leading,calc(2.25 / 1.875))}.blog-v2 .prose-h2\:mt-12 :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:calc(.25rem * 12)}.blog-v2 .prose-h2\:mb-4 :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:calc(.25rem * 4)}.blog-v2 .prose-h2\:text-2xl :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.5rem;line-height:var(--tw-leading,calc(2 / 1.5))}.blog-v2 .prose-h3\:mt-8 :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:calc(.25rem * 8)}.blog-v2 .prose-h3\:mb-3 :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:calc(.25rem * 3)}.blog-v2 .prose-h3\:text-xl :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.25rem;line-height:var(--tw-leading,calc(1.75 / 1.25))}.blog-v2 .prose-p\:my-4 :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:calc(.25rem * 4)}.blog-v2 .prose-p\:text-\[15px\] :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:15px}.blog-v2 .prose-p\:leading-8 :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-leading:calc(0.25rem * 8);line-height:calc(.25rem * 8)}@media (min-width:40rem){.blog-v2 .sm\:prose-p\:text-\[16px\] :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:16px}}.blog-v2 .prose-a\:text-cyan-600 :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:oklch(60.9% .126 221.723)}.blog-v2 .dark\:prose-a\:text-cyan-400:where(.dark,.dark *) :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:oklch(78.9% .154 211.53)}.blog-v2 .prose-pre\:rounded-xl :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:.75rem}.blog-v2 .prose-pre\:border :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-style:var(--tw-border-style);border-width:1px}.blog-v2 .prose-pre\:border-zinc-200 :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:#e5e7eb}.blog-v2 .prose-pre\:bg-zinc-900 :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:#20252e}.blog-v2 .prose-pre\:text-zinc-100 :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:#f6f7f9}.blog-v2 .dark\:prose-pre\:border-zinc-800:where(.dark,.dark *) :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:#262c37}.blog-v2 .dark\:prose-pre\:bg-zinc-950:where(.dark,.dark *) :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:#1b1f27}.blog-v2 .prose-li\:my-1 :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:.25rem}.blog-v2 .prose-table\:my-8 :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:calc(.25rem * 8)}.blog-v2 .prose-table\:block :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){display:block}.blog-v2 .prose-table\:w-full :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%}.blog-v2 .prose-table\:overflow-x-auto :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){overflow-x:auto}.blog-v2 .prose-td\:align-top :where(td):not(:where([class~=not-prose],[class~=not-prose] *)),.blog-v2 .prose-th\:align-top :where(th):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.blog-v2 .prose-img\:mx-auto :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-inline:auto}.blog-v2 .prose-img\:my-8 :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:calc(.25rem * 8)}.blog-v2 .prose-img\:rounded-2xl :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){border-radius:1rem}.blog-v2 .prose-hr\:my-10 :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:calc(.25rem * 10)}.blog-v2 .prose-hr\:border-zinc-200 :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:#e5e7eb}.blog-v2 .dark\:prose-hr\:border-zinc-800:where(.dark,.dark *) :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:#262c37}}.blog-v2 .prose .lead p{font-size:clamp(1.05rem,.35vw + 1rem,1.24rem);line-height:1.9;color:rgb(24 24 27)}.blog-v2 .prose .essay-body{max-width:52rem;margin-inline:auto}html.dark .blog-v2 .prose .lead p{color:rgb(244 244 245)}.blog-v2 .prose .chart,.blog-v2 .prose .note,.blog-v2 .prose .three-up .card{border:1px solid rgb(15 23 42/.1);border-radius:20px;background:linear-gradient(180deg,rgba(248,250,252,.98),rgba(241,245,249,.95));box-shadow:0 18px 48px rgba(15,23,42,.08)}html.dark .blog-v2 .prose .chart,html.dark .blog-v2 .prose .note,html.dark .blog-v2 .prose .three-up .card{border-color:rgb(255 255 255/.1);background:linear-gradient(180deg,rgba(24,24,27,.88),rgba(15,23,42,.82));box-shadow:0 18px 48px rgba(0,0,0,.3)}.blog-v2 .prose .note{margin:2rem 0;padding:1.35rem 1.35rem 1rem;background:linear-gradient(180deg,rgba(232,244,252,.92),rgba(240,249,255,.96))}html.dark .blog-v2 .prose .note{background:linear-gradient(180deg,rgba(23,37,84,.52),rgba(12,74,110,.42))}.blog-v2 .prose .card .num,.blog-v2 .prose .note-title,.blog-v2 .prose .sources h3{margin-bottom:.65rem;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#2563eb}html.dark .blog-v2 .prose .card .num,html.dark .blog-v2 .prose .note-title,html.dark .blog-v2 .prose .sources h3{color:#93c5fd}.blog-v2 .prose .quote{margin:2rem 0;padding:.3rem 0 .3rem 1.1rem;border-left:3px solid #2563eb;color:rgb(24 24 27)}html.dark .blog-v2 .prose .quote{border-left-color:#93c5fd;color:rgb(244 244 245)}.blog-v2 .prose .chart{margin:2rem 0;padding:1.3rem}.blog-v2 .prose .chart .sub{display:block;margin:.35rem 0 1rem;color:rgb(82 82 91);font-size:.85rem}html.dark .blog-v2 .prose .chart .sub{color:rgb(161 161 170)}.blog-v2 .prose .legend{display:flex;flex-wrap:wrap;gap:.85rem 1.15rem;margin:0 0 1rem;font-size:.78rem;font-weight:700;color:rgb(82 82 91)}html.dark .blog-v2 .prose .legend{color:rgb(161 161 170)}.blog-v2 .prose .legend span{display:inline-flex;align-items:center;gap:.5rem}.blog-v2 .prose .legend i{display:inline-block;width:.75rem;height:.75rem;border-radius:999px}.blog-v2 .prose .legend .fill-a{background:linear-gradient(90deg,rgba(29,78,216,.4),rgba(59,130,246,.92))}.blog-v2 .prose .legend .fill-b{background:linear-gradient(90deg,rgba(245,158,11,.35),rgba(249,115,22,.92))}.blog-v2 .prose .bar-stack,.blog-v2 .prose .bars{display:grid;gap:.9rem}.blog-v2 .prose .bar-group{display:grid;grid-template-columns:minmax(8rem,10.5rem) minmax(0,1fr);gap:.85rem;align-items:start}.blog-v2 .prose .label,.blog-v2 .prose .series,.blog-v2 .prose .val{font-size:.78rem;font-weight:700;color:rgb(82 82 91)}html.dark .blog-v2 .prose .label,html.dark .blog-v2 .prose .series,html.dark .blog-v2 .prose .val{color:rgb(161 161 170)}.blog-v2 .prose .bar-line{display:grid;grid-template-columns:4rem minmax(0,1fr) 3.25rem;gap:.75rem;align-items:center}.blog-v2 .prose .track{height:.72rem;overflow:hidden;border-radius:999px;background:rgb(113 113 122/.15)}.blog-v2 .prose .fill-a,.blog-v2 .prose .fill-b{height:100%;border-radius:inherit}.blog-v2 .prose .fill-a{background:linear-gradient(90deg,rgba(29,78,216,.4),rgba(59,130,246,.92))}.blog-v2 .prose .fill-b{background:linear-gradient(90deg,rgba(245,158,11,.35),rgba(249,115,22,.92))}.blog-v2 .prose .three-up{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2rem 0 1rem}.blog-v2 .prose .three-up .card{padding:1.15rem}.blog-v2 .prose .three-up .card p{margin:0;color:rgb(82 82 91)}html.dark .blog-v2 .prose .three-up .card p{color:rgb(161 161 170)}.blog-v2 .prose .sources{margin-top:3rem;padding-top:1.4rem;border-top:1px solid rgb(15 23 42/.1)}html.dark .blog-v2 .prose .sources{border-top-color:rgb(255 255 255/.1)}.blog-v2 .prose .sources ul{margin:0;padding-left:1.15rem}.blog-v2 .prose .sources li{margin-bottom:.75rem}.blog-v2 .prose .img-block{margin:2.35rem 0;text-align:center}.blog-v2 .prose .img-block img{width:100%;max-width:100%;border-radius:22px;border:1px solid rgb(255 255 255/.62);background:radial-gradient(circle at 18% 0,rgba(255,255,255,.9),transparent 40%),linear-gradient(135deg,rgba(255,255,255,.7),rgba(226,232,240,.5));box-shadow:0 24px 70px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.7);padding:.45rem}html.dark .blog-v2 .prose .img-block img{border-color:rgb(255 255 255/.12);background:radial-gradient(circle at 18% 0,rgba(255,255,255,.12),transparent 40%),linear-gradient(135deg,rgba(255,255,255,.08),rgba(15,23,42,.58));box-shadow:0 24px 70px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.14)}.blog-v2 .prose .img-block .caption{margin-top:.75rem;font-size:.82rem;line-height:1.7;color:rgb(82 82 91)}html.dark .blog-v2 .prose .img-block .caption{color:rgb(161 161 170)}.blog-v2 .prose .stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin:2rem 0}.blog-v2 .prose .stat-card{position:relative;overflow:hidden;border:1px solid rgb(15 23 42/.1);border-radius:18px;background:radial-gradient(circle at 18% 0,rgba(255,255,255,.88),transparent 38%),linear-gradient(135deg,rgba(255,255,255,.76),rgba(226,232,240,.52));backdrop-filter:blur(18px) saturate(170%);-webkit-backdrop-filter:blur(18px) saturate(170%);box-shadow:0 20px 54px rgba(15,23,42,.1),inset 0 1px 0 rgba(255,255,255,.74),inset 0 -1px 0 rgba(15,23,42,.05)}html.dark .blog-v2 .prose .stat-card{border-color:rgb(255 255 255/.1);background:radial-gradient(circle at 18% 0,rgba(255,255,255,.14),transparent 42%),linear-gradient(135deg,rgba(255,255,255,.1),rgba(15,23,42,.64));box-shadow:0 20px 54px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(0,0,0,.24)}.blog-v2 .prose .callout:before,.blog-v2 .prose .danger-box:before,.blog-v2 .prose .highlight-box:before,.blog-v2 .prose .stat-card:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(145deg,rgba(255,255,255,.35),transparent 34%,transparent 66%,rgba(255,255,255,.1)),radial-gradient(circle at 80% 12%,rgba(59,130,246,.12),transparent 28%);box-shadow:inset 1px 1px 0 rgba(255,255,255,.52),inset -1px -1px 0 rgba(255,255,255,.12)}html.dark .blog-v2 .prose .callout:before,html.dark .blog-v2 .prose .danger-box:before,html.dark .blog-v2 .prose .highlight-box:before,html.dark .blog-v2 .prose .stat-card:before{background:linear-gradient(145deg,rgba(255,255,255,.12),transparent 36%,transparent 66%,rgba(255,255,255,.04)),radial-gradient(circle at 80% 12%,rgba(94,160,255,.14),transparent 30%);box-shadow:inset 1px 1px 0 rgba(255,255,255,.18),inset -1px -1px 0 rgba(255,255,255,.04)}.blog-v2 .prose .stat-card{padding:1.15rem 1rem;text-align:center}.blog-v2 .prose .stat-card .num,.blog-v2 .prose .stat-card .number{margin:0;font-size:clamp(1.4rem,1vw + 1.15rem,2rem);font-weight:900;letter-spacing:-.04em;color:#2563eb}html.dark .blog-v2 .prose .stat-card .num,html.dark .blog-v2 .prose .stat-card .number{color:#93c5fd}.blog-v2 .prose .stat-card .label{margin-top:.35rem;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:rgb(82 82 91)}html.dark .blog-v2 .prose .stat-card .label{color:rgb(161 161 170)}.blog-v2 .prose .danger-box,.blog-v2 .prose .highlight-box{position:relative;overflow:hidden;margin:2rem 0;padding:1.3rem 1.35rem 1rem;border:1px solid rgb(15 23 42/.1);border-left:4px solid #2563eb;border-radius:18px;background:radial-gradient(circle at 18% 0,rgba(255,255,255,.88),transparent 38%),linear-gradient(135deg,rgba(255,255,255,.76),rgba(226,232,240,.52));backdrop-filter:blur(18px) saturate(170%);-webkit-backdrop-filter:blur(18px) saturate(170%);box-shadow:0 20px 54px rgba(15,23,42,.1),inset 0 1px 0 rgba(255,255,255,.74)}html.dark .blog-v2 .prose .danger-box,html.dark .blog-v2 .prose .highlight-box{border-color:rgb(255 255 255/.1);background:radial-gradient(circle at 18% 0,rgba(255,255,255,.14),transparent 42%),linear-gradient(135deg,rgba(255,255,255,.1),rgba(15,23,42,.64));box-shadow:0 20px 54px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.16)}.blog-v2 .prose .highlight-box{border-left-color:#2563eb}.blog-v2 .prose .danger-box{border-left-color:#dc2626}.blog-v2 .prose .danger-box p:last-child,.blog-v2 .prose .highlight-box p:last-child{margin-bottom:0}.blog-v2 .prose .highlight-box strong{color:#2563eb}.blog-v2 .prose .danger-box strong{color:#dc2626}.blog-v2 .prose .callout{position:relative;overflow:hidden;margin:2rem 0;padding:1.3rem 1.35rem 1rem;border:1px solid rgb(15 23 42/.1);border-left:4px solid #2563eb;border-radius:18px;background:radial-gradient(circle at 18% 0,rgba(255,255,255,.88),transparent 38%),linear-gradient(135deg,rgba(255,255,255,.76),rgba(226,232,240,.52));backdrop-filter:blur(18px) saturate(170%);-webkit-backdrop-filter:blur(18px) saturate(170%);box-shadow:0 20px 54px rgba(15,23,42,.1),inset 0 1px 0 rgba(255,255,255,.74)}html.dark .blog-v2 .prose .callout{border-color:rgb(255 255 255/.1);background:radial-gradient(circle at 18% 0,rgba(255,255,255,.14),transparent 42%),linear-gradient(135deg,rgba(255,255,255,.1),rgba(15,23,42,.64));box-shadow:0 20px 54px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.16)}.blog-v2 .prose .callout .callout-title{margin-bottom:.55rem;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#2563eb}.blog-v2 .prose .callout p:last-child{margin-bottom:0}.blog-v2 .prose .chart,.blog-v2 .prose .note,.blog-v2 .prose .three-up .card{position:relative;overflow:hidden;border:1px solid rgb(255 255 255/.62);background:radial-gradient(circle at 18% 0,rgb(255 255 255/.86),transparent 40%),linear-gradient(135deg,rgb(255 255 255/.72),rgb(226 232 240/.48));backdrop-filter:blur(18px) saturate(170%);-webkit-backdrop-filter:blur(18px) saturate(170%);box-shadow:0 22px 64px rgb(15 23 42/.1),inset 0 1px 0 rgb(255 255 255/.72),inset 0 -1px 0 rgb(15 23 42/.05)}html.dark .blog-v2 .prose .chart,html.dark .blog-v2 .prose .note,html.dark .blog-v2 .prose .three-up .card{border-color:rgb(255 255 255/.13);background:radial-gradient(circle at 18% 0,rgb(255 255 255/.13),transparent 42%),linear-gradient(135deg,rgb(255 255 255/.09),rgb(15 23 42/.62));box-shadow:0 22px 64px rgb(0 0 0/.38),inset 0 1px 0 rgb(255 255 255/.16),inset 0 -1px 0 rgb(0 0 0/.24)}.blog-v2 .prose blockquote cite{display:block;margin-top:.55rem;font-size:.82rem;font-style:normal;font-weight:700;color:rgb(82 82 91)}html.dark .blog-v2 .prose blockquote cite{color:rgb(161 161 170)}@media (max-width:900px){.blog-v2 .prose .stat-row,.blog-v2 .prose .three-up{grid-template-columns:1fr}}@media (max-width:720px){.blog-v2 .prose .essay-body{max-width:100%}.blog-v2 .prose .bar-group{grid-template-columns:1fr}.blog-v2 .prose .bar-line{grid-template-columns:3.5rem minmax(0,1fr) 2.9rem}}.blog-v2 .brand-mark{display:inline-block;flex-shrink:0;object-fit:contain;vertical-align:middle}.public-site .blog-v2{--bv-radius:10px;color:var(--public-ink)}.public-site .blog-v2 .bv-back{display:inline-flex;align-items:center;gap:.35rem;min-height:32px;font-size:.875rem;color:var(--public-muted);text-decoration:none}.public-site .blog-v2 .bv-back:hover{color:var(--public-accent)}.public-site .blog-v2 .bv-kicker{display:flex;flex-wrap:wrap;gap:.2rem .9rem;margin-top:clamp(1rem,3vw,1.75rem)}.public-site .blog-v2 .bv-title{margin:.6rem 0 0;color:var(--public-ink);text-wrap:balance}.public-site .blog-v2 .bv-dek{margin:1rem 0 0;font-size:clamp(1.02rem,.94rem + .4vw,1.2rem);line-height:1.75;color:var(--public-muted);text-wrap:pretty}.public-site .blog-v2 .bv-byline{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-top:clamp(1.1rem,2.5vw,1.6rem);padding-bottom:1.1rem;border-bottom:1px solid var(--public-line);font-size:.875rem;color:var(--public-muted)}.public-site .blog-v2 .bv-sep{opacity:.55}.public-site .blog-v2 .bv-date{white-space:nowrap}.public-site .blog-v2 .bv-share{display:contents}.public-site .blog-v2 .bv-share-row{margin-left:auto;display:flex;align-items:center;gap:.75rem}.public-site .blog-v2 .bv-share-note{font-size:.8125rem;color:var(--public-accent)}.public-site .blog-v2 .public-action{gap:.4rem;font:inherit;font-size:14px}.public-site .blog-v2 .public-action:disabled{opacity:.55;cursor:default}.public-site .blog-v2 .bv-share-panel{flex-basis:100%;order:99;box-sizing:border-box;margin-top:.5rem;padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--public-line);border-radius:var(--bv-radius);background:var(--public-wash);color:var(--public-ink)}.public-site .blog-v2 .bv-share-panel h2{margin:.35rem 0 0;color:var(--public-ink)}.public-site .blog-v2 .bv-share-panel .bv-share-desc{margin:.5rem 0 0;font-size:.875rem;line-height:1.7;color:var(--public-muted)}.public-site .blog-v2 .bv-share-panel .bv-share-label{font-size:.75rem;font-weight:600;letter-spacing:.06em;color:var(--public-accent)}.public-site .blog-v2 .bv-share-link{margin-top:1rem;font-size:.8125rem;line-height:1.6;color:var(--public-muted);word-break:break-all}.public-site .blog-v2 .bv-cover{margin-top:clamp(1.25rem,4vw,2.5rem);margin-bottom:0}.public-site .blog-v2 .bv-cover img{display:block;margin-inline:auto;width:auto;height:auto;max-width:100%;max-height:min(80vh,56rem);border-radius:var(--bv-radius)}.public-site .blog-v2 .bv-body{padding-top:clamp(1.75rem,4vw,3rem);overflow-x:clip}.public-site .blog-v2 .bv-body .prose{--tw-prose-body:var(--public-ink);--tw-prose-headings:var(--public-ink);--tw-prose-lead:var(--public-muted);--tw-prose-links:var(--public-accent);--tw-prose-bold:var(--public-ink);--tw-prose-counters:var(--public-muted);--tw-prose-bullets:var(--public-muted);--tw-prose-hr:var(--public-line);--tw-prose-quotes:var(--public-ink);--tw-prose-quote-borders:var(--public-line);--tw-prose-captions:var(--public-muted);--tw-prose-code:var(--public-ink);--tw-prose-th-borders:var(--public-line);--tw-prose-td-borders:var(--public-line);max-width:none;margin-inline:0;font-size:clamp(1rem,.95rem + .22vw,1.0625rem);line-height:1.8;color:var(--public-ink)}.public-site .blog-v2 .bv-body .prose .essay-body{max-width:none;margin:0}.public-site .blog-v2 .bv-body .prose p{margin:0 0 1.15em;font-size:inherit;line-height:1.8;color:var(--public-ink)}.public-site .blog-v2[data-lang=zh] .bv-body .prose li,.public-site .blog-v2[data-lang=zh] .bv-body .prose p{line-height:1.9}.public-site .blog-v2 .bv-body .prose h2{margin:2.3em 0 .75em;color:var(--public-ink)}.public-site .blog-v2 .bv-body .prose h3{margin:1.8em 0 .6em;color:var(--public-ink)}.public-site .blog-v2 .bv-body .prose code:after,.public-site .blog-v2 .bv-body .prose code:before{content:none}.public-site .blog-v2 .bv-body .prose a{color:var(--public-accent);text-decoration-thickness:1px;text-underline-offset:3px;font-weight:inherit}.public-site .blog-v2 .bv-body .prose strong{color:var(--public-ink);font-weight:650}.public-site .blog-v2 .bv-body .prose ol,.public-site .blog-v2 .bv-body .prose ul{margin:0 0 1.2em;padding-left:1.3em}.public-site .blog-v2 .bv-body .prose li{margin:.45em 0;padding-left:.15em}.public-site .blog-v2 .bv-body .prose li::marker{color:var(--public-muted)}.public-site .blog-v2 .bv-body .prose blockquote{margin:1.6em 0;padding:0 0 0 1.1em;border-left:3px solid var(--public-accent);color:var(--public-ink);font-style:normal}.public-site .blog-v2 .bv-body .prose hr{margin:2.5em 0;border:0;border-top:1px solid var(--public-line)}.public-site .blog-v2 .bv-body .prose .lead{margin:0 0 1.5em}.public-site .blog-v2 .bv-body .prose .lead p{font-size:1.1em;line-height:1.8;font-weight:500;color:var(--public-ink)}.public-site .blog-v2 .bv-body .prose .img-block,.public-site .blog-v2 .bv-body .prose figure{width:100%;margin:2em 0;padding:0;border:0;background:none;box-shadow:none}.public-site .blog-v2 .bv-body .prose .img-block img,.public-site .blog-v2 .bv-body .prose figure img{display:block;width:100%;max-width:none;height:auto;margin:0;padding:0;border:0;border-radius:var(--bv-radius);background:none;box-shadow:none}.public-site .blog-v2 .bv-body .prose .img-block .caption,.public-site .blog-v2 .bv-body .prose figcaption{margin:.7em 0 0;padding:0;font-size:.8125rem;line-height:1.6;text-align:left;color:var(--public-muted)}.public-site .blog-v2 .bv-body .prose .img-block .caption a,.public-site .blog-v2 .bv-body .prose figcaption a{color:inherit}.public-site .blog-v2 .bv-body .prose .stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9.5rem),1fr));gap:1rem 1.75rem;margin:2em 0;padding:1.25rem 0;border-top:1px solid var(--public-line);border-bottom:1px solid var(--public-line)}.public-site .blog-v2 .bv-body .prose .stat-card{padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;text-align:left;overflow:visible}.public-site .blog-v2 .bv-body .prose .stat-card:after,.public-site .blog-v2 .bv-body .prose .stat-card:before{display:none}.public-site .blog-v2 .bv-body .prose .stat-card .num,.public-site .blog-v2 .bv-body .prose .stat-card .number{margin:0;font-size:clamp(1.5rem,1.2rem + 1.1vw,2.1rem);line-height:1.1;font-weight:700;letter-spacing:-.02em;color:var(--public-accent);font-variant-numeric:tabular-nums}.public-site .blog-v2 .bv-body .prose .stat-card .label{margin-top:.4rem;font-size:.8125rem;line-height:1.55;font-weight:400;letter-spacing:0;text-transform:none;color:var(--public-muted)}.public-site .blog-v2 .bv-body .prose table{display:table;width:100%;margin:2em 0;border-collapse:collapse;font-size:.9rem;line-height:1.6;table-layout:auto}.public-site .blog-v2 .bv-body .prose thead th{padding:.55rem .75rem .55rem 0;border-bottom:1px solid var(--public-ink);text-align:left;vertical-align:bottom;font-size:.8rem;font-weight:600;color:var(--public-muted)}.public-site .blog-v2 .bv-body .prose tbody td{padding:.75rem .75rem .75rem 0;border-bottom:1px solid var(--public-line);vertical-align:top;color:var(--public-ink)}.public-site .blog-v2 .bv-body .prose tbody td:first-child{font-weight:600}@media (max-width:767px){.public-site .blog-v2 .bv-body .prose table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:599px){.public-site .blog-v2 .bv-body .prose table{font-size:.8rem}.public-site .blog-v2 .bv-body .prose tbody td,.public-site .blog-v2 .bv-body .prose thead th{padding-right:.5rem}}.public-site .blog-v2 .bv-body .prose .callout,.public-site .blog-v2 .bv-body .prose .highlight-box,.public-site .blog-v2 .bv-body .prose .note{margin:1.8em 0;padding:1rem 1.25rem;border:0;border-left:3px solid var(--public-accent);border-radius:0 var(--bv-radius) var(--bv-radius) 0;background:var(--public-wash);box-shadow:none;color:var(--public-ink)}.public-site .blog-v2 .bv-body .prose .callout:before,.public-site .blog-v2 .bv-body .prose .highlight-box:before{display:none}.public-site .blog-v2 .bv-body .prose .sources{margin:3em 0 0;padding:1.5em 0 0;border:0;border-top:1px solid var(--public-line);border-radius:0;background:none;box-shadow:none;font-size:.8125rem;line-height:1.65;color:var(--public-muted)}.public-site .blog-v2 .bv-body .prose .sources h3{margin:1.8em 0 .6em;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--public-muted)}.public-site .blog-v2 .bv-body .prose .sources h3:first-child{margin-top:0}.public-site .blog-v2 .bv-body .prose .sources ul{margin:0;padding-left:1.1em}.public-site .blog-v2 .bv-body .prose .sources li{margin:.35em 0;line-height:1.65}.public-site .blog-v2 .bv-body .prose .sources a{color:var(--public-muted);word-break:break-all}.public-site .blog-v2 .bv-body .prose .sources a:hover{color:var(--public-accent)}.public-site .blog-v2 .bv-body .prose .essay-body>section:last-child:not(.lead){margin-top:2.5em;padding:1.1rem 1.25rem;border-radius:var(--bv-radius);background:var(--public-wash);font-size:.875rem}.public-site .blog-v2 .bv-body .prose .essay-body>section:last-child:not(.lead) h2{margin:0 0 .4em;font-size:1rem}.public-site .blog-v2 .bv-body .prose .essay-body>section:last-child:not(.lead) p{margin:0 0 .5em;font-size:inherit;line-height:1.75;color:var(--public-muted)}.public-site .blog-v2 .bv-list-head{padding-bottom:clamp(1.1rem,3vw,1.75rem);border-bottom:1px solid var(--public-line)}.public-site .blog-v2 .bv-list-title{margin:0;color:var(--public-ink)}.public-site .blog-v2 .bv-list-sub{margin:.75rem 0 0;max-width:42rem;font-size:clamp(1rem,.95rem + .3vw,1.125rem);line-height:1.7;color:var(--public-muted)}.public-site .blog-v2 .bv-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:clamp(1.1rem,3vw,1.6rem)}.public-site .blog-v2 .bv-search{position:relative;flex:1 1 15rem;max-width:22rem}.public-site .blog-v2 .bv-search svg{position:absolute;left:.85rem;top:50%;width:16px;height:16px;transform:translateY(-50%);color:var(--public-muted);pointer-events:none}.public-site .blog-v2 .bv-search input{box-sizing:border-box;width:100%;height:40px;padding:0 .9rem 0 2.3rem;border:1px solid var(--public-line);border-radius:999px;outline:none;background:var(--public-paper);color:var(--public-ink);font:inherit;font-size:.9rem}.public-site .blog-v2 .bv-search input::placeholder{color:var(--public-muted);opacity:.8}.public-site .blog-v2 .bv-search input:focus{border-color:var(--public-accent)}.public-site .blog-v2 .bv-chips{display:flex;flex-wrap:wrap;gap:.4rem}.public-site .blog-v2 .bv-chip{min-height:32px;padding:.2rem .8rem;border:1px solid var(--public-line);border-radius:999px;background:transparent;color:var(--public-muted);font:inherit;font-size:.8125rem;cursor:pointer}.public-site .blog-v2 .bv-chip:hover{color:var(--public-ink)}.public-site .blog-v2 .bv-chip[aria-pressed=true]{border-color:var(--public-accent);color:var(--public-accent);background:var(--public-wash)}.public-site .blog-v2 .bv-chip-count{opacity:.65;margin-left:.25rem}.public-site .blog-v2 .bv-result{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:.9rem;font-size:.8125rem;color:var(--public-muted)}.public-site .blog-v2 .bv-linkbtn{padding:0;border:0;background:none;color:var(--public-accent);font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.public-site .blog-v2 .bv-thumb{aspect-ratio:16/10;overflow:hidden;border-radius:var(--bv-radius);background:var(--public-wash)}.public-site .blog-v2 .bv-thumb img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .45s ease}.public-site .blog-v2 a:hover .bv-thumb img{transform:scale(1.03)}.public-site .blog-v2 .bv-post-kicker{display:flex;flex-wrap:wrap;gap:.15rem .75rem;font-size:.75rem;font-weight:600;letter-spacing:.03em;color:var(--public-accent)}.public-site .blog-v2 .bv-post-meta{margin-top:.9rem;font-size:.8125rem;color:var(--public-muted)}.public-site .blog-v2 .bv-featured{display:grid;gap:clamp(1.1rem,3vw,2.5rem);align-items:center;padding-block:clamp(1.5rem,4vw,2.75rem);border-bottom:1px solid var(--public-line);color:inherit;text-decoration:none}@media (min-width:52rem){.public-site .blog-v2 .bv-featured{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}.public-site .blog-v2 .bv-featured h2{margin:.55rem 0 0;color:var(--public-ink);text-wrap:balance}.public-site .blog-v2 .bv-featured p{margin:.75rem 0 0;font-size:clamp(.95rem,.9rem + .2vw,1.05rem);line-height:1.75;color:var(--public-muted)}.public-site .blog-v2 .bv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));gap:clamp(1.75rem,4vw,2.75rem) clamp(1.25rem,2.5vw,2rem);padding-block:clamp(1.5rem,4vw,2.75rem)}.public-site .blog-v2 .bv-card{display:flex;flex-direction:column;color:inherit;text-decoration:none}.public-site .blog-v2 .bv-card .bv-thumb{margin-bottom:.9rem}.public-site .blog-v2 .bv-card h3{margin:.45rem 0 0;color:var(--public-ink)}.public-site .blog-v2 .bv-card p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin:.5rem 0 0;font-size:.9rem;line-height:1.7;color:var(--public-muted)}.public-site .blog-v2 .bv-card:hover h3,.public-site .blog-v2 .bv-featured:hover h2{color:var(--public-accent)}.public-site .blog-v2 .bv-empty{padding:4rem 0;text-align:center;font-size:.9rem;color:var(--public-muted)}.public-site .blog-v2 .bv-pager{display:flex;align-items:center;justify-content:center;gap:1rem;padding-top:1rem;font-size:.875rem;color:var(--public-muted)}.public-site .blog-v2 .bv-attachments{margin:0 0 1.75rem;display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem 1rem;padding:.85rem 1rem;border:1px solid var(--public-line);border-radius:var(--bv-radius);background:var(--public-wash);font-size:.9rem;color:var(--public-muted)}.public-site .blog-v2 .bv-attachments>span{font-weight:600;color:var(--public-ink)}.public-site .blog-v2 .bv-attachments ul{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin:0;padding:0;list-style:none}.public-site .blog-v2 .bv-attachments a{color:var(--public-accent);text-underline-offset:3px}.security-page{--wash:var(--public-wash);--ink:var(--public-ink);--ink-2:color-mix(in srgb,var(--public-ink) 78%,var(--public-paper));--ink-3:var(--public-muted);--hairline-2:var(--public-line);--accent:var(--public-accent);--sans:var(--font-inter),Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;--mono:var(--font-jetbrains),"JetBrains Mono",ui-monospace,"SF Mono",Menlo,"PingFang SC",monospace;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}.security-page .line-page,.security-page .line-page *{box-sizing:border-box}.security-page :where(h1,h2,h3,p,ol,ul){margin:0;padding:0}.security-page :where(.line-page a){color:inherit}.security-page .line-page a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.security-page .skip{position:absolute;z-index:50;left:8px;top:-60px;padding:10px 14px;background:var(--ink);color:var(--public-paper);font-size:13px}.security-page .skip:focus{top:8px}.security-page .line-page{overflow-wrap:anywhere}.security-page .mast h1{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.security-page .pilot{padding:3px 8px;border:1px solid var(--accent);border-radius:999px;color:var(--accent);font:500 12px/1.4 var(--sans);letter-spacing:0}.security-page .meta{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:22px;padding:12px 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--hairline-2);font:500 12px/1.4 var(--mono);color:var(--ink-2)}.security-page .meta b{font-weight:600;color:var(--ink)}.security-page .lede{padding:34px 0 30px}.security-page .label{display:block;font:600 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.security-page .lede p{font-size:21px;line-height:1.7;font-weight:450;color:var(--ink);text-wrap:pretty}.security-page[lang=en] .lede p{font-size:20px;line-height:1.55}.security-page .toc{list-style:none;border-top:1px solid var(--ink)}.security-page .toc li{border-bottom:1px dashed var(--hairline-2)}.security-page .toc a{display:grid;grid-template-columns:34px 64px minmax(0,1fr) auto;align-items:baseline;gap:10px;padding:14px 0;text-decoration:none}.security-page[lang=en] .toc a{grid-template-columns:34px 104px minmax(0,1fr) auto}.security-page .toc a:hover .t{color:var(--accent)}.security-page .toc .n{font:600 13px/1 var(--mono);color:var(--accent)}.security-page .toc .k{font:500 11px/1 var(--mono);letter-spacing:.06em;color:var(--ink-3);text-transform:uppercase}.security-page .toc .t{font-size:16px;line-height:1.5;font-weight:550}.security-page .toc .arrow{font:13px/1 var(--mono);color:var(--ink-3)}.security-page .stories{padding-top:14px}.security-page article{padding:44px 0 40px;border-bottom:2px solid var(--ink)}.security-page article:last-child{border-bottom:0}.security-page .kicker{display:flex;gap:10px;align-items:center;font:600 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.security-page .kicker .n{color:var(--accent)}.security-page .kicker .tag{padding:4px 7px;border:1px solid;border-radius:2px}.security-page .kicker .tag.hot{color:var(--public-paper);background:var(--accent);border-color:var(--accent)}.security-page article h2{margin-top:16px;text-wrap:pretty}.security-page .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:28px 0 6px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.security-page .stats div{padding:16px 14px 14px 0}.security-page .stats div+div{padding-left:14px;border-left:1px solid var(--hairline-2)}.security-page .stats b{display:block;font:600 30px/1 var(--mono);letter-spacing:-.03em;color:var(--accent)}.security-page .stats span{display:block;margin-top:8px;font-size:13px;line-height:1.45;color:var(--ink-2)}.security-page .body p{margin-top:16px;font-size:17px;line-height:1.85;color:var(--ink-2)}.security-page[lang=en] .body p{line-height:1.7}.security-page .body p strong{color:var(--ink);font-weight:600}.security-page .take{margin-top:24px;padding:18px 20px;background:var(--wash);border-left:3px solid var(--accent)}.security-page .take .label{margin-bottom:10px}.security-page .take p{font-size:17px;line-height:1.75;font-weight:550;color:var(--ink)}.security-page[lang=en] .take p{line-height:1.6}.security-page .todo{margin-top:22px}.security-page .todo ol{list-style:none;counter-reset:todo}.security-page .todo li{counter-increment:todo;position:relative;padding:11px 0 11px 40px;border-top:1px dashed var(--hairline-2);font-size:16px;line-height:1.65;color:var(--ink)}.security-page .todo li:before{content:counter(todo,decimal-leading-zero);position:absolute;left:0;top:13px;font:600 12px/1.4 var(--mono);color:var(--accent)}.security-page .src{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;margin-top:24px;padding-top:12px;border-top:1px dashed var(--hairline-2);font:500 12px/1.5 var(--mono);color:var(--ink-3)}.security-page .src a{color:var(--accent);text-decoration:none;padding:6px 0}.security-page .src a:hover{text-decoration:underline;text-underline-offset:4px}.security-page .src .links{display:flex;flex-wrap:wrap;gap:0 14px}.security-page .more{padding:20px 0 0;border-top:1px solid var(--hairline-2)}.security-page .pager{display:flex;justify-content:space-between;gap:16px;margin-top:6px;padding:18px 0;border-top:2px solid var(--ink);font:500 12px/1.5 var(--mono);letter-spacing:.04em}.security-page .pager a{color:var(--accent);text-decoration:none;padding:8px 0}.security-page .pager a:hover{text-decoration:underline;text-underline-offset:4px}.security-page .archive{margin-top:40px;padding-top:4px}.security-page .archive section{padding:30px 0 10px}.security-page .archive h3{margin:12px 0 16px}.security-page .archive h3 a{text-decoration:none}.security-page .archive h3 a:hover{color:var(--accent)}@media (max-width:600px){.security-page .meta{gap:4px 16px;font-size:11px}.security-page .lede{padding:26px 0 24px}.security-page .lede p,.security-page[lang=en] .lede p{font-size:18px}.security-page .toc a,.security-page[lang=en] .toc a{grid-template-columns:28px minmax(0,1fr) auto;gap:8px}.security-page .toc .k{display:none}.security-page .toc .t{font-size:15px}.security-page article{padding:34px 0 30px}.security-page .stats b{font-size:22px}.security-page .stats span{font-size:12px}.security-page .stats div{padding-right:8px}.security-page .stats div+div{padding-left:10px}.security-page .body p{font-size:16px}.security-page .take{padding:15px 16px}.security-page .take p{font-size:16px}.security-page .todo li{font-size:15px;padding-left:34px}}@media print{.security-page .more,.security-page .pager,.security-page .skip,.security-page .toc{display:none}.security-page article{break-inside:avoid}.security-page{font-size:11pt}}