:root{
  --bg-1: linear-gradient(135deg,#0f172a 0%, #0ea5a4 100%);
  --panel: rgba(255,255,255,0.08);
  --glass: rgba(255,255,255,0.06);
  --accent: #06b6d4; /* teal */
  --card-bg: rgba(255,255,255,0.06);
  --muted: rgba(255,255,255,0.75);
  --max-width: 1100px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
  background: var(--bg-1);
  color:#e6f0f2;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Make page stretch so footer sits at the bottom */
body{display:flex;flex-direction:column}
main.container{flex:1 0 auto}

.container{max-width:var(--max-width);margin:1.5rem auto;padding:0 1rem}
.site-header{padding:1.25rem 0}
.header-inner{display:flex;align-items:center;justify-content:space-between}
.brand{font-size:1.35rem;font-weight:700;margin:0;color:#fff}
.brand-sub{font-size:0.85rem;color:rgba(255,255,255,0.85)}

/* Controls */
.controls-card{display:flex;flex-direction:column;gap:0.75rem;padding:0.9rem}
.search-row{display:flex;gap:0.75rem;align-items:center}
.search-row input[type=search]{flex:1;padding:0.75rem 1rem;border-radius:12px;border:none;background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.02));color:#fff;outline:none}
.btn{padding:0.65rem 0.9rem;border-radius:12px;border:none;background:transparent;color:#fff;cursor:pointer;box-shadow:0 4px 12px rgba(2,6,23,0.4);transition:transform .14s ease, box-shadow .14s ease}
.btn:hover{transform:translateY(-2px)}
.btn.primary{background:linear-gradient(90deg,var(--accent),#7dd3fc);color:#042028}
.options-row{display:flex;justify-content:space-between;align-items:center}
.unit-toggle .unit{margin-right:0.5rem;background:rgba(255,255,255,0.04);padding:0.25rem 0.6rem;border-radius:999px}
.status{font-size:0.9rem;color:rgba(255,255,255,0.9)}

/* Weather grid */
.weather-grid{display:grid;grid-template-columns:320px 1fr;gap:1rem;margin-top:1rem}
.current-column{display:flex;flex-direction:column;gap:1rem}
.current-card{padding:1rem;background:linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.02));border-radius:16px;backdrop-filter: blur(6px);}
.current-top{display:flex;justify-content:space-between;align-items:center}
.location{font-weight:700;font-size:1.05rem}
.condition{font-size:0.95rem;color:rgba(255,255,255,0.9)}
.current-right{display:flex;align-items:center;gap:0.75rem}
#weather-icon{width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg,rgba(255,255,255,0.04),rgba(255,255,255,0.02));padding:8px;box-shadow:0 8px 26px rgba(2,6,23,0.5);object-fit:contain}
.temp.big{font-size:2.4rem;font-weight:800;color:#fff}
.details{margin-top:0.5rem;display:flex;gap:0.5rem;flex-wrap:wrap}
.details .small{background:rgba(255,255,255,0.02);padding:0.5rem 0.75rem;border-radius:10px;font-size:0.85rem}

/* Hourly and daily */
.forecasts .card{margin-bottom:1rem}
.hourly-card .hourly{display:flex;gap:0.6rem;overflow:auto;padding:0.5rem 0}
.hourly-card .item{min-width:86px;padding:0.6rem;border-radius:10px;background:linear-gradient(180deg,rgba(255,255,255,0.02),rgba(255,255,255,0.01));text-align:center}
.hourly-card .item .temp{font-weight:700}
.daily-card .row{display:flex;align-items:center;justify-content:space-between;padding:0.45rem 0;border-bottom:1px solid rgba(255,255,255,0.03)}

/* Cards common */
.card{background:transparent;padding:0.9rem;border-radius:14px}

/* Responsive */
@media (max-width:900px){
  .weather-grid{grid-template-columns:1fr;}
  .current-right{gap:0.5rem}
}

@media (max-width:600px){
  .search-row{flex-direction:column;align-items:stretch}
  #weather-icon{width:72px;height:72px;padding:6px}
  .temp.big{font-size:1.8rem}
}

/* Footer */
footer{padding:1rem 0;text-align:center;color:rgba(255,255,255,0.8);font-size:0.9rem}


