*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

body{
  font-family:Arial, Helvetica, sans-serif;
  background:#ffffff;
  color:#0f172a;
}

a{
  text-decoration:none;
  color:inherit;
}

button{
  cursor:pointer;
  border:none;
}

input,select{
  border:none;
  outline:none;
}

.container{
  width:100%;
  max-width:1280px;
  margin:0 auto;
  padding:0 24px;
}

/* NAVBAR */
.navbar{
height:72px;
background:#fff;
border-bottom:1px solid #e8eef9;
display:flex;
align-items:center;
}

.nav-wrap{
display:flex;
justify-content:space-between;
align-items:center;
height:72px;
}

.brand{
display:flex;
align-items:center;
text-decoration:none;
}

.brand img{
  height:42px;
  width:auto;
}

.menu{
display:flex;
align-items:center;
gap:18px;
}

.navbar .menu a{
text-decoration:none;
font-size:15px;
font-weight:700;
color:#10214d;
}

.menu .btn-primary{
padding:10px 18px;
border-radius:14px;
}

/* BUTTONS */

.btn-primary{
  padding: 12px 18px;
  border-radius: 12px;
  border: none;

  font-weight: 600;
  font-size: 14px;

  color: white;

  background: linear-gradient(135deg, #3b82f6, #06b6d4);

  cursor: pointer;

  transition: all .2s ease;
}


.btn-primary:hover{
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(59,130,246,.25);
}



.full{
  width:100%;
}

.link-btn{
  background:none;
  color:#3b82f6;
  font-size:14px;
  margin-top:8px;
}

/* HERO */

.hero{
  padding:70px 0 40px;
}

.hero-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:50px;
  align-items:center;
}

.badge{
  display:inline-block;
  padding:10px 16px;
  border-radius:999px;
  background:#eff6ff;
  color:#2563eb;
  font-size:14px;
  font-weight:700;
  margin-bottom:26px;
}

.hero h1{
  font-size:68px;
  line-height:1.02;
  font-weight:900;
  letter-spacing:-2px;
}

.hero p{
  margin-top:24px;
  font-size:20px;
  line-height:1.6;
  color:#64748b;
  max-width:620px;
}

/* SEARCH */

.search-card{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:30px;
  padding:28px;
  box-shadow:0 25px 60px rgba(15,23,42,.08);
  display:grid;
  gap:14px;
  position:relative;
  z-index:1;
}

.search-card select,
.search-card input{
  border:1px solid #e2e8f0;
  border-radius:18px;
  padding:16px;
  font-size:16px;
}

/* OFFERS */

.offers{
  padding:40px 0 80px;
}

.section-head{
  margin-bottom:26px;
}

.section-head h2{
  font-size:34px;
  font-weight:900;
}

.loading{
  margin-bottom:20px;
  font-weight:700;
  color:#2563eb;
}

.hidden{
  display:none!important;
}

.cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.card{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:22px;
  padding:16px;
  box-shadow:0 10px 35px rgba(15,23,42,.06);
  display:flex;
  flex-direction:column;
  height:100%;
  min-height:auto;
  position:relative;
overflow:hidden;
}

.card h3{
  font-size:28px;
  font-weight:900;
}

.card .from{
  margin-top:8px;
  color:#64748b;
}

.price{
display:flex;
align-items:flex-end;
gap:6px;
margin:10px 0 6px;
}

.price-main{
font-size:64px;
font-weight:900;
line-height:.92;
letter-spacing:-2px;

background:linear-gradient(
90deg,
#1e2a78 0%,
#2558e8 55%,
#18b7d8 100%
);

-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
background-clip:text;
}

.price-currency{
font-size:28px;
font-weight:800;
color:#2558e8;
opacity:.95;

margin-bottom:0px;
align-self:flex-end;
line-height:1;
}

.score-90,.score-91,.score-92,.score-93,.score-94,.score-95,.score-96,.score-97,.score-98,.score-99{
background:linear-gradient(90deg,#16a34a,#22c55e);
}

.score-80,.score-81,.score-82,.score-83,.score-84,.score-85,.score-86,.score-87,.score-88,.score-89{
background:linear-gradient(90deg,#2563eb,#06b6d4);
}

.score-59,.score-60,.score-61,.score-62,.score-63,.score-64,.score-65,.score-66,.score-67,.score-68,.score-69,.score-70,.score-71,.score-72,.score-73,.score-74,.score-75,.score-76,.score-77,.score-78,.score-79{
background:linear-gradient(90deg,#f97316,#ef4444);
}






.score small{
  font-size:11px;
  opacity:.9;
  letter-spacing:.6px;
}

.score span{
  font-size:14px;
}

.card button:not(.alert-btn):not(.fav-btn){
width:100%;
margin-top:20px;
}

/* MODAL */

.modal{
position:fixed;
inset:0;
background:rgba(15,23,42,.55);
backdrop-filter:blur(8px);
display:flex;
align-items:center;
justify-content:center;
padding:20px;
z-index:9999;
}

.overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.45);
  backdrop-filter:blur(10px);
}
.modal-content{
max-height:90vh;
overflow-y:auto;
}

.modal-box{
width:100%;
max-width:720px;
max-height:94vh;
overflow:hidden;
background:#fff;
border-radius:28px;
padding:18px;
position:relative;
display:flex;
flex-direction:column;
box-shadow:0 30px 80px rgba(0,0,0,.25);
}

.modal-price{
font-size:64px;
font-weight:900;
line-height:1;
letter-spacing:-2px;
margin:18px 0 6px;

background:linear-gradient(
90deg,
#1e2a78 0%,
#2563eb 55%,
#10b7d8 100%
);

-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
background-clip:text;
}

.modal-box h3{
  font-size:34px;
  font-weight:900;
  margin-bottom:18px;
}

.modal-box input{
  width:100%;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:15px;
  margin-bottom:12px;
  font-size:16px;
}

.close-btn{
position:absolute;
top:18px;
right:18px;
z-index:99999;
background:rgba(255,255,255,.9);
border:none;
width:42px;
height:42px;
border-radius:50%;
font-size:26px;
cursor:pointer;
}

/* MOBILE */

@media(max-width:1000px){

.hero-grid{
grid-template-columns:1fr;
}

.hero h1{
font-size:48px;
}

.cards{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,320px));
gap:18px;
justify-content:flex-start;
}

}

 


@media(max-width:700px){

  .cards{
    grid-template-columns:1fr;
  }

  .hero{
    padding-top:30px;
  }

  .hero h1{
    font-size:38px;
  }

  .hero p{
    font-size:17px;
  }

  .modal-box{
    margin:40px 14px;
    width:auto;
  }
}

.trend{
  display:inline-block;
  margin-top:12px;
  padding:10px 14px;
  border-radius:14px;
  background:#f8fafc;
  color:#0f172a;
  font-size:13px;
  font-weight:800;
  border:1px solid #e2e8f0;
}

.trip-switch{
  display:flex;
  gap:18px;
  font-size:14px;
  font-weight:700;
  color:#334155;
}

.flight-modal{
padding:8px;
}

.flight-top h2{
font-size:32px;
margin:0;
font-weight:900;
}

.flight-top p{
margin:4px 0 20px;
color:#64748b;
font-size:18px;
}

.flight-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:12px;
margin-bottom:20px;
}

.flight-box{
background:#f8fafc;
padding:14px;
border-radius:16px;
}

.flight-box span{
display:block;
font-size:13px;
color:#64748b;
margin-bottom:6px;
}

.flight-box strong{
font-size:18px;
}

.flight-total{
font-size:48px;
font-weight:900;
margin:12px 0 18px;
color:#2563eb;
}

.deal-modal{
text-align:center;
padding:10px;
}

.deal-route{
font-size:34px;
font-weight:900;
letter-spacing:-1px;
}

.deal-route span{
color:#2563eb;
}

.deal-city{
font-size:20px;
color:#64748b;
margin-top:6px;
}

.deal-dates{
margin-top:18px;
font-size:16px;
font-weight:700;
}

.deal-flight{
margin-top:10px;
color:#64748b;
font-size:15px;
}

.deal-price{
font-size:56px;
font-weight:900;
color:#2563eb;
margin:18px 0 8px;
line-height:1;
}

.deal-note{
font-size:14px;
color:#64748b;
margin-bottom:22px;
}

.wow-modal{
overflow:hidden;
border-radius:26px;
backdrop-filter:blur(20px);
}

.wow-image{
height:220px;
background-size:cover;
background-position:center;
position:relative;
border-radius:22px;
}

.wow-overlay{
position:absolute;
bottom:18px;
left:18px;
color:#fff;
font-size:32px;
font-weight:900;
text-shadow:0 10px 20px rgba(0,0,0,.35);
}

.wow-body{
padding:18px 6px 6px;
text-align:center;
}

.countdown{
margin:14px 0;
font-weight:800;
color:#ef4444;
animation:pulseGlow 1.5s infinite;
}

.pulse-btn{
animation:none !important;
transform:none !important;
}

.premium-modal{
overflow:hidden;
display:flex;
flex-direction:column;
height:100%;
border-radius:28px;
background:rgba(255,255,255,.75);
backdrop-filter:blur(18px);
}

.premium-hero{
height:260px;
border-radius:22px;
overflow:hidden;
background-size:cover;
background-position:center;
position:relative;
}

.premium-overlay{
position:absolute;
inset:0;
background:linear-gradient(
180deg,
rgba(0,0,0,.15),
rgba(0,0,0,.65)
);
display:flex;
flex-direction:column;
justify-content:flex-end;
padding:22px;
color:#fff;
}

.premium-badge{
display:inline-block;
background:#ef4444;
padding:6px 12px;
border-radius:999px;
font-size:12px;
font-weight:800;
margin-bottom:12px;
}

.premium-overlay h2{
font-size:42px;
margin:0;
font-weight:900;
}

.premium-overlay p{
margin:4px 0 0;
font-size:18px;
opacity:.95;
}

.premium-body{
display:flex;
flex-direction:column;
align-items:center;
gap:6px;
flex:1;
overflow-y:auto;
padding:6px 0 10px;
}

.btn-primary.full:hover{
transform:translateY(-1px);
box-shadow:0 10px 24px rgba(37,99,235,.22);
}

.premium-dates,
.premium-flight{
font-size:15px;
color:#64748b;
margin-bottom:8px;
}

.premium-price{
font-size:76px;
font-weight:900;
line-height:1;
letter-spacing:-2px;
margin:8px 0 0px;
text-align:center;

background:linear-gradient(
90deg,
#1e2a78 0%,
#2563eb 55%,
#10b7d8 100%
);

-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
background-clip:text;
}

.premium-breakdown{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:8px;
margin:2px 0 6px;
}

.premium-sub{
font-size:18px;
color:#64748b;
font-weight:600;
margin-bottom:14px;
}

.premium-alert{
margin:2px auto 8px;
display:inline-flex;
align-items:center;
gap:8px;
padding:8px 14px;
border-radius:999px;
background:#eef4ff;
color:#1f3fbf;
font-size:14px;
font-weight:800;
margin-bottom:10px;
}



@keyframes pulseGlow{
0%{transform:scale(1);}
50%{transform:scale(1.03);}
100%{transform:scale(1);}
}


.time-row{
margin-top:8px;
display:flex;
justify-content:space-between;
align-items:center;
font-weight:700;
font-size:15px;
color:#0f172a;
padding:10px 12px;
background:#f8fafc;
border-radius:12px;
}

.btn-primary.full{
display:flex;
align-items:center;
justify-content:center;

width:280px;
height:58px;

margin:14px auto 8px;
position:relative;
overflow:hidden;
border-radius:18px;

font-size:20px;
font-weight:900;
letter-spacing:-0.3px;

background:linear-gradient(
90deg,
#3b82f6,
#2563eb,
#1d4ed8
);

box-shadow:
0 16px 34px rgba(37,99,235,.24);

transition:.22s ease;
}

.time-row span{
color:#64748b;
font-size:14px;
}

.btn-primary.full::before{
content:"";
position:absolute;
top:-10px;
left:0;
right:0;
height:10px;
background:linear-gradient(
180deg,
rgba(255,255,255,0),
rgba(255,255,255,.95)
);
pointer-events:none;
}

.btn-primary.full:hover{
transform:translateY(-2px);
box-shadow:
0 22px 40px rgba(37,99,235,.28);
}

.trip-stack{
display:flex;
flex-direction:column;
gap:8px;
width:100%;
margin-bottom:6px;
}

.premium-breakdown{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:10px;
margin:6px 0 14px;
}

.chip-price{
padding:8px 14px;
border-radius:999px;
background:#eef4ff;
color:#1f3fbf;
font-size:14px;
font-weight:800;
}

.trip-block{
background:#f8fafc;
padding:12px;
border-radius:16px;
margin-bottom:0px;
text-align:left;
}

.trip-title{
font-weight:800;
font-size:14px;
margin-bottom:8px;
color:#0f172a;
}

.trip-route{
font-size:14px;
color:#64748b;
margin-bottom:8px;
}

.trip-time{
display:flex;
justify-content:space-between;
font-weight:800;
font-size:18px;
}

.trip-time span{
font-size:14px;
color:#64748b;
}

.premium-hero{
background-color:#0f172a;
}

.mini-date{
font-size:14px;
color:#64748b;
margin-top:4px;
margin-bottom:8px;
}

.hero-date{
font-size:14px;
opacity:.95;
margin-top:6px;
}

.deal-badge{
margin-top:8px;
padding:8px 12px;
border-radius:12px;
background:#f8fafc;
font-size:14px;
font-weight:700;
color:#0f172a;
border:1px solid #e2e8f0;
}

.ai-score{
margin-top:14px;
padding:18px;
border-radius:24px;
background:
linear-gradient(
135deg,
#0f172a 0%,
#1d4ed8 45%,
#06b6d4 100%
);
color:#fff;
position:relative;
overflow:hidden;
box-shadow:
0 20px 50px rgba(37,99,235,.22);
flex:1;
min-height:250px;
display:flex;
flex-direction:column;
}

.ai-score::before{
content:"";
position:absolute;
inset:0;
background:
linear-gradient(
90deg,
transparent,
rgba(255,255,255,.08),
transparent
);
animation:shine 5s linear infinite;
}

.ai-mini{
position:absolute;
top:14px;
right:14px;
padding:6px 11px;
border-radius:999px;
background:rgba(255,255,255,.16);
backdrop-filter:blur(10px);
font-size:11px;
font-weight:800;
}

.ai-top{
font-size:11px;
letter-spacing:2px;
font-weight:800;
opacity:.85;
}

.ai-value{
font-size:40px;
font-weight:900;
line-height:1;
margin-top:8px;
}

.ai-value span{
font-size:14px;
opacity:.75;
}

.ai-bar{
height:9px;
border-radius:999px;
background:rgba(255,255,255,.10);
margin-top:14px;
overflow:hidden;
}

.ai-fill{
position:relative;
overflow:hidden;
height:100%;
border-radius:999px;
width:0;
transition:
width 1.2s cubic-bezier(.22,1,.36,1),
background .35s ease;
}

.ai-fill::after{
content:"";
position:absolute;
top:0;
left:-30%;
width:30%;
height:100%;
background:rgba(255,255,255,.35);
filter:blur(6px);
animation:scoreShine 2.2s ease forwards;
}

@keyframes scoreShine{
0%{
left:-30%;
opacity:0;
}
20%{
opacity:1;
}
100%{
left:110%;
opacity:0;
}
}

.ai-label{
margin-top:12px;
font-size:13px;
font-weight:800;
min-height:20px;
}

.ai-tip{
margin-top:9px;
padding:9px 12px;
border-radius:14px;
background:rgba(255,255,255,.08);
backdrop-filter:blur(10px);
font-size:12px;
font-weight:700;
line-height:1.35;
min-height:18px;
}

@keyframes shine{
0%{transform:translateX(-100%)}
100%{transform:translateX(100%)}
}

@keyframes pulseBar{
0%,100%{opacity:1}
50%{opacity:.75}
}

.ai-debug{
margin-top:8px;
font-size:11px;
opacity:.65;
line-height:1.4;
word-break:break-word;
}


.ai-reasons{
margin-top:10px;
display:flex;
flex-direction:column;
gap:6px;
}

.ai-reason{
font-size:12px;
font-weight:600;
opacity:.95;
line-height:1.25;
}

.ai-insights{
margin-top:10px;
display:flex;
flex-direction:column;
gap:8px;
}

/* =====================
V11 ULTRA SUBTLE
===================== */



/* pasek */
.score-elite .ai-fill{
background:linear-gradient(90deg,#ffffff,#ffe082);
}

.score-good .ai-fill{
background:linear-gradient(90deg,#ffffff,#cfe8ff);
}

.score-mid .ai-fill{
background:linear-gradient(90deg,#dbeafe,#93c5fd);
}

.score-low .ai-fill{
background:linear-gradient(90deg,#cbd5e1,#94a3b8);
}

/* liczba */
.score-elite .ai-value{
text-shadow:0 0 12px rgba(255,215,0,.18);
}

.score-low .ai-value{
opacity:.95;
}

.ai-forecast{
margin-top:8px;
font-size:12px;
font-weight:700;
opacity:.92;
line-height:1.3;
padding-top:8px;
border-top:1px solid rgba(255,255,255,.14);
}

.premium-price{
margin-top:2px !important;
margin-bottom:0 !important;
transform:translateY(-4px);
}

@media (max-height: 820px){

.premium-hero{
height:190px;
}

.premium-overlay h2{
font-size:34px;
}

.premium-overlay p{
font-size:15px;
}

}


.close-btn{
top:12px;
right:12px;

width:40px;
height:40px;

font-size:24px;

background:rgba(255,255,255,.92);
backdrop-filter:blur(10px);

box-shadow:0 8px 18px rgba(0,0,0,.14);
}

@media (max-height: 820px){

.btn-primary.full{
position:static;
width:240px;
margin-top:8px;
position:relative;
overflow:hidden;
}

}

.modal-box{
overflow-y:auto !important;
max-height:92vh;
}

@media (max-width:700px){

.btn-primary.full{
width:100%;
max-width:none;
height:54px;
font-size:18px;
margin-top:12px;
position:relative;
overflow:hidden;
}

.modal-box{
padding:14px;
max-height:94vh;
overflow-y:auto !important;
}

}

.card{
position:relative;
}



.fav-btn:hover{
transform:scale(1.06);
transition:.18s ease;
}

.fav-btn.active{
background:linear-gradient(
135deg,
#2563eb,
#1d4ed8

);

color:#ffffff;
border-color:#2563eb;
animation:heartPop .35s ease;
box-shadow:
0 10px 22px rgba(37,99,235,.28);

transform:scale(1.08);
}

.fav-btn.active:hover{
transform:scale(1.12);
}



@keyframes heartPop{
0%{transform:scale(.8);}
60%{transform:scale(1.18);}
100%{transform:scale(1.08);}
}

.toast-msg{
position:fixed;
left:50%;
bottom:28px;
transform:translateX(-50%) translateY(20px);

background:#0f172a;
color:#fff;

padding:14px 18px;
border-radius:14px;

font-size:14px;
font-weight:700;

opacity:0;
transition:.25s ease;

z-index:99999;
box-shadow:0 18px 40px rgba(0,0,0,.22);
}

.toast-msg.show{
opacity:1;
transform:translateX(-50%) translateY(0);
}

/* ===== V21.9 PRO ACCOUNT ===== */

.account-hero{
display:flex;
justify-content:space-between;
align-items:center;
gap:20px;

padding:26px 30px;
border-radius:24px;

background:linear-gradient(
135deg,
#0f172a 0%,
#1d4ed8 52%,
#06b6d4 100%
);

color:#fff;
box-shadow:0 18px 40px rgba(37,99,235,.16);
position:relative;
overflow:hidden;
}

.account-mini{
font-size:10px;
font-weight:800;
letter-spacing:2px;
opacity:.85;
margin-bottom:8px;
}

.account-hero h1{
font-size:34px;
font-weight:900;
line-height:1;
margin-bottom:8px;
}

.account-hero p{
font-size:14px;
opacity:.9;
line-height:1.45;
max-width:480px;
}

.account-side{
min-width:150px;
padding:18px;
border-radius:18px;
text-align:center;
background:rgba(255,255,255,.10);
border:1px solid rgba(255,255,255,.14);
backdrop-filter:blur(12px);
}

.hero-number{
font-size:46px;
font-weight:900;
line-height:1;
margin-bottom:6px;
}

.account-stats{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:14px;
margin-top:18px;
}

.stat-card{
padding:18px;
border-radius:20px;

background:linear-gradient(
135deg,
#1e2a78 0%,
#2563eb 55%,
#10b7d8 100%
);

color:#fff;
box-shadow:0 10px 24px rgba(37,99,235,.14);
text-align:center;
}

.stat-value{
font-size:28px;
font-weight:900;
line-height:1;
margin-bottom:6px;
}

.stat-label{
font-size:12px;
font-weight:700;
opacity:.92;
}

.cards{
gap:16px;
}

.card{
padding:18px;
border-radius:22px;
}

.card h3{
font-size:22px;
}

.route-chip{
padding:6px 10px;
font-size:11px;
margin-bottom:10px;
}

.account-actions{
gap:8px;
margin-top:14px;
}

.remove-btn{
border:none;
height:44px;
border-radius:14px;
font-size:14px;
font-weight:800;
cursor:pointer;

background:#f8fafc;
color:#64748b;
border:1px solid #e2e8f0;

transition:.2s ease;
}

.remove-btn:hover{
background:#fee2e2;
color:#dc2626;
border-color:#fecaca;
}

@media(max-width:900px){

.account-hero{
flex-direction:column;
align-items:flex-start;
padding:22px;
}

.account-side{
width:100%;
}

.account-stats{
grid-template-columns:1fr;
}

.account-hero h1{
font-size:28px;
}

.hero-number{
font-size:38px;
}

}

.navbar{
height:72px;
display:flex;
align-items:center;
background:#fff;
border-bottom:1px solid #e9eef8;
}

.nav-wrap{
display:flex;
justify-content:space-between;
align-items:center;
height:72px;
}
.navbar .brand img{
height:42px;
display:block;
}
.navbar .menu{
display:flex;
align-items:center;
gap:22px;
}

/* ===== SKYDEAL FINAL CLEAN ===== */

:root{
--blue:#2563eb;
--blue2:#1d4ed8;
--cyan:#06b6d4;
--text:#0f172a;
--muted:#64748b;
--shadow:0 18px 45px rgba(15,23,42,.08);
--shadow2:0 22px 55px rgba(37,99,235,.14);
}

body{
background:linear-gradient(180deg,#fff,#f8fbff);
color:var(--text);
}

.navbar{
position:sticky;
top:0;
z-index:999;
height:72px;
background:rgba(255,255,255,.9);
backdrop-filter:blur(14px);
border-bottom:1px solid #e8eef9;
}

.hero{
padding:54px 0 36px;
position:relative;
overflow:hidden;
}

.hero-grid{
display:grid;
grid-template-columns:1.05fr .95fr;
gap:56px;
align-items:center;
}

.hero h1{
font-size:76px;
line-height:.94;
font-weight:900;
letter-spacing:-3px;
}

.hero p{
font-size:20px;
color:#64748b;
margin-top:20px;
}

.search-card{
padding:26px;
border-radius:30px;
background:rgba(255,255,255,.92);
box-shadow:var(--shadow);
border:1px solid #eef2f7;
position:relative;
  z-index:1;
}

.cards{
gap:18px;
}

.card{
border:none;
border-radius:24px;
box-shadow:var(--shadow);
transition:.18s ease;
}

.card:hover{
transform:translateY(-3px);
box-shadow:var(--shadow2);
}



@media(max-width:980px){

.hero-grid{
grid-template-columns:1fr;
gap:28px;
}

.hero h1{
font-size:52px;
}

.cards{
grid-template-columns:1fr;
}

}



.alert-btn:hover{
transform:scale(1.08);
background:#fff7ed;
border-color:#fdba74;
}

.card .alert-btn,
.card .fav-btn{
width:36px !important;
margin-top:0 !important;
flex:none !important;
}

.fav-btn,
.alert-btn{
position:absolute;
top:14px;

width:28px !important;
height:28px !important;

display:flex;
align-items:center;
justify-content:center;

background:transparent !important;
border:none !important;
box-shadow:none !important;

font-size:18px;
cursor:pointer;

margin:0 !important;
padding:0 !important;

z-index:30;
transition:.18s ease;
}

.alert-btn{
right:52px;
}

.fav-btn{
right:16px;
color:#94a3b8;
}

.fav-btn.active{
color:#2563eb;
transform:scale(1.15);
}

.fav-btn:hover,
.alert-btn:hover{
transform:scale(1.12);
}

.fav-btn{
font-size:20px !important;
line-height:1 !important;
}

.alert-btn{
font-size:18px !important;
}

.fav-btn.active{
transform:scale(1.18);
}

.user-btn{
display:inline-flex;
align-items:center;
justify-content:center;
gap:8px;

height:42px;
padding:0 18px;

border-radius:999px;
text-decoration:none;

background:linear-gradient(135deg,#2563eb,#3b82f6);
color:#fff !important;

font-size:14px;
font-weight:800;

box-shadow:0 12px 26px rgba(37,99,235,.22);
transition:.18s ease;
}

.user-btn:hover{
transform:translateY(-2px);
box-shadow:0 18px 34px rgba(37,99,235,.28);
}

.logout-btn{
margin-left:10px;
font-weight:700;
color:#64748b;
text-decoration:none;
}

.account-wrap{
max-width:1100px;
margin:auto;
padding:34px 20px;
}

.account-hero{
padding:28px;
border-radius:28px;
background:linear-gradient(135deg,#2563eb,#3b82f6);
color:#fff;
box-shadow:0 22px 50px rgba(37,99,235,.22);
margin-bottom:26px;
}

.account-hero h1{
font-size:34px;
margin:0;
font-weight:900;
}

.account-hero p{
margin-top:8px;
opacity:.92;
}

.account-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:18px;
margin-bottom:24px;
}

.stat-card{
background:#fff;
border-radius:22px;
padding:22px;
box-shadow:0 16px 40px rgba(15,23,42,.08);
}

.stat-card strong{
display:block;
font-size:28px;
margin-top:8px;
}

/* konto polish */

.dashboard-hero{
max-width:1120px;
margin:26px auto 20px;
border-radius:28px;
overflow:hidden;
}

.stats-row{
max-width:1120px;
margin:0 auto 24px;
display:grid;
grid-template-columns:repeat(3,1fr);
gap:18px;
}

.stats-row .stat{
background:#fff;
border-radius:22px;
padding:24px;
box-shadow:0 16px 38px rgba(15,23,42,.07);
text-align:center;
}

@media(max-width:900px){
.stats-row{
grid-template-columns:1fr;
}
}

.quick-stats{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:18px;
margin-top:24px;
}

.quick-card{
background:#fff;
border-radius:22px;
padding:22px;
text-align:center;
box-shadow:0 16px 36px rgba(15,23,42,.06);
}

.quick-card .icon{
font-size:18px;
display:block;
margin-bottom:10px;
}

.quick-card .num{
font-size:30px;
font-weight:900;
line-height:1;
margin-bottom:8px;
color:#0f172a;
}

.quick-card .label{
font-size:14px;
color:#64748b;
font-weight:700;
}

/* ===== FINAL ACCOUNT FIX ===== */

.navbar{
height:72px !important;
display:flex !important;
align-items:center !important;
background:rgba(255,255,255,.92) !important;
backdrop-filter:blur(14px);
border-bottom:1px solid #e8eef9 !important;
}

.nav-wrap{
height:72px !important;
display:flex;
justify-content:space-between;
align-items:center;
}

.menu{
display:flex;
align-items:center;
gap:18px;
}

/* konto */

.account-hero{
display:flex !important;
justify-content:space-between !important;
align-items:center !important;
gap:24px !important;

padding:34px !important;
margin-bottom:22px !important;

border-radius:28px !important;

background:linear-gradient(
135deg,
#1d4ed8 0%,
#2563eb 52%,
#06b6d4 100%
) !important;

color:#fff !important;
box-shadow:0 22px 55px rgba(37,99,235,.18) !important;
}

.account-side{
min-width:160px;
padding:22px;
border-radius:22px;
text-align:center;

background:rgba(255,255,255,.12);
border:1px solid rgba(255,255,255,.16);
}

.hero-number{
font-size:52px !important;
font-weight:900;
line-height:1;
margin-bottom:8px;
}

.account-stats{
display:grid !important;
grid-template-columns:repeat(3,1fr) !important;
gap:18px !important;
margin-bottom:34px !important;
}

.stat-card{
background:#fff !important;
color:#0f172a !important;

padding:24px !important;
border-radius:24px !important;

box-shadow:0 18px 42px rgba(15,23,42,.06) !important;
text-align:center;
}

.stat-value{
font-size:34px !important;
font-weight:900;
line-height:1;
margin-bottom:8px;
}

.stat-label{
font-size:14px !important;
font-weight:800;
color:#64748b !important;
}

@media(max-width:900px){

.account-hero{
flex-direction:column;
align-items:flex-start;
}

.account-side{
width:100%;
}

.account-stats{
grid-template-columns:1fr !important;
}

}

/* ===== TOPBAR SAME AS INDEX ===== */

header.navbar{
position:sticky;
top:0;
z-index:999;
width:100%;

height:72px;
padding:0;

background:rgba(255,255,255,.96) !important;
backdrop-filter:blur(16px);

border-bottom:1px solid #edf2f7;
}

header.navbar .container{
max-width:1180px;
margin:0 auto;
padding:0 24px;
height:72px;
}

header.navbar .nav-wrap{
display:flex;
align-items:center;
justify-content:space-between;
height:72px;
}

.brand img{
height:42px;
width:auto;
display:block;
}

.menu{
display:flex;
align-items:center;
gap:14px;
}

.menu a{
font-weight:700;
font-size:14px;
text-decoration:none;
color:#0f172a;
}

.menu .btn-primary,
.menu .user-btn{
height:40px;
padding:0 18px;
border-radius:999px;
display:inline-flex;
align-items:center;
justify-content:center;
}

/* ===== HEADER PREMIUM ===== */

.menu{
display:flex;
align-items:center;
gap:12px;
}

.user-hello{
font-size:14px;
font-weight:800;
color:#0f172a;
padding-right:6px;
white-space:nowrap;
}

.nav-btn{
height:40px;
min-width:110px;

padding:0 18px;
border-radius:999px;

display:inline-flex;
align-items:center;
justify-content:center;

font-size:14px;
font-weight:800;
text-decoration:none;

transition:.18s ease;
}

.nav-btn.primary{
background:linear-gradient(135deg,#2563eb,#3b82f6);
color:#fff;
box-shadow:0 12px 26px rgba(37,99,235,.18);
}

.nav-btn.primary:hover{
transform:translateY(-2px);
}

.nav-btn.light{
background:#eef4ff;
color:#1d4ed8;
}

.nav-btn.light:hover{
background:#e2ebff;
}

.nav-user{
font-size:14px;
font-weight:800;
color:#0f172a;
margin-right:8px;
}

/* ===== NAVBAR SKY SCORE BUTTONS ===== */

.navbar .btn-primary,
.navbar .nav-btn{
height:40px;
padding:0 18px;
border:none;
border-radius:999px;

display:inline-flex;
align-items:center;
justify-content:center;

font-size:14px;
font-weight:800;
text-decoration:none;
color:#fff !important;

background:linear-gradient(135deg,#1d4ed8 0%,#2563eb 45%,#0ea5e9 100%);
box-shadow:
0 10px 24px rgba(37,99,235,.18),
inset 0 1px 0 rgba(255,255,255,.15);

transition:.18s ease;
}

.navbar .btn-primary:hover,
.navbar .nav-btn:hover{
transform:translateY(-2px);
box-shadow:
0 16px 34px rgba(37,99,235,.25),
inset 0 1px 0 rgba(255,255,255,.15);
}

.nav-user{
font-size:14px;
font-weight:800;
color:#0f172a;
margin-right:6px;
}

/* ===== NAVBAR CTA STYLE ===== */



.navbar .btn-primary:hover{
transform:translateY(-2px);
box-shadow:0 16px 34px rgba(37,99,235,.22);
}

.nav-user{
font-size:14px;
font-weight:800;
color:#0f172a;
margin-right:8px;
}

.card h3{
word-break: break-word;
overflow-wrap: break-word;
line-height:1.3;
}

.admin-badge{color:#ff9800;font-weight:700;}
.pro-badge{color:#00bcd4;font-weight:700;}
.user-badge{opacity:.7;}

/* return date fix */

#returnWrap{
display:none;
width:100%;
}

#returnWrap.show{
display:block;
}

#returnDate{
width:100%;
display:block;
min-height:54px;
appearance:auto;
-webkit-appearance:auto;
}

.terms-label{
display:flex;
align-items:center;
gap:10px;
margin:14px 0 8px;
font-size:14px;
color:#334155;
cursor:pointer;
}

.terms-label input{
width:18px;
height:18px;
cursor:pointer;
}

.terms-label a{
color:#2563eb;
font-weight:700;
text-decoration:none;
}

.terms-label a:hover{
text-decoration:underline;
}

/* LEGAL PAGE */

.legal-page{
min-height:100vh;
padding:40px 16px;
background:
linear-gradient(135deg,#0f172a,#1e293b);
display:flex;
justify-content:center;
align-items:flex-start;
}

.legal-box{
width:100%;
max-width:760px;
background:#fff;
border-radius:24px;
padding:34px;
box-shadow:0 20px 50px rgba(0,0,0,.18);
}

.legal-top{
margin-bottom:24px;
}

.legal-top h1{
font-size:34px;
margin:8px 0;
font-weight:800;
line-height:1.15;
color:#0f172a;
}

.legal-top p{
font-size:16px;
color:#64748b;
}

.legal-content{
display:grid;
gap:14px;
}

.legal-content section{
padding:18px;
border:1px solid #e2e8f0;
border-radius:16px;
background:#f8fafc;
}

.legal-content h2{
font-size:18px;
margin-bottom:8px;
color:#0f172a;
}

.legal-content p{
font-size:15px;
line-height:1.6;
color:#334155;
}

.legal-btn{
margin-top:24px;
display:inline-block;
}

.trip-toggle{
display:flex;
gap:8px;
margin-bottom:14px;
}

.trip-btn{
  flex:1;

  height:44px;

  border-radius:14px;
  border:none;

  background:#f1f5f9;
  color:#64748b;

  font-size:14px;
  font-weight:700;

  cursor:pointer;

  transition:.2s ease;
}

/* HOVER */
.trip-btn:hover{
  background:#e2e8f0;
}

/* ACTIVE */
.trip-btn.active{
  background:linear-gradient(
    135deg,
    #3b82f6,
    #2563eb
  );

  color:#fff;

  box-shadow:0 6px 16px rgba(37,99,235,.25);
}

.flatpickr-prev-month,
.flatpickr-next-month {
  font-size: 18px;
  color: #3b82f6;
  transition: 0.2s;
}

.flatpickr-prev-month:hover,
.flatpickr-next-month:hover {
  color: #06b6d4;
}

/* WRAPPER HEADER */
.flatpickr-months {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* UKRYWAMY DOMYŚLNY LAYOUT */
.flatpickr-month {
  display: flex;
  justify-content: center;
  width: 100%;
}

/* TEKST MIESIĄCA */
.flatpickr-current-month {
  font-weight: 600;
  font-size: 16px;
  text-align: center;
}

/* STRZAŁKI */
.flatpickr-prev-month,
.flatpickr-next-month {
  position: absolute;
  top: 12px;
  width: 32px;
  height: 32px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 8px;
  cursor: pointer;

  background: #f1f5f9;
  transition: 0.2s;
}

/* LEWA */
.flatpickr-prev-month {
  left: 12px;
}

/* PRAWA */
.flatpickr-next-month {
  right: 12px;
}

/* HOVER */
.flatpickr-prev-month:hover,
.flatpickr-next-month:hover {
  background: #e2e8f0;
}

.flatpickr-prev-month svg,
.flatpickr-next-month svg {
  width: 14px;
  height: 14px;
  stroke: #334155;
}

/* STRZAŁKI NA BOKACH KALENDARZA */
.flatpickr-calendar::before,
.flatpickr-calendar::after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 22px;
  color: #64748b;
  cursor: pointer;
  z-index: 10;
}

/* LEWA */
.flatpickr-calendar::before {
  content: "‹";
  left: -20px;
}

/* PRAWA */
.flatpickr-calendar::after {
  content: "›";
  right: -20px;
}

.search-card .btn-primary{
  width: 100%;
  margin-top: 10px;
}

.btn-primary{

  height:48px;
  padding:0 22px;

  border-radius:16px;
  border:none;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  font-size:15px;
  font-weight:800;

  color:#fff;
  text-decoration:none;

  background:linear-gradient(
    135deg,
    #3b82f6 0%,
    #2563eb 50%,
    #1d4ed8 100%
  );

  box-shadow:
    0 12px 26px rgba(37,99,235,.18),
    inset 0 1px 0 rgba(255,255,255,.15);

  transition:.2s ease;
}

/* HOVER */
.btn-primary:hover{
  transform:translateY(-2px);
  box-shadow:
    0 18px 34px rgba(37,99,235,.25),
    inset 0 1px 0 rgba(255,255,255,.15);
}

/* ACTIVE */
.btn-primary:active{
  transform:scale(.98);
}

.menu .btn-primary{
  color:#fff !important;
}

.trip-toggle{
  display:flex;
  gap:6px;

  background:#eef2f7;
  padding:4px;
  border-radius:16px;
}





.chip.active{
  background:#2563eb;
  color:#fff;
}
 



/* DROPDOWN */
.dropdown{
  position:absolute;
  top:100%;
  left:0;
  right:0;

  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;

  margin-top:6px;

  max-height:220px;
  overflow:auto;

  z-index:100;
}

.dropdown-item{
  padding:10px 14px;
  cursor:pointer;
}



.multi-input::-webkit-scrollbar{
  height:6px;
}

.multi-input::-webkit-scrollbar-thumb{
  background:#cbd5f5;
  border-radius:10px;
}

.dropdown{
  z-index:9999;
}

.multi-input{
  position: relative;
}



.dropdown{
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;

  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  margin-top: 6px;

  z-index: 999;
}



.dropdown{
  position:absolute;
  top:100%;
  left:0;
  right:0;

  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;

  box-shadow:0 10px 30px rgba(0,0,0,.1);

  z-index:9999;
  max-height:220px;
  overflow-y:auto;
}

.dropdown-item{
  padding:12px 14px;
  cursor:pointer;
  font-size:14px;
}



.search-card{
  position:relative;
  z-index:1;
  overflow: visible !important;
}

.search-card select{
  position:relative;
  z-index:1;
}

.dropdown{
  margin-top:8px;
  animation:fadeIn .15s ease;
}

@keyframes fadeIn{
  from{
    opacity:0;
    transform:translateY(-5px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}





.chip{
  display:inline-flex;
  align-items:center;
  gap:6px;

  background:#e0edff;
  color:#2563eb;

  padding:6px 10px;
  border-radius:999px;

  font-size:13px;
  font-weight:600;
}


.chip-x{
  margin-left:6px;
  cursor:pointer;
  font-weight:bold;
}

#fromChips{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}



#fromDropdown{
  position:absolute;
  width:100%;
  max-height:220px;
  overflow:auto;
  z-index:20;
}



.dropdown-item{
  padding:10px 14px;
  cursor:pointer;
  transition:0.2s;
}

.dropdown-item.active,
.dropdown-item:hover{
  background:#2563eb;
  color:#fff;
}


#toBox{
  width:100%;
}

#toBox .chips{
  width:100%;
}
.chips{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}

#toInput{
  border:none;
  outline:none;
  flex:1;
  min-width:120px;
}
#fromBox,
#toBox{
  min-height:44px; 
}

.chips-wrapper{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;

  border:1px solid #e2e8f0;
  border-radius:18px;
  padding:10px;
}











#fromChips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.from-tag{
  display:inline-flex;
  align-items:center;

  background:#eef4ff;
  color:#2563eb;

  padding:6px 10px;
  border-radius:999px;

  font-size:13px;
  font-weight:700;

  white-space:nowrap;
}




#fromChips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}






.search-card #fromInput{
  width:auto !important;
  flex:0 0 auto !important;

  min-width:120px !important;
  max-width:150px !important;

  padding:6px 8px !important;

  border:none !important;
  background:transparent !important;
}

/* ===== TOTAL ISOLATION ===== */

.from-clean{
  position:relative;
  width:100%;
}



.from-clean-inner:focus-within{
  border-color:#2563eb;
  background:#fff;
  box-shadow:0 0 0 2px rgba(37,99,235,0.1);
}





/* dropdown */
.from-dropdown{
  position:absolute;
  top:100%;
  left:0;
  width:100%;

  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:12px;
  margin-top:6px;

  z-index:50;
}



/* element */
.from-dropdown .dropdown-item{
  padding:10px;
  cursor:pointer;
}



.from-tag span{
  margin-left:6px;
  cursor:pointer;
}

.from-clean-inner{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;

  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:10px 12px;

  background:#f8fafc;
}

/* 🔥 NAJWAŻNIEJSZE */
.from-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
   display:contents; 
  width:auto;        /* 👈 MUSI być */
  flex:0 1 auto;
}

/* chip */
.from-tag{
  background:#e0edff;
  color:#2563eb;

  padding:6px 10px;
  border-radius:999px;
  font-size:13px;
  font-weight:600;
}

/* 🔥 INPUT */
.from-input{
  all:unset;

  flex:1 1 120px;   /* 👈 klucz */
  min-width:120px;

  font-size:14px;
}

/* placeholder */
.from-input::placeholder{
  color:#94a3b8;
}

/* 🔥 zabijamy problem */
.from-tags{
  width:auto !important;
  flex:0 1 auto !important;
}

/* 🔥 wymuszamy jedną linię kontenera */
.from-clean-inner{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
}

/* 🔥 input ma siedzieć obok */
.from-input{
  flex:1 1 120px !important;
  min-width:120px !important;
}

/* 🔥 kontener */
.from-clean-inner{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:6px !important;
}

/* 🔥 wrapper chipów */
.from-tags{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;

  width:auto !important;
}

/* 🔥 KAŻDY CHIP */
.from-tag{
  display:inline-flex !important;   /* 👈 KLUCZ */
  align-items:center;

  width:auto !important;            /* 👈 zabija 100% */
  max-width:100%;

  white-space:nowrap;               /* 👈 NIE łamie tekstu */
}

/* 🔥 INPUT */
.from-input{
  flex:1 1 120px !important;
  min-width:120px !important;
}

.from-clean-inner{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;

  border:1px solid #e2e8f0;
  border-radius:18px;
  padding:10px 12px;

  background:#fff;
}

/* chipy */
.from-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

/* chip */
.from-tag{
  display:inline-flex;
  align-items:center;

  background:#eef4ff;
  color:#2563eb;

  padding:6px 10px;
  border-radius:999px;

  font-size:13px;
  font-weight:700;
}

/* input */
.from-input{
  all:unset;

  flex:1 1 120px;
  min-width:120px;

  font-size:14px;
}

.from-clean-inner{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}

/* 🔥 to jest klucz */
#fromChips{
  display:inline-flex;
  flex-wrap:wrap;
  gap:6px;
}

/* 🔥 chip NIE może być block */
.from-tag{
  display:inline-flex;
  align-items:center;
  white-space:nowrap;
}

/* 🔥 input obok */
.from-input{
  flex:1 1 120px;
  min-width:120px;
}

#fromChips{
  width:auto !important;
}

/* 🔥 zabijamy block */
#fromChips{
  display:inline-flex !important;
  flex-wrap:wrap;
  gap:6px;

  width:auto !important;
}



.from-clean-inner{
  border:1px solid #e2e8f0;
  transition: all 0.2s ease;
}

.from-clean-inner:focus-within{
  border-color:#2563eb;
  box-shadow:0 0 0 3px rgba(37,99,235,0.15);
}

.from-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
}

/* 🔥 chip */
.from-tag{
  display:inline-flex;
  align-items:center;
  white-space:nowrap;
}

#searchForm #fromChips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;

  width:auto !important;
}

#searchForm #fromBox{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:6px !important;
}

#searchForm .from-tag{
  display:inline-flex !important;
  align-items:center;
  white-space:nowrap;
}


.from-clean-inner{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;

  border:1px solid #e2e8f0;
  border-radius:18px;
  padding:10px 12px;

  background:#fff;

  transition:.2s ease;
}

/* 🔥 FOCUS IDENTYCZNY */
.from-clean-inner:focus-within{
  border-color:#2563eb;
  box-shadow:0 0 0 3px rgba(37,99,235,0.15);
}

/* CHIPY */
.from-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
}

/* CHIP */
.from-tag{
  display:inline-flex;
  align-items:center;
  white-space:nowrap;

  background:#eef4ff;
  color:#2563eb;

  padding:6px 10px;
  border-radius:999px;

  font-size:13px;
  font-weight:700;
}

/* INPUT */
.from-input{
  all:unset;

  flex:1 1 120px;
  min-width:120px;

  font-size:14px;
}

/* placeholder */
.from-input::placeholder{
  color:#94a3b8;
}

.stay-range{
  display:flex;
  gap:12px;
  margin-top:12px;
}

.stay-field{
  flex:1;
}

.stay-field label{
  display:block;
  font-size:12px;
  color:#64748b;
  margin-bottom:6px;
}

.stay-field input{
  width:100%;
  height:48px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:0 12px;
  font-size:15px;
}

.flex-search-row{
  margin-top:12px;
}

.flex-search-label{
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  font-size:14px;
  color:#334155;
}

.flex-search-label input{
  width:16px;
  height:16px;
}