.ai-plan-form{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:14px;align-items:end;margin:0 0 24px;padding:18px;border:1px solid #f0dfcc;border-radius:20px;background:#fff}.ai-plan-field{display:grid;gap:6px;min-width:0}.ai-plan-field>span{font-size:.8rem;font-weight:800;color:#71677c}.ai-plan-field input,.ai-plan-field select{width:100%;min-height:48px;padding:10px 14px;border:1px solid #e4d6c8;border-radius:12px;background:#fffaf5;color:#2b1d3b;font:inherit;font-size:1rem}.ai-plan-field input:focus,.ai-plan-field select:focus{outline:2px solid #ff6b5b;outline-offset:1px;border-color:#ff6b5b}.ai-plan-submit{min-height:48px;padding:0 22px;background:#2b1d3b;color:#fff;font-weight:700;white-space:nowrap;cursor:pointer;border:0}.ai-plan-submit:disabled{opacity:.7;cursor:progress}.ai-plan-error{margin:0 0 18px;padding:14px 16px;border-radius:12px;background:#fff0ee;color:#a3342a;line-height:1.55}.ai-plan .ai-plan-title{margin:0 0 8px;font-size:clamp(28px,4vw,44px);line-height:1.08;letter-spacing:-.02em}.ai-plan-reviewed{margin:0 0 18px}.ai-plan-reviewed a{font-weight:700}.ai-plan-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:10px}.ai-plan-reviewed-list{margin-top:28px}@media(max-width:760px){.ai-plan-form{grid-template-columns:1fr 1fr}.ai-plan-field-wide,.ai-plan-submit{grid-column:1 / -1}}.ai-plan-actions .ai-plan-share{background:#ff6b5b;color:#fff}.ai-plan-share-note{margin:8px 0 0;font-size:.9rem;color:#71677c}.ai-plan-place-box{position:relative}.ai-plan-place>label{display:grid}.ai-plan-place>label>span{font-size:.8rem;font-weight:800;color:#71677c}.ai-plan-place-hint{grid-column:1 / -1;margin:-4px 0 0;color:#71677c;font-size:.82rem;line-height:1.4}.ai-plan-fare{display:grid;width:100%;box-sizing:border-box;gap:2px;margin:14px 0 0;padding:12px 14px;border-radius:12px;background:#f6f1fb;color:#2b1d3b;line-height:1.5}.ai-plan-fare span{font-size:.88rem;color:#71677c}.ai-plan-cost-intro{margin:0 0 12px;line-height:1.55}.ai-plan-cost-scroll{overflow-x:auto}.ai-plan-cost-table{width:100%;border-collapse:collapse;font-size:.98rem}.ai-plan-cost-table th,.ai-plan-cost-table td{padding:11px 12px;text-align:start;border-bottom:1px solid #f0dfcc;white-space:nowrap}.ai-plan-cost-table thead th{font-size:.8rem;font-weight:800;color:#71677c}.ai-plan-cost-table tbody th{font-weight:800;color:#2b1d3b}.ai-plan-cost-note{margin:10px 0 0;font-size:.86rem;line-height:1.55;color:#71677c}.ai-plan-places{position:absolute;inset-inline:0;top:calc(100% + 4px);z-index:20;margin:0;padding:6px;list-style:none;max-height:340px;overflow-y:auto;background:#fff;border:1px solid #e4d6c8;border-radius:14px;box-shadow:0 14px 34px #2b1d3b29}.ai-plan-places li[role=option]{display:flex;align-items:baseline;gap:10px;padding:11px 12px;border-radius:10px;cursor:pointer;min-height:44px;align-items:center}.ai-plan-places li.is-active{background:#fff0ec}.ai-plan-place-name{font-weight:700;color:#2b1d3b}.ai-plan-place-meta{color:#71677c;font-size:.88rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-plan-place-code{margin-inline-start:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;color:#71677c}.ai-plan-places-note{padding:8px 12px;font-size:.86rem;color:#71677c}@media(max-width:760px){.ai-plan-places{max-height:280px}}.ai-plan-building{display:flex;gap:16px;align-items:center;margin:0 0 24px;padding:20px 22px;border:1px solid #f0dfcc;border-radius:18px;background:#fff7f1;color:#2b1d3b}.ai-plan-building>div{flex:1;min-width:0}.ai-plan-building strong{display:block;font-size:1.1rem;line-height:1.3}.ai-plan-building p{margin:4px 0 12px;color:#71677c;line-height:1.5}.ai-plan-spinner{flex:none;width:34px;height:34px;border-radius:50%;border:4px solid #f3d9cc;border-top-color:#ff6b5b;animation:ai-plan-spin .9s linear infinite}.ai-plan-bar{display:block;height:6px;border-radius:999px;background:#f3d9cc;overflow:hidden}.ai-plan-bar i{display:block;width:40%;height:100%;border-radius:999px;background:#ff6b5b;animation:ai-plan-slide 1.6s ease-in-out infinite}@keyframes ai-plan-spin{to{transform:rotate(360deg)}}@keyframes ai-plan-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}[dir=rtl] .ai-plan-bar i{animation-name:ai-plan-slide-rtl}@keyframes ai-plan-slide-rtl{0%{transform:translate(100%)}to{transform:translate(-250%)}}@media(prefers-reduced-motion:reduce){.ai-plan-spinner,.ai-plan-bar i{animation-duration:3s}}
