.demo-plan{background:var(--color-bg-primary);height:100dvh;color:var(--color-text-primary);flex-direction:column;display:flex}.demo-plan__header{border-bottom:1px solid var(--color-border);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex}.demo-plan__brand{align-items:center;gap:.75rem;min-width:0;display:flex}.demo-plan__logo{color:var(--color-accent-primary);white-space:nowrap;font-weight:700;text-decoration:none}.demo-plan__title{min-width:0}.demo-plan__title h1{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.0625rem;font-weight:600;overflow:hidden}.demo-plan__meta{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;margin:.125rem 0 0;font-size:.75rem;overflow:hidden}.demo-plan__actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.75rem;display:flex}.demo-plan__badge{color:var(--color-text-muted);background:var(--color-bg-tertiary);border:1px solid var(--color-border);white-space:nowrap;border-radius:999px;padding:.25rem .625rem;font-size:.75rem;font-weight:500}.demo-plan__reset{color:var(--color-text-secondary);background:var(--color-bg-secondary);border:1px solid var(--color-border);cursor:pointer;white-space:nowrap;border-radius:6px;padding:.3125rem .75rem;font-family:inherit;font-size:.75rem;font-weight:500;transition:background .15s,color .15s}.demo-plan__reset:hover{color:var(--color-text-primary);background:var(--color-bg-tertiary)}.demo-plan__reset:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.demo-plan__cta{color:var(--color-on-accent,#fff);background:var(--color-accent-primary);white-space:nowrap;border-radius:6px;padding:.375rem .875rem;font-size:.8125rem;font-weight:600;text-decoration:none;transition:opacity .15s}.demo-plan__cta:hover{opacity:.9}.demo-plan__cta:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.demo-plan__views{min-width:0;max-width:100%;display:flex}.demo-plan__toolbar{border-bottom:1px solid var(--color-border);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 1.25rem;display:flex}.demo-plan__nudge{color:var(--color-text-primary);background:color-mix(in srgb, var(--color-accent-primary) 10%, transparent);border:1px solid color-mix(in srgb, var(--color-accent-primary) 35%, transparent);border-radius:999px;align-items:center;gap:.5rem;padding:.25rem .375rem .25rem .75rem;font-size:.8125rem;display:flex}.demo-plan__nudge-dismiss{width:1.5rem;height:1.5rem;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.8125rem;line-height:1;display:inline-flex}.demo-plan__nudge-dismiss:hover{color:var(--color-text-primary)}.demo-plan__chart{background:var(--color-bg-primary);flex:1;min-height:0;overflow:hidden}.demo-plan__dashboard-scroll{height:100%;overflow-y:auto}.demo-plan__ai-strip{border-top:1px solid var(--color-border);background:color-mix(in srgb, var(--color-accent-primary) 6%, transparent);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:1rem;padding:.625rem 1.25rem;display:flex}.demo-plan__ai-copy{flex-direction:column;flex:16rem;gap:.125rem;min-width:0;display:flex}.demo-plan__ai-copy strong{color:var(--color-text-primary);font-size:.8125rem}.demo-plan__ai-example{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;font-style:italic;overflow:hidden}.demo-plan__ai-form{flex:22rem;gap:.5rem;min-width:0;display:flex}.demo-plan__ai-input{min-width:0;color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;flex:1;padding:.4375rem .75rem;font-family:inherit;font-size:.8125rem}.demo-plan__ai-input:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:1px}.demo-plan__ai-replay{color:var(--color-accent-primary);border:1px solid var(--color-accent-primary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:.4375rem .875rem;font-family:inherit;font-size:.8125rem;font-weight:500}.demo-plan__ai-replay:hover:not(:disabled){background:color-mix(in srgb, var(--color-accent-primary) 10%, transparent)}.demo-plan__ai-replay:disabled{opacity:.55;cursor:default}.demo-plan__ai-replay:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.demo-plan__ai-submit{color:var(--color-on-accent,#fff);background:var(--color-accent-primary);cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:.4375rem .875rem;font-family:inherit;font-size:.8125rem;font-weight:600}.demo-plan__ai-submit:hover{opacity:.9}.demo-plan__ai-submit:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.demo-plan__ai-note{color:var(--color-text-muted);flex-basis:100%;margin:0;font-size:.6875rem}.demo-plan__footer{border-top:1px solid var(--color-border);color:var(--color-text-muted);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 1.25rem;font-size:.75rem;display:flex}.demo-plan__footer a{color:var(--color-accent-primary);text-decoration:none}.demo-plan__footer a:hover{text-decoration:underline}.demo-plan__state{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.75rem;padding:2rem;display:flex}.demo-plan__state p{max-width:32rem;color:var(--color-text-secondary);margin:0}.demo-plan__spinner{border:3px solid var(--color-border);border-top-color:var(--color-accent-primary);border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite demo-plan-spin}@keyframes demo-plan-spin{to{transform:rotate(360deg)}}@media (max-width:640px){.demo-plan__header{padding:.625rem .875rem}.demo-plan__title h1{font-size:.9375rem}.demo-plan__meta{display:none}.demo-plan__actions{flex-shrink:1;width:100%;min-width:0}.demo-plan__toolbar .view-mode-selector{max-width:100%;padding:3px;overflow-x:auto}.demo-plan__badge{white-space:normal}.demo-plan__nudge{display:none}.demo-plan__toolbar{padding:.5rem .875rem}.demo-plan__ai-strip{padding:.625rem .875rem}.demo-plan__ai-example{white-space:normal}.demo-plan__footer{flex-direction:column;align-items:flex-start;gap:.25rem}}
