.director-week{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}.director-place{display:flex;align-items:center;gap:17px;min-width:0}.director-place>img{width:62px;height:59px;object-fit:contain}.director-place>svg{color:var(--primary)}.director-place .eyebrow{font-size:.67rem;margin-bottom:5px}.director-place h2{margin:0 0 6px;font-size:1.08rem}.director-place p:last-child{font-size:.76rem;color:var(--muted);margin:0}.director-week-picker{width:310px;margin:0;flex-shrink:0}.director-week-picker>span{font-size:.72rem}.director-week-picker select{font-size:.8rem}.director-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:21px;align-items:start}.director-section-note{font-size:.75rem;color:var(--muted);margin:7px 0 0}.director-side{display:flex;flex-direction:column;gap:20px}.director-total>strong{display:block;font-size:2.15rem;font-weight:650;letter-spacing:-.05em;margin-bottom:8px}.director-total>span{font-size:.75rem;color:var(--muted)}.director-category-totals{margin-top:23px;border-top:1px solid var(--line);padding-top:12px}.director-category-totals>div{display:flex;gap:15px;justify-content:space-between;padding:9px 0;font-size:.73rem;color:var(--muted)}.director-category-totals strong{color:#48516a;white-space:nowrap;font-size:.75rem;font-weight:550}.director-ticket-number{color:var(--primary);background:var(--primary-soft);border-radius:6px;font-size:.7rem;padding:6px}.director-document{display:flex;align-items:center;gap:10px;color:var(--ink);min-width:155px}.director-document>svg{color:#9098b0}.director-document strong{font-size:.79rem;display:block;max-width:220px;overflow-wrap:anywhere;font-weight:550}.director-document small{display:block;color:var(--muted);font-size:.66rem;margin-top:4px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.director-expenses .pill{font-size:.66rem}.director-money{font-weight:600;white-space:nowrap}.director-row-actions{display:flex;gap:1px;justify-content:flex-end}.director-expenses tfoot td{padding-top:19px;font-weight:600;border-top:1px solid var(--line)}.director-ledger-footer{border-top:1px solid var(--line);margin-top:20px;padding-top:19px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.director-info-title{display:flex;gap:8px;align-items:center;color:var(--primary);margin-bottom:11px}.director-info-title h3{font-size:.86rem;margin:0;color:var(--ink)}.director-info p{font-size:.76rem;color:var(--muted);line-height:1.65}.director-recipient{display:flex;gap:8px;align-items:center;font-size:.72rem;color:#61718b;overflow-wrap:anywhere}.director-recipient span{min-width:0}.director-status{display:inline-flex;background:#f3f4f9;color:#747d92;padding:5px 9px;border-radius:6px;font-size:.69rem;white-space:nowrap}.director-status.complete{background:#eaf6f1;color:#338568}.director-mail-status{display:flex;gap:7px;align-items:flex-start;font-size:.73rem;color:#63728e;line-height:1.5}.director-small-note{font-size:.73rem!important;color:var(--muted);line-height:1.6}.director-alert{background:#fff7e7;border:1px solid #f0e2bb;color:#917333;border-radius:10px;padding:14px 17px;display:flex;gap:12px;margin-bottom:22px}.director-alert strong{font-size:.8rem}.director-alert p{font-size:.74rem;line-height:1.6;margin:4px 0 0}.director-close-summary{background:#f6f7fc;padding:18px;border-radius:9px;margin-bottom:20px}.director-close-summary>span{font-size:.77rem;color:var(--muted)}.director-close-summary>strong{display:block;font-size:1.8rem;margin:9px 0}.director-close-summary p{font-size:.76rem;color:var(--muted);margin:0}.director-report-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.director-report{border:1px solid var(--line);border-radius:10px;padding:20px}.director-report-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px}.director-report-head .person-row strong{font-size:.8rem}.director-report-head small{font-size:.68rem;display:block;color:var(--muted);margin-top:4px}.director-report-content{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.86rem;line-height:1.85;color:#5a6379;max-height:320px;overflow:auto;padding-right:8px}.director-report-actions{display:flex;flex-wrap:wrap;gap:7px;border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.director-trainee-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.director-trainee{border:1px solid var(--line);border-radius:11px;padding:21px}.director-trainee-head{display:flex;align-items:center;gap:11px;margin-bottom:22px}.director-trainee-head h3{margin:0 0 6px;font-size:.9rem}.director-trainee-head>.director-status{margin-left:auto}.director-stage-facts>div{display:flex;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid #f0f2f7;font-size:.74rem}.director-stage-facts span{color:var(--muted)}.director-stage-facts strong{font-weight:550;text-align:right}.director-appreciation{white-space:pre-wrap;overflow-wrap:anywhere;color:#677187;background:#fafbfe;border-radius:7px;padding:13px;font-size:.77rem;line-height:1.75;max-height:170px;overflow:auto;margin-top:18px}.director-trainee-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:18px}.director-unassigned{background:#fff8eb;color:#9b7c40;padding:9px 11px;border-radius:6px;font-size:.72rem;line-height:1.55}.director-reminder-note{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px}.director-reminder-note>div{display:flex;align-items:flex-start;gap:14px}.director-reminder-note svg{color:#8f99b1;flex-shrink:0}.director-reminder-note h3{margin:0 0 6px;font-size:.88rem}.director-reminder-note p{margin:0;font-size:.76rem;line-height:1.7;color:var(--muted)}.director-empty-action{display:flex;justify-content:center;margin-top:-15px;margin-bottom:22px}.director-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.form-grid .full-width{grid-column:1/-1}.check-field{display:flex;align-items:flex-start;gap:9px;font-size:.8rem;color:#515970;line-height:1.5;margin-bottom:16px}.check-field input{margin-top:3px;accent-color:var(--primary)}.data-note{font-size:.75rem;line-height:1.6;color:var(--muted)}
@media(max-width:1200px){.director-layout{grid-template-columns:minmax(0,1fr)}.director-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.director-report-list{grid-template-columns:1fr}.director-week-picker{width:275px}}@media(max-width:760px){.director-week{align-items:stretch;flex-direction:column;gap:18px}.director-week-picker{width:100%}.director-place>img{width:48px;height:48px}.director-side,.director-trainee-grid{grid-template-columns:1fr}.director-ledger .section-heading{align-items:flex-start;flex-wrap:wrap}.director-ledger-footer>.button{flex:1}.director-reminder-note{align-items:flex-start;flex-direction:column}.director-report-head{flex-wrap:wrap}.director-trainee{padding:17px}.director-trainee-head{gap:9px;flex-wrap:wrap}.director-trainee-head>.director-status{margin-left:0}.director-expenses td,.director-expenses th{white-space:nowrap}.director-document strong{max-width:180px}}
.director-report-modal{width:min(960px,100%)}.director-report-intro{padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px}.director-report-intro h3{margin-bottom:7px}.director-report-intro p{margin-bottom:8px;font-size:.78rem;color:var(--muted)}.director-report-intro a{font-size:.75rem}.director-report-context{display:flex;gap:35px;margin-bottom:20px;flex-wrap:wrap}.director-report-context span{display:block;font-size:.72rem;color:var(--muted);margin-bottom:5px}.director-report-context strong{font-size:.84rem;font-weight:550}.director-report-weeks{border:1px solid var(--line);border-radius:9px;padding:16px 18px;margin:0 0 23px}.director-report-weeks legend{padding:0 6px;font-size:.85rem;font-weight:600}.director-report-weeks>p{font-size:.75rem;color:var(--muted);margin-bottom:13px}.director-report-week-check{display:inline-flex;gap:7px;align-items:center;background:#f5f6fb;border-radius:6px;padding:8px 10px;font-size:.76rem;margin:0 8px 8px 0}.director-report-week-check input{accent-color:var(--primary)}.director-report-section{border:1px solid var(--line);border-radius:9px;margin-bottom:13px;overflow:hidden}.director-report-section>summary{cursor:pointer;padding:15px 17px;font-size:.88rem;font-weight:600;background:#fafbfe;color:#46506a}.director-report-section[open]>summary{border-bottom:1px solid var(--line)}.director-report-section>div{padding:20px 18px 5px}.director-report-field{margin-bottom:23px}.director-report-field>h3,.director-form-subtitle{font-size:.83rem;margin-bottom:12px}.director-report-table{min-width:850px}.director-report-table th{white-space:normal!important;font-size:.7rem;line-height:1.5;text-transform:none;letter-spacing:0;width:16.6%;min-width:100px}.director-report-table th small{display:block;font-size:.66rem;line-height:1.4;margin-top:6px}.director-report-table td{vertical-align:top;padding:10px 6px}.director-cell-field{display:block}.director-cell-field input,.director-cell-field textarea{width:100%;border:1px solid #dfe3ed;border-radius:5px;padding:8px;font-size:.77rem;background:#fff;color:var(--ink);min-width:95px}.director-cell-field textarea{resize:vertical;min-height:67px}.director-cell-field textarea:disabled{background:#f4f5f9;color:#969dad}.director-field-help{font-size:.75rem;line-height:1.65;color:var(--muted);margin-top:-7px;margin-bottom:18px}.director-planning-answer{padding:15px;background:#fcfcff;border:1px solid var(--line);border-radius:8px;margin-bottom:13px}.director-planning-answer>p{font-size:.77rem;margin-bottom:13px}.director-planning-answer .field{margin-top:16px;margin-bottom:0}.director-planning-table{min-width:680px}.director-planning-table th{font-size:.7rem;letter-spacing:0;text-transform:none;white-space:normal!important;min-width:106px}.director-planning-table th:first-child{min-width:86px;width:86px}.director-planning-table th small{display:block;font-size:.64rem;margin-top:5px;white-space:nowrap;font-weight:400;color:var(--muted)}.director-planning-table td{padding:8px 5px;vertical-align:top}.director-saved-photo{font-size:.75rem;margin-top:9px}.director-report-modal .form-actions{border-top:1px solid var(--line);padding-top:18px}@media(max-width:760px){.director-report-context{gap:18px;flex-direction:column}.director-report-section>div{padding:16px 12px 2px}.director-planning-answer{padding:12px}.director-report-week-check{width:100%;margin-right:0}.director-report-weeks{padding:12px}.director-report-table{min-width:800px}}
.director-templates{margin-bottom:22px}.director-template-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.director-template-list article{padding:19px;border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;align-items:flex-start;gap:15px}.director-template-list article>div:first-child{display:flex;gap:12px;align-items:flex-start}.director-template-list svg{color:var(--primary);flex-shrink:0}.director-template-list h3{font-size:.87rem;margin:0 0 7px}.director-template-list p{font-size:.75rem;line-height:1.6;color:var(--muted);margin:0}.director-template-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.director-planning-photo .check-field{margin-top:12px}.director-planning-photo .director-saved-photo{display:inline-block}@media(max-width:760px){.director-template-list{grid-template-columns:1fr}.director-template-list article{padding:16px}}

.expense-ventilation,.meal-budget-options{border:1px solid #c5d4ea;border-radius:9px;padding:17px;margin:0 0 20px}.expense-ventilation legend,.meal-budget-options legend{padding:0 7px;color:#3c5278;font-weight:600;font-size:.88rem}.expense-entry{display:grid;grid-template-columns:minmax(0,1fr) 135px 30px;gap:12px;align-items:center}.expense-entry .field{min-width:0}.expense-entry select{min-width:0;max-width:100%}.expense-lines-total{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #c5d4ea;margin-top:15px;padding:14px 0 0;color:#496384}.expense-lines-total strong{color:#2e48a7;font-size:1.2rem}.expense-line-display{display:grid;gap:6px;font-size:.72rem;line-height:1.5;min-width:130px}.expense-line-display span{padding:5px 7px;background:#eff4fc;border-radius:5px}.expense-line-display strong{display:block;color:#385076}.expense-camera{align-self:start;cursor:pointer}.meal-budget-panel{margin-bottom:22px;background:#f7faff;border:1px solid #b9cae5}.meal-budget-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.meal-budget-metrics>div{background:#e9f1fd;border:1px solid #c4d5ef;border-radius:9px;padding:15px}.meal-budget-metrics span,.meal-budget-metrics small{display:block;color:#546c91;font-size:.76rem;line-height:1.5}.meal-budget-metrics strong{display:block;color:#2e4b94;font-size:1.55rem;margin:8px 0;font-weight:650}.meal-budget-metrics .over-budget{background:#fff0f2;border-color:#edbcc8}.meal-budget-metrics .over-budget strong{color:#b02f4f}.meal-budget-details summary{cursor:pointer;color:#3e5d95;font-size:.83rem;padding:8px 0}.meal-extra-row{border:1px solid #c7d5eb;background:#f4f8fe;border-radius:8px;padding:15px;margin:12px 0}.director-report-content,.director-appreciation{max-height:none;overflow:visible}.director-report-table,.director-planning-table{min-width:0;width:100%;table-layout:fixed}.director-report-table th,.director-planning-table th{min-width:0;white-space:normal}.director-report-table td,.director-planning-table td{min-width:0}.director-cell-field input,.director-cell-field textarea{min-width:0}.director-expenses td{white-space:normal;overflow-wrap:anywhere}.director-report-modal .table-wrap{overflow:visible}@media(max-width:760px){.meal-budget-panel .section-heading{flex-wrap:wrap;gap:12px}.meal-budget-metrics{grid-template-columns:1fr}.meal-budget-metrics>div{padding:13px}.meal-budget-metrics strong{font-size:1.35rem}.expense-entry{grid-template-columns:minmax(0,1fr) 105px 26px;gap:7px}.expense-entry .field>span{font-size:.72rem}.expense-ventilation,.meal-budget-options{padding:12px}.director-report-table,.director-planning-table{min-width:0!important}.director-planning-table tbody th{display:block;width:100%;border:0;background:#eaf1fd;padding:9px}.director-report-table td,.director-planning-table td{white-space:normal}.director-cell-field textarea{width:100%}.director-report-table .director-visually-hidden,.director-planning-table .director-visually-hidden{position:static;width:auto;height:auto;clip:auto;display:block;font-size:.72rem;color:#5d7395;margin-bottom:5px}.director-expenses tfoot{display:block}.director-expenses tfoot tr{display:block}.director-expenses tfoot td{display:block;padding:7px 10px}.director-money{font-size:1rem}.director-expenses .director-document{min-width:0}}

.stage-message-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.stage-message-facts>div{border:1px solid var(--line);border-radius:10px;background:#eef1f8;padding:12px;min-width:0}.stage-message-facts span{display:block;color:var(--muted);font-size:.75rem;margin-bottom:5px}.stage-message-facts strong{overflow-wrap:anywhere}.stage-message-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;padding:18px;border:1px solid var(--line);border-radius:12px;background:#f2f4f8;margin:16px 0}.director-stage-transmission-status{display:flex;align-items:center;gap:7px;font-size:.78rem;line-height:1.5;color:var(--muted)}.director-stage-transmission-status.complete{color:#236642}@media(max-width:560px){.stage-message-facts{grid-template-columns:1fr}}

.meal-fixed-rate{display:flex;flex-direction:column;gap:5px;border:1px solid #a6bad1;background:#eaf1f9;padding:14px;border-radius:12px;color:#243c58}.meal-fixed-rate span{font-size:13px}.meal-day-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.meal-day-check{display:flex;gap:8px;align-items:flex-start;padding:10px;border:1px solid #b3c3d5;border-radius:10px;background:#f4f7fa}.meal-day-check:has(input:checked){background:#e8f4ed;border-color:#7fac8e}.meal-day-check span{display:flex;flex-direction:column;gap:6px}.meal-day-check strong{text-transform:capitalize;font-size:13px}.meal-day-check small{font-size:11px;color:#43536a}.meal-budget-preview{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:2px solid #afbdd0;margin-top:20px;padding-top:16px}.meal-budget-preview strong{font-size:23px;color:#205f3e}.annual-meal-panel{margin:22px 0}.annual-meal-rates{display:flex;flex-wrap:wrap;gap:14px}.annual-meal-rates>div{border:1px solid #b9c9d9;border-radius:12px;padding:15px;display:flex;flex-direction:column;gap:6px;min-width:170px}.annual-meal-rates strong{font-size:24px;color:#205f3e}.annual-meal-rates small{color:#4d5d73}@media(max-width:750px){.meal-day-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:430px){.meal-day-grid{grid-template-columns:1fr}.meal-budget-preview{flex-direction:column;align-items:flex-start}}
