.landing-demo{--mock-accent: var(--vermilion);--mock-primary: var(--vermilion);--mock-chart-1: color-mix(in oklch, var(--vermilion) 100%, transparent);--mock-chart-2: color-mix(in oklch, var(--vermilion) 60%, transparent);--mock-chart-3: color-mix(in oklch, var(--vermilion) 25%, transparent);--mock-rule: var(--rule);--mock-ink: var(--foreground);--mock-ink-2: var(--muted-foreground);--mock-paper: var(--background);--mock-card: color-mix(in oklch, var(--muted) 30%, transparent);min-height:680px;display:flex;flex-direction:column;gap:24px}.demo-chat{--chat-bg: color-mix(in oklch, var(--background) 92%, var(--foreground) 8%);--chat-panel-bg: color-mix( in oklch, var(--background) 96%, var(--foreground) 4% );--chat-rule: color-mix(in oklch, var(--foreground) 10%, transparent);--chat-rule-strong: color-mix(in oklch, var(--foreground) 18%, transparent);--chat-ink: var(--foreground);--chat-ink-2: color-mix(in oklch, var(--foreground) 65%, transparent);--chat-ink-3: color-mix(in oklch, var(--foreground) 45%, transparent);display:grid;grid-template-columns:220px minmax(0,1fr) 260px;gap:0;border:1px solid var(--chat-rule-strong);border-radius:12px;overflow:hidden;background:var(--chat-bg);box-shadow:0 0 0 1px color-mix(in oklch,var(--vermilion) 22%,transparent),0 1px color-mix(in oklch,var(--foreground) 4%,transparent) inset,0 1px 2px color-mix(in oklch,var(--foreground) 8%,transparent),0 24px 48px -24px color-mix(in oklch,var(--foreground) 14%,transparent),0 36px 80px -32px color-mix(in oklch,var(--vermilion) 26%,transparent);min-height:680px}@media(max-width:880px){.demo-chat{grid-template-columns:1fr;grid-template-rows:auto auto auto}}.demo-chat__sidebar,.demo-chat__rail{padding:18px;font-family:var(--font-mono);font-size:.78rem;color:var(--chat-ink-2);background:var(--chat-bg)}.demo-chat__sidebar{border-right:1px solid var(--chat-rule)}.demo-chat__rail{border-left:1px solid var(--chat-rule)}@media(max-width:880px){.demo-chat__sidebar{border-right:none;border-bottom:1px solid var(--chat-rule)}.demo-chat__rail{border-left:none;border-top:1px solid var(--chat-rule)}}.demo-chat__sidebar-label,.demo-chat__rail-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.14em;color:var(--chat-ink-3);margin-bottom:14px}.demo-chat__sidebar-row{display:inline-flex;align-items:center;gap:9px;color:var(--chat-ink);font-weight:500;font-size:.85rem}.demo-chat__sidebar-sub{margin-top:6px;font-size:.7rem;color:var(--chat-ink-3);padding-left:16px}.demo-chat__dot{display:inline-block;width:7px;height:7px;background:var(--vermilion);border-radius:999px;flex-shrink:0;box-shadow:0 0 0 3px color-mix(in oklch,var(--vermilion) 16%,transparent)}.demo-chat__rail-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;font-size:.78rem;color:var(--chat-ink-2)}.demo-chat__rail-list li{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid var(--chat-rule);border-radius:4px;background:var(--chat-panel-bg);width:fit-content}.demo-chat__rail-arrow{display:inline-block;color:var(--chat-ink-3)}.demo-chat__main{display:flex;flex-direction:column;min-height:0;background:var(--chat-panel-bg)}.demo-chat__messages{flex:1;padding:32px 32px 24px;display:flex;flex-direction:column;gap:14px;min-height:240px}.demo-chat__bubble{align-self:flex-end;max-width:80%;background:color-mix(in oklch,var(--foreground) 7%,transparent);border:1px solid var(--chat-rule);border-radius:10px;padding:12px 16px}.demo-chat__bubble--assistant{align-self:flex-start;background:transparent;border-color:var(--chat-rule-strong)}.demo-chat__bubble--assistant .demo-chat__bubble-meta{color:var(--vermilion)}.demo-chat__caret{display:inline-block;margin-left:4px;color:var(--vermilion);animation:demo-caret-blink 1s steps(2) infinite}@keyframes demo-caret-blink{to{opacity:0}}@media(prefers-reduced-motion:reduce){.demo-chat__caret{animation:none}}.demo-chat__bubble[data-just-sent]{animation:demo-bubble-in .28s ease-out;transform-origin:bottom right}@keyframes demo-bubble-in{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.demo-chat__bubble[data-just-sent]{animation:none}}.demo-chat__bubble-meta{font-family:var(--font-mono);font-size:.66rem;text-transform:uppercase;letter-spacing:.14em;color:var(--chat-ink-3);margin-bottom:4px}.demo-chat__bubble p{margin:0;font-size:.94rem;color:var(--chat-ink);line-height:1.5}.demo-chat__input-row{display:flex;gap:10px;padding:14px 18px 18px;border-top:1px solid var(--chat-rule);background:var(--chat-panel-bg)}.demo-chat__input{flex:1;min-width:0;border:1px solid var(--chat-rule);border-radius:10px;padding:10px 14px;font-family:var(--font-sans);font-size:.92rem;color:var(--chat-ink);background:var(--chat-bg);cursor:not-allowed;outline:none;box-shadow:0 0 0 1px color-mix(in oklch,var(--vermilion) 18%,transparent) inset}.demo-chat__input::placeholder{color:var(--chat-ink-3)}.demo-chat__input:disabled{color:var(--chat-ink);opacity:1;-webkit-text-fill-color:var(--chat-ink)}.demo-chat__send{display:inline-flex;align-items:center;gap:6px;border:none;background:var(--vermilion);color:var(--background);padding:9px 14px;border-radius:8px;font-family:var(--font-mono);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:filter .16s ease,transform 80ms ease;animation:demo-pulse 2.4s ease-in-out infinite}.demo-chat__send:hover{filter:brightness(1.08)}.demo-chat__send:active{transform:translateY(1px)}.demo-chat__send:disabled{opacity:.55;cursor:not-allowed;animation:none}.demo-chat__send:focus-visible{outline:2px solid color-mix(in oklch,var(--vermilion) 40%,transparent);outline-offset:2px}@keyframes demo-pulse{0%,to{box-shadow:0 0 color-mix(in oklch,var(--vermilion) 45%,transparent);transform:scale(1)}50%{box-shadow:0 0 0 10px color-mix(in oklch,var(--vermilion) 0%,transparent);transform:scale(1.04)}}@media(prefers-reduced-motion:reduce){.demo-chat__send{animation:none}}.demo-frame{position:relative;border:1px solid var(--mock-rule);background:var(--mock-card);border-radius:8px;overflow:hidden;box-shadow:0 1px color-mix(in oklch,var(--foreground) 6%,transparent) inset,0 1px 2px color-mix(in oklch,var(--foreground) 12%,transparent),0 12px 24px -12px color-mix(in oklch,var(--foreground) 18%,transparent),0 36px 80px -32px color-mix(in oklch,var(--foreground) 30%,transparent);transition:background-color .24s ease,border-color .24s ease}.demo-frame[data-published]{box-shadow:0 0 0 1px color-mix(in oklch,var(--mock-accent) 30%,transparent),0 1px 2px color-mix(in oklch,var(--foreground) 12%,transparent),0 12px 24px -12px color-mix(in oklch,var(--foreground) 18%,transparent),0 36px 80px -32px color-mix(in oklch,var(--mock-accent) 30%,transparent)}.demo-frame__chrome{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid var(--mock-rule);font-family:var(--font-mono);font-size:.78rem;color:var(--mock-ink-2);opacity:0;transition:opacity .2s ease}.demo-frame__chrome[data-visible]{opacity:1}@media(max-width:720px){.demo-frame__chrome{flex-wrap:wrap;row-gap:10px}}.demo-frame__url{display:flex;align-items:center;gap:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.demo-frame__dot{width:7px;height:7px;background:var(--mock-accent);flex-shrink:0}.demo-frame__url-text{color:var(--mock-ink-2)}.demo-frame__url-id{color:var(--mock-ink)}.demo-frame__controls{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.demo-frame__ctrl{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:58px;border:1px solid color-mix(in oklch,var(--mock-rule) 80%,transparent);background:var(--mock-paper);color:var(--mock-ink);font-family:var(--font-mono);font-size:.74rem;padding:4px 8px;border-radius:4px;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.demo-frame__ctrl:hover:not(:disabled){border-color:color-mix(in oklch,var(--mock-accent) 60%,transparent)}.demo-frame__ctrl:disabled{opacity:.55;cursor:default}.demo-frame__ctrl:focus-visible{outline:2px solid color-mix(in oklch,var(--mock-accent) 40%,transparent);outline-offset:2px}.demo-frame__publish{display:inline-flex;align-items:center;border:1px solid var(--mock-ink);background:var(--mock-ink);color:var(--mock-paper);font-family:var(--font-mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;padding:4px 10px;border-radius:4px;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,opacity .16s ease}.demo-frame__publish:hover:not(:disabled){background:var(--mock-accent);border-color:var(--mock-accent)}.demo-frame__publish:disabled{opacity:.45;cursor:not-allowed}.demo-frame__published{display:inline-flex;align-items:center;gap:6px;background:color-mix(in oklch,var(--mock-accent) 16%,transparent);color:var(--mock-accent);border:1px solid color-mix(in oklch,var(--mock-accent) 40%,transparent);font-family:var(--font-mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;padding:4px 10px;border-radius:999px}.demo-frame__body{padding:clamp(20px,3vw,36px);background:var(--mock-paper)}.demo-frame__title-block,.demo-kpis,.demo-chart,.demo-table,.demo-frame__footnote{opacity:0;transform:translateY(4px);transition:opacity .28s ease,transform .28s ease}.demo-frame__title-block[data-visible],.demo-kpis[data-visible],.demo-chart[data-visible],.demo-table[data-visible],.demo-frame__footnote[data-visible]{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.demo-frame__title-block,.demo-kpis,.demo-chart,.demo-table,.demo-frame__footnote{transition:none;transform:none}}.demo-frame__title{font-family:var(--font-display);font-weight:500;font-size:1.25rem;letter-spacing:-.015em;margin:0 0 4px;color:var(--mock-ink)}.demo-frame__subtitle{font-family:var(--font-mono);font-size:.78rem;color:var(--mock-ink-2);margin:0 0 28px}.demo-kpis{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--mock-rule);border-bottom:1px solid var(--mock-rule)}.demo-kpi{padding:18px 20px 18px 0;border-right:1px solid var(--mock-rule)}.demo-kpi:last-child{border-right:none;padding-right:0}.demo-kpi:not(:first-child){padding-left:20px}.demo-kpi__label{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--mock-ink-2);margin-bottom:10px}.demo-kpi__value{font-family:var(--font-display);font-size:1.7rem;font-weight:400;letter-spacing:-.02em;color:var(--mock-ink);display:flex;align-items:baseline;gap:8px}.demo-kpi__delta{font-family:var(--font-mono);font-size:.74rem;color:var(--mock-ink-2)}.demo-kpi__delta[data-trend=up]{color:var(--mock-accent)}@media(max-width:720px){.demo-kpis{grid-template-columns:repeat(2,1fr)}.demo-kpi{padding:14px;border-right:1px solid var(--mock-rule);border-bottom:1px solid var(--mock-rule)}.demo-kpi:nth-child(2n){border-right:none}.demo-kpi:nth-last-child(-n+2){border-bottom:none}}.demo-chart-wrap{margin-top:32px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px}@media(max-width:820px){.demo-chart-wrap{grid-template-columns:1fr}}.demo-chart{border:1px solid var(--mock-rule);padding:20px}.demo-chart__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:18px}.demo-chart__title{font-family:var(--font-display);font-weight:500;font-size:.95rem;letter-spacing:-.01em;color:var(--mock-ink)}.demo-chart__note{font-family:var(--font-mono);font-size:.72rem;color:var(--mock-ink-2)}.demo-chart svg{width:100%;height:200px;display:block}.demo-chart__line{fill:none;stroke:var(--mock-ink);stroke-width:1.5}.demo-chart__area{fill:color-mix(in oklch,var(--mock-accent) 14%,transparent)}.demo-chart__grid{stroke:var(--mock-rule);stroke-width:1}.demo-chart__axis{font-family:var(--font-mono);font-size:10px;fill:var(--mock-ink-2)}.demo-chart__marker{fill:var(--mock-paper);stroke:var(--mock-accent);stroke-width:1.5}.demo-table{border:1px solid var(--mock-rule);font-size:.86rem}.demo-table__row{display:grid;grid-template-columns:1fr auto auto;gap:12px;padding:11px 14px;border-bottom:1px solid var(--mock-rule);align-items:center}.demo-table__row:last-child{border-bottom:none}.demo-table__row--head{font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--mock-ink-2);background:color-mix(in oklch,var(--mock-ink) 6%,transparent)}.demo-table__id{font-family:var(--font-mono);color:var(--mock-ink-2)}.demo-table__val{font-family:var(--font-mono);color:var(--mock-ink)}.demo-table__status{font-family:var(--font-mono);font-size:.74rem;color:var(--mock-ink-2);display:inline-flex;align-items:center;gap:6px}.demo-table__status:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--mock-ink-2)}.demo-table__status[data-status=ok]:before{background:var(--mock-accent)}.demo-frame__footnote{padding:12px 20px;border-top:1px solid color-mix(in oklch,var(--mock-rule) 80%,transparent);background:color-mix(in oklch,var(--mock-card) 60%,transparent);font-family:var(--font-mono);font-size:10px;color:var(--mock-ink-2);text-align:center;text-transform:uppercase;letter-spacing:.12em}.landing-demo__footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:16px;border-top:1px solid var(--rule)}@media(max-width:640px){.landing-demo__footer{flex-direction:column;align-items:flex-start}.demo-table{display:none}}.landing-demo__caption{margin:0;font-size:.92rem;color:var(--muted-foreground);max-width:60ch}.landing-demo__caption code{font-family:var(--font-mono);font-size:.85em;color:var(--foreground);background:color-mix(in oklch,var(--vermilion) 10%,transparent);padding:1px 6px}.landing-demo__reset{background:transparent;border:1px solid var(--rule);color:var(--muted-foreground);font-family:var(--font-mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;padding:6px 12px;border-radius:4px;cursor:pointer;transition:color .16s ease,border-color .16s ease}.landing-demo__reset:hover{color:var(--vermilion);border-color:var(--vermilion)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:880px){.landing-demo{min-height:auto;gap:16px}.demo-chat{min-height:auto}.demo-chat__messages{min-height:auto;padding:18px 18px 14px;gap:10px}}@media(max-width:540px){.demo-chat__sidebar,.demo-chat__rail{padding:14px 16px;font-size:.74rem}.demo-chat__sidebar-label,.demo-chat__rail-label{margin-bottom:10px;font-size:.62rem}.demo-chat__rail-list{flex-direction:row;flex-wrap:wrap;gap:6px}}@media(max-width:480px){.demo-chat__input-row{padding:12px 14px 14px;gap:8px}.demo-chat__input{padding:9px 12px;font-size:.88rem}.demo-chat__send{flex:0 0 auto;padding:8px 10px;font-size:.72rem;letter-spacing:.04em}.demo-frame__chrome{padding:10px 12px;gap:8px;font-size:.72rem}.demo-frame__url{flex:1 1 0}.demo-frame__url-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.demo-frame__ctrl,.demo-frame__publish,.demo-frame__published{font-size:.7rem;padding:3px 8px}.demo-frame__body{padding:clamp(12px,3vw,36px)}.demo-frame__title{font-size:1.1rem}.demo-frame__subtitle{margin-bottom:20px;font-size:.72rem}.demo-chart{padding:16px 14px}.demo-chart__title{font-size:.85rem}.demo-chart__note{font-size:.68rem}.demo-chart svg{height:160px}.demo-table{font-size:.78rem}.demo-table__row{padding:9px 10px;gap:8px}.demo-kpi__value{font-size:1.4rem}}@media(max-width:420px){.demo-kpis{grid-template-columns:1fr}.demo-kpi{padding:12px 14px;border-right:none;border-bottom:1px solid var(--mock-rule)}.demo-kpi:last-child{border-bottom:none}}
