/* Keep the prepared portrait and its editor when moving into the wardrobe. */
.generation-overlay p{font-size:16px;line-height:1.5;padding:0 24px}
.generation-overlay>span{font-size:14px;line-height:1.5}
.fitting-app.personalized{display:grid;grid-template-rows:auto minmax(0,1fr);background:#fff;font-size:16px}
.personalized .header{position:relative;min-height:74px;padding:17px 32px;background:#fff;border-bottom:1px solid #edf0e9}
.personalized .header .wordmark{font-size:26px}
.personalized .header .experience-label{display:none}
.personalized .fitting-room{height:auto;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto}
.personalized .avatar-stage{position:relative;inset:auto;min-height:0;background:#fff}
.personalized .avatar-stage>img,.personalized .spin-surface{position:absolute;inset:0;width:100%;height:100%;max-width:100%;margin:0}
.personalized .avatar-stage>img,.personalized .spin-surface img{object-fit:contain;mask-image:none}
.personalized .stage-controls{top:14px;left:24px;right:24px;justify-content:flex-end}
.personalized .model-toggle{font-size:16px;background:#fffffff2;border-color:var(--line);min-height:44px}
.personalized .stage-caption{width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.personalized .motion-tools{position:absolute;inset:auto auto 12px 50%;transform:translateX(-50%);width:max-content;background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;padding:0}
.personalized .spin-navigation{flex-direction:row;justify-content:center;gap:10px}
.personalized .spin-navigation>button{width:44px;height:44px;min-width:44px;border-color:#cbd5c480;background:#ffffff80;color:var(--green);opacity:.8;transition:opacity .15s ease}
.personalized .spin-navigation svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.personalized .spin-navigation #spin-front{display:flex;align-items:center;justify-content:center;gap:8px;min-width:98px;width:auto;height:44px;padding:0 14px;border:1px solid #cbd5c480;border-radius:24px;background:#f7f9f480;font-size:14px}
.personalized .spin-navigation>button:hover,.personalized .spin-navigation>button:focus-visible,.personalized .spin-navigation>button:active{opacity:1}
.personalized .motion-tools:has(.prepare-views:not([hidden])){top:auto;bottom:12px;transform:none;width:auto;max-width:240px;padding:8px 12px}
.personalized .prepare-views{font-size:14px;min-height:44px}
.personalized .motion-tools:has(.prepare-views:not([hidden]))>p{font-size:12px}
.fitting-profile-tools{display:grid;position:absolute;right:32px;top:38%;transform:translateY(-50%);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:178px;padding:10px;background:#ffffffed;border:1px solid var(--line);border-radius:16px;z-index:4}
.fitting-profile-tools .quick-tool{display:grid;place-items:center;gap:6px;min-width:0;min-height:64px;padding:8px 3px;border:1px solid #dce3d5;border-radius:12px;background:#fff;font-size:14px;line-height:1.2}
.fitting-profile-tools .quick-tool svg{width:20px;height:20px;fill:none;stroke:var(--green);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.fitting-profile-tools .quick-tool-dot{display:block;width:20px;height:20px;border-radius:50%;border:1px solid #00000012}
.personalized .wardrobe-dock{position:relative;inset:auto;transform:none;width:min(100%,1000px);margin:0 auto;border:0;border-top:1px solid #edf0e9;border-radius:0;background:#fff;box-shadow:none;backdrop-filter:none}
.personalized .wardrobe{padding:8px 24px 0}
.personalized .wardrobe-heading h2{font-size:26px}
.personalized .wardrobe-heading .text-button{font-size:14px;min-height:44px}
.personalized .filter{font-size:14px;min-height:36px}
.personalized .filters{padding:2px 0 6px}
.personalized .product-card{flex-basis:210px;width:210px;height:76px}
.personalized .product-name{font-size:14px}
.personalized .product-detail{font-size:12px}
.personalized .action-bar{background:#fff;padding:10px 24px calc(12px + env(safe-area-inset-bottom))}
.personalized:not(.has-selection) .action-bar{display:none}
.personalized .action-bar strong{font-size:14px}
.personalized .action-bar p{font-size:12px}
.personalized .action-bar .primary-button{font-size:14px;min-height:48px}
.personalized .inline-error{font-size:14px}
.personalized .inline-error button{font-size:14px}
.personalized[data-hair-color=black]{--hair-filter:grayscale(.65) brightness(.36) contrast(1.06)}
.personalized[data-hair-color=blonde]{--hair-filter:grayscale(1) sepia(.65) saturate(1.2) brightness(2.25) contrast(.9)}
.personalized[data-hair-color=red]{--hair-filter:sepia(.8) saturate(3) hue-rotate(330deg) brightness(1.2)}
.personalized[data-hair-color=brown]{--hair-filter:none}
.personalized.wardrobe-expanded .wardrobe-dock{position:fixed;inset:0;width:100%;height:100dvh;border:0;z-index:80}
.personalized.wardrobe-expanded .wardrobe{padding:20px max(24px,calc((100vw - 1080px)/2)) 24px}
.personalized.wardrobe-expanded .wardrobe-heading h2{font-size:42px}
.personalized.wardrobe-expanded .product-card{width:100%;height:auto}
.personalized.presenting .fitting-profile-tools{display:none}
@media(max-width:699px){
  .personalized .header{min-height:60px;padding:12px 20px}
  .personalized .header .wordmark{font-size:22px}
  .personalized .fitting-room{grid-template-rows:minmax(0,1fr) auto auto}
  .personalized .motion-tools{inset:0;width:auto;transform:none;padding:0;pointer-events:none}
  .personalized .spin-navigation{position:absolute;inset:0;pointer-events:none}
  .personalized .spin-navigation>button{position:absolute;pointer-events:auto}
  .personalized #spin-previous{left:max(16px,env(safe-area-inset-left));top:50%;transform:translateY(-50%)}
  .personalized #spin-next{right:max(16px,env(safe-area-inset-right));top:50%;transform:translateY(-50%)}

  .personalized .stage-controls{top:12px;left:16px;right:16px}
  .personalized .model-toggle{font-size:14px;min-height:40px}
  .fitting-profile-tools{position:static;transform:none;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;padding:8px 18px;border:0;border-radius:0;background:#fff}
  .fitting-profile-tools .quick-tool{min-height:56px;font-size:14px}
  .personalized .wardrobe{padding:4px 18px 0}
  .personalized .wardrobe-heading h2{font-size:24px}
  .personalized .wardrobe-heading .text-button{min-height:36px}
  .personalized .filter{font-size:13px;min-height:34px;padding:5px 10px}
  .personalized .product-rail{margin-right:-18px;padding-right:18px;min-height:88px}
  .personalized .product-card{flex-basis:194px;width:194px;height:72px}
  .personalized .product-name{font-size:13px}
  .personalized .product-detail{font-size:12px}
  .personalized .action-bar{padding:10px 18px calc(12px + env(safe-area-inset-bottom))}
  .personalized .action-bar strong{font-size:13px}
  .personalized .action-bar p{font-size:12px}
  .personalized .action-bar .primary-button{font-size:14px;min-width:145px;padding:10px 12px}
  .personalized.wardrobe-expanded .wardrobe{padding:12px 18px 20px}
  .personalized.wardrobe-expanded .product-card{width:100%;height:auto}
}

/* Place view navigation on the portrait and garment removal by the wardrobe. */
.stage-controls{z-index:4}
.stage-controls #spin-front{display:flex;align-items:center;justify-content:center;gap:8px;min-width:98px;height:44px;margin-right:auto;padding:0 14px;border:1px solid #cbd5c480;border-radius:24px;background:#f7f9f480;font-size:14px;opacity:.8}
.stage-controls #spin-front svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.stage-controls #spin-front:hover,.stage-controls #spin-front:focus-visible{opacity:1}
.wardrobe-heading .clear-outfit{font-size:14px;min-height:44px;text-decoration:underline;text-underline-offset:3px}
.look-card .product-name{grid-row:1 / 3;align-self:center}
.wardrobe .selection-chips{display:flex;gap:6px;flex-wrap:wrap;margin:2px 0 6px}
.wardrobe .selection-chip{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;min-height:36px;max-width:100%;padding:5px 10px;border:1px solid #d4dfc6;border-radius:20px;font-size:13px;line-height:1.2;color:var(--green)}
.wardrobe .selection-chip span{margin:0;font-size:18px;line-height:1}
.wardrobe .selection-chip{min-height:40px;gap:8px;padding:6px 10px}
.selection-chip .garment-icon{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.wardrobe .selection-chip .garment-chip-name{font-size:13px;line-height:1.25}
.wardrobe .selection-chip .garment-remove{font-size:18px;margin-left:2px}
/* The compact wardrobe has one row: worn pieces. Category browsing is expanded. */
.fitting-app:not(.wardrobe-expanded) .wardrobe>.filters{display:none}
.wardrobe .selection-chip{gap:0;padding:0;overflow:hidden}
.garment-chip-choice{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 3px 6px 10px}
.garment-chip-remove{display:grid;place-items:center;min-height:40px;min-width:34px;padding:0 9px 0 5px;border-left:1px solid #dfe5d8;margin-left:5px}
.garment-chip-choice:hover,.garment-chip-remove:hover{background:#f1f4ed}
.fitting-app.wardrobe-expanded .wardrobe>.selection-chips{display:none}
/* One inventory, with no duplicate category or outfit-builder controls. */
.fitting-app .wardrobe>.outfit-builder{display:none!important}
.fitting-app.wardrobe-expanded .wardrobe>.selection-chips{display:none}
.inventory-title,.catalog-search,.catalog-more{display:none}
.wardrobe-expanded .inventory-title{display:block;font:36px var(--serif);margin:0}
.wardrobe-expanded .catalog-search{display:grid;gap:7px;margin:8px 0 16px}
.catalog-search label{font-size:14px;color:var(--ui-muted)}
.catalog-search input{width:100%;min-height:48px;border:1px solid #d5ddce;border-radius:8px;padding:10px 14px;background:#fff;font:16px var(--sans);color:var(--ink)}
.catalog-search input:focus{outline:2px solid #799267;outline-offset:2px}
.fitting-app.wardrobe-expanded .wardrobe>.filters{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:18px;border-bottom:1px solid #dfe5d8;margin-bottom:16px;padding:0;scrollbar-width:none}
.fitting-app.wardrobe-expanded .wardrobe>.filters .filter{flex-shrink:0;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:#6c7a63;font-size:15px;min-height:44px;padding:8px 0}
.fitting-app.wardrobe-expanded .wardrobe>.filters .filter.active{color:var(--ink);border-bottom-color:var(--green)}
.wardrobe-expanded .catalog-more{display:flex;justify-content:center;width:100%;min-height:48px;margin:16px 0;font-size:15px;border:1px solid var(--line);border-radius:8px}
.fitting-app.wardrobe-expanded .catalog-caption h1,.fitting-app.wardrobe-expanded .catalog-caption>span{font:14px var(--sans)}
.garment-chip-copy{display:grid;gap:3px;text-align:left}
.wardrobe .selection-chip .garment-chip-color{font-size:11px;line-height:1.25;color:#6d7967}
/* Garment cards focus on the individual piece, even with a full-look source. */
.product-card[data-category=top] .product-photo img{transform:scale(2.1);transform-origin:50% 34%}
.product-card[data-category=bottom] .product-photo img{transform:scale(2.1);transform-origin:50% 85%}
