.login[data-v-a05391bf]{background:radial-gradient(circle at 20% 0%, var(--accent-soft,#e8f0fd), transparent 55%), var(--paper,#f4f6fa);place-items:center;min-height:100dvh;padding:1.5rem;display:grid}.card[data-v-a05391bf]{background:var(--surface,#fff);border:1px solid var(--line,#e2e8f2);border-radius:1.25rem;flex-direction:column;gap:1rem;width:min(24rem,100%);padding:2rem;display:flex;box-shadow:0 1.5rem 3rem #0f192d1f}header[data-v-a05391bf]{text-align:center;margin-bottom:.5rem}h1[data-v-a05391bf]{letter-spacing:-.02em;color:var(--accent,#2b6cd4);margin:0;font-size:1.6rem}.app[data-v-a05391bf]{color:var(--ink-soft,#66748a);margin:.25rem 0 0;font-size:.95rem}label[data-v-a05391bf]{color:var(--ink-soft,#66748a);flex-direction:column;gap:.35rem;font-size:.85rem;display:flex}input[data-v-a05391bf]{color:var(--ink,#1c2430);background:var(--paper,#f4f6fa);border:1px solid var(--line,#e2e8f2);border-radius:.65rem;padding:.7rem .85rem;font-size:1rem;transition:border-color .15s,box-shadow .15s}input[data-v-a05391bf]:focus{border-color:var(--accent,#2b6cd4);box-shadow:0 0 0 3px var(--accent-soft,#e8f0fd);outline:none}input[data-v-a05391bf]:disabled{opacity:.6}.field[data-v-a05391bf]{display:block;position:relative}.field input[data-v-a05391bf]{width:100%;padding-right:2.9rem}.reveal[data-v-a05391bf]{width:2.1rem;height:2.1rem;color:var(--ink-soft,#66748a);background:0 0;border-radius:.45rem;place-items:center;margin:0;padding:0;display:grid;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.reveal[data-v-a05391bf]:hover:not(:disabled){color:var(--accent,#2b6cd4);background:var(--accent-soft,#e8f0fd)}.reveal[data-v-a05391bf]:active:not(:disabled){transform:translateY(-50%)}.reveal svg[data-v-a05391bf]{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;width:1.15rem;height:1.15rem}.reveal .slash[data-v-a05391bf]{stroke-width:1.9px;paint-order:stroke;stroke:currentColor}.remember[data-v-a05391bf]{cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:row;align-items:center;gap:.5rem}.remember input[data-v-a05391bf]{width:auto;accent-color:var(--accent,#2b6cd4);margin:0}button[data-v-a05391bf]{color:#fff;background:var(--accent,#2b6cd4);cursor:pointer;border:none;border-radius:.65rem;justify-content:center;align-items:center;gap:.5rem;margin-top:.35rem;padding:.75rem 1rem;font-size:1rem;font-weight:600;transition:background .15s,transform 50ms;display:flex}button[data-v-a05391bf]:hover:not(:disabled){background:var(--accent-dark,#1f5099)}button[data-v-a05391bf]:active:not(:disabled){transform:translateY(1px)}button[data-v-a05391bf]:disabled{opacity:.55;cursor:not-allowed}.error[data-v-a05391bf]{color:#a02b1c;background:#fbeae7;border-radius:.55rem;margin:0;padding:.6rem .75rem;font-size:.9rem}.spinner[data-v-a05391bf]{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:.9rem;height:.9rem;animation:.7s linear infinite spin-a05391bf}@keyframes spin-a05391bf{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner[data-v-a05391bf]{animation-duration:2s}}.auth-splash[data-v-fb2d167e]{min-height:100dvh;color:var(--ink-soft,#66748a);background:var(--paper,#f4f6fa);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.spinner[data-v-fb2d167e]{border:3px solid var(--line,#e2e8f2);border-top-color:var(--accent,#2b6cd4);border-radius:50%;width:2rem;height:2rem;animation:.7s linear infinite spin-fb2d167e}p[data-v-fb2d167e]{margin:0;font-size:.95rem}@keyframes spin-fb2d167e{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner[data-v-fb2d167e]{animation-duration:2s}}.user-menu[data-v-10879031]{display:inline-block;position:relative}.avatar[data-v-10879031]{width:2.25rem;height:2.25rem;color:var(--user-menu-fg,#fff);background:var(--user-menu-bg,var(--accent,#2b6cd4));cursor:pointer;border:none;border-radius:50%;place-items:center;font-size:.8rem;font-weight:700;display:grid}.avatar[data-v-10879031]:hover{background:var(--user-menu-bg-hover,var(--accent-dark,#1f5099))}.popover[data-v-10879031]{z-index:50;background:var(--surface,#fff);border:1px solid var(--line,#e2e8f2);border-radius:.75rem;min-width:14rem;padding:.4rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 1rem 2rem #0f192d29}.who[data-v-10879031]{border-bottom:1px solid var(--line,#e2e8f2);flex-direction:column;gap:.1rem;margin:0;padding:.5rem .65rem .65rem;display:flex}.who strong[data-v-10879031]{color:var(--ink,#1c2430);font-size:.9rem}.who span[data-v-10879031]{color:var(--ink-soft,#66748a);overflow-wrap:anywhere;font-size:.78rem}.popover button[data-v-10879031]{text-align:left;width:100%;color:var(--ink,#1c2430);cursor:pointer;background:0 0;border:none;border-radius:.5rem;padding:.55rem .65rem;font-size:.9rem}.popover button[data-v-10879031]:hover{background:var(--accent-soft,#e8f0fd)}.popover .danger[data-v-10879031]{color:#c0392b}.popover .danger[data-v-10879031]:hover{background:#fbeae7}.overlay[data-v-10879031]{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0c142373;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.modal[data-v-10879031]{background:var(--surface,#fff);border-radius:1rem;flex-direction:column;gap:.85rem;width:min(22rem,100%);padding:1.5rem;display:flex;box-shadow:0 1.5rem 3rem #0f192d40}.modal h2[data-v-10879031]{color:var(--ink,#1c2430);margin:0;font-size:1.1rem}.modal label[data-v-10879031]{color:var(--ink-soft,#66748a);flex-direction:column;gap:.3rem;font-size:.82rem;display:flex}.modal input[data-v-10879031]{color:var(--ink,#1c2430);background:var(--paper,#f4f6fa);border:1px solid var(--line,#e2e8f2);border-radius:.55rem;padding:.6rem .75rem;font-size:.95rem}.modal input[data-v-10879031]:focus{border-color:var(--accent,#2b6cd4);box-shadow:0 0 0 3px var(--accent-soft,#e8f0fd);outline:none}footer[data-v-10879031]{justify-content:flex-end;gap:.5rem;margin-top:.25rem;display:flex}footer button[data-v-10879031]{color:#fff;background:var(--accent,#2b6cd4);cursor:pointer;border:none;border-radius:.55rem;padding:.55rem 1rem;font-size:.92rem;font-weight:600}footer .ghost[data-v-10879031]{color:var(--ink-soft,#66748a);background:0 0}footer .ghost[data-v-10879031]:hover{background:var(--paper,#f4f6fa)}.error[data-v-10879031]{color:#a02b1c;background:#fbeae7;border-radius:.5rem;margin:0;padding:.5rem .65rem;font-size:.85rem}.success[data-v-10879031]{color:#1f8256;margin:0;font-size:.95rem}.fade-enter-active[data-v-10879031],.fade-leave-active[data-v-10879031],.pop-enter-active[data-v-10879031],.pop-leave-active[data-v-10879031]{transition:opacity .15s,transform .15s}.fade-enter-from[data-v-10879031],.fade-leave-to[data-v-10879031],.pop-enter-from[data-v-10879031],.pop-leave-to[data-v-10879031]{opacity:0}.pop-enter-from[data-v-10879031],.pop-leave-to[data-v-10879031]{transform:translateY(-.35rem)}.overlay[data-v-a8318a7f]{z-index:3500;-webkit-backdrop-filter:blur(3px);background:#141e1880;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.dialog[data-v-a8318a7f]{width:100%;max-width:var(--modal-narrow);text-align:center;background:#fff;border-radius:14px;padding:1.8rem 1.6rem 1.4rem;box-shadow:0 20px 50px #00000040}.icon[data-v-a8318a7f]{border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;margin:0 auto .8rem;display:flex}.icon.danger[data-v-a8318a7f]{background:#fbe9e4}.icon svg[data-v-a8318a7f]{fill:none;stroke:#c0392b;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.6rem;height:1.6rem}.title[data-v-a8318a7f]{color:var(--ink);margin:0 0 .5rem;font-size:1.2rem}.message[data-v-a8318a7f]{color:var(--ink-soft);white-space:pre-line;margin:0 0 1.4rem;line-height:1.5}.buttons[data-v-a8318a7f]{justify-content:center;gap:.7rem;display:flex}.btn[data-v-a8318a7f]{cursor:pointer;border:1px solid #0000;border-radius:8px;flex:1;padding:.65rem 1rem;font-size:.95rem;font-weight:600;transition:background .15s,border-color .15s,color .15s}.btn.cancel[data-v-a8318a7f]{border-color:var(--line);color:var(--ink-soft);background:#fff}.btn.cancel[data-v-a8318a7f]:hover{background:var(--paper)}.btn.confirm[data-v-a8318a7f]{background:var(--accent);color:#fff}.btn.confirm[data-v-a8318a7f]:hover{background:var(--accent-dark)}.btn.confirm.danger[data-v-a8318a7f]{background:#c0392b}.btn.confirm.danger[data-v-a8318a7f]:hover{background:#a5301f}.btn[data-v-a8318a7f]:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.modal-enter-active[data-v-a8318a7f],.modal-leave-active[data-v-a8318a7f]{transition:opacity .2s}.modal-enter-active .dialog[data-v-a8318a7f],.modal-leave-active .dialog[data-v-a8318a7f]{transition:transform .2s,opacity .2s}.modal-enter-from[data-v-a8318a7f],.modal-leave-to[data-v-a8318a7f]{opacity:0}.modal-enter-from .dialog[data-v-a8318a7f],.modal-leave-to .dialog[data-v-a8318a7f]{opacity:0;transform:translateY(12px)scale(.97)}@media (prefers-reduced-motion:reduce){.modal-enter-active[data-v-a8318a7f],.modal-leave-active[data-v-a8318a7f],.modal-enter-active .dialog[data-v-a8318a7f],.modal-leave-active .dialog[data-v-a8318a7f]{transition:none}}.loading-overlay[data-v-7dc943af]{z-index:4000;-webkit-backdrop-filter:blur(4px);background:#f6f8f6d9;flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;display:flex;position:fixed;inset:0}.spinner[data-v-7dc943af]{border:4px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:3.5rem;height:3.5rem;animation:.7s linear infinite spin-7dc943af}.loading-text[data-v-7dc943af]{color:var(--accent-dark);letter-spacing:.02em;margin:0;font-size:1.05rem;font-weight:600}@keyframes spin-7dc943af{to{transform:rotate(360deg)}}.fade-enter-active[data-v-7dc943af],.fade-leave-active[data-v-7dc943af]{transition:opacity .2s}.fade-enter-from[data-v-7dc943af],.fade-leave-to[data-v-7dc943af]{opacity:0}@media (prefers-reduced-motion:reduce){.spinner[data-v-7dc943af]{animation-duration:1.6s}.fade-enter-active[data-v-7dc943af],.fade-leave-active[data-v-7dc943af]{transition:none}}.cell[data-v-f82138f0]{border-radius:.75rem;min-height:5.5rem;transition:box-shadow .15s,transform .15s,border-color .15s;display:flex;position:relative}.cell.lunch[data-v-f82138f0]{--slot:var(--lunch);--slot-soft:var(--lunch-soft)}.cell.dinner[data-v-f82138f0]{--slot:var(--dinner);--slot-soft:var(--dinner-soft)}.empty[data-v-f82138f0]{color:var(--ink-soft);border:1.5px dashed var(--line);border-radius:inherit;background:0 0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.15rem;padding:.6rem;transition:border-color .15s,background .15s,color .15s;display:flex}.empty[data-v-f82138f0]:hover{color:var(--slot);background:var(--slot-soft);border-color:var(--slot)}.plus[data-v-f82138f0]{font-size:1.35rem;font-weight:300;line-height:1}.empty-label[data-v-f82138f0]{text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}.cell.filled[data-v-f82138f0]{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--slot);box-shadow:0 1px 2px #2a1a200d}.cell.filled[data-v-f82138f0]:hover{box-shadow:0 4px 12px #2a1a201a}.body[data-v-f82138f0]{text-align:left;border-radius:inherit;background:0 0;border:none;flex-direction:column;flex:1;gap:.2rem;min-width:0;padding:.5rem 1.6rem .55rem .6rem;display:flex}.slot-tag[data-v-f82138f0]{text-transform:uppercase;letter-spacing:.07em;color:var(--slot);font-size:.66rem;font-weight:700}.thumb[data-v-f82138f0]{object-fit:cover;background:var(--paper);border-radius:.45rem;width:100%;height:3.2rem}.title[data-v-f82138f0]{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:.92rem;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.meta[data-v-f82138f0]{color:var(--ink-soft);flex-wrap:wrap;gap:.35rem;font-size:.7rem;display:flex}.recent[data-v-f82138f0]{color:var(--accent)}.note[data-v-f82138f0]{color:var(--ink-soft);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:.72rem;font-style:italic;display:-webkit-box;overflow:hidden}.grip[data-v-f82138f0]{color:var(--line);cursor:grab;touch-action:none;align-items:center;padding:.15rem;display:flex;position:absolute;top:.3rem;right:1.45rem}.grip[data-v-f82138f0]:hover{color:var(--slot)}.grip svg[data-v-f82138f0]{fill:currentColor;width:.85rem;height:.85rem}.clear[data-v-f82138f0]{width:1.15rem;height:1.15rem;color:var(--ink-soft);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;line-height:1;display:flex;position:absolute;top:.15rem;right:.25rem}.clear[data-v-f82138f0]:hover{color:#fff;background:var(--accent)}.cell.source[data-v-f82138f0]{opacity:.35}.cell.target[data-v-f82138f0]{outline:2px dashed var(--accent);outline-offset:2px;background:var(--accent-soft)}@media print{.cell[data-v-f82138f0]{break-inside:avoid;min-height:0}.cell.filled[data-v-f82138f0]{box-shadow:none}.body[data-v-f82138f0]{padding:.35rem .5rem}.thumb[data-v-f82138f0]{display:none}.empty[data-v-f82138f0]{border-style:solid;border-color:var(--line)}.plus[data-v-f82138f0],.recent[data-v-f82138f0]{display:none}}.week[data-v-732e5077]{grid-template-columns:1fr;gap:.7rem;display:grid}.week.dragging[data-v-732e5077]{-webkit-user-select:none;user-select:none}.day[data-v-732e5077]{background:var(--surface);border:1px solid var(--line);border-radius:.9rem;flex-direction:column;gap:.4rem;padding:.55rem;display:flex}.day.today[data-v-732e5077]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.day-head[data-v-732e5077]{align-items:baseline;gap:.4rem;display:flex}.dow[data-v-732e5077]{letter-spacing:.02em;font-size:.85rem;font-weight:700}.dom[data-v-732e5077]{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:.78rem}.day.today .dow[data-v-732e5077]{color:var(--accent)}.slots[data-v-732e5077]{flex:1;grid-template-columns:1fr 1fr;gap:.45rem;display:grid}.cell-wrap[data-v-732e5077]{display:flex}.cell-wrap[data-v-732e5077]>*{flex:1}@media (width>=1100px){.week[data-v-732e5077]{grid-template-columns:repeat(7,minmax(0,1fr))}.slots[data-v-732e5077]{grid-template-columns:1fr;grid-auto-rows:1fr}}.ghost[data-v-732e5077]{z-index:5000;color:#fff;background:var(--accent);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;border-radius:.5rem;max-width:14rem;padding:.35rem .6rem;font-size:.85rem;font-weight:600;position:fixed;overflow:hidden;transform:translate(-40%,1.2rem);box-shadow:0 8px 20px #2a1a204d}@media print{.week[data-v-732e5077]{grid-template-columns:1fr;gap:3mm}.day[data-v-732e5077]{break-inside:avoid;border-radius:2mm;grid-template-columns:4.5rem 1fr;align-items:center;gap:3mm;padding:2mm;display:grid}.day.today[data-v-732e5077]{box-shadow:none}.day-head[data-v-732e5077]{flex-direction:column;align-items:flex-start;gap:0}.slots[data-v-732e5077]{grid-template-columns:1fr 1fr;gap:3mm}}.overlay[data-v-2d54bdad]{z-index:3200;-webkit-backdrop-filter:blur(3px);background:#2a1a2080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.panel[data-v-2d54bdad]{width:100%;max-width:var(--modal-wide);background:var(--surface);border-radius:16px;flex-direction:column;max-height:94vh;animation:.18s pop-in-2d54bdad;display:flex;box-shadow:0 20px 50px #2a1a204d}.panel.narrow[data-v-2d54bdad]{max-width:var(--modal-narrow)}@keyframes pop-in-2d54bdad{0%{opacity:.5;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){.panel[data-v-2d54bdad]{animation:none}}.head[data-v-2d54bdad]{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1rem 1.2rem .8rem;display:flex}.title[data-v-2d54bdad]{margin:0;font-size:1.1rem}.close[data-v-2d54bdad]{background:var(--paper);cursor:pointer;border:none;border-radius:50%;place-items:center;width:2rem;height:2rem;display:grid}.close[data-v-2d54bdad]:hover{background:var(--accent-soft)}.close svg[data-v-2d54bdad]{fill:none;width:1.05rem;height:1.05rem;stroke:var(--ink-soft);stroke-width:2px;stroke-linecap:round}.content[data-v-2d54bdad]{flex:1;padding:1rem 1.2rem 1.3rem;overflow-y:auto}.foot[data-v-2d54bdad]{border-top:1px solid var(--line);padding:.8rem 1.2rem}.tabs[data-v-ea8f44c3]{background:var(--paper);border-radius:.7rem;gap:.3rem;margin-bottom:.9rem;padding:.25rem;display:flex}.tab[data-v-ea8f44c3]{color:var(--ink-soft);background:0 0;border:none;border-radius:.5rem;flex:1;padding:.45rem .6rem;font-size:.9rem}.tab.on[data-v-ea8f44c3]{color:var(--accent-dark);background:var(--surface);font-weight:600;box-shadow:0 1px 3px #2a1a201a}.pane[data-v-ea8f44c3]{flex-direction:column;gap:.7rem;display:flex}.filters[data-v-ea8f44c3]{flex-wrap:wrap;gap:.5rem;display:flex}.filters .field[data-v-ea8f44c3]{flex:12rem}.filters .cat[data-v-ea8f44c3]{flex:0 14rem}.warn[data-v-ea8f44c3],.empty[data-v-ea8f44c3]{color:var(--ink-soft);background:var(--paper);border-radius:.6rem;margin:0;padding:.7rem .9rem}.recipes[data-v-ea8f44c3]{flex-direction:column;gap:.3rem;max-height:42vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.recipe[data-v-ea8f44c3]{text-align:left;background:0 0;border:1px solid #0000;border-radius:.65rem;align-items:center;gap:.65rem;width:100%;padding:.4rem;display:flex}.recipe[data-v-ea8f44c3]:hover{background:var(--paper)}.recipe.on[data-v-ea8f44c3]{background:var(--accent-soft);border-color:var(--accent)}.thumb[data-v-ea8f44c3]{object-fit:cover;background:var(--paper);border-radius:.5rem;flex:none;width:3rem;height:3rem}.thumb.placeholder[data-v-ea8f44c3]{place-items:center;font-size:1.3rem;display:grid}.info[data-v-ea8f44c3]{flex-direction:column;gap:.1rem;min-width:0;display:flex}.name[data-v-ea8f44c3]{text-overflow:ellipsis;white-space:nowrap;font-size:.94rem;font-weight:600;overflow:hidden}.sub[data-v-ea8f44c3]{color:var(--ink-soft);flex-wrap:wrap;gap:.5rem;font-size:.76rem;display:flex}.stars[data-v-ea8f44c3]{color:#d9902a;letter-spacing:.05em}.seen.never[data-v-ea8f44c3]{color:var(--accent);font-weight:600}.shortcuts[data-v-ea8f44c3]{flex-wrap:wrap;gap:.4rem;display:flex}.chip[data-v-ea8f44c3]{color:var(--ink-soft);background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:.35rem .7rem;font-size:.85rem}.chip[data-v-ea8f44c3]:hover{color:var(--accent-dark);background:var(--accent-soft);border-color:var(--accent)}.common[data-v-ea8f44c3]{border-top:1px solid var(--line);grid-template-columns:minmax(9rem,12rem) 1fr;gap:.9rem;margin-top:1rem;padding-top:.9rem;display:grid}@media (width<=620px){.common[data-v-ea8f44c3]{grid-template-columns:1fr}}.lbl[data-v-ea8f44c3]{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);margin-bottom:.3rem;font-size:.78rem;font-weight:600;display:block}.stepper[data-v-ea8f44c3]{border:1px solid var(--line);border-radius:.6rem;align-items:stretch;display:flex;overflow:hidden}.stepper button[data-v-ea8f44c3]{width:2.3rem;color:var(--accent-dark);background:var(--paper);border:none;font-size:1.05rem}.stepper button[data-v-ea8f44c3]:hover{background:var(--accent-soft)}.stepper input[data-v-ea8f44c3]{text-align:center;border:none;border-left:1px solid var(--line);border-right:1px solid var(--line);font-variant-numeric:tabular-nums;flex:1;min-width:0;padding:.5rem .3rem}.stepper input[data-v-ea8f44c3]:focus{background:var(--accent-soft);outline:none}.hint[data-v-ea8f44c3]{color:var(--ink-soft);margin:.35rem 0 0;font-size:.75rem;line-height:1.35}.note-field textarea[data-v-ea8f44c3]{resize:vertical}.actions[data-v-ea8f44c3]{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.spacer[data-v-ea8f44c3]{flex:1}.btn[data-v-ea8f44c3]{border:1px solid #0000;border-radius:.6rem;padding:.55rem .95rem;font-size:.92rem;font-weight:600}.btn.primary[data-v-ea8f44c3]{color:#fff;background:var(--accent)}.btn.primary[data-v-ea8f44c3]:hover:not(:disabled){background:var(--accent-dark)}.btn.primary[data-v-ea8f44c3]:disabled{opacity:.45;cursor:not-allowed}.btn.ghost[data-v-ea8f44c3]{color:var(--ink-soft);background:var(--surface);border-color:var(--line)}.btn.ghost[data-v-ea8f44c3]:hover{background:var(--paper)}.btn.danger-ghost[data-v-ea8f44c3]{color:#c0392b;background:0 0}.btn.danger-ghost[data-v-ea8f44c3]:hover{background:#fbeae7}.intro[data-v-43c2fd15]{color:var(--ink-soft);margin:0 0 1rem;font-size:.88rem;line-height:1.45}.options[data-v-43c2fd15]{flex-wrap:wrap;gap:.7rem;margin-bottom:1rem;display:flex}.opt[data-v-43c2fd15]{border:1px solid var(--line);border-radius:.7rem;flex:12rem;margin:0;padding:.6rem .8rem .7rem}.opt legend[data-v-43c2fd15]{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);padding:0 .3rem;font-size:.72rem;font-weight:700}.check[data-v-43c2fd15]{cursor:pointer;align-items:center;gap:.4rem;padding:.12rem 0;font-size:.9rem;display:flex}.check input[data-v-43c2fd15]{accent-color:var(--accent)}.repos[data-v-43c2fd15]{color:var(--ink-soft);align-items:center;gap:.45rem;font-size:.9rem;display:flex}.repos .field[data-v-43c2fd15]{text-align:center;font-variant-numeric:tabular-nums;width:4.2rem}.empty[data-v-43c2fd15]{color:var(--ink-soft);background:var(--paper);border-radius:.6rem;margin:0;padding:.9rem}.props[data-v-43c2fd15]{flex-direction:column;gap:.35rem;max-height:45vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.prop[data-v-43c2fd15]{background:var(--paper);border-radius:.65rem;align-items:center;gap:.65rem;padding:.4rem;display:flex}.when[data-v-43c2fd15]{border-left:3px solid var(--line);flex-direction:column;flex:none;width:5.2rem;padding-left:.45rem;line-height:1.2;display:flex}.when.lunch[data-v-43c2fd15]{border-left-color:var(--lunch)}.when.dinner[data-v-43c2fd15]{border-left-color:var(--dinner)}.dow[data-v-43c2fd15]{font-size:.85rem;font-weight:600}.slot[data-v-43c2fd15]{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-size:.7rem}.thumb[data-v-43c2fd15]{object-fit:cover;background:var(--surface);border-radius:.45rem;flex:none;width:2.6rem;height:2.6rem}.thumb.placeholder[data-v-43c2fd15]{place-items:center;font-size:1.15rem;display:grid}.info[data-v-43c2fd15]{flex-direction:column;flex:1;min-width:0;display:flex}.name[data-v-43c2fd15]{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.sub[data-v-43c2fd15]{color:var(--ink-soft);font-size:.75rem}.drop[data-v-43c2fd15]{width:1.6rem;height:1.6rem;color:var(--ink-soft);background:0 0;border:none;border-radius:50%;flex:none;place-items:center;font-size:1.1rem;display:grid}.drop[data-v-43c2fd15]:hover{color:#fff;background:var(--accent)}.actions[data-v-43c2fd15]{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.spacer[data-v-43c2fd15]{flex:1}.btn[data-v-43c2fd15]{border:1px solid #0000;border-radius:.6rem;padding:.55rem .95rem;font-size:.92rem;font-weight:600}.btn.primary[data-v-43c2fd15]{color:#fff;background:var(--accent)}.btn.primary[data-v-43c2fd15]:hover:not(:disabled){background:var(--accent-dark)}.btn.ghost[data-v-43c2fd15]{color:var(--ink-soft);background:var(--surface);border-color:var(--line)}.btn.ghost[data-v-43c2fd15]:hover:not(:disabled){background:var(--paper)}.btn[data-v-43c2fd15]:disabled{opacity:.45;cursor:not-allowed}.intro[data-v-1541f053],.aside[data-v-1541f053],.empty[data-v-1541f053],.error[data-v-1541f053]{margin:0 0 .7rem;font-size:.88rem;line-height:1.45}.intro[data-v-1541f053]{color:var(--ink-soft)}.aside[data-v-1541f053]{color:var(--ink-soft);background:var(--paper);border-radius:.55rem;padding:.55rem .75rem}.empty[data-v-1541f053]{color:var(--ink-soft);background:var(--paper);border-radius:.6rem;padding:.9rem}.error[data-v-1541f053]{color:#a02b1c;background:#fbeae7;border-radius:.6rem;padding:.7rem .9rem}.bulk[data-v-1541f053]{color:var(--ink-soft);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.82rem;display:flex}.link[data-v-1541f053]{color:var(--accent);background:0 0;border:none;padding:0;text-decoration:underline}.count[data-v-1541f053]{font-variant-numeric:tabular-nums;margin-left:auto}.rayons[data-v-1541f053]{max-height:40vh;padding-right:.2rem;overflow-y:auto}.rayon+.rayon[data-v-1541f053]{margin-top:.7rem}.rayon-head[data-v-1541f053]{border-bottom:1px solid var(--line);align-items:center;gap:.5rem;padding-bottom:.25rem;display:flex}.rayon-name[data-v-1541f053]{text-transform:uppercase;letter-spacing:.04em;color:var(--accent-dark);background:0 0;border:none;padding:0;font-size:.82rem;font-weight:700}.rayon-count[data-v-1541f053]{color:var(--ink-soft);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.75rem}.items[data-v-1541f053]{margin:.3rem 0 0;padding:0;list-style:none}.item[data-v-1541f053]{grid-template-columns:1fr auto auto;align-items:center;gap:.5rem;padding:.25rem 0;display:grid}.item.off[data-v-1541f053]{opacity:.45}.pick[data-v-1541f053]{cursor:pointer;align-items:center;gap:.45rem;min-width:0;display:flex}.pick input[data-v-1541f053]{accent-color:var(--accent)}.item-name[data-v-1541f053]{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.qty[data-v-1541f053]{align-items:center;gap:.25rem;display:flex}.qty input[data-v-1541f053]{text-align:right;border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:.4rem;width:4.2rem;padding:.25rem .35rem}.unit[data-v-1541f053]{min-width:2.2rem;color:var(--ink-soft);font-size:.8rem}.from[data-v-1541f053]{max-width:8rem;color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}@media (width<=620px){.from[data-v-1541f053]{display:none}}.cible[data-v-1541f053]{border-top:1px solid var(--line);margin-top:1rem;padding-top:.9rem}.tabs[data-v-1541f053]{background:var(--paper);border-radius:.6rem;gap:.3rem;margin-bottom:.6rem;padding:.22rem;display:flex}.tab[data-v-1541f053]{color:var(--ink-soft);background:0 0;border:none;border-radius:.45rem;flex:1;padding:.4rem;font-size:.87rem}.tab.on[data-v-1541f053]{color:var(--accent-dark);background:var(--surface);font-weight:600}.tab[data-v-1541f053]:disabled{opacity:.4;cursor:not-allowed}.cible-form[data-v-1541f053]{flex-wrap:wrap;gap:.5rem;display:flex}.cible-form .field[data-v-1541f053]:first-child{flex:14rem}.cible-form .field[data-v-1541f053]:last-child{flex:0 11rem}.done[data-v-1541f053]{text-align:center;padding:1rem 0}.done-title[data-v-1541f053]{color:var(--accent-dark);margin:0 0 .4rem;font-size:1.15rem;font-weight:700}.done p[data-v-1541f053]{color:var(--ink-soft);margin:0 0 1rem}.actions[data-v-1541f053]{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.btn[data-v-1541f053]{border:1px solid #0000;border-radius:.6rem;padding:.55rem .95rem;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-block}.btn.primary[data-v-1541f053]{color:#fff;background:var(--accent)}.btn.primary[data-v-1541f053]:hover:not(:disabled){background:var(--accent-dark)}.btn.ghost[data-v-1541f053]{color:var(--ink-soft);background:var(--surface);border-color:var(--line)}.btn.ghost[data-v-1541f053]:hover{background:var(--paper)}.btn[data-v-1541f053]:disabled{opacity:.45;cursor:not-allowed}.intro[data-v-597072f6]{color:var(--ink-soft);margin:0 0 .9rem;font-size:.88rem;line-height:1.45}.bar[data-v-597072f6]{flex-wrap:wrap;gap:.5rem;margin-bottom:.8rem;display:flex}.bar .field[data-v-597072f6]{flex:10rem}.bar .tri[data-v-597072f6]{flex:0 15rem}.bar .periode[data-v-597072f6]{flex:0 7rem}.empty[data-v-597072f6]{color:var(--ink-soft);background:var(--paper);border-radius:.6rem;margin:0;padding:.9rem}.rows[data-v-597072f6]{max-height:55vh;margin:0;padding:0;list-style:none;overflow-y:auto}.row[data-v-597072f6]{border-bottom:1px solid var(--line);align-items:center;gap:.65rem;padding:.4rem 0;display:flex}.thumb[data-v-597072f6]{object-fit:cover;background:var(--paper);border-radius:.45rem;flex:none;width:2.6rem;height:2.6rem}.thumb.placeholder[data-v-597072f6]{place-items:center;font-size:1.15rem;display:grid}.info[data-v-597072f6]{flex-direction:column;flex:1;min-width:0;display:flex}.name[data-v-597072f6]{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:600;overflow:hidden}.sub[data-v-597072f6]{color:var(--ink-soft);font-size:.76rem}.times[data-v-597072f6]{color:var(--accent-dark);background:var(--accent-soft);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;padding:.15rem .5rem;font-size:.8rem;font-weight:700}.actions[data-v-597072f6]{justify-content:flex-end;display:flex}.btn[data-v-597072f6]{border:1px solid var(--line);border-radius:.6rem;padding:.55rem .95rem;font-size:.92rem;font-weight:600}.btn.ghost[data-v-597072f6]{color:var(--ink-soft);background:var(--surface)}.btn.ghost[data-v-597072f6]:hover{background:var(--paper)}.app[data-v-e110f2a7]{flex-direction:column;min-height:100vh;display:flex}.topbar[data-v-e110f2a7]{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);color:#fff;--user-menu-bg:#ffffff2e;--user-menu-bg-hover:#ffffff4d;flex-wrap:wrap;align-items:center;gap:1rem;padding:.6rem 1rem;display:flex}.brand[data-v-e110f2a7]{color:#fff;align-items:center;gap:.5rem;font-size:1.15rem;font-weight:700;text-decoration:none;display:inline-flex}.logo[data-v-e110f2a7]{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:1.6rem;height:1.6rem}.weeknav[data-v-e110f2a7]{flex:1;justify-content:center;align-items:center;gap:.4rem;display:flex}.nav[data-v-e110f2a7]{color:#fff;background:#ffffff24;border:none;border-radius:.5rem;min-width:2rem;padding:.3rem .6rem;font-size:1rem}.nav[data-v-e110f2a7]:hover:not(:disabled){background:#ffffff47}.nav.today[data-v-e110f2a7]{font-size:.82rem}.week-title[data-v-e110f2a7]{flex-direction:column;align-items:center;min-width:12rem;line-height:1.2;display:flex}.week-title strong[data-v-e110f2a7]{font-size:1rem}.week-title small[data-v-e110f2a7]{opacity:.85;font-variant-numeric:tabular-nums;font-size:.7rem}.bar-actions[data-v-e110f2a7]{align-items:center;gap:.5rem;display:flex}.cta[data-v-e110f2a7]{color:var(--accent-dark);background:#fff;border:none;border-radius:.55rem;padding:.45rem .85rem;font-size:.88rem;font-weight:600}.cta[data-v-e110f2a7]:hover:not(:disabled){background:var(--accent-soft)}.cta[data-v-e110f2a7]:disabled{opacity:.5;cursor:not-allowed}.cta.ghost[data-v-e110f2a7]{color:#fff;background:#ffffff29}.cta.ghost[data-v-e110f2a7]:hover{background:#ffffff4d}.more[data-v-e110f2a7]{position:relative}.menu[data-v-e110f2a7]{z-index:2000;background:var(--surface);border:1px solid var(--line);border-radius:.7rem;flex-direction:column;min-width:15rem;padding:.3rem;display:flex;position:absolute;top:calc(100% + .4rem);right:0;box-shadow:0 12px 30px #2a1a2033}.menu button[data-v-e110f2a7]{text-align:left;color:var(--ink);background:0 0;border:none;border-radius:.45rem;padding:.5rem .6rem;font-size:.88rem}.menu button[data-v-e110f2a7]:hover:not(:disabled){background:var(--accent-soft)}.menu button[data-v-e110f2a7]:disabled{opacity:.4;cursor:not-allowed}.menu .danger[data-v-e110f2a7]{color:#c0392b}.menu .danger[data-v-e110f2a7]:hover:not(:disabled){background:#fbeae7}.content[data-v-e110f2a7]{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:1.1rem 1rem 3rem}.error[data-v-e110f2a7],.warn[data-v-e110f2a7]{border-radius:.6rem;margin:0 0 1rem;padding:.7rem .9rem}.error[data-v-e110f2a7]{color:#a02b1c;background:#fbeae7}.warn[data-v-e110f2a7]{color:#8a5a12;background:#fdf3e0}.print-title[data-v-e110f2a7]{display:none}@media print{.content[data-v-e110f2a7]{max-width:none;padding:0}.print-title[data-v-e110f2a7]{text-align:center;margin:0 0 5mm;font-size:14pt;display:block}}:root{--accent:#c0396b;--accent-dark:#97274f;--accent-soft:#fceaf0;--ink:#2a1a20;--ink-soft:#7b6a70;--paper:#faf7f8;--surface:#fff;--line:#ecdfe4;--lunch:#d98324;--lunch-soft:#fdf2e3;--dinner:#5b6ab0;--dinner-soft:#eceef8;--modal-narrow:min(560px, 92vw);--modal-wide:min(880px, 94vw);color:var(--ink);background:var(--paper);font-family:system-ui,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-height:100vh;margin:0}.muted{color:var(--ink-soft)}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;color:var(--ink)}.field{border:1px solid var(--line);background:var(--surface);border-radius:.6rem;width:100%;padding:.55rem .7rem}.field:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}@page{size:A4 portrait;margin:12mm}@media print{:root,body{background:#fff}.no-print{display:none!important}}
