/* Device previews are scoped to the demo shell; the apps keep their own layouts. */
.demo-page[data-demo-preview]{display:grid;grid-template-columns:minmax(0,1fr) 392px;gap:28px 72px;align-items:center;max-width:1120px}
.demo-page[data-demo-preview] .demo-intro{margin:0;min-width:0}
.demo-page[data-demo-preview] .demo-intro h1{font-size:clamp(2.25rem,4vw,3.65rem)}
.demo-page[data-demo-preview] .demo-frame{width:100%;max-width:392px;justify-self:center;box-shadow:0 24px 70px #0005}
.demo-page[data-demo-preview] .demo-limits{grid-column:2;margin:0;font-size:12px}
.demo-page[data-demo-preview] .demo-toolbar{flex-wrap:wrap;gap:8px;padding:12px;font-size:10px}
.demo-page[data-demo-preview] .demo-toolbar>span{width:100%;padding:1px 2px 4px}
.demo-view-switch{display:flex;gap:4px;border:1px solid var(--line);border-radius:10px;padding:3px;margin-right:auto}
.demo-page[data-demo-preview] .demo-toolbar button{min-height:44px;padding:8px 11px;line-height:1.2}
.demo-page[data-demo-preview] .demo-view-switch button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;min-height:38px;color:var(--muted)}
.demo-page[data-demo-preview] .demo-view-switch button[aria-pressed=true]{color:#14171b;background:var(--gold);font-weight:700}
.demo-view-icon{display:inline-block;width:12px;height:18px;border:1.5px solid currentColor;border-radius:3px;flex:none}
.demo-view-icon.tablet{width:20px;height:14px}
.demo-viewport{position:relative;width:100%;height:780px;overflow:hidden;background:#080d16}
.demo-page[data-demo-preview] .demo-viewport iframe{position:absolute;top:0;left:0;display:block;width:100%;height:100%;min-height:0;border:0;transform-origin:top left}
.demo-view-status{margin:0;padding:9px 12px;font-size:11px;line-height:1.5;color:var(--muted);text-align:center;border-top:1px solid var(--line)}
.demo-page[data-demo-layout=tablet]{display:block;max-width:1240px}
.demo-page[data-demo-layout=tablet] .demo-intro{max-width:840px;margin-bottom:30px}
.demo-page[data-demo-layout=tablet] .demo-frame{max-width:none}
.demo-page[data-demo-layout=tablet] .demo-limits{margin-top:20px}
.demo-page[data-demo-layout=tablet] .demo-toolbar>span{width:auto;margin-right:auto}
.demo-page[data-demo-layout=tablet] .demo-view-switch{margin-right:0}
.demo-page[data-demo-preview] .demo-frame:fullscreen,
.sc-demo-expanded .demo-page[data-demo-preview] .demo-frame{position:fixed;inset:0;z-index:100;width:100%;max-width:none;height:100dvh;margin:0;border:0;border-radius:0;display:flex;flex-direction:column;background:#080d16}
.sc-demo-expanded,.sc-demo-expanded body{overflow:hidden}
.sc-demo-expanded .demo-toolbar,.demo-frame:fullscreen .demo-toolbar{flex:none;max-width:1240px;width:100%;margin-inline:auto}
.sc-demo-expanded .demo-viewport,.demo-frame:fullscreen .demo-viewport{flex:1;min-height:0;height:auto}
.sc-demo-expanded .demo-view-status,.demo-frame:fullscreen .demo-view-status{flex:none}
.sc-demo-expanded .demo-page[data-demo-preview] .demo-toolbar>span,.demo-page[data-demo-preview] .demo-frame:fullscreen .demo-toolbar>span{width:auto;margin-right:auto}
@media(max-width:1000px){
 .demo-page[data-demo-preview]{gap:24px 35px;grid-template-columns:minmax(0,1fr) minmax(300px,392px)}
}
@media(max-width:800px){
 .demo-page[data-demo-preview]{display:block;padding-top:22px}
 .demo-page[data-demo-preview] .demo-intro{max-width:600px;margin:0 auto 22px}
 .demo-page[data-demo-preview] .back-link{margin-bottom:16px}
 .demo-page[data-demo-preview] .demo-intro .eyebrow{display:none}
 .demo-page[data-demo-preview] .demo-intro h1{font-size:30px;margin-bottom:12px}
 .demo-page[data-demo-preview] .demo-intro>p{font-size:14px}
 .demo-page[data-demo-preview] .demo-intro .actions{margin-top:18px}
 .demo-page[data-demo-preview] .demo-frame{margin-inline:auto}
 .demo-page[data-demo-preview] .demo-limits{max-width:600px;margin:18px auto 0}
 .demo-page[data-demo-layout=tablet] .demo-toolbar>span{width:100%}
}
@media(max-width:380px){
 .demo-page[data-demo-preview] .demo-toolbar{padding:8px;gap:5px}
 .demo-page[data-demo-preview] .demo-toolbar button{padding:8px;font-size:11px}
 .demo-page[data-demo-preview] .demo-view-switch button{gap:5px}
}
