/* LeanSigmaVN reading shell — local pilot */
:root{--lsvn-ink:#14352a;--lsvn-ink-2:#275b47;--lsvn-muted:#6d8277;--lsvn-line:#dcebe3;--lsvn-soft:#f3faf6;--lsvn-green:#0d9b58;--lsvn-green-dark:#086b3d;--lsvn-gold:#d9a441;--lsvn-shadow:0 18px 50px rgba(12,62,38,.10)}
.lsvn-reading-page{background:#f5faf7;color:var(--lsvn-ink);font-family:inherit}
.lsvn-reading-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 84% 18%,rgba(64,190,125,.25),transparent 28%),linear-gradient(135deg,#082d20 0%,#0c5636 56%,#0d9b58 100%);color:#fff}
.lsvn-reading-hero__inner{position:relative;z-index:1;max-width:1320px;margin:auto;padding:clamp(54px,8vw,105px) clamp(20px,5vw,72px) 42px}
.lsvn-reading-hero__glow{position:absolute;width:420px;height:420px;right:-130px;bottom:-230px;border:1px solid rgba(255,255,255,.17);border-radius:50%;box-shadow:0 0 0 38px rgba(255,255,255,.03),0 0 0 76px rgba(255,255,255,.025)}
.lsvn-reading-kicker,.lsvn-reading-breadcrumb,.lsvn-reading-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:rgba(255,255,255,.72);font-size:.79rem}.lsvn-reading-kicker{color:#d8f7e5;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.lsvn-reading-kicker__dot,.lsvn-live-dot{width:7px;height:7px;border-radius:50%;background:#76efad;box-shadow:0 0 0 5px rgba(118,239,173,.13)}
.lsvn-reading-breadcrumb{margin-top:22px;font-size:.76rem}.lsvn-reading-breadcrumb a{color:rgba(255,255,255,.72);text-decoration:none}.lsvn-reading-breadcrumb a:hover{color:#fff}
.lsvn-reading-category{display:inline-flex;margin-top:25px;padding:7px 12px;border:1px solid rgba(255,255,255,.24);border-radius:999px;color:#fff;text-decoration:none;font-size:.78rem;font-weight:800;background:rgba(255,255,255,.1)}.lsvn-reading-category:hover{background:#fff;color:var(--lsvn-green-dark)}
.lsvn-reading-hero h1{max-width:940px;margin:16px 0 20px;color:#fff;font-size:clamp(2rem,4.8vw,4.35rem);line-height:1.04;letter-spacing:-.045em;font-weight:850}.lsvn-reading-meta{font-size:.84rem}.lsvn-reading-author{display:inline-flex;align-items:center;gap:8px}.lsvn-reading-author img{width:28px;height:28px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.35)}
.lsvn-reading-progress{height:4px;background:#dceee4;position:relative;z-index:4}.lsvn-reading-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--lsvn-gold),#7bf0b0);transition:width .12s ease}
.lsvn-reading-shell{display:grid;grid-template-columns:220px minmax(0,760px) 330px;justify-content:center;gap:22px;align-items:start;padding:42px clamp(16px,3vw,42px) 80px;max-width:1500px;margin:auto}.lsvn-reading-sidebar{min-width:0}.lsvn-reading-sidebar--toc{position:sticky;top:100px}.lsvn-reading-sidebar--utility{position:sticky;top:100px;display:grid;gap:16px}.lsvn-reading-panel{border:1px solid var(--lsvn-line);border-radius:20px;background:rgba(255,255,255,.94);box-shadow:0 10px 32px rgba(12,62,38,.06);padding:20px}.lsvn-panel-label{display:block;color:var(--lsvn-green);font-size:.67rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.lsvn-panel-title{display:block;margin-top:5px;font-size:1rem}.lsvn-panel-muted{color:var(--lsvn-muted);font-size:.78rem;line-height:1.65}.lsvn-toc{display:grid;gap:4px;margin-top:18px}.lsvn-toc__link{display:block;padding:8px 9px;border-left:2px solid transparent;color:#49675a;text-decoration:none;font-size:.76rem;line-height:1.4;border-radius:0 8px 8px 0;transition:.2s}.lsvn-toc__link--h3{padding-left:19px;font-size:.71rem;color:#71877b}.lsvn-toc__link:hover,.lsvn-toc__link.is-active{border-left-color:var(--lsvn-green);background:#eaf8ef;color:var(--lsvn-green-dark);font-weight:800}.lsvn-reading-note{display:flex;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--lsvn-line);color:#71877b;font-size:.72rem;line-height:1.5}.lsvn-reading-note span:first-child{color:var(--lsvn-gold);font-size:1.1rem}
.lsvn-reading-article{min-width:0}.lsvn-article-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;color:#6c8276;font-size:.75rem}.lsvn-article-tools>span{display:flex;align-items:center;gap:8px}.lsvn-article-tools button{border:0;background:none;color:var(--lsvn-green-dark);font:inherit;font-weight:800;cursor:pointer}.lsvn-reading-cover{margin:0 0 22px;overflow:hidden;border-radius:22px;background:#e4f4ea;box-shadow:var(--lsvn-shadow)}.lsvn-reading-cover img{display:block;width:100%;height:auto;aspect-ratio:16/8;object-fit:cover}.lsvn-reading-content{background:#fff;border:1px solid var(--lsvn-line);border-radius:22px;padding:clamp(24px,4vw,52px);box-shadow:var(--lsvn-shadow);font-size:1.03rem;line-height:1.85;color:#314d40}.lsvn-reading-content h2{scroll-margin-top:110px;margin:2.25em 0 .65em;color:var(--lsvn-ink);font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.18;letter-spacing:-.025em}.lsvn-reading-content h3{scroll-margin-top:110px;margin:1.8em 0 .5em;color:var(--lsvn-ink-2);font-size:1.25rem}.lsvn-reading-content p{margin:0 0 1.1em}.lsvn-reading-content a{color:var(--lsvn-green-dark);font-weight:750}.lsvn-reading-content img{border-radius:16px}.lsvn-reading-content blockquote{margin:1.6em 0;padding:18px 22px;border-left:4px solid var(--lsvn-green);background:var(--lsvn-soft);border-radius:0 14px 14px 0}.lsvn-reading-content table{display:block;overflow:auto;width:100%;border-collapse:collapse}.lsvn-reading-content th,.lsvn-reading-content td{padding:10px 12px;border:1px solid var(--lsvn-line);text-align:left;min-width:130px}.lsvn-reading-content th{background:#eaf8ef;color:var(--lsvn-ink)}.lsvn-inline-cta{margin-top:18px}.lsvn-reading-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:22px}.lsvn-reading-tags a{padding:6px 10px;border-radius:999px;background:#eaf8ef;color:var(--lsvn-green-dark);text-decoration:none;font-size:.72rem;font-weight:800}.lsvn-reading-share{display:flex;align-items:center;gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid var(--lsvn-line);color:#71877b;font-size:.75rem}.lsvn-reading-share span{margin-right:auto}.lsvn-reading-share a{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e9f5ee;color:var(--lsvn-green-dark);font-size:.7rem;font-weight:900;text-decoration:none}.lsvn-reading-share a:hover{background:var(--lsvn-green);color:#fff}.lsvn-author-card{display:flex;align-items:center;gap:15px;margin-top:26px;padding:20px;border:1px solid var(--lsvn-line);border-radius:18px;background:linear-gradient(135deg,#f6fcf8,#fff)}.lsvn-author-card img{width:52px;height:52px;border-radius:50%;object-fit:cover}.lsvn-author-card strong{display:block;margin-top:4px}.lsvn-author-card p{margin:4px 0 0;color:var(--lsvn-muted);font-size:.78rem;line-height:1.5}.lsvn-post-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.lsvn-post-nav>div{min-width:0}.lsvn-post-nav a{display:block;height:100%;padding:15px;border:1px solid var(--lsvn-line);border-radius:15px;background:#fff;text-decoration:none}.lsvn-post-nav a:hover{border-color:#8fd5ae;box-shadow:0 8px 22px rgba(12,62,38,.08)}.lsvn-post-nav span{display:block;color:var(--lsvn-green);font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.lsvn-post-nav strong{display:block;margin-top:5px;color:var(--lsvn-ink);font-size:.78rem;line-height:1.4}.lsvn-post-nav__next{text-align:right}.lsvn-comments{margin-top:28px;padding:24px;border:1px solid var(--lsvn-line);border-radius:20px;background:#fff}.lsvn-comments h2{margin:0 0 16px;font-size:1.15rem;color:var(--lsvn-ink)}
.lsvn-ai-panel{position:relative;overflow:hidden;background:linear-gradient(145deg,#0d3b29,#0a5d38);border:0;color:#fff}.lsvn-ai-panel:after{content:'';position:absolute;width:150px;height:150px;right:-74px;top:-74px;border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 0 22px rgba(255,255,255,.04)}.lsvn-ai-orb{display:grid;place-items:center;width:38px;height:38px;margin-bottom:14px;border:1px solid rgba(255,255,255,.3);border-radius:13px;background:rgba(255,255,255,.12);color:#b9f8d0;font-size:1.2rem}.lsvn-ai-panel .lsvn-panel-label{color:#a4f1bd}.lsvn-ai-panel h2{position:relative;z-index:1;margin:10px 0 8px;color:#fff;font-size:1.35rem;line-height:1.15;letter-spacing:-.025em}.lsvn-ai-panel .lsvn-panel-muted{color:rgba(255,255,255,.72)}.lsvn-ai-actions{display:grid;gap:7px;margin-top:16px}.lsvn-ai-actions button{display:grid;grid-template-columns:28px 1fr;column-gap:8px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.08);color:#fff;text-align:left;cursor:pointer;transition:.2s}.lsvn-ai-actions button:hover,.lsvn-ai-actions button.is-loading{border-color:#a4f1bd;background:rgba(255,255,255,.16);transform:translateX(2px)}.lsvn-ai-actions span{grid-row:span 2;color:#a4f1bd;font-size:.66rem;font-weight:900}.lsvn-ai-actions b{font-size:.76rem}.lsvn-ai-actions small{color:rgba(255,255,255,.65);font-size:.67rem}.lsvn-ai-result{min-height:54px;margin-top:12px;padding:11px;border-radius:12px;background:rgba(0,0,0,.15);color:rgba(255,255,255,.78);font-size:.73rem;line-height:1.55;white-space:pre-wrap}.lsvn-ai-result.is-error{color:#ffd0c2}.lsvn-ai-full-link{display:block;margin-top:14px;color:#b9f8d0;font-size:.73rem;font-weight:850;text-decoration:none}.lsvn-ai-full-link:hover{color:#fff}.lsvn-ecosystem-panel{display:grid;gap:8px}.lsvn-ecosystem-panel>a{display:grid;grid-template-columns:27px 1fr;column-gap:7px;padding:9px;border-radius:11px;background:#f5fbf7;text-decoration:none}.lsvn-ecosystem-panel>a:hover{background:#e6f7ed}.lsvn-ecosystem-panel>a>span{grid-row:span 2;color:var(--lsvn-green);font-size:1rem}.lsvn-ecosystem-panel b{color:var(--lsvn-ink);font-size:.77rem}.lsvn-ecosystem-panel small{color:var(--lsvn-muted);font-size:.66rem}.lsvn-mobile-toolbar{display:none}
@media(max-width:1200px){.lsvn-reading-shell{grid-template-columns:190px minmax(0,1fr) 290px;gap:14px}.lsvn-reading-content{padding:32px 28px}}
@media(max-width:920px){.lsvn-reading-shell{grid-template-columns:minmax(0,1fr);max-width:820px}.lsvn-reading-sidebar--toc,.lsvn-reading-sidebar--utility{position:static}.lsvn-reading-sidebar--toc{order:2}.lsvn-reading-article{order:1}.lsvn-reading-sidebar--utility{order:3}.lsvn-mobile-toolbar{display:flex;gap:8px;margin-bottom:10px}.lsvn-mobile-toolbar button{flex:1;padding:10px;border:1px solid var(--lsvn-line);border-radius:12px;background:#fff;color:var(--lsvn-green-dark);font-weight:850;cursor:pointer}.lsvn-reading-panel[data-panel]{display:none}.lsvn-reading-panel[data-panel].is-open{display:block}.lsvn-toc-panel,.lsvn-ai-panel{border-radius:18px}.lsvn-reading-sidebar--utility .lsvn-ai-panel{display:block}.lsvn-reading-sidebar--utility .lsvn-ecosystem-panel{display:grid}}
@media(max-width:600px){.lsvn-reading-hero__inner{padding-top:38px;padding-bottom:28px}.lsvn-reading-hero h1{font-size:clamp(2rem,10vw,3rem)}.lsvn-reading-meta{gap:8px;font-size:.74rem}.lsvn-reading-shell{padding:22px 12px 56px}.lsvn-reading-content{padding:25px 18px;font-size:.98rem;border-radius:17px}.lsvn-reading-cover{border-radius:17px}.lsvn-reading-cover img{aspect-ratio:16/10}.lsvn-article-tools{font-size:.68rem}.lsvn-post-nav{grid-template-columns:1fr}.lsvn-post-nav__next{text-align:left}.lsvn-author-card{align-items:flex-start}.lsvn-reading-share{flex-wrap:wrap}.lsvn-reading-share span{width:100%;margin:0 0 4px}}
.lsvn-related{margin-top:28px}.lsvn-related h2{margin:0 0 12px;color:var(--lsvn-ink);font-size:1.15rem;letter-spacing:-.02em}.lsvn-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.lsvn-related-card{position:relative;display:flex;min-height:118px;flex-direction:column;justify-content:flex-end;padding:15px;border:1px solid var(--lsvn-line);border-radius:16px;background:linear-gradient(145deg,#fff,#f1faf5);color:var(--lsvn-ink);text-decoration:none;overflow:hidden;transition:.2s}.lsvn-related-card:hover{border-color:#8fd5ae;box-shadow:0 10px 24px rgba(12,62,38,.08);transform:translateY(-2px)}.lsvn-related-card__mark{position:absolute;top:12px;right:14px;color:var(--lsvn-green);font-size:1.1rem}.lsvn-related-card strong{font-size:.8rem;line-height:1.35}.lsvn-related-card small{margin-top:7px;color:var(--lsvn-muted);font-size:.67rem}.lsvn-article-cta{margin-top:28px;padding:26px;border-radius:20px;background:linear-gradient(135deg,#0d3b29,#0d9b58);color:#fff;box-shadow:0 18px 40px rgba(8,107,61,.17)}.lsvn-article-cta .lsvn-panel-label{color:#b9f8d0}.lsvn-article-cta h2{margin:8px 0 6px;color:#fff;font-size:1.4rem;line-height:1.15}.lsvn-article-cta p{max-width:520px;margin:0 0 16px;color:rgba(255,255,255,.72);font-size:.82rem;line-height:1.55}.lsvn-article-cta a{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;background:#fff;color:var(--lsvn-green-dark);font-size:.77rem;font-weight:900;text-decoration:none}.lsvn-article-cta a:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.14)}
@media(max-width:600px){.lsvn-related-grid{grid-template-columns:1fr}.lsvn-article-cta{padding:22px 18px}}
.lsvn-ai-result h2,.lsvn-ai-result h3,.lsvn-ai-result h4{margin:8px 0 4px;color:#fff;line-height:1.25}.lsvn-ai-result h2{font-size:.9rem}.lsvn-ai-result h3{font-size:.82rem}.lsvn-ai-result h4{font-size:.76rem}.lsvn-ai-result code{padding:1px 4px;border-radius:4px;background:rgba(255,255,255,.14);font-size:.68rem}.lsvn-ai-result a{color:#d8f7e5;text-decoration:underline}.lsvn-ai-md-item{padding-left:3px}.lsvn-ai-result-tools{display:flex;gap:6px;margin-top:12px;padding-top:9px;border-top:1px solid rgba(255,255,255,.13)}.lsvn-ai-result-tools button{border:0;border-radius:999px;padding:6px 9px;background:rgba(255,255,255,.12);color:#d8f7e5;font-size:.66rem;font-weight:800;cursor:pointer}.lsvn-ai-result-tools button:hover{background:rgba(255,255,255,.22)}
/* Full-wide reading stage: compact chrome, viewport-sticky sidebars, draggable rails. */
@media(min-width:921px){
  .lsvn-reading-hero__inner{max-width:1920px;padding-left:clamp(24px,2.6vw,48px);padding-right:clamp(24px,2.6vw,48px);padding-bottom:34px}
  .lsvn-reading-shell{width:100%;max-width:1920px;grid-template-columns:minmax(180px,var(--lsvn-left-width,232px)) 12px minmax(0,1fr) 12px minmax(280px,var(--lsvn-right-width,332px));gap:0;padding:28px clamp(12px,1.8vw,30px) 58px}
  .lsvn-reading-sidebar--toc{grid-column:1;grid-row:1;position:sticky;top:88px;max-height:calc(100vh - 106px);overflow-y:auto;overscroll-behavior:contain;padding-right:7px}
  .lsvn-reading-article{grid-column:3;grid-row:1;min-width:0;padding:0 clamp(8px,1.1vw,20px)}
  .lsvn-reading-sidebar--utility{grid-column:5;grid-row:1;position:sticky;top:88px;max-height:calc(100vh - 106px);overflow-y:auto;overscroll-behavior:contain;padding-left:7px}
  .lsvn-reading-panel{padding:16px;border-radius:16px}.lsvn-reading-content{padding:clamp(26px,2.6vw,42px);border-radius:18px}.lsvn-reading-cover{border-radius:18px}
  .lsvn-shell-resizer{grid-row:1;display:flex;align-items:center;justify-content:center;width:12px;height:100%;min-height:160px;padding:0;border:0;background:transparent;color:var(--lsvn-green);cursor:col-resize;touch-action:none}
  .lsvn-shell-resizer--left{grid-column:2}.lsvn-shell-resizer--right{grid-column:4}
  .lsvn-shell-resizer span{display:block;width:4px;height:42px;border-radius:99px;background:#cde8d8;box-shadow:0 9px 0 #cde8d8,0 -9px 0 #cde8d8;transition:.2s}
  .lsvn-shell-resizer:hover span,.lsvn-reading-shell.is-resizing .lsvn-shell-resizer span{height:58px;background:var(--lsvn-green);box-shadow:0 12px 0 var(--lsvn-green),0 -12px 0 var(--lsvn-green)}
  .lsvn-reading-sidebar::-webkit-scrollbar{width:5px}.lsvn-reading-sidebar::-webkit-scrollbar-track{background:transparent}.lsvn-reading-sidebar::-webkit-scrollbar-thumb{background:#cde4d6;border-radius:99px}.lsvn-reading-sidebar{scrollbar-color:#cde4d6 transparent;scrollbar-width:thin}
  body.lsvn-is-resizing,body.lsvn-is-resizing *{cursor:col-resize!important;user-select:none!important}
}
@media(max-width:920px){.lsvn-shell-resizer{display:none}.lsvn-reading-shell{width:auto}.lsvn-reading-sidebar--toc,.lsvn-reading-sidebar--utility{max-height:none;overflow:visible}}
@media(min-width:921px){
  .lsvn-reading-sidebar--toc,.lsvn-reading-sidebar--utility{position:-webkit-sticky!important;position:sticky!important;top:88px;align-self:start;height:auto;max-height:none;overflow:visible;z-index:5}
  .lsvn-reading-sidebar__scroll{max-height:calc(100vh - 106px);overflow-y:auto;overscroll-behavior:contain;padding-right:7px}
  .lsvn-reading-sidebar__scroll::-webkit-scrollbar{width:5px}.lsvn-reading-sidebar__scroll::-webkit-scrollbar-track{background:transparent}.lsvn-reading-sidebar__scroll::-webkit-scrollbar-thumb{background:#cde4d6;border-radius:99px}.lsvn-reading-sidebar__scroll{scrollbar-color:#cde4d6 transparent;scrollbar-width:thin}
}
@media(max-width:920px){.lsvn-reading-sidebar__scroll{max-height:none;overflow:visible;padding-right:0}}
/* The parent foundation uses overflow-x:hidden, which turns the page into a
   scroll container and disables position:sticky in Chromium/WebKit. Clip the
   horizontal overflow without creating that container on reading pages. */
html:has(body .lsvn-reading-page),body:has(.lsvn-reading-page){overflow-x:clip!important}
/* Reading mode keeps the navigation rail stable; the parent theme's
   auto-hide header otherwise changes the sticky reference frame while scrolling. */
body.single-post:has(.lsvn-reading-page) .site-header.hide{transform:none!important;visibility:visible!important}
