/* «Держи дело»: palette and mark from landing-preview/style.css.
   Product-only layer; semantic error/warning/status colours remain independent. */
:root {
  --bg:#f5f8f7; --bg-soft:#edf6f2; --panel:#fff; --panel-2:#f7faf8;
  --ink:#1d2b40; --muted:#67737e; --line:#dce4e3; --line-strong:#becfc9;
  --accent:#19283d; --accent-dark:#11866f; --accent-soft:rgba(38,197,163,.10);
  --brand:var(--accent); --product-mint:#26c5a3;
  --shadow:0 18px 42px rgba(25,40,61,.07); --shadow-soft:0 8px 24px rgba(25,40,61,.05);
}
body {background:#f5f8f7;font-family:"Segoe UI",Arial,sans-serif;}
.sidebar {background:#19283d;color:#e1eaf0;border-right-color:#263c55;box-shadow:none;}
.sidebar .brand {color:#fff;border-bottom-color:#35465b;}
.sidebar .brand strong {font-size:19px;letter-spacing:-.5px;}
.sidebar .brand span {color:#afc2ce;font-size:11px;}
.sidebar .main-nav a {color:#c1ced9;border-radius:9px;}
.sidebar .main-nav a:hover {background:#263a51;color:#fff;border-color:#385066;}
.sidebar .main-nav a.active {background:#2c4657;color:#b7f5e5;border-color:#3b645f;box-shadow:none;}
.sidebar .main-nav a.active::before {background:var(--product-mint);}
.sidebar .nav-separator {background:#35465b;border-color:#35465b;}
.sidebar .sync-box {background:#21344b;border-color:#354b60;box-shadow:none;}
.sidebar .sync-box strong,.sidebar .auth-profile strong {color:#e1eaf0;}
.sidebar .sync-box span,.sidebar .sync-box small,.sidebar .auth-profile span {color:#b6c7d3;}
.sidebar .product-help-link {color:#b7f5e5;border-color:#3b645f;background:#263f4c;}
.brand .brand-mark,.app-boot-brand,.auth-brand>span {
  position:relative;display:block;width:37px;height:34px;min-width:37px;flex-shrink:0;
  border:0;border-left:8px solid #19283d;border-right:8px solid #19283d;
  border-radius:6px;background:transparent;box-shadow:none;font-size:0;color:transparent;padding:0;
}
.brand .brand-mark::before,.brand .brand-mark::after,
.app-boot-brand::before,.app-boot-brand::after,.auth-brand>span::before,.auth-brand>span::after {
  content:"";position:absolute;top:0;height:7px;width:10px;background:#19283d;box-shadow:0 27px #19283d;
}
.brand .brand-mark::before,.app-boot-brand::before,.auth-brand>span::before {left:0;}
.brand .brand-mark::after,.app-boot-brand::after,.auth-brand>span::after {right:0;}
.brand-mark i,.app-boot-brand i,.auth-brand>span i {
  display:block;position:absolute;top:10px;left:4px;width:13px;height:14px;border-radius:3px;background:#26c5a3;
}
.sidebar .brand-mark {border-left-color:#fff;border-right-color:#fff;}
.sidebar .brand-mark::before,.sidebar .brand-mark::after {background:#fff;box-shadow:0 27px #fff;}
.primary-action,.line-editor button,.detail-actions button:first-child,.ai-console button {
  background:#19283d;border-color:#19283d;box-shadow:none;color:#fff;
}
.primary-action:hover,.line-editor button:hover,.detail-actions button:first-child:hover,.ai-console button:hover {
  background:#2d425e;border-color:#2d425e;
}
.secondary-action {background:#fff;border-color:var(--line);box-shadow:none;color:var(--ink);}
input:focus,select:focus,textarea:focus,.auth-form input:focus {
  border-color:#11866f;outline-color:#11866f;box-shadow:0 0 0 3px rgba(38,197,163,.13);
}
button:focus-visible,a:focus-visible {outline:2px solid #11866f;outline-offset:3px;}
input[type=checkbox],input[type=radio] {accent-color:#11866f;}
.app-boot-screen {background:#f5f8f7;color:var(--ink);}
#authRoot {background:radial-gradient(ellipse at 15% 15%,#dceee7,transparent 60%),#f5f8f7;}
.auth-card {border-color:var(--line);border-radius:18px;box-shadow:0 24px 70px rgba(25,40,61,.10);}
.auth-brand strong {color:#19283d;letter-spacing:-.4px;}
.auth-heading>span {color:#11866f;}
.auth-form input {border-radius:9px;border-color:var(--line-strong);}
.auth-submit {border-radius:9px;}
.cash-main {background:#edf6f2;border-color:#b8ddd0;}
.crm-card:hover,.compact-row:hover,.task-row:hover,.client-row:hover,
.master-row:hover,.mini-row:hover,tr:hover,.quick-actions button:hover,
.repair-tabs button:hover,.document-actions button:hover {
  background:#edf6f2;border-color:#b8ddd0;
}
.is-selected,tr.is-selected {background:rgba(38,197,163,.10)!important;outline-color:#91cdb9;}
tbody tr:focus-visible {outline-color:#11866f;}
.repair-status-chip:hover,.repair-status-chip.active {
  background:#edf6f2;border-color:#91cdb9;color:#11866f;
}
.danger-action,.primary-action.danger-action,.detail-actions button.danger-action {
  background:#fff4f5;border-color:#e9b6bd;color:#a51e2d;box-shadow:none;
}
.danger-action:hover,.primary-action.danger-action:hover,.detail-actions button.danger-action:hover {
  background:#ffe8ec;border-color:#d51f2a;color:#a51e2d;
}
.status-tone-red strong {background:rgba(213,31,42,.10);color:var(--bad);}
@media(max-width:760px) {
  .sidebar .brand strong {font-size:16px;}
}
@media print {
  body {background:white;}
}

/* Air / concept 02. A quiet canvas, floating navigation and clear hierarchy. */
:root {
  --bg:#f5f7fa;--bg-soft:#f0f6f5;--panel-2:#f8fafc;--ink:#213149;
  --muted:#6c7b8e;--line:#e5ebf0;--line-strong:#ccd9df;
  --shadow:0 12px 40px -16px rgba(31,52,80,.12);
  --shadow-soft:0 6px 20px -12px rgba(31,52,80,.13);
}
body {
  grid-template-columns:260px minmax(0,1fr);
  background:radial-gradient(ellipse at 88% 0%,#e5f4ef 0,transparent 42%),#f5f7fa;
  font-family:"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;
}
body>.sidebar {
  margin:18px 0 18px 18px;top:18px;height:calc(100dvh - 36px);padding:22px 14px;
  border:1px solid #31435a;border-radius:26px;gap:23px;
  background:linear-gradient(160deg,#24374e 0%,#19283d 55%,#1d3445 100%);
  box-shadow:0 20px 50px -26px rgba(14,32,55,.65);
}
.sidebar .brand {padding:5px 8px 22px;gap:12px;border-bottom:1px solid #ffffff12;}
.sidebar .brand strong {font-weight:650;font-size:19px;letter-spacing:-.55px;}
.sidebar .brand span {margin-top:5px;font-size:10px;letter-spacing:.02em;color:#b5c7d5;}
.sidebar .brand-mark {transform:scale(.88);transform-origin:center;}
.sidebar .main-nav {gap:8px;}
.sidebar .main-nav a {padding:13px 15px;min-height:47px;border-radius:14px;font-size:13px;color:#c2cfdd;}
.sidebar .main-nav svg {width:18px;height:18px;opacity:.85;}
.sidebar .main-nav a:hover {background:#ffffff0c;border-color:#ffffff12;transform:none;color:white;}
.sidebar .main-nav a.active {
  background:linear-gradient(110deg,#b3f4de,#d1f8eb);color:#164b43;
  border-color:#d1f8eb;box-shadow:0 6px 20px -9px #45d5b45c;font-weight:650;
}
.sidebar .main-nav a.active::before {display:none;}
.sidebar .main-nav a.active svg {opacity:1;}
.sidebar .nav-separator {background:#ffffff12;margin:10px 12px;}
.sidebar .sync-box {padding:12px 10px 0;border:0;border-top:1px solid #ffffff18;border-radius:0;background:transparent;gap:0;}
.sidebar .sync-box>span,.sidebar .sync-box>strong,.sidebar .sync-box>small {display:none;}
.sidebar .auth-profile {margin:0;gap:6px;}
.sidebar .auth-profile strong {font-size:12px;font-weight:600;}
.sidebar .auth-profile span {font-size:10px;}
.sidebar .auth-profile .icon-button {background:#ffffff0c;border-color:#ffffff15;color:#d3e0eb;border-radius:11px;}
.sidebar .auth-profile .icon-button:hover {background:#ffffff20;}
.sidebar .product-help-link {
  margin-top:auto;padding:13px 12px;background:#ffffff06;border:1px solid #ffffff15;
  color:#d0ede4;border-radius:14px;font-size:11px;box-shadow:none;
}
body>main {padding:30px 34px 48px;gap:24px;}
.product-page-heading {display:flex;justify-content:space-between;align-items:center;gap:24px;padding:4px 0 6px;}
.product-page-heading .product-eyebrow {display:flex;align-items:center;gap:8px;margin:0 0 10px;color:#718397;font-size:10px;font-weight:650;letter-spacing:.15em;}
.product-eyebrow::before {content:"";width:6px;height:6px;border-radius:50%;background:#23b995;box-shadow:0 0 0 4px #23b99513;}
.product-page-heading h1 {margin:0;color:#203149;font-size:clamp(27px,2.5vw,38px);line-height:1.18;letter-spacing:-1.25px;font-weight:650;}
.product-page-heading .product-page-note {margin:10px 0 0;color:#708093;font-size:12px;line-height:1.6;}
.product-date {display:flex;align-items:center;gap:9px;color:#63758a;font-size:12px;white-space:nowrap;border:1px solid #ffffff;background:#ffffff85;padding:12px 15px;border-radius:14px;box-shadow:0 3px 15px #21314904;}
.product-date::before {content:"";width:7px;height:7px;background:#26c5a3;border-radius:50%;}
.app-section,#dashboard {gap:20px;}
.dashboard-heading {padding:0;}
.dashboard-heading>div>span {font-size:10px;letter-spacing:.08em;}
.dashboard-heading h2 {font-size:18px;font-weight:600;letter-spacing:-.4px;}
.dashboard-title-row p {font-size:10px;}
.dashboard-month-picker {padding:5px;border:1px solid #e6edf0;border-radius:14px;background:#ffffffb3;}
.dashboard-heading .icon-button {border-radius:11px;}
.dashboard-kpis {gap:16px;}
.dashboard-kpi {
  position:relative;overflow:hidden;isolation:isolate;min-height:139px;padding:20px 22px;
  gap:10px;border:1px solid #ffffff;border-radius:22px;background:#ffffffd9;
  box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;
}
.dashboard-kpi.primary {border:1px solid #243b53;background:linear-gradient(115deg,#20354d,#294960);color:#fff;}
.dashboard-kpi.primary::after {content:"";position:absolute;z-index:-1;right:-38px;top:-47px;width:175px;height:175px;border:1px solid #b3f4de24;border-radius:50%;box-shadow:0 0 0 24px #b3f4de08,0 0 0 49px #b3f4de04;pointer-events:none;}
.dashboard-kpi.primary strong {color:#fff;}
.dashboard-kpi.primary span,.dashboard-kpi.primary small {color:#c0d5e1;}
.dashboard-kpi.cash {border-left:1px solid #fff;}
.dashboard-kpi.debt {border-left:1px solid #fff;}
.dashboard-kpi strong {font-size:34px;letter-spacing:-1.2px;font-weight:650;font-variant-numeric:tabular-nums;}
.dashboard-kpi span {font-size:11px;font-weight:500;}
.dashboard-kpi small {font-size:10px;line-height:1.5;}
.dashboard-kpi:hover {transform:translateY(-3px);box-shadow:0 18px 35px -18px #21314930;}
.dashboard-kpi.primary:hover {background:linear-gradient(115deg,#20354d,#31556d);border-color:#31556d;}
.panel,.dashboard-owner-grid .panel,.dashboard-attention-panel,.placeholder-card {
  border:1px solid #e8eef1;border-radius:22px;background:#ffffffde;padding:23px;
  box-shadow:var(--shadow);
}
.panel-head h2,.panel h2 {font-size:17px;font-weight:650;letter-spacing:-.35px;}
.panel-head>div>span {font-size:9px;letter-spacing:.1em;line-height:1.8;color:#6c8194;}
.owner-attention-panel {border-left:1px solid #e8eef1;background:linear-gradient(110deg,#fff,#fffcf7);}
.dashboard-owner-grid {gap:18px;}
.owner-dashboard-statuses {gap:9px;}
.dashboard-status {padding:14px 12px;border-radius:15px;box-shadow:none;border-top-width:2px;min-height:88px;}
.dashboard-status span,.dashboard-status small {font-size:10px;}
.dashboard-status strong {font-size:25px;letter-spacing:-.7px;font-weight:650;}
.dashboard-attention-grid {gap:12px;}
.cash-main {border-radius:15px;border:1px solid #d0e9df;background:linear-gradient(110deg,#edf8f1,#f3faf7);}
.cash-row:not(.cash-main) {border-radius:13px;}
.primary-action,.line-editor button,.detail-actions button:first-child,.ai-console button {
  min-height:42px;height:auto;border-radius:13px;padding:11px 18px;
  border:1px solid #223950;background:linear-gradient(135deg,#20364e,#2d4c61);color:#fff;
  font-size:12px;font-weight:600;box-shadow:0 5px 12px -5px #213d5752,inset 0 1px 0 #ffffff12;
  transition:transform .18s,box-shadow .18s,background .18s;
}
.primary-action:hover,.line-editor button:hover,.detail-actions button:first-child:hover,.ai-console button:hover {
  transform:translateY(-2px);background:#2d4c61;border-color:#2d4c61;box-shadow:0 9px 18px -8px #213d5770;
}
.secondary-action {min-height:40px;height:auto;padding:9px 15px;border-radius:12px;background:#ffffffc9;border:1px solid #dce6ec;color:#52667b;font-size:12px;box-shadow:0 2px 3px #21314903;transition:background .18s,border-color .18s;}
.secondary-action:hover {background:#fff;border-color:#aec8cc;}
.icon-button {border-radius:11px;border-color:#e0e8ee;box-shadow:0 2px 4px #21314903;}
input:not([type=checkbox]):not([type=radio]),select,textarea {
  border-radius:11px;border-color:#e0e8ee;background:#fbfcfd;color:#2f435a;
  transition:border-color .18s,box-shadow .18s,background .18s;
}
input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus {background:#fff;box-shadow:0 0 0 4px #26c5a314;outline:none;border-color:#53b99f;}
input::placeholder,textarea::placeholder {color:#8999a9;}
.repair-filter-panel {padding:18px;border-radius:20px;border-color:#e4ecef;background:#ffffffa6;gap:12px;}
.repair-filter-panel label {gap:7px;color:#708398;font-size:10px;}
.repair-filter-panel input,.repair-filter-panel select {min-height:39px;font-size:11px;}
.product-filter-toggle {display:none;}
.repair-work-queue {gap:4px;background:#e9eef1;border-radius:13px;padding:4px;width:fit-content;margin:0;}
.repair-work-queue button {padding:8px 17px;min-height:34px;border:0;border-radius:10px;background:transparent;color:#687b8d;box-shadow:none;font-size:11px;font-weight:600;}
.repair-work-queue button.active,.repair-work-queue button[aria-pressed=true] {background:#fff;color:#187660;box-shadow:0 3px 8px #2131490a;}
.repairs-list-panel {padding:8px 14px 14px;}
.repairs-visible-count {padding:11px 5px 15px;color:#78899a;font-size:11px;}
.table-wrap {border-radius:15px;border-color:#e7edf1;}
table th {padding:15px 14px;background:#f8fafb;font-size:10px;font-weight:600;letter-spacing:.06em;color:#7b8b9b;border-color:#e8eef1;}
table td {padding:15px 14px;border-color:#ecf0f3;font-size:12px;}
.repair-group-row td {background:#f5f8fa;border-color:#e9eef2;padding:13px 14px;}
tr:hover {background:#f0f9f5;}
.is-selected,tr.is-selected {background:#edf8f3!important;outline-color:#bbdfd1;}
.repair-group-toggle strong {font-weight:600;}
.empty-state {border-color:#e3ecef;border-radius:16px;background:#fbfdfc;color:#7b8c9b;padding:26px;}
.modal,.drawer,.repair-drawer,.client-drawer {border-radius:24px;box-shadow:0 30px 100px #20364e26;}
.modular-route-switch,.modular-route-switch:hover {border-color:#dcebe5;background:#f4f9f7;border-radius:13px;}
.compact-switch-field input:checked+i {background:#26a887;}
.drawer-root .drawer {border-radius:24px 0 0 24px;}
.danger-action,.primary-action.danger-action,.detail-actions button.danger-action {background:#fff5f6;border-color:#f0cbd2;color:#a51e2d;box-shadow:none;}
#authRoot {
  background:radial-gradient(ellipse at 18% 18%,#d3eee4,transparent 47%),radial-gradient(ellipse at 90% 80%,#e0e9f4,transparent 42%),#f6f9fa;
}
.auth-card {position:relative;isolation:isolate;width:min(460px,100%);padding:42px;border-radius:30px;border:1px solid #ffffff;background:#ffffffd9;box-shadow:0 30px 90px -35px #27485e45;backdrop-filter:blur(20px);}
.auth-card::before {content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 1px 0 #fff;}
.auth-brand {margin-bottom:38px;}
.auth-brand strong {font-size:20px;font-weight:650;letter-spacing:-.7px;}
.auth-heading>span {font-size:9px;letter-spacing:.16em;font-weight:650;}
.auth-heading h1 {font-size:29px;line-height:1.2;letter-spacing:-1px;font-weight:650;margin:12px 0;}
.auth-heading p {font-size:12px;line-height:1.8;margin-bottom:28px;}
.auth-form {gap:20px;}
.auth-form label {font-size:11px;font-weight:500;color:#64798b;}
.auth-form input {height:47px;border-radius:12px;background:#f9fbfc;}
.auth-submit {margin-top:6px;min-height:47px;border-radius:13px;}
.product-account-link {display:block;margin-top:22px;text-align:center;color:#237c67;font-size:11px;text-decoration:none;}
.product-account-link:hover {text-decoration:underline;}
@media(min-width:1700px) {body>main {padding:38px 52px 56px;}}
@media(max-width:1100px) and (min-width:761px) {
  body {grid-template-columns:224px minmax(0,1fr);}
  body>.sidebar {margin-left:12px;padding:20px 10px;}
  body>main {padding:26px 22px;}
  .dashboard-kpis {grid-template-columns:repeat(2,minmax(0,1fr));}
  .owner-dashboard-statuses {grid-template-columns:repeat(4,minmax(0,1fr));}
  .dashboard-owner-grid {grid-template-columns:1fr;}
}
@media(max-width:760px) {
  body {display:block;}
  body>.sidebar {position:relative;top:0;height:auto;margin:10px;padding:17px;border-radius:22px;gap:14px;}
  .sidebar .brand {padding:0 0 14px;}
  .sidebar .main-nav {gap:5px;}
  .sidebar .main-nav a {min-height:39px;padding:9px 12px;font-size:11px;border-radius:12px;}
  .sidebar .product-help-link {padding:10px 12px;margin:0;font-size:10px;}
  body>main {padding:16px 16px 32px;gap:22px;}
  .product-page-heading {align-items:flex-start;gap:10px;}
  .product-page-heading h1 {font-size:28px;}
  .product-page-heading .product-page-note {font-size:11px;max-width:240px;}
  .product-date {display:none;}
  .dashboard-kpis {gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));}
  .dashboard-kpi {padding:16px;min-height:131px;border-radius:19px;}
  .dashboard-kpi strong {font-size:28px;}
  .owner-dashboard-statuses {grid-template-columns:repeat(2,minmax(0,1fr));}
  .dashboard-owner-grid {grid-template-columns:minmax(0,1fr);}
  .panel,.dashboard-owner-grid .panel,.dashboard-attention-panel {padding:17px;border-radius:20px;}
  .repair-filter-panel {padding:16px;}
  .repair-filter-panel:not(.product-filters-expanded)>label:not(:first-of-type),
  .repair-filter-panel:not(.product-filters-expanded)>#repairResetFilters {display:none;}
  .repair-filter-panel .product-filter-toggle {display:block;width:100%;min-height:38px;background:#f1f7f5;color:#21755f;border-color:#e0eee8;}
  .repairs-list-panel {padding:8px;}
  .auth-shell {padding:18px;}
  .auth-card {padding:30px 26px;border-radius:26px;}
  .auth-heading h1 {font-size:27px;}
}
@media(prefers-reduced-motion:reduce) {*,*::before,*::after {transition:none!important;animation:none!important;scroll-behavior:auto!important;}}
@media print {
  body {background:white;}
  .product-page-heading {display:none;}
  body>main {padding:0;}
  .panel,.dashboard-kpi {box-shadow:none;background:white;color:#213149;}
  .dashboard-kpi.primary strong,.dashboard-kpi.primary span,.dashboard-kpi.primary small {color:#213149;}
}
