:root {
  color-scheme: light;
  --navy: #0d2c45;
  --navy-2: #173f5f;
  --teal: #118687;
  --teal-soft: #e1f4f1;
  --orange: #f5a23a;
  --orange-soft: #fff1dc;
  --ink: #172b3a;
  --slate: #607384;
  --muted: #8a9aa6;
  --line: #dbe3e8;
  --canvas: #f5f7f8;
  --surface: #fff;
  --danger: #c74e4e;
  --success: #2b8a5a;
  --shadow: 0 10px 30px rgba(13,44,69,.08);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
body { margin: 0; background: var(--canvas); color: var(--ink); min-width: 320px; }
body.auth-pending { overflow:hidden; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.app-shell { min-height: 100vh; display: grid; grid-template-columns: 248px minmax(0,1fr); }
.sidebar { background: var(--navy); color: #fff; padding: 28px 20px 20px; display:flex; flex-direction:column; position:sticky; top:0; height:100vh; z-index:20; }
.brand { display:flex; align-items:center; gap:12px; font-size:1.25rem; font-weight:800; padding:0 10px 28px; }
.brand-mark,.mobile-brand,.brand-logo { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; font-weight:900; }.brand-mark,.mobile-brand{background:var(--orange);color:var(--navy)}.brand-logo{object-fit:contain;flex:0 0 auto}
.nav-list { display:grid; gap:6px; }
.nav-item { border:0; color:#c7d5df; background:transparent; display:flex; justify-content:space-between; align-items:center; min-height:48px; padding:0 14px; border-radius:12px; font-weight:650; text-align:left; }
.nav-item:hover { background:rgba(255,255,255,.07); color:#fff; }
.nav-item.active { background:#fff; color:var(--navy); }
.nav-count { font-size:.75rem; color:#a9bdca; min-width:22px; text-align:center; }
.nav-item.active .nav-count { color:var(--slate); }
.nav-count.accent { background:var(--orange); color:var(--navy); border-radius:999px; padding:3px 7px; }
.sidebar-foot { margin-top:auto; border-top:1px solid rgba(255,255,255,.12); padding-top:18px; }
.office-switcher { display:flex; gap:10px; align-items:center; padding:8px; }
.office-switcher div { display:grid; gap:3px; }
.office-switcher strong { font-size:.9rem; }
.office-switcher small,.sidebar-foot p { color:#9eb2c0; font-size:.75rem; }
.sidebar-foot p { padding:0 8px; line-height:1.45; }
.avatar { width:36px; height:36px; border-radius:11px; display:inline-grid; place-items:center; background:var(--teal); color:#fff; font-size:.72rem; font-weight:800; flex:0 0 auto; }
.avatar.small { width:30px; height:30px; border-radius:9px; margin-right:10px; }
.avatar.purple { background:#7257a7; }.avatar.gold { background:#b47724; }.avatar.blue { background:#356f9b; }
.main { min-width:0; }
.topbar { height:78px; padding:0 36px; background:rgba(255,255,255,.92); border-bottom:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:20px; position:sticky; top:0; z-index:15; backdrop-filter:blur(12px); }
.search-wrap { position:relative; width:min(520px,55vw); }
.search-wrap input { width:100%; border:1px solid var(--line); border-radius:13px; background:#f8fafb; padding:13px 54px 13px 16px; color:var(--ink); outline:0; }
.search-wrap input:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(17,134,135,.12); background:#fff; }
.search-wrap kbd { position:absolute; right:10px; top:9px; border:1px solid var(--line); border-bottom-width:2px; color:var(--muted); background:#fff; border-radius:7px; font-size:.72rem; padding:4px 7px; }
.top-actions,.heading-actions,.match-actions,.dialog-actions { display:flex; align-items:center; gap:10px; }
.primary-button,.secondary-button,.icon-button,.text-button { border-radius:11px; min-height:42px; padding:0 16px; font-weight:750; border:1px solid transparent; }
.primary-button { background:var(--teal); color:#fff; box-shadow:0 6px 16px rgba(17,134,135,.18); }
.primary-button:hover { background:#0d7475; }
.secondary-button { background:#fff; color:var(--navy); border-color:var(--line); }
.secondary-button:hover { border-color:#b7c6d0; background:#f8fafb; }
.icon-button { width:42px; padding:0; border-radius:50%; background:var(--orange-soft); color:#85530c; }
.text-button { background:transparent; color:var(--teal); padding:0 4px; min-height:34px; }
.mobile-brand { display:none; border:0; }
.account-logout{border:0;background:transparent;color:var(--slate);font-weight:750;padding:10px 4px}.account-logout:hover{color:var(--danger)}
.content { padding:34px 36px 60px; max-width:1560px; margin:0 auto; }
.view { display:none; animation:fade-in .2s ease; }
.view.active { display:block; }
@keyframes fade-in { from{opacity:.45;transform:translateY(4px)} to{opacity:1;transform:none} }
.page-heading { display:flex; justify-content:space-between; gap:24px; align-items:flex-end; margin-bottom:28px; }
.eyebrow { margin:0 0 7px; font-size:.75rem; font-weight:850; letter-spacing:.09em; color:var(--teal); }
h1,h2,h3,p { margin-top:0; }
h1 { margin-bottom:0; font-size:clamp(1.75rem,3vw,2.35rem); line-height:1.08; color:var(--navy); letter-spacing:-.025em; }
h2 { margin-bottom:0; font-size:1.16rem; color:var(--navy); }
h3 { color:var(--navy); }
.metric-row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:18px; }
.metric,.surface { background:var(--surface); border:1px solid var(--line); border-radius:17px; box-shadow:0 2px 10px rgba(13,44,69,.025); }
.metric { padding:20px; display:grid; gap:7px; }
.metric span { color:var(--slate); font-size:.88rem; }
.metric strong { color:var(--navy); font-size:2rem; line-height:1; }
.metric small { color:var(--muted); }
.positive { color:var(--success)!important; font-weight:700; }
.orange-dot,.teal-dot { display:inline-block; width:7px; height:7px; border-radius:50%; margin-right:6px; background:var(--orange); }
.teal-dot { background:var(--teal); }
.dashboard-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr); gap:18px; }
.surface { padding:22px; }
.section-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:18px; }
.task-list { display:grid; }
.task-item { display:grid; grid-template-columns:54px minmax(0,1fr) auto; align-items:center; gap:14px; border-top:1px solid var(--line); padding:15px 0; }
.task-item:first-child { border-top:0; }
.task-time { color:var(--teal); font-weight:800; font-size:.82rem; }
.task-time.overdue { color:var(--danger); }
.task-copy { min-width:0; }
.task-copy strong { display:block; color:var(--ink); margin-bottom:4px; }
.task-copy small { color:var(--muted); }
.complete-button { width:30px; height:30px; border:1px solid var(--line); background:#fff; border-radius:50%; color:transparent; }
.complete-button:hover { border-color:var(--teal); }
.complete-button.done { background:var(--teal); color:#fff; border-color:var(--teal); }
.task-item.completed .task-copy { opacity:.55; text-decoration:line-through; }
.match-panel { background:linear-gradient(145deg,#fff,#f4fbfa); }
.score-chip,.status-chip { display:inline-flex; align-items:center; justify-content:center; border-radius:999px; padding:6px 10px; background:var(--teal-soft); color:#087273; font-size:.8rem; font-weight:800; }
.featured-match { display:grid; grid-template-columns:150px minmax(0,1fr); gap:18px; }
.property-visual { min-height:180px; border-radius:14px; display:flex; flex-direction:column; justify-content:flex-end; padding:16px; color:#fff; background:linear-gradient(155deg,#3a6e75,#163f5f); position:relative; overflow:hidden; }
.property-visual::before { content:""; position:absolute; width:110px; height:80px; right:-20px; top:22px; background:rgba(255,255,255,.08); transform:rotate(24deg); border-radius:20px; }
.property-visual span { font-size:1.7rem; font-weight:850; position:relative; }.property-visual small { position:relative; }
.match-copy h3 { margin-bottom:8px; font-size:1.05rem; }.match-copy p { color:var(--slate); font-size:.88rem; line-height:1.45; }
.match-copy ul { padding-left:18px; color:var(--slate); font-size:.86rem; line-height:1.7; }
.match-actions { justify-content:flex-end; margin-top:14px; }
.pipeline-panel { grid-column:1/-1; }
.pipeline { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.pipeline div { display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; column-gap:12px; align-items:center; }
.pipeline span { grid-row:1/3; width:9px; height:54px; border-radius:8px; background:linear-gradient(to top,var(--teal) var(--w),#e8edef var(--w)); }
.pipeline strong { color:var(--navy); font-size:1.55rem; }.pipeline small { color:var(--muted); }
.filter-bar { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:16px; color:var(--muted); }
.segmented { display:inline-flex; border:1px solid var(--line); border-radius:12px; padding:4px; background:#fff; }
.segmented button,.dialog-tabs button { border:0; background:transparent; color:var(--slate); border-radius:8px; padding:9px 14px; font-weight:700; }
.segmented button.active,.dialog-tabs button.active { background:var(--navy); color:#fff; }
.table-wrap { padding:0; overflow:auto; }
table { width:100%; border-collapse:collapse; }
th { text-align:left; color:var(--muted); font-size:.75rem; text-transform:uppercase; letter-spacing:.05em; padding:15px 18px; border-bottom:1px solid var(--line); white-space:nowrap; }
td { padding:15px 18px; border-bottom:1px solid #edf1f3; color:var(--slate); vertical-align:middle; }
tbody tr:last-child td { border-bottom:0; }
td strong { color:var(--ink); }
.customer-cell { display:flex; align-items:center; gap:11px; }.customer-cell small { display:block; color:var(--muted); margin-top:3px; }
.row-action { border:0; background:#f2f5f6; color:var(--navy); border-radius:9px; padding:7px 10px; font-weight:700; }
.status-chip.hot { color:#9b5511; background:var(--orange-soft); }.status-chip.follow { color:#a74343; background:#fdeaea; }.status-chip.cold { color:var(--slate); background:#eef2f4; }
.property-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.property-card { background:#fff; border:1px solid var(--line); border-radius:17px; overflow:hidden; transition:.2s ease; }
.property-card:hover { transform:translateY(-2px); box-shadow:var(--shadow); }
.property-card .property-visual { border-radius:0; min-height:150px; }
.property-card-body { padding:18px; }.property-card h3 { margin-bottom:8px; }.property-card p { color:var(--slate); line-height:1.5; }
.property-meta { display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--line); margin-top:15px; padding-top:14px; gap:10px; }.property-meta strong { color:var(--navy); }.property-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}.property-card-actions .secondary-button{min-height:38px;padding:0 13px}.property-card-actions .score-chip{white-space:nowrap}
.property-owner{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.78rem}.property-owner .avatar{width:26px;height:26px;border-radius:8px;font-size:.62rem}.property-badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.data-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:800;background:#eef3f5;color:var(--slate)}.data-badge.verified{background:#e6f6ef;color:#19704e}.data-badge.shared{background:#e9f4f5;color:#087273}.data-badge.warning{background:var(--orange-soft);color:#85530c}.property-action-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.property-action-row button{min-height:38px;padding:0 10px}.office-share-button{background:var(--navy);color:#fff;border-color:var(--navy)}
.match-list { display:grid; gap:14px; }
.match-row { display:grid; grid-template-columns:56px minmax(0,1fr) 40px minmax(0,1fr) auto; gap:16px; align-items:center; background:#fff; border:1px solid var(--line); border-radius:16px; padding:18px; }
.match-person strong,.match-property strong { display:block; color:var(--navy); margin-bottom:5px; }.match-row small { color:var(--muted); }
.match-score { width:56px; height:56px; border-radius:50%; display:grid; place-items:center; background:conic-gradient(var(--teal) calc(var(--score)*1%),#e7eeee 0); position:relative; font-weight:850; color:var(--navy); }
.match-score::before { content:""; position:absolute; inset:5px; background:#fff; border-radius:50%; }.match-score span { position:relative; font-size:.78rem; }
.match-arrow { color:var(--orange); font-size:1.4rem; text-align:center; }
.calendar-layout { display:grid; grid-template-columns:330px minmax(0,1fr); gap:18px; }
.mini-calendar { align-self:start; }
.calendar-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; }.calendar-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:5px; text-align:center; }.calendar-grid span { font-size:.75rem; color:var(--muted); padding:8px 0; }.calendar-grid button { aspect-ratio:1; border:0; border-radius:10px; background:transparent; color:var(--ink); }.calendar-grid button.today { background:var(--teal); color:#fff; font-weight:800; }.calendar-grid button.has-task:not(.today) { background:var(--orange-soft); color:#85530c; font-weight:800; }
.task-list.expanded .task-item { grid-template-columns:70px minmax(0,1fr) auto; }
.report-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.report-grid article { min-height:220px; }.report-highlight { background:var(--navy); color:#fff; display:flex; flex-direction:column; justify-content:center; }.report-highlight p { color:#c3d2dc; }.report-highlight strong { font-size:3.2rem; margin:10px 0; }.report-highlight .positive { color:#7ce1be!important; }
.donut { --value:50; width:150px; height:150px; margin:25px auto 0; border-radius:50%; background:conic-gradient(var(--teal) calc(var(--value)*1%),#e9eff1 0); display:grid; place-items:center; }.donut::before { content:""; width:108px; height:108px; background:#fff; border-radius:50%; grid-area:1/1; }.donut span { grid-area:1/1; z-index:1; font-size:1.7rem; font-weight:850; color:var(--navy); text-align:center; }.donut small { display:block; color:var(--muted); font-size:.7rem; margin-top:3px; }
.quality-bars { margin-top:28px; }.quality-bars p { display:flex; justify-content:space-between; margin:15px 0 7px; color:var(--slate); }.quality-bars i { display:block; height:8px; background:#e8edef; border-radius:8px; overflow:hidden; }.quality-bars em { display:block; height:100%; background:var(--teal); border-radius:8px; }
.team-table { grid-column:1/-1; min-height:auto!important; }.team-table td:first-child { display:flex; align-items:center; color:var(--ink); font-weight:700; }
.team-kpi-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.team-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px}.activity-panel,.playbook-panel{align-self:start}.permission-badge{border:1px solid #b9d9da;background:var(--teal-soft);color:#087273;border-radius:999px;padding:6px 10px;font-size:.75rem;font-weight:800}.office-share-list,.team-member-list,.activity-list{display:grid}.office-share-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:15px 0;border-top:1px solid var(--line)}.office-share-item:first-child,.team-member:first-child,.activity-item:first-child{border-top:0}.office-share-main{display:flex;gap:12px;align-items:center;min-width:0}.portfolio-token{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:.75rem;font-weight:850;flex:0 0 auto}.office-share-main strong,.team-member strong{display:block;color:var(--ink);margin-bottom:4px}.office-share-main small,.team-member small{color:var(--muted);line-height:1.45}.office-share-side{text-align:right}.office-share-side strong{display:block;color:var(--teal);font-size:.8rem;margin-bottom:4px}.office-share-side small{color:var(--muted)}.team-member{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px 0;border-top:1px solid var(--line)}.team-load{width:42px;text-align:right}.team-load strong{display:block;color:var(--navy)}.team-load small{color:var(--muted);font-size:.7rem}.online-ring{position:relative}.online-ring::after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:#2caf78;border:2px solid #fff;right:-2px;bottom:-1px}.activity-item{display:grid;grid-template-columns:9px minmax(0,1fr);gap:11px;padding:14px 0;border-top:1px solid var(--line)}.activity-dot{width:9px;height:9px;border-radius:50%;background:var(--teal);margin-top:5px}.activity-item p{margin:0;color:var(--slate);line-height:1.5;font-size:.86rem}.activity-item time{display:block;color:var(--muted);font-size:.74rem;margin-top:4px}.checklist{display:grid;gap:2px}.checklist label{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid var(--line);color:var(--slate)}.checklist label:first-child{border-top:0}.checklist input{width:18px;height:18px;accent-color:var(--teal)}
dialog { border:0; padding:0; border-radius:20px; box-shadow:0 26px 80px rgba(13,44,69,.3); width:min(560px,calc(100vw - 28px)); color:var(--ink); }
dialog::backdrop { background:rgba(8,28,43,.54); backdrop-filter:blur(3px); }
dialog form { padding:24px; }.dialog-head { display:flex; justify-content:space-between; gap:20px; align-items:start; }.dialog-head h2 { font-size:1.55rem; }.close-button { border:0; width:36px; height:36px; border-radius:50%; background:#f1f4f5; color:var(--slate); font-size:1.5rem; }.dialog-tabs { display:flex; gap:6px; margin:22px 0; background:#f2f5f6; border-radius:12px; padding:4px; }.dialog-tabs button { flex:1; }.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.field { display:grid; gap:7px; }.field.full { grid-column:1/-1; }.field label { font-size:.82rem; font-weight:750; color:var(--slate); }.field input,.field select,.field textarea { border:1px solid var(--line); border-radius:11px; padding:12px; outline:0; width:100%; }.field input:focus,.field select:focus,.field textarea:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(17,134,135,.1); }.field textarea { resize:vertical; min-height:90px; }.dialog-actions { justify-content:flex-end; margin-top:24px; }
.dialog-description{color:var(--slate);line-height:1.55;margin:14px 0 20px}

/* Authentication and system administration */
.auth-gate{position:fixed;inset:0;z-index:1000;background:#fff;display:grid;grid-template-columns:minmax(360px,.92fr) minmax(460px,1.08fr);min-height:100dvh}
.auth-gate.is-hidden{display:none}.auth-brand-panel{background:linear-gradient(145deg,#09273d 0%,#0d3a52 58%,#0b666b 130%);color:#fff;padding:42px clamp(34px,5vw,76px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-brand-panel::after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.09);border-radius:50%;right:-260px;bottom:-230px;box-shadow:0 0 0 75px rgba(255,255,255,.025),0 0 0 150px rgba(255,255,255,.018)}
.auth-brand{display:inline-flex;align-items:center;gap:13px;color:#fff;text-decoration:none;font-size:1.3rem;font-weight:850;position:relative;z-index:1}.auth-brand img{width:44px;height:44px}.auth-promise{max-width:570px;position:relative;z-index:1}.auth-promise .eyebrow{color:#6ee0d5}.auth-promise h1{color:#fff;font-size:clamp(2.25rem,4.6vw,4.4rem);line-height:1.02;margin:15px 0 24px}.auth-promise>p:not(.eyebrow){font-size:1.08rem;line-height:1.7;color:#c8d9e2;max-width:520px}.auth-promise ul{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:15px}.auth-promise li{display:flex;align-items:center;gap:11px;color:#e6f0f4;font-weight:650}.auth-promise li::before{content:"✓";width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:rgba(92,221,202,.16);color:#79e5d5;font-weight:900}.auth-brand-panel>small{color:#9eb8c6;position:relative;z-index:1}
.auth-form-panel{display:grid;place-items:center;padding:40px;background:linear-gradient(135deg,#f7fafb,#fff)}.auth-card{width:min(460px,100%)}.auth-card h2{font-size:2rem;letter-spacing:-.025em;margin:0 0 10px}.auth-subtitle{color:var(--slate);line-height:1.55;margin-bottom:24px}.auth-loading{min-height:320px;display:grid;place-items:center;align-content:center;gap:15px;color:var(--slate)}.auth-loading span{width:38px;height:38px;border:3px solid #dce7ea;border-top-color:var(--teal);border-radius:50%;animation:auth-spin .8s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#eef3f4;border-radius:12px;padding:4px;margin-bottom:18px}.auth-tabs button{border:0;background:transparent;color:var(--slate);padding:11px;border-radius:9px;font-weight:800}.auth-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 2px 9px rgba(13,44,69,.08)}.google-button{width:100%;height:48px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-weight:750;display:flex;justify-content:center;align-items:center;gap:11px}.google-button:hover{border-color:#aebfc9;background:#fbfcfc}.google-button span{font-size:1.15rem;color:#4285f4;font-weight:900}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.78rem;margin:20px 0}.auth-divider::before,.auth-divider::after{content:"";height:1px;background:var(--line);flex:1}.auth-card form{display:grid;gap:9px}.auth-card form>label,.auth-name-field label{font-size:.82rem;font-weight:750;color:var(--slate)}.auth-card input[type=email],.auth-card input[type=password],.auth-name-field input{height:48px;border:1px solid var(--line);border-radius:11px;padding:0 13px;outline:0;margin-bottom:5px;width:100%}.auth-card input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(17,134,135,.1)}.auth-name-field{display:grid;gap:9px}.auth-form-meta{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;margin:3px 0 8px}.remember-label{display:flex;gap:7px;align-items:center;color:var(--slate)}.remember-label input{accent-color:var(--teal)}.auth-form-meta button{border:0;background:transparent;color:var(--teal);font-weight:750;padding:0}.auth-submit{width:100%;height:49px}.auth-error{background:#fdeeee;color:#a23838;border:1px solid #f3caca;border-radius:10px;padding:11px 12px;font-size:.82rem;line-height:1.45;margin:4px 0 0}.auth-legal{color:var(--muted);font-size:.72rem;line-height:1.5;text-align:center;margin:17px 20px 0}
.admin-dialog{width:min(940px,calc(100vw - 28px))}.admin-shell{padding:26px}.admin-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.admin-stat{border:1px solid var(--line);background:var(--canvas);border-radius:13px;padding:15px;display:grid;gap:5px}.admin-stat strong{font-size:1.55rem;color:var(--navy)}.admin-stat span{font-size:.78rem;color:var(--muted)}.admin-table-wrap{border:1px solid var(--line);border-radius:14px;overflow:auto;max-height:54vh}.admin-user{display:flex;align-items:center;gap:10px;min-width:220px}.admin-user strong{display:block}.admin-user small{display:block;color:var(--muted);margin-top:3px}.role-select{border:1px solid var(--line);border-radius:9px;padding:8px 10px;background:#fff;color:var(--ink)}.role-badge{display:inline-flex;border-radius:999px;padding:7px 10px;background:var(--orange-soft);color:#85530c;font-size:.75rem;font-weight:850;white-space:nowrap}.admin-note{font-size:.76rem;color:var(--muted);margin:14px 2px 0}
@media(max-width:840px){.auth-gate{grid-template-columns:1fr;overflow:auto}.auth-brand-panel{min-height:260px;padding:28px}.auth-promise h1{font-size:2.25rem}.auth-promise>p:not(.eyebrow),.auth-promise ul,.auth-brand-panel>small{display:none}.auth-form-panel{padding:30px 22px;align-items:start}.admin-summary{grid-template-columns:1fr 1fr}.admin-summary .admin-stat:last-child{grid-column:1/-1}}
@media(max-width:560px){.auth-brand-panel{min-height:220px}.auth-promise h1{font-size:1.9rem}.auth-card h2{font-size:1.7rem}.admin-summary{grid-template-columns:1fr}.admin-summary .admin-stat:last-child{grid-column:auto}.admin-shell{padding:20px}.admin-entry{font-size:0;width:42px;padding:0}.admin-entry::after{content:"A";font-size:.85rem}.top-actions{gap:6px}.account-logout{display:none}}
.share-dialog-content{padding:24px}.share-preview{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px;align-items:center;background:var(--canvas);border:1px solid var(--line);border-radius:15px;padding:14px;margin:20px 0}.share-preview .property-visual{min-height:92px}.share-preview h3{margin-bottom:7px}.share-preview p{margin:0;color:var(--slate);line-height:1.45}.share-link-label{display:block;font-size:.82rem;font-weight:750;color:var(--slate);margin-bottom:7px}.share-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.share-link-row input{min-width:0;border:1px solid var(--line);border-radius:11px;padding:12px;color:var(--slate);background:#f8fafb}.share-channel-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.share-channel{text-decoration:none;border-radius:14px;padding:15px;color:#fff;display:grid;gap:4px}.share-channel strong{font-size:1rem}.share-channel span{font-size:.78rem;opacity:.88}.share-channel.whatsapp{background:#168c5a}.share-channel.email{background:var(--navy-2)}.share-note{font-size:.78rem;color:var(--muted);line-height:1.5;margin:16px 0 0}
.office-share-property{margin:20px 0;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--canvas)}.office-share-property strong{display:block;color:var(--navy);margin-bottom:5px}.office-share-property span{color:var(--slate);font-size:.86rem}.member-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 18px}.member-option{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff;cursor:pointer}.member-option:has(input:checked){border-color:var(--teal);background:var(--teal-soft)}.member-option input{accent-color:var(--teal)}.member-option .avatar{width:30px;height:30px;border-radius:9px}.member-option span:last-child{font-weight:700;color:var(--ink);font-size:.84rem}.office-share-fields{margin-top:4px}.notify-check{display:flex;align-items:center;gap:9px;margin-top:16px;color:var(--slate);font-size:.84rem}.notify-check input{accent-color:var(--teal)}
.customer-share{min-height:100vh;background:#f4f6f7}.share-header{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1120px)/2));}.share-brand{display:flex;align-items:center;gap:11px;color:var(--navy);font-weight:850;text-decoration:none;font-size:1.08rem}.share-trust{color:var(--slate);font-size:.85rem}.share-page{max-width:1120px;margin:0 auto;padding:38px 24px 70px}.share-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:26px}.share-gallery{min-height:430px;border-radius:24px;background:linear-gradient(150deg,#356e76,#0d2c45);color:#fff;display:flex;align-items:flex-end;padding:28px;position:relative;overflow:hidden}.share-gallery::before{content:"";position:absolute;inset:9% -8% auto auto;width:72%;height:58%;background:rgba(255,255,255,.08);border-radius:50px;transform:rotate(18deg)}.share-gallery::after{content:"";position:absolute;width:190px;height:140px;left:9%;top:16%;border:3px solid rgba(255,255,255,.14);border-radius:20px}.share-gallery div{position:relative;z-index:1}.share-gallery strong{display:block;font-size:3rem}.share-gallery span{font-size:1rem;color:#d6e8ec}.share-summary{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;display:flex;flex-direction:column}.share-summary .eyebrow{margin-bottom:12px}.share-summary h1{font-size:2rem;line-height:1.18;margin-bottom:16px}.share-price{font-size:1.9rem;font-weight:850;color:var(--teal);margin-bottom:18px}.share-facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:8px 0 24px}.share-facts div{background:#fff;padding:14px}.share-facts span{display:block;font-size:.75rem;color:var(--muted);margin-bottom:4px}.share-facts strong{font-size:.92rem;color:var(--ink)}.share-summary .primary-button{text-decoration:none;display:grid;place-items:center;margin-top:auto}.share-description{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;margin-top:22px}.share-description h2{margin-bottom:12px}.share-description p{color:var(--slate);line-height:1.75;margin-bottom:0}.share-contact-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.share-contact-row a{text-decoration:none;min-height:48px;display:grid;place-items:center;border-radius:12px;font-weight:800}.share-contact-row .whatsapp{background:#168c5a;color:#fff}.share-contact-row .email{background:#eef3f5;color:var(--navy)}
.toast-region { position:fixed; right:24px; bottom:24px; z-index:50; display:grid; gap:10px; }.toast { background:var(--navy); color:#fff; border-radius:12px; padding:13px 16px; box-shadow:var(--shadow); animation:toast-in .25s ease; max-width:360px; }.toast strong { color:#8fe1d4; } @keyframes toast-in { from{transform:translateY(10px);opacity:0} }
@media(max-width:1100px){.metric-row,.team-kpi-row{grid-template-columns:repeat(2,1fr)}.property-grid{grid-template-columns:repeat(2,1fr)}.report-grid{grid-template-columns:1fr 1fr}.dashboard-grid,.team-layout{grid-template-columns:1fr}.pipeline-panel{grid-column:auto}.match-row{grid-template-columns:56px 1fr 28px 1fr}.match-row .row-action{grid-column:2/5;justify-self:start}}
@media(max-width:800px){.app-shell{display:block}.sidebar{position:fixed;left:-270px;width:248px;transition:.2s ease}.sidebar.open{left:0;box-shadow:20px 0 50px rgba(5,24,38,.3)}.mobile-brand{display:grid}.topbar{padding:0 16px;height:68px}.search-wrap{width:auto;flex:1}.search-wrap kbd,.icon-button{display:none}.content{padding:24px 16px 90px}.page-heading{align-items:start}.heading-actions .secondary-button{display:none}.metric-row,.team-kpi-row{grid-template-columns:1fr 1fr}.calendar-layout{grid-template-columns:1fr}.mini-calendar{display:none}.property-grid{grid-template-columns:1fr}.report-grid{grid-template-columns:1fr}.team-table{grid-column:auto}.match-row{grid-template-columns:48px 1fr}.match-arrow{display:none}.match-property{grid-column:2}.match-row .row-action{grid-column:2}.featured-match{grid-template-columns:1fr}.property-visual{min-height:130px}.pipeline{grid-template-columns:1fr 1fr}.top-actions .primary-button{font-size:0;width:42px;padding:0}.top-actions .primary-button::after{content:"+";font-size:1.3rem}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.share-hero{grid-template-columns:1fr}.share-gallery{min-height:300px}.share-summary h1{font-size:1.65rem}}
@media(max-width:520px){.page-heading{display:grid}.heading-actions{width:100%}.heading-actions .primary-button{flex:1}.metric-row,.team-kpi-row{grid-template-columns:1fr}.pipeline{grid-template-columns:1fr}.task-item{grid-template-columns:48px 1fr auto}.surface{padding:18px}.filter-bar{align-items:start;flex-direction:column}.segmented{width:100%;overflow:auto}.segmented button{flex:1}.table-wrap{margin-inline:-16px;border-radius:0}.property-card{border-radius:14px}.share-channel-grid,.share-contact-row,.share-link-row,.member-picker{grid-template-columns:1fr}.share-preview{grid-template-columns:76px 1fr}.share-header{padding:0 16px}.share-page{padding:22px 14px 50px}.share-gallery{min-height:240px}.share-summary{padding:22px}.share-gallery strong{font-size:2.35rem}.office-share-item{grid-template-columns:1fr}.office-share-side{text-align:left;padding-left:56px}}
