@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Poppins,sans-serif;line-height:1.6;font-weight:400;color:#f8fafc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 20% 10%,rgba(34,211,238,.18),transparent 35%),radial-gradient(circle at 80% 0%,rgba(251,191,36,.14),transparent 30%),linear-gradient(140deg,#082f49,#0f172a,#111827);background-attachment:fixed}#root{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:1.5rem 1rem 2.5rem}.searchbox{background:#10182894;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(148,163,184,.2);border-radius:24px;padding:2rem;width:100%;max-width:520px;box-shadow:0 18px 48px #02081459;transition:transform .3s ease,box-shadow .3s ease}.searchbox:hover{transform:translateY(-2px);box-shadow:0 22px 52px #02081473}.searchbox h2{font-size:1.45rem;font-weight:600;margin-bottom:.2rem;background:linear-gradient(90deg,#f8fafc,#a5f3fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:.5px}.search-caption{color:#e0f2feb3;font-size:.92rem;margin-bottom:.3rem}.searchbox hr{border:none;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);margin-bottom:1.8rem}.searchbox form{display:flex;flex-direction:column;align-items:center;gap:1.2rem}.searchbox .MuiTextField-root{width:100%}.searchbox .MuiOutlinedInput-root{color:#fff;border-radius:14px;background:#ffffff0f;transition:background .3s ease}.searchbox .MuiOutlinedInput-root:hover{background:#ffffff1a}.searchbox .MuiOutlinedInput-root fieldset{border-color:#fff3;transition:border-color .3s ease}.searchbox .MuiOutlinedInput-root:hover fieldset{border-color:#fff6}.searchbox .MuiOutlinedInput-root.Mui-focused fieldset{border-color:#14b8a6}.searchbox .MuiInputLabel-root{color:#ffffff80;font-family:Poppins,sans-serif}.searchbox .MuiInputLabel-root.Mui-focused{color:#99f6e4}.searchbox .MuiButton-contained{width:100%;padding:.75rem 2rem;border-radius:14px;font-family:Poppins,sans-serif;font-weight:600;font-size:.95rem;text-transform:none;letter-spacing:.5px;background:linear-gradient(135deg,#0ea5a3,#0284c7);box-shadow:0 4px 15px #0ea5a35c;transition:all .3s ease}.searchbox .MuiButton-contained:hover{background:linear-gradient(135deg,#0f766e,#0369a1);box-shadow:0 6px 20px #0ea5a380;transform:translateY(-1px)}.quick-city-wrap{margin-top:1.4rem}.quick-city-wrap h3{color:#e2e8f0d9;font-size:.86rem;margin-bottom:.55rem;letter-spacing:.6px;text-transform:uppercase}.quick-city-list{display:flex;flex-wrap:wrap;gap:.55rem}.quick-city-btn{border:1px solid rgba(148,163,184,.35);background:#0f172a8c;color:#e2e8f0;border-radius:999px;padding:.35rem .75rem;font-size:.8rem;cursor:pointer;transition:all .25s ease}.quick-city-btn:hover:not(:disabled){border-color:#67e8f9bf;transform:translateY(-1px)}.quick-city-btn:disabled{opacity:.5;cursor:not-allowed}.error-msg{margin-top:.9rem;color:#fca5a5;font-size:.85rem}.dc{display:flex;justify-content:center;width:100%;animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.dc-placeholder{display:flex;flex-direction:column;align-items:center;gap:.8rem;padding:2rem;opacity:.6}.dc-placeholder .weather-icon{display:inline-flex;align-items:center;justify-content:center;color:#bae6fd;animation:float 3s ease-in-out infinite}.spin-icon{animation:spin .9s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.weather-card{background:#0f172a94!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;border:1px solid rgba(148,163,184,.24)!important;border-radius:24px!important;overflow:hidden!important;width:100%!important;max-width:560px!important;max-width:100%!important;box-shadow:0 14px 40px #02081459!important;transition:transform .3s ease,box-shadow .3s ease!important}.weather-card:hover{transform:translateY(-4px)!important;box-shadow:0 18px 50px #0208147a!important}.weather-card-header{background:linear-gradient(135deg,#0369a1,#0891b2,#14b8a6)!important;height:140px!important;display:flex!important;align-items:center!important;justify-content:center!important;position:relative;overflow:hidden}.weather-card-header:before{content:"";position:absolute;width:200px;height:200px;background:#ffffff14;border-radius:50%;top:-60px;right:-40px}.weather-card-header:after{content:"";position:absolute;width:120px;height:120px;background:#ffffff0d;border-radius:50%;bottom:-30px;left:-20px}.weather-emoji{display:inline-flex;align-items:center;justify-content:center;z-index:1;color:#f0f9ff;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));animation:float 3s ease-in-out infinite}.weather-card .MuiCardContent-root{padding:1.5rem!important}.city-name{color:#fff!important;font-family:Poppins,sans-serif!important;font-weight:600!important;font-size:1.5rem!important;margin-bottom:.9rem!important}.observation-time{color:#e2e8f0a8!important;font-size:.78rem!important;margin-bottom:.95rem!important;letter-spacing:.3px}.weather-details{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:.5rem}.weather-detail-item{background:#0f172a80;border-radius:14px;padding:.8rem;text-align:center;border:1px solid rgba(148,163,184,.22);transition:background .3s ease}.weather-detail-item:hover{background:#1e293b99}.detail-icon{display:inline-flex;align-items:center;justify-content:center;color:#7dd3fc;margin-bottom:.2rem}.detail-label{color:#e2e8f085!important;font-family:Poppins,sans-serif!important;font-size:.7rem!important;text-transform:uppercase;letter-spacing:1px}.detail-value{color:#fff!important;font-family:Poppins,sans-serif!important;font-weight:600!important;font-size:.98rem!important}@media(max-width:520px){.weather-details{grid-template-columns:1fr}}.weather-layout{width:min(1120px,100%);display:flex;flex-direction:column;gap:1.4rem}.hero-panel{background:linear-gradient(120deg,#0e749059,#1e40af38);border:1px solid rgba(148,163,184,.22);border-radius:28px;padding:2rem;box-shadow:0 16px 50px #02081459}.hero-kicker{color:#99f6e4;text-transform:uppercase;letter-spacing:1.3px;font-size:.76rem;font-weight:600}.hero-panel h1{font-size:clamp(1.9rem,3.2vw,2.8rem);line-height:1.15;margin-top:.4rem;margin-bottom:.6rem}.hero-subtext{max-width:60ch;color:#e2e8f0d9;font-size:.98rem}.weather-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:1rem}.main-stack{display:flex;flex-direction:column;gap:1rem}.insights-panel{background:#0f172a8a;border:1px solid rgba(148,163,184,.2);border-radius:24px;padding:1.4rem}.insights-panel h2{font-size:1.25rem;margin-bottom:.2rem}.insights-panel>p{color:#e2e8f0bf;font-size:.92rem;margin-bottom:1rem}.insight-list{display:flex;flex-direction:column;gap:.7rem}.insight-card{background:#0284c71f;border:1px solid rgba(125,211,252,.26);border-radius:16px;padding:.85rem}.insight-top{display:flex;justify-content:space-between;align-items:baseline;gap:.8rem;margin-bottom:.25rem}.insight-top h3{font-size:.95rem}.insight-top span{color:#99f6e4;font-size:.82rem;font-weight:600}.insight-card p{color:#e2e8f0cc;font-size:.86rem}.feature-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.feature-strip article{background:#0f172a6b;border:1px solid rgba(148,163,184,.2);border-radius:20px;padding:1rem}.feature-strip h3{margin-bottom:.45rem;font-size:1rem}.feature-strip p{color:#e2e8f0cc;font-size:.88rem}.app-footer{text-align:center;color:#cbd5e1cc;font-size:.82rem;letter-spacing:.6px;text-transform:capitalize;padding:.2rem 0 .6rem}.app-footer p{margin-bottom:.35rem}.footer-links{display:inline-flex;align-items:center;gap:.55rem}.footer-links a{color:#bae6fdeb;text-decoration:none;transition:color .25s ease}.footer-links a:hover{color:#67e8f9}.footer-links span{color:#cbd5e199}@media(max-width:980px){.weather-grid,.feature-strip{grid-template-columns:1fr}}@media(max-width:640px){.hero-panel{padding:1.4rem}.insights-panel{padding:1rem}.footer-links{flex-wrap:wrap;justify-content:center}}
