.team-grid{min-width:720px;table-layout:fixed}.team-grid th{font-size:10px;letter-spacing:0;text-transform:none;line-height:1.5}.team-grid th:first-child{width:95px}.team-grid th,.team-grid td{padding:8px 9px}.team-grid td{font-size:11px}.team-grid .team-date{position:sticky;left:0;background:white;z-index:1}.team-grid thead th{position:sticky;top:0;background:#f5f8f2;z-index:2}.team-grid thead .team-date{z-index:3}.team-grid-wrap{max-height:640px}.team-grid .weekend .team-date{background:#f5f7f2}.team-today .team-date{border-left:3px solid #24745d}.team-sub{display:block;font-size:9px;color:#87917e;font-weight:400;margin-top:3px}.draft-text{color:#997432!important}.team-cell{width:100%;min-height:44px;border:1px dashed #dfe4d9;border-radius:6px;background:#fbfcfa;color:#8d9789;padding:6px;font-size:10px;text-align:center}.team-cell.work{background:#edf5e9;border:1px solid #d7e5ce;color:#326146}.team-cell.off{background:#f1f3ef;border:1px solid #e4e8df;color:#7b8477}.team-cell:hover{outline:2px solid #9dbb8b}.team-cell span{display:block;font-weight:500}.team-cell small{display:block;font-size:8px;margin-top:4px}.report-toolbar{display:flex;align-items:end;gap:18px;margin-bottom:22px;padding:18px}.report-toolbar input{width:175px}.report-toolbar select{min-width:225px}.report-toolbar p{font-size:10px;max-width:230px}.month-sheet{background:white;border:1px solid var(--line);border-radius:10px;padding:22px;margin:0 auto 22px;max-width:920px}.month-title{display:flex;justify-content:space-between;gap:20px;margin-bottom:14px}.month-title h2{font-size:17px;margin:0 0 5px;font-weight:600;letter-spacing:-.5px}.month-title strong{font-size:12px;font-weight:500}.month-title>div:last-child{text-align:right;font-size:12px}.month-title span{display:block;font-size:9px;color:var(--muted);margin-top:5px}.month-table{font-variant-numeric:tabular-nums}.month-table th{font-size:9px;letter-spacing:0;padding:7px 5px;white-space:nowrap}.month-table td{font-size:10px;padding:5px;border-bottom:1px solid #edf0eb;height:25px;white-space:nowrap}.month-table td small{font-size:8px;color:#8d9888;margin-left:3px}.month-table td:last-child{font-size:8px;color:#7d8877}.month-totals{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #dce3d8;margin-top:12px;padding-top:10px;font-size:9px;color:var(--muted)}.month-totals b{display:block;color:var(--ink);font-size:13px;font-weight:500;margin-top:3px}.month-notes{font-size:8px;line-height:1.65;margin-top:12px;color:#87917f}.month-signatures{font-size:9px;display:flex;justify-content:space-between;gap:12px;margin-top:22px;color:#69765f}@media(max-width:650px){.report-toolbar{align-items:stretch;flex-direction:column;gap:12px}.report-toolbar input,.report-toolbar select{width:100%;min-width:0}.report-toolbar p{max-width:none}.report-results{overflow-x:auto}.month-sheet{min-width:680px;padding:16px}.schedule-toolbar .viewtoggle button{font-size:10px}.team-grid{min-width:700px}}
@media print{@page{size:A4 portrait;margin:10mm}body:has(.report-results){background:white!important}body:has(.report-results) aside,body:has(.report-results) header,body:has(.report-results) .demo,body:has(.report-results) .footnote,body:has(.report-results) #page>:not(.report-results){display:none!important}body:has(.report-results) main{margin:0!important}body:has(.report-results) .content{padding:0!important;max-width:none!important}.report-results{overflow:visible!important}.month-sheet{min-width:0!important;max-width:none!important;width:100%;padding:0;margin:0;border:0;border-radius:0;break-after:page;break-inside:avoid}.month-sheet:last-child{break-after:auto}.month-title{margin-bottom:4mm}.month-title h2{font-size:12pt}.month-title strong{font-size:9pt}.month-title>div:last-child{font-size:9pt}.month-title span{font-size:7pt}.month-table{width:100%;border-collapse:collapse}.month-table thead{display:table-header-group}.month-table tr{break-inside:avoid}.month-table th{font-size:7pt;padding:1.6mm 1mm}.month-table td{font-size:7.5pt;height:5.8mm;padding:1mm;border-bottom:0.2mm solid #ddd}.month-table td:last-child{font-size:6.5pt}.month-table td small{font-size:6pt}.month-totals{margin-top:3mm;padding-top:2mm;font-size:7pt}.month-totals b{font-size:9pt}.month-notes{font-size:6.5pt;margin-top:3mm}.month-signatures{font-size:7pt;margin-top:6mm}}
.modal-feedback{margin-top:15px;padding:12px 14px;border:1px solid #e9bda5;border-radius:8px;background:#fff3eb;color:#803b20;font-size:12px;line-height:1.7;white-space:normal;overflow-wrap:anywhere;filter:none!important;opacity:1!important}.modal-feedback:empty{display:none}.toast{max-width:calc(100vw - 32px);white-space:normal;line-height:1.7;text-align:left}.timeline:has(>.timeitem:nth-child(2):last-child){grid-template-columns:repeat(2,1fr)}

/* Nomes e divisórias da escala coletiva. */
.team-grid thead th:not(:first-child){padding:12px 14px;color:#254e40;border-left:2px solid #cedbce}.team-person-name{display:block;font-size:14px;font-weight:700;line-height:1.4;overflow-wrap:anywhere}.team-grid thead th:not(:first-child) .team-sub{font-size:10px;line-height:1.45;color:#5d6f60;margin-top:5px}.team-grid tbody td:not(:first-child){border-left:2px solid #e0e7dd}

/* Etapas explícitas e proteção contra cliques repetidos. */
.punch-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px;position:relative;z-index:1}.punch-step{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid #ffffff36;border-radius:9px;background:#ffffff08;color:#e1ebe5;padding:12px;font-size:11px;font-weight:600;min-height:65px}.punch-step small{display:block;font-size:10px;font-weight:400;margin-top:4px;color:inherit}.punch-step-icon{display:grid;place-items:center;flex-shrink:0;width:25px;height:25px;border:1px solid currentColor;border-radius:50%;font-size:11px}.punch-step.current{background:#d8eabd;color:#204136;border-color:#d8eabd}.punch-step.done{color:#d4e8cc;background:#ffffff10}.punch-step:disabled{opacity:1;cursor:default}.punch-step:not(.current):not(.done){color:#a9beb3}.punch-step.current:disabled{background:#c4d5b0;color:#314637}.punch-step:enabled:hover{background:#e6f3d2}.punch-feedback{position:relative;z-index:1;min-height:32px;margin-top:12px;font-size:11px;line-height:1.6;color:#d4e8cc}@media(max-width:440px){.punch-actions{grid-template-columns:1fr}.punch-step{min-height:58px}}
