/* Materiales de agenda, preparación y recepción. Paletas para ambos temas. */
:root{--heat-normal:#e2f4ee;--heat-busy:#fff1cb;--heat-strong:#fde8e5;--heat-busy-ink:#78580e;--heat-strong-ink:#962e25;--private-bg:#eee8f7;--private-ink:#633c9d}
html[data-theme=dark]{--heat-normal:#143832;--heat-busy:#3c321c;--heat-strong:#462525;--heat-busy-ink:#f7cf76;--heat-strong-ink:#ffc5ba;--private-bg:#302241;--private-ink:#dabfff}
.operation-date{display:flex;align-items:center;gap:24px;padding:16px 20px;margin-bottom:32px}.operation-date label{display:flex;align-items:center;gap:16px}.operation-date .field-label{white-space:nowrap}.operation-date input{width:180px}.operation-date>span{max-width:370px}
.calendar-surface{padding:20px;min-width:0}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;flex-wrap:wrap}.calendar-toolbar h3{text-transform:capitalize}.calendar-toolbar .icon-button:first-child .icon{transform:rotate(180deg)}.calendar-legend{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:var(--fs-xs)}.heat-key{padding:5px 9px;border-radius:6px;border:1px solid var(--line)}.heat-key.normal,.heat-normal{background:var(--heat-normal);color:var(--text)}.heat-key.busy,.heat-busy{background:var(--heat-busy);color:var(--heat-busy-ink)}.heat-key.strong,.heat-strong{background:var(--heat-strong);color:var(--heat-strong-ink)}.heat-empty{background:var(--surface);color:var(--muted)}.calendar-source{font-size:var(--fs-xs);color:var(--muted);margin:14px 0 20px}.month-weekdays,.calendar-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.month-weekdays{margin-bottom:8px;font-size:var(--fs-xs);color:var(--muted);text-align:center}.calendar-day{display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-height:145px;padding:10px;border:1px solid var(--line);border-radius:8px;gap:5px;min-width:0;position:relative}.calendar-day.outside{background:var(--surface-soft);color:var(--muted)}.calendar-day.selected,.week-day-head.selected{outline:3px solid var(--teal-ink);outline-offset:-3px}.calendar-day-top{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:var(--fs-xs);font-weight:600}.today-dot{color:var(--teal-ink);font-size:28px;line-height:12px}.calendar-count{font-size:24px;line-height:1.3;font-variant-numeric:tabular-nums}.calendar-count small{display:block;font-weight:400;font-size:10px}.calendar-load-label{font-size:10px}.calendar-markers{display:flex;gap:4px;flex-wrap:wrap;margin-top:auto}.private-marker,.event-marker{display:inline-flex;align-items:center;gap:5px;font-size:10px;border-radius:5px;padding:4px 5px;font-weight:600}.private-marker{background:var(--private-bg);color:var(--private-ink)}.private-marker .icon,.event-marker .icon{width:14px;height:14px}.event-marker{background:var(--warning-bg);color:var(--warning)}.badge.private{background:var(--private-bg);color:var(--private-ink)}.private-callout{background:var(--private-bg);color:var(--private-ink)}.agenda-detail{margin-top:24px}.day-numbers{display:flex;gap:40px;margin:18px 0 22px;flex-wrap:wrap}.day-numbers>div{display:flex;flex-direction:column;gap:4px}.day-numbers strong{font-size:28px;font-variant-numeric:tabular-nums}.day-numbers span{font-size:var(--fs-xs);color:var(--muted)}.agenda-day-list{margin-top:18px}.agenda-event-row{display:flex;align-items:center;gap:16px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:16px 0;text-align:left;width:100%;min-height:68px}.agenda-event-row>strong{width:52px;flex-shrink:0}.agenda-event-row>span:nth-child(2){flex:1;min-width:0}.agenda-event-row small{display:block;color:var(--muted);margin-top:4px}.agenda-event-row>span:last-child,.agenda-event-row>.icon{flex-shrink:0}
.calendar-week{display:grid;grid-template-columns:48px repeat(7,minmax(0,1fr));gap:5px;min-width:0}.week-scale{display:flex;flex-direction:column;font-size:10px;color:var(--muted)}.week-scale>span:first-child{height:72px}.week-scale>span:not(:first-child){height:52px}.week-day-head{width:100%;height:62px;display:flex;flex-direction:column;justify-content:center;gap:5px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:5px;font-size:11px}.week-day-head strong{font-size:11px}.week-day-head span{font-size:9px}.week-track{height:552px;position:relative;margin-top:10px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 51px,var(--line) 51px,var(--line) 52px);border-left:1px solid var(--line)}.week-event{position:absolute;left:3px;right:0;border:1px solid var(--strong-line);border-radius:6px;padding:5px;background:var(--selected);color:var(--teal-ink);text-align:left;display:flex;flex-direction:column;font-size:10px;min-height:62px;line-height:1.4;overflow:hidden}.week-event strong{font-size:11px}.week-event small{font-size:9px}.week-event.private{background:var(--private-bg);color:var(--private-ink)}.week-event.event{background:var(--warning-bg);color:var(--warning)}.week-empty{display:block;margin-top:18px;font-size:10px;color:var(--muted);text-align:center;padding:4px}
.reception-welcome{display:flex;align-items:center;gap:18px;padding:20px;background:var(--selected);border-radius:var(--radius);margin-bottom:22px}.reception-welcome p{font-size:var(--fs-sm);color:var(--muted);margin-top:6px}.reception-turn{padding:24px;display:flex;flex-direction:column;gap:16px}.reception-turn .panel-head{margin:0}.reception-count{font-size:var(--fs-sm)}.reception-count strong{font-size:32px;margin-right:5px}.reception-turn>.button{align-self:flex-start}.meal-summary{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px;border-radius:var(--radius-sm);background:var(--surface-soft);font-size:var(--fs-sm)}.meal-summary>span:first-child{display:flex;align-items:center;gap:8px}.reception-guide{margin-top:24px}.quick-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:22px}.quick-steps>div{display:grid;grid-template-columns:32px 1fr;gap:8px 12px}.quick-steps>div>span{display:grid;place-items:center;grid-row:span 2;background:var(--selected);color:var(--teal-ink);width:32px;height:32px;border-radius:50%;font-weight:600}.quick-steps small{color:var(--muted)}.preparation-strip{padding:20px;background:var(--selected);border:1px solid var(--line);border-radius:var(--radius);margin:16px 0;display:flex;align-items:center;justify-content:space-between;gap:24px}.preparation-strip p{font-size:var(--fs-sm);margin-top:8px}.preparation-strip>.hint{max-width:200px}.compact{margin:12px 0}.roll-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:250px}.roll-actions button{min-height:44px}.passenger-table .badge{margin:3px 4px 3px 0}.quick-people{display:flex;flex-direction:column;gap:16px}.quick-person{display:grid;grid-template-columns:1.5fr 1fr;gap:12px;padding:16px;background:var(--surface-soft);border-radius:var(--radius)}.quick-person>.row{grid-column:1/-1}.quick-person .field-label{font-size:var(--fs-xs)}#quick-passenger-form .dialog-footer{position:sticky;bottom:-24px;margin:20px -28px -24px;z-index:2;border-top:1px solid var(--line)}
#print-sheet{display:none}.paper-preview{overflow-x:auto}.paper-sheet{min-width:660px;color:#172b34;background:white;padding:20px;font-family:Arial,sans-serif}.paper-heading h2{font:700 20px Arial,sans-serif;color:#172b34}.paper-heading p{font-size:12px;margin-top:8px}.paper-table{width:100%;border-collapse:collapse;font-size:11px;margin-top:18px;table-layout:fixed}.paper-table th,.paper-table td{border:1px solid #657781;padding:8px 5px;text-align:left;vertical-align:middle}.paper-table td{height:50px}.paper-table th{background:#eef2f3}.paper-table th:nth-child(1){width:12%}.paper-table th:nth-child(2){width:14%}.paper-table th:nth-child(3){width:8%}.paper-table th:nth-child(4){width:28%}.paper-table th:nth-child(5){width:20%}.paper-table th:nth-child(6),.paper-table th:nth-child(7){width:9%}.paper-table small{display:block;font-size:9px;margin-top:3px}.paper-check{font-size:23px;text-align:center!important}.paper-notes{border:1px solid #657781;height:80px;margin-top:16px;padding:10px;font-size:12px}.paper-foot{font-size:10px;margin-top:16px;color:#172b34}
@media(max-width:1050px){.calendar-day{min-height:126px;padding:7px}.calendar-load-label{font-size:9px}.private-marker,.event-marker{padding:3px;font-size:9px}.week-event small{display:none}.week-event{font-size:9px;min-height:50px}}
@media(max-width:600px){.operation-date{padding:16px;flex-direction:column;align-items:flex-start;gap:10px}.operation-date label{flex-wrap:wrap;gap:10px;width:100%}.operation-date input{flex:1;min-width:160px}.calendar-surface{padding:12px}.calendar-toolbar{gap:14px}.calendar-toolbar h3{font-size:var(--fs-md)}.calendar-toolbar>.row{gap:4px}.calendar-toolbar>.row:last-child{width:100%;justify-content:space-between}.calendar-toolbar .button{padding:5px;font-size:11px}.calendar-toolbar .tabs{width:auto}.calendar-toolbar .tabs button{padding:8px 12px}.calendar-legend{gap:6px}.calendar-legend .heat-key{padding:4px 5px;font-size:10px}.calendar-source{font-size:11px}.month-weekdays,.calendar-month{gap:3px}.calendar-day{min-height:95px;padding:5px 3px;gap:3px;border-radius:5px}.calendar-count{font-size:18px}.calendar-count small{font-size:8px}.calendar-day-top{font-size:10px}.calendar-load-label{display:none}.calendar-markers{gap:2px}.calendar-markers .private-marker span,.calendar-markers .event-marker span{display:none}.calendar-markers .icon{width:12px;height:12px}.calendar-day .today-dot{font-size:20px}.day-numbers{gap:18px}.day-numbers strong{font-size:24px}.day-numbers span{font-size:11px;max-width:92px}.agenda-event-row{gap:10px;align-items:flex-start}.agenda-event-row>strong{width:44px;font-size:var(--fs-xs)}.agenda-event-row b{font-size:var(--fs-sm)}.agenda-event-row .badge{max-width:80px;white-space:normal}.calendar-week{display:flex;flex-direction:column;gap:18px}.week-scale{display:none}.week-column{border:1px solid var(--line);border-radius:8px;overflow:hidden}.week-day-head{height:auto;min-height:44px;padding:10px;flex-direction:row;justify-content:space-between;border:0;border-radius:0}.week-day-head strong{font-size:13px}.week-day-head span{font-size:11px}.week-track{height:auto;position:static;display:flex;flex-direction:column;gap:8px;background:none;border:0;margin:0;padding:10px}.week-event{position:static;min-height:44px;font-size:12px;padding:10px}.week-event strong{font-size:13px}.week-event small{display:block;font-size:11px}.week-empty{margin:0;padding:8px;font-size:12px}.reception-welcome{padding:18px;align-items:flex-start}.reception-welcome .assistant-sign{width:38px;height:42px}.reception-turn{padding:20px}.reception-turn .panel-head{align-items:flex-start;gap:12px;flex-wrap:wrap}.reception-turn .badge{white-space:normal}.quick-steps{grid-template-columns:1fr;gap:20px}.preparation-strip{padding:16px;flex-direction:column;align-items:flex-start;gap:12px}.preparation-strip>.hint{max-width:none}.roll-actions{max-width:none;width:100%;justify-content:flex-start}.quick-person{grid-template-columns:1fr;padding:14px}.quick-person>.row{flex-wrap:wrap;gap:8px}.quick-person .input{width:100%;min-width:0}#quick-passenger-form .dialog-footer{margin:20px -20px -20px;bottom:-20px}.paper-preview{padding:12px}}
@media print{@page{size:A4 landscape;margin:12mm}body{background:white!important;color:black!important}body>*{display:none!important}body>#print-sheet{display:block!important}.paper-sheet{padding:0;min-width:0}.paper-table td{height:13mm}.paper-table th{background:white}.paper-heading h2{font-size:18px}.paper-notes{height:20mm}dialog::backdrop{display:none!important}}

@media(max-width:600px){.week-track{height:auto!important}.calendar-count small{display:none}}
.assistant-invitation .text-action{color:var(--teal-ink)}

.paper-option{display:flex;align-items:center;gap:12px;min-height:44px;padding:12px;margin-bottom:16px;background:var(--surface-soft);border-radius:8px;font-size:var(--fs-sm)}.paper-option input{width:18px;height:18px;accent-color:var(--teal-ink)}
