.calendar-root{max-width:1600px;margin:auto}.cal-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.cal-eyebrow{font-size:10px;letter-spacing:.16em;color:var(--brand-blue);font-weight:750;text-transform:uppercase;margin-bottom:7px}.cal-heading h1{font-size:30px;letter-spacing:-1px;margin:0}.cal-heading p{margin:6px 0 0;color:var(--muted)}.cal-actions,.cal-controls,.cal-navigation,.cal-legend{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cal-actions .btn{white-space:nowrap}.cal-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.cal-metric{padding:19px 20px;border:1px solid var(--line-2);border-radius:14px;background:white;position:relative}.cal-metric small{color:var(--muted);font-size:11px}.cal-metric strong{display:block;font-size:30px;letter-spacing:-1px;line-height:1.4}.cal-metric span{color:var(--muted);font-size:11px}.cal-metric.done strong{color:#16875e}.cal-shell{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 3px 18px #192c4605}.cal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;border-bottom:1px solid var(--line-2);flex-wrap:wrap}.cal-navigation h2{font-size:19px;text-transform:none;margin:0 12px 0 0;min-width:150px;letter-spacing:-.4px}.cal-filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:14px 20px;background:#fcfdff;border-bottom:1px solid var(--line-2)}.cal-filters label{margin:0;flex:1;min-width:140px}.cal-filters .field span{font-size:10px}.cal-filters input,.cal-filters select{width:100%;min-width:0}.cal-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px}.cal-board{min-width:0}.cal-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid var(--line-2)}.cal-weekdays span{text-align:right;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:650;color:var(--muted);padding:12px}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal-day{min-height:132px;padding:9px 7px;border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);cursor:pointer;min-width:0;position:relative;background:white}.cal-day:nth-child(7n){border-right:0}.cal-day:hover{background:#f8fafd}.cal-day.selected{box-shadow:inset 0 0 0 2px var(--brand-blue);z-index:1}.cal-day.outside{background:#fafbfd;cursor:default;color:#b3bdcb}.cal-day-num{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-bottom:7px}.cal-day-num b{font-size:11px;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;margin-left:auto}.cal-day.today .cal-day-num b{background:var(--brand-blue);color:white}.cal-day-num small{font-size:9px;color:var(--muted)}.cal-event{border:0;border-left:3px solid var(--event-color);color:var(--event-ink);background:var(--event-bg);width:100%;text-align:left;border-radius:5px;padding:5px 6px;margin:0 0 4px;font-size:10px;cursor:pointer;display:block;overflow:hidden;min-height:38px}.cal-event b,.cal-event span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-event b{font-weight:600}.cal-event span{font-size:9px;opacity:.85;margin-top:1px}.cal-event.done,.cal-dot.done{--event-color:#159263;--event-ink:#116447;--event-bg:#e9f7f0}.cal-event.scheduled,.cal-dot.scheduled{--event-color:#3e6bb0;--event-ink:#294f87;--event-bg:#edf2fc}.cal-event.active,.cal-dot.active{--event-color:#c18b18;--event-ink:#805d0d;--event-bg:#fff6df}.cal-event.issues,.cal-dot.issues{--event-color:#d64540;--event-ink:#a02e2b;--event-bg:#fff0ee}.cal-event.canceled,.cal-dot.canceled{--event-color:#8794a8;--event-ink:#647185;--event-bg:#f0f3f7}.cal-more{border:0;background:none;color:var(--brand-blue);font-size:10px;cursor:pointer;padding:2px}.cal-detail{border-left:1px solid var(--line-2);padding:20px;background:#fcfdff;min-width:0}.cal-detail h3{font-size:16px;margin:0 0 6px}.cal-detail-sub{font-size:11px;color:var(--muted);margin-bottom:18px}.cal-detail-empty{padding:35px 0;text-align:center;color:var(--muted);font-size:12px}.cal-detail-card{padding:14px 0;border-bottom:1px solid var(--line-2)}.cal-detail-card button{border:0;background:none;padding:0;text-align:left;font-weight:650;font-size:12px;cursor:pointer;color:var(--ink);overflow-wrap:anywhere}.cal-detail-card p{font-size:11px;margin:6px 0;color:var(--muted)}.cal-state{font-size:10px;display:inline-flex;align-items:center;gap:5px;font-weight:600}.cal-dot{width:7px;height:7px;border-radius:50%;background:var(--event-color);display:inline-block;flex:none}.cal-legend{padding:14px 20px;border-top:1px solid var(--line-2);font-size:10px;color:var(--muted);gap:16px}.cal-legend span{display:flex;align-items:center;gap:5px}.cal-footer{font-size:10px;color:var(--muted);margin:14px 2px;line-height:1.7}.cal-agenda{padding:0 20px;max-height:760px;overflow:auto}.cal-agenda-day{padding:20px 0 8px;font-size:13px;position:sticky;top:0;background:white;z-index:1}.cal-agenda-row{display:grid;grid-template-columns:55px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line-2)}.cal-agenda-row time{font-size:12px;font-weight:650;color:var(--brand-blue)}.cal-agenda-row button{border:0;background:none;padding:0;text-align:left;cursor:pointer;min-width:0}.cal-agenda-row b{display:block;font-size:12px;overflow-wrap:anywhere}.cal-agenda-row small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.cal-alert{margin:14px 0;padding:12px 16px;border-radius:10px;background:#fff6df;color:#805d0d;font-size:12px}.calendar-root :is(button,[tabindex]):focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px}.cal-loading{opacity:.6;pointer-events:none}.cal-detail-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.cal-detail-counts div{background:var(--surface-2);padding:14px;border-radius:10px}.cal-detail-counts b{font-size:24px;display:block}.cal-detail-counts small{font-size:10px;color:var(--muted)}
.cal-date-button{border:0;background:none;padding:0;cursor:pointer}.cal-date-button:disabled{cursor:default}
@media(min-width:1450px){.cal-day{min-height:152px}.cal-event{font-size:11px}.cal-event span{font-size:10px}}
@media(max-width:1100px){.cal-layout{grid-template-columns:minmax(0,1fr)}.cal-detail{border-left:0;border-top:1px solid var(--line-2)}.cal-detail [data-day-events]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.cal-heading{align-items:flex-start}.cal-heading h1{font-size:26px}.cal-metric{padding:14px}}
@media(max-width:650px){.cal-heading{flex-direction:column;gap:16px}.cal-heading h1{font-size:25px}.cal-actions{width:100%}.cal-actions .btn{font-size:11px;padding:9px 10px}.cal-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cal-metric strong{font-size:26px}.cal-toolbar{padding:14px;gap:12px}.cal-navigation{width:100%}.cal-navigation h2{font-size:17px;flex:1;margin:0;min-width:100px}.cal-controls{width:100%;justify-content:space-between}.cal-filters{padding:12px}.cal-filters label{min-width:110px}.cal-filters label:first-child{flex-basis:100%}.cal-weekdays span{padding:9px 0;font-size:9px;text-align:center}.cal-day{min-height:86px;padding:5px 2px}.cal-day-num{margin-bottom:4px;justify-content:center}.cal-day-num b{margin:0;width:23px;height:23px}.cal-day-num small{display:none}.cal-event{padding:4px 2px;border-left-width:2px;min-height:27px;font-size:8px}.cal-event span{display:none}.cal-event b{font-size:8px}.cal-more{font-size:8px;padding:2px}.cal-legend{padding:12px;gap:10px}.cal-detail{padding:16px}.cal-detail [data-day-events]{display:block}.cal-agenda{padding:0 14px}.cal-agenda-row{grid-template-columns:43px minmax(0,1fr);gap:10px}.cal-agenda-row>.cal-state{grid-column:2}.cal-detail-counts{gap:6px}.cal-detail-counts div{padding:10px}.cal-detail-counts b{font-size:20px}}

/* FEAT-005: resumo visual do dia */
.cal-day-modal{max-width:880px}
.cal-day-sheet{display:flex;flex-direction:column;gap:14px}
.cal-day-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}
.cal-day-kpi{background:var(--surface-2);border-radius:12px;padding:12px 14px}
.cal-day-kpi strong{display:block;font-size:24px;letter-spacing:-.6px;line-height:1.2}
.cal-day-kpi small{color:var(--muted);font-size:11px}
.cal-day-kpi.done strong{color:#16875e}.cal-day-kpi.scheduled strong{color:#294f87}.cal-day-kpi.active strong{color:#805d0d}.cal-day-kpi.issues strong{color:#a02e2b}
.cal-day-filter{align-self:flex-start;flex-wrap:wrap}
.cal-day-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;max-height:min(62vh,640px);overflow:auto;padding-right:4px}
.cal-day-item{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:start}
.cal-day-item time{font-weight:700;font-size:13px;color:var(--brand-blue);padding-top:14px;text-align:right}
.cal-day-card{display:flex;gap:12px;width:100%;text-align:left;border:1px solid var(--line-2);border-left:4px solid var(--event-color,#8794a8);background:white;border-radius:12px;padding:12px;cursor:pointer;min-width:0;font:inherit;color:inherit}
.cal-day-card:hover{background:#f8fafd;border-color:var(--line)}
.cal-day-item.done .cal-day-card{--event-color:#159263}.cal-day-item.scheduled .cal-day-card{--event-color:#3e6bb0}.cal-day-item.active .cal-day-card{--event-color:#c18b18}.cal-day-item.issues .cal-day-card{--event-color:#d64540}.cal-day-item.canceled .cal-day-card{--event-color:#8794a8}
.cal-thumb{flex:none;width:72px;height:72px;border-radius:10px;background:#eef2f8 center/cover no-repeat;position:relative;overflow:hidden;display:grid;place-items:center;color:var(--muted)}
.cal-thumb video{width:100%;height:100%;object-fit:cover}
.cal-thumb i{position:absolute;inset:auto 6px 6px auto;background:#0009;color:white;border-radius:50%;width:22px;height:22px;display:grid;place-items:center}
.cal-day-main{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}
.cal-day-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.cal-day-top b{font-size:14px;overflow-wrap:anywhere}
.cal-day-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:11px;color:var(--muted)}
.cal-type{display:inline-flex;align-items:center;gap:4px;padding:1px 7px;border-radius:99px;background:var(--surface-2);color:var(--ink-2);font-size:10.5px;font-weight:600}
.cal-day-text{font-size:12px;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cal-day-dest{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:11px;color:var(--muted)}
.cal-day-dest span{display:inline-flex;align-items:center;gap:4px}
.cal-day-progress{height:5px;border-radius:99px;background:#eef2f8;overflow:hidden;margin-top:2px}
.cal-day-progress i{display:block;height:100%;background:var(--event-color,#159263);border-radius:99px}
.cal-day-progress-text{font-size:10.5px;color:var(--muted)}
.cal-more{font-weight:600}
@media(max-width:640px){.cal-day-item{grid-template-columns:minmax(0,1fr)}.cal-day-item time{text-align:left;padding:0}.cal-thumb{width:56px;height:56px}.cal-day-top{flex-direction:column;gap:4px}}

/* FEAT-006: semana em grade de horários */
.cal-wk{--hour:104px;display:flex;flex-direction:column;min-width:0}
.cal-wk-scroll .cal-wk-head{position:sticky;top:0;z-index:5}
.cal-wk-head,.cal-wk-body{display:grid;grid-template-columns:56px repeat(7,minmax(110px,1fr))}
.cal-wk-head{border-bottom:1px solid var(--line-2);position:sticky;top:0;background:white;z-index:3}
.cal-wk-day{border:0;background:none;padding:10px 4px 8px;display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;font:inherit;color:var(--ink);border-left:1px solid var(--line-2);position:relative}
.cal-wk-day small{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:650}
.cal-wk-day b{font-size:18px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%}
.cal-wk-day.today b{background:var(--brand-blue);color:white}
.cal-wk-day.selected{box-shadow:inset 0 -2px 0 var(--brand-blue)}
.cal-wk-day em{position:absolute;top:8px;right:8px;font-style:normal;font-size:10px;font-weight:700;background:var(--surface-2);color:var(--ink-2);border-radius:99px;padding:0 6px}
.cal-wk-day:hover{background:#f8fafd}
.cal-wk-scroll{max-height:max(480px,calc(100vh - 300px));overflow:auto;position:relative}
.cal-wk-body{position:relative}
.cal-wk-hours{display:flex;flex-direction:column}
.cal-wk-hours span{height:var(--hour);font-size:11px;font-weight:600;color:var(--muted);text-align:right;padding-right:8px;transform:translateY(-6px)}
.cal-wk-hours span:first-child{visibility:hidden}
.cal-wk-col{position:relative;border-left:1px solid var(--line-2);cursor:copy}
.cal-wk-col.past{cursor:default;background:#fafbfd}
.cal-wk-col.today{background:#f7faff}
.cal-wk-slot{display:block;width:100%;height:calc(var(--hour)/2);border:0;border-top:1px solid var(--line-2);background:none;padding:0;margin:0;text-align:left;font:inherit;cursor:pointer}
.cal-wk-slot.half{border-top:1px dashed #e9edf3}
.cal-wk-slot:not(.past):hover{background:#eef3fb;box-shadow:inset 0 0 0 1px #c9d7ee;border-radius:6px}
.cal-wk-slot:not(.past):hover::after{content:attr(data-label);display:block;font-size:12px;font-weight:650;color:var(--brand-blue);padding:6px 8px}
.cal-wk-slot.past{background:repeating-linear-gradient(135deg,transparent 0 6px,#f1f4f8 6px 7px)}
.cal-wk-event{position:absolute;z-index:2;margin:0;min-height:0;padding:3px 6px;border-radius:6px;box-shadow:0 1px 3px #192c4614}
.cal-wk-event b{font-size:12px}
.cal-wk-event span{font-size:10.5px;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-wk-event:hover{filter:brightness(.97);z-index:4}
.cal-wk-now{position:absolute;left:0;right:0;height:2px;background:var(--red,#CC302D);z-index:3;pointer-events:none}
.cal-wk-now::before{content:"";position:absolute;left:-4px;top:-3px;width:8px;height:8px;border-radius:50%;background:inherit}
.cal-wk-hint{display:flex;align-items:center;gap:6px;margin:0;padding:10px 14px;border-top:1px solid var(--line-2)}
@media(max-width:900px){.cal-wk-head,.cal-wk-body{min-width:840px}.cal-wk-scroll{max-height:70vh}}
.cal-layout.week{grid-template-columns:minmax(0,1fr)}.cal-layout.week .cal-detail{display:none}
.cal-wk-event{display:flex;flex-direction:column;justify-content:center;gap:2px}.cal-wk-event b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Semana: excedentes de envios sobrepostos (calendar-layout.js) */
.cal-wk-more{position:absolute;z-index:3;margin:0;padding:2px 4px;border:1px dashed var(--brand-blue);border-radius:6px;background:white;color:var(--brand-blue);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0;cursor:pointer;font:inherit;min-width:0}
.cal-wk-more b{font-size:13px;line-height:1.2}.cal-wk-more span{font-size:10px;opacity:.75}
.cal-wk-more:hover{filter:brightness(.97);z-index:4}
.cal-wk-event.narrow{padding:3px 4px}
