/* DwellNexa foundation. Existing data, forms and route handlers remain intact. */
@font-face{font-family:Inter;src:url('/static/brand/Inter.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
:root{--dn-background:#f5f2ea;--dn-surface:#fff;--dn-text:#172638;--dn-muted:#586575;--dn-brand:#0d1b2a;--dn-gold:#c6a15b;--dn-border:#d9dde1;--dn-control-border:#73808e;--dn-focus:#c6a15b;--dn-error:#a53135;--dn-radius:8px;--bg:var(--dn-background);--panel:var(--dn-surface);--ink:var(--dn-text);--muted:var(--dn-muted);--line:var(--dn-border);--brand:var(--dn-brand);--brand2:#1b263b;--soft:#eef1f5;--warn:#856019}
html{color-scheme:light}body{font-family:Inter,system-ui,sans-serif;background:var(--dn-background);color:var(--dn-text);line-height:1.45}[hidden]{display:none!important}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}input,select,textarea{border:1px solid var(--dn-control-border);border-radius:8px;min-height:52px;background:var(--dn-surface);color:var(--dn-text);padding:14px 16px}input[type=checkbox],input[type=radio]{min-height:auto;accent-color:var(--dn-brand)}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--dn-focus);outline-offset:3px}input[aria-invalid=true]{border:2px solid var(--dn-error)}button,.secondary,.primary{min-height:48px;border-radius:8px;font-weight:600;cursor:pointer}button:disabled{cursor:wait;opacity:.6}button.primary,.login-card button{background:var(--dn-brand);color:#fff;border:1px solid var(--dn-brand)}button.secondary,.login-card button.secondary{background:var(--dn-background);color:var(--dn-text);border:1px solid transparent}button:active{transform:translateY(1px)}a{color:var(--dn-focus)}.error{color:var(--dn-error)}.dn-logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:35.538px;font-weight:600;white-space:nowrap}.dn-logo img{display:block;flex:none}.dn-logo span span{color:var(--dn-gold)}.dn-logo-small{font-size:22px}.dn-logo-small img{width:40px;height:40px}
.login-body{background:var(--dn-surface)}.login-wrap{display:grid;grid-template-columns:5fr 7fr;align-items:stretch;min-height:100dvh;max-width:none;margin:0;padding:0}.brand-panel{display:flex;flex-direction:column;gap:32px;background:var(--dn-brand);padding:64px;min-width:0}.brand-panel h1{font-size:44px;line-height:1.45;font-weight:600;margin:0}.brand-panel p{font-size:19px;line-height:1.45;color:#fff;margin:0;max-width:470px}.brand-panel .brand-tagline{color:var(--dn-gold);font-size:20px}.login-card{padding:64px;border-radius:0;box-shadow:none;max-width:none;min-width:0;background:var(--dn-surface)}.login-card h2{font-size:32px;font-weight:600;line-height:1.45;margin:0 0 24px}.login-card>p{color:var(--dn-muted);margin:0 0 24px}.login-card form,.login-card #loginLinks,.login-card #setup{max-width:640px}.login-card label{font-size:14px;font-weight:500;margin:0 0 24px}.login-card input{display:block;margin-top:8px;font-size:15px;font-weight:400}.login-card form>button{margin:0 0 24px;width:100%;font-size:14px;font-weight:600}.login-card #err:empty{display:none}.login-card .auth-links{display:grid;justify-items:start;gap:24px;margin-top:0}.auth-links>a{display:flex;align-items:center;justify-content:center;background:var(--dn-background);color:var(--dn-text);min-height:48px;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;text-decoration:none}.auth-footer{font-size:13px;color:var(--dn-muted);margin-top:24px}.auth-footer a{color:inherit}.login-card details{margin:24px 0;font-size:14px;color:var(--dn-muted)}.login-card summary{cursor:pointer}.login-card #secret{overflow-wrap:anywhere;background:var(--dn-background);color:var(--dn-text);padding:16px;font-size:18px}.login-card #mfaQr{display:block;width:220px;max-width:100%;height:auto;background:white;image-rendering:pixelated;margin:24px 0}.login-card #setup button{margin:12px 0}.login-card #setup code{display:block}.login-card #setup h3{font-size:24px}.skip-link{position:fixed;left:16px;top:-100px;background:white;color:var(--dn-text);padding:12px;z-index:100}.skip-link:focus{top:16px}
.app-shell{grid-template-columns:224px minmax(0,1fr)}.app-shell>aside{width:224px;background:var(--dn-brand);padding:24px 16px;overflow-y:auto}.app-shell .logo-row{padding:0 0 24px}.app-shell nav a{color:#f5f2ea;border-radius:8px;min-height:48px}.app-shell nav a:hover{background:#263a50}.app-shell nav a.active{background:var(--dn-gold);color:var(--dn-brand)}.card{border-radius:12px;box-shadow:none}.modal-card{border-radius:12px;max-height:calc(100dvh - 32px);overscroll-behavior:contain}.content{padding:28px 32px}.main header{padding:24px 32px}.form-actions{flex-wrap:wrap}.form-grid>*{min-width:0}.table{font-variant-numeric:tabular-nums}.table td,.table th{overflow-wrap:anywhere}.table-link{color:var(--dn-focus)}.dn-readonly{padding:14px 0;border:0;background:none;color:var(--dn-text)}
@media(max-width:1100px){.brand-panel,.login-card{padding:40px}.brand-panel h1{font-size:36px}.dn-logo{font-size:30px}.dn-logo-small{font-size:22px}}
@media(max-width:900px){.login-wrap{grid-template-columns:1fr}.brand-panel{display:flex;padding:24px;gap:16px}.brand-panel h1,.brand-panel p{display:none}.brand-panel .dn-logo{font-size:26px}.brand-panel .dn-logo img{width:44px;height:44px}.login-card{padding:32px 24px;max-width:720px;width:100%;margin:0 auto}.app-shell{grid-template-columns:1fr}.app-shell>aside{position:static;width:auto;overflow:visible}.main{grid-column:1}.content{padding:24px}.app-shell>aside nav{white-space:normal}.app-shell>aside nav a{white-space:normal}}
@media(max-width:480px){.login-card{padding:28px 16px}.login-card h2{font-size:28px}.brand-panel{padding:20px 16px}.content{padding:16px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.form-actions>*{flex:1 1 100%}.modal-card{width:calc(100vw - 32px);padding:24px 16px}.grid4{grid-template-columns:1fr}.main header{padding:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}button:active{transform:none}}
@media(max-width:900px){.login-wrap{grid-template-rows:auto 1fr}.brand-panel{align-self:start}.dn-logo-small img{width:35px;height:35px}}
.dn-logo-small{font-size:20.462px;gap:5.846px}.dn-logo-small img{width:35px;height:35px}

/* Final DwellNexa Figma palette: navy, warm cream, white and gold. */
:root{--bg:var(--dn-background);--panel:var(--dn-surface);--ink:var(--dn-text);--muted:var(--dn-muted);--line:var(--dn-border);--brand:var(--dn-brand);--brand2:#1b263b;--soft:#eef1f5;--warn:#856019}
body[data-page="setup"] .tenancy-notices{border-color:var(--dn-brand)}
body[data-page="setup"] .notice-settings-grid section{background:var(--dn-background)}
body[data-page="setup"] .branding-action{background:var(--dn-brand);color:#fff;border:1px solid var(--dn-brand)}
body[data-page="setup"] .branding-action:hover{background:#1b263b;border-color:#1b263b}
body[data-page="setup"] .branding-action:focus-visible{outline:3px solid var(--dn-gold);outline-offset:3px}
.onboarding-card progress{accent-color:var(--dn-gold)}
.onboarding-steps li{background:var(--dn-background)}
.onboarding-steps li[aria-current=step]{background:var(--dn-brand);color:#fff}
.onboarding-fields input,.onboarding-fields select,.onboarding-fields textarea{border-color:var(--dn-control-border)}
.onboarding-note{background:var(--dn-background);border-left:4px solid var(--dn-gold)}