.tp-hero .tp-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--brand,#0ea5e9);margin-bottom:var(--s2,.5rem);font-size:.78rem;font-weight:700;display:inline-block}.tp-wrap{max-width:780px}.tp-box{background:var(--surface,#fff);border:1px solid var(--line,#e2e8f0);border-radius:var(--r3,16px);padding:var(--s3,.75rem);box-shadow:0 1px 2px #0000000a}.tp-input{resize:vertical;width:100%;min-height:4.5rem;color:var(--text,#0f172a);font:inherit;padding:var(--s2,.5rem);background:0 0;border:0;outline:0;font-size:1.05rem;line-height:1.5}.tp-input::placeholder{color:var(--text-faint,#94a3b8)}.tp-actions{justify-content:space-between;align-items:center;gap:var(--s2,.5rem);margin-top:var(--s2,.5rem);flex-wrap:wrap;display:flex}.tp-hint{color:var(--text-faint,#94a3b8);font-size:.8rem}.tp-examples{align-items:center;gap:var(--s2,.5rem);margin-top:var(--s3,.75rem);flex-wrap:wrap;display:flex}.tp-examples-label{color:var(--text-muted,#64748b);font-size:.85rem;font-weight:600}.tp-chip{border:1px solid var(--line,#e2e8f0);background:var(--surface-2,#f8fafc);color:var(--text-muted,#475569);cursor:pointer;border-radius:999px;padding:.4rem .85rem;font-size:.85rem;transition:border-color .15s,color .15s,background .15s}.tp-chip:hover{border-color:var(--brand,#0ea5e9);color:var(--brand,#0ea5e9)}.tp-loading{align-items:center;gap:var(--s2,.5rem);margin-top:var(--s4,1rem);color:var(--text-muted,#64748b);display:flex}.tp-spinner{border:2px solid var(--line,#e2e8f0);border-top-color:var(--brand,#0ea5e9);border-radius:50%;flex:none;width:18px;height:18px;animation:.7s linear infinite tp-spin}@keyframes tp-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.tp-spinner{animation-duration:2s}}.tp-error{margin-top:var(--s4,1rem)}.tp-result{margin-top:var(--s5,1.5rem)}.tp-summary{color:var(--text,#0f172a);margin-bottom:var(--s5,1.5rem);font-size:1.1rem;line-height:1.6}.tp-empty{color:var(--text-muted,#64748b)}.tp-day{margin-bottom:var(--s5,1.5rem)}.tp-day-title{padding-bottom:var(--s2,.5rem);border-bottom:2px solid var(--line,#e2e8f0);margin-bottom:var(--s3,.75rem);font-size:1.15rem;font-weight:700}.tp-items{gap:var(--s3,.75rem);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.tp-item{border:1px solid var(--line,#e2e8f0);border-radius:var(--r2,12px);padding:var(--s3,.75rem);background:var(--surface,#fff)}.tp-item-main{gap:var(--s3,.75rem);align-items:baseline;display:flex}.tp-time{text-transform:uppercase;letter-spacing:.03em;min-width:5.5rem;color:var(--brand,#0ea5e9);flex:none;font-size:.8rem;font-weight:700}.tp-item-body{flex:1;min-width:0}.tp-item-title{font-size:1rem;display:block}.tp-why{color:var(--text-muted,#64748b);margin:.15rem 0 0;font-size:.92rem;line-height:1.5}.tp-venue{align-items:center;gap:var(--s3,.75rem);margin-top:var(--s3,.75rem);padding:var(--s2,.5rem);border:1px solid var(--line,#e2e8f0);border-radius:var(--r2,12px);background:var(--surface-2,#f8fafc);color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.tp-venue:hover{border-color:var(--brand,#0ea5e9);box-shadow:0 2px 8px #0000000f}.tp-venue-img{object-fit:cover;border-radius:8px;flex:none;width:72px;height:56px}.tp-venue-img--ph{background:var(--grad-brand,linear-gradient(135deg, #38bdf8, #0ea5e9))}.tp-venue-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.tp-venue-name{font-size:.95rem}.tp-venue-meta{color:var(--text-muted,#64748b);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.tp-venue-arrow{color:var(--text-faint,#94a3b8);flex:none;font-size:1.1rem}.tp-tips{margin-top:var(--s5,1.5rem);padding:var(--s4,1rem);border:1px solid var(--line,#e2e8f0);border-radius:var(--r2,12px);background:var(--surface-2,#f8fafc)}.tp-tips-title{margin-bottom:var(--s2,.5rem);font-size:1rem;font-weight:700}.tp-tips ul{color:var(--text-muted,#64748b);margin:0;padding-left:1.2rem;line-height:1.6}.tp-reset{margin-top:var(--s5,1.5rem)}.hero-ai-cta{margin-top:var(--s3,.75rem);color:#fff;opacity:.95;align-items:center;gap:.4rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.hero-ai-cta u{text-underline-offset:3px}.hero-ai-cta:hover{opacity:1}@media (max-width:560px){.tp-item-main{flex-direction:column;gap:.15rem}.tp-time{min-width:0}}
