.iran-weather-main{padding-block:22px 64px}.iran-weather-layout{display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:28px;align-items:start}.iran-weather-primary{min-width:0}.iran-weather-input-panel,.iran-weather-section,.iran-weather-summary{min-width:0;padding:24px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.iran-weather-input-panel{position:relative;z-index:2;padding:26px 28px;overflow:visible}.iran-weather-heading{display:flex;align-items:center;gap:16px}.iran-weather-art{display:grid;place-items:center;width:74px;height:74px;flex-shrink:0;border-radius:16px;background:var(--accent-soft);color:#bd2d43}.iran-weather-art .icon{width:44px;height:44px}.iran-weather-eyebrow{font-size:var(--text-sm);color:#ba293c;font-weight:600}.iran-weather-heading h1{font-size:var(--text-2xl);line-height:1.7}.iran-weather-form{margin-top:24px}.iran-weather-form>label{display:block;margin-bottom:8px;font-size:var(--text-sm);font-weight:600;color:var(--muted)}.iran-weather-form>.solid-button{margin-top:16px;min-height:50px;justify-content:center}.iran-weather-input-panel>.vm-tool-engagement{margin-top:24px}.iran-weather-primary h2{font-size:var(--text-xl);line-height:1.7}.iran-weather-primary h3{font-size:var(--text-base);line-height:1.8}.iran-weather-note{font-size:var(--text-sm);color:var(--muted);line-height:1.95;margin-top:16px}.iran-weather-summary{background:#fff;border-color:var(--line);scroll-margin-top:20px}.iran-weather-result{min-width:0}.iran-weather-now{display:flex;align-items:center;gap:24px;padding:20px;margin-top:16px;background:#e7e4ff;border:1px solid #dcd5f7;border-radius:12px}.iran-weather-symbol{display:grid;place-items:center;flex-shrink:0;min-width:80px;min-height:80px;font-size:64px;line-height:1}.iran-weather-now>div{min-width:0}.iran-weather-now strong{font-size:var(--text-2xl);color:#6c4bb5}.iran-weather-now p{font-size:var(--text-base);line-height:1.95;margin-top:8px}.iran-weather-facts{margin:16px 0 0}.iran-weather-facts>div{min-width:0;padding:16px;background:#e9f6f0;border:1px solid #d2e9df;border-radius:12px}.iran-weather-facts>div:nth-child(4n+2){background:#eef4fc;border-color:#dce5ef}.iran-weather-facts>div:nth-child(4n+3){background:#fff2e7;border-color:#efdfcf}.iran-weather-facts>div:nth-child(4n){background:#f1ecfc;border-color:#e1d8f1}.iran-weather-facts dt{font-size:var(--text-sm);color:var(--muted);line-height:1.9}.iran-weather-facts dd{margin:0;font-size:var(--text-xl);font-weight:600;line-height:1.95;overflow-wrap:anywhere}.iran-weather-facts small{display:block;font-size:var(--text-sm);color:var(--muted);font-weight:400}.iran-weather-notice,.iran-weather-loading{font-size:var(--text-sm);line-height:1.95;padding:16px;border:1px solid #efdfb6;background:#fff7e5;color:#86611d;border-radius:12px;margin-top:16px;overflow-wrap:anywhere}.iran-weather-loading{background:#eef4fc;border-color:#dce5ef;color:#45638e}.iran-weather-actions{margin-top:16px}.iran-weather-actions :is(button,a){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;font-size:var(--text-sm)}.iran-weather-hourly{display:grid;grid-auto-flow:column;grid-auto-columns:148px;grid-template-rows:repeat(6,auto);align-items:stretch;gap:12px;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;padding-bottom:8px;margin-top:16px;scroll-snap-type:x proximity}.iran-weather-hourly>article{display:grid;grid-row:span 6;grid-template-rows:subgrid;gap:8px;padding:16px;border:1px solid #dce5ef;background:#eef4fc;border-radius:12px;min-width:0;justify-items:center;align-content:start;align-items:start;text-align:center;scroll-snap-align:start}.iran-weather-hourly>article:nth-child(even){background:#e9f6f0;border-color:#d2e9df}.iran-weather-hourly header{display:grid;gap:8px;font-size:var(--text-sm);line-height:1.8}.iran-weather-hour-symbol{font-size:28px;line-height:1.5}.iran-weather-bar{width:100%;height:70px;display:flex;align-items:flex-end;justify-content:center}.iran-weather-bar>span{display:block;width:24px;max-height:70px;background:linear-gradient(#ed8da3,#ad9ce5);border-radius:8px 8px 0 0}.iran-weather-hourly strong{font-size:var(--text-xl);color:#6c4bb5}.iran-weather-hourly article>span:not(.iran-weather-hour-symbol){font-size:var(--text-sm);line-height:1.9;overflow-wrap:anywhere}.iran-weather-hourly small{font-size:var(--text-sm);color:var(--muted);line-height:1.9}.iran-weather-days{margin-top:16px;--tool-card-align:center}.iran-weather-days>article{min-width:0;padding:16px;background:#f1ecfc;border:1px solid #e1d8f1;border-radius:12px;text-align:center}.iran-weather-days>article:nth-child(4n+2){background:#e9f6f0;border-color:#d2e9df}.iran-weather-days>article:nth-child(4n+3){background:#eef4fc;border-color:#dce5ef}.iran-weather-days>article:nth-child(4n){background:#fff2e7;border-color:#efdfcf}.iran-weather-days header{display:grid;gap:8px;font-size:var(--text-base);line-height:1.9}.iran-weather-days time{font-size:var(--text-sm);color:var(--muted)}.iran-weather-day-symbol{font-size:36px;line-height:1.5}.iran-weather-days article>div{width:100%;min-width:0}.iran-weather-days p{font-size:var(--text-base);line-height:1.9;overflow-wrap:anywhere}.iran-weather-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 0}.iran-weather-range>div{padding:8px;background:#ffffffa1;border-radius:8px;min-width:0}.iran-weather-range dt{font-size:var(--text-sm);color:var(--muted)}.iran-weather-range dd{margin:4px 0 0;font-size:var(--text-base);font-weight:600}.iran-weather-range>div:first-child dd{color:#b8314c}.iran-weather-range>div+div dd{color:#386eac}.iran-weather-related{margin-top:16px}.iran-weather-related>a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:16px;border:1px solid #dce5ef;background:#eef4fc;border-radius:12px;font-size:var(--text-base);line-height:1.95;overflow-wrap:anywhere}.iran-weather-related>a:nth-child(even){background:#e9f6f0;border-color:#d2e9df}.iran-weather-related .icon{width:18px;height:18px;flex-shrink:0}.iran-weather-related [aria-current=page]{border-color:#e78fa0;background:var(--accent-soft)}.iran-weather-page [hidden]{display:none!important}@media(max-width:1100px){.iran-weather-layout{grid-template-columns:minmax(0,1fr) 260px;gap:24px}}@media(max-width:850px){.iran-weather-layout{grid-template-columns:1fr}.iran-weather-layout>.age-sidebar{position:static;max-height:none}}@media(max-width:599px){.iran-weather-main{padding-block:18px 38px}.iran-weather-input-panel,.iran-weather-section,.iran-weather-summary{padding:20px 16px}.iran-weather-heading{gap:12px}.iran-weather-heading h1,.iran-weather-primary h2{font-size:var(--text-lg)}.iran-weather-art{width:55px;height:55px}.iran-weather-art .icon{width:34px;height:34px}.iran-weather-now{padding:16px;gap:16px}.iran-weather-symbol{min-width:60px;min-height:60px;font-size:48px}.iran-weather-facts>div,.iran-weather-days>article,.iran-weather-related>a{padding:12px}.iran-weather-facts dd{font-size:var(--text-lg)}.iran-weather-hourly{grid-auto-columns:132px;gap:8px}.iran-weather-hourly>article{padding:12px}.iran-weather-range{grid-template-columns:1fr}.iran-weather-related>a{font-size:var(--text-sm)}}
.iran-weather-icon{display:block;overflow:visible;flex-shrink:0;max-width:100%}
.iran-weather-art .iran-weather-icon{width:52px;height:52px}
.iran-weather-symbol .iran-weather-icon{width:80px;height:80px}
.iran-weather-hour-symbol,.iran-weather-day-symbol{display:grid;place-items:center}
.iran-weather-hour-symbol .iran-weather-icon{width:42px;height:42px}
.iran-weather-day-symbol .iran-weather-icon{width:52px;height:52px}
.iran-weather-icon .weather-sun-rays{transform-box:fill-box;transform-origin:center;animation:weather-sun-turn 32s linear infinite}
.iran-weather-icon .weather-sun-disc{animation:weather-sun-glow 5s ease-in-out infinite}
.iran-weather-icon .weather-cloud{animation:weather-cloud-drift 6s ease-in-out infinite}
.iran-weather-icon .weather-cloud-back{animation:weather-cloud-drift 8s ease-in-out -3s infinite reverse}
.iran-weather-icon .weather-moon{transform-box:fill-box;transform-origin:center;animation:weather-moon-rock 7s ease-in-out infinite}
.iran-weather-icon .weather-star{transform-box:fill-box;transform-origin:center;animation:weather-star-glow 4s ease-in-out infinite}
.iran-weather-icon .weather-star-small{animation-delay:-2s}
.iran-weather-icon .weather-drop{animation:weather-rain-fall 1.6s linear infinite}
.iran-weather-icon .weather-drop-two{animation-delay:-.55s}
.iran-weather-icon .weather-drop-three{animation-delay:-1.1s}
.iran-weather-icon .weather-snowflake{transform-box:fill-box;transform-origin:center;animation:weather-snow-fall 3.6s ease-in-out infinite}
.iran-weather-icon .weather-flake-2{animation-delay:-1.2s}
.iran-weather-icon .weather-flake-3{animation-delay:-2.4s}
.iran-weather-icon .weather-lightning{animation:weather-lightning-glow 5s ease-in-out infinite}
.iran-weather-icon .weather-fog{animation:weather-fog-drift 6s ease-in-out infinite}
.iran-weather-icon .weather-fog-two{animation-delay:-2s;animation-direction:reverse}
.iran-weather-icon .weather-fog-three{animation-delay:-4s}
.iran-weather-icon .weather-thermometer{transform-box:fill-box;transform-origin:bottom;animation:weather-temperature-rise 5s ease-in-out infinite}
.iran-weather-icon :is(.weather-sun-rays,.weather-sun-disc,.weather-cloud,.weather-cloud-back,.weather-moon,.weather-star,.weather-drop,.weather-snowflake,.weather-lightning,.weather-fog,.weather-thermometer){animation-play-state:paused}
.iran-weather-icon.is-weather-animating :is(.weather-sun-rays,.weather-sun-disc,.weather-cloud,.weather-cloud-back,.weather-moon,.weather-star,.weather-drop,.weather-snowflake,.weather-lightning,.weather-fog,.weather-thermometer){animation-play-state:running}
@keyframes weather-sun-turn{to{transform:rotate(360deg)}}
@keyframes weather-sun-glow{0%,100%{fill:#ffdc83}50%{fill:#ffc85b}}
@keyframes weather-cloud-drift{0%,100%{transform:translate(-1.5px,0)}50%{transform:translate(1.5px,-1px)}}
@keyframes weather-moon-rock{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
@keyframes weather-star-glow{0%,100%{opacity:.5;transform:scale(.85)}50%{opacity:1;transform:scale(1.05)}}
@keyframes weather-rain-fall{0%{opacity:0;transform:translate(1px,-3px)}25%{opacity:1}75%{opacity:1}100%{opacity:0;transform:translate(-2px,5px)}}
@keyframes weather-snow-fall{0%{opacity:0;transform:translate(-1px,-3px) rotate(-12deg)}25%,75%{opacity:1}100%{opacity:0;transform:translate(2px,6px) rotate(35deg)}}
@keyframes weather-lightning-glow{0%,65%,100%{opacity:.65;fill:#ffdc83}75%,85%{opacity:1;fill:#ffc85b}}
@keyframes weather-fog-drift{0%,100%{opacity:.6;transform:translateX(-2px)}50%{opacity:1;transform:translateX(2px)}}
@keyframes weather-temperature-rise{0%,100%{transform:scaleY(.8)}50%{transform:scaleY(1)}}
@media(max-width:599px){.iran-weather-art .iran-weather-icon{width:40px;height:40px}.iran-weather-symbol .iran-weather-icon{width:60px;height:60px}}
@media(prefers-reduced-motion:reduce){.iran-weather-icon *{animation:none!important}}
