/* Pressure is a shared scalar scale; blue and terracotta identify sides only. */
.axp{--axp-line:var(--line,#343A40);--axp-muted:var(--muted,#ADB5BC);--axp-left:#197DA0;--axp-right:#AD593C;max-width:100%;color:#edf1f3;font-variant-numeric:tabular-nums}
.axp-visual-stage{min-width:0}
.axp-unit-controls{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:3px;padding:3px;margin:0 0 12px;border:1px solid var(--axp-line);border-radius:7px;background:#181b1e}
.axp .axp-unit-controls button{min-height:44px;padding:7px 4px;border:1px solid transparent;border-radius:5px;color:var(--axp-muted);background:transparent;font-size:12px;line-height:17px;font-weight:500;touch-action:manipulation;white-space:nowrap}
.axp .axp-unit-controls button:hover{background:#282e33;color:#edf1f3}
.axp .axp-unit-controls button.is-selected{color:#edf1f3;background:#2d3337;border-color:#64736f;box-shadow:0 1px 3px #172c3510;font-weight:600}
.axp .axp-unit-controls button:focus-visible{outline:2px solid var(--lime,#70C7B1);outline-offset:2px}
.axp-map-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--axp-muted);font-size:12px;line-height:18px}
.axp-insoles{display:block;width:100%;height:250px;overflow:visible;margin:4px auto 8px;max-width:350px}
.axp-foot-label{font:600 12px 'DM Sans',Arial,sans-serif;letter-spacing:1.2px;fill:#d7dfe3}
.axp-foot-value{font:600 13px 'DM Sans',Arial,sans-serif;fill:#edf1f3}
.axp-foot-value tspan{font-weight:400;font-size:12px;fill:var(--axp-muted)}
.axp-cop-legend{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:#e0d2e5;font-size:12px;font-weight:500}
.axp-cop-legend i{display:inline-block;width:17px;height:2px;flex:none;border-radius:2px;background:#f4a9ff;box-shadow:0 0 0 1px #804889}
.axp-cop-underlay,.axp-cop-line{fill:none;stroke-linecap:round;stroke-linejoin:round}
.axp-cop-underlay{stroke:#172136;stroke-width:5;stroke-opacity:.7}
.axp-cop-line{stroke:#f4a9ff;stroke-width:2.5}
.axp-cop-origin{fill:#263444;stroke:#f4a9ff;stroke-width:1.8}
.axp-cop-arrow{fill:none;stroke:#fff0ff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.axp-zone{cursor:pointer;outline:none;transition:fill .16s ease}
.axp-zone:hover{fill:#ffffff22}
.axp-zone.is-selected{fill:#bcecff12;stroke:none}
.axp-zone:focus-visible{fill:#ffffff33;stroke:#fff;stroke-width:2;stroke-dasharray:none}
.axp-scale{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;font-size:11px;line-height:15px;color:var(--axp-muted);margin:0 0 16px}
.axp-scale div{grid-column:1/-1;height:6px;border-radius:3px;background:linear-gradient(90deg,#163071 0%,#1c63be 20%,#28c6e5 42%,#85e5d2 60%,#f8e166 74%,#f98f3e 87%,#dd3d35 100%)}
.axp-scale span:nth-child(3){text-align:center}.axp-scale span:last-child{text-align:right}
.axp-regions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#181b1e;border:1px solid var(--axp-line);border-radius:7px;padding:3px;gap:3px;margin:0 0 14px}
.axp .axp-regions button{min-height:44px;padding:6px 3px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--axp-muted);font-size:12px;font-weight:500;line-height:16px;touch-action:manipulation}
.axp .axp-regions button:hover{color:#edf1f3;background:#282e33}
.axp .axp-regions button.is-selected{background:#2d3337;border-color:#515f65;color:var(--lime,#70C7B1);box-shadow:0 1px 3px #172c3510;font-weight:600}
.axp-detail-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;line-height:18px;margin-bottom:8px}
.axp-detail-heading strong{font-weight:600}.axp-detail-heading>span{color:var(--axp-muted);font-size:11px}
.axp-bar-row{display:grid;grid-template-columns:34px minmax(0,1fr) 40px;align-items:center;gap:10px;font-size:12px;line-height:18px;margin-top:7px}
.axp-side.left{color:var(--axp-left)}.axp-side.right{color:var(--axp-right)}
.axp-bar-track{height:6px;background:#343a40;border-radius:3px;overflow:hidden}.axp-bar-track i{height:100%;display:block;border-radius:3px;min-width:0}.axp-bar-track .left{background:var(--axp-left)}.axp-bar-track .right{background:var(--axp-right)}
.axp-bar-row b{text-align:right;font-size:12px;font-weight:600}
.axp .axp-note{color:var(--axp-muted);font-size:12px;line-height:1.5;margin:16px 0 0;padding:0}
.axp-no-contact{font-size:11px;line-height:16px;color:var(--axp-muted);margin:8px 0 0}
.axp-method{border:1px solid var(--axp-line);border-radius:6px;padding:11px 13px;margin-top:16px;color:var(--axp-muted);font-size:12px;line-height:1.6}
.axp-method summary{cursor:pointer;font-weight:500;color:#d7dfe3;min-height:22px}
.axp-method summary:focus-visible{outline:2px solid var(--lime,#70C7B1);outline-offset:3px}
.axp-method p{font-size:12px;line-height:1.6;margin:10px 0 0}
.axp-compact .axp-visual-stage{height:var(--analysis-stage,300px);display:flex;flex-direction:column;align-items:stretch;min-height:0}
.axp-compact .axp-map-meta{height:18px;flex:none;font-size:11px;line-height:18px}
.axp-compact .axp-map-meta span:first-child{color:var(--axp-muted)}
.axp-compact .axp-insoles{height:250px;min-height:0;flex:1;margin:0 auto 7px;max-width:350px}
.axp-compact .axp-foot-label{font-size:16px;letter-spacing:1.2px}
.axp-compact .axp-foot-value{font-size:16px}
.axp-compact .axp-foot-value tspan{font-size:14px}
.axp-compact .axp-scale{flex:none;margin:0 0 12px;gap:4px;line-height:14px}
.axp-compact .axp-metrics-stage{height:var(--analysis-metrics,140px);border-top:1px solid var(--axp-line);padding-top:14px;display:flex;flex-direction:column}
.axp-compact .axp-regions{margin:0 0 10px;padding:0;border:0;background:#20262a;gap:3px;border-radius:6px;flex:none}
.axp-compact .axp-regions button{min-height:44px;border:1px solid transparent;border-radius:5px;font-size:12px}
.axp-compact .axp-regions button.is-selected{background:#2d3337;border-color:#64736f;box-shadow:inset 0 -2px var(--lime,#70C7B1);color:#edf1f3}
.axp-compact .axp-detail-heading{margin-bottom:5px;line-height:17px}
.axp-compact .axp-bar-row{margin-top:5px;line-height:17px}
.axp-compact .axp-note{display:none}
.axp-expanded .axp-insoles{height:330px;max-width:420px;margin:10px auto 18px}
.axp-expanded .axp-map-meta{font-size:12px}.axp-expanded .axp-regions button{min-height:44px;font-size:13px}
.axp-expanded .axp-detail-heading{font-size:14px}.axp-expanded .axp-bar-row{font-size:13px;grid-template-columns:38px minmax(0,1fr) 36px;line-height:22px}
.axp-expanded .axp-bar-track{height:8px}.axp-expanded .axp-bar-row b{font-size:14px}
.axp-table{margin-top:22px;border-top:1px solid var(--axp-line);font-size:13px}.axp-table-row{display:grid;grid-template-columns:minmax(0,1fr) 80px 80px;gap:12px;padding:12px 8px;border-bottom:1px solid var(--axp-line)}.axp-table-row>span:not(:first-child){text-align:right}.axp-table-row small{font-size:11px;color:var(--axp-muted)}.axp-table-head{color:var(--axp-muted);font-size:12px}.axp-table-row.is-selected{color:var(--lime,#70C7B1);background:#292f33}
@media(max-width:600px){.axp-expanded .axp-insoles{height:290px}.axp-map-meta{flex-wrap:wrap;gap:2px 12px}.axp-compact .axp-insoles{max-width:320px}}
@media(prefers-reduced-motion:reduce){.axp-zone{transition:none}}
.axp{--axp-left:var(--cyan,#197DA0);--axp-right:var(--coral,#AD593C)}

/* Anatomical selection follows the actual insole contour, including both region boundaries. */
.axp-region-outline-underlay,.axp-region-cut-underlay{fill:none;stroke:#122535;stroke-width:5;stroke-opacity:.7}
.axp-region-outline,.axp-region-cut{fill:none;stroke:#ecfbff;stroke-width:2.2;stroke-linejoin:round}
.axp-region-outline{fill:#bdeeff08}
.axp .axp-table button.axp-table-row{width:100%;min-height:52px;border:0;border-bottom:1px solid var(--axp-line);border-radius:0;background:transparent;color:#dce4e8;font:inherit;font-weight:500;text-align:left;cursor:pointer;box-shadow:inset 2px 0 transparent}
.axp .axp-table button.axp-table-row:hover{background:#ffffff07}
.axp .axp-table button.axp-table-row.is-selected{background:#2a3136;color:#f3f6f8;box-shadow:inset 2px 0 var(--lime,#70C7B1)}
.axp .axp-table button.axp-table-row:focus-visible{outline:2px solid var(--lime,#70C7B1);outline-offset:-2px}
.axp-report-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:14px;line-height:20px}
.axp-report-heading span{font-size:12px;color:var(--axp-muted)}
.axp-report-hint{font-size:12px;color:var(--axp-muted);line-height:1.5;margin:15px 0 0}
.axp-balance-summary{margin-top:22px;padding-top:19px;border-top:1px solid var(--axp-line)}
.axp-balance-title{font-size:12px;color:var(--axp-muted);margin-bottom:10px}
.axp-balance-values{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--axp-muted)}
.axp-balance-values b{color:#edf1f3;font-size:17px;font-weight:600;margin-left:6px}
.axp-balance-track{display:flex;height:7px;background:#343a40;border-radius:4px;overflow:hidden;margin-top:11px;gap:2px}
.axp-balance-track i{display:block;height:100%}.axp-balance-track .left{background:var(--axp-left)}.axp-balance-track .right{background:var(--axp-right)}
.axp-overview{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(270px,.85fr);column-gap:28px;row-gap:0;align-items:start}
.axp-overview .axp-unit-controls{grid-column:1/-1;max-width:460px;width:100%;margin-bottom:18px}
.axp-overview .axp-visual-stage{grid-column:1;grid-row:2;height:340px;display:flex;flex-direction:column;min-height:0}
.axp-overview .axp-insoles{height:285px;min-height:0;flex:1;max-width:440px;margin:2px auto 10px}
.axp-overview .axp-foot-label{font-size:16px;letter-spacing:1.3px}
.axp-overview .axp-map-meta{font-size:12px;height:20px;line-height:20px;flex:none}
.axp-overview .axp-scale{flex:none;margin:0 0 15px}
.axp-overview .axp-metrics-stage{grid-column:1;grid-row:3;height:auto;display:block;border:0;padding:0}
.axp-overview .axp-regions{margin:0}
.axp-overview-report{grid-column:2;grid-row:2/span 2;min-width:0;padding:5px 0 0 24px;border-left:1px solid var(--axp-line)}
.axp-overview-report .axp-table{margin-top:18px;font-size:14px}
.axp-overview-report .axp-table-row{grid-template-columns:minmax(0,1fr) 70px 70px;padding:14px 9px;gap:10px}
.axp-overview-report .axp-table-head{font-size:12px;padding-top:11px;padding-bottom:11px}
.axp-overview-report .axp-method{border:0;border-top:1px solid var(--axp-line);border-radius:0;padding:13px 0 0;margin-top:20px}
.axp-overview>.axp-note{display:none}
@media(max-width:760px){.axp-overview{grid-template-columns:minmax(0,1fr);row-gap:16px}.axp-overview .axp-unit-controls{grid-column:1;margin:0;max-width:none}.axp-overview .axp-visual-stage{grid-column:1;grid-row:2;height:340px}.axp-overview .axp-metrics-stage{grid-column:1;grid-row:3}.axp-overview-report{grid-column:1;grid-row:4;border-left:0;border-top:1px solid var(--axp-line);padding:18px 0 0}.axp-overview .axp-scale{margin-bottom:0}}
