@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes loopHorizontally{0%{transform:translate(0)}to{transform:translate(-100%)}}.animate-fade{animation:.5s ease-out forwards fadeIn}.animate-slide{animation:.5s ease-out forwards slideUp}.animate-loop-horizontally{animation:40s linear infinite loopHorizontally}@media (prefers-reduced-motion:reduce){.animate-loop-horizontally{animation-duration:.01ms;animation-iteration-count:1}}.slide-left-slow{will-change:transform;transition:transform .9s}.hover-lift,.hover-scale,.hover-glow,.hover-shine,.hover-ripple{transition:transform .25s,box-shadow .25s,filter .25s;position:relative}.hover-lift:hover,.hover-lift:focus-visible{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.hover-scale:hover,.hover-scale:focus-visible{transform:scale(1.04)}.hover-glow:hover,.hover-glow:focus-visible{box-shadow:var(--shadow-glow);filter:brightness(1.05)}.hover-shine,.hover-ripple{overflow:hidden}.hover-shine:after{content:"";background:linear-gradient(90deg, transparent, var(--shine-color), transparent);opacity:0;border-radius:inherit;pointer-events:none;width:50%;height:200%;transition:transform .6s,opacity .6s;position:absolute;top:-50%;left:-75%;transform:skew(-20deg)}.hover-shine:hover:after,.hover-shine:focus-visible:after{opacity:1;transform:translate(250%)skew(-20deg)}.ripple{background:var(--ripple-color);pointer-events:none;border-radius:50%;animation:.6s ease-out forwards rippleExpand;position:absolute;transform:scale(0)}@keyframes rippleExpand{to{opacity:0;transform:scale(2.5)}}.hover-text-slide{vertical-align:bottom;padding:0;display:inline-block;position:relative;overflow:hidden}.hover-text-slide span{transition:transform .3s cubic-bezier(.76,0,.24,1);display:block}.hover-text-slide:before{content:attr(data-text);transition:transform .3s cubic-bezier(.76,0,.24,1);position:absolute;top:100%;left:0;right:0}.hover-text-slide:hover span,.hover-text-slide:focus-visible span,.hover-text-slide:hover:before,.hover-text-slide:focus-visible:before{transform:translateY(-100%)}
.blog-toc-card{padding-right:var(--space-xs)}.blog-toc-heading{margin-bottom:var(--space-m)}.blog-toc-list{gap:var(--space-xs);flex-direction:column;max-height:60vh;margin:0;padding:0;list-style:none;display:flex}.blog-toc-link{padding:var(--space-xs) var(--space-s);color:var(--text-muted);border-left:var(--border-width-sm,.125rem) solid transparent;border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-default);text-decoration:none;display:block}.blog-toc-link:hover,.blog-toc-link:focus-visible{color:var(--text-main);background:var(--glass-bg)}.blog-toc-link.active{color:var(--text-main);border-left-color:var(--primary);background:var(--glass-bg)}.blog-toc-link[data-level="3"]{padding-left:var(--space-l)}.blog-toc-list{scrollbar-width:thin;scrollbar-color:var(--text-muted) transparent}.blog-toc-list::-webkit-scrollbar{width:4px}.blog-toc-list::-webkit-scrollbar-track{background:0 0}.blog-toc-list::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:var(--radius-full)}.blog-post-layout{padding-bottom:var(--section-gap);flex-direction:column;display:flex}.blog-post-body-layout{gap:var(--space-l);flex-direction:column;align-items:stretch;display:flex}.blog-sidebar{width:100%}.blog-sidebar .card{width:100%;padding:var(--space-l)}.blog-main{width:100%;min-width:0}@media (min-width:960px){.blog-post-body-layout{gap:var(--space-3xl);flex-direction:row;align-items:flex-start}.blog-sidebar{width:200px;top:calc(var(--nav-offset) + var(--space-l));flex-shrink:0;align-self:flex-start;position:sticky}.blog-main{flex:1;min-width:0}}.blog-content{line-height:var(--line-height-loose)}.blog-content>*+*{margin-top:var(--space-l)}.blog-content>:first-child{margin-top:0}.blog-content h2,.blog-content h3{scroll-margin-top:calc(var(--nav-offset) + var(--space-l))}.blog-content h2{margin-top:var(--space-2xl);margin-bottom:var(--space-m)}.blog-content h3{margin-top:var(--space-xl);margin-bottom:var(--space-s)}.blog-content p,.blog-content ul,.blog-content ol{max-width:70ch}.blog-content ul,.blog-content ol{padding-left:var(--space-l)}.blog-content li{margin-bottom:var(--space-xs)}.blog-content blockquote{border-left:3px solid var(--primary);padding-left:var(--space-l);color:var(--text-muted);margin-left:0;font-style:italic}.blog-content pre,.blog-content code{font-family:var(--font-code);font-size:var(--text-body-sm)}.blog-content code{background:var(--bg-surface-elevated);border-radius:var(--radius-sm);padding:.2em .4em}.blog-content pre{background:var(--bg-surface-elevated);padding:var(--space-m);border-radius:var(--radius-main);border:1px solid var(--border-muted);overflow-x:auto}.blog-content pre code{background:0 0;padding:0}.blog-content img{border-radius:var(--radius-main);max-width:100%;height:auto}.blog-content figure{margin:var(--space-2xl) 0}.blog-content figcaption{margin-top:var(--space-s);color:var(--text-muted);font-size:var(--text-body-sm)}.blog-content-table-wrap{border:1px solid var(--border-muted);border-radius:var(--radius-main);background:var(--bg-surface);overflow-x:auto}.blog-content table{border-collapse:collapse;width:100%;min-width:calc(var(--space-4xl) * 8)}.blog-content th,.blog-content td{padding:var(--space-s) var(--space-m);border-bottom:1px solid var(--border-muted);text-align:left}.blog-content th{color:var(--text-main);background:var(--bg-surface-elevated);font-weight:var(--font-weight-semibold)}.blog-content tr:last-child td{border-bottom:0}.blog-content-visual-block{padding:var(--space-xl);border:1px solid var(--border-muted);border-radius:var(--radius-main);background:var(--bg-surface)}.blog-content-visual-block>*+*{margin-top:var(--space-s)}.blog-overview-section{background:var(--bg-base)}.blog-overview-featured{gap:var(--space-2xl);grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr);align-items:center;display:grid}.blog-overview-featured-media,.blog-overview-card-media,.blog-post-hero-image,.blog-content-image-grid-item{border-radius:var(--radius-lg);background:var(--bg-surface-elevated);position:relative;overflow:hidden}.blog-overview-featured-media{min-height:clamp(18rem,38vw,32rem)}.blog-overview-featured-copy,.blog-overview-card-body{align-content:start;gap:var(--space-m);display:grid}.blog-overview-featured-copy h3,.blog-overview-card-body h3{margin:0}.blog-overview-featured-copy p,.blog-overview-card-body p{color:var(--text-muted);line-height:var(--line-height-loose);margin:0}.blog-overview-meta{align-items:center;gap:var(--space-xs);color:var(--text-muted);font-size:var(--text-body-sm);flex-wrap:wrap;display:flex}.blog-overview-meta span+span:before,.blog-post-hero-meta span+span:before{content:"•";margin-right:var(--space-xs);color:var(--text-muted)}.blog-overview-avatar,.blog-post-hero-meta img{border-radius:var(--radius-full);object-fit:cover}.blog-overview-filters{gap:var(--space-s);flex-wrap:wrap;display:flex}.blog-overview-grid{gap:var(--space-xl);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.blog-overview-card{padding:0;overflow:hidden}.blog-overview-card-media{aspect-ratio:16/10;border-radius:0}.blog-overview-card-body{padding:var(--space-l)}.blog-post-hero-copy{justify-items:center;gap:var(--space-m);text-align:center;max-width:58rem;margin-inline:auto;display:grid}.blog-post-hero-copy h1{max-width:14ch;margin:0}.blog-post-hero-copy .text-lead{max-width:62ch;margin:0}.blog-post-hero-breadcrumbs,.blog-post-hero-breadcrumbs span,.blog-post-hero-meta{justify-content:center;align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:inline-flex}.blog-post-hero-breadcrumbs{color:var(--text-muted);font-size:var(--text-body-sm)}.blog-post-hero-breadcrumbs a{color:inherit;text-decoration:none}.blog-post-hero-breadcrumbs a:hover,.blog-post-hero-breadcrumbs a:focus-visible{color:var(--primary)}.blog-post-hero-category{text-decoration:none}.blog-post-hero-meta{color:var(--text-muted);font-size:var(--text-body-sm)}.blog-post-hero-image{width:min(100%,62rem);min-height:clamp(18rem,42vw,34rem);margin-inline:auto}.blog-post-body-layout:has(.blog-sidebar){align-items:start}.blog-post-footer{margin-top:var(--space-2xl)}.blog-content-image-block img{border-radius:var(--radius-lg);width:100%;height:auto}.blog-content-image-grid{gap:var(--space-m);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.blog-content-image-grid-item{aspect-ratio:4/3}.blog-content blockquote{max-width:70ch;padding:var(--space-l);border-left:3px solid var(--primary);border-radius:var(--radius-main);background:var(--bg-surface)}@media (max-width:900px){.blog-overview-featured,.blog-overview-grid{grid-template-columns:1fr}.blog-post-hero-copy{text-align:left;justify-items:start}.blog-post-hero-breadcrumbs,.blog-post-hero-meta{justify-content:flex-start}}@media (max-width:640px){.blog-content-image-grid{grid-template-columns:1fr}}.premium-blog-post-section{background:var(--bg-base);color:var(--text-main);padding-top:var(--space-l)}.premium-blog-hero{padding-top:calc(var(--nav-offset) + var(--space-3xl));padding-bottom:var(--space-l)}.premium-blog-hero-grid{gap:var(--space-xl);display:grid}.premium-blog-hero-copy{gap:var(--space-m);max-width:100%;display:grid}.premium-blog-category,.premium-related-body>span{width:fit-content;color:var(--primary);font-size:var(--text-body-sm);font-weight:var(--fw-bold);text-decoration:none}.premium-blog-hero-copy h1{max-width:100%;margin:0}.premium-blog-meta{gap:var(--space-l);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.premium-blog-meta div{gap:var(--space-xxs);display:grid}.premium-blog-meta dt,.premium-blog-meta dd,.premium-related-body small{color:var(--text-muted);font-size:var(--text-body-sm);margin:0}.premium-blog-meta dd{color:var(--text-main);font-weight:var(--fw-medium)}.premium-blog-meta dd span{color:var(--text-muted);font-weight:var(--fw-regular);display:block}.premium-blog-hero-image{aspect-ratio:4/3;border-radius:var(--radius-lg);background:var(--bg-surface-elevated);justify-self:center;width:min(100%,42rem);position:relative;overflow:hidden}.section-preview-shell .premium-blog-hero{padding-top:var(--space-2xl)}.premium-blog-hero-image img,.premium-related-image img{object-fit:cover}.premium-short-answer{gap:var(--space-s);max-width:56rem;margin:0 auto var(--space-xl);padding:var(--space-l);border-left:var(--space-xxs) solid var(--primary);border-radius:var(--radius-main);background:var(--bg-surface);display:grid}.premium-short-answer h2,.premium-trust-block h2,.premium-faq-block h2,.premium-sources-block h2,.premium-related-block h2,.premium-article-cta h2{margin:0}.premium-short-answer p{max-width:72ch;line-height:var(--line-height-loose);margin:0}.premium-blog-layout{gap:var(--space-xl);grid-template-columns:minmax(10rem,14rem) minmax(0,56rem) minmax(0,1fr);align-items:start;display:grid}.premium-blog-sidebar{top:calc(var(--nav-offset) + var(--space-l));position:sticky}.premium-blog-toc{gap:var(--space-m);color:var(--text-muted);display:grid}.premium-blog-toc ul{gap:var(--space-xs);max-height:60vh;padding:0 0 0 var(--space-s);border-left:1px solid var(--border-main);margin:0;list-style:none;display:grid;overflow-y:auto}.premium-blog-toc a{padding:var(--space-xxs) 0 var(--space-xxs) var(--space-s);color:var(--text-muted);font-size:var(--text-body-sm);line-height:var(--line-height-snug);text-decoration:none;display:block}.premium-blog-toc a[data-level="3"]{padding-left:var(--space-l)}.premium-blog-toc a:hover,.premium-blog-toc a:focus-visible,.premium-blog-toc a.active{color:var(--primary)}.premium-blog-main{grid-column:2;min-width:0}.premium-blog-content{line-height:var(--line-height-loose)}.premium-blog-content>*+*{margin-top:var(--space-l)}.premium-blog-content h2,.premium-blog-content h3{scroll-margin-top:calc(var(--nav-offset) + var(--space-l))}.premium-blog-content h2{margin-top:var(--space-xl);margin-bottom:var(--space-s)}.premium-blog-content h2:first-child{margin-top:0}.premium-blog-content p,.premium-blog-content ol,.premium-blog-content ul,.premium-blog-content blockquote{max-width:76ch}.premium-blog-content blockquote{padding:var(--space-l);border-left:var(--space-xxs) solid var(--primary);border-radius:var(--radius-main);background:var(--bg-surface);color:var(--text-main);font-weight:var(--fw-medium);margin-left:0}.premium-blog-content ol,.premium-blog-content ul{padding-left:var(--space-l)}.premium-article-highlight{border:1px solid var(--border-main);border-radius:var(--radius-main);background:var(--bg-surface);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;max-width:72ch;display:grid}.premium-article-highlight div{gap:var(--space-xxs);padding:var(--space-s);display:grid}.premium-article-highlight div+div{border-left:1px solid var(--border-muted)}.premium-article-highlight strong{color:var(--primary);font-size:var(--text-body-lg)}.premium-article-highlight span{color:var(--text-muted);font-size:var(--text-body-sm);line-height:var(--line-height-snug)}.premium-trust-block,.premium-faq-block,.premium-sources-block,.premium-related-block,.premium-article-cta{margin-top:var(--space-l);padding-block:0}.premium-trust-block{gap:var(--space-m);padding:var(--space-m);border:1px solid var(--border-muted);border-radius:var(--radius-main);background:var(--bg-surface);display:grid}.premium-trust-block>div:first-child{max-width:none}.premium-trust-grid{border-top:1px solid var(--border-muted);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.premium-trust-grid>div{gap:var(--space-xxs);padding:var(--space-m) var(--space-s) 0;align-content:start;display:grid}.premium-trust-grid>div+div{border-left:1px solid var(--border-muted)}.premium-trust-icon{width:var(--space-3xl);height:var(--space-3xl);color:var(--primary);font-size:var(--h3);place-items:center;display:grid}.premium-trust-grid strong{color:var(--text-main);font-size:var(--h4);line-height:var(--line-height-tight)}.premium-trust-grid span{color:var(--text-main);font-weight:var(--fw-medium)}.premium-trust-grid p{color:var(--text-muted);font-size:var(--text-body-sm);line-height:var(--line-height-snug);margin:0}.premium-faq-block .faq-list-lined{margin-top:var(--space-xs)}.premium-sources-block>div{gap:var(--space-xs);margin-top:var(--space-s);display:grid}.premium-sources-block a{width:fit-content;color:var(--text-muted);font-size:var(--text-body-sm);text-decoration:underline;-webkit-text-decoration-color:var(--border-main);text-decoration-color:var(--border-main);text-underline-offset:var(--space-xxs)}.premium-sources-block a:hover,.premium-sources-block a:focus-visible{color:var(--text-main)}.premium-related-grid{gap:var(--space-l);margin-top:var(--space-s);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.premium-related-card{border:1px solid var(--border-muted);border-radius:var(--radius-main);background:var(--bg-surface);color:var(--text-main);text-decoration:none;display:grid;overflow:hidden}.premium-related-image{aspect-ratio:16/9;background:var(--bg-surface-elevated);position:relative}.premium-related-body{gap:var(--space-xs);padding:var(--space-s);display:grid}.premium-related-body strong{line-height:var(--line-height-snug)}.premium-article-cta{gap:var(--space-l);padding:var(--space-l);border-radius:var(--radius-main);background:var(--bg-surface);align-items:start;display:grid}.premium-article-cta>div{gap:var(--space-xs);max-width:none;display:grid}.premium-article-cta h2{margin:0}.premium-article-cta p{color:var(--text-muted);max-width:68ch;margin:0}.premium-article-cta .btn{justify-self:start}@media (max-width:960px){.premium-blog-layout{grid-template-columns:1fr}.premium-blog-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-blog-sidebar{display:none}.premium-blog-toc ul{max-height:none}.premium-trust-grid,.premium-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.premium-blog-meta,.premium-article-highlight,.premium-trust-grid,.premium-related-grid{grid-template-columns:1fr}.premium-article-highlight div+div,.premium-trust-grid>div+div{border-left:0;border-top:1px solid var(--border-muted)}.premium-article-cta{flex-direction:column;align-items:stretch}}
.ds-app{--ds-nav-h:100px;--ds-app-header-h:44px;min-height:calc(100vh - var(--ds-nav-h));margin-top:var(--ds-nav-h);background:var(--bg-base);flex-direction:column;display:flex}.ds-app-header{top:var(--ds-nav-h);z-index:5;justify-content:space-between;align-items:center;gap:var(--space-l);width:100%;height:var(--ds-app-header-h);padding:0 var(--space-l);background:var(--bg-surface);border-bottom:1px solid var(--border-main);display:flex;position:sticky}.ds-app-header-left{align-items:center;gap:var(--space-s);min-width:0;display:flex}.ds-app-eyebrow{font-size:var(--text-eyebrow);letter-spacing:var(--ls-wider);text-transform:uppercase;font-weight:var(--fw-semi);color:var(--text-muted)}.ds-app-badge{padding:2px var(--space-xs);background:color-mix(in srgb, var(--primary) 15%, transparent);color:var(--primary);border-radius:var(--radius-full);font-size:var(--text-eyebrow);font-weight:var(--fw-semi);align-items:center;display:inline-flex}.ds-app-header-right{align-items:center;gap:var(--space-s);flex-wrap:wrap;justify-content:flex-end;display:flex}.ds-app-header-right .ds-toolbar{box-shadow:none;gap:var(--space-s);background:0 0;border:0;padding:0;position:static}.ds-app-body{flex:1;grid-template-columns:200px minmax(0,1fr) minmax(360px,36vw);min-height:0;display:grid}@media (max-width:1280px){.ds-app-body{grid-template-columns:200px minmax(0,1fr) minmax(320px,38vw)}}@media (max-width:1024px){.ds-app-body{grid-template-columns:200px minmax(0,1fr)}.ds-app-preview{display:none}}@media (max-width:768px){.ds-app-body{grid-template-columns:1fr}.ds-app-rail{border-right:0;border-bottom:1px solid var(--border-main);max-height:200px;overflow-y:auto}}.ds-app-rail{gap:var(--space-xxs);padding:var(--space-s);background:var(--bg-surface);border-right:1px solid var(--border-main);top:calc(var(--ds-nav-h) + var(--ds-app-header-h));height:calc(100vh - var(--ds-nav-h) - var(--ds-app-header-h));flex-direction:column;align-self:flex-start;display:flex;position:sticky;overflow-y:auto}.ds-rail-group{gap:var(--space-xxs);flex-direction:column;display:flex}.ds-rail-group-btn{appearance:none;color:var(--text-muted);font:inherit;font-size:var(--text-body-sm);font-weight:var(--fw-medium);text-align:left;padding:var(--space-xs) var(--space-s);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;align-items:center;transition:color .15s,background .15s;display:flex}.ds-rail-group-btn:hover{color:var(--text-main)}.ds-rail-group-btn.is-active{color:var(--text-main);background:var(--bg-surface-elevated)}.ds-rail-sublist{margin:0 0 var(--space-xs);padding:0 0 0 var(--space-s);flex-direction:column;gap:1px;list-style:none;display:flex}.ds-rail-sublink{appearance:none;width:100%;color:var(--text-muted);font:inherit;font-size:var(--text-body-sm);text-align:left;padding:4px var(--space-s);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;transition:color .15s,background .15s;display:flex}.ds-rail-sublink:hover{color:var(--text-main);background:var(--bg-base)}.ds-rail-count{color:var(--text-muted);background:var(--bg-base);border-radius:var(--radius-full);text-align:center;min-width:20px;padding:1px 6px;font-size:10px}.ds-app-controls{height:calc(100vh - var(--ds-nav-h) - var(--ds-app-header-h));top:calc(var(--ds-nav-h) + var(--ds-app-header-h));padding:var(--space-m) var(--space-l);align-self:flex-start;gap:var(--space-l);border-right:1px solid var(--border-main);background:var(--bg-base);flex-direction:column;display:flex;position:sticky;overflow-y:auto}.ds-control-subgroup{gap:var(--space-xs);scroll-margin-top:var(--space-l);flex-direction:column;display:flex}.ds-control-subgroup-head{justify-content:space-between;align-items:baseline;gap:var(--space-s);padding:var(--space-xs) 0;border-bottom:1px solid var(--border-muted);background:var(--bg-base);z-index:1;display:flex;position:sticky;top:0}.ds-control-subgroup-title{font-size:var(--text-body);font-weight:var(--fw-semi);letter-spacing:.04em;text-transform:uppercase;margin:0}.ds-control-rows{flex-direction:column;gap:2px;display:flex}.ds-control-footer{margin-top:var(--space-xl);padding-top:var(--space-m);border-top:1px solid var(--border-muted);text-align:center}.ds-row{align-items:center;gap:var(--space-s);padding:var(--space-xs) var(--space-s);border-radius:var(--radius-sm);border:1px solid #0000;grid-template-columns:28px minmax(0,1.1fr) minmax(180px,2fr) 24px;transition:background .15s,border-color .15s;display:grid}.ds-row-spacing{grid-template-columns:9rem minmax(0,1fr) minmax(180px,2fr) 24px}.ds-row:hover{background:var(--bg-surface)}.ds-row.is-overridden{border-color:color-mix(in srgb, var(--primary) 35%, var(--border-main))}.ds-row-meta{flex-direction:column;gap:1px;min-width:0;display:flex}.ds-row-label{font-size:var(--text-body-sm);font-weight:var(--fw-medium);color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ds-row-var{font-family:var(--font-code);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.ds-row-control{align-items:center;width:100%;min-width:0;display:flex}.ds-row-reset,.ds-row-reset-spacer{justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.ds-row-reset{appearance:none;color:var(--text-muted);font:inherit;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;font-size:14px;transition:color .15s,background .15s}.ds-row-reset:hover{color:var(--text-main);background:var(--bg-surface-elevated)}.ds-row-swatch{border-radius:var(--radius-sm);border:1px solid var(--border-muted);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.ds-row-swatch-spacing{background:var(--primary);border-radius:var(--radius-sm);min-width:1px;max-width:100%;height:var(--space-xs)!important}.ds-row-swatch-type{background:var(--bg-base);color:var(--text-main);overflow:hidden;font-size:14px!important;line-height:1!important}.ds-quick-presets{align-items:center;gap:var(--space-s);padding:var(--space-xs) var(--space-s);background:var(--bg-surface);border:1px solid var(--border-muted);border-radius:var(--radius-sm);flex-wrap:wrap;display:flex}.ds-app-preview{height:calc(100vh - var(--ds-nav-h) - var(--ds-app-header-h));top:calc(var(--ds-nav-h) + var(--ds-app-header-h));align-self:flex-start;position:sticky;overflow-y:auto}.ds-preview-pane{flex-direction:column;gap:12px;padding:12px;display:flex}.ds-pv-header{border-bottom:1px solid var(--border-muted);justify-content:space-between;align-items:baseline;gap:8px;padding:4px 2px;display:flex}.ds-pv-header-label{letter-spacing:var(--ls-wider);text-transform:uppercase;font-size:10px;font-weight:var(--fw-bold);color:var(--text-main)}.ds-pv-header-sub{color:var(--text-muted);font-size:10px}.ds-pv-grid{grid-template-columns:1fr;gap:8px;display:grid}.ds-pv-block{flex-direction:column;gap:4px;padding-block:0;display:flex}.ds-pv-block-label{letter-spacing:var(--ls-wider);text-transform:uppercase;font-size:9px;font-weight:var(--fw-semi);color:var(--text-muted)}.ds-pv-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ds-pv-muted{color:var(--text-muted);margin:0;font-size:11px}.ds-pv-code{background:var(--bg-base);border:1px solid var(--border-muted);border-radius:var(--radius-sm);font-family:var(--font-code);color:var(--text-muted);align-self:flex-start;padding:2px 6px;font-size:11px}.ds-pv-palette{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:4px;display:grid}.ds-pv-palette-cell{color:var(--text-muted);font-size:9px;font-family:var(--font-code);white-space:nowrap;text-overflow:ellipsis;flex-direction:column;gap:2px;display:flex;overflow:hidden}.ds-pv-palette-swatch{border-radius:var(--radius-main);border:1px solid var(--border-muted);width:100%;height:2rem;display:block}.ds-pv-contrast-grid,.ds-pv-radius-comparison{gap:var(--space-xs);margin-top:var(--space-m);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ds-pv-contrast-grid span,.ds-pv-radius-comparison span{min-height:var(--space-2xl);padding:var(--space-s);border:1px solid var(--border-muted);text-align:center;font-size:var(--text-body-sm);place-items:center;display:grid}.ds-pv-radius-comparison{grid-template-columns:repeat(5,minmax(0,1fr))}.ds-pv-radius-comparison span{background:var(--bg-surface-elevated)}.ds-pv-type{background:var(--bg-surface);border:1px solid var(--border-main);border-radius:var(--radius-main);padding:10px 12px}.ds-pv-type-row{border-bottom:1px solid var(--border-muted);justify-content:space-between;align-items:baseline;gap:16px;padding:4px 0;display:flex}.ds-pv-type-row:last-child{border-bottom:0}.ds-pv-type-sample{line-height:var(--line-height-tight);color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ds-pv-type-token{font-family:var(--font-code);color:var(--text-muted);flex-shrink:0;font-size:1rem}.ds-pv-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.ds-pv-card-grid>.card{flex-direction:column;gap:2px;padding:8px 10px;font-size:11px;display:flex}.ds-pv-form{background:var(--bg-surface);border:1px solid var(--border-main);border-radius:var(--radius-main);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.ds-pv-field{color:var(--text-muted);flex-direction:column;gap:2px;font-size:10px;display:flex}.ds-pv-input{appearance:none;background:var(--bg-base);color:var(--text-main);border:1px solid var(--border-main);border-radius:var(--radius-sm);font-family:var(--font);resize:vertical;width:100%;padding:5px 8px;font-size:11px}.ds-pv-input:focus{border-color:var(--input-border-active);outline:none}.ds-pv-spacing{background:var(--bg-surface);border:1px solid var(--border-main);border-radius:var(--radius-main);flex-direction:column;gap:3px;padding:8px 10px;display:flex}.ds-pv-spacing-row{font-family:var(--font-code);color:var(--text-muted);grid-template-columns:72px 1fr;align-items:center;gap:6px;font-size:10px;display:grid}.ds-pv-spacing-bar{background:var(--primary);border-radius:2px;height:8px;display:inline-block}.ds-pv-elevation{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:10px;padding:10px;display:grid}.ds-pv-elevation-cell{background:var(--bg-surface);border-radius:var(--radius-main);font-family:var(--font-code);color:var(--text-muted);justify-content:center;align-items:center;padding:10px 0;font-size:10px;display:flex}.ds-pv-shapes{background:var(--bg-surface);border:1px solid var(--border-main);border-radius:var(--radius-main);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;display:flex}.ds-pv-shape-card{background:var(--bg-surface-elevated);border:1px solid var(--border-main);border-radius:var(--radius-main);align-items:center;padding:5px 10px;font-size:11px;display:inline-flex}.ds-pv-shape-pill{background:var(--bg-surface-elevated);color:var(--text-main);border:1px solid var(--border-main);border-radius:var(--radius-full);align-items:center;padding:3px 10px;font-size:11px;display:inline-flex}.ds-pv-shape-square{background:var(--primary);border-radius:var(--radius-main);width:28px;height:28px;display:inline-block}.ds-pv-page{border:1px solid var(--border-main);border-radius:var(--radius-main);background:var(--bg-base);isolation:isolate;overflow:hidden}.ds-pv-page-section{position:relative}.ds-pv-page .section-md,.ds-pv-page .section-lg,.ds-pv-page .section-sm{padding-block:var(--space-l)}.ds-toolbar{gap:var(--space-s);flex-wrap:wrap;align-items:center;display:flex}.ds-toolbar-group{align-items:center;gap:var(--space-xs);display:flex}.ds-toolbar-actions{margin-left:auto}.ds-segment{background:var(--bg-base);border:1px solid var(--border-main);border-radius:var(--radius-sm);padding:2px;display:inline-flex}.ds-segment-btn{appearance:none;color:var(--text-muted);font:inherit;font-size:var(--text-body-sm);padding:4px var(--space-s);border-radius:calc(var(--radius-sm) - 1px);cursor:pointer;white-space:nowrap;background:0 0;border:0;transition:background .15s,color .15s}.ds-segment-btn:hover{color:var(--text-main)}.ds-segment-btn.is-active{background:var(--bg-surface-elevated);color:var(--text-main)}.ds-toolbar-btn{appearance:none;background:var(--bg-surface-elevated);color:var(--text-main);border:1px solid var(--border-main);border-radius:var(--radius-sm);padding:4px var(--space-s);font:inherit;font-size:var(--text-body-sm);cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.ds-toolbar-btn:hover{background:var(--bg-base);border-color:var(--border-highlight)}.ds-toolbar-btn-ghost{background:0 0}.ds-toolbar-btn-danger{border-color:color-mix(in srgb, var(--sys-error) 35%, var(--border-main));color:var(--sys-error)}.ds-color-swatch-input{appearance:none;border:1px solid var(--border-main);border-radius:var(--radius-sm);cursor:pointer;background:0 0;flex-shrink:0;width:28px;height:28px;padding:0}.ds-color-swatch-input::-webkit-color-swatch-wrapper{padding:0}.ds-color-swatch-input::-webkit-color-swatch{border-radius:calc(var(--radius-sm) - 2px);border:0}.ds-text-input{appearance:none;background:var(--bg-base);min-width:0;color:var(--text-main);border:1px solid var(--border-main);border-radius:var(--radius-sm);padding:4px var(--space-s);font-family:var(--font-code);flex:1;font-size:12px}.ds-text-input:focus{border-color:var(--input-border-active);outline:none}.ds-text-input-full{width:100%}.ds-text-input-numeric{font-family:var(--font);flex:0 0 90px}.ds-select{appearance:none;background:var(--bg-base);color:var(--text-main);border:1px solid var(--border-main);border-radius:var(--radius-sm);padding:4px var(--space-s);font:inherit;font-size:var(--text-body-sm);cursor:pointer}.ds-range{min-width:60px;accent-color:var(--primary);flex:1}.fte-trigger{right:var(--space-l);bottom:var(--space-l);z-index:var(--z-fixed);align-items:center;gap:var(--space-xs);appearance:none;background:var(--bg-surface-elevated);color:var(--text-main);border:1px solid var(--border-main);border-radius:var(--radius-full);padding:var(--space-xs) var(--space-m);font:inherit;font-size:var(--text-body-sm);cursor:pointer;box-shadow:var(--shadow-lg);transition:transform .2s,box-shadow .2s;display:inline-flex;position:fixed}.fte-trigger:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)}.fte-trigger-dot{border-radius:var(--radius-full);background:var(--primary);width:8px;height:8px;box-shadow:0 0 8px var(--primary)}.fte-backdrop{background:var(--overlay-backdrop);z-index:var(--z-modal-backdrop);justify-content:flex-end;display:flex;position:fixed;inset:0}.fte-panel{background:var(--bg-surface);border-left:1px solid var(--border-main);width:min(420px,100%);height:100%;box-shadow:var(--shadow-2xl);z-index:var(--z-modal);flex-direction:column;display:flex}.fte-head{justify-content:space-between;align-items:flex-start;gap:var(--space-m);padding:var(--space-l);border-bottom:1px solid var(--border-muted);display:flex}.fte-title{margin:0 0 var(--space-xxs);font-size:var(--h5)}.fte-toolbar{gap:var(--space-s);padding:var(--space-m) var(--space-l);border-bottom:1px solid var(--border-muted);flex-wrap:wrap;align-items:center;display:flex}.fte-tabs{gap:var(--space-xxs);padding:var(--space-s) var(--space-l);border-bottom:1px solid var(--border-muted);display:flex;overflow-x:auto}.fte-body{gap:var(--space-s);padding:var(--space-m) var(--space-l);flex-direction:column;flex:1;display:flex;overflow-y:auto}.fte-foot{justify-content:space-between;align-items:center;gap:var(--space-m);padding:var(--space-m) var(--space-l);border-top:1px solid var(--border-muted);display:flex}.ds-token-card{gap:var(--space-s);padding:var(--space-s);background:var(--bg-base);border:1px solid var(--border-main);border-radius:var(--radius-sm);flex-direction:column;display:flex}.ds-token-card.is-overridden{border-color:color-mix(in srgb, var(--primary) 50%, var(--border-main))}.ds-token-card-head{gap:var(--space-s);align-items:flex-start;display:flex}.ds-token-card-meta{flex:1;min-width:0}.ds-token-card-title{margin:0 0 var(--space-xxs);font-size:var(--text-body-sm);font-weight:var(--fw-semi)}.ds-token-card-var{font-family:var(--font-code);color:var(--text-muted);word-break:break-all;font-size:11px}.ds-token-card-desc{margin:var(--space-xxs) 0 0;font-size:11px}.ds-token-card-control{gap:var(--space-xs);flex-direction:column;display:flex}.ds-token-card-note{margin:0;font-style:italic}.ds-preview{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ds-preview-color{border-radius:var(--radius-sm);border:1px solid var(--border-main);width:32px;height:32px}.ds-preview-shadow{background:var(--bg-surface-elevated);border-radius:var(--radius-sm);width:32px;height:32px}.ds-preview-radius{background:var(--primary);width:32px;height:32px}.ds-preview-spacing{background:var(--primary);border-radius:var(--radius-sm);align-self:center}.ds-preview-typography{background:var(--bg-base);width:32px;height:32px;color:var(--text-main);border-radius:var(--radius-sm);border:1px solid var(--border-main)}.ds-reset-btn{appearance:none;color:var(--text-muted);font:inherit;font-size:var(--text-body-sm);cursor:pointer;background:0 0;border:0;align-self:flex-start;text-decoration:underline}.ds-reset-btn:hover{color:var(--text-main)}.ds-export-backdrop{background:var(--overlay-backdrop);z-index:var(--z-modal-backdrop);padding:var(--space-l);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ds-export-dialog{gap:var(--space-m);background:var(--bg-surface-elevated);border:1px solid var(--border-main);border-radius:var(--radius-main);width:min(720px,100%);max-height:80vh;padding:var(--space-l);z-index:var(--z-modal);box-shadow:var(--shadow-2xl);flex-direction:column;display:flex}.ds-export-head{justify-content:space-between;align-items:center;display:flex}.ds-export-pre{padding:var(--space-m);background:var(--bg-base);border:1px solid var(--border-main);border-radius:var(--radius-sm);font-family:var(--font-code);font-size:var(--text-body-sm);white-space:pre-wrap;word-break:break-word;flex:1;margin:0;overflow:auto}

