:root {
  --ink: #172449; --muted: #6d7790; --line: #e1e6f0; --bg: #f4f6fb;
  --nav: #12265f; --green: #244a9b; --green2: #e9eefb; --gold: #d8b465;
  --blue: #17316f; --blue-dark: #0d1e4e; --shadow: 0 8px 24px rgba(20,43,99,.07);
}
body { background: linear-gradient(135deg,#f7f8fc 0%,#f1f4fa 100%); }
.sidebar { background: linear-gradient(180deg,var(--blue) 0%,var(--blue-dark) 100%); box-shadow: 10px 0 35px rgba(13,30,78,.08); }
.brand { gap: 14px; padding-bottom: 30px; }
.brand b { font-size: 16px; letter-spacing: .15px; }
.brand small { opacity: .68; }
.brand > span.brand-mark { width:54px; height:54px; border:2px solid rgba(255,255,255,.9); border-radius:50%; overflow:hidden; background:#fff; box-shadow:0 5px 16px rgba(0,0,0,.2); flex:none; }
.brand-mark img,.auth-logo img { width:100%; height:100%; object-fit:cover; object-position:center; }
.sidebar nav a { color:#c8d4f2; border:1px solid transparent; transition:background .18s ease,color .18s ease,transform .18s ease; }
.sidebar nav a:hover { background:rgba(255,255,255,.09); color:#fff; transform:translateX(2px); }
.sidebar nav a.active { background:#fff; color:var(--blue); box-shadow:0 6px 18px rgba(0,0,0,.14); }
.local-badge { color:#bdcbed; }
main > header { box-shadow:0 2px 14px rgba(20,43,99,.04); }
.global-search input { border-color:#dbe1ed; background:#f8f9fc; }
.global-search button { background:var(--blue); color:#fff; cursor:pointer; }
.user-menu form button { color:var(--green); }
.page-head h1 { color:var(--blue-dark); }
.button { background:linear-gradient(135deg,var(--green),var(--blue)); box-shadow:0 5px 14px rgba(36,74,155,.2); transition:transform .15s ease,box-shadow .15s ease; }
.button:hover { transform:translateY(-1px); box-shadow:0 8px 18px rgba(36,74,155,.25); }
.button.secondary { background:var(--green2); color:var(--blue); box-shadow:none; }
.stat,.panel,.kanban article,.property-card { border-color:rgba(212,220,235,.9); box-shadow:var(--shadow); }
.stat.accent { background:linear-gradient(135deg,var(--blue) 0%,var(--blue-dark) 100%); border-color:transparent; }
.stat.accent a { color:#cbd8f8; }
.tag { background:var(--green2); color:var(--blue); }
.tabs a.active { color:var(--blue); box-shadow:0 3px 12px rgba(20,43,99,.06); }
.property-icon { background:var(--green2); }
.funnel div { border-top-color:#7995d0; background:#f5f7fc; }
.flash { background:var(--green2); color:var(--blue-dark); }
input:focus,select:focus,textarea:focus { border-color:var(--green)!important; box-shadow:0 0 0 3px rgba(36,74,155,.12)!important; }
.auth-page { background:radial-gradient(circle at 50% 15%,#294a95 0%,#17316f 38%,#0d1e4e 100%); }
.auth-brand { margin-bottom:26px; text-align:left; }
.auth-brand b { font-size:19px; letter-spacing:.2px; }
.auth-brand > span.auth-logo { width:82px; height:82px; border-radius:50%; overflow:hidden; background:#fff; border:3px solid #fff; box-shadow:0 10px 30px rgba(0,0,0,.28); flex:none; }
.auth-card { border:1px solid rgba(255,255,255,.55); box-shadow:0 28px 80px rgba(5,18,52,.42); }
.auth-card h1 { color:var(--blue-dark); }
@media(max-width:700px){.brand>span.brand-mark{width:46px;height:46px}.sidebar{padding-left:11px;padding-right:11px}.sidebar nav a.active{box-shadow:0 4px 12px rgba(0,0,0,.14)}}
@media(max-width:520px){.auth-brand>span.auth-logo{width:68px;height:68px}.auth-card{padding:24px}.auth-brand b{font-size:17px}}
