/* Bright full-width schedule editing. All styles are scoped to the planner. */
.feeding-planner,.fp-dialog{--fp-ink:#352d44;--fp-muted:#85788e;--fp-line:#e8def1;--fp-purple:#7755b5;color:var(--fp-ink);font:inherit;font-size:14px;line-height:1.8}
.feeding-planner *,.fp-dialog *{box-sizing:border-box}.feeding-planner{min-width:0;width:100%;padding:0 0 24px}.feeding-planner h2,.feeding-planner h3,.feeding-planner h4,.fp-dialog h2,.fp-dialog h3,.fp-dialog h4{font:inherit;font-weight:800;line-height:1.55;margin:0}.feeding-planner h2{font-size:29px}.feeding-planner h3,.fp-dialog h3{font-size:18px}.feeding-planner h4,.fp-dialog h4{font-size:16px}.fp-kicker{font-size:11px;font-weight:700;letter-spacing:.045em;color:#9874b7}.fp-muted{font-size:12px;color:var(--fp-muted);overflow-wrap:anywhere}.fp-hero{display:flex;justify-content:space-between;align-items:center;gap:28px;border:1px solid var(--fp-line);border-radius:24px;padding:28px 32px;background:linear-gradient(115deg,#effaf5,#fff 50%,#f8f1fd);margin-bottom:22px}.fp-hero p{max-width:720px;color:var(--fp-muted);font-size:13px;margin:10px 0 0}.fp-hero h2{margin-top:7px}.fp-tools,.fp-actions,.fp-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.fp-tools{align-items:end;flex-shrink:0}.fp-toolbar{margin-bottom:22px;align-items:end}.fp-toolbar .fp-field{min-width:170px;margin-inline-start:auto}.fp-button{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:9px 16px;background:#fff;border:1px solid #dfd2ee;border-radius:12px;color:#7553a1;font:inherit;font-size:13px;font-weight:700;cursor:pointer;text-decoration:none}.fp-button.primary{color:#fff;background:var(--fp-purple);border-color:var(--fp-purple)}.fp-button.compact{min-height:36px;padding:7px 12px;font-size:12px}.fp-button.text{border:0;background:transparent;padding:0;min-height:30px;text-align:start;justify-content:start}.fp-button.close{width:36px;min-height:36px;padding:0;font-size:23px;flex:0 0 36px}.fp-button:disabled{opacity:.5;cursor:not-allowed}.fp-button:focus-visible,.fp-field input:focus-visible,.fp-field select:focus-visible,.fp-horse-choice input:focus-visible,.fp-override-label input:focus-visible,.fp-allocation summary:focus-visible,.fp-horse-editor summary:focus-visible{outline:3px solid #cab1e9;outline-offset:3px}.fp-button:hover{filter:brightness(.98)}.fp-field{min-width:0}.fp-field label{display:block;font-size:12px;color:#806d8e;font-weight:700;margin-bottom:7px}.fp-field input,.fp-field select{width:100%;min-height:44px;border:1px solid #e2d7ee;border-radius:10px;background:#fff;padding:10px 12px;font:inherit;font-size:13px;color:#4e3e5c}.fp-field input[type=time],.fp-field input[type=date]{direction:ltr}.fp-boundary{display:flex;align-items:start;gap:20px;border:1px solid #dcece2;border-radius:15px;padding:16px 20px;background:#f4fcf7;font-size:12px;color:#658372;margin-bottom:22px}.fp-boundary strong{white-space:nowrap;color:#467b62}.fp-notice,.fp-error,.fp-warning{padding:15px 20px;border:1px solid #dcebdd;border-radius:13px;background:#f2fbf4;color:#658874;margin:0 0 20px;font-size:13px;overflow-wrap:anywhere}.fp-error{background:#fff4f6;color:#a26b82;border-color:#efd9e1}.fp-warning{background:#fff9ec;color:#9b7c45;border-color:#efe1c0}.fp-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.fp-metric{border:1px solid #e9def4;border-radius:18px;background:#f7f2fc;padding:21px 24px}.fp-metric span{display:block;font-size:12px;color:var(--fp-muted);margin-bottom:8px}.fp-metric strong{font-size:29px;font-variant-numeric:tabular-nums;color:#835fac}.fp-metric.tone-1{background:#f0faf5;border-color:#dcece1}.fp-metric.tone-1 strong{color:#4a8a70}.fp-metric.tone-2{background:#fff8ed;border-color:#eee2cd}.fp-metric.tone-2 strong{color:#a0814c}.fp-panel{min-width:0;background:#fff;border:1px solid var(--fp-line);border-radius:20px;padding:24px 26px;margin-bottom:23px}.fp-panel-head{display:flex;align-items:start;justify-content:space-between;gap:18px;margin-bottom:20px}.fp-panel-head p{font-size:12px;color:var(--fp-muted);line-height:1.9;margin:7px 0 0}.fp-schedules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.fp-schedule{min-width:0;border:1px solid #e8dff1;border-radius:17px;padding:23px;background:#fdfbff}.fp-schedule-head{display:flex;justify-content:space-between;align-items:start;gap:17px}.fp-schedule h4{overflow-wrap:anywhere}.fp-badge{white-space:nowrap;font-size:11px;color:#5f9278;background:#edf8f0;padding:5px 11px;border-radius:999px}.fp-badge.archived{background:#f1eef5;color:#9988a6}.fp-schedule-times{border-block:1px solid #eee5f6;padding:8px 0;margin:15px 0;color:#897293;font-size:12px;overflow-wrap:anywhere}.fp-schedule-times p{margin:6px 0}.fp-schedule-total{display:flex;flex-direction:column;gap:5px;font-size:12px;margin-bottom:18px}.fp-schedule-total span{color:var(--fp-muted)}.fp-schedule-total strong{font-size:13px;color:#65846f}.fp-empty{grid-column:1/-1;padding:30px 18px;background:#fcfafe;border:1px dashed #e4d8ed;border-radius:13px;text-align:center;font-size:13px;color:#9a87a8}.fp-pending{display:flex;justify-content:space-between;align-items:center;gap:22px;border:1px solid #efe0ca;border-radius:14px;background:#fffbf3;padding:18px 20px;margin-bottom:13px}.fp-pending strong{font-size:13px;overflow-wrap:anywhere}.fp-pending p{font-size:12px;color:#998267;margin:5px 0}.fp-pending small{font-size:11px;color:#aa875b;overflow-wrap:anywhere}.fp-pending>.fp-actions{flex-shrink:0}.fp-table-wrap{max-width:100%;overflow:auto;border:1px solid #ece4f4;border-radius:13px}.fp-table{width:100%;border-collapse:collapse;text-align:start;font-size:12px;white-space:nowrap}.fp-table th{font-size:11px;font-weight:700;color:#9680a4;background:#fbf7fe;padding:13px 17px;border-bottom:1px solid #ece2f4;text-align:start}.fp-table td{padding:14px 17px;border-bottom:1px solid #f0e8f6;color:#6a567b}.fp-table tr:last-child td{border-bottom:0}.fp-ltr{direction:ltr;text-align:start}.fp-report-total{font-size:13px;font-weight:700;color:#5c8b71;background:#f0faf4;border-radius:11px;padding:14px 17px;margin:18px 0 0}.fp-dialog{width:min(780px,calc(100% - 28px));max-height:92vh;overflow:auto;border:1px solid #ddcfea;border-radius:22px;background:#fff;padding:0;box-shadow:0 30px 100px #3a284733}.fp-dialog.wide{width:min(1240px,calc(100% - 32px))}.fp-dialog::backdrop{background:#4730543b;backdrop-filter:blur(3px)}.fp-dialog-head{display:flex;justify-content:space-between;align-items:start;gap:24px;padding:25px 29px;background:#fbf8ff;border-bottom:1px solid #eee5f5}.fp-dialog-head h2{font-size:22px}.fp-dialog-head p{color:#8b7799;font-size:12px;margin:8px 0 0;max-width:960px}.fp-dialog-body{padding:25px 28px}.fp-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.fp-form-error{color:#a55f7d;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.fp-form-error:empty{display:none}.fp-two-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;min-width:0}.fp-feed-block{min-width:0;background:#fcf9ff;border:1px solid #e9dff4;border-radius:15px;padding:21px}.fp-feed-block.green{background:#f5fbf7;border-color:#ddece2}.fp-feed-block h4{color:#8c62a8;margin-bottom:17px}.fp-feed-block.green h4{color:#598571}.fp-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:18px}.fp-weight-inputs{display:grid;grid-template-columns:minmax(0,1fr) minmax(85px,.45fr);gap:12px}.fp-horse-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-height:300px;overflow:auto;padding:2px}.fp-horse-choice{display:flex;gap:10px;align-items:center;min-width:0;border:1px solid #e8deef;border-radius:11px;padding:12px 14px;background:#fdfbff;cursor:pointer;font-size:12px;color:#7f658e}.fp-horse-choice span{overflow-wrap:anywhere}.fp-horse-choice:has(input:checked){background:#f2eafb;border-color:#cbb3e6;color:#77549e}.fp-horse-choice input,.fp-override-label input{width:18px;height:18px;flex:0 0 18px;accent-color:#8c64bb}.fp-selection-count{font-size:12px;color:#93829f;align-self:center}.fp-horse-editor,.fp-allocation{border:1px solid #e6dcef;border-radius:15px;background:#fff;margin-bottom:16px;overflow:hidden}.fp-horse-editor>summary,.fp-allocation>summary{cursor:pointer;padding:19px 22px;background:#faf6fe;color:#6f4e91;font-size:13px;font-weight:700;overflow-wrap:anywhere}.fp-horse-editor>summary{display:list-item;list-style:disclosure-closed inside}.fp-horse-editor[open]>summary{list-style:disclosure-open inside;border-bottom:1px solid #eadff4}.fp-horse-editor>summary strong{margin-inline-end:15px}.fp-horse-editor>summary>.fp-muted{font-weight:400;font-size:11px}.fp-horse-editor>.fp-two-feed{padding:23px}.fp-override-label{display:flex;align-items:center;gap:10px;font-size:12px;color:#857094;margin:19px 0}.fp-meals{display:flex;flex-direction:column;gap:10px}.fp-meal{display:grid;grid-template-columns:67px minmax(0,1fr) minmax(85px,.5fr);align-items:end;gap:11px;padding:12px 13px;border:1px solid #e8def0;border-radius:11px;background:#fff}.fp-meal-time{color:#8a6a9c;font-size:12px;align-self:center;font-weight:700}.fp-meal-automatic{grid-column:2/-1;color:#638b70;font-size:13px;justify-self:end;align-self:center}.fp-meal .fp-field label{font-size:10px;margin-bottom:5px}.fp-meal .fp-field input,.fp-meal .fp-field select{font-size:12px;min-height:38px;padding:8px 10px}.fp-meal-sum{font-size:11px;color:#7c987f;margin:14px 0}.fp-meal-sum.mismatch{color:#b07660;background:#fff4e9;border:1px solid #ecd8c8;border-radius:9px;padding:10px}.fp-editor-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;border-top:1px solid #eadff3;padding-top:22px;margin-top:20px}.fp-preview-summary{background:#f4edf9;border:1px solid #e4d7ef;border-radius:13px;color:#88649f;font-size:13px;font-weight:700;padding:18px 21px;margin-bottom:19px}.fp-stock-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-bottom:21px}.fp-stock-check{border:1px solid #dcebdd;background:#f3fbf5;border-radius:14px;padding:18px 20px;color:#649473}.fp-stock-check strong{font-size:13px}.fp-stock-check p{font-size:12px;margin:8px 0}.fp-stock-check small{font-size:11px;line-height:1.8}.fp-stock-check.insufficient{background:#fff9ed;border-color:#eddfc4;color:#a2844b}.fp-allocation .fp-table-wrap{border:0;border-top:1px solid #ece1f4;border-radius:0}.fp-dialog [hidden]{display:none!important}
.fp-bulk{border:1px solid #e7ddf1;background:#f9f5fd;border-radius:14px;padding:20px 22px;margin-bottom:23px}.fp-bulk h4{color:#80609b;font-size:14px}.fp-bulk>.fp-muted{margin:8px 0 17px}.fp-bulk>.fp-button{margin-top:16px}
@media(max-width:1100px){.fp-hero{flex-wrap:wrap;align-items:start}.fp-schedules{grid-template-columns:1fr}.fp-horse-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.fp-pending{flex-wrap:wrap}.fp-pending>.fp-actions{flex-shrink:1}}
@media(max-width:700px){.fp-hero{padding:22px;gap:18px}.feeding-planner h2{font-size:25px}.fp-tools{width:100%;align-items:end}.fp-tools>.fp-field{flex:1}.fp-boundary{flex-direction:column;gap:7px;padding:15px 18px}.fp-metrics{grid-template-columns:1fr;gap:10px}.fp-metric{display:flex;align-items:center;justify-content:space-between;padding:15px 19px}.fp-metric span{margin:0}.fp-metric strong{font-size:25px}.fp-panel{padding:20px 18px}.fp-schedule{padding:20px}.fp-toolbar{gap:9px}.fp-toolbar .fp-field{width:100%;min-width:0;margin-inline-start:0}.fp-dialog-head,.fp-dialog-body{padding:20px 17px}.fp-dialog-head h2{font-size:19px}.fp-dialog.wide{width:calc(100% - 18px)}.fp-two-feed,.fp-form-grid,.fp-stock-checks{grid-template-columns:1fr;gap:18px}.fp-horse-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-horse-choice{padding:11px 10px;font-size:11px}.fp-feed-block{padding:18px 16px}.fp-horse-editor>.fp-two-feed{padding:16px 12px}.fp-horse-editor>summary,.fp-allocation>summary{padding:16px}.fp-horse-editor>summary>.fp-muted{display:block;margin-top:6px}.fp-editor-actions{justify-content:stretch;gap:10px}.fp-editor-actions>.fp-button{flex:1 1 100%;width:100%}.fp-meal{grid-template-columns:56px minmax(0,1fr) 82px;padding:11px 9px;gap:8px}.fp-meal .fp-field label{font-size:9px}.fp-meal .fp-field input,.fp-meal .fp-field select{padding:8px 7px}.fp-pending{padding:16px;gap:15px}.fp-pending>.fp-actions{width:100%}.fp-table td,.fp-table th{padding:12px 14px}.fp-preview-summary{padding:16px;font-size:12px}.fp-stock-check{padding:16px}.fp-actions>.fp-button{font-size:12px}}
