/* Yeli Boutique 1.3 · simple responsive Mirror */
.ysm-page{max-width:1190px;margin:0 auto;padding:clamp(24px,5vw,60px) clamp(17px,4vw,35px) 80px;color:#453039}
.ysm-heading{text-align:center;margin-bottom:28px}.ysm-eyebrow{font-size:11px;letter-spacing:.22em;color:#9a596e;font-weight:700}.ysm-heading h1{font:500 clamp(34px,5vw,60px)/1.08 Georgia,'Times New Roman',serif;letter-spacing:-.035em;color:#572e3b;margin:10px 0}.ysm-heading p{font-size:15px;color:#7f6370;margin:0 auto;max-width:480px}
.ysm-types{display:flex;justify-content:center;gap:8px;margin:0 auto 24px;flex-wrap:wrap}.ysm-types button{border:1px solid #e8cfd5;background:#fffaf7;border-radius:999px;padding:13px 20px;color:#795263;font-weight:600;font-size:13px;min-height:44px}.ysm-types button.active{background:#7d3b53;color:white;border-color:#7d3b53}
.ysm-layout{display:grid;grid-template-columns:minmax(280px,440px) minmax(0,1fr);gap:22px;align-items:start}.ysm-controls,.ysm-preview{background:#fff9f6;border:1px solid #eddcdd;border-radius:24px;box-shadow:0 14px 52px #5e324219;padding:22px}.ysm-controls h2{font:500 22px Georgia,'Times New Roman',serif;margin:0 0 12px;color:#653548}.ysm-controls h2:not(:first-child){margin-top:26px}.ysm-products{display:flex;gap:12px;overflow-x:auto;padding:2px 1px 9px;scrollbar-width:thin}.ysm-product{width:100px;min-width:100px;border:1px solid #eadbd8;border-radius:16px;background:#fff;padding:7px;color:#573b46;text-align:left;min-height:132px}.ysm-product.active{border:2px solid #91485e;padding:6px;box-shadow:0 0 0 3px #edd1d8}.ysm-product img{height:86px;object-fit:cover;border-radius:10px;background:#f8e8e6}.ysm-product span{display:block;font-size:12px;font-weight:600;line-height:1.2;margin-top:7px}.ysm-colors{display:flex;gap:8px;margin-top:12px}.ysm-colors button{width:32px;height:32px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #e7c6cb}.ysm-colors button.active{box-shadow:0 0 0 2px #793d53}
.ysm-upload{border:1px dashed #d4a9b6;background:#fff8f7;border-radius:16px;padding:16px;margin-top:8px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ysm-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.ysm-upload label{border-radius:12px;background:#f1dde1;color:#713c4e;font-size:13px;padding:12px 16px;font-weight:700;min-height:42px;display:inline-flex;align-items:center;cursor:pointer}.ysm-upload small{color:#8d7980;line-break:anywhere;max-width:180px;font-size:11px}.ysm-apparel-note{font-size:13px;color:#765760;background:#f7e8e7;border-radius:13px;padding:12px;margin:14px 0}.ysm-consent{display:flex;gap:8px;align-items:flex-start;font-size:12px;line-height:1.45;color:#634653;margin:15px 0}.ysm-consent input{margin-top:3px;accent-color:#7d3b53}
.ysm-go{display:block;width:100%;background:#7d3b53;color:#fff;border:0;border-radius:14px;font-size:15px;font-weight:700;padding:17px;margin-top:24px;min-height:54px}.ysm-go:disabled{background:#ceb7bf;color:#684656;opacity:1;cursor:not-allowed}.ysm-status{background:#edf7ed;color:#315b35;border-radius:12px;padding:12px;font-size:12px}.ysm-status.error{background:#fae9e9;color:#9c394c}.ysm-fine{color:#867178;font-size:11px;line-height:1.55;margin:15px 0 0}.ysm-link{background:none;border:0;color:#753850;text-decoration:underline;text-underline-offset:5px;font-size:13px;font-weight:700;padding:9px 0 0}
.ysm-preview{background:linear-gradient(#fff3f1,#fffaf8);min-height:480px}.ysm-photo{height:min(70vh,560px);min-height:320px;display:flex;align-items:center;justify-content:center;border-radius:18px;background:#eadbd9;overflow:hidden}.ysm-photo img{width:100%;height:100%;object-fit:contain}.ysm-placeholder{height:min(70vh,560px);min-height:320px;border-radius:18px;position:relative;overflow:hidden;background:#edd5d4}.ysm-placeholder>img{width:100%;height:100%;object-fit:cover;object-position:center 25%;opacity:.9}.ysm-placeholder>div{position:absolute;bottom:0;left:0;right:0;padding:60px 24px 26px;background:linear-gradient(transparent,#fff7f5 85%);display:flex;flex-direction:column;gap:5px}.ysm-placeholder strong{font:500 27px Georgia,serif;color:#542f3e}.ysm-placeholder span{font-size:13px;color:#795c68}.ysm-results{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0 0;flex-wrap:wrap}.ysm-toggle{display:flex;background:#f2e3e3;border-radius:24px;padding:4px}.ysm-toggle button{border:0;background:transparent;padding:10px 15px;color:#7d5563;font-weight:600;border-radius:20px}.ysm-toggle button.active{background:#fff9f8;color:#633546;box-shadow:0 3px 11px #6c46501d}.ysm-save{border:1px solid #9c5871;border-radius:22px;padding:12px 18px;background:#fffaf8;color:#75364d;font-weight:700}.ysm-result-note{font-size:12px;color:#846a73;line-height:1.6;margin-top:14px}
body:has(#yeli-mirror-v2) .yeli-help-launcher{display:none}
@media(max-width:790px){.ysm-page{padding:24px 15px 90px}.ysm-heading{text-align:left;margin-bottom:18px}.ysm-heading h1{font-size:38px}.ysm-heading p{font-size:14px}.ysm-types{justify-content:flex-start;flex-wrap:nowrap;gap:7px;margin-bottom:16px}.ysm-types button{padding:11px 14px;font-size:12px;flex:1}.ysm-layout{grid-template-columns:1fr;gap:16px}.ysm-controls{padding:17px}.ysm-controls h2{font-size:20px}.ysm-preview{grid-row:2;padding:9px;min-height:0}.ysm-photo,.ysm-placeholder{height:min(56vh,490px);min-height:290px}.ysm-placeholder strong{font-size:23px}.ysm-result-note{padding:0 8px}.ysm-controls{grid-row:1}.ysm-go{position:relative}.ysm-upload small{max-width:145px}}
@media(max-width:370px){.ysm-page{padding-inline:10px}.ysm-controls{padding:14px}.ysm-types button{padding:11px 9px}.ysm-results{justify-content:center}}

.ysm-preview{scroll-margin-top:95px}

/* 1.3.1: safe origin guidance and photo-state labels */
.ysm-origin-notice{margin:18px 0 0;padding:15px 16px;border:1px solid #efd3da;background:#fff0f2;border-radius:16px;color:#684257;line-height:1.55;font-size:13px}
.ysm-origin-notice strong{display:block;color:#803f57;font-size:14px;margin-bottom:3px}
.ysm-origin-notice p{margin:0}
.ysm-photo{position:relative}
.ysm-photo-caption{position:absolute;bottom:12px;left:12px;right:12px;background:#fff9f2eb;color:#67384b;border-radius:12px;padding:10px 12px;text-align:center;font-size:12px;box-shadow:0 2px 12px #57283c16}
