
:root{--bg:#f5f5f0;--paper:#fff;--ink:#20241f;--muted:#747c70;--accent:#c7ee88;--line:#e2e5dc;--danger:#a33732;--radius:24px;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid #64833e;outline-offset:4px}button:disabled{cursor:wait;opacity:.55}input,select,textarea{width:100%;min-height:48px;border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff;color:var(--ink)}label{font-size:14px;display:grid;gap:8px}p{line-height:1.7}small,.muted{color:var(--muted)}small{font-size:13px}h1,h2,h3,p{margin-top:0}h1{font-size:38px;line-height:1.35;letter-spacing:-1.4px;margin-bottom:12px}h2{font-size:24px;letter-spacing:-.5px}h3{font-size:18px}svg.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.shell{max-width:1480px;margin:auto;display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh}.sidebar{padding:36px 25px;position:sticky;top:0;height:100vh;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;font-size:22px;font-weight:750;letter-spacing:-1px}.brand img{width:42px;height:42px}.brand small{display:block;font-size:10px;letter-spacing:2.2px;margin-top:3px}.nav{display:grid;gap:10px;margin-top:55px}.nav button{background:none;border:0;border-radius:14px;text-align:left;padding:16px;display:flex;align-items:center;gap:12px;color:var(--muted);font-weight:550}.nav button.active{background:var(--ink);color:#fff}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;font-size:13px;color:var(--muted);line-height:1.8}.main{padding:30px 45px 50px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;font-size:14px;color:var(--muted)}.avatar{height:36px;width:36px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center}.mode{display:inline-flex;align-items:center;gap:8px;border:1px solid #dce8ce;background:#eff7e7;border-radius:99px;font-size:12px;padding:6px 12px;color:#4c6530}.eyebrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.title-row{margin-bottom:28px}.button{border:0;border-radius:14px;padding:14px 20px;background:var(--ink);color:white;font-weight:550;display:inline-flex;gap:10px;align-items:center;justify-content:center;min-height:48px}.button.lime{background:var(--accent);color:var(--ink)}.button.secondary{background:white;border:1px solid var(--line);color:var(--ink)}.button.ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}.button.danger{color:var(--danger);background:#fff0ee}.button.small{padding:9px 12px;min-height:38px;font-size:13px}.full{width:100%}.hero{display:grid;grid-template-columns:1.15fr 1fr;background:#20271f;color:#fff;border-radius:28px;overflow:hidden;min-height:290px;margin-bottom:24px}.hero-copy{padding:32px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero h2{font-size:32px;font-weight:500;line-height:1.5;margin-bottom:10px}.hero p{font-size:14px;color:#bdc7b7;max-width:330px}.hero-art{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:30px;background:#2c3629;transform:rotate(-4deg) scale(1.04)}.hero-tile{background:#edf0e4;border-radius:18px;display:grid;place-items:center;overflow:hidden;min-height:100px;color:#66775a}.hero-tile img{width:100%;height:100%;object-fit:contain;max-height:130px}.hero-tile.empty{border:1px dashed #829975;background:transparent;color:#becdad}.hero-tile .icon{width:40px;height:40px}.two-col{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:24px}.card{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.card h3{margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field-wide{grid-column:1/-1}.choices{display:flex;flex-wrap:wrap;gap:9px}.chip{border:1px solid var(--line);padding:10px 15px;border-radius:99px;background:#fff;font-size:14px;white-space:nowrap}.chip.selected{background:var(--ink);border-color:var(--ink);color:#fff}.section-label{display:flex;align-items:center;gap:10px;margin-bottom:18px}.section-label b{background:var(--bg);border-radius:8px;padding:6px;font-size:12px;color:var(--muted)}.notice{font-size:13px;line-height:1.65;color:#697361;background:#f4f7ee;padding:14px;border-radius:12px;margin:16px 0}.notice.error{color:var(--danger);background:#fff0ee}.quota-num{font-size:62px;line-height:1;letter-spacing:-3px;font-weight:500}.quota-num small{font-size:16px;letter-spacing:0}.quota-bar{height:6px;border-radius:3px;background:var(--accent);margin:22px 0}.stat-row{display:flex;justify-content:space-between;margin-top:12px;font-size:14px}.line{height:1px;background:var(--line);margin:22px 0}.empty-state{text-align:center;padding:40px 20px}.empty-state > .icon{width:46px;height:46px;color:#9ca792;margin-bottom:14px}.empty-state h3{margin:10px 0}.empty-state p{color:var(--muted);font-size:14px;max-width:320px;margin:0 auto 20px}.toolbar{display:flex;gap:14px;align-items:center;justify-content:space-between;margin:24px 0}.search{position:relative;max-width:280px}.search input{padding-left:42px;background:transparent}.search svg{position:absolute;left:13px;top:13px;color:var(--muted)}.filters{display:flex;gap:8px;overflow:auto;padding-bottom:5px}.wardrobe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.item-card{padding:0;text-align:left;background:transparent;border:0;min-width:0}.item-photo{position:relative;aspect-ratio:4/5;background:#eaece5;border-radius:18px;overflow:hidden;margin-bottom:12px}.item-photo img{width:100%;height:100%;object-fit:contain}.item-photo .badge{position:absolute;top:12px;left:12px;background:#fff8;padding:5px 8px;border-radius:8px;font-size:11px}.item-photo .wash{position:absolute;bottom:12px;left:12px;background:#fff;padding:6px 9px;font-size:12px;border-radius:8px}.item-card h3{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0 0 6px}.item-card p{font-size:12px;color:var(--muted);margin:0}.upload-card{border:1.5px dashed #b6c2ab;border-radius:18px;aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;background:#eef3e8;color:#60704e}.outfits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.outfit-card{border:1px solid var(--line);border-radius:20px;padding:16px;background:white}.outfit-collage{display:grid;grid-template-columns:1fr 1fr;gap:7px;background:#eff0e9;border-radius:14px;padding:10px;margin-bottom:16px}.outfit-collage img{width:100%;height:130px;object-fit:contain;border-radius:8px;background:#fff}.outfit-collage img:first-child{grid-row:span 2;height:267px}.outfit-card h3{margin:8px 0}.outfit-card p{font-size:13px;color:var(--muted);min-height:45px}.outfit-actions{display:flex;flex-wrap:wrap;gap:6px}.outfit-actions button{flex:1}.history-block{margin-bottom:28px}.history-date{font-size:14px;color:var(--muted);margin-bottom:13px}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.menu-row{display:flex;align-items:center;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line);font-size:14px}.ledger{margin-top:20px;max-height:330px;overflow:auto}.ledger .menu-row{font-size:13px}.login-screen{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.login-brand{background:#20271f;color:white;padding:60px;display:flex;flex-direction:column}.login-brand h1{margin-top:auto;font-size:64px;font-weight:450;line-height:1.3;letter-spacing:-3px}.login-brand p{color:#bdc7b7;max-width:350px;margin-bottom:auto}.login-count{display:flex;gap:50px;border-top:1px solid #495243;padding-top:28px}.login-count b{font-size:32px;font-weight:500;display:block;color:var(--accent)}.login-count span{font-size:13px;color:#c4ccb9}.login-form{padding:60px;display:flex;flex-direction:column;justify-content:center;max-width:570px;margin:auto;width:100%}.login-form h2{font-size:32px;font-weight:550}.check-line{display:flex;align-items:flex-start;gap:10px;margin:24px 0;font-size:13px;line-height:1.8}.check-line input{width:18px;min-height:18px;margin-top:3px;accent-color:#4e702b}.check-line a{text-decoration:underline}.loading{padding:80px;text-align:center}.spinner{display:inline-block;width:30px;height:30px;border:3px solid #dce3d5;border-top-color:#4b6730;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}#toast{position:fixed;bottom:36px;left:50%;transform:translateX(-50%);z-index:100;background:#20271f;color:white;border-radius:14px;padding:14px 20px;box-shadow:0 4px 30px #0002;display:none;max-width:90%;font-size:14px}dialog{border:0;border-radius:24px;padding:30px;width:min(560px,calc(100% - 32px));max-height:90vh;box-shadow:0 30px 100px #0003}dialog::backdrop{background:#16201475;backdrop-filter:blur(4px)}dialog h2{margin-right:32px}dialog .close{float:right;border:0;background:#edf0e7;border-radius:50%;height:34px;width:34px}dialog .edit-image{width:100%;height:230px;object-fit:contain;background:#f0f1eb;border-radius:16px;margin-bottom:20px}.bottom-nav{display:none}.error-banner{margin-bottom:20px;color:var(--danger)}.mini-note{font-size:12px;margin-top:14px;color:var(--muted);text-align:center}.progress{width:100%;accent-color:#6e943c}.page-enter{animation:enter .25s ease}@keyframes enter{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}@media(min-width:1400px){.main{padding:36px 55px}.wardrobe-grid{gap:22px}}@media(max-width:1100px){.shell{grid-template-columns:190px 1fr}.sidebar{padding:28px 18px}.main{padding:24px}.brand{font-size:19px}.wardrobe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero h2{font-size:27px}.outfits{grid-template-columns:1fr 1fr}.outfit-card:last-child{grid-column:1/-1}.outfit-card:last-child .outfit-collage{grid-template-columns:repeat(3,1fr)}.outfit-card:last-child .outfit-collage img{height:160px;grid-row:auto}}@media(max-width:760px){.shell{display:block}.sidebar{display:none}.main{padding:22px 20px 110px}.topbar{margin-bottom:26px}.topbar .muted{font-size:12px}h1{font-size:29px}.title-row{align-items:flex-start;margin-bottom:22px}.title-row .button{padding:10px 13px;font-size:13px;min-height:42px}.hero{min-height:250px;grid-template-columns:1.2fr .85fr;border-radius:22px}.hero-copy{padding:24px 20px}.hero h2{font-size:23px}.hero p{font-size:12px}.hero-art{padding:20px 12px;gap:8px}.hero-tile{min-height:90px;border-radius:12px}.hero .button{font-size:13px;padding:12px 15px}.two-col,.account-grid{grid-template-columns:1fr}.card{padding:22px}.two-col>.card:last-child{order:2}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fffffff5;backdrop-filter:blur(15px);border-top:1px solid var(--line);padding:10px 12px calc(12px + env(safe-area-inset-bottom));z-index:20;justify-content:space-around}.bottom-nav button{border:0;background:none;color:#8a9382;display:grid;justify-items:center;gap:5px;font-size:11px;min-width:75px}.bottom-nav button.active{color:#26391b;font-weight:700}.bottom-nav button.active svg{background:var(--accent);box-sizing:content-box;padding:4px 18px;border-radius:99px;margin-top:-4px;margin-bottom:-4px}.toolbar{align-items:stretch;flex-direction:column}.search{max-width:none}.wardrobe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.outfits{grid-template-columns:1fr}.outfit-card:last-child{grid-column:auto}.outfit-card:last-child .outfit-collage{grid-template-columns:1fr 1fr}.outfit-card:last-child .outfit-collage img{height:130px}.outfit-card:last-child .outfit-collage img:first-child{grid-row:span 2;height:267px}.login-screen{display:block}.login-brand{padding:30px;min-height:320px}.login-brand h1{font-size:38px;margin-top:35px;letter-spacing:-1.5px}.login-brand p{font-size:13px;margin-bottom:0}.login-count{display:none}.login-form{padding:30px 24px 50px}.login-form h2{font-size:26px}.brand small{font-size:9px}.login-brand .brand{font-size:20px}.login-brand .brand img{width:34px;height:34px}.form-grid{gap:14px}dialog{padding:24px 20px}#toast{bottom:100px}.quota-num{font-size:52px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}

.title-row > .button{flex-shrink:0;white-space:nowrap}.title-row>div{min-width:0}

/* A fixed app frame on phones; only second-level content scrolls. */
.city-search-row{display:flex;gap:8px}.city-search-row input{min-width:0}.city-result{display:grid;gap:5px;width:100%;padding:15px;text-align:left;background:#f4f6ef;border:0;border-radius:12px;margin:8px 0}.city-result small{line-height:1.5}#city-search-status{font-size:14px;color:var(--muted);margin-top:14px}.weather-consent,.weather-attribution{font-size:12px;color:var(--muted);line-height:1.7}.weather-consent{margin:12px 0 20px}.weather-attribution{margin:20px 0 0}
@media(max-width:700px){
 body.mobile-app{height:100vh;height:100dvh;overflow:hidden;overscroll-behavior:none}
 .mobile-app #app{height:100%;min-height:0}
 .mobile-shell{height:100%;display:flex;flex-direction:column;overflow:hidden;background:#f5f5f0}
 .mobile-header{height:calc(62px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 22px 0;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
 .mobile-header .brand{font-size:19px;gap:9px}.mobile-header .brand img{width:33px;height:33px}.mobile-header .brand small{font-size:8px;letter-spacing:1.6px}.mobile-date{font-size:12px;color:var(--muted)}
 .back-button{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;font-size:24px;background:white}.header-spacer{width:40px}
 .mobile-content{flex:1;min-height:0;padding:8px 20px 12px}
 .hub-content{overflow:hidden}.secondary-content{overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:24px}
 .mobile-nav{height:calc(67px + env(safe-area-inset-bottom));padding:6px 20px calc(7px + env(safe-area-inset-bottom));display:flex;flex-shrink:0;justify-content:space-around;border-top:1px solid #e1e5d9;background:#fff}
 .mobile-nav button{width:85px;border:0;background:transparent;display:grid;gap:3px;align-content:center;justify-items:center;font-size:11px;color:#828b7a}.mobile-nav button.active{color:#26391b;font-weight:650}.mobile-nav button.active .icon{background:var(--accent);padding:3px 15px;box-sizing:content-box;border-radius:20px}
 .mobile-hub{height:100%;min-height:0;display:flex;flex-direction:column;gap:clamp(8px,1.8dvh,16px)}
 .hub-title{flex-shrink:0}.hub-title>small{font-size:9px;letter-spacing:2px;color:#89917f}.hub-title h1{font-size:clamp(23px,3.5dvh,29px);letter-spacing:-1px;margin:5px 0 0;line-height:1.35}.hub-title p{font-size:12px;color:var(--muted);margin:7px 0 0}.hub-title em{font-style:normal;font-size:17px;color:var(--muted)}
 .weather-strip{display:flex;align-items:center;gap:10px;border:1px solid #e2e8d9;border-radius:17px;background:#edf2e5;padding:11px 13px;text-align:left;flex-shrink:0}.weather-strip>span{flex:1;min-width:0;display:grid;gap:3px}.weather-strip b{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weather-strip small{font-size:10px}.weather-strip>.icon{width:19px;height:19px}
 .mobile-hero{position:relative;flex:1;min-height:140px;max-height:270px;display:flex;flex-direction:column;justify-content:space-between;background:#253323;color:white;border-radius:22px;padding:clamp(15px,2.5dvh,23px);overflow:hidden}.mobile-hero small{font-size:11px;color:#bdd0ac}.mobile-hero h2{font-size:clamp(24px,3.9dvh,33px);line-height:1.3;font-weight:550;margin:7px 0}.mobile-hero p{font-size:11px;color:#bdc9b6;margin:5px 0 11px}.mobile-hero .button{position:relative;z-index:1;min-height:43px;padding:10px 15px;justify-content:space-between;font-size:13px}.hero-hanger{position:absolute;right:13px;top:25px;transform:rotate(-12deg);color:#a9c39533}.hero-hanger .icon{width:105px;height:105px;stroke-width:.75}
 .hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;flex-shrink:0}.feature-tile{position:relative;min-width:0;display:grid;grid-template-columns:32px 1fr;column-gap:9px;align-content:center;min-height:76px;padding:12px;border:1px solid #e1e5da;border-radius:17px;background:white;text-align:left}.feature-tile strong{font-size:13px;font-weight:600;align-self:end}.feature-tile small{font-size:10px;grid-column:2;align-self:start;margin-top:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tile-icon{grid-row:span 2;align-self:center;color:#5a7047}.tile-icon .icon{width:26px;height:26px}.tile-arrow{position:absolute;right:10px;top:8px;font-size:12px;color:#9ba68e}.hub-footer{font-size:10px;color:#98a08f;text-align:center;margin-top:auto;flex-shrink:0}
 .wardrobe-hub{flex:1;grid-template-rows:repeat(3,minmax(0,1fr));min-height:0}.wardrobe-hub .feature-tile{min-height:65px}.account-summary{display:grid;gap:8px;padding:22px;border:0;border-radius:22px;background:#e6edda;text-align:left;color:#344b29}.account-summary>span{font-size:12px}.account-summary strong{font-size:48px;line-height:1.1;font-weight:500}.account-summary strong small{font-size:13px}
 .secondary-content .title-row h1{font-size:23px}.secondary-content .title-row{gap:12px;margin:8px 0 18px}.secondary-content .title-row p{display:none}.secondary-content .title-row>.button{font-size:12px;padding:9px 12px;min-height:40px}.secondary-content .card{padding:20px;border-radius:20px}.secondary-content .two-col{display:block}.secondary-content .outfit-card:last-child{grid-column:auto}.secondary-content .form-grid{grid-template-columns:1fr 1fr}.secondary-content .choices{gap:6px}.secondary-content .chip{padding:8px 12px;font-size:12px}.secondary-content .outfit-actions{flex-wrap:wrap}.secondary-content .empty-state{padding:32px 12px}.secondary-content .empty-state h3{font-size:19px}
 .mobile-app dialog{max-height:calc(100dvh - 30px);overflow:auto;overscroll-behavior:contain}.mobile-app #toast{bottom:calc(77px + env(safe-area-inset-bottom));max-width:calc(100% - 32px);font-size:13px}
 .mobile-app .login-screen{height:100%;display:flex;flex-direction:column;overflow:auto}.mobile-app .login-brand{min-height:0;padding:20px 24px;flex-shrink:0}.mobile-app .login-brand h1{font-size:26px;margin:16px 0 5px;line-height:1.2}.mobile-app .login-brand p{font-size:11px}.mobile-app .login-form{padding:20px 24px;flex:1}.mobile-app .login-form h2{font-size:22px;margin:8px 0 12px}.mobile-app .login-form .notice{font-size:12px;padding:12px;margin-bottom:14px}.mobile-app .login-form .eyebrow{font-size:10px;margin-bottom:8px}.mobile-app .login-form .check-line{margin:13px 0;font-size:11px}.mobile-app .login-form input{min-height:44px}
}
@media(max-width:700px) and (max-height:690px){
 .mobile-header{height:calc(52px + env(safe-area-inset-top))}.mobile-content{padding-top:3px;padding-bottom:8px}.mobile-hub{gap:8px}.hub-title>small,.hub-footer{display:none}.hub-title h1{font-size:23px}.mobile-hero{padding:13px 15px;min-height:130px}.mobile-hero h2{font-size:24px;margin:3px 0}.mobile-hero p{margin:2px 0 6px}.mobile-hero>div>small{display:none}.mobile-hero .button{min-height:39px;padding:8px 12px}.feature-tile{min-height:65px;padding:9px}.weather-strip{padding:8px 11px}.account-summary{padding:16px}.account-summary strong{font-size:39px}.mobile-nav{height:calc(60px + env(safe-area-inset-bottom))}
}
@media(max-width:700px) and (max-height:510px){
 .mobile-hub{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;gap:7px}.hub-title{grid-column:1/-1}.hub-title h1{font-size:18px;margin:0}.hub-title p,.weather-strip,.mobile-hero p{display:none}.mobile-hero{min-height:0;height:100%;padding:10px}.mobile-hero h2{font-size:20px}.hub-grid{gap:6px;min-height:0}.feature-tile{min-height:45px;padding:7px;grid-template-columns:22px 1fr;column-gap:5px}.tile-icon .icon{width:20px;height:20px}.feature-tile strong{font-size:11px}.feature-tile small{display:none}.mobile-nav{height:50px;padding:2px}.mobile-header{height:43px}.account-summary strong{font-size:30px}.account-summary{padding:12px}.wardrobe-hub{grid-column:2;grid-row:2}.mobile-hub>.button{align-self:start;font-size:12px}
}
.custom-icon{width:22px;height:22px;object-fit:contain;flex-shrink:0}.brand .custom-icon{width:42px;height:42px}.tile-icon .custom-icon{width:26px;height:26px}.mobile-nav .custom-icon{width:22px;height:22px}.mobile-nav button.active .custom-icon{background:var(--accent);padding:3px 15px;box-sizing:content-box;border-radius:20px}
@media(max-width:700px){
 .home-carousel{position:relative;height:150px;flex:0 0 150px;border-radius:22px;overflow:hidden;background:#33483b}
 .carousel-slide{display:none;position:absolute;inset:0;width:100%;height:100%;border:0;padding:15px 17px;text-align:left;color:#fff;overflow:hidden}
 .carousel-slide.active{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end}
 .carousel-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#142218d9 0%,#14221887 48%,#14221818 100%)}
 .carousel-slide>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
 .carousel-slide>span,.carousel-slide>em{position:relative;z-index:1}.carousel-slide>span{display:flex;flex-direction:column;gap:3px;max-width:72%}.carousel-slide b{font-size:18px;line-height:1.2}.carousel-slide small{font-size:10px;color:#eef3e9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.carousel-slide em{position:absolute;right:14px;bottom:17px;font-size:9px;font-style:normal}
 .carousel-dots{position:absolute;z-index:3;top:10px;left:14px;display:flex;gap:5px}.carousel-dots button{width:5px;height:5px;padding:0;border:0;border-radius:6px;background:#ffffff70}.carousel-dots button.active{width:17px;background:#fff}
 .home-refined .compose-entry{height:86px}.home-refined .entry-copy strong{font-size:21px}.home-refined .home-features{max-height:176px}.home-refined .recent-look{display:none}
}
@media(max-width:700px) and (max-height:690px){
 .home-carousel{height:120px;flex-basis:120px;border-radius:18px}.carousel-slide{padding:12px 14px}.carousel-slide b{font-size:17px}.carousel-slide em{right:12px;bottom:13px}.carousel-dots{top:8px;left:12px}
 .home-refined .weather-strip small,.home-refined .entry-copy small,.home-refined .entry-copy>span{display:none}.home-refined .compose-entry{height:62px}.home-refined .home-features{max-height:142px}
}
@media(max-width:700px) and (max-height:510px){
 .home-refined{grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr}
 .home-refined .home-carousel{grid-column:1;grid-row:2;height:100%;min-height:0}
 .home-refined .weather-strip,.home-refined .compose-entry{display:none}
 .home-refined .home-features{grid-column:2;grid-row:2;max-height:none}
}
.reason-tags{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.reason-tags span{background:#eef0e7;border-radius:20px;padding:5px 9px;font-size:11px;color:#4f5c43}.swap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:60vh;overflow:auto}.swap-option{background:#f3f1eb;border:1px solid #deded4;border-radius:16px;padding:12px;cursor:pointer}.swap-option img{width:100%;height:130px;object-fit:contain}.swap-option span{display:block;margin-top:8px}.swap-option:disabled{opacity:.5}.style-summary{border:0;background:#e9eddf;text-align:left;padding:20px;border-radius:22px;display:flex;flex-direction:column;gap:10px;color:#263329;cursor:pointer;min-height:0}.style-summary>strong{font-size:22px}.profile-numbers{display:flex;justify-content:space-between;border-top:1px solid #ccd3be;padding-top:14px;margin-top:6px}.profile-numbers b{font-size:24px}.profile-numbers small{display:block;font-size:10px;font-weight:400;margin-top:5px}.category-images{display:flex;position:absolute;right:8px;top:8px;width:56%;height:65%;pointer-events:none}.category-images img{width:65%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 6px #0001)}.category-images img+img{margin-left:-28%;transform:rotate(9deg)}.category-preview{justify-content:flex-end;isolation:isolate}.category-preview strong,.category-preview small{position:relative;z-index:1}.daily-stage{background:#edece4!important;color:#29352c!important}.stage-look{flex:1;min-height:0;width:100%;border:0;background:none;display:flex;flex-direction:column;cursor:pointer;text-align:left;color:inherit}.stage-label{font-size:12px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:100%}.stage-pieces{display:flex;flex:1;min-height:0;align-items:center;justify-content:center;overflow:hidden}.stage-pieces img{width:32%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 7px #0002)}.stage-pieces img:nth-child(2){transform:rotate(6deg)}
@media(max-width:700px){.daily-stage{padding:14px;gap:8px}.style-summary{flex:1;max-height:235px;justify-content:center}.category-preview{padding:12px}.category-preview small{background:#ffffffb8;width:max-content;border-radius:5px}.stage-pieces img{max-height:170px}}
@media(max-width:700px) and (max-height:690px){.style-summary{padding:12px;gap:6px}.style-summary>strong{font-size:18px}.profile-numbers{padding-top:8px;margin-top:0}.profile-numbers b{font-size:20px}.style-summary>span:first-child{font-size:11px}.style-summary>small{font-size:10px}.category-images{height:60%}}
@media(max-width:700px) and (max-height:480px){.style-summary{padding:8px;gap:3px}.style-summary>span:first-child,.style-summary>small{display:none}.profile-numbers{padding-top:3px}.profile-numbers small{margin-top:0}.stage-label{display:none}}
@media(max-width:700px){.wardrobe-hub .category-preview{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:3px}.category-preview strong{align-self:auto;white-space:nowrap}.category-preview small{align-self:auto;margin:0}.daily-stage p,.daily-stage small{color:#5e7055}.category-images{align-items:center;justify-content:center}}
.inspiration-list{display:grid;gap:14px}.inspiration-card{display:block;background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px}.inspiration-card small{font-size:11px;text-transform:uppercase;letter-spacing:1px}.inspiration-card h3{font-size:20px;margin:10px 0}.inspiration-card p{font-size:13px;color:var(--muted);margin-bottom:12px}.inspiration-card>span{font-size:12px;color:#45642d;font-weight:700}.inspiration-intro{background:#e9eddf}
/* Compact home, original category illustrations, and one-screen outfit setup. */
@media(max-width:700px){
.home-refined .compose-entry{display:flex;align-items:center;position:relative;width:100%;height:112px;flex-shrink:0;text-align:left;border:0;border-radius:22px;background:#263b30;color:#f8f6e9;padding:18px 20px;overflow:hidden}
.entry-copy{display:flex;flex-direction:column;gap:5px}.entry-copy small{font-size:10px;color:#bdcab5}.entry-copy strong{font-size:25px;font-weight:500;letter-spacing:1px}.entry-copy>span{font-size:11px;color:#d0d8c8}.entry-symbol{margin-left:auto;color:#cee0a2;transform:rotate(-12deg);padding-right:12px}.entry-symbol .icon{width:46px;height:46px;stroke-width:1}.entry-arrow{position:absolute;right:13px;top:13px;color:#d2dfa7}
.home-features{flex:1;grid-template-rows:repeat(2,minmax(70px,1fr));max-height:240px}.home-features .feature-tile{min-height:0}
.recent-look{display:flex;align-items:center;gap:12px;border:1px solid #e1e5da;border-radius:17px;background:#eeeee5;padding:6px 12px;min-height:58px;text-align:left;flex-shrink:0}.recent-look>span:nth-child(2){display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.recent-look small{font-size:10px;color:#7c8772}.recent-look strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-pieces{display:flex;width:74px;height:44px}.recent-pieces img{width:33%;height:100%;object-fit:contain}.recent-look>b{font-size:17px;font-weight:400}
.wardrobe-hub .illustrated-category{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;padding:8px 12px 11px;overflow:hidden;min-height:0;border:1px solid #e4e2d7;background:#efeee5}
.wardrobe-hub .category-top{background:#e8eee7}.wardrobe-hub .category-bottom{background:#e9edf1}.wardrobe-hub .category-dress{background:#f3e7e2}.wardrobe-hub .category-shoes{background:#edf0e3}.wardrobe-hub .category-washing{background:#f2ece0}
.category-art{width:100%;height:calc(100% - 35px);min-height:0;object-fit:contain;flex:1;filter:none}.category-caption{display:flex;flex-direction:column;gap:3px;flex-shrink:0}.category-caption strong{font-size:13px;align-self:auto}.category-caption small{font-size:9px;align-self:auto;margin:0;color:#7d8275;display:block}.category-count{position:absolute;left:10px;top:9px;font-size:10px;color:#71806a;background:#ffffff91;padding:2px 7px;border-radius:12px}
.compose-content{overflow:hidden;display:flex;min-height:0}.compose-screen{display:flex;flex-direction:column;gap:clamp(9px,2dvh,18px);height:100%;width:100%;min-height:0;margin:0}.compose-heading h1{font-size:25px;line-height:1.3;margin:0 0 5px;font-weight:500}.compose-heading p{font-size:11px;margin:0;color:#818975}
.compose-weather{display:flex;gap:8px;min-height:48px;flex-shrink:0}.compose-weather-edit{display:flex;align-items:center;gap:10px;background:#eaf0df;border:0;border-radius:14px;flex:1;min-width:0;padding:9px 12px;text-align:left;color:#4b6140}.compose-weather-edit>span{display:flex;flex-direction:column;gap:4px;flex:1;font-size:12px;overflow:hidden}.compose-weather-edit small{font-size:9px;color:#7c8b6e}.locate-mini{width:46px;border:1px solid #dde4d4;background:#fafbf6;border-radius:14px;color:#647950}.compose-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.compose-screen b{font-size:13px;font-weight:600}.compose-screen small{font-size:10px;color:#8a907f}
.occasion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.occasion-option{display:flex;align-items:center;justify-content:center;gap:7px;min-height:47px;padding:7px;border:1px solid #e3e6dd;border-radius:13px;background:#fff;color:#717c68;font-size:12px}.occasion-option>span{font-size:19px;color:#859277}.occasion-option.selected,.style-option.selected{border-color:#74865f;background:#e8eedc;color:#354b29;box-shadow:inset 0 0 0 .5px #74865f}
.style-options{display:flex;gap:6px}.style-options button{flex:1;min-width:0;padding:10px 2px;border:1px solid #e1e5d9;border-radius:11px;background:#fff;font-size:11px;white-space:nowrap}.style-options button.selected{background:#e7eddb;border-color:#788b62;color:#344b28}
.compose-base{display:flex;flex-direction:column;gap:8px;margin:0}.compose-base>span{display:flex;align-items:center;justify-content:space-between}.compose-base select{width:100%;min-height:43px;height:43px;padding:8px 12px;background:#fff;border-radius:12px;font-size:12px}
.compose-submit{margin-top:auto;flex-shrink:0}.compose-submit .button{min-height:48px;display:flex;align-items:center;justify-content:flex-start;gap:9px;border-radius:14px;font-size:14px}.compose-submit .button>span{margin-left:auto;font-size:10px;font-weight:400}.compose-submit p{font-size:10px;color:#8b927f;text-align:center;margin:8px 0 0}.compose-error{font-size:11px;color:#a33b38;margin-bottom:5px;max-height:30px;overflow:auto}
}
@media(max-width:700px) and (max-height:690px){
.home-refined .compose-entry{height:94px;padding:12px 16px}.entry-copy strong{font-size:22px}.home-features{max-height:190px}.recent-look{min-height:48px}.recent-pieces{height:35px}.category-caption small{font-size:8px}.category-art{height:calc(100% - 29px)}.wardrobe-hub .illustrated-category{padding:5px 9px 8px}.category-count{top:6px;left:7px}
.compose-screen{gap:9px}.compose-heading h1{font-size:22px}.compose-heading p{display:none}.compose-weather{min-height:43px}.compose-label{margin-bottom:6px}.occasion-option{min-height:41px}.compose-base select{min-height:40px;height:40px}.compose-submit .button{min-height:44px}.compose-submit p{margin-top:5px}
}
@media(max-width:700px) and (max-height:510px){
.home-refined{grid-template-rows:auto 1fr auto}.home-refined .compose-entry{height:100%;grid-column:1;grid-row:2}.home-features{grid-column:2;grid-row:2;grid-template-rows:1fr 1fr;max-height:none}.recent-look{grid-column:1/-1;min-height:40px}.recent-pieces{height:28px}.home-refined .hub-footer{display:none}
.wardrobe-hub{grid-column:1/-1;grid-row:3;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.mobile-hub:has(.wardrobe-hub){grid-template-rows:auto auto 1fr}.mobile-hub:has(.wardrobe-hub)>.button{grid-column:1/-1;min-height:30px;padding:4px}.wardrobe-hub .illustrated-category{padding:3px 8px 5px}.category-caption small{display:none}.category-art{position:absolute;right:3px;width:63%;height:100%;bottom:0}.category-caption{z-index:1;max-width:42%;margin-top:auto}.category-caption strong{font-size:11px}.category-count{font-size:8px;top:4px}
.compose-screen{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto 1fr auto;gap:7px 16px}.compose-heading{grid-column:1}.compose-heading h1{font-size:18px;margin:0}.compose-weather{grid-column:2;grid-row:1;min-height:32px}.compose-weather-edit{padding:4px 8px}.compose-weather-edit small{display:none}.locate-mini{width:35px}.compose-occasion{grid-column:1;grid-row:2/4}.compose-style{grid-column:2;grid-row:2}.compose-base{grid-column:2;grid-row:3;gap:4px}.compose-submit{grid-column:1/-1;grid-row:4;display:flex;align-items:center;gap:12px}.compose-submit .button{min-height:38px;flex:1}.compose-submit p{margin:0;font-size:9px}.occasion-option{min-height:40px}.style-options button{padding:7px 1px;font-size:10px}.compose-base select{height:34px;min-height:34px}.compose-label{margin-bottom:5px}.compose-screen b{font-size:11px}.compose-screen small{font-size:9px}.compose-error{position:absolute;bottom:92px;background:#fff;padding:5px}
}
@media(max-width:700px){.compose-weather-edit>span:last-child{flex:0 0 10px;align-self:center}.compose-weather-edit strong{white-space:nowrap;font-size:12px;overflow:hidden;text-overflow:ellipsis}.recent-look b{font-size:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}
@media(max-width:700px) and (min-height:511px) and (max-height:690px){.compose-screen{gap:7px}.compose-submit .button{padding:10px 14px}.compose-weather-edit{padding:7px 10px}}
.fitting-desktop-entry{display:block;margin-bottom:20px;background:#d9e5e9}.fitting-desktop-entry p{margin:8px 0 0}.fitting-home-tile{grid-column:1/-1;background:#d9e5e9!important}
@media(max-width:700px){.home-refined .home-features:has(.fitting-home-tile){grid-template-rows:repeat(3,minmax(0,1fr));min-height:180px;max-height:280px;flex:1}.home-refined:has(.fitting-home-tile){gap:8px}.home-refined:has(.fitting-home-tile) .recent-look,.home-refined:has(.fitting-home-tile) .hub-footer{display:none}.home-refined:has(.fitting-home-tile) .home-carousel{min-height:90px}.home-refined:has(.fitting-home-tile) .feature-tile{min-height:0;padding:9px 12px}}
/* Category photography is the card surface; labels stay readable above it. */
@media(max-width:700px){
 .wardrobe-hub .illustrated-category{position:relative;padding:12px;isolation:isolate;background:#d9dfd4}
 .wardrobe-hub .illustrated-category::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#1e2a2130 0%,transparent 42%,#142015b8 100%);pointer-events:none}
 .wardrobe-hub .category-art{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0;object-fit:cover!important;flex:none;filter:none}
 .wardrobe-hub .category-caption{position:relative;z-index:2;margin-top:auto;max-width:82%;gap:2px;color:#fff;text-shadow:0 1px 3px #162117aa}
 .wardrobe-hub .category-caption strong{font-size:14px;color:#fff}.wardrobe-hub .category-caption small{display:block;color:#f4f7f0;font-size:9px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .wardrobe-hub .category-count{z-index:2;left:10px;top:9px;color:#fff;background:#18241c8f;border:1px solid #ffffff42}
 .wardrobe-hub .tile-arrow{z-index:2;color:#fff;text-shadow:0 1px 3px #162117aa}
}
@media(max-width:700px) and (max-height:510px){
 .wardrobe-hub .illustrated-category{padding:7px}
 .wardrobe-hub .category-art{inset:0!important;width:100%!important;height:100%!important}
 .wardrobe-hub .category-caption{max-width:78%}.wardrobe-hub .category-caption small{display:none}
 .wardrobe-hub .category-caption strong{font-size:11px}.wardrobe-hub .category-count{left:6px;top:5px}
}
