:root{color:#332d26;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#f6e6cff0,#e3eee8e6),#f5eadc;font:17px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100svh;margin:0}button,input{font:inherit}#root{min-height:100svh}h1,h2,p{margin:0}h1,h2{color:#2b2620;line-height:1.05}h1{letter-spacing:-.04em;max-width:680px;font-size:clamp(2.65rem,7vw,5.7rem);font-weight:850}h2{letter-spacing:-.025em;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:820}.weather-shell{width:min(1040px,100% - 32px);margin:0 auto;padding:56px 0}.weather-panel,.forecast-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(145deg,#ffffffe6,#fff8ecc2),#ffffffdb;border:1px solid #5d4e3d24;box-shadow:0 24px 70px #4f3d2c24}.weather-panel{border-radius:8px;padding:clamp(28px,5vw,56px);position:relative;overflow:hidden}.weather-panel:before{content:"";pointer-events:none;background:radial-gradient(circle at 12% 0,#d98e532e,#0000 30%),linear-gradient(90deg,#537b6f17,#0000 58%);position:absolute;inset:0}.weather-panel>*{position:relative}.app-header{max-width:640px;margin-bottom:28px}.eyebrow{color:#8b5f37;letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:.75rem;font-weight:800}.intro{color:#6f675d;max-width:560px;margin:12px 0 0;font-size:1.05rem}.search-row{align-items:stretch;gap:10px;width:min(700px,100%);display:flex}.search-card{background:#ffffffc2;border:1px solid #5d4e3d26;border-radius:8px;flex:1;gap:10px;padding:8px;display:flex;box-shadow:inset 0 1px #fffc}.search-card input{color:#2b2620;min-width:0;font:inherit;background:0 0;border:0;border-radius:6px;outline:none;flex:1;padding:12px 14px}.search-card input::placeholder{color:#928679}.search-card button,.unit-toggle{color:#fffaf1;cursor:pointer;font:inherit;background:#2f6f64;border:0;border-radius:6px;padding:12px 22px;font-weight:800;transition:background .18s,transform .18s,box-shadow .18s}.unit-toggle{background:#8b5f37;border:1px solid #5d4e3d24;min-width:74px;box-shadow:0 12px 28px #8b5f3729}.search-card button:hover,.unit-toggle:hover{background:#285d55;transform:translateY(-1px);box-shadow:0 10px 24px #2f6f643d}.search-card button:focus-visible,.search-card input:focus-visible,.unit-toggle:focus-visible{outline-offset:2px;outline:3px solid #d98e5359}.status-area{min-height:36px;padding-top:14px}.status-message{color:#285d55;background:#2f6f641a;border-radius:999px;padding:8px 12px;font-size:.95rem;font-weight:700;display:inline-flex}.status-message.error{color:#9a4730;background:#9a47301a}.empty-state,.current-weather{background:#fffcf6c7;border:1px solid #5d4e3d1f;border-radius:8px;margin-top:16px}.empty-state{color:#71675c;align-items:center;gap:12px;max-width:600px;padding:18px;display:flex}.empty-icon{color:#8b5f37;background:#efe1cf;border-radius:50%;place-items:center;width:42px;height:42px;font-size:1.4rem;display:grid}.current-weather{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px;padding:clamp(22px,4vw,34px);display:grid}.location-label{color:#8b5f37;margin:0 0 6px;font-size:.9rem;font-weight:800}.condition,.forecast-condition{text-transform:capitalize}.condition{color:#6f675d;margin-top:8px;font-size:1.05rem}.temperature{color:#2b2620;letter-spacing:-.04em;margin:0;font-size:clamp(4rem,12vw,7.25rem);font-weight:800;line-height:.9}.weather-stats{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.weather-stats div,.forecast-day{background:#ffffff9e;border:1px solid #5d4e3d1a;border-radius:8px;padding:16px}.weather-stats span{color:#81766a;font-size:.86rem;font-weight:700;display:block}.weather-stats strong{color:#2b2620;margin-top:4px;font-size:1.15rem;display:block}.forecast-panel{border-radius:8px;margin-top:18px;padding:clamp(22px,4vw,32px)}.section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;display:flex}.section-heading .eyebrow{margin-bottom:6px}.forecast-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.forecast-day{min-height:126px}.forecast-date{color:#6f675d;margin:0;font-size:.95rem;font-weight:800}.forecast-temp{color:#2b2620;margin:14px 0 6px;font-size:2rem;font-weight:800;line-height:1}.forecast-condition{color:#81766a;margin:0;font-size:.95rem}@media (width<=680px){.weather-shell{width:min(100% - 20px,1040px);padding:20px 0}.search-row,.search-card,.current-weather,.weather-stats{grid-template-columns:1fr}.search-row,.search-card{display:grid}.search-card button,.unit-toggle{width:100%}.current-weather{align-items:start}.temperature{font-size:4.75rem}.section-heading{display:block}}
