/* SAEK / espaço de trabalho temporal. O Gantt possui uma única área de rolagem. */
[data-testid='saek-schedule-header'] .section-heading h1{font-size:clamp(38px,4vw,54px);line-height:1.08;margin-top:10px}
[data-testid='saek-schedule-header'] .section-heading{padding-top:12px}
[data-testid='saek-schedule-header'] .heading-note{font-size:25px;margin-top:8px}
[data-testid='saek-schedule-header'] .heading-outline{font-size:120px;top:4px;left:8px}
[data-testid='saek-schedule-toolbar']{border-top:1px solid var(--saek-line);border-bottom:1px solid var(--saek-line);padding:16px 0;margin:0 0 18px}
.saek-gantt{font-family:var(--saek-font);color:var(--saek-ink);width:100%;min-width:0}
.saek-gantt *{box-sizing:border-box}
.saek-gantt button{font:inherit;color:inherit;cursor:pointer}
.saek-gantt-viewport{overflow-x:auto;overflow-y:visible;max-height:none;border:1px solid var(--saek-line);border-radius:4px;background:white;scrollbar-color:#8792aa #eef0fa;scrollbar-width:thin;scroll-padding:16px;overscroll-behavior-x:contain}
.saek-gantt-viewport:focus-visible{outline:2px solid var(--saek-brand);outline-offset:4px}
.saek-gantt-table{display:grid;position:relative;align-items:start;isolation:isolate}
.saek-gantt-header-row,.saek-gantt-row{display:contents}
.saek-gantt-corner{position:sticky;left:0;z-index:8;background:#f8f9ff;border-right:1px solid var(--saek-line);border-bottom:1px solid var(--saek-line);padding:16px;display:flex;flex-direction:column;justify-content:center;gap:8px}
.saek-gantt-corner strong{font-size:14px;font-weight:500;line-height:18px}
.saek-gantt-kicker{font-size:9px;line-height:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--saek-brand)}
.saek-gantt-caption{font-size:11px;line-height:15px;color:var(--saek-muted)}
.saek-gantt-time-header{position:relative;z-index:6;align-self:start;background:#fff;border-bottom:1px solid var(--saek-line)}
.saek-gantt-months{position:absolute;top:0;left:0;width:100%;height:28px;background:#f8f9ff;border-bottom:1px solid var(--saek-line)}
.saek-gantt-months span{position:absolute;height:28px;display:flex;align-items:center;padding-left:12px;border-right:1px solid var(--saek-line);font-size:10px;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;overflow:hidden}
.saek-gantt-columns{height:100%;display:flex}
.saek-gantt-column{height:100%;flex-shrink:0;padding:12px 8px 8px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;border-right:1px solid var(--saek-line);background:#fff}
.saek-gantt-column.is-restday{background:#f8f9ff}
.saek-gantt-column.is-holiday{background:#fff6e7}
.saek-gantt-column.is-today{background:#eef0ff;box-shadow:inset 0 3px 0 var(--saek-brand),inset 1px 0 0 #3f48cc44}
.saek-gantt-column.is-today .saek-gantt-period-name{color:var(--saek-ink);font-weight:600}
.saek-gantt-column.is-today .saek-gantt-week-date{color:var(--saek-brand);font-weight:700}
.saek-gantt-period-name{font-size:11px;line-height:14px;color:var(--saek-muted)}
.saek-gantt-week-date{font-size:10px;line-height:13px;font-weight:500;text-align:center;white-space:normal;overflow-wrap:anywhere}
.saek-gantt-day-number{font-size:25px;font-weight:500;line-height:28px;letter-spacing:-.04em}
.saek-gantt-holiday{display:block;flex-shrink:0;font-size:10px;line-height:13px;text-align:center;color:#89540a;max-width:100%;overflow-wrap:break-word}
.saek-gantt-label{position:sticky;left:0;z-index:4;background:white;border-right:1px solid var(--saek-line);border-bottom:1px solid var(--saek-line)}
.saek-gantt-label.is-group,.saek-gantt-time-row.is-group{background:#f8f9ff}
.saek-gantt-label-button{height:100%;width:100%;background:transparent;border:0;padding:12px 16px;text-align:left;display:flex;flex-direction:column;justify-content:center;gap:4px}
.saek-gantt-label-button strong{font-size:13px;line-height:18px;font-weight:500;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.saek-gantt-label.is-group strong{font-size:14px;font-weight:600}
.saek-gantt-label-button:hover{background:#eef0fa}
.saek-gantt-detail{font:10px/15px var(--saek-mono);color:var(--saek-muted)}
.saek-gantt-warning{color:#89540a}
.saek-gantt-time-row{position:relative;border-bottom:1px solid var(--saek-line);min-width:0}
.saek-gantt-grid{display:flex;position:absolute;inset:0;pointer-events:none}
.saek-gantt-grid>span{height:100%;flex-shrink:0;border-right:1px solid var(--saek-line)}
.saek-gantt-grid .is-restday{background:#f8f9ff}.saek-gantt-grid .is-holiday{background:#fff6e740}
.saek-gantt-grid .is-today{background:#eef0ff;box-shadow:inset 1px 0 0 #3f48cc44}
.saek-gantt-today-line{position:absolute;top:0;bottom:0;width:1px;border-left:1px dashed #3f48cc66;pointer-events:none}
.saek-gantt-mark{position:absolute;z-index:2;border:1px solid;border-radius:3px;padding:3px 7px;text-align:left;display:flex;align-items:center;transition:filter 150ms,box-shadow 150ms}
.saek-gantt-mark>span:not(.saek-gantt-continuation){font-size:11px;line-height:15px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.saek-gantt-mark.is-macro>span:not(.saek-gantt-continuation){display:block;white-space:nowrap;text-overflow:ellipsis}
.saek-gantt-mark:hover{filter:brightness(.96);box-shadow:0 2px 8px #07195312}
.saek-gantt-mark.is-dashed{border-style:dashed}
.saek-gantt-mark.is-group{background:#071953!important;opacity:.28;border:0;border-radius:0;padding:0}
.saek-gantt-mark.is-actual{background:#186546!important;border:0;border-radius:0;padding:0}
.saek-gantt-continuation{position:absolute;top:0;bottom:0;width:4px;background:currentColor;opacity:.4}
.saek-gantt-continuation.is-before{left:0}.saek-gantt-continuation.is-after{right:0}
.saek-gantt-table>svg{z-index:1;pointer-events:none}
.saek-gantt-footer{font-size:11px;line-height:16px;color:var(--saek-muted);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:12px 0}
.saek-gantt-scroll-controls{display:flex;align-items:center;gap:8px}
.saek-gantt-scroll-controls button{width:34px;height:34px;display:grid;place-items:center;background:#fff;border:1px solid var(--saek-line);border-radius:3px}
.saek-gantt-scroll-controls button:hover{background:#eef0fa}
.saek-gantt-holidays{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:11px;line-height:16px;color:#89540a;padding:10px 0;border-top:1px solid var(--saek-line)}
.saek-gantt-holidays strong{font-weight:500;color:var(--saek-muted)}
.saek-gantt-empty{padding:28px 20px;color:var(--saek-muted);font-size:13px;line-height:20px}
.saek-gantt-expanded{height:100%;min-height:0;display:flex;flex-direction:column}
.saek-gantt-expanded .saek-gantt-viewport{flex:1;min-height:0;max-height:none}
.saek-gantt-expanded .saek-gantt-footer,.saek-gantt-expanded .saek-gantt-holidays{flex-shrink:0}
@media(max-width:700px){[data-testid='saek-schedule-header'] .section-heading h1{font-size:40px}[data-testid='saek-schedule-header'] .heading-note{font-size:23px}[data-testid='saek-schedule-header'] .heading-outline{font-size:100px}.saek-gantt-viewport{scroll-padding-left:140px}.saek-gantt-corner{padding:10px;gap:6px}.saek-gantt-corner strong{font-size:12px}.saek-gantt-label-button{padding:10px}.saek-gantt-label-button strong{font-size:12px;line-height:18px}.saek-gantt-footer{font-size:10px}.saek-gantt-holidays{font-size:10px}}
@media(prefers-reduced-motion:reduce){.saek-gantt-mark{transition:none}.saek-gantt-viewport{scroll-behavior:auto}}
@media(max-width:700px){.saek-gantt-corner .saek-gantt-kicker{font-size:8px;letter-spacing:.05em}}
