/* DTM visual system. BRAVO / MK density, one shared surface and control scale.
   Module-specific structure lives in index.html and dtm-mk-chat.css. */
#syncConflictResolve[hidden]{display:none!important}
:root {
  /* Canvas deeper than surfaces - white work areas read as one layer, not gray fog */
  --bg:#f2f4f7; --surface:#fff; --surface-2:#f7f8fa; --surface-3:#edf0f4;
  --line:#dce2e8; --line-strong:#bdc7d4; --text:#0f172a; --muted:#556579;
  --blue:#2563eb; --blue-hover:#1d4ed8; --blue-soft:#eef3ff;
  /* Shared light navigation with blue selection and neutral work surfaces. */
  --brand-red:#c53732; --sidebar-bg:#ffffff; --sidebar-line:var(--line);
  --sidebar-text:var(--text); --sidebar-muted:var(--muted); --sidebar-section:var(--muted);
  --sidebar-hover:var(--surface-2); --sidebar-active:var(--blue-soft); --sidebar-focus:var(--blue);
  --accent:var(--blue); --accent-hover:var(--blue-hover); --accent-soft:var(--blue-soft); --accent-ring:rgba(37,99,235,.16);
  --green:#0f7a45; --green-soft:#e5f6ec; --amber:#a16207; --amber-soft:#fff6db;
  --red:#b42318; --red-soft:#fdeceb; --violet:#5b4bd6; --violet-soft:#efebff;
  --danger:var(--red); --ok:var(--green); --font:"Segoe UI",Arial,sans-serif;
  --sidebar-w:248px; --sidebar:var(--sidebar-w); --r:8px; --r-lg:8px; --control-r:6px; --control-h:36px;
  --shadow:0 1px 2px rgba(15,23,42,.05); --shadow-sm:0 1px 2px rgba(15,23,42,.04); --shadow-md:0 10px 28px rgba(15,23,42,.08);
  --motion-fast:120ms; --motion-ui:160ms; --motion-panel:240ms; --motion-toast:200ms;
  --ease-out:cubic-bezier(.22,1,.36,1); --sb-thumb:rgba(15,23,42,.18); --sb-thumb-hover:rgba(15,23,42,.36);
}
*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--sb-thumb) transparent}
*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-thumb{background:var(--sb-thumb);border-radius:6px}*::-webkit-scrollbar-thumb:hover{background:var(--sb-thumb-hover)}*::-webkit-scrollbar-corner{background:transparent}
html{font-size:14px;color-scheme:light}html,body{width:100%;height:100%;margin:0}
body{font:13px/1.5 var(--font);color:var(--text);background:var(--bg);overflow:hidden}
button,input,select,textarea{font:inherit;color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}
button,a{transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast)}
button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--blue);outline-offset:3px;box-shadow:none}
input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield;-moz-appearance:textfield}
.hidden{display:none!important}.muted{color:var(--muted);font-size:inherit}.screen-lead{display:none}

/* Full-width shell, independent navigation, one workspace scroll. */
#appShell.shell{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);width:100%;height:100dvh;min-height:0;flex:1;overflow:hidden}
#appShell>main{display:flex;flex-direction:column;width:100%;min-width:0;min-height:0;overflow:hidden}
aside#appSidebar{position:relative;inset:auto;width:var(--sidebar-w);height:100dvh;min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--sidebar-line);background:var(--sidebar-bg);color:var(--sidebar-text);box-shadow:none;z-index:20}
aside#appSidebar .brand{display:flex;flex-direction:row;align-items:center;gap:9px;padding:7px 14px;min-height:48px;border:0;background:transparent}
aside#appSidebar .brand-mark{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:36px;border:0;border-radius:4px;background:#fff}
aside#appSidebar .brand-mark .app-logo{position:static;width:48px;height:36px;max-width:100%;max-height:100%;object-fit:contain;transform:none;clip-path:none}
.brand-copy{min-width:0}.brand-copy strong{display:block;color:var(--sidebar-text);font-size:15px;line-height:1.15;font-weight:750;letter-spacing:.04em}aside#appSidebar .brand .brand-copy small{display:block;margin-top:2px;font-size:9px;font-weight:650;color:var(--sidebar-muted);letter-spacing:.075em;text-transform:uppercase}
aside#appSidebar nav{padding:0 10px 12px;display:flex;flex-direction:column;gap:3px;overflow:auto;flex:1;min-height:0}
.nav-section{padding:14px 10px 6px;color:var(--sidebar-section);font-size:10px;font-weight:650;letter-spacing:.09em;text-transform:uppercase}.nav-section:first-child{padding-top:4px}
aside#appSidebar nav button,aside#appSidebar .nav-rental-details>summary{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:8px 10px;border:0;border-radius:var(--control-r);background:transparent;color:var(--sidebar-muted);font-size:13px;font-weight:500;text-align:left;cursor:pointer;line-height:1.35;white-space:normal;margin:0}
aside#appSidebar nav button:hover,aside#appSidebar .nav-rental-details>summary:hover{color:var(--sidebar-text);background:var(--sidebar-hover)}
aside#appSidebar nav button.active{color:var(--blue);background:var(--sidebar-active);font-weight:650;box-shadow:inset 3px 0 var(--blue)}
aside#appSidebar nav button:focus-visible,aside#appSidebar .nav-rental-details>summary:focus-visible{outline:2px solid var(--sidebar-focus);outline-offset:1px}
.nav-icon{display:block;flex:0 0 18px;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
aside#appSidebar .nav-rental-details{margin:0;padding:0;border:0}aside#appSidebar .nav-rental-details>summary{list-style:none}aside#appSidebar .nav-rental-details>summary::-webkit-details-marker{display:none}
aside#appSidebar .nav-rental-details>summary::before{display:none}aside#appSidebar .nav-rental-details>summary::after{content:"";width:6px;height:6px;margin-left:auto;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg)}
aside#appSidebar .nav-rental-details[open]>summary::after{transform:rotate(45deg)}aside#appSidebar .nav-rental-details:has(.active)>summary{color:var(--blue)}
aside#appSidebar .nav-rental-sub{display:flex;flex-direction:column;gap:2px;padding:3px 0 3px 14px;margin:0 0 0 18px;border-left:1px solid var(--sidebar-line)}
aside#appSidebar nav button.nav-sub{min-height:32px;padding:6px 10px;font-size:12px}.sidebar-tools,.sidebar-about{display:none}
.session-foot{margin-top:auto;display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:8px;align-items:center;padding:12px 10px;border-top:1px solid var(--sidebar-line);background:var(--sidebar-bg)}
.session-avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--sidebar-active);color:var(--sidebar-text);font-size:11px;font-weight:700}.session-copy{min-width:0}
.session-user-name{color:var(--sidebar-text);font-size:12px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-user-meta{font-size:11px;color:var(--sidebar-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-foot .btn{padding:6px;font-size:11px;border-color:var(--sidebar-line);background:transparent;color:var(--sidebar-muted)}.session-foot .btn:hover{border-color:var(--sidebar-muted);background:var(--sidebar-hover);color:var(--sidebar-text)}
header.bar{display:flex;align-items:center;flex-wrap:nowrap;gap:12px;flex:0 0 48px;height:48px;min-height:48px;max-height:48px;padding:0 18px;background:var(--surface);border-bottom:1px solid var(--line);backdrop-filter:none;z-index:15}
.bar-leading{display:flex;flex:1;align-items:center;gap:10px;min-width:0}.bar-leading .bar-logo-img{display:none}.top-title{min-width:0}
header.bar h1{font-size:18px;font-weight:650;line-height:1.3;letter-spacing:-.02em;margin:0;max-width:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.header-crumb{color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0 0}.header-crumb:empty{display:none}
.bar-trailing{display:flex;align-items:center;gap:8px;flex:0 0 auto;margin-left:auto}
.workspace-frame{position:relative;display:flex;flex:1;min-width:0;min-height:0;width:100%;overflow:hidden;background:var(--bg)}
.content{flex:1;min-width:0;min-height:0;width:100%;max-width:none;margin:0;padding:16px 20px 20px;overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column}
.content > *{flex-shrink:0}
/* Полные реестры растут по содержимому; прокручивается единая рабочая область. */
.content > .list-panel,
.content > .hub-documents,
.content > .notes-screen,
.content > .proj-doc-library{flex:none;min-height:0;width:100%}
.workspace-context{position:relative;flex:0 0 clamp(360px,38vw,560px);min-width:320px;max-width:58vw;height:100%;min-height:0;border-left:1px solid var(--line);background:var(--surface);box-shadow:-10px 0 28px rgba(16,24,40,.06);overflow:hidden;animation:dtm-context-in var(--motion-panel) var(--ease-out)}
.workspace-context[hidden]{display:none}
@keyframes dtm-context-in{from{opacity:.3;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}
.workspace-context-resizer{position:absolute;inset:0 auto 0 -4px;z-index:3;width:8px;cursor:col-resize;touch-action:none}
.workspace-context-resizer::after{content:"";position:absolute;inset:0 auto 0 3px;width:1px;background:transparent}
.workspace-context-resizer:hover::after,.workspace-context.is-resizing .workspace-context-resizer::after{background:var(--blue)}
.workspace-context.is-resizing{user-select:none;transition:none}
.workspace-context-head{display:flex;align-items:flex-start;gap:12px;min-height:62px;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--surface)}
.workspace-context-title{min-width:0;flex:1}.workspace-context-title>span{display:block;color:var(--muted);font-size:10px;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.workspace-context-title h2{margin:3px 0 0;font-size:16px;line-height:1.35;font-weight:650;overflow-wrap:anywhere}
.workspace-context-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.workspace-context-actions .icon-btn{width:34px;min-width:34px;height:34px}
.workspace-context-body{height:calc(100% - 62px);padding:12px 14px 20px;overflow:auto;overscroll-behavior:contain}
.workspace-context-body>.back{display:none}.workspace-context-body>.list-toolbar{align-items:flex-start;padding:0 0 12px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}.workspace-context-body>.list-toolbar .crumb{display:none}
.workspace-context-body>.panel{box-shadow:none}.workspace-context-body table.t th,.workspace-context-body table.t td{padding-left:9px;padding-right:9px}
.list-panel{display:flex;flex-direction:column;min-height:0}
.list-panel .table-wrap,.list-panel .rental-table-wrap,.list-panel > .inner.rental-table-wrap{flex:none;max-height:none;overflow-x:auto;overflow-y:hidden}
.workspace-empty{flex:1;min-height:160px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:24px;color:var(--muted)}
.workspace-empty p{margin:0;font-size:14px;line-height:1.5;max-width:36em}
.btn-menu,.mobile-nav-backdrop{display:none}

/* Controls: 36px standard, 32px compact, 44px touch. */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:var(--control-h);padding:8px 12px;border:1px solid var(--line);border-radius:var(--control-r);background:var(--surface);color:var(--text);font-size:13px;line-height:1.25;font-weight:550;cursor:pointer;white-space:nowrap;box-shadow:none}
.btn:hover{border-color:var(--line-strong);background:var(--surface-2)}.btn.primary{color:#fff;border-color:var(--blue);background:var(--blue);font-weight:600}.btn.primary:hover{color:#fff;background:var(--blue-hover);border-color:var(--blue-hover)}
.btn.sm{min-height:32px;padding:6px 10px;font-size:12px}.btn.ghost{color:var(--muted);background:transparent}.btn.danger{color:var(--red);border-color:#edcbc7;background:var(--surface)}.btn.danger:hover{background:var(--red-soft);filter:none}
.btn:disabled,.btn.disabled,.btn[aria-disabled=true]{opacity:.48;cursor:not-allowed}.btn.full-width{width:100%}
.link,table.t button.link{padding:0;border:0;background:transparent;color:var(--blue);font:inherit;font-weight:550;text-align:left;cursor:pointer}.link:hover{text-decoration:underline}.link.danger-link{color:var(--red)}
.icon-btn,#btnNotif.icon-btn,.bar-more>summary.icon-btn{display:inline-grid;place-items:center;width:36px;min-width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:var(--control-r);background:var(--surface);color:var(--muted);cursor:pointer;position:relative;list-style:none}
.icon-btn:hover{background:var(--surface-2);color:var(--text)}.icon-btn svg{display:block;width:18px;height:18px}#btnNotif .notif-ico{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#btnNotif .badge.new{position:absolute;top:-6px;right:-5px;min-width:18px;min-height:18px;height:18px;padding:2px 4px;border:2px solid var(--surface);background:var(--blue);color:white;font-size:10px}
.bar-more{position:relative}.bar-more>summary::-webkit-details-marker{display:none}.bar-more[open]>summary{background:var(--blue-soft);color:var(--blue)}
.bar-more-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:50;min-width:208px;padding:6px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow-md)}
.bar-more-menu>button{display:block;width:100%;min-height:36px;padding:8px 10px;border:0;border-radius:5px;text-align:left;background:transparent;cursor:pointer}.bar-more-menu>button:hover{background:var(--surface-2)}

/* Registry surfaces and anchored actions. */
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);margin:0 0 14px;overflow:hidden}
.panel h2{padding:12px 16px;color:var(--text);background:var(--surface);border-bottom:1px solid var(--line);border-radius:0;font-size:14px;line-height:1.4;font-weight:650;text-transform:none;letter-spacing:0;margin:0}
.panel .inner{padding:14px 16px;min-width:0}
.list-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:10px 12px;min-height:0;margin:0 0 10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:none}
.panel>.list-toolbar,.fleet-sidebar>.list-toolbar{border:0;border-bottom:1px solid var(--line);margin:0;border-radius:0}
.list-toolbar .meta{color:var(--muted);font-size:12px;margin-left:0;white-space:nowrap}.toolbar-actions{margin-left:auto;display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex:0 0 auto}.list-toolbar .meta+.toolbar-actions{margin-left:auto}
.registry-controls{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1 auto}.registry-controls .registry-select{box-sizing:border-box;flex:1 1 150px;width:auto;min-width:120px;max-width:220px;height:var(--control-h);padding-block:0;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.list-toolbar .btn,.list-toolbar .btn.sm,.list-toolbar .btn.primary{box-sizing:border-box;min-height:var(--control-h);height:var(--control-h);font-size:13px;padding:0 12px;border-radius:var(--control-r);align-self:center}
.list-toolbar--registry .list-search{flex:1 1 240px;max-width:420px}
.list-count,.list-toolbar .list-count,.list-toolbar .meta[data-list-count]{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:var(--control-h);height:var(--control-h);padding:0 10px;border:1px solid var(--line);border-radius:var(--control-r);background:var(--surface-2);color:var(--muted);font-size:12px;font-weight:550;line-height:1;white-space:nowrap;flex:0 0 auto}
table.t tbody tr.row-open{cursor:pointer}table.t tbody tr.row-open:hover{background:var(--blue-soft)}
table.t .cell-num{font-variant-numeric:tabular-nums;font-weight:600;color:var(--text)}
.list-panel table.t td[data-label=Заказчик] .link{font-weight:500;color:var(--blue)}
.list-panel table.t td[data-label=Заказчик] .link:hover{text-decoration:underline}
.row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}
/* Detail heads: back is a text link in the title group, never its own full-width band */
.page-head{align-items:flex-start}
.page-head-main{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;flex:1 1 220px}
.page-head-copy{min-width:0;width:100%}
.page-head-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;min-width:0}
.page-head-title-row>strong,.page-head-title-row>h2,.page-head-copy>strong,.page-head-copy>h2{display:block;margin:0;font-size:15px;line-height:1.35;font-weight:650;overflow-wrap:anywhere;min-width:0}
.page-head-copy .cell-secondary,.page-head-copy .muted{margin-top:2px;font-size:12px;line-height:1.35;color:var(--muted)}
.page-head-title-row .back-link{flex:0 0 auto}
.page-head-title-row>strong,.page-head-title-row>h2{flex:1 1 auto}
.back-link,button.back-link,.back .btn,.back .btn.sm,.project-board-copy .back-inline{display:inline-flex;align-items:center;gap:4px;box-sizing:border-box;min-height:0;height:auto;padding:0;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--muted);font:inherit;font-size:12px;font-weight:550;line-height:1.3;cursor:pointer;white-space:nowrap}
.back-link:hover,.back .btn:hover,.project-board-copy .back-inline:hover{color:var(--blue);background:transparent;border-color:transparent}
.back{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 6px;padding:0;min-height:0}
.page-head .back,.list-toolbar .back{display:contents}
.crumb{color:var(--muted);font-size:12px;margin-bottom:12px;overflow-wrap:anywhere}.header-crumb.crumb{margin-bottom:0}.crumb span{color:var(--muted)}
.list-search,.picker-search,.chat-search,.chat-thread-search{display:flex;align-items:center;gap:8px;height:var(--control-h);min-height:var(--control-h);max-height:none;min-width:160px;max-width:400px;flex:1 1 240px;border:1px solid var(--line);border-radius:var(--control-r);background:var(--surface);color:var(--muted);padding:0 10px}
.list-search::before{content:"";width:16px;height:16px;flex:0 0 16px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='m16 16 5 5' stroke='black' stroke-width='1.8'/%3E%3C/svg%3E") center/contain no-repeat}
.list-search:has(svg)::before{display:none}.list-search:focus-within,.picker-search:focus-within,.chat-search:focus-within,.chat-thread-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--accent-ring)}
.table-wrap{width:100%;max-width:100%;overflow:auto}table.t{width:100%;border-collapse:collapse;font-size:13px;line-height:1.45}
table.t th{padding:10px 14px;font-size:11px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--muted);background:var(--surface-2);border-bottom:1px solid var(--line);white-space:nowrap;position:sticky;top:0;z-index:1}
table.t td{padding:8px 14px;vertical-align:middle;border-bottom:1px solid var(--line);overflow-wrap:break-word}table.t tbody tr:hover{background:var(--blue-soft)}table.t tbody tr:last-child td{border-bottom:0}
.list-panel table.t td:first-child>.link{font-weight:600;color:var(--text)}.list-panel table.t td:first-child>.link:hover{color:var(--blue)}table.t td.col-actions{width:1%;text-align:right;white-space:nowrap}
.list-empty,table.t td.list-empty{padding:28px 16px;color:var(--muted);text-align:center;line-height:1.6}.search-empty{padding:28px 16px;color:var(--muted);text-align:center}
.row-menu-trigger{border:0;background:transparent;color:var(--muted)}table.t .row-menu-trigger{width:32px;min-width:32px;height:32px}
.action-popover{position:fixed;inset:auto;margin:0}
.action-popover:popover-open{display:flex;flex-direction:column;gap:2px}

/* Forms. Keep checkboxes, file pickers and search inputs out of text-field rules. */
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select,textarea,
.form input:not([type=checkbox]):not([type=radio]):not([type=file]),.form select,.g input:not([type=checkbox]):not([type=radio]):not([type=file]),.g select{min-height:var(--control-h);height:var(--control-h);max-width:100%;min-width:0;border:1px solid var(--line-strong);border-radius:var(--control-r);padding:7px 10px;background-color:var(--surface);font-size:13px;line-height:1.4;color:var(--text);outline:0;box-shadow:none}
.form input:not([type=checkbox]):not([type=radio]),.form select,.form textarea,.g input:not([type=checkbox]):not([type=radio]),.g select,.g textarea{width:100%}
textarea,.form textarea,.g textarea{height:auto;min-height:88px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--control-r);resize:vertical;font-size:13px;line-height:1.6}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:.72}input:focus,select:focus,textarea:focus,.form input:focus,.form select:focus,.form textarea:focus,.g input:focus,.g select:focus,.g textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--accent-ring)}
input[type=checkbox],input[type=radio],.form input[type=checkbox],.form input[type=radio]{width:16px;height:16px;min-height:16px;flex:0 0 16px;accent-color:var(--blue);margin:2px 0;box-shadow:none}
.form label,.form .g label,.g label,label.muted{display:block;margin:0 0 6px;color:#536174;font-size:12px;font-weight:550;text-transform:none;letter-spacing:0;line-height:1.4}
.form .g{margin-bottom:14px;min-width:0}.form .g:last-child{margin-bottom:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.form-grid>.g{margin-bottom:0}
.form label:has(>input[type=checkbox]),.form label:has(>input[type=radio]),.g label:has(>input[type=checkbox]),.assignee-checkboxes .assignee-cb-row{display:flex;align-items:flex-start;gap:8px;color:var(--text);font-size:13px;font-weight:400}
.assignee-checkboxes .assignee-cb-row{padding:6px 4px;border-radius:4px}.assignee-checkboxes .assignee-cb-row:hover{background:var(--surface-2)}
.list-toolbar>select,.notifications-toolbar>select{flex:0 1 200px;width:auto;max-width:100%}
select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='m3 4.5 3 3 3-3' fill='none' stroke='%23637187' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px;padding-right:30px!important}
.list-search input,.picker-search input,.chat-search input,.chat-thread-search input,.list-search input[type=search],.picker-search input[type=search],.chat-search input[type=search]{width:100%;min-width:0;min-height:0!important;height:auto!important;max-width:none;margin:0;padding:0!important;border:0!important;border-radius:0;box-shadow:none!important;background:transparent;font-size:13px}
.list-search input:focus,.picker-search input:focus,.chat-search input:focus,.chat-thread-search input:focus{outline:none;border:0;box-shadow:none}

/* Status and due date semantics. No rings around every date. */
.badge{display:inline-flex;align-items:center;gap:5px;max-width:100%;min-height:22px;padding:3px 8px;border:0;border-radius:5px;font-size:11px;line-height:1.4;font-weight:550;background:var(--surface-3);color:var(--muted);white-space:normal}
.badge.new,.badge.inv-draft,.badge.not_required,.badge.fleet-badge-inactive{background:var(--surface-3);color:var(--muted)}
.badge.in_progress,.badge.inv-issued,.badge.inv-sent{background:var(--blue-soft);color:var(--blue-hover)}
.badge.clarify,.badge.inv-payment,.badge.fleet-badge-maintenance{background:var(--amber-soft);color:var(--amber)}
.badge.done,.badge.inv-paid,.badge.fleet-badge-active{background:var(--green-soft);color:var(--green)}
.badge.cancelled,.badge.inv-cancelled,.badge.fleet-badge-repair{background:var(--red-soft);color:var(--red)}
.task-pri{font-size:11px;text-transform:none;letter-spacing:0;font-weight:550;padding:3px 7px}
.task-due,.proj-due{border:0;border-radius:5px;font-size:11px;padding:3px 7px;line-height:1.4;box-shadow:none;background:var(--surface-3);color:var(--muted)}
.proj-due--soon,.proj-due--critical,.task-due--soon,.task-due--critical{background:var(--amber-soft);color:var(--amber);box-shadow:none}
.proj-due--late,.task-due--late{background:var(--red-soft)!important;color:var(--red)!important;box-shadow:none}
.save-status{display:none;align-items:center;padding:4px 8px;max-width:240px;border:0;border-radius:5px;font-size:11px;white-space:normal;overflow-wrap:anywhere}.save-status.is-visible{display:inline-flex}.save-status--idle{display:none!important}
.save-status--pending,.save-status--sync{color:var(--amber);background:var(--amber-soft)}.save-status--ok{color:var(--green);background:var(--green-soft)}.save-status--err{color:var(--red);background:var(--red-soft)}

/* Status chips (BRAVO tones only) - one box for every screen. */
.status{display:inline-flex;align-items:center;gap:5px;box-sizing:border-box;min-height:24px;height:24px;padding:0 8px;border:0;border-radius:6px;font-size:11px;line-height:1;white-space:nowrap;font-weight:600;box-shadow:none;margin:0;vertical-align:middle}
.status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}
.status.blue{background:var(--blue-soft);color:var(--blue)}
.status.green{background:var(--green-soft);color:var(--green)}
.status.amber{background:var(--amber-soft);color:var(--amber)}
.status.red{background:var(--red-soft);color:var(--red)}
.status.violet{background:var(--violet-soft);color:var(--violet)}
.status.muted{background:var(--surface-3);color:var(--muted)}
.badge{border-radius:6px;min-height:24px;box-sizing:border-box;padding:0 8px;display:inline-flex;align-items:center;font-size:11px;font-weight:600;line-height:1;border:0;box-shadow:none;vertical-align:middle}
.kanban-toolbar{display:flex;align-items:flex-start;flex-wrap:wrap;gap:10px 12px;margin:0 0 12px;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);min-height:0}
.kanban-toolbar .toolbar-actions{margin-left:auto;flex:0 0 auto;align-self:center}
.project-board-copy{min-width:0;flex:1 1 220px;display:flex;flex-direction:column;gap:4px}
.project-board-copy .back-inline{align-self:flex-start;min-height:28px;padding:2px 0;margin:0}
.project-board-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;min-width:0}
.project-board-title{margin:0;font-size:16px;line-height:1.3;font-weight:650;overflow-wrap:anywhere}
.project-board-sub{font-size:12px;line-height:1.35}
.project-status-group{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px}.board-guide{font-size:12px;color:var(--muted);margin:0 0 12px}
.kanban-wrap{margin:0;min-width:0;overflow-x:auto}.kanban{display:flex;gap:10px;min-height:140px;align-items:stretch;overflow:visible;padding-bottom:4px}
.kanban-col{flex:0 0 260px;width:260px;max-width:88vw;background:var(--surface);border:1px solid var(--line);border-radius:10px;max-height:none;display:flex;flex-direction:column;min-height:0}
.kanban-col-head{padding:8px 10px;min-height:0;background:var(--surface-2);border-bottom:1px solid var(--line);border-radius:0;font-size:12px;font-weight:650;align-items:center}
.kanban-col-head .count{border:0;background:var(--surface);font-size:11px;padding:1px 6px;margin-left:6px;border-radius:4px;color:var(--muted);font-weight:600}
.kanban-col-body{padding:8px;gap:6px;flex:1 0 auto;min-height:0;overflow:visible;display:flex;flex-direction:column}
.task-card,.ws-kanban-card{padding:10px;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:8px;background:var(--surface);box-shadow:none;cursor:pointer}
.task-card:hover,.ws-kanban-card:hover{transform:none;border-color:#a9bfe6;background:#fbfdff;box-shadow:none}
.task-card.st-new{border-left-color:var(--blue)}.task-card.st-clarify{border-left-color:var(--amber)}.task-card.st-done{border-left-color:var(--green)}.task-card.st-cancelled{border-left-color:var(--red)}
.task-card .t-title{font-size:13px;font-weight:600;line-height:1.5;margin-bottom:8px}.task-card .t-meta{gap:6px;font-size:11px}.task-card .t-kind{display:block;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.05em;margin-bottom:6px}.task-card .t-assignee{display:block;font-size:12px;color:var(--muted);padding-top:8px;margin-top:8px;border-top:1px solid var(--line)}
.brief-kanban-card{border-radius:7px;box-shadow:none}
.proj-list-collapse{margin:0;padding:12px 14px;border-top:1px solid var(--line);background:var(--surface-2)}.proj-list-collapse-sum,.stage-docs-collapse-sum,.kanban-done-summary{font-size:12px;font-weight:550}
.ws-banner{display:inline-flex;padding:4px 8px;margin-bottom:12px;border-radius:5px;background:var(--blue-soft);color:var(--blue);font-size:12px}
.ws-kanban{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.ws-kanban-col{background:var(--surface-3);border:1px solid var(--line);border-radius:var(--r)}.ws-kanban-col-h{display:flex;justify-content:space-between;gap:8px;padding:12px;border-bottom:1px solid var(--line);font-size:13px;font-weight:600}.ws-kanban-col-b{display:flex;flex-direction:column;gap:8px;padding:8px}.ws-kanban-card{text-align:left;cursor:pointer}.ws-kanban-card-title{font-weight:600}
.fleet-shell{display:grid!important;grid-template-columns:minmax(280px,320px) minmax(0,1fr);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);background:var(--surface);overflow:hidden;flex:1 1 auto;height:auto;min-height:0;max-height:none}
.fleet-detail-head{min-height:0;padding:10px 14px}.fleet-tabs{gap:16px;padding:0 16px;background:var(--surface)}
.fleet-tab{min-height:42px;padding:10px 0;border:0;border-bottom:2px solid transparent;border-radius:0;color:var(--muted);background:transparent;box-shadow:none}.fleet-tab.active{color:var(--blue);border-bottom-color:var(--blue);background:transparent}.fleet-list-item{padding:10px 12px;border-radius:9px}.fleet-list-item.active{background:var(--blue-soft)}.fleet-list-item__title{font-size:13px;font-weight:600}.fleet-list-item__meta{font-size:11px}.fleet-history-item{border-color:var(--line);border-radius:7px;box-shadow:none}
.fleet-sidebar>.list-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px}
.fleet-sidebar>.list-toolbar .list-search{flex:1 1 100%;width:100%;max-width:none;min-width:0}
.fleet-sidebar>.list-toolbar select{flex:1 1 140px;width:auto;max-width:none;min-width:0;height:var(--control-h)}
.fleet-sidebar>.list-toolbar .meta{margin:0;flex:0 0 auto}
.fleet-sidebar>.list-toolbar .toolbar-actions{margin-left:auto;flex:0 0 auto}
.fleet-main{display:flex;flex-direction:column;min-height:0;overflow:visible}.fleet-detail-body{min-height:0;flex:none;overflow:visible}
.fleet-main>.list-toolbar{margin:0;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none}
.fleet-main .fleet-history-item{margin:0;padding:12px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none}
.fleet-card .fleet-detail-body{padding:16px;max-height:none;overflow:visible}
.fleet-detail-body .form-grid{max-width:none;grid-template-columns:repeat(3,minmax(0,1fr))}
.fleet-card .fleet-detail-head{border-bottom:1px solid var(--line);background:var(--surface)}
.fleet-card .fleet-tabs{display:flex;flex-wrap:wrap;gap:0 20px;border-bottom:1px solid var(--line);overflow:visible}
.fleet-card .fleet-tab{flex:none;white-space:nowrap}
[data-view=fleet] .fleet-card .fleet-detail-body>.fleet-section-title{display:none}
.fleet-card .fleet-record-list{margin-top:16px}
.fleet-entry-form{margin:0 0 16px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2)}
.fleet-entry-form>summary{padding:10px 14px;cursor:pointer;color:var(--blue);font-weight:600}
.fleet-entry-form[open]>summary{border-bottom:1px solid var(--line)}
.fleet-entry-fields{padding:14px;background:var(--surface)}
.cell-secondary{color:var(--muted);font-size:12px;font-weight:400;margin-top:3px}.period-line{display:block;white-space:nowrap}.cell-money{font-variant-numeric:tabular-nums;white-space:nowrap}
.inline-error{margin:12px 16px;color:var(--red)}
.list-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--line);background:var(--surface-2)}.list-pagination>span{margin-right:auto;color:var(--muted);font-size:12px}.list-pagination[hidden],.search-empty[hidden]{display:none}
.workspace-settings>summary{cursor:pointer;padding:12px 16px;font-weight:550;color:var(--muted)}.workspace-settings[open]>summary{border-bottom:1px solid var(--line)}
table.t td.mobile-row-details{display:none}
.setup-steps{display:grid;gap:12px}.setup-steps>div{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.setup-steps strong{font-weight:500;flex:1}.setup-steps a{text-decoration:none}
.registry-filters{border-bottom:1px solid var(--line);background:var(--surface-2)}
.registry-filters>summary{padding:8px 12px;cursor:pointer;font-size:12px;color:var(--muted)}
.filter-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:4px 12px 12px}
.filter-fields>label{display:grid;gap:5px;color:var(--muted);font-size:12px}
.module-types .fleet-side-extra{max-height:none;overflow:visible;border:0}
.module-types .fleet-side-extra-body{padding:12px}
.fleet-card .fleet-title{font-size:18px}
.rental-page .fleet-shell{height:auto;min-height:0;flex:1 1 auto}.rental-page .fleet-main{padding:0;overflow:visible}.rental-page .fleet-main>.workspace-empty,.rental-page .fleet-detail-body{padding:16px}.rental-panel{background:var(--surface);border:1px solid var(--line)}.rental-panel h2{background:var(--surface-2);color:var(--text);font-size:14px;border-bottom:1px solid var(--line)}.rental-page .rental-filter-grid{display:contents}.rental-page .list-panel>.rental-table-wrap{padding:0}.rental-page .fleet-sidebar .list-search{flex-basis:auto;width:100%}
.rental-extra{background:var(--surface)}.rental-extra>summary{background:var(--surface-2);color:var(--text)}.rental-extra[open]>summary{background:var(--surface);border-bottom-color:var(--line)}
.rental-page.rental-fill .list-toolbar>select,.rental-page.rental-fill .list-toolbar>input[type=date]{flex:0 1 160px;width:auto;min-width:120px;max-width:220px}
.rental-filter-bar{border-top:0;min-height:0;padding-top:0;margin:0;box-shadow:none}
.rental-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 16px}
.rental-form-grid>.g{margin-bottom:0}
.rental-extra>summary{padding:12px 16px;font-size:14px;font-weight:650;cursor:pointer;list-style:none;border-bottom:1px solid transparent}
.rental-extra>summary::after{content:"›";float:right;color:var(--muted);font-size:18px;line-height:1;transform:rotate(90deg)}
.rental-extra[open]>summary::after{transform:rotate(-90deg)}
.rental-lease-page .rental-log{max-height:none;overflow:visible}
.contract-header strong{font-size:16px}.contract-header .cell-secondary{max-width:65ch}
.lease-unit{margin-bottom:14px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);overflow:hidden}
.lease-unit-title{display:flex;align-items:center;gap:12px;margin:0;padding:12px 16px;font-size:14px;font-weight:600;list-style:none;cursor:pointer}
.lease-unit-title::-webkit-details-marker{display:none}.lease-unit>summary::after{content:"›";margin-left:auto;font-size:20px;color:var(--muted)}.lease-unit[open]>summary::after{transform:rotate(90deg)}
.lease-unit>.rental-page{padding:0 16px 12px}.lease-unit .rental-panel{box-shadow:none;border-radius:6px}.lease-unit [data-rental-lease-editor]>.rental-panel:first-child{border:0}.lease-unit [data-rental-lease-editor]>.rental-panel:first-child>h2{display:none}.lease-unit [data-rental-lease-editor]>.rental-panel:first-child>.inner{padding:12px 0}
.rental-lease-page .rental-extra{margin-bottom:8px}.rental-lease-page .rental-extra>summary{padding:10px 14px;font-size:13px;font-weight:550}
.rental-extra>summary::-webkit-details-marker{display:none}
.rental-extra[open]>summary{border-bottom-color:var(--line)}
.rental-lease-page [data-rental-lease-editor]>.row-actions,.rental-lease-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;position:static;margin:0;padding:12px 0 4px;background:transparent;border-top:1px solid var(--line);box-shadow:none}
.rental-lease-page [data-rental-lease-editor]>.row-actions .btn,.rental-lease-actions .btn{box-sizing:border-box;min-height:var(--control-h);height:var(--control-h);padding:0 12px;font-size:13px;font-weight:550;line-height:1;border-radius:var(--control-r);align-self:center}
.rental-lease-actions .btn.primary{font-weight:600}
.rental-lease-actions .btn.danger{background:var(--surface);border-color:#edcbc7;color:var(--red)}
.rental-inv-wrap{padding:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--control-r);box-shadow:none}
.rental-inv-wrap--unpaid,.rental-inv-wrap--sent,.rental-inv-wrap--initial,.rental-inv-wrap--overdue,.rental-inv-wrap--soon,.rental-inv-wrap--paid{border-color:var(--line);background:var(--surface);box-shadow:none}
.rental-inv-select{border:0!important;background:transparent!important;box-shadow:none!important;min-height:var(--control-h)}
.rental-status-cell{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;max-width:100%}
.rental-status-cell .status{flex:0 0 auto}
.fleet-side-extra{border-top:1px solid var(--line);flex:0 0 auto;max-height:40%;overflow:auto}
.fleet-side-extra>summary{cursor:pointer;padding:10px 12px;font-size:12px;font-weight:650;color:var(--muted);list-style:none}
.fleet-side-extra>summary::-webkit-details-marker{display:none}
.fleet-side-extra-body{padding:0 12px 12px}
.fleet-shell{display:grid!important;grid-template-columns:minmax(280px,320px) minmax(0,1fr)!important;height:calc(100dvh - 120px);max-height:calc(100dvh - 100px)}
.fleet-alert-banner{margin:0 16px 10px;padding:8px 12px;border-radius:var(--control-r);background:var(--amber-soft);color:var(--amber);font-size:12px;line-height:1.4;font-weight:550}
.fleet-list-item--alert{border-left:3px solid var(--amber)}
html.has-modal,html.has-modal body{overflow:hidden}
.wf-backdrop{position:fixed;inset:0;z-index:80;background:rgba(23,32,44,.28);display:flex;justify-content:flex-end;animation:dtm-fade .16s ease-out}
@keyframes dtm-fade{from{opacity:0}to{opacity:1}}
.part-drawer,.task-drawer{width:min(480px,100vw);max-width:100%;height:100%;background:var(--surface);box-shadow:-12px 0 40px rgba(16,24,40,.14);display:flex;flex-direction:column;animation:dtm-slide .2s var(--ease-out)}
@keyframes dtm-slide{from{transform:translateX(18px)}to{transform:translateX(0)}}
/* The task drawer is rebuilt during ERP renders. Replaying entrance motion on each rebuild makes the work surface jump. */
.wf-backdrop:has(.task-drawer),.task-drawer{animation:none}
.wf-backdrop:has(.task-drawer){z-index:300}
#modalPreview.modal-bg{z-index:410}
.part-drawer-head{flex:none;display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);min-height:0}
.part-drawer-head-copy{min-width:0;flex:1 1 auto}
.part-drawer-head .eyebrow{display:block;font-size:11px;color:var(--muted);margin:0 0 2px}
.part-drawer-head h2{margin:0;font-size:16px;line-height:1.35;font-weight:650;overflow-wrap:anywhere}
.part-drawer-actions{flex:0 0 auto;margin-left:auto;display:flex;align-items:center;gap:6px}
.part-drawer-actions .icon-btn{width:var(--control-h);min-width:var(--control-h);height:var(--control-h)}
.part-drawer-actions .btn{min-height:var(--control-h);height:var(--control-h);padding:0 12px;border-radius:var(--control-r);box-sizing:border-box}
.drawer-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:8px;font-size:12px}
.task-status-quick{appearance:none;-webkit-appearance:none;box-sizing:border-box;display:inline-flex;align-items:center;min-height:24px;height:24px;max-width:100%;padding:0 22px 0 8px;border:0;border-radius:6px;font:inherit;font-size:11px;font-weight:600;line-height:1;cursor:pointer;color:var(--muted);background-color:var(--surface-2);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23556579' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 7px center;vertical-align:middle}
.task-status-quick:hover,.task-status-quick:focus{outline:0;box-shadow:0 0 0 3px var(--accent-ring,rgba(37,99,235,.16))}
.task-status-quick--new{background-color:var(--surface-3,#e4eaf3);color:var(--muted)}
.task-status-quick--clarify{background-color:var(--amber-soft,#fff6db);color:var(--amber,#a16207)}
.task-status-quick--in_progress{background-color:var(--blue-soft,#eef3ff);color:var(--blue)}
.task-status-quick--done{background-color:var(--green-soft,#e5f6ec);color:var(--green,#0f7a45)}
.task-status-quick--cancelled{background-color:var(--red-soft,#fdeceb);color:var(--red,#b42318)}
.task-card .task-status-quick{max-width:140px}
.drawer-meta .task-status-quick{font-size:12px;min-height:26px;height:26px;padding-right:24px}
.part-drawer-body{flex:1;overflow:auto;padding:12px 16px 20px;overscroll-behavior:contain}
.part-drawer-body .panel,.part-drawer-body .panel h2{display:none}
.drawer-tabs{display:flex;gap:0;margin:0 0 12px;border-bottom:1px solid var(--line);padding:0}
.drawer-tabs>button{flex:0 0 auto;min-height:36px;padding:8px 12px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font:inherit;font-weight:550;cursor:pointer}
.drawer-tabs>button.active{color:var(--blue);border-bottom-color:var(--blue)}
.drawer-section{margin:0 0 14px;padding:0 0 14px;border-bottom:1px solid var(--line)}
.drawer-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.drawer-section h3{margin:0 0 8px;font-size:12px;font-weight:650;color:var(--muted);text-transform:none;letter-spacing:0}
.drawer-kv{display:grid;grid-template-columns:72px minmax(0,1fr);gap:6px 10px;font-size:13px;margin:0 0 6px}
.drawer-kv span{color:var(--muted)}.drawer-kv b{font-weight:550;overflow-wrap:anywhere}
.drawer-pre{margin:0;white-space:pre-wrap;font:inherit;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.drawer-hint{margin:0 0 10px;font-size:12px;color:var(--muted)}
.drawer-extra{margin-top:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2)}
.drawer-extra>summary{cursor:pointer;padding:8px 12px;font-size:12px;font-weight:550;color:var(--muted);list-style:none}
.drawer-extra>summary::-webkit-details-marker{display:none}
.drawer-extra>div{padding:0 12px 12px}
.task-shell-meta .task-status-quick{font-size:12px;min-height:26px;height:26px;padding-right:24px}
.task-shell{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.task-shell-head{display:flex;align-items:flex-start;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--surface);flex:none}
.task-shell-head-main{min-width:0;flex:1 1 auto}
.task-shell-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;min-width:0}
.task-shell-title{margin:0;font-size:16px;line-height:1.35;font-weight:650;color:var(--text);overflow-wrap:anywhere;min-width:0}
.task-shell-title-row .task-shell-title{flex:1 1 auto}
.task-shell-crumb{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;margin-top:4px;font-size:12px;color:var(--muted);line-height:1.35}
.task-crumb-sep{opacity:.55}
.task-shell-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:8px;min-width:0}
.task-assignees{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(420px,100%)}
.task-shell-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto;margin-left:auto}
.task-shell-actions .btn,.task-shell-actions .icon-btn,.task-shell-actions .row-more>summary{box-sizing:border-box;min-height:var(--control-h);height:var(--control-h);border-radius:var(--control-r);display:inline-flex;align-items:center;justify-content:center;padding:0 12px;font-size:13px;line-height:1}
.task-shell-actions .icon-btn,.task-shell-actions .row-more>summary.icon-btn{width:var(--control-h);min-width:var(--control-h);padding:0}
.task-shell-actions .row-more{display:inline-flex;align-items:center}
.task-shell-tabs{display:flex;flex-direction:row;align-items:stretch;gap:4px;padding:0 14px;border-bottom:1px solid var(--line);background:var(--surface);flex:none;overflow-x:auto;overscroll-behavior-x:contain}
.task-tab{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;width:auto;min-height:38px;padding:7px 10px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}
.task-tab:hover{color:var(--text)}
.task-tab.active{color:var(--blue);border-bottom-color:var(--blue)}
.task-tab-n{min-width:18px;padding:1px 6px;border-radius:5px;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:650;text-align:center}
.task-tab.active .task-tab-n{background:var(--blue-soft);color:var(--blue)}
.task-shell-panes{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0}
.task-pane{padding:12px 14px 18px;overflow:auto;min-height:0}
.task-pane--chat{display:flex;flex-direction:column;padding:0;overflow:hidden}
.task-work-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,300px);align-items:start;gap:16px;max-width:none;margin:0}
.task-work-main{min-width:0}
.task-work-main>.task-block{margin-bottom:10px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.task-work-info{position:sticky;top:0;display:flex;flex-direction:column;gap:14px;min-width:0;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.task-work-info h3{margin:0;font-size:14px;line-height:1.35;font-weight:650;color:var(--text)}
.task-work-info>label{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:12px;font-weight:550}
.task-work-info .task-status-quick{height:40px;max-width:none;padding-inline:12px 30px;border:1px solid var(--line);border-radius:9px;font-size:13px}
.task-info-date{display:flex;align-items:center;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);color:var(--text);font-size:13px}
.task-info-assignees>span{display:block;margin-bottom:8px;color:var(--muted);font-size:12px;font-weight:550}
.task-info-assignees>div{display:flex;flex-direction:column;gap:6px}
.task-info-chip{display:block;max-width:100%;padding:7px 10px;border-radius:999px;background:var(--surface-2);color:var(--text);font-size:12px;line-height:1.35;overflow-wrap:anywhere}
.task-info-assignees p{margin:0;color:var(--muted);font-size:12px}
.task-ro-banner{margin:0 0 12px;padding:8px 10px;border-radius:var(--control-r);background:var(--amber-soft);color:var(--amber);font-size:12px;font-weight:550}
.task-block{margin:0 0 14px;padding:0;border:0}
.task-block-head{display:flex;align-items:center;gap:8px;margin:0 0 8px}
.task-block-head h3{margin:0;font-size:12px;font-weight:650;color:var(--muted);letter-spacing:0;text-transform:none}
.task-block-hint{margin-left:auto;font-size:11px;color:var(--muted);font-weight:500}
.task-textarea{display:block;width:100%;box-sizing:border-box;min-height:72px;margin:0;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--control-r);background:var(--surface);color:var(--text);font:inherit;font-size:13px;line-height:1.45;resize:vertical}
.task-textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px var(--accent-ring)}
.task-desc-ro{font-size:13px;line-height:1.5;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere}
.task-pre{margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--control-r);background:var(--surface-2);font-size:12px;line-height:1.45;overflow:auto;white-space:pre-wrap}
.task-empty{margin:0;padding:10px 0;font-size:13px;color:var(--muted)}
.task-composer{display:flex;flex-direction:column;gap:8px;margin:0 0 12px;padding:10px;border:1px solid var(--line);border-radius:var(--control-r);background:var(--surface-2)}
.task-composer .task-textarea{min-height:56px;background:var(--surface)}
.task-composer-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.task-composer-chips{flex:1 1 120px;min-width:0;margin:0}
.task-composer-bar .btn.primary{margin-left:auto}
.task-composer-bar .btn{min-height:32px;height:32px;padding:0 10px;font-size:12px;border-radius:var(--control-r);box-sizing:border-box}
.task-feed{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:var(--control-r);overflow:hidden;background:var(--surface)}
.task-feed-item{padding:10px 12px;border-bottom:1px solid var(--line)}
.task-feed-item:last-child{border-bottom:0}
.task-feed-text{font-size:13px;line-height:1.45;color:var(--text);overflow-wrap:anywhere;white-space:pre-wrap}
.task-feed-files{margin-top:8px;display:flex;flex-direction:column;gap:6px}
.task-feed-foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:6px;font-size:11px;color:var(--muted)}
.task-feed-acts{display:inline-flex;align-items:center;gap:8px;margin-left:auto}
.task-feed-item--hist .task-feed-text{color:var(--muted)}
.task-hist{margin:4px 0 0;border:1px solid var(--line);border-radius:var(--control-r);background:var(--surface);overflow:hidden}
.task-hist>summary{cursor:pointer;list-style:none;padding:10px 12px;font-size:12px;font-weight:650;color:var(--muted);user-select:none}
.task-hist>summary::-webkit-details-marker{display:none}
.task-hist[open]>summary{border-bottom:1px solid var(--line)}
.task-hist-body{padding:0}
.task-hist .task-feed{border:0;border-radius:0}
.task-file{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}
.task-file:has(.task-file-thumb){align-items:center}
.task-file:last-child{border-bottom:0}
.task-file-main{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;min-width:0;flex:1 1 auto}
.task-file-name{display:block;font-size:13px;font-weight:550;color:var(--text);overflow-wrap:anywhere;line-height:1.35;flex:0 1 auto;min-width:0}
.task-file-meta{display:inline-block;margin-top:2px;font-size:11px;color:var(--muted)}
.task-file-thumb{display:block;width:64px;height:48px;flex:0 0 64px;border:1px solid var(--line);border-radius:var(--control-r);object-fit:cover;background:var(--surface-2)}
.task-file-acts,.prod-cat-att-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;flex:0 0 auto}
/* One control for file operations, independent of generic link/button variants. */
.file-action{appearance:none;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;min-height:32px;margin:0;padding:0 10px;border:1px solid var(--line);border-radius:var(--control-r);background:var(--surface);color:var(--text);font:500 12px/1 var(--font);text-decoration:none;white-space:nowrap;cursor:pointer;box-shadow:none}
.file-action:hover{background:var(--surface-2);border-color:var(--line-strong);text-decoration:none}
.file-action--danger{color:var(--red)}
.file-action--danger:hover{background:var(--red-soft);border-color:var(--line-strong)}
.file-action:disabled{opacity:.5;cursor:default}
@media(max-width:700px){.file-action{height:40px;min-height:40px}}
.task-docs-drop{border:1px dashed var(--line-strong);border-radius:var(--control-r);background:var(--surface-2);padding:10px 12px;min-height:0}
.task-docs-drop.is-drag{border-color:var(--blue);background:var(--blue-soft)}
.task-docs-actions{margin-top:10px;display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px}
.task-docs-actions .btn{min-height:var(--control-h);height:var(--control-h);padding:0 12px;border-radius:var(--control-r);box-sizing:border-box;font-size:13px}
.task-docs-registry{font-size:12px;font-weight:550}
.task-file-list{min-width:0}
.project-board-page{display:flex;flex-direction:column;gap:0;min-width:0;min-height:0}
.content:has(.project-board-page){padding:10px 12px}
.pb-shell{display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.pb-head{display:flex;flex-wrap:nowrap;align-items:center;gap:10px 12px;min-height:44px;padding:8px 12px;background:var(--surface);border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none}
.pb-back{flex:0 0 auto}
.pb-line{display:flex;flex-wrap:nowrap;align-items:baseline;gap:0 8px;min-width:0;flex:1 1 auto;overflow:hidden}
.pb-title{margin:0;font-size:15px;font-weight:650;line-height:1.25;letter-spacing:-.01em;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(36vw,22rem);flex:0 1 auto}
.pb-sep{flex:none;color:var(--line-strong);font-size:13px;line-height:1;user-select:none}
.pb-meta{font-size:13px;font-weight:500;line-height:1.25;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:18rem}
.pb-st{font-weight:550}
.pb-st--blue{color:var(--blue)}
.pb-st--green{color:var(--green)}
.pb-st--amber{color:var(--amber)}
.pb-st--red{color:var(--red)}
.pb-st--violet{color:var(--violet)}
.pb-st--muted{color:var(--muted)}
.pb-due{display:inline;font-size:13px;font-weight:500;color:var(--muted);padding:0;line-height:1.25;background:transparent;border:0;border-radius:0;white-space:nowrap;flex:none}
.pb-due--soon,.pb-due--critical{color:var(--amber);font-weight:600}
.pb-due--late{color:var(--red);font-weight:600}
.pb-due--empty{opacity:.85}
.pb-actions{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:6px;flex:0 0 auto;margin-left:auto}
.pb-kanban{margin:0;padding:0;background:var(--surface);border:0;border-bottom:1px solid var(--line);border-radius:0;min-width:0;overflow:hidden}
.pb-kanban .kanban-wrap{margin:0;overflow-x:auto;-webkit-overflow-scrolling:touch}
.pb-kanban .kanban{display:flex;gap:0;align-items:stretch;padding:0;min-height:220px}
.pb-kanban .kanban-col{flex:0 0 220px;width:220px;max-width:82vw;background:var(--surface);border:0;border-right:1px solid var(--line);border-radius:0;display:flex;flex-direction:column;max-height:none;box-shadow:none;min-height:0}
.pb-kanban .kanban-col:last-child{border-right:0}
.pb-kanban .kanban-col-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:0 0 38px;height:38px;min-height:38px;max-height:38px;padding:0 10px;background:var(--surface);border-bottom:1px solid var(--line);border-radius:0;font-weight:650;font-size:12px}
.pb-kanban .kanban-stage-title{display:flex;align-items:center;min-width:0;flex:1 1 auto;font-size:12px;font-weight:650;color:var(--text);line-height:1;height:24px}
.pb-kanban .kanban-stage-ttl{display:block;min-width:0;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:1}
.pb-kanban .kanban-docs-link{flex:0 0 auto;display:inline-flex;align-items:center;height:24px;border:0;background:transparent;color:var(--blue);font:inherit;font-size:11px;font-weight:600;cursor:pointer;padding:0;line-height:1;white-space:nowrap}
.pb-kanban .kanban-docs-link[title]{cursor:pointer}
.pb-kanban .kanban-docs-link.muted{color:var(--muted);font-weight:550}
.pb-kanban .kanban-docs-link:hover{text-decoration:underline}
.pb-kanban .kanban-col-body{padding:8px;overflow:visible;flex:1 0 auto;display:flex;flex-direction:column;gap:6px;min-height:0;background:var(--surface)}
.pb-kanban .task-card{height:104px;min-height:104px;flex-shrink:0;overflow:hidden;padding:8px 9px;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:var(--control-r);background:var(--surface);box-shadow:none}
.pb-kanban .task-card:hover{border-color:var(--blue);border-left-color:var(--blue);background:var(--blue-soft);box-shadow:none;transform:none}
.pb-kanban .task-card.st-new,.pb-kanban .task-card.st-in_progress{border-left-color:var(--blue)}
.pb-kanban .task-card.st-clarify{border-left-color:var(--amber)}
.pb-kanban .task-card.st-done{border-left-color:var(--green)}
.pb-kanban .task-card.st-cancelled{border-left-color:var(--red)}
.pb-kanban .task-card .t-title{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;height:20px;font-size:13px;font-weight:600;line-height:20px;margin-bottom:6px}
.pb-kanban .task-card .t-title .task-pri{flex:none}
.pb-kanban .task-card .t-meta{gap:6px;font-size:12px;flex-wrap:nowrap}
.pb-kanban .task-card .t-meta .task-status-quick{min-width:0;width:94px;flex:1 1 94px;text-overflow:ellipsis}
.pb-kanban .task-card .t-meta .task-due{flex:none}
.pb-kanban .task-card .t-assignee{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--muted);padding-top:6px;margin-top:6px;border-top:1px solid var(--line)}
.pb-kanban .kanban-add{width:100%;justify-content:center;border:1px dashed var(--line);color:var(--muted);margin-top:auto;min-height:30px;font-size:12px;background:transparent;border-radius:var(--control-r)}
.pb-kanban .kanban-add:hover{color:var(--blue);border-color:var(--blue);background:var(--blue-soft)}
.pb-kanban .brief-kanban-card{border:0;border-radius:0;background:transparent;padding:4px 0;box-shadow:none}
.pb-kanban .kanban-col-body>p.muted{margin:auto 0;padding:8px;text-align:center}
.pb-bento{display:grid;grid-template-columns:minmax(184px,200px) minmax(0,1fr) minmax(180px,208px);gap:0;align-items:stretch;min-width:0;background:var(--surface);border:0;border-radius:0;overflow:hidden}
.pb-docs,.proj-doc-library,.proj-doc-shell{display:contents}
.pb-hist{grid-column:3;grid-row:1;min-width:0;display:flex;flex-direction:column;background:var(--surface);border:0;border-left:1px solid var(--line);border-radius:0;max-height:none;overflow:hidden}
.pb-section-head{display:flex;align-items:center;gap:8px;min-height:48px;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--surface);flex:none}
.pb-section-head h3{margin:0;font-size:14px;font-weight:650;line-height:1.35;color:var(--text)}
.pb-section-head .meta{font-size:11px;margin-left:auto}
.pb-hist-body{flex:1;min-height:180px;overflow:auto;padding:12px 14px}
.pb-hist-body .fleet-history-item{padding:10px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;margin:0;box-shadow:none}
.pb-hist-body .fleet-history-item:last-child{border-bottom:0}
.pb-hist-body .muted,.pb-hist-body>p{margin:8px 0;font-size:12px;color:var(--muted)}
.pb-hist-body .fleet-empty{display:flex;min-height:220px;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px;text-align:center;color:var(--muted);font-size:13px;line-height:1.5}
.pb-hist-body .fleet-empty::before{content:"";width:42px;height:42px;opacity:.65;background:var(--line-strong);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6M8 13h5M8 17h3'/%3E%3Ccircle cx='17' cy='17' r='4' fill='white'/%3E%3Cpath d='M17 15v2l1.5 1'/%3E%3C/svg%3E") center/contain no-repeat}
.proj-doc-nav{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:12px;border:0;border-right:1px solid var(--line);border-radius:0;background:#f8faff;padding:16px 10px;min-width:0;min-height:100%;max-height:none;overflow:auto}
.proj-doc-nav-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:0 4px 10px;border-bottom:1px solid var(--line)}
.proj-doc-nav-heading{min-width:0}
.proj-doc-nav-head>.proj-doc-nav-heading{grid-column:1;grid-row:1}
.proj-doc-nav-label{font-size:14px;font-weight:700;color:var(--text);letter-spacing:0}
.proj-doc-nav-hint{margin-top:2px;font-size:11px;line-height:1.35;color:var(--muted)}
.proj-doc-folder-list{display:flex;flex-direction:column;align-items:stretch;gap:3px;min-width:0}
.proj-doc-folder{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-start;gap:10px;width:100%;max-width:100%;min-width:0;min-height:38px;padding:7px 8px;border:1px solid transparent;border-radius:8px;background:transparent;text-align:left;cursor:pointer;font:inherit;font-size:12px;color:var(--text)}
.proj-doc-folder::before{content:"";flex:0 0 18px;width:18px;height:18px;background:currentColor;opacity:.7;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6a2 2 0 0 1 2-2h5l2 2h7a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3C/svg%3E") center/contain no-repeat}
.proj-doc-folder-ttl{min-width:0;flex:1 1 auto;overflow-wrap:anywhere;white-space:normal;line-height:1.25}
.proj-doc-folder-count{flex:0 0 auto;min-width:22px;padding:2px 6px;border-radius:999px;background:var(--surface-3);color:var(--muted);font-size:11px;font-weight:600;line-height:1.2;text-align:center}
.proj-doc-folder:hover{border-color:transparent;background:#edf2fa}.proj-doc-folder.active{border-color:transparent;background:#e8f0ff;color:var(--blue);font-weight:650}.proj-doc-folder.active::before{opacity:1}.proj-doc-folder.active .proj-doc-folder-count{background:#d8e5ff;color:var(--blue)}
.proj-doc-folder:focus-visible{outline:2px solid var(--blue);outline-offset:1px}
.proj-doc-new{grid-column:2;grid-row:1;min-width:0;margin:0;padding:0;border:0;align-self:center}
.proj-doc-new[open]{grid-column:1/-1;grid-row:2;width:100%;min-width:0}
.proj-doc-new>summary{display:inline-flex;align-items:center;min-height:32px;cursor:pointer;padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface);font-size:11px;font-weight:550;color:var(--blue);list-style:none;white-space:nowrap}
.proj-doc-new>summary::-webkit-details-marker{display:none}
.proj-doc-new>summary:hover{background:var(--blue-soft);border-color:#b8cdfa}
.proj-doc-new>.row-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-width:0;margin:8px 0 0}
.proj-doc-new>.row-actions>input{box-sizing:border-box;width:100%;min-width:0}
.proj-doc-new>.row-actions>.btn{min-height:40px;white-space:nowrap}
.proj-doc-main{grid-column:2;grid-row:1;min-width:0;border:0;border-radius:0;padding:0 16px 12px;background:var(--surface);max-height:none;overflow:auto;display:flex;flex-direction:column}
.proj-doc-current{display:flex;align-items:center;gap:10px;min-height:68px;padding:10px 0;border-bottom:0}
.proj-doc-current-copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.proj-doc-current h3{min-width:0;margin:0;font-size:17px;font-weight:700;line-height:1.3;color:var(--text)}
.proj-doc-current-hint{font-size:12px;line-height:1.35;color:var(--muted)}
.proj-doc-current-count{flex:0 0 auto;margin-left:auto;color:var(--muted);font-size:12px}
.proj-doc-columns,.proj-doc-row{display:grid;grid-template-columns:28px minmax(220px,1fr) 96px 52px 64px 116px minmax(202px,max-content);align-items:center;column-gap:10px}
.proj-doc-columns{min-height:36px;padding:0 8px;border-radius:6px;background:#f3f6fb;color:var(--muted);font-size:11px;font-weight:550}
.proj-doc-columns span:first-child{grid-column:1/3}
.proj-doc-columns span:last-child{text-align:right}
.proj-doc-list{display:flex;flex-direction:column;gap:0;margin:0}
.proj-doc-row{min-height:56px;height:auto;padding:8px;border-bottom:1px solid #e8edf4;background:var(--surface);box-shadow:none;cursor:pointer}
.proj-doc-row:hover{background:var(--blue-soft)}
.proj-doc-row:last-child{border-bottom:0}
.proj-doc-file-icon{display:grid;place-items:center;align-self:center;width:26px;height:30px;border-radius:3px 6px 6px 3px;background:#e5eaf2;color:#56667b;font-size:7px;font-weight:750;line-height:1;overflow:hidden}
.proj-doc-file-icon[data-kind="PDF"]{background:#d94845;color:#fff}
.proj-doc-file-icon[data-kind="Изображение"]{background:#dbeafe;color:#2563eb}
.proj-doc-file-icon[data-kind="Ссылка"]{background:#e5eaf2;color:#52647a;font-size:14px}
.proj-doc-row-main{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:2px;padding-right:12px;border-right:1px solid var(--line,#e8edf4);min-height:40px}
.proj-doc-row-main .document-name-line{min-width:0}
.proj-doc-row-main strong{display:block;font-size:13px;font-weight:650;line-height:1.3;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.proj-doc-row-main .cell-secondary{font-size:11px;margin:0;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}
.proj-doc-col,.proj-doc-status{display:inline-flex;align-items:center;align-self:center;min-width:0;min-height:36px;height:36px;color:var(--muted);font-size:12px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.proj-doc-status{justify-content:flex-start}
.proj-doc-status .document-status-badge{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.proj-doc-row-actions{display:flex;flex-wrap:nowrap;gap:6px;flex:0 0 auto;align-items:center;align-self:center;justify-content:flex-end;min-height:36px}.proj-doc-row-actions>.file-action{display:inline-flex;align-items:center;justify-content:center;height:36px;min-height:36px}
.proj-doc-upload{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:auto;padding:10px 0 2px;border:0;border-top:1px dashed var(--line);border-radius:0;background:transparent}
.proj-doc-upload.is-drag,.proj-doc-upload.file-drop.is-drag{border-color:var(--blue);background:var(--blue-soft);padding:10px 8px;border-radius:var(--control-r)}
.proj-doc-upload .muted{font-size:11px}
@media (min-width:901px) and (max-width:1550px){
  .proj-doc-columns,.proj-doc-row{grid-template-columns:28px minmax(180px,1fr) 94px 116px minmax(202px,max-content)}
  .proj-doc-columns>span:nth-child(3),.proj-doc-columns>span:nth-child(4),.proj-doc-type,.proj-doc-size{display:none}
}
.workspace-empty-inline{margin:12px 0;color:var(--muted);font-size:12px;line-height:1.45}
.kanban-add{width:100%;justify-content:center;border-style:dashed;color:var(--muted);margin-top:auto;min-height:30px;font-size:12px}
.kanban-add:hover{color:var(--blue);border-color:var(--blue);background:var(--blue-soft)}
@media(max-width:1180px){
  .pb-bento{grid-template-columns:minmax(190px,204px) minmax(0,1fr)}
  .pb-hist{grid-column:1/-1;grid-row:2;border-top:1px solid var(--line);border-left:0}
  .pb-hist-body{min-height:120px}
}
@media(max-width:1000px){
  .pb-head{flex-wrap:wrap;min-height:0}
  .pb-line{flex:1 1 100%;order:3}
  .pb-actions{margin-left:auto;width:auto;justify-content:flex-end}
  .pb-title{max-width:min(55vw,18rem)}
}
@media(max-width:800px){
  .pb-line{flex-wrap:wrap;gap:4px 10px}
  .pb-title{flex:1 1 100%;width:100%;max-width:none}
  .pb-line .pb-sep{display:none}
  .pb-line .pb-meta{flex:none;max-width:120px;font-size:12px}
  .pb-line .pb-due{font-size:12px}
  .pb-bento{grid-template-columns:minmax(0,1fr)}
  .proj-doc-nav{grid-column:1;grid-row:1;min-height:0;border-right:0;border-bottom:1px solid var(--line);padding:12px}
  .proj-doc-nav-head{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .proj-doc-nav-heading{grid-column:1;grid-row:1}
  .proj-doc-folder-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .proj-doc-folder{min-height:44px;padding:8px}
  .proj-doc-folder::before{flex-basis:16px;width:16px;height:16px}
  .proj-doc-new{grid-column:2;grid-row:1;margin:0}
  .proj-doc-new[open]{grid-column:1/-1;grid-row:2}
  .proj-doc-new>summary{min-height:44px}
  .proj-doc-new>.row-actions>.btn{min-height:44px}
  .proj-doc-main{grid-column:1;grid-row:2;padding:0 12px 12px;overflow:visible}
  .proj-doc-current{min-height:64px}
  .proj-doc-current h3{font-size:15px}
  .proj-doc-columns{display:none}
  .proj-doc-row{grid-template-columns:26px minmax(0,1fr) max-content;column-gap:8px;row-gap:4px;min-height:56px;padding:10px 2px}
  .proj-doc-file-icon{grid-column:1;grid-row:1/3}
  .proj-doc-row-main{grid-column:2;grid-row:1;padding-right:0;border-right:0;min-height:0}
  .proj-doc-row-main strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .proj-doc-row-main .cell-secondary{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .proj-doc-type,.proj-doc-size{display:none}
  .proj-doc-status{grid-column:2;grid-row:2;justify-self:start;height:auto;min-height:24px}
  .proj-doc-date{grid-column:2;grid-row:2;justify-self:end;font-size:11px;height:auto;min-height:24px}
  .proj-doc-row-actions{grid-column:3;grid-row:1/3;gap:8px}
  .proj-doc-row-actions [data-act="preview"]{display:none}
  .pb-hist{grid-column:1;grid-row:3;border-top:1px solid var(--line);border-left:0}
  .pb-hist-body{min-height:100px}
  .pb-hist-body .fleet-empty{min-height:120px}
  .pb-kanban .kanban-col{flex-basis:220px;width:220px}
}
@media(max-width:360px){
  .proj-doc-folder-list{grid-template-columns:minmax(0,1fr)}
}
.panel>summary.panel-sum,.panel-sum{display:block;padding:12px 16px;font-size:14px;font-weight:650;cursor:pointer;list-style:none;border-bottom:1px solid var(--line)}
.panel>summary.panel-sum::-webkit-details-marker{display:none}
.row-more{position:relative;display:inline-block}.row-more>summary{list-style:none;cursor:pointer}.row-more>summary::-webkit-details-marker{display:none}
.kanban-stage-title{font-size:13px;font-weight:650;color:var(--text);display:flex;align-items:center;gap:6px}
.kanban-stage-title .count{font-size:11px;font-weight:600;color:var(--muted);background:var(--surface-2);border-radius:999px;padding:1px 7px}
.task-card .t-kind{display:none}
.prod-lib-shell{min-height:min(62vh,560px)}
.prod-category-row{display:flex;align-items:center;gap:4px;min-width:0}
.prod-category-row>.fleet-list-item{flex:1;min-width:0}.prod-category-row .fleet-list-item__title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.prod-category-row>.icon-btn{flex:0 0 32px;width:32px;height:32px;border:0;background:transparent;color:var(--muted)}
.prod-category-row>.icon-btn:hover{color:var(--red);background:var(--red-soft)}
.prod-lib-shell select{appearance:none;height:36px;min-height:36px;padding:6px 28px 6px 10px;border:1px solid var(--line);border-radius:var(--control-r);font:inherit;color:var(--text);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23556579' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 10px center}
.prod-lib-shell .fleet-side-extra>summary{color:var(--blue);font-size:13px}
.fleet-hero{display:flex;align-items:flex-start;justify-content:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.fleet-hero .fleet-panel-actions{margin-left:auto}
.rental-lease-page .rental-page{margin:0}
.rental-lease-page>.list-toolbar,.rental-lease-page .contract-header{margin-bottom:10px;flex:0 0 auto}
.stage-head{background:var(--surface-2)}.docs .doc{border-color:var(--line);border-radius:7px;padding:10px 12px}
.file-drop,[data-file-drop],.docs-panel-drop{position:relative;border:1px dashed var(--line-strong);border-radius:7px;background:var(--surface-2);padding:12px;min-height:56px}.file-drop.is-drag,[data-file-drop].is-drag,.docs-panel-drop.is-drag{background:var(--blue-soft);border-color:var(--blue);box-shadow:0 0 0 3px var(--accent-ring)}.file-drop-copy b{display:block;font-size:13px;font-weight:600}.file-drop-copy small{display:block;margin-top:4px;font-size:11px;color:var(--muted)}
.proj-doc-upload.file-drop,.proj-doc-upload[data-file-drop]{border:0;border-top:1px dashed var(--line);border-radius:0;background:transparent;padding:10px 0 2px;min-height:0;box-shadow:none}
.proj-doc-upload.file-drop.is-drag,.proj-doc-upload[data-file-drop].is-drag{border:1px dashed var(--blue);border-radius:var(--control-r);background:var(--blue-soft);padding:10px 8px;box-shadow:none}
.task-chat-wrap{max-width:none}.task-chat-bubble{border:1px solid var(--line);border-radius:3px 10px 10px 10px;background:var(--surface);padding:10px 12px;box-shadow:var(--shadow)}.task-chat-row--mine .task-chat-bubble{background:var(--blue-soft);border-color:#d5e1fa;border-radius:10px 3px 10px 10px}.task-chat-composer{border:1px solid var(--line);border-radius:var(--r);padding:12px;background:var(--surface)}.content:has(.chat-page){padding:16px 20px;height:auto}

/* Modal header / body / footer. */
.modal-bg{background:#17202c66;backdrop-filter:none;padding:24px}.modal-box{position:relative;border:1px solid var(--line);border-radius:var(--r-lg);max-width:480px;max-height:calc(100dvh - 48px);box-shadow:0 24px 72px #17202c38}.modal-box.wide{max-width:760px}
.modal-box h3{flex:0 0 auto;position:relative;display:flex;align-items:center;min-height:60px;padding:16px 56px 16px 20px;margin:0;font-size:16px;line-height:1.4;font-weight:650;letter-spacing:-.01em;background:var(--surface);border-bottom:1px solid var(--line)}
.modal-box .modal-close{position:absolute;right:14px;top:12px;border:0;background:transparent}.modal-box .mb{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:20px}
.modal-box .mf{flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;min-height:66px;padding:14px 20px;gap:8px;border-top:1px solid var(--line);background:var(--surface-2)}.modal-box .mf .btn{min-height:36px}
.dtm-dialog{position:fixed;inset:0;z-index:420;display:flex;align-items:center;justify-content:center;padding:16px;background:#17202c66}.dtm-dialog-card{width:100%;max-width:440px;padding:20px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-md)}.dtm-dialog-card p{margin:0 0 16px;font-size:14px;line-height:1.6}.dtm-dialog-actions{display:flex;justify-content:flex-end;gap:8px}
.notifications-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px}.notification-feed{display:flex;flex-direction:column;gap:8px}.notification-item{display:grid;grid-template-columns:8px minmax(0,1fr);gap:12px;padding:12px;border:1px solid var(--line);border-radius:8px}.notification-item.read{background:var(--surface-2)}.notification-dot{width:7px;height:7px;border-radius:50%;margin-top:6px;background:var(--blue)}.notification-item.read .notification-dot{background:var(--line-strong)}.notification-main b{display:block;font-size:13px;font-weight:600}.notification-main .meta{color:var(--muted);font-size:11px}.notification-main p{margin-top:6px}.notification-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.chat-back{display:none}.chat-page{border-radius:var(--r);border:1px solid var(--line)}.chat-page>.panel{box-shadow:none}.chat-folders .btn.primary{background:var(--blue-soft);color:var(--blue);border-color:transparent}.chat-folders .btn{border-color:transparent}.chat-head>div{min-width:0}
.login-card{max-width:400px;padding:28px;border:1px solid var(--line);box-shadow:var(--shadow-md)}.login-brand{font-size:20px}.login-card .form label{font-size:12px;text-transform:none;letter-spacing:0}.login-card input,.login-card .btn.primary{min-height:42px}

@media(max-width:1100px){.rental-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.fleet-shell{grid-template-columns:1fr;height:auto;min-height:0}.fleet-sidebar{max-height:38vh}.fleet-main{min-height:280px}.rental-form-grid{grid-template-columns:1fr}}
@media(max-width:1000px){
  #appShell.shell{grid-template-columns:minmax(0,1fr)}
  aside#appSidebar{position:fixed;top:0;left:0;bottom:0;width:264px;max-width:calc(100vw - 56px);height:100dvh;z-index:202;transform:translateX(-105%);transition:transform var(--motion-panel) var(--ease-out)}
  .content aside:not(#appSidebar){position:relative;inset:auto;width:auto;max-width:none;height:auto;max-height:none;z-index:auto;transform:none;box-shadow:none;padding-bottom:0}
  #appShell.nav-open #appSidebar{transform:translateX(0);box-shadow:12px 0 40px #17202c26}
  .btn-menu{display:inline-flex;flex:0 0 40px;width:40px;height:40px;min-height:40px;border:1px solid var(--line);border-radius:var(--control-r);background:var(--surface)}
  .mobile-nav-backdrop{display:block;position:fixed;inset:0;z-index:201;margin:0;padding:0;border:0;background:#17202c66;backdrop-filter:none;opacity:0;visibility:hidden;pointer-events:none}
  #appShell.nav-open .mobile-nav-backdrop{opacity:1;visibility:visible;pointer-events:auto}header.bar{padding:0 12px}.content{padding:14px}
  .workspace-context{position:absolute;inset:0;z-index:70;width:100%;max-width:none;min-width:0;flex-basis:auto}
  .workspace-context-resizer{display:none}.workspace-context-head{min-height:58px}.workspace-context-body{height:calc(100% - 58px)}
}
@media(max-width:650px){
  :root{--control-h:44px}header.bar{flex-basis:52px;height:52px;min-height:52px;max-height:52px;padding:0 10px;gap:8px}header.bar h1{font-size:15px;display:block;white-space:nowrap;max-width:none}.header-crumb{font-size:10px}.bar-leading{gap:6px}.bar-trailing{gap:4px}
  .bar-trailing:has(.save-status.is-visible:not(.save-status--idle)){max-width:54%;flex-wrap:wrap}.save-status.is-visible:not(.save-status--idle){flex-basis:100%;max-width:100%;padding:2px 6px;font-size:10px}
  .icon-btn,#btnNotif.icon-btn,.bar-more>summary.icon-btn,.btn-menu{width:40px;min-width:40px;height:40px}
  aside#appSidebar nav button,aside#appSidebar .nav-rental-details>summary,aside#appSidebar nav button.nav-sub{min-height:44px}
  .workspace-tabs{min-height:43px;padding:7px 8px 0}.workspace-tab{flex-basis:158px;min-width:96px;max-width:180px;height:36px}.workspace-tab-open{padding-left:9px}.workspace-tab-close{width:30px;height:30px}
  .content{padding:12px 10px max(20px,env(safe-area-inset-bottom))}.panel{margin-bottom:12px}.panel h2{padding:12px}.panel .inner{padding:12px}
  .rental-page .rental-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rental-page .fleet-shell{height:auto}.rental-page .fleet-main{min-height:100px}.rental-page.rental-fill .list-toolbar>select,.rental-page.rental-fill .list-toolbar>input[type=date]{flex:1 1 calc(50% - 8px);max-width:none}.list-panel table.t.responsive-table td>.badge,.list-panel table.t.responsive-table td>.task-due,.list-panel table.t.responsive-table td>.task-pri{justify-self:start}
  .list-toolbar{padding:10px;gap:8px}.list-search,.picker-search{flex:1 1 100%;max-width:none;min-width:0}.list-toolbar>select{flex:1 1 100%}.registry-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));flex:1 1 100%;width:100%}.registry-controls .registry-select{width:100%;max-width:none;min-width:0;height:42px}.registry-controls .registry-select:last-child:nth-child(odd){grid-column:1/-1}.list-toolbar .meta{margin-left:0;white-space:normal}.toolbar-actions{margin-left:auto;max-width:100%}.list-toolbar .meta+.toolbar-actions{margin-left:auto}.toolbar-actions .btn{flex:1 1 auto}.btn.sm{min-height:40px}
  input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select,textarea,.form input:not([type=checkbox]):not([type=radio]),.form select,.g input:not([type=checkbox]):not([type=radio]),.g select{font-size:16px}
  .list-search input[type=search],.chat-search input[type=search]{min-height:0;height:auto;font-size:16px}.form-grid{grid-template-columns:minmax(0,1fr);gap:12px}.form-grid>.g{grid-column:1/-1}
  .kanban-col{flex-basis:calc(100vw - 48px);width:calc(100vw - 48px);max-height:none}.kanban-toolbar .toolbar-actions{justify-content:flex-start;margin-left:0}.ws-kanban{grid-template-columns:minmax(0,1fr)}
  .list-panel table.t.responsive-table,.list-panel table.t.responsive-table tbody,.list-panel table.t.responsive-table tr,.list-panel table.t.responsive-table td{display:block;width:100%;min-width:0}.list-panel table.t.responsive-table thead{display:none}.list-panel table.t.responsive-table tbody{padding:8px}
  .list-panel table.t.responsive-table tr{position:relative;padding:10px 12px;margin-bottom:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.list-panel table.t.responsive-table tr:last-child{margin-bottom:0}
  .list-panel table.t.responsive-table td{display:grid;grid-template-columns:minmax(84px,32%) minmax(0,1fr);align-items:start;gap:8px;padding:5px 0;border:0;text-align:left;white-space:normal;overflow-wrap:anywhere}
  .list-panel table.t.responsive-table td::before{content:attr(data-label);color:var(--muted);font-size:11px;font-weight:400;padding-top:1px}
  .list-panel table.t.responsive-table td:first-child{display:block;padding:2px 36px 10px 0;font-weight:600;font-size:14px}.list-panel table.t.responsive-table td:first-child::before,.list-panel table.t.responsive-table td[colspan]::before{display:none}
  .list-panel table.t.responsive-table td:has(>.row-menu-trigger):not(:has(>button:not(.row-menu-trigger))){position:absolute;top:6px;right:6px;display:block;width:auto;padding:0}.list-panel table.t.responsive-table td:has(>.row-menu-trigger)::before{display:none}.list-panel table.t.responsive-table td[colspan]{display:block;padding:12px}
  [data-view=tasks] .list-panel table.t.responsive-table tr:not(.mobile-expanded)>.mobile-secondary-cell{display:none}
  [data-view=tasks] .list-panel table.t.responsive-table td.mobile-row-details{display:block;padding:0}.mobile-row-details::before{display:none}.mobile-row-details>.btn{padding-left:0;min-height:40px}
  [data-view=tasks] .list-panel table.t.responsive-table td[data-label=Приоритет],[data-view=tasks] .list-panel table.t.responsive-table td[data-label=Статус]{display:inline-flex;width:auto;margin-right:8px;padding:0 0 6px}
  [data-view=tasks] .list-panel table.t.responsive-table td[data-label=Приоритет]::before,[data-view=tasks] .list-panel table.t.responsive-table td[data-label=Статус]::before{display:none}
  .fleet-card .fleet-detail-body{padding:12px}.fleet-detail-body .form-grid{grid-template-columns:minmax(0,1fr)}.fleet-card .fleet-detail-head{padding:12px;gap:8px;flex-wrap:wrap}.fleet-card .fleet-tabs{gap:0 16px;padding:0 12px}.fleet-card .fleet-tab{min-height:44px;padding:8px 0}.filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.fleet-card .fleet-title{font-size:16px}
  .fleet-card .form-grid:has(#fleet_plate){grid-template-columns:repeat(2,minmax(0,1fr))}.fleet-card .form-grid:has(#fleet_plate)>.g{grid-column:auto}.fleet-card .form-grid .g:has(#fleet_vin),.fleet-card .form-grid .g:has(#fleet_status){grid-column:1/-1}
  .rental-lease-page .rental-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rental-lease-page .rental-form-grid>.g:has([data-rlease-field=moduleId]),.rental-lease-page .rental-form-grid>.g:has([data-rlease-field=tenantId]),.rental-lease-page .rental-form-grid>.g:has([data-rlease-field=contractNumber]){grid-column:1/-1}
  .rental-lease-actions .btn,.rental-lease-actions .btn.primary,.rental-lease-actions .btn.danger{min-height:var(--control-h);height:var(--control-h);padding:0 12px;font-size:13px;border-radius:var(--control-r)}
  .modal-bg{padding:8px;align-items:center}.modal-box,.modal-box.wide{width:100%;max-width:100%;max-height:calc(100dvh - 16px);border-radius:12px}.modal-box h3{padding:16px 52px 16px 14px;font-size:15px}.modal-box .mb{padding:16px 14px}.modal-box .mf{padding:12px 14px max(12px,env(safe-area-inset-bottom))}.modal-box .mf .btn{min-height:44px;flex:1;white-space:normal}.content:has(.chat-page){padding:8px}.chat-search,.chat-thread-search{min-width:0}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Shared system pass: remove duplicate chrome, align lists and give destructive actions one treatment. */
.top-title{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.top-actions{gap:6px}
.task-list-table{table-layout:fixed}
.task-list-table th:nth-child(1),.task-list-table td:nth-child(1){width:27%}
.task-list-table th:nth-child(2),.task-list-table td:nth-child(2){width:13%}
.task-list-table th:nth-child(3),.task-list-table td:nth-child(3){width:13%}
.task-list-table th:nth-child(4),.task-list-table td:nth-child(4){width:25%}
.task-list-table th:nth-child(5),.task-list-table td:nth-child(5){width:22%}
.task-list-table td:first-child>.link{display:block;max-width:100%;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(min-width:701px){.task-list-table tbody tr{height:52px}.task-list-table td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-list-table td>.link{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
.settings-page{width:100%;margin:0}
.settings-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border-bottom:1px solid var(--line)}
.settings-row:last-child{border-bottom:0}.settings-row h3{font-size:14px;margin:0 0 4px}.settings-row p{font-size:13px;color:var(--muted);margin:0}.settings-row>.btn{flex-shrink:0}
@media(max-width:700px){.settings-row{align-items:flex-start;flex-direction:column;gap:12px}.settings-heading{flex-wrap:wrap}}
.settings-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}
.settings-heading p{margin:0 0 2px;color:var(--muted);font-size:12px}
.settings-heading h2{margin:0;font-size:20px;line-height:1.3}
@media(max-width:700px){.settings-heading h2{font-size:19px}.task-list-table{table-layout:auto}}

/* Shared action menus: neutral actions, one danger group, consistent targets. */
body :is(.row-more-menu,.action-popover,.chat-action-menu){box-sizing:border-box;width:184px;min-width:184px;max-width:calc(100vw - 16px);padding:6px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 4px 16px rgb(15 23 42 / 10%);z-index:15000}
body :is(.row-more-menu,.action-popover,.chat-action-menu)>button:is(button,.link,.btn){box-sizing:border-box;display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:36px;margin:0;padding:8px 10px;border:0;border-radius:4px;background:transparent;box-shadow:none;color:var(--text);font:500 13px/20px var(--font,Arial,sans-serif);text-align:left;text-decoration:none;white-space:normal;cursor:pointer}
body :is(.row-more-menu,.action-popover,.chat-action-menu)>button:is(button,.link,.btn):hover{background:var(--surface-2);text-decoration:none}
body :is(.row-more-menu,.action-popover,.chat-action-menu)>button:is(button,.link,.btn):is(.danger,.danger-link){color:var(--red)}
body :is(.row-more-menu,.action-popover,.chat-action-menu)>button:is(button,.link,.btn):not(.danger):not(.danger-link)+button:is(.danger,.danger-link){margin-top:5px;position:relative}
body :is(.row-more-menu,.action-popover,.chat-action-menu)>button:is(button,.link,.btn):not(.danger):not(.danger-link)+button:is(.danger,.danger-link)::before{content:"";position:absolute;left:4px;right:4px;top:-3px;height:1px;background:var(--line)}
body :is(.row-more-menu,.action-popover,.chat-action-menu)>button:is(button,.link,.btn):is(.danger,.danger-link):hover{background:var(--red-soft)}
body :is(.row-more-menu,.action-popover,.chat-action-menu)>button:is(button,.link,.btn):focus-visible{outline:2px solid var(--blue);outline-offset:-2px;background:var(--surface-2);box-shadow:none}
body :is(.row-more-menu,.action-popover,.chat-action-menu) .menu-item-icon{width:16px;height:16px;flex:0 0 16px}
body details.row-more>summary{display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:32px;padding:0;border:1px solid transparent;border-radius:6px;color:var(--muted);background:transparent;box-shadow:none;font-size:18px}
body details.row-more>summary:hover,body details.row-more[open]>summary{background:var(--surface-2);border-color:var(--line);color:var(--text)}
body details.row-more>summary:focus:not(:focus-visible){outline:none;box-shadow:none}
@media(max-width:650px){body :is(.row-more-menu,.action-popover,.chat-action-menu)>button:is(button,.link,.btn){min-height:44px}body details.row-more>summary{width:40px;height:40px}}
/* Bounded employee chooser. Do not set inset:!important: it blocks JS left/top. */
body .dtm-people-picker{position:fixed;margin:0;transform:none;display:flex;flex-direction:column;width:min(320px,calc(100vw - 16px));max-width:calc(100vw - 16px);max-height:min(320px,calc(100dvh - 16px));padding:0;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);box-shadow:0 4px 16px rgb(15 23 42 / 10%);font:13px/1.5 var(--font,Arial,sans-serif);overflow:hidden;z-index:10060}
.dtm-people-picker .people-search{padding:10px 10px 6px;flex:none}
.dtm-people-picker input{box-sizing:border-box;width:100%;height:36px;min-width:0;padding:6px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);font:inherit;color:inherit}
.dtm-people-picker input:focus{outline:2px solid var(--blue);outline-offset:1px}
.dtm-people-picker .people-count{padding:0 12px 6px;color:var(--muted);font-size:12px;flex:none}
.dtm-people-picker .people-list{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:4px 6px 6px}
.dtm-people-picker .people-list button{display:flex;flex-direction:column;align-items:flex-start;box-sizing:border-box;width:100%;min-height:44px;padding:7px 8px;border:0;border-radius:4px;background:transparent;font:inherit;text-align:left;color:inherit;cursor:pointer;white-space:normal;overflow-wrap:anywhere}
.dtm-people-picker .people-list button small{color:var(--muted);font-size:12px}
.dtm-people-picker .people-list button:is(:hover,:focus-visible){background:var(--surface-2);outline:2px solid var(--blue);outline-offset:-2px}
.dtm-people-picker .people-list button:disabled{opacity:.6;cursor:default}
.dtm-people-picker .people-empty{padding:12px;color:var(--muted);margin:0}
body :is(.row-more-menu,.action-popover,.chat-action-menu){max-height:calc(100dvh - 16px);overflow-y:auto;overscroll-behavior:contain}
body .action-popover>button{flex-shrink:0}
