:root{--b:#0759d6;--d:#073b8e;--bg:#f4f7fb;--txt:#172033;--ok:#0a8f55;--hot:#e5484d}*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:var(--bg);color:var(--txt)}header{background:linear-gradient(135deg,var(--d),var(--b));color:#fff;padding:26px 5%}header h1{margin:0;font-size:30px}.wrap{max-width:1180px;margin:auto;padding:24px}.card{background:#fff;border-radius:18px;box-shadow:0 8px 30px #15355a14;padding:20px;margin-bottom:20px}.search{display:grid;grid-template-columns:1.2fr 1.2fr 1fr 1fr .8fr auto;gap:10px}.search input,.search select,.field input,.field select{width:100%;padding:13px;border:1px solid #d8e0eb;border-radius:10px;font-size:15px}button,.btn{border:0;background:var(--b);color:#fff;padding:13px 18px;border-radius:10px;font-weight:700;cursor:pointer}.results{display:grid;gap:14px}.flight{position:relative;display:grid;grid-template-columns:1.1fr 1.5fr 1fr auto;align-items:center;gap:16px;border:1px solid #e2e8f0;border-radius:16px;padding:18px;background:#fff}.flight.hot{border:2px solid var(--hot)}.badge{display:inline-block;background:var(--hot);color:#fff;padding:6px 9px;border-radius:99px;font-size:12px;font-weight:800}.airline{font-size:18px;font-weight:800}.muted{color:#657087;font-size:13px}.old{text-decoration:line-through;color:#7c879a}.price{font-size:27px;font-weight:900;color:var(--ok)}.timer{font-weight:800;color:var(--hot);margin-top:6px}.modal{display:none;position:fixed;inset:0;background:#07162a99;z-index:10;overflow:auto;padding:30px}.modal .box{max-width:760px;margin:auto;background:#fff;border-radius:18px;padding:24px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field label{display:block;font-size:13px;font-weight:700;margin:5px 0}.notice{background:#eef6ff;border-left:4px solid var(--b);padding:12px;border-radius:8px;margin:12px 0}.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.order{border:1px solid #dfe6ef;border-radius:12px;padding:14px;margin:10px 0}a{color:inherit}@media(max-width:850px){.search,.flight,.grid2,.admin-grid{grid-template-columns:1fr}.flight{align-items:start}.wrap{padding:14px}}
.hero{max-width:1180px;margin:24px auto 0;min-height:250px;border-radius:24px;padding:48px;color:#fff;display:flex;align-items:center;background:linear-gradient(90deg,#062d70dd,#0759d688),url('https://images.unsplash.com/photo-1436491865332-7a61a109cc05?auto=format&fit=crop&w=1600&q=80') center/cover}.hero h2{font-size:40px;max-width:650px;margin:10px 0}.hero p{font-size:18px;max-width:620px}.hero-tag{font-size:12px;font-weight:900;letter-spacing:1px}.search-card{margin-top:-55px;position:relative;z-index:2}.autocomplete{position:relative}.suggestions{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d8e0eb;border-radius:10px;z-index:20;max-height:280px;overflow:auto;box-shadow:0 10px 30px #0002}.suggestion{padding:11px 12px;cursor:pointer;border-bottom:1px solid #eef2f7;text-align:left}.suggestion:hover{background:#eef6ff}.suggestion b{display:block}.destinations{margin:28px 0}.section-title{display:flex;align-items:end;justify-content:space-between}.dest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.dest{background:#fff;color:var(--txt);padding:0 0 16px;text-align:left;overflow:hidden;box-shadow:0 8px 25px #15355a14}.dest b,.dest span{display:block;padding:0 14px}.dest b{font-size:18px;margin-top:12px}.dest span{font-weight:400;color:#657087;font-size:13px;margin-top:5px}.dest-photo{height:145px;background-size:cover;background-position:center}.rio{background-image:url('https://images.unsplash.com/photo-1483729558449-99ef09a8c325?auto=format&fit=crop&w=700&q=80')}.sp{background-image:url('https://images.unsplash.com/photo-1543059080-f9b1272213d5?auto=format&fit=crop&w=700&q=80')}.salvador{background-image:url('https://images.unsplash.com/photo-1596395819057-e37f55a8516b?auto=format&fit=crop&w=700&q=80')}.recife{background-image:url('https://images.unsplash.com/photo-1625424304541-2600ad2d0c53?auto=format&fit=crop&w=700&q=80')}.close{float:right;background:#64748b}.invalid{border-color:#e5484d!important;background:#fff5f5}.error-text{color:#c62828;font-size:12px;margin-top:4px}@media(max-width:850px){.hero{margin:12px;border-radius:18px;padding:28px 20px;min-height:220px}.hero h2{font-size:30px}.search-card{margin-top:-35px}.dest-grid{grid-template-columns:1fr 1fr}.section-title{display:block}}@media(max-width:520px){.dest-grid{grid-template-columns:1fr}}

.results-page{padding-top:34px}.back-link{display:inline-block;margin-bottom:18px;text-decoration:none;font-weight:700;color:var(--b)}.results-title{margin-bottom:22px}.results-title h2{font-size:28px;margin:0 0 7px}.flight{padding-top:52px}.flight-date{position:absolute;left:18px;top:16px;font-size:14px;font-weight:900;color:var(--d);letter-spacing:.3px}.flight-loading{display:none;position:fixed;inset:0;background:linear-gradient(180deg,#f8fbff,#eaf3ff);z-index:100;align-items:center;justify-content:center;text-align:center}.loading-inner{width:min(620px,88vw)}.plane-track{height:90px;position:relative;overflow:hidden;margin-bottom:12px}.plane{position:absolute;left:-70px;top:18px;font-size:54px;transform:rotate(5deg);animation:flyAcross 1.8s ease-in-out infinite}.flight-loading h2{color:var(--d);margin:8px 0}.flight-loading p{color:#657087}@keyframes flyAcross{0%{left:-70px;top:34px}50%{top:8px}100%{left:calc(100% + 30px);top:25px}}

.booking-wrap{max-width:820px}.payment-options{display:grid;gap:12px;margin:10px 0}.pay-option{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;border:1px solid #ddd;border-radius:12px;padding:16px;cursor:pointer}.pay-option input{grid-row:1/3}.pay-option span{color:#667085;font-size:14px}.finish{text-align:center;max-width:560px;margin:90px auto}.check{font-size:54px;font-weight:800}.selected{padding:14px;border-radius:12px;background:#f7f8fa;margin-bottom:18px}

.flight-actions{display:grid;gap:8px;min-width:130px}.details-btn{background:#fff;color:var(--b);border:1.5px solid var(--b)}.details-modal{display:none;position:fixed;inset:0;background:#10182888;z-index:200;align-items:flex-end;justify-content:center;padding:18px}.details-sheet{position:relative;background:#fff;width:min(720px,100%);max-height:92vh;overflow:auto;border-radius:28px 28px 18px 18px;padding:22px 28px 28px;box-shadow:0 20px 60px #0004}.details-handle{width:52px;height:5px;background:#d0d5dd;border-radius:10px;margin:0 auto 24px}.details-close{position:absolute;right:20px;top:18px;background:#f2f4f7;color:#344054;width:38px;height:38px;padding:0;border-radius:50%;font-size:24px}.details-sheet h2{margin:0 0 22px}.detail-flight-card{border:1px solid #e4e7ec;border-radius:22px;padding:22px;box-shadow:0 7px 20px #10182812}.detail-airline{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #eef1f5;padding-bottom:15px}.detail-airline strong{font-size:20px}.economy-pill{background:#f2f4f7;border-radius:99px;padding:8px 11px;font-size:12px}.detail-route{display:grid;grid-template-columns:1fr .7fr 1fr;gap:12px;text-align:center;align-items:center;padding-top:22px}.detail-route>div:first-child{text-align:left}.detail-route>div:last-child{text-align:right}.detail-route span,.detail-route small{display:block;color:#667085;font-size:12px}.detail-route strong{display:block;font-size:29px;margin:5px 0}.detail-route b{display:block;font-size:16px}.detail-route small{margin-top:7px;line-height:1.35}.detail-duration{border-left:1px dashed #d0d5dd;border-right:1px dashed #d0d5dd;padding:10px}.detail-duration b{margin:5px 0}.detail-section{padding:18px 2px}.detail-section h3{margin:4px 0 14px}.bag-row{display:grid;grid-template-columns:30px 1fr;gap:10px;margin:14px 0}.bag-row b,.bag-row small{display:block}.bag-row b{color:#07856d}.bag-row small{color:#667085;margin-top:3px;line-height:1.4}.muted-bag b{color:#667085}.detail-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e4e7ec;padding:17px 0}.detail-total strong{font-size:25px;color:var(--ok)}.detail-select{width:100%;font-size:16px}.flight .price{white-space:nowrap}@media(max-width:850px){.flight-actions{width:100%}.details-modal{padding:0}.details-sheet{border-radius:26px 26px 0 0;padding:18px 20px 24px}.detail-route{grid-template-columns:1fr .65fr 1fr}.detail-route strong{font-size:25px}}
.itinerary{margin-top:20px}.itinerary h3{margin-bottom:10px}.segment-card{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid #dfe6ef;border-radius:12px;padding:13px;margin:8px 0}.layover{background:#eef6ff;border-left:4px solid var(--b);padding:11px 13px;margin:6px 10px;border-radius:8px}.layover small{display:block;color:#657087;margin-top:4px}
/* V22: detalhes sem exibir duração */
.detail-route-no-duration{grid-template-columns:1fr 1fr;gap:28px}
.detail-route-no-duration>div:first-child{text-align:left}
.detail-route-no-duration>div:last-child{text-align:right}
.segment-card{grid-template-columns:1fr!important}
@media(max-width:850px){.detail-route-no-duration{grid-template-columns:1fr 1fr;gap:18px}}
.ref-banner,.price-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;border-radius:18px;padding:20px;margin:18px 0;background:#fff;box-shadow:0 8px 30px #15355a14}.ref-banner b,.price-banner b{font-size:22px;display:block;color:var(--d)}.ref-banner span,.price-banner span{display:block;margin-top:6px;color:#536176}.price-banner{background:linear-gradient(135deg,#073b8e,#0759d6);color:#fff}.price-banner b,.price-banner span{color:#fff}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.steps>div{padding:16px;background:#f7f9fc;border-radius:14px}.steps b,.steps span{display:block}.steps span{margin-top:7px;color:#657087;font-size:14px}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stat{background:#f7f9fc;border-radius:14px;padding:18px}.stat strong{font-size:28px;display:block;color:var(--d)}.copybox{display:flex;gap:8px}.copybox input{flex:1;padding:12px;border:1px solid #d8e0eb;border-radius:10px}@media(max-width:850px){.ref-banner,.price-banner{display:block}.ref-banner .btn{display:inline-block;margin-top:14px}.steps,.dashboard-grid{grid-template-columns:1fr}}
