/* Let the object meet the browser's content edge; keep every control below it. */
.workspace{background-image:none}.canvas-label,.canvas-brand{display:none}
.workspace[data-mode=rectangle] .canvas-hint,.workspace[data-mode=circle] .canvas-hint,.workspace[data-mode=angle] .canvas-hint{display:none}
#calibrationRange{height:44px;margin-block:0;touch-action:none;cursor:ew-resize;user-select:none;-webkit-user-select:none}
.measure-handle,.measure-handle image{-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}
#angleSliderControl,#circleSliderControl{position:absolute;z-index:2;left:50%;transform:translateX(-50%);width:calc(100% - 36px);max-width:420px;background:#ffffffed;color:var(--mode);padding:0 4px;touch-action:none}
#angleSliderControl[hidden],#circleSliderControl[hidden]{display:none}#angleSliderControl>label,#circleSliderControl>label{display:flex;justify-content:space-between;font-size:14px;font-weight:600;line-height:1.4}#angleSliderControl input,#circleSliderControl input{display:block;height:38px;margin:0;touch-action:none;accent-color:var(--mode)}#angleSliderControl>div,#circleSliderControl>div{display:flex;justify-content:space-between;font-size:11px;color:#6e7390;line-height:1.2}#circleSliderSummary{font-size:13px;line-height:1.6;margin:8px 0 0;text-align:center;color:var(--mode)}
#circleSliderControl .circle-view-switch{display:flex;justify-content:flex-start;gap:7px;margin-bottom:9px}#circleSliderControl .circle-view-switch button{font-size:12px;padding:5px 10px;border:1px solid #dccbd4;border-radius:5px;min-height:29px}#circleSliderControl .circle-view-switch [aria-pressed=true]{color:#a3436b;background:#f6e8ef;border-color:#c789a6}#circleSliderHint{font-size:11px;line-height:1.5;color:#76716e;text-align:center;margin:5px 0 0}
#circleSliderValue{max-width:80%;overflow-wrap:anywhere;text-align:right}#circleSliderSummary{overflow-wrap:anywhere}body.wide-measure .wide-reading{max-width:44%;overflow:hidden;text-overflow:ellipsis}
#valuesDialog{max-width:420px;width:calc(100% - 24px);max-height:80dvh;overflow:auto;padding:25px 22px;border-radius:12px;transform:none}
#valuesDialog h2{font-size:23px;margin:0 40px 22px 0}#valuesDialog .measurement-fields{display:block;margin:0}#valuesDialog .field-row{display:flex;margin:15px 0;min-height:42px}#valuesDialog .field-row label{font-size:17px}#valuesDialog .field-input{width:145px}#valuesDialog input{font-size:20px;width:110px;padding-block:12px}#valuesDialog .secondary-readings{display:block;margin-top:22px}#valuesDialog .secondary-row{display:flex;margin:12px 0;font-size:16px}
body.wide-measure .instrument{grid-template-rows:minmax(0,1fr) auto auto}
body.wide-measure.landscape-measure .instrument{width:100dvw;height:100dvh;transform:none;inset:0}
body.wide-measure.landscape-measure.portrait-measure .instrument{inset:auto;left:0;top:0;width:100dvh;height:100dvw;transform:translateX(100dvw) rotate(90deg);transform-origin:top left}
body.wide-measure .instrument-body{grid-row:1;grid-column:1;min-height:0}
body.wide-measure .instrument-toolbar{grid-row:2;grid-column:1;display:flex;flex-wrap:nowrap;justify-content:space-between;height:46px;padding:3px 7px;border-top:1px solid var(--line);border-bottom:0;gap:7px}
body.wide-measure .mode-tabs{display:none}body.wide-measure .toolbar-actions{display:flex;flex:1;min-width:0;justify-content:flex-end;border:0;margin:0;padding:0;gap:5px}
body.wide-measure .mobile-tool-name{display:none}body.wide-measure.shape-measure .mobile-tool-name{display:block;flex:1;text-align:right;font-size:14px;font-weight:600;line-height:1.5}
body.wide-measure .wide-close{font-size:12px;padding-inline:7px;flex-shrink:0}body.wide-measure .wide-reading{font-size:18px;margin-right:auto}body.wide-measure .wide-action{font-size:12px;padding-inline:7px}body.wide-measure .unit-switch{margin:0}
body.wide-measure .marking-panel{grid-row:3;grid-column:1;min-height:55px;padding:5px 7px}
body.wide-measure .marking-panel[hidden]{display:none!important}
body.wide-measure .canvas-label,body.wide-measure .canvas-brand,body.wide-measure .canvas-hint{display:none}
/* Shape tools use the phone as held. Only straight measuring tools rotate. */
body.wide-measure.shape-measure .instrument{inset:0;left:0;top:0;width:100dvw;height:100dvh;transform:none;grid-template-rows:minmax(0,1fr) auto}
body.wide-measure.shape-measure .instrument-toolbar{flex-wrap:wrap;gap:4px 8px;height:auto;min-height:86px;padding:7px 10px}
body.wide-measure.shape-measure .wide-close{min-height:32px}body.wide-measure.shape-measure .toolbar-actions{flex-basis:100%;flex-wrap:wrap;gap:7px}body.wide-measure.shape-measure .wide-reading{font-size:23px}body.wide-measure.shape-measure .wide-action{font-size:14px;min-height:38px}body.wide-measure.shape-measure .unit-switch button{font-size:13px;min-width:34px}
body.wide-measure.measure-editing .instrument{width:var(--editing-width)!important;height:var(--editing-height)!important}
/* Card calibration needs the long edge even when the shape stays in portrait. */
body.mobile-calibration #calibrationDialog{inset:0;margin:0;left:0;top:0;width:100dvw;height:100dvh;max-width:none;max-height:none;padding:0;border:0;border-radius:0;transform:none;transform-origin:top left;overflow:hidden;background:#f8f8f3}
body.mobile-calibration #calibrationDialog .dialog-close{right:12px;top:10px;width:36px;height:36px;z-index:6}
body.mobile-calibration .calibration-topbar{left:16px;right:66px;top:9px;max-width:none;padding:0}
body.mobile-calibration .calibration-topbar .calibration-range-label{font-size:13px;line-height:1.5}body.mobile-calibration .calibration-topbar output{font-size:15px}
body.mobile-calibration .calibration-topbar>span{font-size:12px;line-height:1.4;display:block}
body.mobile-calibration .calibration-message{left:16px;right:auto;top:104px;width:220px}body.mobile-calibration .calibration-message .eyebrow,body.mobile-calibration .calibration-message p{display:none}body.mobile-calibration .calibration-message h2{font-size:22px!important;line-height:1.25;margin:0;letter-spacing:-.5px}body.mobile-calibration .calibration-message h2 br{display:block}
body.mobile-calibration .calibration-guide-surface{left:16px;right:16px;top:173px;bottom:0;min-width:0}
body.mobile-calibration .calibration-bottom-controls{display:flex;align-items:center;gap:8px;top:104px;left:auto;right:16px;bottom:auto;width:calc(100% - 260px);padding:0;border:0}
body.mobile-calibration .calibration-bottom-controls .manual-calibration{display:flex;align-items:center;gap:8px;flex:1;font-size:12px}body.mobile-calibration .manual-calibration label{font-size:12px;white-space:nowrap}body.mobile-calibration .manual-calibration label span{display:none}body.mobile-calibration .manual-calibration input{width:85px;font-size:17px;padding:8px}
body.mobile-calibration .calibration-bottom-controls .dialog-note,body.mobile-calibration #defaultCalibration{display:none}body.mobile-calibration .calibration-bottom-controls .dialog-actions{margin:0;display:flex}body.mobile-calibration .calibration-bottom-controls .primary-button{font-size:13px;padding:10px;white-space:nowrap;min-height:40px}
body.mobile-calibration .calibration-error{position:absolute;top:42px;font-size:11px;margin:0}body.mobile-calibration .calibration-vertical-guides #cardReference{height:110px;padding:14px}body.mobile-calibration .calibration-vertical-guides #cardReference>svg{display:none}
body.mobile-calibration.measure-editing #calibrationDialog,body.mobile-calibration.calibration-portrait.measure-editing #calibrationDialog{width:var(--cal-edit-width);height:var(--cal-edit-height)}
body.mobile-calibration.calibration-portrait #calibrationDialog{width:100dvh;height:100dvw;transform:translateX(100dvw) rotate(90deg)}
@media(max-width:360px){body.wide-measure.shape-measure .wide-action{font-size:12px;padding-inline:6px}body.wide-measure.shape-measure .toolbar-actions{gap:4px}body.wide-measure.shape-measure .wide-reading{font-size:20px}}
