/* RutilSK pre-beta shell hardening */
:where(.primary,.secondary,.control-edit-action,.objects-actions button,.custom-section-actions button){
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  vertical-align:middle;
  line-height:1.15;
  box-sizing:border-box;
}
:where(.primary,.secondary,.control-edit-action,.objects-actions button,.custom-section-actions button){
  white-space:normal;
  overflow-wrap:anywhere;
}
:where(main,.view,.panel,.row,.section-compact-head){min-width:0}
.section-compact-head{gap:10px;flex-wrap:wrap}
.section-compact-head>.row{margin-left:auto}
.custom-section-admin{overflow:hidden}
.custom-section-create-row{display:grid!important;grid-template-columns:minmax(180px,.7fr) minmax(280px,1.3fr) auto;gap:6px}
.custom-sections-admin-list{max-width:100%;overflow:hidden}
.custom-sections-admin-table{width:100%;max-width:100%;table-layout:fixed;border-collapse:collapse}
.custom-sections-admin-table th,.custom-sections-admin-table td{overflow-wrap:anywhere;vertical-align:middle}
.custom-sections-admin-table th:nth-child(1){width:20%}
.custom-sections-admin-table th:nth-child(2){width:40%}
.custom-sections-admin-table th:nth-child(3){width:18%}
.custom-sections-admin-table th:nth-child(4){width:22%}
.custom-section-actions{display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap}
.custom-section-toggle{justify-content:center}
.custom-sections-empty,.custom-section-empty,.custom-section-loading{padding:10px}
.custom-sections-nav button{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.custom-section-view{min-width:0}
.custom-section-head{align-items:center}
.custom-section-toolbar{display:flex;align-items:center;gap:5px}
.custom-section-table-wrap{width:100%;max-width:100%;overflow:hidden;margin-top:8px}
.custom-section-table{width:100%;max-width:100%;table-layout:fixed;border-collapse:collapse}
.custom-section-table th,.custom-section-table td{
  min-width:0;
  padding:5px;
  border:1px solid var(--border);
  text-align:center;
  vertical-align:middle;
  overflow-wrap:anywhere;
}
.custom-section-table th{background:var(--panel2);font-weight:700}
.custom-section-table input{width:100%;min-width:0;max-width:100%;text-align:center;box-sizing:border-box}
.custom-row-number{width:46px}
.custom-row-actions{width:150px}
.custom-section-msg{min-height:18px;margin-top:5px}
@media(max-width:900px){
  .custom-section-create-row{grid-template-columns:1fr}
  .custom-section-create-row>*{width:100%;min-width:0!important}
  .custom-sections-admin-table{font-size:11px}
  .custom-sections-admin-table th:nth-child(2){width:32%}
  .custom-section-table{font-size:10px}
  .custom-row-actions{width:110px}
}
@media(max-width:620px){
  .custom-sections-admin-table th:nth-child(2),
  .custom-sections-admin-table td:nth-child(2){display:none}
  .custom-sections-admin-table th:nth-child(1){width:34%}
  .custom-sections-admin-table th:nth-child(3){width:28%}
  .custom-sections-admin-table th:nth-child(4){width:38%}
  .custom-section-toolbar{width:100%}
  .custom-section-toolbar button{flex:1 1 0}
}

@media(max-width:620px){
  .custom-section-table{width:100%!important;min-width:0!important;max-width:100%!important;table-layout:fixed!important}
  .custom-section-table th,.custom-section-table td{min-width:0!important;padding:2px!important;font-size:9px;line-height:1.15}
  .custom-section-table input{width:100%!important;min-width:0!important;max-width:100%!important;padding:3px!important;font-size:9px}
  .custom-row-number{width:28px!important}
  .custom-row-actions{width:74px!important}
  .custom-section-actions{display:grid;grid-template-columns:1fr;gap:2px}
  .custom-section-actions button{width:100%!important;min-width:0!important;padding:3px 2px!important;font-size:8px}
}

/* Unified action groups: applies to current and future buttons inside action containers */
:where(.rutil-action-group,.rutil-action-bar,.custom-section-toolbar,.objects-actions,.control-selection-toolbar){
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:6px;
  flex-wrap:wrap;
  min-width:0;
}
:where(.rutil-action-group,.rutil-action-bar,.custom-section-toolbar,.objects-actions,.control-selection-toolbar)>button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto;
  min-height:30px;
  height:30px;
  margin:0!important;
  padding:0 10px!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
  box-sizing:border-box;
}
.rutil-form-actions{align-items:center!important}
.rutil-form-actions>button{
  align-self:stretch;
  min-height:34px!important;
  height:auto!important;
  padding-inline:14px!important;
}
.settings-primary-actions{justify-content:flex-start}
.custom-sections-admin-table th:nth-child(1){width:18%}
.custom-sections-admin-table th:nth-child(2){width:32%}
.custom-sections-admin-table th:nth-child(3){width:16%}
.custom-sections-admin-table th:nth-child(4){width:34%}
.custom-sections-admin-table .custom-section-actions{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(92px,1fr));
  align-items:center;
  justify-items:stretch;
  gap:5px;
  width:100%;
}
.custom-sections-admin-table .custom-section-actions>button{
  width:100%!important;
  min-width:0!important;
  max-width:100%;
  height:30px!important;
  padding:0 7px!important;
  margin:0!important;
  white-space:nowrap!important;
  text-align:center!important;
}
.custom-section-table .custom-section-actions{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(62px,1fr));
  align-items:center;
  gap:4px;
  width:100%;
}
.custom-section-table .custom-section-actions>button{
  width:100%!important;
  min-width:0!important;
  height:28px!important;
  padding:0 6px!important;
  margin:0!important;
  white-space:nowrap!important;
}
@media(max-width:900px){
  .custom-sections-admin-table th:nth-child(1){width:22%}
  .custom-sections-admin-table th:nth-child(2){width:24%}
  .custom-sections-admin-table th:nth-child(3){width:20%}
  .custom-sections-admin-table th:nth-child(4){width:34%}
}
@media(max-width:620px){
  :where(.rutil-action-group,.rutil-action-bar,.custom-section-toolbar)>button{min-height:30px}
  .custom-sections-admin-table .custom-section-actions,
  .custom-section-table .custom-section-actions{grid-template-columns:1fr!important}
}

/* Directory cards v2: deterministic layout for current and future actions */
#control .control-directory-chip-list{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(190px,220px))!important;
  align-items:stretch!important;
  gap:6px!important;
}
#control .control-directory-chip{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-auto-rows:auto!important;
  align-items:center!important;
  align-content:start!important;
  gap:5px!important;
  width:100%!important;
  min-width:0!important;
  max-width:220px!important;
  min-height:72px!important;
  padding:7px!important;
  box-sizing:border-box!important;
  white-space:normal!important;
}
#control .control-directory-chip>span{
  grid-column:1/-1!important;
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
  min-height:24px!important;
  margin:0!important;
  padding:0 1px 3px!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
  line-height:1.2!important;
}
#control .control-directory-chip>button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:28px!important;
  min-height:28px!important;
  margin:0!important;
  padding:0 5px!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
}
@media(max-width:760px){
  #control .control-directory-chip-list{grid-template-columns:1fr!important}
  #control .control-directory-chip{max-width:none!important}
}

/* Control management v5: compact categorized directories */
#control .control-directory-panel{display:grid;gap:10px}
#control .control-directory-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}
#control .control-directory-head h3{margin:0 0 3px}
#control .control-directory-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#control .control-directory-category{min-width:0;margin:0;padding:8px 9px 9px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:9px}
#control .control-directory-category legend{padding:0 6px;font-weight:700;font-size:12px}
#control .control-directory-category .control-directory-compact{display:grid;gap:6px}
#control .control-directory-item{display:grid!important;grid-template-columns:minmax(150px,1fr) auto;gap:6px;align-items:center;min-width:0}
#control .control-directory-item.control-person-item{grid-template-columns:minmax(150px,.8fr) minmax(170px,1fr) auto}
#control .control-directory-item.control-work-item{grid-template-columns:minmax(130px,.7fr) minmax(170px,1fr) minmax(140px,.8fr) auto}
#control .control-directory-item :is(input,select){width:100%;min-width:0;height:32px}
#control .control-directory-item button{height:32px;min-height:32px;white-space:nowrap}
#control .control-directory-filled{display:grid;gap:8px}
#control .control-directory-filled>h3{margin:0}
#control .control-directory-filled-category{display:grid;gap:7px;padding-top:9px;border-top:1px solid color-mix(in srgb,var(--border) 65%,transparent)}
#control .control-directory-filled-category:first-child{border-top:0;padding-top:0}
#control .control-directory-filled-category>h4{margin:0;font-size:13px}
#control .control-directory-manager{display:grid;gap:5px}
#control .control-directory-manager>b{font-size:12px}
#control .directory-configurator-card{width:min(820px,calc(100vw - 28px));max-height:min(82vh,760px);overflow:auto}
#control .directory-configurator-create{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(190px,.8fr);gap:6px;align-items:center;margin:10px 0}
#control .directory-configurator-create>*{min-width:0}
#control .custom-directory-groups-admin{display:grid;gap:8px}
#control .custom-directory-group-card{display:grid;gap:7px;padding:9px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:9px}
#control .custom-directory-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;flex-wrap:wrap}
#control .custom-directory-group-head>div:first-child{display:grid;gap:2px}
#control .custom-directory-group-head .rutil-action-group{justify-content:flex-end}
#control .custom-directory-group-head select{height:30px;min-width:120px}
#control .custom-directory-value-add{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:6px;align-items:center}
#control .control-compact-select{min-height:28px;max-width:100%}
@media(max-width:900px){
 #control .control-directory-categories{grid-template-columns:1fr}
 #control .control-directory-item.control-person-item,
 #control .control-directory-item.control-work-item{grid-template-columns:1fr}
 #control .control-directory-item{grid-template-columns:1fr}
 #control .directory-configurator-create{grid-template-columns:1fr}
 #control .custom-directory-value-add{grid-template-columns:1fr auto}
}

/* Accept action: same geometry as other row actions, green semantic emphasis */
#control .control-register-table .control-quick-actions>button.control-accept-action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  height:28px!important;
  min-height:28px!important;
  margin:0!important;
  padding:0 8px!important;
  border-radius:7px!important;
  background:#2f9e64!important;
  border:1px solid #2f9e64!important;
  color:#fff!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
}
#control .control-register-table .control-quick-actions>button.control-accept-action:hover{
  background:#278657!important;
  border-color:#278657!important;
}
#control .control-register-table .control-quick-actions>button.control-accept-action:focus-visible{
  outline:2px solid color-mix(in srgb,#2f9e64 70%,white)!important;
  outline-offset:2px!important;
}


/* Management viewport: both configuration and filled values remain reachable */
#control [data-control-panel="management"].active{
  display:grid!important;
  grid-template-rows:minmax(150px,42%) minmax(170px,1fr)!important;
  gap:6px!important;
  min-height:0!important;
  overflow:hidden!important;
  padding:0 6px 6px!important;
  box-sizing:border-box!important;
}
#control [data-control-panel="management"].active>.panel{
  min-height:0!important;
  margin:0!important;
  box-sizing:border-box!important;
}
#control [data-control-panel="management"]>.control-directory-panel{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable;
}
#control [data-control-panel="management"]>.control-directory-filled{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  overflow:hidden!important;
}
#control [data-control-panel="management"]>.control-directory-filled>h3,
#control [data-control-panel="management"]>.control-directory-filled>.small{
  flex:0 0 auto!important;
}
#control #controlDirectoryLists{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  padding-right:4px!important;
}
@media(max-width:900px){
 #control [data-control-panel="management"].active{
   grid-template-rows:minmax(140px,45%) minmax(160px,1fr)!important;
 }
}

/* Registered act preview */
.act-preview-modal{
 position:fixed;inset:0;z-index:2600;display:none;align-items:center;justify-content:center;
 padding:14px;background:rgba(8,11,16,.62);backdrop-filter:blur(2px);
}
.act-preview-modal.open{display:flex}
.act-preview-card{
 width:min(1120px,calc(100vw - 28px));height:min(92vh,920px);min-height:0;
 display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:8px;
 padding:10px;background:var(--panel);border:1px solid var(--border);border-radius:12px;
 box-shadow:0 18px 55px rgba(0,0,0,.28);overflow:hidden;
}
.act-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.act-preview-head>.rutil-action-group{margin-left:auto}
.act-preview-stage{
 min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;
 padding:14px;background:color-mix(in srgb,var(--panel2) 88%,#000 12%);border-radius:9px;
}
.act-preview-page{
 position:relative;margin:0 auto;background:#fff;color:#111;font-family:"Times New Roman",serif;font-size:11pt;
 box-sizing:border-box;box-shadow:0 4px 22px rgba(0,0,0,.2);overflow:hidden;
}
.act-doc-required-brand-wrap{position:absolute;top:7mm;right:8mm;z-index:3;margin:0;pointer-events:none}
.act-doc-required-brand{display:inline-block;width:48mm;max-width:48mm;height:auto}
.act-doc-paragraph{margin:0 0 2.2mm;line-height:1.15;white-space:normal}
.act-doc-table{width:100%;border-collapse:collapse;table-layout:fixed;margin:2mm 0}
.act-doc-table td{border:1px solid #444;padding:1.5mm 2mm;vertical-align:top;overflow-wrap:anywhere}
.act-doc-table .act-doc-paragraph{margin:0}
.act-doc-image{max-width:100%;height:auto}
.act-doc-header{margin-bottom:4mm}
.act-doc-footer{margin-top:4mm;font-size:9pt}
#actPreviewMsg{min-height:18px}
@media(max-width:760px){
 .act-preview-modal{padding:6px}
 .act-preview-card{width:calc(100vw - 12px);height:calc(100vh - 12px);border-radius:9px}
 .act-preview-stage{padding:7px}
 .act-preview-head>.rutil-action-group{width:100%}
 .act-preview-head>.rutil-action-group>button{flex:1 1 0}
}

/* Control management v7: stable form rows, no button word wrapping */
#control .control-directory-category .control-directory-compact{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:6px!important;
  width:100%!important;
  overflow:visible!important;
}
#control .control-directory-category .control-directory-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) max-content!important;
  align-items:center!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  flex:none!important;
}
#control .control-directory-category .control-directory-item.control-person-item{
  grid-template-columns:minmax(145px,.78fr) minmax(190px,1fr) minmax(126px,max-content)!important;
}
#control .control-directory-category .control-directory-item.control-work-item{
  grid-template-columns:minmax(125px,.68fr) minmax(175px,1fr) minmax(145px,.78fr) minmax(112px,max-content)!important;
}
#control .control-directory-category .control-directory-item :is(input,select){
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:32px!important;
  box-sizing:border-box!important;
}
#control .control-directory-category .control-directory-item>button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:112px!important;
  max-width:none!important;
  height:32px!important;
  min-height:32px!important;
  margin:0!important;
  padding:0 10px!important;
  line-height:1!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  flex:none!important;
}
#control .control-directory-category .control-person-item>button{min-width:126px!important}
@media(max-width:1250px){
  #control .control-directory-categories{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  #control .control-directory-category .control-directory-item,
  #control .control-directory-category .control-directory-item.control-person-item,
  #control .control-directory-category .control-directory-item.control-work-item{
    grid-template-columns:minmax(0,1fr)!important;
  }
  #control .control-directory-category .control-directory-item>button{
    width:100%!important;
    min-width:0!important;
  }
}

/* Act preview footer: decisions only after document review */
.act-preview-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:0;
  border-top:1px solid var(--border);
  padding-top:8px;
}
.act-preview-footer>#actPreviewMsg{flex:1 1 auto;min-width:0}
.act-preview-footer>.rutil-action-group{flex:0 0 auto;justify-content:flex-end}
@media(max-width:760px){
  .act-preview-footer{align-items:stretch;flex-direction:column}
  .act-preview-footer>.rutil-action-group{width:100%}
  .act-preview-footer>.rutil-action-group>button{flex:1 1 0}
}

/* Row edit status v10: compact privacy-safe indicator in № п/п */
#control .control-register-table .control-row-number-cell{
  text-align:center!important;
  vertical-align:middle!important;
}
#control .control-row-number-wrap{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:28px;
  white-space:nowrap;
}
#control .control-row-status{
  display:inline-flex;
  width:7px;
  height:7px;
  flex:0 0 7px;
  align-items:center;
  justify-content:center;
}
#control .control-row-status-dot{
  display:block;
  width:7px;
  height:7px;
  border-radius:50%;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--border) 72%,transparent);
}
#control .control-row-status.mine .control-row-status-dot{
  background:#2fbf71;
  box-shadow:0 0 0 2px color-mix(in srgb,#2fbf71 18%,transparent);
}
#control .control-row-status.other .control-row-status-dot{
  background:#e45858;
  box-shadow:0 0 0 2px color-mix(in srgb,#e45858 18%,transparent);
}
#control .control-row-status.free .control-row-status-dot{visibility:hidden}
#control .control-register-table tr.control-reserved,
#control .control-register-table tr.control-reserved-other{box-shadow:none!important}
#control .control-register-table tr.control-reserved td,
#control .control-register-table tr.control-reserved-other td{background:var(--panel)!important}
#control .control-register-table tr.control-reserved td:first-child,
#control .control-register-table tr.control-reserved td:last-child,
#control .control-register-table tr.control-reserved-other td:first-child,
#control .control-register-table tr.control-reserved-other td:last-child{background:var(--panel)!important}

/* Directory configurator v11: structure editor + main-panel value entry */
#control .custom-directory-inputs{display:contents!important}
#control .control-directory-item.custom-directory-input-row{
  display:grid!important;
  grid-template-columns:minmax(120px,.65fr) minmax(160px,1fr) max-content!important;
  align-items:center!important;
  gap:6px!important;
  width:100%!important;
}
#control .custom-directory-input-label{
  min-width:0;
  font-size:12px;
  font-weight:700;
  line-height:1.15;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#control .custom-directory-input-row>button{min-width:96px!important}
#control .directory-configurator-card{
  width:min(900px,calc(100vw - 28px))!important;
  max-height:min(84vh,780px)!important;
  overflow:auto!important;
}
#control .directory-configurator-card .section-configurator-head>div{min-width:0!important;flex:1 1 auto!important}
#control .directory-configurator-close{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:82px!important;
  height:32px!important;
  padding:0 12px!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
#control .custom-directory-group-card{padding:10px!important}
#control .custom-directory-group-edit{
  display:grid!important;
  grid-template-columns:minmax(210px,1fr) minmax(165px,190px) max-content!important;
  gap:8px!important;
  align-items:end!important;
}
#control .custom-directory-edit-field{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
  margin:0!important;
}
#control .custom-directory-edit-field>span{
  display:block!important;
  font-size:11px!important;
  font-weight:700!important;
  color:var(--muted)!important;
  white-space:nowrap!important;
}
#control .custom-directory-edit-field :is(input,select){
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:34px!important;
  box-sizing:border-box!important;
  line-height:1.2!important;
}
#control .custom-directory-edit-category select{
  min-width:165px!important;
  padding-right:30px!important;
  white-space:nowrap!important;
}
#control .custom-directory-group-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
}
#control .custom-directory-group-actions>button{
  min-width:78px!important;
  height:34px!important;
  padding:0 9px!important;
  white-space:nowrap!important;
}
#control .custom-directory-group-meta{margin-top:1px!important}
@media(max-width:900px){
  #control .custom-directory-group-edit{grid-template-columns:1fr!important;align-items:stretch!important}
  #control .custom-directory-group-actions{justify-content:flex-start!important;flex-wrap:wrap!important}
}
@media(max-width:760px){
  #control .control-directory-item.custom-directory-input-row{grid-template-columns:1fr!important}
  #control .custom-directory-input-row>button{width:100%!important}
  #control .directory-configurator-card .section-configurator-head{align-items:flex-start!important}
}

/* Management workspace v12: same split interaction model as Schedule */
#control [data-control-panel="management"].active{
  display:flex!important;flex-direction:column!important;gap:6px!important;
  min-height:0!important;overflow:hidden!important;padding:0 6px 6px!important;
}
#control .management-view-tabs{
  display:flex!important;align-items:center!important;gap:8px!important;flex:0 0 auto!important;
  min-width:0!important;padding:4px 6px!important;background:var(--panel)!important;
  border:1px solid var(--border)!important;border-radius:9px!important;
}
#control .management-view-modes,#control .management-window-actions{display:flex;align-items:center;gap:4px}
#control .management-window-actions{margin-left:auto}
#control .management-view-modes>.secondary.active{
  background:var(--panel2)!important;border-color:color-mix(in srgb,var(--text) 35%,var(--border))!important;
}
#control .management-search-wrap{
  display:flex;align-items:center;gap:6px;min-width:220px;max-width:min(520px,42vw);margin-left:auto;flex:1 1 360px;
}
#control .management-search-wrap input{min-width:120px;flex:1 1 auto;height:32px}
#control .management-search-wrap select{flex:0 0 150px;min-width:130px;height:32px}

#control .management-workspace{
  --management-left:52%;display:flex!important;align-items:stretch!important;
  flex:1 1 auto!important;min-height:0!important;min-width:0!important;overflow:hidden!important;
}
#control .management-workspace>.management-pane{
  min-width:0!important;height:100%!important;margin:0!important;overflow:hidden!important;
  transition:flex-basis .28s cubic-bezier(.2,.72,.2,1),max-width .28s cubic-bezier(.2,.72,.2,1),opacity .20s ease,transform .28s cubic-bezier(.2,.72,.2,1),border-width .20s ease!important;
}
#control .management-workspace>[data-management-pane="lists"]{
  flex:0 0 calc(var(--management-left) - 4px)!important;max-width:calc(var(--management-left) - 4px)!important;
}
#control .management-workspace>[data-management-pane="values"]{
  flex:0 0 calc(100% - var(--management-left) - 4px)!important;max-width:calc(100% - var(--management-left) - 4px)!important;
}
#control .management-split-handle{
  position:relative;flex:0 0 8px!important;max-width:8px!important;cursor:col-resize;
  touch-action:none;outline:0;opacity:1;transition:opacity .18s ease,flex-basis .28s ease,max-width .28s ease;
}
#control .management-split-handle:before{
  content:"";position:absolute;top:6px;bottom:6px;left:3px;width:2px;border-radius:99px;
  background:var(--border);transition:background .16s ease,box-shadow .16s ease;
}
#control .management-split-handle:hover:before,#control .management-split-handle:focus:before,#control .management-workspace.is-resizing .management-split-handle:before{
  background:var(--text);box-shadow:0 0 0 2px color-mix(in srgb,var(--text) 12%,transparent);
}

#control .management-workspace[data-mode="lists"]>[data-management-pane="lists"]{
  flex-basis:100%!important;max-width:100%!important;opacity:1!important;transform:translateX(0)!important;
}
#control .management-workspace[data-mode="lists"]>[data-management-pane="values"]{
  flex-basis:0!important;max-width:0!important;opacity:0!important;transform:translateX(54px)!important;
  border-width:0!important;pointer-events:none!important;padding-left:0!important;padding-right:0!important;
}
#control .management-workspace[data-mode="values"]>[data-management-pane="lists"]{
  flex-basis:0!important;max-width:0!important;opacity:0!important;transform:translateX(-54px)!important;
  border-width:0!important;pointer-events:none!important;padding-left:0!important;padding-right:0!important;
}
#control .management-workspace[data-mode="values"]>[data-management-pane="values"]{
  flex-basis:100%!important;max-width:100%!important;opacity:1!important;transform:translateX(0)!important;
}
#control .management-workspace[data-mode="lists"]>.management-split-handle,
#control .management-workspace[data-mode="values"]>.management-split-handle{
  flex-basis:0!important;max-width:0!important;opacity:0!important;pointer-events:none!important;
}
#control .management-workspace.is-resizing>.management-pane,
#control .management-workspace.is-resizing>.management-split-handle{transition:none!important}
#control .management-workspace>.control-directory-panel,
#control .management-workspace>.control-directory-filled{min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable}

#control [data-control-panel="management"].management-maximized{
  position:fixed!important;inset:0!important;z-index:19000!important;display:flex!important;
  flex-direction:column!important;background:var(--bg)!important;padding:8px!important;overflow:hidden!important;
}
#control [data-control-panel="management"].management-maximized>.management-view-tabs{
  flex:0 0 auto!important;margin:0 0 6px!important;
}
#control [data-control-panel="management"].management-maximized>.management-workspace{
  flex:1 1 auto!important;margin:0!important;
}
#control [data-control-panel="management"].management-maximized .management-view-modes{opacity:.45;pointer-events:none}
#control [data-control-panel="management"].management-maximized .management-search-wrap{
  max-width:min(620px,52vw);
}
body.management-modal-open{overflow:hidden!important}
#control .control-directory-filled-category[hidden],
#control .control-directory-manager[hidden]{display:none!important}
@media(max-width:920px){
  #control .management-search-wrap{max-width:none;flex-basis:100%;order:3}
  #control .management-view-tabs{flex-wrap:wrap}
}
@media(max-width:680px){
  #control .management-workspace{display:block!important;overflow:auto!important}
  #control .management-workspace>.management-pane{height:auto!important;min-height:260px!important;max-width:none!important;margin-bottom:8px!important;transform:none!important;opacity:1!important}
  #control .management-workspace[data-mode="lists"]>[data-management-pane="values"],
  #control .management-workspace[data-mode="values"]>[data-management-pane="lists"]{display:none!important}
  #control .management-split-handle{display:none!important}
  #control .management-search-wrap{display:grid;grid-template-columns:minmax(0,1fr) 140px}
}
/* Management workspace v13: adaptive density by pane width */
#control .management-pane{container-type:inline-size;container-name:managementpane}
#control .management-workspace>[data-management-pane="lists"]{padding:9px!important;gap:8px!important}
#control .control-directory-head{align-items:center!important;flex-wrap:nowrap!important;gap:8px!important}
#control .control-directory-head>div{min-width:0!important;flex:1 1 auto!important}
#control .control-directory-head h3,#control .control-directory-filled-head h3{margin:0!important;font-size:14px!important}
#control .control-directory-head .small,#control .control-directory-filled-head .small{font-size:10.5px!important;line-height:1.25!important}
#control .control-directory-head>button{flex:0 0 auto!important;height:30px!important;min-width:104px!important;padding:0 9px!important;white-space:nowrap!important}
#control .control-directory-categories{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))!important;gap:7px!important}
#control .control-directory-category{container-type:inline-size;container-name:directorycategory;padding:7px 8px 8px!important;border-radius:8px!important}
#control .control-directory-category legend{font-size:11.5px!important;padding:0 5px!important}
#control .control-directory-category .control-directory-compact{gap:5px!important}
#control .control-directory-category .control-directory-item{padding:0!important;border:0!important;background:transparent!important;grid-template-columns:minmax(0,1fr) max-content!important;gap:5px!important}
#control .control-directory-category .control-directory-item.control-person-item{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
#control .control-directory-category .control-person-item>button{grid-column:1/-1!important;justify-self:end!important}
#control .control-directory-category .control-directory-item.control-work-item{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important}
#control .control-directory-category .control-work-item>button{justify-self:end!important}
#control .control-directory-category .control-directory-item :is(input,select){height:30px!important;min-width:0!important;font-size:11px!important}
#control .control-directory-category .control-directory-item>button{height:30px!important;min-height:30px!important;min-width:92px!important;padding:0 8px!important;font-size:10.5px!important}
#control .control-directory-item.custom-directory-input-row{grid-template-columns:minmax(90px,.7fr) minmax(120px,1fr) max-content!important;gap:5px!important}
#control .custom-directory-input-label{font-size:11px!important}
#control .custom-directory-input-row>button{min-width:84px!important}
#control #controlManagementMsg{min-height:14px!important;font-size:10px!important;margin-top:0!important}
@container directorycategory (max-width:430px){
 #control .control-directory-category .control-directory-item,
 #control .control-directory-category .control-directory-item.control-person-item,
 #control .control-directory-category .control-directory-item.control-work-item,
 #control .control-directory-item.custom-directory-input-row{grid-template-columns:minmax(0,1fr)!important}
 #control .control-directory-category .control-directory-item>button{width:100%!important;justify-self:stretch!important;grid-column:auto!important}
 #control .custom-directory-input-label{white-space:normal!important}
}
#control .management-workspace>[data-management-pane="values"]{padding:9px!important;display:flex!important;flex-direction:column!important;gap:7px!important}
#control .control-directory-filled-head{flex:0 0 auto!important;min-width:0!important}
#control #controlDirectoryLists{flex:1 1 auto!important;min-height:0!important;margin:0!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable}
#control .control-directory-filled-category{gap:5px!important;padding-top:7px!important}
#control .control-directory-filled-category>h4{font-size:11.5px!important}
#control .control-directory-filled .control-directory-manager{grid-template-columns:minmax(96px,140px) minmax(0,1fr)!important;gap:6px!important}
#control .control-directory-filled .control-directory-manager>b{font-size:11px!important;line-height:1.25!important}
#control .control-directory-filled .control-directory-chip-list{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(168px,1fr))!important;gap:5px!important}
#control .control-directory-filled .control-directory-chip{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important;max-width:none!important;min-height:58px!important;padding:5px!important}
#control .control-directory-filled .control-directory-chip>span{grid-column:1/-1!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important;line-height:1.2!important;min-height:26px!important;font-size:10.5px!important}
#control .control-directory-filled .control-directory-chip>button{height:25px!important;min-height:25px!important;padding:0 4px!important;font-size:9.5px!important;line-height:1!important}
@container managementpane (max-width:520px){
 #control .control-directory-filled .control-directory-manager{grid-template-columns:minmax(0,1fr)!important}
 #control .control-directory-filled .control-directory-chip-list{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))!important}
 #control .control-directory-head{align-items:flex-start!important;flex-wrap:wrap!important}
 #control .control-directory-head>button{margin-left:auto!important}
}
#control .management-view-tabs{padding:4px 5px!important;gap:6px!important}
#control .management-view-modes{gap:3px!important}
#control .management-view-modes>.secondary{height:30px!important;padding:0 10px!important;font-size:11px!important}
#control .management-pane-fullscreen{width:29px!important;height:29px!important;min-width:29px!important}
#control .management-search-wrap{gap:5px!important;max-width:min(500px,40vw)!important}
#control .management-search-wrap input,#control .management-search-wrap select{height:30px!important;font-size:11px!important}
#control .management-search-wrap select{flex-basis:138px!important;min-width:126px!important}
@container managementpane (min-width:980px){
 #control .control-directory-categories{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:1100px){
 #control .management-view-tabs{flex-wrap:wrap!important}
 #control .management-search-wrap{order:3;flex:1 1 100%!important;max-width:none!important}
}
@media(max-width:680px){
 #control .management-view-modes{width:100%;display:grid!important;grid-template-columns:minmax(0,1fr) 29px minmax(0,1fr) 29px}
 #control .management-search-wrap{grid-template-columns:minmax(0,1fr) 126px!important}
}
#control #managementCloseButton[hidden]{display:none!important}
#control .management-window-actions:empty{display:none!important}
#control .management-window-actions:has(#managementCloseButton[hidden]){display:none!important}

/* typography-readability-v15 */
html,body{font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif}
body{font-size:14px;line-height:1.5;text-rendering:optimizeLegibility}
button,input,select,textarea{font-family:inherit}
nav button{font-size:13px} nav .nav-title{font-size:10.5px}.small{font-size:12.5px}
.user-topbar-meta{font-size:11.5px}.settings-scope{font-size:9.5px}
.notify-pref-row,.permission-right span{font-size:11.5px!important}#systemStatusPanel .card h3{font-size:11.5px}
.control-tab{font-size:11.5px!important}
.control-register-table{font-size:11px!important}.control-register-table.control-dense{font-size:10.25px!important}
.control-register-table input,.control-register-table select,.control-register-table textarea{font-size:10.5px!important}
.control-register-table .cell-actions button{font-size:10.5px!important}.control-selection-toolbar button{font-size:11px}
.control-register-table .reserve-yes,.control-register-table .reserve-mine,.control-register-table .reserve-other{font-size:10.5px!important}
#control .control-directory-category legend{font-size:12px!important}
#control .control-directory-category .control-directory-item :is(input,select){font-size:11.5px!important}
#control .control-directory-category .control-directory-item>button{font-size:11px!important}
#control .custom-directory-input-label{font-size:11.5px!important}
#control .control-directory-filled-category>h4{font-size:12px!important}
#control .control-directory-filled .control-directory-manager>b{font-size:11.5px!important}
#control .control-directory-filled .control-directory-chip>span{font-size:11px!important}
#control .control-directory-filled .control-directory-chip>button{font-size:10px!important}
#control .management-view-modes>.secondary,#control .management-search-wrap input,#control .management-search-wrap select{font-size:11.5px!important}
@media(max-width:1100px){.control-tab{font-size:11.25px!important}}
@media(max-width:620px){.custom-section-table th,.custom-section-table td,.custom-section-table input{font-size:10px!important}.custom-section-actions button{font-size:9.5px!important}}
@media(max-width:600px){body{font-size:13.5px}}

/* typography-readability-v15.1: late legacy-density overrides */
#control .control-tab{font-size:10.75px!important;min-height:30px!important;line-height:1.15!important}
#control .control-register-table[data-auto-density="compact"]{font-size:10.25px!important}
#control .control-register-table[data-auto-density="compact"] th{font-size:10.25px!important}
#control .control-register-table[data-auto-density="compact"] :is(input,select,textarea,button){font-size:10.25px!important}
#control .control-register-table[data-auto-density="micro"]{font-size:10px!important}
#control .control-register-table[data-auto-density="micro"] th{font-size:10px!important}
#control .control-register-table[data-auto-density="micro"] :is(input,select,textarea,button){font-size:10px!important}
#control .id-draft-caption{font-size:10.5px!important}
#control .control-directory-chip button{font-size:10px!important}
@media(max-width:900px){#control .control-register-table{font-size:10px!important}#control .control-register-table thead th{font-size:10px!important}}

/* typography-readability-v15.2: interactive floor */
#control .control-directory-chip button{font-size:10.5px!important}
@media(max-width:620px){.custom-section-actions button{font-size:10.5px!important}}

/* table-filters-toolbar-v16 */
#control .control-selection-toolbar{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:36px!important;
  height:36px!important;
  padding:4px 6px!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:thin;
}
#control .control-toolbar-actions{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
#control .control-toolbar-actions .selection-count{
  margin-right:2px!important;
  font-size:10.5px!important;
}
#control .control-toolbar-divider{
  display:block!important;
  flex:0 0 1px!important;
  width:1px!important;
  height:22px!important;
  margin:0 2px!important;
  background:color-mix(in srgb,var(--border) 78%,transparent)!important;
}
#control .control-filter-group{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  flex:0 0 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
}
#control .control-filter-label{
  font-size:10.5px!important;
  font-weight:700!important;
  color:var(--muted)!important;
}
#control .control-filter-group select,
#control .control-filter-group input{
  height:28px!important;
  min-height:28px!important;
  margin:0!important;
  padding:3px 7px!important;
  font-size:10.5px!important;
  line-height:1.15!important;
}
#control .control-filter-group select{
  width:138px!important;
  min-width:120px!important;
  max-width:160px!important;
}
#control .control-filter-group input{
  width:150px!important;
  min-width:120px!important;
  max-width:190px!important;
}
#control .control-filter-reset{
  height:28px!important;
  min-height:28px!important;
  padding:3px 8px!important;
}
#control .control-filter-count{
  font-size:10.5px!important;
  color:var(--muted)!important;
  white-space:nowrap!important;
}
#control .control-register-table tbody tr[hidden]{display:none!important}
@media(max-width:900px){
  #control .control-filter-label{display:none!important}
  #control .control-filter-count{font-size:10px!important}
  #control .control-filter-group select{width:126px!important}
  #control .control-filter-group input{width:138px!important}
}

/* table-filters-toolbar-v16.1: stable single-line rail */
#control .control-selection-toolbar{
  box-sizing:border-box!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
#control .control-selection-toolbar::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
#control .control-selection-toolbar>*{align-self:center!important}

/* table-filters-toolbar-v17: compact grouped filters beside table format */
#control .control-selection-toolbar{
  gap:5px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-x:contain;
}
#control .control-toolbar-actions{gap:4px!important}
#control .control-toolbar-actions button{
  min-height:28px!important;
  height:28px!important;
  padding:3px 7px!important;
  font-size:10.5px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
}
#control .control-toolbar-divider{
  height:24px!important;
  margin:0 5px!important;
  background:color-mix(in srgb,var(--border) 92%,var(--muted) 8%)!important;
  box-shadow:1px 0 0 color-mix(in srgb,var(--panel) 72%,transparent)!important;
}
#control .control-filter-group{
  gap:4px!important;
  padding-left:1px!important;
}
#control .control-filter-label{
  margin-right:2px!important;
  letter-spacing:.01em;
}
@media(max-width:1320px){
  #control .control-toolbar-actions{gap:3px!important}
  #control .control-toolbar-actions button{padding-inline:6px!important}
  #control .control-filter-group select{width:122px!important;min-width:108px!important}
  #control .control-filter-group input{width:136px!important;min-width:116px!important}
}
@media(max-width:1120px){
  #control .control-toolbar-actions .selection-count{display:none!important}
  #control .control-filter-label{display:none!important}
  #control .control-filter-count{display:none!important}
  #control .control-toolbar-divider{margin-inline:3px!important}
  #control .control-filter-group select{width:112px!important;min-width:100px!important}
  #control .control-filter-group input{width:124px!important;min-width:108px!important}
}
@media(max-width:900px){
  #control .control-toolbar-actions button{padding-inline:5px!important;font-size:10px!important}
  #control .control-filter-group select{width:104px!important;min-width:96px!important}
  #control .control-filter-group input{width:114px!important;min-width:100px!important}
  #control .control-filter-reset{padding-inline:6px!important;font-size:10px!important}
}


/* excel-header-filters-v20 */
#control .control-register-table thead th{
  position:relative;
}
#control .control-th-inner{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  width:100%;
  min-width:0;
}
#control .control-th-label{
  min-width:0;
  flex:1 1 auto;
  text-align:center;
  line-height:1.15;
}
#control .control-header-filter{
  flex:0 0 20px!important;
  width:20px!important;
  min-width:20px!important;
  height:20px!important;
  min-height:20px!important;
  margin:0!important;
  padding:2px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid transparent!important;
  border-radius:4px!important;
  background:transparent!important;
  color:var(--muted)!important;
  opacity:.72;
  cursor:pointer;
}
#control .control-header-filter:hover{
  opacity:1;
  border-color:var(--border)!important;
  background:color-mix(in srgb,var(--panel2) 84%,var(--text) 5%)!important;
}
#control .control-header-filter.active{
  opacity:1;
  color:var(--text)!important;
  border-color:color-mix(in srgb,var(--accent) 68%,var(--border))!important;
  background:color-mix(in srgb,var(--accent) 28%,var(--panel2))!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)!important;
}
#control .control-header-filter svg{
  width:12px!important;
  height:12px!important;
  display:block;
  fill:currentColor;
}
#control .control-number-head .control-th-inner{gap:2px}
#control .control-clear-header-filters{
  border-color:color-mix(in srgb,var(--accent) 38%,var(--border))!important;
}

.control-header-filter-popup{
  position:fixed;
  z-index:12000;
  width:min(310px,calc(100vw - 16px));
  max-height:min(460px,calc(100vh - 16px));
  box-sizing:border-box;
  display:none;
  flex-direction:column;
  gap:7px;
  padding:9px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--panel);
  color:var(--text);
  box-shadow:0 14px 34px rgba(0,0,0,.34);
}
.control-header-filter-popup.open{display:flex}
.control-header-filter-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:28px;
}
.control-header-filter-head strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
}
.control-header-filter-close{
  width:26px!important;
  min-width:26px!important;
  height:26px!important;
  min-height:26px!important;
  padding:0!important;
  font-size:16px!important;
  line-height:1!important;
}
.control-header-filter-search{
  width:100%!important;
  min-width:0!important;
  height:30px!important;
  min-height:30px!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:4px 8px!important;
  font-size:11px!important;
}
.control-header-filter-all,
.control-header-filter-value{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  font-size:11px;
  cursor:pointer;
}
.control-header-filter-all{
  padding:4px 5px 6px;
  border-bottom:1px solid color-mix(in srgb,var(--border) 76%,transparent);
  font-weight:600;
}
.control-header-filter-all input,
.control-header-filter-value input{
  flex:0 0 auto;
  margin:0!important;
}
.control-header-filter-values{
  flex:1 1 auto;
  min-height:74px;
  max-height:290px;
  overflow:auto;
  padding:1px 2px;
}
.control-header-filter-value{
  padding:4px 5px;
  border-radius:4px;
}
.control-header-filter-value:hover{
  background:color-mix(in srgb,var(--panel2) 86%,var(--text) 4%);
}
.control-header-filter-value span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.control-header-filter-empty,
.control-header-filter-limit{
  padding:8px 5px;
  color:var(--muted);
}
.control-header-filter-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding-top:7px;
  border-top:1px solid color-mix(in srgb,var(--border) 76%,transparent);
}
.control-header-filter-footer>div{
  display:flex;
  gap:5px;
  flex:0 0 auto;
}
.control-header-filter-footer button{
  min-height:28px!important;
  height:28px!important;
  padding:3px 8px!important;
  font-size:10.5px!important;
}
@media(max-width:700px){
  #control .control-header-filter{flex-basis:18px!important;width:18px!important;min-width:18px!important;height:18px!important;min-height:18px!important}
  #control .control-header-filter svg{width:11px!important;height:11px!important}
}

#control .control-th-inner{padding-right:8px;box-sizing:border-box}

/* permission-matrix-user-edit-v21 */
.new-user-password-wrap{
  display:grid;
  grid-template-columns:minmax(180px,1fr) auto auto;
  gap:5px;
  align-items:center;
  min-width:0;
}
.new-user-password-wrap input{width:100%!important;min-width:0!important}
.new-user-password-wrap button{min-height:34px!important;white-space:nowrap}
.permission-user-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:5px;
  align-items:center;
}
.permission-user-actions button{min-height:28px!important;padding:4px 7px!important;font-size:10.5px!important}
.permission-user-editor[hidden]{display:none!important}
.permission-user-editor{
  position:fixed;
  inset:0;
  z-index:13000;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(0,0,0,.46);
}
.permission-user-editor-card{
  width:min(980px,calc(100vw - 28px));
  max-height:calc(100vh - 28px);
  overflow:auto;
  box-sizing:border-box;
  padding:14px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--panel);
  box-shadow:0 20px 48px rgba(0,0,0,.38);
}
.permission-user-editor-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start;
  margin-bottom:10px;
}
.permission-user-edit-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(180px,1fr));
  gap:7px;
}
.permission-user-edit-grid>*{width:100%!important;min-width:0!important;box-sizing:border-box}
.permission-user-editor-actions{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:8px;
  margin-top:10px;
}
.permission-user-editor-actions .small{margin-right:auto}
@media(max-width:900px){
  .permission-user-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .new-user-password-wrap{grid-template-columns:minmax(0,1fr) auto}
  .new-user-password-wrap button:last-child{grid-column:1/-1}
}
@media(max-width:620px){
  .permission-user-edit-grid{grid-template-columns:1fr}
  .permission-user-actions{justify-content:flex-start}
}

.new-user-password-note{grid-column:1/-1;line-height:1.3;color:var(--muted)}

/* rutilsk-v22-responsive-admin-ai */
.profile-center-body,
#profileCenterBody,
#profileCenterBody #profileSettingsPanel{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
#profileCenterBody #profileSettingsPanel>.row{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
  gap:6px!important;
  align-items:center!important;
  width:100%!important;
}
#profileCenterBody #profileSettingsPanel>.row>*{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
#profileCenterBody .profile-mail-grid{
  grid-template-columns:repeat(auto-fit,minmax(165px,1fr))!important;
  width:100%!important;
}
#profileCenterBody .profile-avatar-editor,
#profileCenterBody .profile-mailbox-panel,
#profileCenterBody #profileVerifyBox,
#profileCenterBody #profileTotpBox{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
#user_messages #directMessageRecipient{
  width:min(360px,100%)!important;
  min-width:240px!important;
  max-width:360px!important;
  color:var(--text)!important;
  background:var(--panel2)!important;
  text-align:left!important;
  text-align-last:left!important;
  padding-left:10px!important;
}
#user_messages #directMessageRecipient option{
  color:var(--text)!important;
  background:var(--panel2)!important;
  text-align:left!important;
}
#user_messages .message-recipient-choice{
  flex:0 1 auto;
  min-width:0;
  max-width:420px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
#userAdminTable td:last-child button{
  width:auto!important;
  min-width:0!important;
  min-height:28px!important;
  height:28px!important;
  padding:4px 7px!important;
  margin:2px 3px 2px 0!important;
  border-radius:7px!important;
  font-size:10px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#userAdminTable td:last-child{
  min-width:170px;
  line-height:1.15;
}
#userAdminTable input,
#userAdminTable select{
  min-height:30px!important;
  height:30px!important;
  padding:4px 7px!important;
  font-size:10.5px!important;
}
.permission-user-actions{
  gap:4px!important;
}
.permission-user-actions button{
  min-height:28px!important;
  height:28px!important;
  padding:4px 7px!important;
  font-size:10px!important;
  white-space:nowrap!important;
}
.ntd-title-full{
  margin-top:3px;
  line-height:1.28;
  white-space:normal!important;
  overflow-wrap:anywhere;
}
@media(max-width:700px){
  #profileCenterBody #profileSettingsPanel>.row{grid-template-columns:1fr!important}
  #user_messages #directMessageRecipient{width:100%!important;max-width:none!important}
  #user_messages .message-recipient-choice{width:100%;max-width:none}
}

/* ux-fixes-v22: profile scaling, messages visibility, compact user actions */
.profile-center-card{
  width:min(1180px,98vw)!important;
  height:min(780px,94vh);
  min-width:min(680px,94vw);
  min-height:420px;
  display:flex!important;
  flex-direction:column!important;
  resize:both;
  overflow:hidden!important;
}
.profile-center-head{flex:0 0 auto!important}
.profile-center-body{
  flex:1 1 auto!important;
  min-height:0!important;
  width:100%!important;
  box-sizing:border-box!important;
  overflow:auto!important;
}
#profileCenterBody #profileSettingsPanel{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
#profileCenterBody #profileSettingsPanel>.row{
  width:100%!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
}
#profileCenterBody #profileSettingsPanel>.row>input,
#profileCenterBody #profileSettingsPanel>.row>select{
  flex:1 1 180px!important;
  min-width:140px!important;
  max-width:none!important;
}
#profileCenterBody #profileSettingsPanel>.row>button{flex:0 0 auto!important}
#profileCenterBody .profile-mail-grid{
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr))!important;
  width:100%!important;
}
#profileCenterBody .profile-mail-grid>*{min-width:0!important;width:100%!important;box-sizing:border-box!important}
@media(max-width:720px){
  .profile-center-card{min-width:0!important;width:98vw!important;height:94vh!important;resize:none}
  #profileCenterBody #profileSettingsPanel>.row>input,
  #profileCenterBody #profileSettingsPanel>.row>select{flex-basis:100%!important}
}

/* messages: selected recipient must always be readable */
#user_messages #directMessageRecipient{
  flex:0 1 300px!important;
  width:min(300px,42vw)!important;
  max-width:300px!important;
  min-width:190px!important;
  color:var(--text)!important;
  background:var(--panel2)!important;
  -webkit-text-fill-color:var(--text)!important;
}
#user_messages #directMessageRecipient option{
  color:var(--text)!important;
  background:var(--panel)!important;
}
#user_messages .message-recipient-choice{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  max-width:280px;
  padding:2px 7px;
  border-left:1px solid var(--border);
  color:var(--text)!important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* user access actions: compact and separated */
#userAdminTable table{table-layout:auto}
#userAdminTable td:last-child{
  min-width:150px;
  vertical-align:top;
}
#userAdminTable td:last-child button{
  min-height:27px!important;
  height:27px!important;
  padding:3px 6px!important;
  margin:2px 2px 2px 0!important;
  font-size:10px!important;
  line-height:1.05!important;
  border-radius:5px!important;
  white-space:nowrap!important;
}
#userAdminTable td:last-child .control-delete{margin-left:0!important}
#userAdminTable select,#userAdminTable input{
  min-height:30px!important;
  height:30px!important;
  padding:3px 6px!important;
  font-size:10.5px!important;
}
.permission-user-actions{gap:4px!important}
.permission-user-actions button{
  min-height:27px!important;
  height:27px!important;
  padding:3px 6px!important;
  font-size:10px!important;
  margin:0!important;
}
.ntd-title-full{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  max-width:none!important;
  line-height:1.25!important;
  margin-top:3px;
}

#profileCenterBody .profile-identity-row{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:6px!important;
}
#profileCenterBody .profile-details-row{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
  gap:6px!important;
}
#profileCenterBody .profile-identity-row>input,
#profileCenterBody .profile-details-row>input{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
#profileCenterBody .profile-actions-row{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:5px!important;
}
@media(max-width:720px){
  #profileCenterBody .profile-identity-row,
  #profileCenterBody .profile-details-row{grid-template-columns:1fr!important}
}

#profileCenterBody .profile-details-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:900px){#profileCenterBody .profile-details-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){#profileCenterBody .profile-details-row{grid-template-columns:1fr!important}}

/* rutilsk-workspace-explorer-v1 */
body[data-view="sources"] #workspaceExplorer{
  --workspace-tree-w:28%;
  --workspace-details-w:26%;
  display:grid!important;
  grid-template-columns:minmax(210px,var(--workspace-tree-w)) 6px minmax(320px,1fr) 6px minmax(240px,var(--workspace-details-w));
  gap:0!important;
  width:100%!important;
  min-width:0!important;
  position:sticky!important;
  top:var(--workspace-sticky-top,60px)!important;
  height:var(--workspace-explorer-height,520px)!important;
  min-height:120px!important;
  max-height:var(--workspace-explorer-height,520px)!important;
  margin-top:8px!important;
  border:1px solid var(--border)!important;
  border-radius:10px!important;
  overflow:hidden!important;
  background:var(--panel)!important;
}
#workspaceExplorer .workspace-pane{min-width:0!important;min-height:0!important;height:100%!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:var(--panel)!important}
#workspaceExplorer .workspace-pane-title{flex:0 0 auto;padding:7px 10px;border-bottom:1px solid var(--border);font-size:11px;font-weight:700;color:var(--muted);background:var(--panel2)}
#workspaceExplorer .workspace-tree,#workspaceExplorer .workspace-content,#workspaceExplorer .workspace-details-body{flex:1 1 auto!important;min-height:0!important;height:auto!important;overflow:auto!important;padding:7px!important;overscroll-behavior:contain!important;scrollbar-gutter:stable}
#workspaceExplorer .workspace-tree,#workspaceExplorer .workspace-details{border:0!important;border-radius:0!important;background:transparent!important}
#workspaceExplorer .workspace-splitter{width:6px;cursor:col-resize;background:var(--border);position:relative;z-index:3;touch-action:none}
#workspaceExplorer .workspace-splitter:hover,#workspaceExplorer .workspace-splitter.is-dragging{background:color-mix(in srgb,var(--accent) 65%,var(--border))}
#workspaceExplorer .workspace-file{min-height:28px!important;padding:4px 7px!important;border-radius:5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#workspaceExplorer .workspace-file.is-selected{background:color-mix(in srgb,var(--accent) 18%,var(--panel2))!important;outline:1px solid color-mix(in srgb,var(--accent) 45%,transparent)}
#workspaceExplorer .workspace-tree-node{display:block;min-width:max-content}
#workspaceExplorer .workspace-tree-row{display:flex;align-items:center;gap:4px;min-height:27px;padding:3px 5px;border-radius:5px;cursor:pointer;white-space:nowrap}
#workspaceExplorer .workspace-tree-row:hover{background:var(--panel2)}
#workspaceExplorer .workspace-tree-children{padding-left:14px}
#workspaceExplorer .workspace-tree-toggle{width:18px;flex:0 0 18px;text-align:center;color:var(--muted)}
#workspaceExplorer .workspace-content-head{display:grid;grid-template-columns:minmax(180px,1fr) 110px 90px 145px;gap:8px;padding:5px 8px;border-bottom:1px solid var(--border);font-size:10px;font-weight:700;color:var(--muted);position:sticky;top:0;background:var(--panel);z-index:2}
#workspaceExplorer .workspace-content-row{display:grid;grid-template-columns:minmax(180px,1fr) 110px 90px 145px;gap:8px;align-items:center;min-height:29px;padding:4px 8px;border-bottom:1px solid color-mix(in srgb,var(--border) 55%,transparent);cursor:default}
#workspaceExplorer .workspace-content-row:hover{background:var(--panel2)}
#workspaceExplorer .workspace-content-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1050px){
 body[data-view="sources"] #workspaceExplorer{grid-template-columns:minmax(190px,32%) 5px minmax(300px,1fr)!important}
 #workspaceSplitRight,#workspaceDetails{display:none!important}
}
@media(max-width:720px){
 body[data-view="sources"] #workspaceExplorer{display:block!important;height:auto!important;max-height:none!important}
 #workspaceSplitLeft,#workspaceSplitRight{display:none!important}
 #workspaceTreePane,#workspaceContentPane,#workspaceDetails{height:auto!important;max-height:46vh!important}
}

.workspace-autosync-toggle{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:3px 7px;border:1px solid var(--border);border-radius:999px;background:var(--panel2);font-size:11px;white-space:nowrap;user-select:none}
.workspace-autosync-toggle input{position:absolute;opacity:0;pointer-events:none}
.workspace-autosync-toggle i{position:relative;display:inline-block;width:34px;height:18px;border-radius:999px;background:#6b737b;transition:.16s ease;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.workspace-autosync-toggle i:after{content:'';position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:.16s ease;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.workspace-autosync-toggle input:checked+i{background:#2e8b57}
.workspace-autosync-toggle input:checked+i:after{transform:translateX(16px)}
.workspace-autosync-toggle:focus-within{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:1px}

#user_messages .message-recipient-choice{
 display:flex;align-items:center;min-height:28px;width:100%;padding:5px 8px;
 border:1px solid var(--border);border-radius:6px;background:var(--panel2);
 color:var(--muted);font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
#user_messages .message-recipient-choice.has-recipient{
 color:var(--text);border-color:color-mix(in srgb,var(--accent) 38%,var(--border));
 background:color-mix(in srgb,var(--accent) 9%,var(--panel2));
}

#user_messages .message-recipient-choice{
 white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
 line-height:1.25;word-break:break-word;
}

#user_messages .message-recipient-choice[hidden]{display:none!important}
#user_messages .message-recipient-choice{
 display:inline-flex!important;align-items:center!important;align-self:flex-start!important;
 width:auto!important;max-width:100%!important;min-height:0!important;
 padding:3px 7px!important;margin-top:0!important;
 border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border))!important;
 border-radius:999px!important;
 background:color-mix(in srgb,var(--accent) 8%,var(--panel2))!important;
 color:var(--text)!important;font-size:10.5px!important;font-weight:600!important;
 white-space:normal!important;overflow:visible!important;line-height:1.2!important;
}

#user_messages #directMessageRecipient{
  height:32px!important;
  min-height:32px!important;
  line-height:30px!important;
  padding:0 34px 0 10px!important;
  font-size:11.5px!important;
  font-family:inherit!important;
  vertical-align:middle!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
#user_messages #directMessageRecipient option{
  font-size:11.5px!important;
  line-height:1.35!important;
}

#user_messages #directMessageRecipient{
  height:34px!important;
  min-height:34px!important;
  line-height:normal!important;
  padding:5px 34px 5px 10px!important;
}

/* p8: compact user access action buttons */
#userAdminTable .user-admin-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:4px!important;
  min-width:0!important;
}
#userAdminTable td:last-child .user-admin-actions>button{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  height:27px!important;
  min-height:27px!important;
  margin:0!important;
  padding:3px 7px!important;
  border-radius:6px!important;
  font-size:10px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#userAdminTable .user-admin-actions>.control-delete{margin:0!important}

/* permission editor modal: true viewport centering */
.permission-user-editor{
  display:block!important;
  position:fixed!important;
  inset:0!important;
  z-index:13000!important;
  padding:0!important;
  background:rgba(0,0,0,.46)!important;
}
.permission-user-editor[hidden]{display:none!important}
.permission-user-editor-card{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(980px,calc(100vw - 32px))!important;
  max-height:calc(100dvh - 40px)!important;
  overflow:auto!important;
  box-sizing:border-box!important;
}
/* control grouped navigation v1 */
#control .control-tab-shell{
  flex:0 0 auto!important;
  width:100%!important;
  min-width:0!important;
  background:var(--bg)!important;
  position:relative!important;
  z-index:45!important;
}
#control .control-primary-tabs{
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  margin:0!important;
}
#control .control-primary-tabs .control-tab{
  white-space:normal!important;
  min-height:32px!important;
  font-size:10px!important;
  line-height:1.12!important;
}
#control .control-subtabs-row{
  display:grid;
  gap:4px;
  align-items:center;
  padding:4px 6px 6px;
  background:var(--bg);
  border-bottom:1px solid var(--border);
}
#control .control-subtabs-row[hidden]{display:none!important}
#control .control-subtabs-row[data-control-subtabs="control"]{grid-template-columns:repeat(3,minmax(0,1fr))}
#control .control-subtabs-row[data-control-subtabs="id_docs"]{grid-template-columns:repeat(2,minmax(0,1fr))}
#control .control-subtab{
  min-width:0;
  min-height:28px;
  padding:4px 8px;
  border:1px solid var(--border);
  border-radius:7px;
  background:var(--panel);
  color:var(--text);
  font-size:10.5px;
  line-height:1.1;
  text-align:center;
  cursor:pointer;
}
#control .control-subtab.active{
  background:var(--accent);
  color:var(--bg);
  border-color:var(--accent);
  font-weight:700;
}
@media(max-width:1100px){#control .control-primary-tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:700px){#control .control-primary-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* ID check kit v1 */
.id-check-kit-panel{display:grid;gap:10px;margin-top:10px}
.id-check-kit-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.id-check-kit-add{display:grid;grid-template-columns:minmax(120px,170px) minmax(260px,1fr) minmax(150px,190px) auto;gap:8px;align-items:center}
.id-check-kit-table-wrap{width:100%;overflow:auto;border:1px solid var(--border,#d7dde5);border-radius:10px}
.id-check-kit-table{width:100%;border-collapse:collapse;table-layout:fixed}
.id-check-kit-table th,.id-check-kit-table td{padding:8px 9px;vertical-align:top;border-bottom:1px solid var(--border,#e3e7ed)}
.id-check-kit-table th:nth-child(1){width:105px}
.id-check-kit-table th:nth-child(3){width:165px}
.id-check-kit-table th:nth-child(4){width:220px}
.id-check-kit-table th:nth-child(5){width:260px}
.id-check-kit-table select,.id-check-kit-table input{width:100%;min-width:0}
.id-check-kit-note-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center}
@media(max-width:1050px){
 .id-check-kit-add{grid-template-columns:1fr 1fr}
 .id-check-kit-table{min-width:820px}
}
