/* Shared Square One identity. Keep role layouts and semantic status colors intact. */
:root{--olive:#646d30;--olive-deep:#343c20;--orange:#b64e1e;--orange-hover:#923c16;--green:var(--olive);--ink:#303723;--muted:#69705d;--paper:#fdfcf8;--line:#e1e3d5}
body.staff-mode{--green:var(--olive);--deep:var(--olive-deep);--ink:#303723;--muted:#69705d;--line:#e1e3d5;background:#f6f6ef;color:var(--ink)}
.brand-logo{display:block;width:270px;height:92px;object-fit:cover;object-position:center;max-width:100%}
.portal-logo{display:none;width:72px;height:72px;object-fit:contain;border-radius:12px}
.portal-branding .brand-logo{display:none}.portal-branding .portal-logo{display:block}
.i-paper-head img{width:160px;height:auto;object-fit:contain}
.i-paper-head .invoice-brand-logo{display:block;width:280px;max-width:100%;height:100px;object-fit:cover;object-position:center}
footer .brand{background:transparent;border-radius:0;padding:0 10px}
.auth-logo{width:82px;height:82px;object-fit:cover;border-radius:16px}
.ws-brand-logo{width:46px;height:46px;border-radius:12px;flex:none;object-fit:cover}
.ws-brand strong{font-size:20px;letter-spacing:-.5px}.ws-brand small{font-size:8px}
#ws-sidebar{background:linear-gradient(165deg,#464d25,#29331d)}
.ws-nav-items>a.is-active{box-shadow:inset 3px 0 #ed9b51;background:#ffffff16}
body .button:not(.secondary):not(.danger),body :is(#navigation,.actions,.dialog-actions,.p-toolbar,.t-actions)>.button:not(.secondary):not(.danger){background:var(--orange);border-color:var(--orange);color:white}
body .button:not(.secondary):not(.danger):hover,body :is(#navigation,.actions,.dialog-actions,.p-toolbar,.t-actions)>.button:not(.secondary):not(.danger):hover{background:var(--orange-hover);border-color:var(--orange-hover);color:white}
.button.secondary{background:transparent;color:var(--olive);border-color:var(--line)}
.button.secondary:hover{background:#f0f1e5;color:var(--olive-deep);border-color:#bcc29e}
.button.danger{background:#a3362d;border-color:#a3362d}.button.danger:hover{background:#84291f;border-color:#84291f}
.tiny-square{background:var(--orange)}h1 span{color:var(--olive)}
.eyebrow{color:var(--olive)}.announcement{background:var(--olive-deep)}.announcement a{color:#ffd2a3}
.dashboard{background:#f6f6ef}.principles{background:#f0f1e5}
.service-card:hover{background:#f4f4e9;border-color:#a4ad78}
.service-detail{background:#f0f1e5}.care-icon{background:#fff0df;color:var(--orange)}
a:focus-visible,button:focus-visible,summary:focus-visible,body.staff-mode :is(button,a):focus-visible{outline:3px solid var(--orange);outline-offset:4px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--olive)}
input,select,textarea{accent-color:var(--olive)}
#page-owner .form-card,#page-tenant .form-card,.t-login .m-panel{border-top:3px solid var(--olive)}
#page-owner .stats article,#page-tenant .stats article{border-top:3px solid #ce783a}
@media(max-width:1100px){.brand-logo{width:230px;height:80px}.nav-wrap{gap:18px}}
@media(max-width:560px){.brand-logo{width:215px;height:74px}.auth-logo{width:68px;height:68px}}

/* Public page links and portal entry points have distinct treatments. */
.header{background:#fdfcf8}
body #navigation{gap:24px}
.nav-pages,.nav-portals{display:flex;align-items:center;gap:20px}
.nav-portals{border-left:1px solid var(--line);padding-left:24px;gap:10px}
body #navigation .nav-pages>a{padding:10px 0;color:var(--ink);font-size:.875rem;font-weight:500;text-decoration:none;border-bottom:2px solid transparent;white-space:nowrap}
body #navigation .nav-pages>a:hover,body #navigation .nav-pages>a[aria-current=page]{border-bottom-color:var(--olive);color:var(--olive-deep)}
body #navigation .portal-entry{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 16px;border:1px solid var(--olive);border-radius:8px;color:var(--olive-deep);background:transparent;font-size:.8125rem;font-weight:600;text-decoration:none;white-space:nowrap}
body #navigation .portal-entry:hover,body #navigation .portal-entry[aria-current=page]{background:var(--olive-deep);border-color:var(--olive-deep);color:white}
body #navigation .portal-entry-staff{background:var(--orange);border-color:var(--orange);color:white}
body #navigation .portal-entry-staff:hover{background:var(--orange-hover);border-color:var(--orange-hover)}
#page-owner .o-workspace>.section-heading h1{font-size:2rem;line-height:1.2;letter-spacing:-.5px}
@media(max-width:850px){body #navigation{gap:20px}.nav-pages{flex-direction:column;align-items:stretch;gap:4px}.nav-portals{border-left:0;border-top:1px solid var(--line);padding:18px 0 0;flex-wrap:wrap}.nav-portals>a{flex:1 1 140px}body #navigation .nav-pages>a{padding:10px 0}}
