/* Trip Builder sample: native paper, serif item names and category-tinted stamps.
   Navigation outside the paper is a marketing-preview control, not app chrome. */
.home-ai-preview {
    --ai-paper: #fdfbf6;
    --ai-ink: #12161f;
    --ai-muted: #4a5260;
    --ai-line: #d9d7d1;
    --ai-teal: #1a3a3a;
    color: var(--ai-ink);
    font-family: var(--font-body, Outfit, sans-serif);
    text-align: start;
    max-width: 42rem;
    min-width: 0;
}
.home-ai-preview *, .home-ai-preview *::before, .home-ai-preview *::after { box-sizing: border-box; }
.home-ai-preview [hidden] { display: none !important; }
.home-ai-preview :is(h3,h4,p) { margin: 0; }
.home-ai-preview button, .home-ai-preview input { font: inherit; }
.home-ai-preview :is(button,summary,a,input):focus-visible { outline: 3px solid #b34602; outline-offset: 4px; }
.ai-preview-intro { display: flex; align-items: baseline; flex-wrap: wrap; gap: .5rem .8rem; margin-bottom: .65rem; }
.ai-preview-label { color: #98431e; font-size: .75rem; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.home-ai-preview .ai-preview-qualifier { color: var(--ai-muted); font-size: .875rem; line-height: 1.5; }
.ai-preview-controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .6rem; margin: 1rem 0 .75rem; }
.ai-preview-tabs { display: flex; flex-wrap: wrap; gap: .4rem; }
.home-ai-preview .ai-preview-tab { border: 1px solid #87968d; border-radius: 2rem; padding: .55rem .85rem; min-height: 2.75rem; color: var(--ai-teal); background: transparent; cursor: pointer; font-size: .875rem; line-height: 1.3; }
.home-ai-preview .ai-preview-tab[aria-selected='true'] { background: var(--ai-teal); color: white; border-color: var(--ai-teal); }
.home-ai-preview .ai-preview-reset { min-height: 2.75rem; padding: .4rem .2rem; border: 0; background: transparent; color: var(--ai-teal); text-decoration: underline; text-underline-offset: .2em; font-size: .8125rem; cursor: pointer; }
.ai-preview-paper { background: var(--ai-paper); border: 1px solid #d4d1c8; border-radius: .8rem; padding: clamp(1rem,3vw,1.5rem); box-shadow: 0 14px 35px -20px #243c3540, 0 3px 0 -1px #eee9df, 0 4px 0 #d4d1c8; }
.ai-preview-header { padding-bottom: 1rem; border-bottom: 1px solid var(--ai-line); margin-bottom: 1.1rem; }
.home-ai-preview .ai-preview-title { font-family: var(--font-display, Fraunces, Georgia, serif); font-weight: 600; font-style: italic; font-size: clamp(1.35rem,3vw,1.7rem); line-height: 1.2; }
.home-ai-preview .ai-preview-count { margin-top: .4rem; color: var(--ai-muted); font: 500 .6875rem/1.5 var(--font-mono, 'JetBrains Mono', monospace); }
.ai-preview-day + .ai-preview-day { margin-top: 1.5rem; }
.ai-preview-day-title { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .25rem .8rem; margin-bottom: .75rem; }
.home-ai-preview .ai-preview-day-title h4 { font-family: var(--font-display, Fraunces, Georgia, serif); font-size: 1.125rem; font-weight: 600; line-height: 1.4; }
.ai-preview-day-title span { color: var(--ai-muted); font: 400 .6875rem/1.5 var(--font-mono, 'JetBrains Mono', monospace); }
.ai-preview-items { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; }
.ai-preview-item { border: 1.5px solid #dedcd6; border-radius: .625rem; background: var(--ai-paper); min-width: 0; }
.ai-preview-item summary { list-style: none; display: grid; grid-template-columns: 2.125rem minmax(0,1fr) 1rem; gap: .7rem; align-items: center; padding: .7rem; cursor: pointer; min-height: 4.5rem; }
.ai-preview-item summary::-webkit-details-marker { display: none; }
.ai-preview-icon { display: grid; place-items: center; width: 2.125rem; height: 2.125rem; border-radius: .5rem; color: var(--ai-category, #eb4e19); background: color-mix(in srgb, var(--ai-category, #eb4e19) 12%, var(--ai-paper)); }
.ai-preview-icon svg { display: block; width: 1.1rem; height: 1.1rem; fill: currentColor; }
.ai-preview-item[data-category='restaurant'] { --ai-category: #9a5755; }
.ai-preview-item-name { display: block; font: 500 1rem/1.35 var(--font-display, Fraunces, Georgia, serif); overflow-wrap: anywhere; }
.ai-preview-item-meta { display: block; margin-top: .25rem; color: var(--ai-muted); font: 400 .6875rem/1.5 var(--font-mono, 'JetBrains Mono', monospace); }
.ai-preview-chevron { width: .75rem; height: .75rem; color: var(--ai-muted); transition: transform 140ms ease-out; }
.ai-preview-item details[open] > summary .ai-preview-chevron { transform: rotate(180deg); }
.ai-preview-note { margin: 0 .7rem .75rem; padding: .7rem .75rem; border-inline-start: 2px solid #a7bbb0; background: #f1f2ea; border-radius: .25rem; }
.home-ai-preview .ai-preview-note p { font-size: .875rem; line-height: 1.55; color: var(--ai-muted); }
.ai-preview-note-label { display: block; color: var(--ai-teal); font: 600 .625rem/1.5 var(--font-mono, 'JetBrains Mono', monospace); letter-spacing: .04em; margin-bottom: .3rem; }
.home-ai-preview .ai-preview-swap { border-top: 1px solid var(--ai-line); }
.home-ai-preview .ai-preview-swap > summary { display: flex; gap: .5rem; justify-content: space-between; min-height: 2.75rem; padding: .55rem .75rem; font: 500 .8125rem/1.4 var(--font-body, Outfit, sans-serif); color: var(--ai-teal); }
.ai-preview-swap form { padding: 0 .75rem .75rem; }
.ai-preview-swap fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.ai-preview-swap legend { padding: .25rem 0 .65rem; font-size: .875rem; }
.ai-preview-choice { display: flex; align-items: start; gap: .6rem; padding: .6rem 0; cursor: pointer; font-size: .875rem; line-height: 1.4; }
.ai-preview-choice input { margin: .15rem 0 0; accent-color: var(--ai-teal); width: 1rem; height: 1rem; flex: 0 0 auto; }
.home-ai-preview .ai-preview-apply { display: block; margin-top: .75rem; width: 100%; min-height: 2.75rem; border: 0; border-radius: .6rem; padding: .65rem 1rem; color: white; background: var(--ai-teal); font-size: .875rem; cursor: pointer; }
.home-ai-preview .ai-preview-hint { margin-top: 1rem; font-size: .8125rem; line-height: 1.55; color: var(--ai-muted); }
.ai-preview-footer { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .7rem 1rem; margin-top: 1.25rem; }
.home-ai-preview .ai-preview-app-link { display: inline-flex; gap: .5rem; align-items: center; min-height: 2.75rem; color: var(--ai-teal); font-weight: 500; font-size: .9375rem; text-decoration: underline; text-underline-offset: .2em; }
.ai-preview-app-link svg { width: 1rem; height: 1rem; }
[dir='rtl'] .ai-preview-app-link svg { transform: rotate(180deg); }
.ai-preview-status { color: var(--ai-muted); font-size: .8125rem; line-height: 1.5; }
.ai-preview-status:empty { display: none; }
@media(max-width:400px) {
    .ai-preview-paper { padding: 1rem; }
    .ai-preview-item summary { gap: .55rem; padding: .65rem; }
    .ai-preview-item-name { font-size: .9375rem; }
    .ai-preview-item-meta { font-size: .625rem; }
}
@media(prefers-reduced-motion:reduce) { .ai-preview-chevron { transition: none; } }
