/* =====================================================================
   Build mode assists: quick room sizes, guided tour (23-build-assist.js)
   ===================================================================== */
.bm-presets{margin-bottom:14px}
.bm-presets .bm-tip{margin:2px 0 8px}
.bm-preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
.bm-preset{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:7px 8px;border-radius:10px;
  border:1px solid var(--stroke);background:var(--glass-solid);color:var(--txt);font:inherit;cursor:pointer;text-align:left;
  transition:border-color .15s,background .15s}
.bm-preset{min-width:0}
.bm-preset b{font-size:11.5px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.bm-preset span{font-size:10px;white-space:nowrap;color:var(--mut);font-variant-numeric:tabular-nums}
.bm-preset:hover{border-color:var(--stroke-strong)}
.bm-preset.on{border-color:var(--amber);background:rgba(217,122,0,.10)}
.bm-preset:focus-visible{outline:2px solid var(--amber);outline-offset:2px}

.bm-tourbtn{width:auto;padding:0 10px;font-size:12px;font-weight:650}
.bm-tourlink{display:block;margin:12px auto 0;background:none;border:0;color:var(--amber-deep);font:inherit;font-size:12.5px;
  font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

.bmt{position:fixed;inset:0;z-index:200}
.bmt-spot{position:fixed;border-radius:12px;box-shadow:0 0 0 9999px rgba(12,18,30,.52),0 0 0 2px var(--amber);
  pointer-events:none;transition:left .25s var(--ease-out),top .25s var(--ease-out),width .25s var(--ease-out),height .25s var(--ease-out)}
.bmt-spot.none{left:50%!important;top:40%!important;width:0!important;height:0!important;box-shadow:0 0 0 9999px rgba(12,18,30,.52)}
.bmt-card{position:fixed;padding:18px 18px 14px;border-radius:16px;background:var(--glass-solid);color:var(--txt);
  border:1px solid var(--stroke);box-shadow:0 18px 50px rgba(12,18,30,.28);transition:left .25s var(--ease-out),top .25s var(--ease-out)}
.bmt-step{font:600 10.5px/1 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--amber-deep)}
.bmt-card h3{margin:8px 0 6px;font-size:17px;letter-spacing:-.01em}
.bmt-card p{margin:0;font-size:13px;line-height:1.5;color:var(--mut)}
.bmt-dots{display:flex;gap:5px;margin:14px 0 12px}
.bmt-dots i{width:6px;height:6px;border-radius:50%;background:var(--stroke-strong)}
.bmt-dots i.on{background:var(--amber);width:16px;border-radius:3px}
.bmt-nav{display:flex;gap:8px;align-items:center}
.bmt-nav button{font:inherit;font-size:12.5px;font-weight:600;border-radius:9px;padding:7px 12px;cursor:pointer;border:1px solid var(--stroke);
  background:transparent;color:var(--txt)}
.bmt-skip{margin-right:auto;border-color:transparent!important;color:var(--mut)!important;padding-left:0!important}
.bmt-next{background:var(--amber)!important;border-color:var(--amber)!important;color:#fff!important}
.bmt-nav button:disabled{opacity:.4;cursor:default}
.bmt-nav button:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
@media (prefers-reduced-motion:reduce){.bmt-spot,.bmt-card{transition:none}}
