:root{--font:"Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--icon-font:"Material Symbols Outlined";--bg:#f8f9ff;--card:#fff;--well:#eff4ff;--well-2:#e5eeff;--chip:#dae2fd;--ink:#0b1c30;--navy:#0f172a;--navy-hover:#1e293b;--muted:#434655;--muted-2:#64748b;--line:#e2e8f0;--line-strong:#cbd5e1;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-ink:#004ac6;--on-primary:#fff;--tint:#eff6ff;--tint-line:#bfdbfe;--sky:#38bdf8;--tertiary:#00759f;--error:#ba1a1a;--error-bg:#ffdad6;--error-ink:#93000a;--ok-bg:#e3f6ea;--ok-ink:#1d5e34;--shadow-1:0 1px 3px 0 #0f172a0a, 0 4px 12px 0 #0f172a08;--shadow-2:0 8px 24px -4px #0f172a0f, 0 2px 6px -1px #0f172a0a;--shadow-3:0 20px 32px -8px #0f172a1f, 0 4px 12px -2px #0f172a0f;--r-sm:8px;--r-md:12px;--r-lg:16px}:root[data-theme=dark]{--bg:#0b1220;--card:#111a2b;--well:#17223a;--well-2:#1d2a45;--chip:#233257;--ink:#eaf1ff;--navy:#eaf1ff;--navy-hover:#d3e4fe;--muted:#b7c2d8;--muted-2:#8e9ab3;--line:#22304a;--line-strong:#33456a;--primary:#5b8cff;--primary-hover:#7aa2ff;--primary-ink:#b4c5ff;--on-primary:#06132e;--tint:#16274a;--tint-line:#2b4a86;--sky:#7bd0ff;--tertiary:#7bd0ff;--error:#ffb4ab;--error-bg:#3b1416;--error-ink:#ffdad6;--ok-bg:#12301f;--ok-ink:#a6e3bd;--shadow-1:0 1px 3px 0 #0000004d;--shadow-2:0 8px 24px -4px #0006;--shadow-3:0 20px 32px -8px #00000080}*{box-sizing:border-box}html,body{overflow-x:clip}body{background:var(--bg);color:var(--ink);font:400 16px/26px var(--font);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{color:var(--ink);text-wrap:balance;overflow-wrap:break-word;min-width:0;margin:0}h1{letter-spacing:-.02em;font-size:32px;font-weight:700;line-height:40px}h2{letter-spacing:-.01em;font-size:22px;font-weight:600;line-height:28px}h3{align-items:center;gap:8px;font-size:16px;font-weight:600;line-height:22px;display:flex}p{margin:0}.sub{color:var(--muted);font-size:14px;line-height:22px}.small{color:var(--muted-2);font-size:12px;line-height:18px}.accent{color:var(--primary)}.label-caps{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;font-size:11px;font-weight:700;line-height:16px;display:inline-flex}.label-caps.accent{color:var(--primary)}.ms{font-family:var(--icon-font);letter-spacing:normal;text-transform:none;white-space:nowrap;font-feature-settings:"liga";font-variation-settings:"FILL" 0, "wght" 400, "opsz" 20;-webkit-user-select:none;user-select:none;direction:ltr;font-size:20px;font-style:normal;font-weight:400;line-height:1;display:inline-block;overflow:hidden}.dot{background:var(--primary);border-radius:50%;flex:none;width:6px;height:6px;display:inline-block}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.stack{gap:12px;display:grid}.split{justify-content:space-between;align-items:center;gap:12px;display:flex}.grow{flex:1}[hidden]{display:none!important}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}.tile-icon{border-radius:var(--r-md);background:var(--well);width:56px;height:56px;color:var(--primary);flex:none;place-items:center;font-size:28px;display:grid}.btn{height:40px;font:600 14px/1 var(--font);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;text-decoration:none;transition:background-color .15s,border-color .15s,transform .1s,color .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.lg{height:56px;padding:0 28px;font-size:16px}.btn.sm{height:32px;padding:0 16px;font-size:13px}.btn.primary{background:var(--primary);color:var(--on-primary)}.btn.primary:hover{background:var(--primary-hover)}.btn.ghost{background:var(--card);border-color:var(--line-strong);color:var(--navy)}.btn.ghost:hover{background:var(--well)}.btn.soft{background:var(--well-2);color:var(--navy)}.btn.soft:hover{background:var(--chip)}.btn.danger{color:var(--error)}.two-line{text-align:left;line-height:1.2;display:grid}.two-line small{opacity:.85;font-size:11px;font-weight:500}.icon-btn{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;flex:none;place-items:center;display:grid}.icon-btn:hover{background:var(--well);color:var(--navy)}.icon-btn.sm{width:32px;height:32px}.icon-btn.sm .ms{font-size:18px}.icon-btn.danger:hover{color:var(--error)}.link-btn{color:var(--primary);font:500 13px var(--font);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;text-decoration:underline}input,select{font:400 14px var(--font);color:var(--ink);border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--card);min-width:0;height:44px;padding:0 16px}input::placeholder{color:var(--muted-2)}:is(.btn,.icon-btn,.link-btn,input,select,.tabs button,.seg button,.chips button,.weather-pill,label.btn):focus-visible{outline:2px solid var(--primary);outline-offset:1px;transition:none}.notice{border-radius:var(--r-md);background:var(--tint);border:1px solid var(--tint-line);color:var(--primary-ink);margin-top:12px;padding:12px 16px;font-size:14px;line-height:22px}.notice.success{background:var(--ok-bg);color:var(--ok-ink);border-color:#0000}.notice.error{background:var(--error-bg);color:var(--error-ink);border-color:#0000}.auth-screen{place-items:center;min-height:100vh;padding:24px 16px;display:grid}.auth-card{gap:16px;width:min(440px,100%);padding:32px;display:grid;position:relative;overflow:hidden}.auth-card:before{content:"";background:linear-gradient(90deg, var(--primary), var(--navy));height:4px;position:absolute;inset:0 0 auto}.auth-card h1{letter-spacing:-.025em;font-size:30px;font-weight:800;line-height:38px}.auth-card input{width:100%}.auth-foot{justify-content:space-between;align-items:center;gap:12px;display:flex}.topbar{background:var(--card);border-bottom:1px solid var(--line);z-index:20;position:sticky;top:0}.topbar-in{grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;max-width:1440px;margin:0 auto;padding:16px 48px;display:grid}.brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{border-radius:10px;flex:none;width:36px;height:36px;display:block}.wordmark{letter-spacing:.02em;text-transform:uppercase;color:var(--navy);white-space:nowrap;font-size:16px;font-weight:800}.tabs{background:var(--well);border-radius:999px;gap:4px;padding:4px;display:flex}.tabs button{height:36px;color:var(--muted);font:500 14px var(--font);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:0 20px}.tabs button:hover{color:var(--navy)}.tabs button.active{background:var(--primary);color:var(--on-primary);font-weight:600}.userbar{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.weather-pill{background:var(--well);height:32px;color:var(--primary-ink);font:600 13px var(--font);cursor:pointer;white-space:nowrap;border:0;border-radius:999px;align-items:center;gap:8px;min-width:0;padding:0 12px;display:inline-flex}.weather-pill .ms{color:var(--primary);font-size:18px}.avatar{background:var(--navy);width:36px;height:36px;color:var(--card);border-radius:50%;flex:none;place-items:center;font-size:14px;font-weight:700;display:grid}.email{color:var(--muted-2);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:13px;overflow:hidden}.page{max-width:1440px;margin:0 auto;padding:32px 48px 48px}.view{display:none}.view.active{gap:24px;display:grid}.wb-place{align-items:center;gap:16px;min-width:0;display:flex}.weather-bar{gap:20px;padding:28px 24px 24px;display:grid;position:relative;overflow:hidden}.weather-bar:before{content:"";background:linear-gradient(90deg, var(--primary), var(--navy));height:4px;position:absolute;inset:0 0 auto}.wb-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.seg{background:var(--well);border-radius:999px;flex-wrap:wrap;gap:4px;padding:4px;display:flex}.seg button{height:34px;color:var(--muted);font:500 13px var(--font);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 16px}.seg button[aria-checked=true]{background:var(--card);color:var(--navy);box-shadow:var(--shadow-1);font-weight:600}.curve{background:var(--well);border-radius:var(--r-md);flex-wrap:wrap;align-items:center;gap:24px;padding:16px 20px;display:flex}.hours{flex:1;grid-template-columns:repeat(6,minmax(64px,1fr));gap:8px;min-width:0;display:grid}.hour{background:var(--card);border-radius:var(--r-sm);color:var(--muted);justify-items:center;gap:4px;padding:8px;font-size:13px;line-height:18px;display:grid}.hour .ms{font-size:20px}.hour b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:18px;line-height:22px}.hour.now,.hour.now b{color:var(--primary)}.daily-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.layers{gap:16px;min-width:0;display:grid}.empty-look{justify-items:start;gap:12px;padding:32px;display:grid}.look{gap:16px;display:grid}.look:empty{display:none}.layer{grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:24px;padding:20px;transition:border-color .15s,box-shadow .15s;display:grid}.layer:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2)}.well{background:var(--well);border-radius:var(--r-md);align-content:start;gap:12px;min-width:0;padding:12px;display:grid}.well .label-caps{background:var(--card);color:var(--navy);border-radius:6px;justify-self:start;padding:2px 8px}.well img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-sm);background:var(--card);width:100%;display:block}.layer-body{align-content:start;gap:12px;min-width:0;display:grid}.layer-body h3{letter-spacing:-.015em;text-transform:capitalize;font-size:24px;font-weight:700;line-height:30px}.tags{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tag{background:var(--chip);height:26px;color:var(--navy);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:0 12px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.tag .ms{font-size:16px}.badge{background:var(--tint);border:1px solid var(--tint-line);height:26px;color:var(--primary-ink);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:0 12px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.badge .ms{font-size:16px}.strip{background:var(--well);border-radius:var(--r-md);color:var(--muted);flex-wrap:wrap;align-items:center;gap:16px;margin-top:4px;padding:8px 8px 8px 16px;font-size:13px;display:flex}.strip>span{align-items:center;gap:8px;display:inline-flex}.strip .ms{color:var(--muted-2);font-size:18px}.strip .btn{background:var(--card);margin-left:auto}.side{align-content:start;gap:16px;min-width:0;display:grid}.why{gap:12px;padding:24px;display:grid}.reasons{gap:16px;margin-top:4px;display:grid}.reason{grid-template-columns:auto minmax(0,1fr);gap:4px 12px;display:grid}.reason .ms{color:var(--primary);grid-row:span 2;font-size:22px}.reason b{font-size:15px;font-weight:600;line-height:22px}.reason span{color:var(--muted);font-size:13px;line-height:20px}.health{gap:16px;padding:20px;display:grid}.meter{gap:8px;font-size:13px;line-height:18px;display:grid}.meter .split span:last-child{color:var(--muted-2);font-variant-numeric:tabular-nums}.track{background:var(--well-2);border-radius:999px;height:6px;overflow:hidden}.track i{background:var(--primary);transform-origin:0;border-radius:999px;width:100%;height:100%;display:block}.track i.navy{background:var(--navy)}.track i.teal{background:var(--tertiary)}.dock{z-index:10;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-3);border-radius:999px;justify-self:center;gap:8px;padding:8px;display:flex;position:sticky;bottom:24px}.head-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.stats{flex-wrap:wrap;gap:12px;display:flex}.stat{background:var(--well);border-radius:var(--r-md);gap:2px;min-width:128px;padding:12px 16px;display:grid}.stat b{font-variant-numeric:tabular-nums;font-size:18px;font-weight:600;line-height:24px}.upload{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;padding:28px;transition:border-color .15s,background-color .15s;display:grid}.upload.drag{border-color:var(--primary);background:var(--tint)}.upload-text{gap:8px;min-width:0;display:grid}.meta{flex-wrap:wrap;gap:16px;display:flex}.meta span{align-items:center;gap:8px;display:inline-flex}.progress-wrap{grid-column:1/-1;gap:8px;display:none}.progress{background:var(--well-2);border-radius:999px;height:6px;overflow:hidden}.bar{background:var(--primary);transform-origin:0;width:100%;height:100%;transition:transform .15s;transform:scaleX(0)}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips button{border:1px solid var(--line);background:var(--card);height:36px;color:var(--navy);font:500 13px var(--font);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 8px 0 16px;display:inline-flex}.chips button:hover{border-color:var(--line-strong)}.chips button.active{background:var(--navy);border-color:var(--navy);color:var(--card)}.chips .count{background:var(--well);min-width:22px;height:22px;color:var(--muted);border-radius:999px;place-items:center;padding:0 8px;font-size:11px;font-weight:600;display:grid}.chips button.active .count{background:var(--primary);color:var(--on-primary)}.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.garment{grid-template-rows:auto 1fr auto;transition:border-color .15s,box-shadow .15s;display:grid;overflow:hidden}.garment:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2)}.photo{aspect-ratio:4/5;background:var(--well);position:relative;overflow:hidden}.photo img{object-fit:cover;width:100%;height:100%;display:block}.photo>.tag{background:var(--card);position:absolute;top:12px;left:12px}.photo.resting img{filter:blur(3px)grayscale(.4);opacity:.55}.rest-overlay{text-align:center;place-content:center;justify-items:center;gap:8px;padding:12px;display:grid;position:absolute;inset:0}.rest-overlay .lock{background:var(--card);width:40px;height:40px;color:var(--navy);box-shadow:var(--shadow-1);border-radius:50%;place-items:center;display:grid}.rest-overlay .pill{background:var(--card);color:var(--navy);border-radius:999px;padding:2px 12px;font-size:12px;font-weight:600;line-height:20px}.rest-overlay .label-caps{color:var(--navy)}.garment-body{align-content:start;gap:4px;min-width:0;padding:16px;display:grid}.garment-body strong{text-transform:capitalize;font-size:16px;font-weight:600;line-height:22px}.garment-body .small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.garment-body .tags{margin-top:8px}.garment-foot{background:var(--bg);border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:2px;padding:4px 4px 4px 16px;font-size:12px;display:flex}.garment-foot>span{flex:1;align-items:center;gap:8px;min-width:0;display:inline-flex}.garment-foot .ms{font-size:16px}.status{letter-spacing:.08em;text-transform:uppercase;color:var(--navy);margin-right:8px;font-size:11px;font-weight:700}.status.resting{color:var(--primary)}.empty{text-align:center;color:var(--muted);border:1px dashed var(--line-strong);border-radius:var(--r-lg);background:var(--card);grid-column:1/-1;padding:40px;font-size:14px}.edit-form{gap:12px;min-width:0;padding:16px;display:grid}.edit-form label{gap:4px;display:grid}.edit-form select,.edit-form input{width:100%;height:38px}.page-head{gap:8px;display:grid}.page-head .chips{margin-top:8px}.history-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.history-list{gap:16px;min-width:0;display:grid}.day{gap:16px;padding:24px;display:grid}.day-head{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.day-head>.dot{width:10px;height:10px;box-shadow:0 0 0 4px var(--tint);margin-top:12px}.day-head .titles{flex:1;gap:2px;min-width:0;display:grid}.day-head .titles .row{gap:8px}.wx{background:var(--well);height:28px;color:var(--navy);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex}.wx .ms{color:var(--primary);font-size:16px}.thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.thumb{background:var(--well);border-radius:var(--r-md);align-content:start;gap:8px;min-width:0;padding:8px 8px 12px;display:grid}.thumb .photo{aspect-ratio:1;border-radius:var(--r-sm)}.thumb .photo .label-caps{background:var(--card);color:var(--navy);border-radius:4px;padding:0 8px;font-size:9px;position:absolute;top:6px;right:6px}.thumb strong{text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;padding:0 4px;font-size:13px;font-weight:600;line-height:18px;overflow:hidden}.thumb .gone{aspect-ratio:1;border-radius:var(--r-sm);border:1px dashed var(--line-strong);text-align:center;color:var(--muted-2);place-items:center;padding:8px;font-size:12px;display:grid}.side .card{gap:16px;padding:20px;display:grid}.combo{background:var(--well);border-radius:var(--r-md);gap:8px;padding:12px;display:grid}.combo .tags .tag{background:var(--card)}.foot{border-top:1px solid var(--line);max-width:1440px;color:var(--muted-2);flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0 auto;padding:20px 48px 32px;font-size:13px;display:flex}@media (width<=1100px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar-in{grid-template-columns:1fr auto;padding:12px 24px}.tabs{grid-area:2/1/auto/-1;justify-self:start;max-width:100%;overflow-x:auto}.email{display:none}.page{padding:24px 24px 48px}.foot{padding:20px 24px 32px}}@media (width<=900px){.daily-grid,.history-grid,.layer{grid-template-columns:minmax(0,1fr)}.hours{grid-template-columns:repeat(3,minmax(0,1fr))}.upload{grid-template-columns:minmax(0,1fr)}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){h1{font-size:26px;line-height:34px}.topbar-in{padding:12px 16px}.wordmark{display:none}.page{padding:16px 16px 48px}.foot{padding:16px}.thumbs{grid-template-columns:repeat(2,minmax(0,1fr))}.grid{gap:12px}.dock{width:100%;bottom:12px}.dock .btn.lg{flex:1;height:48px;padding:0 16px;font-size:14px}.stat{flex:1;min-width:0}.tabs{width:100%}.tabs button{flex:1;padding:0 8px;font-size:13px}.rest-overlay .label-caps{display:none}.garment-foot{flex-wrap:wrap;padding:8px 4px 4px 12px}.garment-foot>span:first-child{flex-basis:100%}.garment-foot .status{margin-right:auto}}@media (prefers-reduced-motion:reduce){.btn,.bar,.layer,.garment,.upload{transition:none}.btn:active{transform:none}}.side-head{align-items:center;gap:8px;display:flex}.side-head h2{letter-spacing:0;font-size:16px;font-weight:600;line-height:22px}
