.measure-guide{margin:20px 0 0;background:var(--paper);border:1px solid var(--line);padding:24px clamp(16px,4vw,40px);}
.measure-figure{margin:0;text-align:center;}
.measure-figure figcaption{font-size:15px;color:var(--accent);letter-spacing:.08em;}
.measure-visual{position:relative;height:260px;max-width:440px;margin:12px auto 16px;background:var(--ink);overflow:hidden;--dog-scale:.45;}
.measure-visual model-viewer{width:78%;height:100%;pointer-events:none;transform:scale(var(--dog-scale));transform-origin:50% 93%;}
.measure-food-wrap{position:absolute;right:5%;bottom:7%;width:11.05%;}
.measure-food{display:block;width:100%;height:auto;}
.measure-food-label{position:absolute;right:0;bottom:calc(100% + 6px);color:var(--paper);font:600 11px Arial,sans-serif;letter-spacing:.06em;white-space:nowrap;}
.measure-floor{position:absolute;left:5%;right:5%;bottom:7%;height:1px;background:var(--ink-mid);}
.measure-comparison{font-size:11px;line-height:1.7;color:var(--ink-mid);margin:0 0 16px;}
.measure-fallback{position:absolute;inset:0;display:grid;place-items:center;font-size:13px;color:var(--paper);}
.measure-visual.is-ready .measure-fallback{display:none;}
.measure-input{border-top:1px solid var(--line);padding-top:20px;text-align:center;}
.measure-input label{display:block;font-size:12px;letter-spacing:.1em;color:var(--ink-mid);margin-bottom:12px;}
.measure-stepper{display:flex;align-items:center;justify-content:center;gap:16px;}
.measure-stepper button{width:48px;height:48px;border:1px solid var(--line);background:var(--paper-2);color:var(--ink);font:24px var(--serif);cursor:pointer;}
.measure-stepper button:disabled{opacity:.35;cursor:default;}
.measure-stepper button:focus-visible,.measure-stepper input:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}
.measure-number{display:flex;align-items:baseline;gap:6px;}
.page-estimate .measure-stepper input{width:110px;padding:0;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:center;font:44px var(--latin);color:var(--ink);appearance:textfield;}
.measure-stepper input::-webkit-inner-spin-button,.measure-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}
.measure-number span{font-size:15px;}
.measure-hint{font-size:11px;color:var(--ink-mid);margin:10px 0 16px;}
.measure-ruler{position:relative;padding-bottom:20px;}
.measure-ruler input{display:block;width:100%;height:36px;margin:0;appearance:none;background:transparent;cursor:pointer;accent-color:var(--accent);}
.measure-ruler input::-webkit-slider-runnable-track{height:2px;background:var(--ink-mid);}
.measure-ruler input::-moz-range-track{height:2px;background:var(--ink-mid);}
.measure-ruler input::-webkit-slider-thumb{appearance:none;width:24px;height:24px;border:4px solid var(--paper);background:var(--accent);border-radius:50%;margin-top:-11px;outline:1px solid var(--accent);}
.measure-ruler input::-moz-range-thumb{width:16px;height:16px;border:4px solid var(--paper);background:var(--accent);border-radius:50%;outline:1px solid var(--accent);}
.measure-ticks{display:flex;justify-content:space-between;margin:0 12px;pointer-events:none;}
.measure-ticks i{display:block;width:1px;height:5px;background:var(--line);}
.measure-ticks i:nth-child(5n+1){height:10px;background:var(--ink-mid);}
.measure-scale{display:flex;justify-content:space-between;font:12px var(--latin);color:var(--ink-mid);margin-top:6px;}
@media(max-width:900px){.measure-guide{padding:18px 16px;}.measure-visual{height:210px;}.measure-figure figcaption{font-size:13px;}.measure-stepper{gap:12px;}.page-estimate .measure-stepper input{font-size:40px;width:100px;}}
