/* Dialog centering must override the old .auth mobile margins. */
dialog.install-dialog,dialog.action-dialog{position:fixed;inset:0;margin:auto!important;box-sizing:border-box;width:calc(100% - 32px);max-width:460px;max-height:calc(100dvh - 40px);overflow:auto;padding:28px;border:1px solid var(--wg-line);border-radius:28px;background:var(--wg-card);color:var(--wg-text);box-shadow:0 24px 80px #0005}
dialog.install-dialog h2{font-size:clamp(23px,5vw,30px);line-height:1.2;margin:12px 0 20px}dialog.install-dialog p{font-size:16px;line-height:1.6}dialog.install-dialog>.btn{width:100%;margin-top:10px}
.install-steps{list-style:none;counter-reset:install;padding:0;margin:20px 0;display:grid;gap:14px}.install-steps li{counter-increment:install;display:grid;grid-template-columns:30px 1fr;gap:12px;font-size:15px;line-height:1.5}.install-steps li:before{content:counter(install);display:grid;place-items:center;align-self:start;width:30px;height:30px;border-radius:50%;background:var(--wg-soft);color:var(--wg-secondary);font-weight:700}
.equipment-disclosure{margin:20px 0;border:1px solid var(--wg-line);border-radius:20px;padding:12px 16px;background:var(--wg-card)}.equipment-disclosure>summary{display:flex;gap:10px;align-items:center;list-style:none;font-size:16px}.equipment-disclosure>summary::-webkit-details-marker{display:none}.equipment-disclosure>summary .pill{margin-left:auto;max-width:44%;font-size:11px}.equipment-disclosure>summary svg{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;transition:transform .2s}.equipment-disclosure[open]>summary svg{transform:rotate(180deg)}
.measure-picker{display:none}.action-dialog{text-align:center}.action-dialog h2{font-size:25px;margin:20px 0 12px}.action-dialog p{font-size:16px}.action-spinner{width:52px;height:52px;border:4px solid var(--wg-line);border-top-color:var(--wg-secondary);border-radius:50%;margin:0 auto;animation:action-spin .8s linear infinite}@keyframes action-spin{to{transform:rotate(360deg)}}
@media(max-width:760px){
 .measure-picker{display:block;background:var(--wg-card);border:1px solid var(--wg-line);border-radius:24px;padding:22px 18px;margin:12px 0}.measure-value{display:block;text-align:center;font-size:clamp(42px,13vw,64px);font-weight:700;line-height:1.25;letter-spacing:-.04em}.measure-value small{font-size:20px;letter-spacing:0;margin-left:8px;opacity:.8}.measure-picker p{text-align:center;font-size:13px;margin:10px 0}
 .measure-ruler{background:repeating-linear-gradient(90deg,transparent 0,transparent 19px,var(--wg-line) 19px,var(--wg-line) 21px);border-radius:14px;padding:20px 0;margin:18px 0;position:relative}.measure-ruler input[type=range]{width:100%;height:32px;min-height:32px;margin:0;accent-color:var(--wg-secondary);cursor:ew-resize;background:transparent}.measure-adjust{display:flex;align-items:center;justify-content:center;gap:20px}.measure-adjust button{width:48px;height:48px;border-radius:50%;border:1px solid var(--wg-line);background:var(--wg-soft);color:var(--wg-text);font-size:24px}.measure-adjust span{font-size:13px}
 .measure-picker.height-picker .measure-surface{display:grid;grid-template-columns:1fr 60px;align-items:center;gap:10px}.height-picker .measure-ruler{height:190px;padding:0;background:repeating-linear-gradient(0deg,transparent 0,transparent 19px,var(--wg-line) 19px,var(--wg-line) 21px)}.height-picker .measure-ruler input[type=range]{writing-mode:vertical-lr;direction:rtl;height:190px;width:60px;cursor:ns-resize}
 .mobile-dock{left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));border:1px solid var(--wg-line);border-radius:26px;background:color-mix(in srgb,var(--wg-header) 94%,transparent);box-shadow:0 8px 28px #0003;padding:8px;gap:4px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.mobile-dock a{opacity:1;font-size:11px;line-height:1.3;font-weight:500;padding:7px 3px;color:var(--wg-text);border-radius:19px}.mobile-dock a.active,.mobile-dock a[aria-current=page]{background:var(--wg-soft);color:var(--wg-secondary);font-weight:700}.mobile-dock .dock-icon{display:grid;place-items:center;margin:0 auto 4px;width:34px;height:29px}.dock-icon svg{display:block;width:24px;height:24px}.mobile-dock a.active .dock-icon{transform:translateY(-1px)}.client-portal{padding-bottom:calc(105px + env(safe-area-inset-bottom))}
 .choice-grid .place-choice:last-child{grid-column:auto;flex-direction:column;text-align:center}.choice-grid .place-choice{align-items:center;text-align:center;min-height:150px}.choice-grid .place-choice strong{font-size:15px}.equipment-disclosure{padding:10px}.equipment-disclosure>summary{flex-wrap:wrap;font-size:15px}.equipment-disclosure>summary .pill{max-width:none;font-size:10px}
 dialog.install-dialog,dialog.action-dialog{padding:24px;width:calc(100% - 32px);max-height:calc(100dvh - 32px)}
}
@media(prefers-reduced-motion:reduce){.action-spinner{animation:none;border-style:dotted}.equipment-disclosure>summary svg{transition:none}}
