:root{font-family:"Avenir Next","Segoe UI",Arial,sans-serif;color:var(--ink,#223d38);background:var(--surface,#f5f7f5);font-size:14px;--ink:#223d38;--muted:#586b66;--green:#17634c;--line:#dbe3df;--paper:#fff;--red:#a53232}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--line-strong,#17634c)}::selection{background:var(--surface-raised,#c9e6d9);color:var(--ink,#173b2f)}button{cursor:pointer;background:var(--surface,#fff);border:1px solid var(--line,#bdccc5);border-radius:6px;padding:9px 13px;color:var(--ink);white-space:nowrap}button:hover{background:var(--surface-raised,#edf4ef);border-color:var(--line-strong,#577f70)}button:disabled{opacity:.5;cursor:wait}.primary{background:var(--green);color:var(--ink,#fff);border-color:var(--green)}.primary:hover{background:var(--accent-hover,#124c3b);color:var(--ink,#fff)}.danger{color:var(--red)}a{color:var(--green);text-underline-offset:3px}input,select,textarea{background:var(--surface,#fff);border:1px solid var(--line,#b6c6bd);border-radius:5px;padding:9px 10px;color:var(--ink);max-width:100%;accent-color:var(--green);caret-color:var(--green)}input[type=number]{font-variant-numeric:tabular-nums}input[type=checkbox]{width:18px;height:18px}textarea{min-height:95px;resize:vertical}.shell{display:grid;grid-template-columns:218px minmax(0,1fr);min-height:100dvh}aside{padding:33px 16px;background:var(--surface-raised,#e9efea);display:flex;flex-direction:column;border-right:1px solid var(--line);position:sticky;top:0;height:100dvh}.brand{padding:0 16px 35px;text-decoration:none;color:var(--accent,#224b3c);font-size:28px;font-weight:700;letter-spacing:-.8px}.brand span{display:block;font-size:12px;font-weight:500;letter-spacing:0;margin-top:7px;color:var(--muted)}nav{display:flex;flex-direction:column;gap:5px}nav a{padding:11px 16px;text-decoration:none;color:var(--muted,#4c6159);border-radius:6px;font-weight:500}nav a:hover{background:var(--surface-raised,#dce7df)}nav a.active{background:var(--surface-raised,#d1e2d5);color:var(--accent,#194e38);font-weight:700}.aside-foot{margin-top:auto;padding:28px 16px 0;font-size:12px;color:var(--muted,#5b6e64);line-height:1.7}.local{color:var(--accent,#28543e);font-weight:600}main{min-width:0;padding:0 38px}header{min-height:94px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line)}#crumb{font-weight:600}.save{font-size:12px;color:var(--muted);margin-left:18px}.toolbar{display:flex;gap:8px;align-items:center}.monthlabel{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}#month{margin-right:8px}#content{padding:36px 0 48px;min-height:calc(100dvh - 145px)}h1{font-size:32px;font-weight:650;line-height:1.2;letter-spacing:-.9px;margin:0 0 12px}h2{font-size:21px;margin:30px 0 14px;letter-spacing:-.4px}h3{margin:0 0 12px;font-size:16px}p{line-height:1.6;max-width:78ch}.lead{color:var(--muted);margin:0 0 24px}.pagehead{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.pagehead p{margin-bottom:0}.actions{display:flex;gap:8px;flex-wrap:wrap}.notice{background:var(--warning-bg,#fff8e8);color:var(--warning,#73551a);padding:14px 18px;border-radius:6px;line-height:1.55;margin:18px 0}.notice.good{background:var(--surface-raised,#e6f1e8);color:var(--ink,#235239)}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:25px 0 30px;border-bottom:1px solid var(--line);gap:20px;padding-bottom:25px}.metric span{display:block;color:var(--muted);font-size:12px;margin-bottom:10px}.metric strong{font-weight:600;font-size:27px;letter-spacing:-.6px;font-variant-numeric:tabular-nums}.metric small{display:block;margin-top:7px;color:var(--muted);font-size:12px}.negative{color:var(--red)!important}.positive{color:var(--green)}.panel{background:var(--paper);padding:24px;border:1px solid var(--line);border-radius:9px;margin:18px 0}.split{display:grid;grid-template-columns:1.5fr 1fr;gap:24px}.tablewrap{overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface,#fff)}table{border-collapse:collapse;width:100%;text-align:left;font-variant-numeric:tabular-nums;font-size:13px}th{background:var(--surface-raised,#edf2ee);color:var(--muted,#4f665a);font-size:12px;font-weight:600;padding:13px 14px;white-space:nowrap}td{padding:12px 14px;border-bottom:1px solid var(--line,#edf0ed);vertical-align:middle}tbody tr:last-child td{border:0}tbody tr:hover{background:var(--surface,#f5f9f6)}.num{text-align:right;white-space:nowrap}.total td{font-weight:700;background:var(--surface-raised,#edf4ee)}.subtle{color:var(--muted);font-size:12px}.tag{background:var(--surface-raised,#edf3ed);color:var(--accent,#356049);border-radius:4px;padding:4px 7px;font-size:11px;white-space:nowrap}.tag.warn{background:var(--warning-bg,#fff1ce);color:var(--warning,#755319)}.edit{border:0;background:transparent;padding:5px 0;color:var(--green);font-weight:600}.rowname{font-weight:600}.rowname small{display:block;font-weight:400;color:var(--muted);margin-top:5px}.empty{padding:32px;color:var(--muted);text-align:center}.formgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;color:var(--muted,#4c6158)}.field input,.field select{width:100%;font-size:14px}.wide{grid-column:1/-1}.formfoot{display:flex;justify-content:space-between;align-items:center;margin-top:22px;gap:12px}.checkbox{display:flex;align-items:center;gap:8px;font-size:13px}.searchbar{display:flex;gap:12px;margin:20px 0;align-items:center;flex-wrap:wrap}.searchbar input{min-width:230px}.barrow{display:grid;grid-template-columns:96px minmax(60px,1fr) 110px;align-items:center;gap:14px;margin:15px 0;font-size:13px}.bar{background:var(--surface-raised,#e8eeea);height:15px;border-radius:2px;overflow:hidden}.bar i{display:block;height:100%;background:var(--surface-subtle,#4b8b68);width:var(--w)}.legend{display:flex;gap:16px;font-size:12px;color:var(--muted)}.reconcile td{white-space:nowrap}details{margin:12px 0}summary{cursor:pointer;color:var(--green);font-weight:600;padding:8px 0}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{padding:6px 10px;background:var(--surface-raised,#eef3ef);border-radius:5px;font-size:12px}footer{padding:14px 0;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}#error{background:var(--danger-bg,#fbe9e5);color:var(--danger,#892d28);padding:14px;margin-top:15px;border-radius:6px}#toast{position:fixed;bottom:24px;right:24px;max-width:420px;background:var(--accent-hover,#224b3c);color:var(--ink,#fff);padding:12px 18px;border-radius:8px;box-shadow:0 8px 28px var(--shade,#00000020);display:none;z-index:10}.scenario-layout{display:grid;grid-template-columns:minmax(300px,1fr) 1fr;gap:26px}.scenario-layout .formgrid{grid-template-columns:1fr 1fr}.result{background:var(--surface-raised,#e4eee5);padding:28px;border-radius:8px;align-self:start;position:sticky;top:25px}.result strong{font-size:38px;letter-spacing:-1px;display:block;margin:12px 0}.result dl{display:grid;grid-template-columns:1fr auto;gap:15px;font-size:13px}.result dt,.result dd{margin:0}.result dd{font-weight:600;font-variant-numeric:tabular-nums}.smallbtn{padding:5px 8px;font-size:12px}.note-list{padding-left:20px;line-height:1.7}.amountedit{width:120px;padding:6px 8px;text-align:right}.statusline{font-size:12px;line-height:1.7;color:var(--muted)}.scrollhint{display:none}.meterline{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line,#d3dfd4)}.inline-form{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.inline-form input{flex:1;min-width:120px}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-thumb{background:var(--surface-selected,#a4b8aa);border-radius:4px}
@media(max-width:1100px){main{padding:0 24px}.shell{grid-template-columns:184px 1fr}.toolbar{flex-wrap:wrap;justify-content:flex-end}.metrics{grid-template-columns:repeat(2,1fr)}.split,.scenario-layout{grid-template-columns:1fr}.result{position:static}.metric strong{font-size:26px}.formgrid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.shell{display:block}aside{position:static;height:auto;padding:18px 16px 12px;border-right:0;border-bottom:1px solid var(--line)}.brand{font-size:23px;padding:0 0 16px;display:flex;align-items:baseline;gap:14px}.brand span{font-size:11px}nav{flex-direction:row;overflow:auto;gap:4px;padding-bottom:4px}nav a{padding:8px 11px;white-space:nowrap;font-size:12px}.aside-foot{display:none}main{padding:0 16px}header{padding:15px 0;display:block;min-height:0}.toolbar{margin-top:14px;justify-content:flex-start}.toolbar button{font-size:12px;padding:8px}#month{padding:7px;width:145px}.save{margin-left:12px}h1{font-size:27px}#content{padding-top:25px}.pagehead{display:block}.pagehead .actions{margin-top:16px}.metrics{gap:20px 14px;margin-top:20px}.metric strong{font-size:24px}.panel{padding:17px}.formgrid,.scenario-layout .formgrid{grid-template-columns:1fr}.scrollhint{display:block;color:var(--muted);font-size:11px}.formfoot{align-items:flex-start;flex-wrap:wrap}.barrow{grid-template-columns:75px minmax(30px,1fr) 90px;font-size:11px}.searchbar input{min-width:0;width:100%}#toast{left:16px;right:16px;bottom:16px}.result strong{font-size:32px}}
@media(prefers-reduced-motion:no-preference){button,nav a{transition:background .15s ease-out}}@media print{aside,header,.actions,footer,button{display:none}.shell{display:block}main{padding:0}.tablewrap{overflow:visible}.panel{break-inside:avoid}}
.companynote{font-size:12px;color:var(--muted,#4c6855);margin:0 0 20px}.transfer-clients{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.transfer-clients label{padding:8px 0}.transfer-clients .subtle{margin-left:auto;font-size:11px}header{flex-wrap:wrap;padding:17px 0;gap:12px}.toolbar{flex-wrap:wrap}.monthlabel select{max-width:205px}@media(max-width:700px){.transfer-clients{grid-template-columns:1fr}.toolbar{gap:8px}.monthlabel{font-size:11px}.monthlabel select{max-width:180px}}
.transfer-clients{max-height:420px;overflow:auto;padding:0 6px}.transfer-option[hidden]{display:none}.transfer-option{min-height:36px}.transfer-clients label{align-items:center}.transfer-clients .subtle{color:var(--muted,#52655a)}.searchbar .checkbox{white-space:normal}aside{align-self:start}main header .toolbar{margin-left:auto}@media(max-width:700px){.transfer-clients{max-height:450px}.searchbar .checkbox{font-size:12px}.toolbar .monthlabel:first-child{width:100%}}
.service-row{border:1px solid var(--line);border-radius:7px;padding:16px;margin:12px 0;min-width:0}.service-row legend{font-size:12px;color:var(--muted);padding:0 6px}.service-fields{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:14px;align-items:end}.service-fields button{margin-bottom:1px}.service-total{font-weight:600;color:var(--green);font-variant-numeric:tabular-nums}@media(max-width:1100px){.service-fields{grid-template-columns:1fr 1fr}.service-fields .field:first-child{grid-column:1/-1}}@media(max-width:700px){.service-fields{grid-template-columns:1fr}.service-fields button{justify-self:start}}
.performers{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.performers h4{font-size:14px;margin:0 0 12px}.performer-row{display:grid;grid-template-columns:1.1fr 1fr 1.2fr .8fr auto auto;gap:12px;align-items:end;margin:14px 0;padding-bottom:14px;border-bottom:1px solid var(--line,#edf0ed)}.performer-pay{padding:10px 0;font-variant-numeric:tabular-nums;font-size:12px;color:var(--green);white-space:nowrap}.performer-row .smallbtn{margin-bottom:5px}@media(max-width:1200px){.performer-row{grid-template-columns:1fr 1fr}.performer-pay{align-self:center}}@media(max-width:700px){.performer-row{grid-template-columns:1fr}.performer-row button{justify-self:start}.service-contribution{line-height:1.8}}
.spaced{margin-top:26px}.allocation-row{display:grid;grid-template-columns:minmax(220px,1fr) 180px auto;gap:14px;align-items:end;margin:15px 0}.draft-list button{margin:4px}.performer-row{grid-template-columns:1fr 1fr 1.2fr .8fr}.performer-pay{align-self:center}.performer-row .smallbtn{justify-self:start}.service-fields{grid-template-columns:1fr 1fr}.service-fields .field:first-child{grid-column:1/-1}.service-fields button{justify-self:start}.tablewrap td small{display:block}.tablewrap .smallbtn{white-space:normal}@media(max-width:900px){.performer-row{grid-template-columns:1fr 1fr}.allocation-row{grid-template-columns:1fr}.allocation-row button{justify-self:start}}@media(max-width:700px){.performer-row,.service-fields{grid-template-columns:1fr}.allocation-row{grid-template-columns:1fr}}

.employee-role{border:1px solid var(--line);border-radius:6px;padding:16px;margin:16px 0;min-width:0}.employee-role legend{color:var(--muted);padding:0 6px}.employee-role button{margin-top:4px}

.bulk-project small{display:block;margin-top:5px;line-height:1.5}.bulk-project span{min-width:0}.bulk-project{align-items:flex-start!important}.bulk-project input{flex-shrink:0;margin-top:3px}

.salary-section{background:var(--paper);border:1px solid var(--line);border-radius:7px;padding:22px;margin-bottom:24px}.salary-section h2{margin:0 0 10px}.salary-section h3{margin-top:26px}.salary-section .field{min-width:160px}.salary-section .tablewrap{margin-bottom:24px}@media(max-width:700px){.salary-section{padding:17px}.salary-section .pagehead .field{margin-top:14px;max-width:220px}}

.field-title{display:flex;align-items:center;gap:5px;min-height:20px}.field-title label{cursor:pointer;line-height:1.4}.field-help{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;min-width:24px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:11px;font-weight:700;position:relative;line-height:1;flex-shrink:0}.field-help::before{content:"";position:absolute;width:15px;height:15px;border:1px solid var(--line-strong,#91a79d);border-radius:50%}.field-help:hover{color:var(--green);background:var(--surface-raised,#e9f2ed)}.field-help-popover{position:fixed;inset:0;margin:auto;width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;padding:22px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--paper);box-shadow:0 12px 48px var(--shade,#173c2926);font-size:14px;line-height:1.65}.field-help-popover:not(:popover-open){display:none}.field-help-popover:popover-open{display:flex;flex-direction:column;gap:14px}.field-help-popover::backdrop{background:var(--shade,#142b211c)}.field-help-popover strong{font-size:16px;line-height:1.4}.field-help-popover .help-close{align-self:flex-end;padding:7px 12px;font-size:12px}

.project-intro{color:var(--muted);font-size:14px;margin:12px 0 8px}.project-step{padding:24px 0;border-bottom:1px solid var(--line)}.project-step>h3{font-size:19px;margin-bottom:10px}.project-basics{grid-template-columns:2fr 1fr}.project-editor .service-fields{grid-template-columns:2fr 1fr}.project-editor .service-fields .field:first-child{grid-column:auto}.project-editor .service-row{padding:18px;margin:18px 0}.simple-extra{margin:16px 0 4px}.simple-extra summary,.performer-more summary{font-size:12px;font-weight:500}.simple-extra .formgrid{padding:12px 0}.project-extra{padding:13px 0;border-bottom:1px solid var(--line);margin:0}.project-extra>summary{font-size:14px}.project-extra>.formgrid{padding:16px 0}.project-editor .performer-row{grid-template-columns:1.4fr 1.4fr 1fr .8fr;gap:14px;padding:18px 0;margin:0;border-bottom:1px solid var(--line)}.project-editor .performer-pay{font-size:14px;font-weight:600;padding:0}.project-editor .performer-row>.smallbtn{justify-self:end;margin:0;grid-column:3/-1;grid-row:2}.project-editor .performer-more{grid-column:1/-1;margin:0}.performer-more>.smallbtn{margin-top:12px}.project-editor .formfoot{padding-top:16px}.project-extra.legacy-costs>summary{color:var(--muted)}@media(max-width:1050px){.project-editor .performer-row{grid-template-columns:1fr 1fr}}@media(max-width:700px){.project-basics,.project-editor .service-fields{grid-template-columns:1fr}.project-editor .performer-row{grid-template-columns:1fr 1fr}.project-editor .performer-row>.field:first-child,.project-editor .performer-row>.field:nth-child(2){grid-column:1/-1}.project-editor .performer-row>.smallbtn{grid-column:2;grid-row:auto;white-space:normal}.project-step>h3{font-size:17px}.project-step{padding:20px 0}.project-editor .service-row{padding:14px}.project-editor .performer-pay{grid-column:1;align-self:center;font-size:13px}}

/* Project overview:five columns; calculation details stay inside each row. */
.projects-table{table-layout:fixed}.projects-table th:first-child{width:38%}.projects-table th:nth-child(2),.projects-table th:nth-child(3){width:14%}.projects-table th:nth-child(4){width:18%}.projects-table th:last-child{width:16%}.projects-table th,.projects-table td{padding:14px 12px;overflow-wrap:anywhere}.projects-table th:not(:first-child){text-align:right}.projects-table .project-actions{text-align:right}.projects-table .num{white-space:normal}.projects-table .num small{color:var(--muted);font-size:11px;margin-top:5px}.project-calculation{margin-top:12px;font-weight:400}.project-calculation summary{font-size:12px;color:var(--green);cursor:pointer}.project-calculation dl{font-size:12px;line-height:1.45;margin:12px 0 0}.project-calculation dl div{display:flex;justify-content:space-between;gap:12px;margin:8px 0}.project-calculation dt{color:var(--muted)}.project-calculation dd{margin:0;text-align:right;flex-shrink:0;font-variant-numeric:tabular-nums}.project-calculation>small{line-height:1.5!important}
@media(max-width:1000px) and (min-width:701px){.projects-table th:first-child{width:32%}.projects-table th:nth-child(2),.projects-table th:nth-child(3){width:16%}.projects-table th:nth-child(4){width:18%}.projects-table th:last-child{width:18%}.projects-table th,.projects-table td{padding:12px 8px}.projects-table button{padding:8px;font-size:12px}}
@media(max-width:700px){.projects-table,.projects-table tbody{display:block;width:100%}.projects-table thead{display:none}.projects-table tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:16px;gap:16px 10px;border-bottom:1px solid var(--line)}.projects-table tr:last-child{border-bottom:0}.projects-table td{display:block;padding:0;border:0;min-width:0}.projects-table td.rowname,.projects-table td.project-actions{grid-column:1/-1}.projects-table td.num{text-align:left;font-size:13px;line-height:1.5}.projects-table td.num::before{content:attr(data-label);display:block;font-size:10px;font-weight:400;color:var(--muted);margin-bottom:5px}.projects-table td.project-actions{text-align:left}.projects-table .project-actions button{width:100%}.projects-table .project-calculation{max-width:100%}.projects-table .empty{grid-column:1/-1}}

.projects-table tfoot{background:var(--surface-raised,#e9f2eb);border-top:2px solid var(--line,#b6cdbd)}.projects-table tfoot td{font-weight:700}.projects-table tfoot .rowname small{font-weight:400}@media(max-width:700px){.projects-table tfoot{display:block;width:100%}.projects-table tfoot .project-actions{display:none}}

.project-company-result{margin-top:24px}.project-company-result h2{margin-top:0}.project-company-result .tablewrap{max-width:760px}.project-company-result .total td{font-weight:700;background:var(--surface-raised,#e9f2eb)}

.cost-open{display:block;margin-top:12px;padding:0;border:0;background:none;color:var(--green);font-size:12px;text-align:left;white-space:normal;line-height:1.5;text-decoration:underline;text-underline-offset:3px}.cost-open:hover{background:none}.cost-dialog{position:fixed;inset:0;margin:auto;width:min(800px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);font-size:14px;font-weight:400;line-height:1.6;text-align:left;box-shadow:0 18px 70px var(--shade,#173c2933)}.cost-dialog:not(:popover-open){display:none}.cost-dialog:popover-open{display:block}.cost-dialog::backdrop{background:var(--shade,#142b2155)}.cost-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}.cost-dialog h2{margin:0;font-size:24px}.cost-dialog-head p{margin:6px 0 0;color:var(--muted)}.cost-dialog h3{font-size:18px;line-height:1.4;margin:0 0 10px}.cost-dialog p{margin:8px 0 14px;font-size:13px;line-height:1.6}.cost-section{padding:22px 0;border-bottom:1px solid var(--line)}.cost-line{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:8px 0}.cost-line>span{min-width:0;overflow-wrap:anywhere}.cost-line strong{flex-shrink:0;font-variant-numeric:tabular-nums;text-align:right}.cost-base{background:var(--surface-raised,#f2f6f2);padding:14px;border-radius:6px;font-size:13px;margin:16px 0}.cost-base p:last-child{margin-bottom:0}.cost-person{padding:8px 0;border-bottom:1px solid var(--line,#edf0ed)}.cost-person .cost-line{padding:0}.cost-dialog .cost-person small{display:block!important;font-weight:400;color:var(--muted);font-size:12px;margin-top:4px}.cost-subtotal{font-weight:600;border-top:1px solid var(--line);margin-top:12px;padding-top:14px}.cost-highlight{background:var(--surface-raised,#e9f2eb);padding:14px;border-radius:6px;font-weight:650}.cost-shared-table{table-layout:auto;font-size:12px}.cost-shared-table th,.cost-shared-table td{padding:10px!important;width:auto!important;vertical-align:top}.cost-shared-table th:not(:first-child){text-align:right}.cost-shared-table td:first-child{overflow-wrap:anywhere}.cost-dialog .tablewrap{margin:18px 0}.cost-result{border-bottom:0}@media(max-width:700px){.cost-dialog{padding:18px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.cost-dialog h2{font-size:21px}.cost-dialog h3{font-size:16px}.cost-dialog-head{gap:10px}.cost-dialog-head button{padding:7px 10px;font-size:12px}.cost-line{gap:12px;font-size:13px}.cost-shared-table th,.cost-shared-table td{padding:8px 5px!important;font-size:11px}.cost-shared-table td.num{display:table-cell;white-space:normal;text-align:right}.cost-shared-table td.num::before{display:none}.cost-dialog .tablewrap{overflow:auto}}

@media(max-width:700px){.cost-dialog .cost-shared-table{display:table!important}.cost-dialog .cost-shared-table thead{display:table-header-group!important}.cost-dialog .cost-shared-table tbody{display:table-row-group!important}.cost-dialog .cost-shared-table tr{display:table-row!important}.cost-dialog .cost-shared-table th,.cost-dialog .cost-shared-table td{display:table-cell!important}.cost-dialog .cost-shared-table td.num::before{display:none!important}}

.pnl-article-open{padding:4px 0;border:0;background:none;color:var(--green);text-align:left;white-space:normal;text-decoration:underline;text-underline-offset:3px;font-weight:500;line-height:1.5}.pnl-article-open:hover{background:none;color:var(--accent,#124c3b)}.pnl-article-open span{font-size:12px;padding-left:5px}.pnl-article-dialog .cost-section h3{padding-bottom:8px}.pnl-article-dialog .cost-person small{max-width:95%;line-height:1.6}.pnl-article-dialog>.cost-highlight:last-of-type{margin-top:20px}

.nav-section-label{display:block;padding:14px 16px 4px;color:var(--muted);font-size:11px;font-weight:650}.nav-section-label:first-child{padding-top:0}nav{min-height:0;overflow-y:auto}.team-salary-link{display:inline-flex;align-items:center;min-height:38px;font-size:13px;padding:5px 0}.cost-dialog>.cost-highlight+.cost-highlight{margin-top:8px}@media(max-width:700px){.nav-section-label{display:none}nav{overflow-x:auto;overflow-y:hidden;flex-shrink:0}.team-salary-link{font-size:12px}}

/* Owner workspace:decision hierarchy and responsive operating views. */
.nav-toggle{display:none}.button-link{display:inline-flex;align-items:center;min-height:44px;padding:9px 14px;border:1px solid var(--line);border-radius:6px;text-decoration:none;color:var(--green);background:var(--surface,#fff)}.owner-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:9px;background:var(--surface,#fff);margin:24px 0;overflow:hidden}.owner-tile{position:relative;padding:24px 20px;text-decoration:none;color:var(--ink);border-right:1px solid var(--line);min-width:0}.owner-tile:last-child{border:0}.owner-tile>span:first-child{display:block;color:var(--muted);font-size:13px}.owner-tile strong{display:block;font-size:27px;font-weight:650;letter-spacing:-.7px;line-height:1.25;margin:16px 0 12px;font-variant-numeric:tabular-nums}.owner-tile small{display:block;color:var(--muted);font-size:12px;line-height:1.5;padding-right:12px}.owner-tile .tile-arrow{position:absolute;right:14px;top:20px;color:var(--green)}.owner-tile:hover{background:var(--surface,#f3f7f3)}.owner-tile.needs-data strong{font-size:23px;color:var(--warning,#73551a)}.owner-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px;align-items:start}.owner-layout .panel{margin:0 0 24px;min-width:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.section-heading h2{font-size:20px;margin:0}.section-heading a{font-size:13px;white-space:nowrap}.eyebrow{display:block;font-size:12px;color:var(--muted);margin-bottom:7px}.owner-profit{padding:2px 0 24px;border-bottom:1px solid var(--line)}.owner-profit>strong{display:block;font-size:42px;letter-spacing:-1.3px;color:var(--green);font-weight:650;line-height:1.25;font-variant-numeric:tabular-nums}.owner-profit>span{display:block;color:var(--muted);font-size:13px;margin-top:8px}.owner-line,.action-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:14px}.owner-line>span,.action-row>span{min-width:0}.owner-line strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.owner-line strong span{margin-left:8px;color:var(--muted)}.owner-line small,.action-row small{display:block;color:var(--muted);font-size:12px;margin-top:6px;font-weight:400}.action-row>b{color:var(--green);font-size:17px;min-width:30px;text-align:right}.action-row:last-of-type{border:0}.quality-notice strong{font-size:16px}.quality-notice p{margin:8px 0;font-size:14px}.quality-notice a{display:inline-flex;align-items:center;min-height:44px}.owner-result>.subtle{line-height:1.6}.projects-table .num{white-space:nowrap;overflow-wrap:normal}.project-editor>.project-intro{max-width:800px}.project-editor .formfoot{position:sticky;bottom:0;z-index:3;background:var(--paper);padding:16px 0 max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--line);box-shadow:0 -5px 14px var(--shade,#223d3808)}.performer-card{border-bottom:1px solid var(--line);padding:0}.performer-card>summary{display:flex;gap:12px;align-items:center;justify-content:space-between;list-style:none;padding:16px 0}.performer-card>summary::after{content:'Изменить';font-size:12px;color:var(--green);font-weight:500}.performer-card>summary strong{font-size:14px;color:var(--ink)}.performer-card>summary small{display:block;color:var(--muted);font-size:12px;font-weight:400;margin-top:5px}.performer-card[open]>summary::after{content:'Свернуть'}.project-editor .performer-card .performer-row{border-bottom:0}.closed-notice{display:flex;justify-content:space-between;align-items:center;gap:16px}.formgrid input,.formgrid select{min-width:0}.history-note{font-size:13px;color:var(--muted);line-height:1.6}.history-note details{padding:8px 0}.account-form{scroll-margin-top:18px}a:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:4px}button:disabled{cursor:not-allowed;opacity:.55}
@media(max-width:1200px){.owner-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-tile:nth-child(2){border-right:0}.owner-tile:nth-child(-n+2){border-bottom:1px solid var(--line)}.owner-layout{grid-template-columns:1fr}.owner-profit>strong{font-size:38px}}
@media(max-width:900px){
 .shell{display:block}aside{height:auto;position:static;padding:16px 24px;border-right:0;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;gap:12px}.brand{padding:0;flex:1;font-size:24px}.brand span{font-size:11px}.aside-foot{display:none}.nav-toggle{display:block;min-height:44px;text-align:left;max-width:100%;font-size:13px}#nav{display:none;width:100%;overflow:visible;flex-direction:column;padding:12px 0;gap:4px}#nav.mobile-open{display:flex}#nav .nav-section-label{display:block;padding:16px 12px 6px}#nav a{min-height:44px;display:flex;align-items:center;white-space:normal;font-size:14px}.nav-section-label:first-child{padding-top:4px}main{padding:0 24px}.owner-tile strong{font-size:25px}
 .responsive-table,.responsive-table tbody{display:block;width:100%}.responsive-table thead{display:none}.responsive-table tbody>tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px;border-bottom:1px solid var(--line)}.responsive-table tbody>tr[hidden]{display:none}.responsive-table tbody>tr>td{display:block;padding:0;border:0;text-align:left;min-width:0;overflow-wrap:anywhere;white-space:normal}.responsive-table tbody>tr>td.num{white-space:nowrap;overflow-wrap:normal;font-size:15px}.responsive-table tbody>tr>td::before{content:attr(data-label);display:block;font-size:12px;line-height:1.5;color:var(--muted);font-weight:400;margin-bottom:5px;white-space:normal}.responsive-table tbody>tr>.card-identity,.responsive-table tbody>tr>.card-actions,.responsive-table tbody>tr>.empty{grid-column:1/-1}.responsive-table tbody>tr>.card-identity{font-weight:600;font-size:15px}.responsive-table tbody>tr>.card-identity::before,.responsive-table tbody>tr>.card-actions::before{display:none}.responsive-table tbody>tr>.card-actions{display:flex;gap:8px;flex-wrap:wrap}.responsive-table td button{min-height:44px}.responsive-table tfoot{display:block}.responsive-table tfoot tr{display:grid;gap:12px;padding:18px}.responsive-table tfoot td{display:block;border:0;text-align:left}.tablewrap:has(>.responsive-table){overflow:visible}.projects-table,.projects-table tbody,.projects-table tfoot{display:block;width:100%}.projects-table thead{display:none}.projects-table tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:18px;gap:16px 10px;border-bottom:1px solid var(--line)}.projects-table td{display:block;padding:0;border:0;min-width:0}.projects-table td.rowname,.projects-table td.project-actions{grid-column:1/-1}.projects-table td.num{text-align:left;white-space:nowrap;font-size:14px;line-height:1.5}.projects-table td.num::before{content:attr(data-label);display:block;font-size:11px;font-weight:400;color:var(--muted);margin-bottom:5px}.projects-table td.project-actions{text-align:left}.projects-table tfoot .project-actions{display:none}.projects-table .empty{grid-column:1/-1}.field-help{width:44px;height:44px;min-width:44px}.cost-open,.pnl-article-open{min-height:44px;display:inline-flex;align-items:center}.project-editor .performer-row{grid-template-columns:1fr 1fr}.project-editor .performer-card>summary{min-height:64px}summary{min-height:44px}.team-salary-link{min-height:44px}input,select,textarea,.field input,.field select{font-size:16px}button{min-height:44px}.cost-shared-table td.num{white-space:nowrap!important}.responsive-table .cost-dialog td{white-space:normal}.pagehead .actions{gap:8px}
}
@media(max-width:500px){aside{padding:16px}.brand{font-size:23px}.brand span{font-size:11px}.nav-toggle{font-size:12px;padding:9px 10px}main{padding:0 16px}.owner-tiles{margin:20px 0}.owner-tile{padding:18px 14px}.owner-tile strong{font-size:23px;margin-top:13px}.owner-tile.needs-data strong{font-size:20px}.owner-tile>span:first-child{font-size:12px;padding-right:16px}.owner-tile .tile-arrow{top:17px;right:10px}.owner-tile small{font-size:12px}.owner-profit>strong{font-size:36px}.owner-layout{gap:0}.section-heading{align-items:flex-start}.section-heading h2{font-size:19px}.owner-line{font-size:13px}.owner-line strong{font-size:14px}.quality-notice{padding:16px}.projects-table tr{grid-template-columns:1fr}.projects-table td.num{display:flex;justify-content:space-between;font-size:15px;gap:8px}.projects-table td.num::before{font-size:13px;display:inline-block;margin:0}.projects-table td.num small{font-size:11px}.project-editor .formfoot .actions{width:100%}.project-editor .formfoot .primary{flex:1}.closed-notice{display:block}.responsive-table tbody>tr>td.num{font-size:14px}}
@media(max-width:900px){.responsive-table td.num small{white-space:normal;overflow-wrap:anywhere;line-height:1.5}.responsive-table td.num{max-width:100%}.responsive-table tbody>tr>.card-actions button{white-space:normal}.cost-dialog{max-width:calc(100vw - 20px)}}
.history-note pre{max-height:360px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;padding:12px;background:var(--surface-raised,#f3f6f3)}
@media(max-width:500px){.metric strong{display:block;font-size:20px;line-height:1.3;overflow-wrap:break-word}.owner-tile.needs-data strong{font-size:20px}}

/* Service frequency is always visible beside the price on desktop. */
.project-editor .service-fields{grid-template-columns:minmax(180px,1.3fr) minmax(120px,.7fr) minmax(290px,1.25fr);align-items:start}.service-billing{min-width:0;display:flex;flex-direction:column;gap:7px;padding:0}.service-billing-title{display:flex;align-items:center;min-height:24px;font-size:12px;color:var(--muted,#4c6158)}.service-billing-buttons{display:grid;grid-template-columns:1.25fr 1fr;gap:8px}.service-billing-buttons button{min-height:44px;font-size:14px;font-weight:600;padding:10px 14px;border:1px solid var(--line-strong,#a6bdb1);color:var(--green);background:var(--paper)}.service-billing-buttons button[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:var(--ink,#fff)}.service-billing-buttons button[aria-pressed="false"]:hover{background:var(--surface-raised,#e9f2ed);border-color:var(--green)}.service-billing-buttons button:focus-visible{outline:2px solid var(--green);outline-offset:3px}.service-billing-note{color:var(--muted);font-size:12px;line-height:1.5}.service-billing-buttons button:disabled{cursor:not-allowed}
@media(max-width:1150px){.project-editor .service-fields{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.service-billing{grid-column:1/-1;max-width:480px;width:100%}}@media(max-width:700px){.project-editor .service-fields{grid-template-columns:1fr}.service-billing{max-width:none}.service-billing-title{min-height:24px}.service-billing-buttons button{padding:10px;font-size:14px}}
.service-billing-buttons button{justify-self:stretch;width:100%}

.project-service-list{display:flex;flex-direction:column;gap:8px;margin-top:9px;font-weight:400}.project-service-item{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 9px;font-size:13px;line-height:1.5;color:var(--muted)}.project-service-item>span:first-child{overflow-wrap:anywhere}.service-type{display:inline-flex;align-items:center;flex-shrink:0;padding:3px 8px;border-radius:4px;font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap}.service-type.monthly{background:var(--surface-raised,#e5f0e9);color:var(--accent,#23583e)}.service-type.oneoff{background:var(--warning-bg,#fff0d7);color:var(--warning,#754b0b)}

.billing-plan-summary{background:var(--surface-raised,#f0f5f1);border:1px solid var(--line);border-radius:7px;padding:20px;margin:22px 0 12px}.billing-plan-summary h4{margin:0 0 18px;font-size:16px}.billing-plan-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.billing-plan-totals span{display:block;color:var(--muted);font-size:12px;line-height:1.5}.billing-plan-totals strong{display:block;margin-top:7px;font-size:21px;font-weight:650;font-variant-numeric:tabular-nums}.billing-plan-summary p{font-size:13px;margin:18px 0 0;max-width:none}.project-service-price{display:block;font-size:12px;color:var(--ink);margin-top:3px;font-variant-numeric:tabular-nums}.project-repeat-summary{line-height:1.6;margin-top:12px!important}.project-editor .service-row>legend{font-size:14px;font-weight:600;color:var(--ink);padding:0 8px}@media(max-width:700px){.billing-plan-totals{grid-template-columns:1fr;gap:16px}.billing-plan-totals>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.billing-plan-totals strong{font-size:18px;white-space:nowrap}.billing-plan-summary{padding:16px}}

.service-team-scope{margin:20px 0;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-team-scope h4{font-size:14px;margin:0 0 7px}.service-team-scope>p{font-size:13px;color:var(--muted);margin:0 0 14px}.service-team-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.service-team-option{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line,#b8cfc0);border-radius:6px;cursor:pointer;background:var(--surface-raised,#f0f6f1);min-width:0}.service-team-option input{flex-shrink:0;margin:2px 0 0;width:18px;height:18px}.service-team-option strong{font-size:13px;font-weight:600;line-height:1.5}.service-team-option small{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-top:5px}.service-team-option.not-participating{background:var(--paper);border-color:var(--line);color:var(--muted)}.service-team-option.not-participating strong::after{content:' · не участвует';font-size:11px;font-weight:400}.performer-card-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;border-bottom:1px solid var(--line)}.performer-card-wrap>.performer-card{border:0;margin:0}.performer-card-wrap>.performer-remove{margin-top:12px;min-height:40px}.service-team-options>.subtle{grid-column:1/-1;margin:0}@media(max-width:1100px){.service-team-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.service-team-options{grid-template-columns:1fr}.service-team-option{min-height:54px}.performer-card-wrap{gap:8px}.performer-card-wrap>.performer-remove{min-height:44px}}

.catalog-template{margin:24px 0;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.catalog-template>.subtle{max-width:95ch;line-height:1.7}.service-template-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}.service-template-actions button{font-size:12px;min-height:40px;white-space:normal}.service-template-caption{display:block;margin-top:7px;color:var(--muted);font-size:12px}.catalog-template .performer-card-wrap{padding:8px 0}.catalog-template .performer-row{margin:0;padding:12px 0}.service-template-actions .subtle{font-size:12px}@media(max-width:700px){.service-template-actions{align-items:stretch}.service-template-actions button{min-height:44px;flex:1}.service-template-actions .subtle{width:100%}}
/* Project totals and their service breakdown share aligned money columns. */
.project-sort-label{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--muted)}.project-sort-label select{min-width:220px}.project-service-profit td{background:var(--surface,#f4f7f3);font-size:13px;border-bottom:1px solid var(--line,#dce4dd)}.project-service-profit .rowname{padding-left:28px;font-weight:400}.service-profit-name{display:block;margin-bottom:5px;font-weight:600}.service-cost-explanation{margin-top:9px;font-size:12px;line-height:1.6;font-weight:400}.service-cost-explanation summary{cursor:pointer;color:var(--green,var(--accent,#23583e));text-decoration:underline;text-underline-offset:3px}.service-cost-explanation small{max-width:44ch}.project-service-profit .num small{font-weight:400}.projects-table .rowname{overflow-wrap:anywhere}.project-repeat-summary{margin-bottom:8px}
@media(max-width:900px){.project-service-profit .rowname{padding-left:16px}.project-service-profit .project-actions{display:none}.project-service-profit{margin-left:14px!important}.project-sort-label{flex-wrap:wrap}.project-sort-label select{min-width:0;max-width:100%}}
.service-month-summary{margin-top:20px;margin-bottom:32px}.service-month-summary>p{max-width:78ch}.service-summary-projects{margin-top:8px;font-size:12px;font-weight:400}.service-summary-projects summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px;color:var(--accent,#23583e)}.service-summary-project{margin-top:10px;line-height:1.6}.service-summary-project strong,.service-summary-project span{display:block}.service-summary-table .rowname{min-width:200px;overflow-wrap:anywhere}.service-summary-table .num{font-variant-numeric:tabular-nums}.service-summary-table .num small{font-weight:400}
.service-compare-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:18px 0}.service-compare-controls label{display:flex;align-items:center;gap:8px;font-size:14px}.service-compare-controls input[type=checkbox]{width:17px;height:17px;margin:0}.service-compare-controls input[type=month]{width:185px}.service-comparison-table{table-layout:fixed}.service-comparison-table th:first-child{width:26%}.service-comparison-table .rowname{min-width:0}.service-comparison-table .num{white-space:normal}.service-comparison-table .num strong{display:block;font-weight:600}.service-change{display:block;font-size:12px;margin-top:6px;color:var(--ink,#354b40);font-weight:400;line-height:1.5}.service-comparison-table small{line-height:1.5}
@media(max-width:700px){.service-comparison-table{table-layout:auto}.service-compare-controls{align-items:flex-start}.service-compare-controls .subtle{flex-basis:100%}}
.employee-grade-rates{margin:18px 0;padding:16px;background:var(--surface,#f4f7f3);border:1px solid var(--line,#dce4dd);border-radius:8px}.employee-grade-rates h4{margin:0 0 12px}.employee-grade-rates[hidden]{display:none}.employee-grade-rates .subtle{margin-bottom:0}
/* Shared app shell:company identity, grouped navigation and quiet utilities. */
.shell{grid-template-columns:240px minmax(0,1fr)}.shell>aside{padding:24px 12px 16px;background:var(--surface-raised,#edf2ee);gap:0}.brand{display:flex;align-items:center;gap:12px;padding:4px 12px 24px;font-size:24px;letter-spacing:-.5px;flex-shrink:0}.brand-symbol{width:31px;height:31px;flex-shrink:0;color:var(--accent,#17634c)}.brand .brand-copy{display:flex;flex-direction:column;margin:0;color:var(--ink);font-size:inherit;letter-spacing:inherit}.brand-copy strong{font-size:24px;line-height:1.2;font-weight:700}.brand .brand-copy>span{font-size:12px;margin:4px 0 0;color:var(--muted,#586b66);font-weight:500;letter-spacing:0}#nav{display:flex;flex-direction:column;gap:18px;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--muted,#b6c6bd) transparent;padding:0 0 8px}#nav::-webkit-scrollbar{width:4px}#nav::-webkit-scrollbar-thumb{background:var(--surface-selected,#b6c6bd);border-radius:3px}.nav-group{display:flex;flex-direction:column;gap:3px;flex-shrink:0}.nav-group .nav-section-label{padding:0 12px 7px;font-size:11px;font-weight:650;color:var(--muted,#586b66)}.nav-group a{display:flex;align-items:center;gap:11px;min-height:36px;padding:8px 12px;font-size:13px;line-height:1.4;font-weight:500;color:var(--muted,#435c52);border-radius:6px}.nav-group a:hover{background:var(--surface-raised,#e1eae3);color:var(--accent,#194e38)}.nav-group a.active{background:var(--surface-raised,#d8e7dd);color:var(--accent,#164f39);font-weight:650}.nav-icon{width:18px;height:18px;flex-shrink:0;display:block}.nav-group a.active .nav-icon{stroke-width:1.9}.shell>main{padding-left:32px;padding-right:32px}.app-header{min-height:96px;gap:20px}.header-location{display:flex;flex-direction:column;gap:6px;min-width:120px;flex:1}.header-location #crumb{font-size:14px;line-height:1.4}.header-location .save{display:block;margin:0;font-size:11px;line-height:1.5;max-width:250px}.app-header .toolbar{gap:16px;flex-shrink:0}.app-header .monthlabel{display:flex;flex-direction:column;align-items:flex-start;gap:5px;font-size:11px}.app-header .monthlabel select,.app-header .monthlabel input{min-height:36px;padding:7px 9px;font-size:13px}.app-header #month{margin:0;width:156px}.app-header #company{width:166px}.header-backups{display:flex;align-items:center;gap:4px;padding-top:19px}.header-backups button{display:flex;align-items:center;justify-content:center;gap:7px;background:transparent;border-color:transparent;padding:8px;font-size:12px;min-height:36px}.header-backups button:hover{background:var(--surface-raised,#e9efea);border-color:var(--line,#dbe3df)}.header-backups svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.source-settings-link h2{margin-top:0}
@media(min-width:901px) and (max-width:1150px){.app-header .toolbar{gap:10px}.header-backups button span{display:none}.header-backups button{width:36px}.shell>main{padding-left:24px;padding-right:24px}.header-location{min-width:100px}.header-location .save{max-width:180px}}
@media(max-width:900px){.shell{display:block}.shell>aside{height:auto;position:relative;padding:16px 20px;display:grid;grid-template-columns:1fr auto;gap:0 16px;border-right:0;border-bottom:1px solid var(--line)}.brand{padding:0;gap:10px}.brand-copy strong{font-size:21px}.brand-symbol{width:26px;height:26px}.brand .brand-copy>span{font-size:11px;margin-top:2px}.nav-toggle{display:block;align-self:center;max-width:190px;white-space:normal;font-size:12px;min-height:40px}#nav{display:none;grid-column:1/-1;overflow-y:auto;max-height:65dvh;gap:20px;padding-top:22px;flex-direction:column}#nav.mobile-open{display:flex}.nav-group .nav-section-label{display:block;padding-left:12px}.nav-group a{min-height:42px;font-size:14px}.shell>main{padding:0 20px}.app-header{min-height:0;align-items:flex-start;flex-direction:column;gap:16px;padding:18px 0}.header-location{gap:4px}.header-location .save{max-width:none}.app-header .toolbar{width:100%;flex-wrap:wrap;gap:14px;justify-content:flex-start}.header-backups{padding-top:18px;margin-left:auto}.app-header #company{width:166px}.app-header #month{width:156px}}
@media(max-width:560px){.shell>aside{padding:14px 16px}.shell>main{padding:0 16px}.brand-copy strong{font-size:20px}.nav-toggle{max-width:145px;padding:8px}.app-header .toolbar{gap:12px}.app-header .monthlabel{flex:1;min-width:130px}.app-header .monthlabel select,.app-header .monthlabel input{width:100%!important}.header-backups{margin-left:0;padding:0;width:100%;justify-content:flex-end}.header-backups button{padding:6px 8px}.app-header{gap:14px}}
/* Compact desktop project ledger; detail panels retain their own spacing. */
@media(min-width:901px){
 .projects-table>thead>tr>th{padding:10px 12px}
 .projects-table>tbody>tr>td{padding:8px 12px;line-height:1.35}
 .projects-table>tfoot>tr>td{padding:10px 12px}
 .projects-table>tbody>tr>.rowname>small{margin-top:3px;font-size:11px;line-height:1.35}
 .projects-table .project-service-list{margin-top:4px;gap:3px}
 .projects-table .project-service-item{gap:3px 7px;font-size:12px;line-height:1.4}
 .projects-table .project-service-price{display:inline;margin-top:0;font-size:11px}
 .projects-table .project-service-price::before{content:' · ';color:var(--muted)}
 .projects-table .service-type{padding:1px 6px;font-size:10px;line-height:1.5;vertical-align:middle}
 .projects-table .project-repeat-summary{margin-top:4px!important;margin-bottom:3px;line-height:1.35}
 .projects-table .cost-open{margin-top:4px;font-size:11px;line-height:1.5}
 .projects-table .project-actions>button{padding:6px 10px;min-height:32px;font-size:12px}
 .projects-table .num small{display:block;margin-top:2px;line-height:1.35}
 .projects-table>tbody>.project-service-profit>td{padding-top:7px;padding-bottom:7px}
 .projects-table>tbody>.project-service-profit>.rowname{padding-left:24px}
 .projects-table .service-profit-name{display:inline;margin:0 7px 0 0;font-size:12px;line-height:1.4}
 .projects-table .service-cost-explanation{margin:3px 0 0;font-size:11px;line-height:1.5}
 .projects-table .service-cost-explanation>summary{padding:2px 0;font-size:11px;line-height:1.5}
 .projects-table .service-cost-explanation[open]{margin-bottom:4px}
 .projects-table .service-cost-explanation>div{margin-top:3px}
}
.project-editor .project-accordion{margin:10px 0;border:1px solid var(--line);border-radius:8px;background:var(--surface,#fff)}.project-accordion>summary,.project-service-accordion>summary{display:flex;align-items:center;gap:12px;padding:14px 16px;list-style:none;color:var(--ink);min-height:52px}.project-accordion>summary::-webkit-details-marker,.project-service-accordion>summary::-webkit-details-marker{display:none}.accordion-title{font-size:14px;font-weight:650}.accordion-preview{font-size:12px;font-weight:400;color:var(--muted);margin-left:auto;text-align:right}.project-accordion>summary>svg,.project-service-accordion>summary>svg{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;transition:transform .15s ease-out}.project-accordion[open]>summary>svg,.project-service-accordion[open]>summary>svg{transform:rotate(180deg)}.project-accordion[open]>summary{border-bottom:1px solid var(--line);background:var(--surface,#f5f8f5)}.project-accordion-body{padding:18px}.project-accordion-body>.project-step{padding:0;margin:0;border:0}.project-accordion-body>.project-step>p:first-child{margin-top:0}.project-accordion-body .project-basics{margin:0}.project-accordion-body .project-extra{margin:8px 0}.project-service-accordion{margin:12px 0;border:1px solid var(--line);border-radius:6px}.project-service-accordion>summary{padding:12px 14px;min-height:48px;background:var(--surface,#f4f7f3)}.service-accordion-name{font-size:13px;font-weight:600}.service-accordion-meta{font-size:12px;font-weight:400;margin-left:auto;white-space:nowrap;color:var(--muted)}.project-service-accordion>.service-row{margin:0;padding:16px;border:0;min-width:0}.project-service-accordion>.service-row>legend{display:none}.project-service-accordion .service-team-scope{padding:0;border:0;margin:12px 0}.project-service-accordion .service-team-scope>summary,.service-template-disclosure>summary{font-size:12px;padding:8px 0}.project-service-accordion .service-template-actions{margin-top:4px}.project-service-accordion .service-staff{margin-bottom:12px}.project-accordion-body .billing-plan-summary{padding:14px;margin-top:18px}.project-accordion-body .billing-plan-summary h4{margin-bottom:12px}.project-editor .project-intro{max-width:85ch}
@media(max-width:700px){.project-accordion>summary,.project-service-accordion>summary{flex-wrap:wrap;gap:6px 10px;padding:12px}.accordion-title,.service-accordion-name{flex:1}.accordion-preview,.service-accordion-meta{order:2;flex-basis:100%;margin-left:0;text-align:left;white-space:normal}.project-accordion-body{padding:14px}.project-service-accordion>.service-row{padding:12px}}
@media(prefers-reduced-motion:reduce){.project-accordion>summary>svg,.project-service-accordion>summary>svg{transition:none}}
.projects-table .project-number{display:inline-block;min-width:22px;margin-right:4px;color:var(--muted);font-size:12px;font-weight:500;font-variant-numeric:tabular-nums}
.employee-role-directory{margin:20px 0;padding:14px 18px;border:1px solid var(--line);border-radius:8px;background:var(--surface,#fff)}.employee-role-directory>summary{font-size:13px;padding:3px 0}.employee-role-directory .chips{margin:14px 0}.employee-role-directory .inline-form{margin-bottom:0}.employee-role-directory .inline-form input{min-width:220px;flex:1}.employee-role-directory .inline-form button{min-height:40px}
@media(max-width:560px){.employee-role-directory .inline-form{flex-wrap:wrap}.employee-role-directory .inline-form input{min-width:0;width:100%;flex-basis:100%}}
.employee-probation{margin:22px 0;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.employee-probation>.checkbox{font-weight:600}.probation-fields{margin-top:18px}.probation-fields[hidden]{display:none}.probation-fields>.subtle{margin-bottom:0}.probation-list-status{margin-top:8px;line-height:1.5}.probation-list-status .tag{white-space:normal;display:inline-block}.probation-list-status small{display:block;margin-top:5px;color:var(--muted);font-size:11px}
.employees-table .employee-number{display:inline-block;min-width:21px;margin-right:4px;font-size:12px;font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}
@media(min-width:901px){.employees-table>thead>tr>th{padding:9px 10px}.employees-table>tbody>tr>td{padding:7px 10px;font-size:12px;line-height:1.4}.employees-table .actions{flex-wrap:nowrap;gap:5px;justify-content:flex-end}.employees-table .actions>button{padding:5px 8px;font-size:11px;min-height:30px}.employees-table .rowname small{font-size:11px;margin-top:3px}.employees-table .probation-list-status{margin-top:4px}.employees-table .probation-list-status .tag{font-size:10px;padding:2px 5px}.employees-table .probation-list-status small{font-size:10px;margin-top:3px}}
.employee-sort-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.employee-sort-label select{min-width:210px}
@media(max-width:560px){.employee-sort-label{width:100%}.employee-sort-label select{flex:1;min-width:0}}

/* Opening balances and separate incoming/outgoing missing dates. */
.cash-missing-dates{display:flex;flex-wrap:wrap;gap:20px 48px;margin:18px 0}.cash-missing-dates div{min-width:220px}.cash-missing-dates dt{font-size:14px}.cash-missing-dates dd{margin:6px 0 0;font-size:22px;font-weight:650;font-variant-numeric:tabular-nums}.cash-notice-actions{display:flex;flex-wrap:wrap;gap:8px 28px}.opening-accounts{margin:0 0 32px}.opening-accounts>.lead{max-width:76ch}.opening-accounts>.subtle{max-width:90ch;line-height:1.6}.opening-accounts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.opening-accounts-grid .account-form{margin:0;min-width:0;padding:20px}.account-heading{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:16px}.account-heading h3{margin:0;font-size:17px}.account-form .formgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.account-form .checkbox{line-height:1.5;align-items:flex-start}.account-form .checkbox input{margin-top:4px;flex-shrink:0}.account-name-details{margin:12px 0}.account-name-details summary{font-size:13px}.account-name-details label{margin-top:12px}.account-form .formfoot{margin-top:14px}.account-form .formfoot button{white-space:normal}.opening-accounts .inline-form{margin-top:16px}@media(max-width:1100px){.opening-accounts-grid{grid-template-columns:1fr}}@media(max-width:520px){.account-form .formgrid{grid-template-columns:1fr}.cash-missing-dates{display:block}.cash-missing-dates div+div{margin-top:16px}}
/* Bank import:an explicit preview before any financial data is committed. */
.bank-upload h2,.bank-preview h2{font-size:21px;margin-top:0}.bank-upload .formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.bank-file-label{padding:18px;background:var(--paper);border:1px dashed var(--line);border-radius:6px}.bank-file-label input{display:block;margin-top:10px;max-width:100%;background:var(--surface,#fff)}.bank-summary{display:flex;gap:14px 28px;flex-wrap:wrap;padding:16px 0;margin:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}.bank-preview-toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:18px 0}.bank-preview-toolbar label{max-width:250px;min-width:180px}.bank-preview-toolbar>span{font-size:13px;margin:auto 0 auto auto}.bank-preview-table{width:100%;table-layout:fixed}.bank-preview-table th:first-child{width:50px}.bank-preview-table th:nth-child(2){width:30%}.bank-preview-table th:nth-child(3){width:125px}.bank-preview-table td{vertical-align:top;padding:16px 12px}.bank-preview-table .bank-pick{padding-top:22px;text-align:center}.bank-operation strong{display:block;font-size:14px;overflow-wrap:anywhere}.bank-operation small{display:block;margin-top:6px;color:var(--muted);font-size:12px}.bank-operation p{font-size:13px;line-height:1.5;margin:10px 0;overflow-wrap:anywhere}.bank-linking label{font-size:12px;display:block;margin-bottom:10px}.bank-linking select,.bank-linking input{max-width:100%;min-width:0;width:100%;margin-top:5px}.bank-linking>small{display:block;margin-top:8px;line-height:1.5}.bank-linking p{font-size:12px;line-height:1.5}.bank-allocation{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:0 10px;padding-top:12px;margin-top:12px;border-top:1px solid var(--line)}.bank-allocation>label:first-child{grid-column:1/-1}.bank-allocation>button{align-self:center;font-size:12px}.bank-add-link{font-size:12px;margin-top:8px}.bank-import-confirm{margin-top:18px;padding:20px 0;border-top:1px solid var(--line)}.bank-import-confirm .checkbox{line-height:1.6;align-items:flex-start}.bank-import-confirm .checkbox input{margin-top:5px;flex-shrink:0}#bank-selection-summary{font-weight:600;font-variant-numeric:tabular-nums}#bank-import-error{color:var(--danger,#9c3128);font-size:14px;line-height:1.5}#bank-upload-status{font-size:14px;line-height:1.5}.bank-linking .subtle{color:var(--muted)}@media(max-width:1100px){.bank-preview-table th:nth-child(2){width:27%}.bank-preview-table th:nth-child(3){width:105px}.bank-preview-table td{padding:12px 8px}.bank-preview-table .num{white-space:normal}.bank-preview-toolbar>span{margin-left:0}}@media(max-width:700px){.bank-upload .formgrid{grid-template-columns:1fr}.bank-preview-table{min-width:760px}.bank-preview .tablewrap{overflow-x:auto}.bank-preview-toolbar{align-items:stretch}.bank-preview-toolbar>span{width:100%}}

.bank-upload .formgrid>label{display:flex;flex-direction:column;align-items:stretch;gap:8px}.bank-upload .formgrid>label>select{width:100%;min-width:0}.bank-upload .formgrid>.bank-file-label input{width:100%;box-sizing:border-box}

/* Document register for the operator; signature and storage are separate states. */
.doc-field{display:flex;flex-direction:column;gap:7px;font-size:13px;min-width:0}.doc-field input,.doc-field select,.doc-field textarea{width:100%;min-width:0;box-sizing:border-box}.doc-storage{margin-bottom:16px}.doc-storage h2{font-size:19px;margin:0 0 8px}.doc-storage-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.doc-storage-heading p{font-size:14px;margin:0;max-width:70ch;line-height:1.6}.doc-storage-heading>a,.doc-storage-heading>button{flex-shrink:0}.doc-connection-setup{margin-top:16px}.doc-connection-setup>p,.doc-connection-setup>ol{font-size:13px;line-height:1.65;max-width:80ch}.doc-connection-setup form{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin:18px 0}.doc-progress{font-size:14px;color:var(--green);line-height:1.6}.doc-error{color:var(--danger,#9c3128);font-size:14px;line-height:1.6;overflow-wrap:anywhere}.doc-editor .formgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.doc-editor h2{font-size:21px}.doc-editor h3{font-size:17px;margin-top:24px}.doc-editor .subtle{line-height:1.6}.doc-editor .formfoot{margin-top:20px}.doc-project-details{margin:20px 0}.doc-project-picker{max-height:180px;overflow:auto;margin-top:14px;padding:8px 0}.doc-project-picker .checkbox{display:flex;align-items:flex-start;margin:10px 0;font-size:13px}.doc-project-picker small{display:block;color:var(--muted)}.doc-project-picker input{flex-shrink:0}.doc-upload-field{padding:16px 0}.doc-files{margin-bottom:18px}.doc-file{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.doc-file strong{font-size:14px;overflow-wrap:anywhere}.doc-file small{display:block;margin-top:6px;color:var(--muted);font-size:12px}.doc-file-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;font-size:13px;flex-shrink:0;max-width:60%}.doc-file-actions button,.doc-file-actions .button-link{font-size:12px}.doc-summary{display:flex;flex-wrap:wrap;gap:12px 26px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;margin:24px 0 18px}.doc-filters{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(130px,.8fr) minmax(190px,1fr) minmax(170px,1fr);gap:12px;margin-bottom:18px}.doc-filters>.checkbox{grid-column:1/-1;font-size:13px}.documents-table{width:100%}.documents-table td{padding:12px 10px;vertical-align:middle;font-size:13px}.documents-table small{display:block;font-size:12px;color:var(--muted);margin-top:5px;line-height:1.5}.documents-table strong{font-size:13px}.documents-table .doc-order{width:35px;font-variant-numeric:tabular-nums;color:var(--muted)}.documents-table .tag{white-space:normal}.documents-table td:nth-child(2),.documents-table td:nth-child(3){max-width:250px;overflow-wrap:anywhere}.documents-table .num{white-space:nowrap}@media(max-width:1100px){.doc-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.doc-storage-heading{flex-direction:column;gap:12px}.doc-file-actions{max-width:50%}}@media(max-width:700px){.doc-editor .formgrid,.doc-filters{grid-template-columns:1fr}.doc-file{flex-direction:column;gap:10px}.doc-file-actions{max-width:100%;justify-content:flex-start}.documents-table{min-width:760px}.doc-connection-setup form{display:block}.doc-connection-setup button{margin-top:12px}}

/* DLMG client profiles and per-service control:inherit the desktop journal. */
.client-back{display:inline-block;margin:0 0 12px;color:var(--muted,var(--muted,#586b66))}
.client-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:20px 0 16px}
.client-filters label{display:grid;gap:6px;font-size:12px;color:var(--muted,#586b66);min-width:160px}
.client-filters input,.client-filters select{width:100%;min-height:36px}
.client-filters label:first-child{flex:1;min-width:220px}
.profit-filters{padding:16px;background:var(--surface,#fff);border:1px solid var(--line,#dce5e0);border-radius:9px}
.profit-filters label{min-width:135px;flex:1}
.profit-filters #profit-target{max-width:145px}
.client-data-table{width:100%;font-size:13px}
.client-data-table th,.client-data-table td{padding:10px 12px;vertical-align:top}
.client-data-table td small{display:block;font-size:11px;line-height:1.5;margin-top:4px;color:var(--muted,#586b66);white-space:normal}
.client-data-table td .negative{color:var(--danger,#a53232)}
.client-data-table td.num{font-variant-numeric:tabular-nums;white-space:nowrap}
.client-data-table td:last-child .smallbtn{display:block;margin-top:8px}
.client-data-table tfoot td{font-weight:600;border-top:2px solid var(--line,#cbdad2);background:var(--surface-raised,#edf3ef)}
.client-data-table .client-service-title{width:39%;min-width:250px;white-space:normal}
.client-result-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding:20px 0;border-block:1px solid var(--line,#dce5e0)}
.client-result-strip div{display:grid;gap:8px}
.client-result-strip span{font-size:12px;color:var(--muted,#586b66)}
.client-result-strip strong{font-size:24px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.client-section{margin-top:28px}
.client-section>h2{margin-bottom:8px}
.client-section>summary{font-size:17px;font-weight:600;padding:12px 0;cursor:pointer}
.client-section>form{background:var(--surface,#fff);padding:20px;border:1px solid var(--line,#dce5e0);border-radius:9px}
.client-section .formfoot{position:static}
.client-payment-strip{display:flex;gap:24px;flex-wrap:wrap;margin:16px 0}
.client-payment-strip span{font-size:13px}
.profit-state{display:inline-block;font-size:11px;padding:4px 7px;border-radius:4px;background:var(--surface-raised,#edf3ef);color:var(--accent,#31564b);white-space:nowrap}
.profit-state.loss{color:var(--danger,#8b2929);background:var(--danger-bg,#fcecec)}
.profit-state.below{color:var(--warning,#775016);background:var(--warning-bg,#fff4df)}
.profit-state.excluded,.profit-state.zero{color:var(--muted,#586b66);background:var(--surface-raised,#f0f3f1)}
.client-cost-detail{margin-top:8px}
.client-cost-detail>summary{font-size:12px;color:var(--accent,#17634c);cursor:pointer}
.client-cost-detail[open]{min-width:270px}
.client-cost-detail dl{margin:12px 0}
.client-cost-detail dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:8px 0;border-bottom:1px solid var(--line,#e5ece7)}
.client-cost-detail dt{font-size:12px}
.client-cost-detail dd{margin:0;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
.client-cost-detail p{font-size:11px;line-height:1.6;color:var(--muted,#586b66);max-width:65ch;white-space:normal}
.client-cost-total{font-weight:600}
#client-contact-state{font-size:12px;color:var(--muted,#586b66)}
@media(max-width:1100px){.client-data-table th,.client-data-table td{padding:9px 8px}.client-result-strip{gap:16px}.client-result-strip strong{font-size:20px}}
@media(max-width:700px){.client-result-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.client-filters label{flex:1;min-width:135px}.client-data-table .client-service-title{min-width:0;width:auto}.client-cost-detail[open]{min-width:0}.client-payment-strip{gap:12px}.client-section>form{padding:14px}}

.client-quality{padding:10px 12px;margin:12px 0;font-size:12px;line-height:1.6}
.client-quality p{margin:4px 0;max-width:none}
.client-quality strong{font-size:12px}

/* v46:one compact action language for DLMG tables, matching Employees. */
body[data-company="dlmg"] .table-actions{display:flex;flex-wrap:wrap;gap:5px;align-items:center;justify-content:flex-end}
body[data-company="dlmg"] .table-actions .row-action{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 8px;font-size:11px;line-height:1.35;border-radius:6px;white-space:nowrap}
body[data-company="dlmg"] .row-action-main{color:var(--accent,#17634c);background:var(--surface-raised,#edf4ef);border-color:var(--line-strong,#9ebcad)}
body[data-company="dlmg"] .table-actions-cell{vertical-align:middle}
body[data-company="dlmg"] .table-deadline>span,body[data-company="dlmg"] .table-deadline>small{display:block}
body[data-company="dlmg"] .table-deadline>small{margin-top:4px;font-size:11px;color:var(--muted);line-height:1.4}
body[data-company="dlmg"] .table-deadline>.tag{display:inline-block;margin-bottom:4px}
body[data-company="dlmg"] .table-period{font-size:10px;color:var(--muted);font-weight:400}
body[data-company="dlmg"] .tariff-details{margin:4px 0 0;font-weight:400}
body[data-company="dlmg"] .tariff-details>summary{padding:3px 0;font-size:11px;font-weight:500}
body[data-company="dlmg"] .tariff-details p{font-size:11px;line-height:1.5;margin:6px 0;white-space:normal;overflow-wrap:anywhere}
body[data-company="dlmg"] .tariff-details a{font-size:11px}
@media(min-width:901px){
 body[data-company="dlmg"] #content .tablewrap>table>thead>tr>th{padding:9px 10px;line-height:1.35;white-space:normal}
 body[data-company="dlmg"] #content .tablewrap>table>thead>tr>th.num-heading{text-align:right}
 body[data-company="dlmg"] #content .tablewrap>table:not(.employees-table):not(.projects-table):not(.client-data-table)>tbody>tr>td{padding:9px 10px;line-height:1.4}
 body[data-company="dlmg"] #content .tablewrap>table>tbody>tr>td:not(.num){overflow-wrap:anywhere}
 body[data-company="dlmg"] #content .tablewrap>table>tbody>tr>td>small{display:block;font-size:11px;line-height:1.4;color:var(--muted);margin-top:3px}
 body[data-company="dlmg"] #content .tablewrap>table>tbody>tr>td>button:not(.cost-open),body[data-company="dlmg"] #content .tablewrap>table>tbody>tr>td>.actions>button{font-size:11px;padding:5px 8px;min-height:30px;line-height:1.35}
 body[data-company="dlmg"] .subscriptions-table,body[data-company="dlmg"] .obligations-table,body[data-company="dlmg"] .calendar-movements-table{table-layout:fixed;width:100%}
 body[data-company="dlmg"] .subscriptions-table th:nth-child(1){width:32%}
 body[data-company="dlmg"] .subscriptions-table th:nth-child(2){width:16%}
 body[data-company="dlmg"] .subscriptions-table th:nth-child(3){width:17%}
 body[data-company="dlmg"] .subscriptions-table th:nth-child(4){width:22%}
 body[data-company="dlmg"] .subscriptions-table th:nth-child(5){width:13%;text-align:right}
 body[data-company="dlmg"] .subscriptions-table .num>small{white-space:normal;font-weight:400}
 body[data-company="dlmg"] .obligations-table th:first-child{width:24%}
 body[data-company="dlmg"] .obligations-table th:nth-child(2),body[data-company="dlmg"] .obligations-table th:nth-child(3),body[data-company="dlmg"] .obligations-table th:nth-child(4){width:11%}
 body[data-company="dlmg"] .obligations-table th:nth-last-child(2){width:18%}
 body[data-company="dlmg"] .obligations-table th:last-child{width:25%;text-align:right}
 body[data-company="dlmg"] .obligations-table.has-credit th:first-child{width:21%}
 body[data-company="dlmg"] .obligations-table.has-credit th:nth-child(n+2):nth-child(-n+5){width:9%}
 body[data-company="dlmg"] .obligations-table.has-credit th:nth-last-child(2){width:18%}
 body[data-company="dlmg"] .obligations-table.has-credit th:last-child{width:25%}
 body[data-company="dlmg"] .calendar-movements-table th:nth-child(1){width:13%}
 body[data-company="dlmg"] .calendar-movements-table th:nth-child(2){width:28%}
 body[data-company="dlmg"] .calendar-movements-table th:nth-child(n+3):nth-child(-n+5){width:12%}
 body[data-company="dlmg"] .calendar-movements-table th:last-child{width:23%;text-align:right}
}
@media(max-width:900px){body[data-company="dlmg"] .table-actions{justify-content:flex-start}body[data-company="dlmg"] .table-actions .row-action{min-height:36px;font-size:12px}}

body[data-company="dlmg"] .subscription-name{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px}
body[data-company="dlmg"] .subscription-name .tag{font-size:10px;padding:2px 5px;font-weight:400}
@media(min-width:901px) and (max-width:1150px){
 body[data-company="dlmg"] #content .obligations-table>tbody>tr>td,body[data-company="dlmg"] #content .calendar-movements-table>tbody>tr>td{padding:8px 6px;font-size:12px}
 body[data-company="dlmg"] .obligations-table .num,body[data-company="dlmg"] .calendar-movements-table .num{white-space:normal;overflow-wrap:normal}
 body[data-company="dlmg"] .obligations-table th:first-child{width:21%}
 body[data-company="dlmg"] .obligations-table:not(.has-credit) th:nth-child(n+2):nth-child(-n+4){width:12%}
 body[data-company="dlmg"] .obligations-table th:nth-last-child(2){width:16%}
 body[data-company="dlmg"] .obligations-table th:last-child{width:27%}
 body[data-company="dlmg"] .obligations-table.has-credit th:first-child{width:21%}
 body[data-company="dlmg"] .obligations-table.has-credit th:nth-child(n+2):nth-child(-n+5){width:9%}
}
@media(min-width:901px){
 body[data-company="dlmg"] #content .tablewrap>table>tbody>tr>td>details:not([open]){margin:4px 0 0}
 body[data-company="dlmg"] #content .tablewrap>table>tbody>tr>td>details:not([open])>summary{padding:3px 0;font-size:12px}
}

.catalog-delete-dialog{width:min(480px,calc(100vw - 32px));padding:24px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--paper)}
.catalog-delete-dialog::backdrop{background:rgba(20,44,35,.38)}
.catalog-delete-dialog h2{margin:0 0 16px;font-size:21px}
.catalog-delete-dialog p{font-size:14px;line-height:1.6}
.catalog-delete-dialog .actions{justify-content:flex-end;margin-top:24px}
.catalog-delete-dialog .catalog-delete-confirm{color:var(--ink,#fff);background:var(--danger,#9c3128);border-color:var(--danger,#9c3128)}
.catalog-delete-dialog .catalog-delete-confirm:hover{background:var(--danger,#7d271f);border-color:var(--danger,#7d271f)}
.service-directory-group{margin:8px 0;border:1px solid var(--line);border-radius:8px;background:var(--paper);overflow:hidden}
.service-directory-group>summary{display:flex;align-items:center;gap:10px;padding:14px 16px;font-size:15px;font-weight:600;cursor:pointer;list-style:none}
.service-directory-group>summary::-webkit-details-marker{display:none}
.service-directory-group>summary::before{content:'›';font-size:21px;line-height:1;color:var(--muted);transition:transform .15s}
.service-directory-group[open]>summary::before{transform:rotate(90deg)}
.service-directory-group>summary:focus-visible{outline:2px solid var(--green);outline-offset:-3px}
.service-directory-group .service-group-count{margin-left:auto;font-size:12px;font-weight:500;color:var(--muted);border:1px solid var(--line);border-radius:20px;padding:2px 8px}
.service-directory-group .table-wrap{margin:0;border-radius:0;border:0}
.service-category-empty{padding:0 16px 16px;font-size:13px;color:var(--muted)}
.service-category-create{margin:14px 0}
.service-category-create>summary{cursor:pointer;font-size:14px;color:var(--green);font-weight:600}
.service-category-create form{display:flex;gap:12px;align-items:flex-end;margin-top:12px}
.service-category-create .field{flex:1;max-width:400px}
@media(prefers-reduced-motion:reduce){.service-directory-group>summary::before{transition:none}}
.grouped-services-table{table-layout:fixed;width:100%}
.grouped-services-table th:first-child{width:29%}
.grouped-services-table th:nth-child(2){width:33%}
.grouped-services-table th:nth-child(3){width:12%}
.grouped-services-table th:last-child{width:26%}
/* DLMG service package builder */
.package-picker{display:flex;gap:12px;align-items:flex-end;margin:14px 0}.package-picker>.field{flex:1;max-width:520px}
.platform-builder{margin:12px 0;padding:16px;background:var(--surface,#f5f8f6);border:1px solid var(--line);border-radius:8px}
.platform-work{margin:14px 0}.platform-work>summary{cursor:pointer;font-weight:600}.platform-work>p{font-size:12px;line-height:1.6}
.work-item{display:grid;grid-template-columns:2fr .7fr .8fr 1.2fr;gap:10px;border-top:1px solid var(--line);padding:14px 0;align-items:end}.work-item .field{min-width:0}.work-item input,.work-item select{width:100%;min-width:0}.work-item [name=workComment]{width:100%}.work-item>button{justify-self:start}
.platform-builder .actions{gap:8px;flex-wrap:wrap}#package-profit-preview{margin:16px 0}#package-profit-preview h4{margin-bottom:8px}.package-total{background:var(--surface-raised,#edf4ef);font-weight:600}.package-total small{font-weight:400}.platform-work-description{margin:8px 0;font-size:12px;font-weight:400}
@media(max-width:900px){.work-item{grid-template-columns:1fr 1fr}.package-picker{align-items:stretch;flex-direction:column}}
.package-template-editor .template-platform{margin:10px 0;border:1px solid var(--line);border-radius:8px;background:var(--surface,#fff);overflow:hidden}
.template-platform>summary{display:flex;gap:12px;align-items:center;padding:12px 16px;background:var(--surface,#f3f7f4);cursor:pointer;font-weight:600;list-style:none}
.template-platform>summary::before{content:'›';font-size:20px;line-height:1}.template-platform[open]>summary::before{transform:rotate(90deg)}.template-platform>summary::-webkit-details-marker{display:none}.template-platform-price{margin-left:auto;font-weight:400;color:var(--muted)}.template-platform-body{padding:16px}.template-platform-body h4{margin:20px 0 12px}.template-platform-body .formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
.package-platform-choice{padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:var(--surface,#f6f9f7);margin:12px 0}.package-platform-choice legend{font-weight:600}.package-platform-choice>.checkbox{padding:8px 0;align-items:flex-start}.package-platform-choice small{display:block;color:var(--muted);margin-top:3px}.package-platform-choice>.actions{margin-bottom:8px}.package-platform-choice>.actions button{padding:5px 9px;font-size:12px}
/* v55:compact desktop workspaces, scoped to DLMG. */
body[data-company="dlmg"] .nav-fold{display:block;margin:0}body[data-company="dlmg"] .nav-fold>summary{cursor:pointer;list-style:revert;padding:8px 12px;font-size:12px;color:var(--muted,#435c52)}body[data-company="dlmg"] .nav-fold:not([open])>a{display:none}body[data-company="dlmg"] #nav{gap:8px}body[data-company="dlmg"] .audit-fold{margin:12px 0;border:1px solid var(--line);border-radius:6px;padding:12px;background:var(--surface,#fff)}body[data-company="dlmg"] .audit-fold>summary{cursor:pointer;font-weight:600}body[data-company="dlmg"] .audit-fold .project-company-result{border:0;margin:0;padding:16px 0}body[data-company="dlmg"] .workspace-tabs{display:flex;gap:8px;margin-bottom:16px}body[data-company="dlmg"] .workspace-tabs a{padding:9px 14px;border:1px solid var(--line);border-radius:6px;text-decoration:none}body[data-company="dlmg"] .workspace-tabs a[aria-current]{background:var(--surface-raised,#d8e7dd);font-weight:650}body[data-company="dlmg"] .scenario-shelf{margin:12px 0 24px}body[data-company="dlmg"] #bulk-summary{margin:14px 0}body[data-company="dlmg"] .obligation-group>.checkbox{font-size:12px;margin:10px 0}body[data-company="dlmg"] .profit-extra-filters{margin-top:8px}
body[data-company="dlmg"] nav.workspace-tabs{flex-direction:row;gap:8px;overflow:visible}body[data-company="dlmg"] nav.workspace-tabs a{flex:0 0 auto;white-space:nowrap}body[data-company="dlmg"] .nav-fold>summary{display:flex;justify-content:space-between;align-items:center}body[data-company="dlmg"] .nav-fold>summary::after{content:'›';font-size:18px;line-height:1}body[data-company="dlmg"] .nav-fold[open]>summary::after{transform:rotate(90deg)}
/* Permission and disclosure controls must respect the native hidden attribute. */
[hidden]{display:none!important}
#access-session{gap:10px;margin-left:auto;font-size:12px}#access-session button{padding:5px 10px;min-height:30px}

/* Client acquisition and retention — compact monthly journal. */
.client-view-tabs{display:flex;flex-direction:row;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line,#cdd8d3);margin:0 0 24px}
.client-view-tabs a{width:auto;flex:0 0 auto;padding:10px 14px;color:var(--muted,#455f56);text-decoration:none;border-bottom:2px solid transparent;font-weight:600}
.client-view-tabs a[aria-current="page"]{color:var(--accent,#17634c);border-bottom-color:var(--line-strong,#17634c);background:var(--surface-raised,#edf3ef)}
.client-view-tabs a:hover{background:var(--surface-raised,#edf3ef)}
.client-view-tabs a:focus-visible,.analytics-lifecycle summary:focus-visible{outline:2px solid var(--line-strong,#17634c);outline-offset:3px}
.client-analytics .client-data-table td{padding-top:10px;padding-bottom:10px}
.client-analytics .client-data-table small{white-space:normal;max-width:34ch}
.analytics-total{font-weight:700;background:var(--surface-raised,#edf3ef)}
.analytics-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:8px 0 20px;column-gap:32px}
.analytics-facts>div{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line,#dce4df)}
.analytics-facts dt{font-weight:500;max-width:38ch}.analytics-facts dd{margin:0;font-weight:700;font-size:20px;white-space:nowrap;font-variant-numeric:tabular-nums}
.analytics-facts dt small{display:block;margin-top:5px;font-weight:400;color:var(--muted,#586b66);font-size:12px;line-height:1.45}
.analytics-method p{max-width:75ch;line-height:1.6}.analytics-lifecycle p{max-width:75ch}.analytics-lifecycle label small{font-size:12px;color:var(--muted,#586b66);font-weight:400;line-height:1.45}
.analytics-note{font-size:13px;line-height:1.6}.owner-head-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:900px){.analytics-facts{grid-template-columns:1fr}.owner-head-links{justify-content:flex-start}}

/* Month close:one review workspace, grouped actionable checks. */
.month-close-workspace{max-width:1120px}.close-scope{line-height:1.6;max-width:100ch}
.close-report-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:24px 0 14px}.close-report-head h2{margin:0 0 8px}.close-report-head button{flex-shrink:0}
.close-counters{display:flex;flex-wrap:wrap;gap:12px 28px;padding:14px 0 20px;border-bottom:1px solid var(--line,#dce4df);color:var(--muted,#455f56)}.close-counters b{font-size:19px;color:var(--ink,#223d38);margin-right:4px;font-variant-numeric:tabular-nums}
.close-group{margin-top:28px}.close-group>h2{font-size:20px;margin-bottom:10px}.close-check{margin:8px 0;background:var(--surface,#fff);border:1px solid var(--line,#dce4df);border-radius:8px;overflow:hidden}.close-check>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;padding:14px 16px;list-style:none}.close-check>summary::-webkit-details-marker{display:none}.close-check>summary small{display:block;margin-top:4px;font-size:12px;color:var(--muted,#586b66)}.close-check.error>summary small,.close-check.error .close-check-symbol{color:var(--danger,#a53232)}.close-check.warning>summary small,.close-check.warning .close-check-symbol{color:var(--warning,#79520c)}.close-check-symbol{font-weight:700;color:var(--accent,#17634c);font-size:18px}.close-check>summary:hover{background:var(--surface-raised,#f2f6f3)}.close-check>summary:focus-visible{outline:2px solid var(--line-strong,#17634c);outline-offset:-3px}.close-check>p{max-width:75ch;margin:0 16px 14px;line-height:1.55;color:var(--muted,#586b66);font-size:13px}
.close-items{list-style:none;margin:0;padding:0 16px 8px}.close-items li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid var(--line,#e6ece8);font-size:13px}.close-items li>span{overflow-wrap:anywhere}.close-items button{flex-shrink:0}.close-items .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.close-passed{margin:24px 0}.close-passed>summary{cursor:pointer;font-weight:600;padding:10px 0}.close-limit{max-width:85ch;font-size:12px;line-height:1.6;margin:24px 0}.close-final{margin-top:28px;padding-top:24px;border-top:1px solid var(--line,#cdd8d3)}.close-final p{max-width:75ch;line-height:1.6}.close-final .checkbox{margin:18px 0;align-items:flex-start;max-width:75ch;line-height:1.5}.close-final .actions{margin:18px 0}
@media(max-width:700px){.close-report-head{flex-direction:column;gap:8px}.close-items{padding:0 12px 8px}.close-check>summary{padding:12px}.close-items li{gap:10px}.close-counters{gap:10px 18px}.close-final .actions{flex-wrap:wrap}}

.close-return{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.close-return button{flex-shrink:0}

/* Contract onboarding:desktop review, no finance-shaped empty tables. */
.intake-steps{display:flex;gap:32px;padding:16px 32px;background:var(--panel,var(--surface,#fff));border:1px solid var(--line,var(--line,#deded8));border-radius:12px;margin-bottom:20px;color:var(--muted,var(--muted,#626660))}
#contract-review .panel,#contract-upload{max-width:1100px}
#contract-review .formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
#contract-review .field,#contract-upload .field{display:flex;flex-direction:column;gap:7px}
#contract-review input,#contract-review select{width:100%;min-width:0}
.intake-snippet{white-space:pre-wrap;max-height:140px;overflow:auto;font-size:13px;color:var(--muted,var(--muted,#626660))}
@media(max-width:720px){.intake-steps{display:block}.intake-steps li{margin:8px 0}#contract-review .formgrid{grid-template-columns:1fr}}

/* Header:task context, reporting period, then account actions. */
.header-icon-sprite{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.header-icon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
main>.app-header{display:grid;grid-template-columns:minmax(140px,1fr) auto auto;align-items:center;gap:24px;min-height:104px;padding:20px 0;margin:0;border-bottom:1px solid var(--line);position:relative;z-index:20}
.app-header .header-location{display:flex;flex-direction:column;gap:6px;min-width:0}
.app-header #crumb{font-size:18px;line-height:1.3;font-weight:650;color:var(--ink);overflow-wrap:anywhere}
.app-header .header-save{display:flex;align-items:center;gap:6px;min-width:0;color:var(--muted)}
.header-save>.header-icon{width:14px;height:14px}
.app-header .header-location .save{font-size:11px;line-height:1.5;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0}
main>.app-header .toolbar{display:flex;align-items:flex-end;justify-content:flex-start;gap:16px;flex-wrap:nowrap;margin:0;min-width:0;width:auto}
.header-filters{display:grid;grid-template-columns:184px 164px;gap:12px;align-items:end}
.app-header .toolbar .monthlabel{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:auto;min-width:0;margin:0;flex:none;font-size:11px;color:var(--muted)}
.header-field-label{display:flex;align-items:center;gap:5px;line-height:16px;font-weight:600}
.header-field-label .header-icon{width:14px;height:14px}
.app-header .monthlabel #company,.app-header .monthlabel #month{width:100%;max-width:none;min-width:0;height:40px;min-height:40px;padding:8px 10px;margin:0;font-size:13px;background:var(--panel,var(--surface,#fff));border:1px solid var(--line,#cbd6cf);border-radius:6px;color:var(--ink,var(--ink,#223d38));font-variant-numeric:tabular-nums}
.app-header .monthlabel #company:hover,.app-header .monthlabel #month:hover{border-color:var(--line-strong,#6c8b7f)}
.app-header .header-backups{display:flex;align-items:center;gap:6px;padding:0;margin:0;width:auto}
.app-header .header-backups button{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:40px;height:40px;border:1px solid var(--line,#cbd6cf);border-radius:6px;background:var(--surface,#fff);padding:8px 10px;margin:0;white-space:nowrap;font-size:12px;color:var(--ink,var(--ink,#223d38));width:auto}
.app-header .header-backups svg{width:20px;height:20px}
.app-header .header-backups button:hover{background:var(--surface-raised,#e9efea);border-color:var(--line-strong,#a4b9ad)}
.app-header .header-backups button span{display:none}
.app-header .header-account{align-self:end;min-width:0}
.app-header #access-session{display:block;margin:0;font-size:13px}
.account-menu{position:relative}
.account-menu>summary{display:flex;align-items:center;gap:8px;list-style:none;height:40px;min-width:40px;max-width:180px;padding:8px 10px;border:1px solid var(--line,#cbd6cf);border-radius:6px;background:var(--surface,#fff);cursor:pointer;user-select:none;font-weight:500}
.account-menu>summary::-webkit-details-marker{display:none}
.account-menu>summary:hover,.account-menu[open]>summary{background:var(--surface-raised,#e9efea);border-color:var(--line-strong,#a4b9ad)}
.account-menu>summary>.header-icon:last-child{width:14px;height:14px}
.account-trigger-name{max-width:110px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.account-dropdown{position:absolute;right:0;top:calc(100% + 8px);width:260px;padding:8px;background:var(--surface,#fff);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 28px var(--shade,#223d3824);z-index:40}
.account-identity{display:flex;flex-direction:column;gap:4px;padding:10px 10px 14px;margin-bottom:6px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.account-identity small{color:var(--muted);font-size:12px}
.account-dropdown>a,.app-header #access-session .account-dropdown>button{display:flex;align-items:center;gap:10px;width:100%;min-height:40px;padding:10px;border:0;border-radius:5px;background:transparent;text-decoration:none;color:var(--ink,var(--ink,#223d38));font-size:13px;text-align:left;line-height:1.4;margin:0}
.account-dropdown>a:hover,.app-header #access-session .account-dropdown>button:hover{background:var(--surface-raised,#edf2ee)}
.app-header:is(button,select,input,summary,a):focus-visible{outline:2px solid var(--line-strong,#17634c);outline-offset:3px}
.app-header [hidden]{display:none!important}
@media(min-width:1450px){.app-header .header-backups button span{display:inline}}
@media(min-width:901px) and (max-width:1200px){main>.app-header{gap:16px}.header-filters{grid-template-columns:164px 154px;gap:10px}.app-header .toolbar{gap:10px}.account-trigger-name{display:none}.account-menu>summary{padding:8px}.account-menu>summary>.header-icon:last-child{display:none}}
@media(max-width:900px){main>.app-header{grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:20px 0}.app-header .header-location{grid-column:1;grid-row:1}.app-header .header-account{grid-column:2;grid-row:1;align-self:center}.app-header .toolbar{grid-column:1/-1;grid-row:2;width:100%;gap:12px}.header-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr);flex:1}.app-header .header-backups{margin:0}.account-trigger-name{max-width:96px}.app-header .header-location .save{max-width:240px}}
@media(max-width:480px){main>.app-header{gap:14px}.app-header #crumb{font-size:16px}.account-trigger-name,.account-menu>summary>.header-icon:last-child{display:none}.account-menu>summary{padding:8px}.header-filters{gap:8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.app-header .toolbar{gap:8px}.app-header .monthlabel #company,.app-header .monthlabel #month{font-size:12px;padding:8px 6px}.app-header .header-backups button{padding:8px}.app-header .header-location .save{max-width:220px}}
.app-header .account-menu{margin:0;padding:0;border:0}
.header-filters:has(.monthlabel[hidden]){grid-template-columns:164px}
.app-header .header-backups:not(:has(button:not([hidden]))){display:none}
@media(max-width:480px){.header-filters:has(.monthlabel[hidden]){grid-template-columns:minmax(0,1fr)}}

/* A permanent project contains dated financial periods. */
.record-filters{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:20px 0 12px}.record-filters>label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted)}.record-filters>.checkbox{flex-direction:row;align-items:center;padding:10px 0}.record-filters input[type=search]{min-width:240px}.record-table{width:100%;font-size:13px}.record-table th{white-space:normal}.record-table td{padding:12px 10px;vertical-align:top}.record-table td small{display:block;margin-top:4px;color:var(--muted);font-size:11px}.record-number{margin-right:8px;color:var(--muted);font-size:12px}.record-table .button-link{min-height:30px;padding:6px 10px;font-size:12px;white-space:nowrap}.record-month-total{display:flex;gap:24px;flex-wrap:wrap;align-items:center;padding:16px 0;border-top:1px solid var(--line);font-variant-numeric:tabular-nums}.record-month-total strong{margin-right:auto}.record-settings{margin:20px 0;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.record-settings summary{cursor:pointer}.record-settings form,.record-detail form{display:flex;gap:12px;align-items:end;margin:16px 0;flex-wrap:wrap}.record-settings label,.record-detail form label{display:flex;flex-direction:column;gap:6px;min-width:220px}.record-settings form input{width:100%}.record-month-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.record-month-tabs button{padding:8px 12px;font-size:13px}.record-month-tabs button.active{background:var(--accent-hover,#17634c);color:var(--ink,#fff);border-color:var(--line-strong,#17634c)}.record-period-head{display:flex;gap:16px;align-items:center;justify-content:space-between;margin:24px 0 16px}.record-period-head h2{margin:0}.record-period-head p{margin:6px 0 0}.record-results{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:20px 0 28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.record-results>div{padding:16px 12px;font-size:12px;color:var(--muted)}.record-results strong{display:block;margin-top:8px;font-size:19px;line-height:1.3;color:var(--ink,var(--ink,#223d38));font-variant-numeric:tabular-nums}.record-detail{padding:14px 0;margin:0;border-bottom:1px solid var(--line)}.record-detail>summary{cursor:pointer;font-weight:600}.record-detail .tablewrap{margin:16px 0}.record-table td.num{white-space:nowrap}.record-settings summary:focus-visible,.record-detail summary:focus-visible{outline:2px solid var(--line-strong,#17634c);outline-offset:4px}@media(max-width:1100px){.record-results{grid-template-columns:repeat(3,minmax(0,1fr))}.record-table td{padding:10px 8px}.record-table{font-size:12px}}@media(max-width:700px){.record-period-head{align-items:stretch;flex-direction:column}.record-results{grid-template-columns:repeat(2,minmax(0,1fr))}.record-filters>label{flex:1}.record-filters input[type=search]{min-width:0}.record-table{min-width:680px}.record-detail .tablewrap{overflow:auto}.record-settings label{min-width:0;flex:1}.record-month-total{gap:12px}}

/* One recoverable deletion flow, with a visible impact before confirmation. */
.deletion-dialog{width:min(520px,calc(100vw - 48px));max-height:80vh;overflow:auto;border:1px solid var(--line,var(--line,#d7dfda));border-radius:16px;padding:24px;color:var(--ink,var(--ink,#253b34));background:var(--paper,var(--surface,#fff));box-shadow:0 24px 80px var(--shade,#14332733)}
.deletion-dialog::backdrop{background:var(--shade,#152d2466)}
.deletion-dialog h2{margin:0 0 16px;font-size:23px}
.deletion-dialog p{line-height:1.55;overflow-wrap:anywhere}
.deletion-dialog ul{padding-left:20px;line-height:1.6}
.deletion-dialog .actions{justify-content:flex-end;margin-top:24px;gap:10px}

.bulk-role-row{display:grid;grid-template-columns:minmax(220px,1fr) 170px 140px;gap:16px;align-items:center;padding:12px 14px;border:1px solid var(--line,var(--line,#d7dfda));border-radius:10px;margin:8px 0}
.bulk-role-row label:not(.checkbox){display:grid;gap:5px;font-size:13px}
.bulk-role-row input[type=number],.bulk-role-row select{width:100%;min-width:0}
.bulk-role-row .checkbox{margin:0}.bulk-role-row small{display:block}
@media(max-width:720px){.bulk-role-row{grid-template-columns:1fr 1fr}.bulk-role-row>.checkbox{grid-column:1/-1}}

/* DLMG workspaces — one navigation level, one active task, compact desktop grid. */
body.workspace-design{background:var(--surface,#f6f8f7);color:var(--ink,#203b34)}
body.workspace-design [hidden]{display:none!important}
body.workspace-design .shell{grid-template-columns:220px minmax(0,1fr)}
body.workspace-design .shell>aside{background:var(--surface-raised,#eef3f0);padding:22px 12px 12px}
body.workspace-design .brand{padding:0 10px 26px;gap:10px}
body.workspace-design .brand-copy strong{font-size:23px}
body.workspace-design #nav{gap:10px;padding:0;overflow-y:auto}
body.workspace-design .nav-group{gap:4px;margin:0}
body.workspace-design .nav-primary a{min-height:38px;padding:9px 12px;font-size:13px;border-radius:7px}
body.workspace-design .nav-group a.active{background:var(--surface-raised,#d8e8df);color:var(--ink,#154f3b)}
body.workspace-design .nav-utilities{margin-top:auto;padding-top:16px;border-top:1px solid var(--line,#d6e1db)}
body.workspace-design .shell>main{padding:0 28px}
body.workspace-design main>.app-header{min-height:72px;padding:12px 0;gap:18px;grid-template-columns:minmax(100px,1fr) auto auto;background:var(--surface,#f6f8f7)}
body.workspace-design .header-location{gap:3px}
body.workspace-design .header-location #crumb{font-size:14px}
body.workspace-design .header-save{font-size:10px}
body.workspace-design .app-header .header-filters{gap:12px}
body.workspace-design .app-header .monthlabel{flex-direction:row;align-items:center;gap:8px}
body.workspace-design .header-field-label{font-size:11px;gap:5px}
body.workspace-design .app-header #company{width:172px}
body.workspace-design .app-header #month{width:150px}
body.workspace-design .app-header .monthlabel select,body.workspace-design .app-header .monthlabel input{min-height:34px;padding:6px 9px}
body.workspace-design #content{padding:22px 0 32px;min-height:calc(100dvh - 115px)}
body.workspace-design h1{font-size:25px;letter-spacing:-.55px;margin:0 0 6px;line-height:1.25}
body.workspace-design h2{font-size:19px;margin:24px 0 12px}
body.workspace-design h3{font-size:15px;margin:0 0 10px}
body.workspace-design .pagehead{margin-bottom:18px;gap:16px;align-items:center}
body.workspace-design .pagehead .lead{font-size:12px;line-height:1.5;max-width:78ch}
body.workspace-design button,body.workspace-design .button-link{min-height:34px;padding:7px 11px;font-size:12px}
body.workspace-design input,body.workspace-design select{min-height:34px;padding:7px 9px;font-size:13px}
body.workspace-design input[type=checkbox]{min-height:0;width:16px;height:16px}
body.workspace-design .actions{gap:6px}
body.workspace-design .panel{padding:18px;margin:16px 0;border-radius:10px}
body.workspace-design .panel h2:first-child{margin-top:0}
body.workspace-design .metrics{gap:18px;margin:18px 0 22px;padding-bottom:18px}
body.workspace-design .metric span{font-size:11px;margin-bottom:6px}
body.workspace-design .metric strong{font-size:23px;letter-spacing:-.4px}
body.workspace-design .metric small{font-size:11px;line-height:1.4;margin-top:4px}
body.workspace-design .formgrid{gap:13px 16px}
body.workspace-design .formfoot{justify-content:flex-start;gap:9px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
body.workspace-design .searchbar,body.workspace-design .client-filters{margin:14px 0;gap:12px}
body.workspace-design .tablewrap{border-radius:8px}
body.workspace-design table th{font-size:11px;padding:10px 12px;white-space:normal;line-height:1.4}
body.workspace-design table td{padding:9px 12px;font-size:12px;line-height:1.4}
body.workspace-design table td button,body.workspace-design table td .button-link{min-height:28px;padding:4px 8px;font-size:11px}
body.workspace-design .record-results,body.workspace-design .client-result-strip{padding:14px 16px;margin:16px 0;gap:16px;border-radius:8px}
body.workspace-design .record-results strong,body.workspace-design .client-result-strip strong{font-size:21px;margin-top:4px}
body.workspace-design .record-period-head{gap:10px;align-items:center;margin:16px 0}
body.workspace-design .record-period-head h2{margin:0}
body.workspace-design .record-period-head p{margin:4px 0 0}
body.workspace-design .record-month-tabs{margin:16px 0;gap:6px}
body.workspace-design .record-month-tabs button{min-height:30px;padding:5px 10px}
body.workspace-design .workspace-nav{display:flex;flex-direction:row;gap:4px;padding:0 0 12px;margin:0 0 22px;border-bottom:1px solid var(--line);overflow:auto}
body.workspace-design .workspace-nav a{padding:7px 10px;white-space:nowrap;border-radius:6px;font-size:12px;color:var(--muted,#4b6258)}
body.workspace-design .workspace-nav a[aria-current=page]{background:var(--surface-raised,#e0ece5);color:var(--ink,#154e39);font-weight:650}
body.workspace-design .local-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line,#cbdad1);margin:20px 0 18px;overflow:auto}
body.workspace-design .local-tabs button{border:0;background:none;border-radius:0;padding:10px 0 12px;min-height:36px;color:var(--muted,#52695e);border-bottom:2px solid transparent}
body.workspace-design .local-tabs button[aria-selected=true]{color:var(--ink,#15533c);border-bottom-color:var(--line-strong,#17634c);font-weight:650}
body.workspace-design .local-panel>section[data-workspace-panel]>h2:first-child{margin-top:0}
body.workspace-design .local-panel .record-detail{border:0;padding:0;margin:16px 0}
body.workspace-design .editor-heading{margin-bottom:18px}
body.workspace-design .editor-heading h1{margin-top:15px}
body.workspace-design .editor-heading p{margin:6px 0 0}
body.workspace-design .editor-back{background:none;border:0;padding:0;color:var(--accent,#17634c);min-height:24px;text-decoration:underline;text-underline-offset:3px}
body.workspace-design .editing-workspace>#editor{max-width:1120px}
body.workspace-design .editing-workspace .employee-profile-panel{margin-top:0}
body.workspace-design .editing-workspace .formfoot{position:sticky;bottom:0;z-index:4;background:var(--surface,#fff);padding:14px 0;margin-bottom:0}
body.workspace-design .employee-role-directory{margin:16px 0;padding:10px 14px}
body.workspace-design .employee-role{padding:14px;margin:14px 0}
body.workspace-design .employee-probation{margin:16px 0;padding:14px}
body.workspace-design .owner-tiles{gap:0;border:1px solid var(--line);background:var(--surface,#fff);border-radius:10px;overflow:hidden;margin:18px 0}
body.workspace-design .owner-tile{background:transparent;border:0;border-right:1px solid var(--line);border-radius:0;padding:16px 18px;box-shadow:none;min-height:110px}
body.workspace-design .owner-tile:last-child{border-right:0}
body.workspace-design .owner-tile strong{font-size:25px;margin:9px 0 5px}
body.workspace-design .owner-tile span,body.workspace-design .owner-tile small{font-size:11px}
body.workspace-design .owner-layout{gap:18px;margin:0}
body.workspace-design .owner-profit strong{font-size:34px}
body.workspace-design .owner-line{padding:10px 0;font-size:12px}
body.workspace-design .owner-layout .eyebrow{display:none}
body.workspace-design .quality-notice{padding:13px 16px;margin:14px 0;font-size:12px}
body.workspace-design .quality-notice p{margin:6px 0}
body.workspace-design .quality-notice strong{font-size:13px}
body.workspace-design .storage-disclosure,body.workspace-design .payroll-detail-fold{border:1px solid var(--line);border-radius:8px;background:var(--surface,#fff);padding:4px 14px;margin:18px 0}
body.workspace-design .storage-disclosure>summary,body.workspace-design .payroll-detail-fold>summary{font-size:12px}
body.workspace-design .storage-disclosure .doc-storage{border:0;padding:8px 0;margin:0}
body.workspace-design .doc-summary{padding:12px 0;gap:18px;font-size:12px}
body.workspace-design .project-accordion>summary,body.workspace-design .project-service-accordion>summary{min-height:44px;padding:10px 14px}
body.workspace-design .project-accordion-body{padding:14px}
body.workspace-design .service-team-options{gap:8px}
body.workspace-design .service-team-option{padding:9px}
body.workspace-design .bulk-role-row{padding:10px 12px}
body.workspace-design .catalog-category{margin:12px 0}
body.workspace-design .opening-accounts-grid{gap:14px}
body.workspace-design .account-form{margin:0}
body.workspace-design::-webkit-scrollbar{height:7px;width:7px}
body.workspace-design::-webkit-scrollbar-thumb{background:var(--surface-selected,#b7c9bd);border-radius:5px}
@media(min-width:901px) and (max-width:1150px){body.workspace-design .shell{grid-template-columns:202px minmax(0,1fr)}body.workspace-design .shell>main{padding:0 20px}body.workspace-design .header-field-label{display:none}body.workspace-design .app-header #company{width:152px}body.workspace-design .owner-tile{padding:14px}body.workspace-design .owner-tile strong{font-size:22px}}
@media(max-width:900px){body.workspace-design .shell{display:block}body.workspace-design .shell>aside{padding:14px 18px}body.workspace-design .brand{padding:0}body.workspace-design #nav{padding-top:16px}body.workspace-design .nav-utilities{margin:10px 0 0}body.workspace-design .shell>main{padding:0 18px}body.workspace-design main>.app-header{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px}body.workspace-design .header-location{flex:1}body.workspace-design .app-header .toolbar{width:auto;order:3;flex-basis:100%}body.workspace-design .app-header .header-filters{width:100%}body.workspace-design .app-header .monthlabel{flex:1}body.workspace-design .workspace-nav{margin-bottom:18px}body.workspace-design .local-tabs{gap:20px}body.workspace-design .local-tabs button{white-space:nowrap}body.workspace-design .record-period-head{flex-wrap:wrap}body.workspace-design .owner-tile{border-bottom:1px solid var(--line)}body.workspace-design .editing-workspace .formfoot{flex-wrap:wrap}}
@media(max-width:560px){body.workspace-design .header-field-label{display:none}body.workspace-design .owner-tiles{grid-template-columns:1fr 1fr}body.workspace-design .owner-tile{padding:12px;min-height:112px}body.workspace-design .owner-tile strong{font-size:21px}body.workspace-design .pagehead{align-items:flex-start;flex-direction:column}body.workspace-design .app-header #company,body.workspace-design .app-header #month{width:100%}body.workspace-design .record-results{grid-template-columns:1fr 1fr}body.workspace-design .record-results strong{font-size:19px}}
body.workspace-design .app-header .header-filters{display:flex;grid-template-columns:none;gap:16px}
body.workspace-design .app-header .monthlabel{flex-shrink:0}
body.workspace-design .app-header .monthlabel #company{width:172px;min-width:172px;flex-shrink:0}
body.workspace-design .app-header .monthlabel #month{width:150px;min-width:150px;flex-shrink:0}
body.workspace-design .cash-missing-dates{margin:10px 0;gap:24px}
body.workspace-design .cash-missing-dates div{padding:0;border:0}
body.workspace-design .cash-missing-dates dd{font-size:19px;margin-top:4px}
body.workspace-design .quality-explanation{margin:5px 0 0}
body.workspace-design .quality-explanation summary{font-size:11px;font-weight:500;padding:5px 0}
body.workspace-design .quality-explanation p{font-size:12px}
body.workspace-design .object-actions{position:relative;margin:0}
body.workspace-design .object-actions>summary{font-size:12px;border:1px solid var(--line,#bdccc5);border-radius:6px;padding:8px 11px;background:var(--surface,#fff)}
body.workspace-design .object-actions-body{position:absolute;right:0;top:43px;width:min(400px,calc(100vw - 36px));z-index:15;background:var(--surface,#fff);border:1px solid var(--line);border-radius:10px;padding:16px;box-shadow:0 10px 26px var(--shade,#183b2b20)}
body.workspace-design .object-actions-body label{display:grid;gap:8px;font-size:12px}
body.workspace-design .object-actions-body form button{margin-top:10px}
body.workspace-design .object-actions-body>button{margin:8px 5px 0 0}
body.workspace-design .object-actions-body>button[data-record-delete]{color:var(--red)}
body.workspace-design .record-period-head{justify-content:flex-start}
body.workspace-design .record-period-head>div{margin-right:auto}
@media(max-width:1150px){body.workspace-design .app-header .header-field-label{display:none}}
@media(max-width:560px){body.workspace-design .app-header .header-filters{gap:10px}body.workspace-design .app-header .monthlabel{min-width:0;flex:1}body.workspace-design .app-header .monthlabel #company,body.workspace-design .app-header .monthlabel #month{min-width:0;width:100%}}
.sync-notice{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:12px}.sync-notice button{flex-shrink:0}.sync-notice button:disabled{cursor:default}@media(max-width:700px){.sync-notice{align-items:flex-start;flex-direction:column}}
/* One Russian calendar for every existing date/month control. ISO values stay in the original field. */
.calendar-control{display:inline-flex;position:relative;align-items:center;min-width:0;width:100%;max-width:100%}
.calendar-control>.calendar-iso{position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;opacity:0;pointer-events:none}
.calendar-control>.calendar-display{width:100%;min-width:0;padding-right:38px!important;font-variant-numeric:tabular-nums}
.calendar-control>.calendar-trigger{position:absolute;right:2px;top:2px;bottom:2px;min-height:0!important;width:32px;display:grid;place-items:center;padding:5px!important;border:0;background:transparent;border-radius:4px;color:var(--muted,#3c6554)}
.calendar-trigger svg{width:19px;height:19px;pointer-events:none}.calendar-trigger:hover{background:var(--surface-raised,#e7f1eb)!important}.calendar-trigger:disabled{opacity:.45;cursor:default}
.calendar-display:disabled{background:var(--surface-raised,#edf1ee);color:var(--muted,#586b66)}.calendar-display:invalid{border-color:var(--danger,#a53232)}.calendar-sr-help{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.app-header .monthlabel .calendar-control{width:184px;flex-shrink:0}.app-header .monthlabel .calendar-display{width:100%!important;min-width:0!important;font-size:13px}
.calendar-popup{position:fixed;inset:auto;margin:0;padding:14px;width:320px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;border:1px solid var(--line,#c5d6cb);border-radius:12px;background:var(--surface,#fff);color:var(--ink,#203b34);box-shadow:0 12px 38px var(--shade,#183b2b26);font-size:13px}
.calendar-popup:not(:popover-open){display:none}.calendar-popup::backdrop{background:transparent}
.calendar-heading{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:7px;margin-bottom:10px}
.calendar-popup button{font:inherit;min-height:34px;border:0;background:transparent;padding:7px;color:var(--ink,#274a3b);cursor:pointer;border-radius:6px}
.calendar-popup button:hover{background:var(--surface-raised,#e8f2ec)}.calendar-popup button:disabled{opacity:.32;cursor:default;background:transparent}.calendar-popup button:focus-visible{outline:2px solid var(--line-strong,#17634c);outline-offset:1px}
.calendar-popup .calendar-arrow{font-size:24px;line-height:1;padding:3px;min-width:34px}
.calendar-popup .calendar-title{font-weight:650;text-transform:capitalize;font-size:14px}.calendar-popup .calendar-title:disabled{opacity:1;color:var(--ink,#203b34)}
.calendar-year{padding:0 0 10px}.calendar-year label{display:flex;align-items:center;gap:12px;color:var(--muted,#52695e);font-size:12px}.calendar-year input{width:100px;padding:6px 8px;min-height:32px}
.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.calendar-weekday{text-align:center;padding:7px 0;color:var(--muted,#5a6f62);font-size:11px}.calendar-weekday.weekend{color:var(--warning,#986027)}
.calendar-popup .calendar-day{min-height:35px;font-size:13px;padding:7px 3px;font-variant-numeric:tabular-nums}.calendar-popup [aria-current=date]{box-shadow:inset 0 0 0 1px var(--muted,#6c927b);font-weight:650}.calendar-popup [aria-pressed=true]{background:var(--accent-hover,#17634c);color:var(--ink,#fff);font-weight:650}.calendar-popup [aria-pressed=true]:hover{background:var(--accent-hover,#124c3b)}
.calendar-month-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:2px 0 8px}.calendar-popup .calendar-month{padding:11px 3px;min-height:40px;font-size:12px;text-transform:capitalize}
.calendar-footer{display:flex;align-items:center;justify-content:space-between;gap:4px;border-top:1px solid var(--line,#dbe5de);margin-top:10px;padding-top:8px}.calendar-popup .calendar-footer button{font-size:11px;padding:7px;min-height:30px}
@media(max-width:560px){.app-header .monthlabel .calendar-control{width:100%}.calendar-popup{padding:12px}.calendar-popup .calendar-day{min-height:38px}}
.calendar-arrow svg{display:block;width:18px;height:18px;margin:auto}
