*{box-sizing:border-box}#root,body,html{min-height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at top left,#7c3aed47,#0000 28%),radial-gradient(circle at top right,#3b82f642,#0000 30%),linear-gradient(160deg,#081120,#10203d 52%,#0a1426);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}body,button,input{font:inherit}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App,.weather-shell{min-height:100vh}.weather-shell{align-items:center;display:flex;justify-content:center;padding:24px;transition:background .4s ease}.weather-shell.theme-default{background:#0000}.weather-shell.theme-clear{background:radial-gradient(circle at top,#ffd2772e,#0000 30%)}.weather-shell.theme-clouds{background:radial-gradient(circle at top,#93c5fd24,#0000 30%)}.weather-shell.theme-rain{background:radial-gradient(circle at top,#60a5fa29,#0000 28%)}.weather-shell.theme-snow{background:radial-gradient(circle at top,#e2e8f02e,#0000 30%)}.weather-shell.theme-storm{background:radial-gradient(circle at top,#818cf82e,#0000 30%)}.weather-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0e162db8;border:1px solid #ffffff1f;border-radius:28px;box-shadow:0 24px 80px #040a1c59;color:#f8fbff;padding:32px;width:min(100%,780px)}.weather-card__header{margin-bottom:24px}.weather-eyebrow{color:#9ec5ff;font-size:.75rem;letter-spacing:.16em;margin:0 0 8px;text-transform:uppercase}.weather-card h1{font-size:clamp(2rem,4vw,3.25rem);line-height:1.05;margin:0}.weather-subtitle{color:#e8f0ffc7;font-size:1rem;line-height:1.6;margin:12px 0 0;max-width:620px}.weather-search{display:flex;gap:12px;margin-bottom:16px}.weather-search input{background:#ffffff14;border:1px solid #ffffff1f;border-radius:16px;color:#fff;flex:1 1;font-size:1rem;outline:none;padding:16px 18px}.weather-search input::placeholder{color:#ffffff73}.weather-search input:focus{border-color:#7bb6ffe6;box-shadow:0 0 0 4px #5d99ff24}.weather-search button{background:linear-gradient(135deg,#90caf9,#dbeafe);border:none;border-radius:16px;box-shadow:0 10px 24px #78abff52;color:#0d1b35;cursor:pointer;font-size:1rem;font-weight:700;padding:16px 22px;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.weather-chip:hover:not(:disabled),.weather-search button:hover:not(:disabled){transform:translateY(-1px)}.weather-chip:disabled,.weather-search button:disabled{cursor:wait;opacity:.75}.weather-quick-cities{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.weather-chip{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;color:#eef5ff;cursor:pointer;padding:10px 14px;transition:transform .18s ease,background .18s ease,border-color .18s ease}.weather-chip:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff38}.weather-message{align-items:center;border-radius:14px;display:flex;font-size:.95rem;gap:10px;margin-bottom:18px;padding:14px 16px}.weather-message--loading{background:#7eb6ff1f;border:1px solid #7eb6ff33;color:#e8f3ff}.weather-message--error{background:#ff686824;border:1px solid #ff7d7d47;color:#ffd5d5}.weather-spinner{animation:spin .8s linear infinite;border:2px solid #ffffff47;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.weather-empty-state{background:#ffffff0a;border:1px dashed #ffffff29;border-radius:20px;color:#eef5ffc7;padding:32px 20px;text-align:center}.weather-empty-state h3{color:#fff;font-size:1.3rem;margin:0 0 10px}.weather-empty-state p{line-height:1.65;margin:0 auto;max-width:520px}.weather-empty-state__icon{font-size:2rem;margin-bottom:12px}.weather-results{margin-top:10px}.weather-main{align-items:center;background:linear-gradient(135deg,#72a9ff38,#ffffff0f);border:1px solid #ffffff1f;border-radius:22px;display:flex;gap:16px;justify-content:space-between;padding:24px}.weather-location{color:#e3eeffd9;font-size:1rem;margin:0 0 8px}.weather-main h2{font-size:clamp(3rem,8vw,5rem);line-height:1;margin:0}.weather-description{color:#ebf3ffd9;font-size:1rem;margin:10px 0 0;text-transform:capitalize}.weather-main__icon-group{align-items:center;display:flex;flex-direction:column}.weather-visual{background:#ffffff1a;border:1px solid #ffffff1f;border-radius:24px;box-shadow:inset 0 1px 0 #ffffff1a;display:grid;font-size:3.5rem;height:110px;place-items:center;width:110px}.weather-main-label{color:#e4efffb8;font-size:.92rem;letter-spacing:.04em;margin:-8px 0 0;text-transform:uppercase}.weather-details-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.weather-detail-card{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:18px;padding:18px}.weather-detail-card p{color:#e1ebffb8;font-size:.92rem;margin:0 0 8px}.weather-detail-card strong,.weather-geo-btn{color:#fff;font-size:1.1rem}.weather-geo-btn{background:#ffffff14;border:1px solid #ffffff26;border-radius:16px;cursor:pointer;flex-shrink:0;padding:16px 18px;transition:background .18s ease,transform .18s ease}.weather-geo-btn:hover:not(:disabled){background:#ffffff24;transform:translateY(-1px)}.weather-geo-btn:disabled{cursor:wait;opacity:.6}.weather-chips-section{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.weather-recent{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.weather-recent-label{color:#c8dcff8c;font-size:.75rem;letter-spacing:.1em;margin-right:2px;text-transform:uppercase}.weather-chip--recent{border-color:#ffffff14;color:#dcebffbf;font-size:.88rem}.weather-forecast{margin-top:22px}.weather-forecast-title{color:#c8dcff99;font-size:.85rem;letter-spacing:.12em;margin:0 0 14px;text-transform:uppercase}.weather-forecast-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(5,1fr)}.weather-forecast-card{align-items:center;background:#ffffff0d;border:1px solid #ffffff17;border-radius:16px;display:flex;flex-direction:column;gap:5px;padding:14px 10px;text-align:center}.forecast-day{color:#c8e1ffb3;font-size:.78rem;font-weight:600;letter-spacing:.06em;margin:0;text-transform:uppercase}.forecast-icon{font-size:1.6rem;line-height:1}.forecast-desc{color:#dcebffa6;font-size:.75rem;line-height:1.3;margin:0;text-transform:capitalize}.forecast-temps{display:flex;font-size:.88rem;gap:6px;margin:0}.forecast-high{color:#fff;font-weight:700}.forecast-low{color:#c8dcff80}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:640px){.weather-card{border-radius:22px;padding:22px}.weather-main,.weather-search{flex-direction:column}.weather-main{align-items:flex-start}.weather-main__icon-group{align-self:flex-end}.weather-visual{font-size:2.8rem;height:88px;width:88px}.weather-details-grid{grid-template-columns:1fr}.weather-forecast-grid{grid-template-columns:repeat(3,1fr)}}
/*# sourceMappingURL=main.21a42b9a.css.map*/