/* Public document flow. App styles retain their original viewport shell. */
html:has(body.public-site){height:auto;overflow:auto;scroll-behavior:smooth;scroll-padding-top:90px}
body.public-site{height:auto;min-height:100vh;overflow:visible;background:#f6f7f8}
body.public-site #s1{display:block;position:static;height:auto;min-height:0;overflow:visible}
body.public-site #s1 .home{height:auto;overflow:visible}
body.public-site #s1 .home-showcase{content-visibility:auto;contain-intrinsic-size:auto 720px}
body.public-site a{color:inherit;text-decoration:none}
body.public-site a.btn-hero-primary,body.public-site a.nav-btn{display:inline-flex;align-items:center;justify-content:center}
.skip-link{position:fixed;top:-100px;left:20px;z-index:1000;padding:12px 18px;background:#fff;border:1px solid #333;border-radius:8px}
.skip-link:focus{top:12px}
.site-nav{position:sticky;top:0;z-index:40;min-height:72px;padding:14px max(24px,calc((100% - 1200px)/2));display:flex;align-items:center;gap:32px;border-bottom:1px solid #e7e9ef;background:rgba(255,255,255,.96)}
.site-brand{display:flex;align-items:center;gap:10px;font:700 17px Arial,sans-serif;letter-spacing:.05em;white-space:nowrap}
.site-brand svg{width:27px;height:27px}
.site-nav-links{display:flex;gap:24px;align-items:center;flex:1;justify-content:center;font-size:13px;color:#576171}
.site-nav-links a:hover,.site-text-link:hover,.next-reading a:hover{color:#2f3eb8}
body.public-site a.site-start{background:#2f3eb8;color:#fff;display:inline-flex;align-items:center;gap:18px;padding:12px 20px;border-radius:24px;font-size:13px;white-space:nowrap}
.site-bottom{max-width:1200px;margin:64px auto 0;padding:28px 24px 40px;border-top:1px solid #e0e4ec;display:flex;align-items:center;gap:22px;color:#687184;font-size:12px}
.site-bottom>a{font-family:Arial,sans-serif;font-weight:700;letter-spacing:.06em;color:#1a1c1f}
.site-bottom>div{display:flex;gap:20px;margin-left:auto;flex-wrap:wrap}
.site-text-link{display:inline-flex;margin-top:22px;font-size:13px;color:#2f3eb8!important}
.page-wrap{max-width:1120px;margin:auto;padding:42px 28px 20px}
.breadcrumbs{font-size:12px;color:#7c8492;margin-bottom:50px}
.page-kicker{font:11px Arial,sans-serif;letter-spacing:.16em;color:#6672bb;margin-bottom:22px}
.page-heading{max-width:850px;margin-bottom:56px}
.page-heading h1{font-size:clamp(28px,3.8vw,44px);font-weight:650;line-height:1.35;letter-spacing:-.03em;color:#161922;margin:0 0 22px}
.page-heading>p:last-child{font-size:15px;line-height:1.95;color:#677181}
.reading{max-width:800px}
.reading section{padding:26px 0;border-top:1px solid #dfe4ed}
.reading h2{font-size:20px;line-height:1.5;margin:0 0 14px;color:#242938;font-weight:600}
.reading p{font-size:15px;line-height:2.05;color:#576171;margin:0}
.direction-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.direction-cards>a,.article-list>a{display:block;border:1px solid #e0e4ee;border-radius:18px;background:white;padding:28px;transition:transform .2s,border-color .2s,box-shadow .2s}
.direction-cards>a:hover,.article-list>a:hover{transform:translateY(-4px);border-color:#a9b3e7;box-shadow:0 12px 25px #202d5c0a}
.direction-cards>a>span{font:12px Arial,sans-serif;color:#8994c9}
.direction-cards h2{font-size:24px;margin:24px 0 14px}
.direction-cards p{font-size:14px;color:#748092;line-height:1.7;min-height:48px}
.direction-cards b{display:block;margin-top:24px;font-size:12px;font-weight:500;color:#3b4cb4}
.article-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.article-list span{font-size:12px;color:#6574bf}
.article-list h2{font-size:21px;line-height:1.5;margin:18px 0}
.article-list p{font-size:13px;color:#89919f}
.next-reading{max-width:800px;background:#eef0fa;border-radius:16px;padding:26px;margin-top:36px}
.next-reading h2{font-size:18px;margin:0 0 16px}
.next-reading a{display:block;font-size:14px;margin:14px 0;color:#4557af!important}
body.public-site #s1 .detail-demo{margin-top:44px;content-visibility:visible}
.detail-demo>h2{font-size:24px}.detail-demo>p{font-size:13px;color:#8a91a0;margin:10px 0 20px}
.detail-demo .home-showcase__panel{display:block!important}
.detail-demo .showcase-section__inner{padding:24px!important;gap:24px!important}
.detail-demo .showcase-description__title{font-size:28px!important}
body.public-site #s1 .native-viewport[data-state="error"] .native-loading{color:#354691;background:#eef1ff;border:1px solid #cbd2f1;border-radius:10px;padding:12px 18px;font-size:13px;cursor:pointer}
body.public-site #s1 .native-loading[role="button"]:focus-visible{outline:2px solid #354691;outline-offset:3px}
.not-found{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.not-found strong{font:100px Arial,sans-serif;color:#b8bfd8}
.site-noscript{padding:12px 24px;color:#667;font-size:13px}
@media(max-width:900px){.site-nav{gap:18px;padding:14px 20px}.site-nav-links{gap:14px;flex-wrap:wrap;font-size:12px}.direction-cards{grid-template-columns:repeat(2,1fr)}.site-bottom{flex-wrap:wrap}.site-bottom>div{margin-left:0}.detail-demo .showcase-section__inner{grid-template-columns:1fr!important}}
@media(max-width:600px){.site-nav{flex-wrap:wrap;justify-content:space-between}.site-nav-links{order:3;flex-basis:100%;justify-content:space-between;gap:10px}.site-nav .site-start{padding:10px 16px}.page-wrap{padding:24px 20px}.breadcrumbs{margin-bottom:32px}.page-heading{margin-bottom:36px}.direction-cards,.article-list{grid-template-columns:1fr}.direction-cards>a{padding:24px}.direction-cards h2{margin-top:16px}.direction-cards p{min-height:0}.site-bottom{margin-top:40px;gap:18px}.site-bottom>span{flex-basis:100%}body.public-site #s1 .nav-inner{gap:8px}body.public-site #s1 .nav-links--desktop{display:none}}
@media(prefers-reduced-motion:reduce){html:has(body.public-site){scroll-behavior:auto}.public-site *, .public-site *:before,.public-site *:after{animation:none!important;transition:none!important}}
