/* Blog composes the approved category storefront shell; it defines no separate color system. */
.blog-page{--learn-shift:-2px;--learn-in:350ms;--learn-out:350ms;--learn-ease:cubic-bezier(.22,1,.36,1)}
.blog-page .blog-search-disclosure>summary{list-style:none;cursor:pointer}
.blog-page .blog-search-disclosure>summary::-webkit-details-marker{display:none}
@media(max-width:1000px){.blog-page .hdr-actions>.blog-search-disclosure{margin-inline-start:auto}}
.blog-page #blogMain{min-height:55vh;padding-block:0 64px}
.blog-page #blogMain>.blog-breadcrumb{padding-top:12px}
.blog-page .blog-heading{margin-bottom:24px}
.blog-page .blog-heading h1{overflow-wrap:anywhere}
.blog-page .blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.blog-page .blog-card{display:flex;flex-direction:column;gap:0;min-width:0;background:var(--surface);border-color:var(--line)}
.blog-page .blog-cover{display:block;width:100%;height:auto;aspect-ratio:40/21;object-fit:cover;border-radius:10px;background:var(--media)}
.blog-page .blog-cover-empty{display:grid;place-items:center;color:var(--muted);font-size:13px}
.blog-page .blog-card-copy{display:flex;flex-direction:column;align-items:start;gap:10px;padding-top:14px;flex:1;min-width:0}
.blog-page .blog-card h2{margin:0;font-size:18px;line-height:1.75;overflow-wrap:anywhere}
.blog-page .blog-card h2 a{color:inherit}
.blog-page .blog-card-copy>p{font-size:14px;color:var(--muted);line-height:1.9;overflow-wrap:anywhere}
.blog-page .blog-card .text-link{margin-top:auto;padding-top:8px;font-size:13px;gap:12px}
.blog-page .blog-card:hover h2 a{color:var(--gold-ink)}
.blog-page .blog-meta{font-size:12px;line-height:1.9;color:var(--muted);overflow-wrap:anywhere}
.blog-page .blog-meta a{color:inherit;text-underline-offset:4px}
.blog-page .blog-actions,.blog-page .blog-article-footer{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.blog-page .blog-pagination{flex-wrap:wrap}
.blog-page .blog-empty{padding:32px 26px;border:1px solid var(--line);border-radius:17px;background:var(--surface)}
.blog-page .blog-empty h2{font-size:22px;line-height:1.7}
.blog-page .blog-empty p{font-size:14px;color:var(--muted);line-height:1.9;margin-block:12px 20px}
.blog-page #blogMain:has(>.blog-detail){width:100%;max-width:1200px;padding:0 32px 88px}
.blog-page .blog-detail{padding-top:27px}
.blog-page .blog-detail>.blog-breadcrumb{padding:22px 0;gap:8px;font-size:12.5px;line-height:normal}
.blog-page .blog-detail>.blog-breadcrumb a{min-height:0}
.blog-page .blog-detail>.blog-breadcrumb [aria-current]{color:var(--gold-ink);font-weight:650}
.blog-page .blog-article{max-width:960px;margin:18px 0 0;min-width:0}
.blog-page .blog-article .blog-heading{margin-bottom:24px;font-size:16px;line-height:normal}
@media(min-width:781px){.blog-page .blog-article .blog-heading{padding-top:10px}}
.blog-page .blog-context{display:inline-flex;margin-bottom:13px;color:var(--gold-ink);font-size:12px;font-weight:500;line-height:17px}
.blog-page .blog-article h1{margin-bottom:8px;font-size:clamp(30px,3.2vw,40px);font-weight:600;line-height:1.42;letter-spacing:-.7px}
.blog-page .blog-article .blog-meta{margin-top:12px;line-height:normal}
.blog-page .blog-header-lead{font-size:15px;line-height:2;color:var(--muted);margin-top:12px}
.blog-page .blog-discovery{margin-block:0 24px;display:grid;gap:16px}
.blog-page .blog-discovery label{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}
.blog-page .blog-search-field{display:flex;gap:8px;max-width:560px}
.blog-page .blog-search-field input,.blog-page [data-blog-copy-status] input{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:10px 12px;min-width:0;width:100%}
.blog-page .blog-categories,.blog-page .blog-tags{display:flex;gap:8px 20px;flex-wrap:wrap;font-size:13px;color:var(--muted)}
.blog-page .blog-categories a,.blog-page .blog-tags a{display:inline-flex;align-items:center;min-height:44px;border-bottom:1px solid var(--line)}
.blog-page .blog-tags{margin-top:12px}
.blog-page .blog-section-title,.blog-page .blog-featured>h2{font-size:22px;line-height:1.7;margin-bottom:16px}
.blog-page .blog-featured{margin-bottom:28px}
.blog-page .blog-featured>.blog-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:20px}
.blog-page .blog-featured .blog-card-copy{padding-top:0}
.blog-page .blog-result-count{font-size:13px;color:var(--muted);margin-bottom:16px}
.blog-page .blog-toc{margin-block:24px;border-block:1px solid var(--line);padding-block:12px}
.blog-page .blog-toc summary{cursor:pointer;min-height:44px;display:list-item;font-size:14px;font-weight:500;margin-inline-start:20px}
.blog-page .blog-toc ol{margin:8px 0 0;padding-inline-start:24px;font-size:13px}
.blog-page .blog-toc a{display:inline-block;padding-block:8px;color:var(--muted)}
.blog-page .blog-toc-h3{margin-inline-start:18px}
.blog-page .blog-prose :is(h2,h3){scroll-margin-top:var(--blog-header-offset,110px)}
.blog-page .blog-inline-image{margin:24px 0}
.blog-page .blog-inline-image img{width:100%;height:auto;border-radius:10px}
.blog-page .blog-inline-image figcaption{font-size:13px;line-height:1.9;color:var(--muted);margin-top:8px}
.blog-page .blog-prose hr{border:0;border-top:1px solid var(--line);margin-block:24px}
.blog-page .blog-prose :is(code,pre){unicode-bidi:plaintext}
.blog-page .blog-share{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap;margin-top:28px}
.blog-page [data-blog-copy-status]{font-size:13px;color:var(--muted);min-width:0;max-width:100%}
.blog-page .blog-adjacent{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-block:24px;padding-block:16px;border-block:1px solid var(--line)}
.blog-page .blog-adjacent a{min-width:0;overflow-wrap:anywhere}
.blog-page .blog-adjacent small,.blog-page .blog-adjacent span{display:block}
.blog-page .blog-adjacent small{font-size:12px;color:var(--muted);margin-bottom:8px}
.blog-page .blog-adjacent span{font-size:14px}
.blog-page .blog-related{margin-top:28px}
.blog-page .blog-preview-notice{margin-top:18px;color:var(--muted);font-size:13px}
.blog-page .blog-pagination [aria-current]{border-color:var(--gold-ink);color:var(--gold-ink)}
.blog-page .blog-pagination [aria-disabled]{color:var(--muted)}
@media(max-width:760px){.blog-page .blog-featured>.blog-card{display:flex;gap:0}.blog-page .blog-featured .blog-card-copy{padding-top:14px}.blog-page .blog-adjacent{grid-template-columns:minmax(0,1fr)}.blog-page .blog-related .blog-grid{grid-template-columns:minmax(0,1fr)}.blog-page .blog-section-title,.blog-page .blog-featured>h2{font-size:20px}}
.blog-page .blog-article>.blog-cover{margin-bottom:24px;border:1px solid var(--line);border-radius:17px}
.blog-page .blog-prose{font-size:15px;line-height:2;overflow-wrap:anywhere;min-width:0}
.blog-page .blog-prose>:first-child{margin-top:0}
.blog-page .blog-prose p,.blog-page .blog-prose ul,.blog-page .blog-prose ol,.blog-page .blog-prose blockquote{margin-block:16px}
.blog-page .blog-prose .blog-lead{color:var(--muted);margin-top:0}
.blog-page .blog-prose h2{font-size:24px;line-height:1.7;margin-block:28px 12px}
.blog-page .blog-prose h3{font-size:20px;line-height:1.7;margin-block:24px 10px}
.blog-page .blog-prose h4{font-size:17px;line-height:1.8;margin-block:20px 8px}
.blog-page .blog-prose a{color:var(--gold-ink);text-decoration:underline;text-underline-offset:4px}
.blog-page .blog-prose blockquote{border-inline-start:2px solid var(--line);padding-inline:18px;color:var(--muted)}
.blog-page .blog-prose ul,.blog-page .blog-prose ol{padding-inline-start:24px}
.blog-page .blog-prose pre{max-width:100%;overflow:auto;direction:ltr;text-align:left;padding:16px;background:var(--soft);border:1px solid var(--line);border-radius:10px;white-space:pre}
.blog-page .blog-prose code{font-size:.9em}
.blog-page .blog-prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}
.blog-page .blog-prose td,.blog-page .blog-prose th{padding:10px;border:1px solid var(--line);min-width:100px}
.blog-page .blog-prose img{max-width:100%;height:auto}
.blog-page .blog-article-footer{justify-content:space-between;margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}
/* Existing transitions.dev reading arrow: restrained 2px movement, confined to Blog. */
.blog-page .t-learn-chevron{display:inline-flex;transform:translateX(0);transition:transform var(--learn-out) var(--learn-ease)}
@media(hover:hover){.blog-page .t-learn:hover .t-learn-chevron{transform:translateX(var(--learn-shift));transition-duration:var(--learn-in)}}
@media(prefers-reduced-motion:reduce){.blog-page .t-learn-chevron{transition:none!important}}
@media(max-width:1150px){.blog-page .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:760px){.blog-page #blogMain{padding-block:0 42px}.blog-page #blogMain>.blog-breadcrumb{padding-top:8px}.blog-page .blog-heading{margin-bottom:18px}.blog-page .blog-grid{grid-template-columns:minmax(0,1fr);gap:16px}.blog-page .blog-card{display:flex}.blog-page .blog-card h2{font-size:16px}.blog-page .blog-empty{padding:24px 18px}.blog-page .blog-prose h2{font-size:22px}}
@media(max-width:760px){.blog-page .blog-detail>.blog-breadcrumb{font-size:13px;row-gap:2px}.blog-page .blog-detail>.blog-breadcrumb a{min-height:44px;padding-inline:2px}}
@media(max-width:720px){.blog-page #blogMain:has(>.blog-detail){padding-inline:18px}.blog-page .blog-detail{padding-top:20px}.blog-page .blog-detail>.blog-breadcrumb{padding-bottom:16px}.blog-page .blog-article h1{font-size:29px}}
/* Only /blog: approved composition, using the existing storefront tokens and geometry. */
.blog-home{background:var(--paper)}
.blog-home #blogMain.shell{width:100%;max-width:none;padding:0 0 64px}
.blog-home .blog-home-shell,.blog-home .blog-home-nav{width:min(1248px,calc(100% - 96px));margin-inline:auto}
.blog-home .blog-home-nav{display:flex;align-items:center;gap:26px;font-size:14px;font-weight:500;min-height:68px;border-bottom:1px solid var(--line)}
.blog-home .blog-home-nav>a,.blog-home .blog-home-nav summary{display:inline-flex;align-items:center;min-height:44px;cursor:pointer}
.blog-home .blog-home-nav details{position:relative}
.blog-home .blog-home-nav summary{gap:10px;list-style:none}
.blog-home .blog-home-nav summary::after{content:'⌄';font-size:18px}
.blog-home .blog-home-nav summary::-webkit-details-marker{display:none}
.blog-home .blog-home-nav details>div{position:absolute;top:100%;right:0;z-index:21;width:240px;max-width:80vw;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:10px}
.blog-home .blog-home-nav details a{display:flex;align-items:center;min-height:44px;padding:8px 12px;overflow-wrap:anywhere}
.blog-home .blog-home-nav a:hover{color:var(--gold-ink)}
.blog-home .blog-home-nav .blog-home-store{margin-inline-start:auto;gap:12px;white-space:nowrap}
.blog-home .blog-home-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);grid-template-areas:'heading search' 'lead support';gap:20px 24px;padding-block:24px 32px;align-items:start}
.blog-home .blog-home-hero h1{grid-area:heading;font-size:26px;line-height:1.7;font-weight:600;margin:0;overflow-wrap:anywhere}
.blog-home .blog-home-card{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:14px;display:flex;flex-direction:column;box-shadow:none}
.blog-home .blog-home-card-lead{grid-area:lead;padding:16px}
.blog-home .blog-home-card .blog-cover{border-radius:10px;aspect-ratio:40/21;object-fit:contain;flex-shrink:0}
.blog-home .blog-home-card .blog-cover-empty{height:72px;aspect-ratio:auto;display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--line);font-size:13px}
.blog-home .blog-home-card .blog-cover-empty svg{width:24px;height:24px;flex-shrink:0}
.blog-home .blog-home-card-lead .blog-cover-empty{height:96px}
.blog-home .blog-home-card-copy{display:flex;flex-direction:column;gap:10px;padding-top:16px;flex:1;min-width:0}
.blog-home .blog-home-card h3{margin:0;font-size:18px;line-height:1.75;font-weight:600;overflow-wrap:anywhere}
.blog-home .blog-home-card h3 a{color:inherit;unicode-bidi:isolate}
.blog-home .blog-home-card h3 a:hover{color:var(--gold-ink)}
.blog-home .blog-home-card p{font-size:14px;line-height:1.9;color:var(--muted);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin:0}
.blog-home .blog-home-card-lead h3{font-size:20px;line-height:1.75}
.blog-home .blog-home-feature-label,.blog-home .blog-home-card-category{font-size:12px;line-height:1.8;color:var(--gold-ink);align-self:start}
.blog-home .blog-home-feature-label{padding:3px 10px;background:var(--soft);border-radius:6px}
.blog-home .blog-home-card-category{display:inline-flex;align-items:center;min-height:32px}
.blog-home .blog-home-support{grid-area:support;display:grid;gap:12px;min-width:0}
.blog-home .blog-home-card-small{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:14px;padding:12px}
.blog-home .blog-home-card-small .blog-cover{height:112px;min-height:0;aspect-ratio:auto;align-self:center;object-fit:contain}
.blog-home .blog-home-card-small .blog-cover-empty{flex-direction:column;text-align:center;font-size:12px;padding:10px}
.blog-home .blog-home-card-small .blog-home-card-copy{padding:0;gap:8px;justify-content:center}
.blog-home .blog-home-card-small h3{font-size:15px;line-height:1.8}
.blog-home .blog-home-card-small p{font-size:13px;line-height:1.9;-webkit-line-clamp:2}
.blog-home .blog-home-search{grid-area:search;display:flex;align-items:center;justify-self:end;width:min(100%,300px);border:1px solid var(--line);border-radius:8px;background:var(--surface);overflow:hidden}
.blog-home .blog-home-search:focus-within{outline:2px solid var(--gold-ink);outline-offset:3px}
.blog-home .blog-home-search input{font:inherit;font-size:14px;border:0;background:transparent;color:var(--ink);padding:9px 12px;width:100%;min-width:0;outline:none}
.blog-home .blog-home-search input::placeholder{color:var(--muted);opacity:1}
.blog-home .blog-home-search button{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:0;background:transparent;color:var(--muted);cursor:pointer}
.blog-home .blog-home-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.blog-home .blog-home-hero-empty{grid-template-areas:'heading search';padding-bottom:32px}
.blog-home .blog-home-hero-solo{grid-template-areas:'heading search' 'lead lead'}
.blog-home .blog-home-hero-solo .blog-home-card-lead{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;width:100%;align-items:center}.blog-home .blog-home-hero-solo .blog-home-card-copy{padding-top:0}.blog-home .blog-home-card-lead>img.blog-cover{height:260px;aspect-ratio:auto;object-fit:contain}
@media(hover:hover){.blog-home .blog-home-card:hover{border-color:var(--gold-ink)}}
.blog-home .blog-home-categories{background:var(--paper);padding-block:24px 32px;border-top:1px solid var(--line)}
.blog-home .blog-home-categories header{text-align:center}
.blog-home :is(.blog-home-categories h2,.blog-home-archive h2){font-size:22px;line-height:1.8;font-weight:600;overflow-wrap:anywhere}
.blog-home .blog-home-categories header p,.blog-home .blog-home-category-empty{font-size:14px;color:var(--muted);line-height:1.9;margin-top:6px;text-align:center}
.blog-home .blog-home-chips{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:20px}
.blog-home .blog-home-chips a{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:14px;font-weight:500;overflow-wrap:anywhere;max-width:100%}
.blog-home .blog-home-chips svg{color:var(--gold-ink);width:20px;height:20px;flex-shrink:0}
.blog-home .blog-home-chips a:hover{border-color:var(--gold-ink)}
.blog-home .blog-home-banners{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px}
.blog-home .blog-home-banner{display:flex;align-items:center;gap:20px;min-width:0;padding:24px;border-radius:17px;border:1px solid var(--line);overflow:hidden;background:var(--surface);color:var(--ink)}
.blog-home .blog-home-banner-store{background:var(--soft)}
.blog-home .blog-home-banner h3{font-size:20px;font-weight:600;line-height:1.75;overflow-wrap:anywhere}
.blog-home .blog-home-banner p{font-size:14px;line-height:1.9;color:var(--muted);margin-top:6px;overflow-wrap:anywhere}
.blog-home .blog-home-banner-art{display:grid;place-items:center;width:54px;height:54px;flex-shrink:0;border-radius:10px;background:var(--paper);color:var(--gold-ink)}
.blog-home .blog-home-banner-art svg{width:28px;height:28px}
.blog-home .blog-home-banner-cta{display:inline-flex;gap:12px;align-items:center;min-height:44px;color:var(--gold-ink);font-size:14px;font-weight:500;margin-top:8px}
.blog-home .blog-home-archive{position:relative;background:var(--paper);padding-block:40px 0;border-top:1px solid var(--line)}
.blog-home .blog-home-transition{position:absolute;top:-1px;left:50%;transform:translateX(-50%);width:64px;height:28px;border:1px solid var(--line);border-top:0;border-radius:0 0 17px 17px;background:var(--paper);display:grid;place-items:center;color:var(--muted)}
.blog-home .blog-home-transition svg{width:18px;height:18px}
.blog-home .blog-home-archive h2{display:flex;align-items:center;gap:24px;margin-bottom:24px}
.blog-home .blog-home-archive h2::after{content:'';height:1px;background:var(--line);flex:1}
.blog-home .blog-home-archive .blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.blog-home .blog-home-archive .blog-grid:has(>.blog-home-card-archive:only-child){grid-template-columns:minmax(0,1fr);max-width:440px;margin-inline:auto}
.blog-home .blog-home-card-archive .blog-home-card-copy{gap:10px}
.blog-home .blog-home-card-archive h3{min-height:3.5em}
.blog-home .blog-home-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}
.blog-home .blog-home-date{display:inline-flex;align-items:center;gap:6px;font-size:12px;line-height:1.9;color:var(--muted)}
.blog-home .blog-home-date svg{width:16px;height:16px;flex-shrink:0}
.blog-home .blog-home-card-footer .text-link{font-size:14px;min-height:44px;white-space:nowrap;gap:8px}
.blog-home .blog-home-pagination{display:grid;justify-items:center;gap:12px;margin-top:32px}
.blog-home .blog-home-more{background:var(--ink);color:var(--paper);border-color:var(--ink);min-height:44px;padding:10px 24px;gap:14px}
.blog-home .blog-home-more:hover{background:var(--gold);border-color:var(--gold);color:#252620}
.blog-home .blog-home-page-links{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;font-size:13px;color:var(--muted)}
.blog-home .blog-home-page-links .control{min-width:44px;min-height:44px;background:transparent;border-color:transparent;padding:8px}
.blog-home .blog-home-page-links [aria-current]{border-color:var(--line);background:var(--surface);color:var(--ink)}
.blog-home .blog-home-page-links a:hover{color:var(--gold-ink);border-color:var(--line)}
@media(max-width:1150px){.blog-home .blog-home-shell,.blog-home .blog-home-nav{width:calc(100% - 64px)}.blog-home .blog-home-archive .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.blog-home .blog-home-card-lead h3{font-size:20px}.blog-home .blog-home-banner{gap:16px;padding:20px}.blog-home .blog-home-banner h3{font-size:18px}}
@media(max-width:1000px){.blog-home .blog-home-card-small{grid-template-columns:112px minmax(0,1fr);gap:12px}.blog-home .blog-home-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px}.blog-home .blog-home-card-small h3{font-size:14px}}
@media(max-width:760px){.blog-home .blog-home-shell,.blog-home .blog-home-nav{width:calc(100% - 40px)}.blog-home .blog-home-nav{gap:12px;font-size:13px;min-height:64px}.blog-home .blog-home-nav>a:not(.blog-home-store){display:none}.blog-home .blog-home-store{font-size:13px;padding-inline:10px}.blog-home .blog-home-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:'heading' 'lead' 'search' 'support';padding-block:24px 32px;gap:20px}.blog-home .blog-home-hero-empty{grid-template-areas:'heading' 'search'}.blog-home .blog-home-hero h1{font-size:22px}.blog-home .blog-home-search{justify-self:stretch;width:100%}.blog-home .blog-home-card-lead{padding:14px}.blog-home .blog-home-hero-solo .blog-home-card-lead{display:flex;gap:0}.blog-home .blog-home-hero-solo .blog-home-card-copy{padding-top:14px}.blog-home .blog-home-card-lead>img.blog-cover{height:190px}.blog-home .blog-home-card-lead h3{font-size:20px}.blog-home .blog-home-card-small{grid-template-columns:104px minmax(0,1fr)}.blog-home .blog-home-card-small h3{font-size:14px}.blog-home .blog-home-card-small .blog-cover{min-height:0;height:104px}.blog-home .blog-home-banners{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:24px}.blog-home .blog-home-banner{padding:20px;gap:14px}.blog-home .blog-home-banner-art{width:40px;height:40px}.blog-home .blog-home-banner-art svg{width:24px;height:24px}.blog-home .blog-home-banner h3{font-size:18px}.blog-home .blog-home-categories{padding-block:24px 32px}.blog-home .blog-home-chips{margin-top:16px}.blog-home .blog-home-chips a{padding:10px 14px}.blog-home .blog-home-categories h2{font-size:20px}.blog-home .blog-home-archive{padding-top:40px}.blog-home .blog-home-archive h2{font-size:20px;margin-bottom:20px}.blog-home .blog-home-archive .blog-grid{grid-template-columns:minmax(0,1fr);gap:16px}.blog-home .blog-home-card-archive h3{font-size:18px;min-height:0}.blog-home .blog-home-card-archive .blog-home-card-copy{gap:10px}}

/* Public Article Detail: one top-aligned sidebar; native storefront type/spacing, no enclosing article card. */
.blog-article-page .blog-reading-grid{display:grid;grid-template-columns:minmax(0,2.8fr) minmax(240px,1fr);gap:0 24px;max-width:none;margin-top:16px;align-items:start}
.blog-article-page .blog-reading-header{grid-column:1;grid-row:1;min-width:0;padding:0 0 24px;border:0;border-radius:0;background:transparent}
.blog-article-page .blog-reading-header>.blog-cover{aspect-ratio:40/21;height:auto;max-height:340px;object-fit:contain;margin-bottom:20px;border:1px solid var(--line)}
.blog-article-page .blog-reading-context{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px;font-size:12px;color:var(--muted)}
.blog-article-page .blog-reading-context a{padding:6px 10px;border:1px solid var(--line);border-radius:10px;color:var(--gold-ink)}
.blog-article-page .blog-reading-header h1{font-size:clamp(24px,2.5vw,30px);line-height:1.75;letter-spacing:0;margin:16px 0 0;font-weight:650;overflow-wrap:anywhere}
.blog-article-page .blog-reading-header .blog-meta{line-height:2;margin:0}
.blog-article-page .blog-header-lead{font-size:15px;line-height:2.1}
.blog-article-page .blog-prose{grid-column:1;grid-row:2;padding:0 0 16px;border:0;background:transparent;font-size:15px;line-height:2}
.blog-article-page .blog-prose h2{font-size:24px}.blog-article-page .blog-prose h3{font-size:20px}
/* One native reading card; author CSS is compiled under a separate server-owned scope. */
.blog-page .blog-article .blog-prose{padding:clamp(20px,3vw,36px);border:1px solid var(--line);border-radius:17px;background:var(--surface);box-shadow:var(--shadow);min-width:0;overflow-wrap:anywhere;contain:layout paint style;isolation:isolate}
.blog-page .blog-article .blog-prose> :first-child{margin-block-start:0}
.blog-page .blog-article .blog-prose> :last-child{margin-block-end:0}
.blog-page .blog-prose figure{margin:24px 0;max-width:100%}
.blog-page .blog-prose figure img{display:block;max-width:100%;height:auto;border-radius:10px}
.blog-page .blog-prose figcaption{text-align:center;font-size:13px;line-height:1.9;color:var(--muted);margin-top:10px}
.blog-page .blog-article .blog-prose-self-framed{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.blog-page .blog-content-boundary{display:flow-root;min-width:0;max-width:100%;contain:layout paint style;isolation:isolate}
.blog-page .blog-content-boundary [id]{scroll-margin-top:var(--blog-header-offset,110px)!important}
.blog-page .blog-reading-header-authored{padding-block:0;margin-bottom:8px}
@media(max-width:760px){.blog-page .blog-article .blog-prose{padding:20px 16px}.blog-page .blog-article .blog-prose-self-framed{padding:0}}
.blog-article-page .blog-article-sidebar{grid-column:2;grid-row:1 / 4;min-width:0;display:flex;flex-direction:column;gap:16px;align-self:start}.blog-article-page .blog-article-toc{min-width:0;position:static} /* In-flow TOC cannot collide with tall ads or the footer. */
.blog-article-page .blog-toc{margin:0;padding:8px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.blog-article-page .blog-toc-stacked{display:none}
.blog-article-page .blog-toc summary{margin-inline-start:14px;line-height:1.8;min-height:44px;font-weight:600}
.blog-article-page .blog-toc nav{max-height:min(40vh,320px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;border-top:1px solid var(--line)}
.blog-article-page .blog-toc ol{list-style:none;padding:0;margin:8px 0}.blog-article-page .blog-toc li{margin:0}.blog-article-page .blog-toc .blog-toc-h3{margin-inline-start:12px;border-inline-start:1px solid var(--line);padding-inline-start:10px}.blog-article-page .blog-toc a{display:block;font-size:13px;min-height:32px;line-height:1.9;padding:5px 0;overflow-wrap:anywhere}.blog-article-page .blog-toc a:hover,.blog-article-page .blog-toc a[aria-current]{color:var(--gold-ink)}
.blog-article-page .blog-article-promos{min-width:0;display:grid;gap:16px;align-self:start;margin-top:0}
.blog-article-page .blog-sidebar-category{border-block:1px solid var(--line);padding:12px 0;font-size:13px;line-height:1.9;overflow-wrap:anywhere}.blog-article-page .blog-sidebar-ads{display:grid;gap:12px}.blog-article-page .blog-sidebar-ad{display:block;min-width:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}.blog-article-page .blog-sidebar-ad img{display:block;width:100%;height:auto;max-height:320px;object-fit:contain}.blog-article-page .blog-sidebar-ad:hover{border-color:var(--gold-ink)}.blog-article-page .blog-sidebar-links{display:flex;gap:12px 20px;flex-wrap:wrap}.blog-article-page .blog-sidebar-links a{font-size:13px;min-height:44px}
.blog-article-page .blog-sidebar-category a{color:var(--gold-ink)}
.blog-article-page .blog-article-promo>span{font-weight:650}.blog-article-page .blog-article-promo p{color:var(--muted);margin-block:8px 12px;font-size:13px}
.blog-article-page .blog-article-promo b{font-weight:500;font-size:13px;color:var(--gold-ink);min-height:44px;display:flex;align-items:center;gap:10px}
.blog-article-page .blog-article-promo:hover{border-color:var(--gold-ink)}
.blog-article-page .blog-article-continuation{grid-column:1;grid-row:3;padding:0 0 24px;border:0;border-radius:0;background:transparent;min-width:0}
.blog-article-page .blog-share{padding-block:20px;border-top:1px solid var(--line);margin-top:0}.blog-article-page .blog-share a{min-height:44px;display:inline-flex;align-items:center}
.blog-article-page .blog-publisher{padding-block:20px;border-block:1px solid var(--line);margin-bottom:24px}
.blog-article-page .blog-publisher h2,.blog-article-page .blog-comments>h2{font-size:22px;line-height:1.8;margin-bottom:10px}
.blog-article-page .blog-publisher p{color:var(--muted);font-size:14px;line-height:2;margin-bottom:10px}
.blog-article-page .blog-adjacent{margin-block:24px;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--soft);gap:16px}
.blog-article-page .blog-adjacent a{display:block;min-height:44px}
.blog-article-page .blog-related .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.blog-article-page .blog-related .blog-card h2{font-size:16px}
.blog-article-page .blog-comments{margin-block:32px;scroll-margin-top:var(--blog-header-offset,110px)}
.blog-article-page .blog-comments-empty,.blog-article-page .blog-comment-privacy{font-size:13px;color:var(--muted);line-height:2}
.blog-article-page .blog-comment{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--soft);min-width:0}
.blog-article-page .blog-comment header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.blog-article-page .blog-comment h3{font-size:14px;font-weight:650;overflow-wrap:anywhere}
.blog-article-page .blog-comment time{font-size:12px;color:var(--muted)}.blog-article-page .blog-comment>p{white-space:pre-wrap;font-size:15px;line-height:2;overflow-wrap:anywhere;margin-top:12px}
.blog-article-page .blog-comment-pages{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;margin-top:16px}
.blog-article-page .blog-comment-form{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.blog-article-page .blog-comment-form h3{font-size:20px;line-height:1.8;margin-bottom:8px}
.blog-article-page .blog-comment-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-block:20px}
.blog-article-page .blog-comment-field-comment_text{grid-column:1;grid-row:1 / 3}.blog-article-page .blog-comment-field-display_name{grid-column:2;grid-row:1}.blog-article-page .blog-comment-field-email{grid-column:2;grid-row:2}
.blog-article-page .blog-comment-field{min-width:0}.blog-article-page .blog-comment-field label{display:block;font-size:13px;margin-bottom:8px}
.blog-article-page .blog-comment-field :is(input,textarea){display:block;width:100%;min-width:0;min-height:46px;padding:12px;font:inherit;font-size:15px;line-height:1.8;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px}
.blog-article-page .blog-comment-field textarea{min-height:210px;resize:vertical}
.blog-article-page .blog-comment-submit{min-height:44px;padding:12px 18px;background:var(--gold);border-color:var(--gold);color:#252620;font-size:14px}
.blog-article-page .blog-comment-honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.blog-article-page .blog-comment-feedback,.blog-article-page .blog-comment-errors{padding:16px;border:1px solid var(--line);border-radius:10px;line-height:2;background:var(--soft);font-size:14px;margin-top:20px}
.blog-article-page .blog-comment-errors ul{padding-inline-start:20px}.blog-article-page .blog-comment-errors a{text-decoration:underline;text-underline-offset:4px}.blog-article-page .blog-comment-field-error{font-size:13px;line-height:1.9;margin-top:6px}
.blog-article-page :is(input,textarea)[aria-invalid=true]{border-style:dashed;border-color:var(--ink)}
.blog-article-page :is(a,button,input,textarea,summary):focus-visible{outline:2px solid var(--gold-ink);outline-offset:4px}
@media(max-width:900px){.blog-article-page .blog-reading-grid{grid-template-columns:minmax(0,1fr)}.blog-article-page .blog-reading-header{grid-row:1}.blog-article-page .blog-article-sidebar{display:contents}.blog-article-page .blog-toc-desktop{display:none}.blog-article-page .blog-toc-stacked{display:block}.blog-article-page .blog-article-toc{grid-column:1;grid-row:2;position:static;padding:0 0 20px;border:0;background:transparent}.blog-article-page .blog-prose{grid-row:3}.blog-article-page .blog-article-continuation{grid-row:4}.blog-article-page .blog-article-promos{grid-column:1;grid-row:5;grid-template-columns:minmax(0,1fr);margin-top:24px}.blog-article-page .blog-sidebar-ads{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-article-page .blog-sidebar-category{grid-column:1 / -1}}
@media(max-width:760px){.blog-article-page #blogMain:has(>.blog-detail){padding-inline:20px}.blog-article-page .blog-detail{padding-top:20px}.blog-article-page .blog-reading-header,.blog-article-page .blog-prose,.blog-article-page .blog-article-continuation{padding-inline:0}.blog-article-page .blog-article-toc{padding-inline:0}.blog-article-page .blog-reading-header{padding-top:0}.blog-article-page .blog-reading-header h1{font-size:24px}.blog-article-page .blog-prose{font-size:15px}.blog-article-page .blog-prose h2{font-size:22px}.blog-article-page .blog-related .blog-grid,.blog-article-page .blog-comment-fields,.blog-article-page .blog-article-promos{grid-template-columns:minmax(0,1fr)}.blog-article-page .blog-comment-field{grid-column:1;grid-row:auto}.blog-article-page .blog-comment-submit{width:100%}.blog-article-page .blog-toc nav{max-height:260px}.blog-article-page .blog-toc a{min-height:44px}.blog-article-page .blog-sidebar-ads{grid-template-columns:minmax(0,1fr)}}
