:root{--navy:#082f53;--blue:#0c679f;--wine:#a61f5c;--gold:#d6a441;--ink:#17324a;--muted:#66798b;--line:#dbe4eb;--bg:#f3f6f8;--white:#fff;--green:#16835b;--red:#b82c2c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 Arial,sans-serif}a{color:var(--blue)}h1,h2,h3{font-family:Georgia,serif;color:var(--navy)}h1{margin:.15rem 0 0;font-size:2rem}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:linear-gradient(180deg,#07375e,#052a49);padding:24px 18px;color:#fff;z-index:20}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font:700 19px Georgia,serif;margin-bottom:28px}.brand img{width:68px;height:68px;object-fit:contain;background:#fff;border-radius:50%;padding:4px}.sidebar nav{display:grid;gap:5px}.sidebar nav a{color:#dceaf4;text-decoration:none;padding:11px 13px;border-radius:7px;display:flex;gap:11px;font-weight:600}.sidebar nav a:hover,.sidebar nav a.active{background:#fff;color:var(--navy);box-shadow:0 8px 18px #001a2b55}.main{margin-left:250px;padding:34px;min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.eyebrow{text-transform:uppercase;letter-spacing:2px;color:#ad7618;font-size:11px;font-weight:bold}.user-chip{display:flex;align-items:center;gap:10px;background:#fff;padding:8px 12px;border-radius:30px;box-shadow:0 3px 14px #17324a12}.user-chip>span{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--wine);color:#fff;font-weight:bold}.user-chip small{display:block;color:var(--muted)}.card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 28px #17324a0d;padding:24px}.grid{display:grid;gap:20px}.stats{grid-template-columns:repeat(4,1fr);margin-bottom:22px}.stat{position:relative;overflow:hidden}.stat:after{content:'';position:absolute;width:95px;height:95px;border-radius:50%;background:#0c679f0b;right:-28px;bottom:-34px}.stat strong{display:block;font:700 31px Georgia,serif;color:var(--navy)}.stat span{color:var(--muted)}.toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:20px}.toolbar .grow{flex:1 1 280px}.field{display:grid;gap:6px}.field label{font-size:12px;font-weight:bold;color:#536a7d}.input,select,textarea,input[type=date],input[type=email],input[type=password],input[type=text]{width:100%;border:1px solid #cbd8e1;border-radius:6px;padding:10px 11px;background:#fff;color:var(--ink);font:inherit}textarea{min-height:110px;resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:5px;padding:10px 16px;background:var(--blue);color:#fff;text-decoration:none;font-weight:bold;cursor:pointer}.btn.secondary{background:#fff;color:var(--navy);border:1px solid #9fb3c3}.btn.wine{background:var(--wine)}.btn.danger{background:var(--red)}.btn.small{padding:7px 10px;font-size:13px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:#607487;padding:11px;border-bottom:2px solid var(--line)}td{padding:13px 11px;border-bottom:1px solid #e7edf1;vertical-align:top}tr:hover td{background:#f8fafb}.address{font-weight:bold;color:var(--navy);text-decoration:none}.meta{font-size:12px;color:var(--muted)}.badge{display:inline-block;padding:4px 9px;border-radius:20px;background:#eaf2f7;color:#285978;font-size:12px;font-weight:bold}.badge.active,.badge.closed{background:#e4f5ed;color:#176b4c}.badge.pending,.badge.under-contract{background:#fff2d7;color:#855908}.alert{padding:12px 15px;border-radius:7px;margin:0 0 20px}.alert.success{background:#e5f5ed;color:#176b4c}.alert.error{background:#fbe8e8;color:#8f2525}.two-col{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.full{grid-column:1/-1}.section-title{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:18px}.timeline{list-style:none;padding:0;margin:0}.timeline li{padding:0 0 20px 22px;border-left:2px solid #d8e3ea;position:relative}.timeline li:before{content:'';position:absolute;left:-6px;top:4px;width:10px;height:10px;border-radius:50%;background:var(--wine)}.empty{text-align:center;padding:45px;color:var(--muted)}.mobile-head{display:none}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#062d50,#0b679f)}.login-card{background:#fff;width:min(420px,100%);padding:36px;border-radius:16px;box-shadow:0 24px 70px #001b30aa;text-align:center}.login-card img{width:115px}.login-card form{text-align:left;display:grid;gap:15px}.login-card .btn{width:100%;margin-top:4px}.group-head td{background:#eef4f7!important;color:var(--navy);font-family:Georgia,serif;font-size:18px;font-weight:bold}.pill-list{display:flex;gap:6px;flex-wrap:wrap}.agent-checks{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.agent-checks label{border:1px solid var(--line);border-radius:6px;padding:8px}.pagination{display:flex;gap:6px;justify-content:center;margin-top:20px}.pagination a{padding:7px 11px;background:#fff;border:1px solid var(--line);border-radius:5px;text-decoration:none}.pagination a.active{background:var(--blue);color:#fff}.help{font-size:12px;color:var(--muted)}@media(max-width:1000px){.stats{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}}@media(max-width:760px){.mobile-head{display:flex;position:sticky;top:0;z-index:30;height:62px;background:var(--navy);color:#fff;align-items:center;gap:10px;padding:8px 15px}.mobile-head img{width:45px;height:45px;object-fit:contain;background:#fff;border-radius:50%}.menu-button{background:none;border:0;color:#fff;font-size:24px}.sidebar{transform:translateX(-100%);transition:.25s;top:62px;width:260px}.nav-open .sidebar{transform:none}.main{margin:0;padding:22px 15px}.topbar{align-items:flex-start}.user-chip{display:none}.stats{grid-template-columns:1fr 1fr;gap:10px}.card{padding:17px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.agent-checks{grid-template-columns:1fr}.toolbar>*{flex:1 1 100%}table.responsive thead{display:none}table.responsive,table.responsive tbody,table.responsive tr,table.responsive td{display:block;width:100%}table.responsive tr{border-bottom:1px solid var(--line);padding:10px 0}table.responsive td{border:0;padding:4px 0}table.responsive td:before{content:attr(data-label);display:block;font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:bold}}
