:root{--ink:#223a35;--deep:#254e47;--muted:#64746e;--paper:#f8f7f2;--white:#fff;--line:#e9e9df;--rust:#a95138;--gold:#df9454;--mint:#e6eee6;--shadow:0 16px 48px rgba(30,53,45,.045);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.48 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}a:hover{text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d58844;outline-offset:3px}em{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em}h1,h2,p{margin-top:0}.app-shell{max-width:1560px;margin:auto;padding:0 clamp(18px,4.3vw,76px)}.skip-link{position:absolute;top:-60px;left:18px;background:var(--ink);color:#fff;padding:10px;z-index:90}.skip-link:focus{top:8px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:110px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;flex-shrink:0}.brand-mark{width:43px;height:43px;display:inline-flex;align-items:center}.brand-mark svg{width:100%}.brand-text{display:flex;flex-direction:column;font-weight:800;font-size:26px;line-height:1;letter-spacing:-.055em}.brand-dot,.site-footer strong span{color:var(--rust)}.brand-text small{font-weight:500;letter-spacing:.02em;font-size:10px;color:var(--muted);margin-top:5px}.main-nav{display:flex;gap:36px;align-items:center}.main-nav a{font-size:14px;color:#6c7872;text-decoration:none;padding:14px 0}.main-nav a:hover,.main-nav a.active{color:var(--deep)}.main-nav a.active{font-weight:750}.header-actions{display:flex;align-items:center;gap:12px}.unit-toggle,.settings-shortcut{border:1px solid #dfe2d8;background:transparent;border-radius:50px;height:43px;color:var(--ink)}.unit-toggle{padding:0 16px;white-space:nowrap;font-size:14px;font-weight:750}.unit-divider{color:#a8b2a8;padding:0 4px}.settings-shortcut{width:43px;display:grid;place-items:center}.settings-shortcut svg,.search-input-wrap svg,.search-submit svg,.locate-btn svg,.text-button svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.intro{display:flex;justify-content:space-between;align-items:end;gap:50px;padding:64px 0 45px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;color:#667e6b}.eyebrow-spark{color:#c27c4b;font-size:19px;margin-right:7px;vertical-align:-2px}.intro h1{font-size:clamp(40px,4.2vw,65px);line-height:1.09;letter-spacing:-.065em;margin:15px 0 16px;font-weight:720}.intro h1 em{color:#a9664e}.intro-copy>p{color:#71807a;font-size:15px;line-height:1.8;max-width:495px;margin:0}.search-area{display:flex;align-items:end;gap:12px;flex:0 1 410px}.search-box{position:relative;flex:1;min-width:0}.search-box>label{display:block;font-weight:800;letter-spacing:.13em;font-size:10px;color:#78857c;margin-bottom:10px}.search-input-wrap{display:flex;align-items:center;border:1px solid #e3e5dc;box-shadow:var(--shadow);border-radius:12px;height:55px;background:var(--white);padding:5px 6px 5px 15px;gap:10px}.search-input-wrap>svg{color:#80918a;flex-shrink:0}.search-input-wrap input{border:0;background:transparent;outline:0;width:100%;min-width:0;font-size:14px;color:var(--ink)}.search-input-wrap input:focus-visible{outline:0}.search-input-wrap:focus-within{outline:3px solid #dfb78d;outline-offset:2px}.search-submit{background:var(--deep);border:0;border-radius:9px;height:42px;width:44px;display:grid;place-items:center;flex-shrink:0;color:#fff}.search-submit:hover{background:#356c60}.subtle-hint{font-size:11px;color:#86928a;margin:7px 0 0 4px}.locate-btn{display:grid;place-items:center;height:55px;width:55px;border:1px solid #e0e4da;border-radius:12px;background:#fff;color:var(--deep);flex-shrink:0;margin-bottom:25px}.locate-btn:hover{background:#eef5ee}.locate-btn span{position:absolute;clip:rect(0 0 0 0);width:1px;height:1px;overflow:hidden}.search-results{position:absolute;top:calc(100% - 7px);left:0;right:0;background:#fff;z-index:6;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 35px #233d3230;padding:6px;max-height:300px;overflow:auto}.search-results[hidden]{display:none}.search-results button{display:block;width:100%;border:0;text-align:left;border-radius:8px;padding:11px 12px;background:#fff;color:var(--ink);font-size:14px}.search-results button:hover,.search-results button:focus-visible{background:#edf2ed}.search-results small{display:block;color:#718078;font-size:12px}.message,.loading-status{padding:13px 16px;margin:0 0 18px;border-radius:12px;font-size:14px}.message{background:#fff4e4;color:#684b30;border:1px solid #ecd6b7}.message.success{background:#edf5eb;color:#315b3e;border-color:#cfe4cf}.loading-status{display:flex;align-items:center;gap:9px;background:#edf2e8;color:#446b58}.loading-status[hidden],.message[hidden]{display:none}.spinner{height:18px;width:18px;border:2px solid #d2ddd2;border-top-color:var(--deep);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.dashboard{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;scroll-margin-top:28px}.weather-hero,.outfit-panel{min-height:496px;border-radius:18px;position:relative;overflow:hidden}.weather-hero{background:linear-gradient(135deg,#dbe9de 0%,#d9e4d6 46%,#c6dacc 100%);display:flex;flex-direction:column;padding:27px 32px 28px}.hero-topline,.panel-heading,.section-heading,.outfit-footer{display:flex;align-items:center;justify-content:space-between;gap:14px}.pill{font-size:10px;font-weight:750;letter-spacing:.14em;display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border-radius:50px}.pill-light{color:#476454;background:#ecf4e7ad}.dot-live{display:inline-block;width:7px;height:7px;border-radius:50%;background:#638a66}.favorite-btn{width:39px;height:39px;display:grid;place-items:center;border:1px solid #afc3b1;border-radius:50%;color:#315d52;background:#ffffff54}.favorite-btn svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.8}.favorite-btn[aria-pressed="true"] svg{fill:#d16e5d;stroke:#d16e5d}.hero-core{display:flex;align-items:center;flex:1;position:relative}.hero-weather-copy{position:relative;z-index:2;margin-top:-5px}.hero-date{color:#587866;font-size:13px;margin-bottom:3px;font-weight:550}.hero-core h2{font-size:clamp(27px,3vw,42px);letter-spacing:-.05em;font-weight:650;margin:0}.big-temp{font-size:clamp(92px,10vw,144px);font-weight:570;line-height:1.05;letter-spacing:-.09em;margin:5px 0 0}.big-temp span{font-size:.5em;vertical-align:top;line-height:1.5;letter-spacing:-.08em}.hero-condition{font-size:19px;font-weight:700;margin-bottom:5px}.feels{font-size:13px;color:#50715e}.hero-art{position:absolute;right:-5px;top:4%;width:50%;height:94%;pointer-events:none}.sun-disc{position:absolute;top:17%;right:19%;width:72%;aspect-ratio:1;border-radius:50%;background:linear-gradient(145deg,#f8e8ac,#eabf77);box-shadow:0 0 0 22px #f8e8ab2b,0 0 0 49px #f4e4af24}.cloud{position:absolute;z-index:1;background:#fff8e9c9;filter:drop-shadow(0 12px 14px #aebba246);border-radius:50px;width:68%;height:20%;top:49%;right:0}.cloud:before,.cloud:after{content:"";position:absolute;border-radius:50%;background:inherit}.cloud:before{width:48%;height:170%;bottom:15%;left:13%}.cloud:after{width:49%;height:220%;bottom:5%;left:35%}.cloud-two{width:55%;height:13%;top:67%;right:45%;opacity:.66}.cloud-two:before,.cloud-two:after{background:#fff8e9}.weather-hero[data-weather="rain"]{background:linear-gradient(135deg,#dce7e6,#c9d8dc)}.weather-hero[data-weather="rain"] .sun-disc{background:#becfd3;box-shadow:0 0 0 25px #dce9ea65}.weather-hero[data-weather="snow"]{background:linear-gradient(135deg,#d8e5e8,#e6edf0)}.weather-hero[data-weather="cloud"]{background:linear-gradient(135deg,#e2e9df,#d1ddd4)}.hero-metrics{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #aec5b44f;padding-top:18px;gap:12px}.hero-metrics div+div{border-left:1px solid #aec5b477;padding-left:20px}.hero-metrics span{display:block;font-size:10px;letter-spacing:.12em;color:#64816b;font-weight:750;margin-bottom:5px}.hero-metrics strong{font-size:17px;font-weight:750;white-space:nowrap}.outfit-panel{padding:31px 32px 24px;background:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column}.panel-heading .small-icon{color:#c88b55;font-size:21px}.outfit-panel>h2{font-weight:690;letter-spacing:-.055em;font-size:clamp(30px,3vw,43px);margin:7px 0 5px}.outfit-panel>h2 em{color:#b37b59}.outfit-subtitle{font-size:14px;color:#87918b;max-width:480px;line-height:1.7}.outfit-pieces{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:7px 0 20px}.outfit-piece{min-width:0;text-align:center}.piece-art{height:115px;border-radius:12px;background:#f5f5f0;display:grid;place-items:center;font-size:55px;overflow:hidden;transition:transform .2s}.outfit-piece:nth-child(2) .piece-art{background:#f3efed}.outfit-piece:nth-child(3) .piece-art{background:#edf1ed}.outfit-piece:nth-child(4) .piece-art{background:#f3f0e7}.outfit-piece:hover .piece-art{transform:translateY(-3px)}.outfit-piece strong{font-size:12px;display:block;margin-top:9px;line-height:1.25}.outfit-piece small{display:block;font-size:11px;color:#87958d;margin-top:3px;line-height:1.35}.stylist-note{display:flex;gap:11px;border-radius:11px;background:#f4f6f0;padding:14px 16px;margin-top:auto}.note-icon{color:#b9804c;font-size:22px;line-height:1}.stylist-note strong{display:block;font-size:12px;margin:1px 0 3px}.stylist-note p{font-size:12px;line-height:1.55;color:#718078;margin:0}.outfit-footer{margin-top:19px}.outfit-footer>span{font-size:12px;color:#8a948a}.text-button{display:flex;gap:7px;align-items:center;background:transparent;border:0;color:var(--deep);font-size:12px;font-weight:750;padding:7px 0}.text-button svg{width:16px;height:16px}.below-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:24px;margin-top:24px}.content-panel{min-width:0;border-radius:17px;background:#fff;padding:28px 29px;box-shadow:var(--shadow)}.section-heading h2{font-size:25px;letter-spacing:-.05em;font-weight:700;margin:3px 0 0}.section-badge{font-size:12px;color:#839189;border:1px solid #e8ebe5;border-radius:50px;padding:7px 12px;white-space:nowrap}.hourly-items{display:flex;gap:8px;overflow-x:auto;margin:24px -6px 0;padding:1px 6px 8px;scrollbar-width:thin}.hour-item{flex:0 0 71px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:9px}.hour-item+.hour-item{border-left:1px solid #f0f1eb}.hour-item time{font-size:12px;color:#718077;white-space:nowrap}.hour-icon{font-size:27px;line-height:1.2}.hour-item strong{font-size:15px}.hour-rain{font-size:10px;color:#618da9}.insight-panel{background:#f4efe3}.insight-symbol{color:#bd945b;font-size:30px}.insight-panel>p{font-family:Georgia,serif;font-size:clamp(17px,2vw,22px);line-height:1.45;color:#405249;margin:22px 0 25px;min-height:66px}.insight-bottom{border-top:1px solid #dfd9ca;padding-top:15px;display:flex;justify-content:space-between;color:#836f50;font-size:10px;font-weight:800;letter-spacing:.12em}.insight-bottom span:last-child{font-size:20px;line-height:10px}.week-section{margin:70px 0 58px;scroll-margin-top:32px}.week-heading{margin-bottom:22px}.week-heading h2{font-size:34px;margin-top:5px}.week-heading p{margin:5px 0 0;font-size:14px;color:#8c9890}.week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}.day-card{border:1px solid #e7e9e2;border-radius:14px;padding:20px 8px 19px;background:#fff;text-align:center;min-width:0;display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--ink);transition:transform .2s,border-color .2s,background .2s;min-height:172px}.day-card:hover{transform:translateY(-3px);border-color:#99bca1}.day-card[aria-pressed="true"]{border:2px solid #487d67;background:#edf4ea;padding:19px 7px 18px}.day-card .day-name{font-size:12px;font-weight:750}.day-card .day-icon{font-size:33px}.day-card strong{font-size:15px;white-space:nowrap}.day-card .min-temp{color:#a0a8a0;font-weight:500}.day-card .rain-prob{font-size:11px;color:#6695b7}.personalize{background:#e6ede5;border-radius:18px;padding:34px 39px;display:grid;grid-template-columns:1fr;gap:23px;scroll-margin-top:35px}.preference-heading{display:flex;justify-content:space-between;align-items:center}.preference-heading h2{font-size:31px;letter-spacing:-.05em;margin:6px 0}.preference-heading p{color:#688171;font-size:14px;max-width:550px;margin:0}.pref-decoration{color:#9dbb9c;font-size:80px;line-height:.7}.pref-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.pref-fields label{font-weight:750;font-size:12px;color:#416453}.pref-fields select{margin-top:8px;width:100%;border:1px solid #d6ded4;border-radius:10px;background:#fff;color:var(--ink);height:48px;padding:0 10px;font-size:13px}.saved-section{padding:51px 0 75px}.saved-section .section-heading{align-items:end}.saved-section .section-heading>p{font-size:13px;color:#88988a;margin:0}.favorite-places{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.place-chip{border:1px solid #d9e3d9;background:#fff;border-radius:40px;padding:11px 18px;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:650;color:#496a58}.place-chip:hover{background:#e8f0e7}.place-chip span{color:#c37e56}.empty-saved{color:#7c8c80;font-size:14px;margin:0}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e1e5da;padding:25px 0 35px;color:#8a978e;font-size:11px}.site-footer>div{display:flex;gap:16px;align-items:center}.site-footer strong{font-size:18px;letter-spacing:-.06em;color:var(--ink)}.site-footer p{margin:0;text-align:right}.site-footer a{color:#416953}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1150px){.app-shell{padding:0 30px}.intro{gap:25px}.dashboard{gap:15px}.weather-hero,.outfit-panel{padding-left:22px;padding-right:22px}.outfit-pieces{gap:6px}.piece-art{height:98px;font-size:45px}.below-grid{gap:15px}.week-days{gap:8px}}@media(max-width:850px){.site-header{min-height:88px}.main-nav{display:none}.intro{align-items:stretch;flex-direction:column;padding-top:40px;gap:28px}.search-area{max-width:580px;flex:initial}.dashboard{grid-template-columns:1fr}.weather-hero,.outfit-panel{min-height:430px}.hero-art{width:43%;top:0}.below-grid{grid-template-columns:1fr}.week-days{grid-template-columns:repeat(4,minmax(0,1fr))}.pref-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer{align-items:flex-start;flex-direction:column}.site-footer p{text-align:left}}@media(max-width:540px){.app-shell{padding:0 16px}.site-header{gap:10px;min-height:75px}.brand-mark{width:35px;height:35px}.brand-text{font-size:23px}.brand-text small{font-size:9px}.settings-shortcut{display:none}.intro{padding:34px 0 29px}.intro h1{font-size:clamp(39px,10vw,52px)}.intro-copy>p{font-size:14px}.search-area{gap:8px}.locate-btn{height:54px;width:50px}.weather-hero,.outfit-panel{border-radius:15px;padding:20px 19px;min-height:410px}.hero-art{width:57%;top:7%;right:-24px;opacity:.8}.hero-core h2{font-size:33px}.big-temp{font-size:108px}.hero-metrics span{font-size:9px}.hero-metrics strong{font-size:14px}.hero-metrics div+div{padding-left:10px}.outfit-panel>h2{font-size:34px}.piece-art{height:81px;font-size:38px}.outfit-pieces{gap:6px}.outfit-piece strong{font-size:11px}.outfit-piece small{font-size:10px}.content-panel{padding:22px 19px}.section-heading h2{font-size:24px}.week-section{margin:50px 0 35px}.week-heading h2{font-size:28px}.week-days{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.day-card{min-height:132px;padding:12px 6px;gap:5px}.day-card[aria-pressed="true"]{padding:11px 5px}.day-card .day-icon{font-size:27px}.personalize{padding:23px 19px}.preference-heading h2{font-size:27px}.pref-decoration{display:none}.pref-fields{grid-template-columns:1fr}.saved-section{padding:35px 0 50px}.saved-section .section-heading{align-items:start;flex-direction:column;gap:8px}.site-footer>div{flex-direction:column;align-items:start;gap:5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Refined visual system, readable type and predictable keyboard targets. */
:root{
  --paper:#f7f8f4;
  --ink:#203c35;
  --deep:#235849;
  --muted:#52695d;
  --line:#dce5dc;
  --shadow:0 18px 52px rgba(28,64,47,.075);
}
body{background:radial-gradient(ellipse 70% 28% at 88% 7%,rgba(232,226,200,.5),transparent 73%),radial-gradient(ellipse 66% 25% at 0% 30%,rgba(216,231,219,.33),transparent 70%),var(--paper);line-height:1.55}
.site-header{min-height:100px}
.brand-text small{font-size:12px;color:#4c6659;letter-spacing:0}
.main-nav{gap:22px}
.main-nav a{color:#4b6156;font-weight:650;font-size:14px;border-radius:10px;padding:12px 8px;min-height:44px;display:flex;align-items:center}
.main-nav a:hover,.main-nav a:focus-visible{background:#edf3ed}
.intro{padding-top:56px}
.intro-copy>p{color:#4a6257;font-size:16px;max-width:510px}
.intro h1{font-weight:750}
.eyebrow{font-size:12px;letter-spacing:.12em;color:#426b55}
.search-box>label{font-size:12px;color:#3c5a4b}
.subtle-hint{font-size:12px;color:#566f61}
.search-input-wrap{border:1px solid #cad9ce;box-shadow:0 8px 30px rgba(28,64,47,.06)}
.weather-hero,.outfit-panel,.content-panel{box-shadow:var(--shadow)}
.weather-hero{background:linear-gradient(130deg,#e5eee5 0%,#cbded0 100%);border:1px solid #cfdfd1}
.weather-hero[data-weather="sun"]{background:linear-gradient(132deg,#ebf3df 0%,#d4e6d4 100%)}
.weather-hero[data-weather="rain"]{background:linear-gradient(132deg,#e1eeee 0%,#c1d6db 100%)}
.weather-hero[data-weather="snow"]{background:linear-gradient(132deg,#e4eef3 0%,#d3e4e8 100%)}
.weather-hero[data-weather="cloud"]{background:linear-gradient(132deg,#e6eee7 0%,#d2e1d8 100%)}
.pill,.eyebrow,.section-badge{font-weight:750}
.hero-tools{display:flex;align-items:center;gap:8px;position:relative;z-index:2}
.refresh-btn{border:1px solid #adccba;background:#f9fff7ba;color:#235849;border-radius:50%;display:grid;place-items:center;width:42px;height:42px;transition:background .2s ease,transform .2s ease}
.refresh-btn:hover{background:#fff;transform:rotate(30deg)}
.refresh-btn svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hero-metrics span{font-size:12px;letter-spacing:.08em;color:#3c6752}
.hero-metrics strong{font-size:18px}
.feels{font-size:14px;color:#385c4a}
.outfit-panel{border:1px solid #e0e9df}
.outfit-subtitle{color:#50665b;font-size:15px}
.outfit-pieces{gap:13px;margin-bottom:18px}
.piece-art{background:linear-gradient(145deg,#f3f5ef,#eaf0e8);border:1px solid #e2e8e1;border-radius:15px}
.outfit-piece strong{font-size:14px;line-height:1.4}
.outfit-piece small{font-size:12px;line-height:1.45;color:#4e6459}
.stylist-note{border:1px solid #e0e9dc}
.stylist-note strong{font-size:14px}
.stylist-note p{font-size:13px;color:#4a6155}
.outfit-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:17px}
.outfit-footer>span{font-size:13px;color:#4c6359}
.text-button{font-size:14px;min-height:44px;padding:8px 4px}
.pack-list{border-top:1px solid #e5ece4;padding-top:13px;margin-top:18px}
.pack-list>strong{font-size:13px;color:#365447}
.pack-list ul{padding:0;display:flex;flex-wrap:wrap;list-style:none;gap:7px;margin:9px 0 0}
.pack-list li{border:1px solid #dbe7d8;background:#eef5eb;color:#345c48;padding:6px 10px;border-radius:9px;font-size:12px;font-weight:650;line-height:1.35}
.hour-item{flex-basis:77px}
.hour-item time{font-size:13px;color:#4c6557}
.hour-rain{font-size:12px;color:#325b76}
.section-badge{color:#536c5d;font-size:12px;border-color:#d5e2d6}
.insight-bottom{font-size:12px;color:#70542c}
.week-heading p,.week-section .section-heading>p{color:#516b5c}
.day-card{box-shadow:0 3px 15px rgba(39,82,48,.03);border-color:#d5e2d6}
.day-card:hover{background:#f6fbf5;border-color:#4f826a;box-shadow:0 14px 27px rgba(39,82,48,.08)}
.day-card[aria-pressed="true"]{box-shadow:0 0 0 2px #bcd5c1 inset;background:#eaf5e9}
.day-card .day-name{font-size:13px}
.day-card .min-temp{color:#526e5e}
.day-card .rain-prob{font-size:12px;color:#355e7a}
.preference-heading p{color:#426351}
.pref-fields label{font-size:13px}
.pref-fields select{font-size:14px;border-color:#b9d0bf}
.saved-section .section-heading>p,.empty-saved{font-size:14px;color:#4d6758}
.place-chip{font-size:14px;min-height:44px}
.site-footer{font-size:13px;color:#456052}
.site-footer a{color:#235849}
.about-section{scroll-margin-top:35px;margin-top:68px}
.about-section>.section-heading h2{font-size:clamp(26px,3.6vw,35px)}
.about-section>.section-heading p{margin:8px 0 0;color:#4d6758;font-size:15px}
.about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}
.about-grid details{border-radius:16px;background:#fff;border:1px solid #dce6db;padding:18px 22px;box-shadow:0 7px 18px rgba(31,75,49,.035)}
.about-grid summary{font-size:16px;font-weight:720;color:#264f3f;cursor:pointer;line-height:1.4;padding:5px 10px 5px 0}
.about-grid details[open]{background:#f6faf5}
.about-grid p{font-size:15px;color:#405b4b;line-height:1.7;margin:14px 0 3px}
.about-grid a{color:#235c48;text-decoration:underline;text-underline-offset:3px}
.about-grid summary:focus-visible{outline:3px solid #cf853f;outline-offset:3px}
.section-heading{gap:12px;flex-wrap:wrap}
@media(max-width:1050px){.main-nav{gap:6px}.main-nav a{padding:10px 6px;font-size:13px}}
@media(max-width:850px){
  .site-header{flex-wrap:wrap;min-height:0;padding:14px 0 12px;gap:5px 14px}
  .main-nav{display:flex;order:3;width:100%;overflow-x:auto;justify-content:space-between;scrollbar-width:thin;padding:4px 0}
  .main-nav a{white-space:nowrap;font-size:13px;flex-shrink:0;padding:10px 8px}
  .header-actions{margin-left:auto}
  .intro{padding-top:36px}
  .about-grid{grid-template-columns:1fr}
}
@media(max-width:540px){
  .app-shell{padding:0 16px}
  .brand-text small{font-size:11px}
  .intro{padding-top:32px}
  .intro-copy>p{font-size:15px}
  .eyebrow{font-size:11px}
  .hero-metrics span{font-size:11px}
  .hero-metrics strong{font-size:15px}
  .outfit-pieces{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 12px}
  .piece-art{height:108px;font-size:48px}
  .outfit-piece strong{font-size:14px}
  .outfit-piece small{font-size:12px}
  .outfit-panel{min-height:0}
  .pack-list li{font-size:12px}
  .day-card .day-name{font-size:13px}
  .main-nav a{font-size:12px}
  .hourly-items{margin-top:18px}
  .about-section{margin-top:48px}
  .about-grid details{padding:16px}
}

.favorite-place{display:inline-flex;align-items:center;background:#fff;border:1px solid #d9e3d9;border-radius:40px;overflow:hidden}
.favorite-place .place-chip{border:0;border-radius:0;padding-right:8px}
.remove-place{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:0;background:transparent;color:#355c48;font-size:24px}
.remove-place:hover{background:#f3e9e1;color:#8b4126}
@media(max-width:540px){.favorite-place{max-width:100%}.favorite-place .place-chip{min-width:0;text-align:left;white-space:normal}}
.pill{font-size:12px;letter-spacing:.07em}
.hero-date{color:#335b47}
.search-results button,.search-results button small{font-size:14px}

/* 2026 Wearwise studio: atmospheric forecast + approachable editorial wardrobe.
   This layer intentionally retains the existing functional components and responsive behavior. */
:root {
  --paper:#f2f6fd; --ink:#13264d; --deep:#132f62; --muted:#526682;
  --line:#dae3f0; --shadow:0 18px 46px rgba(28,60,115,.085);
}
html { scroll-padding-top:28px; }
body { background:radial-gradient(ellipse 55% 25% at 15% 7%,rgba(197,222,255,.8),transparent 84%),radial-gradient(ellipse 58% 24% at 92% 24%,rgba(199,222,255,.45),transparent 80%),#f2f6fd;color:var(--ink); }
.app-shell { max-width:1500px; padding:0 clamp(18px,3.8vw,62px); }
.site-header { position:relative;min-height:88px;gap:20px;border-bottom:1px solid #d9e4f2; }
.brand-mark { width:37px;height:37px; }
.brand-text { color:#102754;font-size:28px; }
.brand-text small {font-size:11px;letter-spacing:.01em;color:#506885; }
.brand-dot { color:#f59c35; }
.main-nav {display:flex;gap:10px;align-items:center;}
.main-nav a { color:#344d70;font-weight:650;padding:11px 13px;border-radius:99px;min-height:44px;white-space:nowrap; }
.main-nav a:hover,.main-nav a.active { color:#10315f;background:#e5eefb; }
.unit-toggle,.settings-shortcut {color:#1b3766;border-color:#cbd9ef;background:#fff;border-radius:14px;}
.intro { position:relative;margin-top:25px;margin-bottom:0;padding:45px 42px 28px;border-radius:26px 26px 0 0;overflow:visible;align-items:center;gap:20px;background:linear-gradient(110deg,rgba(229,242,255,.97),rgba(223,238,255,.72)),radial-gradient(circle at 84% 8%,#fff 3%,transparent 28%); }
.intro:before {content:"";position:absolute;right:9%;top:13px;width:150px;height:75px;border-radius:100px;background:rgba(255,255,255,.5);filter:blur(18px);pointer-events:none;}
.intro .intro-copy{z-index:1;max-width:670px;}
.intro h1 { color:#12295b;font-size:clamp(35px,4.6vw,66px);letter-spacing:-.065em;font-weight:790;line-height:1.06;margin:13px 0 12px; }
.intro h1 em {color:#214c88;font-style:normal;}
.intro-copy>p{color:#385376;max-width:610px;font-size:16px;}
.intro .eyebrow {color:#305994;font-weight:780;letter-spacing:.18em;}
.search-area {z-index:2;flex-shrink:1;max-width:385px;}
.search-box>label{color:#294771;}
.search-input-wrap {background:#fff;border:1px solid #b9d0ee;box-shadow:0 10px 28px rgba(24,64,128,.09);}
.search-input-wrap:focus-within {outline:3px solid #ffb746;outline-offset:2px;}
.locate-btn {color:#1d396a;border-color:#bbcee9;background:#fff;}
.dashboard {display:block;scroll-margin-top:24px;}
.weather-hero,.weather-hero[data-weather="sun"],.weather-hero[data-weather="rain"],.weather-hero[data-weather="snow"],.weather-hero[data-weather="cloud"] {
  padding:20px 42px 32px;min-height:298px;border-radius:0 0 26px 26px;border:0;
  background:linear-gradient(105deg,rgba(217,237,255,.92) 1%,rgba(212,233,255,.84) 63%,rgba(179,216,254,.5) 100%), url('./assets/clouds.webp') right center / auto 110% no-repeat;
  box-shadow:0 15px 45px rgba(52,99,162,.12);
}
.weather-hero[data-weather="rain"] {background-color:#dce4f2;}
.weather-hero[data-weather="snow"] {background-color:#e9f2fa;}
.hero-topline{position:relative;z-index:3;}
.pill-light{background:#fffdfbbd;color:#183f6d;border:1px solid #b4d0ed;font-size:11px;}
.weather-hero .hero-core {min-height:165px;padding-top:6px;}
.weather-hero .hero-date{color:#294d7b;font-size:14px;}
.weather-hero .hero-core h2 {color:#173264;font-size:clamp(23px,2.4vw,31px);}
.weather-hero .big-temp {font-size:clamp(80px,9vw,128px);letter-spacing:-.09em;color:#10295a;}
.weather-hero .hero-condition{color:#203c70;font-weight:750;}
.weather-hero .feels{color:#2c4e7b;font-weight:600;}
.hero-metrics{position:relative;z-index:2;border-color:#b3cceb;max-width:650px;}
.hero-metrics span{color:#43648f;font-size:12px;}
.hero-metrics strong{color:#183560;}
.weather-hero .hero-art{opacity:.75;right:25%;top:2%;transform:scale(.7);}
.weather-hero .sun-disc{box-shadow:0 0 75px #fffac3;}
.favorite-btn,.refresh-btn{background:#ffffffbd;color:#204b7d;border:1px solid #b1cbed;}
.week-section{margin:32px 0 20px;}
.week-heading h2{color:#112a59;font-size:clamp(27px,3.3vw,36px);}
.week-heading p{color:#4d668a;}
.week-days{gap:11px;}
.day-card{background:#fff;border:1px solid #dce6f6;box-shadow:0 7px 20px rgba(31,66,125,.035);min-height:155px;}
.day-card:hover{background:#f3f8ff;border-color:#8cb5ef;}
.day-card[aria-pressed="true"]{background:#e8f2ff;box-shadow:inset 0 0 0 2px #6097ed;border-color:#3579d5;}
.day-card .day-name{color:#183965;font-size:14px;}
.day-card .min-temp{color:#6681a0;}
.day-card .rain-prob{color:#305b85;}
.below-grid{margin-top:20px;grid-template-columns:1.65fr 1fr;gap:17px;}
.content-panel{border:1px solid #dce5f6;background:#fff;box-shadow:var(--shadow);}
.section-heading h2{color:#142b57;}
.section-badge{background:#eef4fe;border-color:#d8e5f7;color:#315b8d;}
.insight-panel{background:linear-gradient(135deg,#eef3ff,#e2ebff);}
.insight-bottom{color:#345b9d;}
/* Outfit look: large inspiration image, actual generated picks, practical guidance */
.outfit-panel{margin-top:24px;min-height:unset;border:1px solid #e3e9f6;border-radius:24px;background:#fff;padding:33px 35px 25px;overflow:hidden;box-shadow:var(--shadow);}
.outfit-panel .eyebrow {color:#3f6caa;}
.outfit-panel>h2{color:#132856;font-size:clamp(29px,3vw,39px);}
.outfit-panel>h2 em{color:#1d5291;}
.outfit-subtitle {color:#536786;font-size:15px;max-width:730px;}
.outfit-layout {display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,1fr);gap:18px;margin-top:17px;align-items:stretch;}
.outfit-visual{min-width:0;margin:0;border-radius:19px;background:#f5f7fc;border:1px solid #e6eaf3;padding:10px;display:flex;flex-direction:column;justify-content:center;align-items:center;}
.outfit-visual img {width:100%;max-width:275px;aspect-ratio:1;object-fit:contain;mix-blend-mode:multiply;border-radius:14px;}
.outfit-visual figcaption{font-size:12px;line-height:1.4;text-align:center;color:#455e81;max-width:260px;padding:6px 7px 9px;}
.outfit-pieces{display:grid;grid-template-columns:1fr;gap:9px;margin:0;align-content:start;}
.outfit-piece{min-width:0;display:grid;grid-template-columns:76px minmax(0,1fr);grid-template-rows:auto auto;align-content:center;text-align:left;gap:1px 12px;background:#fff;border:1px solid #e1e8f6;border-radius:13px;padding:7px 12px 7px 7px;}
.outfit-piece:hover{background:#f9fbff;}
.piece-art,.outfit-piece:nth-child(n) .piece-art{grid-row:span 2;width:76px;height:67px;border-radius:10px;background:#f1f5fb;border:0;font-size:25px;overflow:hidden;}
.piece-art img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;}
.outfit-piece strong{font-size:14px;color:#142d58;align-self:end;}
.outfit-piece small{font-size:12px;color:#526886;align-self:start;}
.outfit-advice{border-radius:17px;background:linear-gradient(135deg,#f0f5ff,#eef1ff);padding:20px;display:flex;flex-direction:column;gap:12px;}
.stylist-note{background:transparent;border:0;padding:0;box-shadow:none;}
.stylist-note strong{color:#233d6e;font-size:16px;}
.stylist-note p{color:#3d5278;font-size:14px;line-height:1.55;}
.pack-list{border-top:1px solid #ceddf3;margin:0;padding-top:14px;}
.pack-list>strong{color:#263f71;font-size:15px;}
.pack-list ul{display:grid;gap:8px;list-style:none;}
.pack-list li{color:#27456f;background:#fff;border-color:#d5e4f7;font-size:13px;}
.pack-list li:before{content:'✓';font-weight:900;color:#2b7eae;margin-right:8px;}
.outfit-footer>span {color:#3f5679;}
.text-button{color:#285c9b;}
/* Filters and fully interactive clothing ideas. */
.wardrobe-section{margin:24px 0 34px;padding:31px 34px;border:1px solid #dfe9f7;border-radius:24px;background:#fff;box-shadow:var(--shadow);scroll-margin-top:28px;}
.wardrobe-head{align-items:end;}
.wardrobe-head .eyebrow{color:#426b9b;}
.wardrobe-head h2{font-size:clamp(27px,3.2vw,35px);}
.wardrobe-head p{max-width:710px;font-size:14px;color:#4a6386;margin:6px 0 0;line-height:1.6;}
.reset-wardrobe{color:#244b87;border:1px solid #cbdaf0;background:#f8fbff;border-radius:12px;padding:12px 17px;min-height:44px;font-size:13px;font-weight:750;white-space:nowrap;}
.wardrobe-filters{display:flex;flex-wrap:wrap;gap:9px;margin:21px 0 17px;}
.wardrobe-filter{min-height:44px;border-radius:99px;border:1px solid #dfebfa;color:#365783;background:#f1f5fc;padding:8px 16px;font-size:13px;font-weight:750;}
.wardrobe-filter:hover{border-color:#91b7ed;background:#e5effc;}
.wardrobe-filter[aria-pressed="true"]{background:#123b7d;color:#fff;border-color:#123b7d;}
.wardrobe-items{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:11px;}
.wardrobe-card{display:flex;flex-direction:column;text-align:left;gap:5px;min-width:0;border:1px solid #e0e8f4;background:#fff;border-radius:14px;padding:7px 8px 10px;transition:border-color .15s,transform .15s,box-shadow .15s;color:#1b325c;min-height:193px;}
.wardrobe-card:hover{border-color:#7ca5dd;transform:translateY(-2px);box-shadow:0 12px 22px rgba(33,65,120,.12);}
.wardrobe-card[aria-pressed="true"]{border-color:#2465bb;background:#f1f7ff;box-shadow:inset 0 0 0 1px #2465bb;}
.wardrobe-image{height:105px;width:100%;position:relative;display:grid;place-items:center;overflow:hidden;border-radius:10px;background:#f6f8fc;}
.wardrobe-image>img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;}
.wardrobe-card strong{font-size:13px;line-height:1.3;color:#1a315c;}
.wardrobe-type{text-transform:capitalize;font-size:12px;color:#516784;}
.wardrobe-action{margin-top:auto;font-size:12px;font-weight:750;color:#235c9e;}
.wardrobe-match{position:absolute;top:3px;left:3px;border-radius:6px;background:#e4f2ff;color:#204e88;padding:3px 5px;font-size:9px;font-weight:800;line-height:1.1;}
.wardrobe-footnote{color:#5a6e87;font-size:12px;margin:18px 2px 0;line-height:1.5;}
.personalize{background:#edf3ff;border-color:#d7e3f6;}
.preference-heading h2{color:#173565;}
.preference-heading p{color:#506781;}
.pref-fields label{color:#2c4b78;}
.pref-fields select{color:#1a3159;border-color:#b9cde8;}
.about-grid details{border-color:#dae4f3;}
.about-grid summary{color:#183967;}
.about-grid details[open]{background:#f1f6ff;}
.about-grid p{color:#455d7c;}
.about-grid a,.site-footer a{color:#1d579b;}
.site-footer{color:#4f6480;border-color:#d9e6f4;}
.favorite-place .place-chip{color:#274d84;background:#fff;border-color:#cbdcf1;}
:focus-visible{outline:3px solid #eb921f!important;outline-offset:3px!important;}
@media(max-width:1220px){.wardrobe-items{grid-template-columns:repeat(5,minmax(0,1fr));}.outfit-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);}.outfit-advice{grid-column:span 2;}.outfit-pieces{align-content:center;}}
@media(max-width:850px){.site-header{min-height:78px;flex-wrap:wrap;justify-content:space-between;padding:12px 0;}.main-nav{display:flex;order:3;width:100%;overflow:auto hidden;gap:5px;scrollbar-width:thin;padding:2px 0 4px;}.main-nav a{font-size:13px;padding:9px 13px;}.intro{padding:38px 26px 22px;align-items:stretch;}.search-area{max-width:100%;}.weather-hero,.weather-hero[data-weather="sun"],.weather-hero[data-weather="rain"],.weather-hero[data-weather="snow"],.weather-hero[data-weather="cloud"]{min-height:345px;padding:22px 28px;background-position:right center;}.hero-art{display:none;}.week-days{grid-template-columns:repeat(4,minmax(0,1fr));}.wardrobe-items{grid-template-columns:repeat(4,minmax(0,1fr));}.outfit-layout{grid-template-columns:1fr 1fr;}.outfit-advice{grid-column:span 2;}}
@media(max-width:590px){.app-shell{padding:0 13px;}.brand-text{font-size:25px;}.brand-text small{font-size:10px;}.main-nav{gap:2px;}.site-header{min-height:75px;}.intro{margin-top:12px;padding:29px 21px 17px;border-radius:20px 20px 0 0;gap:20px;}.intro h1{font-size:clamp(36px,9.5vw,47px);}.intro-copy>p{font-size:14px;}.intro .eyebrow{font-size:11px;}.weather-hero,.weather-hero[data-weather="sun"],.weather-hero[data-weather="rain"],.weather-hero[data-weather="snow"],.weather-hero[data-weather="cloud"]{border-radius:0 0 20px 20px;padding:18px 21px 25px;min-height:340px;background-size:auto 100%;}.weather-hero .big-temp{font-size:100px;}.weather-hero .hero-core h2{font-size:26px;}.weather-hero .hero-core{min-height:184px;}.hero-metrics span{font-size:10px;}.hero-metrics strong{font-size:14px;}.week-section{margin:28px 0 18px;}.week-days{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 1px 14px;gap:9px;}.day-card{min-width:117px;flex:0 0 117px;scroll-snap-align:start;min-height:141px;}.below-grid{margin-top:15px;gap:15px;}.outfit-panel{padding:24px 19px;border-radius:18px;margin-top:17px;}.outfit-layout{grid-template-columns:1fr;gap:12px;}.outfit-visual{max-width:none;min-height:210px;}.outfit-visual img{max-width:250px;}.outfit-pieces{grid-template-columns:1fr;}.outfit-advice{grid-column:auto;}.outfit-piece{grid-template-columns:78px minmax(0,1fr);}.wardrobe-section{margin:19px 0;padding:24px 16px;border-radius:18px;}.wardrobe-head{align-items:flex-start;}.wardrobe-filters{gap:7px;}.wardrobe-filter{padding:8px 12px;font-size:12px;}.wardrobe-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}.wardrobe-card{min-height:191px;}.wardrobe-image{height:111px;}.wardrobe-head h2{font-size:27px;}.about-section{margin-top:40px;}}
@media(min-width:460px) and (max-width:590px){.wardrobe-items{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:350px){.site-header{gap:7px;}.brand-mark{width:29px;height:29px;}.brand-text{font-size:22px;}.header-actions{gap:6px;}.intro{padding-left:16px;padding-right:16px;}.weather-hero,.weather-hero[data-weather="sun"],.weather-hero[data-weather="rain"],.weather-hero[data-weather="snow"],.weather-hero[data-weather="cloud"]{padding-left:16px;padding-right:16px;}.hero-metrics div+div{padding-left:6px;}.wardrobe-card strong{font-size:12px;}}
@media(prefers-reduced-motion:reduce){.wardrobe-card,.refresh-btn{transition:none;}}

.weather-hero .hero-art{display:none;}

/* WEARWISE WEATHER-STUDIO: expressive, functional, lightweight CSS and SVG weather artwork. */
:root{--paper:#f3f7ff;--ink:#142b50;--deep:#193f7a;--muted:#465e83;--line:#dfe8f7;--shadow:0 14px 46px rgba(26,51,97,.085)}
body{background:linear-gradient(180deg,#eef4ff 0,#f8faff 900px,#f4f7fd 100%);color:var(--ink)}
.site-header{border-bottom-color:#dbe5f4}.brand-text,.main-nav a{color:#17305a}.intro h1 em{font:inherit;font-weight:750;color:#315eaa}.intro .eyebrow{color:#31629f}
.weather-hero,.weather-hero[data-weather="sun"],.weather-hero[data-weather="partly"],.weather-hero[data-weather="cloud"],.weather-hero[data-weather="rain"],.weather-hero[data-weather="storm"],.weather-hero[data-weather="snow"],.weather-hero[data-weather="fog"]{background-image:linear-gradient(125deg,#b8ddff 0%,#c5e3ff 50%,#e6edff 100%);background-color:#c4e3ff;border:1px solid #b7d2f3;box-shadow:0 14px 35px rgba(44,90,150,.1);min-height:360px}
.weather-hero[data-scene="sun"]{background-image:linear-gradient(120deg,#bfe7ff,#f4e9c8)}
.weather-hero[data-scene="cloud"]{background-image:linear-gradient(120deg,#a9cae8,#d9e4f4)}
.weather-hero[data-scene="rain"]{background-image:linear-gradient(120deg,#a6bddb,#ccd6ed)}
.weather-hero[data-scene="snow"]{background-image:linear-gradient(120deg,#bedcf5,#f0f6fc)}
.weather-hero[data-scene="storm"]{background-image:linear-gradient(120deg,#667b9e,#9cacc8);color:#fff}
.weather-hero[data-scene="night"]{background-image:linear-gradient(120deg,#26375d,#455e96);color:#fff}
.weather-hero[data-scene="fog"]{background-image:linear-gradient(120deg,#c9d6e9,#edf1f8)}
.weather-hero .hero-core{min-height:230px}.weather-hero .hero-weather-copy{max-width:58%;z-index:3}
.weather-hero .hero-art.weather-puff{display:flex;opacity:1;position:absolute;right:-4%;top:-8%;width:63%;height:120%;z-index:1;transform:none;align-items:center;justify-content:center;pointer-events:none}
.weather-puff svg{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 3px 4px rgba(52,81,140,.09))}
.weather-puff-caption{position:absolute;clip-path:inset(50%);width:1px;height:1px;white-space:nowrap;overflow:hidden}
.weather-puff .scene-moon,.weather-puff .scene-stars,.weather-puff .scene-rain,.weather-puff .scene-snow,.weather-puff .scene-bolt,.weather-puff .scene-fog{display:none}
.weather-hero[data-scene="rain"] .scene-rain,.weather-hero[data-scene="storm"] .scene-rain,.weather-hero[data-scene="storm"] .scene-bolt,.weather-hero[data-scene="snow"] .scene-snow,.weather-hero[data-scene="fog"] .scene-fog,.weather-hero[data-scene="night"] .scene-moon,.weather-hero[data-scene="night"] .scene-stars{display:block}
.weather-hero[data-scene="night"] .scene-sun,.weather-hero[data-scene="storm"] .scene-sun,.weather-hero[data-scene="rain"] .scene-sun,.weather-hero[data-scene="cloud"] .scene-sun,.weather-hero[data-scene="fog"] .scene-sun,.weather-hero[data-scene="snow"] .scene-sun{display:none}
.weather-hero[data-scene="sun"] .puff-body{opacity:.15;transform:translate(40px,35px) scale(.67);transform-origin:center}
.weather-hero[data-scene="rain"] .puff-body,.weather-hero[data-scene="storm"] .puff-body{fill:url(#darkFill)}
.weather-hero[data-scene="night"] .puff-body{opacity:.7}
.weather-hero[data-scene="fog"] .puff-body{opacity:.68}
.weather-hero[data-scene="storm"] .hero-condition,.weather-hero[data-scene="storm"] .hero-date,.weather-hero[data-scene="storm"] .hero-core h2,.weather-hero[data-scene="storm"] .big-temp,.weather-hero[data-scene="storm"] .feels,.weather-hero[data-scene="storm"] .hero-metrics span,.weather-hero[data-scene="night"] .hero-condition,.weather-hero[data-scene="night"] .hero-date,.weather-hero[data-scene="night"] .hero-core h2,.weather-hero[data-scene="night"] .big-temp,.weather-hero[data-scene="night"] .feels,.weather-hero[data-scene="night"] .hero-metrics span{color:#fff}
.weather-hero[data-scene="storm"] .pill-light,.weather-hero[data-scene="night"] .pill-light{background:#f2f6ffdd;color:#183c74}
.weather-hero[data-scene="storm"] .hero-metrics,.weather-hero[data-scene="night"] .hero-metrics{border-color:#ffffff6b}
.weather-hero .hero-metrics span{font-size:11px;color:#294a77;letter-spacing:.075em}
.weather-hero .hero-metrics strong{color:inherit}.hero-metrics{gap:8px}
/* Outfit preview updates as soon as a new look or item is chosen. */
.look-preview{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:9px;max-width:330px}
.look-preview-tile{min-width:0;background:#eaf1fc;border:1px solid #d9e6f6;border-radius:13px;display:flex;flex-direction:column;align-items:center;overflow:hidden;padding:5px 3px 7px}
.look-preview-tile img{width:100%;height:110px;object-fit:contain;mix-blend-mode:multiply;max-width:160px}
.look-preview-tile span{max-width:100%;padding:1px 3px;color:#304c79;font-weight:650;font-size:12px;text-align:center;line-height:1.2}
.outfit-visual{justify-content:flex-start}.outfit-visual figcaption{font-size:13px;color:#3b557a}
.alternatives-section,.day-insights{margin:30px 0 24px;scroll-margin-top:25px}
.alternatives-section .section-heading,.day-insights .section-heading{margin-bottom:17px}
.alternatives-section h2,.day-insights h2,.trip-panel h2{color:#142d59;font-size:clamp(24px,2.8vw,34px);letter-spacing:-.045em}
.alternatives-section p,.day-insights .section-heading p,.trip-panel p{font-size:14px;color:#496286;max-width:760px}
.look-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.look-option{display:flex;flex-direction:column;gap:7px;align-items:start;text-align:left;min-width:0;border:1px solid #d9e4f7;background:#fff;border-radius:17px;padding:13px;min-height:185px;color:#1b355e;transition:transform .15s,box-shadow .15s}
.look-option:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.look-option[aria-pressed="true"]{border-color:#2b70c2;background:#edf5ff;box-shadow:inset 0 0 0 2px #2b70c2}
.look-option strong{font-size:16px}.look-option small{font-size:13px;color:#4c6384;line-height:1.4}
.look-strip{display:flex;align-items:center;gap:3px;width:100%;height:84px;background:#f0f5fc;border-radius:10px;padding:5px}
.look-strip img{min-width:0;width:33%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.insight-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.day-insight-card{min-width:0;padding:22px;border-radius:18px;background:#fff;border:1px solid #dae7f9;box-shadow:var(--shadow)}
.day-insight-card h3,.trip-panel h3{font-size:18px;margin:0 0 14px;letter-spacing:-.025em;color:#183c71}
.day-insight-card p{font-size:15px;line-height:1.6;color:#30496f;margin:0 0 12px}
.day-insight-card small{display:block;color:#596e8a;font-size:12px;line-height:1.5}
.commute-row{display:flex;flex-direction:column;border-bottom:1px solid #e6eef9;gap:4px;padding:5px 0 11px;margin-bottom:9px;color:#344f76;font-size:13px}
.commute-row:last-child{border-bottom:0}.commute-row strong{color:#173c70;font-size:14px}
.trip-panel{display:grid;grid-template-columns:1fr 1fr;gap:25px;background:linear-gradient(130deg,#e5edff,#f6f8ff);border:1px solid #d8e4f9;border-radius:21px;padding:26px 30px;margin:29px 0}
.trip-panel h2{margin:7px 0 10px}.trip-panel h3{margin:0 0 10px}.trip-days{font-size:13px;font-weight:700;color:#264f85;margin:13px 0}
.trip-items{padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;list-style:none}
.trip-items li{border:1px solid #d9e6f9;background:#fff;border-radius:9px;padding:10px;color:#2a456b;font-size:13px}
.trip-items li:before{content:'✓ ';color:#2c71c0;font-weight:900}
.trip-panel .trip-footnote{font-size:12px;margin-top:14px;line-height:1.5}
.hourly-chart{height:115px;border-radius:13px;background:linear-gradient(180deg,#f7faff,#eef5ff);margin:10px 0 14px}
.hourly-chart svg{height:100%;width:100%}
/* Keep clothing labels legible, artwork separate from meaningful text. */
.wardrobe-card strong,.wardrobe-action{font-size:13px}.wardrobe-type{font-size:13px}.wardrobe-match{font-size:11px;background:#fff;color:#1b457f;padding:4px 6px}
.wardrobe-image{min-height:114px}.wardrobe-image>img{object-fit:contain}
.about-grid summary{font-size:16px}.about-grid p{font-size:15px;line-height:1.65}
button:not(:disabled){touch-action:manipulation}
@media(max-width:1050px){.look-options{grid-template-columns:repeat(2,minmax(0,1fr))}.insight-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.day-insight-card:last-child{grid-column:span 2}}
@media(max-width:850px){.weather-hero .hero-art.weather-puff{display:flex;right:0;top:0;width:55%;height:105%}.weather-hero .hero-core{min-height:224px}}
@media(max-width:590px){.weather-hero .hero-art.weather-puff{display:flex;right:-18%;top:5%;width:71%;height:94%;opacity:.78}.weather-hero .hero-weather-copy{max-width:70%}.weather-hero .big-temp{font-size:clamp(69px,17vw,99px)}.weather-hero .hero-condition{font-size:17px}.weather-hero .hero-core{min-height:196px}.weather-hero .hero-core h2{font-size:24px}.weather-hero .hero-metrics span{font-size:10px}.weather-hero .hero-metrics strong{font-size:12px;white-space:normal}.look-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.look-option{padding:10px;min-height:190px}.look-option strong{font-size:15px}.look-option small{font-size:12px}.look-strip{height:70px}.insight-cards{grid-template-columns:1fr}.day-insight-card:last-child{grid-column:auto}.trip-panel{grid-template-columns:1fr;padding:20px;gap:16px}.trip-items{grid-template-columns:1fr 1fr}.look-preview-tile img{height:104px}.outfit-visual img{max-width:initial}.wardrobe-image{min-height:110px}}
@media(max-width:350px){.weather-hero .hero-art.weather-puff{right:-22%;width:75%}.weather-hero .hero-weather-copy{max-width:67%}.weather-hero .big-temp{font-size:70px}.look-option{min-height:215px}.trip-items{grid-template-columns:1fr}}
@media(prefers-reduced-motion:no-preference){.puff-body{animation:puffFloat 7s ease-in-out infinite alternate}@keyframes puffFloat{0%{transform:translateY(2px)}100%{transform:translateY(-7px)}}}
@media(prefers-reduced-motion:reduce){.puff-body,.look-option{animation:none!important;transition:none!important}}


/* OpenArt's locally hosted dimensional artwork, with built-in SVG fallback. */
.weather-puff>.weather-3d-image{position:absolute;z-index:3;display:block;left:0;top:0;width:100%;height:100%;object-fit:contain;opacity:0;filter:drop-shadow(0 16px 23px rgba(37,71,119,.15));transition:opacity .22s ease;pointer-events:none}
.weather-puff.has-3d>.weather-3d-image{opacity:1}
.weather-puff.has-3d>svg{opacity:0}
.weather-hero[data-night="true"]:not([data-scene="night"]){background-image:linear-gradient(120deg,#30466b,#657aa1);color:#fff}
.weather-hero[data-night="true"]:not([data-scene="night"]) .hero-date,
.weather-hero[data-night="true"]:not([data-scene="night"]) .hero-condition,
.weather-hero[data-night="true"]:not([data-scene="night"]) .hero-weather-copy,
.weather-hero[data-night="true"]:not([data-scene="night"]) .hero-metrics span{color:#fff}
.weather-hero[data-night="true"]:not([data-scene="night"]) .hero-metrics{border-color:#ffffff66}
.weather-hero[data-night="true"]:not([data-scene="night"]) .pill-light{color:#193b71;background:#eef5ff}
.weather-hero[data-variant="freezing"]{box-shadow:inset 0 0 0 2px #7ec6ea55}
.weather-hero[data-variant="hail"]{box-shadow:inset 0 0 0 2px #fff4ab88}
.weather-hero[data-intensity="heavy"] .weather-3d-image{filter:drop-shadow(0 18px 30px rgba(34,64,114,.26)) saturate(1.05)}
.wardrobe-image>img,.piece-art>img,.look-preview-tile img,.look-strip img{mix-blend-mode:normal;object-fit:contain}
.weather-hero .weather-puff-caption{display:none}
@media (max-width:590px){.weather-puff>.weather-3d-image{object-fit:contain;filter:drop-shadow(0 8px 12px rgba(20,50,88,.1))}}
@media (prefers-reduced-motion:reduce){.weather-puff>.weather-3d-image{transition:none!important}}

/* Audit polish: readable mobile labels without changing the information hierarchy. */
@media (max-width:590px){.hero-metrics span{font-size:12px}.brand-text small{font-size:12px}.wardrobe-card strong{font-size:13px}.wardrobe-footnote{font-size:13px}}
