/* DWELLIVRA: shared workspace/demo sizing and refined account entry. */
/* Component parity: the same file is used by the real workspace and isolated demo. */
.workspace .workspace-setup,
.workspace .business-health {box-sizing:border-box;min-width:0;max-width:100%}
.workspace .workspace-setup {overflow:hidden}
.workspace .workspace-setup-head>div {min-width:0;flex:1}
.workspace .workspace-setup-steps {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;min-width:0}
.workspace .workspace-setup-steps>a {
 box-sizing:border-box;min-width:0;min-height:84px;display:grid;
 grid-template-columns:30px minmax(0,1fr) 13px;align-items:start;
 gap:9px;padding:13px 10px;text-decoration:none;
 overflow-wrap:anywhere;transition:border-color .16s ease,background-color .16s ease;
}
.workspace .workspace-setup-steps>a:hover {border-color:#95bfb5;background:#f5faf8}
.workspace .workspace-setup-steps>a>span {width:30px;height:30px;flex-shrink:0}
.workspace .workspace-setup-steps>a>div {min-width:0;max-width:100%;overflow:visible}
.workspace .workspace-setup-steps>a b,
.workspace .workspace-setup-steps>a small {
 display:block;white-space:normal;overflow:visible;text-overflow:clip;
 overflow-wrap:break-word;word-break:normal;max-width:100%;
}
.workspace .workspace-setup-steps>a b {font-size:11px;line-height:1.35}
.workspace .workspace-setup-steps>a small {font-size:10px;line-height:1.45;margin-top:4px}
.workspace .workspace-setup-steps>a>svg {align-self:center;width:13px;flex:none}
.workspace .business-health-card>div:last-child {min-width:0}
.workspace .business-health-card p,
.workspace .business-health-card small,
.workspace .business-health-recommendations li {overflow-wrap:anywhere;white-space:normal}
@media(max-width:1320px){
 .workspace .workspace-setup-steps {grid-template-columns:repeat(3,minmax(0,1fr))}
 .workspace .workspace-setup-steps>a {min-height:77px;padding:14px}
}
@media(max-width:820px){
 .workspace .workspace-setup-steps {grid-template-columns:repeat(2,minmax(0,1fr))}
 .workspace .workspace-setup-head {gap:16px}
}
@media(max-width:520px){
 .workspace .workspace-setup-steps {grid-template-columns:minmax(0,1fr)}
 .workspace .workspace-setup-steps>a {grid-template-columns:34px minmax(0,1fr) 14px;min-height:64px}
 .workspace .workspace-setup-steps>a b {font-size:12px}
 .workspace .workspace-setup-head>strong {font-size:21px}
}

/* Cloudflare-inspired centered sign-in structure, preserving DWELLIVRA brand. */
.access-page--centered {
 min-height:100svh;background:#fff;color:#172d40;
 display:flex;flex-direction:column;align-items:stretch;
}
.access-page--centered .access-header {
 box-sizing:border-box;width:100%;max-width:1600px;margin:0 auto;
 padding:clamp(19px,2.2vw,33px) clamp(20px,3.2vw,55px);
}
.access-page--centered .access-header .access-brand-link {
 background:transparent!important;padding:0!important;
 border:0!important;box-shadow:none!important;
}
.access-page--centered .access-header-cta {
 display:inline-flex;align-items:center;justify-content:center;gap:9px;
 flex-shrink:0;min-height:42px;padding:9px 16px;border:1px solid #dae4e9;
 background:#fff;border-radius:11px;color:#18384e;
 font-size:13px;font-weight:700;text-decoration:none;
 transition:background .18s ease,border-color .18s ease;
}
.access-page--centered .access-header-cta:hover {background:#f3f9f8;border-color:#a8d2c9}
.access-page--centered .access-layout {
 display:block;box-sizing:border-box;width:min(calc(100% - 40px),510px);max-width:510px;
 min-height:0;flex:0 0 auto;margin:clamp(35px,6vh,78px) auto clamp(44px,7vh,90px);
 padding:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;
}
.access-page--centered .access-story {display:none!important}
.access-page--centered .access-form-panel {display:block;width:100%;padding:0;background:transparent}
.access-page--centered .access-form-inner {max-width:460px;width:100%;margin-inline:auto}
.access-page--centered .access-form-inner .access-kicker {
 font-size:10px;letter-spacing:1.8px;font-weight:800;color:#147d78;
}
.access-page--centered .access-form-inner h1 {
 font-size:clamp(29px,3.5vw,36px);line-height:1.2;
 font-weight:760;letter-spacing:-1.3px;margin:13px 0 10px;color:#14263d;
}
.access-page--centered .access-intro {
 font-size:14px;color:#657788;line-height:1.65;margin:0 0 25px;
}
.access-page--centered .access-providers {
 display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
 gap:12px;margin:24px 0 25px;
}
.access-page--centered .access-provider {
 min-width:0;min-height:54px;padding:12px 10px;
 display:inline-flex;align-items:center;justify-content:center;gap:10px;
 background:#fff;border:1px solid #dce4e9;border-radius:11px;
 font-size:12px;line-height:1.4;font-weight:650;color:#24364a;
 box-shadow:0 2px 4px rgba(16,40,63,.025);
}
.access-page--centered .access-provider:hover {transform:none;background:#f7fafb;border-color:#9dbdb8}
.access-page--centered .access-provider-icon {width:24px;height:24px;flex:0 0 24px;border:0;background:transparent}
.access-page--centered .access-provider-google svg {display:block;width:23px;height:23px}
.access-page--centered .access-provider-microsoft {
 display:grid;grid-template-columns:repeat(2,10px);grid-template-rows:repeat(2,10px);gap:2px;
 align-content:center;justify-content:center;width:24px;height:24px;flex:0 0 24px;
}
.access-page--centered .access-divider {margin:0 0 23px;font-size:11px;letter-spacing:1px;color:#7b8d9b}
.access-page--centered .field {margin-bottom:20px}
.access-page--centered .label {font-size:13px;font-weight:670;line-height:1.5;margin-bottom:8px}
.access-page--centered .input {
 min-height:54px;padding:14px 15px;border-radius:11px;font-size:14px;
 border:1px solid #d9e2e7;color:#193044;
}
.access-page--centered .dw-password-field input {padding-right:78px}
.access-page--centered .dw-show-password {top:10px;right:8px;height:34px;font-weight:650;font-size:12px}
.access-page--centered .access-submit {
 min-height:54px;margin-top:13px;border-radius:11px;
 font-weight:750;font-size:14px;box-shadow:none;
}
.access-page--centered .access-remember {
 display:flex;align-items:center;gap:11px;cursor:pointer;
 margin:6px 0 14px;font-size:13px;font-weight:530;color:#334c5f;
}
.access-page--centered .access-remember input {
 width:17px;height:17px;margin:0;accent-color:#147d78;flex:0 0 17px;
}
.access-page--centered .access-alternative {font-size:13px;margin:23px 0 25px;line-height:1.6}
.access-page--centered .access-privacy-note {padding-top:19px;font-size:12px}
.access-page--centered .access-footer {
 box-sizing:border-box;width:100%;max-width:1600px;margin:auto auto 0;
 padding:22px clamp(20px,3.2vw,55px) 26px;
 border-top:1px solid #f0f3f6;gap:14px;
}
@media(max-width:600px){
 .access-page--centered .access-header {padding:18px 19px}
 .access-page--centered .access-header-cta {min-height:39px;padding:8px 12px;font-size:12px}
 .access-page--centered .access-layout {width:calc(100% - 42px);margin:35px auto 55px}
 .access-page--centered .access-form-inner h1 {font-size:29px}
 .access-page--centered .access-providers {gap:9px}
 .access-page--centered .access-provider {font-size:11px;gap:7px;padding:10px 6px}
 .access-page--centered .access-footer {flex-direction:column;align-items:flex-start;padding:20px 21px}
}
@media(max-width:380px){
 .access-page--centered .access-providers {grid-template-columns:minmax(0,1fr)}
 .access-page--centered .access-provider {font-size:12px}
}
@media(prefers-reduced-motion:reduce){
 .access-page--centered .access-provider,.workspace .workspace-setup-steps>a {transition:none}
}
