.role-identity{display:flex;align-items:center;gap:10px;margin-left:auto;padding-left:18px;border-left:1px solid rgba(255,255,255,.13)}
.role-identity strong{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#d6aa56}.role-identity small{display:block;color:#aaa;font-size:11px}.role-identity a{color:#ddd;font-size:12px;text-decoration:none}
.portal-shell{max-width:1180px;margin:0 auto;padding:58px 24px 100px}.access-hero{text-align:center;max-width:760px;margin:0 auto 32px}.access-hero h1{font-size:clamp(36px,6vw,72px);margin:8px 0 14px}.access-hero p{font-size:18px;color:#aaa;line-height:1.7}.access-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.access-card{border:1px solid rgba(255,255,255,.14);background:linear-gradient(150deg,#171717,#0d0d0d);border-radius:22px;padding:26px;min-height:390px;display:flex;flex-direction:column}.access-card.customer{border-top:4px solid #d6aa56}.access-card.employee{border-top:4px solid #5f9cad}.access-card.owner{border-top:4px solid #bb765e}.access-card h2{font-size:27px;margin:8px 0}.access-card p,.access-card li{color:#aaa;line-height:1.55}.access-card ul{padding-left:18px;flex:1}.access-form{display:grid;gap:10px;margin-top:14px}.access-form input{width:100%;box-sizing:border-box;padding:13px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.17);background:#0b0b0b;color:white}.access-form button{width:100%}.access-note{text-align:center;color:#888;margin-top:22px;font-size:13px}.role-ribbon{padding:10px 24px;text-align:center;font-size:12px;letter-spacing:.09em;text-transform:uppercase;background:#161616;border-bottom:1px solid rgba(255,255,255,.08)}.role-ribbon.customer{color:#e0bb6d}.role-ribbon.employee{color:#7db8c7}.role-ribbon.owner{color:#d78d75}.pov{display:none!important}.demo-mode .pov{display:block!important}
.owner-calendar-preview{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:14px}.owner-calendar-preview>div{min-height:106px;padding:11px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#101010}.owner-calendar-preview b{display:block;color:#888;margin-bottom:8px}.owner-calendar-preview span{display:block;font-size:11px;padding:6px;border-radius:6px;background:rgba(214,170,86,.14);color:#e5c98e;margin-top:5px}.owner-calendar-preview .risk{background:rgba(215,92,75,.18);color:#ffb4aa}
@media(max-width:900px){.access-grid{grid-template-columns:1fr}.access-card{min-height:0}.role-identity{display:none}.owner-calendar-preview{grid-template-columns:repeat(2,1fr)}}
