:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#18181b;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#2563eb;text-decoration:inherit}a:hover{color:#1d4ed8}body{margin:0;min-width:320px;min-height:100vh}#root{min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#f4f4f5;cursor:pointer;transition:border-color .25s}button:hover{border-color:#2563eb}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.appShell{min-height:100vh;background:#f7f7f8;color:#18181be6;display:flex;flex-direction:column}.appHeader{position:sticky;top:0;z-index:20;background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(16,16,20,.1)}.appHeaderInner{max-width:880px;margin:0 auto;padding:16px 20px}.appTitle{font-size:16px;font-weight:600;letter-spacing:.2px}.appSubtitle{margin-top:4px;font-size:13px;color:#18181bad}.appMain{width:100%;max-width:880px;margin:0 auto;padding:16px 20px 24px;display:flex;flex-direction:column;gap:14px;flex:1}.formPanel{background:#fff;border:1px solid rgba(16,16,20,.1);border-radius:14px;padding:18px}.formGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;align-items:end}.formField--wide{grid-column:span 4}@media(max-width:640px){.formGrid{grid-template-columns:1fr 1fr}.formField--wide{grid-column:span 2}}.formField{display:flex;flex-direction:column;gap:6px}.formLabel{font-size:12px;font-weight:600;color:#18181b9e;letter-spacing:.4px;text-transform:uppercase}.formInput{padding:9px 12px;border-radius:10px;background:#1010140d;border:1px solid rgba(16,16,20,.14);color:#18181beb;font-size:14px;font-family:inherit;outline:none;transition:border-color .15s}.formInput:focus{border-color:#2563eb80}.formInput:disabled{opacity:.5;cursor:not-allowed}.formActions{margin-top:14px;display:flex;gap:10px}.planButton{padding:10px 22px;border-radius:12px;background:#2563eb;border:1px solid rgba(37,99,235,.4);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s}.planButton:disabled{opacity:.5;cursor:not-allowed}.planButton:hover:not(:disabled){opacity:.88}.resetButton{padding:10px 18px;border-radius:12px;background:#1010140d;border:1px solid rgba(16,16,20,.14);color:#18181bbf;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s}.resetButton:hover{background:#1010141f}.phaseBanner{border-radius:12px;padding:12px 16px;display:flex;align-items:center;gap:12px;font-size:13px;border:1px solid transparent}.phaseBanner--discovery{background:#60a5fa1a;border-color:#60a5fa4d;color:#2563eb}.phaseBanner--parallel{background:#34d3991a;border-color:#34d3994d;color:#059669}.phaseBanner--synthesis{background:#a78bfa1a;border-color:#a78bfa4d;color:#6d28d9}.phaseBannerLabel{font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}.phaseBannerMsg{color:inherit;opacity:.8}.agentPanel{background:#fff;border:1px solid rgba(16,16,20,.1);border-radius:14px;padding:16px 18px}.agentPanelTitle{font-size:12px;font-weight:600;color:#18181b8c;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.agentGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media(max-width:500px){.agentGrid{grid-template-columns:1fr}}.agentCard{border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:5px;border:1px solid rgba(16,16,20,.1);transition:border-color .2s,background .2s}.agentCard--pending{background:#10101408}.agentCard--working{background:#2563eb12;border-color:#2563eb4d}.agentCard--completed{background:#22c55e12;border-color:#22c55e4d}.agentIcon{display:flex;justify-content:center;color:#18181b73}.agentCard--working .agentIcon{color:#2563eb}.agentCard--completed .agentIcon,.agentCard--done .agentIcon{color:#15803d}.agentName{font-size:14px;font-weight:600;color:#18181be6}.agentUrl{font-size:11px;font-family:monospace;color:#18181b8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agentSkill{font-size:11px;font-style:italic;color:#18181b8c}.discoveredBadge{display:inline-block;padding:2px 7px;border-radius:999px;background:#60a5fa26;border:1px solid rgba(96,165,250,.3);color:#2563eb;font-size:10px;font-weight:600;letter-spacing:.3px;width:fit-content}.agentStatus{font-size:12px;font-weight:500;margin-top:2px}.agentStatus--pending{color:#18181b80}.agentStatus--working{color:#2563eb;animation:pulse 1.2s ease-in-out infinite}.agentStatus--completed{color:#16a34a}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}.protocolLog{background:#ececef;border:1px solid rgba(16,16,20,.1);border-radius:14px;overflow:hidden}.protocolLogHeader{padding:10px 16px;font-size:11px;font-weight:600;color:#18181b8c;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid rgba(16,16,20,.05)}.protocolLogBody{font-family:SF Mono,Fira Code,Fira Mono,Roboto Mono,monospace;font-size:12px;padding:10px 0;max-height:240px;overflow-y:auto}.protocolLogEntry{display:flex;gap:10px;padding:3px 16px;line-height:1.5}.protocolLogEntry:hover{background:#10101408}.protocolLogTime{color:#18181b66;white-space:nowrap;flex-shrink:0}.protocolLogType{white-space:nowrap;flex-shrink:0;font-weight:600}.protocolLogText{color:#18181bb8;word-break:break-all}.resultPanel{background:#f1f1f3;border:1px solid rgba(16,16,20,.1);border-radius:14px;padding:20px 22px}.resultPanelTitle{font-size:12px;font-weight:600;color:#18181b8c;text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px}.resultFallback{font-size:14px;line-height:1.65;color:#18181be0;white-space:pre-wrap}.resultView{display:flex;flex-direction:column;gap:16px}.overviewCard{text-align:center;padding:24px 20px 18px;border-bottom:1px solid rgba(16,16,20,.1)}.overviewTitle{font-size:22px;font-weight:700;color:#18181b;margin:0 0 8px}.overviewText{font-size:14px;color:#18181ba3;margin:0;line-height:1.5}.accomCard{display:flex;gap:14px;align-items:flex-start;background:#2563eb0f;border:1px solid rgba(37,99,235,.18);border-radius:12px;padding:14px 16px}.accomIcon{display:flex;flex-shrink:0;color:#2563eb}.accomInfo{display:flex;flex-direction:column;gap:2px}.accomName{font-size:15px;font-weight:600;color:#18181bf2}.accomPrice{font-size:13px;color:#2563eb;font-weight:600}.accomNotes{font-size:13px;color:#18181b94;margin-top:2px}.sectionLabel{font-size:12px;font-weight:600;color:#18181b8c;text-transform:uppercase;letter-spacing:.5px}.daysSection{display:flex;flex-direction:column;gap:8px}.dayCard{border:1px solid rgba(16,16,20,.1);border-radius:12px;overflow:hidden;transition:border-color .15s}.dayCard--open{border-color:#2563eb40}.dayHeader{width:100%;display:flex;align-items:center;gap:10px;padding:12px 16px;background:#10101408;border:none;color:inherit;font-family:inherit;font-size:14px;cursor:pointer;text-align:left}.dayHeader:hover{background:#1010140b}.dayNumber{font-weight:700;color:#2563eb;font-size:13px;min-width:48px}.dayTitle{flex:1;font-weight:500;color:#18181be6}.dayChevron{color:#18181b80;font-size:12px}.dayBody{padding:4px 16px 14px;display:flex;flex-direction:column;gap:10px}.timeSlot{padding:10px 14px;border-radius:10px;border-left:3px solid transparent}.timeSlot--morning{background:#fbbf240f;border-left-color:#b45309}.timeSlot--afternoon{background:#38bdf80f;border-left-color:#0284c7}.timeSlot--evening{background:#a78bfa0f;border-left-color:#7c3aed}.timeLabel{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#18181b94;margin-bottom:4px}.timeIcon{flex-shrink:0;color:#18181b73}.tipsTitle{display:inline-flex;align-items:center;gap:8px}.tipsIcon{flex-shrink:0;color:#18181b73}.timeActivity{font-size:14px;color:#18181be6;line-height:1.4}.timeMeta{display:flex;gap:12px;margin-top:4px;font-size:12px}.timeLocation{color:#18181b8c}.timeCost{color:#2563eb;font-weight:600}.budgetCard{background:#10101408;border:1px solid rgba(16,16,20,.1);border-radius:12px;padding:16px 18px}.budgetTitle{font-size:12px;font-weight:600;color:#18181b8c;text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px}.budgetBars{display:flex;flex-direction:column;gap:8px}.budgetRow{display:grid;grid-template-columns:110px 1fr 70px;align-items:center;gap:10px}.budgetLabel{font-size:13px;color:#18181bb8}.budgetBarTrack{height:8px;border-radius:4px;background:#1010140d;overflow:hidden}.budgetBarFill{height:100%;border-radius:4px;transition:width .4s ease}.budgetAmount{font-size:13px;font-weight:600;color:#18181bd9;text-align:right}.budgetFooter{margin-top:14px;padding-top:12px;border-top:1px solid rgba(16,16,20,.1);display:flex;gap:20px;flex-wrap:wrap;align-items:center}.budgetTotal,.budgetPerPerson{display:flex;flex-direction:column;font-size:12px;color:#18181b94}.budgetTotal strong,.budgetPerPerson strong{font-size:18px;color:#18181bf2}.budgetVerdict{margin-left:auto;font-size:13px;font-weight:600;color:#2563eb;background:#2563eb1a;padding:6px 12px;border-radius:8px}.tipsGroup{display:flex;flex-direction:column;gap:6px}.tipsSection{border:1px solid rgba(16,16,20,.1);border-radius:10px;overflow:hidden}.tipsHeader{width:100%;display:flex;justify-content:space-between;align-items:center;padding:11px 16px;background:#10101408;border:none;color:#18181bcc;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.tipsHeader:hover{background:#1010140b}.tipsList{padding:6px 16px 12px 36px;margin:0;display:flex;flex-direction:column;gap:6px}.tipItem{font-size:13px;line-height:1.5;color:#18181bb8}.errorBanner{background:#ef44441f;border:1px solid rgba(239,68,68,.35);border-radius:12px;padding:14px 16px;font-size:14px;color:#dc2626}
