/* Scoped settings workspace. No dependencies, animations or permission changes. */
.pane[data-p="catalog"]{max-width:1440px;margin-inline:auto}
.catalog-intro{max-width:68ch;color:var(--ink-soft,#50615c);line-height:1.65;margin:-4px 0 24px;font-size:1rem}
.catalog-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--line,#dce3df)}
.catalog-nav a{padding:10px 14px;border-radius:8px;background:#e9eeeb;text-decoration:none;font-size:.88rem;font-weight:500;color:#214c42;min-height:44px;display:flex;align-items:center}
.catalog-nav a:hover{background:#dce7e0}
#catList{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
#catList>.card{margin:0!important;border:1px solid var(--line,#dce3df)!important;border-radius:16px;box-shadow:none;scroll-margin-top:90px;overflow:hidden}
#catList>.catalog-editor{grid-column:1/-1}
#catList .ch{padding:22px 24px;background:#eef1ef;gap:16px;flex-wrap:wrap;align-items:center;border-bottom:1px solid var(--line,#dce3df)}
#catList .ch h3{font-family:inherit;font-size:1.1rem;letter-spacing:-.02em;line-height:1.4}
#catList .ch .r{flex-wrap:wrap;gap:8px}
#catList .cb{padding:24px;overflow-x:auto}
#catList .cb>p{font-size:.9rem!important;line-height:1.7!important;max-width:80ch;color:var(--ink-soft,#50615c)!important}
#catList .tbl{min-width:640px}
#catList .tbl td{padding:14px 10px;vertical-align:top}
#catList .tbl th{font-size:.78rem;letter-spacing:.04em;padding:12px 10px}
#catList :is(input,select,textarea){background:#f7f9f7;border:1px solid #bdcbc3;border-radius:8px;padding:11px 12px;min-height:44px;box-shadow:none}
#catList textarea{min-height:110px!important;line-height:1.6;resize:vertical}
#catList .btn{min-height:44px;border-radius:8px;padding:10px 16px}
#catList .chip{font-variant-numeric:tabular-nums;line-height:1.5}
:is(.catalog-nav a,#catList button,#catList input,#catList select,#catList textarea):focus-visible{outline:3px solid #8b691d;outline-offset:3px}
/* Related setup tabs retain their tables and handlers, with a shared reading rhythm. */
.pane:is([data-p="team"],[data-p="banks"],[data-p="agencies"],[data-p="projects"]){max-width:1440px;margin-inline:auto}
.pane:is([data-p="team"],[data-p="banks"],[data-p="agencies"],[data-p="projects"]) .tbl :is(td,th){padding:16px 14px;line-height:1.5;font-variant-numeric:tabular-nums}
.pane:is([data-p="team"],[data-p="banks"],[data-p="agencies"],[data-p="projects"]) .btn{min-height:44px;border-radius:8px}
@media(max-width:760px){#catList{grid-template-columns:minmax(0,1fr);gap:16px}#catList .ch,#catList .cb{padding:16px}#catList .ch .r{width:100%}#catList .ch .r .btn{flex:1}.catalog-nav{gap:6px}.catalog-nav a{font-size:.82rem;padding:9px 11px}.catalog-intro{margin-top:0}}
@media print{.catalog-nav,.catalog-intro{display:none}#catList{display:block}#catList>.card{break-inside:avoid;margin-bottom:16px!important}}
/* 08.11.2026 — finish for Team, Banks, Agencies and Projects: same headings, spacing, field and button sizes as the catalogue.
   Layout only: no element, id, handler or permission changes. Wide tables scroll inside their own card, never the page. */
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .phead{gap:12px;flex-wrap:wrap;margin-bottom:22px}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .card{border:1px solid var(--line,#dce3df);border-radius:16px;box-shadow:none}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .card+.card{margin-top:20px}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .ch{padding:20px 24px;background:#eef1ef;gap:12px;flex-wrap:wrap;align-items:center;border-bottom:1px solid var(--line,#dce3df)}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .ch h3{font-family:inherit;font-size:1.08rem;letter-spacing:-.02em;line-height:1.4}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .ch .r{flex-wrap:wrap;gap:8px}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .cb{padding:22px 24px}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .field label{font-weight:600;color:var(--ink-soft,#50615c)}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:44px;border-radius:8px;padding:10px 12px;border:1px solid #bdcbc3;background:#f7f9f7}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .btn{padding:10px 16px}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .tbl th{font-size:.78rem;letter-spacing:.04em}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .tbl td{vertical-align:top}
#teamList,#empList,#empPending{overflow-x:auto;max-width:100%}
#projList,#agList{gap:20px;align-items:start}
#projList>.card,#agList>.card{margin:0!important}
:is(#projList,#agList)>.card[style*="grid-column"],:is(#projList,#agList)>:not(.card){grid-column:1/-1}
:is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) :is(button,input,select,textarea,a):focus-visible{outline:3px solid #8b691d;outline-offset:3px}
/* phones: tables become stacked cards (mobileTables) — they must not keep a desktop minimum width */
@media(max-width:760px){
  #catList .tbl.stack{min-width:0}
  /* stacked rows: a field takes the free width next to its label (was a few pixels wide — values could not be read or typed) */
  .pane:is([data-p="catalog"],[data-p="team"],[data-p="banks"],[data-p="agencies"],[data-p="projects"]) .tbl.stack td :is(input:not([type=checkbox]):not([type=radio]),select,textarea){width:100%!important;min-width:0;max-width:100%;flex:1 1 auto;box-sizing:border-box}
  .pane:is([data-p="catalog"],[data-p="team"],[data-p="banks"],[data-p="agencies"],[data-p="projects"]) .tbl.stack td{width:auto!important;max-width:100%}
  .pane[data-p="team"] .team-agy{flex-wrap:wrap;min-width:0;max-width:100%}
  .pane:is([data-p="catalog"],[data-p="team"],[data-p="banks"],[data-p="agencies"],[data-p="projects"]){max-width:100%;overflow-x:clip}
  :is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) :is(.ch,.cb){padding:16px}
  #projList,#agList{grid-template-columns:minmax(0,1fr);gap:16px}
  :is(.pane[data-p="team"],.pane[data-p="banks"],.pane[data-p="agencies"],.pane[data-p="projects"]) .phead .btn{min-height:44px}
}
/* 08.11.2026 — screens and popups */
.ws-nav .ws-tab{padding:10px 14px;border-radius:8px;background:#e9eeeb;border:1px solid transparent;font:inherit;font-size:.88rem;font-weight:500;color:#214c42;min-height:44px;cursor:pointer}
.ws-nav .ws-tab:hover{background:#dce7e0}
.ws-nav .ws-tab.on{background:#173b33;color:#fff}
.ws-nav .ws-tab:focus-visible{outline:3px solid #8b691d;outline-offset:3px}
.ws-screen>[hidden],.ws-team>[hidden]{display:none!important}
.ws-team>.card{margin-top:0!important}
#catList.ws-screen>.card:not([hidden]){grid-column:1/-1}
.ws-dialog{border:0;border-radius:16px;padding:24px;width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;box-shadow:0 24px 60px rgba(13,59,52,.28);color:inherit}
.ws-dialog::backdrop{background:rgba(13,30,26,.45)}
.ws-dialog .ws-close{position:sticky;top:0;float:right;min-width:44px;min-height:44px;z-index:1}
.ws-dialog #addMemberCard{margin:0!important;border:0!important;box-shadow:none}
.ws-pop-title{margin:0 0 16px;font-size:1.15rem;line-height:1.4}
.ws-pop .field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.ws-pop .field label{font-weight:600;font-size:.86rem;color:var(--ink-soft,#50615c)}
.ws-pop :is(input,select){min-height:44px;border:1px solid #bdcbc3;border-radius:8px;padding:10px 12px;background:#f7f9f7;font:inherit}
.ws-pop [aria-invalid=true]{border-color:#C40000}
.ws-pop-err{color:#8E1208;font-size:.86rem;min-height:1.2em;margin-bottom:8px}
.ws-pop-body{line-height:1.6;margin-bottom:18px}
.ws-pop-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.ws-pop-actions .btn{min-height:44px;padding:10px 18px;border-radius:8px}
@media(max-width:760px){.ws-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border-radius:0;padding:20px 16px calc(20px + env(safe-area-inset-bottom))}
  .ws-pop-actions{position:sticky;bottom:0;background:#fff;padding-top:12px}.ws-pop-actions .btn{flex:1}
  .ws-nav{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin}.ws-nav .ws-tab{flex:0 0 auto}}
