:root{color:#2d203f;font-synthesis:none;text-rendering:optimizelegibility;background:#fbf8f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button{font:inherit}.app-shell{min-height:100vh}.welcome-screen{isolation:isolate;background:linear-gradient(105deg,#3f225de0 0%,#5b367aad 38%,#69438433 70%,#ffc18414 100%),url(/assets/sunrise-beach.jpg) 50%/cover no-repeat;place-items:center;min-height:100vh;display:grid;position:relative;overflow:hidden}.welcome-screen:before{z-index:-1;content:"";opacity:.4;mix-blend-mode:overlay;background-image:linear-gradient(#ffffff1f 1px,#0000 1px);background-size:100% 7px;position:absolute;inset:0}.sunrise-glow{z-index:-1;filter:blur(3px);border-radius:50%;position:absolute}.sunrise-glow-left{background:#ffeeb359;width:26rem;height:26rem;top:-8rem;left:-11rem}.sunrise-glow-right{background:#4d2a7861;width:35rem;height:35rem;bottom:-14rem;right:-17rem}.welcome-content{text-align:center;justify-items:center;width:min(100% - 2rem,43rem);padding:3rem 1rem 5.5rem;display:grid}.brand-mark{color:#ffffffdb;letter-spacing:.2em;margin:0;font-size:.73rem;font-weight:800}.eyebrow{color:#ffffffd1;letter-spacing:.08em;text-transform:uppercase;margin:2.6rem 0 .6rem;font-size:.86rem;font-weight:700}.welcome-screen h1,.planning-hub h1,.planning-card h2{font-family:Georgia,Times New Roman,serif}.welcome-screen h1{color:#fffdf7;letter-spacing:-.08em;text-shadow:0 .2rem 1.8rem #371a553d;max-width:7ch;margin:0;font-size:clamp(4.5rem,13vw,8rem);font-weight:500;line-height:.9}.quote-card{color:#fffdf7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#452a6333;border:1px solid #ffffff5c;border-radius:1.25rem;width:min(100%,33rem);margin:2.2rem 0 2.3rem;padding:1.2rem 1.5rem;box-shadow:0 1rem 3rem #351b4d24}.quote-card blockquote{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.08rem,2vw,1.33rem);font-style:italic;line-height:1.5}.quote-card figcaption{margin-top:.65rem;font-size:.86rem;font-weight:700}.primary-button{color:#513274;cursor:pointer;background:#fffaf1;border:0;border-radius:999px;align-items:center;gap:.65rem;padding:.88rem 1.2rem .88rem 1.45rem;font-weight:800;transition:transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 .8rem 2rem #30174938}.primary-button:hover,.primary-button:focus-visible{outline:none;transform:translateY(-2px);box-shadow:0 1.1rem 2.5rem #30174947}.primary-button span{font-size:1.2rem}.welcome-footer{color:#fffc;text-align:center;margin:0;font-size:.88rem;position:absolute;bottom:1.25rem;left:1rem;right:1rem}.planning-hub{color:#38264d;background:radial-gradient(circle at 8% 0,#d6bcf18c,#0000 21rem),radial-gradient(circle at 92% 92%,#ffdab9a6,#0000 25rem),#fbf8f3;min-height:100vh;padding:1.25rem clamp(1rem,4vw,4rem) 3rem}.hub-header{justify-content:space-between;align-items:center;max-width:72rem;margin:0 auto;display:flex}.hub-header .brand-mark{color:#6e4a97}.text-button{color:#624187;cursor:pointer;background:0 0;border:0;padding:.4rem 0;font-size:.88rem;font-weight:700}.hub-intro{text-align:center;max-width:45rem;margin:clamp(4.8rem,11vw,8rem) auto 2.5rem}.hub-intro .eyebrow{color:#7d579f;margin:0 0 .8rem}.hub-intro h1{letter-spacing:-.055em;margin:0;font-size:clamp(2.5rem,6vw,4.7rem);font-weight:500;line-height:1}.hub-intro>p:last-child{color:#6b5a78;margin:1rem 0 0;font-size:1.05rem}.planning-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;width:min(100%,72rem);margin:0 auto;display:grid}.planning-card{background:#ffffffad;border:1px solid #63488024;border-radius:1.5rem;min-height:17rem;padding:1.55rem;box-shadow:0 1rem 2.5rem #54377214}.planning-card:nth-child(2){background:#f7ecffc7;transform:translateY(1.2rem)}.planning-icon{color:#fff;background:linear-gradient(145deg,#6d4595,#a782c8);border-radius:.9rem;place-items:center;width:2.7rem;height:2.7rem;font-size:1.35rem;display:grid}.planning-card h2{margin:2.7rem 0 .6rem;font-size:1.7rem;font-weight:500;line-height:1.1}.planning-card p{color:#6c5d77;max-width:20ch;margin:0;line-height:1.55}.card-status{color:#7a519f;letter-spacing:.08em;text-transform:uppercase;margin-top:1.6rem;font-size:.78rem;font-weight:800;display:inline-block}.card-button,.secondary-button{color:#754b9d;cursor:pointer;letter-spacing:.05em;text-transform:uppercase;background:0 0;border:0;align-items:center;gap:.5rem;padding:0;font-size:.8rem;font-weight:800;display:inline-flex}.card-button{margin-top:1.6rem}.card-button:hover,.card-button:focus-visible,.secondary-button:hover,.secondary-button:focus-visible{color:#4e2e70;outline:none;text-decoration:underline}.hub-note{color:#59406f;background:#e8d6f794;border-radius:1rem;align-items:flex-start;gap:.65rem;width:min(100%,38rem);margin:4.5rem auto 0;padding:1.1rem 1.2rem;font-size:.93rem;line-height:1.5;display:flex}.hub-note span{color:#8a5bb3}.planner-screen{background:radial-gradient(circle at 87% 7%,#fdd3ada3,#0000 19rem),linear-gradient(140deg,#f8f2fd,#fdf9f3 55%,#f6eaf9);min-height:100vh;padding:1.25rem clamp(1rem,4vw,4rem) 3rem}.schedule-screen{background:linear-gradient(100deg,#faf7fdf5 0%,#faf7fde8 43%,#faf7fd94 71%,#faf7fd61 100%),url(/assets/schedule-hourglass.jpg) 50%/cover no-repeat}.planner-header{justify-content:space-between;align-items:center;max-width:76rem;margin:0 auto;display:flex}.planner-header .brand-mark{color:#6e4a97}.planner-layout{grid-template-columns:minmax(0,.85fr) minmax(24rem,1.15fr);align-items:start;gap:clamp(2rem,6vw,7rem);width:min(100%,76rem);margin:clamp(4rem,10vw,7rem) auto 0;display:grid}.planner-intro{position:sticky;top:2rem}.planner-intro .eyebrow,.section-heading .eyebrow{color:#7d579f;margin:0 0 .8rem}.planner-intro h1{letter-spacing:-.06em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.65rem,5vw,4.6rem);font-weight:500;line-height:.98}.planner-intro>p:last-child{color:#6a5a76;max-width:33ch;margin:1.4rem 0 0;line-height:1.65}.schedule-workspace{gap:1rem;display:grid}.plan-form,.schedule-list,.notification-bar{background:#ffffffc7;border:1px solid #644b8224;border-radius:1.4rem;box-shadow:0 1.2rem 3rem #4a306514}.plan-form{grid-template-columns:minmax(0,1fr) 9.5rem;gap:1rem;padding:1.4rem;display:grid}.plan-form label{color:#5c466e;gap:.45rem;font-size:.84rem;font-weight:800;display:grid}.plan-form input{color:#332440;width:100%;min-height:2.9rem;font:inherit;background:#fffdf9;border:1px solid #d9cadf;border-radius:.75rem;padding:.7rem .8rem}.plan-form input:focus{border-color:#8356a8;outline:3px solid #8356a824}.plan-form .primary-button{color:#fff;background:linear-gradient(135deg,#634084,#8f5db4);grid-column:1/-1;justify-self:start;box-shadow:0 .8rem 1.7rem #60398333}.notification-bar{background:#f4eafcd1;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.notification-bar strong{color:#50356b;font-size:.9rem}.notification-bar p{color:#786888;margin:.2rem 0 0;font-size:.82rem}.notification-status,.storage-warning{color:#78519b;text-align:right;font-size:.82rem;font-weight:700}.storage-warning{color:#9e3a44;margin:0}.schedule-list{padding:1.4rem}.section-heading h2{color:#3c2a4e;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.75rem;font-weight:500}.schedule-list ul{gap:.7rem;margin:1.2rem 0 0;padding:0;list-style:none;display:grid}.schedule-list li{border-bottom:1px solid #ede4f0;grid-template-columns:4.5rem minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.9rem 0;display:grid}.schedule-list li:last-child{border-bottom:0}.schedule-list time{color:#8052a6;font-size:.86rem;font-weight:800}.schedule-list li span{color:#49365b}.schedule-list li button{color:#8a628f;cursor:pointer;background:#f8ecf7;border:0;border-radius:50%;width:1.8rem;height:1.8rem;font-size:1.25rem;line-height:1}.empty-state{color:#776783;margin:1.2rem 0 0;font-size:.94rem;line-height:1.5}.alarm-backdrop{z-index:5;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#2f1d4494;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.alarm-panel{color:#fffdf8;text-align:center;background:linear-gradient(145deg,#67438c,#9a71bb);border:1px solid #ffffff73;border-radius:1.7rem;width:min(100%,28rem);padding:2rem;box-shadow:0 1.5rem 4rem #1d0e2b59}.alarm-panel .eyebrow{margin:0 0 .7rem}.alarm-panel h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:2.2rem;font-weight:500;line-height:1}.alarm-panel>p:last-of-type{color:#ffffffd9;margin:.9rem 0 1.5rem}.meal-screen{background:linear-gradient(100deg,#fffaf4f7 0%,#fffaf4eb 42%,#fbf6ffa8 70%,#f7ecf44d 100%),url(/assets/meal-balance.png) 50%/cover no-repeat}.meal-layout{grid-template-columns:minmax(0,.8fr) minmax(26rem,1.2fr);align-items:start;gap:clamp(2rem,6vw,7rem);width:min(100%,76rem);margin:clamp(4rem,10vw,7rem) auto 0;display:grid}.meal-workspace{gap:1rem;display:grid}.wellness-tip{color:#4e3d5e;background:#fffdf9c2;border:1px solid #744a972e;border-radius:1.3rem;gap:1rem;padding:1.2rem;display:flex;box-shadow:0 1rem 2.5rem #57356e14}.wellness-icon{color:#fff;background:linear-gradient(145deg,#71469c,#ba8ccd);border-radius:.8rem;flex:none;place-items:center;width:2.5rem;height:2.5rem;display:grid}.wellness-tip .eyebrow{color:#7d579f;margin:0 0 .4rem}.wellness-tip p:not(.eyebrow){margin:0;line-height:1.55}.wellness-tip a{color:#71479a;margin-top:.7rem;font-size:.8rem;font-weight:800;display:inline-block}.meal-cards{gap:.75rem;display:grid}.meal-card{background:#ffffffc7;border:1px solid #644b8224;border-radius:1.3rem;grid-template-columns:minmax(9rem,.75fr) minmax(0,1.15fr) minmax(7.2rem,.5fr);align-items:end;gap:1rem;padding:1.25rem;display:grid;box-shadow:0 1.2rem 3rem #4a306512}.meal-card .eyebrow{color:#8558a7;margin:0 0 .35rem}.meal-card p:not(.eyebrow){color:#786988;margin:0;font-size:.82rem;line-height:1.45}.meal-card label{color:#5c466e;gap:.45rem;font-size:.78rem;font-weight:800;display:grid}.meal-card label span{color:#96869f;font-weight:600}.meal-card input{color:#372646;width:100%;min-height:2.8rem;font:inherit;background:#fffdf9;border:1px solid #dccfe3;border-radius:.7rem;padding:.7rem .75rem}.meal-card input:focus{border-color:#8356a8;outline:3px solid #8356a824}.meal-note{color:#7a6986;margin:0;font-size:.79rem;line-height:1.5}.meal-actions{justify-content:flex-end;align-items:center;gap:.85rem;min-height:3.5rem;display:flex}.meal-actions .primary-button{color:#fff;background:linear-gradient(145deg,#68428e,#9b6fba)}.meal-saved-message{color:#5f3f7d;margin:0;font-size:.88rem;font-weight:700}.outfit-screen{background:linear-gradient(100deg,#fffaf8f7 0%,#f8f3ffe6 42%,#fceff791 72%,#fceff74d 100%),url(/assets/outfit-wardrobe.jpg) 50%/cover no-repeat}.outfit-layout{grid-template-columns:minmax(0,.72fr) minmax(29rem,1.28fr);align-items:start;gap:clamp(2rem,6vw,7rem);width:min(100%,80rem);margin:clamp(4rem,10vw,7rem) auto 0;display:grid}.outfit-workspace{gap:1rem;display:grid}.shape-selector,.wardrobe-section,.mannequin-preview,.completion-panel{background:#ffffffc7;border:1px solid #644b8224;border-radius:1.4rem;box-shadow:0 1.2rem 3rem #4a306514}.shape-selector{padding:1rem 1.2rem}.shape-selector .eyebrow{color:#7d579f;margin:0 0 .65rem}.shape-selector>div{flex-wrap:wrap;gap:.55rem;display:flex}.shape-button{color:#694b7e;cursor:pointer;background:#fffdfb;border:1px solid #d9cbe2;border-radius:999px;padding:.55rem .85rem;font-size:.84rem;font-weight:800}.shape-button.selected{color:#fff;background:linear-gradient(135deg,#6b4393,#a86cca);border-color:#7c4fa4}.mannequin-preview{background:radial-gradient(circle at 50% 27%,#e5ccf6bf,#0000 11rem),linear-gradient(145deg,#fefafff5,#f6ebffd6);place-items:center;min-height:27rem;padding:1.35rem 1.2rem 1rem;display:grid;position:relative;overflow:hidden}.mannequin-preview>p{z-index:1;color:#826e90;text-align:center;align-self:end;margin:0;font-size:.74rem}.mannequin-halo{background:radial-gradient(circle,#ca9de761,#fff0);border-radius:50%;width:19rem;height:19rem;position:absolute}.mannequin-figure{z-index:1;transform-origin:bottom;width:9rem;height:22.5rem;transition:transform .18s;position:relative}.mannequin-slim .mannequin-figure{transform:scaleX(.85)}.mannequin-plus-size .mannequin-figure{transform:scaleX(1.19)}.mannequin-head,.mannequin-neck,.mannequin-body,.mannequin-leg,.mannequin-foot{background:linear-gradient(135deg,#e5c9bb,#c99583);position:absolute;box-shadow:inset 0 0 0 1px #66413e14}.mannequin-head{border-radius:48% 48% 46% 46%;width:4.2rem;height:4.8rem;top:0;left:2.4rem}.mannequin-neck{width:1.6rem;height:1.4rem;top:4.2rem;left:3.7rem}.mannequin-body{border-radius:32% 32% 18% 18%;width:6.6rem;height:8.1rem;top:5.3rem;left:1.2rem}.mannequin-leg{border-radius:1.2rem 1.2rem .7rem .7rem;width:2.5rem;height:7.2rem;top:13rem}.mannequin-leg-left{left:1.8rem}.mannequin-leg-right{right:1.8rem}.mannequin-foot{border-radius:1rem 1rem .6rem .6rem;width:3.15rem;height:1.3rem;top:19.85rem}.mannequin-foot-left{left:1.25rem}.mannequin-foot-right{right:1.25rem}.outfit-image{z-index:2;object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%;position:absolute}.preview-headwear{width:5.5rem;height:2.4rem;top:-.55rem;left:1.75rem}.preview-eyewear{width:3.9rem;height:1.25rem;top:2.05rem;left:2.55rem}.preview-top{width:7.55rem;height:8.4rem;top:5.1rem;left:.7rem}.preview-bottom{width:7rem;height:7.7rem;top:12.7rem;left:1rem}.preview-footwear{width:8rem;height:2.1rem;top:19.4rem;left:.5rem}.wardrobe-section{padding:1.3rem}.wardrobe-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;margin-top:1rem;display:grid}.wardrobe-card{color:#5b456b;cursor:pointer;background:#fffdfc;border:1px dashed #cdb8dc;border-radius:1rem;align-content:space-between;min-height:8.5rem;padding:.75rem;display:grid;overflow:hidden}.wardrobe-card:hover{background:#fcf7ff;border-color:#8658aa}.wardrobe-card input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wardrobe-card img{object-fit:contain;width:100%;height:4.5rem}.wardrobe-card span:not(.upload-symbol){gap:.25rem;display:grid}.wardrobe-card strong{font-size:.75rem}.wardrobe-card small{color:#907f9b;font-size:.65rem;line-height:1.25}.upload-symbol{color:#8152a6;background:#f4e8fa;border-radius:.55rem;place-items:center;width:1.65rem;height:1.65rem;font-size:1.2rem;display:grid}.completion-panel{color:#fffdf8;text-align:center;background:linear-gradient(135deg,#5e3b84,#a66bc1);padding:2.4rem 1.3rem}.completion-spark{background:#ffffff2b;border-radius:50%;place-items:center;width:2.65rem;height:2.65rem;margin:0 auto .8rem;display:grid}.completion-panel .eyebrow{color:#ffffffbf;margin:0 0 .45rem}.completion-panel h2{letter-spacing:-.06em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:3.7rem;font-weight:500}.completion-panel>p:not(.eyebrow){color:#ffffffe0;margin:.15rem 0 1rem}.completion-link{color:#fff;cursor:pointer;background:0 0;border:0;padding:0;font-size:.82rem;font-weight:800;text-decoration:underline}@media (width<=720px){.welcome-screen,.schedule-screen,.meal-screen,.outfit-screen{background-position:50%}.planner-layout,.meal-layout,.outfit-layout{grid-template-columns:1fr;margin-top:3.5rem}.wardrobe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.meal-card{grid-template-columns:1fr;align-items:stretch}.meal-actions{flex-direction:column;align-items:flex-start}.planner-intro{position:static}.plan-form{grid-template-columns:1fr}.notification-bar{flex-direction:column;align-items:flex-start}.notification-status,.storage-warning{text-align:left}}@media (width>=900px){.welcome-content{text-align:left;justify-items:start;width:min(100% - 8rem,82rem);padding-inline:1rem}.welcome-screen h1{max-width:8ch}.quote-card{margin-right:auto}.welcome-footer{left:4rem;right:auto}.planner-layout,.meal-layout,.outfit-layout{min-height:calc(100vh - 12rem)}.schedule-screen,.meal-screen,.outfit-screen{background-attachment:fixed}}@media (width<=720px){.planning-hub{padding-bottom:2rem}.planning-grid{grid-template-columns:1fr}.planning-card,.planning-card:nth-child(2){min-height:auto;transform:none}.planning-card h2{margin-top:1.4rem}.hub-note{margin-top:2rem}}
