.slime-composition{position:relative;max-width:100%;flex-shrink:0;isolation:isolate}
.slime-composition .composition-frame{position:absolute;aspect-ratio:1;max-width:none;overflow:visible}
.slime-composition .composition-shadow,.slime-composition .composition-rig,.slime-composition .composition-body{position:absolute;inset:0;width:100%;height:100%;transform-origin:var(--pivot-x) var(--pivot-y);pointer-events:none}
.slime-composition .composition-rig{z-index:1}
.slime-composition .composition-shadow{object-fit:contain}
.slime-composition .composition-body img,.slime-composition .composition-body canvas{display:block;width:100%;height:100%;object-fit:contain;user-select:none;pointer-events:none}
.slime-composition .separated-face,.slime-composition .separated-blush{position:absolute;inset:0;pointer-events:none}
.slime-composition .separated-face{z-index:35}.slime-composition .separated-blush{z-index:34}
.slime-composition .separated-face img,.slime-composition .separated-blush img{display:block;width:100%;height:100%;object-fit:contain;user-select:none}
.slime-composition .part-layer{position:absolute;max-width:none;overflow:hidden;pointer-events:none;user-select:none}
.slime-composition .part-image{position:absolute;display:block;max-width:none;pointer-events:none;user-select:none}
.attachment-guides{position:absolute;inset:0;z-index:50;pointer-events:none}
.attachment-point{position:absolute;width:0;height:0;font-size:10px;color:#fff;white-space:nowrap;text-shadow:0 1px 3px #222;line-height:30px}
.attachment-point::before{content:'';position:absolute;width:8px;height:8px;border:2px solid #fff;border-radius:50%;background:#176975;left:-4px;top:-4px;box-shadow:0 0 0 1px #176975}
.wardrobe-studio .collection-section{margin:0 0 22px;padding:0;min-height:0;border:0;background:transparent;border-radius:0}
.collection-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px;flex-wrap:wrap}
.collection-heading h2{margin:0;font-size:16px;letter-spacing:-.4px;font-weight:650}
#storage-status{font-size:12px;color:#8b7b61;margin:0;line-height:1.6}
#storage-status[data-error=true]{color:#995333}
#storage-note{font-size:12px;color:#8c775d;line-height:1.6;margin:10px 0 0}
.storage-actions{display:flex;gap:12px;margin-top:8px}
.storage-actions button{font-size:12px;text-decoration:underline;text-underline-offset:3px;padding:4px 0;color:#846043}
.collection-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:650px}
.slime-card{display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;background:#fffefa;border:1px solid #e4dfd4;border-radius:16px;padding:8px 15px;transition:none;text-align:left}
.slime-card[aria-pressed=true]{border:2px solid #b39760;background:#fff8e7;padding:7px 14px}
.slime-card:active{transform:none!important}
.slime-card .slime-composition{pointer-events:none}
.slime-card-copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.slime-card-copy strong{font-size:15px;font-weight:650}
.slime-card-copy span{font-size:11px;color:#9c8864}
.slime-card[aria-pressed=true] .slime-card-copy span{color:#755d32;font-weight:650}
#current-name{color:#685740;font-size:15px;font-weight:650;margin-right:12px}
.wardrobe-studio #current-label{font-weight:450;font-size:12px}
@media(max-width:600px){.collection-heading{align-items:flex-start;gap:8px}.collection-cards{gap:9px}.slime-card{gap:3px;flex-direction:column;padding:8px 7px 12px}.slime-card[aria-pressed=true]{padding:7px 6px 11px}.slime-card-copy{text-align:center;gap:3px}.slime-card-copy strong{font-size:14px}.collection-section{margin-bottom:18px}}
.body-choice{margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid #eee6d9}
.body-choice label{display:block;font-size:13px;font-weight:650;margin-bottom:9px}
.body-choice select{font:inherit;font-size:14px;width:100%;padding:10px;border:1px solid #d8cfc0;border-radius:9px;background:#fffaf2;color:#685740}
.body-choice p{font-size:11px;color:#8c775d;line-height:1.6;margin:9px 0 0}
.expression-studio select:focus-visible{outline:3px solid #188f99;outline-offset:3px}
.expression-card:disabled .card-state{font-size:10px}
.factory-note{font-size:12px;color:#6c806c;line-height:1.6;margin:12px 0}.expression-nav{flex-wrap:wrap}
