:root{--navy:#071b34;--midnight:#03101f;--navy-2:#102b4a;--brass:#c8a96a;--brass-light:#ead8ae;--porcelain:#f7f5ef;--white:#fff;--mist:#dce4e8;--slate:#607080;--ink:#142332;--amber:#b66821;--amber-bg:#fff3df;--green:#256a50;--green-bg:#e8f4ee;--red:#983c32;--red-bg:#fff0ed;--line:#d7dfe2;--shadow:0 20px 50px rgba(3,16,31,.12);--radius:18px;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--serif:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:var(--porcelain);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}:focus-visible{outline:3px solid #e0a92a;outline-offset:3px}.hidden{display:none!important}.muted{color:var(--slate)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:800;color:var(--brass)}.brand{display:flex;align-items:center;gap:.8rem}.brand img{width:150px;max-height:64px;object-fit:contain}.brand-copy strong{display:block;font-family:var(--serif);font-size:1.1rem}.brand-copy span{font-size:.75rem;color:var(--slate)}.pill{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;padding:.45rem .72rem;font-size:.78rem;font-weight:750;background:var(--mist)}.pill:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--green)}.pill.amber{color:#75400e;background:var(--amber-bg)}.pill.amber:before{background:var(--amber)}.btn{border:0;border-radius:12px;padding:.78rem 1.05rem;font-weight:750;background:var(--navy);color:white;min-height:46px}.btn:hover{filter:brightness(1.08)}.btn.secondary{background:white;color:var(--navy);border:1px solid var(--line)}.btn.brass{background:var(--brass);color:var(--midnight)}.btn.danger{background:var(--red)}.btn.large{font-size:1.05rem;padding:1rem 1.3rem;min-height:56px}.icon-btn{border:1px solid var(--line);background:white;border-radius:12px;min-height:44px;padding:.6rem .85rem}.field{display:grid;gap:.42rem}.field label{font-size:.84rem;font-weight:800;color:#32485b}.field input,.field select{width:100%;border:1px solid #becbd1;background:white;border-radius:12px;padding:.85rem .92rem;min-height:48px;color:var(--ink)}.field input:focus,.field select:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(200,169,106,.18);outline:none}.field small{color:var(--slate)}.card{background:white;border:1px solid rgba(7,27,52,.09);border-radius:var(--radius);box-shadow:0 8px 26px rgba(3,16,31,.06)}.toast{position:fixed;left:50%;bottom:1.5rem;transform:translateX(-50%) translateY(140%);background:var(--midnight);color:white;padding:.85rem 1.15rem;border-radius:12px;font-weight:700;z-index:100;transition:.25s}.toast.show{transform:translateX(-50%) translateY(0)}.toast.error{background:var(--red)}.modal{position:fixed;inset:0;background:rgba(3,16,31,.62);display:grid;place-items:center;padding:1.5rem;z-index:90}.modal-card{background:white;width:min(560px,100%);border-radius:22px;padding:1.5rem;box-shadow:var(--shadow)}.modal-card h2{margin:.2rem 0 .6rem;font-family:var(--serif);font-size:1.8rem}.modal-actions{display:flex;justify-content:flex-end;gap:.7rem;margin-top:1.2rem}.empty{padding:2rem;text-align:center;color:var(--slate)}

/* Kiosk */
.kiosk{height:100dvh;overflow:hidden;background:radial-gradient(110% 100% at 100% 0,#193957 0,var(--navy) 50%,var(--midnight) 100%);color:white;user-select:none}.kiosk-shell{height:100%;display:grid;grid-template-rows:auto 1fr auto;padding:max(1.2rem,env(safe-area-inset-top)) max(2rem,5vw) max(1.2rem,env(safe-area-inset-bottom));position:relative}.kiosk-head{display:flex;justify-content:space-between;align-items:flex-start}.kiosk .brand img{width:190px}.clock{text-align:right}.clock strong{display:block;font-size:2rem;font-variant-numeric:tabular-nums}.clock span{color:#adc0ce;font-size:.85rem}.k-screen{display:none;align-content:center;animation:enter .3s ease}.k-screen.active{display:grid}@keyframes enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.welcome-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(500px,1.2fr);gap:clamp(2rem,6vw,7rem);align-items:center}.welcome-copy h1{font-family:var(--serif);font-size:clamp(3.3rem,7vw,6.5rem);font-weight:400;line-height:.94;margin:.45rem 0 1.2rem;letter-spacing:-.04em}.welcome-copy h1 em{color:var(--brass-light);font-style:normal}.welcome-copy p{color:#c0ced8;font-size:1.12rem;max-width:30rem;line-height:1.6}.path-actions{display:grid;gap:1rem}.path-btn{display:flex;align-items:center;gap:1.1rem;text-align:left;border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:1.4rem;background:rgba(255,255,255,.07);color:white;min-height:120px}.path-btn.primary{background:var(--brass);color:var(--midnight);border-color:transparent}.path-btn:hover{transform:translateX(4px)}.path-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:rgba(255,255,255,.12);font-size:1.7rem}.path-btn.primary .path-icon{background:rgba(7,27,52,.12)}.path-btn strong{display:block;font-family:var(--serif);font-size:1.75rem}.path-btn span{display:block;opacity:.72;margin-top:.28rem}.kiosk-foot{display:flex;justify-content:space-between;align-items:center;color:#9eb0be;font-size:.78rem}.kiosk-foot button{background:none;border:0;color:#bdcad3;padding:.6rem}.k-card{width:min(920px,100%);margin:auto}.k-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.k-back{border:0;background:transparent;color:#c3d1db;font-size:1rem;padding:.8rem}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.choice{border:1px solid rgba(255,255,255,.14);border-radius:24px;background:rgba(255,255,255,.08);color:white;text-align:left;padding:2rem;min-height:230px}.choice:hover{border-color:var(--brass)}.choice b{display:block;font-family:var(--serif);font-size:2rem;margin:.8rem 0}.choice p{color:#b9c9d4;line-height:1.5}.k-form-wrap{width:min(760px,100%);margin:auto}.step-line{display:flex;justify-content:space-between;color:#b9c9d4;margin-bottom:.7rem}.progress{height:4px;background:rgba(255,255,255,.12);border-radius:99px;margin-bottom:2.2rem}.progress i{display:block;height:100%;background:var(--brass);border-radius:99px;transition:.25s}.k-question label{display:block;font-family:var(--serif);font-size:clamp(2rem,4vw,3.6rem);margin-bottom:.5rem}.k-question .hint{color:#b9c9d4;margin:0 0 1.4rem;font-size:1.05rem}.k-question input,.k-question select{width:100%;height:74px;border-radius:16px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.1);color:white;padding:0 1.25rem;font-size:1.35rem}.k-question select option{color:var(--ink)}.k-question input::placeholder{color:#8fa4b4}.k-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1.4rem}.k-actions .btn{min-width:150px}.k-list{display:grid;gap:.75rem;max-height:55vh;overflow:auto}.k-list button{display:flex;justify-content:space-between;align-items:center;text-align:left;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.08);color:white;border-radius:16px;padding:1.1rem 1.25rem}.k-list b{font-size:1.15rem}.k-list small{display:block;color:#adc0ce;margin-top:.3rem}.done{text-align:center}.done-mark{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:var(--brass);color:var(--midnight);font-size:3rem;margin:0 auto 1.2rem}.done h2{font-family:var(--serif);font-size:3rem;margin:.2rem}.done p{font-size:1.2rem;color:#c1d0da}.sync-badge{display:inline-flex;align-items:center;gap:.45rem}.sync-dot{width:.5rem;height:.5rem;border-radius:50%;background:#70c19a}.sync-badge.offline .sync-dot{background:#e0a850}

/* Login */
.login-page{min-height:100dvh;display:grid;grid-template-columns:1fr minmax(420px,.8fr);background:var(--navy)}.login-story{padding:clamp(2rem,6vw,6rem);color:white;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(90% 80% at 0 0,#183f5e,var(--navy) 60%)}.login-story h1{font:400 clamp(3rem,6vw,6rem)/.98 var(--serif);margin:2rem 0}.login-story p{color:#bbcad5;line-height:1.6;max-width:33rem}.login-panel{background:var(--porcelain);display:grid;place-items:center;padding:2rem}.login-box{width:min(390px,100%)}.login-box h2{font:400 2.2rem var(--serif);margin:.7rem 0}.login-form{display:grid;gap:1rem;margin-top:1.6rem}.login-form .btn{width:100%;margin-top:.4rem}.login-error{background:var(--red-bg);color:var(--red);padding:.8rem;border-radius:10px}

/* Staff and admin shells */
.ops{min-height:100dvh;background:#eef2f3}.ops-head{height:78px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,3vw,2.5rem);position:sticky;top:0;z-index:20}.ops .brand img{width:126px}.head-actions{display:flex;align-items:center;gap:.7rem}.ops-main{max-width:1500px;margin:auto;padding:clamp(1rem,3vw,2.5rem)}.greeting{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin-bottom:1.5rem}.greeting h1{font:400 clamp(2rem,4vw,3.2rem) var(--serif);margin:.2rem 0}.occupancy-ribbon{display:grid;grid-template-columns:repeat(3,1fr);background:var(--navy);color:white;border-radius:22px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:1.5rem}.occupancy-ribbon>div{padding:1.35rem 1.5rem;border-right:1px solid rgba(255,255,255,.12)}.occupancy-ribbon>div:last-child{border:0}.occupancy-ribbon strong{font:400 2.8rem var(--serif);color:var(--brass-light);display:block}.occupancy-ribbon span{color:#b9c9d4}.attention{border:1px solid #edc98f;background:var(--amber-bg);border-radius:18px;padding:1.2rem;margin-bottom:1.5rem}.attention-head{display:flex;justify-content:space-between;align-items:center}.attention h2{font-size:1.15rem;color:#73410f;margin:.2rem}.attention-list{display:grid;gap:.7rem;margin-top:.9rem}.attention-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:white;border-radius:12px;padding:.9rem}.attention-row b{display:block}.attention-row small{color:#7e5b32}.staff-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.panel{padding:1.3rem}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}.panel h2{font:400 1.55rem var(--serif);margin:.2rem}.row-list{display:grid;gap:.6rem}.person-row{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;border-top:1px solid #e4e9eb;padding:.9rem .2rem}.person-row:first-child{border-top:0}.person-row b{display:block;font-size:1rem}.person-row small{display:block;color:var(--slate);margin-top:.22rem}.quick-actions{display:flex;gap:.7rem;margin-bottom:1.5rem;flex-wrap:wrap}.quick-actions .btn{font-size:1rem}.staff-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.staff-form .wide{grid-column:1/-1}
.admin-layout{display:grid;grid-template-columns:240px 1fr;min-height:calc(100dvh - 78px)}.admin-nav{background:var(--midnight);padding:1.4rem;color:#c1cdd6}.admin-nav button{display:block;width:100%;text-align:left;border:0;background:none;color:inherit;border-radius:10px;padding:.8rem .9rem;margin:.2rem 0}.admin-nav button.active{background:rgba(200,169,106,.18);color:var(--brass-light)}.admin-content{padding:clamp(1rem,3vw,2.5rem);overflow:auto}.admin-section{display:none}.admin-section.active{display:block}.admin-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:1.2rem}.admin-title h1{font:400 2.4rem var(--serif);margin:.2rem 0}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;background:white}.data-table th,.data-table td{text-align:left;padding:.8rem;border-bottom:1px solid #e3e8ea;white-space:nowrap}.data-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--slate);background:#f7f9f9}.data-table td{font-size:.9rem}.admin-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.admin-stat{padding:1.2rem}.admin-stat strong{font:400 2.4rem var(--serif);display:block}.settings-form{display:grid;gap:1rem;max-width:700px}.audit-action{font-family:ui-monospace,SFMono-Regular,monospace;font-size:.82rem}

@media(max-width:900px){.welcome-grid{grid-template-columns:1fr;gap:2rem}.welcome-copy p{display:none}.welcome-copy h1{font-size:3.5rem}.path-actions{grid-template-columns:1fr 1fr}.path-btn{min-height:100px}.choice{min-height:180px}.staff-grid,.staff-form{grid-template-columns:1fr}.occupancy-ribbon{grid-template-columns:repeat(3,1fr)}.admin-layout{grid-template-columns:1fr}.admin-nav{display:flex;overflow:auto;padding:.6rem}.admin-nav button{white-space:nowrap}.admin-cards{grid-template-columns:1fr}.login-page{grid-template-columns:1fr}.login-story{display:none}}@media(max-width:600px){.kiosk{overflow:auto;height:auto;min-height:100dvh}.kiosk-shell{min-height:100dvh;padding:1rem}.kiosk-head .brand img{width:130px}.clock strong{font-size:1.3rem}.path-actions,.choice-grid{grid-template-columns:1fr}.welcome-copy h1{font-size:3rem}.k-screen{padding:2rem 0}.ops-head{height:auto;min-height:70px}.head-actions .user-name{display:none}.occupancy-ribbon{grid-template-columns:1fr}.occupancy-ribbon>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.greeting{align-items:start;flex-direction:column}.staff-grid{grid-template-columns:1fr}.person-row{grid-template-columns:1fr}.admin-title{align-items:start;flex-direction:column;gap:.7rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Kiosk: a calm, high-contrast tablet surface inspired by the facility welcome desk. */
.kiosk{--kiosk-keyboard-offset:0px;background:#020f2d}.kiosk-shell{padding:max(2rem,env(safe-area-inset-top)) clamp(1.5rem,5.8vw,6.5rem) max(1rem,env(safe-area-inset-bottom))}.kiosk-head{z-index:2}.kiosk-torch{width:102px;height:124px;overflow:hidden}.kiosk-torch img{width:102px;height:102px;object-fit:cover;object-position:50% 0}.clock{display:flex;align-items:baseline;gap:1rem;text-align:left}.clock strong{font-size:clamp(1.7rem,3.2vw,3rem);letter-spacing:-.04em}.clock span{font-size:clamp(.72rem,1.4vw,1rem);letter-spacing:.11em;text-transform:uppercase}.kiosk .k-screen{position:relative}.welcome-grid{width:min(1120px,100%);margin:auto;grid-template-columns:1fr;gap:1.5rem;align-content:center}.welcome-copy{max-width:1000px}.welcome-kicker,.lock-brand p{margin:0;color:#a8b9cf;font:400 clamp(1.55rem,3vw,2.6rem) var(--serif)}.welcome-copy h1{font-size:clamp(4rem,8.8vw,8rem);line-height:.92;margin:.4rem 0 2.4rem;white-space:nowrap}.welcome-copy h1 span,.lock-brand h1 span{color:#fff}.welcome-copy h1 em,.lock-brand h1{color:#e4c36f}.welcome-copy p{max-width:39rem;color:#a8b9cf}.path-actions{width:min(650px,100%);gap:1rem;margin:0 auto}.path-btn{min-height:92px;padding:1.15rem 1.7rem;border-radius:21px;justify-content:space-between;transition:transform .18s ease,background .18s ease}.path-btn:hover{transform:translateX(0) translateY(-2px)}.path-btn strong{font-family:var(--sans);font-size:clamp(1.4rem,2.2vw,2rem);font-weight:800}.path-btn b{font-size:2.4rem;font-weight:400;line-height:1;color:var(--brass-light)}.path-btn.primary b{color:var(--midnight)}.resident-action{justify-self:center;display:flex;align-items:center;gap:.5rem;color:#fff;text-decoration:none;border:1px solid rgba(228,195,111,.45);border-radius:16px;padding:.72rem 1.1rem;margin-top:clamp(1rem,5vh,4.5rem);font-weight:750}.resident-action small{color:#a8b9cf;font-weight:600}.kiosk-foot{position:relative;z-index:3}.kiosk-foot>span:last-child{display:none}
.lock-layout{width:min(640px,100%);margin:auto}.lock-brand{display:flex;align-items:center;justify-content:center;gap:1.3rem;margin-bottom:2.2rem}.lock-torch{width:100px;height:110px;overflow:hidden;border:2px solid rgba(228,195,111,.42);border-radius:20px}.lock-torch img{width:100px;height:100px;object-fit:cover;object-position:50% 0}.lock-brand h1{font:400 clamp(2.5rem,5vw,4.2rem) var(--serif);letter-spacing:-.04em;line-height:.96;margin:.2rem 0 0}.pin-card{padding:2.4rem clamp(1.5rem,5vw,3.1rem) 2rem;border:2px solid rgba(228,195,111,.4);border-radius:30px;background:rgba(10,28,66,.74);box-shadow:0 24px 75px rgba(0,0,0,.25);text-align:center}.pin-card h2{font:400 clamp(2rem,4vw,3rem) var(--serif);margin:.45rem 0 1.2rem}.pin-source{position:absolute;opacity:0;pointer-events:none}.pin-dots{display:flex;justify-content:center;gap:.75rem;margin:0 0 1.55rem}.pin-dots i{width:15px;height:15px;border:2px solid #d7b24d;border-radius:50%}.pin-dots i.filled{background:#d7b24d}.pin-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem}.pin-keypad button{height:88px;border:2px solid rgba(228,195,111,.28);border-radius:20px;background:#102957;color:#fff;font-size:2.2rem}.pin-keypad button:hover,.pin-keypad button:focus-visible{background:#173769;border-color:#d7b24d}.pin-cancel{border:0;background:transparent;color:#a8b9cf;text-decoration:underline;padding:.95rem;font-size:1rem}.kiosk #choose .k-card,.kiosk #results .k-card{width:min(760px,100%)}.choice{min-height:210px}.kiosk #form.active{display:block;align-content:initial;overflow-y:auto;padding:clamp(1rem,4vh,3.2rem) 0 calc(142px + env(safe-area-inset-bottom) + var(--kiosk-keyboard-offset));scroll-padding-bottom:calc(150px + env(safe-area-inset-bottom) + var(--kiosk-keyboard-offset))}.kiosk #form .k-form-wrap{width:min(1080px,100%);padding-bottom:1rem}.kiosk #form .k-top{margin-bottom:1.1rem}.kiosk #form .step-line{display:none}.kiosk #form .progress{position:fixed;top:0;left:0;right:0;height:5px;margin:0;background:rgba(228,195,111,.18);z-index:8}.kiosk #form .progress i{background:#e4c36f}.kiosk #form .k-question label{font-size:clamp(2.2rem,4.8vw,4.4rem)}.kiosk #form .k-question input{height:84px;font-size:1.55rem;border-color:rgba(228,195,111,.4);background:#102957}.kiosk #form .k-flow-actions{position:fixed;left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + var(--kiosk-keyboard-offset));z-index:9;margin:0;padding:1rem clamp(1.5rem,5.8vw,6.5rem);min-height:92px;background:rgba(5,18,49,.97);border-top:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:1fr auto auto;gap:1rem;align-items:center}.kiosk #form .k-flow-actions .step-count{color:#a8b9cf;font-size:1.05rem}.kiosk #form .k-flow-actions .k-back{border:1px solid rgba(255,255,255,.22);border-radius:14px;padding:.9rem 1.4rem;color:#fff}.kiosk #form .k-flow-actions .btn{min-width:160px}.kiosk #form .k-flow-actions .k-back.hidden+ .btn{grid-column:3}.kiosk #form .k-flow-actions .k-back.hidden{display:none!important}.kiosk #search .k-question input{background:#102957;border-color:rgba(228,195,111,.4)}
@media(max-width:700px){.kiosk-shell{padding-inline:1.1rem}.kiosk-torch{width:70px;height:76px}.kiosk-torch img{width:70px;height:70px}.clock{display:block}.clock span{display:block;margin-top:.18rem}.welcome-copy h1{white-space:normal;font-size:3.7rem}.resident-action{margin-top:1.3rem}.lock-brand{align-items:flex-start}.lock-torch{width:72px;height:80px}.lock-torch img{width:72px;height:72px}.lock-brand h1{font-size:2.4rem}.pin-card{padding:1.65rem 1rem}.pin-keypad button{height:68px}.kiosk #form .k-flow-actions{padding-inline:1rem;gap:.6rem}.kiosk #form .k-flow-actions .step-count{font-size:.83rem}.kiosk #form .k-flow-actions .btn{min-width:118px}.kiosk #form .k-flow-actions .k-back{padding:.8rem}.resident-action small{display:none}}

.resident-action{background:transparent;font:inherit;cursor:pointer}.path-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pin-submit{width:100%;margin-top:1rem;min-height:54px}.kiosk-foot>span:last-child{display:inline-flex}.kiosk-version{align-items:center;gap:.45rem;color:#a8b9cf}.kiosk-version button{width:36px;height:36px;border:1px solid rgba(228,195,111,.35);border-radius:50%;background:#102957;color:#e4c36f;font-size:1.25rem;line-height:1}.kiosk #resident-choose h2,.kiosk #resident-list h2{font:400 clamp(2.7rem,5vw,4.8rem) var(--serif);margin:.2rem 0 .4rem}.kiosk #resident-choose>.k-card>.hint,.kiosk #resident-list>.k-card>.hint{color:#9fb2c9;margin:0 0 2.2rem;font-size:1.1rem}.resident-direction{color:#e4c36f;font-size:2rem}.resident-choices .choice{min-height:255px}.kiosk #resident-list .k-list{max-height:58vh}
.kiosk #welcome .welcome-grid{transform:translateY(clamp(-5.5rem,-6.5vh,-2.5rem))}.kiosk #choose .k-card,.kiosk #resident-choose .k-card,.kiosk #resident-list .k-card{transform:translateY(clamp(-4.75rem,-5.5vh,-2rem))}.kiosk-version button{display:grid;place-items:center;padding:0;line-height:1}.staff-pin-layout{width:min(560px,100%)}.staff-pin-layout .pin-card{padding-top:1.6rem}.pin-help{color:#a8b9cf;line-height:1.45;margin:.2rem auto 1rem;max-width:32rem}.staff-identity-field{text-align:left;margin:0 auto 1.2rem}.staff-identity-field label{color:#dce6ef}.staff-identity-field select{border-color:rgba(228,195,111,.42);background:#102957;color:#fff}.staff-identity-field select option{color:#142332;background:#fff}.staff-pin-keypad button{height:64px}.staff-pin-layout .pin-dots{margin-bottom:1rem}
@media(orientation:landscape) and (max-height:900px){.kiosk #welcome .welcome-grid{transform:translateY(-2.5vh)}.kiosk #choose .k-card,.kiosk #resident-choose .k-card,.kiosk #resident-list .k-card{transform:translateY(-3vh)}.staff-pin-layout .pin-card{padding:.8rem 1.5rem .65rem}.staff-pin-layout .pin-help{margin-bottom:.55rem}.staff-pin-layout .staff-identity-field{margin-bottom:.55rem}.staff-pin-layout .pin-keypad{gap:.45rem}.staff-pin-layout .pin-keypad button{height:48px}.staff-pin-layout .pin-submit{margin-top:.5rem}.staff-pin-layout .pin-cancel{padding:.35rem}}
@media(max-height:900px){.lock-layout{width:min(580px,100%)}.lock-brand{margin-bottom:.8rem}.lock-torch{width:70px;height:76px}.lock-torch img{width:70px;height:70px}.lock-brand h1{font-size:2.7rem}.pin-card{padding:1rem 1.5rem .7rem}.pin-card h2{font-size:2rem;margin:.15rem 0 .6rem}.pin-dots{margin-bottom:.7rem}.pin-keypad{gap:.5rem}.pin-keypad button{height:58px;font-size:1.65rem}.pin-submit{min-height:44px;margin-top:.65rem}.pin-cancel{padding:.5rem}.welcome-copy h1{font-size:clamp(3.5rem,8vw,6.5rem);margin-bottom:1rem}.resident-action{margin-top:1rem}.kiosk #form .k-flow-actions{min-height:78px;padding-block:.65rem}}

/* Supplied Elevare brand assets retain their native proportions across every shell. */
.ops .brand .header-brand-logo{width:auto;height:58px;max-height:58px;object-fit:contain;object-position:left center}.kiosk-brand{width:clamp(190px,25vw,320px)}.kiosk-brand img,.lock-brand-logo,.welcome-brand img{display:block;width:100%;height:auto;object-fit:contain}.clock{text-align:right}.lock-brand-logo{width:min(430px,82vw)}.welcome-copy .welcome-brand{width:min(720px,100%);margin:.4rem 0 1.5rem;line-height:0}.welcome-brand img{max-height:230px;object-position:left center}@media(max-width:700px){.kiosk-brand{width:170px}.lock-brand{justify-content:center}.lock-brand-logo{width:min(330px,82vw)}.welcome-copy .welcome-brand{width:min(520px,100%)}}@media(max-height:900px){.kiosk-brand{width:180px}.lock-brand-logo{width:min(300px,72vw)}.welcome-copy .welcome-brand{width:min(520px,80vw)}}
.release-version{color:var(--slate);font-size:.68rem;letter-spacing:.06em;white-space:nowrap}.login-box .release-version{display:block;margin-top:1.1rem;text-align:center}
.ops .brand .header-brand-logo,.kiosk-brand img,.welcome-brand img{transform:translateX(-9.1%)}
#welcome .welcome-copy{width:min(720px,100%);margin:0 auto;text-align:center}#welcome .welcome-brand{width:min(720px,100%);margin:0 auto .7rem}#welcome .welcome-brand img{transform:none}#welcome .welcome-copy p{margin:0 auto;color:#c0ced8;font-size:1.12rem;line-height:1.5}.welcome-grid{justify-items:center}

/* Align the artwork, excluding its 120px transparent inset on a 1218px canvas. */
.ops .brand .header-brand-logo{transform:translateX(-9.852217%)}
