.workcal-page{max-width:1180px}.workcal-hero{align-items:flex-end}.workcal-nav{display:flex;align-items:center;gap:18px;padding:8px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.workcal-nav button{width:38px;height:38px;border:0;border-radius:11px;background:transparent;color:var(--text);font-size:24px;cursor:pointer}.workcal-nav button:hover{background:var(--surface-2)}.workcal-nav strong{text-transform:capitalize;min-width:170px;text-align:center}.workcal-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.workcal-kpis article{padding:18px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 85%,transparent));display:grid;gap:4px}.workcal-kpis small,.workcal-kpis span{color:var(--muted)}.workcal-kpis strong{font-size:24px}.workcal-legend{display:flex;gap:18px;margin:10px 0 14px;color:var(--muted);font-size:13px}.workcal-legend span:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px}.workcal-legend .useful:before{background:#43d7a0}.workcal-legend .holiday:before{background:#ff7069}.workcal-legend .weekend:before{background:#778092}.workcal{border:1px solid var(--border);border-radius:20px;overflow:hidden;background:var(--surface);box-shadow:0 20px 50px #0002}.workcal>header,.workcal-grid{display:grid;grid-template-columns:repeat(7,1fr)}.workcal>header b{padding:13px 15px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border)}.workcal-day{position:relative;min-height:126px;padding:14px;border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:transparent;color:var(--text);text-align:left;cursor:pointer}.workcal-day:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.workcal-day.off{opacity:.52}.workcal-day.holiday{background:color-mix(in srgb,#ff7069 8%,transparent);box-shadow:inset 3px 0 #ff7069}.day-number{font-size:17px;font-weight:750}.today-label{float:right;color:var(--accent);font-size:10px;text-transform:uppercase}.workcal-day strong{display:block;margin-top:22px;font-size:12px;color:#ff8c86}.workcal-day small{display:block;margin-top:5px;color:var(--muted)}.day-shifts{display:flex;flex-direction:column;gap:5px;margin-top:26px}.day-shifts i{font-style:normal;font-size:11px;color:var(--muted);padding-left:8px;border-left:2px solid #43d7a0}.workcal-detail{margin-top:16px;padding:18px 20px;border:1px solid var(--border);border-radius:16px;background:var(--surface);display:grid;gap:5px}.workcal-detail span{color:var(--muted);text-transform:capitalize}.workcal-detail p{margin:0;color:var(--muted)}@media(max-width:800px){.workcal-kpis{grid-template-columns:1fr 1fr}.workcal{overflow:auto}.workcal>header,.workcal-grid{min-width:800px}.workcal-hero{align-items:stretch}.workcal-nav{align-self:stretch}}
.workcal-tabs{display:flex;gap:4px;width:max-content;margin:22px 0;padding:5px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.workcal-tabs button{border:0;background:transparent;color:var(--muted);padding:11px 18px;border-radius:10px;font-weight:700;cursor:pointer}.workcal-tabs button.active{background:color-mix(in srgb,var(--accent) 17%,var(--surface));color:var(--text);box-shadow:0 5px 16px #0002}.schedule-toolbar,.calendar-toolbar{display:flex;align-items:flex-end;gap:14px;padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface);margin-bottom:16px}.employee-select{display:grid;gap:6px;min-width:280px}.employee-select span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em}.employee-select select,.leave-editor select,.leave-editor input,.leave-editor textarea,.schedule-editor input{height:44px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);color:var(--text);padding:0 12px}.schedule-summary{margin-left:auto;display:grid;grid-template-columns:auto auto;column-gap:10px;align-items:end}.schedule-summary small,.schedule-summary span{color:var(--muted);font-size:11px}.schedule-summary strong{font-size:22px}.employee-schedule-head{display:flex;align-items:center;gap:14px;padding:20px;border:1px solid var(--border);border-radius:18px 18px 0 0;background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 11%,var(--surface)),var(--surface))}.schedule-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--accent);color:white;font-size:20px;font-weight:800}.employee-schedule-head div{flex:1}.employee-schedule-head h2,.employee-schedule-head p{margin:2px 0}.employee-schedule-head small,.employee-schedule-head p{color:var(--muted)}.employee-schedule-head>b{padding:7px 10px;border-radius:999px;background:#45d7a01c;color:#45d7a0;font-size:11px;text-transform:uppercase}.employee-schedule-head>b.outside{background:#8a76ff1d;color:#a99aff}.week-schedule{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--border);border-top:0;border-radius:0 0 18px 18px;overflow:hidden}.schedule-day{min-height:150px;padding:16px;border-right:1px solid var(--border);background:var(--surface)}.schedule-day:last-child{border:0}.schedule-day.off{opacity:.48}.schedule-day header{display:flex;gap:9px;align-items:center}.schedule-day header>span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:color-mix(in srgb,var(--accent) 14%,transparent);font-size:11px;font-weight:800}.schedule-day header div{display:grid}.schedule-day small{color:var(--muted)}.schedule-day>div{display:grid;gap:7px;margin-top:22px}.schedule-day>div b{display:flex;justify-content:space-between;gap:5px;padding:8px;border-radius:9px;background:var(--surface-2);font-size:11px}.schedule-day>div i{font-style:normal;color:var(--muted);font-weight:400}.schedule-day em{color:var(--muted);font-size:12px}.workcal-day.leave{background:color-mix(in srgb,#8a76ff 10%,transparent);box-shadow:inset 3px 0 #8a76ff}.workcal-legend .leave:before{background:#8a76ff}.schedule-editor{display:grid;gap:16px}.schedule-flex{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--border);border-radius:13px}.schedule-flex span{display:grid}.schedule-flex small{color:var(--muted)}.schedule-editor-days{display:grid;gap:8px}.schedule-editor-days section{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:10px;border:1px solid var(--border);border-radius:12px}.schedule-editor-days section>label{display:flex;align-items:center;gap:8px;font-weight:700}.schedule-editor-days section>div{display:flex;gap:8px}.schedule-editor-days p{display:flex;align-items:center;gap:6px;margin:0}.schedule-editor-days input[type=time]{width:112px}.schedule-editor-days p span{color:var(--muted);font-size:11px}.leave-editor{display:grid;grid-template-columns:1fr 1fr;gap:14px}.leave-editor label{display:grid;gap:6px}.leave-editor label>span{color:var(--muted);font-size:11px;text-transform:uppercase}.leave-editor label:last-child{grid-column:1/-1}.leave-editor textarea{height:auto;padding:12px}.leave-times{display:grid;grid-template-columns:1fr 1fr;gap:8px}@media(max-width:1000px){.week-schedule{grid-template-columns:repeat(2,1fr)}.schedule-toolbar,.calendar-toolbar{align-items:stretch;flex-direction:column}.schedule-summary{margin:0}.employee-select{min-width:0;width:100%}}
/* Editor premium da jornada individual */
.modal-schedule-premium{width:min(1120px,calc(100vw - 40px));max-width:1120px;max-height:calc(100vh - 36px);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:24px;box-shadow:0 32px 90px #0008}.modal-schedule-premium .modal-body{overflow:auto;padding:0 24px 24px;scrollbar-gutter:stable}.modal-schedule-premium .modal-header{padding:20px 24px;border-bottom:1px solid var(--border)}.modal-schedule-premium .modal-footer{position:relative;z-index:2;padding:16px 24px;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(16px)}
.schedule-editor.premium{display:grid;gap:20px}.schedule-editor-hero{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin:0 -24px;padding:24px;overflow:hidden;background:linear-gradient(125deg,color-mix(in srgb,var(--accent) 19%,var(--surface)),color-mix(in srgb,#7357ff 8%,var(--surface)) 58%,var(--surface))}.schedule-editor-hero:after{content:"";position:absolute;right:11%;top:-65px;width:190px;height:190px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,transparent)}.schedule-editor-avatar{position:relative;z-index:1;display:grid;place-items:center;width:62px;height:62px;border-radius:19px;background:linear-gradient(145deg,var(--accent),color-mix(in srgb,var(--accent) 60%,#7d61ff));color:#fff;font-size:25px;font-weight:850;box-shadow:0 13px 30px color-mix(in srgb,var(--accent) 32%,transparent)}.schedule-editor-hero>div{position:relative;z-index:1;min-width:0}.schedule-editor-hero small,.schedule-editor-hero p{color:var(--muted)}.schedule-editor-hero>div>small{font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.schedule-editor-hero h3{margin:5px 0 3px;font-size:22px}.schedule-editor-hero p{margin:0;font-size:13px}.schedule-editor-hero aside{position:relative;z-index:1;display:grid;min-width:166px;padding:15px 18px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--surface) 82%,transparent);box-shadow:0 12px 30px #0002}.schedule-editor-hero aside small{font-size:10px;text-transform:uppercase;letter-spacing:.08em}.schedule-editor-hero aside strong{margin:2px 0;font-size:25px}.schedule-editor-hero aside span{color:var(--muted);font-size:11px}
.schedule-editor-settings{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr);gap:12px}.schedule-effective,.schedule-flex.premium-toggle{min-height:92px;padding:16px 17px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface-2) 76%,var(--surface)));box-sizing:border-box}.schedule-effective{display:grid;grid-template-columns:1fr 155px;align-items:center;gap:3px 14px}.schedule-effective>span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.schedule-effective>strong{grid-column:1;font-size:14px}.schedule-effective>input{grid-column:2;grid-row:1/4;width:100%}.schedule-effective>small{color:var(--muted);font-size:11px}.schedule-flex.premium-toggle{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:14px;cursor:pointer}.premium-toggle>input,.day-switch>input{position:absolute;opacity:0;pointer-events:none}.premium-toggle>i{position:relative;width:46px;height:26px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border)}.premium-toggle>i:after{content:"";position:absolute;top:4px;left:4px;width:16px;height:16px;border-radius:50%;background:var(--muted);transition:.22s}.premium-toggle>input:checked+i{background:color-mix(in srgb,var(--accent) 28%,var(--surface));border-color:var(--accent)}.premium-toggle>input:checked+i:after{left:24px;background:var(--accent)}.schedule-flex.premium-toggle span{display:grid;gap:3px}
.schedule-days-title{display:flex;align-items:center;justify-content:space-between;padding:3px 2px}.schedule-days-title>div{display:grid;gap:3px}.schedule-days-title small{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.schedule-days-title strong{font-size:17px}.schedule-days-title button{border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--text);padding:10px 13px;font-size:12px;font-weight:750;cursor:pointer}.schedule-days-title button:hover{background:color-mix(in srgb,var(--accent) 18%,transparent)}
.schedule-editor-days.premium-days{display:grid;gap:10px}.schedule-editor-days.premium-days>section{position:relative;display:grid;grid-template-columns:205px minmax(0,1fr) 82px;align-items:center;gap:16px;min-height:104px;padding:14px 16px;border:1px solid var(--border);border-radius:17px;background:var(--surface)}.schedule-editor-days.premium-days>section:before{content:"";position:absolute;left:-1px;top:17px;bottom:17px;width:3px;border-radius:0 5px 5px 0;background:var(--border)}.schedule-editor-days.premium-days>section.enabled{border-color:color-mix(in srgb,#43d7a0 26%,var(--border));background:linear-gradient(100deg,color-mix(in srgb,#43d7a0 4%,var(--surface)),var(--surface) 37%)}.schedule-editor-days.premium-days>section.enabled:before{background:#43d7a0;box-shadow:0 0 14px #43d7a055}.day-switch{display:grid!important;grid-template-columns:36px 1fr;align-items:center;gap:11px;font-weight:400!important;cursor:pointer}.day-switch>i{position:relative;width:34px;height:20px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2)}.day-switch>i:after{content:"";position:absolute;left:3px;top:3px;width:12px;height:12px;border-radius:50%;background:var(--muted);transition:.2s}.day-switch>input:checked+i{border-color:#43d7a0;background:#43d7a026}.day-switch>input:checked+i:after{left:17px;background:#43d7a0}.day-switch>span{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:2px 8px}.day-switch b{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:10px}.day-switch strong{font-size:14px;text-transform:capitalize}.day-switch small{font-size:10px;color:var(--muted)}.enabled .day-switch small{color:#43d7a0}
.shift-editor{display:grid!important;grid-template-columns:1fr 1fr;gap:9px!important;margin:0!important}.shift-editor article{min-width:0;padding:10px 11px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.shift-editor article>header{display:flex;justify-content:space-between;margin-bottom:8px}.shift-editor article>header span{font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.shift-editor article>header em{font-style:normal;font-size:10px;color:var(--muted)}.shift-editor article>p{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:7px;margin:0}.shift-editor article>p>i{padding-bottom:12px;color:var(--muted);font-style:normal}.shift-editor label{display:grid;gap:3px}.shift-editor label small{font-size:9px;color:var(--muted)}.shift-editor input[type=time]{width:100%;height:34px;padding:0 7px;border-radius:8px;font-size:12px;box-sizing:border-box}.premium-days>section:not(.enabled) .shift-editor{opacity:.35;filter:saturate(.4)}.premium-days>section:not(.enabled) .shift-editor input{pointer-events:none}.day-total{display:grid!important;gap:3px!important;margin:0!important;text-align:right}.day-total small{font-size:9px;color:var(--muted);text-transform:uppercase}.day-total strong{font-size:17px}.premium-days>section:not(.enabled) .day-total strong{color:var(--muted)}
@media(max-width:900px){.modal-schedule-premium{width:min(760px,calc(100vw - 20px))}.schedule-editor-hero{grid-template-columns:auto 1fr}.schedule-editor-hero aside{grid-column:1/-1}.schedule-editor-settings{grid-template-columns:1fr}.schedule-editor-days.premium-days>section{grid-template-columns:1fr}.day-total{text-align:left}}@media(max-width:560px){.modal-schedule-premium .modal-body{padding:0 14px 18px}.schedule-editor-hero{margin:0 -14px;padding:18px 14px}.schedule-editor-avatar{width:50px;height:50px}.schedule-effective{grid-template-columns:1fr}.schedule-effective>input{grid-column:1;grid-row:auto}.schedule-days-title{align-items:stretch;flex-direction:column}.shift-editor{grid-template-columns:1fr!important}}

/* Correção da área rolável do editor de jornada */
.modal-schedule-premium{display:grid;grid-template-rows:auto minmax(0,1fr);height:min(900px,calc(100vh - 36px));overflow:hidden}
.modal-schedule-premium>.modal-head{padding:20px 24px;border-bottom:1px solid var(--border)}
.modal-schedule-premium>form{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0;overflow:hidden}
.modal-schedule-premium .modal-body{min-height:0;max-height:none;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scroll-behavior:smooth}
.modal-schedule-premium .modal-actions{position:relative;z-index:3;margin:0;padding:16px 24px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(16px)}
@media(max-width:900px){.modal-schedule-premium{height:calc(100vh - 20px)}}
