:root{--surface:#fff;--surface-2:#f7f9f8;--shadow:0 24px 70px rgba(15,55,42,.13);--blue:#3157d5;--blue-2:#193b9b}
.uiIcon{display:block;width:22px;height:22px;flex:0 0 auto}
.authShell{min-height:100dvh;display:grid;grid-template-columns:minmax(360px,430px) minmax(0,1fr);background:#fff;overflow:hidden}
.authPanel{position:relative;width:100%;min-height:100dvh;padding:42px clamp(28px,3.2vw,58px) 30px;display:flex;flex-direction:column;justify-content:center;background:#fff}
.authPanel>.uiControls{position:absolute;top:22px;right:22px}.authMark{width:66px;height:66px;margin:0 auto 17px;border-radius:22px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#087a5a,#075440);box-shadow:0 14px 30px rgba(8,122,90,.22)}.authMark .uiIcon{width:32px;height:32px}
.authPanel h1{margin:0;text-align:center;font-size:27px;letter-spacing:-.5px}.authPanel>p{margin:7px 0 20px;text-align:center;font-size:12px;line-height:1.7;color:var(--muted)}
.mobileKey{display:none}
.authArt{position:relative;isolation:isolate;display:grid;place-items:center;min-width:0;overflow:hidden;color:#fff;background:radial-gradient(circle at 17% 20%,rgba(65,166,128,.3),transparent 34%),linear-gradient(145deg,#0b4c38,#147152)}
.artOrbit{position:absolute;z-index:-1;border:1px solid rgba(255,255,255,.11);border-radius:50%}.artOrbitOne{width:min(50vw,640px);height:min(50vw,640px)}.artOrbitTwo{width:min(35vw,440px);height:min(35vw,440px)}
.artCard{width:min(72%,480px);padding:36px;border:1px solid rgba(255,255,255,.2);border-radius:30px;text-align:center;background:rgba(255,255,255,.1);box-shadow:0 30px 80px rgba(0,25,18,.2);backdrop-filter:blur(16px)}
.artIcon{width:88px;height:88px;margin:0 auto 22px;border-radius:27px;display:grid;place-items:center;background:rgba(255,255,255,.15)}.artIcon .uiIcon{width:42px;height:42px}.artCard h2{margin:0 0 10px;font-size:27px}.artCard p{margin:0;font-size:13px;line-height:2;opacity:.76}
.authHeroBrand{position:absolute;left:50%;bottom:clamp(38px,6vh,78px);z-index:2;display:block;transform:translateX(-50%);line-height:0;text-decoration:none}.authHeroBrand img{display:block;width:clamp(170px,13vw,225px);height:auto;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(0,25,18,.2))}
.authForm{margin-top:22px}.authForm .field label{font-size:11px;color:var(--muted);font-weight:700}.authForm .field input{height:54px;border-radius:16px;padding:0 16px;font-size:15px;background:var(--surface-2)}
.inputShell{height:56px;display:flex;align-items:center;direction:ltr;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);overflow:hidden;transition:.2s}.inputShell:focus-within{border-color:var(--g2);box-shadow:0 0 0 4px rgba(35,128,96,.12)}.inputShell>span{padding:0 14px;color:var(--muted);font:600 13px Arial;border-right:1px solid var(--line)}.inputShell input{height:100%!important;border:0!important;box-shadow:none!important;background:transparent!important;direction:ltr;flex:1;min-width:0}
.authSubmit{height:54px;border-radius:17px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:14px;background:linear-gradient(135deg,#087a5a,#07543f);box-shadow:0 12px 24px rgba(7,84,63,.22);transition:transform .18s,box-shadow .18s}.authSubmit:hover{transform:translateY(-1px);box-shadow:0 16px 28px rgba(7,84,63,.25)}.authSubmit .uiIcon{width:18px}.otpInput{text-align:center;font:800 28px/1 Arial!important;letter-spacing:10px}.authLinks{display:flex;justify-content:space-between;gap:8px}.textButton{border:0;background:none;padding:8px;color:var(--g);font-size:11px}.textButton:disabled{color:var(--muted)}
.installActions{margin-top:20px;grid-template-columns:1fr 1fr}.installActions>*{min-height:43px;display:flex!important;flex-direction:row;gap:7px;border-radius:14px!important;font-size:10px!important}.installActions .uiIcon{width:17px}.downloadApk{color:var(--ink)}.powered{margin-top:22px;opacity:.68}
.uiControls{align-items:center}.uiControls button{height:38px;min-width:38px;padding:0 9px;display:flex;align-items:center;justify-content:center;gap:5px;border-radius:12px;background:rgba(255,255,255,.64);backdrop-filter:blur(8px)}.uiControls .uiIcon{width:18px;height:18px}.uiControls span{font:700 9px Arial}
.appHeader{height:70px;padding:0 max(16px,calc((100vw - 860px)/2));border:0;background:rgba(247,250,248,.82);box-shadow:0 1px 0 rgba(18,55,42,.06)}.appHeader .brand .logoIcon{box-shadow:none}.headerActions{gap:6px}.iconBtn{width:38px;height:38px;border:0;background:rgba(255,255,255,.75);border-radius:12px}.iconBtn .uiIcon{width:18px}.avatar{border-radius:50%;background:linear-gradient(145deg,#e1f4eb,#d4eae1)}
.residentMain{width:min(100% - 28px,820px);margin:22px auto 105px}.buildingBar{grid-template-columns:48px 1fr auto;padding:12px 14px;border:0;border-radius:19px;background:var(--surface);box-shadow:0 10px 30px rgba(20,54,42,.06)}.buildingBar .buildingIcon{width:46px;height:46px;border-radius:15px}.buildingBar .buildingIcon .uiIcon{width:24px}.buildingBar small{font-size:10px}.buildingBar b{font-size:15px}.onlineDot{width:10px;height:10px;margin:0 8px;border-radius:50%;background:#29b37b;box-shadow:0 0 0 6px rgba(41,179,123,.12)}
.hero{margin:26px 3px 15px;display:flex;flex-direction:row;align-items:center}.hero h1{margin:0;font-size:22px}.roundAction{width:38px;height:38px;padding:0;border:0;border-radius:12px;display:grid;place-items:center;background:var(--surface);color:var(--muted)}.roundAction .uiIcon{width:18px}
.doors{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.door,.door:first-child,.dark .door:not(:first-child){position:relative;isolation:isolate;min-height:260px;padding:22px;overflow:hidden;border:0;border-radius:29px;display:flex;align-items:center;text-align:center;color:#fff;background:linear-gradient(145deg,#0a8362,#05513e);box-shadow:0 18px 38px rgba(4,89,65,.23);transition:transform .2s,box-shadow .2s,filter .2s}.door-parking,.door-parking:first-child,.dark .door-parking:not(:first-child){background:linear-gradient(145deg,#4268e5,#19388f);box-shadow:0 18px 38px rgba(37,72,177,.25)}.door:hover{transform:translateY(-3px);box-shadow:0 23px 45px rgba(4,72,54,.26)}.door:active{transform:scale(.985)}.door:disabled{filter:saturate(.35);opacity:.58;cursor:not-allowed;transform:none;box-shadow:none}
.doorAura{position:absolute;z-index:-1;width:180px;height:180px;top:-78px;right:-58px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 34px rgba(255,255,255,.035),0 0 0 70px rgba(255,255,255,.025)}
.doorIcon{width:96px;height:96px;margin:10px auto 18px;border:1px solid rgba(255,255,255,.25);border-radius:31px;display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.13);backdrop-filter:blur(8px);transition:.28s}.doorIcon .uiIcon{width:54px;height:54px;stroke-width:1.5}.doorText{display:flex;flex-direction:column;align-items:center}.doorText b{margin:0;max-width:100%;font-size:19px;line-height:1.35}.doorText small{margin:5px 0 0;font-size:10px;opacity:.7}.doorStatus{margin-top:auto;padding:7px 13px;min-width:72px;border-radius:30px;display:flex;align-items:center;justify-content:center;gap:6px;background:rgba(255,255,255,.13);font-size:10px;font-style:normal}
.door.opening .doorIcon{transform:scale(.92);background:rgba(255,255,255,.2)}.door.opened .doorIcon{color:#087a5a;background:#fff;transform:scale(1.04)}.door-parking.opened .doorIcon{color:var(--blue)}.door.failed{animation:doorShake .28s ease 2}.miniSpinner{width:13px;height:13px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes doorShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.activityCard{margin-top:18px;border:0;border-radius:22px;box-shadow:0 12px 32px rgba(16,54,40,.055)}.activityCard .cardHead{padding:15px 17px}.activityCard .cardHead h2{font-size:14px}.event{grid-template-columns:42px 1fr auto;padding:11px 16px}.eventIcon{width:40px;height:40px;border-radius:13px}.eventIcon .uiIcon{width:21px}.event b{font-size:11px}.event small{font-size:9px;direction:ltr;text-align:start}.eventResult{font-size:9px}.emptyState{padding:28px;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--muted);font-size:11px}.emptyState .uiIcon{opacity:.55}
.bottom{height:72px;gap:min(14vw,120px);border:0;background:rgba(255,255,255,.9);box-shadow:0 -12px 35px rgba(13,45,34,.07)}.bottom button{min-width:58px;gap:4px}.bottom button .uiIcon{width:22px;height:22px}.bottom button span{font-size:9px}.bottom .active{color:#087a5a}
.joinMain{display:grid;place-items:center;min-height:calc(100dvh - 170px)}.joinCard{width:min(100%,430px);margin:24px auto;padding:32px;border:0;border-radius:30px;text-align:center;box-shadow:var(--shadow)}.joinIcon{width:74px;height:74px;margin:0 auto 18px;border-radius:24px;display:grid;place-items:center;background:var(--p);color:var(--g)}.joinIcon .uiIcon{width:36px;height:36px}.joinCard h1{margin-bottom:25px}.joinCard .field{text-align:start}.inviteInput{text-align:center;font:700 21px Arial;letter-spacing:4px}
html.dark{--surface:#151f1b;--surface-2:#101815;--shadow:0 25px 75px rgba(0,0,0,.32);--ink:#edf6f2;--muted:#9fb0a8;--line:#304039;--wash:#0a100e;--p:#17382d}html.dark .authShell,html.dark .authPanel{background:#0b1210}html.dark .appHeader{background:rgba(10,16,14,.86)}html.dark .uiControls button,html.dark .iconBtn{background:rgba(29,42,36,.8);color:var(--ink)}html.dark .buildingBar,html.dark .roundAction,html.dark .activityCard,html.dark .bottom{background:var(--surface);color:var(--ink)}html.dark .inputShell{background:var(--surface-2)}html.dark .door,html.dark .door:first-child{background:linear-gradient(145deg,#087757,#043f31)}html.dark .door-parking,html.dark .door-parking:first-child{background:linear-gradient(145deg,#3557cc,#172d76)}
[dir=rtl] .authSubmit .uiIcon{transform:rotate(180deg)}
@media(max-width:759px){.authShell{display:block;min-height:100dvh;background:var(--surface);overflow:visible}.authArt{display:none}.authPanel{width:100%;min-height:100dvh;padding:22px max(20px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));justify-content:flex-start;background:var(--surface)}.authPanel>.uiControls{top:max(15px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right))}.mobileKey{display:flex;align-items:center;gap:12px;margin:58px 0 28px;padding:14px 15px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2)}.mobileKeyIcon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;flex:0 0 auto;color:#fff;background:linear-gradient(145deg,#087a5a,#075440)}.mobileKeyIcon .uiIcon{width:23px;height:23px}.mobileKey div{display:flex;flex-direction:column;gap:3px}.mobileKey b{font-size:13px}.mobileKey small{font-size:9px;color:var(--muted)}.authMark{width:58px;height:58px;border-radius:19px;margin-bottom:14px}.authMark .uiIcon{width:28px;height:28px}.authPanel h1{font-size:25px}.authForm{margin-top:20px}.residentMain{width:min(100% - 22px,560px);margin-top:14px}.appHeader{height:64px}.appHeader .brand div{display:none}.headerActions .uiControls button{min-width:34px;width:34px;padding:0}.headerActions .uiControls button span{display:none}.headerActions .iconBtn{width:34px;height:34px}.hero{margin-top:21px}.hero h1{font-size:19px}.doors{grid-template-columns:1fr}.door,.door:first-child{min-height:205px;padding:17px;border-radius:25px}.doorIcon{width:76px;height:76px;margin:2px auto 12px;border-radius:24px}.doorIcon .uiIcon{width:43px;height:43px}.doorText b{font-size:17px}.doorStatus{margin-top:14px}.activityCard{margin-top:14px}.bottom{height:68px;gap:12vw}.joinMain{min-height:calc(100dvh - 140px)}.joinCard{padding:27px 22px}.installActions{grid-template-columns:1fr 1fr}}
@media(min-width:760px) and (max-width:1050px){.authShell{grid-template-columns:minmax(340px,400px) 1fr}.authPanel{padding-inline:32px}.artCard{width:min(78%,430px)}.artCard h2{font-size:23px}}
@media(max-width:360px){.authPanel{padding-inline:17px}.installActions{grid-template-columns:1fr}.bottom{gap:8vw}}
[data-view="mobile"] .authArt{display:none}[data-view="mobile"] .authShell{display:block;min-height:100dvh;overflow:visible}[data-view="mobile"] .authPanel{width:100%;max-width:none;min-height:100dvh;justify-content:flex-start}[data-view="mobile"] .mobileKey{display:flex}
.buildingSwitcher{min-width:150px;max-width:260px;height:38px;margin-inline:auto;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-size:11px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.phone{direction:ltr!important;unicode-bidi:isolate;white-space:nowrap;min-width:128px;overflow:visible!important}
@media(max-width:759px){.buildingSwitcher{min-width:0;max-width:122px;width:122px;height:34px;font-size:9px}}
