.hm-model{--u: var(--hm-u, min(4.6cqi, 6.4cqh));--face-top: #ffffff;--face-n: #f0f3f6;--face-s: #e1e7ee;--face-w: #c9d3de;--face-e: #d8e0e8;--floor: #f2f5f8;position:relative;width:calc(12 * var(--u));height:calc(9 * var(--u));transform-style:preserve-3d;transition:transform 1.5s cubic-bezier(.65,0,.35,1)}[data-view=plan] .hm-model{transform:rotateX(0) rotate(0) scaleZ(.02)}[data-view=model] .hm-model,[data-view=quantities] .hm-model{transform:rotateX(56deg) rotate(-34deg) scaleZ(1)}.hm-model>*{position:absolute;display:block}.hm-model-shadow{inset:-12%;background:radial-gradient(closest-side,#0f1c2e33,#0f1c2e00);transform:translateZ(calc(-.32 * var(--u)))}.hm-box{left:calc(var(--x) * var(--u));top:calc(var(--y) * var(--u));width:calc(var(--w) * var(--u));height:calc(var(--d) * var(--u));transform-style:preserve-3d;transform:translateZ(calc(var(--z) * var(--u)))}.hm-box i{position:absolute;display:block}.hm-box .f-top{inset:0;background:var(--face-top);transform:translateZ(calc(var(--h) * var(--u)))}.hm-box .f-n,.hm-box .f-s{left:0;width:100%;height:calc(var(--h) * var(--u));transform-origin:0 0;transform:rotateX(90deg)}.hm-box .f-n{top:0;background:var(--face-n)}.hm-box .f-s{top:100%;background:var(--face-s)}.hm-box .f-w,.hm-box .f-e{top:0;width:calc(var(--h) * var(--u));height:100%;transform-origin:0 0;transform:rotateY(-90deg)}.hm-box .f-w{left:0;background:var(--face-w)}.hm-box .f-e{left:100%;background:var(--face-e)}.hm-box:not(.hm-slab) .f-top:after{content:"";position:absolute;inset:0;background:var(--ink, #0f1c2e);opacity:0;transition:opacity 1.5s ease}.hm-box.is-window .f-top:after{background:#7fcfe0}[data-view=plan] .hm-box .f-top:after{opacity:1}.hm-floor{left:calc(var(--x) * var(--u));top:calc(var(--y) * var(--u));width:calc(var(--w) * var(--u));height:calc(var(--d) * var(--u));background:var(--floor);transform:translateZ(calc(.02 * var(--u)))}.hm-floor.is-living{background:#dff1f6}.hm-floor.is-kitchen{background:#fbefd8}.hm-floor.is-bath{background:#e9f3f7}.hm-glass{left:calc(var(--a) * var(--u));top:calc(var(--at) * var(--u));width:calc(var(--len) * var(--u));height:calc(var(--h) * var(--u));background:#00a7c752;transform-origin:0 0;transform:translateZ(calc(var(--z) * var(--u))) rotateX(90deg)}.hm-glass.is-v{left:calc(var(--at) * var(--u));top:calc(var(--a) * var(--u));width:calc(var(--h) * var(--u));height:calc(var(--len) * var(--u));transform:translateZ(calc(var(--z) * var(--u))) rotateY(-90deg)}@media(prefers-reduced-motion:reduce){.hm-model,.hm-box .f-top:after{transition:none}}.auth-page{--canvas: #fbfcfd;--ink: #0f1c2e;--ink-hover: #1d3350;--text: #22303f;--muted: #5b6878;--field: #f1f4f8;--field-line: #d5dde6;--cyan: #00a7c7;--cyan-text: #007a93;--red: #cf3434;--ring: 0 0 0 4px rgba(0, 167, 199, .22);--font: "Readex Pro", "Segoe UI", Tahoma, system-ui, sans-serif;display:grid;grid-template-columns:minmax(420px,.85fr) minmax(0,1.15fr);box-sizing:border-box;min-height:100vh;background:var(--canvas);color:var(--text);font-family:var(--font);line-height:1.6;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;touch-action:manipulation}body:has(>.auth-page){margin:0;background:#fbfcfd}.auth-page *,.auth-page *:before,.auth-page *:after{box-sizing:border-box}.auth-page a{color:inherit;text-decoration:none}.auth-page button,.auth-page input{font:inherit}.auth-main{display:flex;flex-direction:column;padding:28px clamp(24px,5vw,72px) 40px}.auth-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.auth-page .auth-skip{position:absolute;top:12px;inset-inline-start:12px;z-index:10;padding:10px 16px;border-radius:10px;background:var(--ink);color:#fff;font-size:14px;font-weight:500;transform:translateY(-200%)}.auth-page .auth-skip:focus-visible{transform:none}.auth-body:focus{outline:0}.auth-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.auth-brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:17px;font-weight:600}.auth-brand-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid #2b3444;border-radius:9px;background:linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),#111827;background-size:8px 8px}.auth-brand-mark span{width:16px;height:16px;border:2px solid var(--cyan);border-inline-start-color:#f0a429;transform:rotate(45deg)}.auth-back{color:var(--muted);font-size:14px}.auth-back:hover{color:var(--ink)}.auth-body{width:min(100%,400px);margin-block:auto;padding-block:48px 8px}.auth-card-head h1{margin:0;color:var(--ink);font-size:clamp(32px,3vw,42px);font-weight:600;line-height:1.2;text-wrap:balance}.auth-card-head p{margin:12px 0 0;color:var(--muted);font-size:16px}.auth-form{display:grid;gap:18px;margin-top:32px}.auth-methods{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:4px;min-inline-size:0;margin:0;padding:4px;border:0;border-radius:12px;background:var(--field)}.auth-methods input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.auth-methods label{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid transparent;border-radius:9px;color:var(--muted);cursor:pointer;font-size:15px;font-weight:500;transition:background .15s ease,color .15s ease,border-color .15s ease}.auth-methods label svg{width:18px;height:18px;flex:none}.auth-methods label:hover{color:var(--ink)}.auth-methods input:checked+label{border-color:var(--field-line);background:#fff;color:var(--ink)}.auth-methods input:checked+label svg{color:var(--cyan-text)}.auth-methods input:focus-visible+label{box-shadow:var(--ring)}.auth-form:has(#login-method-phone:checked) [data-method=email],.auth-form:has(#login-method-email:checked) [data-method=phone]{display:none}.auth-hint{margin:-4px 0 0;padding:10px 14px;border-radius:10px;background:#e8f6f9;color:var(--text);font-size:14px}.auth-field{display:grid;gap:8px}.auth-field>label,.auth-field>.auth-label{color:var(--text);font-size:14px;font-weight:500}.auth-roles{grid-template-columns:repeat(3,minmax(0,1fr))}.auth-roles label{padding:4px 6px;text-align:center}.auth-roles[aria-describedby]{box-shadow:inset 0 0 0 1.5px var(--red)}.auth-label-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px}.auth-label-row label{color:var(--text);font-size:14px;font-weight:500}.auth-label-row a{color:var(--cyan-text);font-size:14px;font-weight:500}.auth-label-row a:hover{text-decoration:underline}.auth-error a{color:inherit;font-weight:600;text-decoration:underline}.auth-status{margin:0;padding:12px 14px;border-radius:10px;background:#e6f5ec;color:#14532d;font-size:14px}.auth-field input{width:100%;height:52px;padding:0 16px;border:1.5px solid transparent;border-radius:12px;background:var(--field);color:var(--ink);font-size:16px;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.auth-field input::placeholder{color:#97a3b1}.auth-field input:hover{border-color:var(--field-line)}.auth-field input:focus{border-color:var(--cyan);outline:2px solid transparent;background:#fff;box-shadow:var(--ring)}.auth-field input[aria-invalid=true]{border-color:var(--red);background:#fdf4f4}.auth-phone{position:relative;display:flex;height:52px;border:1.5px solid transparent;border-radius:12px;background:var(--field);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.auth-phone:hover{border-color:var(--field-line)}.auth-phone:focus-within{border-color:var(--cyan);background:#fff;box-shadow:var(--ring)}.auth-phone:has(input[aria-invalid=true]){border-color:var(--red);background:#fdf4f4}.auth-dial{position:relative;display:flex;flex:none}.auth-dial:after{content:"";position:absolute;top:12px;right:0;bottom:12px;width:1px;background:var(--field-line)}.auth-dial-label{display:inline-flex;align-items:center;gap:8px;padding:0 12px;color:var(--ink);font-size:16px;font-variant-numeric:tabular-nums;white-space:nowrap}.auth-dial-iso{padding:1px 6px;border-radius:6px;background:#fff;box-shadow:inset 0 0 0 1px var(--field-line);color:var(--muted);font-size:12px;font-weight:600}.auth-dial-label svg{width:14px;height:14px;color:var(--muted)}.auth-dial select{position:absolute;inset:0;width:100%;margin:0;opacity:0;cursor:pointer;font-size:16px}.auth-dial:hover .auth-dial-label svg{color:var(--ink)}.auth-field .auth-phone input,.auth-field .auth-phone input:hover,.auth-field .auth-phone input:focus,.auth-field .auth-phone input[aria-invalid=true]{flex:1;min-width:0;height:auto;padding:0 16px 0 12px;border:0;background:transparent;box-shadow:none}.auth-page [hidden]{display:none!important}.auth-dial-label{height:100%;margin:0;border:0;border-radius:10px 0 0 10px;background:transparent;font:inherit;cursor:pointer}.auth-phone.is-searchable .auth-dial select{display:none}.auth-dial-popup{position:absolute;top:calc(100% + 6px);right:-1.5px;left:-1.5px;z-index:20;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:min(360px,55vh);overflow:hidden;border:1px solid var(--field-line);border-radius:14px;background:#fff;box-shadow:0 18px 40px #0f1c2e29}.auth-dial-search{display:flex;align-items:center;gap:8px;padding:0 14px;border-bottom:1px solid var(--field-line)}.auth-dial-search svg{flex:none;width:18px;height:18px;color:var(--muted)}.auth-field .auth-dial-search input,.auth-field .auth-dial-search input:hover,.auth-field .auth-dial-search input:focus{flex:1;min-width:0;height:48px;padding:0;border:0;background:transparent;box-shadow:none}.auth-dial-list{position:relative;overflow-y:auto;overscroll-behavior:contain;padding:0 6px 6px}.auth-dial-group{position:sticky;top:0;z-index:1;padding:10px 10px 4px;background:#fff;color:var(--muted);font-size:12px;font-weight:600}.auth-dial-option{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border-radius:9px;color:var(--text);cursor:pointer;font-size:15px}.auth-dial-option span:first-child{min-width:0;overflow-wrap:anywhere}.auth-dial-option span:last-child{flex:none;color:var(--muted);font-variant-numeric:tabular-nums}.auth-dial-option.is-active{background:var(--field)}.auth-dial-option[aria-selected=true]{color:var(--ink);font-weight:600}.auth-dial-option[aria-selected=true] span:last-child{color:var(--cyan-text)}.auth-dial-empty{margin:0;padding:20px 16px;color:var(--muted);font-size:14px;text-align:center}.auth-password{position:relative}.auth-password input{padding-left:52px}.auth-reveal{position:absolute;top:50%;left:7px;display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer;transform:translateY(-50%)}.auth-reveal:hover{color:var(--ink)}.auth-reveal:focus-visible{outline:2px solid transparent;box-shadow:var(--ring)}.auth-reveal svg{width:20px;height:20px}.auth-reveal .icon-hide,.auth-reveal[aria-pressed=true] .icon-show{display:none}.auth-reveal[aria-pressed=true] .icon-hide{display:block}.auth-error{margin:0;color:var(--red);font-size:13px;font-weight:500}.auth-check{display:inline-flex;align-items:center;gap:10px;justify-self:start;color:var(--text);cursor:pointer;font-size:14px}.auth-check input{width:18px;height:18px;margin:0;accent-color:var(--ink)}.auth-submit{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin-top:6px;border:0;border-radius:12px;background:var(--ink);color:#fff;cursor:pointer;font-size:16px;font-weight:600;transition:background .15s ease}.auth-submit:hover{background:var(--ink-hover)}.auth-submit:disabled{background:var(--ink-hover);cursor:progress}.auth-submit:disabled:before{content:"";width:16px;height:16px;margin-inline-end:10px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:auth-spin .8s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-submit:focus-visible{outline:2px solid transparent;box-shadow:var(--ring)}.auth-switch{margin:4px 0 0;color:var(--muted);font-size:14px;text-align:center}.auth-switch a{color:var(--cyan-text);font-weight:600}.auth-switch a:hover{text-decoration:underline}.auth-page a:focus-visible{border-radius:6px;outline:2px solid transparent;box-shadow:var(--ring)}.auth-stage{position:sticky;top:16px;display:grid;grid-template-rows:auto 1fr auto;height:calc(100vh - 32px);margin:16px;margin-inline-start:0;padding:24px 28px;overflow:hidden;border-radius:28px;background:radial-gradient(ellipse 70% 55% at 50% 58%,#fff,#fff0 70%),#e6edf3;container-type:size}.auth-views{display:inline-flex;justify-self:start;gap:2px;padding:4px;border-radius:999px;background:#ffffffbf;box-shadow:inset 0 0 0 1px #0f1c2e14}.auth-views button{min-width:72px;min-height:36px;padding:0 16px;border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font-size:14px;font-weight:500;transition:background .2s ease,color .2s ease}.auth-views button:hover{color:var(--ink)}.auth-views button[aria-pressed=true]{background:var(--ink);color:#fff}.auth-views button:focus-visible{outline:2px solid transparent;box-shadow:var(--ring)}.auth-scene{display:grid;place-items:center;min-height:0;perspective:2400px}.auth-stage-note{max-width:42ch;margin:0;color:var(--muted);font-size:14px}@media(max-width:960px){.auth-page{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr;padding:0 16px 32px}.auth-main{display:contents}.auth-top{order:1;padding-block:18px}.auth-stage{order:2;position:relative;top:0;height:280px;margin:0;padding:16px 18px;border-radius:22px}.auth-body{order:3;justify-self:center;margin-block:0;padding-block:32px 0}}@media(max-width:560px){.auth-stage{height:210px;padding:12px}.auth-stage-note{display:none}.auth-views button{min-width:60px;min-height:32px;padding:0 12px;font-size:13px}.auth-body{padding-top:28px}}@media(prefers-reduced-motion:reduce){.auth-page *,.auth-page *:before,.auth-page *:after{transition:none!important}.auth-submit:disabled:before{animation:none}}
