.pub-shell{display:flex;flex-direction:column;min-height:100dvh;background:var(--color-page);color:var(--color-ink)}.pub-shell>main{flex:1 1}.pub-container{width:min(calc(100% - var(--space-12)),var(--public-max));margin-inline:auto}.pub-title{font-size:var(--text-h1);font-weight:var(--weight-medium);letter-spacing:var(--tracking-display);line-height:1.2}.pub-lead{margin-top:var(--space-4);color:var(--color-muted);font-size:var(--text-lead);line-height:1.65}.pub-index{width:min(calc(100% - var(--space-12)),760px);margin-inline:auto;padding:var(--space-24) 0 var(--space-36)}.pub-post-list{gap:var(--space-3);margin:var(--space-10) 0 0;padding:0;list-style:none}.pub-post,.pub-post-list{display:flex;flex-direction:column}.pub-post{gap:var(--space-2);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:inherit;text-decoration:none;transition:border-color .15s}.pub-post:hover{border-color:var(--gray-300)}.pub-post-title{font-size:var(--text-title-small);font-weight:var(--weight-strong);line-height:1.4}.pub-post-text{color:var(--color-muted);font-size:var(--text-body);line-height:var(--leading-body)}.pub-post .ui-tag{align-self:flex-start}.pub-article{width:min(calc(100% - var(--space-12)),680px);margin-inline:auto;padding:var(--space-24) 0 var(--space-36)}.pub-article-head{margin-bottom:var(--space-12)}.pub-prose{--list-marker-indent:1.25em;color:var(--color-ink-2);font-size:var(--text-lead);line-height:1.75}.pub-prose>.ui-banner+section,.pub-prose>section+.ui-banner,.pub-prose>section+section{margin-top:var(--space-12)}.pub-prose section{scroll-margin-top:calc(var(--header-height) + var(--space-6))}.pub-prose h2{margin-bottom:var(--space-4);color:var(--color-ink);font-size:var(--text-page);line-height:1.35}.pub-prose h3{margin:var(--space-8) 0 var(--space-3);color:var(--color-ink);font-size:var(--text-title-medium);line-height:1.4}.pub-prose h2+h3{margin-top:var(--space-5)}.pub-prose .pub-table+p,.pub-prose ol+p,.pub-prose p+.pub-table,.pub-prose p+ol,.pub-prose p+p,.pub-prose p+ul,.pub-prose ul+p{margin-top:var(--space-4)}.pub-prose ol,.pub-prose ul{margin:0;padding-left:var(--list-marker-indent)}.pub-prose ul{list-style:disc}.pub-prose ol{list-style:decimal}.pub-prose .ui-banner-title{margin:0;color:inherit;font-size:var(--text-section)}.pub-prose li+li{margin-top:var(--space-2)}.pub-prose li::marker{color:var(--color-faint)}.pub-prose strong{color:var(--color-ink);font-weight:var(--weight-strong)}.pub-table{margin-top:var(--space-5)}.pub-table .ui-table{min-width:560px}.pub-table .ui-table th{border-top:0}.pub-table .ui-table td{vertical-align:top;line-height:1.5}.pub-article-foot{color:var(--color-muted);font-size:var(--text-small)}.pub-article-cta,.pub-article-foot{margin-top:var(--space-12)}.pub-cta-copy{flex:1 1 320px;min-width:0}.pub-center{display:grid;place-items:center;min-height:60dvh;padding:var(--space-24) var(--space-4)}.pub-center-copy{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);max-width:560px;text-align:center}.pub-center-copy .pub-lead{margin-top:0}.pub-center-copy .ui-button{margin-top:var(--space-4)}.pub-footer{padding:var(--space-16) 0 var(--space-8);background:var(--color-surface-muted)}.pub-footer-top{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.55fr) minmax(0,.55fr);gap:var(--space-12);padding-bottom:var(--space-12)}.pub-brand{display:inline-flex;min-height:44px;align-items:center}.pub-footer-desc{max-width:380px;margin-top:var(--space-3);color:var(--color-ink-2);font-size:var(--text-body-compact);line-height:1.7}.pub-footer-nav{display:flex;flex-direction:column;align-items:flex-start}.pub-footer-label{margin-bottom:var(--space-2);color:var(--color-muted);font-size:var(--text-small);font-weight:var(--weight-medium)}.pub-footer-nav a{display:inline-flex;align-items:center;min-height:36px;color:var(--color-ink);font-size:var(--text-body-compact);text-decoration:none}.pub-footer-nav a:hover{text-decoration:underline;text-underline-offset:3px}.pub-business{color:var(--color-muted);font-size:var(--text-small);line-height:1.7;overflow-wrap:anywhere}.pub-business a{color:inherit;text-underline-offset:3px}.pub-business-sep{margin:0 var(--space-2);color:var(--color-faint)}.pub-footer-bottom{margin-top:var(--space-6);color:var(--color-muted);font-size:var(--text-small)}.pub-footer-compact{flex-shrink:0;padding:var(--space-4) var(--space-8) var(--space-5)}.pub-footer-compact nav{display:flex;flex-wrap:wrap;gap:0 var(--space-5);margin-bottom:var(--space-1)}.pub-footer-compact nav a{display:inline-flex;align-items:center;min-height:36px;color:var(--color-ink-2);font-size:var(--text-small);text-decoration:none}.pub-footer-compact nav a:hover{color:var(--color-ink);text-decoration:underline;text-underline-offset:3px}.auth-stage{display:flex;flex-direction:column;align-items:center;padding:var(--space-16) var(--space-4) var(--space-24)}.auth-card{width:min(100%,400px);padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.auth-head{margin-bottom:var(--space-6)}.auth-title{font-size:var(--text-page);font-weight:var(--weight-medium);letter-spacing:var(--tracking-heading);line-height:1.3}.auth-sub{margin-top:var(--space-2);color:var(--color-muted);font-size:var(--text-body-compact);line-height:1.6}.auth-label-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-3)}.auth-label-row .ui-link{font-size:var(--text-small)}.auth-action{margin-top:var(--space-5)}.auth-links{gap:var(--space-2);margin-top:var(--space-6);font-size:var(--text-body-compact);text-align:center}.auth-links,.auth-loading{display:flex;flex-direction:column;align-items:center;color:var(--color-muted)}.auth-loading{gap:var(--space-3);padding:var(--space-16) 0;font-size:var(--text-small)}@media (max-width:900px){.pub-footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-8) var(--space-5)}.pub-footer-top>:first-child{grid-column:1/-1}}@media (max-width:640px){.pub-article,.pub-container,.pub-index{width:calc(100% - var(--space-8))}.pub-article,.pub-index{padding:var(--space-12) 0 var(--space-24)}.pub-article-head{margin-bottom:var(--space-8)}.pub-lead{font-size:var(--text-body-large)}.pub-post{padding:var(--space-5)}.pub-prose h3{font-size:var(--text-title-small)}.pub-center{padding:var(--space-16) var(--space-4)}.pub-footer{padding-top:var(--space-12)}.pub-footer-compact{padding-inline:var(--space-4)}.auth-stage{padding:var(--space-10) var(--space-4) var(--space-16)}.auth-card{padding:var(--space-6) var(--space-5)}}