.control-note { margin: -.5rem 0 1rem; }
.control-card .card-actions { gap: .6rem; }
.control-card .card-actions button { min-height: 42px; padding: .7rem .9rem; font-size: .86rem; }
.control-card .card-actions .visit-opening-workload { margin-left: auto; }
.control-card-head { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; }
.control-card-head h3 { margin:.15rem 0 0; }
.control-end-date { min-width:10.5rem; text-align:right; padding:.65rem .8rem; border-left:4px solid var(--blue); border-radius:7px; background:#edf4f8; }
.control-end-date small { display:block; color:var(--muted); font-size:.68rem; font-weight:900; letter-spacing:.07em; }
.control-end-date b { display:block; margin-top:.15rem; color:#071a2d; font-size:1.35rem; line-height:1.05; }
.control-leader { margin:.65rem 0; color:var(--muted); font-weight:800; }
.control-details { display:grid; gap:.8rem; margin-top:1rem; }
.control-detail-block { overflow:hidden; border:1px solid var(--line); border-radius:9px; }
.control-detail-block h4 { margin:0; padding:.65rem .8rem; background:#eaf1f5; font-size:.82rem; text-transform:uppercase; }
.control-detail-row.ongoing { border-left:4px solid #e6a72d; background:#fffaf0; }
.control-detail-row { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; padding:.65rem .8rem; border-top:1px solid var(--line); }
.control-detail-row div { min-width:0; display:grid; gap:.12rem; }
.control-detail-row span { color:var(--muted); font-size:.82rem; }
.control-detail-row strong { white-space:nowrap; }
.control-detail-row em { color:#c94d49; font-size:.75rem; font-style:normal; font-weight:900; text-transform:uppercase; }
.control-detail-empty { margin:0; padding:.65rem .8rem; color:var(--muted); font-size:.82rem; }
.visit-close-summary { margin-bottom:1rem; padding:1rem; border-radius:9px; background:#edf4f8; }
.visit-close-summary p { margin:.2rem 0; }
.visit-close-date { display:grid; gap:.4rem; font-weight:800; }
@media (max-width:650px){.control-card-head{display:block}.control-end-date{margin-top:.75rem;text-align:left}.control-card .card-actions .visit-opening-workload{margin-left:0}}
.daily-production-filters{margin-bottom:1rem;padding:1rem 1.15rem;border:1px solid #9bcbd6;border-left:6px solid #55b8cb;border-radius:12px;background:#fff;box-shadow:var(--shadow)}
.daily-production-filters h3{margin:.15rem 0}
.daily-production-filters>.filters{margin-top:.8rem;align-items:end}
.daily-production-filters label{display:grid;gap:.3rem;font-weight:800}
.daily-production-filters input,.daily-production-filters select{min-width:190px}
.daily-dashboard-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.65rem;margin:.75rem 0 1rem}
.daily-dashboard-summary article{display:grid;gap:.1rem;padding:.75rem 1rem;border-radius:10px;border:1px solid var(--line);background:#fff}
.daily-dashboard-summary small{font-weight:900;text-transform:uppercase}.daily-dashboard-summary b{font-size:1.65rem;line-height:1}.daily-dashboard-summary span{font-size:.72rem;color:var(--muted)}
.daily-dashboard-summary .is-success{background:#dff3e5;border-color:#79b98b;color:#287047}.daily-dashboard-summary .is-danger{background:#fde4e1;border-color:#db847c;color:#a63831}.daily-dashboard-summary .is-warning{background:#fff0d8;border-color:#dfa13c;color:#8b5912}.daily-dashboard-summary .is-neutral{background:#edf3f5;color:#405965}
#report-rows tr.daily-target-met{background:#edf9f0}#report-rows tr.daily-target-missed{background:#fff0ed}#report-rows tr.daily-target-outside{background:#f5f7f8;color:#5f6f77}#report-rows tr.daily-attendance-late{box-shadow:inset 5px 0 #d98224}
#report-rows td.daily-visit-cell{background:#e7f3f8;color:#1b6077}#report-rows td.daily-unassigned-cell{background:#fff0d8;color:#8b5912}#report-rows td.daily-other-cell{background:#eee8f7;color:#654587}#report-rows td.daily-runway-cell{background:#e4f4f8;color:#176b80}#report-rows td.daily-leave-cell{background:#fff4c9;color:#755c00}#report-rows td.daily-specialized-cell{background:#e8f4e9;color:#2f7041}#report-rows td.daily-outside-cell{background:#edf1f3;color:#5f6f77}
@media(max-width:850px){.daily-dashboard-summary{grid-template-columns:repeat(2,minmax(140px,1fr))}}
.daily-situation-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.65rem}.daily-situation-cards article{display:grid;gap:.25rem;padding:.8rem;border:1px solid #c8d8df;border-left:5px solid #55b8cb;border-radius:10px;background:#f4f8fa}.daily-situation-cards span{color:#526b7a}
.daily-mode-switch{display:flex;gap:.6rem;margin:1rem 0;padding:.45rem;border-radius:10px;background:#edf3f6}
.daily-mode-switch button{flex:1}.daily-mode-switch button.active{background:#236aa8;color:#fff}
#daily-visit-mode,#daily-technicians-mode{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(420px,1.4fr);gap:1rem;align-items:start;padding:1rem;border:1px solid #d4e0e5;border-radius:10px;background:#f9fbfc}
.daily-visit-selection{display:grid;gap:.65rem}.daily-visit-selection label{display:grid;gap:.35rem;font-weight:800}.daily-visit-selection select,.daily-visit-selection input{width:100%}.daily-visit-selection small{line-height:1.35}
.daily-technician-checks{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr));gap:.45rem;margin-top:.55rem}
.daily-technician-checks label{display:flex;align-items:center;gap:.35rem;padding:.5rem .6rem;border:1px solid #d4e0e5;border-radius:7px;background:#fff;font-weight:600}
.daily-technician-checks input{min-width:0;width:auto}.daily-check-actions{display:flex;gap:.4rem;margin-top:.5rem}.daily-check-actions button{padding:.35rem .55rem;font-size:.72rem}
.daily-generate{display:flex;justify-content:flex-end;margin-top:.8rem}
.daily-result-title{margin:1rem 0 0;padding:.85rem 1rem;border-left:5px solid #55b8cb;border-radius:7px;background:#fff;color:#10283d;box-shadow:var(--shadow)}
@media(max-width:900px){#daily-visit-mode,#daily-technicians-mode{grid-template-columns:1fr}.daily-technician-checks{grid-template-columns:repeat(2,minmax(150px,1fr))}}
.summary-visits{display:flex;flex-direction:column;gap:1.2rem}.summary-visit-block{border-bottom:2px solid var(--navy);padding-bottom:1.2rem}.summary-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.summary-card-heading strong{font-size:1.1rem}.summary-events{margin-top:.65rem}.summary-events h4{margin:.25rem 0 .55rem}.summary-events table{font-size:.8rem}.summary-events th,.summary-events td{padding:.45rem}
.summary-technician-production{margin-top:1rem;padding-top:.85rem;border-top:1px solid #cfdae0}.summary-technician-production h4{margin:0 0 .25rem}.summary-technician-production p{margin:.2rem 0 .65rem}.summary-technician-production table{font-size:.82rem}.summary-technician-production th,.summary-technician-production td{padding:.48rem}.summary-technician-production .visit-productivity-detail-button{text-align:left}
.summary-event-heading{margin-top:1rem;padding-top:.85rem;border-top:2px solid var(--navy)}.summary-event-heading h3{margin:0}.summary-event-heading p{margin:.2rem 0 .75rem}.summary-event-section{margin:.75rem 0;border:1px solid #cbd7de;border-radius:8px;overflow:hidden;break-inside:avoid;page-break-inside:avoid}.summary-event-section>h4{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0;padding:.6rem .75rem;background:#e9f0f3;color:var(--navy);font-size:.92rem;text-transform:uppercase}.summary-event-section>h4 span{display:inline-grid;place-items:center;min-width:1.7rem;height:1.7rem;padding:0 .4rem;border-radius:999px;background:var(--navy);color:#fff}.summary-event-section .muted{margin:.65rem .75rem}.summary-event-section table{font-size:.78rem}.summary-event-section th,.summary-event-section td{padding:.42rem}.summary-event-section td:nth-child(3){white-space:normal;min-width:240px}
.summary-oe-lists{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1rem;padding-top:.85rem;border-top:1px solid #cfdae0}.summary-oe-list{min-width:0;border:1px solid #cbd7de;border-radius:8px;overflow:hidden}.summary-oe-list>h4{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:0;padding:.62rem .75rem;background:#e9f0f3;color:var(--navy)}.summary-oe-list>h4 span{display:inline-grid;place-items:center;min-width:1.7rem;height:1.7rem;padding:0 .4rem;border-radius:999px;background:var(--navy);color:#fff}.summary-oe-list>h4 small{font-size:.76rem;color:var(--muted);white-space:nowrap}.summary-oe-list .muted{margin:.7rem .75rem}.summary-oe-table-wrap{max-height:360px;overflow:auto}.summary-oe-list table{font-size:.78rem}.summary-oe-list th,.summary-oe-list td{padding:.42rem}.summary-oe-list td:nth-child(2){white-space:normal;min-width:190px}.summary-oe-list[data-summary-oe-list="pending"] th:last-child,.summary-oe-list[data-summary-oe-list="pending"] td:last-child{width:1%;white-space:nowrap}.summary-oe-status{display:inline-block;border-radius:999px;padding:.18rem .48rem;font-weight:800;white-space:nowrap;background:#eef2f4}.summary-oe-status-inProgress{background:#fff0cf;color:#8a5600}.summary-oe-status-done{background:#dff2df;color:#28672f}@media(max-width:900px){.summary-oe-lists{grid-template-columns:1fr}}
.summary-oe-status-suspended{background:#fff0cf;color:#8a5600}
@media print{.summary-visits{display:block!important}.summary-visit-block{display:block;margin:0 0 10mm;padding:0 0 7mm}.summary-card{width:100%;break-inside:auto;page-break-inside:auto}.summary-technician-production,.summary-event-section,.summary-oe-list{break-inside:auto;page-break-inside:auto}.summary-technician-production thead,.summary-event-section thead,.summary-oe-list thead{display:table-header-group}.summary-technician-production tr,.summary-event-section tr,.summary-oe-list tr{break-inside:avoid;page-break-inside:avoid}.summary-technician-production .visit-productivity-detail-button{text-decoration:none}.summary-oe-lists{display:block}.summary-oe-list{margin:.8rem 0}.summary-oe-table-wrap{max-height:none;overflow:visible}}
.aero-card.calendar{border-color:#58bcd1}.aero-card.calendar .phase-badge{background:#187d96}.aero-card.calendar .aero-gauge{--gauge-color:#58c8df}.control-card.calendar{border-top:5px solid #58bcd1}
.overtime-tabs{display:flex;gap:.6rem;margin-bottom:1rem}.overtime-request-card,.overtime-list,.overtime-accounting{background:#fff;border-radius:14px;padding:1.2rem;box-shadow:var(--shadow);margin-bottom:1rem}.overtime-request-card h3,.overtime-list h3,.overtime-accounting h3{margin-top:0}.overtime-total{display:flex;align-items:center;gap:1rem;background:#eaf5f8;border-left:5px solid #55b8cb;padding:1rem;margin:1rem 0}.overtime-total small{font-weight:800;color:var(--muted)}.overtime-total b{font-size:1.6rem}.overtime-tech-totals{display:flex;flex-wrap:wrap;gap:.6rem}.overtime-tech-totals span{display:flex;gap:.7rem;background:#edf3f5;border-radius:8px;padding:.7rem 1rem}.overtime-approver-row{border-bottom:1px solid var(--line);padding-bottom:1rem;margin-bottom:1rem}.danger{background:var(--red);color:#fff}
.overtime-anomaly-row td{background:#ffe4e4!important;color:#9f2525;font-weight:800}
.check-selection-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:.65rem 0}.check-selection-actions button{padding:.48rem .8rem}.check-selection-actions span{margin-left:.35rem;color:var(--muted);font-size:.82rem;font-weight:800}
.specialized-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(520px,1fr));gap:1rem}.specialized-card{padding:1rem;border:1px solid #47677c;border-top:5px solid #5ab8cc;border-radius:15px;background:#fff;box-shadow:var(--shadow)}.specialized-card.late{border-top-color:#d95757}.specialized-card>header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d5e1e6;padding-bottom:.7rem}.specialized-card h3{margin:.1rem 0}.specialized-gauge{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;align-content:center;background:radial-gradient(circle at center,#fff 56%,transparent 58%),conic-gradient(#59bcd0 calc(var(--value)*3.6),#dce7eb 0)}.specialized-gauge b{font-size:1.05rem}.specialized-gauge small{font-size:.55rem;color:var(--muted)}.specialized-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:.8rem 0}.specialized-kpis>div{padding:.65rem;border-radius:8px;background:#eef4f6}.specialized-kpis small{display:block;color:var(--muted);font-size:.62rem;font-weight:900}.specialized-kpis b{display:block;margin-top:.18rem}.specialized-team{display:flex;align-items:center;gap:.55rem;padding:.65rem;border-radius:8px;background:#173750;color:#fff}.specialized-team span{display:flex;flex:1;gap:.35rem}.specialized-team i{padding:.28rem .42rem;border:1px solid #e0a73d;border-radius:5px;font-style:normal;font-weight:900}.specialized-orders{margin-top:.8rem;border:1px solid #d5e1e6;border-radius:9px;overflow:hidden}.specialized-order-head,.specialized-order{display:flex;justify-content:space-between;align-items:center;gap:.7rem;padding:.65rem .75rem}.specialized-order-head{background:#e8f0f4}.specialized-order{border-top:1px solid #d5e1e6}.specialized-order>div{display:grid;gap:.18rem}.specialized-order>div:last-child{display:flex;align-items:center;gap:.5rem}.specialized-order small{color:var(--muted)}.order-status{padding:.25rem .4rem;border-radius:5px;background:#dfe8ec;font-size:.65rem;font-weight:900}.order-status.doing{background:#fff0c9;color:#875c13}.order-status.done{background:#ddefe2;color:#2d7448}.specialized-summary-card{border-color:#d19a36!important}.specialized-symbol{font-size:3rem;color:#e0a73d}.specialized-summary{display:grid;gap:.55rem}.specialized-summary>b{font-size:1.3rem}.specialized-summary>div{display:flex;justify-content:space-between;padding:.55rem;border:1px solid #38586e;border-radius:7px}.positive{color:#3f9660!important}.negative{color:#d55353!important}@media(max-width:700px){.specialized-grid{grid-template-columns:1fr}.specialized-kpis{grid-template-columns:1fr 1fr}.specialized-order{align-items:flex-start;flex-direction:column}.specialized-order>div:last-child{flex-wrap:wrap}}
.planning-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.planning-toolbar .production-calendar-filters{flex:1}.planning-export-actions{display:flex;gap:.45rem;margin-bottom:.7rem}.planning-export-actions button{display:inline-flex;align-items:center;gap:.38rem;padding:.62rem .8rem}.planning-export-actions button span{display:grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:4px;background:#173750;color:#fff;font-size:.8rem}
.planning-tabs{display:flex;gap:.6rem;margin-bottom:1rem}.planning-tabs button.active{background:#236aa8;color:#fff}.planning-legend{display:flex;flex-wrap:wrap;gap:.5rem;margin:.65rem 0}.planning-legend span{padding:.35rem .6rem;border-radius:6px;color:#fff;font-size:.72rem;font-weight:900}.planning-legend .visit{background:#2678a4}.planning-legend .runway{background:#bc8128}.planning-legend .other{background:#745aa5}.planning-legend .available{background:#70818c}.technician-planning-row,.technician-planning-load{display:grid;min-width:max-content;border-bottom:1px solid #dce5e9}.technician-planning-row{min-height:58px}.technician-planning-cell,.technician-load-cell{width:82px;min-height:58px;padding:.35rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-left:1px solid #dce5e9;font-size:.64rem;font-weight:900;overflow:hidden}.technician-planning-cell.visit{background:#d9eef7;color:#155572}.technician-planning-cell.runway{background:#f5e4c4;color:#7c5218}.technician-planning-cell.other{background:#e9e1f5;color:#573f7f}.technician-planning-cell.available{background:#edf2f4;color:#667782}.technician-load-cell{background:#f4f8fa}.technician-load-cell b{font-size:.65rem}.technician-load-cell small{font-size:.52rem;color:#607582;margin-top:.15rem}.technician-planning-load .production-calendar-label{min-height:58px}
.planning-legend .productivity-ok{background:#4d9b62}.planning-legend .productivity-loss{background:#c65f86}.technician-planning-row.productivity{min-height:92px}.technician-planning-row.productivity .technician-planning-cell{width:116px;min-height:92px;overflow:visible;gap:.25rem;padding:.4rem}.technician-planning-cell.productivity-ok{background:#dff2e3;color:#27673a}.technician-planning-cell.productivity-loss{background:#f7dce6;color:#8b3152}.technician-planning-cell.productivity-empty{background:#edf2f4;color:#667782}.productivity-entry{display:flex;flex-direction:column;width:100%;padding-bottom:.22rem;border-bottom:1px solid currentColor;line-height:1.1}.productivity-entry:last-of-type{border-bottom:0}.productivity-entry b{font-size:.6rem}.productivity-entry small{font-size:.58rem}.technician-planning-row.productivity .technician-planning-cell>strong{font-size:.62rem;margin-top:.15rem}
.control-display-buttons{display:inline-flex;gap:.35rem;margin-right:.5rem}.control-display-buttons button.active{background:#173750;color:#fff}.production-calendar-shell{background:#fff;border-radius:16px;padding:1rem;box-shadow:var(--shadow)}.production-calendar-filters{display:flex;align-items:end;gap:.7rem;margin-bottom:.7rem}.production-calendar-filters label{display:grid;gap:.25rem;font-size:.75rem;font-weight:800}.production-calendar-summary{margin-left:auto;padding:.65rem 1rem;border-radius:10px;background:#eaf5f8;color:#173750}.production-calendar-legend{display:flex;gap:.55rem;margin:.6rem 0}.production-calendar-legend span{border-left:8px solid;padding:.3rem .55rem;background:#f1f5f7;border-radius:5px;font-size:.72rem;font-weight:800}.production-calendar-legend .late{border-color:#e45656}.production-calendar-legend .ahead{border-color:#6eb467}.production-calendar-legend .calendar{border-color:#58bcd1}.production-calendar-legend .closed{border-color:#8c9ba5}.production-calendar-scroll{overflow:auto;border:1px solid #d6e2e7;border-radius:12px;background:#f8fbfc}.production-calendar-header,.production-calendar-load,.production-calendar-row{display:grid;min-width:max-content}.production-calendar-header{position:sticky;top:0;z-index:3;background:#173750;color:#fff}.production-calendar-corner,.production-calendar-label{position:sticky;left:0;z-index:2;width:250px;padding:.65rem .8rem;border-right:1px solid #d5e1e6;background:#fff}.production-calendar-corner{background:#173750;color:#fff;font-size:.72rem;font-weight:900;letter-spacing:.08em}.production-calendar-day{width:34px;display:grid;place-items:center;padding:.25rem 0;border-left:1px solid #31536a}.production-calendar-day small{font-size:.55rem;text-transform:uppercase}.production-calendar-day.weekend{background:#102c40;color:#91a9b8}.production-calendar-load{border-bottom:1px solid #dce5e9}.production-calendar-label{display:flex;flex-direction:column;justify-content:center}.production-calendar-label span{font-size:.7rem;color:#607582;margin-top:.15rem}.production-load-cell{width:34px;min-height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid #e1e8eb;background:color-mix(in srgb,#e45a55 calc(var(--load)*75%),#e9f6ef)}.production-load-cell b{font-size:.8rem}.production-load-cell small{font-size:.52rem}.production-calendar-row{min-height:62px;border-bottom:1px solid #dce5e9;position:relative}.production-calendar-track{display:grid;grid-template-columns:repeat(121,34px);align-items:center;background:repeating-linear-gradient(90deg,transparent 0,transparent 33px,#e6edf0 33px,#e6edf0 34px)}.production-visit-bar{height:42px;margin:0 3px;border-radius:8px;padding:.35rem .55rem;color:#fff;overflow:hidden;display:flex;flex-direction:column;justify-content:center;box-shadow:0 4px 10px #18384c2c;z-index:1}.production-visit-bar b,.production-visit-bar span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.production-visit-bar b{font-size:.75rem}.production-visit-bar span{font-size:.58rem;opacity:.9}.production-visit-bar.late{background:linear-gradient(90deg,#c74747,#e36a61)}.production-visit-bar.ahead{background:linear-gradient(90deg,#438d62,#75b86f)}.production-visit-bar.calendar{background:linear-gradient(90deg,#237f9a,#59bfd0)}.production-visit-bar.closed{background:linear-gradient(90deg,#667986,#96a4ac)}@media(max-width:800px){.production-calendar-filters{flex-wrap:wrap}.production-calendar-summary{width:100%;margin-left:0}.control-display-buttons{display:flex;margin:0 0 .5rem}}
/* Affectation visuelle des techniciens dans la production specialisee. */
.specialized-summary-row{display:flex!important;justify-content:space-between!important;align-items:center;gap:.6rem;padding:.55rem;border:1px solid #38586e;border-radius:7px;transition:.15s}
.specialized-summary-row.staffing-drop-active{border-color:#f2ae38;background:#23465e;box-shadow:0 0 0 2px #f2ae3855}
.specialized-summary-row>span{display:grid;gap:.12rem}.specialized-summary-row>span small{color:#b9d1de}
.specialized-summary-row>em{display:flex;justify-content:flex-end;gap:.3rem;flex-wrap:wrap;font-style:normal}
.specialized-summary-row .staffing-chip{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:.32rem .48rem;border:1px solid #f2ae38;border-radius:5px;background:#102b3e;color:#fff;font-weight:900;cursor:grab}
@media(max-width:700px){.specialized-summary-row{align-items:flex-start;flex-direction:column}}
.specialized-gauge{background:radial-gradient(circle at center,#fff 56%,transparent 58%),conic-gradient(#35a866 calc(var(--progress,0)*3.6deg),#dce7eb 0);color:#17354b}
.specialized-summary-row[role="button"]{cursor:pointer}.specialized-summary-row[role="button"]:hover,.specialized-summary-row[role="button"]:focus-visible{border-color:#66c7d9;background:#183d55;box-shadow:0 0 0 2px #66c7d944;outline:0}.specialized-detail-grid{grid-template-columns:minmax(0,1100px);justify-content:center}.specialized-team-readonly{padding:.75rem 1rem}.specialized-type-workspace{max-width:1000px;margin:auto;padding:1.2rem;border-radius:15px;background:#fff;box-shadow:var(--shadow)}.specialized-type-workspace>div:first-child{margin-bottom:1rem}.specialized-type-workspace h3{margin:0 0 .25rem}
.specialized-type-manager{display:grid;gap:1.2rem}.specialized-type-manager h3{margin:0 0 .25rem}.specialized-type-list{display:grid;gap:.55rem;max-height:42vh;overflow:auto}.specialized-type-list article{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;border:1px solid #d2dfe5;border-radius:9px;background:#f3f7f9}.specialized-type-list article>div{display:flex;flex-direction:column;gap:.18rem}.specialized-type-list article span{color:var(--muted)}.specialized-type-create{padding-top:1rem;border-top:2px solid #d6e2e7}
.oe-catalog-panel{margin-top:1.5rem;border-top:1px solid #d7e0e5;padding-top:1.2rem}.oe-section-head,.oe-manager-head,.oe-review-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.oe-section-head h4{font-size:1.15rem;margin:0}.oe-section-head p,.oe-manager-head span,.oe-review-summary span{display:block;color:#657680;margin:.25rem 0 0}.oe-table-wrap,.oe-review-table{overflow:auto;max-height:430px;border:1px solid #d7e0e5;border-radius:10px;background:#fff}.oe-table-wrap table,.oe-review-table table{min-width:760px;box-shadow:none}.oe-table-wrap td{white-space:normal}.oe-table-wrap td:nth-child(2){min-width:260px}.oe-table-wrap td small{display:block;color:#bd3e3e;margin-top:.2rem}.oe-cancelled{opacity:.62;background:#f4f5f6}.oe-missing,.oe-warning{color:#bd3e3e;font-weight:700}.compact{padding:.45rem .65rem;font-size:.78rem}.danger{background:#bd3e3e}.oe-import-history{margin-top:1rem}.oe-import-history>div{display:flex;justify-content:space-between;gap:1rem;padding:.65rem;border-bottom:1px solid #e7ecef}.oe-import-history span{color:#657680}.file-drop{display:grid;gap:.55rem;border:2px dashed #8fb4ca;border-radius:12px;padding:1.4rem;margin-top:1rem;background:#f4f9fc;font-weight:800}.file-drop span{color:#657680;font-size:.85rem;font-weight:500}.oe-import-intro{border-left:4px solid #2f78b7;padding:.1rem 1rem;background:#eef6fb}.oe-review-summary>div{display:flex;flex-direction:column}.oe-review-table{max-height:48vh}.oe-review-table input{min-width:120px;width:100%}.oe-review-table td:nth-child(2) input{min-width:320px}.oe-review-table input.invalid{border:2px solid #cf3f3f;background:#fff2f2}.oe-import-options{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}.oe-import-options label{font-weight:700}.oe-import-options input,.oe-import-options select{display:block;width:100%;margin-top:.35rem}.oe-dialog{width:min(1180px,96vw);max-width:none;padding:1.4rem}.oe-dialog .modal-head{border-bottom:1px solid #d7e0e5;padding-bottom:1rem}.oe-dialog #oe-dialog-content{padding-top:1rem}.oe-editor{max-width:760px;margin:auto}.oe-manager-head>div{display:flex;flex-direction:column}
.control-detail-row.oe-suspended{border-left:5px solid var(--amber);background:#fff8e8}.control-detail-row.oe-suspended>span{display:flex;align-items:center;justify-content:flex-end;gap:.65rem}.control-detail-row.oe-suspended button{white-space:nowrap}
.airport-code-result{align-self:end;border-radius:10px;padding:.75rem .9rem;font-size:.88rem;font-weight:700;line-height:1.35}.airport-code-result.matched{background:#e6f5eb;border:1px solid #78b98e;color:#165d32}.airport-code-result.unmatched{background:#fff4e2;border:1px solid #d7a24e;color:#765018}.airport-code-result.loading{background:#edf5fa;border:1px solid #8eb5cb;color:#315d75}.airport-code-result.muted{background:#f2f5f7;border:1px solid #d7e0e5;color:#657680}
.calculated-duration,.visit-oe-summary{display:flex;flex-direction:column;justify-content:center;gap:.25rem;padding:.72rem;border:1px solid #cad6db;border-radius:8px;background:#f4f8fa}.calculated-duration small,.visit-oe-summary span{color:#657680;font-weight:700}.calculated-duration b,.visit-oe-summary b{font-size:1.05rem}.calculated-duration.incomplete,.visit-oe-summary.incomplete,.visit-oe-summary.invalid{border:2px solid #cf3f3f;background:#fff2f2;color:#a52f2f}.calculated-duration.incomplete span,.visit-oe-summary.incomplete span,.visit-oe-summary.invalid span{color:#a52f2f}.duration-entry.invalid{padding:.35rem;border:2px solid #cf3f3f;border-radius:8px;background:#fff2f2}.oe-review-table .duration-entry{min-width:230px}.oe-review-table .duration-entry input{min-width:62px}.oe-review-table .duration-entry span{min-width:90px}
.form-grid label.simple-check{flex-direction:row;align-items:center;justify-content:flex-start;gap:.6rem}.form-grid label.simple-check input[type="checkbox"]{width:auto;flex:0 0 auto;margin:0}
@media(max-width:760px){.oe-section-head,.oe-manager-head,.oe-review-summary,.oe-import-history>div{align-items:stretch;flex-direction:column}.oe-import-options{grid-template-columns:1fr}.oe-dialog{width:98vw}.oe-table-wrap,.oe-review-table{max-height:55vh}}
.planning-assignment{display:block;width:100%;padding:.12rem 0;border-bottom:1px solid currentColor}.planning-assignment:last-child{border-bottom:0}.visit-productivity-summaries{margin-top:1.4rem;padding-top:1rem;border-top:2px solid #cbdce5}.visit-productivity-summary{margin-top:1rem}.visit-productivity-summary h4{margin:.4rem 0}.visit-productivity-summary th small{display:block;margin-top:.2rem;font-weight:500}.visit-productivity-summary th.visit-leader{background:#d98224}.visit-productivity-summary td{text-align:center}.visit-productivity-summary td.target-reached{background:#dff2e3;color:#27673a;font-weight:900}.visit-productivity-summary .summary-total{background:#e8f0f4;font-weight:900}
.visit-productivity-detail-button{width:100%;min-width:72px;padding:.55rem .3rem;border:0;background:transparent;color:inherit;font:inherit;font-weight:900;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}.visit-productivity-detail-button:hover,.visit-productivity-detail-button:focus-visible{background:#dcecf3;color:#173750;outline:2px solid #277ba1}.productivity-detail-dialog{width:min(1120px,96vw);max-width:none}.productivity-detail-report>header h2{margin:.2rem 0}.productivity-detail-report>header p:last-child{margin:.2rem 0;color:var(--muted);font-weight:800}.productivity-detail-status{margin:.9rem 0;padding:.8rem 1rem;border-left:5px solid #55b8cb;border-radius:8px;background:#eaf5f8;font-weight:900}.productivity-detail-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:.55rem}.productivity-detail-kpis>div{display:grid;gap:.18rem;padding:.75rem;border-radius:8px;background:#eef4f6}.productivity-detail-kpis small{color:var(--muted);font-weight:900}.productivity-detail-kpis b{font-size:1.15rem}.productivity-detail-kpis span{font-size:.72rem}.productivity-detail-kpis .warning{background:#fff0e7;color:#a44527}.productivity-detail-rule{margin:.8rem 0;padding:.7rem;border-left:4px solid #d49a35;background:#fff8e8}.productivity-detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.productivity-detail-columns section,.productivity-detail-report>section{padding:.8rem;border:1px solid #d4e0e5;border-radius:9px}.productivity-detail-columns h3,.productivity-detail-report>section h3{margin:.1rem 0 .6rem}.productivity-detail-columns ul{margin:.2rem 0;padding-left:1.2rem}.productivity-detail-columns li{margin:.35rem 0}.productivity-detail-report tr.selected{background:#e3f2e7;font-weight:900}.productivity-detail-dialog .modal-actions{position:sticky;bottom:0;padding-top:.8rem;background:#fff}@media(max-width:760px){.productivity-detail-kpis{grid-template-columns:1fr 1fr}.productivity-detail-columns{grid-template-columns:1fr}.productivity-detail-dialog{width:98vw}}
.production-calendar-day b{font-size:.72rem;white-space:nowrap}
