.related-row{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line)}
.absence-modal,.absence-form-modal{overflow-x:hidden}
.agenda-support-label{margin-top:2px!important;color:#2d6d9f!important;font-size:6px!important;font-weight:850}.agenda-support-modal{width:min(680px,calc(100vw - 28px));padding:24px;overflow-x:hidden}.agenda-support-heading{display:grid;grid-template-columns:52px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:12px;padding-right:28px}.agenda-support-heading>span{display:grid;place-items:center;width:52px;height:48px;border-radius:12px;background:#e5eff7;color:#286493;font-size:11px;font-weight:950}.agenda-support-heading small{color:#2b689d;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.agenda-support-heading h2{margin:3px 0 0;font-size:19px}.agenda-support-heading p{margin:3px 0 0;color:#71808b;font-size:9px}.agenda-support-primary{display:grid;grid-template-columns:70px minmax(0,1fr);gap:10px;align-items:center;margin-bottom:10px;padding:11px 13px;border:1px solid #c9dbe8;border-radius:10px;background:#eef5fa}.agenda-support-primary>span{color:#2b6799;font-size:8px;font-weight:900;text-transform:uppercase}.agenda-support-primary strong,.agenda-support-primary small{display:block}.agenda-support-primary strong{font-size:10px}.agenda-support-primary small{margin-top:3px;color:#687c89;font-size:8px}.agenda-support-team{overflow:hidden;border:1px solid #dce4e9;border-radius:11px}.agenda-support-team>header{display:flex;align-items:center;justify-content:space-between;padding:11px 12px;background:#f6f8f9}.agenda-support-team h3{margin:0;font-size:10px}.agenda-support-team header p{margin:3px 0 0;color:#71808b;font-size:8px}.agenda-support-team header b{font-size:8px}.agenda-support-team>label{display:grid;grid-template-columns:18px 36px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 12px;border-top:1px solid #e2e8eb;cursor:pointer}.agenda-support-team>label.blocked{background:#f7f8f9;opacity:.72}.agenda-support-team input{width:auto;min-height:0;accent-color:#27689d}.agenda-support-team .profile-avatar{width:36px;height:33px}.agenda-support-team strong,.agenda-support-team small{display:block}.agenda-support-team strong{font-size:9px}.agenda-support-team small{margin-top:3px;color:#71808b;font-size:7px}.agenda-support-scope{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;margin:10px 0;padding:10px 12px;border-left:3px solid #2b6b9f;border-radius:0 9px 9px 0;background:#eef5fa}.agenda-support-scope>span{display:grid;place-items:center;width:34px;height:31px;border-radius:8px;background:#fff;color:#27689d;font-weight:900}.agenda-support-scope strong{font-size:9px}.agenda-support-scope p{margin:3px 0 0;color:#637784;font-size:8px}.support-ready-route .professional-route-stops>article>header{grid-template-columns:42px minmax(0,1fr) auto auto}.professional-route-stops>article.joint-visit{border-color:#adc9dc}.professional-route-stops>article.joint-visit>header{background:#eef5fa}.route-support-button{white-space:nowrap}
.visit-move-modal{width:min(760px,calc(100vw - 28px));padding:24px;overflow-x:hidden}.visit-move-heading{display:grid;grid-template-columns:52px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:13px;padding-right:28px}.visit-move-heading>span{display:grid;place-items:center;width:52px;height:48px;border-radius:12px;background:#e5eff7;color:#286493;font-size:19px;font-weight:900}.visit-move-heading small{color:#2b689d;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.visit-move-heading h2{margin:3px 0 0;font-size:19px}.visit-move-heading p{margin:3px 0 0;color:#71808b;font-size:9px}.visit-move-summary{display:grid;grid-template-columns:1fr 34px 1fr;gap:9px;align-items:center;padding:12px;border:1px solid #d9e3e9;border-radius:11px;background:#f7f9fa}.visit-move-summary span,.visit-move-summary strong,.visit-move-summary small{display:block}.visit-move-summary span{color:#6e7f89;font-size:7px;font-weight:850;text-transform:uppercase}.visit-move-summary strong{margin-top:4px;font-size:10px}.visit-move-summary small{margin-top:3px;color:#71808b;font-size:8px}.visit-move-summary>b{text-align:center;color:#2b689d;font-size:18px}.visit-move-question{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;margin:10px 0;padding:11px 12px;border-left:3px solid #2b6b9f;border-radius:0 9px 9px 0;background:#eef5fa}.visit-move-question>span{display:grid;place-items:center;width:38px;height:35px;border-radius:9px;background:#fff;color:#28689c;font-size:16px;font-weight:900}.visit-move-question strong{font-size:9px}.visit-move-question p{margin:3px 0 0;color:#637784;font-size:8px;line-height:1.45}.visit-move-list{display:grid;gap:6px;max-height:280px;margin:10px 0;overflow:auto}.visit-move-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 11px;border:1px solid #dfe6ea;border-radius:9px}.visit-move-list strong,.visit-move-list small{display:block}.visit-move-list strong{font-size:9px}.visit-move-list small{margin-top:3px;color:#71808b;font-size:7px}.visit-move-actions{flex-wrap:wrap}.visit-move-actions>button:first-child{margin-right:auto}
@media(max-width:620px){.visit-move-modal{padding:17px}.visit-move-heading{grid-template-columns:44px minmax(0,1fr)}.visit-move-heading>span{width:44px;height:42px}.visit-move-summary{grid-template-columns:1fr}.visit-move-summary>b{transform:rotate(90deg)}.visit-move-actions{display:grid;grid-template-columns:1fr}.visit-move-actions button{width:100%;margin:0}}
@media(max-width:680px){.agenda-support-modal{padding:17px}.agenda-support-heading{grid-template-columns:44px minmax(0,1fr)}.agenda-support-heading>span{width:44px;height:42px}.agenda-support-team>label{grid-template-columns:18px 34px minmax(0,1fr)}.agenda-support-team>label>.badge{grid-column:3;justify-self:start}.support-ready-route .professional-route-stops>article>header{grid-template-columns:38px minmax(0,1fr)}.support-ready-route .professional-route-stops>article>header>button{grid-column:2;width:100%}}
.coordinated-work>.section-head,.potential-related>.section-head{align-items:flex-start}.coordinated-work>.section-head p,.potential-related>.section-head p{margin:3px 0 0;color:var(--muted);font-size:8px}.coordinated-work-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border-top:1px solid var(--line)}.coordinated-work-row>button{display:grid;gap:3px;min-width:0;padding:10px 0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.coordinated-work-row strong,.coordinated-work-row small{display:block}.coordinated-work-row strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.coordinated-work-row small{color:var(--muted);font-size:8px}.potential-related .text-button.linked{color:#1d744b}.potential-related .empty-state{padding-block:13px}
.incident-photo-gallery{margin:13px 0;padding:12px;border:1px solid #dbe4e9;border-radius:11px;background:#f7f9fa}.incident-photo-gallery>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.incident-photo-gallery header span{display:block;color:#2b689d;font-size:7px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.incident-photo-gallery h3{margin:3px 0 0;font-size:11px}.incident-photo-gallery header b{display:grid;place-items:center;min-width:25px;height:24px;border-radius:7px;background:#e4edf5;color:#286494;font-size:8px}.incident-photo-gallery>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.incident-photo-gallery button{position:relative;overflow:hidden;min-width:0;aspect-ratio:4/3;padding:0;border:1px solid #cedae2;border-radius:9px;background:#e9eef1;cursor:pointer}.incident-photo-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .18s}.incident-photo-gallery button:hover img{transform:scale(1.04)}.incident-photo-gallery button span{position:absolute;right:5px;bottom:5px;padding:4px 6px;border-radius:6px;background:rgba(21,39,52,.82);color:#fff;font-size:7px;font-weight:850}.incident-photo-unavailable{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;margin:12px 0;padding:10px 12px;border-radius:9px;background:#f1f4f6;color:#647682}.incident-photo-unavailable>span{display:grid;place-items:center;width:38px;height:34px;border-radius:8px;background:#fff;color:#536b7a;font-size:7px;font-weight:900}.incident-photo-unavailable p{margin:0;font-size:8px;line-height:1.45}
@media(max-width:600px){.incident-photo-gallery>div{grid-template-columns:repeat(2,minmax(0,1fr))}.incident-photo-gallery{padding:10px}}
.agenda-absence-button{gap:7px!important}.agenda-absence-button>span{display:grid;place-items:center;width:25px;height:22px;border-radius:6px;background:#fff1d7;color:#986515;font-size:12px}.agenda-day-cell.has-absence{background:#fffaf0}.agenda-absence-chip{display:grid!important;grid-template-columns:26px minmax(0,1fr);gap:2px 7px;align-items:center;width:100%;padding:8px!important;border:1px solid #ead5a9!important;border-radius:8px!important;background:#fff6e4!important;color:#70511d!important;text-align:left!important}.agenda-absence-chip>span{grid-row:1/3;display:grid;place-items:center;width:26px;height:25px;border-radius:7px;background:#fff;color:#a16d17;font-size:11px}.agenda-absence-chip strong,.agenda-absence-chip small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-absence-chip strong{font-size:8px}.agenda-absence-chip small{color:#89724b;font-size:6px}.agenda-absence-chip.conflict{border-color:#e1a7a9!important;background:#fff0f0!important;color:#96383d!important}.agenda-absence-chip.conflict>span{color:#b03d43}.month-absence{display:flex;align-items:center;gap:4px;width:calc(100% - 8px);margin:4px;padding:5px 6px;border:1px solid #ead4a7;border-radius:6px;background:#fff5e1;color:#815d20;font-size:7px;font-weight:800;text-align:left}.mobile-absence-row{display:grid;grid-template-columns:minmax(80px,.55fr) minmax(0,1fr);gap:8px;align-items:center;margin:7px 0}.mobile-absence-row>strong{font-size:8px}.absence-modal{width:min(760px,calc(100vw - 28px));padding:24px}.absence-heading{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:13px;padding-right:28px}.absence-heading>span,.absence-form-heading>span{display:grid;place-items:center;width:52px;height:48px;border-radius:12px;background:#fff0d7;color:#986515;font-size:20px}.absence-heading small,.absence-form-heading small{color:#74684d;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.absence-heading h2,.absence-form-heading h2{margin:3px 0 0;font-size:19px}.absence-heading p,.absence-form-heading p{margin:3px 0 0;color:#71808a;font-size:8px}.absence-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:11px}.absence-summary>div{padding:11px;border:1px solid #dce4e9;border-radius:9px;background:#f7f9fa}.absence-summary span,.absence-summary strong{display:block}.absence-summary span{color:#6d7d88;font-size:7px;text-transform:uppercase}.absence-summary strong{margin-top:4px;font-size:15px}.absence-list{overflow:hidden;border:1px solid #dce4e9;border-radius:11px}.absence-list>article{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:11px 12px;border-bottom:1px solid #e2e8eb}.absence-list>article:last-child{border-bottom:0}.absence-person{display:grid;place-items:center;width:38px;height:35px;border-radius:9px;background:#e8eef3;color:#536d7d;font-size:8px;font-weight:900}.absence-list strong,.absence-list small,.absence-list p{display:block;margin:0}.absence-list small{color:#9a6a1c;font-size:7px;font-weight:850;text-transform:uppercase}.absence-list strong{margin-top:3px;font-size:9px}.absence-list p{margin-top:3px;color:#71808b;font-size:7px}.absence-form-modal{width:min(620px,calc(100vw - 28px));padding:24px}.absence-form-heading{display:grid;grid-template-columns:52px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:14px;padding-right:28px}.absence-conflict-heading{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:12px;padding-right:28px}.absence-conflict-heading>span{display:grid;place-items:center;width:48px;height:44px;border-radius:11px;background:#fae8e8;color:#aa3b41;font-size:19px;font-weight:900}.absence-conflict-heading small{color:#a53b40;font-size:8px;font-weight:850;text-transform:uppercase}.absence-conflict-heading h2{margin:3px 0 0;font-size:18px}.absence-conflict-heading p{margin:3px 0 0;color:#6f7f89;font-size:8px}.absence-conflict-list{overflow:hidden;margin:10px 0;border:1px solid #e2c9ca;border-radius:9px}.absence-conflict-list>button{display:grid;gap:3px;width:100%;padding:9px 11px;border:0;border-bottom:1px solid #ead9da;background:#fff;color:#263844;text-align:left}.absence-conflict-list>button:last-child{border-bottom:0}.absence-conflict-list strong{font-size:8px}.absence-conflict-list small{color:#71808b;font-size:7px}
@media(max-width:680px){.agenda-command-actions .agenda-absence-button{order:6;flex:1 1 100%;justify-content:center}.absence-modal,.absence-form-modal{padding:17px}.absence-heading{grid-template-columns:44px minmax(0,1fr)}.absence-heading>span,.absence-form-heading>span{width:44px;height:42px}.absence-heading>button{grid-column:1/-1;width:100%}.absence-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.absence-list>article{grid-template-columns:36px minmax(0,1fr)}.absence-list>article>.badge,.absence-list>article>.text-danger{grid-column:2;justify-self:start}.mobile-absence-row{grid-template-columns:1fr}.absence-form-heading{grid-template-columns:44px minmax(0,1fr)}}
.agenda-group-list>label>input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;opacity:0;pointer-events:none}
.incident-photo-unavailable{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:13px 14px;border:1px solid #dce4e9;border-radius:11px;background:#f5f7f8}.incident-photo-unavailable>div{min-width:0}.incident-photo-unavailable span{display:block;margin-bottom:3px;color:#263746;font-size:9px;font-weight:850}.incident-photo-unavailable p{margin:0;font-size:8px;line-height:1.45}.incident-photo-unavailable button{flex:0 0 auto;min-height:34px;padding:0 12px;font-size:8px}.photo-restore-heading{display:flex;gap:13px;align-items:center;margin-bottom:20px}.photo-restore-heading>span{display:grid;place-items:center;width:45px;height:45px;border-radius:13px;background:#e8f0f8;color:#23609a;font-size:18px}.photo-restore-heading small{color:#2b689d;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.photo-restore-heading h2{margin:3px 0;font-size:20px}.photo-restore-heading p,.photo-restore-note{margin:0;color:#677884;font-size:10px;line-height:1.5}.photo-restore-note{padding:12px;border-radius:9px;background:#f4f7f9}
@media(max-width:600px){.incident-photo-unavailable{align-items:stretch;flex-direction:column}.incident-photo-unavailable button{width:100%}}
.agenda-task-evidence{margin:12px 0;padding:13px;border:1px solid #d8e2e8;border-radius:11px;background:#f7f9fa}.agenda-task-evidence>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.agenda-task-evidence small{display:block;color:#2b689d;font-size:8px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.agenda-task-evidence h3{margin:3px 0 0;font-size:11px}.agenda-task-evidence header b{display:grid;place-items:center;min-width:28px;height:27px;border-radius:8px;background:#e4edf5;color:#286494;font-size:9px}.agenda-evidence-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.agenda-evidence-grid button{position:relative;overflow:hidden;min-width:0;aspect-ratio:4/3;padding:0;border:1px solid #cedae2;border-radius:9px;background:#e9eef1;cursor:pointer}.agenda-evidence-grid img{width:100%;height:100%;object-fit:cover}.agenda-evidence-grid span{position:absolute;right:5px;bottom:5px;padding:4px 6px;border-radius:6px;background:rgba(21,39,52,.84);color:#fff;font-size:7px;font-weight:850}.agenda-task-evidence.unavailable{background:#f5f7f8}.agenda-task-evidence.unavailable p{margin:0 0 10px;color:#677884;font-size:9px;line-height:1.5}.agenda-task-evidence.unavailable>button{width:100%}
@media(max-width:600px){.agenda-evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.absence-resolution-modal{width:min(780px,calc(100vw - 28px));padding:24px;overflow-x:hidden}.absence-resolution-heading{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:12px;padding-right:28px}.absence-resolution-heading>span{display:grid;place-items:center;width:50px;height:46px;border-radius:12px;background:#fff0d9;color:#976419;font-size:20px;font-weight:900}.absence-resolution-heading small{color:#8b641f;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.absence-resolution-heading h2{margin:3px 0;font-size:19px}.absence-resolution-heading p{margin:0;color:#6d7d88;font-size:9px}.absence-resolution-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:10px}.absence-resolution-summary>div{padding:10px 12px;border:1px solid #dce4e9;border-radius:9px;background:#f7f9fa}.absence-resolution-summary span,.absence-resolution-summary strong{display:block}.absence-resolution-summary span{color:#6f7f89;font-size:7px;text-transform:uppercase}.absence-resolution-summary strong{margin-top:4px;font-size:15px}.absence-resolution-guidance{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;align-items:center;padding:9px 11px;border-left:3px solid #2b689d;background:#eef5fa}.absence-resolution-guidance>span{display:grid;place-items:center;width:28px;height:27px;border-radius:7px;background:#fff;color:#2b689d;font-weight:900}.absence-resolution-guidance p{margin:0;color:#526c7d;font-size:8px;line-height:1.45}.absence-resolution-toolbar{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:8px 10px;border:1px solid #dce4e9;border-radius:9px 9px 0 0;background:#f5f7f8}.absence-resolution-toolbar label{display:flex;align-items:center;gap:7px;font-size:8px;font-weight:800}.absence-resolution-toolbar input,.absence-resolution-list input{width:auto;min-height:0;accent-color:#28689c}.absence-resolution-toolbar strong{font-size:8px}.absence-resolution-list{max-height:275px;overflow:auto;border:1px solid #dce4e9;border-top:0;border-radius:0 0 9px 9px}.absence-resolution-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 11px;border-bottom:1px solid #e3e9ec}.absence-resolution-list>article:last-child{border-bottom:0}.absence-resolution-list label{display:grid;grid-template-columns:18px 27px minmax(0,1fr);gap:8px;align-items:center;min-width:0}.absence-task-check{display:grid;place-items:center;width:27px;height:26px;border-radius:7px;background:#e8f0f6;color:#28689c;font-size:8px;font-weight:900}.absence-resolution-list strong,.absence-resolution-list small,.absence-resolution-list p{display:block;margin:0}.absence-resolution-list strong{font-size:9px}.absence-resolution-list small{margin-top:3px;color:#687b88;font-size:7px}.absence-resolution-list p{margin-top:3px;color:#8a641f;font-size:7px}.absence-resolution-list .text-button{font-size:7px;white-space:nowrap}.absence-reassign-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:10px;padding:11px;border:1px solid #cedde7;border-radius:10px;background:#f1f6fa}.absence-reassign-box label{margin:0}.absence-reassign-box button{min-height:42px}.absence-resolution-actions{justify-content:space-between}.absence-resolution-empty{text-align:center;padding:28px 10px}.absence-resolution-empty>span{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 10px;border-radius:50%;background:#e6f5ed;color:#198453;font-size:21px}.absence-resolution-empty h3{margin:0}.absence-resolution-empty p{color:#6d7d88}.absence-manage-tasks{white-space:nowrap}.absence-resolution-ready .absence-list>article{grid-template-columns:38px minmax(0,1fr) auto auto auto}
@media(max-width:680px){.absence-resolution-modal{padding:17px}.absence-resolution-heading{grid-template-columns:43px minmax(0,1fr)}.absence-resolution-heading>span{width:43px;height:41px}.absence-resolution-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.absence-resolution-list>article{grid-template-columns:1fr}.absence-resolution-list .text-button{justify-self:start;margin-left:53px}.absence-reassign-box{grid-template-columns:1fr}.absence-resolution-actions{display:grid;grid-template-columns:1fr}.absence-resolution-actions button{width:100%}.absence-resolution-ready .absence-list>article{grid-template-columns:36px minmax(0,1fr)}.absence-resolution-ready .absence-manage-tasks{grid-column:2;width:100%}}
.agenda-notice-top>span{display:grid;place-items:center;width:25px;height:23px;border-radius:7px;background:#e3f3ea;color:#176f43;font-size:7px;font-weight:950}.agenda-notice-top:hover{border-color:#b9d9c8;background:#f4faf7}.agenda-command{align-items:center;padding:19px 21px}.agenda-period-nav{display:grid;grid-template-columns:40px 72px 40px;gap:7px}.agenda-period-nav button{min-height:40px;padding:0;font-size:10px}.agenda-period-nav button:first-child,.agenda-period-nav button:last-child{font-size:18px}.agenda-management-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;margin:0 0 12px;padding:11px 12px;border:1px solid #dce4e9;border-radius:11px;background:#fff;box-shadow:0 5px 18px rgba(23,33,43,.035)}.agenda-management-bar>summary{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;min-width:0;list-style:none;cursor:pointer}.agenda-management-bar>summary::-webkit-details-marker{display:none}.agenda-management-bar>summary>span{display:grid;place-items:center;width:34px;height:32px;border-radius:8px;background:#e9f1f7;color:#2b6799}.agenda-management-bar>summary .icon{width:17px;height:17px}.agenda-management-bar>summary strong,.agenda-management-bar>summary small{display:block}.agenda-management-bar>summary strong{font-size:10px}.agenda-management-bar>summary small{margin-top:3px;color:#71808b;font-size:8px}.agenda-management-bar>summary>b{display:none;color:#758590;font-size:14px}.agenda-management-actions{display:flex;gap:8px;align-items:center}.agenda-management-actions button{min-height:40px;white-space:nowrap}.agenda-management-actions .agenda-absence-button{order:2}.agenda-management-actions .agenda-print-button{order:1}.agenda-management-actions .primary{order:3}.agenda-management-actions .primary b{display:grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:#fff;color:#225d97;font-size:7px}.agenda-toolbar{margin-top:0}.agenda-toolbar+.professional-week-agenda,.agenda-toolbar+.mobile-agenda-list,.agenda-toolbar+.month-agenda,.agenda-toolbar+.year-agenda{margin-top:0}
@media(max-width:820px){.agenda-command{align-items:center;flex-direction:row}.agenda-management-bar{grid-template-columns:1fr auto}.agenda-management-actions{flex-wrap:wrap;justify-content:flex-end}.agenda-management-actions button{flex:1 1 auto}.top-actions:has(.agenda-notice-top){grid-template-columns:minmax(0,1fr) repeat(3,38px)}}
@media(max-width:600px){.agenda-command{align-items:stretch;flex-direction:column;padding:15px}.agenda-period-nav{grid-template-columns:42px minmax(0,1fr) 42px}.agenda-management-bar{display:block;padding:0;overflow:hidden}.agenda-management-bar>summary{padding:11px 12px}.agenda-management-bar>summary>b{display:block;transition:transform .18s}.agenda-management-bar[open]>summary>b{transform:rotate(180deg)}.agenda-management-actions{display:grid;grid-template-columns:1fr;gap:7px;padding:0 11px 11px}.agenda-management-actions button{width:100%}.top-actions:has(.agenda-notice-top){display:grid;grid-template-columns:repeat(3,38px);justify-content:end}.top-actions:has(.agenda-notice-top) .restaurant-filter,.top-actions:has(.agenda-notice-top) .organization-top-switch{grid-column:1/-1;width:100%;max-width:none}.top-actions:has(.agenda-notice-top) .agenda-notice-top{grid-column:1}.top-actions:has(.agenda-notice-top) .assistant-top-button{grid-column:2}.top-actions:has(.agenda-notice-top)>button[data-action="notifications"]{grid-column:3}}
@media print{body.printing-agenda .agenda-management-bar{display:none!important}}
.agenda-other-stop-modal,.professional-route-modal{overflow-x:hidden}
.agenda-remainder-modal{width:min(700px,calc(100vw - 28px));padding:24px;overflow-x:hidden}.agenda-remainder-heading{display:grid;grid-template-columns:52px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:13px;padding-right:28px}.agenda-remainder-heading>span{display:grid;place-items:center;width:52px;height:48px;border-radius:12px;background:#fff0d7;color:#986315;font-size:18px;font-weight:900}.agenda-remainder-heading.schedule>span{background:#e5f0f8;color:#27689d}.agenda-remainder-heading small{color:#6e7f89;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.agenda-remainder-heading h2{margin:3px 0 0;font-size:19px}.agenda-remainder-heading p{margin:4px 0 0;color:#6f808b;font-size:9px}.agenda-remainder-question{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;align-items:center;padding:12px 13px;border-left:3px solid #c38a28;border-radius:0 10px 10px 0;background:#fff8e9}.agenda-remainder-question>span{display:grid;place-items:center;width:38px;height:35px;border-radius:9px;background:#fff;color:#a26e18;font-size:18px}.agenda-remainder-question strong{font-size:10px}.agenda-remainder-question p{margin:3px 0 0;color:#706249;font-size:8px;line-height:1.45}.agenda-remainder-list{display:grid;gap:6px;max-height:260px;margin:11px 0;overflow:auto}.agenda-remainder-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 12px;border:1px solid #dfe6ea;border-radius:9px;background:#fff}.agenda-remainder-list strong,.agenda-remainder-list small{display:block}.agenda-remainder-list strong{font-size:9px}.agenda-remainder-list small{margin-top:3px;color:#71808b;font-size:7px}.agenda-remainder-actions button:first-child{margin-right:auto}.agenda-remainder-fields{display:grid;grid-template-columns:1.2fr 1fr .7fr;gap:8px}.agenda-remainder-selection{overflow:hidden;margin:10px 0;border:1px solid #dce4e9;border-radius:10px}.agenda-remainder-selection>header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#f4f7f9}.agenda-remainder-selection>header strong{font-size:9px}.agenda-remainder-selection>header span{display:grid;place-items:center;min-width:23px;height:22px;border-radius:7px;background:#e4edf5;color:#286493;font-size:8px;font-weight:900}.agenda-remainder-selection>label{display:grid;grid-template-columns:20px minmax(0,1fr);gap:9px;align-items:center;padding:9px 12px;border-top:1px solid #e2e8eb;cursor:pointer}.agenda-remainder-selection input{width:auto;min-height:0;accent-color:#27689d}.agenda-remainder-selection strong,.agenda-remainder-selection small{display:block}.agenda-remainder-selection strong{font-size:9px}.agenda-remainder-selection small{margin-top:2px;color:#71808b;font-size:7px}
@media(max-width:600px){.agenda-remainder-modal{padding:17px}.agenda-remainder-heading{grid-template-columns:44px minmax(0,1fr)}.agenda-remainder-heading>span{width:44px;height:42px}.agenda-remainder-fields{grid-template-columns:1fr}.agenda-remainder-actions{display:grid;grid-template-columns:1fr}.agenda-remainder-actions button{width:100%;margin:0}}
.mobile-route-links{display:grid;gap:6px;margin-top:9px}.mobile-route-links>button{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;padding:10px;border:1px solid #cbdce8;border-radius:9px;background:#eef5fa;color:#263e4f;text-align:left}.mobile-route-links>button>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:31px;border-radius:8px;background:#27689d;color:#fff;font-size:7px;font-weight:900}.mobile-route-links strong,.mobile-route-links small{display:block}.mobile-route-links strong{font-size:9px}.mobile-route-links small{color:#667b89;font-size:7px}.mobile-route-links b{grid-column:3;grid-row:1/3;color:#27689d;font-size:18px}
.related-row>button:first-child{display:grid;gap:3px;flex:1;padding:10px 0;border:0;background:#fff;text-align:left;cursor:pointer}
.related-row strong{font-size:11px}
.related-row small{color:var(--muted);font-size:9px}
.config-list{display:grid;margin-top:12px;border:1px solid var(--line);border-radius:8px}
.config-list div{padding:11px;border-bottom:1px solid var(--line);font-size:11px}
.config-list div:last-child{border:0}
.visit-row>div{min-width:0}
.visit-row>div time,.visit-row>div strong,.visit-row>div small{display:block}
.visit-row>div strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:600px){.visit-row>div strong{white-space:normal;line-height:1.35}}
.config-intro,.config-section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
.config-intro{padding:16px 18px;border:1px solid var(--line);border-radius:11px;background:#fff}
.config-intro h2,.config-section-head h2{margin:0;font-size:19px}
.config-intro p,.config-section-head p{margin:5px 0 0;color:var(--muted);font-size:11px}
.config-card small{margin-top:4px;color:var(--blue);font-size:10px;font-weight:750}
.config-table{overflow:hidden}
.config-table-head,.config-row{display:grid;grid-template-columns:minmax(180px,1.1fr) minmax(240px,1.6fr) 100px 180px;gap:14px;align-items:center}
.config-table-head{padding:10px 15px;background:#f6f8f9;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.config-row{padding:13px 15px;border-top:1px solid var(--line)}
.config-row strong,.config-row small{display:block}.config-row strong{font-size:12px}.config-row small{margin-top:3px;color:var(--muted);font-size:9px}
.config-row p{margin:0;color:#56646f;font-size:10px;line-height:1.45}
.config-row>div:last-child{display:flex;gap:5px;justify-content:flex-end}
.config-row button{padding:8px 10px;font-size:10px}
.location-fields{margin:14px 0 0;padding:13px;border:1px solid var(--line);border-radius:9px;background:#f7f9fa}
.location-fields legend{padding:0 6px;font-size:11px;font-weight:800}.location-fields p{margin:0 0 10px;color:var(--muted);font-size:10px;line-height:1.45}
@media(max-width:900px){.config-table-head{display:none}.config-row{grid-template-columns:minmax(0,1fr) auto}.config-row>p{grid-column:1/-1;grid-row:2}.config-row>span{grid-column:2;grid-row:1}.config-row>div:last-child{grid-column:1/-1;grid-row:3;justify-content:flex-start}.config-row>div:last-child button{flex:1}}
@media(max-width:600px){.config-intro,.config-section-head{align-items:flex-start;flex-direction:column}.config-section-head .primary{width:100%}.config-row{padding:13px}.location-fields .field-row{grid-template-columns:1fr 1fr}}
.map-check-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding:12px;border:1px solid #cbd9eb;border-radius:9px;background:#f3f7fc}
.map-check-card div{display:grid;gap:3px}.map-check-card strong{font-size:11px}.map-check-card span{color:var(--muted);font-size:9px;line-height:1.4}.map-check-card button{white-space:nowrap;font-size:10px}
@media(max-width:600px){.map-check-card{align-items:stretch;flex-direction:column}.map-check-card button{width:100%}}
.route-map-note{margin-top:12px;padding:10px;border-radius:8px;background:#f3f7fc;color:var(--muted);font-size:10px;line-height:1.45}
.sidebar .profile{display:grid;grid-template-columns:34px minmax(0,1fr) 14px;align-items:center;gap:10px;width:100%;padding:14px 8px 0;border:0;border-top:1px solid #34424e;border-radius:0;background:transparent;color:#fff;text-align:left;cursor:pointer}.sidebar .profile:hover b{color:#fff}.sidebar .profile>span:nth-child(2){min-width:0}.sidebar .profile i{color:#8494a0;font-style:normal}.profile-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#2d3e4e;color:#fff;font-size:10px;font-weight:900;text-transform:uppercase}.sidebar.collapsed .profile{display:grid;grid-template-columns:34px;justify-content:center;padding-inline:0}.sidebar.collapsed .profile>span:nth-child(2),.sidebar.collapsed .profile>i{display:none}
.switch-user-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-right:28px}.switch-user-heading .profile-avatar{width:43px;height:43px;background:#203244;font-size:12px}.switch-user-heading h2{margin:0}.switch-user-heading p{margin:4px 0 0;color:var(--muted);font-size:10px}.password-policy{margin-top:10px;padding:10px 12px;border-radius:8px;background:#f3f6f8;color:var(--muted);font-size:9px;line-height:1.45}.password-policy strong{color:var(--ink)}.password-change-lock>p{color:var(--muted);font-size:10px;line-height:1.5}.password-change-lock>label{margin-top:12px}
@media(max-width:1050px) and (min-width:821px){.sidebar .profile{display:grid;grid-template-columns:34px;justify-content:center;padding-inline:0}.sidebar .profile>span:nth-child(2),.sidebar .profile>i{display:none}}
@media(max-width:820px){.mobile-nav{grid-template-columns:repeat(5,1fr)}.mobile-user-avatar{display:grid;place-items:center;width:19px;height:19px;border-radius:6px;background:#445564;color:#fff;font-size:7px}.mobile-nav button:last-child{display:grid;justify-items:center}}
.restaurant-config-modal{width:min(860px,100%);padding:0;background:#f5f7f8}
.restaurant-config-modal>.modal-close{z-index:2;top:18px;right:18px;background:#fff;border:1px solid var(--line)}
.restaurant-form-heading{padding:25px 30px 21px;border-bottom:1px solid var(--line);background:#fff}
.restaurant-form-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(125deg,#17212b,#263746);color:#fff}
.restaurant-form-identity{display:flex;align-items:center;gap:14px;min-width:0}.restaurant-form-mark{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border:1px solid #ffffff26;border-radius:12px;background:#ffffff12;color:#fff;font-size:13px;font-weight:900;letter-spacing:.06em}
.restaurant-form-identity span{display:block;margin-bottom:7px;color:#aebac4;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.restaurant-form-heading h2{overflow:hidden;margin:0;color:#fff;font-size:21px;text-overflow:ellipsis;white-space:nowrap}.restaurant-form-heading p{margin:6px 0 0;color:#aebac4;font-size:10px}
.restaurant-form-status{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #ffffff24;border-radius:99px;background:#ffffff0d;color:#dfe7ec;font-size:9px;font-weight:800}.restaurant-form-status i{width:7px;height:7px;border-radius:50%;background:#48bd83;box-shadow:0 0 0 3px #48bd8323}.restaurant-form-status.archived i{background:#aeb8bf;box-shadow:none}
.restaurant-config-form{display:grid;gap:12px;padding:18px 22px 0}
.config-form-section{padding:20px;border:1px solid #dfe5e8;border-radius:12px;background:#fff;box-shadow:0 2px 7px #17212b08}
.config-form-title{display:flex;align-items:flex-start;gap:11px;margin-bottom:17px;padding-bottom:13px;border-bottom:1px solid #edf0f2}
.config-form-title>b{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:7px;background:#e9f0fa;color:var(--blue);font-size:9px}
.config-form-title h3{margin:1px 0 0;font-size:13px}.config-form-title p{margin:4px 0 0;color:var(--muted);font-size:9px}
.form-grid{display:grid;gap:13px}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.form-grid .span-2{grid-column:span 2}.form-grid .span-3{grid-column:span 3}
.restaurant-config-form label{gap:7px;font-size:10px}.restaurant-config-form input,.restaurant-config-form select,.restaurant-config-form textarea{min-height:42px;border-color:#d8e0e4;background:#fbfcfc}
.restaurant-config-form input:focus,.restaurant-config-form select:focus,.restaurant-config-form textarea:focus{background:#fff}
.restaurant-config-form textarea{min-height:78px}
.franchisee-field[hidden]{display:none!important}
.restaurant-form-footer{padding:4px 3px 14px}.restaurant-form-footer .check{font-size:11px}
.restaurant-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 18px;border:1px solid #f0c7c9;border-radius:11px;background:#fff8f8}
.restaurant-danger-zone div{display:grid;gap:4px}.restaurant-danger-zone strong{font-size:11px;color:#8d2026}.restaurant-danger-zone span{color:#8b6265;font-size:9px}
.restaurant-danger-zone button{padding:9px 11px;border:1px solid #e6b8bb;border-radius:8px;background:#fff;color:#aa2229;font-size:10px;font-weight:800;cursor:pointer}
.restaurant-config-modal .modal-actions{bottom:0;margin:0 -22px;padding:14px 25px}
.archive-filter{display:flex;align-items:center;gap:8px;width:max-content;margin:0 0 10px auto;color:var(--muted);font-size:10px;font-weight:750}.archive-filter input{accent-color:var(--blue)}.archive-filter span{display:grid;place-items:center;min-width:20px;height:20px;border-radius:99px;background:#e9edf0;color:#52616d;font-size:9px}.config-row.archived{background:#fafbfb}.site-number{display:inline!important;color:var(--blue)!important;font-size:inherit!important}
.archived-actions>div:last-child{display:flex;align-items:center;gap:7px}.archived-actions>div:last-child button{white-space:nowrap}
.danger-button{padding:10px 14px;border:0;border-radius:8px;background:#b4232a;color:#fff;font-weight:800;cursor:pointer}
.delete-warning-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:13px;border-radius:50%;background:#fde8e9;color:#b4232a;font-size:20px;font-weight:900}
@media(max-width:700px){
  .restaurant-form-heading{padding:22px 20px 18px}.restaurant-form-heading h2{font-size:20px}
  .restaurant-config-form{padding:12px 12px 0}.config-form-section{padding:16px}
  .form-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-3 .span-3{grid-column:span 2}
  .restaurant-config-modal .modal-actions{margin:0 -12px;padding-inline:16px}
}
@media(max-width:480px){
  .form-grid-2,.form-grid-3{grid-template-columns:1fr}.form-grid .span-2,.form-grid .span-3,.form-grid-3 .span-3{grid-column:auto}
  .restaurant-danger-zone{align-items:stretch;flex-direction:column}.restaurant-danger-zone button{width:100%}
}
.user-config-modal{width:min(880px,100%);padding:0;background:#f5f7f8}.user-config-modal>.modal-close{z-index:2;top:18px;right:18px;background:#fff;border:1px solid var(--line)}
.user-form-heading{display:flex;align-items:center;gap:14px;padding:24px 30px;background:linear-gradient(125deg,#17212b,#263746);color:#fff}.user-form-heading>div:nth-child(2){min-width:0;flex:1}.user-form-heading span{display:block;margin-bottom:6px;color:#aebac4;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.user-form-heading h2{overflow:hidden;margin:0;color:#fff;font-size:21px;text-overflow:ellipsis;white-space:nowrap}.user-form-heading p{margin:5px 0 0;color:#aebac4;font-size:10px}
.user-avatar{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:13px;background:#fff;color:#203143;font-size:14px;font-weight:900;box-shadow:0 5px 18px #0002}
.user-config-form{display:grid;gap:12px;padding:18px 22px 0}.user-config-modal .modal-actions{bottom:0;margin:0 -22px;padding:14px 25px}.role-description{margin-top:13px;padding:11px 13px;border-left:3px solid var(--blue);border-radius:0 8px 8px 0;background:#f1f6fc;color:#526474;font-size:10px;line-height:1.5}
.role-rule{margin-top:8px;color:var(--muted);font-size:8px;line-height:1.45}
.scope-selector{display:flex;gap:8px;margin-top:14px}.scope-selector label{display:flex;align-items:center;gap:7px;flex:1;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:#fafbfb;cursor:pointer}.scope-selector input,.permission-grid input,.restaurant-access-list input{width:auto;min-height:auto;accent-color:var(--blue)}
.restaurant-access-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:235px;margin-top:10px;overflow:auto}.restaurant-access-list[hidden]{display:none}.restaurant-access-list>label{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}.restaurant-access-list strong,.restaurant-access-list small{display:block}.restaurant-access-list strong{font-size:10px}.restaurant-access-list small{margin-top:3px;color:var(--muted);font-size:8px}
.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.permission-grid>label{display:flex;align-items:flex-start;gap:10px;padding:11px;border:1px solid var(--line);border-radius:9px;background:#fbfcfc;cursor:pointer}.permission-grid>label:has(input:checked){border-color:#b9cce7;background:#f3f7fc}.permission-grid strong,.permission-grid small{display:block}.permission-grid strong{font-size:10px}.permission-grid small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.4}
.permission-grid>.sensitive-permission{border-color:#e7d4b8;background:#fffbf4}.permission-grid>.sensitive-permission:has(input:checked){border-color:#d9b77f;background:#fff7e8}.sensitive-permission strong:after{content:" Global";margin-left:5px;padding:2px 5px;border-radius:99px;background:#f2dfbc;color:#7b5418;font-size:7px;text-transform:uppercase}
.notification-preferences{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.notification-preferences>label{display:flex;align-items:flex-start;gap:10px;padding:11px;border:1px solid var(--line);border-radius:9px;background:#fbfcfc;cursor:pointer}.notification-preferences input{width:auto;min-height:auto;accent-color:var(--blue)}.notification-preferences strong,.notification-preferences small{display:block}.notification-preferences strong{font-size:10px}.notification-preferences small{margin-top:3px;color:var(--muted);font-size:8px}
.password-reset-box,.access-summary{display:flex;align-items:center;justify-content:space-between;gap:14px}.password-reset-box{padding:13px;border:1px solid #cddaea;border-radius:9px;background:#f4f8fd}.password-reset-box>div,.access-summary>div{display:grid;gap:4px}.password-reset-box strong,.access-summary strong{font-size:10px}.password-reset-box span,.access-summary span{color:var(--muted);font-size:8px}.temporary-password{margin-top:11px;padding:13px;border:1px dashed #9fb6d5;border-radius:9px;background:#fff}.temporary-password[hidden]{display:none}.temporary-password p{margin:7px 0 0;color:var(--muted);font-size:8px}.force-password{margin-top:12px}.access-summary{padding:14px 4px 16px}.access-summary>.check{white-space:nowrap}
.password-actions{display:flex!important;align-items:center;gap:6px!important}.user-row>p b{color:var(--blue)}
@media(max-width:700px){.user-form-heading{padding:22px 20px}.user-config-form{padding:12px 12px 0}.user-config-modal .modal-actions{margin:0 -12px;padding-inline:16px}.permission-grid,.notification-preferences,.restaurant-access-list{grid-template-columns:1fr}.scope-selector{display:grid}.password-reset-box,.access-summary{align-items:stretch;flex-direction:column}.password-actions{display:grid!important}.password-reset-box button{width:100%}.access-summary>.check{white-space:normal}}
.provider-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:13px}.provider-summary article{padding:14px 15px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:var(--shadow)}.provider-summary span,.provider-summary strong{display:block}.provider-summary span{color:var(--muted);font-size:9px}.provider-summary strong{margin-top:7px;font-size:18px}.provider-row>p b{color:var(--blue)}
.provider-config-modal{width:min(940px,100%);padding:0;background:#f4f6f7}.provider-config-modal>.modal-close{z-index:2;top:18px;right:18px;background:#fff;border:1px solid var(--line)}.provider-form-heading{display:flex;align-items:center;gap:14px;padding:24px 30px;background:linear-gradient(125deg,#17212b,#2c4051);color:#fff}.provider-form-heading>div:nth-child(2){min-width:0;flex:1}.provider-form-heading span{display:block;margin-bottom:6px;color:#aebac4;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.provider-form-heading h2{overflow:hidden;margin:0;color:#fff;font-size:21px;text-overflow:ellipsis;white-space:nowrap}.provider-form-heading p{margin:5px 0 0;color:#aebac4;font-size:10px}.provider-mark,.provider-logo{display:grid;place-items:center;border-radius:12px;background:#fff;color:#233748;font-weight:900}.provider-mark{width:48px;height:48px;flex:0 0 48px;font-size:12px}.provider-config-form{display:grid;gap:12px;padding:18px 22px 0}.provider-config-modal .modal-actions{bottom:0;margin:0 -22px;padding:14px 25px}
.provider-specialties{display:flex;gap:7px;flex-wrap:wrap}.provider-specialties label{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid var(--line);border-radius:99px;background:#fbfcfc;cursor:pointer}.provider-specialties label:has(input:checked){border-color:#adc4e3;background:#edf4fd;color:#174e8a}.provider-specialties input{width:auto;min-height:auto;accent-color:var(--blue)}.provider-specialties span{font-size:9px;font-weight:750}.add-provider-service{display:flex;gap:8px;margin-top:10px}.add-provider-service input{flex:1}.provider-coverage{margin-top:14px}.provider-check{align-self:center;margin-top:13px}.provider-check input{width:auto;min-height:auto}
[data-monthly-fee][hidden]{display:none!important}
.provider-requirements{display:grid;gap:9px}.provider-requirement-editor{padding:14px;border:1px solid var(--line);border-radius:10px;background:#fafbfb}.requirement-editor-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.requirement-editor-head strong{font-size:10px}.requirement-editor-head button{width:27px;height:27px;border:0;border-radius:7px;background:#edf1f3;color:#7a8994;cursor:pointer}.add-requirement{width:100%;margin-top:9px;border:1px dashed #afbec8;background:#fff}
.provider-upload{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}.provider-file-button{display:grid!important;place-items:center;min-height:42px;padding:10px;border:1px dashed #91aac8!important;border-radius:8px;background:#f3f7fc;color:var(--blue)!important;cursor:pointer}.provider-file-button input{display:none}.provider-document-list{display:grid;gap:7px;margin-top:11px}.provider-document-item{display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:center;border:1px solid var(--line);border-radius:9px;background:#fff;overflow:hidden}.provider-document-item>button:first-child{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border:0;background:transparent;text-align:left;cursor:pointer}.provider-document-item span{color:var(--blue);font-size:8px;font-weight:850;text-transform:uppercase}.provider-document-item strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.provider-document-item small{color:var(--muted);font-size:8px}.remove-document{width:28px;height:28px;border:0;border-radius:6px;background:#fff0f0;color:#a5292e;cursor:pointer}
.sidebar-subnav{display:grid;gap:2px;margin:2px 0 5px 30px;padding-left:10px;border-left:1px solid #3a4a57}.sidebar-subnav button{overflow:hidden!important;padding:6px 7px!important;color:#94a4b0!important;font-size:8px!important;text-overflow:ellipsis;white-space:nowrap}.sidebar-subnav button.active{background:#253442!important;color:#fff!important;box-shadow:none!important}
.provider-directory-head,.quotes-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.provider-directory-head h2,.quotes-head h2{margin:0;font-size:19px}.provider-directory-head p,.quotes-head p{margin:5px 0 0;color:var(--muted);font-size:10px}.provider-directory-head label{display:grid;gap:5px;color:var(--muted);font-size:8px}.provider-directory-head select{min-width:240px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:700}.provider-due-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:13px;padding:13px 15px;border:1px solid #ead6aa;border-radius:10px;background:#fffaf0}.provider-due-strip div{display:grid;grid-template-columns:auto 1fr;gap:3px 10px}.provider-due-strip span{grid-column:1/-1;color:#906719;font-size:8px;font-weight:850;text-transform:uppercase}.provider-due-strip strong{font-size:11px}.provider-due-strip small{color:var(--muted);font-size:9px}.provider-due-strip button{border:0;background:transparent;color:var(--blue);font-size:9px;font-weight:800;cursor:pointer}
.provider-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.provider-directory-card{padding:17px;text-align:left;cursor:pointer}.provider-directory-card:hover{border-color:#b6c5d0;transform:translateY(-1px)}.provider-card-top{display:flex;align-items:center;justify-content:space-between}.provider-logo{width:40px;height:40px;background:#eaf0f4;font-size:10px}.provider-directory-card h3{margin:14px 0 5px;font-size:14px}.provider-directory-card>p{min-height:29px;margin:0;color:var(--muted);font-size:9px;line-height:1.5}.provider-directory-card dl{display:grid;gap:8px;margin:15px 0}.provider-directory-card dl div{display:flex;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px solid var(--line)}.provider-directory-card dt{color:var(--muted);font-size:8px}.provider-directory-card dd{margin:0;font-size:9px;font-weight:800;text-align:right}.provider-card-link{color:var(--blue);font-size:9px;font-weight:800}
.provider-public-detail{grid-column:1/-1;padding:20px}.provider-public-detail>header{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:13px;align-items:center;padding-bottom:17px;border-bottom:1px solid var(--line)}.provider-public-detail>header .provider-logo{width:48px;height:48px}.provider-public-detail h2{margin:0;font-size:19px}.provider-public-detail header p{margin:4px 0 0;color:var(--muted);font-size:9px}.provider-detail-actions{display:flex;justify-content:flex-end;gap:8px;margin:14px 0}.provider-contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.provider-contact-grid>div{display:grid;gap:4px;padding:12px;border-radius:9px;background:#f5f7f8}.provider-contact-grid span{color:var(--muted);font-size:8px;text-transform:uppercase}.provider-contact-grid strong{font-size:10px}.provider-contact-grid small{color:var(--muted);font-size:8px}.provider-public-section{margin-top:18px}.provider-public-section h3{margin:0 0 9px;font-size:12px}.provider-chips{display:flex;gap:6px;flex-wrap:wrap}.provider-chips span{padding:6px 9px;border-radius:99px;background:#eef2f4;color:#4f606c;font-size:8px}.provider-requirement-list{display:grid;gap:6px}.provider-requirement-list>div{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px;border:1px solid var(--line);border-radius:8px}.provider-requirement-list strong{font-size:9px}.provider-requirement-list small{color:var(--muted);font-size:8px}
.provider-financial-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:16px 0 8px;padding:5px;border-radius:10px;background:#eef2f4}.provider-financial-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;padding:9px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:9px;font-weight:800;cursor:pointer}.provider-financial-tabs button.active{background:#fff;color:var(--blue);box-shadow:0 2px 7px #17212b14}.provider-financial-tabs b{display:grid;place-items:center;min-width:19px;height:19px;border-radius:99px;background:#dfe6ea;color:#52616c;font-size:8px}.provider-financial-tabs button.active b{background:#dce9fa;color:var(--blue)}.provider-public-detail.financial-mode>.provider-contact-grid,.provider-public-detail.financial-mode>.provider-public-section{display:none}.provider-financial-content{margin:10px 0 15px;padding:15px;border:1px solid var(--line);border-radius:10px;background:#fafbfb}.provider-quote-list{display:grid;margin-top:11px;border:1px solid var(--line);border-radius:9px;background:#fff;overflow:hidden}.provider-quote-list button{display:grid;grid-template-columns:auto minmax(0,1fr) 12px;gap:10px;align-items:center;padding:11px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;cursor:pointer}.provider-quote-list button:last-child{border-bottom:0}.provider-quote-list strong,.provider-quote-list small{display:block}.provider-quote-list strong{font-size:9px}.provider-quote-list small{margin-top:3px;color:var(--muted);font-size:8px}
.mailbox-button>span{font-size:17px}.mailbox-heading,.issue-mail-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-right:30px}.mailbox-heading>span,.issue-mail-heading>span{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#edf3fa;font-size:18px}.mailbox-heading>div,.issue-mail-heading>div{min-width:0;flex:1}.mailbox-heading h2,.issue-mail-heading h2{margin:0}.mailbox-heading p,.issue-mail-heading p{margin:4px 0 0;color:var(--muted);font-size:9px}.mailbox-flow{display:grid;gap:7px;margin:13px 0}.mailbox-flow div{display:flex;align-items:center;gap:9px;padding:9px;border-radius:8px;background:#f5f7f8}.mailbox-flow b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#dce8f6;color:var(--blue);font-size:8px}.mailbox-flow span{font-size:9px}.mailbox-note{margin:12px 0;padding:10px;border-radius:8px;background:#fff6df;color:#795816;font-size:9px;line-height:1.45}.issue-photo{margin-top:12px}
.dashboard-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.quotes-panel{overflow:hidden}.quote-row{display:grid;grid-template-columns:minmax(230px,1fr) minmax(150px,.7fr) 110px auto;gap:12px;align-items:end;padding:13px 15px;border-bottom:1px solid var(--line)}.quote-row:last-child{border-bottom:0}.quote-row>button:first-child{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;align-self:center;border:0;background:transparent;text-align:left;cursor:pointer}.quote-row strong,.quote-row small{display:block}.quote-row>button strong{font-size:10px}.quote-row>button small{margin-top:4px;color:var(--muted);font-size:8px}.quote-amount,.quote-restaurant{display:grid;gap:4px;color:var(--muted);font-size:8px}.quote-amount input,.quote-restaurant select{width:100%;min-height:35px;padding:7px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font-size:9px}.quote-actions{display:flex;gap:6px}.quote-actions button{padding:8px 10px;font-size:8px}.whatsapp-action{color:#147a42}
.quote-card{padding:15px;border-bottom:1px solid var(--line)}.quote-card:last-child{border-bottom:0}.quote-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.quote-card-head>button{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.quote-card-head strong,.quote-card-head small{display:block}.quote-card-head strong{font-size:11px}.quote-card-head small{margin-top:3px;color:var(--muted);font-size:8px}.quote-followup{padding:5px 8px;border-radius:99px;background:#eef4fc;color:var(--blue);font-size:8px;font-weight:800}.quote-meta-grid{display:grid;grid-template-columns:145px minmax(180px,1fr) minmax(150px,.8fr) minmax(190px,1fr) 110px;gap:9px;margin-top:13px}.quote-meta-grid label{display:grid;gap:5px;color:var(--muted);font-size:8px}.quote-meta-grid input,.quote-meta-grid select{width:100%;min-height:37px;padding:8px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font-size:9px}.quote-card>.quote-actions{justify-content:flex-end;margin-top:10px}.quote-decision-summary{display:flex;justify-content:space-between;gap:10px;margin-top:11px;padding:9px 11px;border-radius:8px;background:#f3f6f8}.quote-decision-summary strong{font-size:9px}.quote-decision-summary span{color:var(--muted);font-size:8px}
.provider-email-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px;padding:12px;border:1px solid #c9d9ec;border-radius:9px;background:#f3f7fc}.provider-email-notice div{display:grid;gap:3px}.provider-email-notice strong{font-size:10px}.provider-email-notice span{color:var(--muted);font-size:8px}.quote-notification-preview{max-height:170px;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:9px;background:#fafbfb;color:#43525e;font-size:9px;line-height:1.5}.recipient-title{margin:15px 0 8px;font-size:11px}.quote-recipient-list{display:grid;gap:7px}.quote-recipient-list>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px;border:1px solid var(--line);border-radius:9px}.quote-recipient-list strong,.quote-recipient-list small{display:block}.quote-recipient-list strong{font-size:9px}.quote-recipient-list small{margin-top:3px;color:var(--muted);font-size:8px}.quote-recipient-list em{color:var(--muted);font-size:8px}
.provider-deadline-banner{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:-3px 0 14px;padding:13px 16px;border:1px solid #ead5a4;border-left:4px solid #d49624;border-radius:10px;background:#fffbf2}.provider-deadline-banner.overdue{border-color:#efc6c8;border-left-color:#c62026;background:#fff7f7}.provider-deadline-banner div{display:grid;grid-template-columns:auto 1fr;gap:3px 10px}.provider-deadline-banner span{grid-column:1/-1;color:#946615;font-size:8px;font-weight:850;text-transform:uppercase}.provider-deadline-banner.overdue span{color:#a1262c}.provider-deadline-banner strong{font-size:11px}.provider-deadline-banner small{color:var(--muted);font-size:9px}.provider-deadline-banner button{padding:8px 11px;border:1px solid #d7b46f;border-radius:8px;background:#fff;color:#725017;font-size:9px;font-weight:800;cursor:pointer}.provider-deadline-banner.overdue button{border-color:#e1aeb1;color:#a1262c}.provider-due-strip.overdue{border-color:#efc6c8;background:#fff7f7}.provider-due-strip.overdue span,.expired-text{color:#b3242b!important}.provider-requirement-list>div.expired{border-color:#efc6c8;background:#fff8f8}
@media(max-width:1050px){.provider-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar-subnav{display:none}}
@media(max-width:700px){.provider-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.provider-config-form{padding:12px 12px 0}.provider-config-modal .modal-actions{margin:0 -12px;padding-inline:16px}.provider-form-heading{padding:21px 18px}.provider-directory-head{align-items:stretch;flex-direction:column}.provider-directory-head select{width:100%;min-width:0}.provider-directory-grid{grid-template-columns:1fr}.provider-contact-grid{grid-template-columns:1fr}.provider-public-detail{padding:15px}.provider-detail-actions{display:grid}.provider-financial-tabs{grid-template-columns:repeat(2,1fr)}.provider-upload{grid-template-columns:1fr}.provider-document-item>button:first-child{grid-template-columns:70px minmax(0,1fr)}.provider-document-item small{display:none}.provider-requirement-list>div{grid-template-columns:80px minmax(0,1fr)}.provider-requirement-list small{grid-column:2}.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-row{grid-template-columns:1fr}.quote-meta-grid{grid-template-columns:1fr 1fr}.quote-meta-grid label:nth-child(2),.quote-meta-grid label:nth-child(4){grid-column:1/-1}.quote-actions{display:grid;grid-template-columns:1fr 1fr}.quote-actions button{min-height:40px}.quote-decision-summary{display:grid}.provider-email-notice{align-items:stretch;flex-direction:column}.provider-email-notice button{width:100%}.add-provider-service{display:grid}}

/* Control económico: presupuestos, facturas y pagos */
.dashboard-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.finance-overview{margin-top:18px;padding:20px;border:1px solid #dce3e8;border-radius:14px;background:#fff;box-shadow:0 10px 28px rgba(23,33,43,.06)}
.finance-overview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:15px}.finance-overview-head span,.invoice-page-head>div>span{display:block;margin-bottom:4px;color:#6d7b86;font-size:9px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.finance-overview-head h2{margin:0;font-size:18px}.finance-overview-head p{margin:0;color:var(--muted);font-size:10px}
.finance-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.finance-card{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:3px 12px;align-items:center;min-height:84px;padding:14px 16px;border:1px solid #e0e6ea;border-radius:11px;background:#fbfcfc;color:var(--ink);text-align:left;cursor:pointer;transition:.18s ease}.finance-card:before{content:"€";grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#edf2f6;color:#476171;font-size:15px;font-weight:900}.finance-card:nth-child(2):before{content:"✓"}.finance-card:nth-child(3):before{content:"▤"}.finance-card>span{grid-column:2;color:#596a76;font-size:9px;font-weight:800}.finance-card>strong{grid-column:3;grid-row:1/3;font-size:24px}.finance-card>small{grid-column:2;color:#7c8993;font-size:9px}.finance-card>b{position:absolute;right:10px;bottom:8px;color:#93a0aa;font-size:14px}.finance-card:hover{border-color:#aabac5;background:#fff;box-shadow:0 8px 20px rgba(23,33,43,.08);transform:translateY(-1px)}.finance-card.warning:before{background:#fff3dc;color:#a56500}.finance-card.success:before{background:#e9f6ef;color:#28734b}.finance-card.neutral:before{background:#eaf2fb;color:#275f9b}
.quote-filter-tabs{display:flex;gap:6px;margin:0 0 12px;padding:5px;border:1px solid #e0e6ea;border-radius:10px;background:#eef2f4}.quote-filter-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 14px;border:0;border-radius:7px;background:transparent;color:#64737e;font-size:10px;font-weight:800;cursor:pointer}.quote-filter-tabs button.active{background:#fff;color:#1f568f;box-shadow:0 2px 8px rgba(23,33,43,.08)}.quote-filter-tabs b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#dbe3e8;font-size:8px}.quote-filter-tabs button.active b{background:#e5effb;color:#1f568f}.quotes-panel{border-radius:13px;box-shadow:0 8px 24px rgba(23,33,43,.05)}.quote-card{padding:18px 19px}.quote-card:hover{background:#fcfdfd}.quote-card-head>button strong{font-size:11px}.quote-meta-grid{padding:12px;border-radius:9px;background:#f5f7f8}.quote-card>.quote-actions button{min-width:110px}
.invoice-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:17px 0 13px}.invoice-page-head h2{margin:0;font-size:20px}.invoice-page-head p{margin:5px 0 0;color:var(--muted);font-size:10px}.invoice-page-head>div:last-child{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.invoice-page-head button{min-height:38px}
.invoice-workflow{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border:1px solid #dce4e9;border-radius:11px;background:#fff}.invoice-workflow>div{position:relative;display:flex;align-items:center;gap:9px;padding:11px 14px;color:#7a8791;font-size:9px;font-weight:750}.invoice-workflow>div:not(:last-child):after{content:"";position:absolute;right:0;width:1px;height:24px;background:#e1e6e9}.invoice-workflow b{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#e8edef;color:#65737e;font-size:8px}.invoice-workflow .active{color:#1e568f}.invoice-workflow .active b{background:#1f5e9e;color:#fff}
.invoice-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:11px}.invoice-summary article{padding:13px 14px;border:1px solid #dfe5e9;border-radius:10px;background:#fff}.invoice-summary span,.invoice-summary strong{display:block}.invoice-summary span{color:#71808b;font-size:8px;font-weight:750}.invoice-summary strong{margin-top:7px;font-size:17px}.invoice-summary article.has-alert{border-color:#edc6c8;background:#fff9f9}.invoice-summary article.has-alert strong{color:#b6242b}
.invoice-breakdown{margin:0 0 11px;border:1px solid #dfe5e9;border-radius:10px;background:#fff}.invoice-breakdown summary{padding:11px 14px;color:#285d91;font-size:9px;font-weight:800;cursor:pointer}.invoice-breakdown>div{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0 14px 14px}.invoice-breakdown h3{margin:4px 0 8px;font-size:10px}.invoice-breakdown p{display:flex;justify-content:space-between;gap:15px;margin:0;padding:6px 0;border-bottom:1px solid #edf0f2;font-size:9px}.invoice-breakdown p span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.invoice-toolbar{display:flex;align-items:end;gap:10px;margin-bottom:11px;padding:11px 13px}.invoice-toolbar label{display:grid;gap:4px;color:#6e7c87;font-size:8px}.invoice-toolbar input,.invoice-toolbar select{min-height:36px;padding:7px 9px;border:1px solid #d9e0e5;border-radius:7px;background:#fff;color:var(--ink)}.invoice-toolbar>span{margin-left:auto;color:#7b8993;font-size:9px}.invoice-toolbar .text-button{min-height:36px}
.invoice-list{overflow:hidden;border-radius:12px}.invoice-row{display:grid;grid-template-columns:26px minmax(155px,.7fr) minmax(460px,2.4fr) minmax(150px,.65fr);gap:12px;align-items:start;padding:15px;border-bottom:1px solid #e4e9ec;background:#fff}.invoice-row:last-child{border-bottom:0}.invoice-row:hover{background:#fcfdfd}.invoice-row.overdue{box-shadow:inset 3px 0 #c12a30}.invoice-row.locked{background:#f8f9fa}.invoice-select{padding-top:21px}.invoice-select input{width:18px;height:18px;accent-color:#215f9f}.invoice-document{display:grid;gap:4px;padding:11px;border:1px solid #dce4e9;border-radius:9px;background:#f7f9fa;text-align:left;cursor:pointer}.invoice-document:before{content:"PDF";display:grid;place-items:center;width:35px;height:27px;margin-bottom:4px;border-radius:6px;background:#eaf0f6;color:#2a5f92;font-size:8px;font-weight:900}.invoice-document span{color:#6c7a85;font-size:7px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.invoice-document strong{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.invoice-document small{color:#7b8892;font-size:8px}.invoice-field-details{min-width:0}.invoice-field-details>summary{display:none}.invoice-fields{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:8px}.invoice-fields label{display:grid;gap:4px;min-width:0;color:#70808b;font-size:7px;font-weight:750}.invoice-fields label:nth-child(2),.invoice-fields label:nth-child(5){grid-column:span 2}.invoice-fields input,.invoice-fields select{width:100%;min-width:0;min-height:34px;padding:7px 8px;border:1px solid #dbe2e7;border-radius:7px;background:#fff;color:#27343e;font-size:9px}.invoice-fields input:disabled,.invoice-fields select:disabled{background:#eef1f3;color:#6f7b84}.invoice-state{display:flex;align-items:flex-start;gap:6px;flex-wrap:wrap;padding-top:2px}.invoice-state>small{width:100%;color:#78858f;font-size:8px}.invoice-difference,.invoice-due-warning{width:100%;padding:6px 7px;border-radius:6px;font-size:8px;font-weight:800}.invoice-difference{background:#fff1dc;color:#8a590a}.invoice-due-warning{background:#ffebec;color:#a72329}.invoice-row-actions{display:grid;gap:6px;width:100%;margin-top:5px}.invoice-row-actions button{min-height:32px;padding:7px 9px;font-size:8px}.invoice-batch-bar{position:sticky;z-index:5;bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:13px;padding:12px 15px;border:1px solid #aebed0;border-radius:11px;background:#172735;color:#fff;box-shadow:0 12px 30px rgba(23,33,43,.2)}.invoice-batch-bar div{display:grid;gap:3px}.invoice-batch-bar span{color:#b9c6cf;font-size:8px}.invoice-batch-bar strong{font-size:16px}.invoice-batch-bar .primary{background:#fff;color:#1f568f}
.accounting-closed{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px;padding:12px 15px;border:1px solid #c9d7e1;border-radius:10px;background:#f3f7fa}.accounting-closed div{display:grid;gap:3px}.accounting-closed strong{font-size:10px}.accounting-closed span,.accounting-closed small{color:#6d7b86;font-size:8px}.accounting-closed button{padding:8px 10px;border:1px solid #afc2d1;border-radius:7px;background:#fff;color:#225c94;font-size:8px;font-weight:800;cursor:pointer}.invoice-upload-heading{display:flex;align-items:center;gap:12px;margin-bottom:17px;padding-right:30px}.invoice-upload-heading>span{display:grid;place-items:center;width:43px;height:43px;border-radius:11px;background:#eaf1f8;color:#225d98;font-size:17px;font-weight:900}.invoice-upload-heading h2{margin:0}.invoice-upload-heading p{margin:4px 0 0;color:var(--muted);font-size:9px}.invoice-audit-list{display:grid;gap:0;max-height:330px;margin-top:15px;overflow:auto}.invoice-audit-list>div{display:grid;grid-template-columns:16px 1fr;gap:9px}.invoice-audit-list>div>span{position:relative}.invoice-audit-list>div>span:before{content:"";position:absolute;top:5px;left:4px;width:7px;height:7px;border-radius:50%;background:#2a639b}.invoice-audit-list>div>span:after{content:"";position:absolute;top:15px;bottom:0;left:7px;width:1px;background:#d9e1e6}.invoice-audit-list p{display:grid;gap:4px;margin:0;padding:0 0 15px}.invoice-audit-list strong{font-size:9px}.invoice-audit-list small{color:#74828c;font-size:8px}.batch-confirm-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.batch-confirm-summary>div{display:grid;gap:5px;padding:11px;border-radius:8px;background:#f3f6f8}.batch-confirm-summary span{color:#71808b;font-size:8px}.batch-confirm-summary strong{font-size:10px}.batch-ready-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}
@media(max-width:1180px){.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.invoice-row{grid-template-columns:26px minmax(150px,.7fr) minmax(360px,2fr)}.invoice-state{grid-column:2/-1;padding-left:0}.invoice-row-actions{display:flex;width:auto}.invoice-fields{grid-template-columns:repeat(3,minmax(100px,1fr))}.invoice-fields label:nth-child(2),.invoice-fields label:nth-child(5){grid-column:span 1}}
@media(max-width:800px){.finance-cards{grid-template-columns:1fr}.finance-card{min-height:76px}.invoice-page-head{align-items:stretch;flex-direction:column}.invoice-page-head>div:last-child{display:grid;grid-template-columns:1fr 1fr}.invoice-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-breakdown>div{grid-template-columns:1fr}.invoice-toolbar{align-items:stretch;flex-wrap:wrap}.invoice-toolbar label{flex:1}.invoice-toolbar>span{display:none}.invoice-row{grid-template-columns:26px minmax(150px,.7fr) minmax(280px,1.6fr)}}
@media(max-width:700px){.finance-overview{padding:15px}.finance-overview-head{align-items:flex-start;flex-direction:column;gap:5px}.finance-overview-head h2{font-size:16px}.finance-card{grid-template-columns:42px minmax(0,1fr) auto;padding:12px}.quote-filter-tabs{overflow-x:auto}.quote-filter-tabs button{flex:0 0 auto;min-width:100px}.quotes-head{align-items:flex-start}.quote-card{padding:14px 12px}.quote-meta-grid{grid-template-columns:1fr;padding:10px}.quote-meta-grid label:nth-child(2),.quote-meta-grid label:nth-child(4){grid-column:auto}.invoice-workflow{grid-template-columns:1fr 1fr}.invoice-workflow>div:nth-child(2):after{display:none}.invoice-page-head>div:last-child{grid-template-columns:1fr 1fr}.invoice-page-head button{width:100%;padding-inline:7px;font-size:8px}.invoice-summary{grid-template-columns:1fr 1fr}.invoice-summary article{padding:11px}.invoice-summary article:nth-child(2){grid-column:1/-1;grid-row:1}.invoice-toolbar{display:grid;grid-template-columns:1fr 1fr}.invoice-toolbar .text-button{grid-column:1/-1}.invoice-row{position:relative;display:grid;grid-template-columns:1fr;gap:10px;padding:13px}.invoice-select{position:absolute;z-index:1;top:17px;right:17px;padding:0}.invoice-document{padding-right:45px}.invoice-field-details{display:block}.invoice-field-details>summary{display:block;padding:10px;border:1px solid #dbe3e8;border-radius:8px;background:#f7f9fa;color:#285d91;font-size:9px;font-weight:800;cursor:pointer}.invoice-field-details[open]>summary{margin-bottom:8px}.invoice-fields{grid-template-columns:1fr 1fr}.invoice-fields label:nth-child(2),.invoice-fields label:nth-child(5){grid-column:1/-1}.invoice-state{grid-column:auto}.invoice-row-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.invoice-row-actions button:only-child{grid-column:1/-1}.invoice-batch-bar{bottom:76px;align-items:stretch;flex-direction:column}.invoice-batch-bar button{width:100%}.accounting-closed{align-items:stretch;flex-direction:column}.batch-confirm-summary,.batch-ready-actions{grid-template-columns:1fr}}

.financial-filter{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(2,minmax(145px,.8fr)) repeat(2,130px) auto;gap:8px;align-items:end;margin-bottom:12px;padding:12px}.financial-filter label{display:grid;gap:4px;min-width:0}.financial-filter label>span{color:#6f7e89;font-size:8px;font-weight:750}.financial-filter input,.financial-filter select{width:100%;min-width:0;min-height:36px;padding:7px 9px;border:1px solid #d9e1e6;border-radius:7px;background:#fff;color:#27343e;font-size:9px}.financial-filter button{min-height:36px;white-space:nowrap}

/* Agenda operativa */
.agenda-command{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px;padding:18px 19px;border:1px solid #dce4e9;border-radius:13px;background:linear-gradient(135deg,#fff,#f7f9fa);box-shadow:0 8px 24px rgba(23,33,43,.05)}.agenda-command>div:first-child>span{color:#6f7e89;font-size:8px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.agenda-command h2{margin:4px 0 0;font-size:19px;text-transform:capitalize}.agenda-command p{margin:5px 0 0;color:#74828d;font-size:9px}.agenda-command-actions{display:flex;gap:6px}.agenda-command-actions button{min-height:38px}.agenda-command-actions button:nth-child(1),.agenda-command-actions button:nth-child(3){width:38px;padding:0;font-size:18px}
.agenda-toolbar{padding:8px 10px;border:1px solid #dde4e8;border-radius:10px;background:#fff}.agenda-toolbar label{display:flex;align-items:center;gap:8px;color:#6f7e89;font-size:8px;font-weight:750}.agenda-toolbar select{min-width:185px;min-height:34px;padding:7px 9px;border:1px solid #d9e1e6;border-radius:7px;background:#fff;color:#27343e}.agenda-own-view{padding:8px 10px;border-radius:7px;background:#edf3f9;color:#245b91;font-size:9px;font-weight:800}
.professional-week-agenda{overflow:auto;border-radius:12px}.professional-week-agenda .week-head,.professional-week-agenda .week-row{min-width:1120px;grid-template-columns:150px repeat(7,minmax(130px,1fr))}.professional-week-agenda .week-head{position:sticky;top:0;z-index:2;background:#f4f7f8}.professional-week-agenda .week-head>*{font-weight:800}.professional-week-agenda .week-head time.today{background:#eaf2fb;color:#1f5d9b}.professional-week-agenda .week-row{min-height:128px}.agenda-person{display:grid;align-content:start;gap:4px;padding:14px;border-right:1px solid #e1e7ea;background:#fafbfb}.agenda-person strong{font-size:10px}.agenda-person small{color:#7a8791;font-size:8px}.agenda-day-cell{position:relative;display:grid;align-content:start;gap:5px;min-height:127px;padding:5px;border-right:1px solid #e3e8eb}.agenda-day-cell:last-child{border-right:0}
.agenda-task-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 6px;min-width:0;padding:8px;border:1px solid #c8d8e8;border-left:3px solid #3a73ad;border-radius:7px;background:#f3f7fc;color:#263845;text-align:left;cursor:pointer;transition:.16s ease}.agenda-task-card:hover{z-index:1;border-color:#8eabc7;background:#fff;box-shadow:0 6px 16px rgba(23,33,43,.1);transform:translateY(-1px)}.agenda-task-card.amber{border-left-color:#d49325;background:#fff9ee}.agenda-task-card.red,.agenda-task-card.overdue{border-left-color:#c3272d;background:#fff5f5}.agenda-task-card.gray{border-left-color:#87949d}.agenda-task-card time{grid-row:1/3;color:#245b91;font-size:8px;font-weight:900}.agenda-task-card strong{overflow:hidden;font-size:8px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.agenda-task-card small{grid-column:2;overflow:hidden;color:#6f7d87;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.agenda-task-meta{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:5px;color:#76838d;font-size:7px}.agenda-comment-bubble{margin-left:auto;padding:3px 6px;border-radius:99px;background:#fff;color:#285d91;font-size:7px}.agenda-route-link{padding:5px;border:0;border-radius:5px;background:#edf1f3;color:#456478;font-size:7px;font-weight:800;cursor:pointer}.agenda-add-slot{display:grid;place-items:center;width:28px;height:28px;margin:auto;border:1px dashed #b9c5cd;border-radius:7px;background:transparent;color:#8b99a3;font-size:15px;cursor:pointer}.agenda-add-slot:hover{border-color:#7f9fbd;background:#f2f7fc;color:#225c94}
.mobile-agenda-list article>header{display:flex;align-items:center;justify-content:space-between}.mobile-agenda-list article>header h3{margin:0}.mobile-agenda-list article>header button{display:grid;place-items:center;width:30px;height:30px;border:1px solid #d7e0e6;border-radius:7px;background:#f5f8fa;color:#245b91}.mobile-agenda-list .agenda-task-card{width:100%;margin-top:7px;padding:11px}.mobile-agenda-list .agenda-task-card strong{font-size:10px}.mobile-agenda-list .agenda-task-card small,.mobile-agenda-list .agenda-task-meta{font-size:8px}
.month-agenda{display:block;overflow:hidden}.month-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,1fr)}.month-weekdays{border-bottom:1px solid #dde4e8;background:#f4f7f8}.month-weekdays span{padding:9px;color:#6f7d87;font-size:8px;font-weight:850;text-align:center}.month-day,.month-blank{min-height:125px;border-right:1px solid #e1e6e9;border-bottom:1px solid #e1e6e9}.month-day{display:grid;align-content:start;gap:5px;padding:6px}.month-day:nth-child(7n),.month-blank:nth-child(7n){border-right:0}.month-day.today{box-shadow:inset 0 0 0 2px #3c75ae}.month-day>header{display:flex;align-items:center;justify-content:space-between}.month-day>header strong{display:grid;place-items:center;width:24px;height:24px;font-size:9px}.month-day.today>header strong{border-radius:50%;background:#225d98;color:#fff}.month-day>header button{width:23px;height:23px;border:0;border-radius:6px;background:#eff3f6;color:#537083;cursor:pointer}.month-day .agenda-task-card{padding:6px}.month-day .agenda-task-card time{font-size:7px}.month-day .agenda-task-card strong{font-size:7px}.month-day .agenda-task-card small,.month-day .agenda-task-meta{display:none}.month-more{color:#5d7180;font-size:7px;font-weight:800}.year-agenda button{position:relative}.year-agenda button>b{position:absolute;right:15px;top:15px;color:#9aa6ae;font-size:16px}
.agenda-task-heading{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:15px;padding-right:30px}.agenda-task-heading>span{display:grid;place-items:center;width:52px;height:52px;border-radius:12px;background:#eaf2fa;color:#205b96;font-size:12px;font-weight:900}.agenda-task-heading.new{grid-template-columns:52px minmax(0,1fr)}.agenda-task-heading small{color:#6e7c87;font-size:8px;font-weight:800;text-transform:uppercase}.agenda-task-heading h2{margin:3px 0 0;font-size:17px}.agenda-task-heading p{margin:4px 0 0;color:#71808a;font-size:9px}.agenda-task-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.agenda-task-summary>div{display:grid;gap:4px;padding:10px;border-radius:8px;background:#f3f6f8}.agenda-task-summary span,.agenda-task-description>span{color:#70808a;font-size:7px;font-weight:800;text-transform:uppercase}.agenda-task-summary strong{font-size:9px}.agenda-task-description{margin-top:9px;padding:11px;border:1px solid #e0e6ea;border-radius:8px}.agenda-task-description p{margin:5px 0 0;color:#485863;font-size:9px;line-height:1.5}
.agenda-comments{margin-top:15px;padding-top:14px;border-top:1px solid #e0e6ea}.agenda-comments>header{display:flex;align-items:center;justify-content:space-between}.agenda-comments h3{margin:0;font-size:11px}.agenda-comments header p{margin:3px 0 0;color:#74828c;font-size:8px}.agenda-comment-count{display:grid;place-items:center;min-width:25px;height:25px;border-radius:50%;background:#e9f1f9;color:#245d95;font-size:8px;font-weight:900}.agenda-comment-list{display:grid;max-height:210px;margin-top:10px;overflow:auto}.agenda-comment-list article{display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;padding:9px 0;border-bottom:1px solid #e8ecef}.agenda-comment-list article:last-child{border-bottom:0}.agenda-comment-list .profile-avatar{width:32px;height:32px}.agenda-comment-list strong{font-size:8px}.agenda-comment-list p{margin:3px 0;color:#44545f;font-size:9px;line-height:1.4}.agenda-comment-list small{color:#7a8791;font-size:7px}.agenda-comment-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:10px}.agenda-comment-composer textarea{min-height:58px}.agenda-task-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.agenda-task-actions button{min-height:34px;padding:7px 10px;font-size:8px}
@media(max-width:1100px){.financial-filter{grid-template-columns:repeat(3,1fr)}.financial-search{grid-column:span 2}.financial-filter button{align-self:end}.professional-week-agenda .week-head,.professional-week-agenda .week-row{min-width:1050px}}
@media(max-width:820px){.professional-week-agenda{display:none}.agenda-command{align-items:stretch;flex-direction:column}.agenda-command-actions{display:grid;grid-template-columns:38px 1fr 38px 1.4fr}.agenda-toolbar{align-items:stretch}.financial-filter{grid-template-columns:1fr 1fr}.financial-search{grid-column:1/-1}}
@media(max-width:600px){.agenda-command{padding:15px}.agenda-command-actions{grid-template-columns:38px 1fr 38px}.agenda-command-actions .primary{grid-column:1/-1}.agenda-toolbar label{justify-content:space-between}.agenda-toolbar select{min-width:0;flex:1}.financial-filter{grid-template-columns:1fr}.financial-search{grid-column:auto}.month-weekdays{display:none}.month-grid{display:block}.month-blank{display:none}.month-day{min-height:auto;padding:10px;border-right:0}.month-day .agenda-task-card{padding:9px}.month-day .agenda-task-card strong{font-size:9px}.month-day .agenda-task-card small,.month-day .agenda-task-meta{display:flex}.agenda-task-heading{grid-template-columns:44px minmax(0,1fr);padding-right:25px}.agenda-task-heading>span{width:44px;height:44px}.agenda-task-heading>.badge{grid-column:1/-1;justify-self:start}.agenda-task-summary{grid-template-columns:1fr 1fr}.agenda-task-summary>div:last-child{grid-column:1/-1}.agenda-comment-composer{grid-template-columns:1fr}.agenda-task-actions{display:grid;grid-template-columns:1fr 1fr}.agenda-task-actions button{width:100%}}

.financial-searchbar{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:8px;margin-bottom:10px}.financial-searchbar>label{position:relative;display:flex;align-items:center;min-height:43px;border:1px solid #d9e1e6;border-radius:10px;background:#fff;box-shadow:0 4px 14px rgba(23,33,43,.04)}.financial-searchbar>label:focus-within{border-color:#83a5c6;box-shadow:0 0 0 3px rgba(46,105,160,.1)}.financial-searchbar>label>span{display:grid;place-items:center;width:43px;color:#71818c;font-size:18px}.financial-searchbar input{width:100%;height:41px;padding:0 12px 0 0;border:0;outline:0;background:transparent;color:#26343e;font-size:10px}.financial-searchbar>button{display:flex;align-items:center;gap:8px;min-width:105px;justify-content:center;border-radius:10px}.financial-searchbar>button.active{border-color:#8aa9c7;background:#eef5fb;color:#225d97}.financial-searchbar>button b{display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:#225d97;color:#fff;font-size:7px}.financial-searchbar>button>span{font-size:11px}
.financial-filter-chips{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:-2px 0 10px}.financial-filter-chips>span{padding:5px 8px;border:1px solid #cfdae3;border-radius:99px;background:#f3f7fa;color:#466376;font-size:8px}.financial-filter-chips>button{padding:5px 7px;border:0;background:transparent;color:#2a6196;font-size:8px;font-weight:800;cursor:pointer}
.financial-filter-drawer{margin:-1px 0 12px;padding:15px;border:1px solid #cedae3;border-radius:11px;background:#f7f9fa;box-shadow:0 10px 25px rgba(23,33,43,.07)}.financial-filter-drawer>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.financial-filter-drawer>header div{display:grid;gap:3px}.financial-filter-drawer>header strong{font-size:10px}.financial-filter-drawer>header small{color:#71808b;font-size:8px}.financial-filter-drawer>header button{display:grid;place-items:center;width:27px;height:27px;border:0;border-radius:7px;background:#e8edf0;color:#677680;cursor:pointer}.financial-filter-drawer>div{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:10px}.financial-filter-drawer label{display:grid;gap:5px;min-width:0}.financial-filter-drawer label>span,.financial-filter-drawer legend{color:#687883;font-size:8px;font-weight:800}.financial-filter-drawer select,.financial-filter-drawer input{width:100%;min-width:0;min-height:39px;padding:8px 10px;border:1px solid #d5dee4;border-radius:8px;background:#fff;color:#27343e;font-size:9px;cursor:pointer}.financial-filter-drawer input[type=date]{cursor:pointer}.financial-filter-drawer fieldset{display:grid;grid-template-columns:1fr auto 1fr;gap:7px;align-items:end;min-width:0;margin:0;padding:0;border:0}.financial-filter-drawer legend{grid-column:1/-1;margin-bottom:5px}.financial-filter-drawer fieldset i{padding-bottom:11px;color:#84919a;font-style:normal}.financial-filter-drawer>footer{display:flex;justify-content:flex-end;gap:8px;margin-top:13px;padding-top:11px;border-top:1px solid #dfe5e9}.financial-filter-drawer>footer button{min-width:100px}
@media(max-width:820px){.financial-filter-drawer>div{grid-template-columns:1fr 1fr}.financial-filter-drawer fieldset{grid-column:1/-1}}
@media(max-width:600px){.financial-searchbar{grid-template-columns:1fr}.financial-searchbar>button{width:100%}.financial-filter-drawer{padding:13px}.financial-filter-drawer>div{grid-template-columns:1fr}.financial-filter-drawer fieldset{grid-column:auto;grid-template-columns:1fr}.financial-filter-drawer fieldset i{display:none}.financial-filter-drawer>footer{display:grid;grid-template-columns:1fr 1fr}.financial-filter-drawer>footer button{width:100%;min-width:0}}

.role-view-badge{display:inline-flex;margin-left:7px;padding:3px 6px;border-radius:99px;background:#e9f0f6;color:#315d83;font-size:7px;font-weight:850;vertical-align:middle}.agenda-command-actions .primary b{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:4px;padding:0 5px;border-radius:99px;background:#fff;color:#225d97;font-size:7px}
@media(max-width:820px){.mobile-nav{grid-template-columns:repeat(var(--mobile-items,5),1fr)}}
.agenda-add-heading{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-right:30px}.agenda-add-heading>span{display:grid;place-items:center;width:45px;height:45px;border-radius:11px;background:#eaf2fa;color:#225d98;font-size:19px;font-weight:900}.agenda-add-heading h2{margin:0}.agenda-add-heading p{margin:4px 0 0;color:#71808b;font-size:9px}.agenda-add-options{display:grid}.agenda-add-options>button{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px;border:1px solid #bed0e0;border-radius:10px;background:#f2f7fb;text-align:left;cursor:pointer}.agenda-add-options>button>span{display:grid;place-items:center;width:42px;height:34px;border-radius:8px;background:#fff;color:#245c93;font-size:8px;font-weight:900;text-transform:uppercase}.agenda-add-options strong,.agenda-add-options small{display:block}.agenda-add-options strong{font-size:10px}.agenda-add-options small{margin-top:4px;color:#71808b;font-size:8px}.agenda-add-options>button>b{color:#6d8292;font-size:16px}
.agenda-pending{margin-top:17px}.agenda-pending>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.agenda-pending h3{margin:0;font-size:11px}.agenda-pending header p{margin:3px 0 0;color:#75838d;font-size:8px}.agenda-pending header>span{display:grid;place-items:center;min-width:25px;height:25px;border-radius:99px;background:#fff0d8;color:#8b5a08;font-size:8px;font-weight:900}.agenda-pending>div{display:grid;max-height:330px;border:1px solid #e0e6ea;border-radius:9px;overflow:auto}.agenda-pending>div>button{display:grid;grid-template-columns:minmax(0,1fr) auto 65px;gap:9px;align-items:center;padding:11px;border:0;border-bottom:1px solid #e4e9ec;background:#fff;text-align:left;cursor:pointer}.agenda-pending>div>button:last-child{border-bottom:0}.agenda-pending>div>button:hover{background:#f7f9fa}.agenda-pending strong,.agenda-pending small{display:block}.agenda-pending strong{font-size:9px}.agenda-pending small{margin-top:3px;color:#74828c;font-size:8px}.agenda-pending>div>button>b{color:#245d95;font-size:8px;text-align:right}
.toast.has-action{display:flex;align-items:center;justify-content:space-between;gap:15px}.toast.has-action button{padding:6px 9px;border:1px solid #71808b;border-radius:6px;background:#fff;color:#1e4f7d;font-size:9px;font-weight:850;cursor:pointer}
.invoice-ai-status{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;margin:13px 0 16px;padding:11px;border:1px solid #cbdbea;border-radius:9px;background:#f3f7fb}.invoice-ai-status>span{display:grid;place-items:center;width:38px;height:34px;border-radius:8px;background:#fff;color:#245d96;font-size:9px;font-weight:900}.invoice-ai-status strong,.invoice-ai-status small{display:block}.invoice-ai-status strong{font-size:9px}.invoice-ai-status small{margin-top:3px;color:#6f7e89;font-size:8px}
@media(max-width:600px){.role-view-badge{display:none}.agenda-pending>div>button{grid-template-columns:minmax(0,1fr) auto}.agenda-pending>div>button>b{grid-column:1/-1;text-align:left}.toast.has-action{bottom:78px}}

/* Facturas: entrada guiada, cierre y envío */
.invoice-workflow.three,.invoice-workflow.correction{grid-template-columns:repeat(3,1fr)}
.invoice-scan-heading,.invoice-review-heading,.invoice-provider-heading,.closing-month-heading,.reopen-month-heading,.delete-invoice-heading{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:18px;padding-right:32px}
.invoice-scan-heading>span,.invoice-review-heading>span,.invoice-provider-heading>span,.closing-month-heading>span,.reopen-month-heading>span,.delete-invoice-heading>span{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#eaf2fa;color:#225d98;font-size:18px;font-weight:900}
.invoice-scan-heading small,.invoice-review-heading small,.invoice-provider-heading small{color:#687b89;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.invoice-scan-heading h2,.invoice-review-heading h2,.invoice-provider-heading h2,.closing-month-heading h2,.reopen-month-heading h2,.delete-invoice-heading h2{margin:2px 0 0;font-size:19px}.invoice-scan-heading p,.invoice-review-heading p,.invoice-provider-heading p,.closing-month-heading p,.reopen-month-heading p,.delete-invoice-heading p{margin:4px 0 0;color:#6c7d89;font-size:10px;line-height:1.45}
.invoice-scan-dropzone{display:grid!important;place-items:center;min-height:190px;padding:25px;border:2px dashed #9db6ca;border-radius:14px;background:linear-gradient(145deg,#f8fbfd,#edf4f9);text-align:center;cursor:pointer;transition:.18s ease}.invoice-scan-dropzone:hover{border-color:#3c76aa;background:#f5faff}.invoice-scan-dropzone input{position:absolute;width:1px!important;height:1px;padding:0!important;opacity:0}.invoice-scan-dropzone>span{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:#fff;color:#245f98;box-shadow:0 8px 22px rgba(28,72,108,.12);font-size:25px}.invoice-scan-dropzone strong{margin-top:12px;font-size:13px}.invoice-scan-dropzone small{color:#71818c;font-size:10px;font-weight:500}
.invoice-scan-extract{margin-top:13px;padding:13px 15px;border:1px solid #dce5eb;border-radius:10px;background:#fff}.invoice-scan-extract>strong{font-size:10px}.invoice-scan-extract>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.invoice-scan-extract span{padding-left:17px;color:#526574;font-size:9px}.invoice-scan-extract span:before{content:"✓";margin-left:-17px;margin-right:7px;color:#27725a;font-weight:900}.invoice-scan-note{margin-top:11px;padding:11px 13px;border-left:3px solid #3978af;border-radius:0 8px 8px 0;background:#f1f6fb;color:#516777;font-size:10px;line-height:1.5}
.invoice-scanning{display:grid;place-items:center;min-height:250px;text-align:center}.invoice-scanning>span{width:44px;height:44px;border:4px solid #dce8f2;border-top-color:#245f99;border-radius:50%;animation:invoice-spin .85s linear infinite}.invoice-scanning h2{margin:17px 0 0}.invoice-scanning p{margin:6px 0;color:#70808b}@keyframes invoice-spin{to{transform:rotate(360deg)}}
.invoice-review-form{display:grid;gap:11px}.invoice-review-more{border:1px solid #dce4e9;border-radius:9px;background:#f8fafb}.invoice-review-more summary{padding:12px 13px;color:#2b6092;font-size:10px;font-weight:800;cursor:pointer}.invoice-review-more>div{display:grid;gap:10px;padding:0 13px 13px}.invoice-provider-assist{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid #dce4e9;border-radius:9px}.invoice-provider-assist div{display:grid;gap:3px}.invoice-provider-assist strong{font-size:10px}.invoice-provider-assist small{color:#71808b;font-size:9px}.invoice-provider-assist.matched{border-color:#c7ded4;background:#f2faf6}.invoice-provider-assist.missing{border-color:#ead6ad;background:#fffaf0}.invoice-provider-assist button{white-space:nowrap}
.invoice-provider-scope{display:grid;gap:8px;margin:2px 0;padding:13px;border:1px solid #dce4e9;border-radius:9px}.invoice-provider-scope legend{padding:0 5px;font-size:10px;font-weight:800}.invoice-provider-scope>label{display:flex!important;align-items:center;gap:8px}.invoice-provider-scope input{width:auto}.invoice-provider-scope>div{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding-top:8px;border-top:1px solid #e2e7ea}.invoice-provider-scope>div label{display:flex;align-items:center;gap:7px;color:#526470;font-size:9px}
.accounting-reopened{display:grid;gap:4px;margin-bottom:12px;padding:13px 15px;border:1px solid #d9c797;border-radius:10px;background:#fffaf0}.accounting-reopened div{display:flex;align-items:center;justify-content:space-between;gap:12px}.accounting-reopened strong{font-size:10px}.accounting-reopened span,.accounting-reopened small{color:#756949;font-size:9px}.accounting-closed-actions{display:flex!important;gap:7px}.accounting-closed-actions .primary{background:#225f9c;color:#fff;border-color:#225f9c}.invoice-locked-label{padding:9px 11px;border-radius:7px;background:#e9eef1;color:#687782;font-size:9px;font-weight:800}.closing-delivery-info{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:13px 0;padding:12px;border:1px solid #d8e3eb;border-radius:9px;background:#f5f8fa}.closing-delivery-info>strong,.closing-delivery-info>p{grid-column:1/-1}.closing-delivery-info>strong{font-size:10px}.closing-delivery-info>span{padding-left:17px;color:#526675;font-size:9px}.closing-delivery-info>span:before{content:"✓";margin-left:-17px;margin-right:7px;color:#27725a;font-weight:900}.closing-selection-rule{margin:0 0 3px;padding:8px;border-radius:7px;background:#e9f2fa;color:#245b8d;font-size:9px;font-weight:800}.modal-warning.critical{border:1px solid #e5b9bb;background:#fff2f2;color:#8b2429}.modal-warning strong{display:block;margin-bottom:3px}.modal-warning p{margin:0;line-height:1.5}.closing-excluded{border:1px solid #e8cf9a;background:#fff9ed}.reopen-confirm{margin-top:13px!important;padding:11px;border:1px solid #dfe5e9;border-radius:8px;background:#f7f9fa}
.closing-recipient{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:13px}.closing-recipient>div{display:grid;gap:4px;padding:11px;border:1px solid #dce4e9;border-radius:9px;background:#f7f9fa}.closing-recipient span{color:#72818c;font-size:8px;text-transform:uppercase}.closing-recipient strong{overflow-wrap:anywhere;font-size:9px}.batch-package-summary{overflow:hidden;border:1px solid #dce4e9;border-radius:10px}.batch-package-summary>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;background:#f3f6f8}.batch-package-summary header div{display:grid;gap:3px}.batch-package-summary header strong{font-size:10px}.batch-package-summary header small{color:#71808b;font-size:8px}.batch-package-summary>div{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:10px;padding:9px 13px;border-top:1px solid #e4e9ec;align-items:center}.batch-package-summary>div span{color:#647784;font-size:8px}.batch-package-summary>div strong{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.batch-package-summary>div small{color:#74828c;font-size:8px}.batch-package-summary .a4-document{background:#f9fbfc}.batch-ready-actions .send{border-color:#245f98;background:#245f98;color:#fff}
.invoice-trash{display:flex;align-items:center;justify-content:center;gap:5px!important;border:0!important;background:transparent!important;color:#9a3c40!important}.invoice-trash svg,.delete-invoice-heading svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.delete-invoice-heading>span{background:#fff0f0;color:#a3363b}.delete-invoice-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:13px 0}.delete-invoice-summary>div{display:grid;gap:4px;padding:10px;border-radius:8px;background:#f3f6f8}.delete-invoice-summary span{color:#71808b;font-size:8px}.delete-invoice-summary strong{font-size:10px;overflow-wrap:anywhere}

/* Integraciones ordenadas por fase */
.integration-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:8px 0 14px;padding:22px;border-radius:14px;background:linear-gradient(130deg,#172735,#274b68);color:#fff}.integration-head>div:first-child>span{color:#a9bfd0;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.integration-head h2{margin:5px 0 0;font-size:22px}.integration-head p{max-width:650px;margin:6px 0 0;color:#c1ced8;font-size:10px;line-height:1.5}.integration-head>div:last-child{display:grid;justify-items:end}.integration-head>div:last-child strong{font-size:30px}.integration-head>div:last-child small{color:#b9c9d4;font-size:8px}.integration-notice{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid #bfd7ca;border-radius:10px;background:#f2faf6}.integration-notice>span{display:grid;place-items:center;width:38px;height:34px;border-radius:8px;background:#fff;color:#27725a;font-weight:900}.integration-notice strong{font-size:10px}.integration-notice p{margin:3px 0 0;color:#65786e;font-size:9px}.integration-cost-overview{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}.integration-cost-overview>div{display:grid;gap:4px;padding:14px;border:1px solid #dce4e9;border-radius:10px;background:#fff}.integration-cost-overview span{color:#6f7e89;font-size:8px}.integration-cost-overview strong{font-size:17px}.integration-cost-overview small{color:#71808b;font-size:8px}.integration-cost-overview>p{grid-column:1/-1;margin:0;padding:8px 11px;border-radius:7px;background:#eef3f7;color:#607482;font-size:8px}.integration-groups{display:grid;gap:14px}.integration-group{overflow:hidden;border:1px solid #dce4e9;border-radius:12px;background:#f7f9fa}.integration-group>header{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 15px;border-bottom:1px solid #dce4e9;background:#fff}.integration-group>header>span{display:grid;place-items:center;width:36px;height:32px;border-radius:8px;background:#eaf2fa;color:#245d95;font-size:9px;font-weight:900}.integration-group h3{margin:0;font-size:12px}.integration-group header p{margin:3px 0 0;color:#71808b;font-size:8px}.integration-group header>b{display:grid;place-items:center;min-width:25px;height:25px;border-radius:99px;background:#e8edf0;color:#5b6f7d;font-size:8px}.integration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px}.integration-card{display:grid;align-content:start;gap:11px;padding:15px;box-shadow:none}.integration-card>header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center}.integration-card>header>span:first-child{display:grid;place-items:center;width:42px;height:38px;border-radius:9px;background:#eef3f7;color:#255d93;font-size:9px;font-weight:900}.integration-card h3{margin:0;font-size:11px}.integration-card header p{margin:3px 0 0;color:#74828c;font-size:8px}.integration-card>p{margin:0;color:#4f616e;font-size:9px;line-height:1.5}.integration-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.integration-card dl>div{padding:9px;border-radius:8px;background:#f4f7f8}.integration-card dt{color:#72818c;font-size:7px;text-transform:uppercase}.integration-card dd{margin:4px 0 0;font-size:8px;font-weight:750;line-height:1.4}.integration-card>a{justify-self:start;color:#245e97;font-size:9px;font-weight:800;text-decoration:none}.integration-card>a:hover{text-decoration:underline}.integration-security{margin-top:13px;padding:13px 15px;border-left:3px solid #2c689e;border-radius:0 9px 9px 0;background:#f1f6fa}.integration-security strong{font-size:10px}.integration-security p{margin:4px 0 0;color:#5d7180;font-size:9px;line-height:1.5}

@media(max-width:760px){.invoice-workflow.three,.invoice-workflow.correction{grid-template-columns:1fr}.invoice-workflow>div:after{display:none}.invoice-scan-heading,.invoice-review-heading,.invoice-provider-heading,.closing-month-heading,.reopen-month-heading,.delete-invoice-heading{grid-template-columns:44px minmax(0,1fr);padding-right:28px}.invoice-scan-heading>.badge,.invoice-review-heading>.badge{grid-column:1/-1;justify-self:start}.invoice-scan-dropzone{min-height:160px}.invoice-provider-assist{align-items:stretch;flex-direction:column}.invoice-provider-assist button{width:100%;min-height:42px}.invoice-provider-scope>div,.closing-recipient,.delete-invoice-summary{grid-template-columns:1fr}.accounting-reopened div{align-items:flex-start;flex-direction:column}.accounting-closed-actions{display:grid!important;grid-template-columns:1fr 1fr}.closing-delivery-info{grid-template-columns:1fr}.closing-delivery-info>strong,.closing-delivery-info>p{grid-column:auto}.batch-package-summary>div{grid-template-columns:1fr auto}.batch-package-summary>div span{grid-column:1/-1}.batch-package-summary>div strong{white-space:normal}.integration-head{align-items:flex-start;flex-direction:column;padding:18px}.integration-head>div:last-child{justify-items:start}.integration-cost-overview,.integration-grid{grid-template-columns:1fr}.integration-group>header{align-items:start}.integration-card dl{grid-template-columns:1fr}.integration-notice{grid-template-columns:38px minmax(0,1fr)}.integration-notice>.badge{grid-column:1/-1;justify-self:start}}
@media(max-width:520px){.invoice-scan-extract>div{grid-template-columns:1fr}.invoice-scan-heading h2,.invoice-review-heading h2,.invoice-provider-heading h2,.closing-month-heading h2,.reopen-month-heading h2,.delete-invoice-heading h2{font-size:17px}.batch-ready-actions{display:grid;grid-template-columns:1fr}.batch-ready-actions button{min-height:46px}.invoice-trash span{display:inline}.integration-group>header{grid-template-columns:34px minmax(0,1fr)}.integration-group header>b{grid-column:1/-1;justify-self:start}}

.password-field{position:relative}.password-field>input{padding-right:48px!important}.password-eye{position:absolute;right:5px;top:50%;display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:7px;background:transparent;color:#687986;transform:translateY(-50%);cursor:pointer}.password-eye:hover,.password-eye:focus{background:#eef3f7;color:#245e96;outline:0}.password-eye svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.password-eye.visible{background:#eaf2fa;color:#245e96}.password-eye.visible:after{content:"";position:absolute;width:22px;height:2px;border-radius:2px;background:currentColor;transform:rotate(-45deg)}
.dashboard-greeting{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:2px 0 14px;padding:0 2px}.dashboard-greeting>div{display:flex;align-items:baseline;gap:5px}.dashboard-greeting span{color:#687986;font-size:13px}.dashboard-greeting h1{margin:0;font-size:22px;letter-spacing:-.02em}.dashboard-greeting p{margin:0;color:#6e7e89;font-size:10px}
@media(max-width:600px){.dashboard-greeting{align-items:flex-start;flex-direction:column;gap:4px;margin-top:3px}.dashboard-greeting h1{font-size:20px}.dashboard-greeting p{font-size:11px}}
@media(max-width:600px){.topbar{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:14px 13px 8px}.topbar>div:first-child{display:flex;align-items:center;justify-content:space-between;min-width:0}.topbar>div:first-child h1{font-size:21px}.topbar>div:first-child p{display:none}.top-actions{display:grid;grid-template-columns:minmax(0,1fr) repeat(2,38px);gap:8px;width:100%}.restaurant-filter{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;width:100%;min-width:0;padding:5px 7px 5px 10px!important;border:1px solid #d8e1e7!important;border-radius:9px!important;background:#fff!important}.restaurant-filter span{display:block!important;color:#72818c;font-size:8px;font-weight:800}.restaurant-filter select{width:100%!important;max-width:none!important;min-width:0;padding:7px 27px 7px 8px!important;border:0!important;background:transparent!important;text-align:right;text-overflow:ellipsis}.top-actions>.icon-button{width:38px;height:38px}.top-actions>.icon-button:only-of-type{grid-column:3}.content{padding-top:8px}}

/* Administración global y organizaciones */
.organization-top-switch{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;align-items:center;max-width:240px;min-height:40px;padding:6px 9px;border:1px solid #d9e1e6;border-radius:9px;background:#fff;color:#26343e;text-align:left;cursor:pointer}.organization-top-switch span{color:#71808b;font-size:7px;font-weight:800;text-transform:uppercase}.organization-top-switch strong{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.organization-top-switch b{color:#69808f;font-size:10px}
.global-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px;padding:22px 24px;border-radius:15px;background:linear-gradient(125deg,#172735,#2d506c);color:#fff;box-shadow:0 14px 34px rgba(23,39,53,.14)}.global-welcome>div:first-child>span{color:#b7c7d3;font-size:12px}.global-welcome h1{margin:2px 0 0;font-size:27px}.global-welcome p{margin:5px 0 0;color:#bdd0dd;font-size:10px}.global-welcome>div:last-child{display:grid;gap:5px;justify-items:end}.global-welcome>div:last-child>span{color:#b9c8d3;font-size:8px;text-transform:uppercase}.global-welcome button{display:flex;align-items:center;gap:10px;max-width:300px;padding:9px 12px;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:rgba(255,255,255,.1);color:#fff;font-size:10px;font-weight:800;cursor:pointer}.global-welcome button b{color:#b8cbd7}
.global-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.global-kpis>button{display:grid;gap:5px;min-height:112px;padding:15px;border:1px solid #dce4e9;border-radius:12px;background:#fff;color:#26343e;text-align:left;cursor:pointer;box-shadow:0 6px 20px rgba(23,33,43,.05)}.global-kpis>button:hover{border-color:#aebfd0;transform:translateY(-1px)}.global-kpis span{color:#6e7e89;font-size:9px;font-weight:750}.global-kpis strong{align-self:end;font-size:23px}.global-kpis small{color:#71808b;font-size:8px}.global-kpis .attention{border-left:3px solid #d19832}.global-kpis .finance{border-left:3px solid #2f6fa6}
.global-quick-actions{margin-bottom:12px;padding:17px;border:1px solid #dce4e9;border-radius:13px;background:#fff}.global-quick-actions>header h2{margin:0;font-size:14px}.global-quick-actions>header p{margin:4px 0 0;color:#71808b;font-size:9px}.global-quick-actions>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.global-quick-actions button{display:grid;grid-template-columns:38px minmax(0,1fr);gap:3px 10px;align-items:center;padding:12px;border:1px solid #dce4e9;border-radius:9px;background:#f8fafb;color:#27343e;text-align:left;cursor:pointer}.global-quick-actions button:hover{border-color:#9fb4c5;background:#fff}.global-quick-actions button>span{grid-row:1/3;display:grid;place-items:center;width:38px;height:34px;border-radius:8px;background:#e8f1f9;color:#245d95;font-size:9px;font-weight:900}.global-quick-actions strong{font-size:9px}.global-quick-actions small{color:#71808b;font-size:8px}
.global-dashboard-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:12px}.global-organizations,.global-activity{overflow:hidden}.global-organizations>header,.global-activity>header{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-bottom:1px solid #e1e6e9}.global-organizations h2,.global-activity h2{margin:0;font-size:14px}.global-organizations header p,.global-activity header p{margin:4px 0 0;color:#71808b;font-size:9px}.global-organizations header button{border:0;background:transparent;color:#245e97;font-size:9px;font-weight:800;cursor:pointer}.global-organizations>div>button{display:grid;grid-template-columns:38px minmax(0,1fr) auto 10px;gap:10px;align-items:center;width:100%;padding:12px 15px;border:0;border-bottom:1px solid #e5e9ec;background:#fff;color:#27343e;text-align:left;cursor:pointer}.global-organizations>div>button:last-child{border-bottom:0}.global-organizations>div>button:hover{background:#f7f9fa}.global-organizations>div>button>span:first-child{display:grid;place-items:center;width:38px;height:34px;border-radius:8px;background:#edf3f8;color:#285f91;font-size:8px;font-weight:900}.global-organizations strong,.global-organizations small{display:block}.global-organizations strong{font-size:9px}.global-organizations small{margin-top:3px;color:#74828c;font-size:8px}.global-activity>div{max-height:285px;overflow:auto;padding:5px 15px}.global-activity>div>div{display:grid;grid-template-columns:14px minmax(0,1fr);gap:8px;padding:10px 0;border-bottom:1px solid #e8ecef}.global-activity>div>div>span:before{content:"";display:block;width:7px;height:7px;margin-top:3px;border-radius:50%;background:#3c77aa}.global-activity p{display:grid;gap:3px;margin:0}.global-activity strong{font-size:8px}.global-activity small{color:#74828c;font-size:7px}.global-billing{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:12px;padding:18px}.global-billing>div:first-child>span{color:#6d7e89;font-size:8px;font-weight:850;text-transform:uppercase}.global-billing h2{margin:4px 0 0;font-size:15px}.global-billing p{max-width:720px;margin:5px 0 0;color:#71808b;font-size:9px}.global-billing>div:last-child{display:grid;grid-template-columns:auto auto;gap:4px 12px;justify-items:end}.global-billing>div:last-child strong{font-size:19px}.global-billing>div:last-child small{align-self:center;color:#71808b;font-size:8px}.global-billing button{grid-column:1/-1}
.organizations-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:12px;padding:22px;border-radius:14px;background:linear-gradient(130deg,#172735,#2b4d68);color:#fff}.organizations-hero>div>span{color:#b4c7d4;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.organizations-hero h2{margin:5px 0 0;font-size:22px}.organizations-hero p{max-width:680px;margin:6px 0 0;color:#c1d0da;font-size:10px;line-height:1.5}.organization-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:10px}.organization-summary article{display:grid;gap:6px;padding:13px 15px;border:1px solid #dce4e9;border-radius:10px;background:#fff}.organization-summary span{color:#71808b;font-size:8px}.organization-summary strong{font-size:17px}.organization-security-note{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center;margin-bottom:12px;padding:11px 13px;border:1px solid #c8ded4;border-radius:10px;background:#f3faf6}.organization-security-note>span{display:grid;place-items:center;width:38px;height:34px;border-radius:8px;background:#fff;color:#27725a;font-weight:900}.organization-security-note strong{font-size:9px}.organization-security-note p{margin:3px 0 0;color:#65786e;font-size:8px}.organization-security-note small{color:#27725a;font-size:8px;font-weight:800}.organization-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.organization-card{padding:16px;box-shadow:none}.organization-card.current{border-color:#8fb0cc;box-shadow:inset 0 3px #2d6fa7}.organization-card>header{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:11px;align-items:center}.organization-card>header>span:first-child{display:grid;place-items:center;width:46px;height:42px;border-radius:10px;background:#edf3f8;color:#285f92;font-size:9px;font-weight:900}.organization-card header small{color:#71808b;font-size:7px;text-transform:uppercase}.organization-card h3{margin:3px 0 0;font-size:12px}.organization-card header p{margin:3px 0 0;color:#71808b;font-size:8px}.organization-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:13px 0}.organization-card dl>div{padding:9px;border-radius:8px;background:#f4f7f8}.organization-card dt{color:#72818c;font-size:7px}.organization-card dd{margin:4px 0 0;font-size:9px;font-weight:800}.organization-card footer{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding-top:12px;border-top:1px solid #e4e9ec}.organization-current{margin-right:auto;color:#256394;font-size:8px;font-weight:850}.organization-card footer button{min-height:32px;padding:7px 9px;font-size:8px}
.owner-lock-heading,.organization-form-heading,.organization-access-heading,.organization-switch-heading,.platform-invoice-heading{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:17px;padding-right:30px}.owner-lock-heading>span,.organization-form-heading>span,.organization-access-heading>span,.organization-switch-heading>span,.platform-invoice-heading>span{display:grid;place-items:center;width:50px;height:46px;border-radius:11px;background:#eaf2fa;color:#245e97;font-size:10px;font-weight:900}.owner-lock-heading small,.organization-form-heading small,.organization-access-heading small,.platform-invoice-heading small{color:#71808b;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.owner-lock-heading h2,.organization-form-heading h2,.organization-access-heading h2,.organization-switch-heading h2,.platform-invoice-heading h2{margin:3px 0 0;font-size:18px}.owner-lock-heading p,.organization-form-heading p,.organization-access-heading p,.organization-switch-heading p,.platform-invoice-heading p{margin:4px 0 0;color:#71808b;font-size:9px}.owner-lock-note,.organization-access-help{margin-top:12px;padding:11px 13px;border-left:3px solid #2d6fa6;border-radius:0 8px 8px 0;background:#f2f7fb;color:#516777;font-size:9px;line-height:1.5}.organization-member-list{display:grid;max-height:430px;border:1px solid #dce4e9;border-radius:10px;overflow:auto}.organization-member-row{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #e3e8eb}.organization-member-row:last-child{border-bottom:0}.organization-member-row>label{display:grid!important;grid-template-columns:auto 34px minmax(0,1fr);gap:9px;align-items:center}.organization-member-row>label>input{width:17px}.organization-member-row .profile-avatar{width:34px;height:34px}.organization-member-row strong,.organization-member-row small{display:block}.organization-member-row strong{font-size:9px}.organization-member-row small{margin-top:3px;color:#74828c;font-size:8px}.organization-member-row select{min-height:36px;padding:7px 9px;border:1px solid #d9e1e6;border-radius:7px;background:#fff;font-size:9px}.organization-switch-list{display:grid;gap:7px}.organization-switch-list>button{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border:1px solid #dce4e9;border-radius:9px;background:#fff;color:#27343e;text-align:left;cursor:pointer}.organization-switch-list>button.active{border-color:#8eafca;background:#f1f7fc}.organization-switch-list>button>span{display:grid;place-items:center;width:42px;height:37px;border-radius:8px;background:#edf3f8;color:#285f92;font-size:8px;font-weight:900}.organization-switch-list strong,.organization-switch-list small{display:block}.organization-switch-list strong{font-size:9px}.organization-switch-list small{margin-top:3px;color:#71808b;font-size:8px}
.platform-invoice-summary{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-bottom:12px}.platform-invoice-summary>div{display:grid;gap:5px;padding:11px;border-radius:8px;background:#f3f6f8}.platform-invoice-summary span{color:#71808b;font-size:8px}.platform-invoice-summary strong{font-size:14px}.platform-invoice-list{display:grid;max-height:440px;border:1px solid #dce4e9;border-radius:10px;overflow:auto}.platform-invoice-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:11px 13px;border-bottom:1px solid #e3e8eb}.platform-invoice-list article:last-child{border-bottom:0}.platform-invoice-list article>button{display:grid;gap:3px;border:0;background:transparent;color:#27343e;text-align:left;cursor:pointer}.platform-invoice-list article>button span{color:#71808b;font-size:8px}.platform-invoice-list article>button strong{font-size:9px}.platform-invoice-list article>button small{color:#71808b;font-size:8px}.platform-invoice-list article>div{display:grid;grid-template-columns:auto auto;gap:5px 8px;justify-items:end}.platform-invoice-list article>div>strong{font-size:11px}.platform-invoice-list article>div>span{grid-column:1/-1;display:flex;gap:5px}
@media(max-width:1000px){.global-kpis,.global-quick-actions>div{grid-template-columns:repeat(2,minmax(0,1fr))}.global-dashboard-grid{grid-template-columns:1fr}.organization-grid{grid-template-columns:1fr}}
@media(max-width:700px){.organization-top-switch{grid-column:1/-1;max-width:none}.global-welcome,.organizations-hero{align-items:stretch;flex-direction:column}.global-welcome>div:last-child{justify-items:start}.global-kpis{grid-template-columns:1fr 1fr}.global-quick-actions>div{grid-template-columns:1fr}.global-billing{align-items:stretch;flex-direction:column}.global-billing>div:last-child{justify-items:start}.organization-summary{grid-template-columns:1fr 1fr}.organization-summary article:last-child{grid-column:1/-1}.organization-security-note{grid-template-columns:38px minmax(0,1fr)}.organization-security-note small{grid-column:1/-1}.organization-member-row{grid-template-columns:1fr}.organization-member-row select{margin-left:60px}.platform-invoice-summary{grid-template-columns:1fr 1fr}.platform-invoice-summary button{grid-column:1/-1}.platform-invoice-list article{grid-template-columns:1fr}.platform-invoice-list article>div{justify-items:start}}
@media(max-width:480px){.global-kpis{grid-template-columns:1fr}.global-kpis>button{min-height:92px}.organization-card>header{grid-template-columns:42px minmax(0,1fr)}.organization-card>header>.badge{grid-column:1/-1}.organization-card dl{grid-template-columns:1fr 1fr}.organization-card dl>div:first-child{grid-column:1/-1}.organization-card footer{display:grid;grid-template-columns:1fr 1fr}.organization-current{grid-column:1/-1}.organization-card footer button{width:100%}.organization-member-row select{margin-left:0}}

.sidebar.collapsed .sidebar-subnav{display:none!important}.sidebar.collapsed nav{gap:8px;margin-top:22px}.sidebar.collapsed nav>button,.sidebar.collapsed .settings-link{width:46px;height:44px;margin-inline:auto;padding:0!important;border-radius:10px}.sidebar.collapsed nav>button .icon,.sidebar.collapsed .settings-link .icon{width:21px;height:21px}.sidebar.collapsed .brand-row{display:flex;flex-direction:column;gap:9px}.sidebar.collapsed .brand{justify-content:center}.sidebar.collapsed .brand img{width:36px;height:36px}.sidebar.collapsed .brand-row>button{width:40px;height:36px;background:#22313f}.sidebar.collapsed .profile{width:46px;margin-inline:auto;padding-top:13px}.sidebar.collapsed .profile-avatar{width:38px;height:38px}

/* Informes claros y accionables */
.reports-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:12px;padding:21px 22px;border-radius:14px;background:linear-gradient(125deg,#172735,#2c506c);color:#fff}.reports-head span{color:#b8cad6;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.reports-head h2{margin:5px 0 0;font-size:22px}.reports-head p{margin:6px 0 0;color:#c3d1da;font-size:10px}.reports-head button{border-color:rgba(255,255,255,.32);background:rgba(255,255,255,.1);color:#fff}.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.report-kpis article{display:grid;gap:6px;min-height:108px;padding:14px 15px;border:1px solid #dce4e9;border-radius:11px;background:#fff;box-shadow:0 6px 18px rgba(24,38,50,.045)}.report-kpis article.warning{border-left:3px solid #c78a24}.report-kpis article.danger{border-left:3px solid #bd3f45}.report-kpis span{color:#657783;font-size:9px;font-weight:750}.report-kpis strong{align-self:end;font-size:21px}.report-kpis small{color:#73838e;font-size:8px}.reports-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.report-card{padding:0;overflow:hidden;box-shadow:none}.report-card>header{padding:14px 15px;border-bottom:1px solid #e2e7ea}.report-card h3{margin:0;font-size:12px}.report-card header p{margin:4px 0 0;color:#71808b;font-size:8px}.metric-bars{display:grid;gap:10px;padding:15px}.metric-bars>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;align-items:center}.metric-bars span{overflow:hidden;color:#465b69;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.metric-bars strong{font-size:9px}.metric-bars i{grid-column:1/-1;height:5px;border-radius:99px;background:#e8edf0;overflow:hidden}.metric-bars i:after{content:"";display:block;width:var(--metric-width,0%);height:100%;border-radius:inherit;background:#3574a9}.report-explanation{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:center;margin-top:12px;padding:12px 14px;border-left:3px solid #3472a6;border-radius:0 9px 9px 0;background:#f1f6fa}.report-explanation>span{display:grid;place-items:center;width:34px;height:31px;border-radius:8px;background:#fff;color:#286493;font-weight:900}.report-explanation strong{font-size:9px}.report-explanation p{margin:3px 0 0;color:#5f7381;font-size:8px;line-height:1.5}

/* Acceso privado de desarrollo y sincronización */
.switch-user-heading.private{display:grid;grid-template-columns:48px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:16px;padding-right:30px}.switch-user-heading.private>span{display:grid;place-items:center;width:48px;height:44px;border-radius:11px;background:#eaf2fa;color:#245e97;font-size:18px;font-weight:900}.switch-user-heading.private small{color:#71808b;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.switch-user-heading.private h2{margin:3px 0 0;font-size:18px}.switch-user-heading.private p{margin:4px 0 0;color:#71808b;font-size:9px}.development-access-note,.sync-development-note{margin-top:12px;padding:11px 13px;border-left:3px solid #c28b31;border-radius:0 8px 8px 0;background:#fff8e9;color:#665b42}.development-access-note strong,.sync-development-note strong{font-size:9px}.development-access-note p,.sync-development-note p{margin:4px 0 0;font-size:8px;line-height:1.5}.sync-indicator{position:relative;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #d9e1e6;border-radius:9px;background:#fff;color:#4b6576;cursor:pointer}.sync-indicator:before{content:"";width:10px;height:10px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%}.sync-indicator.offline{border-color:#e2c17e;background:#fff8e9;color:#9a6a16}.sync-indicator.pending{border-color:#a9c3d8;background:#f1f7fc;color:#276497}.sync-indicator b{position:absolute;right:-4px;top:-5px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border:2px solid #f5f7f9;border-radius:99px;background:#b7373d;color:#fff;font-size:7px}.sync-status-heading{display:grid;grid-template-columns:48px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:15px;padding-right:30px}.sync-status-heading>span{display:grid;place-items:center;width:48px;height:44px;border-radius:11px;background:#eaf2fa}.sync-status-heading>span:after{content:"";width:12px;height:12px;border:3px solid #2d6ca1;border-right-color:transparent;border-radius:50%}.sync-status-heading.offline>span{background:#fff4dd}.sync-status-heading.offline>span:after{border-color:#aa7419;border-right-color:transparent}.sync-status-heading small{color:#71808b;font-size:8px;font-weight:850;text-transform:uppercase}.sync-status-heading h2{margin:3px 0 0;font-size:18px}.sync-status-heading p{margin:4px 0 0;color:#71808b;font-size:9px}.sync-status-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sync-status-summary>div{display:grid;gap:5px;padding:12px;border:1px solid #dce4e9;border-radius:9px;background:#f7f9fa}.sync-status-summary span{color:#71808b;font-size:8px}.sync-status-summary strong{font-size:10px;overflow-wrap:anywhere}

@media(max-width:900px){.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:660px){.reports-head{align-items:stretch;flex-direction:column;padding:18px}.reports-head button{width:100%}.reports-grid{grid-template-columns:1fr}.report-kpis article{min-height:96px}.sync-status-summary{grid-template-columns:1fr}}
@media(max-width:420px){.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.report-kpis article{min-height:86px;padding:12px}.reports-head h2{font-size:19px}}

.metric-bars i:after{display:none}.metric-bars i b{display:block;height:100%;border-radius:inherit;background:#3574a9}.sync-indicator>i,.sync-indicator>span{display:none}

/* Documentación y cumplimiento */
.compliance-overview{margin-top:13px;padding:17px;border:1px solid #dce4e9;border-radius:13px;background:#fff;box-shadow:0 7px 22px rgba(23,35,46,.045)}.compliance-overview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:12px}.compliance-overview-head span,.compliance-head>div>span{color:#667a88;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.compliance-overview-head h2{margin:4px 0 0;font-size:15px}.compliance-overview-head>button{border:0;background:transparent;color:#245e97;font-size:9px;font-weight:800;cursor:pointer}.compliance-overview>div:last-child{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.compliance-overview>div:last-child>button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;min-height:76px;padding:12px;border:1px solid #dfe6ea;border-radius:9px;background:#f8fafb;color:#27343e;text-align:left;cursor:pointer}.compliance-overview>div:last-child>button:hover{border-color:#a4b9ca;background:#fff}.compliance-overview>div:last-child>button.warning{border-left:3px solid #ca902e}.compliance-overview>div:last-child>button.danger{border-left:3px solid #be4046}.compliance-overview button span{font-size:9px;font-weight:750}.compliance-overview button strong{grid-row:1/3;grid-column:2;font-size:20px}.compliance-overview button small{color:#71808b;font-size:8px}
.compliance-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:10px;padding:21px 22px;border-radius:14px;background:linear-gradient(125deg,#172735,#31556f);color:#fff}.compliance-head>div>span{color:#b7cad6}.compliance-head h2{margin:5px 0 0;font-size:22px}.compliance-head p{margin:6px 0 0;color:#c3d1da;font-size:10px}.compliance-tabs{display:flex;gap:4px;margin-bottom:10px;padding:4px;border:1px solid #dce4e9;border-radius:10px;background:#edf2f5}.compliance-tabs button{flex:1;min-height:40px;border:0;border-radius:7px;background:transparent;color:#5e7180;font-size:10px;font-weight:800;cursor:pointer}.compliance-tabs button.active{background:#fff;color:#245f98;box-shadow:0 3px 10px rgba(29,49,65,.08)}.compliance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:10px}.compliance-kpis button{display:grid;gap:5px;min-height:100px;padding:13px 14px;border:1px solid #dce4e9;border-radius:10px;background:#fff;color:#27343e;text-align:left;cursor:pointer}.compliance-kpis button.active{border-color:#84a8c6;box-shadow:inset 0 3px #2e6fa5}.compliance-kpis span{color:#667986;font-size:9px;font-weight:750}.compliance-kpis strong{align-self:end;font-size:20px}.compliance-kpis small{color:#71808b;font-size:8px}.compliance-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:10px;padding:12px 14px;box-shadow:none}.compliance-toolbar label{display:grid;gap:4px;color:#6e7e89;font-size:8px;font-weight:800}.compliance-toolbar select{min-width:240px}.compliance-toolbar>span{color:#71808b;font-size:8px}.compliance-list{overflow:hidden;padding:0;box-shadow:none}
.compliance-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px 15px;border-bottom:1px solid #e3e8eb}.compliance-row:last-child{border-bottom:0}.compliance-row.expired{box-shadow:inset 3px 0 #bd3c42}.compliance-row.upcoming{box-shadow:inset 3px 0 #c9912f}.compliance-row.missing{box-shadow:inset 3px 0 #8a98a2}.compliance-symbol{display:grid;place-items:center;width:42px;height:38px;border-radius:9px;background:#edf3f8;color:#285f92;font-size:9px;font-weight:900}.compliance-row>div:nth-child(2){min-width:0}.compliance-row>div:nth-child(2)>small{display:block;color:#70818c;font-size:7px;font-weight:800;text-transform:uppercase}.compliance-row>div:nth-child(2)>strong{display:block;margin-top:4px;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compliance-row p{display:block;margin:4px 0 0;color:#6a7b87;font-size:8px}.compliance-row-actions{display:flex;gap:5px}.compliance-row-actions button{min-height:34px;padding:7px 9px;font-size:8px}
.compliance-upload-heading{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:16px;padding-right:30px}.compliance-upload-heading>span{display:grid;place-items:center;width:50px;height:46px;border-radius:11px;background:#eaf2fa;color:#245e97;font-size:9px;font-weight:900}.compliance-upload-heading small{color:#71808b;font-size:8px;font-weight:850;text-transform:uppercase}.compliance-upload-heading h2{margin:3px 0 0;font-size:18px}.compliance-upload-heading p{margin:4px 0 0;color:#71808b;font-size:9px}.compliance-upload-note{margin-top:11px;padding:10px 12px;border-left:3px solid #3574a7;border-radius:0 8px 8px 0;background:#f1f6fa;color:#587080;font-size:8px;line-height:1.5}
.provider-compliance-summary{display:grid;gap:3px;margin-top:10px;padding:9px 10px;border-radius:8px;background:#f0f6fa}.provider-compliance-summary.attention{background:#fff5e7}.provider-compliance-summary span{color:#2c6090;font-size:8px;font-weight:850}.provider-compliance-summary small{color:#687b88;font-size:7px}.provider-compliance-access{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:12px 0;padding:12px 13px;border:1px solid #cbdce8;border-radius:9px;background:#f4f8fb}.provider-compliance-access.attention{border-color:#e4c98e;background:#fff9ed}.provider-compliance-access div{display:grid;gap:3px}.provider-compliance-access span{color:#70808b;font-size:7px;text-transform:uppercase}.provider-compliance-access strong{font-size:9px}.provider-compliance-access small{color:#687986;font-size:8px}.provider-compliance-access button{white-space:nowrap}
@media(max-width:900px){.compliance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.compliance-row{grid-template-columns:42px minmax(0,1fr) auto}.compliance-row-actions{grid-column:2/-1}}
@media(max-width:650px){.compliance-overview-head,.compliance-head{align-items:stretch;flex-direction:column}.compliance-overview>div:last-child{grid-template-columns:1fr}.compliance-head{padding:18px}.compliance-head .primary{width:100%;min-height:44px}.compliance-toolbar{align-items:stretch;flex-direction:column}.compliance-toolbar select{width:100%;min-width:0}.compliance-row{grid-template-columns:38px minmax(0,1fr);gap:9px;padding:12px}.compliance-row>.badge{grid-column:2;justify-self:start}.compliance-row-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.compliance-row-actions button{min-height:42px}.provider-compliance-access{align-items:stretch;flex-direction:column}.provider-compliance-access button{width:100%}}
@media(max-width:430px){.compliance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.compliance-kpis button{min-height:92px;padding:11px}.compliance-tabs button{font-size:9px}}

/* Alta directa de presupuestos */
.quotes-head-actions{display:flex;align-items:center;gap:8px}.quotes-head-actions .primary{min-height:40px}.quote-upload-heading{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:16px;padding-right:30px}.quote-upload-heading>span{display:grid;place-items:center;width:50px;height:46px;border-radius:11px;background:#fff3dc;color:#9a6510;font-size:9px;font-weight:900}.quote-upload-heading small{color:#71808b;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.quote-upload-heading h2{margin:3px 0 0;font-size:18px}.quote-upload-heading p{margin:4px 0 0;color:#71808b;font-size:9px}.quote-upload-file{display:grid!important;place-items:center;min-height:112px;margin-bottom:12px;padding:17px;border:2px dashed #9fb5c7!important;border-radius:11px;background:#f5f9fc;color:#265f94!important;text-align:center;cursor:pointer}.quote-upload-file input{position:absolute;width:1px!important;height:1px!important;opacity:0}.quote-upload-file:before{content:"PDF";display:grid;place-items:center;width:46px;height:42px;margin-bottom:7px;border-radius:9px;background:#fff;box-shadow:0 7px 18px rgba(25,57,82,.1);font-size:9px;font-weight:900}.quote-upload-file>span{color:#70808b;font-size:8px;font-weight:500}.quote-upload-note{margin-top:11px;padding:10px 12px;border-left:3px solid #3372a7;border-radius:0 8px 8px 0;background:#f1f6fa;color:#587080;font-size:8px;line-height:1.5}
@media(max-width:700px){.quotes-head{display:grid;grid-template-columns:minmax(0,1fr) auto}.quotes-head-actions{grid-column:1/-1}.quotes-head-actions .primary{width:100%}.quote-upload-heading{grid-template-columns:44px minmax(0,1fr)}.quote-upload-heading>span{width:44px;height:42px}}

/* Inventario de equipos y mantenimiento preventivo */
.asset-head,.preventive-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:11px;padding:21px 22px;border-radius:14px;background:linear-gradient(125deg,#172735,#31556f);color:#fff}.asset-head span,.preventive-head span{color:#b9cad5;font-size:8px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.asset-head h2,.preventive-head h2{margin:5px 0 0;font-size:22px}.asset-head p,.preventive-head p{margin:6px 0 0;color:#c3d1da;font-size:10px}.asset-kpis,.preventive-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:10px}.asset-kpis article,.preventive-kpis button{display:grid;gap:5px;min-height:98px;padding:13px 14px;border:1px solid #dce4e9;border-radius:10px;background:#fff;color:#27343e;text-align:left}.preventive-kpis button{cursor:pointer}.asset-kpis .danger,.preventive-kpis .danger{border-left:3px solid #bd3f45}.asset-kpis .warning,.preventive-kpis .warning{border-left:3px solid #c9912f}.asset-kpis span,.preventive-kpis span{color:#657783;font-size:9px;font-weight:750}.asset-kpis strong,.preventive-kpis strong{align-self:end;font-size:20px}.asset-kpis small,.preventive-kpis small{color:#72818c;font-size:8px}.asset-toolbar{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:10px;padding:12px 14px;box-shadow:none}.asset-toolbar label{display:grid;gap:4px;width:min(520px,100%)}.asset-toolbar label span{color:#6e7e89;font-size:8px;font-weight:800}.asset-toolbar>span{color:#71808b;font-size:8px}.asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.asset-grid>.empty{grid-column:1/-1}.asset-card{padding:15px;color:#27343e;text-align:left;cursor:pointer;box-shadow:none}.asset-card:hover{border-color:#9fb4c5;transform:translateY(-1px)}.asset-card header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center}.asset-card header>span:first-child,.asset-detail-heading>span{display:grid;place-items:center;width:44px;height:40px;border-radius:9px;background:#eaf2f8;color:#285f93;font-size:9px;font-weight:900}.asset-card header small{color:#71808b;font-size:7px;text-transform:uppercase}.asset-card h3{margin:3px 0 0;font-size:11px}.asset-card header p{margin:3px 0 0;color:#71808b;font-size:8px}.asset-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:13px 0}.asset-card dl>div{padding:9px;border-radius:8px;background:#f4f7f8}.asset-card dt{color:#71808b;font-size:7px}.asset-card dd{margin:4px 0 0;font-size:8px;font-weight:800;overflow-wrap:anywhere}.asset-card>span{display:block;padding-top:10px;border-top:1px solid #e3e8eb;color:#245f98;font-size:8px;font-weight:800}.asset-form-heading,.asset-detail-heading,.preventive-form-heading,.preventive-complete-heading{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:16px;padding-right:30px}.asset-form-heading>span,.preventive-form-heading>span,.preventive-complete-heading>span{display:grid;place-items:center;width:50px;height:46px;border-radius:11px;background:#eaf2fa;color:#245e97;font-size:9px;font-weight:900}.asset-form-heading small,.asset-detail-heading small,.preventive-form-heading small,.preventive-complete-heading small{color:#71808b;font-size:8px;font-weight:850;text-transform:uppercase}.asset-form-heading h2,.asset-detail-heading h2,.preventive-form-heading h2,.preventive-complete-heading h2{margin:3px 0 0;font-size:18px}.asset-form-heading p,.asset-detail-heading p,.preventive-form-heading p,.preventive-complete-heading p{margin:4px 0 0;color:#71808b;font-size:9px}.asset-detail-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:11px}.asset-detail-summary>div{display:grid;gap:4px;padding:10px;border-radius:8px;background:#f3f6f8}.asset-detail-summary span{color:#71808b;font-size:7px}.asset-detail-summary strong{font-size:8px}.asset-detail-section{overflow:hidden;margin-top:10px;border:1px solid #dce4e9;border-radius:9px}.asset-detail-section>header{display:flex;align-items:center;justify-content:space-between;padding:11px 12px;background:#f5f7f9}.asset-detail-section h3{margin:0;font-size:10px}.asset-detail-section header span{font-size:8px;font-weight:850}.asset-detail-section>button{display:grid;gap:3px;width:100%;padding:10px 12px;border:0;border-top:1px solid #e3e8eb;background:#fff;color:#27343e;text-align:left;cursor:pointer}.asset-detail-section>button:hover{background:#f7f9fa}.asset-detail-section strong{font-size:9px}.asset-detail-section small{color:#71808b;font-size:8px}.detail-equipment-link{padding:0;border:0;background:transparent;color:#245f98;font:inherit;font-weight:800;cursor:pointer}
.preventive-tabs{display:flex;gap:4px;margin-bottom:10px;padding:4px;border:1px solid #dce4e9;border-radius:10px;background:#edf2f5;overflow:auto}.preventive-tabs button{flex:1;min-width:90px;min-height:38px;border:0;border-radius:7px;background:transparent;color:#607482;font-size:9px;font-weight:800;cursor:pointer}.preventive-tabs button.active{background:#fff;color:#245f98;box-shadow:0 3px 10px rgba(29,49,65,.08)}.preventive-list{overflow:hidden;padding:0;box-shadow:none}.preventive-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px 15px;border-bottom:1px solid #e3e8eb}.preventive-row:last-child{border-bottom:0}.preventive-row.overdue{box-shadow:inset 3px 0 #bd3f45}.preventive-row.upcoming{box-shadow:inset 3px 0 #c9912f}.preventive-date{display:grid;place-items:center;width:48px;height:46px;border-radius:9px;background:#edf3f8}.preventive-date b{font-size:16px}.preventive-date small{color:#657987;font-size:7px;font-weight:800;text-transform:uppercase}.preventive-row>div:nth-child(2){min-width:0}.preventive-row>div:nth-child(2)>small{color:#71808b;font-size:7px;text-transform:uppercase}.preventive-row>div:nth-child(2)>strong{display:block;margin-top:4px;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preventive-row p{margin:4px 0 0;color:#6e7e89;font-size:8px}.preventive-row>div:last-child{display:flex;gap:5px}.preventive-row>div:last-child button{min-height:34px;padding:7px 9px;font-size:8px}
@media(max-width:900px){.asset-kpis,.preventive-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-grid{grid-template-columns:1fr}.preventive-row{grid-template-columns:48px minmax(0,1fr) auto}.preventive-row>div:last-child{grid-column:2/-1}}
@media(max-width:650px){.asset-head,.preventive-head{align-items:stretch;flex-direction:column;padding:18px}.asset-head .primary,.preventive-head .primary{width:100%;min-height:44px}.asset-toolbar{align-items:stretch;flex-direction:column}.asset-card dl,.asset-detail-summary{grid-template-columns:1fr}.asset-card header{grid-template-columns:40px minmax(0,1fr)}.asset-card header>.badge{grid-column:1/-1;justify-self:start}.preventive-row{grid-template-columns:42px minmax(0,1fr);padding:12px}.preventive-row>.badge{grid-column:2;justify-self:start}.preventive-row>div:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.preventive-row>div:last-child button{min-height:42px}.asset-form-heading,.asset-detail-heading,.preventive-form-heading,.preventive-complete-heading{grid-template-columns:44px minmax(0,1fr)}.asset-form-heading>span,.preventive-form-heading>span,.preventive-complete-heading>span{width:44px;height:42px}.asset-detail-heading>.badge{grid-column:1/-1;justify-self:start}}
@media(max-width:430px){.asset-kpis,.preventive-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-kpis article,.preventive-kpis button{min-height:90px;padding:11px}}

.quote-visible-number{display:inline-flex!important;align-items:center;justify-content:center;width:max-content;margin-bottom:4px;padding:3px 6px;border-radius:5px;background:#eaf2fa;color:#245f98!important;font-size:8px!important;font-weight:900!important;letter-spacing:.04em}
.asset-toolbar input{width:min(520px,100%);min-height:40px;padding:9px 11px;border:1px solid #d5dfe5;border-radius:8px;background:#fff;font:inherit}.asset-toolbar input:focus{border-color:#6f9abc;outline:2px solid #e2eef7}.asset-grid>.empty{display:grid;place-items:center;min-height:120px;padding:24px;border:1px solid #dce4e9;border-radius:11px;background:#fff}
.quote-linked-incident{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding:11px 12px;border:1px solid #cdddea;border-radius:9px;background:#f3f8fb}.quote-linked-incident>div{display:grid;gap:3px;min-width:0}.quote-linked-incident span{color:#6e7e89;font-size:7px;font-weight:850;text-transform:uppercase}.quote-linked-incident strong{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-linked-incident small{color:#71808b;font-size:8px}.quote-linked-incident.empty-link{border-style:dashed;background:#f8fafb}.quote-linked-incident button{white-space:nowrap}@media(max-width:600px){.quote-linked-incident{align-items:stretch;flex-direction:column}.quote-linked-incident button{width:100%;min-height:42px}}

/* Menú lateral estable en pantallas de poca altura */
@media(min-width:821px){.sidebar{min-height:0;overflow:hidden}.sidebar .brand-row,.sidebar .settings-link,.sidebar .profile{flex:0 0 auto}.sidebar nav{flex:1 1 auto;min-height:0;align-content:start;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.sidebar nav::-webkit-scrollbar{display:none}}
@media(min-width:821px) and (max-height:760px){.sidebar{padding-top:12px;padding-bottom:12px}.sidebar nav,.sidebar.collapsed nav{gap:3px;margin-top:10px}.sidebar nav>button,.sidebar .settings-link,.sidebar.collapsed nav>button,.sidebar.collapsed .settings-link{min-height:38px;height:40px}.sidebar .profile,.sidebar.collapsed .profile{margin-top:8px;padding-top:8px}.sidebar.collapsed .brand-row{gap:4px}.sidebar.collapsed .brand img{width:32px;height:32px}.sidebar.collapsed .brand-row>button{height:30px}}
.sidebar .brand-row{display:flex;align-items:center;min-width:0}.sidebar .brand{flex:1 1 auto;min-width:0}.sidebar .brand>span{min-width:0;overflow:hidden}.sidebar .brand b,.sidebar .brand small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar .brand-row>button{position:relative;z-index:2;flex:0 0 36px;margin-left:auto}.sidebar.collapsed .brand-row{align-items:center}.sidebar.collapsed .brand{flex:0 0 auto}.sidebar.collapsed .brand-row>button{margin-left:0}
.sidebar:not(.collapsed) .brand-row{display:grid;grid-template-columns:minmax(0,1fr) 36px;grid-template-rows:auto auto;column-gap:7px}.sidebar:not(.collapsed) .brand{grid-column:1;grid-row:1}.sidebar:not(.collapsed) .brand-row>button{grid-column:2;grid-row:1;margin:0}.brand-subtitle{grid-column:1/-1;grid-row:2;margin:4px 0 0 44px;color:#95a3af;font-size:8px;font-weight:650;letter-spacing:.065em;text-transform:uppercase;white-space:nowrap}.sidebar.collapsed .brand-subtitle{display:none}
@media(max-width:1050px) and (min-width:821px){.sidebar:not(.collapsed) .brand-row{display:flex;flex-direction:column;gap:5px}.sidebar:not(.collapsed) .brand{flex:0 0 auto}.sidebar:not(.collapsed) .brand-row>button{margin:0}.sidebar .brand-subtitle{display:none}}
.menu-preference-entry{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;margin-top:13px;padding:10px 11px;border:1px solid #dce4e9;border-radius:9px;background:#f7f9fa;color:#27343e;text-align:left;cursor:pointer}.menu-preference-entry:hover{border-color:#9fb5c6;background:#fff}.menu-preference-entry>span{display:grid;place-items:center;width:38px;height:34px;border-radius:8px;background:#eaf2fa;color:#245f98;font-size:16px}.menu-preference-entry strong,.menu-preference-entry small{display:block}.menu-preference-entry strong{font-size:9px}.menu-preference-entry small{margin-top:3px;color:#71808b;font-size:8px}.menu-preference-entry>b{color:#6b7d89}.menu-preference-heading{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:15px;padding-right:30px}.menu-preference-heading>span{display:grid;place-items:center;width:50px;height:46px;border-radius:11px;background:#eaf2fa;color:#245f98;font-size:19px;font-weight:900}.menu-preference-heading small{color:#71808b;font-size:8px;font-weight:850;text-transform:uppercase}.menu-preference-heading h2{margin:3px 0 0;font-size:18px}.menu-preference-heading p{margin:4px 0 0;color:#71808b;font-size:9px}.menu-order-list{display:grid;max-height:430px;border:1px solid #dce4e9;border-radius:10px;overflow:auto}.menu-order-list article{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:49px;padding:7px 9px;border-bottom:1px solid #e3e8eb;background:#fff}.menu-order-list article:last-child{border-bottom:0}.menu-order-list article.fixed{background:#f4f7f8}.menu-order-list article>span{display:grid;place-items:center;width:34px;height:32px;border-radius:8px;background:#edf3f8;color:#285f92}.menu-order-list .icon{width:17px;height:17px}.menu-order-list strong{font-size:9px}.menu-order-list article>small{color:#71808b;font-size:8px;font-weight:800}.menu-order-list article>div{display:flex;gap:4px}.menu-order-list article>div button{display:grid;place-items:center;width:34px;height:32px;padding:0;border:1px solid #d5dfe5;border-radius:7px;background:#fff;color:#315f86;font-size:15px;cursor:pointer}.menu-order-list article>div button:hover:not(:disabled){border-color:#83a7c3;background:#edf5fb}.menu-order-list article>div button:disabled{opacity:.3;cursor:default}.menu-preference-note{margin-top:10px;padding:9px 11px;border-left:3px solid #3473a7;border-radius:0 7px 7px 0;background:#f1f6fa;color:#5c7180;font-size:8px}
@media(max-width:520px){.menu-order-list{max-height:360px}.menu-order-list article{grid-template-columns:32px minmax(0,1fr) auto}.menu-order-list article>div button{width:38px;height:36px}}

/* Apariencia personal y previsualización en directo */
html[data-accent="navy"]{--blue:#174e73}
html[data-accent="teal"]{--blue:#176d70}
html[data-accent="navy"] .primary:hover{background:#103a57}
html[data-accent="teal"] .primary:hover{background:#105457}
html[data-accent="navy"] .segmented button.active,html[data-accent="navy"] .text-button,html[data-accent="navy"] .back,html[data-accent="teal"] .segmented button.active,html[data-accent="teal"] .text-button,html[data-accent="teal"] .back{color:var(--blue)}
html[data-contrast="high"]{--ink:#0b141b;--muted:#465762;--line:#bac6cd;--page:#edf1f3;--shadow:0 7px 22px rgba(11,20,27,.1)}
html[data-contrast="high"] input,html[data-contrast="high"] select,html[data-contrast="high"] textarea{border-color:#aebcc5}
html[data-contrast="high"]{--muted:#354650;--line:#91a1ab;--page:#e9edef}
html[data-contrast="high"] .panel,html[data-contrast="high"] .stat,html[data-contrast="high"] input,html[data-contrast="high"] select,html[data-contrast="high"] textarea,html[data-contrast="high"] .secondary{border-color:#8d9da7!important}
html[data-contrast="high"] .panel,html[data-contrast="high"] .stat{box-shadow:0 5px 15px rgba(10,19,26,.12)}
html[data-contrast="high"] .page .muted,html[data-contrast="high"] .page small,html[data-contrast="high"] .page p{color:#354650}
html[data-contrast="high"] .sidebar{background:#101820}
html[data-density="compact"] .content{padding-top:9px}
html[data-density="compact"] .stats,html[data-density="compact"] .incident-kpis,html[data-density="compact"] .dashboard-grid{gap:10px;margin-bottom:11px}
html[data-density="compact"] .stat{padding:12px 14px}
html[data-density="compact"] .attention-row,html[data-density="compact"] .visit-row{padding-top:10px;padding-bottom:10px}
.attention-received{display:flex;align-items:center;gap:6px;margin-top:6px;color:#2f6f9f;font-size:9px;font-weight:800}.attention-received:before{content:'';width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#4f8dbc}.attention-row:hover .attention-received{color:#245f92}
html[data-density="compact"] .panel-head{padding:13px 15px}
html[data-density="compact"] .config-card{min-height:104px;padding:14px}
html[data-density="compact"] .topbar{padding-top:14px;padding-bottom:8px}
html[data-density="compact"] .content{padding-bottom:36px}
html[data-density="compact"] .team-strip,html[data-density="compact"] .panel,html[data-density="compact"] .detail-section{border-radius:9px}
html[data-density="compact"] .detail-section,html[data-density="compact"] .simple-page{padding:13px}
html[data-density="compact"] .summary-list{gap:6px;margin-top:11px}
html[data-density="compact"] .summary-list div{padding:7px}
html[data-density="compact"] .sidebar nav{gap:3px}
html[data-density="compact"] .sidebar nav>button,html[data-density="compact"] .settings-link{min-height:39px;height:41px}
html[data-density="compact"] .appearance-section{padding:12px 13px}
html[data-density="compact"] .appearance-option{min-height:46px;padding:6px 8px}
html[data-text-size="large"] .sidebar nav button,html[data-text-size="large"] .settings-link{font-size:14px}
html[data-text-size="large"] .topbar p,html[data-text-size="large"] .panel-head p,html[data-text-size="large"] .attention-row small,html[data-text-size="large"] .visit-row small,html[data-text-size="large"] .config-card span{font-size:13px}
html[data-text-size="large"] .attention-row strong,html[data-text-size="large"] .visit-row strong,html[data-text-size="large"] .panel-head h2{font-size:15px}
html[data-text-size="large"] button,html[data-text-size="large"] input,html[data-text-size="large"] select,html[data-text-size="large"] textarea{font-size:14px}
html[data-text-size="large"] .page p,html[data-text-size="large"] .page label,html[data-text-size="large"] .page dt,html[data-text-size="large"] .page dd{font-size:13px!important;line-height:1.55}
html[data-text-size="large"] .page small{font-size:11px!important;line-height:1.5}
html[data-text-size="large"] .badge{font-size:11px!important;padding:5px 9px}
html[data-text-size="large"] .primary,html[data-text-size="large"] .secondary,html[data-text-size="large"] .text-button{min-height:44px;font-size:14px}
html[data-text-size="large"] .topbar h1{font-size:29px}
html[data-text-size="large"] .appearance-option strong{font-size:12px}
html[data-text-size="large"] .appearance-option small{font-size:10px!important}

.appearance-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:5px 0 14px;padding:22px 24px;border-radius:15px;background:linear-gradient(125deg,#172735,#2d506c);color:#fff;box-shadow:0 14px 34px rgba(23,39,53,.14)}.appearance-hero>div:first-child>span{color:#aec2d1;font-size:8px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.appearance-hero h2{margin:5px 0 0;font-size:23px}.appearance-hero p{margin:6px 0 0;color:#c2d0da;font-size:10px}.appearance-user{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:center;min-width:245px;padding:10px 12px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(255,255,255,.08)}.appearance-user>span{display:grid;place-items:center;width:42px;height:38px;border-radius:9px;background:#fff;color:#244f70;font-size:9px;font-weight:900}.appearance-user strong,.appearance-user small{display:block}.appearance-user strong{font-size:10px}.appearance-user small{margin-top:3px;color:#bfd0dc;font-size:8px}
.appearance-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:12px;align-items:start}.appearance-settings{display:grid;gap:11px}.appearance-section{padding:17px 18px;box-shadow:none}.appearance-section>header{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:11px;align-items:center;margin-bottom:13px}.appearance-section>header>span{display:grid;place-items:center;width:32px;height:30px;border-radius:8px;background:#eaf2fa;color:var(--blue);font-size:8px;font-weight:900}.appearance-section h3{margin:0;font-size:13px}.appearance-section header p{margin:4px 0 0;color:var(--muted);font-size:8px;line-height:1.45}.appearance-section h4{margin:0 0 8px;color:#657683;font-size:8px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.appearance-options{display:grid;gap:7px}.color-options{grid-template-columns:repeat(3,minmax(0,1fr))}.appearance-option{position:relative;display:grid!important;grid-template-columns:auto auto minmax(0,1fr);gap:9px!important;align-items:center;min-height:56px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#fafbfc;cursor:pointer}.appearance-option:hover{border-color:#a9bbc8;background:#fff}.appearance-option.selected,.appearance-option:has(input:checked){border-color:color-mix(in srgb,var(--blue) 55%,white);background:color-mix(in srgb,var(--blue) 7%,white);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--blue) 18%,transparent)}.appearance-option input{position:absolute;width:1px!important;height:1px!important;opacity:0}.appearance-radio{display:grid;width:17px;height:17px;border:1px solid #b8c5cd;border-radius:50%;background:#fff}.appearance-option input:checked~.appearance-radio{border:5px solid var(--blue)}.appearance-option strong,.appearance-option small{display:block}.appearance-option strong{font-size:9px}.appearance-option small{margin-top:3px;color:var(--muted);font-size:7px;font-weight:500}.color-dot{width:24px;height:24px;border-radius:7px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}.color-dot.blue{background:#2359a6}.color-dot.navy{background:#174e73}.color-dot.teal{background:#176d70}.appearance-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contrast-row{display:grid;grid-template-columns:80px 1fr 1fr;gap:7px;align-items:center;margin-top:13px;padding-top:13px;border-top:1px solid var(--line)}.contrast-row h4{margin:0}.contrast-row .appearance-option{min-height:49px}.menu-order-preview{display:flex;gap:6px;flex-wrap:wrap}.menu-order-preview>span{display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#f7f9fa;color:#465762;font-size:8px;font-weight:750}.menu-order-preview>span.fixed{border-color:#bfd1e0;background:#eff6fb;color:var(--blue)}.menu-order-preview b{display:grid;place-items:center;width:17px;height:17px;border-radius:5px;background:#e5ebef;font-size:7px}.menu-order-preview .icon{width:14px;height:14px}
.language-current{display:grid!important;grid-template-columns:40px minmax(0,1fr) auto;gap:10px!important;align-items:center;padding:11px 12px;border:1px solid #c8dfd3;border-radius:9px;background:#f3faf6}.language-current>span{display:grid;place-items:center;width:40px;height:36px;border-radius:8px;background:#fff;color:#17683f;font-size:9px;font-weight:900}.language-current strong,.language-current small{display:block}.language-current strong{font-size:9px}.language-current small{margin-top:3px;color:#687b70;font-size:8px}.language-roadmap{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.language-roadmap>span{display:flex;align-items:center;gap:6px;padding:7px 8px;border:1px solid var(--line);border-radius:7px;background:#fafbfb;color:#4e606c;font-size:8px;font-weight:750}.language-roadmap b{color:#7a8993;font-size:6px;text-transform:uppercase}.appearance-preview{position:sticky;top:14px;display:grid;gap:11px;padding:18px;border-top:3px solid var(--blue);box-shadow:var(--shadow)}.appearance-preview>span{color:var(--blue);font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.appearance-preview h3{margin:0;font-size:15px}.appearance-preview>p{margin:0;color:var(--muted);font-size:9px;line-height:1.5}.appearance-preview>div{display:grid;gap:3px;padding:10px;border-radius:8px;background:#f3f6f8}.appearance-preview>div small{color:var(--muted);font-size:7px}.appearance-preview>div strong{font-size:9px}.appearance-preview>.badge{justify-self:start}.appearance-preview>.primary{width:100%;margin-top:4px}.appearance-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:8px;position:sticky;bottom:0;z-index:5;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.96);box-shadow:0 -8px 24px rgba(23,33,43,.07);backdrop-filter:blur(8px)}
.inline-menu-editor{display:grid;gap:9px}.inline-menu-help{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:8px;background:#f2f6f9}.inline-menu-help>span{display:grid;place-items:center;width:30px;height:28px;border-radius:7px;background:#fff;color:var(--blue);font-size:16px}.inline-menu-help p{display:grid;gap:2px;margin:0}.inline-menu-help strong{font-size:8px}.inline-menu-help small{color:var(--muted);font-size:7px}.inline-menu-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.inline-menu-list article{display:grid;grid-template-columns:30px 28px minmax(0,1fr) auto;gap:7px;align-items:center;min-height:47px;padding:6px 7px;border:1px solid var(--line);border-radius:8px;background:#fff}.inline-menu-list article.dragging{border-color:var(--blue);background:#edf4fa;opacity:.72;box-shadow:0 8px 22px rgba(23,33,43,.14)}.inline-menu-list article.fixed{background:#f4f7f8}.inline-drag-handle{display:grid;place-items:center;width:30px;height:32px;padding:0;border:0;border-radius:6px;background:#eef2f4;color:#617481;font-size:15px;cursor:grab}.inline-drag-handle:active{cursor:grabbing}.inline-menu-list article.fixed .inline-drag-handle{opacity:.3;cursor:default}.inline-menu-list article>span{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:#edf3f8;color:var(--blue)}.inline-menu-list article>span .icon{width:15px;height:15px}.inline-menu-list article>strong{overflow:hidden;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.inline-menu-list article>small{color:var(--muted);font-size:7px;font-weight:800}.inline-menu-list article>div{display:flex;gap:3px}.inline-menu-list article>div button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid #d3dde3;border-radius:6px;background:#fff;color:var(--blue);font-size:13px;cursor:pointer}.inline-menu-list article>div button:disabled{opacity:.25;cursor:default}
@media(max-width:1000px){.appearance-layout{grid-template-columns:1fr}.appearance-preview{position:static;grid-template-columns:minmax(0,1fr) auto;align-items:center}.appearance-preview>span,.appearance-preview>p,.appearance-preview>div{grid-column:1}.appearance-preview>.badge,.appearance-preview>.primary{grid-column:2}.appearance-preview>.primary{grid-row:3/5;min-width:150px}.appearance-actions{grid-column:1}}
@media(max-width:680px){.appearance-hero{align-items:stretch;flex-direction:column;padding:18px}.appearance-user{min-width:0}.appearance-section{padding:14px}.appearance-section>header{grid-template-columns:30px minmax(0,1fr)}.appearance-section>header>button{grid-column:1/-1;width:100%;min-height:42px}.color-options,.appearance-two-columns{grid-template-columns:1fr}.contrast-row{grid-template-columns:1fr}.appearance-preview{display:grid;grid-template-columns:1fr}.appearance-preview>*{grid-column:1!important;grid-row:auto!important}.appearance-preview>.primary{min-height:43px}.appearance-actions{display:grid;grid-template-columns:1fr 1fr}.appearance-actions button{min-height:43px}.language-roadmap>span{flex:1 1 120px;justify-content:space-between}.inline-menu-list{grid-template-columns:1fr}.inline-drag-handle{cursor:default}.inline-menu-list article{min-height:54px}.inline-menu-list article>div button{width:38px;height:38px}}

/* Acceso profesional y carga de sesión */
.modal-backdrop.auth-backdrop{background:rgba(15,25,33,.5);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
body:has(.auth-backdrop) .mobile-nav,body:has(.auth-backdrop) .mobile-new{visibility:hidden}
.boot-splash{position:fixed;inset:0;z-index:999;display:grid;place-content:center;justify-items:center;gap:18px;background:#f2f5f7;color:#17212b}.boot-splash>div{display:grid;grid-template-columns:48px auto;gap:2px 12px;align-items:center}.boot-splash img{grid-row:1/3;width:48px;height:48px}.boot-splash strong{align-self:end;font-size:20px}.boot-splash small{align-self:start;color:#687986;font-size:8px;letter-spacing:.08em;text-transform:uppercase}.boot-splash p{margin:0;color:#637581;font-size:10px}.boot-splash>span{width:220px;height:4px;border-radius:99px;background:#dbe3e8;overflow:hidden}.boot-splash>span i{display:block;width:55%;height:100%;border-radius:inherit;background:#2359a6;animation:boot-progress 1.1s ease-in-out infinite}@keyframes boot-progress{0%{width:8%;transform:translateX(-20%)}60%{width:62%}100%{width:30%;transform:translateX(330%)}}
.modal.auth-modal{width:min(880px,calc(100vw - 32px));max-width:none;padding:0;overflow:hidden}.auth-shell{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(360px,1fr);min-height:560px}.auth-brand{display:flex;flex-direction:column;padding:31px;background:linear-gradient(145deg,#152431,#24445c);color:#fff}.auth-logo{display:flex;align-items:center;gap:11px}.auth-logo img{width:42px;height:42px}.auth-logo strong,.auth-logo small{display:block}.auth-logo strong{font-size:16px}.auth-logo small{margin-top:3px;color:#a9bfce;font-size:7px;letter-spacing:.075em;text-transform:uppercase}.auth-brand-message{margin:auto 0}.auth-brand-message>span{color:#9eb9ca;font-size:8px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.auth-brand-message h2{max-width:310px;margin:9px 0 0;font-size:27px;line-height:1.1;letter-spacing:-.03em}.auth-brand-message p{max-width:315px;margin:12px 0 0;color:#bfd0da;font-size:10px;line-height:1.65}.auth-trust{display:grid;gap:9px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14)}.auth-trust span{color:#b9cad5;font-size:8px}.auth-form{display:flex;flex-direction:column;padding:38px 42px;background:#fff}.auth-form-head{margin-bottom:22px}.auth-form-head>span{color:var(--blue);font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.auth-form-head h2{margin:6px 0 0;font-size:23px;letter-spacing:-.02em}.auth-form-head p{margin:7px 0 0;color:var(--muted);font-size:9px;line-height:1.55}.auth-form>label{display:grid;gap:6px;margin-bottom:12px;color:#2d3b45;font-size:9px;font-weight:800}.auth-input{position:relative}.auth-input>span{position:absolute;left:12px;top:50%;z-index:2;color:#70828f;font-size:14px;transform:translateY(-50%)}.auth-input input{padding-left:36px!important}.auth-form input{width:100%;min-height:46px;padding:11px 13px;border:1px solid #cfd9df;border-radius:9px;background:#fff;color:#17212b;outline:0}.auth-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 12%,transparent)}.forgot-password-link{align-self:flex-end;margin:-3px 0 10px;padding:4px 0;border:0;background:transparent;color:var(--blue);font-size:8px;font-weight:800;cursor:pointer}.development-access-note.compact{margin:0 0 12px;padding:9px 11px}.development-access-note.compact strong,.development-access-note.compact span{display:block}.development-access-note.compact strong{font-size:8px}.development-access-note.compact span{margin-top:2px;font-size:7px}.auth-submit{min-height:46px}.auth-secondary-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.auth-secondary-actions button{min-height:40px;font-size:8px}.auth-form .menu-preference-entry{margin-top:10px}.auth-security-note{margin-top:auto;padding-top:14px;color:#84919a;font-size:7px;text-align:center}.forgot-heading{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:16px;padding-right:30px}.forgot-heading>span{display:grid;place-items:center;width:48px;height:44px;border-radius:11px;background:#eaf2fa;color:var(--blue);font-size:18px;font-weight:900}.forgot-heading small{color:var(--muted);font-size:7px;font-weight:850;text-transform:uppercase}.forgot-heading h2{margin:3px 0 0;font-size:18px}.forgot-heading p{margin:4px 0 0;color:var(--muted);font-size:8px;line-height:1.45}.forgot-help{margin:12px 0;padding:11px 12px;border-left:3px solid var(--blue);border-radius:0 8px 8px 0;background:#f2f6f9}.forgot-help strong{font-size:8px}.forgot-help p{margin:3px 0 0;color:#617481;font-size:8px;line-height:1.5}.reset-request-sent{display:grid;justify-items:center;padding:16px;text-align:center}.reset-request-sent>span{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#eaf7f0;color:#19734a;font-size:23px;font-weight:900}.reset-request-sent h2{margin:15px 0 0}.reset-request-sent p{max-width:360px;margin:7px 0 18px;color:var(--muted);font-size:9px;line-height:1.55}
.modal.session-loading-modal{width:min(420px,calc(100vw - 32px));padding:0}.session-loading{display:grid;justify-items:center;padding:34px;text-align:center}.session-loading-logo{display:flex;align-items:center;gap:9px}.session-loading-logo img{width:38px;height:38px}.session-loading-logo span{font-size:14px;font-weight:850}.session-loading>div:nth-child(2){margin-top:24px}.session-loading>div:nth-child(2)>small{color:var(--blue);font-size:8px;font-weight:850;text-transform:uppercase}.session-loading h2{margin:5px 0 0;font-size:22px}.session-loading p{margin:6px 0 0;color:var(--muted);font-size:9px}.session-progress{width:100%;height:5px;margin:24px 0 10px;border-radius:99px;background:#e3e9ed;overflow:hidden}.session-progress i{display:block;width:100%;height:100%;border-radius:inherit;background:var(--blue);transform-origin:left;animation:session-progress .65s ease-out both}.session-loading>span{color:#74838d;font-size:8px}@keyframes session-progress{from{transform:scaleX(.05)}to{transform:scaleX(1)}}
@media(max-width:720px){.modal.auth-modal{width:min(520px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto}.auth-shell{grid-template-columns:1fr;min-height:0}.auth-brand{padding:17px 20px}.auth-brand-message,.auth-trust{display:none}.auth-logo img{width:36px;height:36px}.auth-form{padding:25px 22px}.auth-security-note{margin-top:18px}.auth-secondary-actions{grid-template-columns:1fr}.auth-secondary-actions button{min-height:43px}}
@media(min-width:721px) and (max-width:1024px){.modal.auth-modal{width:min(820px,calc(100vw - 40px))}.auth-shell{grid-template-columns:minmax(250px,.75fr) minmax(350px,1fr)}.auth-brand{padding:25px}.auth-form{padding:32px}}

/* Equilibrio visual del acceso, independiente del tamaño elegido en la app */
.auth-form{position:relative;gap:0;color:#263746}.auth-form-head>span{font-size:9px}.auth-form-head h2{color:#243544;font-size:27px;font-weight:780}.auth-form-head p{color:#647888;font-size:11px;line-height:1.55}.auth-form>label{margin-bottom:14px;color:#354856;font-size:11px}.auth-input>span{display:none}.auth-input input{padding-left:14px!important}.auth-form input,.auth-form .password-field>input{height:50px;min-height:50px;padding-top:0;padding-bottom:0;border-color:#c7d3da;border-radius:10px;background:#fff;color:#263746;font-size:14px!important;font-weight:650}.auth-form input::placeholder{color:#8a99a3;font-weight:500}.auth-form input:focus{border-color:#4e7dad;box-shadow:0 0 0 3px rgba(35,89,166,.09)}.auth-form .password-eye{width:38px;height:38px}.forgot-password-link{margin:-5px 0 13px;color:#35699c;font-size:10px}.auth-submit{width:100%;height:48px;min-height:48px!important;padding:0 18px!important;border-radius:9px;font-size:13px!important;box-shadow:0 5px 13px color-mix(in srgb,var(--blue) 18%,transparent)}.auth-cancel{position:absolute;right:18px;top:18px;z-index:3;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:8px;background:#eef2f4;color:#5b6d79;font-size:20px;line-height:1;cursor:pointer}.auth-cancel:hover{background:#e2e9ed;color:#263640}.auth-current-session{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:14px;padding:10px 11px;border:1px solid #d8e2e8;border-radius:10px;background:#f6f8fa}.auth-current-session>span{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:#e4edf5;color:#275e91;font-size:9px;font-weight:900}.auth-current-session small,.auth-current-session strong{display:block}.auth-current-session small{color:#738590;font-size:8px}.auth-current-session strong{margin-top:2px;color:#314552;font-size:11px}.auth-current-session button{display:flex;align-items:center;justify-content:center;gap:7px;height:38px;padding:0 13px;border:1px solid #d4dde3;border-radius:8px;background:#fff;color:#405563;font-size:9px;font-weight:800;cursor:pointer;box-shadow:0 2px 5px rgba(23,33,43,.04)}.auth-current-session button i{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#fff0f0;color:#a52c31;font-size:12px;font-style:normal}.auth-current-session button:hover{border-color:#b8c7d0;background:#fbfcfd}.auth-secondary-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:15px;padding-top:15px;border-top:1px solid #e1e7eb}.auth-secondary-actions button{display:flex;align-items:center;justify-content:center;width:100%;height:44px;min-height:44px!important;padding:0 12px!important;border:1px solid #d5dfe5;border-radius:9px;font-size:9px!important;font-weight:800}.auth-secondary-actions .secondary{background:#f2f5f7;color:#31414c}.auth-secondary-actions .text-danger{border-color:#e3c8ca;background:#fffafa;color:#a2282d}.auth-secondary-actions .text-danger:hover{border-color:#c96d71;background:#fff1f1}.development-access-note.compact{border-radius:9px}.development-access-note.compact strong{font-size:9px}.development-access-note.compact span{font-size:8px}.auth-security-note{padding-top:17px;color:#7c8c96;font-size:8px}
@media(max-width:720px){.auth-form{padding:23px 20px}.auth-form-head{margin-bottom:18px;padding-right:30px}.auth-cancel{right:13px;top:13px}.auth-form input,.auth-form .password-field>input{height:48px;min-height:48px}.auth-secondary-actions{grid-template-columns:1fr}.auth-secondary-actions button{height:46px;min-height:46px!important}.auth-submit{height:48px;min-height:48px!important}.auth-current-session{grid-template-columns:34px minmax(0,1fr)}.auth-current-session button{grid-column:1/-1;width:100%;height:40px}}

/* Modo de pantalla y tema oscuro */
.screen-mode-row{display:grid;grid-template-columns:110px 1fr 1fr;gap:7px;align-items:center;margin-top:13px;padding-top:13px;border-top:1px solid var(--line)}.screen-mode-row h4{margin:0}.screen-mode-row .appearance-option{min-height:49px}
html[data-theme="dark"]{--ink:#e8eef2;--muted:#9cacb7;--line:#384955;--page:#0f171e;--card:#18242d;--sidebar:#0b1218;--shadow:0 7px 24px rgba(0,0,0,.22)}
html[data-theme="dark"] body,html[data-theme="dark"] .page{background:var(--page);color:var(--ink)}
html[data-theme="dark"] .panel,html[data-theme="dark"] .stat,html[data-theme="dark"] .team-strip,html[data-theme="dark"] .attention-row,html[data-theme="dark"] .visit-row,html[data-theme="dark"] .config-card,html[data-theme="dark"] .appearance-actions{border-color:var(--line);background:var(--card);color:var(--ink)}
html[data-theme="dark"] .page :is(input,select,textarea){border-color:#455762;background:#111c24;color:#e8eef2;color-scheme:dark}
html[data-theme="dark"] .page :is(.secondary,.segmented,.summary-list div,.appearance-option,.inline-menu-help,.inline-menu-list article,.appearance-preview>div,.menu-order-preview>span){border-color:var(--line);background:#22313b;color:var(--ink)}
html[data-theme="dark"] .page :is(.attention-row,.visit-row,.inline-menu-list article):hover{background:#202f39}
html[data-theme="dark"] .appearance-option:has(input:checked){border-color:color-mix(in srgb,var(--blue) 70%,#fff);background:color-mix(in srgb,var(--blue) 24%,#17232c)}
html[data-theme="dark"] .appearance-radio{border-color:#62727d;background:#101920}
html[data-theme="dark"] .inline-drag-handle,html[data-theme="dark"] .inline-menu-list article>div button{border-color:#4a5c67;background:#111b22;color:#b8c7d0}
html[data-theme="dark"] .language-current{border-color:#365e4b;background:#172b23;color:#e8eef2}
html[data-theme="dark"] .language-current>span{background:#21382e;color:#8fd3ad}
html[data-theme="dark"] .language-roadmap>span{border-color:var(--line);background:#202d36;color:#c8d3da}
html[data-theme="dark"] .appearance-preview{border-top-color:var(--blue)}
html[data-theme="dark"] .appearance-hero,html[data-theme="dark"] .asset-head,html[data-theme="dark"] .preventive-head{box-shadow:0 15px 34px rgba(0,0,0,.25)}
@media(max-width:680px){.screen-mode-row{grid-template-columns:1fr}.inline-menu-list{display:none!important}.inline-menu-help>span{display:none}.inline-menu-help p small{display:none}.inline-menu-help p:after{content:"El orden del menú se configura desde tablet u ordenador.";color:var(--muted);font-size:8px}}
.new-incident-photo{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:10px;background:#f7f9fa}.new-incident-photo strong{font-size:10px}.new-incident-photo p{margin:4px 0 0;color:var(--muted);font-size:8px;line-height:1.45}.new-incident-photo .photo-button{margin:0}.new-incident-photo .photo-preview{grid-column:1/-1;margin:0}.new-incident-photo .photo-preview:empty{display:none}html[data-theme="dark"] .new-incident-photo{background:#202e38}@media(max-width:600px){.new-incident-photo{grid-template-columns:1fr}.new-incident-photo .photo-button{width:100%;min-height:44px;text-align:center}}

/* Portal básico del restaurante */
.restaurant-portal-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px;padding:21px 23px;border-radius:14px;background:linear-gradient(125deg,#173149,#2c6287);color:#fff;box-shadow:0 12px 28px rgba(23,49,73,.14)}.restaurant-portal-head>div:first-child>span{color:#b6ccda;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.restaurant-portal-head h1{margin:5px 0 0;font-size:24px}.restaurant-portal-head p{margin:6px 0 0;color:#c6d7e1;font-size:10px}.restaurant-portal-head>div:last-child{display:grid;gap:3px;min-width:220px;padding:10px 12px;border:1px solid rgba(255,255,255,.2);border-radius:9px;background:rgba(255,255,255,.08)}.restaurant-portal-head>div:last-child small{color:#bcd0dc;font-size:7px;text-transform:uppercase}.restaurant-portal-head>div:last-child strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.restaurant-portal-tabs{display:grid;grid-template-columns:1fr 1fr;gap:9px;max-width:820px;margin:0 auto 12px}.restaurant-portal-tabs>button{display:grid;grid-template-columns:50px minmax(0,1fr);gap:11px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);text-align:left;cursor:pointer;box-shadow:0 4px 14px rgba(23,33,43,.04)}.restaurant-portal-tabs>button.active{border-color:#8fb0cc;background:#f2f7fb;box-shadow:inset 0 0 0 1px #c5d9e8}.restaurant-tab-icon{display:grid;place-items:center;width:50px;height:46px;border-radius:10px;background:#eaf2f9;color:#286496;font-size:15px;font-weight:900}.restaurant-tab-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7}.restaurant-portal-tabs strong,.restaurant-portal-tabs small{display:block}.restaurant-portal-tabs strong{font-size:11px}.restaurant-portal-tabs small{margin-top:4px;color:var(--muted);font-size:8px}.restaurant-portal-grid{max-width:820px;margin:auto}.restaurant-portal-grid.mode-new .restaurant-tracking,.restaurant-portal-grid.mode-list .restaurant-report-form{display:none}.restaurant-report-form{display:grid;gap:15px;padding:20px}.restaurant-portal-location{display:grid;gap:6px;color:#31434f;font-size:9px;font-weight:800}.restaurant-portal-location select{min-height:43px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}.restaurant-camera{position:relative;overflow:hidden;display:grid!important;place-items:center;min-height:205px;padding:24px;border:2px dashed #93afc4!important;border-radius:13px;background:linear-gradient(145deg,#f8fbfd,#edf4f9);color:#285f91!important;text-align:center;cursor:pointer}.restaurant-camera:hover{border-color:#4b7faa!important;background:#f4f9fc}.restaurant-camera input{position:absolute!important;inset:0!important;z-index:2;width:100%!important;height:100%!important;margin:0!important;opacity:.01!important;pointer-events:auto!important;cursor:pointer}.restaurant-camera>span{display:grid;place-items:center;width:66px;height:62px;border-radius:15px;background:#fff;box-shadow:0 9px 24px rgba(32,78,113,.12)}.restaurant-camera svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.6}.restaurant-camera strong{margin-top:13px;font-size:14px}.restaurant-camera small{margin-top:5px;color:#6e8290;font-size:9px}.restaurant-photo-preview{justify-content:center;margin:0}.restaurant-photo-preview:empty{display:none}.restaurant-photo-preview img{width:88px;height:88px}.restaurant-description{display:grid;gap:6px;color:#31434f;font-size:10px;font-weight:800}.restaurant-description textarea{min-height:105px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#fff;resize:vertical}.restaurant-description>small{color:var(--muted);font-size:8px;font-weight:500}.restaurant-severity{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:0;padding:0;border:0}.restaurant-severity legend{grid-column:1/-1;margin-bottom:2px;color:#31434f;font-size:10px;font-weight:800}.restaurant-severity label{position:relative;cursor:pointer}.restaurant-severity input{position:absolute;opacity:0}.restaurant-severity span{display:grid;gap:4px;min-height:64px;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fafbfb}.restaurant-severity input:checked+span{border-color:#7398b8;background:#edf5fb;box-shadow:inset 0 0 0 1px #bdd2e2}.restaurant-severity strong{font-size:9px}.restaurant-severity small{color:var(--muted);font-size:7px}.restaurant-severity label:nth-of-type(3) input:checked+span{border-color:#d3a24c;background:#fff8e8}.restaurant-severity label:nth-of-type(4) input:checked+span{border-color:#d77d81;background:#fff1f1}.restaurant-send{min-height:48px;font-size:12px}.restaurant-send-note{margin:0;color:var(--muted);font-size:8px;text-align:center}.restaurant-tracking{overflow:hidden}.restaurant-tracking>header{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;border-bottom:1px solid var(--line)}.restaurant-tracking>header span{color:var(--blue);font-size:7px;font-weight:850;text-transform:uppercase}.restaurant-tracking>header h2{margin:4px 0 0;font-size:15px}.restaurant-tracking>header>b{display:grid;place-items:center;min-width:30px;height:30px;border-radius:99px;background:#eaf2fa;color:#285f91;font-size:9px}.restaurant-tracking>div{max-height:620px;overflow:auto}.restaurant-tracking>div>button{display:grid;grid-template-columns:minmax(0,1fr) minmax(145px,auto) 10px;gap:10px;align-items:center;width:100%;padding:13px 15px;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--ink);text-align:left;cursor:pointer}.restaurant-tracking>div>button:hover{background:#f8fafb}.restaurant-tracking button>div strong,.restaurant-tracking button>div small,.restaurant-tracking button>span small{display:block}.restaurant-tracking button>div strong{font-size:10px}.restaurant-tracking button>div small{margin-top:4px;color:var(--muted);font-size:8px}.restaurant-tracking button>span{display:grid;justify-items:end;gap:4px}.restaurant-tracking button>span small{color:var(--muted);font-size:7px}.restaurant-tracking button>em{grid-column:1/-1;padding:7px 9px;border-radius:7px;background:#f4f7f8;color:#647784;font-size:7px;font-style:normal}.restaurant-detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px}.restaurant-detail-hero>div:first-child>span{color:var(--blue);font-size:8px;font-weight:850;text-transform:uppercase}.restaurant-detail-hero h2{margin:5px 0 0;font-size:20px}.restaurant-detail-hero p{max-width:720px;margin:8px 0 0;color:var(--muted);font-size:10px;line-height:1.55}.restaurant-detail-hero>div:last-child{display:grid;justify-items:end;gap:5px}.restaurant-detail-hero>div:last-child small{color:var(--muted);font-size:8px}.restaurant-detail-grid{display:grid;grid-template-columns:270px minmax(0,1fr);gap:12px;margin-top:12px}.restaurant-detail-grid>article{padding:17px}.restaurant-detail-grid h3{margin:0;font-size:13px}.restaurant-detail-grid dl{display:grid;gap:8px;margin:13px 0 0}.restaurant-detail-grid dl>div{padding:10px;border-radius:8px;background:#f4f7f8}.restaurant-detail-grid dt{color:var(--muted);font-size:7px}.restaurant-detail-grid dd{margin:4px 0 0;font-size:9px;font-weight:800}

.restaurant-sender-field{display:grid;gap:6px;color:#31434f;font-size:10px;font-weight:800}.restaurant-sender-field input{min-height:45px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;font:inherit;color:var(--ink)}.restaurant-sender-field input:focus{border-color:#4b7faa;outline:3px solid rgba(75,127,170,.12)}.restaurant-sender-field small{color:var(--muted);font-size:8px;font-weight:500}.restaurant-sender{display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:#f8fafb}.restaurant-sender .profile-avatar{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border-radius:9px;background:#e6f0f8;color:#245f92;font-size:9px;font-weight:900}.restaurant-sender small,.restaurant-sender strong{display:block}.restaurant-sender small{color:var(--muted);font-size:8px}.restaurant-sender strong{margin-top:2px;font-size:10px}.incident-send-modal{width:min(430px,100%);overflow:hidden}.incident-send-progress{padding:10px 4px 4px;text-align:center}.send-progress-icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 14px;border-radius:16px;background:var(--blue);color:#fff;font-size:25px;font-weight:900;box-shadow:0 12px 28px rgba(35,89,166,.23)}.incident-send-progress>small{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.incident-send-progress h2{margin:5px 0 7px}.incident-send-progress p{margin:0;color:var(--muted);font-size:10px}.send-progress-track{height:9px;margin:22px 0 9px;overflow:hidden;border-radius:99px;background:#e4e9ed}.send-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),#3d8fe0);transition:width .32s ease}.incident-send-progress>span:last-child{display:block;min-height:17px;color:#556773;font-size:9px}.incident-send-modal .modal-actions,.incident-send-modal .modal-close{display:none}
@media(max-width:600px){.incident-send-modal{border-radius:18px 18px 0 0}.incident-send-progress{padding:18px 4px 12px}.restaurant-sender-field input{font-size:16px}.restaurant-send{min-height:54px;font-size:13px}}

.send-progress-detail{display:block;min-height:17px;color:#556773;font-size:9px}.send-photo-progress{display:grid;gap:6px;margin-top:16px;padding-top:13px;border-top:1px solid var(--line);text-align:left}.send-photo-progress>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 9px;border-radius:7px;background:#f4f6f7;color:#627581;font-size:9px;transition:.2s}.send-photo-progress>div b{font-size:8px}.send-photo-progress>div.done{background:#edf8f2;color:#1c7148}.send-photo-progress>div.done b:before{content:'✓ ';font-weight:900}.send-photo-empty{margin-top:15px;padding:9px;border-radius:8px;background:#f4f6f7;color:var(--muted);font-size:8px}.restaurant-send-confirmation{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:12px;padding:14px 48px 14px 14px;border:1px solid #a9d9bf;border-radius:12px;background:linear-gradient(115deg,#eefaf3,#f8fcfa);box-shadow:0 8px 22px rgba(28,113,72,.09)}.restaurant-send-confirmation>span{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#218657;color:#fff;font-size:21px;font-weight:900}.restaurant-send-confirmation small,.restaurant-send-confirmation strong{display:block}.restaurant-send-confirmation small{color:#1c7148;font-size:8px;font-weight:850;text-transform:uppercase}.restaurant-send-confirmation strong{margin-top:3px;font-size:11px}.restaurant-send-confirmation p{margin:4px 0 0;color:#5d7468;font-size:8px}.restaurant-send-confirmation.pending{border-color:#e3c27b;background:linear-gradient(115deg,#fff8e9,#fffdfa)}.restaurant-send-confirmation.pending>span{background:#b8780f}.restaurant-send-confirmation.pending small{color:#8b5b0d}.restaurant-send-confirmation>.secondary{min-width:120px}.confirmation-close{position:absolute;right:10px;top:10px;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:#708079;font-size:18px;cursor:pointer}.confirmation-close:hover{background:rgba(23,33,43,.06)}
@media(max-width:600px){.send-photo-progress{max-height:145px;overflow:auto}.restaurant-send-confirmation{grid-template-columns:40px minmax(0,1fr);padding:13px 42px 13px 13px}.restaurant-send-confirmation>span{width:40px;height:40px}.restaurant-send-confirmation>.secondary{grid-column:1/-1;width:100%;min-height:42px}.restaurant-send-confirmation strong{font-size:10px}}

.certificate-alert-head>div>span{display:block;margin-bottom:5px;color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.certificate-alert-form{display:grid;gap:13px;max-width:980px}.certificate-alert-master{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 19px;border-left:4px solid var(--blue)}.certificate-alert-master strong{font-size:13px}.certificate-alert-master p{margin:4px 0 0;color:var(--muted);font-size:9px}.certificate-alert-block{padding:19px}.certificate-alert-block>header{display:flex;align-items:flex-start;gap:11px;margin-bottom:16px}.certificate-alert-block>header>b{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:8px;background:#eaf2f9;color:#285f91;font-size:9px}.certificate-alert-block h3{margin:0;font-size:13px}.certificate-alert-block header p{margin:4px 0 0;color:var(--muted);font-size:9px}.certificate-day-options{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.certificate-day-options label,.certificate-role-options label{cursor:pointer}.certificate-day-options input,.certificate-role-options input,.certificate-user-list input{position:absolute;opacity:0;pointer-events:none}.certificate-day-options span{display:grid;gap:4px;min-height:66px;padding:11px;border:1px solid var(--line);border-radius:9px;background:#fafbfb}.certificate-day-options input:checked+span{border-color:#6d97b9;background:#edf5fb;box-shadow:inset 0 0 0 1px #bdd2e2}.certificate-day-options strong{font-size:12px}.certificate-day-options small{color:var(--muted);font-size:8px}.certificate-role-options{display:flex;flex-wrap:wrap;gap:7px}.certificate-role-options span{display:block;padding:9px 12px;border:1px solid var(--line);border-radius:99px;background:#fff;color:#526470;font-size:9px;font-weight:750}.certificate-role-options input:checked+span{border-color:#6d97b9;background:#eaf3fa;color:#245f92}.certificate-user-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.certificate-user-list label{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;padding:9px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer}.certificate-user-list label:has(input:checked){border-color:#6d97b9;background:#f1f7fb;box-shadow:inset 0 0 0 1px #c8dae8}.certificate-user-list .profile-avatar{grid-column:1;grid-row:1}.certificate-user-list label>span:last-child{grid-column:2;grid-row:1}.certificate-user-list strong,.certificate-user-list small{display:block}.certificate-user-list strong{font-size:9px}.certificate-user-list small{margin-top:2px;color:var(--muted);font-size:8px}.certificate-alert-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:5px 0}.certificate-alert-actions p{margin:0;color:var(--muted);font-size:9px}.certificate-alert-actions button{min-width:190px}

.photo-preview-grid .photo-edit-button{left:6px;right:6px;top:auto;bottom:27px;display:flex;width:auto;height:27px;gap:5px;padding:0 8px;border-radius:7px;background:rgba(23,33,43,.86);font-size:9px;font-weight:800}.photo-preview-grid .photo-edit-button span{font-size:12px}.photo-preview-grid .photo-remove-button{right:5px;top:5px}.photo-editor-modal{width:min(900px,96vw);max-height:95vh;overflow:auto}.photo-editor-head small{color:var(--blue);font-size:9px;font-weight:850;text-transform:uppercase}.photo-editor-head h2{margin:4px 0 5px}.photo-editor-head p{margin:0;color:var(--muted);font-size:10px}.photo-editor-stage{position:relative;display:grid;place-items:center;min-height:320px;margin:16px 0 10px;padding:10px;overflow:hidden;border-radius:12px;background:#111820}.photo-editor-stage canvas{display:block;max-width:100%;max-height:56vh;border-radius:5px;touch-action:none;cursor:crosshair}.photo-editor-hint{position:absolute;left:50%;bottom:17px;transform:translateX(-50%);padding:7px 11px;border-radius:99px;background:rgba(0,0,0,.7);color:#fff;font-size:8px;white-space:nowrap;pointer-events:none}.photo-editor-tools{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.photo-editor-tools button{display:grid;justify-items:center;gap:4px;min-height:54px;padding:7px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#42545f;cursor:pointer}.photo-editor-tools button.active{border-color:#5f8eb5;background:#edf5fb;color:#245f92;box-shadow:inset 0 0 0 1px #c7dbe9}.photo-editor-tools b{font-size:18px}.photo-editor-tools span{font-size:8px;font-weight:800}.photo-editor-crop-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px;padding:9px 11px;border-radius:9px;background:#fff7e7;color:#71501d;font-size:9px}.photo-editor-crop-action[hidden]{display:none}.photo-editor-crop-action button{min-height:34px;padding:7px 12px}
@media(max-width:700px){.certificate-day-options{grid-template-columns:repeat(2,1fr)}.certificate-user-list{grid-template-columns:1fr}.certificate-alert-master,.certificate-alert-actions{align-items:stretch;flex-direction:column}.certificate-alert-actions button{width:100%}.photo-editor-modal{height:96vh;max-height:96vh}.photo-editor-stage{min-height:300px;margin-inline:-8px}.photo-editor-stage canvas{max-height:51vh}.photo-editor-tools{gap:5px}.photo-editor-tools button{min-width:0;padding:6px 2px}.photo-editor-hint{max-width:88%;overflow:hidden;text-overflow:ellipsis}.photo-editor-crop-action{align-items:stretch;flex-direction:column}.photo-editor-crop-action button{width:100%}}
html[data-theme="dark"] .restaurant-portal-tabs>button,html[data-theme="dark"] .restaurant-report-form,html[data-theme="dark"] .restaurant-tracking>div>button{border-color:var(--line);background:var(--card);color:var(--ink)}html[data-theme="dark"] .restaurant-portal-tabs>button.active,html[data-theme="dark"] .restaurant-severity input:checked+span{background:#203646}html[data-theme="dark"] .restaurant-camera{background:#172731}html[data-theme="dark"] .restaurant-description textarea,html[data-theme="dark"] .restaurant-portal-location select{background:#111c24;color:#e8eef2}html[data-theme="dark"] .restaurant-severity span,html[data-theme="dark"] .restaurant-tracking button>em,html[data-theme="dark"] .restaurant-detail-grid dl>div{background:#22313b}
@media(max-width:700px){.restaurant-portal-head{align-items:stretch;flex-direction:column;padding:18px}.restaurant-portal-head h1{font-size:21px}.restaurant-portal-head>div:last-child{min-width:0}.restaurant-portal-tabs{gap:7px}.restaurant-portal-tabs>button{grid-template-columns:42px minmax(0,1fr);padding:9px}.restaurant-tab-icon{width:42px;height:40px}.restaurant-portal-tabs strong{font-size:9px}.restaurant-portal-tabs small{font-size:7px}.restaurant-report-form{padding:14px}.restaurant-camera{min-height:180px}.restaurant-severity{grid-template-columns:1fr 1fr}.restaurant-tracking>div>button{grid-template-columns:minmax(0,1fr) 10px}.restaurant-tracking button>span{grid-column:1;grid-row:2;justify-items:start}.restaurant-tracking button>em{grid-row:3}.restaurant-detail-hero{flex-direction:column}.restaurant-detail-hero>div:last-child{justify-items:start}.restaurant-detail-grid{grid-template-columns:1fr}.restaurant-mobile-nav{grid-template-columns:repeat(2,1fr)!important}}

/* Alta de accesos por tipo */
.user-account-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.user-account-cards>button{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:11px;align-items:center;padding:14px;color:var(--ink);text-align:left;cursor:pointer;box-shadow:none}.user-account-cards>button.active{border-color:#8fafca;background:#f2f7fb;box-shadow:inset 0 0 0 1px #c6d9e8}.user-account-cards>button>span{display:grid;place-items:center;width:44px;height:40px;border-radius:9px;background:#eaf2fa;color:#285f91;font-size:9px;font-weight:900}.user-account-cards strong,.user-account-cards small{display:block}.user-account-cards strong{font-size:11px}.user-account-cards small{margin-top:4px;color:var(--muted);font-size:8px}.user-account-cards>button>b{display:grid;place-items:center;min-width:27px;height:27px;border-radius:99px;background:#e8edf0;color:#526674;font-size:8px}.account-type-heading,.quick-user-heading{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:16px;padding-right:30px}.account-type-heading>span,.quick-user-heading>span{display:grid;place-items:center;width:50px;height:46px;border-radius:11px;background:#eaf2fa;color:#285f91;font-size:10px;font-weight:900}.account-type-heading small,.quick-user-heading small{color:var(--blue);font-size:7px;font-weight:850;text-transform:uppercase}.account-type-heading h2,.quick-user-heading h2{margin:3px 0 0;font-size:19px}.account-type-heading p,.quick-user-heading p{margin:4px 0 0;color:var(--muted);font-size:9px}.quick-user-heading.restaurant>span{background:#edf7f1;color:#1b7048}.account-type-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.account-type-options>button{display:grid;grid-template-columns:44px minmax(0,1fr) 12px;gap:10px;align-items:center;min-height:116px;padding:14px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);text-align:left;cursor:pointer}.account-type-options>button:hover{border-color:#89aac4;background:#f7fafc;transform:translateY(-1px)}.account-type-options>button>span{display:grid;place-items:center;width:44px;height:40px;border-radius:9px;background:#eaf2fa;color:#285f91;font-size:9px;font-weight:900}.account-type-options strong,.account-type-options small,.account-type-options b{display:block}.account-type-options strong{font-size:11px}.account-type-options small{margin-top:4px;color:var(--muted);font-size:8px}.account-type-options b{margin-top:9px;color:var(--blue);font-size:8px}.account-type-options i{color:#70818d;font-size:18px;font-style:normal}.account-type-note{margin-top:11px;padding:9px 11px;border-left:3px solid var(--blue);border-radius:0 7px 7px 0;background:#f1f6fa;color:#5d7180;font-size:8px}.quick-account-preview{display:grid;grid-template-columns:48px minmax(0,1fr);gap:11px;align-items:center;margin:12px 0;padding:13px;border:1px solid #cadce8;border-radius:10px;background:#f3f8fb}.quick-account-preview>span{display:grid;place-items:center;width:48px;height:44px;border-radius:9px;background:#fff;color:#285f91;font-size:9px;font-weight:900}.quick-account-preview small,.quick-account-preview strong{display:block}.quick-account-preview small{color:var(--muted);font-size:7px}.quick-account-preview strong{margin-top:3px;font-size:12px}.quick-account-preview p{margin:5px 0 0;color:#617786;font-size:8px;line-height:1.45}.quick-user-security{display:flex;align-items:center;gap:10px;margin:12px 0;padding:11px 12px;border:1px solid #c8dfd3;border-radius:9px;background:#f3faf6}.quick-user-security>span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#fff;color:#19734a;font-weight:900}.quick-user-security strong{font-size:9px}.quick-user-security p{margin:3px 0 0;color:#61766a;font-size:8px}.quick-user-optional{margin-top:11px;border:1px solid var(--line);border-radius:9px;background:#fafbfb}.quick-user-optional summary{padding:11px;color:var(--blue);font-size:9px;font-weight:800;cursor:pointer}.quick-user-optional>div{padding:0 11px 11px}.credentials-created{display:grid;justify-items:center;text-align:center}.credentials-created>span{display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:#eaf7f0;color:#19734a;font-size:21px;font-weight:900}.credentials-created>small{margin-top:12px;color:var(--blue);font-size:7px;font-weight:850;text-transform:uppercase}.credentials-created h2{margin:5px 0 0}.credentials-created>p{max-width:420px;margin:7px 0 15px;color:var(--muted);font-size:9px}.credentials-created>section{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.credentials-created>section>div{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#f7f9fa;text-align:left}.credentials-created>section small{color:var(--muted);font-size:7px}.credentials-created>section strong{font-size:11px;overflow-wrap:anywhere}.credentials-warning{width:100%;margin-top:10px;padding:9px;border-radius:7px;background:#fff6df;color:#77591a;font-size:8px}
html[data-theme="dark"] .user-account-cards>button.active,html[data-theme="dark"] .account-type-options>button,html[data-theme="dark"] .quick-user-optional{background:#20313c;color:var(--ink)}
@media(max-width:650px){.user-account-cards,.account-type-options,.credentials-created>section{grid-template-columns:1fr}.user-account-cards>button{min-height:76px}.account-type-options>button{min-height:96px}.quick-account-preview{grid-template-columns:42px minmax(0,1fr)}.quick-account-preview>span{width:42px;height:40px}}

.quick-restaurant-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:13px}.quick-restaurant-mode label{position:relative;cursor:pointer}.quick-restaurant-mode input{position:absolute;opacity:0}.quick-restaurant-mode span{display:grid;gap:4px;min-height:60px;padding:10px 11px;border:1px solid var(--line);border-radius:9px;background:#fafbfb}.quick-restaurant-mode input:checked+span{border-color:#83a6c1;background:#eff6fb;box-shadow:inset 0 0 0 1px #c3d8e7}.quick-restaurant-mode strong{font-size:9px}.quick-restaurant-mode small{color:var(--muted);font-size:7px}.quick-user-heading+form>[data-quick-existing],.quick-user-heading+form>[data-quick-new]{display:grid;gap:10px;margin-bottom:11px}.quick-user-heading+form>[data-quick-existing][hidden],.quick-user-heading+form>[data-quick-new][hidden]{display:none}.auth-current-session button i{display:none}.auth-current-session button{min-width:112px;border:0;background:#2d4659;color:#fff;box-shadow:none}.auth-current-session button:hover{background:#21394b;color:#fff}
html[data-theme="dark"] .quick-restaurant-mode span{background:#20313b}html[data-theme="dark"] .quick-restaurant-mode input:checked+span{background:#203f55}
@media(max-width:600px){.quick-restaurant-mode{grid-template-columns:1fr}.auth-current-session button{width:100%}}
.user-create-actions{display:flex;gap:8px}.user-create-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px}.user-create-actions .icon{width:16px;height:16px}@media(max-width:650px){.config-section-head{align-items:stretch;flex-direction:column}.user-create-actions{display:grid;grid-template-columns:1fr 1fr}.user-create-actions button{min-height:46px;padding:9px;font-size:9px}}
.user-basic-optional,.user-advanced-settings{border:1px solid var(--line);border-radius:10px;background:#f8fafb}.user-basic-optional{margin-top:11px}.user-basic-optional summary,.user-advanced-settings>summary{padding:11px 13px;color:var(--blue);font-size:9px;font-weight:800;cursor:pointer;list-style-position:inside}.user-basic-optional>div{padding:0 13px 13px}.user-advanced-settings{margin:0 22px}.user-advanced-settings>summary span,.user-advanced-settings>summary small{display:block}.user-advanced-settings>summary small{margin:4px 0 0;color:var(--muted);font-size:8px;font-weight:500}.user-advanced-settings>div{display:grid;gap:12px;padding:0 0 13px}.user-advanced-settings .config-form-section{margin:0 13px}.user-advanced-settings[open]>summary{border-bottom:1px solid var(--line);margin-bottom:12px}html[data-theme="dark"] .user-basic-optional,html[data-theme="dark"] .user-advanced-settings{background:#202e38}@media(max-width:650px){.user-advanced-settings{margin:0 14px}}
.duplicate-incident-heading{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:14px;padding-right:30px}.duplicate-incident-heading>span{display:grid;place-items:center;width:48px;height:44px;border-radius:10px;background:#fff3dc;color:#9b6710;font-size:17px;font-weight:900}.duplicate-incident-heading small{color:#9a6715;font-size:7px;font-weight:850;text-transform:uppercase}.duplicate-incident-heading h2{margin:3px 0 0;font-size:18px}.duplicate-incident-heading p{margin:4px 0 0;color:var(--muted);font-size:8px}.duplicate-incident-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #e4cf9f;border-radius:9px;background:#fffaf0}.duplicate-incident-card strong,.duplicate-incident-card small{display:block}.duplicate-incident-card strong{font-size:10px}.duplicate-incident-card small{margin-top:4px;color:#756b55;font-size:8px}@media(max-width:560px){.duplicate-incident-card{align-items:stretch;flex-direction:column}.duplicate-incident-card button{width:100%;min-height:42px}}

/* Control propietario de altas y facturación */
.global-subscription-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:15px 17px;border:1px solid #c6d9e7;border-radius:12px;background:linear-gradient(105deg,#f5f9fc,#edf5fa)}.global-subscription-bar>div{display:grid;gap:3px}.global-subscription-bar span{color:#476679;font-size:8px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.global-subscription-bar strong{font-size:14px}.global-subscription-bar small{color:#6b7f8c;font-size:8px}.global-subscription-bar button{display:flex;align-items:center;gap:7px;white-space:nowrap}.global-subscription-bar button b{display:grid;place-items:center;min-width:20px;height:20px;border-radius:99px;background:#a96300;color:#fff;font-size:8px}.modal.subscription-modal{width:min(900px,calc(100vw - 28px));max-width:none}.subscription-heading{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;align-items:center;padding-right:32px}.subscription-heading>span{display:grid;place-items:center;width:50px;height:46px;border-radius:11px;background:#eaf2fa;color:#285f91;font-size:10px;font-weight:900}.subscription-heading small{color:var(--blue);font-size:7px;font-weight:850;text-transform:uppercase}.subscription-heading h2{margin:3px 0 0;font-size:20px}.subscription-heading p{margin:4px 0 0;color:var(--muted);font-size:9px}.subscription-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0 11px}.subscription-summary>div{padding:12px;border:1px solid var(--line);border-radius:9px;background:#f7f9fa}.subscription-summary span,.subscription-summary strong{display:block}.subscription-summary span{color:var(--muted);font-size:8px}.subscription-summary strong{margin-top:5px;font-size:17px}.subscription-list{display:grid;gap:7px;max-height:430px;overflow:auto;padding-right:4px}.subscription-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(250px,.8fr);gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:#fff}.subscription-list>article.pending{border-color:#e0c98f;background:#fffbf1}.subscription-list article>div:first-child small,.subscription-list article>div:first-child strong,.subscription-list article>div:first-child span{display:block}.subscription-list article>div:first-child small{color:var(--muted);font-size:7px}.subscription-list article>div:first-child strong{margin-top:3px;font-size:10px}.subscription-list article>div:first-child span{margin-top:3px;color:#627683;font-size:8px}.subscription-action{display:flex;align-items:end;justify-content:flex-end;gap:7px}.subscription-action label{gap:4px!important;min-width:125px;font-size:7px!important}.subscription-action input{min-height:37px!important;padding:7px!important}.subscription-action button{min-height:37px;padding:8px 10px;font-size:8px}.subscription-action>span{color:var(--muted);font-size:8px}.subscription-note,.organization-price-field{margin-top:11px;padding:10px 12px;border-left:3px solid var(--blue);border-radius:0 8px 8px 0;background:#f2f6f9}.subscription-note strong{font-size:9px}.subscription-note p,.organization-price-field p{margin:3px 0 0;color:#607482;font-size:8px;line-height:1.45}.organization-price-field{display:grid;grid-template-columns:minmax(180px,.55fr) minmax(0,1fr);gap:12px;align-items:end}.organization-price-field p{padding-bottom:8px}
html[data-theme="dark"] .global-subscription-bar,html[data-theme="dark"] .subscription-summary>div,html[data-theme="dark"] .subscription-list>article{border-color:var(--line);background:#20303a;color:var(--ink)}html[data-theme="dark"] .subscription-list>article.pending{background:#382f1f}
@media(max-width:720px){.global-subscription-bar{align-items:stretch;flex-direction:column}.global-subscription-bar button{justify-content:center;min-height:44px}.subscription-summary{grid-template-columns:1fr}.subscription-list>article{grid-template-columns:minmax(0,1fr) auto}.subscription-action{grid-column:1/-1;align-items:stretch;flex-direction:column}.subscription-action button{min-height:44px}.organization-price-field{grid-template-columns:1fr}}

/* Owner / SaaS administration */
.global-welcome.owner>div:last-child strong{font-size:22px;letter-spacing:-.03em}.owner-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.owner-kpis button{display:grid;gap:5px;min-height:112px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--panel,#fff);color:var(--ink);text-align:left;cursor:pointer;box-shadow:0 6px 20px rgba(23,33,43,.05)}.owner-kpis button:hover{border-color:#99afbf;transform:translateY(-1px)}.owner-kpis span{color:var(--muted);font-size:9px;font-weight:800}.owner-kpis strong{align-self:end;font-size:22px}.owner-kpis small{color:var(--muted);font-size:8px}.owner-actions{margin-bottom:12px;padding:17px;border:1px solid var(--line);border-radius:13px;background:var(--panel,#fff)}.owner-actions>header{display:flex;align-items:end;justify-content:space-between;gap:20px}.owner-actions header span{color:var(--blue);font-size:7px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.owner-actions h2{margin:3px 0 0;font-size:15px}.owner-actions header p{margin:0;color:var(--muted);font-size:9px}.owner-actions>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:13px}.owner-actions button{display:grid;grid-template-columns:40px minmax(0,1fr);gap:9px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f7f9fa;color:var(--ink);text-align:left;cursor:pointer}.owner-actions button:hover{border-color:#9db3c4;background:#fff}.owner-actions button>b{display:grid;place-items:center;width:40px;height:38px;border-radius:9px;background:#e7f0f8;color:#245f94;font-size:9px}.owner-actions button span{display:grid;gap:3px}.owner-actions button strong{font-size:9px}.owner-actions button small{color:var(--muted);font-size:8px}.owner-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:12px}.owner-customers,.owner-alerts{overflow:hidden}.owner-customers>header,.owner-alerts>header{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-bottom:1px solid var(--line)}.owner-customers h2,.owner-alerts h2{margin:0;font-size:14px}.owner-customers header p,.owner-alerts header p{margin:4px 0 0;color:var(--muted);font-size:9px}.owner-customers header button{border:0;background:none;color:var(--blue);font-size:9px;font-weight:800}.owner-customers>div>button{display:grid;grid-template-columns:38px minmax(0,1fr) auto 10px;gap:10px;align-items:center;width:100%;padding:12px 15px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;cursor:pointer}.owner-customers>div>button>span{display:grid;place-items:center;width:38px;height:35px;border-radius:8px;background:#eaf2f8;color:#255f92;font-size:8px;font-weight:900}.owner-customers>div>button strong,.owner-customers>div>button small{display:block}.owner-customers>div>button strong{font-size:9px}.owner-customers>div>button small{margin-top:3px;color:var(--muted);font-size:8px}.owner-customers>div>button>b{font-size:9px}.owner-customers>div>button>i{font-style:normal}.owner-alerts>div{padding:5px 15px}.owner-alerts article{display:grid;grid-template-columns:10px minmax(0,1fr);gap:8px;padding:11px 0;border-bottom:1px solid var(--line)}.owner-alerts article i{width:7px;height:7px;margin-top:3px;border-radius:50%;background:#d29a35}.owner-alerts article strong,.owner-alerts article small{display:block;font-size:8px}.owner-alerts article small{margin-top:3px;color:var(--muted)}.owner-value{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:12px;padding:18px;border:1px solid #c9dbe7;border-radius:13px;background:linear-gradient(110deg,#f5f9fc,#ebf4fa)}.owner-value span{color:var(--blue);font-size:7px;font-weight:900;text-transform:uppercase}.owner-value h2{margin:4px 0;font-size:14px}.owner-value p{margin:0;color:#607481;font-size:9px}.owner-value button{white-space:nowrap}.owner-organization-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:12px}.owner-organization-tools button{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel,#fff);color:var(--ink);text-align:left}.owner-organization-tools strong{font-size:9px}.owner-organization-tools small{color:var(--muted);font-size:8px}
.modal.owner-wide-modal{width:min(980px,calc(100vw - 28px));max-width:none}.owner-modal-heading{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:16px;padding-right:34px}.owner-modal-heading>span{display:grid;place-items:center;width:50px;height:46px;border-radius:11px;background:#e8f1f8;color:#245e92;font-size:10px;font-weight:900}.owner-modal-heading small{color:var(--blue);font-size:7px;font-weight:900;text-transform:uppercase}.owner-modal-heading h2{margin:3px 0 0;font-size:19px}.owner-modal-heading p{margin:4px 0 0;color:var(--muted);font-size:9px}.owner-modal-summary{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-bottom:12px}.owner-modal-summary>div{display:grid;gap:4px;padding:12px;border-radius:9px;background:#f2f6f8}.owner-modal-summary span{color:var(--muted);font-size:8px}.owner-modal-summary strong{font-size:16px}.owner-modal-toolbar{display:flex;gap:8px;margin-bottom:12px}.owner-record-list{display:grid;max-height:460px;border:1px solid var(--line);border-radius:10px;overflow:auto}.owner-record-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:10px;align-items:center;padding:12px;border-bottom:1px solid var(--line)}.owner-record-list>article:last-child{border-bottom:0}.owner-record-list article>div small,.owner-record-list article>div strong,.owner-record-list article>div span{display:block}.owner-record-list article>div small,.owner-record-list article>div span{color:var(--muted);font-size:8px}.owner-record-list article>div strong{margin:3px 0;font-size:9px}.owner-record-list article>b{font-size:10px}.owner-plan-list{display:grid;gap:9px;max-height:600px;overflow:auto}.owner-plan-row{display:grid;grid-template-columns:minmax(180px,1fr) 170px 100px minmax(210px,1fr) auto;gap:10px;align-items:end;padding:13px;border:1px solid var(--line);border-radius:10px}.owner-plan-row>div:first-child strong,.owner-plan-row>div:first-child small{display:block}.owner-plan-row>div:first-child strong{font-size:10px}.owner-plan-row>div:first-child small{margin-top:4px;color:var(--muted);font-size:8px}.owner-plan-row label{font-size:8px!important}.owner-addon-checks{display:grid;gap:6px;padding-bottom:3px}.owner-addon-checks label{display:flex!important;align-items:center;gap:6px}.owner-addon-checks input{width:16px;min-height:16px}.owner-addon-checks small{margin-left:auto;color:var(--muted)}.owner-usage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.owner-usage-grid article{padding:14px;border:1px solid var(--line);border-radius:10px}.owner-usage-grid header,.owner-usage-grid article>div,.owner-usage-grid footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.owner-usage-grid header{padding-bottom:10px;border-bottom:1px solid var(--line)}.owner-usage-grid header small,.owner-usage-grid article>div span,.owner-usage-grid footer span{color:var(--muted);font-size:8px}.owner-usage-grid article>div{padding:8px 0;border-bottom:1px solid var(--line)}.owner-usage-grid article>div b{font-size:9px}.owner-usage-grid footer{padding-top:10px}.owner-inline-form{display:grid;grid-template-columns:1fr 130px 160px auto;gap:9px;align-items:end;margin-bottom:12px;padding:12px;border-radius:10px;background:#f3f6f8}.referral-note{margin-top:12px;padding:12px;border-left:3px solid var(--blue);background:#f2f7fa}.referral-note strong{font-size:9px}.referral-note p{margin:3px 0 0;color:var(--muted);font-size:8px}.shared-staff-list{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}.shared-staff-list article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border-bottom:1px solid var(--line)}.shared-staff-list article:last-child{border-bottom:0}.shared-staff-list strong,.shared-staff-list small{display:block}.shared-staff-list strong{font-size:9px}.shared-staff-list small{margin-top:3px;color:var(--muted);font-size:8px}.shared-org-checks{display:grid;gap:7px}.shared-org-checks>label{display:grid!important;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:9px}.shared-org-checks input{width:18px;min-height:18px}.shared-org-checks strong,.shared-org-checks small{display:block}.shared-org-checks small{margin-top:3px;color:var(--muted)}
html[data-theme="dark"] .owner-actions button,html[data-theme="dark"] .owner-modal-summary>div,html[data-theme="dark"] .owner-inline-form{background:#20303a}html[data-theme="dark"] .owner-value{border-color:var(--line);background:#20303a}html[data-theme="dark"] .owner-value p{color:var(--muted)}
@media(max-width:1050px){.owner-kpis{grid-template-columns:repeat(2,1fr)}.owner-actions>div{grid-template-columns:repeat(2,1fr)}.owner-grid{grid-template-columns:1fr}.owner-plan-row{grid-template-columns:1fr 1fr 100px}.owner-plan-row .owner-addon-checks{grid-column:1/-1}.owner-plan-row>button{grid-column:3}}
@media(max-width:700px){.owner-kpis,.owner-actions>div,.owner-organization-tools,.owner-usage-grid{grid-template-columns:1fr}.owner-actions>header,.owner-value{align-items:stretch;flex-direction:column}.owner-actions header p{margin-top:5px}.owner-record-list>article{grid-template-columns:minmax(0,1fr) auto}.owner-record-list>article>button{grid-column:1/-1}.owner-modal-summary{grid-template-columns:1fr 1fr}.owner-modal-summary>button,.owner-inline-form>*{grid-column:1/-1}.owner-inline-form{grid-template-columns:1fr}.owner-plan-row{grid-template-columns:1fr}.owner-plan-row>*{grid-column:1!important}.shared-staff-list article{grid-template-columns:38px minmax(0,1fr)}.shared-staff-list button{grid-column:1/-1}.owner-modal-toolbar{align-items:stretch;flex-direction:column}}
.owner-organization-tools{grid-template-columns:repeat(4,minmax(0,1fr))}.owner-inline-form.legal{grid-template-columns:1fr 1.25fr .7fr 1.1fr auto}
@media(max-width:1000px){.owner-organization-tools{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.owner-organization-tools,.owner-inline-form.legal{grid-template-columns:1fr}}

.owner-business-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.owner-business-summary article{display:grid;gap:5px;padding:14px 16px;border:1px solid var(--line);border-radius:11px;background:var(--panel,#fff)}.owner-business-summary span{color:var(--muted);font-size:8px;font-weight:800}.owner-business-summary strong{font-size:18px}.owner-business-summary small{color:var(--muted);font-size:8px}.owner-health{margin-top:12px;overflow:hidden}.owner-health>header{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-bottom:1px solid var(--line)}.owner-health h2{margin:0;font-size:14px}.owner-health header p{margin:4px 0 0;color:var(--muted);font-size:9px}.owner-health header button{border:0;background:transparent;color:var(--blue);font-size:9px;font-weight:800}.owner-health>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.owner-health article{display:grid;grid-template-columns:minmax(0,1fr) 42px 90px;gap:10px;align-items:center;padding:12px 15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.owner-health article strong,.owner-health article small{display:block}.owner-health article strong{font-size:9px}.owner-health article small{margin-top:4px;color:var(--muted);font-size:8px}.health-score{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;font-size:10px;font-weight:900}.health-score.green{background:#e6f5ee;color:#187452}.health-score.amber{background:#fff2d7;color:#986100}.health-score.red{background:#fde8e8;color:#b3262b}.owner-health article>b{font-size:8px;text-align:right}.entitlement-lock{display:grid;grid-template-columns:52px minmax(0,1fr);gap:13px;align-items:center;padding:16px;border:1px solid #d6e1e8;border-radius:11px;background:#f5f8fa}.entitlement-lock>span{display:grid;place-items:center;width:52px;height:48px;border-radius:10px;background:#e8f1f8;color:#245e92;font-weight:900}.entitlement-lock strong{font-size:10px}.entitlement-lock p{margin:5px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.customer-invoice-professional{display:grid;gap:11px}.customer-invoice-totals{display:grid;grid-template-columns:1fr .65fr 1fr;gap:10px;align-items:end;padding:13px;border:1px solid #cbdce8;border-radius:11px;background:#f2f7fa}.customer-invoice-totals>div{display:grid;gap:4px;justify-items:end;padding:9px 11px;border-radius:8px;background:#18334a;color:#fff}.customer-invoice-totals>div span{font-size:8px}.customer-invoice-totals>div strong{font-size:18px}.invoice-plan-explanation{padding:9px 12px;border-left:3px solid var(--blue);background:#f5f8fa;color:var(--muted);font-size:8px}.owner-growth-grid,.growth-records{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.owner-growth-grid>section,.growth-records>section{padding:14px;border:1px solid var(--line);border-radius:11px}.owner-growth-grid h3,.growth-records h3{margin:0 0 10px;font-size:11px}.owner-stack-form{display:grid;gap:10px}.growth-records{margin-top:12px}.growth-records article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.growth-records article:last-child{border-bottom:0}.growth-records article strong,.growth-records article small{display:block}.growth-records article strong{font-size:9px}.growth-records article small{margin-top:3px;color:var(--muted);font-size:8px}
html[data-theme="dark"] .customer-invoice-totals,html[data-theme="dark"] .invoice-plan-explanation,html[data-theme="dark"] .entitlement-lock{background:#20303a;border-color:var(--line)}
@media(max-width:850px){.owner-health>div{grid-template-columns:1fr}.owner-health article{border-right:0}.owner-growth-grid,.growth-records{grid-template-columns:1fr}}
@media(max-width:700px){.owner-business-summary{grid-template-columns:1fr}.owner-health article{grid-template-columns:minmax(0,1fr) 42px}.owner-health article>b{grid-column:1/-1;text-align:left}.customer-invoice-totals{grid-template-columns:1fr 1fr}.customer-invoice-totals>div{grid-column:1/-1;justify-items:start}}

.dashboard-assistant-strip{padding:9px 11px}.dashboard-assistant-strip>div{flex:1 1 auto}.dashboard-assistant-strip>form{display:grid;grid-template-columns:minmax(270px,440px) auto;gap:5px 7px;align-items:center;margin-left:auto}.dashboard-assistant-strip>form label{position:relative;display:block!important}.dashboard-assistant-strip>form label>span{position:absolute;left:9px;top:50%;display:grid;place-items:center;width:25px;height:25px;transform:translateY(-50%);border-radius:7px;background:#e7f0f8;color:#245e92;font-size:8px;font-weight:900}.dashboard-assistant-strip>form input{width:100%;min-height:38px;padding:8px 11px 8px 42px;border:1px solid #ccd8e1;border-radius:9px;background:#f8fafb;color:var(--ink);font-size:10px;outline:0}.dashboard-assistant-strip>form input:focus{border-color:#5b8db6;background:#fff;box-shadow:0 0 0 3px rgba(45,110,165,.1)}.dashboard-assistant-strip>form button{min-height:38px;padding:8px 13px;border:0;border-radius:9px;background:#1f5f99;color:#fff;font-size:9px;font-weight:850;cursor:pointer}.dashboard-assistant-strip>form>small{grid-column:1/-1;padding-left:2px;color:var(--muted);font-size:7px}.modal.assistant-search-modal{width:min(820px,calc(100vw - 28px));max-width:none}.assistant-search-heading{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:13px;padding-right:32px}.assistant-search-heading>span{display:grid;place-items:center;width:50px;height:46px;border-radius:11px;background:#e8f1f8;color:#245e92;font-size:10px;font-weight:900}.assistant-search-heading small{color:var(--blue);font-size:7px;font-weight:900;text-transform:uppercase}.assistant-search-heading h2{margin:3px 0 0;font-size:18px}.assistant-search-heading p{margin:4px 0 0;color:var(--muted);font-size:9px}.assistant-search-note{margin-bottom:12px;padding:10px 12px;border-left:3px solid var(--blue);background:#f2f7fa}.assistant-search-note strong{font-size:9px}.assistant-search-note p{margin:3px 0 0;color:var(--muted);font-size:8px}.assistant-search-results{display:grid;gap:10px;max-height:490px;overflow:auto;padding-right:3px}.assistant-search-results section{overflow:hidden;border:1px solid var(--line);border-radius:10px}.assistant-search-results section h3{display:flex;align-items:center;justify-content:space-between;margin:0;padding:9px 11px;background:#f3f6f8;font-size:9px}.assistant-search-results section h3 span{display:grid;place-items:center;min-width:22px;height:20px;border-radius:99px;background:#fff;color:var(--blue);font-size:8px}.assistant-search-results section>button{display:grid;grid-template-columns:38px minmax(0,1fr) 10px;gap:10px;align-items:center;width:100%;padding:10px 11px;border:0;border-top:1px solid var(--line);background:#fff;color:var(--ink);text-align:left;cursor:pointer}.assistant-search-results section>button:hover{background:#f8fafb}.assistant-search-results section>button>span{display:grid;place-items:center;width:38px;height:33px;border-radius:8px;background:#eaf2f8;color:#245e92;font-size:7px;font-weight:900}.assistant-search-results section strong,.assistant-search-results section small{display:block}.assistant-search-results section strong{font-size:9px}.assistant-search-results section small{margin-top:3px;color:var(--muted);font-size:8px}.assistant-search-results section>button>b{color:#7d8c97}html[data-theme="dark"] .dashboard-assistant-strip>form input,html[data-theme="dark"] .assistant-search-results section>button,html[data-theme="dark"] .assistant-search-results section h3,html[data-theme="dark"] .assistant-search-note{border-color:var(--line);background:#20303a;color:var(--ink)}
@media(max-width:1050px){.dashboard-assistant-strip{align-items:stretch;flex-direction:column}.dashboard-assistant-strip>form{grid-template-columns:minmax(0,1fr) auto;width:100%;margin:0}}
@media(max-width:600px){.dashboard-assistant-strip>form{grid-template-columns:minmax(0,1fr) auto}.dashboard-assistant-strip>form>small{display:block}.assistant-search-heading{grid-template-columns:45px minmax(0,1fr)}.assistant-search-heading>.badge{grid-column:1/-1;justify-self:start}.assistant-search-results{max-height:55vh}}

/* Maquinaria, salud y vida útil */
.asset-database-head p{max-width:720px}.asset-toolbar.advanced{display:grid;grid-template-columns:minmax(280px,1fr) auto auto;gap:12px;align-items:end}.asset-toolbar.advanced>label{display:grid;gap:5px}.asset-toolbar.advanced>label span{color:var(--muted);font-size:8px;font-weight:800}.asset-toolbar.advanced input{min-height:42px;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:10px}.equipment-health-filters{display:flex;gap:4px;padding:4px;border-radius:9px;background:#edf2f5}.equipment-health-filters button{min-height:34px;padding:7px 9px;border:0;border-radius:7px;background:transparent;color:#617582;font-size:8px;font-weight:800;cursor:pointer}.equipment-health-filters button.active{background:#fff;color:#215d91;box-shadow:0 2px 8px rgba(25,45,62,.1)}.health-card{display:grid}.machine-health{display:grid;grid-template-columns:58px minmax(0,1fr);gap:11px;align-items:center;margin:12px 0;padding:11px;border-radius:10px;background:#f3f7f9;text-align:left}.machine-health>div:last-child span,.machine-health>div:last-child strong,.machine-health>div:last-child small{display:block}.machine-health>div:last-child span{color:var(--muted);font-size:7px;font-weight:850;text-transform:uppercase}.machine-health>div:last-child strong{margin-top:4px;font-size:9px}.machine-health>div:last-child small{margin-top:4px;color:var(--muted);font-size:8px}.health-ring{--ring:#2c8c68;position:relative;display:grid;place-content:center;width:54px;height:54px;border-radius:50%;background:conic-gradient(var(--ring) calc(var(--health)*1%),#dfe7eb 0)}.health-ring:before{content:"";position:absolute;inset:6px;border-radius:50%;background:#fff}.health-ring strong,.health-ring small{position:relative;z-index:1;text-align:center}.health-ring strong{font-size:13px}.health-ring small{font-size:6px;color:var(--muted)}.health-ring.green{--ring:#268663}.health-ring.amber{--ring:#d39a2f}.health-ring.orange{--ring:#d16b2e}.health-ring.red{--ring:#c53d43}.health-ring.large{width:76px;height:76px}.health-ring.large:before{inset:8px}.health-ring.large strong{font-size:18px}.machine-life-modal{width:min(1000px,calc(100vw - 28px));max-width:none}.machine-health-hero{display:grid;grid-template-columns:76px minmax(0,1fr) minmax(280px,.7fr);gap:15px;align-items:center;margin:14px 0;padding:15px;border:1px solid #ccdae3;border-radius:12px;background:linear-gradient(105deg,#f5f9fb,#edf4f8)}.machine-health-hero>div:nth-child(2)>span{color:var(--muted);font-size:7px;font-weight:900;text-transform:uppercase}.machine-health-hero h3{margin:3px 0;font-size:16px}.machine-health-hero p{margin:0;color:var(--muted);font-size:8px;line-height:1.45}.machine-health-hero dl{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:0}.machine-health-hero dl div{padding:9px;border-radius:8px;background:#fff}.machine-health-hero dt{color:var(--muted);font-size:7px}.machine-health-hero dd{margin:4px 0 0;font-size:10px;font-weight:850}.asset-detail-summary.expanded{grid-template-columns:repeat(3,1fr)}.machine-actions{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.machine-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.machine-detail-grid .asset-detail-section{margin:0}.machine-part-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.machine-part-row:last-child{border-bottom:0}.machine-part-row strong,.machine-part-row small{display:block}.machine-part-row strong{font-size:9px}.machine-part-row small,.machine-part-row p{margin-top:3px;color:var(--muted);font-size:8px}.machine-part-row p{margin-bottom:0}.machine-part-row>b{white-space:nowrap;font-size:9px}.machine-timeline{margin-top:12px;border:1px solid var(--line);border-radius:11px;overflow:hidden}.machine-timeline>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 15px;border-bottom:1px solid var(--line)}.machine-timeline h3{margin:0;font-size:12px}.machine-timeline header p{margin:4px 0 0;color:var(--muted);font-size:8px}.machine-timeline header>span{color:var(--muted);font-size:8px}.machine-timeline>div{max-height:390px;overflow:auto;padding:0 15px}.machine-timeline article{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:start;padding:11px 0;border-bottom:1px solid var(--line)}.machine-timeline article:last-child{border-bottom:0}.machine-timeline article>span{display:grid;place-items:center;width:34px;height:32px;border-radius:8px;background:#e9f1f7;color:#245e92;font-size:7px;font-weight:900}.machine-timeline article>span.green{background:#e4f4ec;color:#237254}.machine-timeline article>span.red{background:#fde9e9;color:#b63238}.machine-timeline article>span.amber{background:#fff1d8;color:#996100}.machine-timeline article strong,.machine-timeline article small{display:block}.machine-timeline article strong{margin-top:3px;font-size:9px}.machine-timeline article small,.machine-timeline article p{color:var(--muted);font-size:8px}.machine-timeline article p{margin:4px 0 0}.machine-timeline article button{align-self:center;border:0;background:transparent;color:var(--blue);font-size:8px;font-weight:800}.equipment-master-modal{width:min(850px,calc(100vw - 28px));max-width:none}.equipment-master-form{display:grid;gap:12px}.equipment-master-form>section{padding:13px;border:1px solid var(--line);border-radius:10px}.equipment-master-form h3{margin:0 0 10px;font-size:11px}html[data-theme="dark"] .machine-health,html[data-theme="dark"] .machine-health-hero,html[data-theme="dark"] .machine-health-hero dl div,html[data-theme="dark"] .equipment-health-filters,html[data-theme="dark"] .asset-toolbar.advanced input{border-color:var(--line);background:#20303a;color:var(--ink)}html[data-theme="dark"] .health-ring:before{background:#20303a}
@media(max-width:900px){.asset-toolbar.advanced{grid-template-columns:1fr}.machine-health-hero{grid-template-columns:76px minmax(0,1fr)}.machine-health-hero dl{grid-column:1/-1}.machine-detail-grid{grid-template-columns:1fr}}
@media(max-width:600px){.equipment-health-filters{overflow:auto}.equipment-health-filters button{white-space:nowrap}.machine-life-modal .asset-detail-heading.machine{grid-template-columns:44px minmax(0,1fr)}.machine-health-hero{grid-template-columns:65px minmax(0,1fr);padding:12px}.health-ring.large{width:64px;height:64px}.machine-health-hero dl{grid-template-columns:1fr 1fr}.machine-health-hero dl div:last-child{grid-column:1/-1}.asset-detail-summary.expanded{grid-template-columns:1fr 1fr}.machine-actions{display:grid}.machine-actions button{width:100%;min-height:43px}.machine-timeline article{grid-template-columns:34px minmax(0,1fr)}.machine-timeline article>button{grid-column:2;justify-self:start}.equipment-master-form>section{padding:11px}}

/* Cierre mensual y conciliación del mayor */
.ledger-flow{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px;padding:14px 16px;border-color:#c7d9e6;background:linear-gradient(105deg,#f6fafc,#edf5fa)}.ledger-flow>div:first-child span{color:var(--blue);font-size:7px;font-weight:900;text-transform:uppercase}.ledger-flow h3{margin:3px 0;font-size:13px}.ledger-flow p{margin:0;color:var(--muted);font-size:8px}.ledger-flow>div:last-child{display:flex;gap:7px}.professional-closing-modal{width:min(860px,calc(100vw - 28px));max-width:none}.closing-month-heading.professional{display:grid;grid-template-columns:50px minmax(0,1fr);gap:12px;align-items:center}.closing-month-heading.professional>span{display:grid;place-items:center;width:50px;height:46px;border-radius:10px;background:#e8f1f8;color:#245e92;font-size:9px;font-weight:900}.closing-month-heading.professional small{color:var(--blue);font-size:7px;font-weight:900;text-transform:uppercase}.closing-month-heading.professional h2{margin:3px 0;font-size:19px}.closing-month-heading.professional p{margin:0;color:var(--muted);font-size:9px}.accounting-scope-confirm{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;margin:13px 0;padding:11px 13px;border:1px solid #bcdccb;border-radius:10px;background:#f1faf5}.accounting-scope-confirm>span{display:grid;place-items:center;width:36px;height:34px;border-radius:8px;background:#fff;color:#247354;font-weight:900}.accounting-scope-confirm strong{font-size:9px}.accounting-scope-confirm p{margin:3px 0 0;color:#587266;font-size:8px}.closing-restaurants{max-height:260px;margin:12px 0;border:1px solid var(--line);border-radius:10px;overflow:auto}.closing-restaurants header,.closing-restaurants>div{display:grid;grid-template-columns:minmax(0,1fr) 130px 130px;gap:10px;align-items:center;padding:9px 12px}.closing-restaurants header{position:sticky;top:0;background:#edf2f5;color:var(--muted);font-size:7px;font-weight:900;text-transform:uppercase}.closing-restaurants>div{border-top:1px solid var(--line)}.closing-restaurants>div strong{font-size:9px}.closing-restaurants>div span{color:var(--muted);font-size:8px}.closing-restaurants>div b{text-align:right;font-size:9px}.modal-actions.split{grid-template-columns:1fr 1.3fr}.ledger-modal{width:min(1100px,calc(100vw - 28px));max-width:none}.ledger-heading{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:14px;padding-right:32px}.ledger-heading>span{display:grid;place-items:center;width:52px;height:48px;border-radius:11px;background:#e8f1f8;color:#245e92;font-size:9px;font-weight:900}.ledger-heading small{color:var(--blue);font-size:7px;font-weight:900;text-transform:uppercase}.ledger-heading h2{margin:3px 0;font-size:19px}.ledger-heading p{margin:0;color:var(--muted);font-size:9px}.ledger-upload{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:12px;padding:13px;border:1px dashed #9db7c9;border-radius:11px;background:#f4f8fb}.ledger-upload label{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:2px 10px;align-items:center}.ledger-upload input{grid-row:1/3;width:auto;min-height:auto;padding:0;border:0}.ledger-upload span{font-size:9px;font-weight:850}.ledger-upload small{color:var(--muted);font-size:8px}.ledger-file{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px;padding:12px;border:1px solid #c8dbe7;border-radius:10px;background:#f4f8fa}.ledger-file span,.ledger-file strong,.ledger-file small{display:block}.ledger-file span,.ledger-file small{color:var(--muted);font-size:8px}.ledger-file strong{margin:3px 0;font-size:10px}.ledger-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.ledger-summary article{padding:11px;border:1px solid var(--line);border-radius:9px;background:#f7f9fa}.ledger-summary article.warning{border-color:#e6ca8d;background:#fff9ec}.ledger-summary span,.ledger-summary strong{display:block}.ledger-summary span{color:var(--muted);font-size:8px}.ledger-summary strong{margin-top:5px;font-size:16px}.ledger-table{max-height:430px;border:1px solid var(--line);border-radius:10px;overflow:auto}.ledger-table>header,.ledger-table>article{display:grid;grid-template-columns:130px minmax(190px,1fr) 110px 110px 175px;gap:9px;align-items:center;padding:9px 11px}.ledger-table>header{position:sticky;top:0;z-index:1;background:#eaf0f4;color:#607481;font-size:7px;font-weight:900;text-transform:uppercase}.ledger-table>article{border-top:1px solid var(--line)}.ledger-table article strong,.ledger-table article small{display:block}.ledger-table article strong{font-size:8px}.ledger-table article small{margin-top:3px;color:var(--muted);font-size:7px}.ledger-table article>b{font-size:8px;text-align:right}.ledger-table select{min-height:34px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:8px}.ledger-extras{margin-top:11px;border:1px solid #e1c887;border-radius:9px;background:#fff9eb}.ledger-extras summary{padding:10px 12px;font-size:8px;font-weight:850;cursor:pointer}.ledger-extras p{display:grid;grid-template-columns:1fr 100px 1fr;gap:10px;margin:0;padding:8px 12px;border-top:1px solid #ead9ae;font-size:8px}.ledger-help{margin-top:11px;padding:10px 12px;border-left:3px solid var(--blue);background:#f2f7fa}.ledger-help strong{font-size:9px}.ledger-help p{margin:3px 0 0;color:var(--muted);font-size:8px}html[data-theme="dark"] .ledger-flow,html[data-theme="dark"] .accounting-scope-confirm,html[data-theme="dark"] .ledger-upload,html[data-theme="dark"] .ledger-file,html[data-theme="dark"] .ledger-summary article,html[data-theme="dark"] .ledger-help,html[data-theme="dark"] .ledger-table select{border-color:var(--line);background:#20303a;color:var(--ink)}
@media(max-width:850px){.ledger-flow{align-items:stretch;flex-direction:column}.ledger-flow>div:last-child{display:grid;grid-template-columns:1fr 1fr}.ledger-summary{grid-template-columns:1fr 1fr}.ledger-table{overflow:auto}.ledger-table>header,.ledger-table>article{min-width:800px}}
@media(max-width:600px){.ledger-flow>div:last-child{grid-template-columns:1fr}.ledger-heading{grid-template-columns:46px minmax(0,1fr)}.ledger-heading>.badge{grid-column:1/-1;justify-self:start}.ledger-modal,.ledger-modal form,.ledger-upload,.ledger-upload label{min-width:0;max-width:100%}.ledger-upload{grid-template-columns:minmax(0,1fr)}.ledger-upload input[type="file"]{width:100%;max-width:100%;min-width:0}.ledger-upload button{width:100%;min-width:0}.ledger-summary{grid-template-columns:1fr 1fr}.closing-restaurants header,.closing-restaurants>div{grid-template-columns:minmax(0,1fr) 80px}.closing-restaurants header span:last-child,.closing-restaurants>div b{grid-column:2}.closing-restaurants>div b{grid-row:1}.modal-actions.split{grid-template-columns:1fr}.invoice-toolbar>*{min-width:0}.invoice-toolbar label,.invoice-toolbar input,.invoice-toolbar select,.invoice-toolbar .text-button{width:100%;min-width:0;max-width:100%}}
.invoice-deferral-summary,.accounting-deferral-notice{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:11px;align-items:center;margin-bottom:12px;padding:12px 14px;border:1px solid #e2c47f;border-radius:10px;background:#fff8e9}.invoice-deferral-summary>span,.accounting-deferral-notice>span{display:grid;place-items:center;width:38px;height:36px;border-radius:9px;background:#fff;color:#a46500;font-weight:900}.invoice-deferral-summary strong,.invoice-deferral-summary small,.accounting-deferral-notice strong,.accounting-deferral-notice p{display:block}.invoice-deferral-summary strong,.accounting-deferral-notice strong{font-size:9px}.invoice-deferral-summary small,.accounting-deferral-notice p{margin:3px 0 0;color:#75664c;font-size:8px}.invoice-deferral-summary button{min-height:36px;border:1px solid #d2b369;background:#fff;color:#725014}.invoice-postpone{border-color:#d6bd82!important;background:#fffaf0!important;color:#855f16!important}.invoice-carried-note{grid-column:1/-1;padding:6px 8px;border-radius:6px;background:#fff4d8;color:#866013!important;font-weight:800}.postpone-invoice-heading{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:13px}.postpone-invoice-heading>span{display:grid;place-items:center;width:46px;height:44px;border-radius:10px;background:#fff1cc;color:#986600;font-size:18px;font-weight:900}.postpone-invoice-heading small{color:#986600;font-size:7px;font-weight:900;text-transform:uppercase}.postpone-invoice-heading h2{margin:3px 0;font-size:18px}.postpone-invoice-heading p{margin:0;color:var(--muted);font-size:8px}.deferred-invoice-list{max-height:55vh;border:1px solid var(--line);border-radius:10px;overflow:auto}.deferred-invoice-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:11px 13px;border-bottom:1px solid var(--line)}.deferred-invoice-list article:last-child{border:0}.deferred-invoice-list strong,.deferred-invoice-list small,.deferred-invoice-list span{display:block}.deferred-invoice-list strong{font-size:9px}.deferred-invoice-list small,.deferred-invoice-list span{margin-top:3px;color:var(--muted);font-size:8px}.deferred-invoice-list b{font-size:9px}html[data-theme="dark"] .invoice-deferral-summary,html[data-theme="dark"] .accounting-deferral-notice{border-color:#66583b;background:#312d23}html[data-theme="dark"] .invoice-postpone{border-color:#66583b!important;background:#312d23!important;color:#f2cd7c!important}
@media(max-width:600px){.invoice-deferral-summary,.accounting-deferral-notice{grid-template-columns:38px minmax(0,1fr)}.invoice-deferral-summary button{grid-column:1/-1;width:100%}.postpone-invoice-heading{grid-template-columns:42px minmax(0,1fr)}.postpone-invoice-heading>span{width:40px;height:40px}.deferred-invoice-list article{grid-template-columns:1fr}.deferred-invoice-list b{justify-self:start}}
.simple-machine-modal{width:min(980px,calc(100vw - 28px));max-width:none}.simple-machine-heading{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:13px}.simple-machine-heading>span{display:grid;place-items:center;width:52px;height:50px;border-radius:12px;background:#e8f1f8;color:#245e92;font-size:10px;font-weight:900}.simple-machine-heading small{color:var(--blue);font-size:7px;font-weight:900;text-transform:uppercase}.simple-machine-heading h2{margin:3px 0;font-size:20px}.simple-machine-heading p{margin:0;color:var(--muted);font-size:8px}.machine-quick-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:13px}.machine-quick-summary>div{padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:#f7f9fa}.machine-quick-summary span,.machine-quick-summary strong{display:block}.machine-quick-summary span{color:var(--muted);font-size:8px}.machine-quick-summary strong{margin-top:4px;font-size:15px}.simple-parts-section{border:1px solid #bfd3e1;border-radius:12px;overflow:hidden}.simple-parts-section>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;background:#f1f7fa}.simple-parts-section>header span{color:var(--blue);font-size:7px;font-weight:900;text-transform:uppercase}.simple-parts-section>header h3{margin:3px 0;font-size:15px}.simple-parts-section>header p{margin:0;color:var(--muted);font-size:8px}.simple-parts-list article{display:grid;grid-template-columns:125px minmax(0,1fr) 170px;gap:14px;align-items:start;padding:13px 16px;border-top:1px solid var(--line)}.simple-parts-list strong,.simple-parts-list small,.simple-parts-list span{display:block}.part-date strong,.part-main>strong{font-size:9px}.part-date small,.part-main small,.part-provider span,.part-provider small{margin-top:3px;color:var(--muted);font-size:8px}.part-main p{margin:6px 0 0;color:#50616d;font-size:8px}.part-main button{margin-top:6px;padding:0;border:0;background:transparent;color:var(--blue);font-size:8px;font-weight:800}.part-provider{text-align:right}.part-provider>strong{margin-top:5px;font-size:10px}.simple-parts-empty{padding:28px;text-align:center}.simple-parts-empty>span{display:grid;place-items:center;width:48px;height:46px;margin:0 auto 10px;border-radius:11px;background:#edf4f8;color:#2b638f;font-weight:900}.simple-parts-empty h3{margin:0;font-size:13px}.simple-parts-empty p{max-width:460px;margin:6px auto 14px;color:var(--muted);font-size:9px;line-height:1.5}.machine-secondary{margin-top:11px;border:1px solid var(--line);border-radius:10px;background:#fff}.machine-secondary>summary{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;font-size:9px;font-weight:850;cursor:pointer}.machine-secondary>summary b{color:var(--muted);font-size:8px}.machine-secondary>div{padding:0 14px 12px}.machine-secondary article,.machine-secondary>div>button{display:flex;width:100%;justify-content:space-between;gap:12px;padding:9px 0;border:0;border-top:1px solid var(--line);background:transparent;text-align:left}.machine-secondary strong,.machine-secondary small{font-size:8px}.machine-secondary small{color:var(--muted)}.simple-machine-data{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.simple-machine-data>div{padding:9px;border-radius:7px;background:#f4f7f9}.simple-machine-data dt{color:var(--muted);font-size:7px}.simple-machine-data dd{margin:4px 0 0;font-size:9px;font-weight:800}.machine-simple-actions{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:8px;margin-top:13px}.simple-part-form{display:grid;gap:11px}html[data-theme="dark"] .machine-quick-summary>div,html[data-theme="dark"] .simple-parts-section>header,html[data-theme="dark"] .machine-secondary,html[data-theme="dark"] .simple-machine-data>div{background:#20303a}
@media(max-width:700px){.simple-machine-heading{grid-template-columns:46px minmax(0,1fr)}.simple-machine-heading>span{width:44px;height:44px}.simple-machine-heading>.badge{grid-column:1/-1;justify-self:start}.machine-quick-summary{grid-template-columns:1fr 1fr}.simple-parts-section>header{align-items:stretch;flex-direction:column}.simple-parts-section>header button{width:100%}.simple-parts-list article{grid-template-columns:1fr;gap:7px}.part-provider{text-align:left}.machine-simple-actions{grid-template-columns:1fr}.simple-machine-data{grid-template-columns:1fr}}
.click-ledger-modal{width:min(1120px,calc(100vw - 28px));max-width:none}.click-ledger-heading>span{background:#e6f4ec;color:#18714a;font-size:18px}.ledger-restaurant-picker{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:10px;align-items:end;margin-bottom:11px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#f7f9fa}.ledger-restaurant-picker label{display:grid;gap:5px;color:var(--muted);font-size:8px;font-weight:800}.ledger-restaurant-picker select{min-height:39px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}.ledger-restaurant-picker>div{padding:8px 11px;border-left:1px solid var(--line)}.ledger-restaurant-picker>div span,.ledger-restaurant-picker>div strong{display:block}.ledger-restaurant-picker>div span{color:var(--muted);font-size:7px}.ledger-restaurant-picker>div strong{margin-top:3px;font-size:14px}.ledger-no-prices{display:grid;grid-template-columns:40px minmax(0,1fr);gap:11px;align-items:center;margin-bottom:11px;padding:11px 13px;border:1px solid #c9dae5;border-radius:10px;background:#f2f7fa}.ledger-no-prices>span{display:grid;place-items:center;width:38px;height:36px;border-radius:9px;background:#fff;color:#28658f;font-weight:900}.ledger-no-prices strong{font-size:9px}.ledger-no-prices p{margin:3px 0 0;color:var(--muted);font-size:8px;line-height:1.45}.ledger-file>div:last-child{display:flex;gap:7px}.ledger-confirm-detected{width:100%;margin-bottom:10px;padding:10px 12px;border:1px solid #a7d5bd;border-radius:9px;background:#edf9f3;color:#176a46;font-size:9px;font-weight:850}.click-ledger-list{max-height:440px;border:1px solid var(--line);border-radius:11px;overflow:auto}.click-ledger-list article{display:grid;grid-template-columns:82px minmax(210px,1fr) 150px 150px;gap:12px;align-items:center;padding:11px 12px;border-bottom:1px solid var(--line);background:#fff}.click-ledger-list article:last-child{border:0}.click-ledger-list article.checked{background:#f1faf5}.click-ledger-list article.justified{background:#f2f7fb}.click-ledger-list article.problem{background:#fff8f5}.ledger-check-button{display:grid;place-items:center;gap:3px;min-height:60px;padding:6px;border:1px solid #cbd7df;border-radius:9px;background:#f6f8fa}.ledger-check-button>span{display:grid;place-items:center;width:28px;height:28px;border:2px solid #9caebb;border-radius:50%;font-size:13px;font-weight:900}.ledger-check-button small{color:var(--muted);font-size:7px;font-weight:800}.checked .ledger-check-button{border-color:#9fd0b7;background:#fff;color:#168252}.checked .ledger-check-button>span{border-color:#168252;background:#168252;color:#fff}.justified .ledger-check-button{border-color:#9fc1d9;background:#fff;color:#236894}.problem .ledger-check-button{border-color:#e0a89c;background:#fff;color:#b34532}.ledger-invoice-main small,.ledger-invoice-main strong,.ledger-rm-amount span,.ledger-rm-amount strong,.ledger-rm-amount small{display:block}.ledger-invoice-main small{color:var(--muted);font-size:7px}.ledger-invoice-main strong{margin-top:4px;font-size:10px}.ledger-invoice-main p{margin:4px 0 0;color:#61727d;font-size:8px}.ledger-rm-amount span,.ledger-rm-amount small{color:var(--muted);font-size:7px}.ledger-rm-amount strong{margin:4px 0;font-size:11px}.ledger-row-actions{display:grid;grid-template-columns:1fr;gap:5px}.ledger-row-actions button{min-height:32px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#536773;font-size:7px;font-weight:800}.click-ledger-summary article:last-child strong{font-size:13px}.click-ledger-upload{margin-bottom:11px}html[data-theme="dark"] .ledger-restaurant-picker,html[data-theme="dark"] .ledger-no-prices,html[data-theme="dark"] .click-ledger-list article,html[data-theme="dark"] .ledger-check-button,html[data-theme="dark"] .ledger-row-actions button{background:#20303a}html[data-theme="dark"] .click-ledger-list article.checked{background:#183729}html[data-theme="dark"] .click-ledger-list article.problem{background:#3b2825}
@media(max-width:760px){.ledger-restaurant-picker{grid-template-columns:1fr}.ledger-restaurant-picker>div{border-top:1px solid var(--line);border-left:0}.ledger-file{align-items:stretch;flex-direction:column}.ledger-file>div:last-child{display:grid;grid-template-columns:1fr 1fr}.click-ledger-list{max-height:52vh}.click-ledger-list article{grid-template-columns:68px minmax(0,1fr);gap:9px}.ledger-rm-amount{grid-column:2}.ledger-row-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.ledger-check-button{grid-row:1/3}.click-ledger-summary{grid-template-columns:1fr 1fr}}
.agenda-group-work{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;gap:9px!important;align-items:center!important;grid-column:1/-1;padding:9px 11px!important;border-color:#a8c9de!important;background:#f1f7fb!important;text-align:left!important}.agenda-group-work>span{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:#fff;color:#286591;font-size:16px;font-weight:900}.agenda-group-work strong,.agenda-group-work small{display:block}.agenda-group-work strong{color:#24475f;font-size:8px}.agenda-group-work small{margin-top:2px;color:#6d8190;font-size:7px}.agenda-group-modal{width:min(900px,calc(100vw - 28px));max-width:none}.agenda-group-heading{display:grid;grid-template-columns:50px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:12px}.agenda-group-heading>span{display:grid;place-items:center;width:48px;height:46px;border-radius:11px;background:#e8f2f8;color:#26658f;font-size:22px;font-weight:900}.agenda-group-heading small{color:var(--blue);font-size:7px;font-weight:900;text-transform:uppercase}.agenda-group-heading h2{margin:3px 0;font-size:19px}.agenda-group-heading p{margin:0;color:var(--muted);font-size:8px}.agenda-group-explanation{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;margin-bottom:11px;padding:11px 13px;border:1px solid #b7dbc8;border-radius:10px;background:#f1faf5}.agenda-group-explanation>span{display:grid;place-items:center;width:36px;height:34px;border-radius:8px;background:#fff;color:#188253;font-weight:900}.agenda-group-explanation strong{font-size:9px}.agenda-group-explanation p{margin:3px 0 0;color:#597264;font-size:8px}.agenda-group-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-bottom:0;border-radius:10px 10px 0 0;background:#eef3f6}.agenda-group-toolbar label{display:flex!important;align-items:center;gap:8px;font-size:8px;font-weight:850}.agenda-group-toolbar input{width:18px;height:18px}.agenda-group-toolbar strong{color:var(--muted);font-size:8px}.agenda-group-list{max-height:390px;border:1px solid var(--line);border-radius:0 0 10px 10px;overflow:auto}.agenda-group-list>label{display:grid!important;grid-template-columns:22px 28px minmax(0,1fr) auto;gap:10px;align-items:start;padding:12px;border-bottom:1px solid var(--line);cursor:pointer}.agenda-group-list>label:last-child{border:0}.agenda-group-list>label:hover{background:#f7fafc}.agenda-group-list input{position:absolute;opacity:0;pointer-events:none}.agenda-group-check{display:grid;place-items:center;width:22px;height:22px;border:2px solid #aab9c3;border-radius:6px;color:transparent;font-size:11px;font-weight:900}.agenda-group-list input:checked+.agenda-group-check{border-color:#2269a0;background:#2269a0;color:#fff}.agenda-group-list strong,.agenda-group-list small{display:block}.agenda-group-list strong{font-size:9px}.agenda-group-list small{margin-top:3px;color:var(--muted);font-size:8px}.agenda-group-list p{margin:5px 0 0;color:#62737e;font-size:8px;line-height:1.4}.agenda-already-grouped{margin-top:10px;border:1px solid var(--line);border-radius:9px}.agenda-already-grouped summary{padding:10px 12px;font-size:8px;font-weight:850;cursor:pointer}.agenda-already-grouped p{display:flex;justify-content:space-between;gap:12px;margin:0;padding:8px 12px;border-top:1px solid var(--line);font-size:8px}.agenda-group-notify{margin-top:10px!important}html[data-theme="dark"] .agenda-group-work,html[data-theme="dark"] .agenda-group-toolbar,html[data-theme="dark"] .agenda-group-explanation{background:#20303a}html[data-theme="dark"] .agenda-group-list>label:hover{background:#243640}
@media(max-width:600px){.agenda-group-modal{max-height:94vh}.agenda-group-heading{grid-template-columns:42px minmax(0,1fr)}.agenda-group-heading>span{width:40px;height:40px}.agenda-group-list{max-height:47vh}.agenda-group-list>label{grid-template-columns:24px minmax(0,1fr);gap:8px}.agenda-group-list>label>.agenda-group-check{grid-column:1;grid-row:1}.agenda-group-list>label>div{grid-column:2}.agenda-group-list>label>.badge{grid-column:2;justify-self:start}.agenda-group-toolbar{align-items:flex-start;flex-direction:column}.agenda-group-work{grid-template-columns:32px minmax(0,1fr)!important}.agenda-group-work>span{width:30px;height:30px}}
/* Agenda, fotografías y avisos operativos */
html,body,#app,.layout,.page{max-width:100%}img,video{max-width:100%}
.agenda-print-button{display:inline-flex;align-items:center;gap:7px}.agenda-print-button .icon{width:16px;height:16px}.agenda-delivery-status{display:flex;align-items:center;gap:10px;margin:12px 0;padding:11px 13px;border:1px solid #b9e3cc;border-radius:10px;background:#eefaf3;color:#17633d}.agenda-delivery-status>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#218657;color:#fff;font-weight:900}.agenda-delivery-status strong,.agenda-delivery-status small{display:block}.agenda-delivery-status strong{font-size:11px}.agenda-delivery-status small{margin-top:2px;color:#4d7460;font-size:9px}.long-delay-confirm{display:flex;align-items:flex-start;gap:13px}.long-delay-confirm>span{display:grid;flex:0 0 40px;place-items:center;width:40px;height:40px;border-radius:11px;background:#fff2d6;color:#9a6200;font-size:22px;font-weight:900}.long-delay-confirm small{color:#9a6200;font-size:9px;font-weight:850;text-transform:uppercase}.long-delay-confirm h2{margin:4px 0 7px}.long-delay-confirm p{margin:0;color:var(--muted);line-height:1.5}.photo-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0}.photo-preview-head strong{font-size:11px}.photo-preview-head small{color:var(--muted);font-size:9px}.photo-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.photo-preview-grid figure{position:relative;overflow:hidden;margin:0;border:1px solid var(--line);border-radius:10px;background:#f2f5f6}.photo-preview-grid img{display:block;width:100%;height:92px;object-fit:cover}.photo-preview-grid button{position:absolute;right:5px;top:5px;display:grid;place-items:center;width:25px;height:25px;border:0;border-radius:50%;background:#17212dcc;color:#fff;font-size:17px;cursor:pointer}.photo-preview-grid figcaption{padding:5px 7px;color:var(--muted);font-size:8px;font-weight:750}
.repeat-breakdown-alert{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:14px;padding:13px 15px;border:1px solid #f1cc83;border-radius:11px;background:#fff8e9}.repeat-breakdown-alert>span,.repeat-history-head>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#17212b;color:#fff;font-size:11px;font-weight:900}.repeat-breakdown-alert strong{font-size:12px}.repeat-breakdown-alert p{margin:3px 0 0;color:#72571f;font-size:10px;line-height:1.45}.repeat-breakdown-alert button{border:0;background:transparent;color:var(--blue);font-weight:800;cursor:pointer}.repeat-history-head{display:flex;align-items:center;gap:12px}.repeat-history-head small{color:var(--blue);font-size:8px;font-weight:850;text-transform:uppercase}.repeat-history-head h2{margin:3px 0}.repeat-history-head p{margin:0;color:var(--muted)}.repeat-history-list{display:grid;margin-top:16px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.repeat-history-list>button{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;cursor:pointer}.repeat-history-list>button:last-child{border-bottom:0}.repeat-history-list strong,.repeat-history-list small{display:block}.repeat-history-list small{margin-top:3px;color:var(--muted);font-size:9px}.materials-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:28px 0 12px}.materials-head span{color:var(--blue);font-size:9px;font-weight:850;text-transform:uppercase}.materials-head h2{margin:3px 0;font-size:20px}.materials-head p{margin:0;color:var(--muted);font-size:10px}.material-price-alert{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;margin-bottom:10px;padding:11px 13px;border:1px solid #f3c5c5;border-radius:10px;background:#fff3f3}.material-price-alert>span{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#b42318;color:#fff;font-weight:900}.material-price-alert strong{font-size:11px}.material-price-alert small{color:#875050;font-size:9px}.materials-table{overflow:hidden}.materials-table>button{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto 12px;align-items:center;gap:12px;padding:12px 15px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;cursor:pointer}.materials-table>button:last-child{border-bottom:0}.materials-table strong,.materials-table small{display:block}.materials-table small{margin-top:3px;color:var(--muted);font-size:9px}.materials-table>button>span{font-weight:800}.material-form-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.material-form-head>span{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#173149;color:#fff;font-weight:900}.material-form-head small{color:var(--blue);font-size:8px;font-weight:850;text-transform:uppercase}.material-form-head h2{margin:3px 0}.material-form-head p{margin:0;color:var(--muted)}.part-change-section>header>div small{color:var(--muted);font-size:8px}.part-change-section article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.part-change-section article strong,.part-change-section article small{display:block}.part-change-section article small{margin-top:3px;color:var(--muted);font-size:8px}.invoice-concept-field small{display:block;margin-top:4px;color:var(--muted);font-size:8px}
.agenda-task-card.completed{border-color:#b9dfc9!important;background:#eef8f2!important;opacity:.88}.agenda-task-card.completed time,.agenda-task-card.completed .agenda-task-meta{color:#187346}.agenda-task-card.cancelled{border-color:#d4dade!important;background:#f3f5f6!important;opacity:.72}.agenda-task-card.cancelled strong{text-decoration:line-through}.agenda-day-cell.past,.month-day.past{background:#f7f8f8}.week-head time.past,.month-day.past>header>strong{color:#98a3aa}.agenda-history-label{padding:3px 7px;border-radius:99px;background:#e8ecee;color:#66747e;font-size:8px;font-weight:800;text-transform:uppercase}.agenda-history-banner{display:flex;align-items:center;gap:10px;margin:12px 0;padding:11px 13px;border:1px solid #d8e0e5;border-radius:10px;background:#f5f7f8}.agenda-history-banner>span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#536572;color:#fff;font-weight:900}.agenda-history-banner strong,.agenda-history-banner small{display:block}.agenda-history-banner strong{font-size:11px}.agenda-history-banner small{margin-top:2px;color:var(--muted);font-size:9px}
.service-impact{margin:4px 0;padding:0;border:0}.service-impact>legend{margin-bottom:8px;font-size:11px;font-weight:850}.service-impact>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.service-impact>div>label{position:relative;cursor:pointer}.service-impact>div input{position:absolute;opacity:0;pointer-events:none}.service-impact>div span{display:block;height:100%;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff}.service-impact>div strong,.service-impact>div small{display:block}.service-impact>div strong{font-size:10px}.service-impact>div small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.35}.service-impact>div input:checked+span{border-color:#2b64a5;background:#edf4fc;box-shadow:0 0 0 2px #2b64a51c}.service-impact>div label:nth-child(2) input:checked+span{border-color:#d08b16;background:#fff7e5;box-shadow:0 0 0 2px #d08b161c}.service-impact>div label:nth-child(3) input:checked+span{border-color:#bd292d;background:#fff1f1;box-shadow:0 0 0 2px #bd292d1c}.partial-impact-reason{display:grid!important;gap:6px;margin-top:9px;padding:11px;border-left:3px solid #d08b16;border-radius:7px;background:#fff8e9}.partial-impact-reason[hidden]{display:none!important}.partial-impact-reason textarea{min-height:74px}.impact-summary dd{display:flex;align-items:center}.provider-work-orders{display:grid;margin-top:12px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.provider-work-orders article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:13px;border-bottom:1px solid var(--line);background:#fff}.provider-work-orders article:last-child{border-bottom:0}.provider-work-orders strong,.provider-work-orders small{display:block}.provider-work-orders small{margin-top:3px;color:var(--muted);font-size:8px}.provider-work-orders p{margin:6px 0 0;color:#455765;font-size:9px;line-height:1.45}.work-order-impact{padding:5px 7px;border-radius:7px;background:#edf1f3;color:#536572;font-size:8px;font-weight:850}.work-order-impact.parcial{background:#fff2d7;color:#885800}.work-order-impact.total{background:#ffeded;color:#a51c20}
.provider-financial-tabs{overflow-x:auto;scrollbar-width:thin}.provider-financial-tabs button{flex:0 0 auto}
@media(max-width:600px){input,select,textarea{font-size:16px!important}.photo-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-preview-grid img{height:110px}.agenda-command-actions{display:grid;grid-template-columns:repeat(3,1fr)}.agenda-command-actions .agenda-print-button,.agenda-command-actions .primary{grid-column:span 3;justify-content:center}.restaurant-camera small{max-width:230px;line-height:1.4}.repeat-breakdown-alert{grid-template-columns:auto 1fr}.repeat-breakdown-alert button{grid-column:1/-1;text-align:left}.materials-head{align-items:stretch;flex-direction:column}.materials-head button{width:100%}.service-impact>div{grid-template-columns:1fr}.provider-work-orders article{grid-template-columns:1fr}.provider-work-orders .badge{justify-self:start}}
@media print{body.printing-agenda{background:#fff!important}.printing-agenda .sidebar,.printing-agenda .topbar,.printing-agenda .mobile-nav,.printing-agenda .mobile-new,.printing-agenda .agenda-command-actions,.printing-agenda .agenda-toolbar,.printing-agenda .toast{display:none!important}.printing-agenda .layout{display:block!important}.printing-agenda .page{padding:0!important}.printing-agenda .content{max-width:none!important;padding:0!important}.printing-agenda .agenda-command{margin:0 0 14px!important;padding:0 0 12px!important;border-bottom:2px solid #17212b}.printing-agenda .professional-week-agenda{display:block!important;overflow:visible!important;box-shadow:none!important}.printing-agenda .week-head,.printing-agenda .week-row{min-width:0!important;break-inside:avoid}.printing-agenda .mobile-agenda-list{display:none!important}.printing-agenda .month-agenda,.printing-agenda .year-agenda{box-shadow:none!important}.printing-agenda .agenda-task-card{break-inside:avoid;color:#17212b!important;background:#fff!important;border:1px solid #9ba7af!important}@page{size:landscape;margin:10mm}}

/* Planificación sobre la agenda operativa real */
.planning-live-banner{
  position:relative;
  z-index:20;
  margin:0 0 16px;
  overflow:hidden;
  border:1px solid #b8cddd;
  border-radius:14px;
  background:#fff;
  box-shadow:0 10px 28px rgba(28,54,75,.09);
}
.planning-live-banner>header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:17px 18px 14px;
  border-bottom:1px solid #dce6ed;
  background:linear-gradient(135deg,#edf5fa 0%,#f8fbfd 100%);
}
.planning-live-banner>header small{
  display:block;
  margin-bottom:3px;
  color:#246495;
  font-size:8px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.planning-live-banner>header h2{margin:0;color:#172431;font-size:16px;line-height:1.25}
.planning-live-banner>header p{margin:4px 0 0;color:#647786;font-size:9px}
.planning-live-close{
  display:grid;
  flex:0 0 36px;
  place-items:center;
  width:36px;
  height:36px;
  padding:0;
  border:1px solid #d3dfe7;
  border-radius:9px;
  background:#fff;
  color:#5d7180;
  font-size:19px;
}
.planning-live-controls{
  display:grid;
  grid-template-columns:minmax(170px,1.2fr) minmax(140px,.9fr) minmax(112px,.7fr) minmax(112px,.7fr) auto auto;
  gap:11px;
  align-items:end;
  padding:15px 18px 11px;
}
.planning-live-controls>label:not(.planning-live-all-day){display:grid;gap:5px;color:#536572;font-size:8px;font-weight:850}
.planning-live-controls select,.planning-live-controls input[type="date"]{
  width:100%;
  min-height:42px;
  border:1px solid #cfdce5;
  border-radius:9px;
  background:#fff;
  color:#1f2d38;
  font-size:10px;
  font-weight:750;
}
.planning-live-all-day{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding:0 11px;
  border:1px solid #cfdce5;
  border-radius:9px;
  color:#334653;
  font-size:9px;
  font-weight:800;
  white-space:nowrap;
}
.planning-live-all-day input{width:16px;height:16px;margin:0;accent-color:#2465a8}
.planning-live-controls>.primary{min-height:42px;padding:0 18px;border-radius:9px;white-space:nowrap}
.planning-live-help{margin:0;padding:0 18px 13px;color:#71828e;font-size:8px}
.real-planning-slot{
  position:relative;
  z-index:3;
  width:calc(100% - 10px);
  min-height:27px;
  margin:5px;
  padding:4px 7px;
  border:1px dashed #9db9cd;
  border-radius:7px;
  background:#f3f8fb;
  color:#246392;
  font-size:8px;
  font-weight:850;
}
.real-planning-slot:hover{border-style:solid;background:#e5f0f7}
.agenda-day-cell.real-planning-selected{box-shadow:inset 0 0 0 2px #2c6aa2;background:#edf6fb}
.agenda-day-cell.real-planning-selected .real-planning-slot{border-style:solid;border-color:#2c6aa2;background:#2c6aa2;color:#fff}
.real-planning-day{min-height:31px!important;padding:0 10px!important;border:1px solid #9db9cd!important;border-radius:7px!important;background:#f0f6fa!important;color:#246392!important;font-size:8px!important;font-weight:850!important}

@media(max-width:1050px){
  .planning-live-controls{grid-template-columns:1.2fr 1fr .8fr .8fr}
  .planning-live-all-day{grid-column:1/3}
  .planning-live-controls>.primary{grid-column:3/5}
}
@media(max-width:700px){
  .planning-live-banner{margin:-2px -2px 14px;border-radius:12px}
  .planning-live-banner>header{padding:14px}
  .planning-live-banner>header p{font-size:10px}
  .planning-live-controls{grid-template-columns:1fr 1fr;padding:13px 14px 10px}
  .planning-live-controls>label:first-child{grid-column:1/-1}
  .planning-live-all-day{grid-column:1/-1}
  .planning-live-controls>.primary{grid-column:1/-1}
  .planning-live-help{padding:0 14px 12px;font-size:9px}
}

/* Envío móvil e historial de incidencias */
.restaurant-portal-tabs{grid-template-columns:repeat(3,minmax(0,1fr));max-width:920px}
.restaurant-portal-grid{max-width:920px}
.restaurant-portal-grid.mode-history .restaurant-report-form{display:none}
.restaurant-photo-actions{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(230px,.8fr);gap:10px}
.restaurant-photo-actions .restaurant-camera{min-height:180px}
.restaurant-gallery{position:relative;display:flex!important;align-items:center;gap:13px;min-height:180px;padding:18px;border:1px solid var(--line)!important;border-radius:13px;background:#fff;color:var(--ink)!important;cursor:pointer}
.restaurant-gallery:hover{border-color:#7d9eb9!important;background:#f7fafc}
.restaurant-gallery{overflow:hidden}
.restaurant-gallery input{position:absolute!important;inset:0!important;z-index:2;width:100%!important;height:100%!important;margin:0!important;opacity:.01!important;pointer-events:auto!important;cursor:pointer}
.restaurant-gallery>span{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:12px;background:#eaf2f9;color:#286496;font-size:23px;font-weight:850}
.restaurant-gallery strong,.restaurant-gallery small{display:block}
.restaurant-gallery strong{font-size:11px}
.restaurant-gallery small{margin-top:5px;color:var(--muted);font-size:8px;line-height:1.45}
.restaurant-history-meta{color:#496372!important;font-weight:650;line-height:1.4}
html[data-theme="dark"] .restaurant-gallery{background:var(--card);color:var(--ink)!important}
html[data-theme="dark"] .restaurant-gallery:hover{background:#20313d}
@media(max-width:700px){.restaurant-portal-tabs{grid-template-columns:repeat(3,minmax(0,1fr));overflow-x:auto}.restaurant-portal-tabs>button{display:flex;min-width:0;gap:7px}.restaurant-portal-tabs>button>div{min-width:0}.restaurant-portal-tabs strong,.restaurant-portal-tabs small{overflow:hidden;text-overflow:ellipsis}.restaurant-tab-icon{width:36px;height:36px;flex:0 0 36px}.restaurant-photo-actions{grid-template-columns:1fr}.restaurant-photo-actions .restaurant-camera,.restaurant-gallery{min-height:132px}.restaurant-gallery{padding:15px}}

/* Proveedores fijos y eventuales */
.provider-directory-filters{display:flex;align-items:end;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.provider-directory-filters label{display:grid;gap:5px;color:var(--muted);font-size:8px}
.provider-directory-filters select{min-width:190px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:700}
.provider-card-badges,.provider-detail-badges{display:flex;align-items:center;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.provider-relationship-choice{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0 0 14px;padding:0;border:0}
.provider-relationship-choice legend{grid-column:1/-1;margin-bottom:2px;font-size:11px;font-weight:850}
.provider-relationship-choice label{position:relative;cursor:pointer}
.provider-relationship-choice input{position:absolute;opacity:0;pointer-events:none}
.provider-relationship-choice span{display:block;height:100%;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fafbfb}
.provider-relationship-choice strong,.provider-relationship-choice small{display:block}
.provider-relationship-choice strong{font-size:10px}.provider-relationship-choice small{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.4}
.provider-relationship-choice input:checked+span{border-color:#5f8eb5;background:#edf5fb;box-shadow:inset 0 0 0 1px #c7dbe9}
html[data-theme="dark"] .provider-directory-filters select,html[data-theme="dark"] .provider-relationship-choice span{background:var(--card);color:var(--ink)}
@media(max-width:700px){.provider-directory-filters{display:grid;grid-template-columns:1fr;width:100%}.provider-directory-filters label,.provider-directory-filters select{width:100%;min-width:0}.provider-relationship-choice{grid-template-columns:1fr}}

/* Priorización de incidencias que necesitan atención */
.attention-head-actions{display:flex;align-items:center;gap:7px}
.attention-filter{position:relative;display:flex;align-items:center;min-height:36px;padding-left:10px;border:1px solid #d9e3ea;border-radius:10px;background:#f4f7f9;color:#356b98;transition:.18s ease}
.attention-filter:hover{border-color:#adc2d2;background:#edf4f8}
.attention-filter:focus-within{border-color:#6e98b9;box-shadow:0 0 0 3px rgba(52,111,158,.1)}
.attention-filter svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;pointer-events:none}
.attention-filter select{min-width:108px;min-height:34px;padding:7px 27px 7px 7px;border:0;outline:0;background:transparent;color:#284556;font-size:10px;font-weight:800;appearance:none;cursor:pointer}
.attention-filter i{position:absolute;right:10px;width:6px;height:6px;border-right:1.5px solid #658092;border-bottom:1.5px solid #658092;transform:translateY(-2px) rotate(45deg);pointer-events:none}
.attention-head-actions>.attention-view-all{display:flex;align-items:center;gap:5px;min-height:36px;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:var(--blue);font-size:9px;font-weight:850;cursor:pointer;white-space:nowrap}
.attention-view-all:hover{background:#edf4fa}.attention-view-all span{font-size:16px;line-height:0;transition:transform .18s}.attention-view-all:hover span{transform:translateX(2px)}
html[data-theme="dark"] .attention-filter{border-color:var(--line);background:#20313d}html[data-theme="dark"] .attention-filter select{color:var(--ink)}html[data-theme="dark"] .attention-view-all:hover{background:#20313d}
@media(max-width:600px){.attention .panel-head{align-items:flex-start}.attention-head-actions{gap:4px}.attention-filter{min-height:34px;padding-left:8px}.attention-filter select{min-width:88px;min-height:32px;padding-right:22px}.attention-filter i{right:8px}.attention-head-actions>.attention-view-all{min-height:34px;padding-inline:7px}.attention-view-all span{display:none}}

/* Plan del asistente de WhatsApp */
.integration-card>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}.integration-card>footer>a{color:#245e97;font-size:9px;font-weight:800;text-decoration:none}.integration-card>footer>a:hover{text-decoration:underline}.assistant-integration{border-color:#b9ccdc;background:linear-gradient(145deg,#fff,#f5f9fc)}.assistant-integration>header>span:first-child{background:#dfeefa;color:#155f96}.assistant-integration>footer .secondary{min-height:34px;padding:7px 10px;font-size:8px}
.whatsapp-plan-heading{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:14px;padding-right:30px}.whatsapp-plan-heading>span:first-child{display:grid;place-items:center;width:52px;height:48px;border-radius:12px;background:#e5f5ec;color:#177244;font-size:11px;font-weight:900}.whatsapp-plan-heading small{color:#68808e;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.whatsapp-plan-heading h2{margin:3px 0 0;font-size:19px}.whatsapp-plan-heading p{margin:4px 0 0;color:#6d7e89;font-size:9px;line-height:1.45}.whatsapp-plan-security{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;align-items:center;padding:12px 13px;border:1px solid #bedaca;border-radius:10px;background:#f2faf6}.whatsapp-plan-security>span{display:grid;place-items:center;width:38px;height:34px;border-radius:8px;background:#fff;color:#267151;font-weight:900}.whatsapp-plan-security strong{font-size:9px}.whatsapp-plan-security p{margin:3px 0 0;color:#61766a;font-size:8px;line-height:1.45}.whatsapp-plan-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:10px 0}.whatsapp-plan-kpis article{display:grid;gap:4px;padding:11px;border:1px solid #dce4e9;border-radius:9px;background:#f8fafb}.whatsapp-plan-kpis span{color:#6e7e89;font-size:7px}.whatsapp-plan-kpis strong{font-size:14px}.whatsapp-plan-kpis small{color:#74838d;font-size:7px;line-height:1.35}.whatsapp-plan-form{display:grid;gap:9px}.whatsapp-plan-form>section{padding:13px;box-shadow:none}.whatsapp-plan-form>section>header{display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;align-items:center;margin-bottom:11px}.whatsapp-plan-form>section>header>b{display:grid;place-items:center;width:32px;height:29px;border-radius:7px;background:#eaf2f8;color:#245e97;font-size:8px}.whatsapp-plan-form h3{margin:0;font-size:11px}.whatsapp-plan-form header p{margin:3px 0 0;color:#71808b;font-size:8px}.whatsapp-plan-checks{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:10px}.whatsapp-plan-checks>label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start;padding:9px;border:1px solid #dce4e9;border-radius:8px;background:#fafcfd;cursor:pointer}.whatsapp-plan-checks input{width:auto;min-height:auto;margin-top:2px;accent-color:#296b9e}.whatsapp-plan-checks strong,.whatsapp-plan-checks small{display:block}.whatsapp-plan-checks strong{font-size:8px}.whatsapp-plan-checks small{margin-top:2px;color:#71808b;font-size:7px}.whatsapp-plan-rules{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px}.whatsapp-plan-rules span{padding:9px;border-radius:7px;background:#f3f6f8;color:#5d707d;font-size:8px}.whatsapp-plan-rules b{color:#263844}.whatsapp-plan-note{padding:10px 12px;border-left:3px solid #c38b2c;border-radius:0 8px 8px 0;background:#fff8e9}.whatsapp-plan-note strong{font-size:9px}.whatsapp-plan-note p{margin:3px 0 0;color:#6e624a;font-size:8px;line-height:1.45}
@media(max-width:760px){.integration-card>footer{align-items:stretch;flex-direction:column}.integration-card>footer .secondary{width:100%;min-height:42px}.whatsapp-plan-heading{grid-template-columns:46px minmax(0,1fr)}.whatsapp-plan-heading>.badge{grid-column:1/-1;justify-self:start}.whatsapp-plan-kpis{grid-template-columns:1fr 1fr}.whatsapp-plan-checks,.whatsapp-plan-rules{grid-template-columns:1fr}}
@media(max-width:430px){.whatsapp-plan-kpis{grid-template-columns:1fr}.whatsapp-plan-form .field-row{grid-template-columns:1fr}}

/* Avisos de agenda y WhatsApp */
.agenda-notice-button{gap:7px!important}.agenda-notice-button>span,.agenda-notify-now>span{display:inline-grid;place-items:center;min-width:25px;height:22px;padding:0 5px;border-radius:6px;background:#e4f4eb;color:#176f43;font-size:7px;font-weight:900}.agenda-notice-button>b{display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:99px;background:#27689d;color:#fff;font-size:7px}.agenda-wa-state{display:inline-grid!important;place-items:center;min-width:23px;height:17px;margin-left:5px;padding:0 4px;border-radius:5px;background:#e5f3eb;color:#1c7047;font-size:6px!important;font-weight:900}.agenda-wa-state.prepared{background:#fff3dc;color:#9a6918}.agenda-wa-state.missing,.agenda-wa-state.error{background:#fae9e9;color:#a83c42}.agenda-delivery-stack{display:grid;gap:6px;margin:10px 0}.agenda-delivery-stack .agenda-delivery-status{margin:0}.agenda-delivery-status.whatsapp>span{background:#e5f4ec;color:#187345;font-size:7px;font-weight:900}.agenda-delivery-status.whatsapp.prepared>span{background:#fff2da;color:#9a6818}.agenda-delivery-status.whatsapp.missing>span,.agenda-delivery-status.empty>span{background:#fae8e8;color:#a83c42}.agenda-channel-confirm{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;margin-top:10px;padding:10px 12px;border:1px solid #c7ddd1;border-radius:9px;background:#f3faf6}.agenda-channel-confirm>span{display:grid;place-items:center;width:38px;height:34px;border-radius:8px;background:#fff;color:#177045;font-size:8px;font-weight:900}.agenda-channel-confirm strong,.agenda-channel-confirm small{display:block}.agenda-channel-confirm strong{font-size:9px}.agenda-channel-confirm small{margin-top:3px;color:#687b70;font-size:8px}.agenda-notice-heading{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:12px;align-items:center;margin-bottom:12px;padding-right:30px}.agenda-notice-heading>span:first-child{display:grid;place-items:center;width:50px;height:46px;border-radius:11px;background:#e4f4eb;color:#177044;font-size:10px;font-weight:900}.agenda-notice-heading small{color:#71808b;font-size:8px;font-weight:850;text-transform:uppercase}.agenda-notice-heading h2{margin:3px 0 0;font-size:18px}.agenda-notice-heading p{margin:4px 0 0;color:#71808b;font-size:9px}.agenda-notice-offline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;align-items:center;padding:11px 13px;border-left:3px solid #c58c2c;border-radius:0 9px 9px 0;background:#fff8e9}.agenda-notice-offline strong{font-size:9px}.agenda-notice-offline p{margin:0;color:#6d624b;font-size:8px}.agenda-notice-offline button{grid-column:2;grid-row:1/3}.agenda-notice-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:10px 0}.agenda-notice-kpis article{display:grid;gap:5px;padding:10px 11px;border:1px solid #dce4e9;border-radius:8px;background:#f8fafb}.agenda-notice-kpis article.attention{border-left:3px solid #b53e44}.agenda-notice-kpis span{color:#6f7f8a;font-size:7px}.agenda-notice-kpis strong{font-size:15px}.agenda-notice-list{overflow:hidden;border:1px solid #dce4e9;border-radius:10px}.agenda-notice-list>header{padding:11px 13px;border-bottom:1px solid #dce4e9;background:#f7f9fa}.agenda-notice-list h3{margin:0;font-size:10px}.agenda-notice-list header p{margin:3px 0 0;color:#71808b;font-size:8px}.agenda-notice-list>button{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto 9px;gap:9px;align-items:center;width:100%;padding:10px 12px;border:0;border-bottom:1px solid #e3e8eb;background:#fff;color:#293741;text-align:left;cursor:pointer}.agenda-notice-list>button:last-child{border-bottom:0}.agenda-notice-list>button:hover{background:#f7fafb}.agenda-notice-icon{display:grid;place-items:center;width:34px;height:31px;border-radius:8px;background:#e6f4ec;color:#187044;font-size:7px;font-weight:900}.agenda-notice-list strong,.agenda-notice-list small{display:block}.agenda-notice-list strong{font-size:8px}.agenda-notice-list small{margin-top:3px;color:#71808b;font-size:7px}.agenda-notice-channel{padding:5px 7px;border-radius:6px;background:#e9f1f8;color:#245e92;font-size:7px;font-weight:800;white-space:nowrap}.agenda-notice-channel.prepared{background:#fff3dc;color:#986716}.agenda-notice-channel.missing,.agenda-notice-channel.error{background:#fae8e8;color:#a63c42}
@media(max-width:760px){.agenda-command-actions .agenda-notice-button{order:5;flex:1 1 100%;justify-content:center}.agenda-notice-heading{grid-template-columns:44px minmax(0,1fr)}.agenda-notice-heading>.badge{grid-column:1/-1;justify-self:start}.agenda-notice-kpis{grid-template-columns:1fr 1fr}.agenda-notice-list>button{grid-template-columns:34px minmax(0,1fr) 9px}.agenda-notice-list>button>.agenda-notice-channel{grid-column:2;justify-self:start}.agenda-notice-list>button>b{grid-column:3;grid-row:1/3}.agenda-notice-offline{grid-template-columns:1fr}.agenda-notice-offline button{grid-column:auto;grid-row:auto;width:100%}}
@media(max-width:430px){.agenda-notice-kpis{grid-template-columns:1fr 1fr}.agenda-notice-channel{white-space:normal}}

/* Asistente inteligente visible y bloqueado hasta producción */
.assistant-top-button{position:relative}.assistant-top-button>span{display:grid;place-items:center;width:24px;height:22px;border-radius:6px;background:#e7eef5;color:#285f91;font-size:7px;font-weight:950}.assistant-top-button>i{position:absolute;right:5px;bottom:5px;width:6px;height:6px;border:2px solid #fff;border-radius:50%;background:#8495a1}.assistant-top-button.available>i{background:#27915f}.assistant-top-button.locked:hover:after{content:"Preparado";position:absolute;right:0;top:44px;z-index:20;padding:6px 8px;border-radius:6px;background:#223441;color:#fff;font-size:7px;white-space:nowrap}.assistant-preparation{display:grid;gap:10px}.assistant-preparation>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;border:1px solid #dce4e9;border-radius:10px;background:#f7f9fa}.assistant-preparation>header>div{display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;align-items:center}.assistant-preparation>header>div>span{display:grid;place-items:center;width:32px;height:29px;border-radius:7px;background:#eaf2f8;color:#245e97;font-size:8px;font-weight:900}.assistant-preparation h3{margin:0;font-size:11px}.assistant-preparation header p{margin:3px 0 0;color:#71808b;font-size:8px}.assistant-preparation>header>strong{font-size:15px}.assistant-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.assistant-feature-grid article{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px;border:1px solid #dce4e9;border-radius:9px;background:#fff}.assistant-feature-grid article>span{display:grid;place-items:center;width:34px;height:31px;border-radius:8px;background:#eaf1f7;color:#285f91;font-size:7px;font-weight:950}.assistant-feature-grid strong,.assistant-feature-grid small{display:block}.assistant-feature-grid strong{font-size:8px}.assistant-feature-grid small{margin-top:3px;color:#71808b;font-size:7px;line-height:1.4}.assistant-readiness-list{overflow:hidden;border:1px solid #dce4e9;border-radius:10px}.assistant-readiness-list>div{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 11px;border-bottom:1px solid #e4e9ec;background:#fff}.assistant-readiness-list>div:last-child{border-bottom:0}.assistant-readiness-list>div>span:first-child{display:grid;place-items:center;width:30px;height:27px;border-radius:7px;background:#edf1f3;color:#71808b;font-size:9px;font-weight:900}.assistant-readiness-list>div.ready>span:first-child{background:#e4f3eb;color:#1f774d}.assistant-readiness-list strong,.assistant-readiness-list small{display:block}.assistant-readiness-list strong{font-size:8px}.assistant-readiness-list small{margin-top:3px;color:#71808b;font-size:7px}.assistant-production-lock,.assistant-preview-lock{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:11px 13px;border-left:3px solid #788b99;border-radius:0 9px 9px 0;background:#f1f4f6}.assistant-production-lock>span,.assistant-preview-lock>span{display:grid;place-items:center;width:38px;height:34px;border-radius:8px;background:#fff}.assistant-production-lock strong,.assistant-preview-lock strong{font-size:9px}.assistant-production-lock p,.assistant-preview-lock p{margin:3px 0 0;color:#637480;font-size:8px;line-height:1.45}.assistant-preview-heading{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:13px;padding-right:30px}.assistant-preview-heading>span:first-child{display:grid;place-items:center;width:52px;height:48px;border-radius:12px;background:linear-gradient(145deg,#dcebf8,#e8f4ef);color:#245f90;font-size:10px;font-weight:950}.assistant-preview-heading small{color:#71808b;font-size:8px;font-weight:850;text-transform:uppercase}.assistant-preview-heading h2{margin:3px 0 0;font-size:19px}.assistant-preview-heading p{margin:4px 0 0;color:#71808b;font-size:9px}.assistant-preview-examples{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:10px}.assistant-preview-examples button{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:center;padding:10px;border:1px solid #dce4e9;border-radius:9px;background:#f8fafb;color:#334753;text-align:left;opacity:1}.assistant-preview-examples button>span{color:#2d689a;font-size:18px}.assistant-preview-examples strong{font-size:8px;line-height:1.4}.assistant-preview-features{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:10px}.assistant-preview-features article{display:grid;grid-template-columns:27px minmax(0,1fr);gap:8px;align-items:center;padding:9px;border-radius:8px;background:#f3f7f9}.assistant-preview-features article>span{display:grid;place-items:center;width:27px;height:25px;border-radius:6px;background:#fff;color:#31735a;font-size:8px;font-weight:900}.assistant-preview-features strong,.assistant-preview-features small{display:block}.assistant-preview-features strong{font-size:8px}.assistant-preview-features small{margin-top:2px;color:#71808b;font-size:7px;line-height:1.35}
@media(max-width:760px){.assistant-feature-grid,.assistant-preview-examples,.assistant-preview-features{grid-template-columns:1fr}.assistant-preview-heading{grid-template-columns:46px minmax(0,1fr)}.assistant-preview-heading>.badge{grid-column:1/-1;justify-self:start}.assistant-readiness-list>div{grid-template-columns:30px minmax(0,1fr)}.assistant-readiness-list .badge{grid-column:2;justify-self:start}.assistant-top-button.locked:hover:after{display:none}}
.user-whatsapp-status{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:9px;padding:10px 12px;border:1px solid #d9e1e6;border-radius:9px;background:#f7f9fa}.user-whatsapp-status>span:first-child{display:grid;place-items:center;width:38px;height:34px;border-radius:8px;background:#e8eef3;color:#607887;font-size:8px;font-weight:900}.user-whatsapp-status.verified>span:first-child{background:#e4f3eb;color:#1c7248}.user-whatsapp-status strong,.user-whatsapp-status small{display:block}.user-whatsapp-status strong{font-size:9px}.user-whatsapp-status small{margin-top:3px;color:#71808b;font-size:8px;line-height:1.4}@media(max-width:520px){.user-whatsapp-status{grid-template-columns:38px minmax(0,1fr)}.user-whatsapp-status>.badge{grid-column:2;justify-self:start}}

.maintenance-permission-panel{
  overflow:hidden;
  border:1px solid #cbdbe6;
  border-radius:12px;
  background:#fff;
}
.maintenance-permission-panel>header{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:14px 15px;
  border-bottom:1px solid #dce5eb;
  background:#f1f6f9;
}
.maintenance-permission-panel>header>span{
  display:grid;
  place-items:center;
  width:42px;
  height:40px;
  border-radius:10px;
  background:#1d4968;
  color:#fff;
  font-size:9px;
  font-weight:900;
}
.maintenance-permission-panel header small{
  color:#286694;
  font-size:7px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.maintenance-permission-panel h3{
  margin:3px 0 0;
  color:#193040;
  font-size:15px;
}
.maintenance-permission-panel header p{
  margin:4px 0 0;
  color:#667b89;
  font-size:9px;
  line-height:1.45;
}
.maintenance-permission-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding:13px;
}
.maintenance-permission-grid>label{
  display:flex;
  align-items:flex-start;
  gap:10px;
  min-height:64px;
  padding:11px;
  border:1px solid #dce4e9;
  border-radius:9px;
  background:#fbfcfd;
  cursor:pointer;
}
.maintenance-permission-grid>label:has(input:checked){
  border-color:#9ebbd0;
  background:#eef5fa;
  box-shadow:inset 3px 0 #286a9b;
}
.maintenance-permission-grid input{
  width:auto;
  min-height:auto;
  accent-color:#286a9b;
}
.maintenance-permission-grid strong,
.maintenance-permission-grid small{display:block}
.maintenance-permission-grid strong{color:#243946;font-size:10px}
.maintenance-permission-grid small{margin-top:3px;color:#6c7f8c;font-size:8px;line-height:1.4}
.maintenance-permission-grid>label:has(input[value="assign_tasks"]),
.maintenance-permission-grid>label:has(input[value="close_incidents"]){border-color:#e4d4b9;background:#fffaf2}
.maintenance-permission-grid>label:has(input[value="assign_tasks"]:checked),
.maintenance-permission-grid>label:has(input[value="close_incidents"]:checked){border-color:#d1ae70;background:#fff7e8;box-shadow:inset 3px 0 #bd7b16}
.maintenance-permission-panel>aside{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-top:1px solid #e0e7eb;
  background:#fafcfd;
}
.maintenance-permission-panel>aside strong{color:#3d5666;font-size:9px;white-space:nowrap}
.maintenance-permission-panel>aside p{margin:0;color:#71818c;font-size:8px;line-height:1.4}
@media(max-width:650px){
  .maintenance-permission-grid{grid-template-columns:1fr}
  .maintenance-permission-panel>aside{align-items:flex-start;flex-direction:column;gap:3px}
}

/* Agenda profesional por rutas, paradas y tickets */
.agenda-other-stop-button{margin-right:auto}.agenda-other-stop-button span{font-size:15px}.agenda-other-stop-modal,.professional-route-modal{width:min(820px,calc(100vw - 28px));padding:24px}.agenda-other-heading,.professional-route-heading{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:14px;padding-right:30px}.agenda-other-heading>span,.professional-route-heading>span{display:grid;place-items:center;width:52px;height:48px;border-radius:12px;background:#173149;color:#fff;font-size:11px;font-weight:900}.agenda-other-heading small,.professional-route-heading small{color:#2c689d;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.agenda-other-heading h2,.professional-route-heading h2{margin:3px 0 0;font-size:20px}.agenda-other-heading p,.professional-route-heading p{margin:3px 0 0;color:#6c7e89;font-size:9px}.agenda-route-context{display:grid;grid-template-columns:1fr 30px 1fr;gap:10px;align-items:center;margin-bottom:13px;padding:13px;border:1px solid #dbe4e9;border-radius:11px;background:#f7f9fa}.agenda-route-context>div{min-width:0}.agenda-route-context span,.agenda-route-context strong,.agenda-route-context small{display:block}.agenda-route-context span{color:#6e7f89;font-size:7px;font-weight:850;text-transform:uppercase}.agenda-route-context strong{margin-top:4px;font-size:11px}.agenda-route-context small{overflow:hidden;margin-top:3px;color:#71808b;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.agenda-route-context>b{text-align:center;color:#2b689c;font-size:18px}.agenda-other-fields{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(150px,.6fr);gap:9px}.agenda-other-advice{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;margin:10px 0;padding:10px 12px;border-left:3px solid #2b6b9f;border-radius:0 9px 9px 0;background:#eef5fa}.agenda-other-advice>span{display:grid;place-items:center;width:34px;height:31px;border-radius:8px;background:#fff;color:#27689d;font-weight:900}.agenda-other-advice strong{font-size:9px}.agenda-other-advice p{margin:3px 0 0;color:#637784;font-size:8px;line-height:1.45}.agenda-group-list>label{grid-template-columns:28px minmax(0,1fr) auto}.agenda-other-list{max-height:300px}.agenda-other-empty{display:grid;justify-items:center;gap:7px;padding:30px 16px;border:1px dashed #ced9e0;border-radius:12px;text-align:center}.agenda-other-empty>span{display:grid;place-items:center;width:44px;height:42px;border-radius:11px;background:#e5f3eb;color:#1c7449;font-size:20px}.agenda-other-empty h3{margin:2px 0 0}.agenda-other-empty p{max-width:420px;margin:0 0 8px;color:#6d7e89;font-size:9px}.route-professional-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:10px 0 14px}.route-professional-summary>div{padding:11px;border:1px solid #dce4e9;border-radius:9px;background:#f7f9fa}.route-professional-summary span,.route-professional-summary strong{display:block}.route-professional-summary span{color:#6e7e89;font-size:7px;font-weight:850;text-transform:uppercase}.route-professional-summary strong{margin-top:5px;font-size:12px}.professional-route-stops{display:grid;gap:10px;max-height:min(56vh,540px);overflow:auto;padding-right:4px}.professional-route-stops>article{overflow:hidden;border:1px solid #d9e3e9;border-radius:12px;background:#fff}.professional-route-stops>article>header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px 13px;background:#f4f8fa}.professional-route-stops>article>header>span{display:grid;place-items:center;width:42px;height:38px;border-radius:10px;background:#173149;color:#fff;font-size:10px;font-weight:900}.professional-route-stops header small,.professional-route-stops header h3,.professional-route-stops header p{display:block;margin:0}.professional-route-stops header small{color:#2b689c;font-size:7px;font-weight:850;text-transform:uppercase}.professional-route-stops header h3{margin-top:3px;font-size:12px}.professional-route-stops header p{overflow:hidden;margin-top:3px;color:#6f808b;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.professional-route-ticket{display:grid;grid-template-columns:minmax(0,1fr) auto 28px;gap:8px;align-items:center;padding:9px 12px;border-top:1px solid #e3e8eb}.professional-route-ticket>button:first-child{display:block;min-width:0;padding:0;border:0;background:transparent;color:#263844;text-align:left;cursor:pointer}.professional-route-ticket strong,.professional-route-ticket small{display:block}.professional-route-ticket strong{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.professional-route-ticket small{margin-top:3px;color:#71808b;font-size:7px}.route-ticket-remove{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:7px;background:#f8eaea;color:#ac3d43;font-size:15px;cursor:pointer}.route-professional-actions{flex-wrap:wrap}.route-professional-actions button:first-child{margin-right:auto}
@media(max-width:680px){.agenda-other-stop-modal,.professional-route-modal{padding:17px}.agenda-other-heading,.professional-route-heading{grid-template-columns:44px minmax(0,1fr)}.agenda-other-heading>span,.professional-route-heading>span{width:44px;height:42px}.professional-route-heading>.badge{grid-column:1/-1;justify-self:start}.agenda-route-context{grid-template-columns:1fr}.agenda-route-context>b{transform:rotate(90deg)}.agenda-other-fields,.route-professional-summary{grid-template-columns:1fr 1fr}.professional-route-stops{max-height:none;overflow:visible}.professional-route-stops>article>header{grid-template-columns:38px minmax(0,1fr)}.professional-route-stops>article>header>span{width:38px;height:35px}.professional-route-stops>article>header>button{grid-column:2;width:100%}.professional-route-ticket{grid-template-columns:minmax(0,1fr) auto 28px}.route-professional-actions{display:grid;grid-template-columns:1fr}.route-professional-actions button{width:100%;margin:0}.agenda-route-builder .modal-actions{display:grid;grid-template-columns:1fr}.agenda-route-builder .modal-actions button{width:100%}}
@media(max-width:430px){.agenda-other-fields,.route-professional-summary{grid-template-columns:1fr}.professional-route-ticket{grid-template-columns:minmax(0,1fr) 28px}.professional-route-ticket>.badge{grid-column:1;justify-self:start}.professional-route-ticket>.route-ticket-remove{grid-column:2;grid-row:1/3}.agenda-other-list .badge{grid-column:2;justify-self:start}}
.accounting-settings-heading{display:flex;align-items:center;gap:14px;margin:0 0 18px}.accounting-settings-heading>span{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#173149;color:#fff;font-size:22px;font-weight:800}.accounting-settings-heading small{color:#2d6da5;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.accounting-settings-heading h2{margin:2px 0 3px}.accounting-settings-heading p{margin:0;color:#657887}.accounting-settings-form{display:grid;gap:14px}.accounting-settings-form fieldset{margin:0;padding:15px;border:1px solid #dce5eb;border-radius:12px;background:#f8fafb}.accounting-settings-form legend{padding:0 7px;color:#173149;font-weight:800}.accounting-settings-modal{width:min(760px,calc(100vw - 28px))}
@media(max-width:640px){.accounting-settings-heading{align-items:flex-start}.accounting-settings-heading>span{width:42px;height:42px;border-radius:12px}.accounting-settings-form fieldset{padding:12px}.accounting-settings-form .form-grid{grid-template-columns:1fr}.accounting-settings-form .span-2{grid-column:auto}}
.agenda-detail-modal{width:min(780px,calc(100vw - 28px));padding:24px}.agenda-task-heading.professional{margin-bottom:12px;padding-bottom:16px;border-bottom:1px solid #dfe6eb}.agenda-task-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.agenda-task-overview>div{padding:11px 12px;border:1px solid #e0e6ea;border-radius:9px;background:#f7f9fa}.agenda-task-overview span{display:block;color:#6e7f8b;font-size:7px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.agenda-task-overview strong{display:block;margin-top:5px;font-size:10px}.agenda-task-description.professional{margin:10px 0 14px;background:#fff}.task-communications{margin:14px 0;padding:15px;border:1px solid #dce5ea;border-radius:12px;background:#f8fafb}.task-communications>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.task-communications header small,.agenda-comments.professional header>div>small{color:#2d6599;font-size:7px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.task-communications h3,.agenda-comments.professional h3{margin:2px 0 0;font-size:12px}.task-channel-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #e0e6ea;color:#263844}.task-channel-icon{display:grid;place-items:center;width:36px;height:32px;border-radius:8px;background:#e4eef7;color:#245f93;font-size:8px;font-weight:900}.task-channel-row strong,.task-channel-row small{display:block}.task-channel-row strong{font-size:9px}.task-channel-row small{margin-top:3px;color:#6e7e89;font-size:8px}.task-channel-row>b{padding:5px 7px;border-radius:6px;background:#e5f2eb;color:#1a7046;font-size:7px}.task-channel-row.whatsapp .task-channel-icon{background:#fff0d3;color:#976313}.task-channel-row.whatsapp>b,.task-channel-row.pending>b{background:#edf0f2;color:#66757f}.task-channel-row.whatsapp.sent>b,.task-channel-row.whatsapp.delivered>b,.task-channel-row.whatsapp.read>b{background:#e5f2eb;color:#1a7046}.task-communications-help{margin:9px 0 0;padding-top:9px;border-top:1px solid #e0e6ea;color:#617481;font-size:8px;line-height:1.45}.agenda-comments.professional{margin-top:14px;padding:15px;border:1px solid #dce5ea;border-radius:12px;background:#fff}.agenda-comments.professional>header{align-items:flex-start}.agenda-comments.professional header p{max-width:470px}.agenda-comment-total{padding:6px 8px;border-radius:7px;background:#edf3f8;color:#285e8e;font-size:7px;font-weight:800;white-space:nowrap}.agenda-comment-compose-info{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:center;margin-top:10px;padding:8px 10px;border-radius:8px;background:#edf4fa;color:#4a6477}.agenda-comment-compose-info>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#2c689e;color:#fff;font-size:9px;font-weight:900}.agenda-comment-compose-info p{margin:0;font-size:8px;line-height:1.4}.agenda-comments-readonly{margin-top:9px;padding:8px 10px;border-radius:8px;background:#f2f4f5;color:#6a7881;font-size:8px}.agenda-detail-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid #dfe6ea}.agenda-detail-footer .agenda-task-actions{margin:0}.agenda-detail-footer>button{min-width:90px}.agenda-delivery-status{border-color:#d8e2e8;background:#f6f9fa;color:#263844}.agenda-delivery-status>span{background:#2c689e}.agenda-delivery-status small{color:#6a7b87}
@media(max-width:680px){.agenda-detail-modal{padding:18px}.agenda-task-overview{grid-template-columns:1fr 1fr}.agenda-task-overview>div:last-child{grid-column:1/-1}.task-channel-row{grid-template-columns:34px minmax(0,1fr)}.task-channel-row>b{grid-column:2;justify-self:start}.agenda-comments.professional{padding:12px}.agenda-comments.professional>header{gap:8px}.agenda-detail-footer{align-items:stretch;flex-direction:column}.agenda-detail-footer .agenda-task-actions{display:grid;grid-template-columns:1fr}.agenda-detail-footer>button{width:100%}}

/* Retirada segura de técnicos en incidencias compartidas */
.team-removal-heading{display:flex;align-items:flex-start;gap:16px;margin:4px 0 20px}.team-removal-heading>span{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:15px;background:#e8f1ff;color:#1d5ca8;font-weight:900}.team-removal-heading small{display:block;color:#607286;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.team-removal-heading h2{margin:3px 0 5px}.team-removal-heading p{margin:0;color:#647488}.team-removal-heading.danger>span{background:#fff0f0;color:#b4232b}.team-removal-notice{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;margin-bottom:16px;border-radius:14px;background:#eef5ff;color:#264e7a}.team-removal-notice>span{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:50%;background:#fff;font-weight:900}.team-removal-notice p{margin:2px 0;line-height:1.45}.team-removal-notice.success{background:#edf9f2;color:#17663f}.team-removal-list{display:grid;gap:9px}.team-removal-list>button{display:flex;align-items:center;gap:12px;width:100%;padding:13px;border:1px solid #dce4ec;border-radius:14px;background:#fff;text-align:left}.team-removal-list>button:hover{border-color:#6e9bd2;background:#f7faff}.team-removal-list>button div{display:grid;gap:3px;flex:1}.team-removal-list>button small{color:#68798a}.team-removal-list>button>b{color:#b4232b}.team-removal-summary{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding:16px;margin-bottom:14px;border:1px solid #dde5ed;border-radius:16px;background:#f8fafc}.team-removal-summary div{display:grid;gap:4px}.team-removal-summary span{color:#68798a;font-size:12px}.team-removal-summary>b{color:#7d8c9b}.team-removal-summary div:last-child{text-align:right}
@media(max-width:600px){.team-removal-summary{grid-template-columns:1fr}.team-removal-summary>b{transform:rotate(90deg);justify-self:center}.team-removal-summary div:last-child{text-align:left}.team-removal-list>button{align-items:flex-start}.team-removal-list>button>b{align-self:center}}

/* Equipo de visita accesible desde cualquier incidencia programada */
.planning-team-button{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center;width:100%;margin:13px 0 9px;padding:11px 12px;border:1px solid #cbd9e5;border-radius:12px;background:#f7fafc;color:#243746;text-align:left;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s}.planning-team-button:hover{border-color:#7fa4c4;background:#f0f6fa;box-shadow:0 5px 14px rgba(28,66,96,.08)}.planning-team-button>span{display:grid;place-items:center;width:38px;height:36px;border-radius:9px;background:#e4eef7;color:#245f93;font-size:10px;font-weight:900}.planning-team-button div{display:grid;gap:3px;min-width:0}.planning-team-button strong{font-size:12px}.planning-team-button small{overflow:hidden;color:#687b8a;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.planning-team-button>b{padding:7px 9px;border-radius:8px;background:#e9f1f7;color:#245f93;font-size:9px;white-space:nowrap}.team-removal-list{gap:7px}.team-removal-list>button{min-height:58px;padding:10px 12px;border-radius:11px;box-shadow:none}.team-removal-list>button>b{padding:6px 9px;border:1px solid #e4c7ca;border-radius:8px;background:#fff;color:#9d343b;font-size:9px}.team-removal-list>button:hover>b{background:#fff2f2}.team-removal-heading{margin-bottom:15px}.team-removal-heading h2{font-size:20px}.team-removal-notice{padding:11px 13px;border-radius:11px}.team-removal-summary{padding:13px;border-radius:12px}.modal-actions.split>.text-danger{padding:9px 11px;border:1px solid #e6c9cb;border-radius:9px;background:#fff;color:#9d343b}.modal-actions.split>.primary{min-width:105px}
@media(max-width:600px){.planning-team-button{grid-template-columns:38px minmax(0,1fr)}.planning-team-button>b{grid-column:2;justify-self:start}.planning-team-button small{white-space:normal}.team-removal-list>button{display:grid;grid-template-columns:38px minmax(0,1fr) auto}.team-removal-list>button>b{align-self:center}.modal-actions.split{display:grid;grid-template-columns:1fr}.modal-actions.split button{width:100%}}

/* Agenda profesional 2026 */
.agenda-professional-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:10px;padding:20px 22px;border:1px solid #d9e2e8;border-radius:14px;background:#fff;box-shadow:0 8px 26px rgba(20,42,60,.045)}.agenda-range-copy>span{display:block;color:#49677d;font-size:8px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.agenda-range-copy h2{margin:5px 0 3px;color:#182a38;font-size:21px}.agenda-range-copy p{margin:0;color:#71808b;font-size:9px}.agenda-range-copy p strong{color:#243846}.agenda-range-copy p b{color:#a46600}.agenda-period-nav.professional{display:grid;grid-template-columns:42px 70px 42px;gap:6px}.agenda-period-nav.professional button{min-height:40px;padding:0;border-color:#d7e0e6;border-radius:9px;background:#f8fafb;color:#2d4352;box-shadow:none}.agenda-period-nav.professional button:nth-child(2){font-size:9px}.agenda-period-nav.professional button:first-child,.agenda-period-nav.professional button:last-child{font-size:19px}.agenda-control-surface{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px;padding:9px 10px;border:1px solid #dbe3e8;border-radius:12px;background:#fff}.agenda-control-filters,.agenda-control-actions{display:flex;align-items:center;gap:8px}.agenda-view-switch{padding:3px;border-radius:9px;background:#edf2f5}.agenda-view-switch button{min-height:34px;padding:7px 13px;border-radius:7px;font-size:9px}.agenda-person-filter{display:flex;align-items:center;gap:8px;padding-left:8px;border-left:1px solid #dde4e8}.agenda-person-filter>span{color:#6c7d88;font-size:8px;font-weight:800}.agenda-person-filter select{min-width:175px;min-height:36px;padding:7px 30px 7px 10px;border:1px solid #d8e1e6;border-radius:8px;background-color:#f8fafb;font-size:9px}.agenda-quiet-action,.agenda-add-main{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 11px;border-radius:9px;font-size:9px;font-weight:800;white-space:nowrap}.agenda-quiet-action{border:1px solid transparent;background:transparent;color:#415967;cursor:pointer}.agenda-quiet-action:hover{border-color:#d6e0e6;background:#f5f8fa}.agenda-quiet-action .icon{width:17px;height:17px}.agenda-action-mark{display:grid;place-items:center;width:24px;height:22px;border-radius:6px;background:#eef2f4;color:#546a78;font-size:7px;font-weight:900}.agenda-add-main{padding-inline:15px}.agenda-add-main>b{display:grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:#fff;color:#225d97;font-size:7px}.agenda-own-view,.agenda-view-fixed{display:grid;gap:2px}.agenda-own-view{padding-left:10px;border-left:1px solid #dde4e8}.agenda-own-view span,.agenda-view-fixed span{color:#526b7b;font-size:8px;font-weight:850}.agenda-own-view strong,.agenda-view-fixed small{color:#71808b;font-size:8px}.agenda-block-strip{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:12px;padding:10px 12px;border:1px solid #efd9b4;border-radius:11px;background:#fffaf1}.agenda-block-strip>header{display:flex;align-items:center;gap:7px}.agenda-block-strip header span{color:#78541d;font-size:9px;font-weight:850}.agenda-block-strip header b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#dca846;color:#fff;font-size:7px}.agenda-block-strip>div{display:flex;gap:7px;overflow:auto}.agenda-block-strip article{display:grid;grid-template-columns:auto minmax(120px,1fr) auto;gap:8px;align-items:center;min-width:245px;padding:7px 9px;border-radius:8px;background:#fff}.agenda-block-strip article>span{color:#9a6616;font-size:8px;font-weight:850}.agenda-block-strip strong,.agenda-block-strip small{display:block}.agenda-block-strip strong{font-size:8px}.agenda-block-strip small{overflow:hidden;margin-top:2px;color:#7c868c;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.agenda-block-strip article button{width:24px;height:24px;padding:0;border:0;border-radius:6px;background:#f6e9d2;color:#95621a;cursor:pointer}.agenda-add-professional-modal,.agenda-entry-modal{width:min(760px,calc(100vw - 28px));padding:24px}.agenda-add-heading.professional,.agenda-entry-heading{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;align-items:center;margin-bottom:14px;padding-right:28px}.agenda-add-heading.professional>span,.agenda-entry-heading>span{display:grid;place-items:center;width:50px;height:46px;border-radius:11px;background:#18354b;color:#fff;font-size:10px;font-weight:900}.agenda-add-heading.professional small,.agenda-entry-heading small{color:#2c689d;font-size:7px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.agenda-add-heading.professional h2,.agenda-entry-heading h2{margin:3px 0 0;font-size:19px}.agenda-add-heading.professional p,.agenda-entry-heading p{margin:3px 0 0;color:#71808b;font-size:9px}.agenda-entry-heading.block>span{background:#9b6c1e}.agenda-entry-heading.request>span{background:#2b6799}.agenda-entry-types{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.agenda-entry-types>button{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border:1px solid #dce4e9;border-radius:10px;background:#fff;color:#263844;text-align:left;cursor:pointer}.agenda-entry-types>button:hover{border-color:#82a5c0;background:#f7fafc}.agenda-entry-types>button>span{display:grid;place-items:center;width:36px;height:33px;border-radius:8px;background:#edf3f7;color:#315f80;font-size:8px;font-weight:900}.agenda-entry-types strong,.agenda-entry-types small{display:block}.agenda-entry-types strong{font-size:9px}.agenda-entry-types small{margin-top:3px;color:#71808b;font-size:8px;line-height:1.35}.agenda-entry-types>button>b{color:#7a8992}.agenda-pending.professional{border-top:1px solid #e1e7ea}.agenda-pending.professional>header{padding-inline:0}.agenda-pending.professional>div{max-height:265px;overflow:auto}.agenda-pending.professional header small{color:#2c689d;font-size:7px;font-weight:850;text-transform:uppercase}.agenda-pending.professional header h3{margin:3px 0}.agenda-actions-primary{display:flex;flex-wrap:wrap;gap:7px}.agenda-actions-primary>button{min-height:39px}.agenda-actions-primary>button[data-incident]{order:1}.agenda-actions-primary>.agenda-finish-action{order:0}.agenda-actions-more{position:relative;align-self:center}.agenda-actions-more>summary{display:flex;align-items:center;gap:9px;min-height:39px;padding:9px 12px;border:1px solid #d9e2e7;border-radius:9px;background:#f7f9fa;color:#405663;font-size:9px;font-weight:800;list-style:none;cursor:pointer}.agenda-actions-more>summary::-webkit-details-marker{display:none}.agenda-actions-more>summary:focus{outline:none}.agenda-actions-more>summary:focus-visible{box-shadow:0 0 0 3px rgba(43,103,153,.2)}.agenda-actions-more>summary span{letter-spacing:.12em}.agenda-actions-more>div{position:absolute;right:0;bottom:calc(100% + 6px);z-index:8;display:grid;gap:3px;width:250px;padding:6px;border:1px solid #d7e0e6;border-radius:10px;background:#fff;box-shadow:0 14px 35px rgba(20,39,54,.18)}.agenda-actions-more:not([open])>div{display:none}.agenda-actions-more>div>button{width:100%;min-height:38px;padding:8px 10px;border:0;border-radius:7px;background:#fff;color:#334b5a;text-align:left;box-shadow:none}.agenda-actions-more>div>button:hover{background:#f1f5f7}.agenda-actions-more>div>.text-danger{color:#a43b41}.agenda-detail-footer .agenda-task-actions{display:flex;align-items:center;gap:7px;flex:1}.tab-activity .event-photos{display:none}.timeline-item>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:baseline}.timeline-item>div strong{font-size:9px}.timeline-item>p{margin-top:6px;padding:8px 10px;border-left:2px solid #d5e1e8;border-radius:0 7px 7px 0;background:#f7f9fa;line-height:1.5}.incident-photo-gallery img,.agenda-evidence-grid img{background:#eef2f4}.incident-photo-gallery img:not([src]),.agenda-evidence-grid img:not([src]){min-height:90px}

@media(max-width:780px){.agenda-professional-head{align-items:flex-start}.agenda-control-surface{align-items:stretch;flex-direction:column}.agenda-control-filters,.agenda-control-actions{justify-content:space-between}.agenda-control-actions{padding-top:8px;border-top:1px solid #e2e8eb}.agenda-person-filter{flex:1}.agenda-person-filter select{width:100%;min-width:0}.agenda-block-strip{grid-template-columns:1fr}.agenda-entry-types{grid-template-columns:1fr}.agenda-actions-primary{display:grid;grid-template-columns:1fr 1fr;width:100%}.agenda-actions-primary>button{width:100%}.agenda-actions-more{width:100%}.agenda-actions-more>summary{justify-content:space-between}.agenda-actions-more>div{right:auto;bottom:auto;left:0;width:100%;margin-top:5px}.agenda-detail-footer .agenda-task-actions{align-items:stretch;flex-direction:column}}
@media(max-width:540px){.agenda-professional-head{gap:14px;padding:16px}.agenda-range-copy h2{font-size:18px}.agenda-period-nav.professional{grid-template-columns:38px 58px 38px}.agenda-control-filters{align-items:stretch;flex-direction:column}.agenda-view-switch{display:grid;grid-template-columns:repeat(3,1fr)}.agenda-person-filter,.agenda-own-view{padding:8px 0 0;border-top:1px solid #e2e8eb;border-left:0}.agenda-control-actions{display:grid;grid-template-columns:1fr 1fr}.agenda-control-actions .agenda-add-main{grid-column:1/-1;grid-row:1}.agenda-quiet-action{border-color:#dce4e8;background:#f8fafb}.agenda-add-professional-modal,.agenda-entry-modal{padding:18px}.agenda-add-heading.professional,.agenda-entry-heading{grid-template-columns:44px minmax(0,1fr)}.agenda-add-heading.professional>span,.agenda-entry-heading>span{width:44px;height:42px}.agenda-actions-primary{grid-template-columns:1fr}.timeline-item>div{grid-template-columns:1fr}.timeline-item>div small{grid-row:1}}

/* Sincronización Agenda ↔ Incidencias */
.agenda-restaurant-pending{margin:12px 0 14px;overflow:hidden;border:1px solid #cfdde6;border-radius:11px;background:#fff}.agenda-restaurant-pending>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 13px;background:#f2f7fa}.agenda-restaurant-pending header small{display:block;color:#2c689d;font-size:7px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.agenda-restaurant-pending header h3{margin:3px 0 0;font-size:11px}.agenda-restaurant-pending header p{margin:3px 0 0;color:#6d7e89;font-size:8px}.agenda-restaurant-pending header>b{display:grid;place-items:center;min-width:26px;height:26px;border-radius:8px;background:#e1edf6;color:#285f8f;font-size:9px}.agenda-restaurant-pending-list{max-height:270px;overflow:auto}.agenda-restaurant-pending-list>label{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 13px;border-top:1px solid #e2e8eb;cursor:pointer}.agenda-restaurant-pending-list>label:hover{background:#f8fafb}.agenda-restaurant-pending-list input{width:17px;min-height:17px;accent-color:#28679c}.agenda-restaurant-pending-list strong,.agenda-restaurant-pending-list small{display:block}.agenda-restaurant-pending-list strong{font-size:9px}.agenda-restaurant-pending-list small{margin-top:3px;color:#71808b;font-size:7px}.agenda-pending-empty{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;padding:15px}.agenda-pending-empty>span{display:grid;place-items:center;width:34px;height:31px;border-radius:8px;background:#e6f3ec;color:#20724c;font-weight:900}.agenda-pending-empty strong,.agenda-pending-empty small{display:block}.agenda-pending-empty strong{font-size:9px}.agenda-pending-empty small{margin-top:3px;color:#71808b;font-size:8px}.agenda-new-work{margin:12px 0;padding:12px;border:1px dashed #ced9e0;border-radius:10px;background:#fafbfc;transition:opacity .18s}.agenda-new-work>header{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:center;margin-bottom:9px}.agenda-new-work>header>span{display:grid;place-items:center;width:30px;height:28px;border-radius:7px;background:#edf2f5;color:#456274;font-weight:900}.agenda-new-work header strong,.agenda-new-work header small{display:block}.agenda-new-work header strong{font-size:9px}.agenda-new-work header small{margin-top:2px;color:#71808b;font-size:7px}.agenda-new-work.muted-by-selection{opacity:.48}.agenda-new-work.muted-by-selection:after{content:"Se programarán las incidencias seleccionadas; no se creará otra tarea.";display:block;margin-top:7px;color:#456579;font-size:8px;font-weight:750}
@media(max-width:540px){.agenda-restaurant-pending-list>label{grid-template-columns:18px minmax(0,1fr)}.agenda-restaurant-pending-list>label>.badge{grid-column:2;justify-self:start}.agenda-restaurant-pending header p{line-height:1.4}}

/* Evidencias para compras de material */
.agenda-material-evidence{margin:12px 0;padding:13px;border:1px solid #d7e2e8;border-radius:11px;background:#f8fafb}.agenda-material-evidence>header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:10px}.agenda-material-evidence header small{display:block;color:#2c689d;font-size:7px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.agenda-material-evidence header h3{margin:3px 0 0;font-size:11px}.agenda-material-evidence header p{margin:3px 0 0;color:#71808b;font-size:8px}.agenda-material-evidence header>span{padding:5px 7px;border-radius:6px;background:#e9eef1;color:#61727d;font-size:7px;font-weight:800}.agenda-material-photo-button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px dashed #9bb4c5;border-radius:9px;background:#fff;color:#2c638f;font-size:9px;font-weight:850;cursor:pointer}.agenda-material-photo-button:hover{border-color:#2c689d;background:#f3f8fb}.agenda-material-photo-button .icon{width:17px;height:17px}.agenda-material-photo-button input{position:absolute;width:1px;height:1px;opacity:0}.agenda-material-photo-preview{margin-top:10px}.agenda-material-photo-count{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.agenda-material-photo-count strong{font-size:8px}.agenda-material-photo-count small{color:#71808b;font-size:7px}.agenda-material-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.agenda-material-photo-grid figure{position:relative;overflow:hidden;margin:0;border:1px solid #d9e2e7;border-radius:9px;background:#fff}.agenda-material-photo-grid img{display:block;width:100%;height:88px;object-fit:cover}.agenda-material-photo-grid figure button{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:rgba(25,39,49,.82);color:#fff;font-size:14px;cursor:pointer}.agenda-material-photo-grid figcaption{padding:5px 7px;color:#5f707b;font-size:7px;font-weight:750}
@media(max-width:540px){.agenda-material-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.agenda-material-photo-grid img{height:105px}.agenda-material-photo-count{align-items:flex-start;flex-direction:column;gap:3px}}

/* Circuito único Incidencias ↔ Agenda */
.agenda-sync-status{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;margin-bottom:12px;padding:10px 12px;border:1px solid #cde3d7;border-radius:10px;background:#f3faf6}.agenda-sync-status>span{display:grid;place-items:center;width:34px;height:31px;border-radius:8px;background:#dff1e7;color:#187047;font-weight:900}.agenda-sync-status strong,.agenda-sync-status small{display:block}.agenda-sync-status strong{font-size:9px}.agenda-sync-status small{margin-top:2px;color:#667b70;font-size:8px}.agenda-sync-queue{margin-bottom:12px;overflow:hidden;border:1px solid #d3e0e8;border-radius:12px;background:#fff;box-shadow:0 5px 16px rgba(28,54,73,.035)}.agenda-sync-queue>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 14px;background:#f4f8fa}.agenda-sync-queue>header>div{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center}.agenda-sync-queue>header>div>span{display:grid;place-items:center;width:36px;height:33px;border-radius:8px;background:#18364d;color:#fff;font-size:8px;font-weight:900}.agenda-sync-queue header small{display:block;color:#2c689d;font-size:7px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.agenda-sync-queue header h3{margin:3px 0 0;font-size:11px}.agenda-sync-queue header p{margin:3px 0 0;color:#71808b;font-size:8px}.agenda-sync-queue>header>button{min-height:36px;white-space:nowrap}.agenda-sync-queue>div>button{display:grid;grid-template-columns:6px minmax(0,1fr) auto auto;gap:10px;align-items:center;width:100%;padding:10px 14px;border:0;border-top:1px solid #e2e8eb;background:#fff;color:#263844;text-align:left;cursor:pointer}.agenda-sync-queue>div>button:hover{background:#f7fafc}.agenda-sync-priority{width:5px;height:30px;border-radius:5px;background:#9aa8b1}.agenda-sync-priority.red{background:#c93c43}.agenda-sync-priority.amber{background:#d99424}.agenda-sync-priority.blue{background:#347ab3}.agenda-sync-queue>div strong,.agenda-sync-queue>div small{display:block}.agenda-sync-queue>div strong{font-size:9px}.agenda-sync-queue>div small{margin-top:3px;color:#71808b;font-size:7px}.agenda-sync-queue>div button>b{color:#2c6594;font-size:8px;white-space:nowrap}.agenda-sync-queue>footer{padding:8px 14px;border-top:1px solid #e2e8eb;background:#fafbfc;text-align:center}.agenda-sync-queue>footer button{border:0;background:transparent;color:#2c6594;font-size:8px;font-weight:800;cursor:pointer}
@media(max-width:600px){.agenda-sync-queue>header{align-items:stretch;flex-direction:column}.agenda-sync-queue>header>button{width:100%}.agenda-sync-queue>div>button{grid-template-columns:5px minmax(0,1fr) auto}.agenda-sync-queue>div button>b{grid-column:2;justify-self:start}.agenda-sync-queue>div .badge{grid-column:3;grid-row:1/3}}
.same-restaurant-followup-modal{max-width:760px}
.same-restaurant-followup-heading{display:flex;align-items:flex-start;gap:16px;margin:4px 42px 20px 0}
.same-restaurant-followup-heading>span{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:14px;background:#fff2d8;color:#9a5a00;font-size:20px;font-weight:800}
.same-restaurant-followup-heading small{display:block;margin-bottom:5px;color:#66788a;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.same-restaurant-followup-heading h2{margin:0;color:#162331;font-size:24px;line-height:1.22}
.same-restaurant-followup-heading p{margin:7px 0 0;color:#607286;line-height:1.45}
.same-restaurant-followup-message{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;margin-bottom:14px;border:1px solid #cfe0f2;border-radius:14px;background:#f4f8fc;color:#30465d}
.same-restaurant-followup-message>span{display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:50%;background:#2862ad;color:#fff;font-weight:800}
.same-restaurant-followup-message p{margin:1px 0 0;line-height:1.45}
.same-restaurant-followup-list{display:grid;gap:8px;max-height:260px;overflow:auto;padding-right:4px}
.same-restaurant-followup-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 15px;border:1px solid #dde5ec;border-radius:13px;background:#fff}
.same-restaurant-followup-list article div{min-width:0}
.same-restaurant-followup-list strong,.same-restaurant-followup-list small{display:block}
.same-restaurant-followup-list strong{color:#1d2b39;font-size:15px}
.same-restaurant-followup-list small{margin-top:4px;color:#718092;font-size:12px}
.same-restaurant-followup-actions{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:10px;margin-top:20px}
.same-restaurant-followup-actions button{min-height:48px}
@media(max-width:700px){
  .same-restaurant-followup-heading{gap:12px;margin-right:34px}
  .same-restaurant-followup-heading>span{flex-basis:42px;height:42px}
  .same-restaurant-followup-heading h2{font-size:20px}
  .same-restaurant-followup-actions{grid-template-columns:1fr}
  .same-restaurant-followup-actions .primary{order:-1}
}

/* Pulido visual y legibilidad */
.sidebar nav button.active,.settings-link.active{box-shadow:inset 3px 0 var(--blue)}
.new-desktop.primary,.mobile-new{background:var(--blue);box-shadow:0 6px 16px rgba(35,89,166,.25)}
.new-desktop.primary:hover,.mobile-new:hover{background:#194985}
.topbar p,.restaurant-filter{font-size:12px}
.role-view-badge{font-size:10px}
.icon-button b{min-width:20px;height:20px;font-size:10px}
.stat span{font-size:12px}.stat small{font-size:11px}
.panel-head p,.section-head p{font-size:12px}
.attention-row strong,.visit-row strong{font-size:14px}
.attention-row small,.visit-row small,.visit-row time{font-size:12px}
.badge{font-size:11px}
.toolbar label span,.toolbar>b{font-size:12px}
.incident-row strong{font-size:14px}.incident-main strong{font-size:15px}.incident-row small{font-size:12px}
.detail-summary small,.detail-summary p{font-size:12px}
.detail-section h3{font-size:16px}.section-head>span{font-size:12px}
.summary-list dt{font-size:11px}.summary-list dd{font-size:13px}
.timeline-item strong,.timeline-item>div strong{font-size:12px}
.timeline-item small{font-size:11px}.timeline-item p{font-size:13px}
.composer>label,.planning label,.form-page label,.modal label{font-size:13px}
.quick-comments button,.photo-button{font-size:12px}
.lock-help,.related>p{font-size:12px}.related>button strong{font-size:13px}.related>button small{font-size:11px}
.notification-head p{font-size:12px}
.notification-list strong{font-size:13px}.notification-list small{font-size:11px}
.notification-footer button{font-size:12px}

.agenda-range-copy>span{font-size:10px}.agenda-range-copy p{font-size:12px}
.agenda-view-switch button,.agenda-person-filter select,.agenda-quiet-action,.agenda-add-main{font-size:11px}
.agenda-person-filter>span,.agenda-own-view span,.agenda-view-fixed span,.agenda-own-view strong,.agenda-view-fixed small{font-size:10px}
.professional-week-agenda .week-head>*{font-size:11px}
.agenda-person strong{font-size:12px}.agenda-person small{font-size:10px}
.agenda-task-card{padding:9px}
.agenda-task-card time{font-size:10px}
.agenda-task-card strong{display:-webkit-box;overflow:hidden;font-size:11px;line-height:1.3;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.agenda-task-card small{font-size:10px}.agenda-task-meta,.agenda-comment-bubble,.agenda-route-link{font-size:9px}
.agenda-add-slot{opacity:0;transition:opacity .15s ease,border-color .15s ease,background .15s ease}
.agenda-day-cell:hover .agenda-add-slot,.agenda-add-slot:focus-visible{opacity:1}
.agenda-sync-status strong,.agenda-sync-queue header h3{font-size:12px}
.agenda-sync-status small,.agenda-sync-queue header p{font-size:11px}
.agenda-sync-queue header small,.agenda-sync-queue>div small{font-size:10px}
.agenda-sync-queue>div strong{font-size:12px}.agenda-sync-queue>div button>b{font-size:11px}

.incident-actions-more{position:relative}
.incident-actions-more>summary{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:10px 13px;border:1px solid #dbe3e8;border-radius:9px;background:#f7f9fa;color:#405663;font-size:12px;font-weight:800;list-style:none;cursor:pointer}
.incident-actions-more>summary::-webkit-details-marker{display:none}
.incident-actions-more>summary span{letter-spacing:.12em}
.incident-actions-more>div{display:grid;gap:7px;margin-top:7px;padding:7px;border:1px solid #dbe3e8;border-radius:9px;background:#fff}
.incident-actions-more:not([open])>div{display:none}
.incident-actions-more>div>button{width:100%;min-height:40px;box-shadow:none}

@media(max-width:820px){
  .mobile-nav button{min-height:48px;font-size:11px}
  .mobile-agenda-list .agenda-task-card strong{font-size:14px}
  .mobile-agenda-list .agenda-task-card small,.mobile-agenda-list .agenda-task-meta{font-size:12px}
  .agenda-add-slot{opacity:1}
}
@media(max-width:600px){
  body{font-size:15px}
  .topbar p{font-size:12px}
  .primary,.secondary,.danger{min-height:44px}
  .incident-row strong,.incident-main strong{font-size:15px}
  .incident-row small{font-size:12px}
  .badge{font-size:11px}
  .detail-tabs button{min-height:44px;font-size:13px}
  .summary-list dt{font-size:11px}.summary-list dd{font-size:14px}
  .timeline-item strong,.timeline-item>div strong{font-size:13px}
  .timeline-item small{font-size:11px}.timeline-item p{font-size:13px}
}

/* Portal del restaurante: rápido, táctil y sin decisiones técnicas */
.restaurant-portal-grid,.restaurant-report-form,.restaurant-photo-actions,.restaurant-photo-preview{min-width:0;max-width:100%}
.restaurant-portal-head>div:first-child>span{font-size:10px}
.restaurant-portal-head p{font-size:13px}
.restaurant-portal-head>div:last-child small{font-size:10px}
.restaurant-portal-head>div:last-child strong{font-size:13px}
.restaurant-portal-tabs strong{font-size:13px}.restaurant-portal-tabs small{font-size:11px}
.restaurant-portal-location,.restaurant-sender-field,.restaurant-description,.restaurant-severity legend,.restaurant-service-impact legend{font-size:14px}
.restaurant-sender-field small,.restaurant-description>small{font-size:12px}
.restaurant-camera strong{font-size:16px}.restaurant-camera small{font-size:12px}
.restaurant-gallery strong{font-size:14px}.restaurant-gallery small{font-size:12px}
.restaurant-report-form textarea{font-size:16px;line-height:1.45}
.restaurant-impact-help{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;margin-bottom:-5px;padding:11px 12px;border-radius:10px;background:#f1f6fa;color:#314c60}
.restaurant-impact-help>span{display:grid;place-items:center;width:34px;height:32px;border-radius:9px;background:#fff;color:#286496;font-weight:900}
.restaurant-impact-help strong,.restaurant-impact-help small{display:block}
.restaurant-impact-help strong{font-size:13px}.restaurant-impact-help small{margin-top:3px;color:#617786;font-size:11px}
.restaurant-service-impact>div{grid-template-columns:repeat(3,minmax(0,1fr))}
.restaurant-service-impact span{min-height:74px}
.restaurant-service-impact strong{font-size:13px}.restaurant-service-impact small{font-size:11px;line-height:1.35}
.restaurant-sender small{font-size:11px}.restaurant-sender strong{font-size:13px}
.restaurant-sender{display:none}
.restaurant-send{font-size:15px}
.restaurant-send-note{font-size:11px}
.restaurant-tracking>header span{font-size:10px}.restaurant-tracking>header h2{font-size:17px}
.restaurant-tracking button>div strong{font-size:14px}
.restaurant-tracking button>div small{font-size:12px}
.restaurant-tracking button>span small,.restaurant-tracking button>em{font-size:11px}
.restaurant-detail-hero>div:first-child>span{font-size:10px}
.restaurant-detail-hero p{font-size:13px}
.restaurant-detail-hero>div:last-child small{font-size:11px}
.restaurant-detail-grid dt{font-size:11px}.restaurant-detail-grid dd{font-size:13px}
.restaurant-sender-field input,.restaurant-description textarea{border:1px solid #b9c9d5;background:#fff;box-shadow:0 1px 2px rgba(22,48,67,.04)}
.restaurant-sender-field input:hover,.restaurant-description textarea:hover{border-color:#8ea8bb}
.restaurant-sender-field input:focus,.restaurant-description textarea:focus{border-color:#3976a8;outline:0;box-shadow:0 0 0 4px rgba(57,118,168,.12)}
.restaurant-material-question{display:grid;gap:9px;margin:0;padding:0;border:0}
.restaurant-material-question legend{margin-bottom:1px;color:#31434f;font-size:14px;font-weight:800}
.restaurant-material-question>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.restaurant-material-question>div>label{position:relative;cursor:pointer}
.restaurant-material-question>div input{position:absolute;opacity:0}
.restaurant-material-question>div span{display:grid;gap:4px;min-height:68px;padding:11px 12px;border:1px solid #d6e0e6;border-radius:10px;background:#fff}
.restaurant-material-question>div input:checked+span{border-color:#6f98b8;background:#eff6fb;box-shadow:inset 0 0 0 1px #c3d8e7}
.restaurant-material-question strong{font-size:13px}
.restaurant-material-question small{color:#667985;font-size:11px;line-height:1.35}
.restaurant-material-note{display:grid;gap:6px;padding:12px;border-left:3px solid #c38a29;border-radius:0 10px 10px 0;background:#fff8ea;color:#4c4130;font-size:13px;font-weight:800}
.restaurant-material-note[hidden]{display:none}
.restaurant-material-note textarea{min-height:76px;padding:10px 11px;border:1px solid #dfc890;border-radius:8px;background:#fff;font-size:16px}
.restaurant-material-note>small{color:#766747;font-size:11px;font-weight:500}
.restaurant-material-alert{display:grid;grid-template-columns:42px minmax(0,1fr);gap:11px;align-items:center;margin:14px 0;padding:12px;border:1px solid #e4cc99;border-radius:10px;background:#fff9ed}
.restaurant-material-alert>span{display:grid;place-items:center;width:42px;height:39px;border-radius:9px;background:#fff0cf;color:#946014;font-size:10px;font-weight:900}
.restaurant-material-alert strong{font-size:13px}
.restaurant-material-alert p{margin:4px 0 0;color:#705f3f;font-size:12px;line-height:1.4}
.restaurant-photo-actions.has-photos{display:none}
.restaurant-photo-workspace{overflow:hidden;border:1px solid #cbd9e3;border-radius:13px;background:#f7fafc}
.restaurant-photo-workspace>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid #dce5eb;background:#fff}
.restaurant-photo-workspace header strong,.restaurant-photo-workspace header small{display:block}
.restaurant-photo-workspace header strong{font-size:14px}
.restaurant-photo-workspace header small{margin-top:3px;color:#667985;font-size:11px}
.restaurant-photo-workspace header>b{display:grid;place-items:center;min-width:38px;height:32px;border-radius:9px;background:#e8f1f8;color:#286496;font-size:12px}
.restaurant-photo-workspace-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:12px}
.restaurant-photo-workspace figure{position:relative;overflow:hidden;margin:0;border:1px solid #d3dee5;border-radius:11px;background:#fff}
.restaurant-photo-workspace figure>button:first-child{display:block;width:100%;padding:0;border:0;background:#eef3f6;cursor:pointer}
.restaurant-photo-workspace img{display:block;width:100%;height:118px;object-fit:cover}
.restaurant-photo-remove{position:absolute;right:6px;top:6px;display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:rgba(23,33,43,.86);color:#fff;font-size:18px;cursor:pointer}
.restaurant-photo-workspace figcaption{padding:7px 9px;color:#5f7380;font-size:11px;font-weight:750}
.restaurant-photo-add-more{position:relative;min-height:153px;border:1.5px dashed #8eabc0;border-radius:11px;background:#fff}
.restaurant-photo-add-more>summary{display:grid;place-items:center;align-content:center;gap:7px;height:100%;min-height:151px;padding:14px;color:#286496;text-align:center;list-style:none;cursor:pointer}
.restaurant-photo-add-more>summary::-webkit-details-marker{display:none}
.restaurant-photo-add-more>summary>span{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#e9f2f9;font-size:25px}
.restaurant-photo-add-more summary strong,.restaurant-photo-add-more summary small{display:block}
.restaurant-photo-add-more summary strong{font-size:13px}.restaurant-photo-add-more summary small{margin-top:3px;color:#71828d;font-size:10px}
.restaurant-photo-add-more[open]>summary{display:none}
.restaurant-photo-add-more>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;height:100%;padding:8px}
.restaurant-photo-add-more>div>label{position:relative;display:grid;place-items:center;align-content:center;gap:6px;min-width:0;min-height:133px;border-radius:9px;background:#eef5fa;color:#285f91;text-align:center;cursor:pointer}
.restaurant-photo-add-more label>span{font-size:20px}
.restaurant-photo-add-more label>strong{font-size:11px}
.restaurant-photo-add-more>div>label{overflow:hidden}
.restaurant-photo-add-more input{position:absolute!important;inset:0!important;z-index:2;width:100%!important;height:100%!important;margin:0!important;opacity:.01!important;pointer-events:auto!important;cursor:pointer}
.restaurant-photo-limit{display:grid;place-items:center;align-content:center;gap:5px;min-height:153px;padding:14px;border:1px solid #bcdacb;border-radius:11px;background:#f0faf5;text-align:center}
.restaurant-photo-limit>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#238257;color:#fff;font-weight:900}
.restaurant-photo-limit strong{font-size:12px}.restaurant-photo-limit small{color:#60796c;font-size:10px}
.planning:not(.locked) .planning-fields{display:none}
.agenda-first-planning{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:center;margin:13px 0;padding:12px;border:1px solid #cddde9;border-radius:10px;background:#f2f7fb}
.agenda-first-planning>span{display:grid;place-items:center;width:40px;height:38px;border-radius:9px;background:#fff;color:#286496;font-size:11px;font-weight:900}
.agenda-first-planning strong{font-size:13px}
.agenda-first-planning p{margin:4px 0 0;color:#607684;font-size:12px;line-height:1.4}
.agenda-planning-modal{width:min(760px,calc(100vw - 28px))}
.pending-planning-availability{margin-top:13px;overflow:hidden;border:1px solid #d6e1e8;border-radius:11px;background:#fff}
.pending-planning-availability>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 13px;background:#f2f7fa}
.pending-planning-availability header small,.pending-planning-availability header strong{display:block}
.pending-planning-availability header small{color:#2b689d;font-size:10px;font-weight:850;text-transform:uppercase}
.pending-planning-availability header strong{margin-top:3px;font-size:13px}
.pending-planning-availability header>span{color:#637785;font-size:11px}
.pending-planning-availability>div{display:grid;grid-template-columns:1fr 1fr}
.pending-planning-availability>div>button{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:64px;padding:10px 12px;border:0;border-top:1px solid #e1e7eb;background:#fff;color:#263844;text-align:left;cursor:pointer}
.pending-planning-availability>div>button:nth-child(odd){border-right:1px solid #e1e7eb}
.pending-planning-availability>div>button:hover,.pending-planning-availability>div>button.selected{background:#f1f7fb}
.pending-planning-availability>div>button.selected{box-shadow:inset 3px 0 #28689d}
.pending-planning-availability>div>button.blocked{background:#fff8f8}
.pending-planning-availability button strong,.pending-planning-availability button small{display:block}
.pending-planning-availability button strong{font-size:12px}
.pending-planning-availability button small{margin-top:3px;color:#6b7c87;font-size:11px}
.pending-planning-availability>footer{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:center;padding:9px 12px;border-top:1px solid #e1e7eb;background:#fafbfc}
.pending-planning-availability>footer>span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e8f1f8;color:#286496;font-weight:900}
.pending-planning-availability>footer p{margin:0;color:#637784;font-size:11px}
.pending-planning-availability.compact>div{grid-template-columns:1fr}
.pending-planning-availability.compact>div>button{cursor:default;border-right:0}
.absence-replacement-availability{grid-column:1/-1}
.absence-replacement-availability>p{margin:0;padding:10px 12px;border:1px dashed #c8d6df;border-radius:9px;background:#fff;color:#667985;font-size:11px}
.absence-availability-result{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;padding:10px 12px;border:1px solid #b9dec9;border-radius:9px;background:#f0faf5}
.absence-availability-result.blocked{border-color:#efcaca;background:#fff5f5}
.absence-availability-result>span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#d9f2e5;color:#16764b;font-weight:900}
.absence-availability-result.blocked>span{background:#fde1e1;color:#b52b2b}
.absence-availability-result strong,.absence-availability-result small{display:block}
.absence-availability-result strong{font-size:12px}
.absence-availability-result small{margin-top:3px;color:#667985;font-size:10px}
.travel-gap-warning{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:start;padding:12px 13px;border-top:1px solid #ead8ad;background:#fff9eb}
.travel-gap-warning>span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#f8e6b9;color:#8c5c00;font-weight:900}
.travel-gap-warning strong,.travel-gap-warning p{display:block;margin:0}
.travel-gap-warning strong{color:#5b461b;font-size:12px}
.travel-gap-warning p{margin-top:4px;color:#705f38;font-size:11px;line-height:1.45}
.travel-gap-warning label{display:flex;align-items:center;gap:7px;margin-top:9px;color:#4e421f;font-size:11px;font-weight:750}
.travel-gap-warning input{width:auto;min-height:0;accent-color:#28689d}
.travel-priority-insight{margin-top:10px;padding:9px 10px;border-left:3px solid #c8810c;border-radius:0 8px 8px 0;background:#fff}
.travel-priority-insight b,.travel-priority-insight small{display:block}
.travel-priority-insight b{color:#8b5500;font-size:12px}
.travel-priority-insight small{margin-top:3px;color:#6c6047;font-size:10px}
.travel-resolution-choice{margin:9px 0 0;padding:0;border:0}
.travel-resolution-choice legend{color:#5d4a22;font-size:10px;font-weight:850;text-transform:uppercase}
.travel-resolution-choice label{padding:8px 9px;border:1px solid #ead8ad;border-radius:8px;background:#fff}
.travel-change-time{margin-top:9px;padding:0;border:0;background:transparent;color:#235f94;font-size:11px;font-weight:850;text-decoration:underline;cursor:pointer}
.restaurant-draft-bar{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:12px;padding:10px 11px;border:1px solid #bcdaca;border-radius:10px;background:#f1faf5}
.restaurant-draft-bar[hidden]{display:none}
.restaurant-draft-bar>span{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#d9f1e3;color:#16764b;font-weight:900}
.restaurant-draft-bar strong,.restaurant-draft-bar small{display:block}
.restaurant-draft-bar strong{color:#244436;font-size:12px}
.restaurant-draft-bar small{margin-top:2px;color:#60776c;font-size:10px}
.restaurant-draft-bar button{padding:7px 9px;border:1px solid #c9d9d0;border-radius:8px;background:#fff;color:#425d50;font-size:10px;font-weight:800;cursor:pointer}
@media(max-width:520px){.restaurant-draft-bar{grid-template-columns:34px minmax(0,1fr)}.restaurant-draft-bar>span{width:34px;height:34px}.restaurant-draft-bar button{grid-column:2;justify-self:start}}
.restaurant-menu-modal,.restaurant-help-modal{width:min(440px,calc(100vw - 24px))}
.restaurant-menu-heading,.restaurant-help-heading{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:17px;padding-right:28px}
.restaurant-menu-heading>span,.restaurant-help-heading>span{display:grid;place-items:center;width:44px;height:42px;border-radius:11px;background:#e9f1f8;color:#245f93;font-weight:900}
.restaurant-menu-heading .icon{width:21px;height:21px}
.restaurant-menu-heading small,.restaurant-menu-heading h2,.restaurant-menu-heading p,.restaurant-help-heading small,.restaurant-help-heading h2{display:block;margin:0}
.restaurant-menu-heading small,.restaurant-help-heading small{color:#2a6497;font-size:9px;font-weight:850;text-transform:uppercase}
.restaurant-menu-heading h2,.restaurant-help-heading h2{margin-top:3px;font-size:18px}
.restaurant-menu-heading p{margin-top:3px;color:#70808b;font-size:10px}
.restaurant-menu-options{display:grid;gap:7px}
.restaurant-menu-options>button{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border:1px solid #dbe3e8;border-radius:10px;background:#fff;color:#263946;text-align:left;cursor:pointer}
.restaurant-menu-options>button:hover{border-color:#9bb7cb;background:#f7fafc}
.restaurant-menu-options>button>span{display:grid;place-items:center;width:38px;height:36px;border-radius:9px;background:#edf3f7;color:#315f80;font-size:14px;font-weight:900}
.restaurant-menu-options strong,.restaurant-menu-options small{display:block}
.restaurant-menu-options strong{font-size:12px}.restaurant-menu-options small{margin-top:3px;color:#6d7d87;font-size:10px}
.restaurant-menu-options>button>b{color:#84929a}.restaurant-menu-options>button.logout{color:#9e3036}.restaurant-menu-options>button.logout>span{background:#fff0f0;color:#a43137}
.restaurant-help-steps{display:grid;gap:8px}.restaurant-help-steps>div{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start;padding:11px;border-radius:10px;background:#f4f7f9}.restaurant-help-steps>div>b{display:grid;place-items:center;width:32px;height:30px;border-radius:8px;background:#fff;color:#28689d}.restaurant-help-steps p,.restaurant-help-steps strong,.restaurant-help-steps small{display:block;margin:0}.restaurant-help-steps small{margin-top:3px;color:#697b87;font-size:10px;line-height:1.45}
@media(max-width:820px){
  .restaurant-portal-tabs{display:none}
  .restaurant-mobile-nav{grid-template-columns:repeat(4,minmax(0,1fr))!important;padding:7px 12px calc(7px + env(safe-area-inset-bottom));border-top:1px solid #dce4e9;background:#fff;box-shadow:0 -8px 24px rgba(22,42,57,.09)}
  .restaurant-mobile-nav button{position:relative;min-height:52px;border-radius:10px;color:#647683;font-size:10px}
  .restaurant-mobile-nav button.active{background:#edf4fa;color:#215f96}
  .restaurant-mobile-nav button:first-child.active{background:#225f98;color:#fff}
  .restaurant-sat-mobile-nav{padding-top:10px!important}.restaurant-sat-mobile-nav button.sat{min-height:64px;margin-top:-17px;border:1px solid #e5a9ad!important;border-radius:15px!important;background:#fff5f5!important;color:#b02d34!important;box-shadow:0 7px 18px rgba(160,42,49,.18)}.restaurant-sat-mobile-nav button.sat .icon{width:25px;height:25px;stroke-width:2.2}.restaurant-sat-mobile-nav button.sat span{font-size:10px;font-weight:850}.restaurant-sat-mobile-nav button.sat.active{border-color:#b52b32!important;background:#b52b32!important;color:#fff!important;box-shadow:0 8px 20px rgba(160,42,49,.28)}
  .restaurant-mobile-nav .icon{width:21px;height:21px}
  .restaurant-mobile-nav button>b{position:absolute;top:3px;left:calc(50% + 8px);display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border:2px solid #fff;border-radius:99px;background:#c44a4f;color:#fff;font-size:8px}
  .restaurant-top-brand{display:flex;align-items:center;gap:9px}
  .restaurant-top-brand img{width:32px;height:32px}
  .restaurant-top-brand strong{color:#1b2c39;font-size:16px}
  .topbar:has(.restaurant-top-brand){align-items:center;padding-block:10px}
  .topbar:has(.restaurant-top-brand)>div:first-child>p{display:none}
  .restaurant-menu-button{display:grid}
  body:has(.restaurant-mobile-nav) .content{padding-bottom:24px}
}

@media(max-width:600px){
  body:has(.restaurant-mobile-nav) .topbar:has(.restaurant-top-brand){
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-height:66px;
    padding:10px 14px;
    border-bottom:1px solid #dde5ea;
    background:rgba(255,255,255,.96);
    box-shadow:0 5px 18px rgba(21,42,57,.055);
  }
  body:has(.restaurant-mobile-nav) .topbar:has(.restaurant-top-brand)>div:first-child{
    display:block;
    flex:1 1 auto;
    min-width:0;
  }
  body:has(.restaurant-mobile-nav) .restaurant-top-brand{min-width:0;gap:10px}
  body:has(.restaurant-mobile-nav) .restaurant-top-brand img{
    width:38px;
    height:38px;
    flex:0 0 38px;
    border-radius:10px;
    box-shadow:0 4px 12px rgba(24,51,75,.12);
  }
  body:has(.restaurant-mobile-nav) .restaurant-top-brand span{display:grid;min-width:0;gap:1px}
  body:has(.restaurant-mobile-nav) .restaurant-top-brand strong{font-size:16px;line-height:1.15}
  body:has(.restaurant-mobile-nav) .restaurant-top-brand small{
    overflow:hidden;
    color:#6b7c88;
    font-size:10px;
    font-weight:650;
    line-height:1.3;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body:has(.restaurant-mobile-nav) .topbar:has(.restaurant-top-brand) .top-actions{
    display:flex;
    flex:0 0 auto;
    align-items:center;
    justify-content:flex-end;
    gap:7px;
    width:auto;
  }
  body:has(.restaurant-mobile-nav) .topbar:has(.restaurant-top-brand) .top-actions>.icon-button{
    width:40px;
    height:40px;
    border-color:#d7e0e6;
    border-radius:11px;
    background:#f7f9fa;
    color:#263b4b;
    box-shadow:none;
  }
  body:has(.restaurant-mobile-nav) .topbar:has(.restaurant-top-brand) .restaurant-menu-button{order:1}
  body:has(.restaurant-mobile-nav) .topbar:has(.restaurant-top-brand) .top-actions>button[data-action="notifications"]{order:2}
}

@media(max-width:700px){
  html,body{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none;touch-action:pan-x pan-y}
  button,label,input,select,textarea{touch-action:manipulation}
  .restaurant-portal-head{gap:11px;margin-inline:-2px;padding:16px}
  .restaurant-portal-head>div:first-child>span{font-size:9px}
  .restaurant-portal-head h1{font-size:23px}
  .restaurant-portal-head p{margin-top:4px;font-size:12px}
  .restaurant-portal-head>div:last-child{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:9px 11px}
  .restaurant-portal-head>div:last-child strong{max-width:70%;font-size:13px}
  .restaurant-portal-tabs{position:sticky;top:0;z-index:8;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:5px;border:1px solid var(--line);border-radius:12px;background:rgba(244,246,247,.96);backdrop-filter:blur(10px)}
  .restaurant-portal-tabs>button{display:grid;grid-template-columns:34px minmax(0,1fr);gap:7px;min-height:58px;padding:7px;border-radius:9px;box-shadow:none}
  .restaurant-tab-icon{width:34px;height:34px;flex-basis:34px}
  .restaurant-portal-tabs strong{font-size:12px;white-space:normal}
  .restaurant-portal-tabs small{display:none}
  .restaurant-report-form{gap:14px;padding:13px}
  .restaurant-photo-actions{gap:8px}
  .restaurant-photo-actions .restaurant-camera{min-height:145px;padding:17px}
  .restaurant-camera>span{width:58px;height:54px}
  .restaurant-gallery{min-height:68px;padding:12px}
  .restaurant-gallery>span{width:42px;height:42px;flex-basis:42px}
  .restaurant-gallery small{margin-top:2px}
  .restaurant-service-impact>div{grid-template-columns:1fr;gap:7px}
  .restaurant-service-impact span{min-height:0;padding:12px}
  .restaurant-service-impact strong{font-size:14px}
  .restaurant-service-impact small{font-size:12px}
  .restaurant-photo-workspace-grid{grid-template-columns:1fr 1fr;padding:9px}
  .restaurant-photo-workspace img{height:132px}
  .restaurant-photo-add-more,.restaurant-photo-limit{min-height:168px}
  .restaurant-photo-add-more>summary{min-height:166px}
  .restaurant-photo-add-more>div>label{min-height:148px}
  .restaurant-material-question>div{grid-template-columns:1fr}
  .restaurant-material-question>div span{min-height:0;padding:12px}
  .restaurant-sender-field input,.restaurant-description textarea{border-width:1.5px;border-radius:11px;background:#fff}
  .restaurant-send{position:sticky;bottom:76px;z-index:7;min-height:54px;border:2px solid rgba(255,255,255,.9);box-shadow:0 10px 25px rgba(25,73,133,.3)}
  .restaurant-tracking>div>button{min-height:76px;padding:13px}
  .restaurant-detail-hero,.restaurant-detail-grid>article{padding:14px}
  .pending-planning-availability>div{grid-template-columns:1fr}
  .pending-planning-availability>div>button:nth-child(odd){border-right:0}
  .agenda-planning-modal{width:100%}
}
@media(max-width:380px){
  .content{padding-inline:10px}
  .restaurant-portal-head h1{font-size:21px}
  .restaurant-portal-tabs>button{grid-template-columns:1fr;justify-items:center;text-align:center}
  .restaurant-portal-tabs>button>div{width:100%}
  .restaurant-tab-icon{width:32px;height:32px}
  .restaurant-portal-tabs strong{font-size:11px}
  .photo-preview-grid{grid-template-columns:1fr 1fr}
  .restaurant-photo-workspace img{height:116px}
  .restaurant-photo-add-more,.restaurant-photo-limit{min-height:152px}
  .restaurant-photo-add-more>summary{min-height:150px}
  .restaurant-photo-add-more>div>label{min-height:132px}
}
.planning-hour-field{display:grid;align-content:start;gap:8px;min-width:0}
.planning-hour-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:22px}
.planning-hour-heading>strong{color:#1b2732;font-size:13px}
.planning-time-range{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:0}
.planning-time-range label{display:grid;gap:4px;min-width:0;color:#71818c;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.planning-time-range select{width:100%;min-width:0;text-transform:none;letter-spacing:normal}
.planning-all-day-option{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:0;
  padding:4px 8px;
  border:1px solid #d7e0e8;
  border-radius:999px;
  background:#f7f9fb;
  color:#536673;
  font-size:10px;
  font-weight:800;
  line-height:1;
  cursor:pointer;
  white-space:nowrap;
  transition:border-color .18s ease,background .18s ease,color .18s ease;
}
.planning-all-day-option:hover{border-color:#9fb6cf;background:#fff}
.planning-all-day-option:has(input:checked){border-color:#2b64ad;background:#eaf3fd;color:#215b91}
.planning-all-day-option input{width:14px;height:14px;margin:0;accent-color:#2b64ad}
.planning-hour-muted .planning-hour-heading>strong{color:#657783}
.planning-time-locked{pointer-events:none;background:#eef1f4!important;color:#65717d!important}
@media(max-width:640px){
  .planning-all-day-option{padding:5px 8px;font-size:10px}
  .planning-time-range{grid-template-columns:1fr 1fr}
}
.planning-calendar-shortcut{display:flex;justify-content:flex-end;margin:-2px 0 12px}
.planning-calendar-shortcut>button{
  display:inline-grid;
  grid-template-columns:18px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  min-height:38px;
  padding:7px 11px;
  border:1px solid #d8e2e8;
  border-radius:9px;
  background:#eef4f8;
  color:#275f8e;
  text-align:left;
  cursor:pointer;
}
.planning-calendar-shortcut .icon{width:16px;height:16px}
.planning-calendar-shortcut strong{font-size:10px}
.planning-calendar-shortcut b{color:#648096;font-size:12px}
.planning-calendar-shortcut>button:hover{border-color:#9ab3c5;background:#e6f0f6}
@media(max-width:700px){
  .planning-calendar-shortcut{justify-content:stretch}
  .planning-calendar-shortcut>button{width:100%}
}
.phone-portrait-lock{display:none}
@media (orientation:landscape) and (max-height:600px) and (pointer:coarse){
  .phone-portrait-lock{
    position:fixed;
    inset:0;
    z-index:10000;
    display:grid;
    place-content:center;
    justify-items:center;
    gap:9px;
    padding:28px;
    background:#f7f9fb;
    color:#172633;
    text-align:center;
  }
  .phone-portrait-lock>div{position:relative;display:grid;place-items:center;width:74px;height:74px;margin-bottom:5px}
  .phone-portrait-lock img{width:58px;height:58px;border-radius:15px;box-shadow:0 10px 30px rgba(23,49,73,.18)}
  .phone-portrait-lock span{position:absolute;right:-3px;bottom:-2px;display:grid;place-items:center;width:29px;height:29px;border:3px solid #f7f9fb;border-radius:999px;background:#2866a3;color:#fff;font-size:17px;font-weight:900}
  .phone-portrait-lock strong{font-size:20px;letter-spacing:-.02em}
  .phone-portrait-lock p{margin:0;color:#687b89;font-size:13px}
  body>.layout,body>#app,body>.mobile-nav,body>.mobile-new{visibility:hidden!important}
}

/* Override final del acceso a la agenda real */
.planning-calendar-shortcut{margin:2px 0 14px}
.planning-calendar-shortcut>button{
  width:100%;
  min-height:52px;
  justify-content:flex-start;
  gap:11px;
  padding:11px 14px;
  border:1px solid #c9d8e3;
  border-radius:11px;
  background:#f3f7fa;
  color:#1f5e91;
  box-shadow:none;
}
.planning-calendar-shortcut>button:hover{border-color:#8fadc2;background:#eaf2f7}
.planning-calendar-shortcut .icon{width:19px;height:19px}
.planning-calendar-shortcut strong{font-size:11px;letter-spacing:0}
.planning-calendar-shortcut b{margin-left:auto;font-size:17px}

.real-planning-active .agenda-control-actions,
.real-planning-active .agenda-sync-queue,
.real-planning-active .agenda-sync-status,
.real-planning-active .agenda-add-slot,
.real-planning-active .mobile-agenda-list header>[data-action="open-agenda-add"]{display:none!important}
.planning-live-controls{
  grid-template-columns:minmax(175px,1fr) minmax(150px,.8fr) minmax(250px,1.45fr);
  align-items:end;
}
.planning-live-schedule{display:grid;gap:6px;min-width:0}
.planning-live-schedule>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#536572;font-size:8px;font-weight:850}
.planning-live-schedule>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.planning-live-schedule>div:last-child>label{display:grid;gap:5px;color:#536572;font-size:8px;font-weight:850}
.planning-live-schedule select{width:100%;min-height:42px;border:1px solid #cfdce5;border-radius:9px;background:#fff;color:#1f2d38;font-size:10px;font-weight:750}
.planning-live-schedule select:disabled{background:#edf1f4;color:#85939c}
.planning-live-all-day{
  display:flex;
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#245f91;
  font-size:8px;
}
.planning-live-all-day input{width:14px;height:14px}
.planning-live-reason{
  display:grid;
  grid-template-columns:minmax(190px,.7fr) minmax(280px,1.3fr);
  gap:11px;
  padding:0 18px 12px;
}
.planning-live-reason label{display:grid;gap:5px;color:#536572;font-size:8px;font-weight:850}
.planning-live-reason select,.planning-live-reason input{width:100%;min-height:40px;border:1px solid #cfdce5;border-radius:9px;background:#fff;color:#1f2d38;font-size:10px}
.planning-live-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 18px 14px}
.planning-live-footer p{margin:0;color:#71828e;font-size:8px}
.planning-live-footer>.primary{min-width:190px;min-height:42px}

@media(max-width:1050px){
  .planning-live-controls{grid-template-columns:1fr 1fr}
  .planning-live-schedule{grid-column:1/-1}
}
@media(max-width:700px){
  .planning-live-controls{grid-template-columns:1fr}
  .planning-live-controls>label:first-child,.planning-live-controls>label:nth-child(2),.planning-live-schedule{grid-column:1}
  .planning-live-reason{grid-template-columns:1fr;padding:0 14px 12px}
  .planning-live-footer{align-items:stretch;flex-direction:column;padding:0 14px 14px}
  .planning-live-footer>.primary{width:100%;min-width:0;order:-1}
}

/* Reprogramación: una sola decisión y disponibilidad de la persona elegida */
.agenda-planning-modal{width:min(700px,calc(100vw - 28px))}
.planning-hour-field>.planning-all-day-option{
  justify-content:flex-start;
  width:100%;
  min-height:38px;
  padding:8px 10px;
  border-radius:8px;
  background:#f4f7f9;
  color:#405766;
}
.planning-hour-field>.planning-all-day-option:has(input:checked){background:#eaf3fd}
.pending-planning-availability.selected-only{overflow:visible;border:0;background:transparent}
.pending-planning-availability.selected-only>.selected-availability{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:10px;
  align-items:center;
  min-height:64px;
  padding:11px 13px;
  border:1px solid #cfe1d7;
  border-radius:10px;
  background:#f4faf7;
}
.pending-planning-availability.selected-only>.selected-availability.blocked{border-color:#edcdcf;background:#fff7f7}
.selected-availability>span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#dff1e7;color:#177147;font-size:15px;font-weight:900}
.selected-availability.blocked>span{background:#f8dddd;color:#b5222d}
.selected-availability small,.selected-availability strong,.selected-availability p{display:block}
.selected-availability small{color:#617784;font-size:8px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}
.selected-availability strong{margin-top:2px;color:#1d2e3a;font-size:11px}
.selected-availability p{margin:2px 0 0;color:#687b87;font-size:9px}
.selected-availability-note{margin:7px 0 0;padding:8px 10px;border-radius:8px;background:#edf4fa;color:#476273;font-size:9px}

@media(max-width:640px){
  .agenda-planning-modal{width:100%}
  .pending-planning-availability.selected-only>.selected-availability{grid-template-columns:32px minmax(0,1fr)}
}

/* Cabecera móvil: el selector de restaurante ocupa toda la fila y nunca recorta el nombre. */
@media(max-width:600px){
  .top-actions:has(.agenda-notice-top){
    grid-template-columns:minmax(0,1fr) repeat(3,38px);
    justify-content:stretch;
  }
  .top-actions:has(.agenda-notice-top) .restaurant-filter{
    grid-column:1/-1;
    justify-self:stretch;
    width:100%;
  }
  .top-actions:has(.agenda-notice-top) .agenda-notice-top{grid-column:2}
  .top-actions:has(.agenda-notice-top) .assistant-top-button{grid-column:3}
  .top-actions:has(.agenda-notice-top)>button[data-action="notifications"]{grid-column:4}
}

/* Flujo único de programación: la ficha y la agenda no repiten cabeceras ni filtros. */
.real-planning-active .agenda-professional-head,
.real-planning-active .agenda-control-surface,
.real-planning-active .agenda-sync-queue,
.real-planning-active .agenda-sync-status,
.real-planning-active .agenda-block-strip{
  display:none!important;
}
.real-planning-active .planning-live-banner{
  margin-bottom:12px;
  border-color:#c8d7e1;
  border-radius:12px;
  box-shadow:0 8px 24px rgba(24,47,65,.07);
}
.real-planning-active .planning-live-banner>header{
  min-height:76px;
  padding:14px 16px;
  background:#f4f8fb;
}
.real-planning-active .planning-live-banner>header small{
  display:none;
}
.real-planning-active .planning-live-banner>header div::before{
  display:block;
  margin-bottom:4px;
  color:#28689a;
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.real-planning-active .planning-live-banner[data-kind="reprogram"]>header div::before{content:"Reprogramar visita"}
.real-planning-active .planning-live-banner[data-kind="pending"]>header div::before{content:"Programar incidencia"}
.real-planning-active .planning-live-banner[data-kind="operational"]>header div::before{content:"Programar trabajo"}
.real-planning-active .planning-live-banner[data-kind="remainder"]>header div::before{content:"Programar tarea pendiente"}
.real-planning-active .planning-live-banner[data-kind="change"]>header div::before{content:"Solicitar cambio"}
.real-planning-active .planning-live-banner>header h2{
  font-size:18px;
}
.real-planning-active .planning-live-banner>header p{
  margin-top:3px;
  font-size:10px;
}
.real-planning-active .planning-live-close{
  width:34px;
  height:34px;
  flex-basis:34px;
  border-color:#cedbe4;
  color:#536b7c;
}
.real-planning-active .planning-live-controls{
  grid-template-columns:minmax(210px,1.15fr) minmax(165px,.8fr) minmax(330px,1.55fr);
  gap:12px;
  padding:14px 16px 10px;
}
.real-planning-active .planning-live-controls>label:not(.planning-live-all-day),
.real-planning-active .planning-live-schedule>div:last-child>label,
.real-planning-active .planning-live-reason label{
  gap:6px;
  color:#405867;
  font-size:10px;
}
.real-planning-active .planning-live-controls select,
.real-planning-active .planning-live-controls input[type="date"],
.real-planning-active .planning-live-schedule select,
.real-planning-active .planning-live-reason select,
.real-planning-active .planning-live-reason input{
  min-height:44px;
  border-color:#ccd9e2;
  border-radius:9px;
  font-size:11px;
}
.real-planning-active .planning-live-schedule{
  gap:6px;
}
.real-planning-active .planning-live-schedule>div:first-child{
  min-height:16px;
  color:#405867;
  font-size:10px;
}
.real-planning-active .planning-live-all-day{
  gap:7px;
  color:#315e7e;
  font-size:9px;
}
.real-planning-active .planning-live-reason{
  grid-template-columns:minmax(220px,.75fr) minmax(360px,1.4fr);
  gap:12px;
  padding:0 16px 12px;
}
.real-planning-active .planning-live-footer{
  min-height:58px;
  padding:10px 16px;
  border-top:1px solid #e1e8ed;
  background:#fbfcfd;
}
.real-planning-active .planning-live-footer p{
  max-width:600px;
  color:#607582;
  font-size:10px;
  line-height:1.4;
}
.real-planning-active .planning-live-footer>.primary{
  min-width:210px;
  min-height:42px;
  padding-inline:18px;
  font-size:11px;
}
.real-planning-active .professional-week-agenda,
.real-planning-active .mobile-agenda-list{
  margin-top:0;
}

@media(max-width:960px){
  .real-planning-active .planning-live-controls{
    grid-template-columns:1fr 1fr;
  }
  .real-planning-active .planning-live-schedule{
    grid-column:1/-1;
  }
}

/* Unified operational decisions */
.decision-inbox-top.attention{
  border-color:#e2b45e;
  background:#fff7e7;
  color:#8a5a10;
}
.decision-inbox-top>span{font-size:15px;font-weight:900}
.decision-inbox-modal{width:min(760px,calc(100vw - 24px))}
.decision-inbox-heading{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto;
  gap:13px;
  align-items:center;
  margin-bottom:15px;
  padding-right:30px;
}
.decision-inbox-heading>span{
  display:grid;
  place-items:center;
  width:52px;
  height:48px;
  border-radius:12px;
  background:#17384f;
  color:#fff;
  font-size:20px;
  font-weight:900;
}
.decision-inbox-heading small{
  color:#28689c;
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.decision-inbox-heading h2{margin:3px 0;font-size:21px}
.decision-inbox-heading p{margin:0;color:#687b88;font-size:13px}
.decision-inbox-heading>b{
  display:grid;
  place-items:center;
  min-width:38px;
  height:38px;
  padding:0 8px;
  border-radius:10px;
  background:#fff0d5;
  color:#946117;
  font-size:15px;
}
.decision-inbox-list{
  max-height:520px;
  overflow:auto;
  border:1px solid #dce4e9;
  border-radius:12px;
}
.decision-inbox-list>article{
  display:grid;
  grid-template-columns:5px minmax(0,1fr) auto auto;
  gap:11px;
  align-items:center;
  padding:13px 14px;
  border-bottom:1px solid #e1e7eb;
  background:#fff;
}
.decision-inbox-list>article:last-child{border-bottom:0}
.decision-inbox-list>article>span{
  width:5px;
  height:38px;
  border-radius:99px;
  background:#71838f;
}
.decision-inbox-list>article.red>span{background:#bd343c}
.decision-inbox-list>article.amber>span{background:#d69b2c}
.decision-inbox-list>article.green>span{background:#1d8a58}
.decision-inbox-list strong,
.decision-inbox-list small{display:block}
.decision-inbox-list strong{font-size:14px}
.decision-inbox-list small{margin-top:4px;color:#697c88;font-size:12px}
.decision-inbox-list>article>b{
  display:grid;
  place-items:center;
  min-width:28px;
  height:28px;
  border-radius:8px;
  background:#eef3f6;
  font-size:12px;
}
.decision-inbox-list>article>button{
  min-height:38px;
  padding:8px 11px;
  border:1px solid #cddbe4;
  border-radius:8px;
  background:#f5f9fb;
  color:#225f91;
  font-size:13px;
  font-weight:850;
  cursor:pointer;
}
.operational-decision-strip{
  display:grid;
  grid-template-columns:minmax(210px,.8fr) minmax(300px,1.7fr) auto;
  gap:16px;
  align-items:center;
  margin-bottom:14px;
  padding:14px 16px;
}
.operational-decision-strip.attention{border-color:#e6c582;background:#fffbf3}
.operational-decision-strip>div:first-child span,
.operational-decision-strip>div:first-child strong,
.operational-decision-strip>div:first-child small{display:block}
.operational-decision-strip>div:first-child span{
  color:#647986;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.operational-decision-strip>div:first-child strong{margin-top:3px;font-size:15px}
.operational-decision-strip>div:first-child small{margin-top:3px;color:#6b7c87;font-size:12px}
.operational-decision-strip>div:nth-child(2){
  display:flex;
  gap:6px;
  min-width:0;
  overflow:auto;
}
.operational-decision-strip>div:nth-child(2)>button{
  display:grid;
  grid-template-columns:5px minmax(135px,1fr) auto;
  gap:7px;
  align-items:center;
  min-width:190px;
  padding:8px 9px;
  border:1px solid #e0e6e9;
  border-radius:8px;
  background:#fff;
  color:#263946;
  text-align:left;
  cursor:pointer;
}
.operational-decision-strip>div:nth-child(2)>button>span{
  width:5px;
  height:24px;
  border-radius:99px;
  background:#71838f;
}
.operational-decision-strip>div:nth-child(2)>button>span.red{background:#bd343c}
.operational-decision-strip>div:nth-child(2)>button>span.amber{background:#d69b2c}
.operational-decision-strip>div:nth-child(2)>button>span.green{background:#1d8a58}
.operational-decision-strip>div:nth-child(2)>button strong{
  overflow:hidden;
  font-size:12px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.operational-decision-strip>button{
  min-height:40px;
  padding:8px 12px;
  border:1px solid #bdd1df;
  border-radius:9px;
  background:#edf5fa;
  color:#225f91;
  font-size:12px;
  font-weight:850;
  cursor:pointer;
}
.operational-decision-alert{
  display:grid;
  grid-template-columns:40px minmax(0,1fr) auto 18px;
  gap:12px;
  align-items:center;
  width:100%;
  margin:0 0 14px;
  padding:11px 14px;
  border:1px solid #e4c98e;
  border-radius:11px;
  background:#fffaf0;
  color:#243744;
  text-align:left;
  cursor:pointer;
}
.operational-decision-alert:hover{border-color:#d6ad57;background:#fff7e6}
.operational-decision-alert .decision-alert-symbol{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:10px;
  background:#fff0d3;
  color:#8d5b0d;
  font-size:17px;
  font-weight:900;
}
.operational-decision-alert>span:nth-child(2) small,
.operational-decision-alert>span:nth-child(2) strong,
.operational-decision-alert>span:nth-child(2) em{display:block}
.operational-decision-alert>span:nth-child(2) small{
  color:#8d5b0d;
  font-size:10px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.operational-decision-alert>span:nth-child(2) strong{margin-top:2px;font-size:14px}
.operational-decision-alert>span:nth-child(2) em{
  overflow:hidden;
  margin-top:2px;
  color:#6b7c87;
  font-size:12px;
  font-style:normal;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.operational-decision-alert>b{
  padding:7px 10px;
  border-radius:8px;
  background:#fff;
  color:#285f8d;
  font-size:12px;
}
.operational-decision-alert>i{color:#285f8d;font-size:17px;font-style:normal}
.schedule-decision-modal{width:min(660px,calc(100vw - 24px))}
.schedule-decision-heading{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:12px;
  align-items:center;
  margin-bottom:14px;
  padding-right:30px;
}
.schedule-decision-heading>span{
  display:grid;
  place-items:center;
  width:48px;
  height:44px;
  border-radius:11px;
  background:#17384f;
  color:#fff;
  font-size:19px;
}
.schedule-decision-heading small{color:#28689c;font-size:11px;font-weight:900;text-transform:uppercase}
.schedule-decision-heading h2{margin:3px 0;font-size:19px}
.schedule-decision-heading p{margin:0;color:#697c88;font-size:13px}
.missed-decision-modal{width:min(690px,calc(100vw - 24px))}
.missed-decision-heading{
  display:grid;
  grid-template-columns:50px minmax(0,1fr);
  gap:14px;
  align-items:center;
  margin-bottom:18px;
  padding-right:34px;
}
.missed-decision-heading>span{
  display:grid;
  place-items:center;
  width:50px;
  height:48px;
  border-radius:12px;
  background:#fff0e7;
  color:#a84826;
  font-size:21px;
  font-weight:900;
}
.missed-decision-heading small{
  color:#a84826;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.missed-decision-heading h2{margin:3px 0;font-size:21px}
.missed-decision-heading p{margin:0;color:#687b88;font-size:13px}
.missed-decision-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  overflow:hidden;
  margin-bottom:16px;
  border:1px solid #dce4e9;
  border-radius:12px;
  background:#dce4e9;
}
.missed-decision-summary>div{padding:14px;background:#fff}
.missed-decision-summary span,
.missed-decision-summary strong{display:block}
.missed-decision-summary span{color:#6b7c87;font-size:11px}
.missed-decision-summary strong{margin-top:5px;font-size:14px}
.missed-decision-question{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:start;
  padding:14px;
  border:1px solid #d8e3ea;
  border-radius:12px;
  background:#f6f9fb;
}
.missed-decision-question>span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:#17384f;
  color:#fff;
  font-weight:900;
}
.missed-decision-question strong{font-size:14px}
.missed-decision-question p{margin:4px 0 0;color:#667985;font-size:12px;line-height:1.45}
.missed-decision-actions{margin-top:18px}
@media(max-width:820px){
  .operational-decision-strip{
    grid-template-columns:1fr auto;
  }
  .operational-decision-strip>div:nth-child(2){
    grid-column:1/-1;
    grid-row:2;
  }
}
@media(max-width:600px){
  .decision-inbox-heading{
    grid-template-columns:44px minmax(0,1fr);
  }
  .decision-inbox-heading>span{width:44px;height:42px}
  .decision-inbox-heading>b{grid-column:2;justify-self:start}
  .decision-inbox-list>article{
    grid-template-columns:5px minmax(0,1fr) auto;
  }
  .decision-inbox-list>article>button{
    grid-column:2/-1;
    width:100%;
    min-height:46px;
  }
  .operational-decision-strip{grid-template-columns:1fr}
  .operational-decision-strip>button{width:100%;min-height:46px}
  .operational-decision-strip>div:nth-child(2){
    grid-column:1;
    grid-row:auto;
  }
  .missed-decision-summary{grid-template-columns:1fr}
  .missed-decision-actions{display:grid;grid-template-columns:1fr}
  .missed-decision-actions button{width:100%;min-height:48px}
  .operational-decision-alert{
    grid-template-columns:38px minmax(0,1fr) 16px;
    gap:10px;
    padding:10px 11px;
  }
  .operational-decision-alert .decision-alert-symbol{width:38px;height:38px}
  .operational-decision-alert>b{display:none}
  .operational-decision-alert>span:nth-child(2) em{font-size:11px}
}

/* Trabajo nuevo: la agenda es el selector de persona, día y horario */
.operational-agenda-selector-modal{
  width:min(940px,calc(100vw - 34px));
  padding:28px 30px 0;
}
.operational-agenda-head{
  display:grid;
  grid-template-columns:54px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding:0 38px 20px 0;
  border-bottom:1px solid #dce5eb;
}
.operational-agenda-head>span{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border-radius:14px;
  background:#183b54;
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.operational-agenda-head small,
.operational-day-availability header small{
  display:block;
  color:#276594;
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.operational-agenda-head h2{
  margin:4px 0 0;
  color:#172b3a;
  font-size:24px;
}
.operational-agenda-head p{
  margin:4px 0 0;
  color:#687c89;
  font-size:12px;
}
.operational-agenda-head>.primary{
  min-height:44px;
  padding-inline:16px;
  white-space:nowrap;
}
.operational-work-definition{
  padding:18px 0 4px;
}
.operational-work-definition>label{
  display:block;
  max-width:100%;
}
.operational-work-definition>label>select{margin-top:6px}
.operational-new-work{margin-bottom:16px}
.operational-work-copy{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:12px;
}
.operational-work-copy textarea{
  min-height:54px;
  resize:vertical;
}
.operational-day-availability{
  overflow:hidden;
  border:1px solid #d9e4eb;
  border-radius:15px;
  background:#fff;
}
.operational-day-availability>header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  padding:14px 16px;
  border-bottom:1px solid #dfe7ec;
  background:#f1f6f9;
}
.operational-day-availability h3{
  margin:4px 0 0;
  color:#172b3a;
  font-size:17px;
}
.operational-day-availability header p{
  max-width:440px;
  margin:0;
  color:#657a88;
  font-size:10px;
  line-height:1.4;
  text-align:right;
}
.operational-day-availability>[data-operational-day-team]{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.operational-day-availability [data-operational-day-team]>button{
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-width:0;
  min-height:106px;
  padding:14px;
  border:0;
  border-right:1px solid #e1e8ed;
  background:#fff;
  color:#1b2d39;
  text-align:left;
}
.operational-day-availability [data-operational-day-team]>button:last-child{border-right:0}
.operational-day-availability [data-operational-day-team]>button:hover:not(:disabled){background:#f3f8fc}
.operational-day-availability [data-operational-day-team]>button.partial{background:#fffbf3}
.operational-day-availability [data-operational-day-team]>button.blocked{background:#fff8f8}
.operational-day-availability [data-operational-day-team]>button:disabled{cursor:not-allowed;opacity:.7}
.operational-day-availability .profile-avatar{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:11px;
  background:#263f51;
  color:#fff;
  font-size:10px;
  font-weight:900;
}
.operational-day-availability button>div{min-width:0}
.operational-day-availability button strong,
.operational-day-availability button small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.operational-day-availability button strong{font-size:13px}
.operational-day-availability button small{margin-top:4px;color:#6b7f8c;font-size:10px}
.operational-day-availability button>.badge{grid-column:2;justify-self:start}
.operational-day-availability button>b{
  grid-column:2;
  color:#22679a;
  font-size:10px;
}
.operational-planning-hidden{display:none!important}
.operational-agenda-actions{
  position:sticky;
  bottom:0;
  z-index:4;
  justify-content:flex-start;
  margin:16px -30px 0;
  padding:14px 30px 17px;
  border-top:1px solid #dce4e9;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(8px);
}
.operational-agenda-actions p{
  margin:0 0 0 auto;
  color:#647987;
  font-size:10px;
}
@media(max-width:760px){
  .operational-agenda-selector-modal{
    width:calc(100vw - 16px);
    padding:20px 16px 0;
  }
  .operational-agenda-head{
    grid-template-columns:44px minmax(0,1fr);
    padding:0 34px 16px 0;
  }
  .operational-agenda-head>span{width:44px;height:44px}
  .operational-agenda-head h2{font-size:19px}
  .operational-agenda-head>.primary{grid-column:1/3;width:100%}
  .operational-work-copy{grid-template-columns:1fr}
  .operational-day-availability>header{display:block}
  .operational-day-availability header p{max-width:none;margin-top:6px;text-align:left}
  .operational-day-availability>[data-operational-day-team]{grid-template-columns:1fr}
  .operational-day-availability [data-operational-day-team]>button{
    min-height:82px;
    border-right:0;
    border-bottom:1px solid #e1e8ed;
  }
  .operational-agenda-actions{
    margin-inline:-16px;
    padding:12px 16px 14px;
  }
  .operational-agenda-actions p{display:none}
}

/* Selector de agenda para incidencias pendientes */
.pending-agenda-selector-modal{
  width:min(840px,calc(100vw - 34px));
  padding:28px 30px 0;
}
.pending-agenda-head{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding:0 38px 20px 0;
  border-bottom:1px solid #dce5eb;
}
.pending-agenda-head>span{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  border-radius:14px;
  background:#e9f2f9;
  color:#1e659b;
}
.pending-agenda-head>span .icon{width:23px;height:23px}
.pending-agenda-head small,
.pending-day-availability header small{
  display:block;
  margin-bottom:3px;
  color:#276594;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.pending-agenda-head h2{
  margin:0;
  color:#172b3a;
  font-size:24px;
  line-height:1.15;
}
.pending-agenda-head p{
  margin:5px 0 0;
  color:#667b89;
  font-size:13px;
}
.pending-agenda-head>.primary{
  min-height:44px;
  padding:0 16px;
  white-space:nowrap;
}
.pending-agenda-summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) 210px;
  gap:16px;
  margin:18px 0;
  padding:15px 17px;
  border:1px solid #dbe5eb;
  border-radius:14px;
  background:#f6f9fb;
}
.pending-agenda-summary>div>span,
.pending-agenda-summary label{
  display:block;
  color:#617583;
  font-size:11px;
  font-weight:800;
}
.pending-agenda-summary p{
  margin:5px 0 0;
  color:#1d303d;
  font-size:14px;
  font-weight:700;
}
.pending-agenda-summary input{
  min-height:42px;
  margin-top:6px;
  background:#fff;
}
.pending-day-availability{
  overflow:hidden;
  border:1px solid #d9e4eb;
  border-radius:16px;
  background:#fff;
}
.pending-day-availability>header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding:16px 18px;
  border-bottom:1px solid #dfe7ec;
  background:#f1f6f9;
}
.pending-day-availability h3{
  margin:0;
  color:#172b3a;
  font-size:17px;
}
.pending-day-availability>header>span{
  max-width:290px;
  color:#667b89;
  font-size:11px;
  text-align:right;
}
.pending-day-availability>[data-pending-day-team]{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.pending-day-availability [data-pending-day-team]>button{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:11px;
  min-width:0;
  min-height:82px;
  padding:14px 16px;
  border:0;
  border-right:1px solid #e1e8ed;
  border-bottom:1px solid #e1e8ed;
  border-radius:0;
  background:#fff;
  color:#1b2d39;
  text-align:left;
}
.pending-day-availability [data-pending-day-team]>button:nth-child(even){border-right:0}
.pending-day-availability [data-pending-day-team]>button:hover:not(:disabled){background:#f3f8fc}
.pending-day-availability [data-pending-day-team]>button.blocked{background:#fff8f8}
.pending-day-availability [data-pending-day-team]>button.partial{background:#fffbf3}
.pending-day-availability [data-pending-day-team]>button:disabled{cursor:not-allowed;opacity:.72}
.pending-day-availability .profile-avatar{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:12px;
  background:#243d50;
  color:#fff;
  font-size:11px;
  font-weight:900;
}
.pending-day-availability button>div{min-width:0}
.pending-day-availability button strong,
.pending-day-availability button small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.pending-day-availability button strong{font-size:14px}
.pending-day-availability button small{
  margin-top:4px;
  color:#687d8b;
  font-size:11px;
}
.pending-day-availability button>b{
  grid-column:2/4;
  color:#23679a;
  font-size:11px;
}
.pending-agenda-help{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:14px 0 2px;
  color:#5d7381;
}
.pending-agenda-help>span{
  display:grid;
  flex:0 0 22px;
  place-items:center;
  width:22px;
  height:22px;
  border-radius:50%;
  background:#e6f0f7;
  color:#276594;
  font-size:11px;
  font-weight:900;
}
.pending-agenda-help p{margin:2px 0 0;font-size:11px;line-height:1.45}
.pending-agenda-hidden{display:none!important}
.pending-agenda-actions{
  position:sticky;
  bottom:0;
  z-index:4;
  margin:14px -30px 0;
  padding:14px 30px 17px;
  border-top:1px solid #dce4e9;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(8px);
}
@media(max-width:700px){
  .pending-agenda-selector-modal{
    width:calc(100vw - 16px);
    padding:20px 16px 0;
  }
  .pending-agenda-head{
    grid-template-columns:44px minmax(0,1fr);
    padding:0 34px 16px 0;
  }
  .pending-agenda-head>span{width:44px;height:44px}
  .pending-agenda-head h2{font-size:19px}
  .pending-agenda-head>.primary{
    grid-column:1/3;
    width:100%;
  }
  .pending-agenda-summary{grid-template-columns:1fr}
  .pending-day-availability>header{display:block}
  .pending-day-availability>header>span{
    display:block;
    max-width:none;
    margin-top:5px;
    text-align:left;
  }
  .pending-day-availability>[data-pending-day-team]{grid-template-columns:1fr}
  .pending-day-availability [data-pending-day-team]>button{border-right:0}
  .pending-agenda-actions{
    margin-inline:-16px;
    padding:12px 16px 14px;
  }
}

/* Reprogramación rápida por arrastre (solo PC y tablet; nunca teléfono). */
@media(min-width:541px){
  body.agenda-pointer-dragging{
    cursor:grabbing;
    user-select:none;
  }
  .agenda-task-card[draggable="true"]{cursor:grab}
  .agenda-task-card[draggable="true"]:active{cursor:grabbing}
  .agenda-task-card.agenda-draggable{
    position:relative;
    padding-right:25px;
  }
  .agenda-drag-handle{
    position:absolute;
    top:7px;
    right:6px;
    display:grid;
    place-items:center;
    width:18px;
    height:22px;
    border-radius:5px;
    background:#edf2f5;
    color:#506b7c;
    font-size:13px;
    line-height:1;
    pointer-events:none;
  }
  .agenda-task-card.agenda-draggable:hover .agenda-drag-handle{
    background:#dfeaf1;
    color:#245f91;
  }
  @media (pointer:coarse){
    .agenda-task-card[draggable="true"]{touch-action:none}
  }
  .agenda-task-card.agenda-dragging{
    opacity:.45;
    transform:scale(.98);
  }
  .agenda-day-cell[data-agenda-drop-date]{
    transition:background .15s ease,box-shadow .15s ease;
  }
  .agenda-day-cell.agenda-drop-target{
    background:#eaf4fb;
    box-shadow:inset 0 0 0 2px #2c6aa2;
  }
  .agenda-day-cell.agenda-drop-target::after{
    content:"Soltar para revisar";
    display:block;
    margin:5px;
    padding:6px 7px;
    border:1px dashed #77a3c3;
    border-radius:7px;
    color:#245f91;
    font-size:9px;
    font-weight:850;
    text-align:center;
  }
}
.agenda-drop-modal{width:min(650px,calc(100vw - 28px))}
.agenda-drop-heading{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:15px;padding-right:28px}
.agenda-drop-heading>span{display:grid;place-items:center;width:48px;height:44px;border-radius:11px;background:#17364c;color:#fff;font-size:20px;font-weight:900}
.agenda-drop-heading small{color:#2c689d;font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.agenda-drop-heading h2{margin:3px 0 0;font-size:20px}
.agenda-drop-heading p{margin:3px 0 0;color:#6c7e89;font-size:10px}
.agenda-drop-comparison{display:grid;grid-template-columns:1fr 36px 1fr;gap:10px;align-items:center;padding:13px;border:1px solid #dbe4e9;border-radius:11px;background:#f7f9fa}
.agenda-drop-comparison>div{display:grid;gap:3px}
.agenda-drop-comparison span,.agenda-drop-context>span{color:#6b7d88;font-size:8px;font-weight:850;text-transform:uppercase}
.agenda-drop-comparison strong{font-size:12px}
.agenda-drop-comparison small{color:#607480;font-size:9px}
.agenda-drop-comparison>b{color:#7d909c;font-size:20px;text-align:center}
.agenda-drop-context{display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 10px;align-items:center;margin-top:10px;padding:11px 12px;border:1px solid #dce5ea;border-radius:10px}
.agenda-drop-context>span{grid-row:1/3}
.agenda-drop-context strong{font-size:11px}
.agenda-drop-context small{color:#70818b;font-size:9px}
.agenda-drop-warning{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;margin-top:10px;padding:11px 12px;border:1px solid #ecd49f;border-radius:10px;background:#fff9ec}
.agenda-drop-warning>span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#f5d991;color:#7b5200;font-weight:950}
.agenda-drop-warning strong,.agenda-drop-warning p{display:block}
.agenda-drop-warning strong{font-size:10px}
.agenda-drop-warning p{margin:3px 0 0;color:#6e6250;font-size:9px;line-height:1.4}
.agenda-drop-warning.safe{border-color:#cce3d6;background:#f3faf6}
.agenda-drop-warning.safe>span{background:#d9efe2;color:#147246}
.agenda-drop-warning.blocked{border-color:#edc9cc;background:#fff5f5}
.agenda-drop-warning.blocked>span{background:#f4d7da;color:#a9222b}
.agenda-drop-audit{margin:10px 0 0;color:#6f808a;font-size:9px}
.agenda-drop-actions{margin-top:15px}
.agenda-task-card.joint-team-card{
  border-color:#334754;
  border-left-color:#172630;
  background:#f7f9fa;
}
.agenda-task-card.joint-team-card:hover{
  border-color:#172630;
}
.agenda-task-card.joint-team-card .agenda-support-label{
  display:none;
}
.agenda-team-marker{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  margin-top:4px;
  padding:5px 7px;
  border-radius:6px;
  background:#182832;
  color:#fff;
  line-height:1;
}
.agenda-team-marker b{
  display:grid;
  flex:0 0 auto;
  place-items:center;
  min-width:22px;
  height:19px;
  padding:0 4px;
  border-radius:4px;
  background:#fff;
  color:#182832;
  font-size:8px;
}
.agenda-team-marker em{
  overflow:hidden;
  font-size:8px;
  font-style:normal;
  font-weight:800;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.mobile-agenda-list .agenda-team-marker{
  margin-top:7px;
  padding:7px 8px;
}
.mobile-agenda-list .agenda-team-marker b,
.mobile-agenda-list .agenda-team-marker em{
  font-size:10px;
}
@media(max-width:640px){
  .agenda-drop-comparison{grid-template-columns:1fr}
  .agenda-drop-comparison>b{transform:rotate(90deg)}
  .agenda-drop-context{grid-template-columns:1fr}
  .agenda-drop-context>span{grid-row:auto}
}

/* Confirmación sobria para retirar una visita: el rojo queda solo en la acción final. */
.whole-visit-removal-modal{
  width:min(610px,calc(100vw - 28px));
}
.team-removal-heading.destructive{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:13px;
  align-items:center;
  margin:0 0 16px;
  padding:0 34px 0 0;
  border:0;
  background:transparent;
  color:#1d2d38;
}
.team-removal-heading.destructive>span{
  display:grid;
  place-items:center;
  width:46px;
  height:44px;
  border:1px solid #e7c9cb;
  border-radius:11px;
  background:#fff4f4;
  color:#a62c34;
  font-size:17px;
  font-weight:900;
}
.team-removal-heading.destructive small{
  color:#6d7e89;
  font-size:8px;
}
.team-removal-heading.destructive h2{
  margin:3px 0;
  color:#1d2d38;
  font-size:20px;
}
.team-removal-heading.destructive p{
  overflow:hidden;
  margin:0;
  color:#647783;
  font-size:10px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.agenda-removal-impact{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:11px;
  align-items:center;
  padding:12px 13px;
  border:1px solid #dce4e9;
  border-radius:10px;
  background:#f7f9fa;
}
.agenda-removal-impact>span{
  display:grid;
  place-items:center;
  width:36px;
  height:34px;
  border-radius:8px;
  background:#e8edf0;
  color:#526875;
  font-size:18px;
  font-weight:900;
}
.agenda-removal-impact strong{
  display:block;
  font-size:11px;
}
.agenda-removal-impact p{
  margin:3px 0 0;
  color:#687a86;
  font-size:9px;
}
.agenda-removal-result{
  margin-top:10px;
  padding:11px 13px;
  border-left:3px solid #8396a2;
  border-radius:0 9px 9px 0;
  background:#f8fafb;
}
.agenda-removal-result strong{
  display:block;
  color:#304551;
  font-size:10px;
}
.agenda-removal-result p{
  margin:3px 0 0;
  color:#687a86;
  font-size:9px;
  line-height:1.45;
}
.whole-visit-removal-modal .modal-actions .danger{
  background:#a92e35;
  box-shadow:none;
}
.whole-visit-removal-modal .modal-actions .danger:hover{
  background:#8f232a;
}

/* Centro profesional para añadir elementos a la agenda. */
.agenda-add-command-modal{
  width:min(900px,calc(100vw - 32px));
  padding:28px;
}
.agenda-add-command-head{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  gap:16px;
  align-items:center;
  padding:0 42px 20px 0;
  border-bottom:1px solid #dde5ea;
}
.agenda-add-command-head>span{
  display:grid;
  place-items:center;
  width:58px;
  height:54px;
  border-radius:13px;
  background:#18364c;
  color:#fff;
}
.agenda-add-command-head .icon{
  width:25px;
  height:25px;
}
.agenda-add-command-head small,.agenda-create-section>header small{
  color:#2d6899;
  font-size:9px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.agenda-add-command-head h2{
  margin:4px 0 3px;
  color:#182a37;
  font-size:24px;
}
.agenda-add-command-head p{
  max-width:680px;
  margin:0;
  color:#657985;
  font-size:11px;
  line-height:1.45;
}
.agenda-add-context{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  margin:16px 0;
  overflow:hidden;
  border:1px solid #dce4e9;
  border-radius:11px;
  background:#dce4e9;
}
.agenda-add-context>div{
  display:grid;
  gap:4px;
  padding:12px 14px;
  background:#f7f9fa;
}
.agenda-add-context span{
  color:#6b7d88;
  font-size:9px;
  font-weight:800;
}
.agenda-add-context strong{
  color:#213541;
  font-size:12px;
}
.agenda-create-section{
  padding:17px;
  border:1px solid #d9e3e9;
  border-radius:13px;
  background:#fbfcfd;
}
.agenda-create-section>header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:12px;
}
.agenda-create-section>header h3{
  margin:4px 0 0;
  color:#1d303c;
  font-size:17px;
}
.agenda-create-section>header>span{
  color:#778993;
  font-size:9px;
  font-weight:800;
}
.agenda-create-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.agenda-create-card{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  min-height:100px;
  padding:14px;
  border:1px solid #d8e2e8;
  border-radius:11px;
  background:#fff;
  color:#213541;
  text-align:left;
  cursor:pointer;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.agenda-create-card:hover{
  border-color:#7fa4c0;
  box-shadow:0 8px 20px rgba(25,58,81,.08);
  transform:translateY(-1px);
}
.agenda-create-icon{
  display:grid;
  place-items:center;
  width:46px;
  height:44px;
  border-radius:10px;
  background:#eaf2f7;
  color:#285f8c;
}
.agenda-create-icon .icon{
  width:22px;
  height:22px;
}
.agenda-create-card div{
  min-width:0;
}
.agenda-create-card small{
  display:block;
  color:#72838d;
  font-size:8px;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.agenda-create-card strong{
  display:block;
  margin-top:4px;
  font-size:13px;
}
.agenda-create-card p{
  margin:5px 0 0;
  color:#657883;
  font-size:10px;
  line-height:1.4;
}
.agenda-create-card>b{
  color:#597483;
  font-size:17px;
}
.agenda-block-option{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  gap:11px;
  align-items:center;
  width:100%;
  margin-top:10px;
  padding:11px 13px;
  border:1px solid #ddd3bd;
  border-radius:10px;
  background:#fffaf1;
  color:#3c4c55;
  text-align:left;
  cursor:pointer;
}
.agenda-block-option>span{
  display:grid;
  place-items:center;
  width:38px;
  height:36px;
  border-radius:8px;
  background:#f2e6cf;
  color:#826022;
}
.agenda-block-option .icon{
  width:19px;
  height:19px;
}
.agenda-block-option strong,.agenda-block-option small{
  display:block;
}
.agenda-block-option strong{
  font-size:11px;
}
.agenda-block-option small{
  margin-top:3px;
  color:#746b5b;
  font-size:9px;
}
.agenda-block-option>b{
  color:#7a5b25;
  font-size:9px;
  white-space:nowrap;
}
.agenda-pending-command{
  margin-top:18px;
  border-top:0;
}
.agenda-pending-command>header{
  padding:15px 0 11px!important;
  border-top:1px solid #dfe6ea;
}
.agenda-pending-command header small{
  font-size:9px;
}
.agenda-pending-command header h3{
  margin:4px 0 2px;
  font-size:16px;
}
.agenda-pending-command header p{
  font-size:10px;
}
.agenda-pending-command header>span{
  display:grid;
  place-items:center;
  min-width:34px;
  height:34px;
  border-radius:9px;
  background:#fff1d8;
  color:#8b5b00;
  font-size:12px;
  font-weight:900;
}
.agenda-pending-command header>span.complete{
  background:#e5f3eb;
  color:#167048;
}
.agenda-pending-command>div{
  max-height:235px!important;
  overflow:auto;
  border:1px solid #dce4e9;
  border-radius:10px;
}
.agenda-pending-command>div>button{
  display:grid;
  grid-template-columns:5px minmax(0,1fr) auto auto;
  gap:12px;
  align-items:center;
  width:100%;
  min-height:64px;
  padding:11px 13px;
  border:0;
  border-bottom:1px solid #e2e8eb;
  background:#fff;
  color:#243743;
  text-align:left;
  cursor:pointer;
}
.agenda-pending-command>div>button:last-child{border-bottom:0}
.agenda-pending-command>div>button:hover{background:#f7fafc}
.agenda-pending-priority{
  width:5px;
  height:34px;
  border-radius:99px;
  background:#95a4ad;
}
.agenda-pending-priority.red{background:#c53a42}
.agenda-pending-priority.amber{background:#d18e24}
.agenda-pending-priority.blue{background:#3478ad}
.agenda-pending-command>div strong{
  font-size:11px;
}
.agenda-pending-command>div small{
  margin-top:4px;
  font-size:9px;
}
.agenda-pending-command>div button>b{
  color:#246193;
  font-size:9px;
  white-space:nowrap;
}
@media(max-width:700px){
  .agenda-add-command-modal{padding:20px}
  .agenda-add-command-head{grid-template-columns:48px minmax(0,1fr);padding-right:32px}
  .agenda-add-command-head>span{width:48px;height:46px}
  .agenda-add-command-head h2{font-size:21px}
  .agenda-add-context,.agenda-create-grid{grid-template-columns:1fr}
  .agenda-create-card{min-height:92px}
  .agenda-block-option{grid-template-columns:38px minmax(0,1fr)}
  .agenda-block-option>b{grid-column:2}
  .agenda-pending-command>div>button{grid-template-columns:5px minmax(0,1fr) auto}
  .agenda-pending-command>div button>b{grid-column:2;justify-self:start}
  .agenda-pending-command>div .badge{grid-column:3;grid-row:1/3}
}

/* Escala y jerarquía final del centro de planificación. */
.agenda-add-command-modal{
  width:min(980px,calc(100vw - 32px));
  padding:32px;
}
.agenda-add-command-head{
  grid-template-columns:64px minmax(0,1fr);
  gap:18px;
  padding-bottom:24px;
}
.agenda-add-command-head>span{
  width:64px;
  height:60px;
  border-radius:15px;
  box-shadow:0 10px 24px rgba(24,54,76,.16);
}
.agenda-add-command-head small,
.agenda-create-section>header small{
  font-size:10px;
}
.agenda-add-command-head h2{
  margin-top:5px;
  font-size:27px;
  letter-spacing:-.02em;
}
.agenda-add-command-head p{
  max-width:760px;
  font-size:12.5px;
  line-height:1.5;
}
.agenda-add-context{
  grid-template-columns:repeat(3,1fr);
  margin:18px 0;
  border-radius:13px;
}
.agenda-add-context>div{
  gap:5px;
  padding:15px 17px;
}
.agenda-add-context span{
  font-size:10px;
}
.agenda-add-context strong{
  font-size:13px;
}
.agenda-create-section{
  padding:20px;
  border-radius:15px;
  box-shadow:0 10px 26px rgba(32,57,72,.045);
}
.agenda-create-section>header{
  margin-bottom:15px;
}
.agenda-create-section>header h3{
  font-size:19px;
}
.agenda-create-section>header>span{
  padding:6px 9px;
  border-radius:999px;
  background:#edf3f7;
  color:#526a79;
  font-size:10px;
}
.agenda-create-grid{
  gap:12px;
}
.agenda-create-card{
  grid-template-columns:52px minmax(0,1fr) auto;
  gap:14px;
  min-height:116px;
  padding:17px;
  border-radius:13px;
}
.agenda-create-icon{
  width:52px;
  height:50px;
  border-radius:12px;
}
.agenda-create-icon .icon{
  width:24px;
  height:24px;
}
.agenda-create-card small{
  font-size:9px;
}
.agenda-create-card strong{
  margin-top:5px;
  font-size:14px;
}
.agenda-create-card p{
  margin-top:6px;
  font-size:11.5px;
  line-height:1.45;
}
.agenda-create-card>b{
  font-size:19px;
}
.agenda-block-option{
  grid-template-columns:44px minmax(0,1fr) auto;
  gap:13px;
  margin-top:12px;
  padding:14px 16px;
  border-radius:12px;
}
.agenda-block-option>span{
  width:44px;
  height:42px;
  border-radius:10px;
}
.agenda-block-option strong{
  font-size:12.5px;
}
.agenda-block-option small{
  margin-top:4px;
  font-size:10.5px;
}
.agenda-block-option>b{
  font-size:10.5px;
}
.agenda-pending-command{
  margin-top:22px;
}
.agenda-pending-command>header{
  padding:18px 0 13px!important;
}
.agenda-pending-command header small{
  font-size:10px;
}
.agenda-pending-command header h3{
  font-size:18px;
}
.agenda-pending-command header p{
  font-size:11px;
}
.agenda-pending-command>div strong{
  font-size:12.5px;
}
.agenda-pending-command>div small{
  font-size:10.5px;
}
@media(max-width:700px){
  .agenda-add-command-modal{
    width:calc(100vw - 16px);
    padding:20px 16px;
  }
  .agenda-add-command-head{
    grid-template-columns:50px minmax(0,1fr);
    gap:13px;
    padding-bottom:18px;
  }
  .agenda-add-command-head>span{
    width:50px;
    height:48px;
  }
  .agenda-add-command-head h2{font-size:22px}
  .agenda-add-command-head p{font-size:11.5px}
  .agenda-add-context{grid-template-columns:1fr}
  .agenda-add-context>div{padding:11px 13px}
  .agenda-create-section{padding:14px}
  .agenda-create-section>header{align-items:flex-start}
  .agenda-create-section>header>span{display:none}
  .agenda-create-section>header h3{font-size:17px}
  .agenda-create-grid{grid-template-columns:1fr}
  .agenda-create-card{
    grid-template-columns:46px minmax(0,1fr) auto;
    min-height:100px;
    padding:14px;
  }
  .agenda-create-icon{width:46px;height:44px}
  .agenda-create-card strong{font-size:13px}
  .agenda-create-card p{font-size:10.5px}
  .agenda-block-option{
    grid-template-columns:40px minmax(0,1fr);
    padding:13px;
  }
  .agenda-block-option>span{width:40px;height:38px}
  .agenda-block-option>b{grid-column:2}
}

/* Reprogramación profesional y compacta. */
.reprogram-structured-modal{
  width:min(820px,calc(100vw - 28px));
  padding:26px 28px 0;
  overflow-x:hidden;
}
.reprogram-structured-head{
  display:grid;
  grid-template-columns:54px minmax(0,1fr) auto;
  gap:15px;
  align-items:center;
  padding:0 38px 20px 0;
  border-bottom:1px solid #dde5ea;
}
.reprogram-structured-head>span{
  display:grid;
  place-items:center;
  width:54px;
  height:52px;
  border-radius:13px;
  background:#18364c;
  color:#fff;
}
.reprogram-structured-head>span .icon{width:23px;height:23px}
.reprogram-structured-head small,
.reprogram-new-plan>header small{
  color:#2a689a;
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.reprogram-structured-head h2{
  margin:4px 0 2px;
  color:#192c39;
  font-size:23px;
}
.reprogram-structured-head p{
  margin:0;
  color:#687b87;
  font-size:11px;
}
.reprogram-structured-head>b{
  padding:7px 10px;
  border-radius:999px;
  background:#fff2d9;
  color:#8b5a05;
  font-size:9px;
  white-space:nowrap;
}
.reprogram-current-strip{
  display:grid;
  grid-template-columns:1fr 1fr 1.15fr;
  gap:1px;
  margin:16px 0 12px;
  overflow:hidden;
  border:1px solid #dce4e9;
  border-radius:11px;
  background:#dce4e9;
}
.reprogram-current-strip>div{
  min-width:0;
  padding:12px 14px;
  background:#f5f7f8;
}
.reprogram-current-strip span,
.reprogram-current-strip strong{display:block}
.reprogram-current-strip span{
  color:#6b7d88;
  font-size:8px;
  font-weight:800;
  text-transform:uppercase;
}
.reprogram-current-strip strong{
  overflow:hidden;
  margin-top:4px;
  color:#213541;
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.reprogram-day-context{
  margin-bottom:12px;
  overflow:hidden;
  border:1px solid #dce4e9;
  border-radius:10px;
  background:#fff;
}
.reprogram-day-context>summary{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:10px 12px;
  list-style:none;
  cursor:pointer;
}
.reprogram-day-context>summary::-webkit-details-marker{display:none}
.reprogram-day-context>summary>span{
  display:grid;
  place-items:center;
  width:34px;
  height:32px;
  border-radius:8px;
  background:#eaf2f7;
  color:#286495;
}
.reprogram-day-context .icon{width:16px;height:16px}
.reprogram-day-context strong,.reprogram-day-context small{display:block}
.reprogram-day-context strong{font-size:10px}
.reprogram-day-context small{margin-top:2px;color:#6f808b;font-size:8px}
.reprogram-day-context summary>b{color:#286495;font-size:9px}
.reprogram-day-context>div{border-top:1px solid #e0e7eb}
.reprogram-day-context article{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:9px;
  padding:8px 12px;
  border-bottom:1px solid #e6ebee;
}
.reprogram-day-context article:last-child{border-bottom:0}
.reprogram-day-context time{color:#286495;font-size:9px;font-weight:850}
.reprogram-day-context article strong{font-size:9px}
.reprogram-day-context article small{font-size:8px}
.reprogram-new-plan{
  padding:17px;
  border:1px solid #d8e2e8;
  border-radius:13px;
  background:#fbfcfd;
}
.reprogram-new-plan>header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:15px;
  margin-bottom:13px;
}
.reprogram-new-plan>header h3{margin:4px 0 0;font-size:16px}
.reprogram-schedule-grid{
  display:grid;
  grid-template-columns:1.25fr .85fr .65fr .75fr;
  gap:10px;
}
.reprogram-structured-modal label{
  color:#263743;
  font-size:10px;
  font-weight:800;
}
.reprogram-structured-modal select,
.reprogram-structured-modal input,
.reprogram-structured-modal textarea{
  margin-top:6px;
  min-height:46px;
  font-size:11px;
}
.reprogram-new-plan>header .planning-all-day-option{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  margin:0;
  padding:6px 10px;
  border:1px solid #cedce6;
  border-radius:8px;
  background:#fff;
  cursor:pointer;
}
.reprogram-new-plan>header .planning-all-day-option input{
  width:16px;
  min-height:0;
  margin:0;
}
.reprogram-new-plan>header .planning-all-day-option span{font-size:9px}
.reprogram-schedule-grid.planning-hour-muted>label:nth-child(n+3){opacity:.5}
.reprogram-open-calendar{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  width:100%;
  margin-top:12px;
  padding:10px 12px;
  border:1px solid #bdd1df;
  border-radius:9px;
  background:#eff6fa;
  color:#205b8c;
  text-align:left;
  cursor:pointer;
}
.reprogram-open-calendar>.icon{width:18px;height:18px}
.reprogram-open-calendar strong,.reprogram-open-calendar small{display:block}
.reprogram-open-calendar strong{font-size:10px}
.reprogram-open-calendar small{margin-top:2px;color:#607988;font-size:8px}
.reprogram-open-calendar>b{font-size:9px;white-space:nowrap}
.reprogram-availability{margin-top:12px!important}
.reprogram-reason-grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:10px;
  margin-top:12px;
}
.reprogram-reason-grid textarea{
  height:46px;
  min-height:46px;
  resize:vertical;
}
.reprogram-notice{
  display:flex;
  align-items:center;
  gap:8px;
  margin:10px 0 0;
  color:#5f7380;
}
.reprogram-notice>span{
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  border-radius:50%;
  background:#e1f2e8;
  color:#167146;
  font-size:9px;
  font-weight:900;
}
.reprogram-notice p{margin:0;font-size:9px}
.reprogram-structured-actions{
  position:sticky;
  bottom:0;
  z-index:4;
  margin:14px -28px 0;
  padding:14px 28px 16px;
  border-top:1px solid #dce4e9;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(8px);
}
@media(max-width:700px){
  .reprogram-structured-modal{
    width:calc(100vw - 16px);
    padding:20px 16px 0;
  }
  .reprogram-structured-head{
    grid-template-columns:46px minmax(0,1fr);
    gap:12px;
    padding:0 32px 16px 0;
  }
  .reprogram-structured-head>span{width:46px;height:44px}
  .reprogram-structured-head h2{font-size:20px}
  .reprogram-structured-head>b{
    grid-column:2;
    justify-self:start;
  }
  .reprogram-current-strip{grid-template-columns:1fr}
  .reprogram-current-strip>div{padding:9px 11px}
  .reprogram-schedule-grid,
  .reprogram-reason-grid{grid-template-columns:1fr}
  .reprogram-new-plan{padding:14px}
  .reprogram-new-plan>header{align-items:flex-start;flex-direction:column}
  .reprogram-open-calendar{grid-template-columns:30px minmax(0,1fr)}
  .reprogram-open-calendar>b{grid-column:2}
  .reprogram-structured-actions{
    margin-inline:-16px;
    padding:12px 16px 14px;
  }
}
@media(min-width:701px) and (max-width:950px){
  .reprogram-schedule-grid{grid-template-columns:1.2fr .8fr 1fr 1fr}
}

@media(max-width:820px){
  .technician-mobile-nav{
    grid-template-columns:repeat(5,minmax(0,1fr));
    padding:7px 8px calc(7px + env(safe-area-inset-bottom));
    border-top:1px solid #d8e1e7;
    background:rgba(255,255,255,.97);
    box-shadow:0 -10px 28px rgba(24,48,65,.1);
    backdrop-filter:blur(12px);
  }
  .technician-mobile-nav button{
    position:relative;
    min-width:0;
    min-height:52px;
    padding:6px 3px;
    border-radius:10px;
    color:#607482;
    font-size:9px;
  }
  .technician-mobile-nav button .icon{width:20px;height:20px}
  .technician-mobile-nav button.active{
    background:#edf4fa;
    color:#215f96;
  }
  .technician-mobile-nav .technician-new-tab{
    background:#1f5f98;
    color:#fff;
  }
  .technician-mobile-nav .technician-new-tab.active{
    background:#173f60;
    color:#fff;
  }
  .technician-mobile-nav button>b:not(.mobile-user-avatar){
    position:absolute;
    top:2px;
    left:calc(50% + 7px);
    display:grid;
    place-items:center;
    min-width:17px;
    height:17px;
    padding:0 4px;
    border:2px solid #fff;
    border-radius:99px;
    background:#bd343c;
    color:#fff;
    font-size:7px;
  }
}
@media(max-width:700px){
  body.real-planning-active .top-actions{
    display:none!important;
  }
  body.real-planning-active .content{
    padding-bottom:145px;
  }
  .real-planning-active .planning-live-banner>header{
    min-height:70px;
    padding:12px 14px;
  }
  .real-planning-active .planning-live-banner>header h2{font-size:17px}
  .real-planning-active .planning-live-controls{
    grid-template-columns:1fr;
    padding:12px 14px 10px;
  }
  .real-planning-active .planning-live-controls>label:first-child,
  .real-planning-active .planning-live-controls>label:nth-child(2),
  .real-planning-active .planning-live-schedule{
    grid-column:1;
  }
  .real-planning-active .planning-live-reason{
    grid-template-columns:1fr;
    padding:0 14px 12px;
  }
  .real-planning-active .planning-live-footer{
    position:fixed;
    right:12px;
    bottom:68px;
    left:12px;
    z-index:90;
    display:block;
    min-height:0;
    padding:8px;
    border:1px solid #ccd9e2;
    border-radius:12px;
    background:rgba(255,255,255,.97);
    box-shadow:0 12px 30px rgba(17,38,54,.2);
    backdrop-filter:blur(8px);
  }
  .real-planning-active .planning-live-footer p{
    display:none;
  }
  .real-planning-active .planning-live-footer>.primary{
    width:100%;
    min-width:0;
    font-size:14px;
  }
}

/* Evidencia aportada al solicitar o confirmar el cierre de una incidencia */
.incident-closure-evidence{
  margin:16px 0;
  overflow:hidden;
  border:1px solid #b9d9c8;
  border-radius:14px;
  background:#f7fcf9;
}
.incident-closure-evidence.pending{
  border-color:#e7cf9a;
  background:#fffbf3;
}
.incident-closure-evidence>header{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:14px 16px;
  border-bottom:1px solid #d9e9e0;
}
.incident-closure-evidence.pending>header{border-bottom-color:#eee0bd}
.incident-closure-evidence>header>span{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:12px;
  background:#e3f3ea;
  color:#18764b;
  font-size:22px;
  font-weight:800;
}
.incident-closure-evidence.pending>header>span{
  background:#fff0ce;
  color:#9c6500;
}
.incident-closure-evidence>header small{
  display:block;
  margin-bottom:2px;
  color:#18764b;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.incident-closure-evidence.pending>header small{color:#9c6500}
.incident-closure-evidence>header h3{
  margin:0;
  color:#172633;
  font-size:18px;
}
.incident-closure-evidence>header p{
  margin:3px 0 0;
  color:#657582;
  font-size:13px;
}
.closure-evidence-body{
  display:grid;
  grid-template-columns:minmax(190px,.8fr) minmax(0,1.2fr);
  gap:14px;
  padding:14px 16px 16px;
}
.closure-evidence-photos{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
.closure-evidence-photos button{
  position:relative;
  min-height:130px;
  overflow:hidden;
  padding:0;
  border:0;
  border-radius:11px;
  background:#dfe7ec;
  cursor:pointer;
}
.closure-evidence-photos img{
  width:100%;
  height:100%;
  min-height:130px;
  max-height:210px;
  object-fit:cover;
}
.closure-evidence-photos span{
  position:absolute;
  right:8px;
  bottom:8px;
  padding:4px 8px;
  border-radius:7px;
  background:rgba(16,34,48,.84);
  color:#fff;
  font-size:11px;
  font-weight:800;
}
.closure-evidence-copy{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:14px;
  padding:14px;
  border:1px solid #dfebe4;
  border-radius:11px;
  background:#fff;
}
.incident-closure-evidence.pending .closure-evidence-copy{border-color:#eee2c6}
.closure-evidence-copy p{margin:0;color:#374854;line-height:1.55}
.closure-evidence-copy p strong{
  display:block;
  margin-bottom:6px;
  color:#172633;
}
.closure-evidence-copy small{
  padding-top:10px;
  border-top:1px solid #e5ece8;
  color:#657582;
}
.closure-evidence-unavailable{padding:16px}
.closure-evidence-unavailable strong{color:#172633}
.closure-evidence-unavailable p{margin:4px 0 0;color:#657582}
@media(max-width:700px){
  .incident-closure-evidence>header{
    grid-template-columns:38px minmax(0,1fr);
    padding:12px;
  }
  .incident-closure-evidence>header>span{
    width:38px;
    height:38px;
  }
  .incident-closure-evidence>header>.badge{
    grid-column:2;
    justify-self:start;
  }
  .closure-evidence-body{
    grid-template-columns:1fr;
    padding:12px;
  }
}

/* Technician mobile/tablet: photo-first incident form and touch-safe task actions */
.technician-quick-incident .restaurant-portal-tabs,
.technician-quick-incident .restaurant-tracking{
  display:none!important;
}
.technician-quick-incident .restaurant-portal-grid{
  grid-template-columns:minmax(0,760px);
  justify-content:center;
}
.technician-quick-incident .restaurant-report-form{width:100%}
.agenda-detail-footer .agenda-task-actions button,
.agenda-detail-footer>button{
  min-height:46px;
  padding:11px 15px;
  font-size:10px;
}
.agenda-detail-footer .agenda-actions-more>summary{
  min-height:46px;
  padding:11px 15px;
  font-size:10px;
}
@media(max-width:900px){
  .agenda-detail-modal{
    width:min(720px,calc(100vw - 20px));
    padding:20px;
  }
  .agenda-detail-footer{
    position:sticky;
    bottom:-20px;
    z-index:5;
    align-items:stretch;
    flex-direction:column;
    margin:18px -20px -20px;
    padding:14px 20px calc(14px + env(safe-area-inset-bottom));
    background:rgba(255,255,255,.98);
    box-shadow:0 -8px 22px rgba(20,39,54,.09);
  }
  .agenda-detail-footer .agenda-task-actions{
    display:flex;
    align-items:stretch;
    flex-direction:column;
    width:100%;
  }
  .agenda-detail-footer .agenda-actions-primary{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
  }
  .agenda-detail-footer .agenda-task-actions button,
  .agenda-detail-footer .agenda-actions-more,
  .agenda-detail-footer>button{
    width:100%;
    min-height:50px;
    font-size:12px;
  }
  .agenda-detail-footer .agenda-actions-more>summary{
    justify-content:space-between;
    min-height:50px;
    font-size:12px;
  }
  .agenda-comment-composer button{
    min-height:50px;
    font-size:12px;
  }
}
@media(max-width:560px){
  .technician-quick-incident .restaurant-portal{padding-bottom:84px}
  .technician-quick-incident .restaurant-portal-head{margin-bottom:12px}
  .technician-quick-incident .restaurant-report-form{padding:16px}
  .agenda-detail-modal{
    width:calc(100vw - 10px);
    padding:16px;
  }
  .agenda-detail-footer{
    bottom:-16px;
    margin:16px -16px -16px;
    padding:12px 16px calc(12px + env(safe-area-inset-bottom));
  }
  .agenda-detail-footer .agenda-actions-primary{grid-template-columns:1fr}
  .agenda-detail-footer .agenda-task-actions button,
  .agenda-detail-footer>button{
    min-height:52px;
    font-size:13px;
  }
}

/* Absence resolution and calendar-first reprogramming */
.absence-decision-modal .absence-resolution-guidance{
  border-left-color:#b77918;
  background:#fff8ea;
}
.absence-decision-modal .absence-resolution-guidance>span{
  color:#946117;
}
.absence-shared-warning,
.absence-unresolved-warning{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:10px;
  align-items:center;
  margin:10px 0;
  padding:11px 12px;
  border:1px solid #e5c98e;
  border-radius:10px;
  background:#fff8e9;
}
.absence-shared-warning>span,
.absence-unresolved-warning>span{
  display:grid;
  place-items:center;
  width:34px;
  height:32px;
  border-radius:8px;
  background:#9b681a;
  color:#fff;
  font-size:9px;
  font-weight:900;
}
.absence-shared-warning strong,
.absence-shared-warning p,
.absence-unresolved-warning p{display:block;margin:0}
.absence-shared-warning p,
.absence-unresolved-warning p{margin-top:3px;color:#6d592f;font-size:9px;line-height:1.4}
.absence-shared-note{
  display:flex!important;
  align-items:center;
  gap:6px;
  margin-top:6px!important;
  color:#235f8f!important;
  font-size:8px!important;
  font-weight:750;
}
.absence-shared-note>b{
  display:grid;
  place-items:center;
  min-width:24px;
  height:20px;
  border-radius:6px;
  background:#17384f;
  color:#fff;
  font-size:7px;
}
.agenda-task-card.absence-conflict-card{
  border-color:#c43f46!important;
  background:#fff5f5!important;
  box-shadow:inset 3px 0 0 #b92f38;
}
.agenda-absence-marker{
  display:block;
  margin:5px 0 3px;
  padding:4px 6px;
  border-radius:5px;
  background:#f8dfe1;
  color:#9d2730;
  font-size:7px;
  font-weight:900;
}
.absence-decision-modal .absence-resolution-actions{
  display:grid;
  grid-template-columns:auto 1fr 1fr;
  gap:8px;
}
.absence-bulk-modal{width:min(700px,calc(100vw - 24px))}
.absence-bulk-heading,
.reprogram-choice-heading{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto;
  gap:13px;
  align-items:center;
  margin-bottom:16px;
  padding-right:32px;
}
.absence-bulk-heading>span,
.reprogram-choice-heading>span{
  display:grid;
  place-items:center;
  width:52px;
  height:48px;
  border-radius:12px;
  background:#17384f;
  color:#fff;
}
.absence-bulk-heading small,
.reprogram-choice-heading small{
  color:#28689c;
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.absence-bulk-heading h2,
.reprogram-choice-heading h2{margin:3px 0;font-size:20px}
.absence-bulk-heading p,
.reprogram-choice-heading p{margin:0;color:#677b88;font-size:9px}
.reprogram-choice-heading>b{
  padding:7px 9px;
  border-radius:8px;
  background:#fff3d9;
  color:#8e5e13;
  font-size:8px;
}
.absence-bulk-explanation{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:10px;
  align-items:center;
  margin-bottom:14px;
  padding:11px 12px;
  border:1px solid #d7e3eb;
  border-radius:10px;
  background:#f3f8fb;
}
.absence-bulk-explanation>span{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:8px;
  background:#28689c;
  color:#fff;
  font-weight:900;
}
.absence-bulk-explanation strong,
.absence-bulk-explanation p{display:block;margin:0}
.absence-bulk-explanation p{margin-top:3px;color:#617684;font-size:9px}
.absence-bulk-list{
  max-height:245px;
  margin:12px 0;
  overflow:auto;
  border:1px solid #dce4e9;
  border-radius:10px;
}
.absence-bulk-list>article{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:11px 12px;
  border-bottom:1px solid #e2e8ec;
}
.absence-bulk-list>article:last-child{border-bottom:0}
.absence-bulk-list strong,
.absence-bulk-list small{display:block}
.absence-bulk-list small{margin-top:3px;color:#6b7d88;font-size:8px}
.reprogram-choice-modal{width:min(760px,calc(100vw - 24px))}
.reprogram-choice-current{
  display:grid;
  grid-template-columns:1fr 36px 1fr;
  gap:10px;
  align-items:center;
  margin-bottom:14px;
}
.reprogram-choice-current>div{
  min-height:82px;
  padding:14px;
  border:1px solid #dbe4e9;
  border-radius:11px;
  background:#f7f9fa;
}
.reprogram-choice-current>div:last-child{
  border-color:#bdd5e6;
  background:#eff6fa;
}
.reprogram-choice-current>b{
  color:#7590a2;
  font-size:20px;
  text-align:center;
}
.reprogram-choice-current span,
.reprogram-choice-current strong,
.reprogram-choice-current small{display:block}
.reprogram-choice-current span{
  color:#69808f;
  font-size:8px;
  font-weight:850;
  text-transform:uppercase;
}
.reprogram-choice-current strong{margin-top:6px;font-size:13px}
.reprogram-choice-current small{margin-top:4px;color:#647783;font-size:9px}
.reprogram-choice-reason{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:10px;
  margin-bottom:14px;
}
.reprogram-choice-reason label{margin:0}
.reprogram-choice-reason textarea{
  min-height:48px;
  height:48px;
  resize:vertical;
}
.reprogram-choice-action{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:14px;
  border:1px solid #b8d3e5;
  border-radius:12px;
  background:#eef6fb;
}
.reprogram-choice-action>span{
  display:grid;
  place-items:center;
  width:44px;
  height:42px;
  border-radius:10px;
  background:#17384f;
  color:#fff;
  font-size:10px;
  font-weight:900;
}
.reprogram-choice-action strong,
.reprogram-choice-action p{display:block;margin:0}
.reprogram-choice-action p{margin-top:3px;color:#5f7482;font-size:9px}
.reprogram-choice-action button{
  min-height:46px;
  white-space:nowrap;
}
.reprogram-choice-footer{justify-content:flex-start}
@media(max-width:700px){
  .absence-decision-modal .absence-resolution-actions{grid-template-columns:1fr}
  .absence-bulk-heading,
  .reprogram-choice-heading{
    grid-template-columns:44px minmax(0,1fr);
    padding-right:28px;
  }
  .absence-bulk-heading>span,
  .reprogram-choice-heading>span{width:44px;height:42px}
  .reprogram-choice-heading>b{
    grid-column:2;
    justify-self:start;
  }
  .reprogram-choice-current{grid-template-columns:1fr}
  .reprogram-choice-current>b{transform:rotate(90deg)}
  .reprogram-choice-reason{grid-template-columns:1fr}
  .reprogram-choice-action{
    grid-template-columns:40px minmax(0,1fr);
  }
  .reprogram-choice-action>span{width:40px;height:38px}
  .reprogram-choice-action button{
    grid-column:1/-1;
    width:100%;
    min-height:52px;
  }
}
/* Supabase authentication gate */
.supabase-login-shell{min-height:100dvh;display:grid;place-items:center;padding:24px;background:linear-gradient(145deg,#102033,#1b2738 58%,#28556a);color:#142130;overflow-y:auto}
.supabase-login-card{width:min(100%,420px);padding:38px;border-radius:24px;background:#fff;box-shadow:0 24px 65px rgba(0,0,0,.28);text-align:center}
.supabase-login-logo{width:64px;height:64px;margin-bottom:10px}.supabase-login-kicker{margin:0;color:#3974aa;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.supabase-login-card h1{margin:8px 0 10px;font-size:1.7rem;line-height:1.15}.supabase-login-card>p:not(.supabase-login-kicker){margin:0 0 24px;color:#607080;line-height:1.5}
.supabase-login-card form{text-align:left;display:grid;gap:15px}.supabase-login-card label{display:grid;gap:7px;color:#324254;font-weight:700;font-size:.9rem}.supabase-login-card input{min-height:46px;border:1px solid #cad4df;border-radius:10px;padding:0 12px;font:inherit;color:#142130;background:#fff}.supabase-login-card input:focus{outline:3px solid rgba(57,116,170,.2);border-color:#3974aa}
.supabase-login-card .password-field{position:relative;width:100%}.supabase-login-card .password-field input{box-sizing:border-box;width:100%;padding-right:44px}.supabase-login-card .password-eye{position:absolute;top:50%;right:8px;display:grid;place-items:center;width:30px!important;min-height:30px!important;padding:0!important;border:0!important;border-radius:6px!important;background:transparent!important;color:#527086!important;transform:translateY(-50%);font-size:16px!important;line-height:1!important}.supabase-login-card .password-eye:hover{background:#edf3f7!important}
.supabase-login-card form{position:relative}.login-loading-overlay{position:absolute;inset:0;z-index:3;display:grid;place-content:center;justify-items:center;gap:8px;border-radius:12px;background:rgba(255,255,255,.96);text-align:center;color:#223d55;backdrop-filter:blur(3px)}.login-loading-overlay img{width:46px;height:46px}.login-loading-overlay strong{font-size:1rem}.login-loading-overlay span{color:#6b7e8c;font-size:.82rem}.login-loading-overlay i{width:22px;height:22px;border:3px solid #d8e8f3;border-top-color:#246aa0;border-radius:50%;animation:rm-login-spin .75s linear infinite}@keyframes rm-login-spin{to{transform:rotate(360deg)}}
.supabase-login-card button{min-height:48px;border:0;border-radius:10px;background:#1e6598;color:#fff;font:700 1rem inherit;cursor:pointer}.supabase-login-card button:disabled{opacity:.65;cursor:wait}.supabase-login-error{min-height:1.2em;margin:0;color:#bb2b3e;font-size:.88rem;line-height:1.35}
.sidebar nav button .silent-badge{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:var(--red,#c0392b);color:#fff;font-size:10px;font-weight:700;line-height:1}
.mobile-nav button{position:relative}
.mobile-nav button .silent-badge{position:absolute;top:2px;right:22%;min-width:15px;height:15px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;border-radius:99px;background:var(--red,#c0392b);color:#fff;font-size:9px;font-weight:700;line-height:1}
button[data-action="notifications"][hidden]{display:none!important}

/* Preventivo: puntuacion con color por nota, tarjetas de programacion mas claras, historial completo y aviso de restaurantes sin programar. */
.checklist-score label.tone-red span{border-color:#f3c6c6}
.checklist-score label.tone-amber span{border-color:#f1ddab}
.checklist-score label.tone-green span{border-color:#bfe4d1}
.checklist-score label.tone-blue span{border-color:#bcd7f2}
.checklist-score label.tone-red input:checked+span{border-color:#ab1f24;background:#fff0f0;color:#ab1f24;box-shadow:inset 0 0 0 1px #ab1f24}
.checklist-score label.tone-amber input:checked+span{border-color:#905900;background:#fff5dc;color:#905900;box-shadow:inset 0 0 0 1px #905900}
.checklist-score label.tone-green input:checked+span{border-color:#0c7040;background:#e9f7ef;color:#0c7040;box-shadow:inset 0 0 0 1px #0c7040}
.checklist-score label.tone-blue input:checked+span{border-color:#195993;background:#eaf2fd;color:#195993;box-shadow:inset 0 0 0 1px #195993}
.checklist-score label input:checked+span small{color:inherit}

.checklist-summary-head{border-radius:12px;padding:6px}
.checklist-summary-head.tone-red>span{background:#fff0f0;color:#ab1f24}
.checklist-summary-head.tone-amber>span{background:#fff5dc;color:#905900}
.checklist-summary-head.tone-green>span{background:#e9f7ef;color:#0c7040}
.checklist-summary-head.tone-blue>span{background:#eaf2fd;color:#195993}
.modal-actions a.secondary{display:inline-flex;align-items:center;gap:6px;text-decoration:none}

.checklist-history-head-actions{display:flex;align-items:center;gap:12px}
.checklist-history-head-actions small{color:var(--muted);font-size:10px}
.checklist-history-modal{width:min(640px,100%)}
.checklist-history-modal-head{margin-bottom:14px}
.checklist-history-modal-head span{color:var(--blue);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.checklist-history-modal-head h2{margin:5px 0 4px;font-size:20px}
.checklist-history-modal-head p{margin:0;color:var(--muted);font-size:11px}
.checklist-history-full{display:grid;max-height:60vh;overflow:auto;border:1px solid var(--line);border-radius:9px}
.checklist-history-full>button{width:100%;display:grid;grid-template-columns:88px minmax(0,1fr) auto 12px;gap:12px;align-items:center;padding:12px 14px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;cursor:pointer}
.checklist-history-full>button:last-child{border-bottom:0}
.checklist-history-full>button:hover{background:#f8fafb}
.checklist-history-full time{color:#394957;font-size:10px;font-weight:800}
.checklist-history-full strong,.checklist-history-full small{display:block}
.checklist-history-full strong{font-size:12px}
.checklist-history-full small{margin-top:2px;color:var(--muted);font-size:10px}
.checklist-history-full>button>i{color:#8b99a4;font-size:18px;font-style:normal}

.preventive-checklist-schedules>button.unscheduled{background:#fffaf9}
.preventive-checklist-schedules>button.unscheduled time{color:#c8ccce}

.checklist-schedule-rows article{position:relative;border-left-width:4px;border-left-style:solid}
.checklist-schedule-rows article.status-red{border-left-color:#ab1f24}
.checklist-schedule-rows article.status-amber{border-left-color:#905900}
.checklist-schedule-rows article.status-green{border-left-color:#0c7040}
.checklist-schedule-rows article>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.checklist-schedule-rows article>header strong{font-size:12px}

.agenda-checklist-strip-actions{display:flex;align-items:center;gap:8px}
.agenda-checklist-strip-actions .secondary{padding:7px 11px;font-size:10px}
.agenda-checklist-strip>div>button{position:relative;display:grid;gap:2px;min-width:210px;padding:12px 14px 11px}
.agenda-checklist-strip>div>button .badge{position:absolute;top:11px;right:12px}
.agenda-checklist-strip>div>button>div{display:flex;align-items:center;gap:6px;margin-top:1px}
.agenda-checklist-strip>div>button.overdue{background:#fff8f7}
.agenda-checklist-strip>div>button.soon{background:#fffbf1}
.agenda-checklist-strip .checklist-avatar{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#e7ecef;color:#3c4a55;font-size:8px;font-weight:800;flex:none}
.agenda-checklist-empty{margin:0;padding:16px 4px;color:var(--muted);font-size:11px}
@media(max-width:700px){.checklist-history-full>button{grid-template-columns:minmax(0,1fr) auto 11px}.checklist-history-full time{display:none}}

/* Fila extra en la cuadrícula semanal para personas con checklist programado que no son técnicos (p.ej. supervisores). */
.week-row.checklist-supervisor-row{background:#fff;border-top:1px solid #e0e7eb}
.week-row.checklist-supervisor-row .agenda-person{background:#f7f9fa}
.week-row.checklist-supervisor-row .agenda-person strong{color:#273d4d}
.week-row.checklist-supervisor-row .agenda-person small{color:#70808b}
.week-row.checklist-supervisor-row .agenda-add-slot{border-color:#d7e0e5;color:#42617a}
.week-row.checklist-supervisor-row .agenda-add-slot:hover{background:#f2f7fa}
.mobile-agenda-list .agenda-task-card.checklist{margin-top:7px}

/* El cierre fiable del checklist mensual es el botón "Cerrar" de la barra inferior (siempre visible); la × superior vuelve a su comportamiento normal para no solaparse con el contenido al hacer scroll. */

/* Preventivo: cabecera con el mismo estilo que Mantenimiento preventivo, iconos por grupo, buscador y aviso de "no disponible". */
.checklist-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 14px;padding:21px 22px;border-radius:14px;background:linear-gradient(125deg,#172735,#31556f);color:#fff}
.checklist-head>div>span{color:#b9cad5;font-size:8px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.checklist-head h2{margin:5px 0 4px;font-size:22px;color:#fff;letter-spacing:-.03em}
.checklist-head p{margin:0;max-width:600px;color:#c3d1da;font-size:11px;line-height:1.5}
@media(max-width:650px){.checklist-head{align-items:stretch;flex-direction:column;padding:18px}.checklist-head .primary{width:100%;min-height:44px}}

.checklist-group summary{gap:12px}
.checklist-group-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#eef4fc;font-size:16px;font-style:normal;flex:none}

.checklist-schedule-search{display:flex;align-items:center;gap:10px;margin:2px 0 4px}
.checklist-schedule-search input{flex:1;min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff}
.checklist-schedule-search small{color:var(--muted);font-size:10px;white-space:nowrap}

.checklist-history-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:2px 0 12px}
.checklist-history-filters input[type="search"]{flex:2;min-width:180px;min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff}
.checklist-history-filters select{flex:1;min-width:140px;min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff}
.checklist-history-filters small{color:var(--muted);font-size:10px;white-space:nowrap;margin-left:auto}
@media(max-width:560px){.checklist-history-filters{flex-direction:column;align-items:stretch}.checklist-history-filters small{margin:0}}

.checklist-na{display:flex!important;align-items:center;gap:6px;margin:9px 0!important;padding:6px 8px;border-radius:7px;background:#f6f8f9;color:#45545f;font-size:9px!important;font-weight:750!important;cursor:pointer}
.checklist-na input{width:auto!important;margin:0}

/* Checklist mensual: formulario con más presencia visual (cabecera con degradado, progreso, tarjetas con relieve). */
.monthly-checklist-modal{background:#f4f6f8}
.monthly-checklist-form{padding:0 0 20px}
.monthly-checklist-form-head{position:relative;margin:0 0 0;padding:24px 26px 30px;background:linear-gradient(125deg,#172735,#31556f);color:#fff;border-radius:0}
.monthly-checklist-form-head span{color:#b9cad5!important}
.monthly-checklist-form-head h2{color:#fff;font-size:24px;letter-spacing:-.03em}
.monthly-checklist-form-head p{color:#c3d1da!important;max-width:520px}
.monthly-checklist-form-head>b{display:none}
.checklist-progress-pill{display:grid;place-items:center;gap:1px;min-width:78px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.14);color:#fff;text-align:center}
.checklist-progress-pill b{font-size:15px}
.checklist-progress-pill small{color:#c3d1da;font-size:8px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}
.checklist-progress-track{position:relative;height:5px;margin:-9px 26px 18px;border-radius:99px;background:rgba(0,0,0,.08);overflow:hidden}
.checklist-progress-track span{position:absolute;inset:0 auto 0 0;display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#2f80c9,#1b2738);transition:width .25s ease}
.monthly-checklist-form>.field-row.checklist-meta,.monthly-checklist-form>.checklist-supervisor,.monthly-checklist-form>.checklist-group,.monthly-checklist-form>.monthly-checklist-bottom{margin-left:22px;margin-right:22px}
.monthly-checklist-form>.field-row.checklist-meta{margin-top:6px}
.monthly-checklist-form>.checklist-group{margin-top:14px;box-shadow:0 1px 2px rgba(20,30,40,.05)}
.checklist-group summary{transition:background .15s ease}
.checklist-group summary:hover{background:#f7f9fb}
.checklist-group-items{gap:12px;padding:12px}
.checklist-item{position:relative;transition:box-shadow .15s ease,border-color .15s ease}
.checklist-item:hover{border-color:#c3d2db;box-shadow:0 2px 8px rgba(20,40,60,.06)}
.checklist-item>header strong{font-size:12.5px;letter-spacing:-.01em}
.checklist-photo-button{background:#eef4fc!important;border-color:#d7e4f0!important;color:#195993!important;font-weight:750!important}
.checklist-photo-button:hover{background:#e2edfb!important}
#checklist-total-score{transition:color .2s ease}
#checklist-total-score.tone-red{color:#ab1f24}
#checklist-total-score.tone-amber{color:#905900}
#checklist-total-score.tone-green{color:#0c7040}
#checklist-total-score.tone-blue{color:#195993}
.monthly-checklist-bottom{border-radius:0 0 14px 14px;flex-wrap:wrap}
.monthly-checklist-bottom .primary{box-shadow:0 2px 6px rgba(24,90,159,.25)}
.monthly-checklist-bottom>div{flex:1 1 auto;min-width:140px}
.monthly-checklist-bottom button[data-action="close-monthly-checklist"]{order:1;min-height:40px}
.monthly-checklist-bottom .primary{order:2}
.monthly-checklist-bottom .checklist-cancel{order:1;margin-right:auto;color:#9a3438;font-size:10px;font-weight:800}

/* Móvil y tablet: la cabecera, la barra inferior y los controles crecen a tamaño táctil cómodo. */
@media(max-width:650px){
  .monthly-checklist-form-head{padding:20px 18px 26px;flex-direction:column;align-items:flex-start;gap:12px}
  .checklist-progress-track{margin:-9px 18px 16px}
  .monthly-checklist-form>.field-row.checklist-meta,.monthly-checklist-form>.checklist-supervisor,.monthly-checklist-form>.checklist-group,.monthly-checklist-form>.monthly-checklist-bottom{margin-left:14px;margin-right:14px}
  .monthly-checklist-bottom{flex-direction:column;align-items:stretch;gap:8px}
  .monthly-checklist-bottom>div{order:0;text-align:center}
  .monthly-checklist-bottom button[data-action="close-monthly-checklist"],.monthly-checklist-bottom .checklist-cancel,.monthly-checklist-bottom .primary{width:100%;min-height:46px;font-size:12px}
  .checklist-score>div{grid-template-columns:repeat(2,1fr)}
  .checklist-photo-button{padding:9px 10px!important}
  .checklist-group-items{gap:10px}
  .checklist-progress-pill{min-width:64px}
}
@media(min-width:651px) and (max-width:1024px){
  .monthly-checklist-modal{width:min(680px,94%)}
  .checklist-group-items{grid-template-columns:1fr}
}
.checklist-item.na-marked{background:#fafbfc}
.checklist-item.na-marked .checklist-score{opacity:.4}
.checklist-summary-list article.not-applicable{opacity:.65}

/* Chip del checklist mensual dentro de la Agenda semanal del equipo, para ver si ese día ya hay carga de trabajo. */
.agenda-task-card.checklist{border-left-color:#3a73ad;background:#fff}
.agenda-task-card.checklist:hover{border-color:#8eabc7;background:#fff}
.agenda-task-card.checklist time{color:#245b91}
.agenda-task-card.checklist .agenda-task-meta{color:#5b6c78}
.agenda-checklist-add{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:22px;height:22px;border:1px dashed #a9c6e6;border-radius:6px;background:#fff;color:#2c6aa2;font-size:9px;font-weight:800;cursor:pointer}
.agenda-checklist-add:hover{background:#eef6fc;border-color:#2c6aa2}
.checklist-quick-day-load{margin-bottom:14px;padding:11px 13px;border-radius:9px;background:#fff8ef;border:1px solid #f0dcae}
.checklist-quick-day-load strong{display:block;margin-bottom:6px;font-size:10px;color:#905900}
.checklist-quick-day-load small{display:block;margin-top:3px;color:#7a6a4a;font-size:9px}
.checklist-quick-day-load.empty{background:#f4f8f5;border-color:#d9e9dc}
.checklist-quick-day-load.empty small{margin:0;color:#4b7a58}

/* Aviso en pantalla: reemplaza el globo flotante por un mensaje normal, anclado arriba y con forma de barra. */
.toast{position:fixed;left:50%;right:auto;bottom:auto;top:18px;transform:translate(-50%,-14px);width:min(560px,calc(100vw - 32px));display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 18px;border-radius:10px;background:#17212b;color:#fff;box-shadow:0 10px 30px #0003;opacity:0;pointer-events:none;transition:.22s;font-size:12px}
.toast.show{transform:translate(-50%,0);opacity:1;pointer-events:auto}
.toast span{flex:1;line-height:1.4}
.toast[data-action],.toast button{flex:none}
@media(max-width:820px){.toast{left:15px;right:15px;top:14px;transform:translateY(-14px);width:auto}.toast.show{transform:translateY(0)}}

.checklist-operational-modal .operational-agenda-head>span{background:#eaf2fd;color:#195993}

/* Programación preventiva: una decisión clara, con la disponibilidad visible. */
.checklist-direct-planner{display:grid;gap:14px}
.checklist-direct-planner .preventive-form-heading{margin-right:28px}
.checklist-direct-planner .field-row{gap:12px}
.checklist-direct-planner>label{display:grid;gap:6px;color:#273b4e;font-size:12px;font-weight:800}
.checklist-direct-planner select,.checklist-direct-planner input{width:100%;min-height:42px;margin-top:5px}
.checklist-planner-summary{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid #c8dbeb;border-radius:10px;background:#f5faff;color:#244661}
.checklist-planner-summary.free{border-color:#b9dfca;background:#f4fcf7;color:#17613c}
.checklist-planner-summary.busy{border-color:#f0d8a7;background:#fffaf0;color:#76510d}
.checklist-planner-summary.blocked{border-color:#efc2c4;background:#fff7f7;color:#922d32}
.planner-summary-icon{display:grid;place-items:center;flex:0 0 21px;width:21px;height:21px;border-radius:50%;background:currentColor;color:#fff;font-size:12px;font-weight:900;line-height:1}
.checklist-planner-summary div{display:grid;gap:2px}
.checklist-planner-summary strong{font-size:12px}
.checklist-planner-summary small,.checklist-planner-note{font-size:10px;line-height:1.45}
.checklist-planner-note{margin:-4px 0 0;color:#687b8b}
.checklist-direct-planner .modal-actions{margin-top:2px}
@media(max-width:700px){.checklist-direct-planner .field-row{display:grid;grid-template-columns:1fr}.checklist-direct-planner .modal-actions{display:grid;grid-template-columns:1fr 1fr}.checklist-direct-planner .modal-actions button{min-height:44px}}

/* Código de color único para las visitas preventivas. */
.preventive-checklist-schedules>button.checklist-today{background:#f0faf5;border-left:4px solid #188657;padding-left:9px}
.preventive-checklist-schedules>button.checklist-today time{color:#126b45}
.preventive-checklist-schedules>button.checklist-today .badge{background:#d9f2e5;color:#126b45}
.preventive-checklist-schedules>button.checklist-planned{background:#f4f9ff;border-left:4px solid #3379b8;padding-left:9px}
.preventive-checklist-schedules>button.checklist-planned time{color:#24669f}
.preventive-checklist-schedules>button.checklist-planned .badge{background:#e0effc;color:#225f95}
.preventive-checklist-schedules>button.checklist-overdue{background:#fff5f5;border-left:4px solid #bd3036;padding-left:9px}
.preventive-checklist-schedules>button.checklist-overdue .badge{background:#fbe3e4;color:#a72329}
.preventive-checklist-schedules>button.checklist-unscheduled{background:#fffaf0;border-left:4px solid #c7871c;padding-left:9px}
.preventive-checklist-schedules>button.checklist-unscheduled .badge{background:#fff0ca;color:#855400}
.agenda-task-card.checklist.checklist-today{border-left-color:#188657;background:#f0faf5}.agenda-task-card.checklist.checklist-today time{color:#126b45}
.agenda-task-card.checklist.checklist-planned{border-left-color:#3379b8;background:#f4f9ff}.agenda-task-card.checklist.checklist-planned time{color:#24669f}
.agenda-task-card.checklist.checklist-overdue{border-left-color:#bd3036;background:#fff5f5}.agenda-task-card.checklist.checklist-overdue time{color:#a72329}

/* Preventivo separado por decisión, no por una lista mezclada. */
.preventive-action-board>header{align-items:flex-end}
.preventive-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px}
.preventive-action-section{overflow:hidden;border:1px solid #dce6ec;border-radius:11px;background:#fff}
.preventive-action-section.overdue{grid-column:1/-1}
.preventive-action-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 13px 10px;border-bottom:1px solid #e8eef2}
.preventive-action-section>header h3{margin:0;color:#253b4d;font-size:12px}
.preventive-action-section>header p{margin:3px 0 0;color:#718291;font-size:9px;line-height:1.4}
.preventive-action-section>header>span{display:grid;place-items:center;min-width:22px;height:22px;border-radius:50%;background:#edf3f6;color:#3f5e74;font-size:10px;font-weight:850}
.preventive-action-section.today>header{background:#f0faf5}.preventive-action-section.today>header>span{background:#d8f0e3;color:#126b45}
.preventive-action-section.planned>header{background:#f4f9ff}.preventive-action-section.planned>header>span{background:#dceefd;color:#24669f}
.preventive-action-section.pending>header{background:#fffaf0}.preventive-action-section.pending>header>span{background:#ffedc8;color:#855400}
.preventive-action-section.overdue>header{background:#fff5f5}.preventive-action-section.overdue>header>span{background:#fbe0e1;color:#a72329}
.preventive-action-row{display:grid;grid-template-columns:69px minmax(0,1fr) auto 11px;gap:8px;align-items:center;width:100%;padding:11px 13px;border:0;border-bottom:1px solid #edf1f3;background:#fff;color:#283f50;text-align:left;cursor:pointer}
.preventive-action-row:last-child{border-bottom:0}.preventive-action-row:hover{background:#f8fbfc}.preventive-action-row time{font-size:9px;font-weight:850}.preventive-action-row b,.preventive-action-row small{display:block}.preventive-action-row b{font-size:11px}.preventive-action-row small{margin-top:3px;color:#718291;font-size:9px}.preventive-action-row i{color:#8fa1ad;font-size:18px;font-style:normal}.preventive-action-row.today time{color:#126b45}.preventive-action-row.planned time{color:#24669f}.preventive-action-row.pending time{color:#a26b09}.preventive-action-row.overdue time{color:#a72329}
.checklist-visit-decisions{display:grid;gap:9px;margin-top:16px}.checklist-visit-decisions button{display:grid;gap:3px;width:100%;padding:12px 14px;text-align:left}.checklist-visit-decisions small{font-size:10px;font-weight:500;opacity:.8}.danger-outline{border:1px solid #e7bdc0!important;background:#fff8f8!important;color:#a72329!important}
@media(max-width:900px){.preventive-action-grid{grid-template-columns:1fr}.preventive-action-section.overdue{grid-column:auto}}@media(max-width:700px){.preventive-action-board>header{align-items:stretch}.preventive-action-grid{padding:10px;gap:10px}.preventive-action-row{grid-template-columns:59px minmax(0,1fr) auto 8px;padding:10px}.preventive-action-row .badge{font-size:8px}}

/* Al abrir una visita ya planificada, sus datos son informativos y no de programación. */
.scheduled-checklist-notice{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 4px;padding:10px 12px;border:1px solid #b9dfca;border-radius:9px;background:#f2fbf6;color:#17613c;font-size:10px}.scheduled-checklist-notice b{font-size:11px}.scheduled-checklist-notice span{color:#397259}.monthly-checklist-form .checklist-locked-field{pointer-events:none;opacity:.72;background:#f1f5f7!important;color:#526876!important}
@media(max-width:700px){.scheduled-checklist-notice{align-items:flex-start;flex-direction:column;gap:3px}}

/* Confirmación final de una revisión preventiva. */
.checklist-completion{display:flex;align-items:center;gap:13px;padding:6px 30px 16px 0}.checklist-completion-score{display:grid;place-items:center;flex:0 0 62px;width:62px;height:62px;border-radius:50%;background:#e6eff8;color:#235f95;font-size:17px;font-weight:900}.checklist-completion.tone-green .checklist-completion-score{background:#dff3e8;color:#17613c}.checklist-completion.tone-amber .checklist-completion-score{background:#fff0cd;color:#845300}.checklist-completion.tone-red .checklist-completion-score{background:#fbe0e1;color:#a72329}.checklist-completion small{color:#52718a;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.checklist-completion h2{margin:3px 0;color:#253b4d;font-size:20px}.checklist-completion p{margin:0;color:#657886;font-size:11px}.checklist-completion-details{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:3px 0 17px}.checklist-completion-details article{display:grid;gap:4px;padding:12px;border:1px solid #dce6ec;border-radius:10px;background:#f9fbfc}.checklist-completion-details span{color:#718291;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.checklist-completion-details strong{color:#28465d;font-size:17px}.checklist-completion-details small{color:#6e808d;font-size:10px;line-height:1.4}@media(max-width:700px){.checklist-completion-details{grid-template-columns:1fr}.checklist-completion-modal .modal-actions{display:grid;grid-template-columns:1fr 1fr}}

/* Arrastrar y soltar tareas de la agenda entre días y técnicos (solo escritorio, con confirmación siempre). */
.agenda-task-card.draggable-task{cursor:grab;-webkit-user-drag:element;user-select:none;-webkit-user-select:none;touch-action:none}
.agenda-task-card.draggable-task:active{cursor:grabbing}
.agenda-task-card.dragging{opacity:.35}
.agenda-day-cell.drop-target{background:#eaf2fd;outline:2px dashed #2359a6;outline-offset:-2px;border-radius:6px}
@media(max-width:820px){.agenda-task-card.draggable-task{cursor:default;-webkit-user-drag:none;touch-action:auto}}

/* Vista "Día": lista espaciosa de todo lo programado ese día, restaurante como dato principal. */
.day-agenda{padding:20px}
.day-agenda-summary{display:flex;flex-wrap:wrap;gap:28px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.day-agenda-summary>div{display:flex;flex-direction:column;gap:2px}
.day-agenda-summary strong{font-size:22px;color:#182a38}
.day-agenda-summary span{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.day-agenda-summary>div.warn strong{color:#ab1f24}
.day-agenda-absences{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.day-agenda-absences span{padding:6px 10px;border-radius:8px;background:#fff5f5;color:#ab1f24;font-size:11px}
.day-agenda-absences span b{font-weight:800}
.day-agenda-list{display:grid;gap:10px}
.day-agenda-row{display:grid;grid-template-columns:92px minmax(0,1fr) auto 14px;gap:16px;align-items:center;width:100%;padding:16px 18px;border:1px solid var(--line);border-left:4px solid #3a73ad;border-radius:12px;background:#fff;text-align:left;cursor:pointer;transition:.15s ease}
.day-agenda-row:hover{border-color:#8eabc7;box-shadow:0 6px 18px rgba(23,33,43,.08);transform:translateY(-1px)}
.day-agenda-row.amber{border-left-color:#d49325}
.day-agenda-row.red{border-left-color:#c3272d}
.day-agenda-row.gray{border-left-color:#87949d}
.day-agenda-row.checklist{border-left-color:#2c6aa2;background:#f7fbff}
.day-agenda-row.completed{opacity:.7}
.day-agenda-row.cancelled{opacity:.55}
.day-agenda-time{font-size:13px;font-weight:800;color:#245b91;white-space:nowrap}
.day-agenda-main{display:grid;gap:3px;min-width:0}
.day-agenda-main strong{overflow:hidden;font-size:15px;color:#182a38;text-overflow:ellipsis;white-space:nowrap}
.day-agenda-main small{overflow:hidden;color:#4a5b68;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.day-agenda-main span{color:var(--muted);font-size:11px}
.day-agenda-row b{color:#9aa6ae;font-size:16px}
.day-agenda-add{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:16px;width:100%;min-height:44px}
.day-agenda.past{opacity:.85}
@media(max-width:700px){.day-agenda{padding:14px}.day-agenda-row{grid-template-columns:64px minmax(0,1fr) auto;gap:10px;padding:13px}.day-agenda-row b{display:none}.day-agenda-summary{gap:16px}.day-agenda-summary strong{font-size:18px}}

/* Vista de Agenda a pantalla completa: oculta menú lateral y cabecera para dar todo el ancho a la semana. */
.agenda-head-actions{display:flex;align-items:center;gap:10px}
.agenda-fullscreen-corner{display:grid;place-items:center;width:40px;height:40px;border:1px solid #d7e0e6;border-radius:9px;background:#f8fafb;color:#2d4352;font-size:17px;line-height:1;cursor:pointer;transition:.15s ease}
.agenda-fullscreen-corner:hover{border-color:#a9c6e6;background:#eaf2fd;color:#195993}
.agenda-fullscreen-corner.active{border-color:#2c6aa2;background:#2c6aa2;color:#fff}
@media(max-width:820px){.agenda-fullscreen-corner{display:none}}
@media(max-width:540px){.agenda-head-actions{width:100%;justify-content:space-between}}
.layout.agenda-fullscreen-mode{display:block}
.layout.agenda-fullscreen-mode .sidebar{display:none}
.layout.agenda-fullscreen-mode .topbar{display:none}
.layout.agenda-fullscreen-mode .page{padding-bottom:20px}
.layout.agenda-fullscreen-mode .content{max-width:none;padding:16px 22px 30px}
.layout.agenda-fullscreen-mode .agenda-professional-head{position:sticky;top:0;z-index:5;margin-bottom:10px}
.layout.agenda-fullscreen-mode .professional-week-agenda .week-head,.layout.agenda-fullscreen-mode .professional-week-agenda .week-row{min-width:0;grid-template-columns:180px repeat(7,1fr)}
.layout.agenda-fullscreen-mode .professional-week-agenda .week-row{min-height:180px}
.layout.agenda-fullscreen-mode .agenda-day-cell{min-height:178px;padding:8px;gap:7px}
.layout.agenda-fullscreen-mode .agenda-person{padding:16px}
.layout.agenda-fullscreen-mode .agenda-person strong{font-size:13px}
.layout.agenda-fullscreen-mode .agenda-person small{font-size:11px}
.layout.agenda-fullscreen-mode .agenda-task-card{padding:11px}
.layout.agenda-fullscreen-mode .agenda-task-card time{font-size:11px}
.layout.agenda-fullscreen-mode .agenda-task-card strong{font-size:13px;line-height:1.35;-webkit-line-clamp:3}
.layout.agenda-fullscreen-mode .agenda-task-card small{font-size:11px}
.layout.agenda-fullscreen-mode .agenda-task-meta,.layout.agenda-fullscreen-mode .agenda-comment-bubble,.layout.agenda-fullscreen-mode .agenda-route-link{font-size:10px}

/* Tarjeta destacada "Mi agenda" en el panel principal, para supervisores/franquiciados. */
.my-agenda-card{display:flex;align-items:center;gap:14px;width:100%;margin-bottom:14px;padding:16px 18px;border:1px solid #c9dbe8;border-radius:12px;background:linear-gradient(135deg,#eef5fa,#f7fbff);box-shadow:var(--shadow);text-align:left;cursor:pointer}
.my-agenda-card:hover{border-color:#7fa8c8}
.my-agenda-card .icon{width:26px;height:26px;color:#2b6b9f;flex:none}
.my-agenda-card>div{display:grid;gap:2px;flex:1;min-width:0}
.my-agenda-card span{color:#2b6b9f;font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.my-agenda-card strong{font-size:19px;letter-spacing:-.03em}
.my-agenda-card small{color:#5a7180;font-size:11px}
.my-agenda-card>b{color:#2b6b9f;font-size:22px}
@media(max-width:700px){.my-agenda-card{padding:14px}.my-agenda-card strong{font-size:16px}}

/* Detalle de incidencia: aspecto más profesional en PC */
.detail-summary{display:grid!important;grid-template-columns:52px minmax(0,1fr) auto;gap:16px;align-items:center;padding:20px 22px!important;border:1px solid #e1e6ea;box-shadow:0 8px 26px rgba(23,33,43,.06)}
.detail-summary-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:#eaf2fd;color:#195993;font-size:15px;font-weight:900;text-transform:uppercase;letter-spacing:.02em}
.detail-summary-icon.red{background:#fff0f0;color:#ab1f24}
.detail-summary-icon.amber{background:#fff5dc;color:#905900}
.detail-summary-icon.blue{background:#eaf2fd;color:#195993}
.detail-summary-icon.gray{background:#edf1f3;color:#586570}
.detail-summary>div:last-child{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.detail-summary h2{letter-spacing:-.01em}
.detail-person{display:flex!important;align-items:center;gap:8px;font-weight:750}
.detail-person .profile-avatar{width:26px;height:26px;flex:none;border-radius:8px;font-size:9px;background:#eaf2fd;color:#195993}
.detail-person.unassigned{color:#8a97a1;font-weight:600}
.detail-person.unassigned .profile-avatar{background:#edf1f3;color:#8a97a1}
.detail-grid .detail-side>.panel{border:1px solid #e1e6ea;box-shadow:0 6px 20px rgba(23,33,43,.05)}
.detail-grid .detail-side>.panel.planning{border-left:3px solid #2359a6}
.detail-grid .detail-side>.panel:has(.action-stack){border-left:3px solid #8a97a1}
.detail-grid .mobile-plan-summary{display:grid!important;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;margin-bottom:2px;padding:12px 13px;border-radius:10px;background:#eef5fc}
.detail-grid .mobile-plan-summary::before{content:"";display:block;width:34px;height:34px;border-radius:9px;background:#2359a6;grid-row:1/3}
.detail-grid .mobile-plan-summary strong{grid-column:2;font-size:13px}
.detail-grid .mobile-plan-summary span,.detail-grid .mobile-plan-summary small{grid-column:2;color:#4a7398;font-size:10px}
.detail-grid .planning.locked .planning-fields{display:none!important}
@media(max-width:820px){.detail-summary{grid-template-columns:44px minmax(0,1fr);padding:16px!important}.detail-summary>div:last-child{grid-column:1/-1;justify-content:flex-start}.detail-summary-icon{width:44px;height:44px;font-size:12px}}

/* Programar trabajo: técnico preseleccionado desde el + de la agenda, y técnicos de apoyo fusionados en el mismo formulario */
.operational-day-availability [data-operational-day-team]>button.preselected{background:#eaf2fd;border-color:#a9c6e6;box-shadow:inset 0 0 0 1px #a9c6e6}
.operational-support-team{margin-top:14px}
.operational-support-team>label{grid-template-columns:20px 34px minmax(0,1fr)}
.operational-support-team>label .profile-avatar{width:34px;height:34px}

/* Navegación de zonas y estado de guardado para las revisiones en móvil/tablet. */
.checklist-zone-nav{display:flex;gap:8px;overflow:auto;margin:0;padding:12px 22px 8px;background:#fff;scrollbar-width:none}.checklist-zone-nav::-webkit-scrollbar{display:none}.checklist-zone-nav button{display:flex;align-items:center;gap:7px;min-width:max-content;padding:8px 10px;border:1px solid #d9e4ec;border-radius:9px;background:#f8fbfd;color:#294252;font-size:10px;font-weight:800;text-align:left;cursor:pointer}.checklist-zone-nav button:hover,.checklist-zone-nav button:focus-visible{border-color:#2b6b9f;background:#eaf3fb;outline:none}.checklist-zone-nav b{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#245f95;color:#fff;font-size:9px}.checklist-zone-nav span{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checklist-draft-indicator{display:flex;align-items:center;gap:6px;margin:0;padding:0 22px 14px;background:#fff;color:#627682;font-size:10px;font-weight:700}.checklist-draft-indicator>span{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#e7f4ea;color:#257044;font-size:10px}.checklist-draft-indicator.saved{color:#176f43}.checklist-draft-indicator.saved>span{background:#257044;color:#fff}@media(max-width:650px){.monthly-checklist-modal .modal-close{position:fixed;top:12px;right:14px;z-index:3;border-color:#ffffff44;background:#ffffff1c;color:#fff}.monthly-checklist-form-head{padding-right:64px!important}.checklist-zone-nav{position:sticky;top:0;z-index:2;padding:10px 14px 8px;border-bottom:1px solid #e4ebef;box-shadow:0 4px 12px rgba(23,33,43,.05)}.checklist-draft-indicator{padding:0 14px 10px}.checklist-group{scroll-margin-top:62px}.checklist-group summary{min-height:60px}.checklist-item header{align-items:flex-start}.checklist-item header>div{min-width:0}.checklist-item header strong{font-size:13px}.checklist-photo-button{min-width:52px;justify-content:center}.checklist-photo-button i{display:none}.checklist-item .checklist-score>div{gap:7px}.checklist-item .checklist-score label span{min-height:52px}.checklist-item .checklist-score label small{font-size:9px}.monthly-checklist-bottom{position:sticky;bottom:0;z-index:3;margin-bottom:0!important;border:1px solid #d9e4ec;border-radius:14px 14px 0 0!important;box-shadow:0 -10px 22px rgba(23,33,43,.12)}}

/* En teléfono no se usan elementos flotantes: el navegador no recalcula alturas
   al abrir teclado, cámara o acordeones y el desplazamiento queda estable. */
@media(max-width:650px){.monthly-checklist-modal .modal-close{position:absolute}.checklist-zone-nav{position:static;box-shadow:none}.checklist-group{scroll-margin-top:12px}.monthly-checklist-bottom{position:static;margin-bottom:14px!important;border-radius:14px!important;box-shadow:none}.monthly-checklist-form{padding-bottom:6px}.checklist-photo-preview img{max-height:180px;object-fit:cover}}

/* Evita zoom al tocar un campo y rebotes de la vista durante una revisión. */
@media(max-width:650px){.monthly-checklist-modal,.monthly-checklist-form{touch-action:pan-y;overscroll-behavior:contain;-webkit-text-size-adjust:100%;overflow-anchor:none}.monthly-checklist-form input,.monthly-checklist-form select,.monthly-checklist-form textarea{font-size:16px!important}.monthly-checklist-form .checklist-score span{touch-action:manipulation}}

/* Centro de incidencias: el supervisor ve la carga prioritaria antes de entrar al listado. */
.incidents-workspace-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin:2px 0 16px;padding:20px 22px;border-radius:14px;background:linear-gradient(125deg,#172735,#2a5879);color:#fff}.incidents-workspace-head>div:first-child{min-width:0}.incidents-workspace-head>div:first-child>span{display:block;margin-bottom:4px;color:#bbd6ea;font-size:10px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.incidents-workspace-head h2{margin:0;font-size:26px;letter-spacing:-.04em}.incidents-workspace-head p{max-width:560px;margin:5px 0 0;color:#d4e2eb;font-size:12px;line-height:1.45}.incident-quick-actions{display:flex;gap:8px;flex:none}.incident-quick-actions button{display:grid;gap:2px;min-width:96px;padding:10px 12px;border:1px solid #ffffff30;border-radius:10px;background:#ffffff12;color:#fff;text-align:left;cursor:pointer}.incident-quick-actions button:hover,.incident-quick-actions button.active{border-color:#fff;background:#fff;color:#1c384d}.incident-quick-actions button.danger b{color:#ffd1d3}.incident-quick-actions button.active.danger b{color:#b22329}.incident-quick-actions b{font-size:20px;line-height:1}.incident-quick-actions span{font-size:9px;font-weight:750;white-space:nowrap}@media(max-width:820px){.incidents-workspace-head{align-items:stretch;flex-direction:column;padding:17px}.incidents-workspace-head h2{font-size:22px}.incident-quick-actions{width:100%;overflow:auto}.incident-quick-actions button{min-width:112px;flex:1}}

/* Agenda de escritorio: capacidad y preventivos visibles sin abrir cada día. */
.agenda-workspace-head{display:grid;grid-template-columns:minmax(250px,1fr) minmax(510px,1.6fr);gap:22px;align-items:center;margin:2px 0 16px;padding:20px 22px;border:1px solid #d8e4ec;border-radius:14px;background:linear-gradient(135deg,#f8fbfd,#eef5fa)}.agenda-workspace-head>div:first-child>span{display:block;margin-bottom:5px;color:#2d6a9d;font-size:10px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.agenda-workspace-head h2{margin:0;color:#172735;font-size:25px;letter-spacing:-.04em}.agenda-workspace-head p{margin:5px 0 0;color:#5e7383;font-size:12px;line-height:1.45}.agenda-capacity-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.agenda-capacity-summary article{min-width:0;padding:11px;border:1px solid #d9e5ec;border-radius:10px;background:#fff}.agenda-capacity-summary article.attention{border-color:#efc4c6;background:#fff7f7}.agenda-capacity-summary span,.agenda-capacity-summary small{display:block;overflow:hidden;color:#718391;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.agenda-capacity-summary strong{display:block;margin:4px 0 2px;color:#19374d;font-size:21px;line-height:1}.agenda-capacity-summary article.attention strong{color:#b3242b}@media(max-width:1100px){.agenda-workspace-head{grid-template-columns:1fr}.agenda-capacity-summary{max-width:680px}}@media(max-width:820px){.agenda-workspace-head{display:none}}

.agenda-management-compact{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:-8px 0 10px}.agenda-management-compact button{min-height:36px;padding:7px 11px;font-size:10px}.agenda-management-compact .text-button{margin-left:2px;color:#2a6699}@media(max-width:820px){.agenda-management-compact{display:none}}

/* Menú contextual del calendario: acciones rápidas sin una segunda pantalla. */
.agenda-context-menu{position:fixed;z-index:1000;width:240px;margin:0;padding:7px;border:1px solid #cfdde6;border-radius:14px;background:#fff;box-shadow:0 18px 46px rgba(20,36,49,.24);list-style:none;animation:agenda-context-in .14s ease-out}.agenda-context-menu header{display:grid;grid-template-columns:34px minmax(0,1fr) 28px;gap:9px;align-items:center;padding:9px 10px 11px;border-bottom:1px solid #e7edf0}.agenda-context-menu header>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#173a57,#2c76a8);color:#fff;font-size:9px;font-weight:900}.agenda-context-menu header small{display:block;color:#2a6699;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.agenda-context-menu header strong{display:block;overflow:hidden;margin-top:2px;color:#243747;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.agenda-context-menu .agenda-context-close{display:grid;grid-template-columns:1fr;width:28px;height:28px;padding:0;border:1px solid #e2e9ed;border-radius:8px;background:#f7fafb;color:#627783;font-size:18px;font-weight:400;line-height:1;text-align:center}.agenda-context-menu .agenda-context-close:hover{background:#edf3f6;color:#1f4f73}.agenda-context-menu button{display:grid;grid-template-columns:25px minmax(0,1fr) 10px;gap:8px;align-items:center;width:100%;padding:10px 9px;border:0;border-radius:8px;background:transparent;color:#2d4352;font-size:11px;font-weight:700;text-align:left;cursor:pointer}.agenda-context-menu button i{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#edf4f8;color:#276596;font-size:13px;font-style:normal}.agenda-context-menu button b{color:#94a4ad;font-size:15px;font-weight:500}.agenda-context-menu button:hover,.agenda-context-menu button:focus-visible{background:#edf5fa;color:#195993;outline:none}.agenda-context-menu button[data-agenda-context="remove-task"]{color:#a8222a}.agenda-context-menu button[data-agenda-context="remove-task"] i{background:#fff0f0;color:#b4242b}.agenda-context-menu button[data-agenda-context="remove-task"]:hover{background:#fff2f2}@keyframes agenda-context-in{from{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:820px){.agenda-context-menu{display:none}}

/* Avisos compactos del menú lateral. */


/* Identificación de participantes al cerrar una revisión. */
.checklist-attendees{margin:18px 0 10px;padding:14px;border:1px solid #d3e2eb;border-radius:11px;background:#f7fbfd}.checklist-attendees header{margin-bottom:11px}.checklist-attendees header span{color:#286596;font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.checklist-attendees h3{margin:3px 0;color:#28445a;font-size:14px}.checklist-attendees p{margin:0;color:#6c7f8d;font-size:10px}.checklist-attendees label{display:grid;gap:5px;color:#2d4456;font-size:11px;font-weight:800}.checklist-attendees input{min-height:41px;padding:0 11px;border:1px solid #cbdbe5;border-radius:8px;background:#fff;color:#253b4d;font-size:12px}@media(max-width:700px){.checklist-attendees .field-row{display:grid;grid-template-columns:1fr;gap:9px}}
.checklist-signature-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:14px}.checklist-signature-grid>label{gap:7px}.signature-pad{position:relative;display:block;overflow:hidden;border:1px dashed #8eabba;border-radius:9px;background:#fff}.signature-pad canvas{display:block;width:100%;height:112px;touch-action:none;cursor:crosshair}.signature-pad button{position:absolute;top:7px;right:7px;padding:4px 7px;border:0;border-radius:6px;background:#edf3f6;color:#526f82;font-size:9px;font-weight:800;cursor:pointer}.signature-pad button:hover{background:#ddeaf1;color:#244d6c}@media(max-width:700px){.checklist-signature-grid{grid-template-columns:1fr}}
.preventive-history{margin:0 14px 14px;overflow:hidden}
.preventive-history>header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding:14px 15px;border-bottom:1px solid #e5edf1}
.preventive-history header span{color:#286596;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.preventive-history h3{margin:3px 0;color:#28445a;font-size:15px}
.preventive-history p{margin:0;color:#71838f;font-size:11px}
.preventive-history-filters{display:flex;gap:7px}
.preventive-history-filters select{min-height:34px;padding:0 8px;border:1px solid #cbdbe5;border-radius:7px;background:#fff;color:#314b5d;font-size:11px;font-weight:700}
.preventive-history-list>button{display:grid;grid-template-columns:86px minmax(0,1fr) auto auto 10px;gap:9px;align-items:center;width:100%;padding:11px 15px;border:0;border-bottom:1px solid #edf1f3;background:#fff;color:#30495c;text-align:left;cursor:pointer;transition:background .16s ease}
.preventive-history-list>button:hover{background:#f4f9fc}
.preventive-history-list time{font-size:11px;font-weight:800;text-transform:capitalize;color:#5b7180}
.preventive-history-list strong,.preventive-history-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.preventive-history-list strong{font-size:12px;color:#263f52}
.preventive-history-list small{margin-top:2px;font-size:10px;color:#788995}
.preventive-history-list .badge{white-space:nowrap}
.preventive-history-list i{color:#5e8cac;font-size:20px;font-style:normal;line-height:1}
.preventive-history-limit{padding:10px 15px!important;color:#7a8a96!important;font-size:10px!important}
@media(max-width:700px){.preventive-history{margin:0 10px 10px}.preventive-history>header{display:block;padding:13px}.preventive-history-filters{display:grid;grid-template-columns:1fr 1fr;margin-top:11px}.preventive-history-filters select{width:100%;min-width:0}.preventive-history-list>button{grid-template-columns:62px minmax(0,1fr) auto 8px;gap:6px;padding:10px 11px}.preventive-history-list>button .badge:nth-of-type(1){display:none}.preventive-history-list time{font-size:9px}.preventive-history-list strong{font-size:11px}.preventive-history-list small{font-size:9px}.preventive-history-list i{font-size:17px}}
.machine-health-breakdown{margin:14px 0;padding:14px;border:1px solid #d5e3eb;border-radius:12px;background:#f8fbfd}.machine-health-breakdown header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px}.machine-health-breakdown header span{display:block;color:#286596;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.machine-health-breakdown h3{margin:3px 0 0;color:#28445a;font-size:14px}.machine-health-breakdown header small{color:#758793;font-size:9px;text-align:right}.machine-health-breakdown>div{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.machine-health-breakdown article{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border:1px solid #dce8ee;border-radius:8px;background:#fff}.machine-health-breakdown strong,.machine-health-breakdown small{display:block}.machine-health-breakdown strong{color:#314a5d;font-size:10px}.machine-health-breakdown article small{margin-top:3px;color:#71838f;font-size:8px;line-height:1.3}.machine-health-breakdown b{display:grid;place-items:center;min-width:35px;height:29px;border-radius:7px;background:#e8f1f7;color:#286596;font-size:10px}.machine-health-breakdown b.green{background:#e4f5eb;color:#197044}.machine-health-breakdown b.amber,.machine-health-breakdown b.orange{background:#fff1d7;color:#8a5900}.machine-health-breakdown b.red{background:#f9e2e3;color:#a5272b}.machine-health-breakdown footer{margin-top:10px;color:#6f818e;font-size:9px}@media(max-width:760px){.machine-health-breakdown header{align-items:flex-start;flex-direction:column}.machine-health-breakdown header small{text-align:left}.machine-health-breakdown>div{grid-template-columns:1fr 1fr}}

/* Directorio de maquinaria por sede: acceso rápido antes de abrir fichas individuales. */
.equipment-restaurant-directory{margin:0 0 16px;overflow:hidden}.equipment-restaurant-directory>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px 14px;border-bottom:1px solid #e4edf1}.equipment-restaurant-directory header span{display:block;color:#286596;font-size:9px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.equipment-restaurant-directory h3{margin:4px 0;color:#26445b;font-size:17px}.equipment-restaurant-directory p{margin:0;color:#70838f;font-size:11px}.equipment-restaurant-all{display:inline-flex;align-items:center;gap:9px;min-height:38px;padding:0 12px;border:1px solid #cbdde7;border-radius:9px;background:#fff;color:#2d5c7e;font-size:11px;font-weight:800;white-space:nowrap;cursor:pointer}.equipment-restaurant-all b{display:grid;place-items:center;min-width:21px;height:21px;border-radius:99px;background:#e5f0f6;color:#1d6290}.equipment-restaurant-all.selected,.equipment-restaurant-all:hover{border-color:#2d78a7;background:#edf7fc}.equipment-restaurant-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:10px;padding:14px}.equipment-restaurant-card{display:grid;grid-template-columns:33px minmax(0,1fr) auto 12px;align-items:center;gap:10px;width:100%;min-height:74px;padding:12px;border:1px solid #dce7ed;border-radius:11px;background:#fff;color:#294458;text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.equipment-restaurant-card:hover,.equipment-restaurant-card.selected{border-color:#5d9bc0;box-shadow:0 5px 14px rgba(27,75,104,.1);transform:translateY(-1px)}.equipment-restaurant-icon{display:grid;place-items:center;width:33px;height:33px;border-radius:9px;background:#e8f2f7;color:#286596}.equipment-restaurant-icon svg{width:18px;height:18px}.equipment-restaurant-main{min-width:0}.equipment-restaurant-main strong,.equipment-restaurant-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.equipment-restaurant-main strong{font-size:12px;color:#294459}.equipment-restaurant-main small{margin-top:4px;color:#70838d;font-size:9px}.equipment-restaurant-health{display:grid;place-items:center;min-width:34px;height:35px;border-radius:8px;background:#e8f2f7;color:#286596;font-size:13px;font-weight:900}.equipment-restaurant-health small{font-size:7px;font-weight:800;text-transform:uppercase}.equipment-restaurant-health.warning{background:#fff1d9;color:#8a5a00}.equipment-restaurant-health.danger{background:#fae4e5;color:#a52b30}.equipment-restaurant-health.healthy{background:#e5f5eb;color:#197044}.equipment-restaurant-card>i{color:#60859d;font-size:20px;font-style:normal}@media(max-width:700px){.equipment-restaurant-directory{margin:0 0 12px}.equipment-restaurant-directory>header{display:block;padding:15px}.equipment-restaurant-all{margin-top:12px;width:100%;justify-content:space-between}.equipment-restaurant-list{grid-template-columns:1fr;padding:10px;gap:8px}.equipment-restaurant-card{min-height:68px}.equipment-restaurant-card:hover{transform:none}}

.equipment-directory-actions{display:flex;align-items:center;gap:9px;padding:0 20px 15px;border-bottom:1px solid #e4edf1}.equipment-directory-actions .primary,.equipment-directory-actions .secondary{min-height:36px;padding:0 12px;font-size:11px}.equipment-directory-actions small{margin-left:auto;color:#6e8290;font-size:10px}.machine-invoices{margin-top:12px}.machine-invoices p{margin:0;padding:12px;color:#6b7f8d;font-size:11px;line-height:1.5}@media(max-width:700px){.equipment-directory-actions{display:grid;grid-template-columns:1fr 1fr;padding:0 14px 13px}.equipment-directory-actions .primary,.equipment-directory-actions .secondary{width:100%;padding:0 8px;font-size:10px}.equipment-directory-actions small{grid-column:1/-1;margin:0;font-size:9px;line-height:1.35}}

/* Maquinaria: una lectura de arriba abajo, pensada para decidir antes de abrir una ficha. */
.machinery-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 16px;padding:4px 2px}.machinery-page-head span,.machinery-workspace header span,.machinery-inventory header span{display:block;color:#286596;font-size:9px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.machinery-page-head h2{margin:4px 0;color:#26445b;font-size:25px}.machinery-page-head p{max-width:600px;margin:0;color:#6d818e;font-size:12px;line-height:1.45}.machinery-actions{display:flex;gap:8px;white-space:nowrap}.machinery-actions button{min-height:38px;padding:0 12px;font-size:11px}.machinery-directory{margin-bottom:14px}.machinery-workspace{margin:0 0 14px;overflow:hidden;border:1px solid #d9e7ee;border-radius:13px;background:#f4f9fc}.machinery-workspace>header,.machinery-inventory>header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding:16px 18px 13px;border-bottom:1px solid #dce8ee}.machinery-workspace h3,.machinery-inventory h3{margin:3px 0;color:#29475b;font-size:16px}.machinery-workspace p,.machinery-inventory p{margin:0;color:#70838f;font-size:11px}.machinery-count{display:grid;place-items:center;min-width:61px;min-height:30px;padding:0 8px;border-radius:8px;background:#e0eef5;color:#236489;font-size:10px;font-weight:850}.machine-work-list{background:#fff}.machine-work-row{display:grid;grid-template-columns:42px minmax(160px,1fr) minmax(160px,1fr) 12px;align-items:center;gap:13px;width:100%;padding:12px 18px;border:0;border-bottom:1px solid #e7eef2;background:#fff;color:#2d485a;text-align:left;cursor:pointer;transition:background .15s ease}.machine-work-row:last-child{border-bottom:0}.machine-work-row:hover{background:#f5fafc}.machine-work-score{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#e5f4eb;color:#197044;font-size:13px;font-weight:900}.machine-work-score.amber,.machine-work-score.orange{background:#fff0d7;color:#865700}.machine-work-score.red{background:#fae2e4;color:#a1272d}.machine-work-main,.machine-work-status{min-width:0}.machine-work-main strong,.machine-work-main small,.machine-work-status b,.machine-work-status small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.machine-work-main strong{font-size:12px;color:#28455a}.machine-work-main small,.machine-work-status small{margin-top:3px;color:#728490;font-size:9px}.machine-work-status b{font-size:10px;color:#405b6e}.machine-work-row>i{color:#5e87a0;font-size:20px;font-style:normal}.machinery-inventory{overflow:hidden}.machinery-inventory>header>span{color:#68808e;font-size:10px;font-weight:800;letter-spacing:0;text-transform:none}.machinery-search{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:13px 18px;border-bottom:1px solid #e4edf1;background:#f9fcfd}.machinery-search label{flex:1;min-width:220px}.machinery-search label span{display:block;margin-bottom:5px;color:#567080;font-size:10px;font-weight:800}.machinery-search input{width:100%;min-height:37px;padding:0 10px;border:1px solid #cbdde6;border-radius:8px;background:#fff;color:#29465b;font-size:11px}.machinery-search .equipment-health-filters{margin:0}.inventory-list{max-height:540px;overflow:auto}@media(max-width:700px){.machinery-page-head{display:block;margin-bottom:12px}.machinery-page-head h2{font-size:22px}.machinery-actions{margin-top:12px}.machinery-actions button{flex:1}.machinery-workspace>header,.machinery-inventory>header{padding:14px}.machinery-workspace>header{align-items:flex-start}.machine-work-row{grid-template-columns:38px minmax(0,1fr) 10px;gap:9px;padding:11px 13px}.machine-work-status{grid-column:2}.machine-work-score{width:34px;height:34px;font-size:11px}.machine-work-row>i{grid-column:3;grid-row:1;align-self:center}.machinery-search{display:block;padding:12px}.machinery-search label{min-width:0}.machinery-search .equipment-health-filters{margin-top:10px;overflow:auto;flex-wrap:nowrap;padding-bottom:2px}.machinery-search .equipment-health-filters button{white-space:nowrap}.inventory-list{max-height:none}}

/* Proveedores por restaurante: una misma ficha, con relación distinta por cada sede. */
.restaurant-provider-panel{margin:18px 0;padding:16px;border:1px solid #d6e4eb;border-radius:12px;background:#f8fbfd}.restaurant-provider-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.restaurant-provider-panel header span{display:block;color:#286596;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.restaurant-provider-panel h3{margin:4px 0;color:#29475c;font-size:15px}.restaurant-provider-panel p{max-width:520px;margin:0;color:#71838e;font-size:10px;line-height:1.45}.restaurant-provider-panel header>div:last-child{display:flex;gap:7px}.restaurant-provider-panel header button{min-height:34px;padding:0 10px;font-size:10px;white-space:nowrap}.restaurant-provider-list{overflow:hidden;border:1px solid #e0eaef;border-radius:9px;background:#fff}.restaurant-provider-list>article{display:grid;grid-template-columns:34px minmax(150px,1fr) auto auto;align-items:center;gap:10px;padding:10px 11px;border-bottom:1px solid #e8eef1}.restaurant-provider-list>article:last-child{border-bottom:0}.restaurant-provider-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:#e5f1f7;color:#286596;font-size:9px;font-weight:900}.restaurant-provider-list strong,.restaurant-provider-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.restaurant-provider-list strong{color:#29465b;font-size:11px}.restaurant-provider-list small{margin-top:3px;color:#748691;font-size:9px}.restaurant-provider-actions{display:flex;align-items:center;gap:5px}.restaurant-provider-actions .text-button,.restaurant-provider-actions .secondary{min-height:29px;padding:0 7px;font-size:9px}.restaurant-provider-modal-heading{display:flex;gap:10px;align-items:center;margin-bottom:15px}.restaurant-provider-modal-heading>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#e4f1f7;color:#286596;font-size:14px;font-weight:900}.restaurant-provider-modal-heading small{color:#2a6590;font-size:10px;font-weight:800}.restaurant-provider-modal-heading h2{margin:2px 0;color:#28455a;font-size:18px}.restaurant-provider-modal-heading p{margin:0;color:#72838f;font-size:10px}@media(max-width:700px){.restaurant-provider-panel{padding:13px}.restaurant-provider-panel>header{display:block}.restaurant-provider-panel header>div:last-child{display:grid;grid-template-columns:1fr 1fr;margin-top:11px}.restaurant-provider-panel header button{width:100%;padding:0 6px;font-size:9px}.restaurant-provider-list>article{grid-template-columns:32px minmax(0,1fr) auto;gap:8px}.restaurant-provider-list>.empty{grid-column:1/-1}.restaurant-provider-actions{grid-column:2/-1;justify-content:flex-end}.restaurant-provider-actions .text-button{margin-right:auto}.restaurant-provider-list .badge{font-size:8px}}
.provider-coverage-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px;padding:13px 15px}.provider-coverage-actions span,.provider-coverage-actions strong,.provider-coverage-actions small{display:block}.provider-coverage-actions span{color:#286596;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.provider-coverage-actions strong{margin:3px 0;color:#29475c;font-size:13px}.provider-coverage-actions small{color:#728490;font-size:10px}.provider-coverage-actions button{min-height:36px;padding:0 11px;font-size:10px;white-space:nowrap}@media(max-width:700px){.provider-coverage-actions{display:block;padding:13px}.provider-coverage-actions button{width:100%;margin-top:11px}}
.machinery-table-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 13px}.machinery-table-head span,.provider-full-page>header span{display:block;color:#286596;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.machinery-table-head h2,.provider-full-page>header h2{margin:4px 0;color:#28475b;font-size:24px}.machinery-table-head p,.provider-full-page>header p{margin:0;color:#71838f;font-size:11px}.machinery-table-head>div:last-child{display:flex;gap:8px}.machinery-table-head button{min-height:37px;padding:0 11px;font-size:10px}.machinery-table-tools{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:0 0 10px;padding:11px 13px}.machinery-table-tools label{min-width:260px;flex:1}.machinery-table-tools label span{display:block;margin-bottom:4px;color:#5a7281;font-size:9px;font-weight:800}.machinery-table-tools input{width:100%;min-height:34px;padding:0 9px;border:1px solid #cadbe5;border-radius:7px;background:#fff;font-size:10px}.machinery-table-tools strong{color:#66808f;font-size:10px}.machinery-table-wrap{overflow:auto}.machinery-table{width:100%;min-width:680px;border-collapse:collapse}.machinery-table th{padding:9px 12px;background:#edf4f7;color:#496474;font-size:9px;text-align:left}.machinery-table td{padding:8px 12px;border-top:1px solid #e5edf1;color:#40596a;font-size:10px}.machine-table-name{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:#28475c;text-align:left;cursor:pointer}.machine-table-name span{display:grid;place-items:center;width:25px;height:25px;border-radius:6px;background:#e4f1f7;color:#286596;font-size:8px;font-weight:900}.machine-table-name strong{font-size:10px}.machinery-table td>small{display:block;margin-top:2px;color:#778995;font-size:8px}.machine-table-health{display:inline-flex;align-items:center;gap:5px;font-weight:850}.machine-table-health i{width:10px;height:10px;border-radius:50%;background:#42ad68}.machine-table-health.amber i,.machine-table-health.orange i{background:#f1bd36}.machine-table-health.red i{background:#d84b4e}.machine-table-actions{display:flex;gap:5px}.machine-table-actions button{min-height:28px;padding:0 7px;font-size:9px}.table-empty{padding:18px;color:#70838f;text-align:center}.provider-full-page>header{display:flex;align-items:center;gap:14px;margin:0 0 14px}.provider-full-page>header>div{flex:1}.provider-full-page>header>.secondary{min-height:36px;padding:0 10px;font-size:10px}.provider-full-page .provider-public-detail{max-width:none}.provider-full-page .provider-public-detail>.back{display:none}@media(max-width:700px){.machinery-table-head{display:block}.machinery-table-head>div:last-child{margin-top:11px}.machinery-table-head>div:last-child button{flex:1}.machinery-table-tools{display:block}.machinery-table-tools label{min-width:0}.machinery-table-tools strong{display:block;margin-top:8px}.provider-full-page>header{align-items:flex-start;flex-wrap:wrap}.provider-full-page>header>div{min-width:calc(100% - 150px)}.provider-full-page>header>.secondary{margin-left:auto}}
.provider-document-item{grid-template-columns:minmax(0,1fr) auto 32px}.provider-document-download{min-height:29px;margin-right:4px;padding:0 8px;border:1px solid #c9dce7;border-radius:6px;background:#f5fafc;color:#286596;font-size:9px;font-weight:800;cursor:pointer}.provider-file-button.contract-upload{place-items:start;padding:11px}.provider-file-button.contract-upload span{margin-top:3px;color:#6b8291;font-size:9px;font-weight:600;line-height:1.4}@media(max-width:700px){.provider-document-item{grid-template-columns:minmax(0,1fr) auto 30px}.provider-document-download{padding:0 6px;font-size:8px}}
.machine-table-row{transition:background .15s ease}.machine-table-row:hover{background:#f5fafc}.machine-table-row.amber{background:#fffdf6}.machine-table-row.orange{background:#fffbf3}.machine-table-row.red{background:#fff7f7}.machine-table-row.amber:hover,.machine-table-row.orange:hover{background:#fff6df}.machine-table-row.red:hover{background:#ffeded}.provider-full-page{max-width:1180px;margin:0 auto}.provider-full-page>header{padding:16px 18px;border:1px solid #d7e5ec;border-radius:13px;background:linear-gradient(110deg,#f7fbfd,#edf6fa)}.provider-full-page .provider-public-detail{padding:0;border:0;background:transparent;box-shadow:none}.provider-full-page .provider-public-detail>header{display:none}.provider-full-page .provider-financial-tabs{margin:14px 0}.provider-full-page .provider-detail-actions{margin:12px 0}.provider-full-page .provider-contact-grid{gap:10px}.provider-full-page .provider-contact-grid>div{padding:14px;border:1px solid #dfe9ee;background:#fff}.provider-full-page .provider-public-section{padding:15px;border:1px solid #dfe9ee;border-radius:11px;background:#fff}.provider-full-page .provider-public-section h3{padding-bottom:9px;border-bottom:1px solid #e8eef1}.provider-full-page .provider-document-list{margin-top:0}.provider-full-page .provider-document-item{border-width:0 0 1px;border-radius:0}.provider-full-page .provider-document-item:last-child{border-bottom:0}@media(max-width:700px){.provider-full-page>header{padding:14px}.provider-full-page .provider-contact-grid{grid-template-columns:1fr}.provider-full-page .provider-public-section{padding:13px}}

/* Filtros de maquinaria: una sola barra, legible y alineada con la tabla. */
.machinery-extra-filters{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(180px,1fr) minmax(180px,1fr);align-items:end;gap:12px;margin:0 0 10px;padding:12px 14px}.machinery-filter-intro span,.machinery-filter-intro small,.machinery-extra-filters label>span{display:block}.machinery-filter-intro span{color:#2a6495;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.machinery-filter-intro small{margin-top:4px;color:#718490;font-size:10px;line-height:1.35}.machinery-extra-filters label>span{margin:0 0 5px;color:#536f80;font-size:9px;font-weight:850}.machinery-extra-filters select{width:100%;height:36px;padding:0 32px 0 10px;border:1px solid #cbdce6;border-radius:8px;background:#fff;color:#28485d;font-family:inherit;font-size:11px;font-weight:700;cursor:pointer}.machinery-extra-filters select:focus{outline:3px solid rgba(47,119,177,.16);border-color:#4784ad}.machine-open-detail{border-color:#90b3c9!important;background:#f7fbfd!important;color:#225f92!important;font-weight:850!important}
@media(max-width:760px){.machinery-extra-filters{grid-template-columns:1fr;gap:9px;padding:12px}.machinery-filter-intro{padding-bottom:2px}}

/* Alta de maquinaria desde el restaurante: foto, QR y trazabilidad visibles. */
.equipment-photo-section{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px;border:1px solid #d5e4eb;border-radius:10px;background:#f7fbfd}.equipment-photo-section>div>span,.equipment-photo-section>div>strong,.equipment-photo-section>div>small{display:block}.equipment-photo-section>div>span{color:#2b6698;font-size:8px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.equipment-photo-section>div>strong{margin-top:4px;color:#29495e;font-size:11px}.equipment-photo-section>div>small{max-width:440px;margin-top:4px;color:#708390;font-size:9px;line-height:1.4}.equipment-photo-picker{display:grid;place-items:center;gap:5px;width:132px;min-height:78px;padding:7px;border:1px dashed #8dafc3;border-radius:9px;background:#fff;color:#286596;font-size:9px;font-weight:850;text-align:center;cursor:pointer}.equipment-photo-picker input{position:absolute;width:1px;height:1px;opacity:0}.equipment-photo-picker b{display:grid;place-items:center;width:28px;height:25px;border-radius:6px;background:#e4f1f8;font-size:14px}.equipment-photo-picker img{width:116px;height:54px;border-radius:6px;object-fit:cover}.equipment-qr-after{grid-column:1/-1;margin:0;color:#405e70;font-size:10px}.machine-identity-photo{display:grid;grid-template-columns:118px minmax(0,1fr);gap:12px;align-items:center;margin:0 0 12px;padding:10px;border:1px solid #d5e5ed;border-radius:10px;background:#f8fbfc}.machine-identity-photo img{width:118px;height:76px;border-radius:7px;object-fit:cover}.machine-identity-photo span,.machine-identity-photo strong,.machine-identity-photo small{display:block}.machine-identity-photo span{color:#2a6698;font-size:8px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.machine-identity-photo strong{margin-top:4px;color:#29485d;font-size:11px}.machine-identity-photo small{margin-top:4px;color:#72848f;font-size:9px;line-height:1.4}.machine-audit-trail article{display:block!important}.machine-audit-trail article strong,.machine-audit-trail article small{display:block}.machine-audit-trail article small{margin-top:3px}
@media(max-width:650px){.equipment-photo-section{grid-template-columns:1fr}.equipment-photo-picker{width:100%;min-height:58px}.machine-identity-photo{grid-template-columns:92px minmax(0,1fr)}.machine-identity-photo img{width:92px;height:68px}}

/* Incidencias SAT: recorrido corto, obligatorio y verificable desde el móvil. */
.restaurant-module-home,.restaurant-sat-form,.restaurant-sat-head,.restaurant-maintenance-intro,.restaurant-sat-history{max-width:760px;margin-inline:auto}.restaurant-module-home header,.restaurant-sat-head,.restaurant-maintenance-intro{padding:17px;border:1px solid #d7e5ed;border-radius:12px;background:#f7fbfd}.restaurant-module-home header span,.restaurant-sat-head span,.restaurant-maintenance-intro span,.restaurant-sat-history header span{display:block;color:#286596;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.restaurant-module-home h1,.restaurant-sat-head h1,.restaurant-maintenance-intro h1{margin:5px 0;color:#29485d;font-size:25px}.restaurant-module-home p,.restaurant-sat-head p,.restaurant-maintenance-intro p{margin:0;color:#6f8290;font-size:11px;line-height:1.45}.restaurant-module-cards{display:grid;gap:10px;margin-top:13px}.restaurant-module-cards>button{display:grid;grid-template-columns:42px minmax(0,1fr) 14px;gap:12px;align-items:center;width:100%;padding:14px;border:1px solid #d7e4eb;border-radius:11px;background:#fff;color:#29495e;text-align:left;cursor:pointer}.restaurant-module-cards>button:hover{border-color:#7da8c2;background:#f8fbfd}.restaurant-module-cards>button>b{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#e5f1f7;color:#286596;font-size:14px}.restaurant-module-cards>button.sat>b{background:#fff0e4;color:#ad5d18}.restaurant-module-cards strong,.restaurant-module-cards small{display:block}.restaurant-module-cards strong{font-size:13px}.restaurant-module-cards small{margin-top:4px;color:#718490;font-size:10px}.restaurant-module-cards i{color:#5d87a1;font-size:21px;font-style:normal}.restaurant-module-status{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px 14px}.restaurant-module-status strong{font-size:11px}.restaurant-module-status button{border:0;background:transparent;color:#236196;font-size:10px;font-weight:850;cursor:pointer}.restaurant-app-back{margin:0 0 10px}.restaurant-sat-head,.restaurant-maintenance-intro{margin-bottom:12px}.restaurant-sat-form{display:grid;gap:13px;padding:16px}.restaurant-sat-form>label{display:grid;gap:6px;color:#405c6c;font-size:11px;font-weight:850}.restaurant-sat-form textarea{min-height:105px;padding:11px;border:1px solid #cadce6;border-radius:8px;font:inherit;resize:vertical}.sat-step{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;border:1px solid #d9e6ed;border-radius:10px;background:#f8fbfc}.sat-step>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#286596;color:#fff;font-size:11px;font-weight:900}.sat-step strong,.sat-step small{display:block}.sat-step strong{font-size:11px}.sat-step small{margin-top:3px;color:#718490;font-size:9px}.sat-step>div:last-child{display:flex;gap:6px}.sat-step button{min-height:32px;padding:0 8px;font-size:9px}.sat-machine-confirm{display:flex;align-items:center;gap:9px;padding:11px;border-radius:9px;background:#edf7f1;color:#305342}.sat-machine-confirm>b{display:grid;place-items:center;width:32px;height:32px;border-radius:7px;background:#d9efdf;color:#217348;font-size:9px}.sat-machine-confirm>div{flex:1}.sat-machine-confirm strong,.sat-machine-confirm small{display:block}.sat-machine-confirm strong{font-size:11px}.sat-machine-confirm small{margin-top:3px;font-size:9px}.sat-machine-confirm .check{font-size:9px}.sat-photo{display:grid;grid-template-columns:minmax(0,1fr) 110px;align-items:center;gap:10px;min-height:82px;padding:10px;border:1px dashed #7ea6bd!important;border-radius:10px;background:#f8fbfc;color:#286596!important;cursor:pointer}.sat-photo input{position:absolute;width:1px;height:1px;opacity:0}.sat-photo span{font-size:10px}.sat-photo img,.sat-summary img{width:110px;height:62px;border-radius:7px;object-fit:cover}.sat-provider-note{margin:0;padding:10px;border-radius:8px;background:#fff6e9;color:#805a20;font-size:9px;line-height:1.4}.restaurant-sat-history{overflow:hidden}.restaurant-sat-history header{display:flex;justify-content:space-between;align-items:center;padding:13px;border-bottom:1px solid #e2ebef}.restaurant-sat-history h2{margin:3px 0 0;font-size:15px}.restaurant-sat-history header>b{display:grid;place-items:center;min-width:28px;height:28px;border-radius:50%;background:#e6f1f7;color:#286596;font-size:10px}.restaurant-sat-history>button{display:grid;grid-template-columns:minmax(0,1fr) 12px;gap:10px;width:100%;padding:12px 13px;border:0;border-bottom:1px solid #e8eff2;background:#fff;color:#29495e;text-align:left}.restaurant-sat-history strong,.restaurant-sat-history small{display:block}.restaurant-sat-history strong{font-size:11px}.restaurant-sat-history small{margin-top:4px;color:#718490;font-size:9px}.restaurant-sat-history i{font-style:normal;color:#5d87a1;font-size:20px}.sat-summary header span{display:block;color:#286596;font-size:9px;font-weight:900;text-transform:uppercase}.sat-summary h2{margin:5px 0;font-size:20px}.sat-summary header p{margin:0;color:#708390;font-size:10px;line-height:1.45}.sat-summary dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.sat-summary dl>div,.sat-summary section{padding:10px;border-radius:8px;background:#f4f8fa}.sat-summary dt{color:#718490;font-size:8px}.sat-summary dd{margin:4px 0 0;color:#29495e;font-size:10px;font-weight:850}.sat-summary section strong{font-size:10px}.sat-summary section p{color:#526b79;font-size:10px;line-height:1.45}.sat-summary section img{display:block;width:min(260px,100%);height:auto;margin-top:9px}.sat-summary-photos{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.sat-summary-photos img{width:90px;height:90px;border-radius:8px;object-fit:cover;margin:0}
@media(max-width:650px){.restaurant-module-home h1,.restaurant-sat-head h1,.restaurant-maintenance-intro h1{font-size:22px}.sat-step{grid-template-columns:30px minmax(0,1fr)}.sat-step>div:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.sat-step button{width:100%}.sat-machine-confirm{align-items:flex-start;flex-wrap:wrap}.sat-machine-confirm .check{width:100%;margin-left:41px}.sat-summary dl{grid-template-columns:1fr}.sat-photo{grid-template-columns:1fr}.sat-photo img{width:100%;height:115px}}

/* Dos accesos explícitos: cámara del móvil o foto ya disponible. */
.sat-photo-evidence{display:grid;gap:7px}.sat-photo-evidence>strong{color:#405c6c;font-size:11px}.sat-photo-evidence>small{color:#718490;font-size:10px}.restaurant-sat-form .restaurant-photo-actions{grid-template-columns:minmax(0,1fr) minmax(220px,.8fr)}.restaurant-sat-form .restaurant-camera,.restaurant-sat-form .restaurant-gallery{min-height:132px}.restaurant-sat-form .restaurant-camera strong{font-size:12px}.restaurant-sat-form .restaurant-gallery strong{font-size:10px}.restaurant-sat-form .restaurant-gallery small,.restaurant-sat-form .restaurant-camera small{font-size:8px}
.restaurant-sat-form .restaurant-camera,.restaurant-sat-form .restaurant-gallery{position:relative;overflow:hidden}.restaurant-sat-form .restaurant-camera input,.restaurant-sat-form .restaurant-gallery input{position:absolute!important;inset:0!important;z-index:2;width:100%!important;height:100%!important;margin:0!important;opacity:.01!important;pointer-events:auto!important;cursor:pointer}
.restaurant-sat-form .sat-photo{display:grid;grid-template-columns:minmax(0,1fr) auto 110px;align-items:center;gap:10px;min-height:82px;padding:10px;border:1px dashed #7ea6bd!important;border-radius:10px;background:#f8fbfc;color:#286596!important}.restaurant-sat-form .sat-photo strong,.restaurant-sat-form .sat-photo span{display:block}.restaurant-sat-form .sat-photo strong{font-size:11px}.restaurant-sat-form .sat-photo span{margin-top:3px;color:#718490;font-size:10px;font-weight:600}.sat-photo-controls{display:grid;gap:6px}.sat-photo-controls label{display:grid;place-items:center;min-height:32px;padding:0 10px;border:1px solid #b7cfde;border-radius:7px;background:#fff;color:#286596;font-size:9px;font-weight:850;cursor:pointer;white-space:nowrap}.sat-photo-controls input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.restaurant-sat-form .sat-photo img{width:110px;height:62px;border-radius:7px;object-fit:cover}@media(max-width:650px){.restaurant-sat-form .sat-photo{grid-template-columns:1fr}.sat-photo-controls{grid-template-columns:1fr 1fr}.restaurant-sat-form .sat-photo img{width:100%;height:115px}}

/* Ficha de proveedor: lectura ejecutiva, sin bloques dispersos. */
.provider-full-page{display:grid;gap:10px}
.provider-full-page>header{min-height:88px;margin:0;padding:14px 18px;border-color:#d5e3eb;border-radius:12px;background:#fff;box-shadow:0 5px 18px rgba(26,51,69,.04)}
.provider-full-page>header .back{align-self:stretch;padding:0 14px;border:0;border-right:1px solid #e3ebef;border-radius:0;background:transparent;color:#23629a;font-size:11px;font-weight:850;white-space:nowrap}
.provider-full-page>header h2{font-size:26px;line-height:1.05;letter-spacing:-.035em}
.provider-full-page>header p{margin-top:5px;font-size:12px}
.provider-full-page>header>.secondary{min-height:38px;padding:0 13px;border-color:#d6e3ea;background:#f7fafb;color:#28485e;font-weight:800}
.provider-full-page .provider-public-detail{display:grid;gap:10px}
.provider-full-page .provider-financial-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:0;padding:4px;border:1px solid #e0e9ee;border-radius:11px;background:#f3f6f8}
.provider-full-page .provider-financial-tabs button{min-height:42px;padding:8px 10px;border-radius:8px;color:#59707f;font-size:10px}
.provider-full-page .provider-financial-tabs button.active{color:#1f609c;box-shadow:0 2px 8px rgba(34,67,91,.1)}
.provider-full-page .provider-financial-tabs b{min-width:18px;height:18px;font-size:8px}
.provider-full-page .provider-compliance-access{margin:0;padding:12px 15px;border-color:#d9e5eb;border-radius:10px;background:#fff}
.provider-full-page .provider-compliance-access span{color:#47708c;font-size:8px;font-weight:850;letter-spacing:.06em}
.provider-full-page .provider-compliance-access strong{color:#29495e;font-size:11px}
.provider-full-page .provider-compliance-access small{font-size:9px}
.provider-full-page .provider-compliance-access button{min-height:35px;padding:0 11px;border-color:#c9dce8;background:#f3f8fb;color:#236196;font-size:10px;font-weight:800}
.provider-full-page .provider-detail-actions{margin:0;padding:0 1px;justify-content:flex-end}
.provider-full-page .provider-detail-actions button{min-height:38px;padding:0 14px;font-size:10px;font-weight:850}
.provider-full-page .provider-contact-grid{gap:10px}
.provider-full-page .provider-contact-grid>div{min-height:94px;padding:14px 15px;border-color:#dce7ed;border-radius:10px;box-shadow:0 3px 10px rgba(26,51,69,.025)}
.provider-full-page .provider-contact-grid span{color:#527289;font-size:8px;font-weight:850;letter-spacing:.06em}
.provider-full-page .provider-contact-grid strong{color:#29475c;font-size:12px}
.provider-full-page .provider-contact-grid small{font-size:9px;line-height:1.45}
.provider-full-page .provider-public-section{margin-top:0;padding:16px;border-color:#dce7ed;border-radius:10px;box-shadow:0 3px 10px rgba(26,51,69,.02)}
.provider-full-page .provider-public-section h3{margin-bottom:11px;color:#29475c;font-size:13px}
@media(max-width:820px){.provider-full-page>header .back{align-self:auto;padding:0 0 8px;border:0;border-bottom:1px solid #e3ebef}.provider-full-page .provider-financial-tabs{display:flex;overflow:auto}.provider-full-page .provider-financial-tabs button{flex:1 0 125px}.provider-full-page .provider-compliance-access{align-items:flex-start}.provider-full-page .provider-detail-actions{justify-content:flex-start}}
@media(max-width:700px){.provider-full-page{gap:8px}.provider-full-page>header{display:grid;grid-template-columns:1fr auto;gap:10px;min-height:0;padding:14px}.provider-full-page>header .back{grid-column:1/-1}.provider-full-page>header>div{min-width:0}.provider-full-page>header h2{font-size:23px}.provider-full-page .provider-compliance-access{display:grid;gap:10px}.provider-full-page .provider-compliance-access button{width:100%}.provider-full-page .provider-detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.provider-full-page .provider-detail-actions button{width:100%;padding:0 8px}.provider-full-page .provider-contact-grid>div{min-height:0}}

/* Ficha de maquinaria: volver siempre visible y ampliación opcional en escritorio. */
.simple-machine-heading{position:relative;padding-right:44px}
.machine-view-toggle{position:absolute;top:0;right:0;display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid #cbdde7;border-radius:8px;background:#f5fafc;color:#236196;font-size:17px;line-height:1;cursor:pointer}
.machine-view-toggle:hover{border-color:#6f9fbe;background:#eaf4fa}
.simple-machine-modal.machine-expanded{width:calc(100vw - 36px);height:calc(100vh - 36px);max-height:none;padding:26px 30px}
.simple-machine-modal.machine-expanded .simple-parts-list{max-height:calc(100vh - 405px);overflow:auto}
.simple-machine-modal.machine-expanded .machine-simple-actions{position:sticky;bottom:-26px;margin:18px -30px -26px;padding:13px 30px;background:#fff;border-top:1px solid #dce7ed}
@media(max-width:700px){.machine-view-toggle{display:none}.simple-machine-modal .machine-simple-actions [data-action="close-modal"]{order:-1}}

/* Preventivo: si una sede no tiene inventario, nunca se sustituye por equipos genéricos. */
.checklist-empty-equipment{margin:4px 0 12px;padding:18px;border:1px dashed #b9cbd7;border-radius:11px;background:#f7fafc;text-align:center}
.checklist-empty-equipment strong{display:block;color:#2c5067;font-size:12px}
.checklist-empty-equipment p{max-width:480px;margin:6px auto 0;color:#6f8290;font-size:10px;line-height:1.5}

/* Etiqueta QR: creada desde la ficha de cada maquina. */
.machine-qr-modal{width:min(480px,calc(100vw - 28px));text-align:center}
.machine-qr-sheet header span{display:block;color:#286596;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.machine-qr-sheet h2{margin:5px 0 3px;color:#29475c;font-size:21px}
.machine-qr-sheet header p,.machine-qr-note{margin:0;color:#6e8290;font-size:10px;line-height:1.45}
.machine-qr-sheet>img{display:block;width:min(270px,72vw);height:auto;margin:18px auto 12px;padding:12px;border:1px solid #d4e1e8;border-radius:12px;background:#fff}
.machine-qr-sheet .modal-actions{align-items:center}
@media(max-width:600px){.machine-qr-modal{padding:20px 18px calc(18px + env(safe-area-inset-bottom))}.machine-qr-sheet>img{width:min(250px,74vw)}.machine-qr-sheet .modal-actions{display:grid}.machine-qr-sheet .modal-actions>*{width:100%;min-height:44px}}

/* Centro de avisos: bandeja táctil estable en móvil y tablet. */
.notification-head>div>span{display:none}
.top-actions>button[data-action="notifications"]:not(:has(b)){border-color:#dbe4e9!important;background:#fff!important;color:#657783!important;box-shadow:none!important}.top-actions>button[data-action="notifications"]:has(b){border-color:#e6b8ba;background:#fffafa;color:#a8242b}.top-actions>button[data-action="notifications"]:has(b) .icon{stroke-width:2.1}
@media(min-width:821px){.notifications{right:var(--notification-right,28px)!important;top:var(--notification-top,76px)!important;bottom:auto!important;width:min(390px,calc(100vw - 36px))!important;max-height:calc(100vh - var(--notification-top,76px) - 18px)!important;transform:none!important;border-radius:12px!important}.notification-backdrop{z-index:39!important}.notifications{z-index:40!important}}
@media(max-width:820px){
  body:has(.notifications){overflow:hidden}
  .notification-backdrop{z-index:80;background:rgba(18,35,49,.56);backdrop-filter:blur(2px)}
  .notifications{right:50%;top:auto;bottom:0;z-index:81;width:min(620px,100%);max-height:min(78dvh,720px);transform:translateX(50%);border-radius:18px 18px 0 0;box-shadow:0 -18px 52px rgba(14,31,44,.28)}
  .notification-head{position:relative;flex:none;padding:19px 18px 13px}
  .notification-head::before{position:absolute;top:7px;left:50%;width:38px;height:4px;border-radius:99px;background:#cbd8df;content:"";transform:translateX(-50%)}
  .notification-head>div>span{display:block;margin-bottom:4px;color:#2b6799;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
  .notification-head h2{font-size:18px}
  .notification-head button{width:42px;height:42px;border:1px solid #d6e2e8;border-radius:10px;background:#f6fafc}
  .notification-list{min-height:0;flex:1;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .notification-list>button{min-height:68px;grid-template-columns:10px minmax(0,1fr) 16px;gap:12px;padding:14px 18px}
  .notification-list strong{font-size:13px;line-height:1.35}
  .notification-list small{font-size:10px}
  .notice-dot{width:9px;height:9px;margin-top:5px}
  .notification-footer{flex:none;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:#fff}
  .notification-footer button{min-height:40px;padding:0 8px;font-size:11px}
}

/* Maquinaria para restaurante: consulta directa, sin permisos de edición. */
.restaurant-machinery-shortcut{display:grid;grid-template-columns:42px minmax(0,1fr) 14px;gap:11px;align-items:center;width:100%;margin:0 0 12px;padding:13px 14px;border-color:#cddfe9;background:#f5fafc;color:#294a60;text-align:left;cursor:pointer}
.restaurant-machinery-shortcut>span{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#dceef8;color:#236196;font-size:11px;font-weight:900}
.restaurant-machinery-shortcut strong,.restaurant-machinery-shortcut small{display:block}.restaurant-machinery-shortcut strong{font-size:12px}.restaurant-machinery-shortcut small{margin-top:3px;color:#70828f;font-size:10px}.restaurant-machinery-shortcut>b{color:#477895;font-size:20px}
.restaurant-machinery-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:0 0 13px;padding:17px;border:1px solid #d5e4eb;border-radius:12px;background:#f7fbfd}.restaurant-machinery-head span{display:block;color:#2a6698;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.restaurant-machinery-head h2{margin:4px 0;color:#29485d;font-size:23px}.restaurant-machinery-head p{max-width:560px;margin:0;color:#6d818e;font-size:11px;line-height:1.45}.restaurant-machinery-head>b{padding:7px 9px;border-radius:8px;background:#e1eff6;color:#27638e;font-size:10px;white-space:nowrap}.restaurant-machinery-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:12px}.restaurant-machinery-summary article{padding:13px;border:1px solid #dce7ed;border-radius:10px;background:#fff}.restaurant-machinery-summary article.attention{border-color:#ebc4c7;background:#fff8f8}.restaurant-machinery-summary span,.restaurant-machinery-summary strong{display:block}.restaurant-machinery-summary span{color:#718490;font-size:9px}.restaurant-machinery-summary strong{margin-top:4px;color:#29485d;font-size:21px}.restaurant-machinery-summary article.attention strong{color:#ad2d33}.restaurant-machinery-list{display:grid;gap:8px}.restaurant-machinery-list>button{display:grid;grid-template-columns:38px minmax(0,1fr) auto 12px;gap:10px;align-items:center;width:100%;padding:12px;border:1px solid #d8e5eb;border-radius:10px;background:#fff;color:#29485d;text-align:left;cursor:pointer}.restaurant-machinery-list>button:hover{border-color:#83aac2;background:#f7fbfd}.restaurant-machinery-list>button>span{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:#e5f1f7;color:#286596;font-size:10px;font-weight:900}.restaurant-machinery-list strong,.restaurant-machinery-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.restaurant-machinery-list strong{font-size:12px}.restaurant-machinery-list small{margin-top:3px;color:#72848f;font-size:9px}.restaurant-machinery-list>button>b{color:#5d85a0;font-size:20px}.restaurant-equipment-modal{width:min(640px,calc(100vw - 28px))}.restaurant-equipment-detail>header{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;padding-right:32px}.restaurant-equipment-detail>header>span{display:grid;place-items:center;width:44px;height:44px;border-radius:11px;background:#e4f1f7;color:#286596;font-size:10px;font-weight:900}.restaurant-equipment-detail header small{color:#2a6596;font-size:9px;font-weight:800}.restaurant-equipment-detail h2{margin:4px 0;color:#29485d;font-size:20px}.restaurant-equipment-detail header p{margin:0;color:#748590;font-size:9px}.restaurant-equipment-data{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.restaurant-equipment-data>div{padding:10px;border-radius:8px;background:#f3f7f9}.restaurant-equipment-data span,.restaurant-equipment-data strong{display:block}.restaurant-equipment-data span{color:#718490;font-size:8px}.restaurant-equipment-data strong{margin-top:4px;color:#304d61;font-size:10px}.restaurant-equipment-history{border:1px solid #dce7ed;border-radius:10px;overflow:hidden}.restaurant-equipment-history h3{margin:0;padding:12px 13px;border-bottom:1px solid #e4edf1;color:#29485d;font-size:13px}.restaurant-equipment-history article{display:grid;grid-template-columns:26px minmax(0,1fr);gap:9px;align-items:center;padding:10px 12px;border-bottom:1px solid #edf2f4}.restaurant-equipment-history article:last-child{border:0}.restaurant-equipment-history article>span{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#e7f1f6;color:#286596;font-weight:900}.restaurant-equipment-history strong,.restaurant-equipment-history small{display:block}.restaurant-equipment-history strong{font-size:10px}.restaurant-equipment-history small{margin-top:3px;color:#73848f;font-size:8px}@media(max-width:600px){.restaurant-machinery-head{display:block;padding:14px}.restaurant-machinery-head>b{display:inline-block;margin-top:10px}.restaurant-machinery-list>button{grid-template-columns:36px minmax(0,1fr) 10px}.restaurant-machinery-list .badge{display:none}.restaurant-equipment-modal{width:100%}.restaurant-equipment-detail>header{grid-template-columns:40px minmax(0,1fr)}.restaurant-equipment-detail>header>.badge{grid-column:2;justify-self:start}.restaurant-equipment-data{grid-template-columns:1fr}.restaurant-equipment-modal .modal-actions{display:grid}.restaurant-equipment-modal .modal-actions button{width:100%}}

/* Identificación de maquinaria desde la cuenta de restaurante. */
.restaurant-machine-access{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 13px;padding:13px 15px}.restaurant-machine-access span,.restaurant-machine-access strong,.restaurant-machine-access small{display:block}.restaurant-machine-access span{color:#286596;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.restaurant-machine-access strong{margin:3px 0;color:#29455b;font-size:13px}.restaurant-machine-access small{max-width:460px;color:#71838f;font-size:10px}.restaurant-machine-access>div:last-child{display:flex;gap:8px}.restaurant-machine-access button{min-height:36px;padding:0 11px;font-size:10px;white-space:nowrap}.restaurant-machine-list{display:grid;gap:7px;margin-top:14px}.restaurant-machine-list>button{display:grid;grid-template-columns:34px minmax(0,1fr) 12px;align-items:center;gap:10px;width:100%;padding:11px;border:1px solid #d8e5ec;border-radius:9px;background:#fff;color:#2d485c;text-align:left;cursor:pointer}.restaurant-machine-list>button:hover{border-color:#5b97ba;background:#f4fafe}.restaurant-machine-list>button>span{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#e9f3f8;color:#286596;font-size:10px;font-weight:900}.restaurant-machine-list strong,.restaurant-machine-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.restaurant-machine-list strong{font-size:12px}.restaurant-machine-list small{margin-top:3px;color:#718490;font-size:9px}.restaurant-machine-list b{color:#5f859e;font-size:19px}.qr-scanner{position:relative;overflow:hidden;margin-top:15px;border-radius:12px;background:#102b3e;aspect-ratio:4/3}.qr-scanner video{display:block;width:100%;height:100%;object-fit:cover}.qr-scanner::after{position:absolute;inset:16% 18%;border:2px solid #74cef4;border-radius:12px;content:'';box-shadow:0 0 0 999px rgba(0,0,0,.18)}.qr-scanner p{position:absolute;right:0;bottom:0;left:0;z-index:1;margin:0;padding:10px 12px;background:rgba(10,31,45,.8);color:#fff;font-size:11px;text-align:center}.qr-search-fallback{width:100%;margin-top:10px}@media(max-width:700px){.restaurant-machine-access{display:block;margin:0 0 10px;padding:12px}.restaurant-machine-access>div:last-child{display:grid;grid-template-columns:1fr 1fr;margin-top:11px}.restaurant-machine-access button{width:100%;font-size:9px}.restaurant-machine-modal{width:min(94vw,520px)!important}}

.sat-send-action{display:grid;gap:10px;margin:18px -14px -14px;padding:14px;border-top:1px solid #d9e3e8;background:#fff}.sat-send-action strong,.sat-send-action small{display:block}.sat-send-action strong{font-size:12px}.sat-send-action small{margin-top:3px;color:#617581;font-size:9px;line-height:1.35}.sat-send-action .primary{min-height:48px;font-size:12px}

.restaurant-module-cards>button.sat>b{font-size:0!important}.restaurant-module-cards>button.sat>b::before{content:'SAT';font-size:11px;font-weight:900;letter-spacing:.04em;line-height:1}
.restaurant-sat-mobile-nav .sat-service-icon{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:currentColor;color:#fff;font-size:8px;font-weight:900;letter-spacing:.04em;line-height:1}.restaurant-sat-mobile-nav button.sat.active .sat-service-icon{background:#fff;color:#b52b32}
.restaurant-sat-mobile-nav button.sat::before{display:none!important}
.sat-history-row{border:0!important;border-bottom:1px solid #e4edf1!important;background:#fff!important;color:#29495e!important;text-align:left!important;cursor:pointer}.sat-history-row:hover{background:#f6fafc!important}.sat-history-row:active{background:#edf5f9!important}
.sat-provider-choice{padding:10px;border:1px solid #d9e6ed;border-radius:10px;background:#f8fbfc}.sat-provider-choice header{display:grid;grid-template-columns:26px minmax(0,1fr);gap:8px;align-items:center}.sat-provider-choice header>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#286596;color:#fff;font-size:10px;font-weight:900}.sat-provider-choice strong,.sat-provider-choice small{display:block}.sat-provider-choice strong{font-size:10px}.sat-provider-choice header small{margin-top:2px;color:#718490;font-size:8px;line-height:1.3}.sat-provider-select{display:block;margin-top:7px}.sat-provider-select select{width:100%;min-height:36px;padding:7px 30px 7px 10px;border:1px solid #c9dce7;border-radius:7px;background:#fff;color:#29495e;font:inherit;font-size:10px;font-weight:650}.sat-provider-select select:focus{outline:2px solid #a8cce0;outline-offset:1px}.sat-provider-empty{margin:7px 0 0;padding:9px;border-radius:8px;background:#fff6e9;color:#805a20;font-size:9px;line-height:1.4}
.restaurant-module-cards>button.sat>b{background:#e5f1f7!important;color:#286596!important}.restaurant-sat-mobile-nav button.sat{border:0!important;background:transparent!important;color:#647683!important;box-shadow:none!important}.restaurant-sat-mobile-nav button.sat.active{border:0!important;background:#edf4fa!important;color:#215f96!important;box-shadow:none!important}.restaurant-sat-mobile-nav .sat-service-icon{display:block!important;width:auto!important;height:auto!important;border-radius:0!important;background:transparent!important;color:inherit!important;font-size:10px!important;font-weight:850!important;letter-spacing:.02em!important;line-height:21px!important}.restaurant-sat-mobile-nav button.sat::before{display:none!important}
.sat-history-row .badge.gray{background:#eaf2fb;color:#1f6096}

/* Móvil: acciones grandes y alineadas para trabajar con una mano. */
@media(max-width:820px){
  .restaurant-sat-mobile-nav{align-items:stretch!important;padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important}
  .restaurant-sat-mobile-nav button{min-height:58px!important;padding:7px 3px!important}
  .restaurant-sat-mobile-nav button.sat{min-height:58px!important;margin:0!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#647683!important;box-shadow:none!important;transform:none!important}
  .restaurant-sat-mobile-nav button.sat .icon{display:none!important}.restaurant-sat-mobile-nav button.sat::before{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#286596;content:'SAT';color:#fff;font-size:8px;font-weight:900;letter-spacing:.04em;line-height:1}.restaurant-sat-mobile-nav button.sat.active::before{background:#215f96;color:#fff}
  .restaurant-sat-mobile-nav button.sat.active{border:0!important;background:#edf4fa!important;color:#215f96!important;box-shadow:none!important}
  .restaurant-module-home{padding-bottom:8px}
  .restaurant-module-cards{gap:12px}
  .restaurant-module-cards>button{grid-template-columns:54px minmax(0,1fr) 16px;min-height:86px;padding:16px}
  .restaurant-module-cards>button>b{width:52px;height:52px;border-radius:13px;font-size:16px}
  .restaurant-module-cards strong{font-size:15px}.restaurant-module-cards small{margin-top:5px;font-size:11px;line-height:1.35}
  .restaurant-module-status{display:grid;grid-template-columns:1fr;gap:10px;padding:15px}.restaurant-module-status strong{font-size:12px}
  .restaurant-module-status button{min-height:46px;border:1px solid #c5dce9;border-radius:10px;background:#edf6fb;color:#1d5f94;font-size:12px;text-align:center}
  .notifications{left:0!important;right:0!important;top:auto!important;bottom:0!important;width:100%!important;max-width:none!important;max-height:min(76svh,680px)!important;transform:none!important;border-radius:18px 18px 0 0!important}
  .notification-backdrop{background:rgba(18,35,49,.58)!important;backdrop-filter:blur(2px)}
  .notification-head{padding:20px 18px 14px!important}.notification-list{min-height:0;overscroll-behavior:contain}.notification-list>button{padding:14px 17px!important}.notification-footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom))!important}
  .restaurant-sat-history{margin-bottom:10px}.sat-history-row{min-height:74px!important;padding:14px!important}
}
.restaurant-sat-history header p{margin:4px 0 0;color:#718490;font-size:9px;line-height:1.4}.sat-history-list{display:grid}.sat-history-row{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto 10px!important;gap:10px!important;align-items:center!important;padding:13px!important}.sat-history-kind{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#e8f1f6;color:#286596;font-size:8px;font-weight:900}.sat-history-kind.sat{background:#fff0e4;color:#ac5b16}.sat-history-row>div{min-width:0}.sat-history-row strong,.sat-history-row small{display:block}.sat-history-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.sat-history-row>div small{overflow:hidden;margin-top:4px;color:#718490;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.sat-history-row aside{display:grid;justify-items:end;gap:4px;min-width:84px}.sat-history-row aside small{color:#718490;font-size:8px}.sat-history-row i{font-style:normal;color:#5d87a1;font-size:19px}@media(max-width:600px){.restaurant-sat-history header{align-items:flex-start}.restaurant-sat-history header>b{margin-top:2px}.sat-history-row{grid-template-columns:32px minmax(0,1fr) 9px!important}.sat-history-row aside{grid-column:2;grid-row:2;justify-items:start;grid-auto-flow:column;justify-content:start;gap:7px;min-width:0}.sat-history-row aside small{padding-top:3px}.sat-history-row i{grid-column:3;grid-row:1;align-self:center}}
.modal.incident-type-modal{width:min(520px,calc(100vw - 28px));max-width:none}.incident-type-choice{display:grid;gap:9px;margin-top:4px}.incident-type-option{display:grid;grid-template-columns:minmax(0,1fr) 14px;gap:10px;align-items:center;width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);text-align:left;cursor:pointer;box-sizing:border-box}.incident-type-option:hover{border-color:#5b8db6;background:#f8fafb}.incident-type-option>div{min-width:0}.incident-type-option strong{display:block;font-size:11px}.incident-type-option small{display:block;margin-top:4px;color:var(--muted);font-size:8.5px;white-space:normal}.incident-type-option>b{color:#7d8c97;justify-self:end}html[data-theme="dark"] .incident-type-option{border-color:var(--line);background:#20303a;color:var(--ink)}
.sat-badge-inline{display:inline-flex;align-items:center;gap:3px;padding:1px 7px;border-radius:99px;background:#eaf2f8;color:#245e92;font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin-right:5px}.maintenance-badge-inline{display:inline-flex;align-items:center;gap:3px;padding:1px 7px;border-radius:99px;background:#f1eef8;color:#5b3f9e;font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin-right:5px}
.resend-mail-button{margin-top:8px}.resend-reminder-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
