:root{font-family:system-ui,sans-serif;color:#173c55;background:#edf3f5}body{margin:0}main{max-width:760px;margin:auto;padding:24px}h1{font-size:2.5rem}section,details{background:white;padding:24px;border-radius:16px;margin:16px 0}label{display:block;margin:14px 0;font-weight:600}input,select,textarea,button{font:inherit;box-sizing:border-box;padding:12px;border-radius:8px;border:1px solid #9cb3be;width:100%;margin-top:6px}button{color:white;background:#173c55;cursor:pointer}button:disabled{opacity:.5}a{color:#005f7a;text-decoration:underline;cursor:pointer}#status{white-space:pre-wrap;color:#8a2917}#invitation{overflow-wrap:anywhere}article{padding:16px 0;border-bottom:1px solid #cbd7dd}article p{white-space:pre-wrap}summary{cursor:pointer} [hidden]{display:none!important}
:root{--green:#4c8f2f;--teal:#00979f}body{background:#f1f6f1}main{max-width:1060px}.brand{display:flex;align-items:center;gap:18px;margin:4px 0 22px}.brand img{flex-shrink:0;object-fit:contain;background:#fff;border-radius:14px;padding:4px}.brand h1{margin:2px 0;font-size:2.2rem;line-height:1.15;color:#245b3c}.brand p{margin:0}.brand-name{color:#4c8f2f;font-weight:700;letter-spacing:.02em}.brand-subtitle{color:#617268;font-size:.9rem}button{background:#246b54}button:disabled{cursor:default}.page-nav{display:flex;gap:10px;margin:16px 0}.page-nav button{background:#f0f6f2;color:#25583f;border:1px solid #c4d9c8}.page-nav button[aria-pressed="true"]{background:#246b54;color:#fff}.week-controls{display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:end;gap:12px}.week-controls label{margin:0}.week-controls button{font-size:.9rem}.table-scroll{overflow-x:auto;margin:18px 0;border:1px solid #d6e3d5;border-radius:10px}.week-table{border-collapse:separate;border-spacing:0;min-width:980px;width:100%;font-size:.9rem}.week-table thead th{background:#e7f0e6;padding:12px 8px;text-align:left;color:#25583f}.week-table tbody th{position:sticky;left:0;z-index:1;background:#fff;min-width:92px;box-shadow:2px 0 3px #0001;font-weight:400;text-align:left;padding:10px}.week-table td{padding:8px 6px;border-top:1px solid #e5ece4;vertical-align:middle}.week-table tbody th{border-top:1px solid #e5ece4}.week-table input,.week-table select,.week-table textarea{font-size:.9rem;padding:8px;margin:0;min-width:94px;border-color:#c7d7c7}.week-table select{min-width:111px}.week-table [type="number"]{min-width:66px;width:72px}.week-table textarea{min-width:165px;resize:vertical}.week-table .row-hours{font-weight:700;white-space:nowrap;min-width:48px}.week-table tr.weekend,.week-table tr.weekend th{background:#f1f6ed}.week-table tr.is-dirty th{box-shadow:inset 4px 0 #f9bf16,2px 0 3px #0001}.week-table input:disabled,.week-table select:disabled,.week-table textarea:disabled{background:#f4f6f3;color:#657269;opacity:1}.week-actions{display:flex;gap:12px}.week-actions button:last-child{background:#f4f7f3;color:#365d3e}.export-caption{font-size:.87rem;color:#617268}#week-total{font-weight:700}#week-page{padding:18px 0;margin:0}.week-table th strong{font-size:.92rem}@media(max-width:600px){main{padding:16px}section,details{padding:16px}.brand{gap:12px}.brand img{width:66px;height:66px}.brand h1{font-size:1.8rem}.week-controls{grid-template-columns:1fr 1fr}.week-controls label{grid-column:1/-1;grid-row:1}.week-actions{flex-direction:column;gap:4px}.page-nav button{font-size:.9rem;padding:11px 5px}}

.ok-button{min-width:68px;width:auto;font-weight:700}.ok-pending{background:#f9bf16;color:#443500;border-color:#a47c00}.ok-confirmed{background:#38833b;color:white;border-color:#24612a}.ok-confirmed:disabled{opacity:1}#template-rows [type="checkbox"]{width:22px;min-width:22px;height:22px}#template-worker{font-weight:700}#template-page{padding:18px 0} .page-nav{flex-wrap:wrap} .page-nav button{flex:1;min-width:120px}

.day-card{display:grid;grid-template-columns:1.5fr 1fr 1fr auto;align-items:center;gap:18px;padding:20px;background:#edf5ed;border:1px solid #d2e2d2;border-radius:12px}.day-card strong{display:block;font-size:1.2rem;margin-top:5px}.field-caption,.hint{font-size:.85rem;color:#617268}.day-card .ok-button{margin:0;min-width:68px}.entry-editor{padding:0;background:transparent;border:1px solid #c9daca;border-radius:10px}.entry-editor>summary{padding:14px 18px;font-weight:700;color:#246b54}.entry-editor fieldset{border:0;padding:0 18px 18px;margin:0;min-width:0}.time-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.time-pair input{font-size:1.3rem;letter-spacing:.04em}.edit-actions{display:flex;gap:12px}.edit-actions button:last-child{background:#edf3ee;color:#365d3e}#admin-page{padding:0;background:transparent}#admin-page>#admin{background:white;padding:20px;border-radius:12px}#template-page{padding:20px}.page-nav{margin-top:12px}#registry-picker{padding:0 0 10px}#entry-permission:empty{display:none}@media(max-width:600px){.day-card{grid-template-columns:1fr 1fr auto;gap:12px;padding:15px}.day-card>div:first-child{grid-column:1/-1}.day-card strong{font-size:1.15rem}.edit-actions{flex-direction:column;gap:3px}.time-pair{gap:10px}#template-page{padding:12px}}

#template-confirm{border:1px solid #c4d9c8;border-radius:16px;padding:24px;max-width:520px;width:calc(100% - 48px);box-sizing:border-box;color:#173c55;box-shadow:0 18px 60px #173c5533}#template-confirm::backdrop{background:#152a2d99}#template-confirm h2{margin-top:0}#template-confirm-text{line-height:1.6;font-size:1.05rem;white-space:pre-line}#template-confirm-feedback{color:#8a2917}

.month-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.check-label{display:flex;align-items:center;gap:10px}.check-label input{width:22px;height:22px;margin:0}.admin-mail-panel{padding:15px 0}.mail-job{font-size:.86rem;border-bottom:1px solid #dce6dc;padding:10px 0;overflow-wrap:anywhere}#profile-email-display{font-size:.9rem;color:#617268}#workflow-confirm{border:1px solid #c4d9c8;border-radius:16px;padding:24px;max-width:540px;width:calc(100% - 48px);box-sizing:border-box;color:#173c55;box-shadow:0 18px 60px #173c5533}#workflow-confirm::backdrop{background:#152a2d99}#workflow-confirm-text{line-height:1.6;white-space:pre-line}#workflow-confirm-error{color:#8a2917}@media(max-width:600px){.month-actions{grid-template-columns:1fr}}

/* La settimana ha due colonne fisse, OK e giorno, con larghezze esplicite. */
#weekly-table{table-layout:fixed;min-width:825px}#weekly-table .col-ok{width:64px}#weekly-table .col-day{width:100px}#weekly-table .col-kind{width:117px}#weekly-table .col-time{width:91px}#weekly-table .col-break{width:73px}#weekly-table .col-hours{width:60px}#weekly-table .col-notes{width:auto}
#weekly-table .sticky-ok{position:sticky;left:0;z-index:3;background:#fff;text-align:center;padding:6px}#weekly-table .sticky-day{position:sticky;left:64px;z-index:3;background:#fff;min-width:0;padding:8px;box-shadow:2px 0 4px #0002}#weekly-table thead .sticky-ok,#weekly-table thead .sticky-day{background:#e7f0e6;z-index:4}#weekly-table .weekend .sticky-ok,#weekly-table .weekend .sticky-day{background:#f1f6ed}#weekly-table .ok-button{min-width:48px;width:48px;padding:10px 4px;margin:0}#weekly-table input,#weekly-table select,#weekly-table textarea{min-width:0;width:100%;max-width:100%;padding:9px 6px}#weekly-table [data-field="start"],#weekly-table [data-field="end"]{text-align:center;font-variant-numeric:tabular-nums;font-size:1rem}#weekly-table .row-hours{min-width:0;text-align:center}#weekly-table td{padding:8px 5px}#month-worker{font-weight:700}.page-nav #nav-month{flex:1.5;min-width:180px}

.admin-context{padding:16px 18px;background:#edf5ed;border-left:4px solid #4c8f2f;border-radius:10px}.admin-context p{margin:7px 0 0;font-size:.9rem;color:#526958}.admin-section{padding:0;margin:14px 0;border:1px solid #cbdccd;border-radius:12px;overflow:hidden}.admin-section>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 18px;list-style:none;background:#f2f7f1}.admin-section>summary::-webkit-details-marker{display:none}.admin-section>summary strong{display:block;color:#245b3c}.admin-section>summary small{display:block;color:#617268;font-weight:400;font-size:.85rem;margin-top:5px}.accordion-toggle{display:grid;place-items:center;flex:0 0 34px;height:34px;border:1px solid #b8d0bb;border-radius:8px;background:white;color:#246b54;font-size:1.35rem}.accordion-toggle::before{content:'+'}.admin-section[open]>summary .accordion-toggle::before{content:'−'}.admin-section[open]>summary{border-bottom:1px solid #d6e3d5}.accordion-body{padding:6px 18px 18px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-actions{display:flex;gap:10px;align-items:stretch}.admin-actions>*{flex:1}.admin-subsection{border-top:1px solid #dce6dc;margin-top:20px;padding-top:10px}.admin-subsection h3{font-size:1rem;margin-bottom:6px}.admin-result:empty{display:none}.admin-result:not(:empty){padding:14px;border:1px solid #d5b94b;background:#fff9df;border-radius:8px;white-space:pre-wrap}.secondary,button.secondary{background:#edf3ee;color:#365d3e}.danger,button.danger{background:#fff3ed;color:#8a2917;border-color:#d4afa2}.admin-month-link{margin-top:22px;padding-top:4px;border-top:1px solid #dce6dc}.admin-section #template-page{padding:0;margin:0;background:transparent}.admin-section #account-confirm{padding:14px;background:#fff9df;border:1px solid #dfce85}.admin-section summary:focus-visible{outline:3px solid #00979f;outline-offset:-3px}#admin-page>#admin{padding:20px}.admin-section button{overflow-wrap:anywhere}@media(max-width:600px){.admin-grid{grid-template-columns:1fr;gap:0}.admin-actions{flex-direction:column;gap:3px}.accordion-body{padding:4px 12px 14px}.admin-section>summary{padding:15px 12px}#admin-page>#admin{padding:14px}}

.bank-table{width:100%;min-width:900px;border-collapse:separate;border-spacing:0;font-size:.9rem}.bank-table th,.bank-table td{padding:12px 8px;border-bottom:1px solid #e2eae0;text-align:right;white-space:nowrap}.bank-table thead th{background:#e7f0e6;color:#25583f}.bank-table th:first-child{position:sticky;left:0;z-index:2;text-align:left;background:#f4f8f1;min-width:95px;box-shadow:2px 0 3px #0001}.bank-table input{width:94px;min-width:94px;padding:9px 6px;margin:0;text-align:right;font-variant-numeric:tabular-nums}.bank-table td{font-variant-numeric:tabular-nums}.bank-overview{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:#edf5ed;padding:18px;border-radius:12px;align-items:center}.bank-overview label{margin:0}.bank-overview strong,.bank-overview small{display:block;margin-top:8px}.bank-overview strong{font-size:1.6rem}.bank-overview small{color:#617268}.bank-overview input{max-width:240px}.bank-year-label{max-width:160px}.balance-debt{color:#ac201b!important;font-weight:700}.balance-credit{color:#195b32!important;font-weight:700}.bank-month-balance,.bank-progressive{font-weight:700}#bank-worker{font-weight:700}@media(max-width:600px){.bank-overview{grid-template-columns:1fr;gap:20px;padding:14px}#bank-page{padding:12px}}

#bank-fields{border:0;padding:0;margin:0;min-width:0}#bank-fields:disabled{opacity:.65}

/* Field sizing: content-based controls, responsive notes */
#registry-picker label{max-width:34rem}
#entry>label:has(input[name="day"]){max-width:13rem}
#day-fields>label:has(select[name="kind"]){max-width:13rem}
#day-fields .time-pair{grid-template-columns:repeat(2,minmax(0,7.5rem));gap:1rem}
#day-fields>label:has(input[name="break_minutes"]){max-width:9rem}
#day-fields textarea{min-height:6rem;resize:vertical}
#day-fields input[name="start"],#day-fields input[name="end"],#day-fields input[name="break_minutes"]{text-align:center;font-variant-numeric:tabular-nums}
.week-controls{grid-template-columns:auto minmax(12rem,14rem) auto;justify-content:start}
#template-form .week-table{min-width:680px;max-width:760px;table-layout:fixed}
#template-form .week-table th:nth-child(1){width:120px}
#template-form .week-table th:nth-child(2){width:65px}
#template-form .week-table th:nth-child(3){width:145px}
#template-form .week-table th:nth-child(4),#template-form .week-table th:nth-child(5){width:110px}
#template-form .week-table th:nth-child(6){width:95px}
#template-rows [data-field="start"],#template-rows [data-field="end"]{min-width:0;width:100%;text-align:center;font-variant-numeric:tabular-nums}
#template-rows [data-field="break_minutes"]{min-width:0;width:100%;text-align:center}
#template-form>label:has(#template-month),#export-panel label:has(#month){max-width:16rem}
#template-form>label:has(#template-mode){max-width:34rem}
#bank-year{width:7rem;max-width:100%}
#bank-opening{width:11rem;max-width:100%;font-variant-numeric:tabular-nums}
#profile-email-form,#create,#mail-settings-form{max-width:38rem}
#weekly-table .col-kind{width:130px}
#weekly-table .col-time{width:96px}
#weekly-table .col-break{width:90px}
#weekly-table{min-width:850px}
@media(max-width:600px){
.week-controls{grid-template-columns:1fr 1fr;justify-content:stretch}
.week-controls label{grid-column:1/-1;grid-row:1;max-width:14rem}
#registry-picker label{max-width:100%}
#entry input[type="date"],#template-month,#month,#week-date{min-width:0;max-width:100%}
}

.ok-button.ok-dirty{background:#b42318;color:#fff;border-color:#8f1d14;opacity:1}.ok-button.ok-dirty:hover{background:#941e15}.ok-button.ok-empty{background:#e5e7eb;color:#475467;border-color:#cbd5e1}.ok-button[aria-busy="true"]{cursor:wait}

.row-difference{white-space:nowrap;font-weight:700;text-align:right;min-width:65px}#reference-total{font-weight:700}#reference-page .week-table{min-width:740px}#reference-page .reference-hours{white-space:nowrap;font-weight:700}#reference-page .edit-actions{display:flex;flex-wrap:wrap;gap:8px}#reference-page #admin-template-section{margin-top:24px}.bank-table small{white-space:nowrap}

/* Smartphone layout: the same controls and records, without horizontal scrolling. */
main,section,form,fieldset,.accordion-body{min-width:0}
button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #00979f;outline-offset:2px}
.help-disclosure{padding:0;border:1px solid #d6e3d5;margin:12px 0;background:#f8faf7;border-radius:10px}
.help-disclosure>summary{padding:12px;font-size:.9rem;font-weight:600;color:#365d3e}
.help-disclosure>p{margin:0;padding:0 12px 12px;font-size:.9rem;line-height:1.5}
#status:empty,#profile-email-display:empty{display:none}
#weekly-table .col-difference{width:76px}
#reference-month{max-width:16rem}
.export-links{display:flex;flex-wrap:wrap;gap:10px}
.export-links a,#confirmed-pdf{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;box-sizing:border-box;border:1px solid #bdd2c2;border-radius:8px;background:#f0f6f2;text-decoration:none}
@media(max-width:680px){
 main{padding:12px;padding-bottom:max(18px,env(safe-area-inset-bottom))}
 section,details{padding:12px;margin:12px 0;border-radius:12px}
 p{line-height:1.45;overflow-wrap:anywhere}
 h2{font-size:1.3rem;line-height:1.25;margin:10px 0}
 h3{line-height:1.3}
 .brand{gap:10px;margin:0 0 12px}
 .brand img{width:48px;height:48px;border-radius:10px}
 .brand h1{font-size:1.5rem}
 .brand-name{font-size:.85rem}
 .brand-subtitle{font-size:.8rem}
 #workspace{position:relative;padding:12px}
 #welcome{margin:0 62px 12px 0;font-size:.85rem;min-height:40px;display:flex;align-items:center}
 #logout{position:absolute;right:12px;top:10px;width:auto;min-height:44px;margin:0;padding:8px 12px;background:#edf3ee;color:#365d3e}
 input,select,textarea,button{font-size:16px;min-height:44px;max-width:100%}
 input,select,textarea{min-width:0}
 input[type="checkbox"]{min-height:24px}
 button{line-height:1.3;white-space:normal}
 label{margin:12px 0;font-size:.9rem}
 .hint,.field-caption{font-size:.85rem;line-height:1.45}
 .page-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 14px}
 .page-nav button,.page-nav #nav-month{width:100%;min-width:0;min-height:48px;margin:0;padding:10px 8px;font-size:.875rem}
 .page-nav #nav-template{grid-column:1/-1}
 #registry-picker{padding:0}
 #registry-picker label{margin:10px 0}
 #users{font-size:16px}
 #week-page{padding:12px 0 0}
 .week-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .week-controls label{max-width:100%;margin:0;grid-column:1/-1;grid-row:1}
 #week-date{width:100%;max-width:100%}
 .week-controls button{font-size:.9rem;margin:0}
 #week-range{font-weight:700;margin:12px 0 6px}
 #week-permission{font-size:.85rem;margin:6px 0}
 #reference-page,#bank-page,#export-panel{padding:12px 0 0;background:transparent}
 #reference-page .edit-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #reference-fill{grid-column:1/-1}
 #reference-page .edit-actions button{margin:0;font-size:.9rem}
 #reference-page #admin-template-section{margin-top:12px}
 .admin-grid{grid-template-columns:minmax(0,1fr);gap:0}
 .admin-actions,.month-actions,.edit-actions{display:flex;flex-direction:column;gap:8px}
 .admin-actions>*{flex:auto}
 #admin-page>#admin{padding:0}
 .admin-context{padding:12px}
 .admin-section{padding:0}
 .admin-section>summary{padding:14px 12px;gap:10px}
 .admin-section>summary>span:first-child{min-width:0}
 .accordion-body{padding:4px 10px 12px}
 .accordion-toggle{flex-basis:32px;height:32px}
 .admin-section #template-page{padding:0}
 .admin-result,.mail-job,#invitation{overflow-wrap:anywhere;word-break:break-word}
 #auth details{padding:12px 0 0;border-top:1px solid #d6e3d5;border-radius:0}
 dialog#template-confirm,dialog#workflow-confirm{width:calc(100% - 24px);padding:16px;max-height:calc(100dvh - 32px);overflow-y:auto}
 .bank-overview{grid-template-columns:minmax(0,1fr);padding:12px;gap:14px}
 .bank-overview strong{font-size:1.4rem}
 #bank-fields details{padding:12px 0}
 #bank-fields details>summary{min-height:44px;display:flex;align-items:center;font-weight:600}
 .export-links{flex-direction:column;gap:8px}
 .export-links a,#confirmed-pdf{justify-content:center;padding:10px 12px}
 /* Visually hide the shared column headings; keep them for assistive technology. */
 :is(#weekly-table,#reference-table,#template-table,#bank-table,#absence-table) thead{
 position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 :is(#weekly-table,#reference-table,#template-table,#bank-table,#absence-table),
 #reference-page #reference-table,#template-form #template-table{
 display:block;min-width:0!important;max-width:100%!important;width:100%!important;table-layout:auto}
 :is(#weekly-table,#reference-table,#template-table,#bank-table,#absence-table) colgroup{display:none}
 :is(#weekly-table,#reference-table,#template-table,#bank-table,#absence-table) tbody{display:grid;gap:12px}
 :is(#weekly-table,#reference-table,#template-table,#bank-table,#absence-table) tbody tr{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;border:1px solid #cbdccd;border-radius:12px;background:#fff}
 :is(#weekly-table,#reference-table,#template-table) tbody tr.weekend{background:#f1f6ed}
 :is(#weekly-table,#reference-table,#template-table) tbody tr.is-dirty{border-color:#b42318;box-shadow:inset 3px 0 #b42318}
 :is(#weekly-table,#reference-table,#template-table,#bank-table,#absence-table) tbody :is(th,td){
 display:block;position:static!important;left:auto!important;width:auto!important;min-width:0!important;max-width:100%;padding:0!important;border:0;box-shadow:none!important;background:transparent!important;text-align:left;white-space:normal}
 :is(#weekly-table,#reference-table,#template-table) tbody th{
 grid-column:1;grid-row:1;align-self:center;font-size:1rem;font-weight:700}
 :is(#weekly-table,#reference-table,#template-table) tbody th strong{font-size:1rem}
 :is(#weekly-table,#reference-table,#template-table) tbody td::before,
 :is(#bank-table,#absence-table) tbody td::before{
 display:block;margin-bottom:5px;font-size:.8rem;font-weight:600;color:#526958;line-height:1.25}
 :is(#weekly-table,#reference-table,#template-table) :is(input,select,textarea){
 width:100%!important;min-width:0!important;max-width:100%!important;min-height:44px;font-size:16px!important;padding:10px!important;margin:0}
 :is(#weekly-table,#reference-table) tbody td:first-child{
 grid-column:2;grid-row:1;justify-self:end;align-self:center}
 :is(#weekly-table,#reference-table) .ok-button{min-width:64px;width:64px;min-height:44px;margin:0;padding:10px 8px}
 :is(#weekly-table,#reference-table) tbody td:nth-child(3){grid-column:1;grid-row:2}
 :is(#weekly-table,#reference-table) tbody td:nth-child(3)::before{content:"Tipologia"}
 :is(#weekly-table,#reference-table) tbody td:nth-child(4){grid-column:1;grid-row:3}
 :is(#weekly-table,#reference-table) tbody td:nth-child(4)::before{content:"Ingresso"}
 :is(#weekly-table,#reference-table) tbody td:nth-child(5){grid-column:2;grid-row:3}
 :is(#weekly-table,#reference-table) tbody td:nth-child(5)::before{content:"Uscita"}
 :is(#weekly-table,#reference-table) tbody td:nth-child(6){grid-column:2;grid-row:2}
 :is(#weekly-table,#reference-table) tbody td:nth-child(6)::before{content:"Pausa (min)"}
 #weekly-table tbody td:nth-child(7){grid-column:1;grid-row:4}
 #weekly-table tbody td:nth-child(7)::before{content:"Ore"}
 #weekly-table tbody td:nth-child(8){grid-column:2;grid-row:4}
 #weekly-table tbody td:nth-child(8)::before{content:"+/− dal modello"}
 #weekly-table tbody td:nth-child(9){grid-column:1/-1;grid-row:5}
 #weekly-table tbody td:nth-child(9)::before{content:"Note"}
 #weekly-table textarea{min-height:60px;resize:vertical}
 #reference-table tbody td:nth-child(7){grid-column:1/-1;grid-row:4}
 #reference-table tbody td:nth-child(7)::before{content:"Ore previste"}
 #template-table tbody td:nth-child(2){grid-column:2;grid-row:1;justify-self:end;align-self:center;display:flex;gap:8px;align-items:center}
 #template-table tbody td:nth-child(2)::before{content:"Includi";margin:0}
 #template-table tbody td:nth-child(2) input{width:24px!important;min-height:24px;height:24px}
 #template-table tbody td:nth-child(3){grid-column:1;grid-row:2}
 #template-table tbody td:nth-child(3)::before{content:"Tipologia"}
 #template-table tbody td:nth-child(4){grid-column:1;grid-row:3}
 #template-table tbody td:nth-child(4)::before{content:"Ingresso"}
 #template-table tbody td:nth-child(5){grid-column:2;grid-row:3}
 #template-table tbody td:nth-child(5)::before{content:"Uscita"}
 #template-table tbody td:nth-child(6){grid-column:2;grid-row:2}
 #template-table tbody td:nth-child(6)::before{content:"Pausa (min)"}
 #bank-table tbody th{grid-column:1/-1;font-size:1rem;font-weight:700;padding-bottom:8px!important;border-bottom:1px solid #dce6dc}
 #bank-table tbody td{font-size:1rem;font-variant-numeric:tabular-nums}
 #bank-table tbody td:nth-child(2)::before{content:"Ore lavorate"}
 #bank-table tbody td:nth-child(3)::before{content:"Mutua"}
 #bank-table tbody td:nth-child(4)::before{content:"Ferie"}
 #bank-table tbody td:nth-child(5)::before{content:"Permessi"}
 #bank-table tbody td:nth-child(6){grid-column:1/-1}
 #bank-table tbody td:nth-child(6)::before{content:"Ore lavorabili"}
 #bank-table tbody td:nth-child(7)::before{content:"Saldo mese"}
 #bank-table tbody td:nth-child(8)::before{content:"Progressivo"}
 #bank-table tbody td:nth-child(n+7){padding-top:8px!important;border-top:1px solid #dce6dc}
 #bank-table input{min-width:0;width:100%;max-width:12rem;font-size:16px}
 #absence-table tbody td:nth-child(1)::before{content:"Data"}
 #absence-table tbody td:nth-child(2)::before{content:"Tipologia"}
 #absence-table tbody td:nth-child(3)::before{content:"Dalle"}
 #absence-table tbody td:nth-child(4)::before{content:"Alle"}
 #absence-table tbody td:nth-child(5)::before{content:"Ore"}
 #absence-table tbody td[colspan]{grid-column:1/-1}
 .table-scroll:has(> :is(#weekly-table,#reference-table,#template-table,#bank-table,#absence-table)){
 overflow:visible;border:0;border-radius:0;margin:14px 0}
}

#bank-fields:disabled{opacity:1}
@media(max-width:680px){#bank-fields details.help-disclosure{padding:0}#bank-fields details>summary{display:list-item;min-height:0;padding:12px}#template-table tbody td:nth-child(2) input{width:44px!important;min-height:44px;height:44px}}

.page-nav #nav-bank.bank-nav-credit{background:#dff0cb;color:#284f18;border-color:#89ad68}
.page-nav #nav-bank.bank-nav-debt{background:#ac201b;color:#fff;border-color:#ac201b}

.page-nav #nav-bank.bank-nav-credit[aria-pressed="true"]{box-shadow:inset 0 0 0 2px #246b54}
