.phone-app.outfit-app{padding-bottom:0}
.outfit-page{padding:16px 14px calc(104px + env(safe-area-inset-bottom));background:#f8f9fb;color:#434446}
.outfit-page h2,.outfit-page h3,.outfit-page p{margin:0}
.outfit-page button:focus-visible{outline:2px solid #85878a;outline-offset:3px}
.outfit-package,.outfit-position-panel,.outfit-function-panel,.outfit-chosen-panel{padding:18px 16px;border:1px solid #e5e6e8;border-radius:22px;background:#fff;margin-bottom:14px}
.outfit-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}
.outfit-section-heading h2,.outfit-position-heading h2{font-size:16px;font-weight:600;line-height:1.5;color:#4a4b4d}
.outfit-section-heading h2 small{font-size:11px;font-weight:400;color:#88898b;margin-left:5px}
.outfit-section-heading>button{display:flex;align-items:center;gap:3px;flex:none;min-height:36px;font-size:11px;color:#818285;padding:4px 0}
.outfit-section-heading>button>.app-icon{width:13px;height:13px}
.outfit-package-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;background:#f0f1f3;border-radius:12px;padding:4px}
.outfit-package-tabs>button{padding:10px 2px;min-height:58px;border-radius:9px;color:#85878a;min-width:0;font-size:11px;line-height:1.5}
.outfit-package-tabs>button small{display:block;margin-top:3px;font-size:10px;font-variant-numeric:tabular-nums}
.outfit-package-tabs>button.active{background:#fff;color:#434446;box-shadow:0 2px 6px #45474a0a}
.outfit-type-tabs{display:flex;align-items:center;gap:6px;margin-bottom:10px}
.outfit-type-tabs>button{flex:1;min-height:34px;padding:6px;border:1px solid #e5e6e8;border-radius:9px;font-size:11px;color:#88898b;background:#fafbfd}
.outfit-type-tabs>button.active{color:#434446;background:#f0f1f3;border-color:#bdbfc3}
.outfit-package>p{font-size:10px;color:#88898b;line-height:1.8;margin-top:11px}
.outfit-position-panel{padding:18px 8px 12px;background:linear-gradient(135deg,#fff,#fafbfd)}
.outfit-position-heading{display:flex;align-items:flex-start;flex-direction:column;gap:11px;padding:0 8px}
.outfit-position-heading p{font-size:10px;line-height:1.8;color:#88898b;margin-top:5px}
.outfit-model-switch{display:flex;gap:3px;padding:3px;border-radius:10px;background:#f0f1f3}
.outfit-model-switch>button{padding:7px 10px;min-height:30px;border-radius:8px;font-size:10px;color:#929498}
.outfit-model-switch>button.active{background:#fff;color:#66686c;box-shadow:0 2px 6px #45474a08}
.outfit-anonymous-stage{position:relative;width:100%;aspect-ratio:.7;margin:10px auto 4px;overflow:hidden;border-radius:14px;isolation:isolate}
.outfit-anonymous-figure{display:block;width:100%;height:100%;object-fit:cover;user-select:none;pointer-events:none}
.outfit-body-leaders{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.outfit-body-leaders line{stroke:#c0c1c3;stroke-width:1;stroke-dasharray:2.5 4;opacity:.65}
.outfit-body-leaders circle{fill:#b7b8ba;stroke:#fff;stroke-width:2}
.outfit-body-leaders .active line{stroke:#909193;stroke-dasharray:none;opacity:.75}
.outfit-body-leaders .active circle{fill:#8d8e90;stroke:#fff;stroke-width:3}
.outfit-body-marker{position:absolute;display:flex;align-items:center;justify-content:center;gap:3px;width:21%;height:36px;padding:4px 2px;transform:translateY(-50%);border:1px solid #eaebed;border-radius:9px;background:#ffffffba;color:#767779;font-size:10px;line-height:1.4;white-space:nowrap;backdrop-filter:blur(8px)}
.outfit-body-marker.left{left:1%}
.outfit-body-marker.right{right:1%}
.outfit-body-marker>img{width:16px;height:16px;flex:none;object-fit:contain}
.outfit-body-marker>b{display:flex;align-items:center;justify-content:center;flex:none;width:13px;height:13px;border-radius:50%;background:#7a7b7d;color:#fff;font-size:8px;font-weight:500}
.outfit-body-marker.active{color:#515254;border-color:#b3b4b6;background:#f5f6f8ee}
.outfit-body-marker:hover{border-color:#b3b4b6;color:#505154}
.outfit-position-note{font-size:10px;line-height:1.8;color:#909296;text-align:center}
.outfit-function-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.outfit-function-grid>button{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:7px;padding:8px 6px;min-width:0;min-height:42px;border:1px solid #eff0f2;border-radius:10px;background:#fafbfd;font-size:10px;color:#818285}
.outfit-function-grid>button>img{width:23px;height:23px;flex:none;object-fit:contain}
.outfit-function-grid>button>span{line-height:1.5;overflow-wrap:anywhere}
.outfit-function-grid>button>b{position:absolute;right:3px;top:2px;display:flex;align-items:center;justify-content:center;width:13px;height:13px;border-radius:50%;font-size:8px;font-weight:500;background:#7a7b7d;color:#fff}
.outfit-function-grid>button.active{color:#515254;border-color:#b3b4b6;background:#f5f6f8}
.outfit-chosen-panel{margin-bottom:0}
.outfit-chosen-item{display:flex;align-items:center;gap:11px;padding:14px 0;border-bottom:1px solid #eff0f2}
.outfit-chosen-image{padding:0;flex:none;width:60px;height:60px;border:1px solid #edeef0;border-radius:13px;overflow:hidden}
.outfit-chosen-image>img{width:100%;height:100%}
.outfit-chosen-item>div{flex:1;min-width:0}
.outfit-chosen-item h3{font-size:12px;font-weight:500;line-height:1.6;color:#5d5e60;overflow-wrap:anywhere}
.outfit-chosen-item p{font-size:10px;color:#929498;margin-top:3px;line-height:1.5}
.outfit-chosen-item strong{display:block;margin-top:4px;font-size:12px;color:#737578;font-weight:500;font-variant-numeric:tabular-nums}
.outfit-remove{display:flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;border-radius:50%;background:#f5f6f8}
.outfit-remove>img{width:17px;height:17px;object-fit:contain}
.outfit-empty{padding:26px 3px 23px;text-align:center}
.outfit-empty>img{width:32px;height:32px;object-fit:contain;margin:0 auto 14px}
.outfit-empty h3{font-size:13px;font-weight:500;color:#737578}
.outfit-empty p{font-size:11px;line-height:1.8;color:#929498;margin-top:8px}
.outfit-continue{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:16px;min-height:44px;border:1px solid #e5e6e8;border-radius:11px;font-size:12px;color:#66686c;background:#fafbfd}
.outfit-continue>img{width:17px;height:17px;object-fit:contain}
.outfit-price-lines{margin:20px 0 0;font-size:12px;line-height:1.8;color:#7d7f82}
.outfit-price-lines>div{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px}
.outfit-price-lines dd{margin:0;color:#5d5f62;font-variant-numeric:tabular-nums}
.outfit-quote-note{font-size:10px;line-height:1.8;color:#929498;margin-top:12px!important}
.outfit-unavailable{font-size:11px;line-height:1.8;background:#f8f9fb;border-radius:10px;padding:10px;color:#737578}
.outfit-unavailable>button{display:block;text-decoration:underline;padding:6px 0 0}
.outfit-action-bar{position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:9;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;max-width:480px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #e5e6e8;background:#ffffffed;backdrop-filter:blur(18px)}
.outfit-action-bar>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.outfit-action-bar>div>span{font-size:10px;color:#929498}
.outfit-action-bar strong{font-size:24px;font-weight:600;color:#434446;line-height:1.3;font-variant-numeric:tabular-nums}
.outfit-action-bar>.van-button{min-width:128px;height:46px;border-radius:12px;font-size:13px;font-weight:500}
.shop-outfit-entry{display:flex;align-items:center;justify-content:space-between;gap:9px;width:100%;min-height:44px;padding:11px 13px;border:1px solid #e5e6e8;border-radius:12px;color:#66686c;background:#fafbfd;text-align:left;font-size:12px;margin-top:14px}
.shop-outfit-entry>img{width:21px;height:21px;object-fit:contain;flex:none}
.shop-outfit-entry>span{flex:1}
.shop-outfit-entry>.app-icon{width:14px;height:14px}
@media(max-width:350px){.outfit-page{padding-left:10px;padding-right:10px}.outfit-package,.outfit-chosen-panel,.outfit-function-panel{padding-left:12px;padding-right:12px}.outfit-function-grid{gap:5px}.outfit-function-grid>button{padding-left:4px;gap:4px;font-size:9px}.outfit-body-marker{font-size:9px;gap:2px}.outfit-body-marker>img{width:14px;height:14px}.outfit-package-tabs>button{font-size:10px}.outfit-action-bar strong{font-size:22px}.outfit-action-bar>.van-button{min-width:119px}}
@media(prefers-reduced-motion:reduce){.outfit-page{scroll-behavior:auto}}
