@font-face { font-family:"Geist"; font-style:normal; font-weight:100 900; font-display:swap; src:url("../fonts/geist-cyrillic.woff2") format("woff2"); unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family:"Geist"; font-style:normal; font-weight:100 900; font-display:swap; src:url("../fonts/geist-latin.woff2") format("woff2"); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
:root { --font-geist-sans:"Geist"; --canvas:#f5f3ee; --surface:#fcfbf8; --green:#173b32; --slate:#344641; --orange:#d96332; --orange-dark:#b94e25; --sage:#dce5de; --line:#ddd8ce; --muted:#71807b; --warning:#f3a012; }
* { box-sizing:border-box; }
[hidden] { display:none!important; }
html, body { margin:0; min-height:100%; background:var(--canvas); color:var(--slate); }
body { font-family:var(--font-geist-sans), Manrope, Arial, sans-serif; }
button, input { font:inherit; }
button { color:inherit; }
.crm-shell { min-height:100vh; background:radial-gradient(circle at 83% 7%, rgba(255,255,255,.9), transparent 32%), var(--canvas); }
.icon { flex:0 0 auto; }

/* Основная навигация */
.sidebar { position:fixed; inset:0 auto 0 0; z-index:30; display:flex; width:238px; flex-direction:column; border-right:1px solid var(--line); background:rgba(252,251,248,.88); backdrop-filter:blur(16px); }
.brand { display:flex; height:94px; align-items:center; gap:12px; padding:0 23px; color:var(--green); font-size:17px; font-weight:600; letter-spacing:.03em; text-decoration:none; }
.brand b { color:var(--orange); font-weight:650; }
.brand-mark { display:grid; width:36px; height:36px; place-items:center; border-radius:50% 50% 45% 8%; background:var(--green); color:#fff; font-family:Georgia,serif; font-size:20px; }
.main-nav { display:flex; flex-direction:column; gap:4px; padding:16px 13px; flex:1 1 auto; min-height:0; overflow-y:auto; }
.main-nav button,.main-nav a { position:relative; display:grid; grid-template-columns:27px 1fr auto; align-items:center; gap:12px; min-height:46px; padding:0 14px; border:0; border-radius:9px; background:transparent; color:inherit; text-align:left; text-decoration:none; font-size:14px; cursor:pointer; transition:background .18s,color .18s,transform .18s; }
.main-nav button:hover,.main-nav a:hover { background:#f0f2ed; color:var(--green); transform:translateX(2px); }
.main-nav button.active,.main-nav a.active { background:var(--sage); color:var(--green); font-weight:650; }
.main-nav button.active::before,.main-nav a.active::before { content:""; position:absolute; left:-13px; width:4px; height:30px; border-radius:0 4px 4px 0; background:var(--orange); }
.main-nav em { min-width:24px; padding:3px 7px; border-radius:10px; background:#ebe9e2; color:var(--muted); font-size:11px; font-style:normal; text-align:center; }
.main-nav .active em { background:var(--orange); color:white; }

/* Верхняя панель и поиск */
.workspace { min-height:100vh; margin-left:238px; }
.topbar { display:flex; height:78px; align-items:center; justify-content:flex-end; gap:30px; border-bottom:1px solid rgba(221,216,206,.82); padding:0 34px; background:rgba(245,243,238,.64); backdrop-filter:blur(12px); }
.top-actions { display:flex; align-items:center; gap:14px; }
.icon-button { position:relative; display:grid; width:42px; height:42px; place-items:center; border:1px solid var(--line); border-radius:50%; background:var(--surface); cursor:pointer; }
.icon-button span { position:absolute; right:5px; top:4px; width:8px; height:8px; border:2px solid var(--surface); border-radius:50%; background:var(--orange); }
.profile { display:flex; align-items:center; gap:10px; border:0; background:transparent; cursor:pointer; text-align:left; }
.avatar { display:grid; width:42px; height:42px; place-items:center; overflow:hidden; border:1px solid #c9c2b5; border-radius:50%; color:var(--green); font-size:12px; font-weight:650; }.avatar img{width:100%;height:100%;object-fit:cover}
.profile-copy strong,.profile-copy small { display:block; }
.profile-copy strong { color:var(--slate); font-size:12px; font-weight:600; }
.profile-copy small { margin-top:3px; color:var(--muted); font-size:10px; }
.profile-menu{position:relative}.profile-dropdown{position:absolute;z-index:80;top:calc(100% + 12px);right:0;width:156px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:6px;box-shadow:0 14px 35px rgba(23,59,50,.14)}.profile-dropdown[hidden]{display:none}.profile-dropdown a{display:block;border-radius:6px;padding:10px 12px;color:var(--slate);font-size:12px;text-decoration:none}.profile-dropdown a:hover{background:var(--mint)}
.chevron { margin-left:5px; }

/* Контент дашборда */
.dashboard { padding:30px 34px 44px; }
.welcome { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:26px; }
.eyebrow { margin:0 0 6px; color:var(--orange); font-size:10px; font-weight:650; letter-spacing:.13em; text-transform:uppercase; }
.welcome h1 { margin:0; color:var(--green); font-family:Georgia,"Times New Roman",serif; font-size:39px; font-weight:500; letter-spacing:-.025em; line-height:1.15; }
.welcome>div>p:last-child { margin:8px 0 0; color:var(--muted); font-size:12px; }
.primary-button { display:flex; height:42px; align-items:center; gap:8px; border:0; border-radius:7px; background:var(--orange); padding:0 17px; color:#fff; text-decoration:none; font-size:12px; font-weight:600; cursor:pointer; transition:background .16s,transform .16s; }
.primary-button:hover { background:var(--orange-dark); transform:translateY(-1px); }
.primary-button span { font-size:18px; font-weight:300; }

/* Карточки показателей */
.kpi-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:18px; }
.kpi-card { min-height:142px; border:1px solid var(--line); border-radius:11px; background:rgba(252,251,248,.76); padding:20px; box-shadow:0 8px 24px rgba(23,59,50,.025); transition:transform .18s,border-color .18s; }
.kpi-card:hover { transform:translateY(-2px); border-color:#c9c9bd; }
.kpi-top { display:flex; align-items:flex-start; justify-content:space-between; color:var(--slate); font-size:12px; }
.soft-icon { display:grid; width:38px; height:38px; place-items:center; border-radius:8px; background:var(--sage); color:var(--green); }
.kpi-card>strong,.progress-card strong { display:block; margin-top:5px; color:var(--green); font-family:Georgia,serif; font-size:44px; font-weight:400; line-height:1; }
.kpi-card p { margin:10px 0 0; color:var(--muted); font-size:10px; }
.kpi-card p b { color:#43826d; font-weight:650; }
.progress-card { display:flex; align-items:center; justify-content:space-between; }
.progress-card>div>span { font-size:12px; }
.progress-card strong small { font-size:23px; }
.progress-ring { display:grid; width:72px; height:72px; place-items:center; border-radius:50%; background:conic-gradient(var(--orange) 0 calc(var(--pct,72) * 1%), #e7e3da calc(var(--pct,72) * 1%) 100%); animation:ringIn .75s ease-out; }
.progress-ring::before { content:""; grid-area:1/1; width:58px; height:58px; border-radius:50%; background:var(--surface); }
.progress-ring span { z-index:1; grid-area:1/1; color:var(--green); font-size:12px; font-weight:650; }

/* Общие панели */
.dashboard-grid { display:grid; grid-template-columns:1.04fr 1.26fr; gap:18px; align-items:start; }
.panel { overflow:hidden; border:1px solid var(--line); border-radius:11px; background:rgba(252,251,248,.82); box-shadow:0 8px 24px rgba(23,59,50,.022); }
.panel-heading { display:flex; min-height:70px; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); padding:0 19px; }
.panel-heading .eyebrow { margin-bottom:4px; }
.panel h2 { margin:0; color:var(--green); font-family:Georgia,serif; font-size:20px; font-weight:500; }
.panel-heading button,.panel-heading a { display:flex; align-items:center; gap:7px; border:0; background:transparent; color:var(--orange); text-decoration:none; font-size:11px; cursor:pointer; }
.panel-heading button:hover,.panel-heading a:hover { color:var(--orange-dark); }
.attention-row { display:grid; width:100%; grid-template-columns:9px minmax(180px,1fr) auto 70px 10px; align-items:center; gap:12px; min-height:64px; border:0; border-bottom:1px solid var(--line); background:transparent; padding:9px 17px; color:inherit; text-align:left; text-decoration:none; cursor:pointer; transition:background .16s; }
.attention-row:hover { background:#f1f3ee; }
.attention-row>i,.task-row i { width:8px; height:8px; border-radius:50%; background:var(--orange); }
.attention-row>i.warning,.task-row i.warning { background:var(--warning); }
.attention-row div strong,.attention-row div span { display:block; }
.attention-row div strong { color:var(--slate); font-size:11px; font-weight:600; }
.attention-row div span { overflow:hidden; margin-top:4px; color:var(--muted); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.tag { border-radius:5px; background:var(--sage); padding:5px 8px; color:#507066; font-size:9px; }
.attention-row time { color:var(--muted); font-size:9px; text-align:right; }
.row-arrow { color:#a7ada8; font-size:20px; }
.empty-state { display:grid; min-height:190px; place-items:center; color:var(--muted); font-size:12px; }

/* Задачи */
.task-row { display:grid; grid-template-columns:46px 25px 1fr; align-items:start; gap:11px; min-height:73px; border-bottom:1px solid var(--line); padding:14px 17px; }
.task-row>time { padding-top:4px; color:var(--orange); font-size:11px; font-weight:600; }
.task-check { display:grid; width:21px; height:21px; place-items:center; border:1px solid #b9b3a8; border-radius:50%; background:transparent; color:#fff; font-size:11px; cursor:pointer; }
.task-row>div strong { display:block; color:var(--slate); font-size:11px; font-weight:550; line-height:1.45; }
.task-row>div span { display:flex; align-items:center; gap:7px; margin-top:6px; color:var(--muted); font-size:9px; }
.task-row em { border-radius:4px; background:var(--sage); padding:4px 7px; color:#56736a; font-style:normal; }
.task-row.is-done { opacity:.52; }
.task-row.is-done .task-check { border-color:var(--green); background:var(--green); }
.task-row.is-done strong { text-decoration:line-through; }

/* Воронка */
.funnel-panel { grid-column:1/2; }
.funnel-content { display:grid; grid-template-columns:42% 1fr; gap:24px; min-height:245px; align-items:center; padding:20px 23px; }
.funnel-shape { display:flex; flex-direction:column; align-items:center; gap:3px; }
.funnel-shape div { display:grid; height:42px; place-items:center; clip-path:polygon(0 0,100% 0,88% 100%,12% 100%); color:#fff; font-family:Georgia,serif; animation:funnelIn .6s ease-out both; }
.funnel-shape div:nth-child(1) { width:100%; background:#173b32; }
.funnel-shape div:nth-child(2) { width:78%; background:#719889; animation-delay:.08s; }
.funnel-shape div:nth-child(3) { width:57%; background:#bccbc4; animation-delay:.16s; }
.funnel-shape div:nth-child(4) { width:35%; background:var(--orange); animation-delay:.24s; }
.funnel-legend { display:flex; flex-direction:column; }
.funnel-legend div { display:grid; grid-template-columns:9px 1fr 30px 38px; align-items:center; gap:8px; min-height:36px; border-bottom:1px solid var(--line); font-size:10px; }
.funnel-legend i { width:8px; height:8px; border-radius:50%; background:#173b32; }
.funnel-legend div:nth-child(2) i { background:#719889; }.funnel-legend div:nth-child(3) i { background:#bccbc4; }.funnel-legend div:nth-child(4) i { background:var(--orange); }
.funnel-legend b { color:var(--green); font-weight:600; }.funnel-legend em { color:var(--muted); font-style:normal; text-align:right; }
.toast { position:fixed; top:24px; right:24px; bottom:auto; z-index:10000; max-width:360px; border-radius:9px; background:var(--green); padding:13px 18px; color:#fff; box-shadow:0 14px 40px rgba(23,59,50,.22); font-size:12px; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-8px); transition:opacity .18s ease, transform .18s ease, visibility .18s ease; }
.toast.show,.toast.visible { opacity:1; visibility:visible; transform:translateY(0); }
.toast:empty { display:none; }
.mobile-menu,.sidebar-backdrop { display:none; }

@keyframes ringIn { from { background:conic-gradient(var(--orange) 0 0%, #e7e3da 0 100%); transform:rotate(-30deg); } }
@keyframes funnelIn { from { opacity:0; transform:scaleX(.35); } }
@keyframes toastIn { from { opacity:0; transform:translateY(8px); } }

/* Адаптивная версия */
@media (max-width:1100px) { .kpi-grid { grid-template-columns:repeat(2,1fr); }.dashboard-grid { grid-template-columns:1fr; }.funnel-panel { grid-column:auto; } }
@media (max-width:760px) {
  .mobile-menu { position:fixed; left:14px; top:14px; z-index:25; display:grid; width:42px; height:42px; place-items:center; border:1px solid var(--line); border-radius:8px; background:var(--surface); }
  .sidebar { transform:translateX(-102%); transition:transform .22s ease; }.sidebar.is-open { transform:translateX(0); }.sidebar-backdrop { position:fixed; inset:0; z-index:29; display:block; border:0; background:rgba(23,59,50,.28); }
  .workspace { margin-left:0; }.topbar { height:70px; padding:0 14px 0 68px; }.profile-copy,.chevron { display:none; }.profile { padding:0; }.dashboard { padding:24px 14px 30px; }
  .welcome { align-items:flex-start; gap:20px; }.welcome h1 { font-size:31px; }.welcome>div>p:last-child { max-width:280px; line-height:1.5; }.primary-button { width:auto; max-width:100%; height:auto; min-height:42px; flex:0 0 auto; justify-content:center; padding:9px 14px; line-height:1.25; text-align:center; }.primary-button span { margin-right:6px; }
  .kpi-grid { grid-template-columns:1fr 1fr; gap:10px; }.kpi-card { min-height:128px; padding:15px; }.kpi-card>strong,.progress-card strong { font-size:37px; }.soft-icon { width:34px; height:34px; }.progress-ring { width:58px; height:58px; }.progress-ring::before { width:47px; height:47px; }
  .panel-heading { padding:0 14px; }.panel-heading button { font-size:0; }.attention-row { grid-template-columns:8px 1fr auto 9px; gap:9px; padding:10px 13px; }.attention-row time { display:none; }.task-row { padding:13px; }.funnel-content { grid-template-columns:1fr; }.toast { left:14px; right:14px; top:14px; bottom:auto; }
}
@media (max-width:460px) { .kpi-grid { grid-template-columns:1fr; }.progress-card { min-height:116px; }.top-actions .icon-button { display:none; }.welcome h1 { font-size:29px; }.panel h2 { font-size:18px; }.funnel-legend div { font-size:9px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; } }

/* Команда, роли и подразделения */
.team-page{padding:30px 34px 44px}.role-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.role-overview article{display:grid;grid-template-columns:48px 1fr auto;gap:13px;min-height:132px;align-items:start;border:1px solid var(--line);border-radius:11px;background:var(--surface);padding:18px}.role-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:10px;background:var(--sage);color:var(--green)}.role-icon.admin{background:#fee9df;color:var(--orange)}.role-icon.manager{background:#e2ebe6}.role-icon.agent{background:#eeeaf3;color:#6c6180}.role-overview strong{display:block;color:var(--green);font-family:Georgia,serif;font-size:19px;font-weight:500}.role-overview p{margin:7px 0 0;color:var(--muted);font-size:11px;line-height:1.55}.role-overview article>b{color:var(--green);font-family:Georgia,serif;font-size:28px;font-weight:400}.team-panel{overflow:hidden;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.team-toolbar{display:flex;min-height:68px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 18px}.team-toolbar>div strong,.team-toolbar>div span{display:block}.team-toolbar>div strong{color:var(--green);font-family:Georgia,serif;font-size:20px;font-weight:500}.team-toolbar>div span{margin-top:3px;color:var(--muted);font-size:10px}.team-toolbar label{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:10px}.team-toolbar select{height:36px;border:1px solid var(--line);border-radius:7px;background:#faf9f5;padding:0 30px 0 10px;color:var(--slate);font-size:11px}.team-table{width:100%;border-collapse:collapse}.team-table th{height:42px;padding:0 17px;color:#89928e;text-align:left;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.team-table td{height:72px;border-top:1px solid #e8e4dc;padding:10px 17px;font-size:11px}.person-cell{display:flex;align-items:center;gap:11px}.person-cell i{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:var(--sage);color:var(--green);font-size:10px;font-style:normal}.person-cell strong,.person-cell span{display:block}.person-cell strong{font-size:12px}.person-cell span{margin-top:4px;color:var(--muted);font-size:10px}.role-badge{display:inline-flex;border-radius:5px;background:#eeeaf3;padding:6px 9px;color:#675f78;font-size:10px}.role-badge.admin{background:#fee9df;color:#b94e25}.role-badge.manager{background:var(--sage);color:#477064}.active-dot{display:flex;align-items:center;gap:7px}.active-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:#62a487}.row-menu{border:0;background:transparent;color:var(--orange);font-size:10px;cursor:pointer}

/* Авторизация */
.login-page{display:grid;min-height:100vh;grid-template-columns:minmax(390px,45%) 1fr;background:var(--surface)}.login-intro{display:flex;flex-direction:column;justify-content:space-between;background:var(--green);padding:0 54px 42px;color:#fff}.login-intro .brand{margin-left:-23px;color:#fff}.login-intro .brand-mark{background:#fff;color:var(--green)}.login-intro>div{max-width:520px}.login-intro h1{margin:12px 0 18px;font-family:Georgia,serif;font-size:52px;font-weight:400;line-height:1.05}.login-intro>div>p:last-child{max-width:440px;color:#cbd8d2;font-size:15px;line-height:1.65}.login-intro small{color:#9eb4ab;font-size:11px}.login-form-wrap{display:grid;place-items:center;padding:40px}.login-card{width:min(430px,100%)}.login-mark{display:grid;width:54px;height:54px;place-items:center;border-radius:12px;background:#fee9df;color:var(--orange)}.login-card h2{margin:10px 0 7px;color:var(--green);font-family:Georgia,serif;font-size:39px;font-weight:500}.login-card>p:not(.eyebrow){margin:0 0 30px;color:var(--muted);font-size:13px}.login-card label{display:grid;gap:8px;margin-top:17px;color:var(--slate);font-size:12px;font-weight:600}.login-card input{width:100%;height:48px;border:1px solid var(--line);border-radius:8px;background:#faf9f5;padding:0 13px;outline:0}.login-card input:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(217,99,50,.08)}.password-field{position:relative}.password-field button{position:absolute;inset:0 9px 0 auto;border:0;background:transparent;color:var(--muted)}.login-submit{display:flex;width:100%;height:49px;align-items:center;justify-content:center;gap:10px;margin-top:24px;border:0;border-radius:8px;background:var(--green);color:#fff;cursor:pointer}.login-card>a{display:block;margin-top:20px;color:var(--orange);font-size:11px;text-align:center}.login-message{margin-top:14px;border-radius:7px;background:var(--sage);padding:11px;color:var(--green);font-size:11px;line-height:1.45}
@media(max-width:1000px){.role-overview{grid-template-columns:1fr}.login-page{grid-template-columns:1fr}.login-intro{display:none}}@media(max-width:760px){.team-page{padding:24px 14px}.team-table{min-width:760px}.team-table-wrap{overflow:auto}.login-form-wrap{padding:28px 20px}.login-card h2{font-size:34px}}

/* Управление сотрудниками и подразделениями */
.team-tabs{display:flex;height:56px;align-items:flex-end;gap:4px;border-bottom:1px solid var(--line);padding:0 18px}.team-tabs button{position:relative;height:56px;border:0;background:transparent;padding:0 14px;color:var(--muted);font-size:12px;cursor:pointer}.team-tabs button.active{color:var(--green);font-weight:650}.team-tabs button.active:after{content:"";position:absolute;inset:auto 10px 0;height:3px;border-radius:3px 3px 0 0;background:var(--orange)}.team-tabs em{margin-left:5px;border-radius:10px;background:#eeeae2;padding:2px 7px;font-size:9px;font-style:normal}.table-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.table-actions button{border:0;background:transparent;color:var(--orange);font-size:10px;cursor:pointer}.table-actions button.danger{color:#bd5841}.active-dot.blocked:before{background:#b6ada4}.active-dot.blocked{color:var(--muted)}.unit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:18px}.unit-grid article{border:1px solid var(--line);border-radius:9px;background:#faf9f5;padding:17px}.unit-grid article>div:first-child{display:flex;align-items:center;justify-content:space-between}.unit-grid article>div:first-child span{color:var(--orange);font-size:9px;font-weight:650;text-transform:uppercase}.unit-grid article button{border:0;background:transparent;color:var(--orange);font-size:10px;cursor:pointer}.unit-grid h3{margin:14px 0 18px;color:var(--green);font-family:Georgia,serif;font-size:20px;font-weight:500}.unit-grid dl{display:grid;gap:10px;margin:0}.unit-grid dl div{display:flex;justify-content:space-between;gap:10px}.unit-grid dt{color:var(--muted);font-size:10px}.unit-grid dd{margin:0;color:var(--slate);font-size:10px;text-align:right}.team-editor{display:flex;width:min(610px,100vw);height:100dvh;flex-direction:column;background:var(--surface);box-shadow:-24px 0 70px rgba(23,59,50,.18);animation:drawerIn .26s cubic-bezier(.2,.8,.2,1)}.team-editor.compact{width:min(500px,100vw)}.team-editor-head{display:flex;min-height:124px;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line);padding:24px 26px}.team-editor-head h2{margin:7px 0 4px;color:var(--green);font-family:Georgia,serif;font-size:29px;font-weight:500}.team-editor-head span{color:var(--muted);font-size:11px}.team-editor-head>button{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer}.team-editor-body{display:grid;gap:18px;min-height:0;flex:1;align-content:start;overflow:auto;padding:25px 26px}.team-editor-body label{display:grid;gap:8px;color:var(--slate);font-size:11px;font-weight:600}.team-editor-body input,.team-editor-body select{width:100%;height:45px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 12px;color:var(--slate);font-size:12px;outline:0}.team-editor-body input:focus,.team-editor-body select:focus{border-color:var(--orange)}.team-editor-foot{display:flex;min-height:76px;align-items:center;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);padding:0 26px}.team-editor-foot button{height:42px;border:1px solid var(--line);border-radius:7px;background:transparent;padding:0 17px;font-size:11px;cursor:pointer}.team-editor-foot .save-team{border-color:var(--green);background:var(--green);color:#fff}
@media(max-width:1000px){.unit-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.team-table{min-width:900px}.unit-grid{grid-template-columns:1fr}.team-editor{width:100%}.team-editor-body .form-grid.two{grid-template-columns:1fr}}
.settings-page{padding:30px 34px 44px}.settings-form{display:grid;gap:18px;max-width:900px}.settings-card{border:1px solid var(--line);border-radius:10px;background:var(--surface)}.settings-card-title{display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--line);padding:20px 24px}.settings-card-title>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--mint);color:var(--green);font-size:11px;font-weight:700}.settings-card-title h2{margin:0;color:var(--green);font-family:Georgia,serif;font-size:23px;font-weight:500}.settings-card-title p{margin:4px 0 0;color:var(--muted);font-size:11px}.settings-fields{display:grid;gap:18px;padding:24px}.settings-fields>label,.settings-fields .form-grid label{display:grid;gap:8px;color:var(--slate);font-size:11px;font-weight:600}.settings-fields input{height:45px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 12px;color:var(--slate);outline:0}.settings-fields input:focus{border-color:var(--orange)}.settings-fields small{color:var(--muted);font-weight:400}.settings-actions{display:flex;justify-content:flex-end}.settings-actions .primary-button{min-width:190px;justify-content:center}@media(max-width:760px){.settings-page{padding:24px 14px 50px}.settings-fields .form-grid.two{grid-template-columns:1fr}}

/* Команда: фото сотрудника и структура агентства */
.person-cell i.has-photo{overflow:hidden}.person-cell i.has-photo img{width:100%;height:100%;object-fit:cover}.employee-avatar-field{display:flex!important;min-height:92px;align-items:center;gap:15px!important;border:1px solid var(--line);border-radius:9px;background:#faf9f5;padding:13px!important}.employee-avatar-field>input{position:absolute;width:1px!important;height:1px!important;opacity:0;pointer-events:none}.employee-avatar-preview{display:grid;width:66px;height:66px;flex:0 0 66px;place-items:center;overflow:hidden;border-radius:50%;background:var(--sage);color:var(--green);font-size:10px;font-weight:700}.employee-avatar-preview img{width:100%;height:100%;object-fit:cover}.employee-avatar-field>span:last-of-type{display:block}.employee-avatar-field strong,.employee-avatar-field small{display:block}.employee-avatar-field strong{font-size:12px}.employee-avatar-field small{margin-top:5px;color:var(--muted);font-size:10px;font-weight:400}.employee-avatar-field button{margin-top:9px;border:0;background:transparent;padding:0;color:var(--orange);font-size:10px;cursor:pointer}.team-empty{padding:40px;color:var(--muted);font-size:12px;text-align:center}

/* Иерархия филиалов и отделов */
.branch-list{display:grid;gap:16px;padding:18px}.branch-card{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#faf9f5}.branch-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:17px 19px}.branch-head span{color:var(--orange);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.branch-head h3{margin:5px 0 3px;color:var(--green);font-family:Georgia,serif;font-size:22px;font-weight:500}.branch-head p{margin:0;color:var(--muted);font-size:10px}.branch-head button,.department-grid article>div button{border:0;background:transparent;color:var(--orange);font-size:10px;cursor:pointer}.department-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:14px}.department-grid article{border:1px solid var(--line);border-radius:8px;background:#fff;padding:15px}.department-grid article>div:first-child{display:flex;justify-content:space-between}.department-grid article>div span{color:#6e827b;font-size:9px;font-weight:700;text-transform:uppercase}.department-grid h4{margin:11px 0 15px;color:var(--green);font-family:Georgia,serif;font-size:18px;font-weight:500}.department-grid dl{display:grid;gap:8px;margin:0}.department-grid dl div{display:flex;justify-content:space-between;gap:10px}.department-grid dt{color:var(--muted);font-size:10px}.department-grid dd{margin:0;font-size:10px;text-align:right}

/* База объектов */
.properties-page{padding:30px 34px 44px}.property-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.property-stats article{min-height:105px;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:16px 18px}.property-stats span,.property-stats strong,.property-stats em{display:block}.property-stats span{color:var(--muted);font-size:13px}.property-stats strong{margin-top:5px;color:var(--green);font-family:Georgia,serif;font-size:31px;font-weight:500}.property-stats em{margin-top:5px;color:#648176;font-size:11px;font-style:normal}.property-toolbar{display:flex;min-height:66px;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:10px 15px;margin-bottom:14px}.property-filters{display:flex;gap:10px}.property-filters label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.property-filters select{height:36px;border:1px solid var(--line);border-radius:7px;background:#faf9f5;padding:0 28px 0 10px;color:var(--slate);font-size:12px}.view-buttons{display:flex;gap:6px}.view-buttons button{display:flex;height:34px;align-items:center;gap:6px;border:1px solid var(--line);border-radius:6px;background:transparent;padding:0 10px;font-size:12px;cursor:pointer}.view-buttons button.active{background:var(--sage);color:var(--green)}.property-list{overflow:auto;background:transparent;display:flex;flex-direction:column;gap:10px}.property-list-head,.property-row{display:grid;min-width:1090px;grid-template-columns:62px minmax(280px,1.5fr) 160px 190px 140px 110px 18px;align-items:center;gap:12px}.property-list-head{height:40px;padding:0 15px;color:#89928e;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.property-list-head span:first-child{grid-column:1/3}.property-row{width:100%;min-height:104px;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:12px 15px;text-align:left;cursor:pointer;transition:background .15s,box-shadow .15s}.property-row:hover{background:#f2f3ee;box-shadow:0 4px 14px rgba(23,59,50,.06)}.property-thumb{display:grid;width:58px;height:66px;place-items:center;border-radius:7px;background:#d9e5df;color:var(--green)}.property-thumb.orange,.property-hero.orange{background:#f0d7ca;color:#a84e2c}.property-thumb.sand,.property-hero.sand{background:#e9e0cb;color:#75613c}.property-thumb.slate,.property-hero.slate{background:#d9dfdd;color:#405b53}.property-main small,.property-main strong,.property-main em,.property-params strong,.property-params em,.property-price strong,.property-price em{display:block}.property-main small{color:var(--orange);font-size:11px;font-weight:650}.property-main strong{margin-top:6px;color:var(--green);font-size:15px}.property-main em{display:flex;align-items:center;gap:4px;margin-top:6px;color:var(--muted);font-size:12px;font-style:normal}.property-params strong,.property-price strong{color:var(--slate);font-size:14px}.property-params em,.property-price em{margin-top:6px;color:var(--muted);font-size:11px;font-style:normal}.property-broker{font-size:13px}.property-status{display:inline-flex;justify-self:start;border-radius:5px;background:var(--sage);padding:6px 8px;color:#467064;font-size:11px}.property-status.check{background:#fff0d7;color:#8b681c}.property-drawer{display:flex;width:min(570px,100vw);height:100dvh;flex-direction:column;background:#faf9f5;box-shadow:-24px 0 70px rgba(23,59,50,.18);animation:drawerIn .26s cubic-bezier(.2,.8,.2,1)}.property-drawer-head{display:flex;min-height:126px;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--surface);padding:22px 24px}.property-drawer-head span{color:var(--orange);font-size:9px;font-weight:700}.property-drawer-head h2{margin:7px 0 5px;color:var(--green);font-family:Georgia,serif;font-size:26px;font-weight:500}.property-drawer-head p{margin:0;color:var(--muted);font-size:12px}.property-drawer-head button{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent}.property-hero{display:flex;min-height:145px;align-items:center;justify-content:center;gap:15px;background:#d9e5df;color:var(--green)}.property-hero span{font-family:Georgia,serif;font-size:20px}.property-drawer-actions{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.property-drawer-actions button{height:52px;border:0;border-right:1px solid var(--line);background:var(--surface);color:var(--green);font-size:10px;cursor:pointer}.property-drawer-scroll{min-height:0;flex:1;overflow:auto}.property-drawer-scroll section{border-bottom:1px solid var(--line);padding:20px 24px}.property-drawer-scroll h3{margin:0 0 15px;color:var(--green);font-family:Georgia,serif;font-size:19px;font-weight:500}.property-drawer-scroll dl{display:grid;gap:10px;margin:0}.property-drawer-scroll dl div{display:grid;grid-template-columns:120px 1fr}.property-drawer-scroll dt{color:var(--muted);font-size:12px}.property-drawer-scroll dd{margin:0;font-size:13px}.property-drawer-scroll section>strong,.property-drawer-scroll section>a,.property-drawer-scroll section>p{display:block;margin:0 0 8px;font-size:13px}.property-drawer-scroll section>a{color:var(--orange);text-decoration:none}.property-drawer-scroll section>p{color:var(--muted)}.publication-list{display:flex;flex-wrap:wrap;gap:7px}.publication-list span{border:1px solid var(--line);border-radius:5px;padding:7px 9px;color:var(--muted);font-size:9px}.publication-list span.on{border-color:#b8cbc2;background:var(--sage);color:var(--green)}
@media(max-width:1100px){.property-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.properties-page{padding:24px 14px}.property-toolbar{align-items:stretch;flex-direction:column;gap:10px}.property-filters{overflow:auto}.property-list-head,.property-row{min-width:980px}.property-drawer{width:100%}.department-grid{grid-template-columns:1fr}}

/* Добавление и редактирование объекта */
.object-editor{display:flex;width:min(860px,100vw);height:100dvh;flex-direction:column;background:#f7f5f0;box-shadow:-25px 0 70px rgba(23,59,50,.2);animation:drawerIn .26s cubic-bezier(.2,.8,.2,1)}.object-editor-head{display:flex;min-height:126px;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--surface);padding:23px 27px}.object-editor-head h2{margin:7px 0 4px;color:var(--green);font-family:Georgia,serif;font-size:30px;font-weight:500}.object-editor-head span{color:var(--muted);font-size:11px}.object-editor-head>button{display:grid;width:35px;height:35px;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer}.object-editor-scroll{display:grid;min-height:0;flex:1;align-content:start;gap:12px;overflow:auto;padding:18px}.object-editor details{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.object-editor summary{display:flex;min-height:72px;align-items:center;gap:13px;padding:0 18px;cursor:pointer;list-style:none}.object-editor summary::-webkit-details-marker{display:none}.object-editor summary>b{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--sage);color:var(--green);font-size:10px}.object-editor summary>span{color:var(--green);font-family:Georgia,serif;font-size:19px}.object-editor summary small{display:block;margin-top:4px;color:var(--muted);font-family:var(--font-geist-sans),Arial,sans-serif;font-size:9px}.object-editor details[open] summary{border-bottom:1px solid var(--line)}.object-form-section{display:grid;gap:18px;padding:20px}.object-form-section label{display:grid;gap:7px;color:var(--slate);font-size:10px;font-weight:600}.object-form-section label i{color:var(--orange);font-style:normal}.object-form-section input:not([type=checkbox]):not([type=file]),.object-form-section select,.object-form-section textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 11px;color:var(--slate);font-size:11px;outline:0}.object-form-section input:not([type=checkbox]):not([type=file]),.object-form-section select{height:42px}.object-form-section textarea{min-height:78px;padding:10px;resize:vertical}.object-form-section input:focus,.object-form-section select:focus,.object-form-section textarea:focus{border-color:var(--orange)}.option-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;border:0;margin:0;padding:0}.option-grid legend{grid-column:1/-1;margin-bottom:8px;color:var(--green);font-size:11px;font-weight:650}.option-grid label,.check-line{display:flex!important;min-height:39px;align-items:center;gap:8px;border:1px solid var(--line);border-radius:7px;background:#faf9f5;padding:8px 10px;font-weight:500!important}.option-grid input,.check-line input{accent-color:var(--orange)}.company-toggle{justify-self:start;border:0;background:transparent;padding:0;color:var(--orange);font-size:10px;cursor:pointer}.company-fields{display:grid;gap:15px;border-left:3px solid var(--sage);padding:4px 0 4px 16px}.coordinates{display:flex;min-height:56px;align-items:center;justify-content:space-between;border:1px dashed #c8c3b8;border-radius:8px;background:#faf9f5;padding:0 14px}.coordinates span{color:var(--muted);font-size:10px}.coordinates button{border:0;background:transparent;color:var(--orange);font-size:10px;cursor:pointer}.photo-drop{position:relative;display:flex!important;min-height:120px!important;align-items:center;justify-content:center;flex-direction:column;gap:7px!important;border:1px dashed #bdb8ad;border-radius:9px;background:#faf9f5;color:var(--green)!important;cursor:pointer}.photo-drop input{position:absolute;width:1px;height:1px;opacity:0}.photo-drop span{color:var(--muted);font-size:9px;font-weight:400}.photo-file-list{display:flex;flex-wrap:wrap;gap:7px}.photo-file-list span{border-radius:5px;background:var(--sage);padding:7px 9px;color:var(--green);font-size:9px}.object-editor-foot{display:flex;min-height:78px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);background:var(--surface);padding:0 25px}.object-editor-foot>span{color:var(--muted);font-size:9px}.object-editor-foot>div{display:flex;gap:8px}.object-editor-foot button{height:41px;border:1px solid var(--line);border-radius:7px;background:transparent;padding:0 16px;font-size:10px;cursor:pointer}.object-editor-foot button[type=submit]{border-color:var(--green);background:var(--green);color:#fff}
@media(max-width:900px){.object-editor{width:100%}.option-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.object-editor-head{padding:20px}.object-editor-head h2{font-size:25px}.object-editor-scroll{padding:10px}.object-form-section{padding:15px}.object-form-section .form-grid.three,.object-form-section .form-grid.four,.object-form-section .form-grid.two{grid-template-columns:1fr}.option-grid{grid-template-columns:1fr 1fr}.object-editor-foot>span{display:none}.object-editor-foot{justify-content:flex-end;padding:0 14px}}

/* Исправление обязательных полей и управляемого аккордеона */
.object-form-section label{position:relative}.object-form-section label>i{position:absolute;top:0;right:0;z-index:1}.object-editor summary:after{content:"⌄";margin-left:auto;color:var(--muted);font-family:Arial,sans-serif;font-size:18px}.object-editor details[open] summary:after{content:"⌃"}.map-field{display:grid;gap:12px}.address-search{display:grid;grid-template-columns:1fr auto}.address-search input{border-radius:7px 0 0 7px!important}.address-search button{border:0;border-radius:0 7px 7px 0;background:var(--green);padding:0 16px;color:#fff;font-size:10px;cursor:pointer}.yandex-map{width:100%;height:280px;border:1px solid var(--line);border-radius:9px;background:#e7ebe7}.map-values{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.map-values input{background:#f3f2ed!important;color:var(--muted)!important}
@media(max-width:620px){.map-values{grid-template-columns:1fr}.yandex-map{height:220px}}

/* Полная форма объекта без сворачивания разделов */
.modal-layer .object-editor{width:min(1180px,calc(100vw - 56px));max-width:100vw}.object-editor-scroll{display:block;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:20px 22px 42px}.object-editor details{display:block;height:auto!important;min-height:0;overflow:visible;margin-bottom:16px}.object-editor details:last-child{margin-bottom:0}.object-editor summary{pointer-events:none}.object-editor summary:after{display:none}.object-form-section{height:auto;overflow:visible}.object-editor-head,.object-editor-foot{flex:0 0 auto}.coordinate-error{border:1px solid #dc8c73;border-radius:9px;background:#fff5f0;padding:14px}.coordinate-error>strong{display:block;color:#a84e2c;font-size:12px}.coordinate-error>p{margin:5px 0 13px;color:#786d67;font-size:10px}.coordinate-error .map-values input{border-color:#dca38e;background:#fff!important;color:var(--slate)!important}
@media(max-width:900px){.modal-layer .object-editor{width:100vw}}@media(max-width:620px){.object-editor-scroll{padding:12px 10px 28px}}

/* Единая база контактов и компаний */
.contacts-page{padding:30px 34px 44px}.contacts-panel{overflow:hidden;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.contact-list{overflow:auto}.contact-list-head,.contact-row{display:grid;min-width:1010px;grid-template-columns:minmax(250px,1.2fr) minmax(250px,1.2fr) minmax(190px,1fr) 160px 16px;align-items:center;gap:13px}.contact-list-head{height:42px;padding:0 18px;color:#89928e;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.contact-row{width:100%;min-height:96px;border:0;border-top:1px solid #e7e3db;background:transparent;padding:13px 18px;text-align:left;cursor:pointer}.contact-row:hover{background:#f3f4ef}.contact-row>.contact-avatar{display:grid;grid-row:1;grid-column:1;width:40px;height:40px;place-items:center;border-radius:50%;background:var(--sage);color:var(--green);font-size:10px}.contact-person{grid-column:1;margin-left:52px}.contact-person strong,.contact-person em,.contact-channels strong,.contact-channels em,.contact-channels small{display:block}.contact-person strong{font-size:15px}.contact-person em{margin-top:4px;color:var(--muted);font-size:12px;font-style:normal}.contact-person>span{display:flex;gap:5px;margin-top:7px}.contact-person i{border-radius:4px;background:#f0ece4;padding:4px 6px;color:#6a746f;font-size:10px;font-style:normal}.contact-channels strong{font-size:13px}.contact-channels em{margin-top:4px;color:var(--slate);font-size:12px;font-style:normal}.contact-channels small{margin-top:5px;color:var(--orange);font-size:11px}.contact-row>span:not(.contact-avatar):not(.contact-person):not(.contact-channels){font-size:12px}.contact-row>b{color:#a7ada8;font-size:19px}.company-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:18px}.company-grid article{border:1px solid var(--line);border-radius:9px;background:#faf9f5;padding:17px}.company-grid article>div:first-child{display:flex;justify-content:space-between}.company-grid article>div:first-child span{color:var(--muted);font-size:9px}.company-grid button{border:0;background:transparent;color:var(--orange);font-size:9px}.company-grid h2{margin:16px 0 6px;color:var(--green);font-family:Georgia,serif;font-size:20px;font-weight:500}.company-grid>a{color:var(--orange);font-size:9px;text-decoration:none}.company-grid dl{display:grid;gap:9px;margin:17px 0 0}.company-grid dl div{display:flex;justify-content:space-between;gap:10px}.company-grid dt{color:var(--muted);font-size:9px}.company-grid dd{margin:0;font-size:9px;text-align:right}
@media(max-width:1100px){.company-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.contacts-page{padding:24px 14px}.company-grid{grid-template-columns:1fr}}

/* Раздел обращений */
.appeals-page { padding:30px 34px 44px; }
.page-title { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:24px; }
.page-title h1 { margin:0; color:var(--green); font-family:Georgia,"Times New Roman",serif; font-size:39px; font-weight:500; letter-spacing:-.025em; }
.page-title>div>p:last-child { margin:8px 0 0; color:var(--muted); font-size:12px; }
.appeal-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:18px; }
.nudge-badges { display:flex; flex-wrap:wrap; gap:8px; margin:-6px 0 18px; }
.nudge-badge { display:inline-flex; align-items:center; gap:7px; border:1px solid var(--line); border-radius:999px; background:#fff; padding:7px 12px 7px 10px; font-size:12px; color:var(--slate); cursor:pointer; transition:border-color .15s,background .15s; }
.nudge-badge:hover { border-color:#c9c4b6; }
.nudge-dot { width:7px; height:7px; border-radius:50%; flex-shrink:0; }
.nudge-badge-stale .nudge-dot { background:#d9a13b; }
.nudge-badge-incomplete .nudge-dot { background:#c98a4a; }
.nudge-badge-overdue .nudge-dot { background:#c04a3a; }
.nudge-badge b { font-weight:700; color:var(--green); }
.nudge-badge.active { background:var(--sage); border-color:#9fc0b2; color:var(--green); }
.nudge-badge.active b { color:var(--green); }
.appeal-stats article { min-height:96px; border:1px solid var(--line); border-radius:10px; background:rgba(252,251,248,.8); padding:15px 17px; }
.appeal-stats span,.appeal-stats strong,.appeal-stats em { display:block; }
.appeal-stats span { color:var(--muted); font-size:10px; }.appeal-stats strong { margin-top:4px; color:var(--green); font-family:Georgia,serif; font-size:30px; font-weight:500; }.appeal-stats em { margin-top:4px; color:#5f8176; font-size:9px; font-style:normal; }
.danger-text { color:#c85236!important; }
.appeals-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; border:1px solid var(--line); border-radius:10px; background:var(--surface); padding:0 14px; margin-bottom:18px; min-height:52px; }
.status-tabs { display:flex; min-width:0; gap:2px; overflow-x:auto; }
.status-tabs button { position:relative; height:54px; flex:0 0 auto; border:0; background:transparent; padding:0 12px; color:var(--muted); font-size:10px; cursor:pointer; }
.status-tabs button.active { color:var(--green); font-weight:650; }.status-tabs button.active::after { content:""; position:absolute; inset:auto 7px 0; height:3px; border-radius:3px 3px 0 0; background:var(--orange); }.status-tabs em { margin-left:5px; border-radius:9px; background:#eeeae2; padding:2px 6px; font-size:9px; font-style:normal; }
.toolbar-actions { display:flex; gap:7px; }.toolbar-actions button { display:flex; height:34px; align-items:center; gap:7px; border:1px solid var(--line); border-radius:7px; background:#faf9f5; padding:0 10px; color:var(--slate); font-size:10px; cursor:pointer; }.toolbar-actions button.active { border-color:#b9c7c0; background:var(--sage); }.filter-count { display:grid; min-width:17px; height:17px; place-items:center; border-radius:9px; background:var(--green); color:#fff; font-size:8px; }
.filter-panel { display:flex; align-items:end; gap:14px; border:1px solid var(--line); border-bottom:0; background:#f8f7f2; padding:14px; animation:toastIn .16s ease-out; }.filter-panel label { display:grid; gap:5px; color:var(--muted); font-size:9px; }.filter-panel select { min-width:150px; height:34px; border:1px solid var(--line); border-radius:6px; background:var(--surface); padding:0 10px; color:var(--slate); font-size:10px; }.filter-panel>button { height:34px; border:0; background:transparent; color:var(--orange); font-size:10px; cursor:pointer; }
.appeals-layout { position:relative; display:flex; min-height:560px; border:1px solid var(--line); border-radius:10px; background:var(--surface); }
.appeals-table-wrap { min-width:0; flex:1; overflow:auto; }.appeals-table { width:100%; min-width:1240px; border-collapse:collapse; table-layout:fixed; }.appeals-table th { height:43px; border-bottom:1px solid var(--line); padding:0 12px; color:#89928e; text-align:left; font-size:8px; font-weight:650; letter-spacing:.08em; text-transform:uppercase; }.appeals-table td { height:67px; border-bottom:1px solid #e7e3db; padding:8px 12px; font-size:10px; vertical-align:middle; cursor:pointer; }.appeals-table tr { transition:background .15s; }.appeals-table tbody tr:hover,.appeals-table tr.selected { background:#f1f3ee; }.appeals-table td>strong,.appeals-table td>span:not(.status):not(.broker) { display:block; }.appeals-table td>strong { color:var(--slate); font-size:10px; font-weight:600; }.appeals-table td>span:not(.status):not(.broker) { overflow:hidden; max-width:250px; margin-top:4px; color:var(--muted); font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.row-attention{background:#fff8ee}
.appeals-table tr.row-attention:hover{background:#fdf1de}
.overdue-date{display:inline-flex;align-items:center;gap:4px;border-radius:5px;background:#fdecd8;padding:3px 8px;color:#b3540f;font-weight:700}
.muted-cell{color:var(--muted)}
.noname-badge{display:inline-block;margin-left:6px;border-radius:5px;background:#efe6f5;padding:2px 6px;color:#6a4a8a;font-size:9px;font-weight:600;vertical-align:middle}
.appeal-card-grid>button.row-attention{border-color:#e8cf9c;background:#fffaf0}
.appeal-id { display:flex; align-items:center; gap:8px; }.appeal-id>i { width:7px; height:7px; border-radius:50%; background:#aeb8b4; }.appeal-id>i.urgent { background:var(--orange); box-shadow:0 0 0 3px rgba(217,99,50,.12); }.appeal-id strong,.appeal-id span { display:block; }.appeal-id strong { color:var(--green); font-size:10px; }.appeal-id span { margin-top:4px; color:var(--muted); font-size:8px; }
.status { display:inline-flex; border:1px solid transparent; border-radius:5px; padding:5px 8px; background:#e9ede9; color:#557168; font-size:8px; font-weight:650; white-space:nowrap; }
.status-новое { border-color:#f4c7b2; background:#fff0e8; color:#bd4b20; }
.status-в-работе { border-color:#b9d9ce; background:#e3f1ec; color:#236454; }
.status-подбор { border-color:#b9d3ec; background:#e8f3fd; color:#285f91; }
.status-показ { border-color:#d0c5e7; background:#eee9f8; color:#684d91; }
.status-ждём-оплату { border-color:#e8c400; background:#fff6b8; color:#7a6300; }
.status-успешно-закрыто { border-color:#abd3b4; background:#e5f4e8; color:#23703a; }
.status-отказ { border-color:#d8b9b9; background:#f5e8e8; color:#943f3f; }
/* Обращения: карточки и строки таблицы подсвечены цветом статуса, чтобы статус был виден с ходу. */
.appeals-table tr.status-row td:first-child { border-left:4px solid transparent; }
.appeal-card-grid>button[class*="status-"] { border-left:4px solid transparent; }
.appeals-table tr.status-row.status-новое td:first-child,.appeal-card-grid>button.status-новое { border-left-color:#e07a3f; }
.appeals-table tr.status-row.status-в-работе td:first-child,.appeal-card-grid>button.status-в-работе { border-left-color:#3f9c82; }
.appeals-table tr.status-row.status-подбор td:first-child,.appeal-card-grid>button.status-подбор { border-left-color:#4a86c4; }
.appeals-table tr.status-row.status-показ td:first-child,.appeal-card-grid>button.status-показ { border-left-color:#8a6bbd; }
.appeals-table tr.status-row.status-ждём-оплату td:first-child,.appeal-card-grid>button.status-ждём-оплату { border-left-color:#e8c400; }
.appeals-table tr.status-row.status-успешно-закрыто td:first-child,.appeal-card-grid>button.status-успешно-закрыто { border-left-color:#3d9455; }
.appeals-table tr.status-row.status-отказ td:first-child,.appeal-card-grid>button.status-отказ { border-left-color:#b25959; }
.appeals-table tr.status-row.status-новое,.appeal-card-grid>button.status-новое { background:#fffaf6; }
.appeals-table tr.status-row.status-в-работе,.appeal-card-grid>button.status-в-работе { background:#f5fbf9; }
.appeals-table tr.status-row.status-подбор,.appeal-card-grid>button.status-подбор { background:#f5f9fd; }
.appeals-table tr.status-row.status-показ,.appeal-card-grid>button.status-показ { background:#f9f7fc; }
.appeals-table tr.status-row.status-ждём-оплату,.appeal-card-grid>button.status-ждём-оплату { background:#fffde8; }
.appeals-table tr.status-row.status-успешно-закрыто,.appeal-card-grid>button.status-успешно-закрыто { background:#f6fbf7; }
.appeals-table tr.status-row.status-отказ,.appeal-card-grid>button.status-отказ { background:#fcf6f6; opacity:.88; }
.appeals-table tr.status-row.status-новое:hover,.appeals-table tr.status-row.status-в-работе:hover,.appeals-table tr.status-row.status-подбор:hover,.appeals-table tr.status-row.status-показ:hover,.appeals-table tr.status-row.status-ждём-оплату:hover,.appeals-table tr.status-row.status-успешно-закрыто:hover,.appeals-table tr.status-row.status-отказ:hover { filter:brightness(.98); }
.broker { display:flex; max-width:130px; align-items:center; gap:6px; font-size:9px; }.broker i { display:grid; width:25px; height:25px; flex:0 0 auto; place-items:center; border-radius:50%; background:var(--sage); color:var(--green); font-size:7px; font-style:normal; overflow:hidden; }.broker i.has-photo{background:transparent}.broker i img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.appeal-drawer { width:340px; flex:0 0 340px; border-left:1px solid var(--line); background:#faf9f5; animation:drawerIn .22s ease-out; }.drawer-head { display:flex; min-height:105px; align-items:flex-start; justify-content:space-between; border-bottom:1px solid var(--line); padding:18px; }.drawer-head>div>span { color:var(--orange); font-size:9px; font-weight:650; letter-spacing:.08em; }.drawer-head h2 { margin:7px 0 0; color:var(--green); font-family:Georgia,serif; font-size:23px; font-weight:500; }.drawer-head p { margin:4px 0 0; color:var(--muted); font-size:10px; }.drawer-head button { display:grid; width:30px; height:30px; place-items:center; border:0; background:transparent; cursor:pointer; }
.drawer-actions { display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid var(--line); }.drawer-actions button { display:flex; min-height:58px; flex-direction:column; align-items:center; justify-content:center; gap:5px; border:0; border-right:1px solid var(--line); background:transparent; color:var(--green); font-size:8px; cursor:pointer; }.drawer-actions button:hover { background:var(--sage); }
/* Когда виден 4-й пункт (кнопка «В календарь», только на мобильных) — раскладка 2×2 вместо 3+1. */
.drawer-actions:has([data-action="ics"]:not([hidden])) { grid-template-columns:repeat(2,1fr); }
.drawer-actions:has([data-action="ics"]:not([hidden])) button:nth-child(2n) { border-right:0; }
.drawer-actions:has([data-action="ics"]:not([hidden])) button:nth-child(-n+2) { border-bottom:1px solid var(--line); }
.write-channel-menu{position:absolute;top:100%;left:33.33%;z-index:20;display:flex;flex-direction:column;min-width:170px;border:1px solid var(--line);border-radius:9px;background:var(--surface);box-shadow:0 12px 30px rgba(23,59,50,.16);padding:6px;margin-top:4px}
.write-channel-menu a,.write-channel-menu span{display:block;padding:9px 12px;border-radius:6px;font-size:12px;text-decoration:none;color:var(--slate)}
.write-channel-menu a:hover{background:var(--sage);color:var(--green)}
.write-channel-menu span.disabled{color:#a9b0ac;cursor:default}
.write-channel-menu span.disabled em{display:block;margin-top:2px;font-style:normal;font-size:10px;color:#b7bcb9}
.drawer-section { border-bottom:1px solid var(--line); padding:16px 18px; }.drawer-label { margin-bottom:11px; color:#8a938f; font-size:8px; font-weight:650; letter-spacing:.1em; text-transform:uppercase; }.drawer-control { display:grid; gap:8px; }.drawer-control select { height:34px; border:1px solid var(--line); border-radius:6px; background:var(--surface); padding:0 10px; color:var(--green); font-size:10px; }.drawer-control span { display:flex; align-items:center; gap:7px; color:var(--orange); font-size:9px; }.drawer-section h3 { margin:0 0 12px; color:var(--green); font-family:Georgia,serif; font-size:17px; font-weight:500; }.drawer-section dl { display:grid; gap:8px; margin:0; }.drawer-section dl div { display:grid; grid-template-columns:80px 1fr; gap:9px; }.drawer-section dt { color:var(--muted); font-size:8px; }.drawer-section dd { margin:0; color:var(--slate); font-size:9px; }.text-button { display:flex; align-items:center; gap:7px; margin-top:13px; border:0; background:transparent; padding:0; color:var(--orange); font-size:9px; cursor:pointer; }.drawer-comment { margin:0; color:var(--slate); font-size:10px; line-height:1.55; }.comment-meta { display:block; margin-top:8px; color:var(--muted); font-size:8px; }.drawer-section textarea { width:100%; min-height:58px; margin-top:13px; resize:vertical; border:1px solid var(--line); border-radius:6px; background:var(--surface); padding:9px; color:var(--slate); font-size:9px; outline:0; }.drawer-section textarea:focus { border-color:var(--orange); }.save-comment { display:block; margin:8px 0 0 auto; border:0; border-radius:5px; background:var(--green); padding:7px 10px; color:#fff; font-size:8px; cursor:pointer; }
@keyframes drawerIn { from { opacity:0; transform:translateX(18px); } }

@media(max-width:1280px){.appeal-drawer{position:fixed; inset:78px 0 0 auto; z-index:20; width:360px; max-width:90vw; box-shadow:-18px 0 50px rgba(23,59,50,.12); overflow:auto}.appeal-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.appeals-page{padding:24px 14px 30px}.page-title{align-items:flex-start}.page-title h1{font-size:32px}.page-title .primary-button{width:auto; padding:9px 14px}.page-title .primary-button .icon{margin-right:6px}.appeal-stats{grid-template-columns:1fr 1fr;gap:9px}.appeals-toolbar{padding-right:8px}.status-tabs button{padding:0 9px}.filter-panel{align-items:stretch; flex-direction:column}.filter-panel select{width:100%}.appeals-layout{min-height:500px}.appeal-drawer{inset:70px 0 0 auto}.appeals-table{min-width:940px}}
@media(max-width:460px){.appeal-stats{grid-template-columns:1fr}.appeal-stats article{min-height:82px}.page-title>div>p:last-child{max-width:260px}.appeal-drawer{width:100%;max-width:100%}}

/* Выезжающие модальные окна обращения */
body.modal-open { overflow:hidden; }
.modal-layer { position:fixed; inset:0; z-index:100; display:flex; justify-content:flex-end; background:rgba(20,43,37,.42); backdrop-filter:blur(2px); animation:modalFade .2s ease-out; }
.modal-layer .appeal-drawer { position:relative; inset:auto; display:flex; width:min(520px,100vw); max-width:100vw; height:100dvh; flex:0 0 auto; flex-direction:column; overflow:hidden; border:0; border-left:1px solid var(--line); background:#faf9f5; box-shadow:-24px 0 70px rgba(23,59,50,.18); animation:drawerIn .26s cubic-bezier(.2,.8,.2,1); }
.drawer-scroll { min-height:0; flex:1; overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; padding-bottom:30px; scrollbar-width:thin; scrollbar-color:#bfc7c1 transparent; }
.modal-layer .drawer-head { min-height:112px; flex:0 0 auto; background:#fcfbf8; padding:20px 22px; }
.drawer-head-actions { display:flex; align-items:center; gap:8px; }
.drawer-head-actions>button:first-child { width:auto; height:31px; border:1px solid var(--line); border-radius:6px; padding:0 10px; color:var(--green); font-size:9px; }
.drawer-head-actions>button:first-child:hover { background:var(--sage); }
.control-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:14px; }
.control-grid>div { border:1px solid var(--line); border-radius:7px; background:var(--surface); padding:10px; }
.control-grid small,.control-grid strong { display:block; }.control-grid small { color:var(--muted); font-size:8px; }.control-grid strong { margin-top:4px; color:var(--slate); font-size:10px; }
.contact-card { display:flex; align-items:center; gap:12px; }.contact-avatar { display:grid; width:42px; height:42px; flex:0 0 auto; place-items:center; border-radius:50%; background:var(--sage); color:var(--green); font-size:10px; font-weight:650; }.contact-card strong,.contact-card span { display:block; }.contact-card strong { color:var(--green); font-size:11px; }.contact-card span { margin-top:4px; color:var(--muted); font-size:9px; }
.selection-summary { position:relative; border:1px solid #cbd7d1; border-radius:8px; background:var(--sage); padding:13px; }.selection-summary strong,.selection-summary span { display:block; }.selection-summary strong { color:var(--green); font-size:11px; }.selection-summary span { margin-top:4px; color:#607a71; font-size:9px; }.selection-summary button { margin-top:10px; border:0; border-radius:5px; background:var(--green); padding:7px 10px; color:white; font-size:8px; cursor:pointer; }

/* Форма создания и редактирования обращения */
.editor-layer { background:rgba(20,43,37,.52); }
.appeal-editor { width:min(760px,100vw); height:100dvh; background:#f7f6f1; box-shadow:-28px 0 80px rgba(23,59,50,.22); animation:drawerIn .28s cubic-bezier(.2,.8,.2,1); }
.appeal-editor form { display:flex; height:100%; flex-direction:column; }
.editor-head { display:flex; min-height:122px; flex:0 0 auto; align-items:flex-start; justify-content:space-between; border-bottom:1px solid var(--line); background:var(--surface); padding:22px 26px; }
.editor-head h2 { margin:2px 0 0; color:var(--green); font-family:Georgia,serif; font-size:27px; font-weight:500; }.editor-head>div>span { display:block; margin-top:7px; color:var(--muted); font-size:10px; }.editor-head>button { display:grid; width:34px; height:34px; place-items:center; border:1px solid var(--line); border-radius:50%; background:transparent; cursor:pointer; }
.editor-body { min-height:0; flex:1; overflow-y:auto; overscroll-behavior:contain; padding:22px 26px 32px; }
.form-section { margin-bottom:18px; border:1px solid var(--line); border-radius:10px; background:var(--surface); padding:20px; }
.form-section-title { display:flex; align-items:flex-start; gap:11px; margin-bottom:18px; }.form-section-title>span { display:grid; width:28px; height:28px; flex:0 0 auto; place-items:center; border-radius:50%; background:var(--sage); color:var(--green); font-size:8px; font-weight:700; }.form-section-title h3 { margin:0; color:var(--green); font-family:Georgia,serif; font-size:17px; font-weight:500; }.form-section-title p { margin:4px 0 0; color:var(--muted); font-size:9px; }
.form-grid { display:grid; gap:13px; }.form-grid.two { grid-template-columns:1fr 1fr; }.form-grid.three { grid-template-columns:repeat(3,1fr); }.form-grid.four { grid-template-columns:repeat(4,1fr); }.form-gap { margin-top:13px; }
.form-grid label,.full-field { position:relative; display:grid; gap:6px; color:var(--slate); font-size:9px; font-weight:600; }.form-grid label b,.full-field b { position:absolute; top:0; right:0; color:var(--orange); line-height:1; }.form-grid input,.form-grid select,.form-grid textarea,.full-field input { width:100%; height:38px; border:1px solid var(--line); border-radius:6px; outline:0; background:#fff; padding:0 10px; color:var(--slate); font-size:10px; font-weight:400; transition:border .15s,box-shadow .15s; }.form-grid textarea { min-height:72px; resize:vertical; padding:9px 10px; line-height:1.45; }.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.full-field input:focus { border-color:var(--orange); box-shadow:0 0 0 3px rgba(217,99,50,.1); }
.feature-checks { display:flex; flex-wrap:wrap; gap:8px 14px; margin-top:14px; }.feature-checks label { display:flex; align-items:center; gap:6px; color:var(--muted); font-size:9px; cursor:pointer; }.feature-checks input { accent-color:var(--green); }
.editor-footer { display:flex; min-height:72px; flex:0 0 auto; align-items:center; justify-content:space-between; gap:20px; border-top:1px solid var(--line); background:var(--surface); padding:0 26px; }.editor-footer>span { color:var(--muted); font-size:8px; }.editor-footer>div { display:flex; gap:8px; }.editor-footer button { height:36px; border:1px solid var(--line); border-radius:6px; background:transparent; padding:0 14px; color:var(--slate); font-size:9px; cursor:pointer; }.editor-footer .submit-button { border-color:var(--green); background:var(--green); color:#fff; font-weight:600; }
@keyframes modalFade { from { opacity:0; } }

@media(max-width:760px){.modal-layer .appeal-drawer{width:min(500px,100vw)}.appeal-editor{width:100vw}.editor-head{min-height:108px;padding:18px}.editor-body{padding:16px}.editor-footer{padding:0 16px}.form-grid.three,.form-grid.four{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.modal-layer{background:rgba(20,43,37,.25)}.form-grid.two,.form-grid.three,.form-grid.four{grid-template-columns:1fr}.editor-head>div>span,.editor-footer>span{display:none}.editor-footer{justify-content:flex-end}.form-section{padding:15px}.control-grid{grid-template-columns:1fr}}

/* Увеличенная доступная типографика */
body { font-size:16px; }
.main-nav button,.main-nav a { min-height:56px; font-size:16px; }
.main-nav em { font-size:12px; }
.profile-copy strong { font-size:14px; }.profile-copy small { font-size:12px; }
.eyebrow { font-size:12px; }.welcome>div>p:last-child,.page-title>div>p:last-child { font-size:14px; line-height:1.5; }
.primary-button { min-height:46px; font-size:14px; }
.kpi-top,.progress-card>div>span { font-size:14px; }.kpi-card p { font-size:12px; line-height:1.4; }
.panel h2 { font-size:23px; }.panel-heading button,.panel-heading a { font-size:13px; }
.attention-row { min-height:72px; }.attention-row div strong { font-size:14px; }.attention-row div span { font-size:12px; }.tag { font-size:11px; }.attention-row time { font-size:11px; }
.task-row { min-height:82px; }.task-row>time { font-size:13px; }.task-row>div strong { font-size:13px; }.task-row>div span { font-size:11px; }
.funnel-legend div { min-height:40px; font-size:12px; }
.appeal-stats span { font-size:13px; }.appeal-stats em { font-size:11px; }
.status-tabs button { font-size:13px; }.status-tabs em { font-size:11px; }
.toolbar-actions button { font-size:12px; }.filter-panel label { font-size:12px; }.filter-panel select,.filter-panel>button { font-size:13px; }
.appeals-table th { height:48px; font-size:12px; }.appeals-table td { height:82px; font-size:15px; }.appeals-table td>strong { font-size:15px; }.appeals-table td>span:not(.status):not(.broker) { margin-top:6px; font-size:13px; }
.appeal-id strong { font-size:15px; }.appeal-id span { font-size:12px; }.status { padding:6px 9px; font-size:12px; }.broker { max-width:150px; font-size:12px; }.broker i { width:30px; height:30px; font-size:9px; }
.drawer-head>div>span { font-size:11px; }.drawer-head p { font-size:12px; }.drawer-head-actions>button:first-child { font-size:12px; }
.drawer-actions button { min-height:66px; font-size:11px; }.drawer-label { font-size:11px; }.drawer-control select { height:40px; font-size:13px; }.drawer-control span { font-size:12px; }
.control-grid small { font-size:11px; }.control-grid strong { font-size:13px; }.contact-card strong { font-size:14px; }.contact-card span { font-size:12px; }
.drawer-section h3 { font-size:20px; }.drawer-section dt { font-size:11px; }.drawer-section dd { font-size:13px; }.text-button { font-size:12px; }
.selection-summary strong { font-size:14px; }.selection-summary span { font-size:12px; }.selection-summary button { font-size:11px; }
.drawer-comment { font-size:13px; }.comment-meta { font-size:11px; }.drawer-section textarea { min-height:72px; font-size:13px; }.save-comment { font-size:11px; }
.editor-head>div>span { font-size:13px; }.form-section-title h3 { font-size:20px; }.form-section-title p { font-size:12px; }.form-section-title>span { width:32px; height:32px; font-size:11px; }
.form-grid label,.full-field { font-size:12px; }.form-grid input,.form-grid select,.form-grid textarea,.full-field input { height:44px; font-size:13px; }.form-grid textarea { min-height:84px; }.feature-checks label { font-size:12px; }
.editor-footer>span { font-size:11px; }.editor-footer button { height:42px; font-size:12px; }
.toast { font-size:14px; }
.data-source { display:inline-flex; align-items:center; gap:7px; margin-top:10px; border-radius:12px; background:var(--sage); padding:5px 9px; color:#557168; font-size:11px; }.data-source::before { content:""; width:7px; height:7px; border-radius:50%; background:#5e8a79; }.data-source.demo::before { background:var(--warning); }

@media(max-width:760px){.main-nav button,.main-nav a{font-size:15px}.appeals-table th{font-size:10px}.appeals-table td>strong,.appeal-id strong{font-size:12px}.drawer-head-actions>button:first-child::after{font-size:11px}}

/* Checkbox и radio не наследуют размеры текстовых полей */
.object-editor input[type="checkbox"],.object-editor input[type="radio"]{display:inline-block!important;width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;max-height:16px!important;flex:0 0 16px!important;margin:0!important;padding:0!important;border-radius:3px;vertical-align:middle;accent-color:var(--orange)}
.object-editor .check-line{display:flex!important;min-height:44px;align-items:center;justify-content:flex-start;gap:9px;padding:10px 12px}.object-editor .option-grid label{display:flex!important;align-items:center;justify-content:flex-start;gap:9px}

/* Предпросмотр и сортировка фотографий объекта */
.photo-preview-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px}.photo-preview-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#f5f3ed;box-shadow:0 3px 10px rgba(23,59,50,.06);cursor:grab;transition:border-color .15s,box-shadow .15s,transform .15s}.photo-preview-card:hover{border-color:#aebdb5;box-shadow:0 7px 18px rgba(23,59,50,.1)}.photo-preview-card:active{cursor:grabbing}.photo-preview-card.is-dragging{opacity:.48;transform:scale(.97)}.photo-preview-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#e8e5dd}.photo-cover{position:absolute;top:8px;left:8px;border-radius:5px;background:var(--green);padding:5px 7px;color:#fff;font-size:10px;font-weight:650}.photo-remove{position:absolute;top:7px;right:7px;display:grid!important;width:29px!important;min-width:29px!important;height:29px!important;min-height:29px!important;place-items:center;border:0!important;border-radius:50%!important;background:rgba(255,255,255,.94)!important;padding:0!important;color:#9b472b!important;font-size:20px!important;line-height:1!important;box-shadow:0 2px 8px rgba(23,59,50,.18);cursor:pointer}.photo-remove:hover{background:#fff1eb!important}.photo-order{display:block;padding:8px 9px;color:var(--muted);font-size:10px;line-height:1.3;text-align:center}.photo-drop span{font-size:12px}
@media(max-width:1050px){.photo-preview-grid{grid-template-columns:repeat(4,minmax(120px,1fr))}}@media(max-width:760px){.photo-preview-grid{grid-template-columns:repeat(3,minmax(110px,1fr))}}@media(max-width:520px){.photo-preview-grid{grid-template-columns:repeat(2,minmax(110px,1fr))}.photo-order{font-size:9px}}

/* Карточки редактирования контакта и компании */
.record-editor{display:flex;width:min(820px,100vw);height:100dvh;flex-direction:column;background:#f7f5f0;box-shadow:-25px 0 70px rgba(23,59,50,.2);animation:drawerIn .26s cubic-bezier(.2,.8,.2,1)}.record-editor>header{display:flex;min-height:132px;flex:0 0 auto;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--surface);padding:24px 28px}.record-editor>header h2{margin:7px 0 5px;color:var(--green);font-family:Georgia,serif;font-size:31px;font-weight:500}.record-editor>header span{color:var(--muted);font-size:13px}.record-editor>header>button{display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer}.record-editor-scroll{display:grid;min-height:0;flex:1;align-content:start;gap:15px;overflow-y:auto;padding:22px 26px 40px}.record-editor section{display:grid;gap:16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:20px}.record-editor section h3{margin:0;color:var(--green);font-family:Georgia,serif;font-size:21px;font-weight:500}.record-editor label,.multi-fields{display:grid;gap:7px;color:var(--slate);font-size:12px;font-weight:600}.record-editor label i{color:var(--orange);font-style:normal}.record-editor input:not([type=checkbox]),.record-editor select,.record-editor textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 11px;color:var(--slate);font-size:13px;outline:0}.record-editor input:not([type=checkbox]),.record-editor select{height:44px}.record-editor textarea{min-height:92px;padding:11px;resize:vertical}.record-editor input:focus,.record-editor select:focus,.record-editor textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(217,99,50,.08)}.record-editor>footer{display:flex;min-height:78px;flex:0 0 auto;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);background:var(--surface);padding:0 26px}.record-editor>footer>span{color:var(--muted);font-size:11px}.record-editor>footer>div{display:flex;gap:8px}.record-editor>footer button{height:42px;border:1px solid var(--line);border-radius:7px;background:transparent;padding:0 15px;color:var(--slate);font-size:12px;cursor:pointer}.record-editor>footer button[type=submit]{border-color:var(--green);background:var(--green);color:#fff}.contact-role-options{display:flex;flex-wrap:wrap;gap:10px}.contact-role-options label{display:flex;min-width:150px;min-height:44px;align-items:center;grid-template-columns:16px 1fr;gap:9px;border:1px solid var(--line);border-radius:7px;background:#faf9f5;padding:10px 12px}.contact-role-options input[type=checkbox]{width:16px!important;height:16px!important;min-height:16px!important;accent-color:var(--orange)}.multi-fields{min-width:0;border:0;margin:0;padding:0}.multi-fields legend{margin-bottom:7px}.multi-fields>div{display:grid;grid-template-columns:1fr 36px;gap:7px}.multi-fields>div button{border:1px solid var(--line);border-radius:7px;background:#faf9f5;color:#a34c2e;font-size:20px;cursor:pointer}.multi-fields .add-field{justify-self:start;border:0;background:transparent;padding:3px 0;color:var(--orange);font-size:12px;cursor:pointer}
@media(max-width:700px){.record-editor{width:100vw}.record-editor>header{min-height:116px;padding:19px}.record-editor>header h2{font-size:26px}.record-editor-scroll{padding:14px}.record-editor .form-grid.two,.record-editor .form-grid.three{grid-template-columns:1fr}.record-editor>footer{justify-content:flex-end;padding:0 14px}.record-editor>footer>span{display:none}}

/* Состояние автоматического заполнения реквизитов */
.requisites-status:empty{display:none}.requisites-status{border-radius:7px;background:#f0eee8;padding:10px 12px;color:var(--muted);font-size:12px;line-height:1.4}.requisites-status.is-success{background:#e6f0eb;color:#315f50}.requisites-status.is-error{background:#fff0e9;color:#9b472b}.suggestions-wrapper{font-family:var(--font-geist-sans),Arial,sans-serif;font-size:13px}.suggestions-suggestion{padding:9px 11px}.suggestions-suggestion:hover,.suggestions-selected{background:#edf2ef;color:var(--green)}

/* Транспортное расположение объекта */
.road-distances{display:grid;gap:13px;border:1px solid var(--line);border-radius:9px;background:#faf9f5;padding:15px}.road-distances>p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.road-distances input,.road-distances select{background:#fff!important}.property-drawer dl div:nth-child(4),.property-drawer dl div:nth-child(5),.property-drawer dl div:nth-child(6),.property-drawer dl div:nth-child(7),.property-drawer dl div:nth-child(8){background:#f4f5f1;margin:0 -7px;padding:7px;border-radius:5px}

/* Карточки, галерея и рабочие заметки объектов */
.property-table-photo{display:block;width:58px;height:66px;overflow:hidden;border-radius:7px;background:var(--sage)}.property-table-photo img{width:100%;height:100%;object-fit:cover}.property-card-grid{display:grid;grid-template-columns:repeat(4,minmax(210px,1fr));gap:14px;padding-top:14px}.property-product-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:0;text-align:left;cursor:pointer;transition:transform .16s,box-shadow .16s}.property-product-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(23,59,50,.1)}.product-photo{position:relative;display:block;height:170px;overflow:hidden;background:var(--sage)}.product-photo img{width:100%;height:100%;object-fit:cover}.product-photo>i,.product-photo>b{position:absolute;top:10px;border-radius:5px;background:rgba(20,43,37,.82);padding:5px 7px;color:#fff;font-size:10px;font-style:normal}.product-photo>i{right:10px}.product-photo>b{left:10px}.product-copy{display:grid;gap:8px;padding:15px}.product-copy>small{color:var(--muted);font-size:11px}.product-copy>strong{min-height:40px;color:var(--green);font-family:Georgia,serif;font-size:18px;font-weight:500;line-height:1.2}.product-copy>em{min-height:34px;color:var(--muted);font-size:11px;font-style:normal;line-height:1.45}.product-copy>span{display:grid;gap:4px;border-top:1px solid var(--line);padding-top:10px}.product-copy>span>b:first-child{font-size:15px}.product-copy>span>b:last-child{color:var(--orange);font-size:12px}.product-copy>.property-status{justify-self:start;font-family:var(--font-geist-sans),Arial,sans-serif;font-size:10px;font-style:normal}.property-status.draft{background:#ecebe7;color:#6e746f}.property-drawer.wide{width:min(760px,100vw)}.property-gallery{border-bottom:1px solid var(--line);background:#eceeea;padding:14px}.property-slide{position:relative;height:320px;overflow:hidden;border-radius:9px;background:#dfe4e0}.property-slide>img{width:100%;height:100%;object-fit:cover}.property-slide>span{position:absolute;right:12px;bottom:12px;border-radius:5px;background:rgba(20,43,37,.8);padding:5px 8px;color:#fff;font-size:11px}.property-slide>button{position:absolute;top:50%;display:grid;width:38px;height:38px;place-items:center;transform:translateY(-50%);border:0;border-radius:50%;background:rgba(255,255,255,.9);color:var(--green);font-size:28px;cursor:pointer}.property-slide>.prev{left:12px}.property-slide>.next{right:12px}.property-thumbs{display:flex;gap:8px;overflow:auto;padding-top:10px}.property-thumbs button{width:72px;height:52px;flex:0 0 auto;overflow:hidden;border:2px solid transparent;border-radius:6px;background:#fff;padding:0;cursor:pointer}.property-thumbs button.active{border-color:var(--orange)}.property-thumbs img{width:100%;height:100%;object-fit:cover}.property-main-grid{grid-template-columns:1fr 1fr!important;gap:9px 14px!important}.property-main-grid div{display:grid!important;grid-template-columns:100px 1fr!important;gap:8px;background:#f4f5f1!important;margin:0!important;padding:9px!important;border-radius:6px}.agent-note>div,.future-module>div{display:flex;align-items:center;justify-content:space-between;gap:15px}.agent-note>div h3,.future-module>div h3{margin-bottom:0}.agent-note>div span,.future-module>div span{border-radius:10px;background:#ecebe6;padding:5px 8px;color:var(--muted);font-size:10px}.agent-note textarea{width:100%;min-height:90px;margin-top:14px;resize:vertical;border:1px solid var(--line);border-radius:7px;background:#fff;padding:11px;color:var(--slate);font-size:13px}.agent-note button,.future-module button{border:0;border-radius:6px;background:var(--green);padding:9px 12px;color:#fff;font-size:11px;cursor:pointer}.agent-note button{display:block;margin:9px 0 0 auto}.future-module p{margin:12px 0!important;line-height:1.5}.future-module button{background:transparent;color:var(--orange);padding:0}.object-editor-foot .draft-button{border-color:#b9c9c1;background:var(--sage);color:var(--green)}
@media(min-width:1550px){.property-card-grid{grid-template-columns:repeat(5,minmax(210px,1fr))}}@media(min-width:1900px){.property-card-grid{grid-template-columns:repeat(6,minmax(210px,1fr))}}@media(max-width:1200px){.property-card-grid{grid-template-columns:repeat(3,minmax(210px,1fr))}}@media(max-width:850px){.property-card-grid{grid-template-columns:repeat(2,minmax(210px,1fr))}.property-slide{height:280px}}@media(max-width:520px){.property-card-grid{grid-template-columns:1fr}.property-main-grid{grid-template-columns:1fr!important}.property-slide{height:230px}.object-editor-foot{min-height:92px}.object-editor-foot>div{flex-wrap:wrap;justify-content:flex-end}}

/* Представление обращений и право самостоятельной публикации */
.appeal-view-actions{display:flex;flex-shrink:0;gap:5px}.appeal-view-actions>button{min-width:auto;white-space:nowrap}.appeal-card-grid h3{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.card-phone{display:block;margin:-3px 0 8px;color:var(--slate);font-size:12px}.appeal-card-grid{display:grid;grid-template-columns:repeat(3,minmax(250px,1fr));gap:14px;padding-top:16px}.appeal-card-grid>button{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:17px;text-align:left;cursor:pointer}.appeal-card-grid>button:hover{box-shadow:0 8px 24px rgba(23,59,50,.08)}.appeal-card-grid>button>div:first-child{display:flex;align-items:center;justify-content:space-between}.appeal-card-grid>button>div:first-child>strong{color:var(--orange);font-size:12px}.appeal-card-grid h3{margin:16px 0 5px;color:var(--green);font-family:Georgia,serif;font-size:20px;font-weight:500}.appeal-card-grid p{min-height:38px;margin:0 0 14px;color:var(--slate);font-size:13px;line-height:1.45}.appeal-card-grid dl{display:grid;gap:8px;margin:0}.appeal-card-grid dl div{display:grid;grid-template-columns:95px 1fr;gap:8px}.appeal-card-grid dt{color:var(--muted);font-size:11px}.appeal-card-grid dd{margin:0;font-size:12px}.permission-check{display:flex!important;min-height:66px!important;align-items:flex-start!important;gap:11px!important;border:1px solid var(--line);border-radius:8px;background:#faf9f5;padding:13px!important;cursor:pointer}.permission-check input{width:17px!important;height:17px!important;min-height:17px!important;flex:0 0 17px;margin-top:2px;accent-color:var(--orange)}.permission-check span,.permission-check strong,.permission-check small{display:block}.permission-check strong{color:var(--green);font-size:12px}.permission-check small{margin-top:5px;color:var(--muted);font-size:11px;font-weight:400;line-height:1.4}
@media(max-width:1100px){.appeal-card-grid{grid-template-columns:repeat(2,minmax(250px,1fr))}}@media(max-width:700px){.appeal-card-grid{grid-template-columns:1fr}.appeal-view-actions button{font-size:11px}}

/* Актуальность и пересчёт цен объекта */
.property-drawer.scroll-all{overflow-y:auto}.property-drawer.scroll-all .property-drawer-head{position:sticky;top:0;z-index:4;min-height:126px}.property-drawer.scroll-all .property-drawer-actions{position:sticky;top:126px;z-index:3}.property-drawer.scroll-all .property-drawer-scroll{overflow:visible;flex:none}.property-drawer.scroll-all .property-gallery{border-bottom:1px solid var(--line)}.property-drawer-actions .danger-action{color:#a34c2e}.actuality-card>div:first-child{display:flex;align-items:center;justify-content:space-between}.actuality-card>div:first-child h3{margin:0}.actuality-card>div:first-child span{border-radius:12px;background:var(--sage);padding:5px 9px;color:var(--green);font-size:10px}.actuality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:15px}.actuality-grid label{display:grid;gap:6px;color:var(--muted);font-size:11px}.actuality-grid input,.actuality-grid select{width:100%;height:39px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:0 9px;color:var(--slate)}.drawer-price-grid,.price-conversions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.drawer-price-grid>div,.price-conversions>div{border:1px solid var(--line);border-radius:7px;background:#f5f6f2;padding:12px}.drawer-price-grid span,.drawer-price-grid strong,.price-conversions span,.price-conversions strong{display:block}.drawer-price-grid span,.price-conversions span{color:var(--muted);font-size:11px}.drawer-price-grid strong,.price-conversions strong{margin-top:6px;color:var(--green);font-size:14px}.price-conversions input{display:none}.availability-fields{border-top:1px solid var(--line);padding-top:17px}.property-status.availability-занят{background:#fff0d7;color:#8b681c}.property-status.availability-продан,.property-status.availability-архив{background:#ecebe7;color:#6c736e}
@media(max-width:700px){.actuality-grid,.drawer-price-grid,.price-conversions{grid-template-columns:1fr}.property-drawer.scroll-all .property-drawer-actions{top:112px}}

/* Совместные сделки, направления и шоссе обращения */
.multi-choice{margin:16px 0 0;border:1px solid var(--line);border-radius:8px;background:#faf9f5;padding:14px}.multi-choice legend{padding:0 6px;color:var(--green);font-size:13px;font-weight:650}.multi-choice>p{margin:0 0 11px;color:var(--muted);font-size:11px;line-height:1.45}.multi-choice>div{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.multi-choice label{display:flex;min-height:38px;align-items:center;gap:8px;border:1px solid #e2ded5;border-radius:6px;background:#fff;padding:7px 9px;color:var(--slate);font-size:11px;cursor:pointer}.multi-choice input{width:16px!important;height:16px!important;min-height:16px!important;flex:0 0 16px;accent-color:var(--orange)}.full-field textarea{width:100%;min-height:84px;resize:vertical;border:1px solid var(--line);border-radius:6px;background:#fff;padding:10px;color:var(--slate);font-size:13px}.full-field>b{position:static;color:var(--orange)}
.object-class-choice{min-width:0;margin:0;border:0;padding:0}.object-class-choice legend{margin-bottom:7px;color:var(--slate);font-size:12px;font-weight:600}.object-class-choice>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.object-class-choice label{display:flex;min-height:36px;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--slate);font-size:11px;cursor:pointer}.object-class-choice input{width:15px!important;height:15px!important;min-height:15px!important;accent-color:var(--orange)}
@media(max-width:820px){.multi-choice>div{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.multi-choice>div{grid-template-columns:1fr}}

/* Карточка объекта: цена, статус и служебная дата */
.property-head-tools{display:flex;align-items:center;gap:12px}.property-head-tools>.property-status{font-family:var(--font-geist-sans),Arial,sans-serif;font-size:10px;font-style:normal}.property-price-summary{display:grid;justify-items:end;text-align:right;background:#fcfbf8}.property-price-summary>strong{margin:0!important;color:var(--green);font-family:Georgia,serif;font-size:31px!important;font-weight:500}.property-price-summary>span{margin-top:5px;color:var(--orange);font-size:14px}.property-price-summary>span i{color:var(--muted);font-size:12px;font-style:normal}.property-price-summary>small{margin-top:11px;color:var(--muted);font-size:11px}.property-price-summary>small b{color:var(--green);font-size:12px}.last-verified{margin:13px 0 0!important;color:var(--muted)!important;font-size:11px!important}.object-price-fields .vat-field{grid-column:3}.header-contact{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px}.header-contact a{color:var(--orange);font-size:11px;text-decoration:none}.appeal-contact-head{min-height:138px!important}.control-section .form-grid label b,.control-section .full-field b{position:static;margin-left:3px}.next-action-fields{margin-top:13px}.highway-choice{border-color:#c7d6cf;background:#f5f8f5}.form-grid select[multiple]{height:auto;min-height:76px;padding:6px 10px}
@media(max-width:700px){.property-price-summary>strong{font-size:25px!important}.object-price-fields .vat-field{grid-column:auto}.appeal-contact-head{min-height:150px!important}}

/* Первый шаг автоподбора */
.auto-match-list{display:grid;gap:8px;margin-top:13px}.auto-match-list>label{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:10px;cursor:pointer}.auto-match-list>label>input{width:16px;height:16px;flex:0 0 16px;margin-top:3px;accent-color:var(--orange)}.auto-match-list>label>span{display:grid;min-width:0;flex:1;gap:3px}.auto-match-list b{justify-self:start;border-radius:9px;background:var(--sage);padding:3px 6px;color:var(--green);font-size:10px}.auto-match-list strong{color:var(--green);font-size:12px}.auto-match-list small{color:var(--slate);font-size:10px}.auto-match-list em{color:var(--muted);font-size:9px;font-style:normal}.auto-match-list>button{border:0;border-radius:6px;background:var(--green);padding:9px;color:#fff;font-size:11px;cursor:pointer}.auto-match-list>button:disabled{background:#c8ccc8;cursor:not-allowed}

/* Поиск и фильтры базы объектов и обращений */
.property-search-panel,.appeal-search-panel{display:grid;gap:14px;margin:18px 0;border:1px solid var(--line);border-radius:11px;background:var(--surface);padding:16px}.catalog-search{display:flex;height:46px;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 13px;color:var(--muted)}.catalog-search:focus-within{border-color:var(--orange);box-shadow:0 0 0 3px rgba(217,99,50,.08)}.catalog-search input{width:100%;height:100%;border:0;outline:0;background:transparent;color:var(--slate);font-size:13px}.catalog-main-filters{display:grid;grid-template-columns:.8fr .8fr .8fr 2fr auto;align-items:end;gap:12px}.catalog-main-filters>label,.appeal-search-panel>div>label{display:grid;gap:6px;color:var(--slate);font-size:11px;font-weight:600}.catalog-main-filters>label>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.catalog-main-filters input,.catalog-main-filters select,.appeal-search-panel input,.appeal-search-panel select{width:100%;height:42px;min-width:0;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 10px;color:var(--slate);font-size:12px;outline:0}.catalog-main-filters fieldset{min-width:0;border:0;margin:0;padding:0}.catalog-main-filters legend{margin-bottom:6px;color:var(--slate);font-size:11px;font-weight:600}.catalog-main-filters fieldset>div{display:flex;min-height:42px;gap:5px}.catalog-main-filters fieldset label{display:flex;min-width:0;flex:1;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 8px;color:var(--muted);font-size:10px;cursor:pointer}.catalog-main-filters fieldset label.active{border-color:#a9bdb3;background:var(--sage);color:var(--green)}.catalog-main-filters fieldset input{display:none}.filter-trigger{display:flex;height:42px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 14px;color:var(--green);font-size:11px;cursor:pointer}.filter-trigger:hover,.filter-trigger.active{border-color:#afc1b8;background:var(--sage)}.filter-result{color:var(--muted);font-size:13px;margin-right:24px}.appeal-search-panel>div{display:grid;grid-template-columns:1fr 1fr 1fr auto auto;align-items:end;gap:12px}
.hide-rejected-toggle{display:flex!important;flex-direction:row!important;align-items:center;gap:7px;height:46px;white-space:nowrap;cursor:pointer}
.hide-rejected-toggle input{width:16px;height:16px;accent-color:var(--orange);cursor:pointer}.appeal-search-panel label small{color:var(--muted);font-size:9px;font-weight:400}.property-toolbar{min-height:58px}.view-buttons button{display:inline-flex;align-items:center;gap:5px}.infinite-loader{min-height:64px;padding:23px;color:var(--muted);font-size:11px;text-align:center}

/* Модальное окно дополнительных фильтров */
.filter-modal-layer{z-index:60}.catalog-filter-modal{display:flex;width:min(580px,100vw);height:100dvh;flex-direction:column;background:#f8f6f1;box-shadow:-25px 0 70px rgba(23,59,50,.2);animation:drawerIn .22s ease-out}.catalog-filter-modal>header{display:flex;min-height:130px;flex:0 0 auto;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--surface);padding:24px}.catalog-filter-modal h2{margin:7px 0 5px;color:var(--green);font-family:Georgia,serif;font-size:28px;font-weight:500}.catalog-filter-modal header span{color:var(--muted);font-size:12px}.catalog-filter-modal header>button{display:grid;width:35px;height:35px;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer}.catalog-filter-body{display:grid;min-height:0;flex:1;align-content:start;grid-template-columns:1fr 1fr;gap:15px;overflow:auto;padding:22px}.catalog-filter-body>label{display:grid;gap:7px;color:var(--slate);font-size:12px;font-weight:600}.catalog-filter-body input:not([type=checkbox]),.catalog-filter-body select{width:100%;height:44px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 10px;color:var(--slate);font-size:13px}.catalog-filter-body fieldset{grid-column:1/-1;border:1px solid var(--line);border-radius:8px;background:#fff;padding:14px}.catalog-filter-body legend{padding:0 6px;color:var(--green);font-size:13px;font-weight:650}.modal-checks{display:grid;grid-template-columns:1fr 1fr;gap:8px}.modal-checks label{display:flex;min-height:40px;align-items:center;gap:8px;border:1px solid #e5e1d8;border-radius:6px;background:#faf9f5;padding:8px 10px;color:var(--slate);font-size:11px}.modal-checks input{width:16px;height:16px;accent-color:var(--orange)}.catalog-filter-modal>footer{display:flex;min-height:76px;flex:0 0 auto;align-items:center;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);background:var(--surface);padding:0 22px}.catalog-filter-modal>footer button{height:42px;border:1px solid var(--line);border-radius:7px;background:transparent;padding:0 15px;color:var(--slate);font-size:12px;cursor:pointer}.catalog-filter-modal>footer .primary-button{border-color:var(--green);background:var(--green);color:#fff}

/* Карта объектов */
.property-map-wrap{position:relative;height:calc(100vh - 300px);min-height:560px;overflow:hidden;border:1px solid var(--line);border-radius:11px;background:#e7ece9}.property-map{width:100%;height:100%}.property-map-legend{position:absolute;top:14px;left:50%;z-index:2;display:flex;align-items:center;gap:16px;transform:translateX(-50%);border:1px solid rgba(23,59,50,.14);border-radius:8px;background:rgba(255,255,255,.94);padding:10px 13px;box-shadow:0 5px 18px rgba(23,59,50,.12)}.property-map-legend span{display:flex;align-items:center;gap:6px;color:var(--slate);font-size:11px;white-space:nowrap}.property-map-legend i{width:10px;height:10px;border-radius:50%;background:#9ca19e}.property-map-legend i.active{background:#f06b2f}.property-map-legend b{border-left:1px solid var(--line);padding-left:14px;color:var(--green);font-size:11px;white-space:nowrap}.commercial-terms{border-top:1px solid var(--line);padding-top:16px}
@media(max-width:1050px){.catalog-main-filters{grid-template-columns:1fr 1fr 1fr}.catalog-main-filters fieldset{grid-column:1/3}.appeal-search-panel>div{grid-template-columns:1fr 1fr}.property-map-wrap{height:620px}}
@media(max-width:650px){.catalog-main-filters,.appeal-search-panel>div,.catalog-filter-body{grid-template-columns:1fr}.catalog-main-filters fieldset{grid-column:auto}.catalog-main-filters fieldset>div{flex-wrap:wrap}.catalog-main-filters fieldset label{min-height:40px;flex:1 1 40%}.catalog-filter-body fieldset{grid-column:auto}.modal-checks{grid-template-columns:1fr}.property-map-legend{left:10px;right:10px;flex-wrap:wrap;transform:none}.property-map-legend b{border-left:0;padding-left:0}.property-map-wrap{height:560px;min-height:560px}}

/* Полный фильтр по полям карточки объекта */
.catalog-filter-modal.property-filter-large{width:min(1040px,calc(100vw - 44px))}.property-filter-body{display:block;padding:20px 24px 40px}.property-filter-body>fieldset{margin:0 0 16px;padding:18px}.property-filter-body>fieldset:last-child{margin-bottom:0}.advanced-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.advanced-filter-grid>label{display:grid;gap:7px;min-width:0;color:var(--slate);font-size:11px;font-weight:600}.advanced-filter-grid input,.advanced-filter-grid select{width:100%;height:42px;min-width:0;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 9px;color:var(--slate);font-size:12px}.filter-range{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ownership-checks{margin-top:13px}.equipment-filter{grid-template-columns:repeat(4,1fr)}.equipment-values{margin-top:14px}.property-filter-large>footer{position:relative}.property-filter-large>header{min-height:124px}
@media(max-width:1000px){.advanced-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.equipment-filter{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.catalog-filter-modal.property-filter-large{width:100vw}.advanced-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.equipment-filter{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.advanced-filter-grid,.equipment-filter{grid-template-columns:1fr}.property-filter-body{padding:14px}.property-filter-body>fieldset{padding:14px}}

/* История контактов в карточке обращения. */
#interaction-form{display:grid;gap:14px;margin-top:18px;padding-top:18px;border-top:1px solid var(--border,#ded8cc)}
#interaction-form>label,#interaction-form .form-grid label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#334b45}
#interaction-form select,#interaction-form input,#interaction-form textarea{width:100%;border:1px solid #d8d1c5;border-radius:9px;background:#fff;padding:11px 12px;color:#173f36;font:inherit}
#interaction-form textarea{min-height:82px;resize:vertical}
.interaction-row{padding:14px 0;border-bottom:1px solid #e5dfd4}
.interaction-row>div{display:flex;align-items:center;justify-content:space-between;gap:12px}
.interaction-row p{margin:9px 0 5px;color:#173f36;line-height:1.45}
.interaction-row time,.interaction-row small,.comment-meta{display:block;color:#778680;font-size:12px}
.interaction-row.is-merged{background:#f9f7fc;margin:0 -14px;padding:14px;border-radius:8px}
.merged-badge{display:inline-flex;align-items:center;gap:4px;margin-top:6px;padding:3px 8px;border-radius:999px;background:#eee9f8;color:#684d91;font-style:normal;font-size:10px;font-weight:650}

/* Объединение задвоенных обращений (только админ) */
.appeals-toolbar .toolbar-actions{display:flex;align-items:center;gap:16px}
.merge-mode-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;user-select:none;font-size:12px;color:var(--slate);font-weight:600}
.merge-mode-toggle input{position:absolute;opacity:0;width:0;height:0}
.merge-mode-track{position:relative;width:36px;height:20px;border-radius:999px;background:var(--line);transition:background .16s}
.merge-mode-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:left .16s}
.merge-mode-toggle input:checked+.merge-mode-track{background:var(--orange)}
.merge-mode-toggle input:checked+.merge-mode-track .merge-mode-thumb{left:18px}
.merge-mode-hint{margin:0 0 14px;padding:10px 14px;border:1px solid #f4c7b2;border-radius:8px;background:#fff6ee;color:#8a5a2e;font-size:12px}
body.appeals-merge-mode .appeal-card-grid>button[data-id]{cursor:grab}
body.appeals-merge-mode .appeal-card-grid>button.is-merge-dragging{opacity:.4}
body.appeals-merge-mode .appeal-card-grid>button.is-merge-target{outline:3px solid var(--orange);outline-offset:-3px;background:#fff6ee}
.appeal-merge-modal{width:min(640px,92vw)}
.merge-pair{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-bottom:16px}
.merge-arrow{color:var(--muted);font-size:20px}
.merge-card{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:13px;display:grid;gap:6px}
.merge-card strong{font-size:14px;color:var(--green)}
.merge-card-client{font-size:12px;color:var(--slate);font-weight:600}
.merge-card p{margin:0;font-size:12px;color:var(--slate)}
.merge-card small{color:var(--muted);font-size:11px}
.merge-card-missing{padding:13px;color:var(--muted);font-size:12px}
.merge-ai-block{border-radius:8px;background:#f5f9fd;padding:12px 14px;margin-bottom:12px;font-size:13px;line-height:1.5;color:var(--slate)}
.merge-ai-example{margin:8px 0 0;color:var(--muted);font-size:12px;font-style:italic}
.merge-loading{color:var(--muted);font-size:12px}
.merge-result-preview{margin:0;padding:10px 14px;border-radius:8px;background:#f6fbf7;color:#3d9455;font-size:12px;font-weight:600}
.drawer-control{display:flex;align-items:center;justify-content:space-between;gap:16px}
.drawer-control>strong{font-family:Georgia,serif;font-size:22px;color:#123f35}
/* Центр уведомлений в верхней панели. */
.notification-menu{position:relative}.icon-button span.notification-dot{position:absolute;top:2px;right:2px;left:auto;width:auto;min-width:17px;height:17px;padding:0 4px;border:2px solid var(--surface);border-radius:999px;background:var(--orange);color:#fff;font-size:10px;font-weight:700;line-height:13px;text-align:center;box-shadow:0 0 0 1px rgba(0,0,0,.05)}.notification-dropdown{position:absolute;top:46px;right:0;z-index:10020;width:min(420px,calc(100vw - 28px));max-height:480px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 18px 55px rgba(27,51,45,.2);overflow:hidden}.notification-dropdown-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid var(--line)}.notification-dropdown-head strong{font-size:13px}.notification-dropdown-head span{display:flex;gap:8px}.notification-dropdown-head button{border:0;background:transparent;color:var(--green);font-size:10px;cursor:pointer}.notification-list{max-height:420px;overflow:auto}.notification-item{position:relative;display:flex;width:100%;border-bottom:1px solid var(--line);background:transparent}.notification-item.unread{background:#f2f6f2}.notification-open{flex:1;min-width:0;border:0;background:transparent;padding:13px 40px 13px 15px;text-align:left;cursor:pointer}.notification-item strong{display:block;margin-bottom:4px;color:var(--slate);font-size:11px}.notification-item p{margin:0;color:var(--muted);font-size:10px;line-height:1.45}.notification-item time{display:block;margin-top:6px;color:#9a9a93;font-size:9px}.notification-delete{position:absolute;top:10px;right:10px;width:24px;height:24px;border:0;border-radius:50%;background:transparent;color:#999;font-size:17px;line-height:1;cursor:pointer}.notification-delete:hover{background:#f1e7e3;color:#b5482a}.notification-empty{margin:0;padding:22px 15px;color:var(--muted);font-size:10px;text-align:center}

/* Draft marker shared by object lists and XML feed editor. */
.draft-mark{display:inline-flex;margin-left:8px;padding:3px 7px;border-radius:999px;background:#fff0d9;color:#9a5a00;font-style:normal;font-size:10px;font-weight:700;line-height:1;vertical-align:middle;text-transform:uppercase;letter-spacing:.04em}
.feed-review-mark{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eef3f0;color:#486458;font-style:normal;font-size:11px;font-weight:700}

/* XML feeds administration. */
.feeds-page{padding:30px 34px 44px;display:grid;gap:22px}.feed-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.feed-stats article,.feed-stat-grid>div{border:1px solid var(--line,#dedbd3);border-radius:14px;background:#fff;padding:16px;display:grid;gap:7px}.feed-stats span,.feed-stat-grid span{font-size:12px;color:#7b817d}.feed-stats b,.feed-stat-grid b{font-family:Georgia,serif;font-size:25px;color:#123f35}.feeds-panel{border:1px solid var(--line,#dedbd3);border-radius:16px;background:#fff;overflow:hidden}.feeds-table{width:100%;border-collapse:collapse}.feeds-table th,.feeds-table td{padding:15px 16px;border-bottom:1px solid #eeeae2;text-align:left;font-size:13px}.feeds-table th{font-size:11px;color:#717875;text-transform:uppercase;letter-spacing:.04em}.feeds-table td strong,.feeds-table td small{display:block}.feeds-table td small{margin-top:4px;color:#929894}.feed-edit{border:1px solid #d9d7d0;border-radius:9px;background:#fff;padding:8px 11px;cursor:pointer}.feed-state{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f3f1ed;font-style:normal;font-size:11px}.feed-state.active{background:#e4f0e9;color:#1d624c}.feed-empty{padding:36px;text-align:center;color:#818783}.feed-editor-layer{z-index:4100}.feed-editor{width:min(1120px,calc(100vw - 48px));height:min(900px,calc(100vh - 48px));background:#fbfaf7;border-radius:18px;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;box-shadow:0 24px 80px rgba(22,37,32,.28)}.feed-editor-body{overflow:auto;padding:22px;display:grid;gap:18px}.feed-editor-body section{border:1px solid #dedbd3;border-radius:14px;background:#fff;padding:18px;display:grid;gap:14px}.feed-editor-body h3{margin:0;color:#173f36}.feed-editor-body label{display:grid;gap:7px;font-size:12px;font-weight:600;color:#4e5955}.feed-editor-body input,.feed-editor-body textarea{width:100%;border:1px solid #d9d6ce;border-radius:9px;padding:10px 12px;background:#fff;font:inherit;box-sizing:border-box}.feed-editor-body textarea{font-family:Consolas,Monaco,monospace;font-size:12px;line-height:1.5;resize:vertical}.feed-url-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:end}.feed-url-row label{margin:0}.feed-url-row button,.feed-url-row a{height:38px;display:inline-flex;align-items:center;padding:0 12px;border:1px solid #d9d6ce;border-radius:8px;background:#fff;color:#173f36;text-decoration:none;cursor:pointer}.feed-template-head p,.feed-properties-head p{margin:5px 0 0;color:#7d8581;font-size:12px}.feed-template-head code{background:#f3f1ed;padding:2px 4px;border-radius:4px}.feed-properties-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.feed-properties-head input{max-width:340px}.feed-property-list{display:grid;gap:7px;max-height:360px;overflow:auto}.feed-property-item{display:grid!important;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;border:1px solid #e3e0d8;border-radius:10px;padding:10px 12px;cursor:pointer}.feed-property-item input{width:auto}.feed-property-item span{display:grid;gap:3px}.feed-property-item small{color:#838984;font-weight:400}.feed-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.feed-last-error{margin:0;padding:10px;border-radius:8px;background:#fff1ef;color:#9b3d31}.danger-button{border:1px solid #d8a39a;background:#fff;color:#9b3d31;border-radius:9px;padding:10px 14px}.team-editor-foot>span{flex:1}.feed-loading{color:#868d89;text-align:center;padding:18px}
@media(max-width:900px){.feed-stats,.feed-stat-grid{grid-template-columns:repeat(2,1fr)}.feed-editor{width:100vw;height:100vh;border-radius:0}.feed-url-row{grid-template-columns:1fr}.feed-properties-head{align-items:stretch;flex-direction:column}.feed-properties-head input{max-width:none}}

.feed-variable-catalog{margin:12px 0;border:1px solid var(--line);border-radius:8px;background:#fafaf7}.feed-variable-catalog summary{padding:10px 12px;cursor:pointer;font-size:11px;font-weight:700}.feed-variable-list{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 12px}.feed-variable-list code{padding:4px 6px;border:1px solid var(--line);border-radius:5px;background:var(--surface);font-size:9px}.feed-template-help{font-size:10px;line-height:1.55;color:var(--muted)}

/* Обращения: компактная отметка совместной сделки. */
.joint-deal-mark{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;width:18px;height:18px;border-radius:50%;background:var(--surface-soft,#eef3ef);color:var(--primary,#174c3a);font-size:12px;font-style:normal;font-weight:700;vertical-align:middle}
.joint-participants{display:block;margin-top:4px;color:var(--muted,#7a847f);font-size:11px;font-weight:400;line-height:1.35}
.joint-participants span{color:inherit}

/* Object workflow, compact marketplace badges and quick publication. */
.review-mark{display:inline-flex;margin-left:8px;padding:3px 7px;border-radius:999px;background:#fff0d9;color:#9a5a00;font-style:normal;font-size:10px;font-weight:700;line-height:1;vertical-align:middle;text-transform:uppercase;letter-spacing:.04em}.property-status.workflow-review{background:#fff0d9;color:#8b681c}.property-status.workflow-draft{background:#ecebe7;color:#6e746f}.property-status.workflow-active{background:var(--sage);color:#467064}.property-mini-badges{display:flex!important;flex-wrap:wrap;gap:5px;margin-top:7px}.property-mini-badges>span{display:inline-flex!important;align-items:center;min-height:22px;border:1px solid #dedbd2;border-radius:999px;background:#f7f6f2;padding:2px 7px;color:#63736d!important;font-size:9px!important;font-style:normal!important;line-height:1}.property-mini-badges .cian{background:#eef6ff;color:#2868a8!important}.property-mini-badges .cian.linked{cursor:pointer;text-decoration:underline}.property-mini-badges .property-fake-badge{background:#fbe4e0;color:#a13a2a!important;border-color:#e8b6ac;font-weight:700!important;text-transform:uppercase;letter-spacing:.03em}.property-card-publication-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.property-card-publication-head h3{margin-bottom:0}.property-card-publication-head span{color:var(--muted);font-size:10px}.property-card-publication .option-grid{margin-top:14px}.property-card-publication>button{display:block;margin:12px 0 0 auto;border:0;border-radius:6px;background:var(--green);padding:9px 12px;color:#fff;font-size:11px;cursor:pointer}.property-card-publication>button:disabled{opacity:.45;cursor:not-allowed}

/* XML feed object metadata and CIAN statistics. */
.feed-api-key{display:grid;gap:6px;margin-top:12px}.feed-api-key small{color:var(--muted);font-size:10px}.feed-stats-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.feed-stats-head button{border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:8px 10px;color:var(--green);font-size:10px;cursor:pointer}.feed-property-item{display:block!important}.feed-property-check{display:flex;align-items:center;gap:10px}.feed-property-meta{display:grid;grid-template-columns:140px minmax(180px,1fr) minmax(180px,1fr);gap:8px;margin:10px 0 4px 28px}.feed-property-meta label{display:grid;gap:4px;color:var(--muted);font-size:9px}.feed-property-meta input{min-width:0;height:32px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:0 8px;color:var(--slate);font-size:10px}.feed-item-stats{grid-column:1/-1;color:var(--muted);font-size:10px}.feed-item-stats b{color:var(--green)}@media(max-width:900px){.feed-property-meta{grid-template-columns:1fr}}

/* XML feed object browser: server-paged list for large feeds. */
.feed-row-actions{display:flex;gap:6px;justify-content:flex-end}.feed-row-actions button,.feed-show-objects{border:1px solid #d9d7d0;border-radius:9px;background:#fff;padding:8px 11px;cursor:pointer;white-space:nowrap}.feed-show-objects{color:#1d624c;background:#f2f7f4}.feed-objects-layer{z-index:4200}.feed-objects-modal{width:min(1080px,calc(100vw - 48px));height:min(820px,calc(100vh - 48px));background:#fbfaf7;border-radius:18px;display:grid;grid-template-rows:auto auto auto 1fr auto;overflow:hidden;box-shadow:0 24px 80px rgba(22,37,32,.28)}.feed-objects-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 210px auto;gap:8px;padding:16px 20px 10px}.feed-objects-toolbar input,.feed-objects-toolbar select,.feed-objects-toolbar button{height:38px;border:1px solid #d9d6ce;border-radius:8px;background:#fff;padding:0 11px}.feed-objects-toolbar button{cursor:pointer;color:#173f36}.feed-objects-summary{padding:0 20px 10px;color:#7b817d;font-size:11px}.feed-objects-list{overflow:auto;padding:0 20px 16px;display:grid;align-content:start;gap:8px}.feed-object-row{border:1px solid #e3e0d8;border-radius:10px;background:#fff;padding:11px 12px;display:grid;grid-template-columns:minmax(300px,1fr) auto;gap:8px 16px;align-items:center}.feed-object-select{display:flex;align-items:flex-start;gap:10px}.feed-object-select input{margin-top:3px}.feed-object-select span{display:grid;gap:3px}.feed-object-select small{color:#838984}.feed-object-side{display:grid;justify-items:end;gap:5px;font-size:10px;color:#7d8581}.feed-object-side a{color:#2868a8}.feed-object-error{grid-column:1/-1;display:flex;gap:8px;align-items:flex-start;border-left:3px solid #d7644b;background:#fff2ef;color:#914131;border-radius:6px;padding:7px 9px;font-size:10px}.feed-object-error b{white-space:nowrap}.feed-objects-pager{padding:12px 20px;border-top:1px solid #e3e0d8;display:flex;justify-content:center;align-items:center;gap:12px}.feed-objects-pager button{border:1px solid #d9d6ce;border-radius:8px;background:#fff;padding:8px 12px;cursor:pointer}.feed-objects-pager button:disabled{opacity:.45;cursor:default}.property-feed-errors{display:grid!important;gap:4px;margin-top:6px}.property-feed-errors>span{display:block!important;border-left:3px solid #d7644b;border-radius:5px;background:#fff1ee;padding:5px 7px;color:#9a4334!important;font-size:9px!important;line-height:1.3!important}.property-feed-errors b{display:block;margin-bottom:2px;font-size:9px}.feed-url-row+ .feed-url-row{margin-top:8px}@media(max-width:800px){.feed-objects-toolbar{grid-template-columns:1fr}.feed-object-row{grid-template-columns:1fr}.feed-object-side{justify-items:start}}


/* Appeals: compact cross-contact match banner (2026-08-10) */
#appeal-contact-match.appeal-contact-match,[id="appeal-contact-match"]{grid-column:1 / -1;display:block;box-sizing:border-box;width:100%;margin:2px 0 4px;padding:9px 11px;border:1px solid #e7d6c4;border-radius:10px;background:#fffaf5;color:#34433d;line-height:1.35}
#appeal-contact-match[hidden]{display:none!important}
#appeal-contact-match>strong{display:block;margin:0 0 5px;font-size:12px;font-weight:700;color:#315247}
#appeal-contact-match>small{display:block;margin-top:4px;font-size:10px;color:#7b817e}
#appeal-contact-match .appeal-contact-match-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:6px}
#appeal-contact-match .appeal-use-contact{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:1px 10px;align-items:center;width:100%;min-height:44px;padding:7px 9px;border:1px solid #e5ddd3;border-radius:8px;background:#fff;text-align:left;cursor:pointer;font:inherit;color:inherit}
#appeal-contact-match .appeal-use-contact:hover{border-color:#d76537;background:#fffdfb}
#appeal-contact-match .appeal-use-contact span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:650}
#appeal-contact-match .appeal-use-contact small{grid-column:1;font-size:9px;color:#7a817d}
#appeal-contact-match .appeal-use-contact b{grid-column:2;grid-row:1 / 3;align-self:center;font-size:10px;font-weight:700;color:#d75f31}

/* Properties: existing owner contact match, same visual pattern as appeals. */
#property-owner-match.property-owner-match{display:block;box-sizing:border-box;width:100%;margin:8px 0 10px;padding:9px 11px;border:1px solid #e7d6c4;border-radius:10px;background:#fffaf5;color:#34433d;line-height:1.35}
#property-owner-match[hidden]{display:none!important}
#property-owner-match>strong{display:block;margin:0 0 5px;font-size:12px;font-weight:700;color:#315247}
#property-owner-match>small{display:block;margin-top:5px;font-size:10px;color:#7b817e}
#property-owner-match .property-owner-match-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:6px}
#property-owner-match .property-use-owner{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:1px 10px;align-items:center;width:100%;min-height:44px;padding:7px 9px;border:1px solid #e5ddd3;border-radius:8px;background:#fff;text-align:left;cursor:pointer;font:inherit;color:inherit}
#property-owner-match .property-use-owner:hover{border-color:#d76537;background:#fffdfb}
#property-owner-match .property-use-owner span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:650}
#property-owner-match .property-use-owner small{grid-column:1;font-size:9px;color:#7a817d}
#property-owner-match .property-use-owner b{grid-column:2;grid-row:1 / 3;align-self:center;font-size:10px;font-weight:700;color:#d75f31}
.crm-loading-overlay{position:fixed;inset:0;z-index:2000;background:rgba(23,30,26,.55);display:flex;align-items:center;justify-content:center}
.crm-loading-spinner{background:#fff;border-radius:12px;padding:20px 28px;display:flex;align-items:center;gap:12px;font-size:13px;color:var(--slate);font-weight:600}
.crm-loading-spinner span{width:18px;height:18px;border:3px solid var(--line);border-top-color:var(--orange);border-radius:50%;animation:crm-spin .8s linear infinite}
@keyframes crm-spin{to{transform:rotate(360deg)}}
.feed-editor-layer,.feed-objects-layer{justify-content:center;align-items:center}.feed-editor-layer[hidden],.feed-objects-layer[hidden]{display:none}
.feed-reset-preset{border:1px solid #d9d7d0;border-radius:9px;background:#fff;padding:7px 11px;cursor:pointer;justify-self:start}

.feed-objects-modal{grid-template-rows:auto auto auto auto auto 1fr auto}.feed-objects-toolbar{grid-template-columns:minmax(220px,1fr) 190px 190px auto}
.feed-objects-tools{display:flex;gap:8px;padding:0 20px 10px}.feed-objects-tools button{height:36px;border:1px solid #cfe3d8;border-radius:8px;background:#eef7f2;color:#1d624c;font-weight:600;padding:0 14px;cursor:pointer}.feed-objects-tools button:hover{background:#dff0e7}
.feed-totals{display:flex;flex-wrap:wrap;gap:8px;padding:0 20px 10px}.feed-totals:empty{display:none}.ft{flex:1 1 118px;border-radius:12px;padding:10px 12px;display:grid;gap:2px;color:#fff}.ft b{font-size:20px;font-family:Georgia,serif}.ft span{font-size:11px;opacity:.92}
.ft-views{background:linear-gradient(135deg,#2f6fdf,#4f8ef7)}.ft-shows{background:linear-gradient(135deg,#6b4fd8,#8a72ee)}.ft-calls{background:linear-gradient(135deg,#1f9a63,#39b880)}.ft-chats{background:linear-gradient(135deg,#0f8f9d,#2fb4c2)}.ft-fav{background:linear-gradient(135deg,#d6467a,#ee6a98)}.ft-resp{background:linear-gradient(135deg,#e07a1f,#f3a04a)}.ft-ctr{background:linear-gradient(135deg,#40495a,#5b667c)}.ft-ok{background:linear-gradient(135deg,#1d624c,#2f8a6d)}.ft-err{background:linear-gradient(135deg,#c8352f,#e5564f)}.ft-note{flex:1 1 100%;margin:0;font-size:11px;color:#7b817d}
.feed-object-row{grid-template-columns:132px 1fr;align-items:stretch;gap:14px;padding:12px;border-left:4px solid #d9d6ce}.feed-object-row.is-on{border-left-color:#1f9a63;background:linear-gradient(90deg,#f5fbf8,#fff 40%)}
.feed-object-photo{width:132px;height:100px;border-radius:10px;overflow:hidden;background:#eceae4;display:grid;place-items:center;color:#9a9f9b;font-size:11px}.feed-object-photo img{width:100%;height:100%;object-fit:cover;display:block}
.feed-object-main{display:grid;gap:8px;align-content:start;min-width:0}.feed-object-select strong{font-size:14px}
.feed-object-badges{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.fb{font-style:normal;font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;text-decoration:none}.fb-on{background:#dff3e8;color:#1a7a52}.fb-off{background:#eeece7;color:#7b817d}.fb-cian{background:#e3edff;color:#2456b8}.fb-warn{background:#fff0d9;color:#a8620d}.fb-link{background:#f3f1ed;color:#173f36}
.feed-metrics{display:flex;flex-wrap:wrap;gap:6px}.fm{display:grid;gap:1px;min-width:78px;padding:6px 10px;border-radius:9px}.fm b{font-size:15px}.fm small{font-size:10px;opacity:.85}
.fm-views{background:#e3edff;color:#2456b8}.fm-shows{background:#ece6ff;color:#553bc0}.fm-calls{background:#dff3e8;color:#1a7a52}.fm-chats{background:#dcf3f5;color:#0b6f7b}.fm-fav{background:#fde6ee;color:#b3306a}.fm-resp{background:#ffefdb;color:#a8620d}.fm-ctr{background:#eceef3;color:#3e4759}
.fm-empty{font-size:11px;color:#9a9f9b}.fm-updated{font-size:10px;color:#9a9f9b}
@media(max-width:700px){.feed-object-row{grid-template-columns:1fr}.feed-object-photo{width:100%;height:150px}.feed-objects-toolbar{grid-template-columns:1fr}}

/* Карточки объектов: фото всегда у верхнего края (button центрирует содержимое по вертикали) */
.property-product-card{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch}
.property-product-card .product-photo{flex:0 0 170px;width:100%}
.property-product-card .product-copy{width:100%;flex:1 1 auto;align-content:start}

/* Отметки доступности в списке */
.availability-note{display:inline-block;margin-top:2px;border-radius:5px;padding:3px 7px;font-size:11px;font-weight:600;line-height:1.3}
.availability-note.archive{background:#ececec;color:#5b6360}
.availability-note.occupied{background:#fdf1dc;color:#8a5a12}
.availability-note.sold{background:#e6ecf7;color:#2f4a80}
/* Аномалии (админ) */
.anomalies-panel{width:min(860px,96vw);max-height:92dvh;margin:4dvh auto;display:flex;flex-direction:column;gap:12px;overflow:auto;border-radius:14px;background:#faf9f5;padding:20px;box-shadow:0 24px 70px rgba(23,59,50,.25)}
.anomalies-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.anomalies-head h2{margin:0 0 4px}
.anomalies-head span{color:var(--slate);font-size:13px}
.anomalies-toolbar{display:flex;flex-wrap:wrap;gap:8px}
.anomalies-toolbar input,.anomalies-toolbar select{min-width:0;flex:1 1 180px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:9px 11px}
.anomalies-summary{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--slate)}
.anomalies-list{display:grid;gap:10px}
.anomaly-item{display:flex;gap:14px;justify-content:space-between;align-items:flex-start;border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px 14px}
.anomaly-main{display:grid;gap:4px;min-width:0}
.anomaly-main small{color:var(--slate)}
.anomaly-main ul{margin:4px 0 0;padding-left:18px;font-size:13px}
.anomaly-main li em{color:var(--slate);font-style:normal;font-size:12px}
.anomaly-actions{display:grid;gap:6px;flex:0 0 auto}
.anomalies-empty,.am-empty{margin:8px 0;color:var(--slate);font-size:13px}
.am-button{border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 12px;font-size:13px;cursor:pointer}
.am-button:hover{border-color:#9fc0b2;background:var(--sage)}
.am-button:disabled{opacity:.6;cursor:default;background:#fff}
.am-actions{margin-top:2px}
@media(max-width:640px){.anomaly-item{flex-direction:column}.anomaly-actions{grid-template-columns:1fr 1fr;width:100%}}

/* Подходящие заявки в карточке объекта */
.property-appeal-matches{display:grid;gap:10px;margin:14px 0;border:1px solid var(--line);border-radius:10px;background:#fff;padding:14px}
.am-item{display:grid;gap:6px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:13px}
.am-item.mine{border-color:#9fc0b2;background:var(--sage)}
.am-item.foreign{border-color:#e2c27a;background:#fff8e8}
.am-item ul{margin:0;padding-left:18px;color:var(--slate)}
.am-item small{color:var(--slate)}
.am-params{display:flex;flex-wrap:wrap;gap:5px}
.am-params span{border-radius:5px;background:rgba(0,0,0,.05);padding:2px 7px;font-size:12px}
.property-appeal-matches[hidden]{display:none}

/* Баннер «Установить на телефон» (PWA — ярлык на рабочем столе). */
.pwa-install-banner { position:fixed; left:12px; right:12px; bottom:12px; z-index:9500; display:flex; align-items:center; gap:12px; border:1px solid var(--line); border-radius:12px; background:var(--surface); padding:14px 14px 14px 16px; box-shadow:0 14px 40px rgba(23,59,50,.22); animation:pwaBannerIn .22s ease-out; }
.pwa-install-text { flex:1; min-width:0; color:var(--slate); font-size:13px; line-height:1.4; }
.pwa-install-actions { display:flex; align-items:center; gap:8px; flex:0 0 auto; }
.pwa-install-go { height:38px; border:0; border-radius:7px; background:var(--orange); padding:0 16px; color:#fff; font-size:12px; font-weight:600; cursor:pointer; white-space:nowrap; }
.pwa-install-go:hover { background:var(--orange-dark); }
.pwa-install-close { display:grid; width:30px; height:30px; place-items:center; border:0; border-radius:50%; background:transparent; color:var(--muted); font-size:16px; cursor:pointer; }
.pwa-install-close:hover { background:#f1f3ee; }
@keyframes pwaBannerIn { from { opacity:0; transform:translateY(12px); } }
@media (min-width:640px) { .pwa-install-banner { left:auto; right:24px; bottom:24px; max-width:380px; } }

/* Личные настройки: разделы меню — компактный перетаскиваемый список */
.sidebar-prefs-list { display:flex; flex-direction:column; gap:6px; }
.sidebar-pref-row { display:flex; align-items:center; gap:10px; border:1px solid var(--line); border-radius:8px; background:#faf9f5; padding:9px 12px; cursor:grab; transition:border-color .15s, box-shadow .15s; }
.sidebar-pref-row:hover { border-color:#b9c7c0; }
.sidebar-pref-row:active { cursor:grabbing; }
.sidebar-pref-row.is-dragging { opacity:.45; }
.sidebar-pref-row.drag-over-before { box-shadow:inset 0 2px 0 var(--orange); }
.sidebar-pref-row.drag-over-after { box-shadow:inset 0 -2px 0 var(--orange); }
.sidebar-pref-drag { flex:0 0 auto; color:var(--muted); font-size:13px; line-height:1; letter-spacing:-2px; user-select:none; }
.sidebar-pref-row label { display:flex; align-items:center; gap:9px; margin:0; color:var(--green); font-size:13px; font-weight:500; cursor:pointer; }
.sidebar-pref-row input[type="checkbox"] { width:16px; height:16px; accent-color:var(--orange); }
.feed-pending{color:#a8620d;font-weight:600}.feed-rules small{display:block;margin-top:4px;color:#838984;font-weight:400;line-height:1.35}

.fb-days-wrap{display:inline-flex;align-items:center;gap:8px}.fb-days{background:#e8f1ff;color:#2456b8;border:1px dashed #9db9ee;cursor:pointer}.fb-days:hover{background:#d8e7ff}.fb-days-left{color:#7b817d;font-size:11px}
.feed-days-edit{display:grid;gap:8px;padding:10px 12px;border-radius:10px;background:#f2f6ff;border:1px solid #cfdcf7}.feed-days-edit b{font-size:12px;color:#2456b8}.feed-days-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.feed-days-row input,.feed-days-row button{height:34px;border:1px solid #cfd6e6;border-radius:8px;background:#fff;padding:0 10px}.feed-days-row button{cursor:pointer}.feed-days-row .fd-save{background:#1d624c;color:#fff;border-color:#1d624c;font-weight:600}.fd-preview{color:#5a6784;font-size:11px}

/* Кнопки действий в карточке обращения — по две в ряд */
.drawer-actions,.drawer-actions:has([data-action="ics"]:not([hidden])) { grid-template-columns:repeat(2,1fr); border-bottom:0; }
.drawer-actions button,.drawer-actions:has([data-action="ics"]:not([hidden])) button:nth-child(-n+2) { border-bottom:1px solid var(--line); border-right:1px solid var(--line); }
.drawer-actions button:nth-child(2n),.drawer-actions:has([data-action="ics"]:not([hidden])) button:nth-child(2n) { border-right:0; }
.drawer-actions button[hidden] { display:none; }

/* ID объекта: крупнее в карточке объекта, ссылкой в карточке обращения */
.property-drawer-head [data-property="number"]{font-size:18px;letter-spacing:.04em}
.appeal-drawer [data-appeal="propertyId"] a{color:var(--orange);font-weight:600;text-decoration:underline}

/* Плитки статистики объектов: три из четырёх — кнопки-фильтры (кликабельны) */
.property-stats button.stat-clickable{font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.property-stats button.stat-clickable:hover{border-color:#9fc0b2;box-shadow:0 4px 14px rgba(23,59,50,.08)}
.property-stats button.stat-clickable.active{border-color:var(--green);background:var(--sage);box-shadow:inset 0 0 0 1px var(--green)}
/* «Только мои объекты» — чекбокс в основной панели фильтров */
.property-mine-filter{display:flex!important;align-items:center;gap:7px;white-space:nowrap;color:var(--slate);font-size:12px}
.property-mine-filter input{width:16px;height:16px;accent-color:var(--green);cursor:pointer}
/* Сортировка в тулбаре списка объектов */
.property-sort{display:flex;align-items:center;gap:8px;margin-left:auto;margin-right:16px;color:var(--muted);font-size:12px}
.property-sort+.selection-mode-toggle{margin-left:0}
.property-sort select{height:34px;border:1px solid var(--line);border-radius:7px;background:#faf9f5;padding:0 10px;color:var(--slate);font-size:12px}
@media(max-width:760px){.property-toolbar{flex-wrap:wrap}.property-sort{order:1;width:100%}}

.property-badges-stack{display:block!important}
.property-feed-chips{display:flex!important;flex-wrap:wrap;gap:5px;margin-top:5px}
.property-feed-chip{display:inline-flex;align-items:center;min-height:20px;border-radius:999px;padding:2px 8px;font-size:9px;font-weight:700;line-height:1;border:1px solid transparent;white-space:nowrap}
.property-feed-chip.feed-c0{background:#e3f0ff;color:#1f5da8;border-color:#bcd7f5}
.property-feed-chip.feed-c1{background:#e4f5e8;color:#1f7a3d;border-color:#b9e0c3}
.property-feed-chip.feed-c2{background:#fdecd8;color:#9b5a12;border-color:#f1d1a6}
.property-feed-chip.feed-c3{background:#f1e6fb;color:#6a2fa3;border-color:#d8c1ef}
.property-feed-chip.feed-c4{background:#fde4ea;color:#a12b4b;border-color:#f2bccb}
.property-feed-chip.feed-c5{background:#dff5f3;color:#17766f;border-color:#b3e0dc}
.property-feed-chip.feed-c6{background:#fff4c9;color:#8a6d00;border-color:#ecdc8c}
.property-feed-chip.feed-c7{background:#e8e8f7;color:#3a3f9a;border-color:#c9cbed}

.description-field{display:grid;gap:6px}
.description-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:12px;font-weight:600;color:var(--slate)}
.description-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.description-tools .link-button{border:0;background:none;padding:0;color:var(--orange);font-size:12px;font-weight:600;cursor:pointer}
.description-tools .link-button:hover{text-decoration:underline}
.description-tools .link-button:disabled{opacity:.5;cursor:default;text-decoration:none}
.description-status{font-size:11px;font-weight:400;color:var(--muted)}
.rte-toolbar{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:4px;border:1px solid var(--line);border-bottom:0;border-radius:8px 8px 0 0;background:#f7f6f2}
.rte-toolbar button{min-width:30px;height:28px;padding:0 8px;border:1px solid transparent;border-radius:6px;background:transparent;font-size:12px;color:var(--slate);cursor:pointer}
.rte-toolbar button:hover{background:#fff;border-color:var(--line)}
.rte-sep{width:1px;height:18px;background:var(--line);margin:0 2px}
.rte-editor{min-height:150px;max-height:320px;overflow:auto;padding:10px 12px;border:1px solid var(--line);border-radius:0 0 8px 8px;background:#fff;font-size:13px;line-height:1.55;color:#1f2b27;outline:none;resize:vertical}
.rte-editor:focus{border-color:var(--green)}
.rte-editor:empty:before{content:attr(data-placeholder);color:#9aa5a0}
.rte-editor p{margin:0 0 8px}
.rte-editor ul,.rte-editor ol{margin:0 0 8px;padding-left:22px}
.description-field.is-expanded .rte-editor{min-height:55vh;max-height:70vh}

.property-drawer-actions{display:flex!important}
.property-drawer-actions button{position:relative;flex:1 1 0;display:flex;align-items:center;justify-content:center;border-right:1px solid var(--line)}
.property-drawer-actions button[hidden]{display:none}
.property-drawer-actions button:last-child{border-right:0}
.property-drawer-actions button:hover{background:#f1f5f2}
.property-drawer-actions button:focus-visible{outline:2px solid var(--green);outline-offset:-2px}
.property-drawer-actions button[data-tip]::after{content:attr(data-tip);position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);z-index:20;width:max-content;max-width:240px;padding:6px 10px;border-radius:8px;background:#1f2a26;color:#fff;font-size:12px;line-height:1.35;text-align:center;white-space:normal;opacity:0;pointer-events:none;transition:opacity .12s}
.property-drawer-actions button[data-tip]:hover::after,.property-drawer-actions button[data-tip]:focus-visible::after{opacity:1}
.property-drawer-actions button:first-child[data-tip]::after{left:0;transform:none}
.property-drawer-actions button:last-child[data-tip]::after{left:auto;right:0;transform:none}
/* Объединение обращений перетаскиванием работает только на компьютере — на телефоне переключатель скрыт */
@media(max-width:760px){.merge-mode-toggle{display:none!important}}
.property-product-card .product-agent{color:var(--muted,#7b817d)}.property-product-card .product-agent b{color:var(--green,#173b32);font-weight:600}
