:root {
  --ink:#203d35;
  --muted:#718078;
  --green:#215b46;
  --dark:#173e31;
  --lime:#dbe9b8;
  --line:#e3e9e3;
  --bg:#f5f7f4;
  --red:#a43f35;
  --amber:#9a661b;
  font-family:Vazirmatn,Tahoma,sans-serif;
  color:var(--ink);
  font-synthesis:none
}
* {
  box-sizing:border-box
}
body {
  margin:0;
  background:var(--bg);
  font-size:14px;
  line-height:1.8
}
button,input,select,textarea {
  font:inherit
}
button,a {
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation
}
button {
  cursor:pointer
}
button:disabled {
  opacity:.5;
  cursor:wait
}
a {
  color:inherit;
  text-decoration:none
}
button:focus-visible,a:focus-visible {
  outline:3px solid #91ac58;
  outline-offset:3px
}
input:focus,select:focus,textarea:focus {
  outline:2px solid #8da96d;
  outline-offset:1px
}
[hidden] {
  display:none!important
}
svg {
  width:20px;
  height:20px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
  flex-shrink:0
}
.sprite {
  position:absolute;
  width:0;
  height:0;
  overflow:hidden
}
.skip {
  position:fixed;
  inset:0 auto auto 0;
  transform:translateY(-150%);
  background:white;
  z-index:100;
  padding:15px
}
.skip:focus {
  transform:none
}
.shell {
  display:grid;
  grid-template-columns:232px minmax(0,1fr);
  min-height:100dvh
}
.rail {
  position:sticky;
  top:0;
  height:100dvh;
  background:#fff;
  border-left:1px solid var(--line);
  padding:32px 20px 20px;
  display:flex;
  flex-direction:column
}
.brand {
  display:flex;
  gap:12px;
  align-items:center;
  padding:0 6px 30px
}
.brand>svg {
  width:37px;
  height:37px;
  fill:var(--lime);
  stroke:var(--green)
}
.brand b {
  font-size:23px;
  letter-spacing:3px;
  line-height:1.2;
  display:block
}
.brand small {
  font-size:10px;
  color:var(--muted);
  display:block;
  margin-top:7px
}
.nav-caption {
  font-size:10px;
  color:#939e97;
  margin:20px 12px 10px
}
.navigation {
  display:grid;
  gap:7px
}
.navigation>a,.navigation>button,.backup-nav {
  width:100%;
  display:flex;
  align-items:center;
  gap:12px;
  border:0;
  background:none;
  padding:12px;
  border-radius:10px;
  color:#596d62;
  text-align:right;
  font-size:13px
}
.navigation>[aria-current=page] {
  background:#eaf2e5;
  color:#244c39;
  font-weight:700
}
.navigation>*:hover,.backup-nav:hover {
  background:#f0f4ed
}
.nav-count {
  margin-right:auto;
  font-size:11px;
  color:#75906b;
  background:#fff9;
  padding:0 6px;
  border-radius:5px
}
.rail-bottom {
  margin-top:auto;
  padding-top:35px
}
.guide-link {
  font-size:11px;
  display:block;
  padding:9px 14px;
  color:var(--muted)
}
.local-note {
  margin:20px 5px 0;
  padding-top:21px;
  border-top:1px solid var(--line);
  display:flex;
  align-items:center;
  gap:10px
}
.local-note i,.footer i {
  background:#729c53;
  width:7px;
  height:7px;
  display:inline-block;
  border-radius:50%
}
.local-note strong {
  font-size:11px;
  font-weight:500;
  display:block
}
.local-note small {
  font-size:9px;
  color:var(--muted)
}
.main {
  padding:28px 38px 0;
  min-width:0;
  max-width:1640px;
  width:100%;
  margin:0 auto;
  align-self:start
}
.header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:29px
}
.breadcrumb {
  font-size:10px;
  color:#8c9890;
  margin:0 0 5px
}
.breadcrumb span {
  color:var(--muted)
}
h1 {
  font-size:25px;
  font-weight:650;
  letter-spacing:-.8px;
  line-height:1.6;
  margin:0
}
h2 {
  font-size:17px;
  margin:0
}
h3 {
  font-size:15px;
  margin:0
}
.header-actions {
  display:flex;
  align-items:center;
  gap:19px
}
.today {
  color:var(--muted);
  font-size:11px;
  white-space:nowrap
}
.button {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  padding:10px 15px;
  border:1px solid #dbe3d9;
  border-radius:9px;
  background:#fff;
  font-weight:500;
  font-size:12px;
  line-height:1.8;
  cursor:pointer
}
.button:hover {
  background:#eef3e9
}
.button.primary {
  background:var(--green);
  border-color:var(--green);
  color:white
}
.button.primary:hover {
  background:#174936
}
.button.light {
  background:var(--lime);
  color:var(--dark);
  border-color:var(--lime)
}
.button.small {
  padding:6px 10px;
  font-size:11px
}
.button.danger {
  color:var(--red)
}
.text-button {
  border:0;
  background:none;
  color:var(--green);
  font-size:11px;
  padding:5px;
  cursor:pointer
}
.icon-button {
  border:1px solid var(--line);
  background:#fff;
  color:var(--green);
  font-size:21px;
  line-height:1;
  width:34px;
  height:34px;
  border-radius:9px;
  flex-shrink:0
}
.welcome {
  background:var(--dark);
  border-radius:16px;
  padding:27px 31px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  color:white;
  position:relative;
  overflow:hidden;
  min-height:207px
}
.eyebrow {
  font-size:10px;
  letter-spacing:.2px;
  color:#7c8d75
}
.welcome .eyebrow {
  color:#b9c9b6
}
.welcome h2 {
  font-size:27px;
  letter-spacing:-.7px;
  margin:5px 0 3px
}
.welcome p {
  font-size:12px;
  color:#c3d2c8;
  margin:0 0 19px
}
.welcome .button {
  font-size:11px
}
.welcome-mark {
  width:220px;
  display:grid;
  justify-items:center;
  gap:15px;
  opacity:.9
}
.welcome-mark>svg {
  width:90px;
  height:90px;
  color:var(--lime);
  stroke-width:.7
}
.welcome-mark>span {
  font-size:9px;
  letter-spacing:4px;
  color:#a3b9a8;
  direction:ltr
}
.stats {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:15px;
  margin:20px 0 25px
}
.stat {
  background:#fff;
  border:1px solid var(--line);
  border-radius:13px;
  padding:17px 20px;
  text-align:right;
  color:var(--ink)
}
.stat-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  color:#6e7e72;
  font-size:11px
}
.stat-top svg {
  padding:7px;
  box-sizing:content-box;
  background:#f0f4e9;
  border-radius:9px;
  color:#617f49;
  width:18px;
  height:18px
}
.stat strong {
  font-size:28px;
  line-height:1.5;
  font-weight:650
}
.stat small {
  display:block;
  font-size:10px;
  color:#94a08f;
  margin-top:4px
}
.stat:hover {
  border-color:#b8c9a6
}
.surface {
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  min-width:0;
  overflow:hidden
}
.section-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:22px 23px 17px
}
.section-head h2 {
  font-size:15px;
  font-weight:650
}
.section-head p {
  color:var(--muted);
  font-size:10px;
  margin:3px 0 0
}
.overview-grid {
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);
  gap:22px
}
.pipeline-surface {
  margin-top:22px
}
.pipeline {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  padding:0 22px 22px;
  gap:10px
}
.pipeline button {
  background:#f7f9f5;
  border:1px solid #e7ece3;
  border-radius:9px;
  padding:14px 12px;
  text-align:right;
  color:var(--ink)
}
.pipeline b {
  font-size:23px;
  display:block;
  font-weight:600
}
.pipeline span {
  color:var(--muted);
  font-size:10px
}
.pipeline .bar {
  height:3px;
  border-radius:3px;
  background:#dbe7ce;
  margin-top:10px
}
.pipeline .bar i {
  display:block;
  height:3px;
  background:#73985c;
  border-radius:3px
}
.section-link {
  display:block;
  width:100%;
  padding:14px;
  border:0;
  border-top:1px solid var(--line);
  background:#fff;
  color:var(--green);
  font-size:11px
}
.mini-property {
  display:flex;
  align-items:center;
  gap:13px;
  padding:15px 23px;
  border-top:1px solid #edf0e9
}
.property-thumb {
  width:54px;
  height:54px;
  object-fit:cover;
  background:#eef2e8;
  border-radius:9px;
  color:#849675;
  display:grid;
  place-items:center;
  flex-shrink:0
}
.property-thumb svg {
  width:24px;
  height:24px
}
.mini-property .name {
  font-size:12px;
  font-weight:600;
  overflow-wrap:anywhere
}
.mini-property small {
  display:block;
  font-size:10px;
  color:var(--muted);
  margin-top:3px
}
.mini-property>.badge {
  margin-right:auto;
  flex-shrink:0
}
.mini-property:hover {
  background:#f9fbf6
}
.badge {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  border-radius:5px;
  font-size:10px;
  padding:3px 8px;
  background:#f0f3ec;
  color:#667d56;
  white-space:nowrap
}
.badge.active,.badge.done,.badge.closed {
  background:#eaf3e8;
  color:#476e36
}
.badge.draft,.badge.new {
  background:#f1f2ed;
  color:#758169
}
.badge.completed,.badge.visiting {
  background:#edf2f8;
  color:#50719a
}
.badge.archived,.badge.cancelled {
  background:#f2f2f2;
  color:#888
}
.badge.overdue,.badge.high {
  background:#faeeeb;
  color:var(--red)
}
.badge.today,.badge.contacted {
  background:#fbf3e4;
  color:#936a2c
}
.badge.incomplete {
  background:#faf2e7;
  color:var(--amber)
}
.empty {
  padding:32px 25px;
  text-align:center;
  color:var(--muted);
  font-size:12px;
  line-height:2
}
.empty svg {
  width:34px;
  height:34px;
  color:#a4b296;
  display:block;
  margin:0 auto 12px
}
.empty strong {
  display:block;
  color:#607356;
  font-weight:500;
  margin-bottom:5px
}
.empty .button {
  margin-top:13px
}
.mini-task {
  padding:13px 22px;
  border-top:1px solid #edf0e9;
  display:flex;
  align-items:flex-start;
  gap:10px
}
.task-check {
  border:1px solid #cbd6c4;
  background:#fff;
  width:20px;
  height:20px;
  border-radius:6px;
  flex-shrink:0;
  font-size:11px;
  color:var(--green);
  padding:0;
  margin-top:4px
}
.mini-task strong {
  font-size:11px;
  font-weight:500;
  overflow-wrap:anywhere
}
.mini-task small {
  font-size:10px;
  display:block;
  color:var(--muted);
  margin-top:5px
}
.toolbar {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding:18px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:12px
}
.search-input {
  display:flex;
  align-items:center;
  gap:10px;
  background:#f8faf6;
  border:1px solid var(--line);
  border-radius:8px;
  padding:0 13px;
  flex:1;
  min-width:180px
}
.search-input svg {
  color:#8a9b83;
  width:17px;
  height:17px
}
.search-input input {
  border:0;
  background:none;
  width:100%;
  min-width:0;
  padding:9px 0;
  font-size:12px;
  color:var(--ink)
}
.search-input input:focus {
  outline:none
}
.search-input:focus-within {
  outline:2px solid #8da96d
}
select,input,textarea {
  border:1px solid #dce3d7;
  border-radius:8px;
  padding:10px;
  color:var(--ink);
  background:#fff;
  max-width:100%;
  min-width:0
}
select {
  font-size:12px
}
.segmented {
  display:flex;
  border:1px solid var(--line);
  padding:3px;
  border-radius:8px;
  align-items:center
}
.segmented button {
  border:0;
  background:none;
  color:var(--muted);
  padding:6px 11px;
  border-radius:5px;
  font-size:11px
}
.segmented [aria-pressed=true] {
  background:#edf3e6;
  color:var(--green)
}
.results-heading {
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  padding:18px 2px 12px;
  font-size:11px;
  color:var(--muted)
}
.results-heading p {
  margin:0
}
.results-heading>span {
  font-size:10px
}
.table-wrap {
  overflow:auto;
  border:1px solid var(--line);
  border-radius:12px;
  background:white
}
table {
  width:100%;
  border-collapse:collapse;
  text-align:right;
  font-size:12px;
  white-space:nowrap
}
th {
  font-weight:500;
  font-size:10px;
  color:#84917e;
  background:#fafbf8;
  padding:14px 17px
}
td {
  padding:15px 17px;
  border-top:1px solid #edf0e9
}
td strong {
  font-weight:550
}
td small {
  display:block;
  color:var(--muted);
  font-size:10px
}
.table-name {
  display:flex;
  align-items:center;
  gap:12px
}
.table-name>div {
  max-width:210px;
  white-space:normal
}
.table-name .property-thumb {
  width:45px;
  height:45px
}
.property-grid,.client-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:17px
}
.property-card {
  background:#fff;
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden
}
.property-cover {
  height:155px;
  background:#e9eee2;
  display:grid;
  place-items:center;
  position:relative
}
.property-cover>img {
  width:100%;
  height:100%;
  object-fit:cover
}
.property-cover>svg {
  width:48px;
  height:48px;
  stroke-width:1;
  color:#a2b28b
}
.property-cover>.badge {
  position:absolute;
  top:12px;
  right:12px;
  box-shadow:0 2px 10px #122a1910
}
.property-card-body {
  padding:16px
}
.property-card-body h3 {
  font-size:13px;
  overflow-wrap:anywhere
}
.property-card-body p {
  font-size:10px;
  color:var(--muted);
  margin:6px 0
}
.property-card-body .price {
  font-size:12px;
  color:var(--green);
  font-weight:600;
  margin:13px 0
}
.property-card-body .button {
  width:100%
}
.client-card {
  background:#fff;
  border:1px solid var(--line);
  border-radius:12px;
  padding:20px
}
.client-top {
  display:flex;
  align-items:center;
  gap:10px
}
.avatar {
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  background:#edf2e5;
  color:#6f8958;
  border-radius:12px;
  font-size:17px
}
.client-top h3 {
  font-size:13px;
  overflow-wrap:anywhere
}
.client-top small {
  color:var(--muted);
  font-size:10px;
  direction:ltr;
  display:block;
  text-align:right
}
.client-top>.badge {
  margin-right:auto
}
.client-specs {
  font-size:11px;
  color:var(--muted);
  margin:16px 0 6px;
  min-height:40px
}
.client-budget {
  font-size:12px;
  color:var(--ink);
  margin:0 0 16px
}
.client-card>.button {
  width:100%
}
.pagination {
  display:flex;
  justify-content:center;
  gap:15px;
  align-items:center;
  font-size:12px;
  margin:20px 0
}
.task-list {
  display:grid;
  gap:10px
}
.task-row {
  border:1px solid var(--line);
  background:#fff;
  border-radius:12px;
  padding:18px 20px;
  display:flex;
  gap:14px;
  align-items:flex-start
}
.task-row .task-content {
  flex:1;
  min-width:0
}
.task-row h3 {
  font-size:13px;
  overflow-wrap:anywhere
}
.task-row p {
  font-size:11px;
  color:var(--muted);
  margin:5px 0 0;
  white-space:pre-wrap;
  overflow-wrap:anywhere
}
.task-row .task-meta {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  font-size:10px;
  margin-top:10px;
  align-items:center
}
.task-row .actions {
  gap:7px;
  flex-shrink:0
}
.task-row.is-overdue {
  border-right:3px solid #bd8072
}
.footnote {
  color:var(--muted);
  font-size:11px;
  margin:20px 2px
}
.backup-intro {
  max-width:660px;
  margin:10px 0 25px
}
.backup-intro h2 {
  font-size:24px;
  margin:7px 0
}
.backup-intro p {
  font-size:13px;
  color:var(--muted);
  line-height:2.1
}
.backup-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px
}
.backup-card {
  padding:28px;
  display:flex;
  align-items:flex-start;
  flex-direction:column;
  gap:11px
}
.backup-card h3 {
  margin-top:7px
}
.feature-icon {
  width:30px;
  height:30px;
  color:#7e9b60
}
.backup-card p {
  font-size:12px;
  color:var(--muted);
  margin:0 0 10px
}
.backup-card small {
  font-size:10px;
  color:var(--muted);
  margin-top:8px
}
.transfer-note {
  padding:25px;
  margin-top:20px
}
.transfer-note p {
  font-size:12px;
  color:var(--muted)
}
.actions {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center
}
.footer {
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-top:1px solid var(--line);
  margin-top:32px;
  padding:18px 0;
  font-size:10px;
  color:#929c8a
}
.footer i {
  width:5px;
  height:5px;
  margin-left:6px
}
.loading {
  font-size:12px;
  color:var(--muted)
}
.error-banner {
  background:#fbede8;
  color:#8c4030;
  border:1px solid #e6bcae;
  border-radius:9px;
  padding:15px;
  margin-bottom:20px;
  display:flex;
  justify-content:space-between;
  gap:15px
}
.error-banner button {
  background:#fff;
  border:1px solid #dfb4a9;
  border-radius:6px;
  color:inherit
}
.toast {
  position:fixed;
  bottom:22px;
  left:50%;
  transform:translateX(-50%);
  max-width:calc(100% - 32px);
  background:var(--dark);
  color:#fff;
  padding:14px 23px;
  z-index:100;
  border-radius:11px;
  font-size:12px;
  box-shadow:0 5px 30px #12332230
}
dialog {
  border:1px solid var(--line);
  border-radius:18px;
  color:var(--ink);
  background:#fff;
  padding:0;
  max-width:calc(100vw - 26px);
  max-height:90dvh;
  box-shadow:0 25px 90px #14332725
}
dialog::backdrop {
  background:#17362c66;
  backdrop-filter:blur(3px)
}
.editor {
  width:640px
}
.dialog-head {
  padding:22px 26px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid var(--line);
  gap:15px
}
.dialog-head h2 {
  font-size:20px;
  margin-top:3px
}
.dialog-body {
  padding:22px 26px
}
.dialog-footer {
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-top:1px solid var(--line);
  padding:17px 26px;
  background:#fafcf7;
  border-radius:0 0 18px 18px;
  gap:15px
}
.dialog-footer span {
  font-size:10px;
  color:var(--muted)
}
fieldset {
  padding:0;
  margin:0 0 22px;
  border:0
}
legend {
  font-size:13px;
  font-weight:600;
  margin-bottom:14px
}
.form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:15px
}
.form-grid label {
  font-size:11px;
  color:#677b61;
  display:block
}
.form-grid input,.form-grid textarea,.form-grid select {
  display:block;
  width:100%;
  font-size:13px;
  margin-top:5px
}
.span-two {
  grid-column:1/-1
}
.required {
  color:#a45f45
}
.field-hint {
  font-size:10px;
  color:var(--muted);
  margin:9px 0 0
}
.form-error {
  color:var(--red);
  font-size:12px;
  white-space:pre-wrap
}
.form-error:empty {
  display:none
}
.detail-dialog {
  width:850px
}
.detail-summary {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  padding-bottom:15px
}
.detail-facts {
  display:grid;
  grid-template-columns:100px 1fr;
  gap:7px;
  font-size:12px;
  margin:0 0 15px
}
.detail-facts dt {
  color:var(--muted)
}
.detail-facts dd {
  margin:0;
  white-space:pre-wrap;
  overflow-wrap:anywhere
}
.detail-actions {
  padding:15px 0 22px;
  border-bottom:1px solid var(--line);
  margin-bottom:22px
}
.match-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:12px
}
.match-note {
  font-size:11px;
  color:var(--muted);
  line-height:2
}
.match-card {
  padding:17px 0;
  border-top:1px solid var(--line);
  display:flex;
  gap:14px;
  align-items:flex-start
}
.match-card .match-body {
  min-width:0;
  flex:1
}
.match-card h3 {
  font-size:13px
}
.match-card p {
  font-size:11px;
  color:var(--muted);
  margin:7px 0
}
.match-card .actions {
  margin-top:10px
}
.confirm-dialog {
  width:420px;
  padding:26px
}
.confirm-dialog h2 {
  font-size:18px
}
.confirm-dialog p {
  font-size:13px;
  color:var(--muted);
  line-height:2
}
.confirm-dialog .actions {
  margin-top:23px
}

@media(min-width:1600px) {
  .main {
  padding:35px 48px 0
}
.welcome {
  min-height:225px
}
.welcome h2 {
  font-size:32px
}

}

@media(max-width:1200px) {
  .shell {
  grid-template-columns:205px minmax(0,1fr)
}
.rail {
  padding:27px 14px 16px
}
.main {
  padding:25px 24px 0
}
.today {
  display:none
}
.stats {
  gap:10px
}
.stat {
  padding:15px
}
.property-grid,.client-grid {
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.overview-grid {
  gap:16px;
  grid-template-columns:minmax(0,1.2fr) minmax(250px,1fr)
}
.welcome-mark {
  width:140px
}
.section-head {
  padding:20px 17px 15px
}
.section-head .text-button {
  font-size:10px
}
.client-top>.badge {
  font-size:9px
}
.pipeline {
  padding:0 17px 20px
}

}

@media(max-width:960px) {
  .overview-grid {
  grid-template-columns:1fr
}
.stats {
  grid-template-columns:repeat(2,1fr)
}
.header h1 {
  font-size:22px
}
.welcome h2 {
  font-size:23px
}
.welcome-mark {
  display:none
}
.task-row {
  flex-wrap:wrap
}
.task-row>.actions {
  width:100%;
  padding-right:34px
}
.backup-grid {
  grid-template-columns:1fr
}
.pipeline {
  gap:5px
}
.pipeline button {
  padding:12px 8px
}

}

@media(max-width:700px) {
  .shell {
  display:block
}
.rail {
  height:auto;
  position:relative;
  padding:18px 16px 0;
  border-left:0;
  border-bottom:1px solid var(--line)
}
.brand {
  padding:0 4px 16px
}
.brand>svg {
  width:32px;
  height:32px
}
.brand b {
  font-size:20px
}
.brand small {
  font-size:9px
}
.nav-caption,.rail-bottom .local-note,.guide-link {
  display:none
}
.navigation {
  display:flex;
  gap:5px;
  overflow:auto;
  padding-bottom:10px
}
.navigation>a,.navigation>button {
  width:auto;
  white-space:nowrap;
  font-size:11px;
  padding:9px 11px;
  gap:7px
}
.navigation svg {
  width:16px;
  height:16px
}
.nav-count {
  display:none
}
.rail-bottom {
  position:absolute;
  left:14px;
  top:22px;
  margin:0;
  padding:0
}
.backup-nav {
  font-size:10px;
  padding:7px
}
.backup-nav svg {
  width:17px;
  height:17px
}
.main {
  padding:22px 16px 0
}
.header {
  gap:12px;
  margin-bottom:20px
}
.header h1 {
  font-size:20px
}
.header .button {
  font-size:10px;
  padding:9px
}
.header .button svg {
  width:16px
}
.welcome {
  padding:24px;
  min-height:190px
}
.welcome h2 {
  font-size:23px
}
.welcome p {
  font-size:11px
}
.stats {
  gap:10px;
  margin:14px 0 18px
}
.stat-top {
  font-size:10px
}
.stat {
  padding:13px 15px
}
.stat strong {
  font-size:27px
}
.pipeline {
  grid-template-columns:repeat(3,1fr);
  gap:8px
}
.property-grid,.client-grid {
  grid-template-columns:1fr
}
.toolbar {
  padding:12px;
  gap:8px
}
.search-input {
  flex-basis:100%;
  min-height:40px
}
.toolbar select {
  flex:1;
  font-size:11px
}
.toolbar>.button {
  flex:1
}
.results-heading>span {
  font-size:9px;
  text-align:left
}
.footer {
  font-size:9px
}
.footer>.text-button {
  font-size:10px
}
.dialog-head,.dialog-body {
  padding:20px
}
.dialog-footer {
  padding:15px 20px
}
.form-grid {
  gap:12px
}
.match-card {
  gap:10px
}
.match-card .property-thumb {
  width:40px;
  height:40px
}
.task-row {
  padding:15px
}
.task-row h3 {
  font-size:12px
}
.backup-intro h2 {
  font-size:21px
}
.backup-card {
  padding:23px
}
.detail-facts {
  grid-template-columns:85px 1fr
}
.welcome .eyebrow {
  font-size:9px
}

}

.editor form {
  display:flex;
  flex-direction:column;
  max-height:90dvh
}
.editor .dialog-head,.editor .dialog-footer {
  flex-shrink:0
}
.editor .dialog-body {
  overflow:auto;
  min-height:0
}
.detail-dialog .dialog-head {
  position:sticky;
  top:0;
  background:#fff;
  z-index:1
}

@media(prefers-reduced-motion:reduce) {
  * {
  scroll-behavior:auto!important;
  transition:none!important
}

}


.guide-page {
  max-width:920px;
  margin:35px auto;
  padding:34px;
  background:white;
  border:1px solid var(--line);
  border-radius:16px;
  line-height:2.2
}
.guide-page>.eyebrow {
  display:block;
  margin-top:22px
}
.guide-page h1 {
  font-size:30px;
  margin:8px 0 20px
}
.guide-page h2 {
  margin:30px 0 10px;
  font-size:19px
}
.guide-page .lead {
  font-size:16px;
  color:var(--muted)
}
.guide-page li {
  margin:8px 0
}
.guide-page code {
  direction:ltr;
  display:inline-block;
  background:#f0f4e9;
  padding:1px 7px;
  border-radius:5px
}
.guide-note {
  background:#f4f7ec;
  border-right:3px solid #99b665;
  padding:18px
}
.guide-page a {
  color:var(--green);
  text-decoration:underline
}
@media(max-width:700px) {
  .guide-page {
  margin:12px;
  padding:23px;
  font-size:13px
}
.guide-page h1 {
  font-size:24px
}
.guide-page .lead {
  font-size:14px
}

}

