/* M15A-02: reusable Fit Profile form and realistic model presentation. */
.pxfit-checkout,.pxfit-account{--fit-lime:#c8ff28;--fit-line:#254753;--fit-muted:#9cb5c0;color:#f4f8fa;font-family:inherit}
.pxfit-checkout *,.pxfit-account *{box-sizing:border-box}
.pxfit-checkout [hidden],.pxfit-account [hidden]{display:none!important}
.pxfit-account{padding:28px;background:#061923;border:1px solid var(--fit-line)}
.pxfit-form{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(240px,1fr);gap:22px 28px;align-items:start}
.pxfit-form> :not(.pxfit-visual){grid-column:1;min-width:0}
.pxfit-intro .pxfit-eyebrow,.pxfit-eyebrow{font-size:11px;letter-spacing:.2em;font-weight:800;color:var(--fit-lime)}
.pxfit-intro h2{color:#f7f9fa;font:900 italic clamp(30px,3.1vw,52px)/1.04 var(--display,Arial,sans-serif);letter-spacing:-.02em;margin:13px 0 14px}
.pxfit-intro h2 em{color:var(--fit-lime);font-style:inherit}
.pxfit-intro p{font-size:13px;line-height:1.55;margin:0;color:#e0eaed}
.pxfit-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--fit-line);border-bottom:1px solid var(--fit-line);margin-top:17px;padding:12px 0;gap:10px}
.pxfit-benefits>span{display:flex;align-items:center;gap:9px;font-size:10px;line-height:1.5}
.pxfit-benefits b{color:var(--fit-lime);font-size:26px;font-weight:400}
.pxfit-section-title{display:flex;align-items:center;gap:12px;color:#f4f8fa!important;font:800 17px/1.2 var(--display,Arial,sans-serif)!important;letter-spacing:.02em;margin:0 0 14px!important}
.pxfit-section-title>span{flex:none;display:grid;place-items:center;width:31px;height:31px;border:1px solid #608394;border-radius:50%;background:linear-gradient(140deg,#163846,#04151e);font-size:18px}
.pxfit-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pxfit-type,.pxfit-units label,.pxfit-preferences label{position:relative;cursor:pointer;min-width:0}
.pxfit-type input,.pxfit-units input,.pxfit-preferences input{position:absolute;width:1px;height:1px;opacity:0;margin:0}
.pxfit-type-card{display:flex;flex-direction:column;text-align:center;border:1px solid #284653;border-radius:5px;overflow:hidden;background:#041720;min-height:152px;padding-bottom:10px}
.pxfit-type-photo{display:block;height:108px;background-repeat:no-repeat;background-position:left top;mask-image:linear-gradient(#000 70%,transparent);-webkit-mask-image:linear-gradient(#000 70%,transparent)}
.pxfit-type-card strong{font:800 16px/1.2 var(--display,Arial,sans-serif);margin-top:-3px;color:#f1f6f8;z-index:1}
.pxfit-type-card small{font-size:9px;color:#a5bec8;line-height:1.4;margin-top:3px;padding:0 3px}
.pxfit-type input:checked+.pxfit-type-card{border-color:var(--fit-lime);box-shadow:0 0 10px #b9ff2130,inset 0 0 15px #b9ff2112;background:#163129}
.pxfit-type input:focus-visible+span,.pxfit-units input:focus-visible+span,.pxfit-preferences input:focus-visible+span{outline:2px solid white;outline-offset:3px}
.pxfit-details{border-top:1px solid var(--fit-line);padding-top:18px}
.pxfit-section-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:17px}
.pxfit-section-top .pxfit-section-title{margin-bottom:0!important}
.pxfit-units{display:flex;align-items:center;gap:0}
.pxfit-units>b{font-size:10px;letter-spacing:.08em;color:#a6c3ce;margin-right:12px}
.pxfit-units label span{display:block;padding:9px 12px;border:1px solid var(--fit-line);font-size:11px;color:#b3cbd4;white-space:nowrap}
.pxfit-units label:first-of-type span{border-radius:4px 0 0 4px}
.pxfit-units label:last-of-type span{border-radius:0 4px 4px 0}
.pxfit-units input:checked+span{background:var(--fit-lime);color:#06131b;border-color:var(--fit-lime);font-weight:800}
.pxfit-basics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pxfit-form[data-type=kids] .pxfit-basics{grid-template-columns:repeat(3,minmax(0,1fr))}
.pxfit-form[data-unit=metric] [data-fit-imperial-height],.pxfit-form[data-unit=imperial] [data-fit-metric-height],.pxfit-form:not([data-type=kids]) [data-fit-kids],.pxfit-form[data-type=kids] [data-fit-adult-measurements],.pxfit-form[data-type=kids] .pxfit-weight .pxfit-required{display:none}
.pxfit-field{min-width:0}
.pxfit-field>label,.pxfit-compound-label{display:block;color:#eff6f8;font-size:12px;margin-bottom:8px;line-height:1.3}
.pxfit-required{color:#ff756a}
.pxfit-input-shell,.pxfit-height-compound{display:flex;align-items:center;height:47px;background:linear-gradient(120deg,#061c27,#031620);border:1px solid #315563;border-radius:4px;overflow:hidden}
.pxfit-input-shell:focus-within,.pxfit-height-compound:focus-within{border-color:var(--fit-lime);box-shadow:0 0 0 1px #c8ff2820}
.pxfit-input-shell input,.pxfit-height-compound input{width:100%;min-width:0;height:100%;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#f3f8fa!important;padding:10px 13px!important;font-family:inherit;font-size:15px;font-weight:400;line-height:1.2;outline:0!important}
.pxfit-suffix{flex:none;padding-right:13px;font-size:12px;color:#dcebee}
.pxfit-height-compound>label{display:flex;align-items:center;flex:1 1 50%;width:50%;min-width:0;height:100%;margin:0!important}
.pxfit-height-compound>label+label{border-left:1px solid #355865}
.pxfit-height-compound>label>span{padding-right:12px;font-size:11px;font-weight:800;color:#b4ccd5}
.pxfit-field-error{display:block;font-size:11px;color:#ffb7a6;margin-top:6px;line-height:1.4}
.pxfit-weight>small{display:block;color:#9eb9c4;font-size:10px;margin-top:5px}
.pxfit-preferences{border:0;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.pxfit-preferences legend{font-size:12px;color:#f1f6f8;margin:0 0 9px;padding:0}
.pxfit-preferences label>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1px solid #30515f;border-radius:4px;min-height:51px;padding:9px;background:#051a24}
.pxfit-preferences b{font-size:12px;color:#f2f7f9}
.pxfit-preferences small{color:#a9c2cc;font-size:10px}
.pxfit-preferences input:checked+span{border-color:var(--fit-lime);background:linear-gradient(#163620,#0a241b);box-shadow:0 0 7px #baff1520}
.pxfit-preferences input:checked+span b,.pxfit-preferences input:checked+span small{color:var(--fit-lime)}
.pxfit-form[data-type=kids] .pxfit-preferences{grid-template-columns:repeat(2,minmax(0,1fr))}
.pxfit-more{border-top:1px solid var(--fit-line);padding-top:16px}
.pxfit-more summary{display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;border:1px solid #244651;border-radius:4px;padding:8px 10px 8px 0}
.pxfit-more summary::-webkit-details-marker{display:none}
.pxfit-more summary .pxfit-section-title{margin:0!important;font-size:14px!important;gap:8px;white-space:nowrap}
.pxfit-more summary small{font-size:11px;line-height:1.4;color:#abc3cc}
.pxfit-more summary>b{margin-left:auto;font-size:22px;color:#d4e7ed}
.pxfit-more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:15px}
.pxfit-foot-help{font-size:10px;color:#9eb7c2;margin:8px 0 0}
.pxfit-visual{grid-column:2;grid-row:1/span 7;min-width:0;align-self:stretch;border:1px solid #254651;border-radius:5px;padding:12px;background:radial-gradient(ellipse at 60% 20%,#12333d99,transparent 55%),#04141e;display:flex;flex-direction:column;overflow:hidden}
.pxfit-view-tabs{display:grid;grid-template-columns:repeat(3,1fr);position:relative;z-index:3}
.pxfit-view-tabs button{min-height:36px;border:1px solid #2d4c58;border-radius:3px;background:#061a25;color:#f4f8f9;font-family:inherit;font-size:12px;font-weight:500;cursor:pointer;padding:7px}
.pxfit-view-tabs button[aria-pressed=true]{background:var(--fit-lime);border-color:var(--fit-lime);color:#06131b;font-weight:800}
.pxfit-view-tabs button:focus-visible,.pxfit-checkout button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.pxfit-model-stage{position:relative;flex:1;min-height:540px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.pxfit-avatar{position:relative;width:100%;aspect-ratio:1/2;max-height:100%;opacity:1;transition:opacity .18s ease,transform .4s ease;transform-origin:center bottom;transform:scaleY(var(--fit-height,1))}
.pxfit-avatar.is-changing{opacity:0}
.pxfit-model-region{position:absolute;inset:0;transform-origin:center center;transition:transform .4s ease}
.pxfit-model-image{position:absolute;inset:0;background-repeat:no-repeat}
.pxfit-model-region--head{clip-path:inset(0 0 81% 0)}
.pxfit-model-region--chest{clip-path:inset(18.8% 0 66% 0);transform:scaleX(var(--fit-width,1)) scaleX(var(--fit-chest,1))}
.pxfit-model-region--waist{clip-path:inset(33.8% 0 50% 0);transform:scaleX(var(--fit-width,1)) scaleX(var(--fit-waist,1))}
.pxfit-model-region--legs{clip-path:inset(49.8% 0 0 0);transform:scaleX(var(--fit-width,1))}
.pxfit-avatar[data-fit=relaxed] .pxfit-model-region--waist,.pxfit-avatar[data-fit=room_to_grow] .pxfit-model-region--waist{filter:drop-shadow(1px 0 2px #baff1520)}
.pxfit-live-stats{position:absolute;right:0;top:11%;margin:0;min-width:78px;max-width:105px;z-index:2;background:#041b26de;border:1px solid #2d5260;border-radius:4px;backdrop-filter:blur(6px)}
.pxfit-live-stats:empty{display:none}
.pxfit-live-stats>div{padding:13px 11px;border-bottom:1px solid #294651}
.pxfit-live-stats>div:last-child{border:0}
.pxfit-live-stats dt{font-size:9px;color:#c0d9e3;letter-spacing:.05em}
.pxfit-live-stats dd{font:800 21px/1.25 var(--display,Arial,sans-serif);color:var(--fit-lime);margin:5px 0 0}
.pxfit-visual>p{font-size:10px;line-height:1.5;color:#c0d2d9;margin:5px 0 0;text-align:center}
.pxfit-ready{border-left:3px solid var(--fit-lime);background:#133a293d;padding:12px 14px}
.pxfit-ready strong{color:var(--fit-lime);font-size:12px;letter-spacing:.06em}
.pxfit-ready p{font-size:11px;color:#c6d9df;margin:5px 0 0;line-height:1.5}
.pxfit-save-row{display:flex;align-items:center;gap:18px;justify-content:space-between;flex-wrap:wrap}
.pxfit-save-row>.pxfit-field{display:flex;align-items:center;gap:12px;flex:1;min-width:230px}
.pxfit-save-row>.pxfit-field>label{white-space:nowrap;margin:0}
.pxfit-save-row .pxfit-input-shell{height:40px;flex:1}
.pxfit-save{display:flex;align-items:center;gap:10px;font-size:11px;cursor:pointer;color:#f1f6f8;flex:1}
.pxfit-save input{accent-color:var(--fit-lime);width:20px;height:20px;flex:none}
.pxfit-assignment-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}
.pxfit-assignment-heading h3,.pxfit-saved-picker h3{font:800 18px var(--display,Arial,sans-serif);color:#f3f9fb}
.pxfit-assignment-heading button,.pxfit-new-profile{border:1px solid #6d8e37;background:#10281e;color:var(--fit-lime);font-size:11px;padding:9px 13px;cursor:pointer}
.pxfit-box-tabs{display:flex;gap:10px;margin:0 0 22px;flex-wrap:wrap;border-bottom:1px solid var(--fit-line);padding-bottom:14px}
.pxfit-box-tabs button{border:1px solid #32505e;background:#061b27;color:#f3f8f9;padding:10px 15px;text-align:left;font-size:12px;cursor:pointer;flex:1}
.pxfit-box-tabs button span{display:block;font-size:10px;color:#8eabb7;margin-top:5px}
.pxfit-box-tabs button[aria-pressed=true]{border-color:var(--fit-lime)}
.pxfit-select{display:block;margin:0 0 18px}
.pxfit-select>span{font-size:10px;letter-spacing:.1em;color:#a9c4ce;display:block;margin-bottom:6px}
.pxfit-select select{width:100%;padding:10px;border:1px solid #365667;background:#061b27;color:#e5f1f6}
.pxfit-assignment:not(:has(.pxfit-saved-picker)) .pxfit-select:has(option:only-child){display:none}
.pxfit-saved-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}
.pxfit-saved-card{border:1px solid #31525f;padding:15px;display:flex;flex-direction:column;gap:6px;background:#081f29}
.pxfit-saved-card strong{font-size:16px}.pxfit-saved-card span{font-size:12px;color:#b8ced6}.pxfit-saved-card small{font-size:11px;color:#8eabb7}
.pxfit-saved-card button:not(.pxfit-link){background:var(--fit-lime);border:0;color:#08141b;padding:10px;font-size:11px;font-weight:800;cursor:pointer;margin-top:auto}
.pxfit-saved-card:has(button[aria-pressed=true]){border-color:var(--fit-lime)}
.pxfit-saved-picker{margin-bottom:20px}.pxfit-link{background:none!important;border:0!important;padding:5px 0!important;color:#b9d2dc!important;font-size:12px;text-decoration:underline;cursor:pointer}
.pxfit-selected{color:var(--fit-lime);padding:14px;border:1px solid #80a32c;background:#193623;font-size:13px}
.pxfit-error{color:#ffd1c7;background:#4e2526;border-left:3px solid #f48f7b;padding:13px;font-size:12px}
.pxfit-account .pxfit-form{margin-top:20px}.pxfit-profile-row{display:flex;align-items:center;gap:15px;justify-content:space-between;border-bottom:1px solid var(--fit-line);padding:14px 0}
.pxfit-profile-row>div{display:flex;flex-direction:column;gap:4px}.pxfit-profile-row span{font-size:12px;color:#a3beca}.pxfit-profile-row a,.pxfit-profile-row button{color:var(--fit-lime);background:transparent;border:0;cursor:pointer}
.pxfit-profile-row form{margin:0}.pxfit-account-editor{margin-top:25px}.pxfit-submit{background:var(--fit-lime);color:#071722;border:0;padding:14px 25px;font-weight:800;margin-top:20px;cursor:pointer}
.pxfit-order-summary{margin:8px 0}.pxfit-order-summary strong{color:#8cae2e}
@media(max-width:1099px){.pxfit-form{grid-template-columns:minmax(0,1.55fr) minmax(220px,1fr);gap:20px}.pxfit-intro h2{font-size:36px}.pxfit-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}.pxfit-section-top{gap:14px}.pxfit-more summary{flex-wrap:wrap}.pxfit-model-stage{min-height:480px}}
@media(max-width:700px){.pxfit-form{display:flex;flex-direction:column;gap:21px}.pxfit-form>*{width:100%}.pxfit-intro h2{font-size:34px}.pxfit-intro p{font-size:12px}.pxfit-type-card{min-height:126px}.pxfit-type-photo{height:84px}.pxfit-type-card strong{font-size:13px}.pxfit-type-card small{font-size:8px}.pxfit-types{gap:7px}.pxfit-section-title{font-size:16px!important}.pxfit-units{width:100%}.pxfit-units label{flex:1;text-align:center}.pxfit-units label span{padding:10px 7px;font-size:10px}.pxfit-basics,.pxfit-form[data-type=kids] .pxfit-basics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pxfit-form[data-type=kids] .pxfit-basics>[data-fit-kids]{grid-column:1/-1}.pxfit-height-compound input{padding:10px 7px!important}.pxfit-height-compound label>span{padding-right:8px}.pxfit-more-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pxfit-more-grid>.pxfit-field{grid-column:1/-1}.pxfit-more summary{gap:6px}.pxfit-more summary small{padding-left:39px}.pxfit-more summary>b{position:absolute;right:12px}.pxfit-more summary{position:relative;padding-right:30px}.pxfit-more summary .pxfit-section-title{font-size:13px!important}.pxfit-visual{padding:12px;min-height:0;order:0}.pxfit-model-stage{min-height:0;height:310px;flex:none;order:1}.pxfit-avatar{width:155px;height:310px;flex:none;margin-right:45px}.pxfit-view-tabs{order:2;margin-top:8px}.pxfit-visual>p{order:3}.pxfit-live-stats{top:10px;right:5px;max-width:95px}.pxfit-live-stats>div{padding:7px 10px}.pxfit-live-stats dd{font-size:17px;margin-top:2px}.pxfit-save-row{flex-direction:column;align-items:stretch;gap:16px}.pxfit-save-row>.pxfit-field{min-width:0;display:block}.pxfit-save-row>.pxfit-field>label{margin-bottom:7px}.pxfit-saved-cards{grid-template-columns:1fr}.pxfit-account{padding:18px}.pxfit-profile-row{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.pxfit-avatar,.pxfit-model-region{transition:none!important}}

.pxfit-benefits svg{width:25px;height:28px;flex:none;color:var(--fit-lime)}
.pxfit-assignment.pxfit-interactive:has(.pxfit-saved-picker) .pxfit-select{display:none}

/* M15A-03: centered people, floating stats and account profile management. */
.pxfit-type-card{transition:border-color .25s,box-shadow .25s,background .25s}
.pxfit-type-photo{width:100%;max-width:210px;margin:0 auto;height:120px;flex:none}
.pxfit-type-card strong{margin-top:4px}.pxfit-type-card small{padding:0 8px}
.pxfit-starting-help{font-size:12px;color:#a9c2cc;line-height:1.5;margin:0 0 14px}
.pxfit-model-stage{padding:14px 0;isolation:isolate}
.pxfit-avatar{flex:none;width:100%;max-width:360px;height:auto;aspect-ratio:1/2;margin:0;transition:opacity .18s ease,transform .35s ease}
.pxfit-live-stats{right:0;top:12%;min-width:70px;max-width:100px}
.pxfit-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}
.pxfit-profile-card{min-width:0;border:1px solid #31515e;border-radius:7px;overflow:hidden;background:radial-gradient(ellipse at top,#18382f,#041720 70%)}
.pxfit-profile-photo{width:220px;max-width:100%;height:165px;margin:auto;background-repeat:no-repeat;mask-image:linear-gradient(#000 80%,transparent)}
.pxfit-profile-content{padding:18px 20px 22px}.pxfit-profile-content h3{font-size:23px;margin:0 0 7px;color:#f4f8fa;overflow-wrap:anywhere}.pxfit-profile-content p{font-size:13px;color:#a9c2cc;margin:6px 0}
.pxfit-default-badge{display:inline-block;color:#c8ff28;background:#baff1515;border:1px solid #697e31;padding:5px 8px;font-size:10px;letter-spacing:.1em;margin-top:8px}
.pxfit-profile-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;align-items:center}.pxfit-profile-actions form{margin:0!important}
.pxfit-account .pxfit-profile-actions a,.pxfit-account .pxfit-profile-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 12px;border:1px solid #375765;background:#071e29;color:#e4f1f6;font-size:11px;font-weight:700;text-decoration:none;cursor:pointer}
.pxfit-account .pxfit-create{display:inline-flex;min-height:46px;align-items:center;background:#c8ff28;color:#071722;padding:12px 20px;text-decoration:none;font-weight:800;font-size:13px}
.pxfit-back{color:#c8ff28;font-size:12px}.pxfit-notice{border-left:3px solid #c8ff28;padding:12px;background:#153529}.pxfit-empty{color:#a9c2cc;grid-column:1/-1;padding:22px 0}
@media(max-width:700px){.pxfit-avatar{width:180px;height:360px;margin:0}.pxfit-model-stage{height:auto;min-height:390px}.pxfit-type-photo{height:84px}.pxfit-profile-grid{grid-template-columns:1fr}.pxfit-create{width:100%;justify-content:center}.pxfit-live-stats{top:20px}.pxfit-account .pxfit-form{display:flex}}
@media(max-width:420px){.pxfit-model-stage{flex-direction:column}.pxfit-live-stats{position:static;display:flex;flex-wrap:wrap;max-width:100%;width:100%;margin-top:8px;justify-content:center}.pxfit-live-stats>div{flex:1;min-width:62px;border:0}.pxfit-live-stats dd{font-size:16px}}

/* M15A-04: optional adult measurements only; kids use basic fit details. */
.pxfit-more-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.pxfit-form[data-type=kids] .pxfit-more{display:none}

/* M15A-05: permanent inset units, independent of input width and focus. */
.pxfit-form .pxfit-height-compound{display:flex;flex-direction:row;flex-wrap:nowrap}
.pxfit-form .pxfit-height-compound>label{position:relative;display:block;flex:0 0 50%;width:50%;height:100%;min-width:0;box-sizing:border-box}
.pxfit-form .pxfit-height-compound>label>input{width:100%;height:100%;box-sizing:border-box;padding-right:34px!important;appearance:textfield;-moz-appearance:textfield}
.pxfit-form .pxfit-height-compound>label>input::-webkit-inner-spin-button,.pxfit-form .pxfit-height-compound>label>input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.pxfit-form .pxfit-height-compound>label>.pxfit-height-unit{position:absolute;display:flex!important;align-items:center;justify-content:flex-end;top:0;bottom:0;right:10px;width:18px;padding:0;margin:0;visibility:visible!important;opacity:1;color:#dcebee;font-family:inherit;font-size:12px;font-weight:400;line-height:1;text-transform:none;letter-spacing:normal;pointer-events:none;z-index:1}
