*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f6f7;color:#111;font-family:Inter,system-ui,-apple-system,sans-serif}header{height:70px;background:#fff;border-bottom:1px solid #ddd;display:flex;align-items:center;padding:0 6%;gap:28px;position:sticky;top:0;z-index:5}.logo{font-size:22px;letter-spacing:-1px;margin-right:auto}.logo span{font-weight:400}nav{display:flex;gap:20px}nav a{color:#555;text-decoration:none;font-size:14px}button{cursor:pointer;border:1px solid #d7d8da;background:#fff;border-radius:10px;padding:9px 13px;font-weight:700}header>button,.find,.detail button,.plan button{background:#111;color:#fff;border-color:#111}.hero{background:#fff;padding:70px 8%;display:flex;gap:45px}.hero>div:first-child{max-width:800px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:2px;color:#777}.hero h1{font-size:58px;line-height:1;letter-spacing:-3px;margin:12px 0}.hero>div>p{font-size:18px;color:#666;line-height:1.55}.builder{margin-top:28px;border:1px solid #ddd;border-radius:20px;padding:22px;background:#fafafa}.builder h3{font-size:14px;margin:17px 0 10px}.grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px}.grid label{font-size:11px;color:#666;font-weight:800}.grid input,.grid select{display:block;width:100%;margin-top:5px;padding:11px;border:1px solid #d7d7d7;border-radius:10px}.people{display:flex;gap:10px}.people label{flex:1;border:1px solid #ddd;background:#fff;border-radius:11px;padding:9px;display:flex;justify-content:space-between;align-items:center}.people span{display:flex;gap:10px;align-items:center}.people button{padding:5px 10px}.pills{display:flex;flex-wrap:wrap;gap:7px}.pills button.active{background:#111;color:#fff}.find{width:100%;margin-top:10px;padding:14px}.heroCard{min-width:250px;height:310px;border-radius:25px;background:linear-gradient(145deg,#e7eaed,#d9dde0);padding:25px;display:flex;flex-direction:column;justify-content:flex-end;font-size:80px}.heroCard b{font-size:15px}.heroCard small{font-size:12px;color:#666}.notice{margin:25px 8%;padding:18px;background:#fff;border:1px solid #ddd;border-radius:16px;display:flex;gap:15px}.notice b{background:#111;color:#fff;border-radius:10px;padding:10px}section:not(.hero){padding:55px 8%}h2{font-size:36px;letter-spacing:-1.5px;margin:7px 0 22px}.results{display:grid;grid-template-columns:1fr 1fr;gap:10px}.result{background:#fff;border:1px solid #ddd;border-radius:15px;padding:16px;display:grid;grid-template-columns:35px 1fr auto;gap:12px;align-items:center}.result small,.muted{display:block;color:#777;margin-top:4px}.score{font-size:18px;font-weight:900}.detail{margin-top:12px;background:#fff;border:1px solid #ddd;border-radius:16px;padding:20px}.detailTop{display:flex;justify-content:space-between}.detailGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.metric{padding:13px;border:1px solid #eee;border-radius:12px}.bar{height:7px;background:#eee;border-radius:99px;overflow:hidden;margin:7px 0}.bar i{display:block;height:100%;background:#111}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.country,.hotel{background:#fff;border:1px solid #ddd;border-radius:16px;padding:18px}.country{cursor:pointer}.flag{font-size:32px}.cityList{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:15px}.city{padding:15px;text-align:left}.filters{display:flex;gap:8px;margin-bottom:15px}.filters .active{background:#111;color:#fff}.hotels{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.hotel{padding:0;overflow:hidden}.photo{height:140px;background-size:cover;background-position:center}.hotelInfo{padding:15px}.hotel.selected{outline:2px solid #111}.planBox{background:#fff}.plan{background:#fff;border:1px solid #ddd;border-radius:18px;padding:22px}.planGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.planCard{border:1px solid #eee;border-radius:14px;padding:15px}.planCard a{display:block;color:#111;font-weight:800;margin-top:12px}.total{display:flex;justify-content:space-between;background:#f2f2f2;padding:16px;border-radius:13px;margin-top:15px}.saved{background:#fff;border:1px solid #ddd;border-radius:16px;padding:18px;display:flex;align-items:center;gap:15px}.saved button{margin-left:auto}.empty{padding:25px;border:1px dashed #ccc;border-radius:14px;color:#777;text-align:center}footer{text-align:center;padding:35px;color:#777;font-size:12px}#assistant{position:fixed;right:0;top:0;width:min(390px,92vw);height:100vh;background:#fff;z-index:20;transform:translateX(105%);transition:.25s;box-shadow:-15px 0 50px #0002;display:flex;flex-direction:column}#assistant.open{transform:translateX(0)}.asideHead{padding:18px;border-bottom:1px solid #eee;display:flex;justify-content:space-between}.asideHead button{font-size:20px}.chips{display:flex;gap:6px;overflow:auto;padding:10px}.chips button{white-space:nowrap;font-size:11px}.ask{display:flex;gap:7px;padding:12px;border-top:1px solid #eee}.ask input{flex:1;min-width:0;padding:11px;border:1px solid #ddd;border-radius:10px}#chat{flex:1;overflow:auto;padding:15px;background:#f7f7f8}.msg{max-width:90%;padding:11px 13px;border-radius:14px;margin-bottom:8px;background:#fff;border:1px solid #e4e4e4}.msg.user{margin-left:auto;background:#111;color:#fff;border:0}@media(max-width:800px){nav{display:none}.hero{padding:45px 6%;display:block}.hero h1{font-size:43px}.heroCard{display:none}.grid,.results,.cards,.hotels,.planGrid,.detailGrid{grid-template-columns:1fr}.cityList{grid-template-columns:1fr 1fr}section:not(.hero){padding:45px 6%}.notice{margin:20px 6%}.people{flex-direction:column}}
