.nav-dropdown[data-v-79dd46e3]{position:relative}.dropdown-trigger[data-v-79dd46e3]{color:#fff;background:none;border:none;border-bottom:2px solid transparent;padding:.5rem .85rem;border-radius:6px;transition:all .2s ease;font-weight:500;display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;font-family:inherit}.dropdown-trigger[data-v-79dd46e3]:hover{background:#ffffff14}.dropdown-trigger.active[data-v-79dd46e3]{background:#ffffff26;border-bottom-color:#fff}.dropdown-arrow[data-v-79dd46e3]{display:inline-block;transition:transform .3s ease;font-size:.8rem;opacity:.8}.dropdown-arrow.open[data-v-79dd46e3]{transform:rotate(-180deg)}.dropdown-menu[data-v-79dd46e3]{position:absolute;top:100%;left:0;padding-top:.5rem;min-width:270px;z-index:1000}.dropdown-menu-inner[data-v-79dd46e3]{background:#fff;border-radius:10px;box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014;overflow:hidden;border:1px solid rgba(102,126,234,.12)}.dropdown-separator[data-v-79dd46e3-s]{border:none;border-top:1px solid #edf2f7;margin:.25rem 0}.dropdown-group-label[data-v-79dd46e3-s]{padding:.5rem 1rem .2rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#a0aec0}.dropdown-fade-enter-active[data-v-79dd46e3],.dropdown-fade-leave-active[data-v-79dd46e3]{transition:opacity .15s ease,transform .15s ease}.dropdown-fade-enter-from[data-v-79dd46e3],.dropdown-fade-leave-to[data-v-79dd46e3]{opacity:0;transform:translateY(-6px)}.dropdown-item[data-v-6956f818]{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;color:#2d3748;text-decoration:none;transition:background-color .2s,color .2s,border-left-color .2s;border-left:3px solid transparent}.item-icon[data-v-6956f818]{font-size:1.1rem;width:1.5rem;text-align:center;flex-shrink:0;line-height:1}.item-text[data-v-6956f818]{display:flex;flex-direction:column;gap:.1rem;min-width:0}.item-label[data-v-6956f818]{font-weight:500;font-size:.875rem;line-height:1.3;color:inherit}.item-description[data-v-6956f818]{font-size:.75rem;color:#a0aec0;line-height:1.3;transition:color .2s}.dropdown-item[data-v-6956f818]:hover{background-color:#f7fafc;color:var(--c-purple);border-left-color:var(--c-purple)}.dropdown-item:hover .item-description[data-v-6956f818]{color:#a78bfa}.dropdown-item.active[data-v-6956f818]{background-color:#eef2ff;color:var(--c-purple);border-left-color:var(--c-purple)}.dropdown-item.active .item-label[data-v-6956f818]{font-weight:600}.dropdown-item.active .item-description[data-v-6956f818]{color:#a78bfa}.toast-container[data-v-ce47ea58]{position:fixed;bottom:48px;right:24px;z-index:10000;display:flex;flex-direction:column;align-items:flex-end;gap:10px;max-width:400px}.toast[data-v-ce47ea58]{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:8px;box-shadow:0 4px 12px #00000026;font-size:.875rem;min-width:300px}.toast-success[data-v-ce47ea58]{background:#ecfdf5;border:1px solid #6ee7b7;color:#065f46}.toast-error[data-v-ce47ea58]{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.toast-warning[data-v-ce47ea58]{background:#fffbeb;border:1px solid #fcd34d;color:#92400e}.toast-info[data-v-ce47ea58]{background:#eff6ff;border:1px solid #93c5fd;color:var(--c-purple-dark)}.toast-icon[data-v-ce47ea58]{font-size:1.1rem;flex-shrink:0;margin-top:1px}.toast-body[data-v-ce47ea58]{flex:1;min-width:0}.toast-title[data-v-ce47ea58]{font-weight:600;line-height:1.3}.toast-message[data-v-ce47ea58]{margin-top:2px;opacity:.85;font-size:.8125rem;line-height:1.4}.toast-close[data-v-ce47ea58]{background:none;border:none;font-size:1.25rem;cursor:pointer;opacity:.5;transition:opacity .2s;padding:0;line-height:1;flex-shrink:0;color:inherit}.toast-close[data-v-ce47ea58]:hover{opacity:1}.toast-enter-active[data-v-ce47ea58]{animation:slideInRight-ce47ea58 .3s ease}.toast-leave-active[data-v-ce47ea58]{animation:slideOutRight-ce47ea58 .3s ease}.toast-move[data-v-ce47ea58]{transition:transform .3s ease}@keyframes slideInRight-ce47ea58{0%{transform:translate(60px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight-ce47ea58{0%{transform:translate(0);opacity:1}to{transform:translate(60px);opacity:0}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.app{min-height:100vh;display:flex;flex-direction:column;background:#f8fafc}.navbar{background:linear-gradient(135deg,#667eea,#764ba2);padding:.5rem 1.5rem;display:flex;justify-content:space-between;align-items:center;color:#fff;box-shadow:0 2px 10px #0000001a;position:sticky;top:0;z-index:1000}.nav-brand{font-size:1.25rem;font-weight:700;color:#fff;text-decoration:none;display:flex;align-items:center;gap:.5rem}.nav-brand:hover{color:#f1c40f;transform:scale(1.02);transition:all .2s ease}.nav-links{display:flex;gap:.25rem;align-items:center}.nav-links a{color:#fff;text-decoration:none;padding:.5rem .85rem;border-radius:6px;transition:all .2s ease;font-weight:500;font-size:.875rem;display:flex;align-items:center;gap:.5rem;border-bottom:2px solid transparent}.nav-links a:hover{background:#ffffff14}.nav-links .active-link{background:#ffffff26;border-bottom-color:#fff}.nav-separator{width:1px;height:24px;background:#fff3;margin:0 4px;flex-shrink:0}.nav-user{display:flex;align-items:center;gap:.75rem}.user-avatar{width:32px;height:32px;border-radius:50%;background:#fff3;border:1px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#fff;flex-shrink:0}.user-info{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.user-name{font-weight:600;font-size:.85rem}.user-role{font-size:.75rem;opacity:.8;background:#ffffff1a;padding:.15rem .4rem;border-radius:4px;margin-top:.15rem}.logout-btn{width:32px;height:32px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:50%;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;padding:0;transition:all .2s ease;flex-shrink:0}.logout-btn:hover{background:#ffffff40}.current-week{font-size:.75rem;font-weight:700;background:#ffffff26;border:1px solid rgba(255,255,255,.25);padding:.3rem .6rem;border-radius:4px;white-space:nowrap}.main-content{flex:1;min-height:0}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.page-header h1{font-size:1.5rem;font-weight:700;color:#1a202c;margin:0}.page-header .subtitle{color:#718096;margin:4px 0 0;font-size:.9rem}.app-footer{background:#f1f5f9;border-top:1px solid #e2e8f0;padding:.4rem 1.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.75rem;color:#94a3b8;flex-shrink:0}.footer-version{font-weight:600;background:#e2e8f0;padding:.1rem .4rem;border-radius:4px;letter-spacing:.02em}.notification{position:fixed;top:80px;right:20px;z-index:1000;max-width:400px;border-radius:8px;box-shadow:0 4px 12px #00000026;animation:slideIn .3s ease}.notification.error{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.notification-content{padding:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.close-btn{background:none;border:none;font-size:1.2rem;cursor:pointer;opacity:.7;transition:opacity .2s}.close-btn:hover{opacity:1}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.loading-spinner{background:#fff;padding:2rem;border-radius:8px;text-align:center;box-shadow:0 4px 20px #0000004d}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.loading-spinner p{color:#666;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 768px){.navbar{padding:.5rem .75rem;flex-direction:column;gap:.5rem}.nav-links{flex-wrap:wrap;justify-content:center}.nav-links a{padding:.4rem .6rem;font-size:.8rem}.nav-separator{display:none}.nav-user{order:-1;width:100%;justify-content:space-between}.user-info{align-items:flex-start;text-align:left}.notification{top:60px;left:10px;right:10px;max-width:none}}@media (max-width: 480px){.nav-links{grid-template-columns:1fr 1fr;gap:.25rem}.nav-links a{justify-content:center;text-align:center}}.main-content.has-status-bar{padding-bottom:36px}.status-bar{position:fixed;bottom:0;left:0;right:0;height:36px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;font-size:.8125rem;z-index:9999;box-shadow:0 -2px 8px #0000001a}.status-bar-left{display:flex;align-items:center;gap:8px}.status-bar-right{display:flex;align-items:center;gap:12px}.status-bar-last{opacity:.85;font-size:.75rem}.status-bar-cancel{background:#ffffff26;border:1px solid rgba(255,255,255,.3);color:#fff;width:22px;height:22px;border-radius:4px;cursor:pointer;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;transition:background .2s}.status-bar-cancel:hover{background:#ff464680}.status-bar-elapsed{font-weight:700;font-variant-numeric:tabular-nums}.status-bar-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.status-bar-enter-active{animation:slideUp .3s ease}.status-bar-leave-active{animation:slideDown .3s ease}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}.planning-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10001}.planning-modal{background:#fff;border-radius:16px;padding:2rem 2.25rem;max-width:440px;width:90%;text-align:center;box-shadow:0 20px 60px #0003;animation:modalPop .25s ease}@keyframes modalPop{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.planning-modal-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.planning-modal-icon--cancel{background:#fef2f2;color:#dc2626}.planning-modal-icon--start{background:#f0fdf4;color:#16a34a}.planning-modal-title{font-size:1.125rem;font-weight:700;color:#1e293b;margin:0 0 .75rem}.planning-modal-desc{font-size:.875rem;color:#64748b;line-height:1.5;margin:0 0 1.5rem}.planning-modal-desc strong{color:#334155}.planning-modal-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem 1rem;margin-bottom:1.5rem;font-size:.8125rem;color:#475569;display:flex;align-items:center;gap:.5rem}.planning-modal-info-icon{font-size:1rem;flex-shrink:0}.planning-modal-actions{display:flex;gap:.75rem;justify-content:center}.planning-modal-btn{padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;border:none;transition:all .15s ease}.planning-modal-btn--secondary{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.planning-modal-btn--secondary:hover{background:#e2e8f0}.planning-modal-btn--danger{background:#dc2626;color:#fff}.planning-modal-btn--danger:hover{background:#b91c1c}.planning-modal-btn--primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.planning-modal-btn--primary:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.modal-fade-enter-active,.modal-fade-leave-active{transition:opacity .2s ease}.modal-fade-enter-from,.modal-fade-leave-to{opacity:0}.home[data-v-cc76ed61]{width:100%;min-height:100vh;background:var(--c-bg-light);display:flex;flex-direction:column}.hero[data-v-cc76ed61]{width:100%;padding:2.5rem 0 2rem;background:linear-gradient(120deg,var(--c-purple) 0%,var(--c-purple-dark) 100%);color:#fff;flex-shrink:0}.hero-inner[data-v-cc76ed61]{display:flex;align-items:center;justify-content:space-between;max-width:1400px;margin:0 auto;gap:2rem;padding:0 2rem}.hero-content[data-v-cc76ed61]{flex:1}.hero-title[data-v-cc76ed61]{font-size:2.4rem;font-weight:800;margin-bottom:.5rem;letter-spacing:-1px}.hero-subtitle[data-v-cc76ed61]{font-size:1.15rem;font-weight:500;margin-bottom:.4rem}.hero-description[data-v-cc76ed61]{font-size:.95rem;color:#e0e7ff;margin-bottom:1.5rem}.hero-actions[data-v-cc76ed61]{display:flex;gap:.75rem;flex-wrap:wrap}.btn[data-v-cc76ed61]{display:inline-flex;align-items:center;padding:.6rem 1.4rem;border-radius:8px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s ease}.btn-primary[data-v-cc76ed61]{background:#fff;color:var(--c-purple)}.btn-primary[data-v-cc76ed61]:hover{background:#f0f4ff;transform:translateY(-1px)}.btn-secondary[data-v-cc76ed61]{background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3)}.btn-secondary[data-v-cc76ed61]:hover{background:#ffffff40}.hero-visual[data-v-cc76ed61]{display:flex;align-items:center;justify-content:center;flex-shrink:0}.beer-icons[data-v-cc76ed61]{display:flex;gap:1rem}.beer-icon[data-v-cc76ed61]{font-size:2.8rem;background:#ffffff26;border-radius:50%;padding:1rem;transition:transform .2s}.beer-icon[data-v-cc76ed61]:hover{transform:scale(1.15) rotate(-8deg)}.hub[data-v-cc76ed61]{padding:2rem 0 3rem}.container[data-v-cc76ed61]{max-width:1400px;margin:0 auto;padding:0 1.5rem}.hub-section[data-v-cc76ed61]{margin-bottom:2.25rem}.hub-section-title[data-v-cc76ed61]{font-size:.8rem;font-weight:700;color:var(--c-text-secondary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.75rem;display:flex;align-items:center;gap:.4rem}.cards-grid[data-v-cc76ed61]{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.625rem}.nav-card[data-v-cc76ed61]{display:flex;align-items:center;gap:.75rem;padding:.8rem 1rem;border-radius:10px;text-decoration:none;border:1px solid #e2e8f0;background:#fff;box-shadow:0 1px 2px #0000000a;transition:all .15s ease}.nav-card[data-v-cc76ed61]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.nav-card-icon[data-v-cc76ed61]{font-size:1.35rem;flex-shrink:0;width:2rem;text-align:center}.nav-card-body[data-v-cc76ed61]{min-width:0}.nav-card-title[data-v-cc76ed61]{font-size:.85rem;font-weight:600;color:#1e293b}.nav-card-desc[data-v-cc76ed61]{font-size:.72rem;color:var(--c-text-secondary);margin-top:.1rem;line-height:1.3}.nav-card--purple[data-v-cc76ed61]:hover{border-color:#a78bfa;background:#faf5ff}.nav-card--blue[data-v-cc76ed61]:hover{border-color:#60a5fa;background:#eff6ff}.nav-card--green[data-v-cc76ed61]:hover{border-color:#34d399;background:#f0fdf4}.nav-card--orange[data-v-cc76ed61]:hover{border-color:#fb923c;background:#fff7ed}.nav-card--teal[data-v-cc76ed61]:hover{border-color:#2dd4bf;background:#f0fdfa}.nav-card--indigo[data-v-cc76ed61]:hover{border-color:#818cf8;background:#eef2ff}.nav-card--red[data-v-cc76ed61]:hover{border-color:#f87171;background:#fef2f2}.nav-card--gray[data-v-cc76ed61]:hover{border-color:#94a3b8;background:var(--c-bg-light)}.features-showcase[data-v-cc76ed61]{padding:3rem 0;background:#fff}.section-title[data-v-cc76ed61]{font-size:1.5rem;font-weight:700;color:var(--c-heading);text-align:center;margin-bottom:2.5rem}.showcase-grid[data-v-cc76ed61]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;margin-bottom:2.5rem}.showcase-category[data-v-cc76ed61]{background:var(--c-bg-light);border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem 1.5rem}.showcase-category-header[data-v-cc76ed61]{font-size:.9rem;font-weight:700;color:#334155;margin-bottom:.75rem;display:flex;align-items:center;gap:.4rem}.showcase-list[data-v-cc76ed61]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem}.showcase-list li[data-v-cc76ed61]{font-size:.83rem;color:#475569;padding-left:1rem;position:relative}.showcase-list li[data-v-cc76ed61]:before{content:"→";position:absolute;left:0;color:#94a3b8}.cta-block[data-v-cc76ed61]{text-align:center}.btn-cta[data-v-cc76ed61]{display:inline-flex;align-items:center;padding:.8rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;background:linear-gradient(135deg,var(--c-purple) 0%,var(--c-purple-dark) 100%);color:#fff;transition:all .2s ease}.btn-cta[data-v-cc76ed61]:hover{opacity:.9;transform:translateY(-1px)}@media (max-width: 768px){.hero-inner[data-v-cc76ed61]{flex-direction:column;text-align:center}.hero-title[data-v-cc76ed61]{font-size:1.9rem}.hero-actions[data-v-cc76ed61]{justify-content:center}.hero-visual[data-v-cc76ed61]{display:none}.cards-grid[data-v-cc76ed61]{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.cards-grid[data-v-cc76ed61],.showcase-grid[data-v-cc76ed61]{grid-template-columns:1fr}}.login-container[data-v-92573ce4]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--c-purple) 0%,var(--c-purple-dark) 100%);padding:1rem}.login-card[data-v-92573ce4]{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;padding:2rem;width:100%;max-width:400px}.login-header[data-v-92573ce4]{text-align:center;margin-bottom:2rem}.login-title[data-v-92573ce4]{font-size:1.5rem;font-weight:700;color:var(--c-heading);margin:0 0 .5rem}.login-subtitle[data-v-92573ce4]{color:var(--c-text-secondary);margin:0}.login-form[data-v-92573ce4]{display:flex;flex-direction:column;gap:1.5rem}.form-group[data-v-92573ce4]{display:flex;flex-direction:column;gap:.5rem}.form-label[data-v-92573ce4]{font-weight:500;color:var(--c-text);font-size:.9rem}.form-input[data-v-92573ce4]{padding:.75rem;border:2px solid #e1e5e9;border-radius:.5rem;font-size:1rem;transition:border-color .2s ease}.form-input[data-v-92573ce4]:focus{outline:none;border-color:var(--c-purple)}.form-input--error[data-v-92573ce4]{border-color:#e53e3e}.error-message[data-v-92573ce4]{background:#fed7d7;color:#c53030;padding:.75rem;border-radius:.5rem;font-size:.9rem;text-align:center}.login-button[data-v-92573ce4]{background:linear-gradient(135deg,var(--c-purple) 0%,var(--c-purple-dark) 100%);color:#fff;border:none;padding:.875rem;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:transform .2s ease,opacity .2s ease}.login-button[data-v-92573ce4]:hover:not(:disabled){transform:translateY(-1px)}.login-button[data-v-92573ce4]:disabled{opacity:.6;cursor:not-allowed}.login-button--loading[data-v-92573ce4]{opacity:.8}.login-footer[data-v-92573ce4]{text-align:center;margin-top:2rem;color:var(--c-text-secondary)}.register-link[data-v-92573ce4]{color:var(--c-purple);text-decoration:none;font-weight:500;margin-left:.5rem}.register-link[data-v-92573ce4]:hover{text-decoration:underline}@media (max-width: 480px){.login-container[data-v-92573ce4]{padding:.5rem}.login-card[data-v-92573ce4]{padding:1.5rem}.login-title[data-v-92573ce4]{font-size:1.5rem}}.stock-chart-container[data-v-5db6b874]{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.chart-header[data-v-5db6b874]{margin-bottom:16px}.chart-header h3[data-v-5db6b874]{margin:0;font-size:1.25rem;font-weight:600;color:#333}.chart-nav[data-v-5db6b874]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.nav-btn[data-v-5db6b874]{padding:5px 14px;border:1px solid #cbd5e0;border-radius:6px;background:#fff;cursor:pointer;font-size:.875rem;color:#2d3748;transition:background .15s}.nav-btn[data-v-5db6b874]:hover:not(:disabled){background:#edf2f7}.nav-btn[data-v-5db6b874]:disabled{opacity:.35;cursor:default}.nav-label[data-v-5db6b874]{font-size:.9rem;font-weight:600;color:#4a5568}.chart-wrapper[data-v-5db6b874]{position:relative;height:380px;margin-bottom:20px}.loading[data-v-5db6b874],.error[data-v-5db6b874]{text-align:center;padding:40px}.error[data-v-5db6b874]{color:#e53e3e}.legend-info[data-v-5db6b874]{margin-top:15px;padding-top:15px;border-top:1px solid #e2e8f0}.info-text[data-v-5db6b874]{font-size:.875rem;color:#718096;margin:0;text-align:center}.shortage-container[data-v-436af996]{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;margin-top:1.5rem}.header[data-v-436af996]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.header h3[data-v-436af996]{margin:0;font-size:1.1rem;font-weight:600;color:#333}.badges[data-v-436af996]{display:flex;gap:.5rem}.badge[data-v-436af996]{padding:3px 10px;border-radius:20px;font-size:.8rem;font-weight:600}.badge.ok[data-v-436af996]{background:#eafaf1;color:#1e8449;border:1px solid #a9dfbf}.badge.warning[data-v-436af996]{background:#fef5e7;color:#b9770e;border:1px solid #f8c471}.badge.critical[data-v-436af996]{background:#fdedec;color:#c0392b;border:1px solid #f5b7b1}.legend[data-v-436af996]{display:flex;align-items:center;gap:6px;font-size:.8rem;color:#666;margin-bottom:6px;margin-left:108px}.month-row[data-v-436af996]{margin-bottom:1px}.month-band[data-v-436af996]{font-size:.7rem;font-weight:600;color:#666;text-align:center;white-space:nowrap;overflow:hidden;border-bottom:2px solid #bbb;padding-bottom:2px;flex-shrink:0}.grid-wrapper[data-v-436af996]{overflow-x:auto}.grid-row[data-v-436af996]{display:flex;align-items:center;gap:2px;margin-bottom:2px}.header-row[data-v-436af996]{margin-bottom:2px}.beer-label[data-v-436af996]{width:100px;min-width:100px;font-size:.78rem;font-weight:500;color:#444;text-align:right;padding-right:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-has-warning .beer-label[data-v-436af996]{color:#b9770e;font-weight:600}.row-has-critical .beer-label[data-v-436af996]{color:#c0392b;font-weight:600}.week-header[data-v-436af996]{width:16px;min-width:16px;font-size:.6rem;color:#aaa;text-align:center}.week-sep[data-v-436af996]{width:4px;min-width:4px;height:16px;background:#e0e0e0;border-radius:1px;flex-shrink:0}.sq[data-v-436af996]{width:16px;height:16px;min-width:16px;border-radius:2px;cursor:default;transition:opacity .15s;flex-shrink:0}.sq[data-v-436af996]:hover{opacity:.65;transform:scale(1.2)}.sq-ideal[data-v-436af996]{background:#1a7a3a}.sq-ok[data-v-436af996]{background:#27ae60}.sq-warning[data-v-436af996]{background:#f39c12}.sq-alert[data-v-436af996]{background:#e74c3c}.loading[data-v-436af996],.error[data-v-436af996],.no-data[data-v-436af996]{text-align:center;padding:40px;color:#888}.error[data-v-436af996]{color:#e53e3e}.beer-stock-section[data-v-bddb7f11]{margin-top:2rem}.section-header[data-v-bddb7f11]{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem}.section-header h2[data-v-bddb7f11]{color:var(--c-heading);font-size:1.3rem;margin:0}.horizon-label[data-v-bddb7f11]{font-size:.82rem;color:#95a5a6;font-style:italic;flex:1}.sim-label[data-v-bddb7f11]{color:#e67e22;font-weight:600}.date-nav[data-v-bddb7f11]{display:flex;align-items:center;gap:.5rem;margin-left:auto}.date-nav-label[data-v-bddb7f11]{font-size:.78rem;color:#7f8c8d;white-space:nowrap}.date-input[data-v-bddb7f11]{font-size:.82rem;padding:.25rem .5rem;border:1px solid #ddd;border-radius:6px;color:var(--c-heading);background:#fafafa;cursor:pointer;outline:none}.date-input[data-v-bddb7f11]:focus{border-color:var(--c-purple);background:#fff}.btn-today[data-v-bddb7f11]{font-size:.78rem;padding:.25rem .6rem;border:1px solid var(--c-purple);border-radius:6px;background:#ebf5fb;color:#2980b9;cursor:pointer;white-space:nowrap}.btn-today[data-v-bddb7f11]:hover{background:var(--c-purple);color:#fff}.loading-state[data-v-bddb7f11]{display:flex;align-items:center;gap:.75rem;color:#7f8c8d;padding:1.5rem 0}.spinner[data-v-bddb7f11]{width:18px;height:18px;border:2px solid #ddd;border-top-color:var(--c-purple);border-radius:50%;animation:spin-bddb7f11 .7s linear infinite}@keyframes spin-bddb7f11{to{transform:rotate(360deg)}}.empty-state[data-v-bddb7f11]{color:#95a5a6;font-style:italic;padding:1rem 0}.beer-tabs-shell[data-v-bddb7f11]{display:flex;flex-direction:column;gap:1rem;transition:opacity .15s ease}.beer-tabs-shell.shell-refreshing[data-v-bddb7f11]{opacity:.5;pointer-events:none}.beer-tabs[data-v-bddb7f11]{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.beer-tab[data-v-bddb7f11]{min-width:auto;padding:.5rem .65rem;border-radius:999px;border:1px solid var(--tab-color);background:#fff;color:#1f2937;display:inline-flex;align-items:center;gap:.45rem;text-align:left;cursor:pointer;white-space:nowrap;transition:transform .12s ease,border-color .12s ease,background .12s ease,color .12s ease}.beer-tab[data-v-bddb7f11]:hover{transform:translateY(-1px);border-color:var(--tab-color)}.beer-tab.active[data-v-bddb7f11]{border-color:var(--tab-color);background:#fff;box-shadow:inset 0 0 0 2px var(--tab-color)}.beer-tab-dot[data-v-bddb7f11]{width:.7rem;height:.7rem;border-radius:999px;background:var(--tab-color);flex:0 0 auto}.beer-tab-name[data-v-bddb7f11]{font-size:.84rem;font-weight:700;line-height:1;color:#1f2937}.beer-tab-balance[data-v-bddb7f11]{display:inline-flex;align-items:center;gap:.3rem;padding:.14rem .38rem;border-radius:999px;font-size:.71rem;font-weight:700;line-height:1;background:#fff;border:1px solid #dbe3ee}.beer-tab-balance-ok[data-v-bddb7f11]{color:#1f2937}.beer-tab-balance-warn[data-v-bddb7f11]{color:#991b1b}.beer-tab.active .beer-tab-balance[data-v-bddb7f11]{border-color:var(--tab-color)}.beer-card[data-v-bddb7f11]{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;overflow:hidden;display:flex;flex-direction:column}.beer-panel[data-v-bddb7f11]{width:100%}.beer-details[data-v-bddb7f11]{display:flex;flex-direction:column}.card-banner[data-v-bddb7f11]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem}.banner-main[data-v-bddb7f11]{display:flex;align-items:center;gap:.75rem;min-width:0}.beer-name[data-v-bddb7f11]{font-weight:800;font-size:1.05rem;letter-spacing:.01em}.banner-balance[data-v-bddb7f11]{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .45rem;border-radius:999px;font-size:.74rem;font-weight:700;background:#ffffff2e}.banner-balance-ok[data-v-bddb7f11]{color:inherit}.banner-balance-warn[data-v-bddb7f11]{color:#fff7ed}.panel-status[data-v-bddb7f11]{font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.stock-summary[data-v-bddb7f11]{display:flex;padding:.75rem 1rem;gap:0;border-bottom:1px solid #f5f5f5}.stock-summary-collapsed[data-v-bddb7f11]{border-bottom:0}.stock-item[data-v-bddb7f11]{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px}.stock-divider[data-v-bddb7f11]{width:1px;background:#eee;margin:0 .25rem}.stock-label[data-v-bddb7f11]{font-size:.68rem;color:var(--c-muted);text-transform:uppercase;letter-spacing:.04em}.stock-value[data-v-bddb7f11]{font-size:.95rem;font-weight:700;color:var(--c-heading)}.stock-value.zero[data-v-bddb7f11]{color:#bdc3c7}.stock-value.production[data-v-bddb7f11]{color:#27ae60}.stock-value.demand[data-v-bddb7f11]{color:#e67e22}.stock-deducted-detail[data-v-bddb7f11]{color:#7c8898;font-size:.75rem}.stock-value.muted[data-v-bddb7f11]{color:#64748b}.balance-bar[data-v-bddb7f11]{display:flex;align-items:center;gap:.4rem;padding:.4rem 1rem;font-size:.82rem}.balance-ok[data-v-bddb7f11]{background:#f0faf4;color:#27ae60}.balance-warn[data-v-bddb7f11]{background:#fff8f0;color:#e74c3c}.balance-icon[data-v-bddb7f11]{font-size:.85rem}.balance-text strong[data-v-bddb7f11]{font-weight:700}.packaging-overview[data-v-bddb7f11]{padding:.9rem 1rem 1rem;flex:1;display:flex;flex-direction:column;gap:.75rem}.overview-header[data-v-bddb7f11]{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.overview-title[data-v-bddb7f11]{font-size:.78rem;text-transform:uppercase;color:var(--c-muted);letter-spacing:.05em;font-weight:700}.overview-badge[data-v-bddb7f11]{padding:.3rem .55rem;border-radius:999px;background:#eef6f5;color:#0f766e;font-size:.75rem;font-weight:700;white-space:nowrap}.category-grid[data-v-bddb7f11]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.category-panel[data-v-bddb7f11]{border:1px solid #e5eef2;border-radius:12px;background:#fbfdff;padding:.8rem}.category-panel-header[data-v-bddb7f11]{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.8rem}.category-heading[data-v-bddb7f11]{display:flex;gap:.55rem;align-items:center}.category-icon[data-v-bddb7f11]{font-size:.95rem;line-height:1}.category-title[data-v-bddb7f11]{color:var(--c-heading);font-weight:600;font-size:.9rem}.category-meta[data-v-bddb7f11]{display:flex;flex-wrap:wrap;gap:.35rem .6rem;margin-top:.2rem;color:#667085;font-size:.76rem}.category-total[data-v-bddb7f11]{text-align:right;white-space:nowrap}.category-total-label[data-v-bddb7f11]{display:block;color:#8a94a6;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.category-total strong[data-v-bddb7f11]{color:var(--c-heading);font-size:1rem}.format-list[data-v-bddb7f11]{display:flex;flex-direction:column;gap:.45rem}.format-row[data-v-bddb7f11]{display:grid;grid-template-columns:minmax(88px,1.1fr) minmax(0,1fr) minmax(0,1fr);align-items:center;gap:.55rem;background:#fff;border:1px solid #edf2f7;border-radius:10px;padding:.55rem .65rem}.format-name-wrap[data-v-bddb7f11]{min-width:0}.format-name[data-v-bddb7f11]{color:#334155;font-weight:700;font-size:.82rem}.format-cell[data-v-bddb7f11]{min-width:0;display:flex;flex-direction:column;gap:.1rem}.format-cell-muted[data-v-bddb7f11]{opacity:.7}.format-cell-label[data-v-bddb7f11]{color:#7c8898;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}.format-cell-value[data-v-bddb7f11]{color:var(--c-heading);font-size:.82rem;line-height:1.2}.format-cell-sub[data-v-bddb7f11]{color:#64748b;font-size:.74rem;line-height:1.2}.format-date[data-v-bddb7f11]{grid-column:2 / 4;color:#7c8898;font-size:.72rem}.no-packaging[data-v-bddb7f11]{padding-top:.1rem;font-size:.82rem;color:#bdc3c7;font-style:italic}@media (max-width: 900px){.category-grid[data-v-bddb7f11]{grid-template-columns:1fr}.beer-tab[data-v-bddb7f11]{padding:.45rem .55rem;gap:.35rem}.banner-main[data-v-bddb7f11]{align-items:flex-start;flex-direction:column;gap:.4rem}.format-row[data-v-bddb7f11]{grid-template-columns:1fr}.format-date[data-v-bddb7f11]{grid-column:auto}}.dashboard[data-v-bfed6cfc]{min-height:100vh;background-color:var(--c-bg-light)}.dashboard-content[data-v-bfed6cfc]{padding:24px;max-width:1400px;margin:0 auto}.dashboard-header[data-v-bfed6cfc]{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:1.75rem}.dashboard-header h1[data-v-bfed6cfc]{font-size:1.5rem;font-weight:700;color:#1a202c;margin:0}.header-subtitle[data-v-bfed6cfc]{margin:.25rem 0 0;font-size:.9rem;color:#718096}.kpi-grid[data-v-bfed6cfc]{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}@media (max-width: 1100px){.kpi-grid[data-v-bfed6cfc]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.kpi-grid[data-v-bfed6cfc]{grid-template-columns:1fr}}.kpi-card[data-v-bfed6cfc]{display:flex;align-items:flex-start;gap:1rem;background:#fff;border-radius:12px;padding:16px;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;transition:box-shadow .2s,transform .2s}.kpi-card[data-v-bfed6cfc]:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.kpi-icon[data-v-bfed6cfc]{flex-shrink:0;width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center}.kpi-icon--brew[data-v-bfed6cfc]{background:#ebf5ff;color:var(--c-purple)}.kpi-icon--week[data-v-bfed6cfc]{background:#ecfdf5;color:#10b981}.kpi-icon--year[data-v-bfed6cfc]{background:#f5f3ff;color:#8b5cf6}.kpi-icon--orders[data-v-bfed6cfc]{background:#fff7ed;color:#f59e0b}.kpi-body[data-v-bfed6cfc]{display:flex;flex-direction:column;min-width:0}.kpi-label[data-v-bfed6cfc]{font-size:.78rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.kpi-value[data-v-bfed6cfc]{font-size:1.3rem;font-weight:700;color:#2d3748;line-height:1.2;margin-top:.15rem}.kpi-sub[data-v-bfed6cfc]{font-size:.72rem;color:#a0aec0;margin-top:.1rem}.alert-banner[data-v-bfed6cfc]{display:flex;align-items:center;gap:1rem;margin-top:1.25rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#fef2f2,#fff5f5);border:1px solid #fecaca;border-left:4px solid #ef4444;border-radius:10px}.alert-badge[data-v-bfed6cfc]{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:#ef4444;color:#fff;font-size:1.1rem;font-weight:700;display:flex;align-items:center;justify-content:center}.alert-body[data-v-bfed6cfc]{flex:1;display:flex;flex-direction:column;gap:.15rem}.alert-body strong[data-v-bfed6cfc]{font-size:.95rem;color:#991b1b}.alert-body span[data-v-bfed6cfc]{font-size:.85rem;color:#b91c1c}.alert-action[data-v-bfed6cfc]{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:#ef4444;color:#fff;font-size:.9rem;font-weight:600;border-radius:8px;text-decoration:none;white-space:nowrap;transition:background .2s}.alert-action[data-v-bfed6cfc]:hover{background:#dc2626}.charts-area[data-v-bfed6cfc]{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.production-view[data-v-2a43c143]{padding:20px}.tanks-section[data-v-2a43c143]{margin-bottom:40px}.tank-list[data-v-2a43c143]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:20px}.tank-card[data-v-2a43c143]{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.tank-card h3[data-v-2a43c143]{margin:0 0 10px;color:var(--c-heading)}.tank-actions[data-v-2a43c143]{display:flex;gap:10px;margin-top:15px}.btn-primary[data-v-2a43c143]{background-color:#4caf50;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer}.btn-danger[data-v-2a43c143]{background-color:#f44336;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer}.loading[data-v-2a43c143]{text-align:center;color:var(--c-text-secondary);padding:20px}.error[data-v-2a43c143]{color:#f44336;padding:20px;text-align:center}.no-data[data-v-2a43c143]{text-align:center;color:var(--c-text-secondary);padding:20px;font-style:italic}.modal-overlay[data-v-68f03ff0]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content[data-v-68f03ff0]{position:relative;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.modal-sm[data-v-68f03ff0]{width:min(400px,95vw)}.modal-md[data-v-68f03ff0]{width:min(560px,95vw)}.modal-lg[data-v-68f03ff0]{width:min(800px,95vw)}.modal-header[data-v-68f03ff0]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--c-border)}.modal-header h2[data-v-68f03ff0]{margin:0;font-size:1.15rem;font-weight:600;color:var(--c-heading)}.btn-close[data-v-68f03ff0]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--c-text-secondary);padding:0;line-height:1}.btn-close[data-v-68f03ff0]:hover{color:var(--c-heading)}.modal-body[data-v-68f03ff0]{padding:1.5rem;overflow-y:auto;flex:1}.modal-error[data-v-68f03ff0]{background:#fef2f2;color:#dc2626;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.modal-footer[data-v-68f03ff0]{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--c-border)}.btn[data-v-68f03ff0]{padding:.5rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all .15s}.btn-primary[data-v-68f03ff0]{background:#2563eb;color:#fff}.btn-primary[data-v-68f03ff0]:hover:not(:disabled){background:#1d4ed8}.btn-primary[data-v-68f03ff0]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-68f03ff0]{background:var(--c-bg-subtle);color:var(--c-text);border-color:var(--c-border-strong)}.btn-secondary[data-v-68f03ff0]:hover:not(:disabled){background:var(--c-border)}.spinner-sm[data-v-68f03ff0]{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-68f03ff0 .6s linear infinite;margin-right:.5rem;vertical-align:middle}@keyframes spin-68f03ff0{to{transform:rotate(360deg)}}.reschedule-info[data-v-05c3985b]{background:var(--bg-secondary, #f5f5f5);border-radius:8px;padding:12px 16px;margin-bottom:16px}.reschedule-info__row[data-v-05c3985b]{display:flex;justify-content:space-between;padding:4px 0}.reschedule-info__label[data-v-05c3985b]{color:var(--text-muted, #888);font-size:.9em}.reschedule-info__value[data-v-05c3985b]{font-weight:600}.form-group[data-v-05c3985b]{margin-bottom:16px}.form-label[data-v-05c3985b]{display:block;margin-bottom:4px;font-weight:500;font-size:.9em}.form-input[data-v-05c3985b]{width:100%;padding:8px 12px;border:1px solid var(--border-color, #ccc);border-radius:6px;font-size:.95em}.form-textarea[data-v-05c3985b]{resize:vertical}.reschedule-date-actions[data-v-05c3985b]{display:flex;align-items:center;gap:.75rem;margin-top:.75rem}.reschedule-date-actions__ok[data-v-05c3985b]{font-size:.9rem;font-weight:600;color:#15803d}.reschedule-preview[data-v-05c3985b]{margin-top:16px;border:1px solid var(--border-color, #ddd);border-radius:8px;padding:12px 16px}.reschedule-preview--loading[data-v-05c3985b]{text-align:center;color:var(--text-muted, #888);font-style:italic}.reschedule-preview__title[data-v-05c3985b]{margin:0 0 12px;font-size:1em;color:var(--color-primary, var(--c-purple))}.reschedule-dates-table[data-v-05c3985b]{width:100%;border-collapse:collapse;font-size:.9em;margin-bottom:12px}.reschedule-dates-table th[data-v-05c3985b],.reschedule-dates-table td[data-v-05c3985b]{padding:6px 8px;text-align:left;border-bottom:1px solid var(--border-color, #eee)}.reschedule-dates-table th[data-v-05c3985b]{font-weight:600;font-size:.85em;text-transform:uppercase;color:var(--text-muted, #888)}.reschedule-dates-table__new[data-v-05c3985b]{font-weight:600;color:var(--color-primary, var(--c-purple))}.reschedule-cascade[data-v-05c3985b]{background:var(--color-info-bg, #e8f4f8);color:var(--color-info, #0284c7);padding:8px 12px;border-radius:6px;font-size:.9em;margin-bottom:8px}.reschedule-conflicts[data-v-05c3985b]{display:flex;flex-direction:column;gap:8px}.reschedule-conflict[data-v-05c3985b]{padding:8px 12px;border-radius:6px;font-size:.85em;display:flex;align-items:center;gap:8px}.reschedule-conflict--warning[data-v-05c3985b]{background:var(--color-warning-bg, #fff7ed);color:var(--color-warning, #c2410c)}.reschedule-conflict--info[data-v-05c3985b]{background:var(--color-info-bg, #e8f4f8);color:var(--color-info, #0284c7)}.reschedule-conflict__badge[data-v-05c3985b]{padding:2px 8px;border-radius:4px;font-size:.8em;font-weight:600;white-space:nowrap;color:#fff}.reschedule-conflict--warning .reschedule-conflict__badge[data-v-05c3985b]{background:var(--color-warning, #f97316)}.reschedule-conflict--info .reschedule-conflict__badge[data-v-05c3985b]{background:var(--color-info, #0284c7)}.confirm-overlay[data-v-05c3985b]{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffffeb;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:10;border-radius:12px}.confirm-card[data-v-05c3985b]{text-align:center;padding:2rem 2.5rem;width:min(100%,430px);max-width:430px}.confirm-icon[data-v-05c3985b]{margin-bottom:1rem}.confirm-title[data-v-05c3985b]{margin:0 0 .5rem;font-size:1.15rem;font-weight:600;color:var(--c-heading)}.confirm-message[data-v-05c3985b]{margin:0 0 1.5rem;font-size:.95rem;color:#4b5563;line-height:1.5}.confirm-warning[data-v-05c3985b]{color:#dc2626;font-weight:500;font-size:.85rem}.confirm-transition[data-v-05c3985b]{margin:0 0 1.25rem;padding:.9rem 1rem;border-radius:10px;border:1px solid #f6c26b;background:#fff7e6;text-align:left}.confirm-transition__title[data-v-05c3985b]{margin:0 0 .65rem;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#8a4b08}.confirm-transition__row[data-v-05c3985b]{display:flex;justify-content:space-between;gap:1rem;padding:.2rem 0;color:#5b3410;font-size:.92rem}.confirm-transition__note[data-v-05c3985b]{margin:.65rem 0 0;font-size:.92rem;font-weight:600;color:#8a4b08}.confirm-actions[data-v-05c3985b]{display:flex;justify-content:center;gap:.75rem}.tank-planning[data-v-5de884fa]{min-height:100vh;background:#f4f6f8}.tp-content[data-v-5de884fa]{padding:24px;width:100%;max-width:1800px;margin:0 auto;box-sizing:border-box}.tp-header[data-v-5de884fa]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.tp-title[data-v-5de884fa]{font-size:1.5rem;font-weight:700;color:#1a202c;margin:0}.tp-subtitle[data-v-5de884fa]{font-size:.9rem;color:#718096;margin:.2rem 0 0}.tp-stats[data-v-5de884fa]{display:flex;gap:.75rem;flex-wrap:wrap}.tp-stat[data-v-5de884fa]{background:#fff;border-radius:8px;padding:.6rem 1.1rem;box-shadow:0 1px 4px #00000014;text-align:center;min-width:90px}.tp-stat__num[data-v-5de884fa]{display:block;font-size:1.3rem;font-weight:700;line-height:1}.tp-stat__lbl[data-v-5de884fa]{display:block;font-size:.78rem;color:#718096;margin-top:.2rem;white-space:nowrap}.tp-stat--ferm .tp-stat__num[data-v-5de884fa]{color:#e67e22}.tp-stat--cond .tp-stat__num[data-v-5de884fa]{color:#2980b9}.tp-stat--empty .tp-stat__num[data-v-5de884fa]{color:#27ae60}.tp-nav[data-v-5de884fa]{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.tp-nav__range[data-v-5de884fa]{font-weight:600;font-size:.9rem;color:#2d3748;min-width:200px;text-align:center}.tp-btn[data-v-5de884fa]{padding:.4rem .9rem;border:1px solid #ccc;border-radius:8px;background:#fff;cursor:pointer;font-size:.85rem;transition:background .15s}.tp-btn[data-v-5de884fa]:hover{background:#f0f0f0}.tp-btn--today[data-v-5de884fa]{background:var(--c-purple);color:#fff;border-color:var(--c-purple)}.tp-btn--today[data-v-5de884fa]:hover{background:var(--c-purple-dark)}.tp-btn--regenerate[data-v-5de884fa]{background:#8b5cf6;color:#fff;border-color:#8b5cf6}.tp-btn--regenerate[data-v-5de884fa]:hover{background:#7c3aed}.tp-btn--regenerate[data-v-5de884fa]:disabled{background:#c4b5fd;border-color:#c4b5fd;cursor:not-allowed}.tp-timing-note[data-v-5de884fa]{display:flex;align-items:flex-start;gap:.7rem;margin:0 0 1rem;padding:.7rem .9rem;background:#fff7e6;border:1px solid #f6c26b;border-radius:10px;color:#8a4b08;font-size:.82rem;line-height:1.4}.tp-timing-note__swatch[data-v-5de884fa]{flex:0 0 28px;width:28px;height:12px;margin-top:.15rem;border-radius:4px;border:1px solid #c97418;background:repeating-linear-gradient(135deg,#ffffff1f 0,#ffffff1f 6px,#ffffff6b 6px,#ffffff6b 12px),linear-gradient(135deg,#f39c12,#e67e22)}.tp-timing-note--footer[data-v-5de884fa]{margin:.5rem 0 0}.hover-indicator[data-v-5de884fa]{position:fixed;z-index:9999;pointer-events:none;background:#fffffff2;border:1px solid #e2e8f0;border-radius:6px;padding:4px 10px;font-size:.8em;font-weight:500;color:#2d3748;box-shadow:0 2px 8px #0000001f;white-space:nowrap}.hover-indicator--locked[data-v-5de884fa]{color:#a0aec0}.ctx-menu[data-v-5de884fa]{position:fixed;z-index:9999;min-width:220px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 24px #0000002e;padding:4px 0;font-size:.9em}.ctx-menu__header[data-v-5de884fa]{padding:8px 14px;font-weight:600;color:#2d3748;border-bottom:1px solid #e2e8f0;font-size:.95em}.ctx-menu__item[data-v-5de884fa]{display:block;width:100%;padding:8px 14px;text-align:left;background:none;border:none;cursor:pointer;color:#2d3748;font-size:.9em}.ctx-menu__item[data-v-5de884fa]:hover:not(:disabled){background:#f0f4ff;color:#3b82f6}.ctx-menu__item[data-v-5de884fa]:disabled{color:#a0aec0;cursor:not-allowed}.tp-loading[data-v-5de884fa]{display:flex;flex-direction:column;align-items:center;padding:4rem;color:var(--c-text-secondary)}.tp-loading__spinner[data-v-5de884fa]{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:var(--c-purple);border-radius:50%;animation:spin-5de884fa .7s linear infinite;margin-bottom:.75rem}@keyframes spin-5de884fa{to{transform:rotate(360deg)}}.tp-gantt-header[data-v-5de884fa]{position:sticky;top:0;z-index:40;overflow:hidden;width:100%;background:#f8f9fa;border-radius:10px 10px 0 0;box-shadow:0 -1px #e2e8f0,0 1px 6px #0000001a}.tp-gantt[data-v-5de884fa]{position:relative;width:100%;background:#fff;border-radius:0 0 10px 10px;box-shadow:0 2px 6px #00000014;overflow-x:auto;overflow-y:visible}.gantt-row[data-v-5de884fa]{display:flex;border-bottom:1px solid #ececec;min-width:max-content}.gantt-row[data-v-5de884fa]:last-child{border-bottom:none}.gantt-row--header[data-v-5de884fa]{background:#f8f9fa;border-bottom:2px solid #e2e8f0}.gantt-label[data-v-5de884fa]{width:120px;min-width:120px;padding:.3rem .6rem;border-right:2px solid #e2e8f0;display:flex;flex-direction:column;justify-content:center;background:#fdfdfd;position:sticky;left:0;z-index:25}.gantt-label--head[data-v-5de884fa]{font-size:.75rem;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.04em;align-items:center;z-index:45}.tank-name[data-v-5de884fa]{font-weight:600;font-size:.82rem;color:#2d3748;white-space:nowrap}.tank-cap[data-v-5de884fa]{font-size:.68rem;color:#a0aec0}.gantt-track[data-v-5de884fa]{display:grid;position:relative}.gantt-day[data-v-5de884fa]{padding:.25rem 0;text-align:center;border-right:1px solid #edf2f7;-webkit-user-select:none;user-select:none}.gantt-day--mon[data-v-5de884fa]{border-left:2px solid #ccc}.gantt-day--weekend[data-v-5de884fa]{background:#e7edf5;box-shadow:inset 0 0 0 1px #d5dfeb}.gantt-day--closure[data-v-5de884fa]{background-color:#fff1f2;background-image:repeating-linear-gradient(135deg,#dc262638 0,#dc262638 7px,#dc26260a 7px,#dc26260a 14px);box-shadow:inset 0 0 0 1px #dc262629}.gantt-day--closure .gantt-day__name[data-v-5de884fa],.gantt-day--closure .gantt-day__num[data-v-5de884fa]{color:#b91c1c}.gantt-day--today[data-v-5de884fa]{background:#ebf5fb}.gantt-day--closure.gantt-day--today[data-v-5de884fa]{background-color:#fee2e2;background-image:repeating-linear-gradient(135deg,#dc262638 0,#dc262638 7px,#dc26260a 7px,#dc26260a 14px)}.gantt-day--closure.gantt-day--weekend[data-v-5de884fa]{background-color:#fde2e4;background-image:repeating-linear-gradient(135deg,#dc262638 0,#dc262638 7px,#dc26260a 7px,#dc26260a 14px)}.gantt-day--first-month[data-v-5de884fa]{border-left:2px solid var(--c-purple)!important;background:#f0f7ff}.gantt-day--closure.gantt-day--first-month[data-v-5de884fa]{background-color:#fff1f2;background-image:repeating-linear-gradient(135deg,#dc262638 0,#dc262638 7px,#dc26260a 7px,#dc26260a 14px);border-left-color:#ef4444!important}.gantt-day__name[data-v-5de884fa]{display:block;font-size:.6rem;color:#a0aec0;text-transform:lowercase;line-height:1.1}.gantt-day--first-month .gantt-day__name[data-v-5de884fa]{color:#2980b9;font-weight:700;font-size:.62rem}.gantt-day__num[data-v-5de884fa]{display:block;font-size:.75rem;font-weight:700;color:#444}.gantt-day--today .gantt-day__num[data-v-5de884fa]{color:#2980b9}.gantt-track--data[data-v-5de884fa]{position:relative}.gantt-cell[data-v-5de884fa]{height:38px;border-right:1px solid #f2f2f2}.gantt-cell--mon[data-v-5de884fa]{border-left:2px solid #e8e8e8}.gantt-cell--closure[data-v-5de884fa]{background-color:#fff7f7;background-image:repeating-linear-gradient(135deg,#dc26262e 0,#dc26262e 7px,#dc262608 7px,#dc262608 14px);box-shadow:inset 0 0 0 1px #dc26261a}.gantt-cell--weekend[data-v-5de884fa]{background:#eef3fa}.gantt-cell--closure.gantt-cell--weekend[data-v-5de884fa]{background-color:#fdeff1;background-image:repeating-linear-gradient(135deg,#dc26262e 0,#dc26262e 7px,#dc262608 7px,#dc262608 14px)}.gantt-cell--today[data-v-5de884fa]{background:#ebf5fb}.gantt-cell--closure.gantt-cell--today[data-v-5de884fa]{background-color:#feeaea;background-image:repeating-linear-gradient(135deg,#dc26262e 0,#dc26262e 7px,#dc262608 7px,#dc262608 14px)}.gantt-group-header[data-v-5de884fa]{display:flex;align-items:center;gap:.6rem;padding:.35rem .75rem;background:#ecf0f1;border-top:2px solid #bdc3c7;border-bottom:1px solid #e2e8f0;font-size:.8rem;font-weight:700;color:#4a5568;position:sticky;left:0;z-index:18;min-width:max-content}.occ-badge[data-v-5de884fa]{color:#fff;font-size:.72rem;padding:.1rem .5rem;border-radius:10px;font-weight:600}.tbf-note[data-v-5de884fa]{font-size:.7rem;font-weight:600;color:#7d3c98;background:#f4ecf7;border:1px solid #d2b4de;border-radius:10px;padding:.08rem .45rem}.gantt-bar[data-v-5de884fa]{position:absolute;top:5px;height:calc(100% - 10px);border-radius:5px;display:flex;align-items:center;overflow:hidden;cursor:pointer;transition:opacity .2s,filter .2s,box-shadow .2s;z-index:2;min-width:4px}.gantt-bar[data-v-5de884fa]:hover{opacity:.85;filter:brightness(1.06)}.gantt-bar--brew[data-v-5de884fa]{background:linear-gradient(135deg,#922b21,#7b241c);border:1px solid #641e16;color:#fff}.gantt-bar--ferm[data-v-5de884fa]{background:linear-gradient(135deg,#f39c12,#e67e22);border:1px solid #d68910;color:#fff}.gantt-bar--ferm-tail[data-v-5de884fa]{pointer-events:none;box-shadow:inset 2px 0 #fffc,inset 0 0 0 1px #ffffff1f}.gantt-bar--cond[data-v-5de884fa]{background:linear-gradient(135deg,var(--c-purple) 0%,#2980b9 100%);border:1px solid #2471a3;color:#fff}.gantt-bar--tbf[data-v-5de884fa]{background:linear-gradient(135deg,#9b59b6,#8e44ad);border:1px solid #7d3c98;color:#fff;min-width:20px;justify-content:center}.gantt-row--brew .gantt-cell[data-v-5de884fa]{height:var(--brew-row-height, 38px)}.gantt-row--tbf .gantt-cell[data-v-5de884fa]{height:46px}.gantt-bar--postcntrf[data-v-5de884fa]{background:linear-gradient(135deg,#e67e22,#ca6f1e);border:2px dashed #a04000;color:#fff;min-width:20px;justify-content:center}.gantt-bar--startup[data-v-5de884fa]{background:repeating-linear-gradient(135deg,#2c3e50eb 0,#2c3e50eb 10px,#fff3 10px,#fff3 16px);border:2px dashed rgba(28,44,58,.9);color:#fff;box-shadow:inset 0 0 0 1px #ffffff26}.gantt-bar--startup-tbf[data-v-5de884fa]{justify-content:center}.gantt-bar__label[data-v-5de884fa]{font-size:.68rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 6px;text-shadow:0 1px 2px rgba(0,0,0,.2);flex:0 1 auto;min-width:0}.gantt-bar__yeast[data-v-5de884fa]{font-size:.58rem;font-weight:600;white-space:nowrap;padding:0 4px;opacity:.85;flex:0 0 auto;text-shadow:0 1px 2px rgba(0,0,0,.2)}.gantt-bar__yeast--slurry[data-v-5de884fa]{opacity:1}.gantt-bar__anchor[data-v-5de884fa]{position:absolute;top:2px;left:4px;font-size:.72rem;line-height:1;text-shadow:0 1px 2px rgba(0,0,0,.25);pointer-events:none}.gantt-bar--anchored .gantt-bar__label[data-v-5de884fa]{padding-left:18px}.gantt-bar--anchored .gantt-bar__yeast[data-v-5de884fa]{padding-left:2px}.gantt-bar--anchored .pkg-badge-grid[data-v-5de884fa]{padding-left:18px}.gantt-row--cond .gantt-cell[data-v-5de884fa]{height:46px}.pkg-badge-grid[data-v-5de884fa]{display:flex;flex-direction:row;gap:2px;padding:2px 4px;width:100%;height:100%;overflow:hidden;align-items:stretch}.pkg-badge-col[data-v-5de884fa]{display:flex;flex-direction:column;flex:1;gap:2px;min-width:0;justify-content:center}.pkg-badge[data-v-5de884fa]{display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:600;background:#ffffff38;border:1px solid rgba(255,255,255,.35);border-radius:3px;padding:1px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;text-shadow:none;letter-spacing:.01em}.gantt-bar__label--compact[data-v-5de884fa]{padding:0 3px;font-size:.72rem;letter-spacing:0}.gantt-bar--dimmed[data-v-5de884fa]{opacity:.15!important;filter:grayscale(.5)!important}.gantt-bar--highlighted[data-v-5de884fa]{opacity:1!important;filter:brightness(1.08)!important;box-shadow:0 0 0 2.5px #e74c3c,0 2px 10px #e74c3c73!important;z-index:20!important}.tp-gantt-arrows[data-v-5de884fa]{position:absolute;top:0;left:0;overflow:visible;pointer-events:none;z-index:15}.tp-legend[data-v-5de884fa]{display:flex;gap:1.5rem;margin-top:.75rem;padding:.5rem 0;flex-wrap:wrap}.legend-item[data-v-5de884fa]{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--c-text-secondary)}.legend-item--calendar[data-v-5de884fa]{color:#991b1b;font-weight:600}.legend-swatch[data-v-5de884fa]{width:22px;height:11px;border-radius:3px;border:1px solid transparent}.legend-swatch--closure[data-v-5de884fa]{border-color:#dc26268c;background:repeating-linear-gradient(135deg,#dc262657 0,#dc262657 7px,#dc262614 7px,#dc262614 14px),#fff1f2}.planning-modal--regenerate[data-v-5de884fa]{max-width:620px;text-align:left}.planning-modal--regenerate .planning-modal-icon[data-v-5de884fa]{margin-bottom:1.25rem}.planning-modal--regenerate .planning-modal-title[data-v-5de884fa]{text-align:center}.planning-modal-rules[data-v-5de884fa]{display:flex;flex-direction:column;gap:.875rem;margin:0 0 1.5rem}.planning-modal-rule-group[data-v-5de884fa]{background:var(--c-bg-light);border:1px solid #e2e8f0;border-radius:10px;padding:.875rem 1rem}.planning-modal-rule-title[data-v-5de884fa]{margin:0 0 .5rem;font-size:.8125rem;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.04em}.planning-modal-rule-list[data-v-5de884fa]{margin:0;padding-left:1.125rem;color:#475569;font-size:.875rem;line-height:1.5}.planning-modal-rule-list li+li[data-v-5de884fa]{margin-top:.375rem}.startup-planning[data-v-784cd22b]{padding:1.5rem;display:grid;gap:1rem;background:linear-gradient(180deg,var(--c-bg-page) 0%,var(--c-bg-light) 100%);min-height:100vh}.seed-hero[data-v-784cd22b],.seed-summary[data-v-784cd22b],.seed-toolbar[data-v-784cd22b],.timeline-shell[data-v-784cd22b]{background:#ffffffe6;border:1px solid rgba(25,40,32,.08);border-radius:12px;box-shadow:0 12px 30px #22342c14}.seed-hero[data-v-784cd22b]{padding:1.5rem;display:flex;justify-content:space-between;gap:1.5rem;align-items:flex-start}.seed-eyebrow[data-v-784cd22b]{margin:0 0 .25rem;text-transform:uppercase;letter-spacing:.08em;font-size:.74rem;color:var(--c-text-secondary)}.seed-hero h1[data-v-784cd22b]{margin:0;font-size:1.5rem;font-weight:700;color:#1a202c}.seed-subtitle[data-v-784cd22b]{margin:.5rem 0 0;max-width:70ch;color:var(--c-body)}.seed-actions[data-v-784cd22b]{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.btn[data-v-784cd22b]{border:none;border-radius:8px;padding:.75rem 1.1rem;font-weight:700;cursor:pointer}.btn-primary[data-v-784cd22b]{background:var(--c-purple);color:#fff}.btn-secondary[data-v-784cd22b],.btn-outline[data-v-784cd22b]{background:var(--c-bg-subtle);color:var(--c-heading)}.btn-warning[data-v-784cd22b]{background:#bf6f1f;color:#fff}.btn-danger[data-v-784cd22b]{background:#b84436;color:#fff}.seed-summary[data-v-784cd22b]{padding:1rem 1.25rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,minmax(0,1fr))}.summary-card[data-v-784cd22b]{padding:1rem;border-radius:12px;background:#fff;display:grid;gap:.35rem}.summary-card--danger[data-v-784cd22b]{background:#fbeae7}.summary-label[data-v-784cd22b]{color:#68776d;font-size:.82rem}.summary-value[data-v-784cd22b]{font-size:1.4rem;color:#1f3427}.seed-toolbar[data-v-784cd22b]{padding:1rem 1.25rem;display:flex;gap:.9rem;flex-wrap:wrap}.toolbar-field[data-v-784cd22b]{display:grid;gap:.3rem}.toolbar-field--grow[data-v-784cd22b]{min-width:220px;flex:1}.toolbar-field span[data-v-784cd22b]{font-size:.78rem;color:#5f6c63;text-transform:uppercase;letter-spacing:.06em}.toolbar-field select[data-v-784cd22b],.toolbar-field input[data-v-784cd22b],.modal-field select[data-v-784cd22b],.modal-field input[data-v-784cd22b],.modal-field textarea[data-v-784cd22b]{border:1px solid #d7ded5;border-radius:12px;padding:.7rem .85rem;font:inherit;background:#fff}.seed-banner[data-v-784cd22b]{padding:1rem 1.25rem;border-radius:14px;display:grid;gap:.35rem}.seed-banner--info[data-v-784cd22b]{background:#edf5f1;color:#204638}.seed-banner--success[data-v-784cd22b]{background:#e9f6ed;color:#1d5630}.seed-banner--error[data-v-784cd22b]{background:#fdecea;color:#8d2c2c}.seed-conflicts[data-v-784cd22b]{margin:.5rem 0 0;padding-left:1.2rem}.seed-error[data-v-784cd22b],.seed-loading[data-v-784cd22b]{padding:1rem 1.2rem;border-radius:14px}.seed-error[data-v-784cd22b]{background:#fdecea;color:#912b2b}.seed-loading[data-v-784cd22b]{background:#f2f5f1;color:#31463a}.timeline-shell[data-v-784cd22b]{overflow:auto}.timeline-header[data-v-784cd22b],.timeline-row[data-v-784cd22b]{display:grid;grid-template-columns:220px 1fr;min-width:1648px}.resource-col[data-v-784cd22b]{padding:.85rem 1rem;border-right:1px solid #edf0ea;background:#fcfdfb;position:sticky;left:0;z-index:5}.resource-col--header[data-v-784cd22b]{font-weight:700;color:#506057}.resource-name[data-v-784cd22b]{font-weight:700;color:#1f3026}.resource-meta[data-v-784cd22b]{margin-top:.15rem;font-size:.8rem;color:#718076}.timeline-track[data-v-784cd22b]{display:grid;position:relative}.day-head[data-v-784cd22b],.day-cell[data-v-784cd22b]{border-left:1px solid #edf0ea}.day-head[data-v-784cd22b]{padding:.55rem .1rem;text-align:center;background:#faf8f1;display:grid;gap:.12rem}.day-head.today[data-v-784cd22b],.day-cell.today[data-v-784cd22b]{background:#fff3d4}.day-head.weekend[data-v-784cd22b],.day-cell.weekend[data-v-784cd22b]{background:#f3ecdba6}.day-head__name[data-v-784cd22b]{font-size:.72rem;text-transform:uppercase;color:#8b7a55}.day-head__num[data-v-784cd22b]{font-weight:700;color:#40341b}.timeline-track--body[data-v-784cd22b]{min-height:58px}.day-cell[data-v-784cd22b]{min-height:58px;border-top:1px solid #edf0ea}.group-header[data-v-784cd22b]{position:sticky;left:0;z-index:8;display:flex;justify-content:space-between;padding:.8rem 1rem;background:linear-gradient(90deg,#203b31,#2d5547);color:#fff;font-weight:700;min-width:fit-content}.group-count[data-v-784cd22b]{color:#ffffffb8;font-weight:500}.seed-bar[data-v-784cd22b]{position:absolute;top:8px;bottom:8px;border-radius:5px;border:2px dashed rgba(28,44,58,.9);display:flex;align-items:stretch;box-shadow:inset 0 0 0 1px #ffffff26,0 6px 16px #141a141f;overflow:hidden;z-index:3;transition:opacity .2s,filter .2s,box-shadow .2s}.seed-bar[data-v-784cd22b]:hover{opacity:.88;filter:brightness(1.04)}.seed-bar--draft[data-v-784cd22b],.seed-bar--preview[data-v-784cd22b]{opacity:.8;border:2px dashed rgba(255,255,255,.9)}.seed-bar--draft[data-v-784cd22b]{cursor:pointer}.seed-bar--published[data-v-784cd22b]{outline:2px solid rgba(255,255,255,.7)}.seed-bar--conflict[data-v-784cd22b]{box-shadow:0 0 0 2px #a62d2d,0 8px 20px #a62d2d40}.seed-bar--ghosted[data-v-784cd22b]{opacity:.18}.seed-bar__body[data-v-784cd22b]{display:flex;align-items:center;gap:.3rem;padding:0 .4rem;width:100%;cursor:grab;min-width:0}.seed-bar__title[data-v-784cd22b]{font-size:.68rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.2)}.seed-bar__badge[data-v-784cd22b],.seed-bar__lock[data-v-784cd22b]{background:#ffffff38;border:1px solid rgba(255,255,255,.35);border-radius:3px;padding:1px 4px;font-size:.58rem;font-weight:600;white-space:nowrap;text-shadow:none}.seed-handle[data-v-784cd22b]{width:10px;border:none;background:#ffffff80;cursor:ew-resize}.modal-overlay[data-v-784cd22b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#171a1675;display:grid;place-items:center;padding:1rem;z-index:30}.modal-box[data-v-784cd22b]{width:min(640px,100%);background:#fff;border-radius:20px;padding:1.35rem;display:grid;gap:1rem;box-shadow:0 20px 50px #00000038}.modal-header[data-v-784cd22b]{display:flex;justify-content:space-between;gap:1rem}.modal-header h3[data-v-784cd22b]{margin:0}.modal-subtitle[data-v-784cd22b]{margin:.2rem 0 0;color:#6a786d}.modal-close[data-v-784cd22b]{border:none;background:transparent;font-size:1.2rem;cursor:pointer}.modal-grid[data-v-784cd22b]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.modal-field[data-v-784cd22b]{display:grid;gap:.35rem}.modal-field--full[data-v-784cd22b]{grid-column:1 / -1}.modal-field span[data-v-784cd22b]{font-size:.8rem;color:#5f6c63}.modal-error[data-v-784cd22b]{padding:.8rem .9rem;background:#fdecea;color:#8d2c2c;border-radius:12px}.modal-actions[data-v-784cd22b]{display:flex;justify-content:flex-end;gap:.75rem}.publish-modal[data-v-784cd22b]{width:min(620px,100%);max-height:calc(100vh - 2rem);overflow-y:auto;padding:1.5rem;gap:1.15rem;background:radial-gradient(circle at top left,rgba(255,244,225,.95),transparent 36%),linear-gradient(180deg,#fffdfa,#fffaf4);border:1px solid rgba(148,93,31,.12)}.publish-modal__hero[data-v-784cd22b]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.publish-modal__badge[data-v-784cd22b]{padding:.4rem .7rem;border-radius:999px;background:#8c571b1f;color:#8a541d;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.publish-modal__header[data-v-784cd22b]{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:start}.publish-modal__header h3[data-v-784cd22b]{margin:0;font-size:1.5rem;color:#1f3026}.publish-modal__lead[data-v-784cd22b]{margin:.35rem 0 0;color:#5e695f;line-height:1.55}.publish-modal__icon[data-v-784cd22b]{width:3rem;height:3rem;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#c56e1c,#8d4f1f);color:#fff;font-size:1.45rem;font-weight:800;box-shadow:0 12px 24px #8d4f1f3d}.publish-modal__grid[data-v-784cd22b]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.publish-card[data-v-784cd22b]{padding:1rem;border-radius:18px;display:grid;gap:.45rem;border:1px solid transparent}.publish-card--danger[data-v-784cd22b]{background:#ffeee5e0;border-color:#b8443629}.publish-card--safe[data-v-784cd22b]{background:#ecf5eff2;border-color:#245b4c24}.publish-card__eyebrow[data-v-784cd22b]{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#7b6a4b}.publish-card__title[data-v-784cd22b]{color:#1f3026;font-size:1rem}.publish-card p[data-v-784cd22b]{margin:0;color:#5d685f;line-height:1.5}.publish-modal__notes[data-v-784cd22b]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.publish-note[data-v-784cd22b]{padding:.85rem .95rem;border-radius:14px;background:#ffffffc2;border:1px solid rgba(35,49,39,.08);display:grid;gap:.15rem}.publish-note strong[data-v-784cd22b]{font-size:1.25rem;color:#1f3026}.publish-note span[data-v-784cd22b]{color:#667369;font-size:.86rem}.publish-callout[data-v-784cd22b]{padding:.95rem 1rem;border-radius:16px;background:#fff7e9f5;border:1px solid rgba(197,110,28,.2);color:#754819;line-height:1.55}.publish-alert[data-v-784cd22b]{padding:1rem 1.05rem;border-radius:18px;display:grid;gap:.45rem}.publish-alert strong[data-v-784cd22b]{font-size:1rem}.publish-alert p[data-v-784cd22b]{margin:0;line-height:1.55}.publish-alert--critical[data-v-784cd22b]{background:linear-gradient(180deg,#c03f2f1f,#ffefebf0);border:1px solid rgba(184,68,54,.22);color:#8c261e;box-shadow:inset 0 0 0 1px #ffffff73}.publish-alert__list[data-v-784cd22b]{margin:.2rem 0 0;padding-left:1.1rem;display:grid;gap:.2rem}.publish-modal__actions[data-v-784cd22b]{margin-top:.2rem}@media (max-width: 900px){.startup-planning[data-v-784cd22b]{padding:1rem}.seed-hero[data-v-784cd22b]{flex-direction:column}.seed-summary[data-v-784cd22b]{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-header[data-v-784cd22b],.timeline-row[data-v-784cd22b]{grid-template-columns:180px 1fr;min-width:1608px}.modal-grid[data-v-784cd22b],.publish-modal__grid[data-v-784cd22b],.publish-modal__notes[data-v-784cd22b],.publish-modal__header[data-v-784cd22b]{grid-template-columns:1fr}}.inventory-view[data-v-9923b65e]{padding:24px;max-width:1400px;margin:0 auto}.page-header[data-v-9923b65e]{margin-bottom:30px}.loading[data-v-9923b65e]{text-align:center;color:#718096;padding:40px;font-size:.9rem}.error[data-v-9923b65e]{color:#f44336;padding:20px;text-align:center;background:#ffebee;border-radius:12px;margin:20px 0}.content[data-v-9923b65e]{display:flex;flex-direction:column;gap:30px}.no-data[data-v-9923b65e]{text-align:center;color:#718096;padding:40px;font-style:italic}.text-right[data-v-9923b65e]{text-align:right}.text-center[data-v-9923b65e]{text-align:center}.raw-materials-section[data-v-9923b65e]{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 4px #0000001a}.filters-bar[data-v-9923b65e]{margin-bottom:20px;display:flex;flex-direction:column;gap:15px}.search-box[data-v-9923b65e]{width:100%}.search-input[data-v-9923b65e]{width:100%;padding:12px 16px;font-size:.9rem;border:2px solid #e2e8f0;border-radius:8px;transition:border-color .2s}.search-input[data-v-9923b65e]:focus{outline:none;border-color:var(--c-purple)}.filter-buttons[data-v-9923b65e]{display:flex;gap:10px;flex-wrap:wrap}.filter-btn[data-v-9923b65e]{padding:8px 16px;border:2px solid #e2e8f0;background:#fff;color:#718096;border-radius:8px;font-size:.88rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.filter-btn[data-v-9923b65e]:hover{border-color:var(--c-purple);color:var(--c-purple)}.filter-btn.active[data-v-9923b65e]{background:var(--c-purple);border-color:var(--c-purple);color:#fff}.filter-options[data-v-9923b65e]{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.checkbox-label[data-v-9923b65e]{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.88rem;color:#718096;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox][data-v-9923b65e]{cursor:pointer;width:18px;height:18px}.sort-select[data-v-9923b65e]{padding:8px 12px;border:2px solid #e2e8f0;border-radius:8px;font-size:.88rem;color:#718096;background:#fff;cursor:pointer;transition:border-color .2s}.sort-select[data-v-9923b65e]:focus{outline:none;border-color:var(--c-purple)}.results-info[data-v-9923b65e]{margin-top:15px;text-align:center;color:#a0aec0;font-size:.8rem}.materials-table-container[data-v-9923b65e]{overflow-x:auto}.materials-table[data-v-9923b65e]{width:100%;border-collapse:collapse;font-size:.88rem}.materials-table thead[data-v-9923b65e]{background:#f7fafc}.materials-table th[data-v-9923b65e]{padding:8px 10px;text-align:left;font-weight:600;color:#2d3748;border-bottom:2px solid #e2e8f0}.materials-table th.text-right[data-v-9923b65e]{text-align:right}.materials-table th.text-center[data-v-9923b65e]{text-align:center}.materials-table tbody tr[data-v-9923b65e]{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.materials-table tbody tr[data-v-9923b65e]:hover{background:#f7fafc}.materials-table tbody tr.low-stock-row[data-v-9923b65e]{background-color:#fff3f3;border-left:4px solid #f44336}.materials-table tbody tr.low-stock-row[data-v-9923b65e]:hover{background-color:#ffe8e8}.materials-table td[data-v-9923b65e]{padding:6px 10px;vertical-align:middle}.category-cell[data-v-9923b65e]{font-weight:600;color:#718096;white-space:nowrap;width:140px}.article-name[data-v-9923b65e]{font-weight:500;color:#2d3748}.quantity-cell[data-v-9923b65e]{white-space:nowrap;color:#2d3748;font-size:.9rem}.status-badge[data-v-9923b65e]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.78rem;font-weight:600;white-space:nowrap}.status-badge.ok[data-v-9923b65e]{background:#e8f5e9;color:#2e7d32}.status-badge.low-stock[data-v-9923b65e]{background:#ffebee;color:#c62828;animation:pulse-9923b65e 2s ease-in-out infinite}@keyframes pulse-9923b65e{0%,to{opacity:1}50%{opacity:.7}}.expiration-badge[data-v-9923b65e]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.78rem;font-weight:600;white-space:nowrap}.expiration-critical[data-v-9923b65e]{background:#ffebee;color:#c62828;animation:pulse-9923b65e 2s ease-in-out infinite}.expiration-warning[data-v-9923b65e]{background:#fff3e0;color:#ef6c00}.expiration-ok[data-v-9923b65e]{background:#e3f2fd;color:#1565c0}.expiration-sufficient[data-v-9923b65e]{background:#e8f5e9;color:#2e7d32}.expiration-out[data-v-9923b65e]{background:#f5f5f5;color:#616161;text-decoration:line-through}.expiration-loading[data-v-9923b65e]{background:#f5f5f5;color:#a0aec0;font-style:italic}@media (max-width: 768px){.filters-bar[data-v-9923b65e]{gap:10px}.filter-buttons[data-v-9923b65e]{gap:8px}.filter-btn[data-v-9923b65e]{padding:6px 12px;font-size:.8rem}.materials-table[data-v-9923b65e]{font-size:.8rem}.materials-table th[data-v-9923b65e],.materials-table td[data-v-9923b65e]{padding:8px 10px}.category-cell[data-v-9923b65e]{width:auto}.filter-options[data-v-9923b65e]{width:100%}.sort-select[data-v-9923b65e]{flex:1}}.date-cell[data-v-9923b65e]{color:#718096;font-size:.8rem}.action-btn[data-v-9923b65e]{padding:6px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#2d3748;cursor:pointer;font-size:.8rem;transition:all .2s}.action-btn[data-v-9923b65e]:hover{background:#f7fafc;border-color:#adb5bd;color:#000}.modal-overlay[data-v-9923b65e]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-9923b65e]{background:#fff;border-radius:12px;width:90%;max-width:500px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column}.modal-header[data-v-9923b65e]{padding:15px 20px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-9923b65e]{margin:0;font-size:1.1rem;color:#2d3748}.close-btn[data-v-9923b65e]{background:none;border:none;font-size:1.5rem;color:#a0aec0;cursor:pointer}.close-btn[data-v-9923b65e]:hover{color:#718096}.modal-body[data-v-9923b65e]{padding:20px}.item-name[data-v-9923b65e]{font-size:1.1rem;font-weight:600;color:#2d3748;margin-bottom:5px}.current-stock[data-v-9923b65e]{color:#718096;margin-bottom:20px}.form-group[data-v-9923b65e]{margin-bottom:15px}.form-group label[data-v-9923b65e]{display:block;margin-bottom:5px;font-weight:500;color:#2d3748}.input-group[data-v-9923b65e]{display:flex;align-items:center}.form-input[data-v-9923b65e]{flex:1;padding:10px;border:1px solid #e2e8f0;border-radius:8px 0 0 8px;font-size:.9rem}.unit-addon[data-v-9923b65e]{padding:10px 15px;background:#f7fafc;border:1px solid #e2e8f0;border-left:none;border-radius:0 8px 8px 0;color:#718096;font-weight:500}.form-textarea[data-v-9923b65e]{width:100%;padding:10px;border:1px solid #e2e8f0;border-radius:8px;font-size:.88rem;min-height:80px;resize:vertical}.modal-footer[data-v-9923b65e]{padding:15px 20px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:10px}.cancel-btn[data-v-9923b65e]{padding:8px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#718096;cursor:pointer}.save-btn[data-v-9923b65e]{padding:8px 16px;background:var(--c-purple);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500}.save-btn[data-v-9923b65e]:disabled{background:#a0aec0;cursor:not-allowed}.finished-inventory-view[data-v-2b318a90]{max-width:1400px;margin:0 auto;padding:24px}.page-header[data-v-2b318a90]{margin-bottom:1rem}.header-actions[data-v-2b318a90]{display:flex;gap:.5rem}.btn[data-v-2b318a90]{border:1px solid transparent;border-radius:8px;padding:.5rem .9rem;font-weight:600;cursor:pointer;font-size:.9rem}.btn.primary[data-v-2b318a90]{background:#0f766e;color:#fff}.btn.ghost[data-v-2b318a90]{background:#fff;border-color:#e2e8f0;color:#2d3748}.btn[data-v-2b318a90]:disabled{opacity:.6;cursor:not-allowed}.toolbar[data-v-2b318a90]{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem}.search-input[data-v-2b318a90]{width:min(100%,340px);border:1px solid #e2e8f0;border-radius:8px;padding:.5rem .75rem;font-size:.9rem}.table-wrap[data-v-2b318a90]{overflow-x:auto;background:#fff;border:1px solid #e2e8f0;border-radius:12px}.inventory-table[data-v-2b318a90]{width:100%;min-width:920px;border-collapse:collapse}.inventory-table th[data-v-2b318a90],.inventory-table td[data-v-2b318a90]{border-bottom:1px solid #e2e8f0;padding:.55rem}.inventory-table th[data-v-2b318a90]{background:#f7fafc;color:#2d3748;text-align:left;font-size:.9rem}.beer-col[data-v-2b318a90]{width:260px}.packaging-col[data-v-2b318a90]{min-width:160px}.beer-cell[data-v-2b318a90]{font-weight:600;color:#2d3748}.cell-new[data-v-2b318a90]{background:#fcfcf2}.cell-stale[data-v-2b318a90]{box-shadow:inset 0 0 0 2px #ef4444}.input-wrap[data-v-2b318a90]{display:flex;align-items:center;gap:.4rem}.qty-input[data-v-2b318a90]{width:96px;border:1px solid #e2e8f0;border-radius:6px;padding:.35rem .5rem;font-size:.9rem}.cell-save[data-v-2b318a90]{width:28px;height:28px;border:1px solid #e2e8f0;background:#fff;border-radius:6px;color:#718096;font-weight:700;cursor:pointer}.cell-save.dirty[data-v-2b318a90]{border-color:#0f766e;color:#0f766e}.cell-save[data-v-2b318a90]:disabled{opacity:.45;cursor:not-allowed}.cell-date[data-v-2b318a90]{margin-top:.25rem;font-size:.72rem;color:#718096}.desktop-only[data-v-2b318a90]{display:block}.mobile-only[data-v-2b318a90]{display:none}.mobile-cards[data-v-2b318a90]{gap:.8rem}.beer-card[data-v-2b318a90]{border:1px solid #e2e8f0;border-radius:12px;background:#fff;padding:.75rem}.beer-card-title[data-v-2b318a90]{margin:0 0 .55rem;font-size:1rem;color:#2d3748}.packaging-list[data-v-2b318a90]{display:grid;gap:.55rem}.packaging-item[data-v-2b318a90]{border:1px solid #edf2f7;border-radius:8px;padding:.5rem;background:#fcfdff}.packaging-top[data-v-2b318a90]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem}.packaging-name[data-v-2b318a90]{font-size:.86rem;color:#4a5568;font-weight:600}.mobile-input[data-v-2b318a90]{width:100%}.state[data-v-2b318a90]{border-radius:12px;padding:1rem}.state.loading[data-v-2b318a90]{background:#eff6ff;color:#1d4ed8}.state.error[data-v-2b318a90]{background:#fef2f2;color:#b91c1c}.state.empty[data-v-2b318a90]{background:#f7fafc;color:#4a5568}@media (max-width: 900px){.page-header[data-v-2b318a90],.toolbar[data-v-2b318a90]{flex-direction:column;align-items:stretch}.search-input[data-v-2b318a90]{width:100%}.desktop-only[data-v-2b318a90]{display:none}.mobile-only[data-v-2b318a90]{display:grid}}.orders-view[data-v-5e517a7a]{padding:20px}.page-header[data-v-5e517a7a]{margin-bottom:30px}.header-buttons[data-v-5e517a7a]{display:flex;gap:10px}.btn-create[data-v-5e517a7a]{background-color:#4caf50;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:1rem;display:flex;align-items:center;gap:8px;transition:background-color .2s}.btn-create[data-v-5e517a7a]:hover{background-color:#45a049}.btn-import[data-v-5e517a7a]{background-color:#2196f3;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:1rem;display:flex;align-items:center;gap:8px;transition:background-color .2s}.btn-import[data-v-5e517a7a]:hover{background-color:#1976d2}.search-bar-row[data-v-5e517a7a]{display:flex;gap:16px;align-items:center;margin-bottom:16px}.search-input-wrapper[data-v-5e517a7a]{flex:1;position:relative;display:flex;align-items:center}.search-icon[data-v-5e517a7a]{position:absolute;left:12px;font-size:.9rem;pointer-events:none}.search-input[data-v-5e517a7a]{width:100%;padding:8px 36px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:.875rem;background:#fff;transition:border-color .2s}.search-input[data-v-5e517a7a]:focus{outline:none;border-color:#90a4ae;box-shadow:0 0 0 3px #90a4ae26}.search-input[data-v-5e517a7a]::placeholder{color:#a0aec0}.search-clear[data-v-5e517a7a]{position:absolute;right:8px;background:none;border:none;font-size:1.1rem;color:#a0aec0;cursor:pointer;padding:2px 6px;border-radius:4px}.search-clear[data-v-5e517a7a]:hover{color:#4a5568;background:#f0f0f0}.year-filter[data-v-5e517a7a]{display:flex;gap:6px;flex-shrink:0}.year-btn[data-v-5e517a7a]{padding:6px 16px;border:1.5px solid #e2e8f0;border-radius:20px;background:#fff;color:#718096;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.year-btn[data-v-5e517a7a]:hover{border-color:#90a4ae;color:var(--c-heading)}.year-btn.active[data-v-5e517a7a]{background:var(--c-heading);color:#fff;border-color:var(--c-heading)}.stats-bar[data-v-5e517a7a]{display:flex;gap:12px;margin-bottom:24px}.stat-card[data-v-5e517a7a]{flex:1;background:#fff;border-radius:10px;padding:16px 20px;box-shadow:0 1px 3px #00000014;border-bottom:3px solid transparent;display:flex;flex-direction:column;gap:4px;transition:all .2s ease}.stat-card.stat-pending[data-v-5e517a7a],.stat-card.stat-delivered[data-v-5e517a7a],.stat-card.stat-cancelled[data-v-5e517a7a]{cursor:pointer}.stat-card.stat-pending[data-v-5e517a7a]:hover,.stat-card.stat-delivered[data-v-5e517a7a]:hover,.stat-card.stat-cancelled[data-v-5e517a7a]:hover{transform:translateY(-2px);box-shadow:0 3px 8px #0000001f}.stat-card.stat-pending.active[data-v-5e517a7a]{border-bottom-color:#ff9800;background:linear-gradient(to bottom,#fff8e1,#fff)}.stat-card.stat-delivered.active[data-v-5e517a7a]{border-bottom-color:#4caf50;background:linear-gradient(to bottom,#e8f5e9,#fff)}.stat-card.stat-volume[data-v-5e517a7a]{border-bottom:none;cursor:default}.stat-card.stat-volume-pending[data-v-5e517a7a]{border-left:3px solid #ff9800}.stat-card.stat-volume-delivered[data-v-5e517a7a]{border-left:3px solid #4caf50}.stat-value[data-v-5e517a7a]{font-size:1.3rem;font-weight:700;color:var(--c-heading);line-height:1}.stat-label[data-v-5e517a7a]{font-size:.8125rem;color:#718096;font-weight:500}.source-badge[data-v-5e517a7a]{padding:3px 10px;border-radius:10px;font-size:.75rem;font-weight:600;display:inline-block}.source-prios[data-v-5e517a7a]{background-color:#e3f2fd;color:#1565c0}.source-manual[data-v-5e517a7a]{background-color:#f3e5f5;color:#7b1fa2}.status-badge[data-v-5e517a7a]{padding:3px 10px;border-radius:10px;font-size:.75rem;font-weight:600;display:inline-block}.status-bl[data-v-5e517a7a]{background-color:#fff3e0;color:#e65100}.status-invoiced[data-v-5e517a7a]{background-color:#e8f5e9;color:#2e7d32}.orders-section[data-v-5e517a7a]{margin-bottom:40px}.table-container[data-v-5e517a7a]{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;overflow-x:auto}.orders-table[data-v-5e517a7a]{width:100%;border-collapse:collapse;font-size:.875rem}.orders-table thead[data-v-5e517a7a]{background-color:#f5f5f5}.orders-table th[data-v-5e517a7a]{padding:12px;text-align:left;font-weight:600;color:var(--c-heading);border-bottom:2px solid #e2e8f0}.orders-table tbody tr[data-v-5e517a7a]{border-bottom:1px solid #f0f0f0;transition:background-color .2s}.orders-table tbody tr[data-v-5e517a7a]:hover{background-color:#f9f9f9}.orders-table td[data-v-5e517a7a]{padding:12px;vertical-align:top}.order-id[data-v-5e517a7a]{font-weight:600;color:#2196f3}.client-name[data-v-5e517a7a]{font-weight:500;color:var(--c-heading)}.reference-field[data-v-5e517a7a]{color:#666;font-size:.8125rem}.order-items-cell[data-v-5e517a7a]{max-width:300px}.item-line[data-v-5e517a7a]{padding:2px 0;color:#555}.beer-name[data-v-5e517a7a]{font-weight:600;color:var(--c-heading)}.article-info[data-v-5e517a7a]{color:#666;font-size:.8125rem;font-style:italic}.quantity[data-v-5e517a7a]{color:#2196f3;font-weight:500;margin-left:4px}.actions-cell[data-v-5e517a7a]{display:flex;gap:8px;flex-wrap:wrap}.btn-action[data-v-5e517a7a]{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .2s;display:flex;align-items:center;gap:4px}.btn-deliver[data-v-5e517a7a]{background-color:#4caf50;color:#fff}.btn-deliver[data-v-5e517a7a]:hover{background-color:#45a049;transform:translateY(-1px)}.btn-cancel[data-v-5e517a7a]{background-color:#f44336;color:#fff}.btn-cancel[data-v-5e517a7a]:hover{background-color:#d32f2f;transform:translateY(-1px)}.status-badge[data-v-5e517a7a]{padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;display:inline-block}.status-delivered[data-v-5e517a7a],.status-livree[data-v-5e517a7a]{background-color:#e8f5e9;color:#4caf50}.status-cancelled[data-v-5e517a7a],.status-annulee[data-v-5e517a7a]{background-color:#ffebee;color:#f44336}.status-en_cours[data-v-5e517a7a],.status-pending[data-v-5e517a7a]{background-color:#fff3e0;color:#ff9800}.btn-primary[data-v-5e517a7a]{background-color:#4caf50;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer}.btn-danger[data-v-5e517a7a]{background-color:#f44336;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer}.loading[data-v-5e517a7a]{text-align:center;color:#666;padding:20px}.error[data-v-5e517a7a]{color:#f44336;padding:20px;text-align:center}.no-data[data-v-5e517a7a]{text-align:center;color:#666;padding:20px;font-style:italic}.load-more[data-v-5e517a7a]{text-align:center;padding:16px 0 4px;display:flex;justify-content:center;gap:12px}.btn-load-more[data-v-5e517a7a],.btn-load-all[data-v-5e517a7a]{background:none;border:1.5px solid #e2e8f0;border-radius:8px;padding:8px 24px;color:#4a5568;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-load-more[data-v-5e517a7a]:hover,.btn-load-all[data-v-5e517a7a]:hover{background:#f7fafc;border-color:#90a4ae;color:var(--c-heading)}.modal-overlay[data-v-5e517a7a]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-5e517a7a]{background:#fff;border-radius:12px;width:90%;max-width:700px;max-height:90vh;overflow:auto;box-shadow:0 4px 20px #0003}.modal-header[data-v-5e517a7a]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.modal-header h2[data-v-5e517a7a]{margin:0;color:var(--c-heading)}.btn-close[data-v-5e517a7a]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.btn-close[data-v-5e517a7a]:hover{color:#333}.modal-body[data-v-5e517a7a]{padding:20px}.modal-import[data-v-5e517a7a]{max-width:720px}.file-upload[data-v-5e517a7a]{margin-bottom:20px}.file-input[data-v-5e517a7a]{display:none}.upload-dropzone[data-v-5e517a7a]{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 20px;border:2px dashed #cfd8dc;border-radius:10px;cursor:pointer;color:#718096;font-size:.875rem;transition:all .2s}.upload-dropzone[data-v-5e517a7a]:hover{border-color:#2196f3;background:#f5f9ff;color:#2196f3}.dropzone-icon[data-v-5e517a7a]{font-size:1.75rem}.dropzone-hint[data-v-5e517a7a]{font-size:.75rem;color:#b0bec5}.file-selected[data-v-5e517a7a]{display:flex;align-items:center;justify-content:space-between;background-color:#f5f9ff;padding:12px 16px;border-radius:8px;border:1.5px solid #90caf9;gap:12px}.file-selected span[data-v-5e517a7a]{color:var(--c-heading);font-size:.8125rem;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-selected-actions[data-v-5e517a7a]{display:flex;gap:8px;flex-shrink:0}.btn-clear[data-v-5e517a7a]{background:none;border:1px solid #e2e8f0;color:#718096;padding:5px 12px;border-radius:4px;cursor:pointer;font-size:.8125rem}.btn-clear[data-v-5e517a7a]:hover{border-color:#f44336;color:#f44336}.btn-sm[data-v-5e517a7a]{padding:5px 14px;font-size:.8125rem;border-radius:4px}.import-progress[data-v-5e517a7a]{margin:16px 0}.progress-bar[data-v-5e517a7a]{width:100%;height:6px;background-color:#e2e8f0;border-radius:3px;overflow:hidden;margin-bottom:8px}.progress-fill[data-v-5e517a7a]{height:100%;background-color:#4caf50;transition:width .3s ease}.import-progress p[data-v-5e517a7a]{text-align:center;color:#718096;margin:0;font-size:.8125rem}.import-logs-section[data-v-5e517a7a]{border-top:1px solid #eee;padding-top:16px}.import-logs-header[data-v-5e517a7a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.import-logs-header h3[data-v-5e517a7a]{margin:0;font-size:.9375rem;color:var(--c-heading)}.btn-refresh[data-v-5e517a7a]{background:none;border:1px solid #e2e8f0;border-radius:6px;padding:4px 10px;cursor:pointer;font-size:1.125rem;color:#718096;transition:all .2s}.btn-refresh[data-v-5e517a7a]:hover{border-color:#2196f3;color:#2196f3}.import-logs-list[data-v-5e517a7a]{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow-y:auto}.log-card[data-v-5e517a7a]{border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px;cursor:pointer;transition:all .15s;border-left:3px solid #e2e8f0}.log-card[data-v-5e517a7a]:hover{background:#fafafa}.log-card.log-success[data-v-5e517a7a]{border-left-color:#4caf50}.log-card.log-partial[data-v-5e517a7a]{border-left-color:#ff9800}.log-card.log-error[data-v-5e517a7a]{border-left-color:#f44336}.log-card-main[data-v-5e517a7a]{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.log-card-left[data-v-5e517a7a]{display:flex;gap:10px;align-items:flex-start;min-width:0;flex:1}.log-status-icon[data-v-5e517a7a]{font-size:1rem;flex-shrink:0;margin-top:1px}.log-card-info[data-v-5e517a7a]{display:flex;flex-direction:column;gap:2px;min-width:0}.log-filename[data-v-5e517a7a]{font-weight:600;font-size:.8125rem;color:var(--c-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-meta[data-v-5e517a7a]{font-size:.75rem;color:#90a4ae}.log-card-stats[data-v-5e517a7a]{display:flex;gap:8px;flex-shrink:0}.log-stat[data-v-5e517a7a]{font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:10px}.log-stat-ok[data-v-5e517a7a]{background:#e8f5e9;color:#2e7d32}.log-stat-skip[data-v-5e517a7a]{background:#fff3e0;color:#e65100}.log-stat-err[data-v-5e517a7a]{background:#ffebee;color:#c62828}.log-card-detail[data-v-5e517a7a]{margin-top:10px;padding-top:10px;border-top:1px solid #f0f0f0}.log-error-msg[data-v-5e517a7a]{font-size:.75rem;color:#c62828;background:#fff5f5;padding:8px 10px;border-radius:4px;word-break:break-word}.modal-footer[data-v-5e517a7a]{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #eee}.btn-secondary[data-v-5e517a7a]{background-color:#757575;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:1rem}.btn-secondary[data-v-5e517a7a]:hover{background-color:#616161}.btn-primary[data-v-5e517a7a]:disabled{background-color:#ccc;cursor:not-allowed}.btn-primary[data-v-5e517a7a]:disabled:hover{background-color:#ccc}.order-form[data-v-5e517a7a]{display:flex;flex-direction:column;gap:20px}.form-group[data-v-5e517a7a]{display:flex;flex-direction:column;gap:8px}.form-group label[data-v-5e517a7a]{font-weight:600;color:var(--c-heading);font-size:.875rem}.form-input[data-v-5e517a7a],.form-textarea[data-v-5e517a7a],.form-select[data-v-5e517a7a]{padding:10px 12px;border:2px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-family:inherit;transition:border-color .2s}.form-input[data-v-5e517a7a]:focus,.form-textarea[data-v-5e517a7a]:focus,.form-select[data-v-5e517a7a]:focus{outline:none;border-color:#4caf50}.form-textarea[data-v-5e517a7a]{resize:vertical;min-height:80px}.item-row[data-v-5e517a7a]{display:flex;gap:10px;align-items:center;padding:10px;background-color:#f9f9f9;border-radius:6px;margin-bottom:10px}.form-select[data-v-5e517a7a]{flex:2}.form-input-small[data-v-5e517a7a]{flex:1;padding:10px 12px;border:2px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-family:inherit;transition:border-color .2s}.form-input-small[data-v-5e517a7a]:focus{outline:none;border-color:#4caf50}.btn-remove-item[data-v-5e517a7a]{background-color:#f44336;color:#fff;border:none;padding:8px 12px;border-radius:4px;cursor:pointer;font-size:1.125rem;transition:background-color .2s;min-width:40px}.btn-remove-item[data-v-5e517a7a]:hover:not(:disabled){background-color:#d32f2f}.btn-remove-item[data-v-5e517a7a]:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.btn-add-item[data-v-5e517a7a]{background-color:#4caf50;color:#fff;border:none;padding:10px 16px;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:background-color .2s;display:flex;align-items:center;gap:6px;margin-top:10px}.btn-add-item[data-v-5e517a7a]:hover{background-color:#45a049}.error-message[data-v-5e517a7a]{background-color:#ffebee;border-left:4px solid #f44336;padding:12px;border-radius:4px;color:#c62828;font-size:.875rem}.test-auth[data-v-194ec68e]{padding:2rem;max-width:800px;margin:0 auto}.auth-state[data-v-194ec68e],.auth-details[data-v-194ec68e],.navigation-test[data-v-194ec68e],.actions[data-v-194ec68e]{background:#fff;padding:1rem;margin:1rem 0;border-radius:8px;box-shadow:0 2px 4px #0000001a}.auth-state ul[data-v-194ec68e]{list-style:none;padding:0}.auth-state li[data-v-194ec68e]{padding:.5rem 0;border-bottom:1px solid #eee}.auth-details pre[data-v-194ec68e]{background:#f5f5f5;padding:1rem;border-radius:4px;overflow-x:auto}.btn[data-v-194ec68e]{background:var(--c-purple);color:#fff;border:none;padding:.75rem 1rem;border-radius:4px;cursor:pointer;text-decoration:none;display:inline-block;margin:.5rem .5rem .5rem 0}.btn[data-v-194ec68e]:hover{background:#5a67d8}.nav-result[data-v-194ec68e]{margin-top:1rem;padding:1rem;background:#f7fafc;border-radius:4px;font-family:monospace}.articles-admin[data-v-d6cb275c]{padding:24px}.admin-header[data-v-d6cb275c]{background:#fff;border-radius:12px;padding:24px;margin-bottom:1.5rem;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.header-content h1[data-v-d6cb275c]{margin:0 0 .5rem;font-size:1.5rem;font-weight:700;color:#1a202c}.header-subtitle[data-v-d6cb275c]{margin:0;color:#718096;font-size:.9rem}.header-actions[data-v-d6cb275c]{display:flex;gap:.75rem;flex-shrink:0}.btn[data-v-d6cb275c]{padding:8px 16px;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:.9rem;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn[data-v-d6cb275c]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-d6cb275c]{background:var(--c-purple);color:#fff}.btn-primary[data-v-d6cb275c]:hover:not(:disabled){background:#2563eb}.btn-secondary[data-v-d6cb275c]{background:#16a085;color:#fff}.btn-secondary[data-v-d6cb275c]:hover:not(:disabled){background:#138d75}.btn-outline[data-v-d6cb275c]{background:#fff;color:#4a5568;border:1px solid #e2e8f0}.btn-outline[data-v-d6cb275c]:hover:not(:disabled){background:#f7fafc}.create-form[data-v-d6cb275c]{margin-bottom:1.5rem}.form-card[data-v-d6cb275c]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 4px #0000001a}.form-card>h3[data-v-d6cb275c]{color:#1a202c;margin:0 0 1.5rem;font-size:1.2rem;font-weight:700;border-bottom:2px solid var(--c-purple);padding-bottom:.75rem}.form-section[data-v-d6cb275c]{margin-bottom:1.5rem}.form-section h4[data-v-d6cb275c]{color:#2d3748;font-size:1rem;margin-bottom:1rem;font-weight:600}.form-row[data-v-d6cb275c]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:1rem}.form-group[data-v-d6cb275c]{display:flex;flex-direction:column;gap:6px}.form-group.full-width[data-v-d6cb275c]{grid-column:1 / -1}.form-group label[data-v-d6cb275c]{font-size:.875rem;font-weight:500;color:#4a5568}.required[data-v-d6cb275c]{color:#dc2626;font-weight:700}.form-group input[data-v-d6cb275c],.form-group select[data-v-d6cb275c],.form-group textarea[data-v-d6cb275c]{padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-family:inherit;transition:border-color .2s}.form-group input[data-v-d6cb275c]:focus,.form-group select[data-v-d6cb275c]:focus,.form-group textarea[data-v-d6cb275c]:focus{outline:none;border-color:var(--c-purple);box-shadow:0 0 0 3px #3b82f61a}.form-group input.error[data-v-d6cb275c],.form-group select.error[data-v-d6cb275c]{border-color:#dc2626}.form-group input.error[data-v-d6cb275c]:focus,.form-group select.error[data-v-d6cb275c]:focus{box-shadow:0 0 0 3px #dc26261a}.error-message[data-v-d6cb275c]{color:#dc2626;font-size:.75rem;font-weight:500}.char-count[data-v-d6cb275c]{color:#a0aec0;font-size:.8rem;font-weight:400;margin-left:.5rem}input[list][data-v-d6cb275c]{cursor:text}.form-group textarea[data-v-d6cb275c]{resize:vertical;min-height:80px}.form-actions[data-v-d6cb275c]{display:flex;gap:.75rem;margin-top:1.5rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e2e8f0}.table-container[data-v-d6cb275c]{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.table-header[data-v-d6cb275c]{padding:24px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.table-header h2[data-v-d6cb275c]{margin:0;font-size:1.2rem;font-weight:700;color:#2d3748}.search-input[data-v-d6cb275c]{padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;width:300px;transition:border-color .2s}.search-input[data-v-d6cb275c]:focus{outline:none;border-color:var(--c-purple);box-shadow:0 0 0 3px #3b82f61a}.table-wrapper[data-v-d6cb275c]{overflow-x:auto}.articles-table[data-v-d6cb275c]{width:100%;border-collapse:collapse}.articles-table th[data-v-d6cb275c]{background:linear-gradient(135deg,var(--c-purple) 0%,var(--c-purple-dark) 100%);color:#fff;padding:16px;text-align:left;font-weight:600;font-size:.88rem;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.articles-table td[data-v-d6cb275c]{padding:16px;border-bottom:1px solid #e2e8f0;color:#2d3748;font-size:.88rem;vertical-align:middle}.articles-table tr:last-child td[data-v-d6cb275c]{border-bottom:none}.articles-table tbody tr[data-v-d6cb275c]:hover{background:#f7fafc}.code-cell[data-v-d6cb275c]{font-family:monospace;font-size:.85rem;color:#718096}.name-cell[data-v-d6cb275c]{font-weight:600;color:#1a202c}.actions-cell[data-v-d6cb275c]{white-space:nowrap;display:flex;align-items:center;gap:.25rem}.btn-icon[data-v-d6cb275c]{background:none;border:none;padding:.4rem;cursor:pointer;font-size:1.1rem;border-radius:6px;transition:all .15s ease;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center}.btn-icon[data-v-d6cb275c]:hover{background:#eef2ff}.btn-icon-danger[data-v-d6cb275c]:hover{background:#fef2f2}.empty-state-row[data-v-d6cb275c]{text-align:center;padding:2.5rem!important;color:#a0aec0;font-style:italic}.loading-state[data-v-d6cb275c],.error-state[data-v-d6cb275c]{text-align:center;padding:2.5rem;color:#718096;font-size:.9rem}.import-message[data-v-d6cb275c]{padding:12px 16px;border-radius:8px;margin-bottom:1.5rem;font-weight:500;font-size:.875rem}.import-message.success[data-v-d6cb275c]{background:#d1fae5;color:#065f46;border-left:4px solid #10b981}.import-message.error[data-v-d6cb275c]{background:#fee2e2;color:#991b1b;border-left:4px solid #dc2626}.import-message.info[data-v-d6cb275c]{background:#dbeafe;color:#1e40af;border-left:4px solid #3b82f6}@media (max-width: 768px){.admin-header[data-v-d6cb275c]{flex-direction:column;gap:1rem;align-items:stretch}.header-actions[data-v-d6cb275c]{flex-wrap:wrap}.form-row[data-v-d6cb275c]{grid-template-columns:1fr}.form-actions[data-v-d6cb275c]{flex-direction:column}.table-header[data-v-d6cb275c]{flex-direction:column;gap:1rem}.search-input[data-v-d6cb275c]{width:100%}}.planning-view[data-v-cff20e2c]{padding:24px;background:var(--c-bg-light);min-height:100vh}.planning-header[data-v-cff20e2c]{background:#fff;border-radius:12px;padding:16px;margin-bottom:1.5rem;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.header-left h1[data-v-cff20e2c]{margin:0;color:#1a202c;font-size:1.5rem;font-weight:700}.header-left .subtitle[data-v-cff20e2c]{color:#718096;margin:4px 0 0;font-size:.9rem}.header-right[data-v-cff20e2c]{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.action-btn[data-v-cff20e2c]{padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:.875rem;transition:all .2s;display:flex;align-items:center;gap:.5rem}.btn-regenerate[data-v-cff20e2c]{background-color:#8b5cf6;color:#fff}.btn-regenerate[data-v-cff20e2c]:hover{background-color:#7c3aed}.btn-regenerate[data-v-cff20e2c]:disabled{background-color:#c4b5fd;cursor:not-allowed}.btn-regenerate-force[data-v-cff20e2c]{background-color:#b45309;color:#fff}.btn-regenerate-force[data-v-cff20e2c]:hover{background-color:#92400e}.btn-regenerate-force[data-v-cff20e2c]:disabled{background-color:#f59e0b;cursor:not-allowed}.granularity-selector[data-v-cff20e2c]{display:flex;gap:.5rem;background:#f1f5f9;padding:.25rem;border-radius:8px}.gran-btn[data-v-cff20e2c]{padding:.5rem 1rem;border:none;background:transparent;border-radius:6px;cursor:pointer;font-weight:600;font-size:.95rem;color:#718096;transition:all .2s}.gran-btn.active[data-v-cff20e2c]{background:#fff;color:#553c9a;box-shadow:0 1px 3px #0000001a}.gran-btn[data-v-cff20e2c]:hover:not(.active){color:#553c9a}.navigation[data-v-cff20e2c]{display:flex;gap:.5rem}.nav-btn[data-v-cff20e2c]{padding:.5rem 1rem;border:1px solid var(--c-border-strong);background:#fff;border-radius:6px;cursor:pointer;font-weight:500;color:var(--c-text);transition:all .2s}.nav-btn[data-v-cff20e2c]:hover{background:var(--c-bg-light);border-color:#553c9a}.nav-today[data-v-cff20e2c]{background:#805ad5;color:#fff;border-color:#805ad5}.nav-today[data-v-cff20e2c]:hover{background:#805ad5;border-color:#805ad5}.period-display[data-v-cff20e2c]{background:#fff;border-radius:12px;padding:1rem 1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #00000014;text-align:center}.period-display h2[data-v-cff20e2c]{margin:0;color:#2d3748;font-size:1.2rem;text-transform:capitalize}.day-view[data-v-cff20e2c]{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #00000014}.day-header[data-v-cff20e2c]{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--c-border)}.date-title[data-v-cff20e2c]{font-size:1.2rem;font-weight:600;color:#2d3748;text-transform:capitalize}.brewing-sessions-list[data-v-cff20e2c]{display:flex;flex-direction:column;gap:1rem}.session-card[data-v-cff20e2c]{border-radius:8px;padding:1.25rem;cursor:pointer;transition:all .2s;border-left:4px solid}.session-card[data-v-cff20e2c]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.session-card.blonde[data-v-cff20e2c]{background:#fef3c7;border-color:#f59e0b}.session-card.amber[data-v-cff20e2c],.session-card.ambree[data-v-cff20e2c]{background:#fed7aa;border-color:#d97706}.session-card.wheat[data-v-cff20e2c],.session-card.blanche[data-v-cff20e2c]{background:var(--c-bg-subtle);border-color:var(--c-muted)}.session-card.ipa[data-v-cff20e2c]{background:#d1fae5;border-color:#059669}.session-card.pils[data-v-cff20e2c]{background:#e9d8fd;border-color:#805ad5}.session-card.triple[data-v-cff20e2c]{background:#ede9fe;border-color:#7c3aed}.session-card.lager[data-v-cff20e2c]{background:#fefce8;border-color:#ca8a04}.session-card.stout[data-v-cff20e2c]{background:#292524;border-color:#78716c;color:#e7e5e4}.session-card.stout .label[data-v-cff20e2c]{color:#a8a29e}.session-card.stout .value[data-v-cff20e2c]{color:#f5f5f4}.session-card.stout .pkg-chip.chip-bottling[data-v-cff20e2c]{background:#1e3a5f;color:#b794f4}.session-card.stout .pkg-chip.chip-kegging[data-v-cff20e2c]{background:#14532d;color:#86efac}.session-card.stout .pkg-chip.chip-bulk[data-v-cff20e2c]{background:#451a03;color:#fdba74}.session-card.braise[data-v-cff20e2c]{background:#fee2e2;border-color:#ef4444}.session-card.default[data-v-cff20e2c]{background:var(--c-bg-light);border-color:var(--c-text-secondary)}.session-card-header[data-v-cff20e2c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.session-card-header h3[data-v-cff20e2c]{margin:0;font-size:1.2rem;color:var(--c-text)}.session-status[data-v-cff20e2c]{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.session-status--mini[data-v-cff20e2c]{padding:1px 6px;font-size:.65rem;border-radius:8px}.session-status.planned[data-v-cff20e2c]{background:#e9d8fd;color:#553c9a}.session-status.in_progress[data-v-cff20e2c],.session-status.in\ progress[data-v-cff20e2c]{background:#d1fae5;color:#059669}.session-status.completed[data-v-cff20e2c]{background:var(--c-bg-subtle);color:var(--c-text)}.session-status.cancelled[data-v-cff20e2c]{background:#fee2e2;color:#dc2626}.session-card-body[data-v-cff20e2c]{display:flex;flex-direction:column;gap:.5rem}.session-info[data-v-cff20e2c]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.info-item[data-v-cff20e2c]{display:flex;gap:.5rem}.info-item .label[data-v-cff20e2c]{font-weight:600;color:var(--c-text-secondary)}.info-item .value[data-v-cff20e2c]{color:var(--c-text)}.no-sessions[data-v-cff20e2c]{text-align:center;padding:3rem;color:var(--c-muted)}.week-view[data-v-cff20e2c]{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #00000014}.week-grid[data-v-cff20e2c]{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--c-border);border:1px solid var(--c-border);border-radius:8px;overflow:hidden}.day-column[data-v-cff20e2c]{background:#fff;min-height:200px}.day-column.today[data-v-cff20e2c]{background:#fef3c7}.day-column-header[data-v-cff20e2c]{padding:.75rem;background:var(--c-bg-light);border-bottom:2px solid var(--c-border);text-align:center;position:relative}.day-column.today .day-column-header[data-v-cff20e2c]{background:#fbbf24;color:#fff}.day-name[data-v-cff20e2c]{font-weight:600;font-size:.875rem;text-transform:uppercase;color:var(--c-text-secondary)}.day-column.today .day-name[data-v-cff20e2c]{color:#fff}.day-number[data-v-cff20e2c]{font-size:1rem;font-weight:700;color:var(--c-text);margin-top:.25rem}.day-column.today .day-number[data-v-cff20e2c]{color:#fff}.day-column.closure[data-v-cff20e2c]{background:#fff1f2}.day-column.closure .day-column-header[data-v-cff20e2c]{background:#fecdd3;border-bottom-color:#fb7185}.day-column.closure .day-name[data-v-cff20e2c],.day-column.closure .day-number[data-v-cff20e2c]{color:#9f1239}.closure-header[data-v-cff20e2c]{border-left:4px solid #f43f5e}.closure-badge[data-v-cff20e2c]{position:absolute;top:4px;right:4px;font-size:.8rem;line-height:1}.closure-day-banner[data-v-cff20e2c]{margin-top:.5rem;background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;padding:.4rem .75rem;color:#9f1239;font-weight:600;font-size:.875rem;display:inline-block}.day-sessions[data-v-cff20e2c]{padding:.5rem;display:flex;flex-direction:column;gap:.5rem}.session-mini-card[data-v-cff20e2c]{border-radius:6px;padding:.5rem;cursor:pointer;transition:all .2s;font-size:.75rem;border-left:3px solid}.session-mini-card[data-v-cff20e2c]:hover{transform:translate(2px)}.session-mini-card.brew-continuation[data-v-cff20e2c]{opacity:.75;border-left-style:dashed}.brew-day-badge[data-v-cff20e2c]{font-size:.6rem;background:#00000026;border-radius:3px;padding:1px 4px;margin-left:4px;font-weight:400}.brew-count-badge[data-v-cff20e2c]{font-size:.65rem;background:#ff8c00d9;color:#fff;border-radius:3px;padding:1px 4px;margin-left:4px;font-weight:700;letter-spacing:.02em}.yeast-inline[data-v-cff20e2c]{font-size:.85rem;font-style:italic}.yeast-inline-mini[data-v-cff20e2c]{font-size:.72rem;font-style:italic;color:#555;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yeast-source-badge[data-v-cff20e2c]{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:12px;font-weight:600;font-size:.85rem}.yeast-source-badge.dry[data-v-cff20e2c]{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.yeast-source-badge.slurry[data-v-cff20e2c]{background:#faf5ff;color:#805ad5;border:1px solid #d6bcfa}.continuation-label[data-v-cff20e2c]{font-style:italic;color:var(--c-text-secondary)}.session-mini-card.blonde[data-v-cff20e2c]{background:#fef3c7;border-color:#f59e0b}.session-mini-card.amber[data-v-cff20e2c],.session-mini-card.ambree[data-v-cff20e2c]{background:#fed7aa;border-color:#d97706}.session-mini-card.wheat[data-v-cff20e2c],.session-mini-card.blanche[data-v-cff20e2c]{background:var(--c-bg-subtle);border-color:var(--c-muted)}.session-mini-card.ipa[data-v-cff20e2c]{background:#d1fae5;border-color:#059669}.session-mini-card.pils[data-v-cff20e2c]{background:#e9d8fd;border-color:#805ad5}.session-mini-card.triple[data-v-cff20e2c]{background:#ede9fe;border-color:#7c3aed}.session-mini-card.lager[data-v-cff20e2c]{background:#fefce8;border-color:#ca8a04}.session-mini-card.stout[data-v-cff20e2c]{background:#292524;border-color:#78716c;color:#e7e5e4}.session-mini-card.stout .session-mini-info[data-v-cff20e2c]{color:#d6d3d1}.session-mini-card.stout .session-mini-header strong[data-v-cff20e2c]{color:#f5f5f4}.session-mini-card.stout .continuation-label[data-v-cff20e2c]{color:#a8a29e}.session-mini-card.stout .pkg-mini-label[data-v-cff20e2c]{color:#c4b5fd}.session-mini-header[data-v-cff20e2c]{margin-bottom:.25rem}.session-mini-body[data-v-cff20e2c]{display:flex;flex-direction:column;gap:.125rem}.session-mini-info[data-v-cff20e2c]{color:var(--c-text-secondary);font-size:.6875rem}.pkg-mini-label[data-v-cff20e2c]{color:#7c3aed;font-size:.625rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pkg-info-item[data-v-cff20e2c]{flex-direction:column;gap:.25rem}.pkg-info-item .value[data-v-cff20e2c]{display:flex;flex-wrap:wrap;gap:.25rem}.pkg-chip[data-v-cff20e2c]{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.7rem;font-weight:600;background:#ede9fe;color:#5b21b6}.pkg-chip.chip-bottling[data-v-cff20e2c]{background:#e9d8fd;color:#6b46c1}.pkg-chip.chip-kegging[data-v-cff20e2c]{background:#dcfce7;color:#15803d}.pkg-chip.chip-bulk[data-v-cff20e2c]{background:#fef3c7;color:#92400e}.no-sessions-mini[data-v-cff20e2c]{text-align:center;color:var(--c-border-strong);padding:1rem}.beer-badge[data-v-cff20e2c]{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;color:#fff}.beer-badge.blonde[data-v-cff20e2c]{background:#f59e0b}.beer-badge.amber[data-v-cff20e2c],.beer-badge.ambree[data-v-cff20e2c]{background:#d97706}.beer-badge.wheat[data-v-cff20e2c],.beer-badge.blanche[data-v-cff20e2c]{background:var(--c-muted)}.beer-badge.ipa[data-v-cff20e2c]{background:#059669}.beer-badge.pils[data-v-cff20e2c]{background:#805ad5}.beer-badge.triple[data-v-cff20e2c]{background:#7c3aed}.beer-badge.lager[data-v-cff20e2c]{background:#ca8a04}.beer-badge.stout[data-v-cff20e2c]{background:#292524}.beer-badge.braise[data-v-cff20e2c]{background:#ef4444}.weeks-7-view[data-v-cff20e2c]{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #00000014}.weeks-7-grid[data-v-cff20e2c]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.week-card[data-v-cff20e2c]{background:var(--c-bg-light);border-radius:8px;overflow:hidden;border:2px solid var(--c-border);transition:all .2s}.week-card[data-v-cff20e2c]:hover{border-color:#805ad5;box-shadow:0 4px 12px #3b82f626}.week-card-header[data-v-cff20e2c]{background:linear-gradient(135deg,#805ad5,#805ad5);color:#fff;padding:1rem;text-align:center}.week-number-large[data-v-cff20e2c]{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.week-dates-small[data-v-cff20e2c]{font-size:.75rem;opacity:.9}.week-card-body[data-v-cff20e2c]{padding:1rem}.week-card-stats[data-v-cff20e2c]{display:flex;justify-content:space-around;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--c-border)}.stat-item[data-v-cff20e2c]{text-align:center}.stat-value[data-v-cff20e2c]{display:block;font-size:1.5rem;font-weight:700;color:#553c9a}.stat-label[data-v-cff20e2c]{display:block;font-size:.6875rem;color:var(--c-text-secondary);margin-top:.25rem}.week-card-beers[data-v-cff20e2c]{display:flex;gap:.25rem;justify-content:center;margin-bottom:1rem;flex-wrap:wrap}.beer-badge-small[data-v-cff20e2c]{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;color:#fff;cursor:pointer}.beer-badge-small.blonde[data-v-cff20e2c]{background:#f59e0b}.beer-badge-small.amber[data-v-cff20e2c],.beer-badge-small.ambree[data-v-cff20e2c]{background:#d97706}.beer-badge-small.wheat[data-v-cff20e2c],.beer-badge-small.blanche[data-v-cff20e2c]{background:var(--c-muted)}.beer-badge-small.ipa[data-v-cff20e2c]{background:#059669}.beer-badge-small.pils[data-v-cff20e2c]{background:#805ad5}.beer-badge-small.triple[data-v-cff20e2c]{background:#7c3aed}.beer-badge-small.lager[data-v-cff20e2c]{background:#ca8a04}.beer-badge-small.stout[data-v-cff20e2c]{background:#292524}.beer-badge-small.braise[data-v-cff20e2c]{background:#ef4444}.week-card-sessions[data-v-cff20e2c]{display:flex;flex-direction:column;gap:.5rem}.session-compact[data-v-cff20e2c]{padding:.5rem;border-radius:6px;font-size:.75rem;cursor:pointer;transition:all .2s;border-left:3px solid}.session-compact[data-v-cff20e2c]:hover{transform:translate(2px)}.session-compact.blonde[data-v-cff20e2c]{background:#fef3c7;border-color:#f59e0b}.session-compact.amber[data-v-cff20e2c],.session-compact.ambree[data-v-cff20e2c]{background:#fed7aa;border-color:#d97706}.session-compact.wheat[data-v-cff20e2c],.session-compact.blanche[data-v-cff20e2c]{background:var(--c-bg-subtle);border-color:var(--c-muted)}.session-compact.ipa[data-v-cff20e2c]{background:#d1fae5;border-color:#059669}.session-compact.pils[data-v-cff20e2c]{background:#e9d8fd;border-color:#805ad5}.session-compact.triple[data-v-cff20e2c]{background:#ede9fe;border-color:#7c3aed}.session-compact.lager[data-v-cff20e2c]{background:#fefce8;border-color:#ca8a04}.session-compact.stout[data-v-cff20e2c]{background:#292524;border-color:#78716c;color:#e7e5e4}.session-compact.stout .session-compact-name[data-v-cff20e2c]{color:#e7e5e4}.session-compact.stout .session-compact-info[data-v-cff20e2c]{color:#a8a29e}.session-compact.braise[data-v-cff20e2c]{background:#fee2e2;border-color:#ef4444}.session-compact.default[data-v-cff20e2c]{background:var(--c-bg-light);border-color:var(--c-text-secondary)}.session-compact-name[data-v-cff20e2c]{font-weight:600;color:var(--c-text);margin-bottom:.25rem}.session-compact-info[data-v-cff20e2c]{color:var(--c-text-secondary);font-size:.6875rem}.more-sessions[data-v-cff20e2c]{text-align:center;color:var(--c-text-secondary);font-size:.75rem;padding:.5rem;background:var(--c-bg-subtle);border-radius:6px}.beer-badge-medium[data-v-cff20e2c]{padding:.375rem .875rem;border-radius:16px;font-size:.875rem;font-weight:600;color:#fff}.beer-badge-medium.blonde[data-v-cff20e2c]{background:#f59e0b}.beer-badge-medium.amber[data-v-cff20e2c],.beer-badge-medium.ambree[data-v-cff20e2c]{background:#d97706}.beer-badge-medium.wheat[data-v-cff20e2c],.beer-badge-medium.blanche[data-v-cff20e2c]{background:var(--c-muted)}.beer-badge-medium.ipa[data-v-cff20e2c]{background:#059669}.beer-badge-medium.pils[data-v-cff20e2c]{background:#805ad5}.beer-badge-medium.triple[data-v-cff20e2c]{background:#7c3aed}.beer-badge-medium.lager[data-v-cff20e2c]{background:#ca8a04}.beer-badge-medium.stout[data-v-cff20e2c]{background:#292524}.modal-overlay[data-v-cff20e2c]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-detail[data-v-cff20e2c]{background:#fff;border-radius:16px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header[data-v-cff20e2c]{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:2px solid var(--c-border);position:sticky;top:0;background:#fff;z-index:10}.modal-header h2[data-v-cff20e2c]{margin:0;color:#2d3748;font-size:1.5rem}.close-btn[data-v-cff20e2c]{width:36px;height:36px;border:none;background:var(--c-bg-subtle);border-radius:50%;font-size:1.5rem;cursor:pointer;color:var(--c-text-secondary);transition:all .2s}.close-btn[data-v-cff20e2c]:hover{background:var(--c-border);color:var(--c-text)}.modal-body[data-v-cff20e2c]{padding:16px}.detail-section[data-v-cff20e2c]{margin-bottom:2rem}.detail-section[data-v-cff20e2c]:last-child{margin-bottom:0}.detail-section h3[data-v-cff20e2c]{margin:0 0 1rem;color:var(--c-text);font-size:1.125rem;padding-bottom:.5rem;border-bottom:2px solid var(--c-border)}.detail-grid[data-v-cff20e2c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.detail-item[data-v-cff20e2c]{display:flex;flex-direction:column;gap:.25rem}.detail-item label[data-v-cff20e2c]{font-weight:600;color:var(--c-text-secondary);font-size:.875rem}.detail-item span[data-v-cff20e2c]{color:var(--c-text)}.value-large[data-v-cff20e2c]{font-size:1.125rem;font-weight:600;color:#553c9a!important}.status-badge[data-v-cff20e2c]{display:inline-block;padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.planned[data-v-cff20e2c]{background:#e9d8fd;color:#553c9a}.status-badge.in_progress[data-v-cff20e2c],.status-badge.in\ progress[data-v-cff20e2c]{background:#d1fae5;color:#059669}.status-badge.completed[data-v-cff20e2c]{background:var(--c-bg-subtle);color:var(--c-text)}.status-badge.cancelled[data-v-cff20e2c]{background:#fee2e2;color:#dc2626}.ingredients-table[data-v-cff20e2c],.outputs-table[data-v-cff20e2c]{overflow-x:auto}table[data-v-cff20e2c]{width:100%;border-collapse:collapse}thead[data-v-cff20e2c]{background:var(--c-bg-light)}th[data-v-cff20e2c]{padding:.75rem;text-align:left;font-weight:600;color:var(--c-text);border-bottom:2px solid var(--c-border)}td[data-v-cff20e2c]{padding:.75rem;border-bottom:1px solid var(--c-border);color:var(--c-text)}tr:last-child td[data-v-cff20e2c]{border-bottom:none}.input-field[data-v-cff20e2c],.input-field-small[data-v-cff20e2c]{padding:.5rem;border:1px solid var(--c-border-strong);border-radius:6px;font-size:.875rem}.input-field-small[data-v-cff20e2c]{width:100px}.input-field[data-v-cff20e2c]:focus,.input-field-small[data-v-cff20e2c]:focus{outline:none;border-color:#805ad5;box-shadow:0 0 0 3px #3b82f61a}.notes-textarea[data-v-cff20e2c]{width:100%;padding:.75rem;border:1px solid var(--c-border-strong);border-radius:6px;font-family:inherit;resize:vertical}.notes-textarea[data-v-cff20e2c]:focus{outline:none;border-color:#805ad5;box-shadow:0 0 0 3px #3b82f61a}.notes-display[data-v-cff20e2c]{color:var(--c-text-secondary);white-space:pre-wrap}.modal-footer[data-v-cff20e2c]{display:flex;gap:.75rem;justify-content:flex-end;padding:16px;border-top:2px solid var(--c-border);position:sticky;bottom:0;background:#fff}.btn[data-v-cff20e2c]{padding:.625rem 1.25rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s;font-size:.875rem}.btn-primary[data-v-cff20e2c]{background:#805ad5;color:#fff}.btn-primary[data-v-cff20e2c]:hover{background:#805ad5}.btn-success[data-v-cff20e2c]{background:#10b981;color:#fff}.btn-success[data-v-cff20e2c]:hover{background:#059669}.btn-outline[data-v-cff20e2c]{background:#fff;color:var(--c-text);border:1px solid var(--c-border-strong)}.btn-outline[data-v-cff20e2c]:hover{background:var(--c-bg-light)}@media (max-width: 1024px){.week-grid[data-v-cff20e2c]{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.weeks-7-grid[data-v-cff20e2c]{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media (max-width: 768px){.planning-header[data-v-cff20e2c]{flex-direction:column;align-items:stretch}.header-right[data-v-cff20e2c]{flex-direction:column}.detail-grid[data-v-cff20e2c],.session-info[data-v-cff20e2c],.weeks-7-grid[data-v-cff20e2c]{grid-template-columns:1fr}.granularity-selector[data-v-cff20e2c]{flex-wrap:wrap}.gran-btn[data-v-cff20e2c]{font-size:.875rem;padding:.375rem .75rem}}.packaging-sessions-list[data-v-cff20e2c]{margin-top:1.5rem}.pkg-section-title[data-v-cff20e2c]{font-size:1rem;font-weight:600;color:var(--c-text);margin-bottom:.75rem}.pkg-card[data-v-cff20e2c]{background:#fff;border-radius:8px;padding:1rem;margin-bottom:.75rem;border-left:4px solid var(--c-muted);box-shadow:0 1px 3px #00000012}.pkg-card.pkg-bottling[data-v-cff20e2c]{border-left-color:#16a34a;background:#f0fdf4}.pkg-card.pkg-kegging[data-v-cff20e2c]{border-left-color:#ea580c;background:#fff7ed}.pkg-card.pkg-bulk[data-v-cff20e2c]{border-left-color:#7c3aed;background:#faf5ff}.pkg-card-header[data-v-cff20e2c]{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.pkg-icon[data-v-cff20e2c]{font-size:1.1rem}.pkg-status[data-v-cff20e2c]{margin-left:auto;font-size:.75rem;padding:.1rem .5rem;border-radius:12px;background:var(--c-border);color:var(--c-text)}.pkg-status.planned[data-v-cff20e2c]{background:#e9d8fd;color:#553c9a}.pkg-status.in-progress[data-v-cff20e2c]{background:#fef3c7;color:#92400e}.pkg-status.completed[data-v-cff20e2c]{background:#dcfce7;color:#14532d}.pkg-card-body[data-v-cff20e2c]{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}.planning-modal--regenerate[data-v-cff20e2c]{max-width:620px;text-align:left}.planning-modal--regenerate .planning-modal-icon[data-v-cff20e2c]{margin-bottom:1.25rem}.planning-modal--regenerate .planning-modal-title[data-v-cff20e2c]{text-align:center}.planning-modal-rules[data-v-cff20e2c]{display:flex;flex-direction:column;gap:.875rem;margin:0 0 1.5rem}.planning-modal-rule-group[data-v-cff20e2c]{background:var(--c-bg-light);border:1px solid #e2e8f0;border-radius:10px;padding:.875rem 1rem}.planning-modal-rule-title[data-v-cff20e2c]{margin:0 0 .5rem;font-size:.8125rem;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.04em}.planning-modal-rule-list[data-v-cff20e2c]{margin:0;padding-left:1.125rem;color:#475569;font-size:.875rem;line-height:1.5}.planning-modal-rule-list li+li[data-v-cff20e2c]{margin-top:.375rem}.pkg-mini-card[data-v-cff20e2c]{border-left:3px solid var(--c-muted)}.pkg-mini-card.pkg-bottling[data-v-cff20e2c]{background:#f0fdf4;border-left-color:#16a34a}.pkg-mini-card.pkg-kegging[data-v-cff20e2c]{background:#fff7ed;border-left-color:#ea580c}.pkg-mini-card.pkg-bulk[data-v-cff20e2c]{background:#faf5ff;border-left-color:#7c3aed}.stat-pkg[data-v-cff20e2c]{color:#16a34a;font-weight:600}.stat-item-pkg .stat-value[data-v-cff20e2c]{color:#16a34a}.cockpit-view[data-v-59c53bfe]{padding:24px;max-width:1400px;margin:0 auto}.page-header[data-v-59c53bfe]{margin-bottom:2rem}.loading-state[data-v-59c53bfe]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.spinner[data-v-59c53bfe]{width:40px;height:40px;border:4px solid #e2e8f0;border-top-color:#3182ce;border-radius:50%;animation:spin-59c53bfe 1s linear infinite}@keyframes spin-59c53bfe{to{transform:rotate(360deg)}}.kpi-cards[data-v-59c53bfe]{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.kpi-card[data-v-59c53bfe]{background:#fff;border-radius:10px;padding:10px 14px;box-shadow:0 1px 3px #0000001a;display:flex;align-items:center;gap:10px;transition:transform .2s,box-shadow .2s}.kpi-card[data-v-59c53bfe]:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.kpi-icon[data-v-59c53bfe]{font-size:1.3rem;flex-shrink:0}.kpi-content[data-v-59c53bfe]{min-width:0}.kpi-value[data-v-59c53bfe]{font-size:1.15rem;font-weight:700;color:#2d3748;line-height:1.2}.kpi-label[data-v-59c53bfe]{color:#718096;font-size:.72rem;line-height:1.3}.section[data-v-59c53bfe]{background:#fff;border-radius:12px;padding:16px;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.section h2[data-v-59c53bfe]{font-size:1.2rem;font-weight:700;color:#2d3748;margin-bottom:1.5rem}.empty-state[data-v-59c53bfe]{text-align:center;padding:3rem;color:#a0aec0}.sessions-grid[data-v-59c53bfe]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.session-card[data-v-59c53bfe]{border:1px solid #e2e8f0;border-left:4px solid #3182ce;border-radius:8px;padding:1.25rem;transition:border-color .2s,box-shadow .2s}.session-card[data-v-59c53bfe]:hover{box-shadow:0 2px 8px #00000014}.session-header[data-v-59c53bfe]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.session-header h3[data-v-59c53bfe]{font-size:1.1rem;font-weight:600;color:#2d3748;margin:0}.session-header-right[data-v-59c53bfe]{display:flex;align-items:center;gap:6px}.brew-count-badge[data-v-59c53bfe]{background:#f1f5f9;color:#475569;padding:2px 8px;border-radius:10px;font-size:.7rem;font-weight:700;border:1px solid #e2e8f0}.session-volume[data-v-59c53bfe]{font-size:.85rem;color:#64748b;font-weight:600;margin-bottom:.75rem}.status-badge[data-v-59c53bfe]{padding:.25rem .75rem;border-radius:12px;font-size:.7rem;font-weight:600}.status-in_progress[data-v-59c53bfe],.status-fermenting[data-v-59c53bfe]{background:#bee3f8;color:#2c5282}.status-planned[data-v-59c53bfe]{background:#feebc8;color:#7c2d12}.status-completed[data-v-59c53bfe]{background:#c6f6d5;color:#22543d}.status-conditioning[data-v-59c53bfe]{background:#e9d5ff;color:#6b21a8}.tank-lifecycle[data-v-59c53bfe]{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:1rem;padding:10px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.lifecycle-tank[data-v-59c53bfe]{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;transition:background .2s}.lifecycle-tank.active[data-v-59c53bfe]{background:#3b82f614;outline:2px solid #3b82f6;outline-offset:-1px}.lifecycle-tank.done[data-v-59c53bfe]{opacity:.55}.lifecycle-tank.pending[data-v-59c53bfe]{opacity:.45}.lifecycle-tank-info[data-v-59c53bfe]{display:flex;flex-direction:column;gap:1px}.lifecycle-tank-name[data-v-59c53bfe]{font-weight:700;font-size:.8rem;color:#1e293b}.lifecycle-phase-label[data-v-59c53bfe]{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8}.lifecycle-dates[data-v-59c53bfe]{font-size:.7rem;color:#64748b;line-height:1.3}.lifecycle-arrow[data-v-59c53bfe]{display:flex;align-items:center;gap:0;flex-shrink:0}.arrow-line[data-v-59c53bfe]{width:16px;height:2px;background:#cbd5e1}.arrow-head[data-v-59c53bfe]{width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid #cbd5e1}.mini-fermenter[data-v-59c53bfe]{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.mini-ferm-top[data-v-59c53bfe]{width:28px;height:4px;background:linear-gradient(180deg,#94a3b8,#64748b);border-radius:2px 2px 0 0}.mini-ferm-cylinder[data-v-59c53bfe]{width:44px;height:48px;background:linear-gradient(135deg,#e2e8f0,#f1f5f9,#e2e8f0);border:1.5px solid #94a3b8;border-radius:2px;position:relative;overflow:hidden}.lifecycle-tank.active .mini-ferm-cylinder[data-v-59c53bfe]{border-color:#64748b}.mini-ferm-fill[data-v-59c53bfe]{position:absolute;bottom:0;left:0;right:0;transition:height .4s ease;border-radius:0 0 1px 1px}.mini-ferm-cone[data-v-59c53bfe]{width:0;height:0;border-left:22px solid transparent;border-right:22px solid transparent;border-top:12px solid #94a3b8;transition:border-top-color .4s ease}.lifecycle-tank.active .mini-ferm-cone[data-v-59c53bfe]{border-top-color:#64748b}.mini-garde[data-v-59c53bfe]{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.mini-garde-top[data-v-59c53bfe]{width:40px;height:10px;background:linear-gradient(180deg,#cbd5e1,#94a3b8);border-radius:20px 20px 0 0;border:1.5px solid #94a3b8;border-bottom:none}.mini-garde-cylinder[data-v-59c53bfe]{width:40px;height:40px;background:linear-gradient(135deg,#e2e8f0,#f1f5f9,#e2e8f0);border:1.5px solid #94a3b8;border-top:none;position:relative;overflow:hidden}.lifecycle-tank.active .mini-garde-cylinder[data-v-59c53bfe],.lifecycle-tank.active .mini-garde-top[data-v-59c53bfe],.lifecycle-tank.active .mini-garde-bottom[data-v-59c53bfe]{border-color:#64748b}.mini-garde-fill[data-v-59c53bfe]{position:absolute;bottom:0;left:0;right:0;transition:height .4s ease}.mini-garde-bottom[data-v-59c53bfe]{width:40px;height:6px;background:linear-gradient(180deg,#94a3b8,#cbd5e1);border:1.5px solid #94a3b8;border-top:none;border-radius:0 0 3px 3px}.progress-bar[data-v-59c53bfe]{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill[data-v-59c53bfe]{height:100%;background:linear-gradient(90deg,#3182ce,#4299e1);transition:width .3s}.progress-label[data-v-59c53bfe]{text-align:center;font-size:.75rem;color:#718096}.tank-group[data-v-59c53bfe]{margin-bottom:2rem}.tank-group[data-v-59c53bfe]:last-child{margin-bottom:0}.tank-group-title[data-v-59c53bfe]{font-size:1rem;font-weight:600;color:#475569;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e2e8f0}.tanks-grid[data-v-59c53bfe]{display:flex;flex-wrap:wrap;gap:1rem 1.2rem;justify-content:flex-start}.tanks-grid-ferm[data-v-59c53bfe]{gap:1.8rem 1.2rem}.tank-cartouche[data-v-59c53bfe]{display:flex;align-items:center;justify-content:center;gap:5px;padding:3px 10px;border-radius:10px;border:1.5px solid var(--c-border-strong);background:#fff;font-size:.72rem;font-weight:600;color:#1e293b;margin-bottom:4px;min-width:80px;text-align:center;line-height:1.2;white-space:nowrap;box-shadow:0 1px 3px #00000014}.tank-cartouche-empty[data-v-59c53bfe]{background:var(--c-bg-light);color:#94a3b8;border-color:#e2e8f0;box-shadow:none}.cartouche-dot[data-v-59c53bfe]{width:10px;height:10px;border-radius:50%;flex-shrink:0;border:1px solid rgba(0,0,0,.15)}.cartouche-name[data-v-59c53bfe]{overflow:hidden;text-overflow:ellipsis}.cartouche-pct[data-v-59c53bfe]{font-weight:800;font-size:.7rem;color:#475569}.tank-visual[data-v-59c53bfe]{display:flex;flex-direction:column;align-items:center;cursor:default;transition:transform .15s}.tank-visual[data-v-59c53bfe]:hover{transform:scale(1.03)}.fermenter-body[data-v-59c53bfe]{display:flex;flex-direction:column;align-items:center;width:110px}.fermenter-top[data-v-59c53bfe]{width:60px;height:8px;background:linear-gradient(180deg,#94a3b8,var(--c-text-secondary));border-radius:4px 4px 0 0;position:relative}.fermenter-top[data-v-59c53bfe]:after{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%);width:14px;height:6px;background:var(--c-text-secondary);border-radius:3px 3px 0 0}.fermenter-cylinder[data-v-59c53bfe]{width:100px;height:120px;background:linear-gradient(135deg,#e2e8f0 0%,var(--c-bg-light) 40%,#e2e8f0 100%);border:2px solid #94a3b8;border-radius:4px;position:relative;overflow:hidden;box-shadow:inset -3px 0 8px #0000000f,inset 3px 0 8px #00000008}.fermenter-fill[data-v-59c53bfe]{position:absolute;bottom:0;left:0;right:0;transition:height .4s ease,background .4s ease;border-radius:0 0 2px 2px}.fermenter-cone[data-v-59c53bfe]{width:0;height:0;border-left:50px solid transparent;border-right:50px solid transparent;border-top:30px solid #94a3b8;position:relative}.tank-occupied .fermenter-cylinder[data-v-59c53bfe]{border-color:var(--c-text-secondary)}.tank-occupied .fermenter-cone[data-v-59c53bfe]{border-top-color:var(--c-text-secondary)}.fermenter-cone[data-v-59c53bfe]:after{content:"";position:absolute;bottom:-18px;left:50%;transform:translate(-50%);width:4px;height:18px;background:#94a3b8;border-radius:0 0 2px 2px}.garde-body[data-v-59c53bfe]{display:flex;flex-direction:column;align-items:center;width:110px}.garde-top[data-v-59c53bfe]{width:90px;height:22px;background:linear-gradient(180deg,#cbd5e1,#94a3b8);border-radius:45px 45px 0 0;border:2px solid #94a3b8;border-bottom:none;position:relative}.garde-top[data-v-59c53bfe]:after{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%);width:10px;height:8px;background:var(--c-text-secondary);border-radius:3px 3px 0 0}.garde-cylinder[data-v-59c53bfe]{width:90px;height:90px;background:linear-gradient(135deg,#e2e8f0 0%,var(--c-bg-light) 40%,#e2e8f0 100%);border:2px solid #94a3b8;border-top:none;position:relative;overflow:hidden;box-shadow:inset -3px 0 8px #0000000f,inset 3px 0 8px #00000008}.garde-fill[data-v-59c53bfe]{position:absolute;bottom:0;left:0;right:0;transition:height .4s ease,background .4s ease}.garde-bottom[data-v-59c53bfe]{width:90px;height:14px;background:linear-gradient(180deg,#94a3b8,#cbd5e1);border:2px solid #94a3b8;border-top:none;border-radius:0 0 6px 6px}.tank-occupied .garde-cylinder[data-v-59c53bfe],.tank-occupied .garde-top[data-v-59c53bfe],.tank-occupied .garde-bottom[data-v-59c53bfe]{border-color:var(--c-text-secondary)}.garde-bottom[data-v-59c53bfe]:after{content:"";display:block;width:50px;height:10px;margin:14px auto 0;border-left:3px solid #94a3b8;border-right:3px solid #94a3b8;border-bottom:3px solid #94a3b8;border-radius:0 0 4px 4px}.other-body[data-v-59c53bfe]{display:flex;flex-direction:column;align-items:center;width:110px}.other-cylinder[data-v-59c53bfe]{width:90px;height:75px;background:linear-gradient(135deg,#e2e8f0 0%,var(--c-bg-light) 40%,#e2e8f0 100%);border:2px solid #94a3b8;border-radius:8px;position:relative;overflow:hidden;box-shadow:inset -3px 0 8px #0000000f,inset 3px 0 8px #00000008}.other-fill[data-v-59c53bfe]{position:absolute;bottom:0;left:0;right:0;transition:height .4s ease,background .4s ease}.tank-occupied .other-cylinder[data-v-59c53bfe]{border-color:var(--c-text-secondary)}.tank-info-overlay[data-v-59c53bfe]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;padding:4px}.tank-label[data-v-59c53bfe]{font-size:1.3rem;font-weight:800;color:#1e293b;line-height:1.1;text-shadow:-1px -1px 0 rgba(255,255,255,.9),1px -1px 0 rgba(255,255,255,.9),-1px 1px 0 rgba(255,255,255,.9),1px 1px 0 rgba(255,255,255,.9),0 0 6px rgba(255,255,255,.8)}.tank-capacity-inside[data-v-59c53bfe]{font-size:.65rem;color:var(--c-text);margin-top:3px;font-weight:700;text-shadow:-1px -1px 0 rgba(255,255,255,.9),1px -1px 0 rgba(255,255,255,.9),-1px 1px 0 rgba(255,255,255,.9),1px 1px 0 rgba(255,255,255,.9),0 0 4px rgba(255,255,255,.7)}.mp-alerts-section[data-v-59c53bfe]{background:#fff9f9;border:1px solid #fecaca;border-left:4px solid #dc3545;border-radius:10px;padding:20px 24px;margin-bottom:2rem}.mp-alerts-section.collapsed[data-v-59c53bfe]{padding:14px 24px}.mp-alerts-header[data-v-59c53bfe]{display:flex;align-items:center;gap:12px;margin-bottom:16px;cursor:pointer;-webkit-user-select:none;user-select:none}.mp-alerts-section.collapsed .mp-alerts-header[data-v-59c53bfe]{margin-bottom:0}.collapse-toggle[data-v-59c53bfe]{font-size:.75rem;color:#991b1b;flex-shrink:0}.mp-alerts-header h2[data-v-59c53bfe]{margin:0;font-size:1.0625rem;font-weight:700;color:#991b1b}.mp-alerts-count-badge[data-v-59c53bfe]{background:#dc3545;color:#fff;border-radius:12px;padding:2px 10px;font-size:.75rem;font-weight:700}.mp-alerts-table-wrapper[data-v-59c53bfe]{overflow-x:auto;border:1px solid #fca5a5;border-radius:8px}.mp-alerts-table[data-v-59c53bfe]{width:100%;border-collapse:collapse;font-size:.8125rem}.mp-alerts-table thead tr[data-v-59c53bfe]{background:#fee2e2}.mp-alerts-table th[data-v-59c53bfe]{padding:9px 12px;text-align:left;font-weight:600;color:#7f1d1d;white-space:nowrap;border-bottom:1px solid #fca5a5}.mp-alerts-table td[data-v-59c53bfe]{padding:8px 12px;border-bottom:1px solid #fef2f2;vertical-align:middle}.mp-alerts-table tr:last-child td[data-v-59c53bfe]{border-bottom:none}.row-critical[data-v-59c53bfe]{background:#fff1f2}.row-warning[data-v-59c53bfe]{background:#fffbeb}.row-critical[data-v-59c53bfe]:hover{background:#ffe4e6}.row-warning[data-v-59c53bfe]:hover{background:#fef9c3}.th-sortable[data-v-59c53bfe]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.th-sortable[data-v-59c53bfe]:hover{background:#fecaca}.sort-icon[data-v-59c53bfe]{display:inline-block;margin-left:5px;font-size:.6875rem;opacity:.7}.col-num[data-v-59c53bfe]{text-align:center;font-variant-numeric:tabular-nums}.col-severity[data-v-59c53bfe]{white-space:nowrap}.col-mp[data-v-59c53bfe]{font-weight:600;color:var(--c-heading)}.col-msg[data-v-59c53bfe]{color:var(--c-text-secondary);font-style:italic;font-size:.75rem}.sev-badge[data-v-59c53bfe]{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:20px;font-size:.6875rem;font-weight:700}.sev-critical[data-v-59c53bfe]{background:#fee2e2;color:#dc2626}.sev-warning[data-v-59c53bfe]{background:#fef9c3;color:#d97706}.shortage-qty[data-v-59c53bfe]{color:#dc2626;font-weight:700}.customers-view[data-v-669c3164]{padding:24px;max-width:1400px;margin:0 auto}.page-header[data-v-669c3164]{margin-bottom:24px}.btn-create[data-v-669c3164]{background:linear-gradient(135deg,var(--c-purple) 0%,var(--c-purple-dark) 100%);color:#fff;border:none;padding:8px 16px;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-create[data-v-669c3164]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.filters-section[data-v-669c3164]{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;display:flex;gap:20px;flex-wrap:wrap}.filter-group[data-v-669c3164]{display:flex;flex-direction:column;gap:8px;min-width:200px}.filter-group label[data-v-669c3164]{font-size:.875rem;font-weight:500;color:#4a5568}.filter-select[data-v-669c3164],.filter-input[data-v-669c3164]{padding:8px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;transition:border-color .2s}.filter-select[data-v-669c3164]:focus,.filter-input[data-v-669c3164]:focus{outline:none;border-color:var(--c-purple)}.error-message[data-v-669c3164]{background:#f8d7da;color:#721c24;padding:12px 16px;border-radius:6px;margin-bottom:16px;border-left:4px solid #dc3545}.loading-spinner[data-v-669c3164]{text-align:center;padding:40px;color:#718096;font-size:1rem}.customers-table-container[data-v-669c3164]{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.customers-table[data-v-669c3164]{width:100%;border-collapse:collapse}.customers-table thead[data-v-669c3164]{background:linear-gradient(135deg,var(--c-purple) 0%,var(--c-purple-dark) 100%);color:#fff}.customers-table th[data-v-669c3164]{padding:16px;text-align:left;font-weight:600;font-size:.88rem;text-transform:uppercase;letter-spacing:.5px}.customers-table tbody tr[data-v-669c3164]{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.customers-table tbody tr[data-v-669c3164]:hover{background-color:#f7fafc}.customers-table td[data-v-669c3164]{padding:16px;font-size:.88rem;color:#2d3748}.empty-state[data-v-669c3164]{text-align:center;padding:40px;color:#a0aec0;font-style:italic}.customer-name strong[data-v-669c3164]{color:#1a202c;font-weight:600}.customer-type-badge[data-v-669c3164]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.type-gms[data-v-669c3164]{background:#e6f7ff;color:#06c}.type-chr[data-v-669c3164]{background:#fff4e6;color:#d97706}.type-distri[data-v-669c3164]{background:#f0fdf4;color:#16a34a}.type-particulier[data-v-669c3164]{background:#fce7f3;color:#be185d}.contact-info[data-v-669c3164]{display:flex;flex-direction:column;gap:4px}.contact-item[data-v-669c3164]{font-size:.8125rem;color:#4a5568}.status-badge[data-v-669c3164]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600}.status-badge.active[data-v-669c3164]{background:#d4edda;color:#155724}.status-badge.inactive[data-v-669c3164]{background:#f8d7da;color:#721c24}.actions-cell[data-v-669c3164]{display:flex;gap:.375rem}.btn-action[data-v-669c3164]{background:none;border:none;padding:.4rem;cursor:pointer;font-size:1.1rem;border-radius:6px;transition:all .15s ease;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center}.btn-action-edit[data-v-669c3164]:hover{background:#eef2ff}.btn-action-delete[data-v-669c3164]:hover{background:#fef2f2;color:#dc2626}.modal-overlay[data-v-669c3164]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content[data-v-669c3164]{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:700px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-confirm[data-v-669c3164]{max-width:500px}.modal-header[data-v-669c3164]{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e2e8f0}.modal-header h2[data-v-669c3164]{margin:0;font-size:1.25rem;font-weight:600;color:#1a202c}.btn-close[data-v-669c3164]{background:none;border:none;font-size:1.5rem;color:#a0aec0;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.btn-close[data-v-669c3164]:hover{background:#edf2f7;color:#2d3748}.modal-body[data-v-669c3164]{padding:24px;overflow-y:auto;flex:1}.customer-form[data-v-669c3164]{display:flex;flex-direction:column;gap:16px}.form-row[data-v-669c3164]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group[data-v-669c3164]{display:flex;flex-direction:column;gap:8px}.form-group label[data-v-669c3164]{font-size:.875rem;font-weight:500;color:#4a5568}.form-input[data-v-669c3164],.form-select[data-v-669c3164],.form-textarea[data-v-669c3164]{padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-family:inherit;transition:border-color .2s}.form-input[data-v-669c3164]:focus,.form-select[data-v-669c3164]:focus,.form-textarea[data-v-669c3164]:focus{outline:none;border-color:var(--c-purple)}.form-textarea[data-v-669c3164]{resize:vertical}.modal-footer[data-v-669c3164]{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e2e8f0}.btn-primary[data-v-669c3164],.btn-secondary[data-v-669c3164],.btn-danger[data-v-669c3164]{padding:10px 20px;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;border:none;transition:all .2s}.btn-primary[data-v-669c3164]{background:linear-gradient(135deg,var(--c-purple) 0%,var(--c-purple-dark) 100%);color:#fff}.btn-primary[data-v-669c3164]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-primary[data-v-669c3164]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-669c3164]{background:#e2e8f0;color:#4a5568}.btn-secondary[data-v-669c3164]:hover{background:#cbd5e0}.btn-danger[data-v-669c3164]{background:#dc3545;color:#fff}.btn-danger[data-v-669c3164]:hover:not(:disabled){background:#c82333}.btn-danger[data-v-669c3164]:disabled{opacity:.6;cursor:not-allowed}.warning-text[data-v-669c3164]{color:#dc3545;font-weight:500;margin-top:8px}@media (max-width: 768px){.form-row[data-v-669c3164]{grid-template-columns:1fr}.filters-section[data-v-669c3164]{flex-direction:column}.filter-group[data-v-669c3164]{min-width:100%}}.alerts-view[data-v-d66d3731]{padding:24px;max-width:1400px;margin:0 auto}.page-header[data-v-d66d3731]{margin-bottom:1.5rem;gap:1rem}.btn-refresh[data-v-d66d3731]{background:linear-gradient(135deg,var(--c-purple) 0%,var(--c-purple-dark) 100%);color:#fff;border:none;padding:.5rem 1.1rem;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:opacity .2s}.btn-refresh[data-v-d66d3731]:hover:not(:disabled){opacity:.9}.btn-refresh[data-v-d66d3731]:disabled{opacity:.6;cursor:not-allowed}.kpi-row[data-v-d66d3731]{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.kpi-card[data-v-d66d3731]{background:#fff;border-radius:10px;padding:10px 14px;box-shadow:0 1px 3px #00000014,0 4px 12px #0000000f;display:flex;align-items:center;gap:10px;border-top:3px solid transparent}.kpi-critical[data-v-d66d3731]{border-top-color:#ef4444}.kpi-warning[data-v-d66d3731]{border-top-color:#f59e0b}.kpi-info[data-v-d66d3731]{border-top-color:var(--c-purple)}.kpi-total[data-v-d66d3731]{border-top-color:#8b5cf6}.kpi-icon[data-v-d66d3731]{font-size:1.3rem;flex-shrink:0}.kpi-content[data-v-d66d3731]{min-width:0}.kpi-value[data-v-d66d3731]{font-size:1.15rem;font-weight:700;color:#1a202c;line-height:1.2}.kpi-label[data-v-d66d3731]{font-size:.7rem;color:#a0aec0;font-weight:600;text-transform:uppercase;letter-spacing:.03125rem}.error-message[data-v-d66d3731]{background:#f8d7da;color:#721c24;padding:.65rem 1rem;border-radius:6px;margin-bottom:1rem;border-left:4px solid #dc3545;font-size:.875rem}.tabs-container[data-v-d66d3731]{display:flex;gap:4px;border-bottom:2px solid #e2e8f0;margin-bottom:1.25rem}.tab-button[data-v-d66d3731]{display:flex;align-items:center;gap:6px;background:none;border:none;padding:.65rem 1.25rem;font-size:.875rem;font-weight:600;color:#718096;cursor:pointer;border-bottom:2px solid transparent;position:relative;bottom:-2px;transition:color .2s,border-color .2s;white-space:nowrap}.tab-button[data-v-d66d3731]:hover{color:#805ad5}.tab-button.active[data-v-d66d3731]{color:#553c9a;border-bottom-color:#805ad5}.tab-badge[data-v-d66d3731]{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:1px 6px;font-size:.7rem;font-weight:700;min-width:18px}.tab-badge--red[data-v-d66d3731]{background:#fee2e2;color:#dc2626}.tab-badge--orange[data-v-d66d3731]{background:#fef3c7;color:#d97706}.tab-badge--gray[data-v-d66d3731]{background:#f1f5f9;color:var(--c-text-secondary)}.tab-content[data-v-d66d3731]{background:#fff;border-radius:8px;box-shadow:0 1px 3px #00000014;padding:1.5rem}.loading-state[data-v-d66d3731]{text-align:center;padding:2.5rem;color:#718096;font-size:.9rem}.empty-state[data-v-d66d3731]{text-align:center;padding:3.5rem 1rem}.empty-icon[data-v-d66d3731]{font-size:3rem;margin-bottom:.75rem;color:#16a34a}.empty-title[data-v-d66d3731]{font-size:1.2rem;font-weight:600;color:#2d3748;margin-bottom:.35rem}.empty-subtitle[data-v-d66d3731]{font-size:.9rem;color:#718096}.active-row-critical[data-v-d66d3731]{background:#fff1f2}.active-row-warning[data-v-d66d3731]{background:#fffbeb}.active-row-info[data-v-d66d3731]{background:#eff6ff}.active-row-critical[data-v-d66d3731]:hover{background:#ffe4e6}.active-row-warning[data-v-d66d3731]:hover{background:#fef3c7}.active-row-info[data-v-d66d3731]:hover{background:#dbeafe}.alert-severity-badge[data-v-d66d3731]{display:inline-block;padding:2px 7px;border-radius:4px;font-size:.65rem;font-weight:700;letter-spacing:.4px;white-space:nowrap}.badge-critical[data-v-d66d3731]{background:#ef4444;color:#fff}.badge-warning[data-v-d66d3731]{background:#f59e0b;color:#fff}.badge-info[data-v-d66d3731]{background:var(--c-purple);color:#fff}.shortage-pill[data-v-d66d3731]{font-size:.75rem;font-weight:600;color:#92400e;background:#fef3c7;padding:2px 6px;border-radius:4px;white-space:nowrap}.text-muted[data-v-d66d3731]{color:#a0aec0}.forecast-toolbar[data-v-d66d3731]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.75rem}.forecast-subtitle[data-v-d66d3731]{margin:0;color:#4a5568;font-size:.875rem}.horizon-label[data-v-d66d3731]{display:flex;align-items:center;gap:.4rem;font-size:.875rem;color:#2d3748}.horizon-select[data-v-d66d3731]{padding:.35rem .6rem;border:1px solid var(--c-border-strong);border-radius:6px;font-size:.875rem;background:#fff}.alert-count[data-v-d66d3731]{font-size:.875rem;color:#2d3748;margin-bottom:.75rem}.table-wrapper[data-v-d66d3731]{overflow-x:auto;border:1px solid var(--c-border);border-radius:8px}.alerts-table[data-v-d66d3731]{width:100%;border-collapse:collapse;font-size:.875rem}.alerts-table th[data-v-d66d3731]{background:var(--c-bg-light);color:#2d3748;padding:.6rem .75rem;text-align:left;font-weight:600;border-bottom:1px solid var(--c-border);white-space:nowrap}.alerts-table td[data-v-d66d3731]{padding:.6rem .75rem;border-bottom:1px solid var(--c-bg-subtle);color:#2d3748;vertical-align:middle}.alerts-table tr:last-child td[data-v-d66d3731]{border-bottom:none}.row-critical[data-v-d66d3731]{background:#fff1f2}.row-urgent[data-v-d66d3731]{background:#fffbeb}.row-warning[data-v-d66d3731]{background:#fff}.row-critical[data-v-d66d3731]:hover{background:#ffe4e6}.row-urgent[data-v-d66d3731]:hover{background:#fef3c7}.row-warning[data-v-d66d3731]:hover{background:var(--c-bg-light)}.article-name[data-v-d66d3731]{font-weight:600;color:#1a202c}.number-cell[data-v-d66d3731]{text-align:right;font-variant-numeric:tabular-nums}.center-cell[data-v-d66d3731]{text-align:center;font-variant-numeric:tabular-nums}.text-warning[data-v-d66d3731]{color:#b45309}.order-qty[data-v-d66d3731]{color:#1d4ed8}.week-cell[data-v-d66d3731]{white-space:nowrap}.week-badge[data-v-d66d3731]{font-weight:600;display:block}.week-date[data-v-d66d3731]{font-size:.7rem;color:#718096;display:block}.order-by-date[data-v-d66d3731]{font-weight:600;display:block}.urgency-critical[data-v-d66d3731]{color:#dc2626;font-weight:700}.urgency-urgent[data-v-d66d3731]{color:#d97706;font-weight:600}.urgency-normal[data-v-d66d3731]{color:#2d3748}.type-badge[data-v-d66d3731]{display:inline-block;padding:2px 7px;border-radius:9999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.badge-malt[data-v-d66d3731]{background:#fef3c7;color:#92400e}.badge-hop[data-v-d66d3731]{background:#d1fae5;color:#065f46}.badge-yeast[data-v-d66d3731]{background:#ede9fe;color:#5b21b6}.badge-adjunct[data-v-d66d3731]{background:#dbeafe;color:var(--c-purple-dark)}.badge-packaging[data-v-d66d3731]{background:#fce7f3;color:#9d174d}.badge-default[data-v-d66d3731]{background:var(--c-bg-subtle);color:#2d3748}@media (max-width: 768px){.kpi-row[data-v-d66d3731]{grid-template-columns:1fr 1fr}.tabs-container[data-v-d66d3731]{overflow-x:auto}.forecast-toolbar[data-v-d66d3731]{flex-direction:column;align-items:flex-start}}@media (max-width: 480px){.kpi-row[data-v-d66d3731]{grid-template-columns:1fr 1fr}.page-header[data-v-d66d3731]{flex-direction:column;align-items:flex-start}}.mp-projection-view[data-v-cbce56d8]{padding:24px;max-width:1400px;margin:0 auto}.page-header[data-v-cbce56d8]{margin-bottom:24px}.header-controls[data-v-cbce56d8]{display:flex;gap:12px;align-items:center}.loading-spinner[data-v-cbce56d8]{text-align:center;padding:60px;color:#718096;font-size:1.125rem}.mp-selection-section[data-v-cbce56d8]{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px}.mp-selection-header[data-v-cbce56d8]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.mp-selection-header h3[data-v-cbce56d8]{margin:0;font-size:1.125rem;font-weight:600;color:#1a202c}.selection-actions[data-v-cbce56d8]{display:flex;gap:8px}.btn-select-all[data-v-cbce56d8],.btn-deselect-all[data-v-cbce56d8]{padding:7px 14px;border:none;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-select-all[data-v-cbce56d8]{background:var(--c-purple);color:#fff}.btn-select-all[data-v-cbce56d8]:hover{background:#5568d3}.btn-deselect-all[data-v-cbce56d8]{background:#e2e8f0;color:#4a5568}.btn-deselect-all[data-v-cbce56d8]:hover{background:#cbd5e0}.empty-mp-msg[data-v-cbce56d8]{text-align:center;padding:32px;color:#a0aec0;font-style:italic}.mp-groups-grid[data-v-cbce56d8]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.mp-group-card[data-v-cbce56d8]{border:2px solid var(--group-color, #cbd5e0);border-radius:10px;overflow:hidden}.mp-group-header[data-v-cbce56d8]{display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--group-color, var(--c-text-secondary));color:#fff}.mp-group-icon[data-v-cbce56d8]{font-size:1.125rem}.mp-group-label[data-v-cbce56d8]{flex:1;font-size:.9375rem;font-weight:700;letter-spacing:.3px}.mp-group-count[data-v-cbce56d8]{background:#ffffff40;border-radius:20px;padding:2px 9px;font-size:.75rem;font-weight:700}.mp-group-actions[data-v-cbce56d8]{display:flex;gap:6px;padding:8px 12px;background:var(--c-bg-light);border-bottom:1px solid #e2e8f0}.btn-group-all[data-v-cbce56d8],.btn-group-none[data-v-cbce56d8]{flex:1;padding:4px 0;border:1px solid var(--group-color, #cbd5e0);border-radius:4px;font-size:.6875rem;font-weight:600;cursor:pointer;transition:all .15s;background:#fff;color:var(--group-color, #4a5568)}.btn-group-all[data-v-cbce56d8]:hover{background:var(--group-color, var(--c-text-secondary));color:#fff}.btn-group-none[data-v-cbce56d8]:hover{background:#f1f5f9}.mp-items-list[data-v-cbce56d8]{display:flex;flex-direction:column;padding:6px 0;max-height:280px;overflow-y:auto}.mp-item[data-v-cbce56d8]{display:flex;align-items:center;gap:8px;padding:7px 14px;cursor:pointer;transition:background-color .15s;border-left:3px solid transparent}.mp-item[data-v-cbce56d8]:hover{background:#f7fafc}.mp-item--checked[data-v-cbce56d8]{background:color-mix(in srgb,var(--group-color, var(--c-purple)) 8%,white);border-left-color:var(--group-color, var(--c-purple))}.mp-item input[type=checkbox][data-v-cbce56d8]{width:15px;height:15px;cursor:pointer;accent-color:var(--group-color, var(--c-purple));flex-shrink:0}.mp-item-name[data-v-cbce56d8]{flex:1;font-size:.8125rem;color:#2d3748;font-weight:500;line-height:1.3}.mp-item-total[data-v-cbce56d8]{font-size:.6875rem;color:#718096;background:#edf2f7;border-radius:10px;padding:1px 7px;font-weight:600;white-space:nowrap}.alerts-section[data-v-cbce56d8]{background:#fff9f9;border:1px solid #fecaca;border-left:4px solid #dc3545;border-radius:10px;padding:20px 24px;margin-bottom:24px}.alerts-section-header[data-v-cbce56d8]{display:flex;align-items:center;gap:12px;margin-bottom:16px}.alerts-section-header h3[data-v-cbce56d8]{margin:0;font-size:1.0625rem;font-weight:700;color:#991b1b}.alerts-count-badge[data-v-cbce56d8]{background:#dc3545;color:#fff;border-radius:12px;padding:2px 10px;font-size:.75rem;font-weight:700}.alerts-table-wrapper[data-v-cbce56d8]{overflow-x:auto;border:1px solid #fca5a5;border-radius:8px}.alerts-breakdown-table[data-v-cbce56d8]{width:100%;border-collapse:collapse;font-size:.8125rem}.alerts-breakdown-table thead tr[data-v-cbce56d8]{background:#fee2e2}.alerts-breakdown-table th[data-v-cbce56d8]{padding:9px 12px;text-align:left;font-weight:600;color:#7f1d1d;white-space:nowrap;border-bottom:1px solid #fca5a5}.alerts-breakdown-table td[data-v-cbce56d8]{padding:8px 12px;border-bottom:1px solid #fef2f2;vertical-align:middle}.alerts-breakdown-table tr:last-child td[data-v-cbce56d8]{border-bottom:none}.row-rupture[data-v-cbce56d8]{background:#fce4ec}.row-critical[data-v-cbce56d8]{background:#fff1f2}.row-warning[data-v-cbce56d8]{background:#fffbeb}.row-rupture[data-v-cbce56d8]:hover{background:#f8bbd0}.row-critical[data-v-cbce56d8]:hover{background:#ffe4e6}.row-warning[data-v-cbce56d8]:hover{background:#fef9c3}.col-num[data-v-cbce56d8]{text-align:center;font-variant-numeric:tabular-nums}.col-severity[data-v-cbce56d8]{white-space:nowrap}.col-mp[data-v-cbce56d8]{font-weight:600;color:var(--c-heading)}.col-msg[data-v-cbce56d8]{color:var(--c-text-secondary);font-style:italic;font-size:.75rem}.th-sortable[data-v-cbce56d8]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.th-sortable[data-v-cbce56d8]:hover{background:#fecaca}.sort-icon[data-v-cbce56d8]{display:inline-block;margin-left:5px;font-size:.6875rem;opacity:.7}.sev-badge[data-v-cbce56d8]{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:20px;font-size:.6875rem;font-weight:700}.sev-rupture[data-v-cbce56d8]{background:#4a148c;color:#fff}.sev-critical[data-v-cbce56d8]{background:#fee2e2;color:#dc2626}.sev-warning[data-v-cbce56d8]{background:#fef9c3;color:#d97706}.shortage-qty[data-v-cbce56d8]{color:#dc2626;font-weight:700}.chart-section[data-v-cbce56d8]{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px}.chart-header[data-v-cbce56d8]{margin-bottom:20px}.chart-header h3[data-v-cbce56d8]{margin:0 0 8px;font-size:1.125rem;font-weight:600;color:#1a202c}.chart-legend-info[data-v-cbce56d8]{font-size:.875rem;color:#718096}.chart-empty-state[data-v-cbce56d8]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:60px 24px;color:#718096;text-align:center}.chart-empty-icon[data-v-cbce56d8]{font-size:3rem;line-height:1}.chart-empty-state p[data-v-cbce56d8]{margin:0;font-size:.9375rem}.chart-empty-hint[data-v-cbce56d8]{font-size:.8125rem!important;color:#a0aec0;font-style:italic}.chart-wrapper[data-v-cbce56d8]{position:relative;height:450px}.recommendations-section[data-v-cbce56d8]{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.recommendations-header[data-v-cbce56d8]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.recommendations-header h3[data-v-cbce56d8]{margin:0;font-size:1.125rem;font-weight:600;color:#1a202c}.btn-refresh-reco[data-v-cbce56d8]{background:var(--c-purple);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:background-color .2s}.btn-refresh-reco[data-v-cbce56d8]:hover:not(:disabled){background:#5568d3}.btn-refresh-reco[data-v-cbce56d8]:disabled{opacity:.6;cursor:not-allowed}.loading-small[data-v-cbce56d8]{text-align:center;padding:20px;color:#718096}.empty-recommendations[data-v-cbce56d8]{text-align:center;padding:40px;color:#a0aec0;font-style:italic}.recommendations-table-wrapper[data-v-cbce56d8]{overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px}.recommendations-table[data-v-cbce56d8]{width:100%;border-collapse:collapse;font-size:.8125rem}.recommendations-table thead tr[data-v-cbce56d8]{background:#f1f5f9}.recommendations-table th[data-v-cbce56d8]{padding:10px 14px;text-align:left;font-weight:600;color:var(--c-text);white-space:nowrap;border-bottom:2px solid #e2e8f0}.recommendations-table td[data-v-cbce56d8]{padding:9px 14px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.recommendations-table tr:last-child td[data-v-cbce56d8]{border-bottom:none}.reco-row-high[data-v-cbce56d8]{background:#fff5f5}.reco-row-medium[data-v-cbce56d8]{background:#fffdf0}.reco-row-low[data-v-cbce56d8]{background:#f0fff4}.reco-row-high[data-v-cbce56d8]:hover{background:#ffe4e6}.reco-row-medium[data-v-cbce56d8]:hover{background:#fef9c3}.reco-row-low[data-v-cbce56d8]:hover{background:#dcfce7}.col-mp-name[data-v-cbce56d8]{font-weight:600;color:var(--c-heading)}.col-qty[data-v-cbce56d8]{font-weight:700;color:#1a202c}.col-reason[data-v-cbce56d8]{color:var(--c-text-secondary);font-size:.75rem}.col-center[data-v-cbce56d8]{text-align:center;font-variant-numeric:tabular-nums;font-weight:600}.recommendations-table th.col-center[data-v-cbce56d8]{text-align:center}.reco-priority[data-v-cbce56d8]{display:inline-block;padding:3px 9px;border-radius:12px;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.priority-high[data-v-cbce56d8]{background:#dc3545;color:#fff}.priority-medium[data-v-cbce56d8]{background:#ffc107;color:#1a202c}.priority-low[data-v-cbce56d8]{background:#28a745;color:#fff}@media (max-width: 768px){.mp-checkboxes[data-v-cbce56d8]{grid-template-columns:1fr}.chart-wrapper[data-v-cbce56d8]{height:300px}.recommendations-table-wrapper[data-v-cbce56d8]{font-size:.75rem}}.capacity-view[data-v-97b082ae]{padding:24px;max-width:1400px;margin:0 auto;color:#2d3748}.tabs[data-v-97b082ae]{display:flex;gap:0;margin-bottom:20px;border-bottom:2px solid #e2e8f0}.tab-btn[data-v-97b082ae]{padding:10px 24px;border:none;background:none;color:#718096;font-size:.95rem;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.tab-btn[data-v-97b082ae]:hover{color:#4a5568}.tab-btn.active[data-v-97b082ae]{color:#553c9a;border-bottom-color:#805ad5}.tab-controls[data-v-97b082ae]{display:flex;gap:12px;align-items:center;margin-bottom:20px}.year-select[data-v-97b082ae]{padding:8px 12px;border-radius:8px;border:1px solid #cbd5e0;background:#fff;color:#2d3748;font-size:.9rem}.btn-refresh[data-v-97b082ae]{padding:8px 16px;border-radius:8px;border:1px solid #cbd5e0;background:#edf2f7;color:#2d3748;cursor:pointer;font-size:.9rem}.btn-refresh[data-v-97b082ae]:hover:not(:disabled){background:#e2e8f0}.btn-refresh[data-v-97b082ae]:disabled{opacity:.5;cursor:not-allowed}.btn-small[data-v-97b082ae]{padding:6px 12px;font-size:.8rem}.loading-state[data-v-97b082ae]{text-align:center;padding:48px;color:#718096;font-size:1.1rem}.error-message[data-v-97b082ae]{background:#fff5f5;color:#c53030;border:1px solid #feb2b2;padding:12px 16px;border-radius:8px;margin-bottom:16px}.dominant-banner[data-v-97b082ae]{display:flex;align-items:center;gap:16px;padding:16px 20px;border-radius:12px;margin-bottom:24px;border:1px solid #e2e8f0;background:#f7fafc}.dominant-banner.banner-critical[data-v-97b082ae]{background:#fff5f5;border-color:#fc8181;color:#742a2a}.dominant-banner.banner-high[data-v-97b082ae]{background:ivory;border-color:#f6e05e;color:#744210}.dominant-banner.banner-moderate[data-v-97b082ae]{background:#ebf8ff;border-color:#90cdf4;color:#2a4365}.dominant-icon[data-v-97b082ae]{font-size:1.5rem;font-weight:900;min-width:48px;text-align:center}.dominant-text[data-v-97b082ae]{font-size:1rem}.dominant-subtext[data-v-97b082ae]{margin-top:6px;font-size:.86rem;opacity:.9}.gauges-grid[data-v-97b082ae]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:32px}.gauge-card[data-v-97b082ae]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px;box-shadow:0 1px 3px #0000000f}.gauge-card.gauge-critical[data-v-97b082ae]{border-color:#fc8181}.gauge-card.gauge-high[data-v-97b082ae]{border-color:#f6ad55}.gauge-card.gauge-moderate[data-v-97b082ae]{border-color:#63b3ed}.gauge-card.gauge-ok[data-v-97b082ae]{border-color:#68d391}.gauge-header[data-v-97b082ae]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.gauge-icon[data-v-97b082ae]{background:#edf2f7;color:#4a5568;border-radius:6px;padding:4px 8px;font-size:.75rem;font-weight:700;font-family:monospace}.gauge-label[data-v-97b082ae]{font-weight:600;font-size:.95rem;color:#2d3748}.gauge-bar-container[data-v-97b082ae]{background:#edf2f7;border-radius:6px;height:12px;overflow:hidden;margin-bottom:8px}.gauge-bar[data-v-97b082ae]{height:100%;border-radius:6px;transition:width .6s ease}.gauge-critical .gauge-bar[data-v-97b082ae]{background:linear-gradient(90deg,#e53e3e,#fc8181)}.gauge-high .gauge-bar[data-v-97b082ae]{background:linear-gradient(90deg,#dd6b20,#f6ad55)}.gauge-moderate .gauge-bar[data-v-97b082ae]{background:linear-gradient(90deg,#3182ce,#63b3ed)}.gauge-ok .gauge-bar[data-v-97b082ae]{background:linear-gradient(90deg,#38a169,#68d391)}.gauge-stats[data-v-97b082ae]{display:flex;gap:12px;font-size:.8rem;color:#718096;flex-wrap:wrap}.gauge-stats strong[data-v-97b082ae]{color:#2d3748}.weeks-above[data-v-97b082ae]{color:#c05621}.annual-note[data-v-97b082ae]{color:#4a5568}.heatmap-section[data-v-97b082ae]{margin-bottom:32px}.heatmap-section h2[data-v-97b082ae]{font-size:1.2rem;margin-bottom:12px;color:#2d3748}.heatmap-note[data-v-97b082ae]{margin:-4px 0 12px;color:#718096;font-size:.86rem}.heatmap-legend[data-v-97b082ae]{display:flex;gap:16px;margin-bottom:12px;font-size:.8rem;color:#4a5568}.legend-item[data-v-97b082ae]{display:flex;align-items:center;gap:4px}.legend-color[data-v-97b082ae]{display:inline-block;width:14px;height:14px;border-radius:3px}.heatmap-container[data-v-97b082ae]{overflow-x:scroll;border:1px solid #e2e8f0;border-radius:8px}.heatmap-table[data-v-97b082ae]{width:max-content;border-collapse:collapse;font-size:.75rem}.heatmap-table th[data-v-97b082ae],.heatmap-table td[data-v-97b082ae]{padding:4px 2px;text-align:center;border:1px solid #e2e8f0}.resource-header[data-v-97b082ae]{text-align:left!important;padding-left:8px!important;min-width:120px;background:#f7fafc;color:#4a5568;font-weight:600;position:sticky;left:0;z-index:1}.week-header[data-v-97b082ae]{background:#f7fafc;color:#718096;font-weight:500;min-width:32px}.resource-name[data-v-97b082ae]{text-align:left!important;padding-left:8px!important;background:#f7fafc;color:#2d3748;font-weight:500;white-space:nowrap;position:sticky;left:0;z-index:1}.heatmap-cell[data-v-97b082ae]{min-width:32px;height:28px;cursor:default;transition:opacity .15s}.heatmap-cell[data-v-97b082ae]:hover{opacity:.8}.cell-value[data-v-97b082ae]{color:#fff;font-weight:700;font-size:.65rem}.sim-params[data-v-97b082ae]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:20px}.sim-param-card[data-v-97b082ae]{background:#f7fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 18px;display:flex;flex-direction:column;gap:6px}.sim-param-card label[data-v-97b082ae]{font-size:.78rem;color:#718096;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.sim-input[data-v-97b082ae]{width:80px;padding:6px 10px;border:1px solid #cbd5e0;border-radius:6px;font-size:1.1rem;font-weight:700;color:#553c9a;text-align:center;background:#fff}.sim-input[data-v-97b082ae]:focus{outline:2px solid #805ad5;border-color:transparent}.sim-slider-row[data-v-97b082ae]{display:flex;align-items:center;gap:10px}.utilization-slider[data-v-97b082ae]{width:100px;accent-color:#805ad5}.sim-pct[data-v-97b082ae]{font-size:1.1rem;font-weight:700;color:#553c9a;min-width:40px}.sim-computed[data-v-97b082ae]{font-size:.82rem;color:#4a5568}.sim-computed-large[data-v-97b082ae]{font-size:1.3rem;font-weight:700;color:#2d3748}.sim-detail[data-v-97b082ae]{font-size:.78rem;color:#a0aec0}.sim-hint[data-v-97b082ae]{font-size:.72rem;color:#a0aec0;line-height:1.3;border-top:1px solid #edf2f7;padding-top:5px;margin-top:2px}.sim-info[data-v-97b082ae]{justify-content:center}.kpi-strip[data-v-97b082ae]{display:flex;align-items:center;gap:0;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px 0;margin-bottom:24px;box-shadow:0 1px 3px #0000000a;position:sticky;top:0;z-index:10}.kpi-item[data-v-97b082ae]{flex:1;text-align:center}.kpi-number[data-v-97b082ae]{font-size:1.3rem;font-weight:700;color:#2d3748;display:block}.kpi-desc[data-v-97b082ae]{font-size:.78rem;color:#a0aec0;margin-top:2px;display:block}.kpi-divider[data-v-97b082ae]{width:1px;height:36px;background:#e2e8f0;flex-shrink:0}.kpi-vs[data-v-97b082ae]{font-size:.75rem;font-weight:700;color:#a0aec0;padding:0 6px;flex-shrink:0}.kpi-bottleneck[data-v-97b082ae]{background:#fff5f5;border-radius:8px;padding:8px 4px;margin:-6px 2px}.kpi-bottleneck .kpi-number[data-v-97b082ae]{color:#e53e3e}.kpi-bottleneck-label[data-v-97b082ae]{color:#e53e3e!important;font-size:1.1rem!important}.table-section[data-v-97b082ae]{margin-bottom:32px}.table-section h2[data-v-97b082ae]{font-size:1.1rem;margin-bottom:12px;color:#2d3748}.table-header-row[data-v-97b082ae]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.table-header-row h2[data-v-97b082ae]{margin:0}.btn-reset[data-v-97b082ae]{padding:6px 14px;border-radius:6px;border:1px solid #e9d8fd;background:#faf5ff;color:#805ad5;cursor:pointer;font-size:.8rem;font-weight:600}.btn-reset[data-v-97b082ae]:hover{background:#e9d8fd}.detail-table[data-v-97b082ae]{width:100%;border-collapse:collapse;font-size:.88rem}.detail-table th[data-v-97b082ae]{background:#f7fafc;color:#4a5568;font-weight:600;padding:8px 10px;text-align:left;border-bottom:2px solid #e2e8f0;font-size:.8rem;white-space:nowrap}.detail-table td[data-v-97b082ae]{padding:6px 10px;border-bottom:1px solid #edf2f7;vertical-align:middle}.col-beer[data-v-97b082ae]{min-width:120px}.col-num[data-v-97b082ae]{text-align:right;width:65px}.col-days[data-v-97b082ae]{text-align:center;width:68px}.col-vol[data-v-97b082ae]{min-width:180px}.col-pct[data-v-97b082ae]{text-align:right;width:50px}.num-cell[data-v-97b082ae]{text-align:right;font-variant-numeric:tabular-nums}.days-cell[data-v-97b082ae]{text-align:center}.days-input-wrap[data-v-97b082ae]{display:inline-flex;align-items:center;gap:1px;position:relative}.cell-input[data-v-97b082ae]{width:40px;padding:3px 2px;border:1px solid #e2e8f0;border-radius:4px;font-size:.82rem;text-align:center;color:#2d3748;background:#fff;transition:border-color .2s}.cell-input[data-v-97b082ae]:focus{outline:none;border-color:#805ad5;box-shadow:0 0 0 2px #805ad526}.cell-unit[data-v-97b082ae]{font-size:.7rem;color:#a0aec0;margin-left:1px}.delta-badge[data-v-97b082ae]{font-size:.7rem;font-weight:700;margin-left:3px;padding:0 3px;border-radius:3px;white-space:nowrap}.delta-pos[data-v-97b082ae]{color:#e53e3e;background:#fff5f5}.delta-neg[data-v-97b082ae]{color:#38a169;background:#f0fff4}.detail-row[data-v-97b082ae]{cursor:pointer;transition:background .15s}.detail-row[data-v-97b082ae]:hover{background:#f7fafc}.beer-cell[data-v-97b082ae]{font-weight:600;color:#2d3748;white-space:nowrap}.expand-icon[data-v-97b082ae]{font-size:.6rem;margin-right:4px;color:#a0aec0}.vol-bar-wrap[data-v-97b082ae]{display:flex;align-items:center;gap:8px}.vol-bar-track[data-v-97b082ae]{flex:1;background:#edf2f7;border-radius:3px;height:10px;overflow:hidden}.vol-bar-fill[data-v-97b082ae]{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:3px;transition:width .3s ease;min-width:2px}.vol-label[data-v-97b082ae]{font-size:.8rem;font-weight:600;color:#4a5568;white-space:nowrap;min-width:60px;text-align:right}.pct-cell[data-v-97b082ae]{text-align:right;font-variant-numeric:tabular-nums;color:#718096}.expanded-detail td[data-v-97b082ae]{background:#f7fafc;padding:6px 10px 6px 32px;border-bottom:1px solid #e2e8f0}.detail-content[data-v-97b082ae]{font-size:.82rem;color:#4a5568}.total-row td[data-v-97b082ae]{border-top:2px solid #cbd5e0;background:#f7fafc}.recipe-params-grid[data-v-97b082ae]{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.recipe-param-row[data-v-97b082ae]{display:flex;align-items:center;gap:10px;padding:5px 10px;background:#f7fafc;border-radius:6px;border:1px solid #edf2f7;border-left:4px solid #cbd5e0}.recipe-name[data-v-97b082ae]{font-weight:600;font-size:.82rem;color:#2d3748;min-width:90px}.recipe-vol[data-v-97b082ae]{font-size:.78rem;color:#718096;min-width:55px;text-align:right}.param-label[data-v-97b082ae]{font-size:.7rem;color:#a0aec0;text-transform:uppercase;font-weight:600;min-width:32px}.col-tank[data-v-97b082ae]{min-width:70px}.col-beers[data-v-97b082ae]{min-width:200px}.beers-cell[data-v-97b082ae]{display:flex;flex-wrap:wrap;gap:3px}.beer-tag[data-v-97b082ae]{font-size:.7rem;background:#edf2f7;color:#4a5568;padding:1px 6px;border-radius:3px;white-space:nowrap;font-weight:600}.beer-tag-base[data-v-97b082ae]{font-size:.75rem;padding:2px 8px}.section-hint[data-v-97b082ae]{font-size:.8rem;color:#718096;margin:-4px 0 12px;line-height:1.4}.kpi-formula[data-v-97b082ae]{font-size:.7rem;color:#a0aec0;display:block;margin-top:2px}.tank-detail-content[data-v-97b082ae]{display:flex;flex-direction:column;gap:8px}.tank-formula[data-v-97b082ae]{font-size:.82rem;color:#4a5568;padding:6px 10px;background:#edf2f7;border-radius:4px;font-variant-numeric:tabular-nums}.tank-detail-label[data-v-97b082ae]{font-size:.75rem;color:#a0aec0;text-transform:uppercase;font-weight:600}.tank-beer-details[data-v-97b082ae]{display:flex;flex-direction:column;gap:3px}.tank-beer-line[data-v-97b082ae]{display:flex;align-items:center;gap:8px;font-size:.8rem;color:#4a5568}.tank-beer-name[data-v-97b082ae]{font-weight:600;min-width:100px;color:#2d3748}.tank-beer-calc[data-v-97b082ae]{font-variant-numeric:tabular-nums}.is-worst[data-v-97b082ae]{color:#e53e3e}.sim-table td[data-v-97b082ae]{padding:5px 10px}.sim-table .beer-cell[data-v-97b082ae]{font-size:.85rem}@media (max-width: 900px){.sim-params[data-v-97b082ae]{grid-template-columns:1fr}.kpi-strip[data-v-97b082ae]{flex-wrap:wrap}}.production-curves-view[data-v-366dd9c0]{padding:1.5rem 2rem;max-width:1400px;margin:0 auto}.page-header[data-v-366dd9c0]{margin-bottom:1.5rem}.year-select[data-v-366dd9c0]{padding:.5rem 1rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.95rem;background:#fff}.kpi-row[data-v-366dd9c0]{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.5rem}.kpi-card[data-v-366dd9c0]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:10px}.kpi-icon[data-v-366dd9c0]{font-size:1.3rem;flex-shrink:0}.kpi-content[data-v-366dd9c0]{min-width:0;display:flex;flex-direction:column}.kpi-value[data-v-366dd9c0]{font-size:1.15rem;font-weight:700;color:#1e293b;line-height:1.2}.kpi-label[data-v-366dd9c0]{font-size:.72rem;color:var(--c-text-secondary);line-height:1.3}.kpi-n1[data-v-366dd9c0]{border-left:3px solid #F97316}.tabs[data-v-366dd9c0]{display:flex;gap:.5rem;margin-bottom:1rem}.tab-btn[data-v-366dd9c0]{padding:.5rem 1.25rem;border:1px solid #e2e8f0;background:#fff;border-radius:6px;cursor:pointer;font-weight:500;color:var(--c-text-secondary);transition:all .15s}.tab-btn.active[data-v-366dd9c0]{background:var(--c-purple);color:#fff;border-color:var(--c-purple)}.tab-btn[data-v-366dd9c0]:hover:not(.active){background:#f1f5f9}.chart-controls[data-v-366dd9c0]{display:flex;gap:1.5rem;margin-bottom:1rem}.toggle-label[data-v-366dd9c0]{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#475569;cursor:pointer}.chart-section[data-v-366dd9c0]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem}.chart-section h3[data-v-366dd9c0]{margin:0 0 1rem;color:#334155;font-size:1rem}.chart-container[data-v-366dd9c0]{height:400px;position:relative}.chart-container-sm[data-v-366dd9c0]{height:250px}.breakdown-section[data-v-366dd9c0]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem}.breakdown-section h3[data-v-366dd9c0]{margin:0 0 1rem;color:#334155;font-size:1rem}.breakdown-table[data-v-366dd9c0]{width:100%;border-collapse:collapse}.breakdown-table th[data-v-366dd9c0],.breakdown-table td[data-v-366dd9c0]{padding:.6rem .75rem;border-bottom:1px solid #f1f5f9;text-align:left}.breakdown-table th[data-v-366dd9c0]{font-weight:600;color:var(--c-text-secondary);font-size:.8rem;text-transform:uppercase}.breakdown-table .num[data-v-366dd9c0]{text-align:right}.breakdown-table tfoot td[data-v-366dd9c0]{border-top:2px solid #e2e8f0;border-bottom:none}.beer-dot[data-v-366dd9c0]{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:.5rem;vertical-align:middle}.loading[data-v-366dd9c0]{text-align:center;padding:3rem;color:var(--c-text-secondary)}.error-banner[data-v-366dd9c0]{background:#fef2f2;color:#dc2626;padding:1rem;border-radius:8px;text-align:center}@media (max-width: 768px){.production-curves-view[data-v-366dd9c0]{padding:1rem}.kpi-row[data-v-366dd9c0]{grid-template-columns:repeat(2,1fr)}.page-header[data-v-366dd9c0]{flex-direction:column;gap:1rem}.chart-container[data-v-366dd9c0]{height:300px}}.packaging-plan-view[data-v-6a85fbac]{padding:24px;max-width:1500px;margin:0 auto}.page-header[data-v-6a85fbac]{margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.header-actions[data-v-6a85fbac]{display:flex;gap:.75rem;flex-shrink:0;flex-wrap:wrap}.btn[data-v-6a85fbac]{padding:.5rem 1rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:.875rem;transition:opacity .15s,background .15s;white-space:nowrap}.btn[data-v-6a85fbac]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-6a85fbac]{background:#2563eb;color:#fff}.btn-primary[data-v-6a85fbac]:hover:not(:disabled){background:#1d4ed8}.btn-secondary[data-v-6a85fbac]{background:var(--c-bg-subtle, #f1f5f9);color:#2d3748;border:1px solid #e2e8f0}.btn-secondary[data-v-6a85fbac]:hover:not(:disabled){background:#e2e8f0}.btn-sm[data-v-6a85fbac]{padding:.25rem .6rem;font-size:.75rem}.btn-close-pkg[data-v-6a85fbac]{background:#10b981;color:#fff}.btn-close-pkg[data-v-6a85fbac]:hover{background:#059669}.btn-danger[data-v-6a85fbac]{background:#dc2626;color:#fff}.btn-danger[data-v-6a85fbac]:hover{background:#b91c1c}.btn-danger-outline[data-v-6a85fbac]{background:transparent;color:#dc2626;border:1px solid #fca5a5}.btn-danger-outline[data-v-6a85fbac]:hover{background:#fee2e2}.btn-link[data-v-6a85fbac]{background:none;border:none;color:#2563eb;cursor:pointer;font-size:.8rem;text-decoration:underline;padding:.25rem .5rem}.mrp-banner[data-v-6a85fbac]{display:flex;align-items:center;padding:.75rem 1rem;border-radius:8px;margin-bottom:1.25rem;font-size:.9rem;gap:.5rem}.banner-success[data-v-6a85fbac]{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.banner-error[data-v-6a85fbac]{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.close-btn[data-v-6a85fbac]{margin-left:auto;background:none;border:none;cursor:pointer;font-size:1rem;opacity:.6}.kpi-cards[data-v-6a85fbac]{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.kpi-card[data-v-6a85fbac]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1rem 1.25rem;display:flex;gap:.75rem;align-items:flex-start;transition:transform .2s,box-shadow .2s}.kpi-card[data-v-6a85fbac]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.kpi-card-alert[data-v-6a85fbac]{border-color:#f97316;background:#fffbeb}.kpi-icon[data-v-6a85fbac]{font-size:1.5rem;flex-shrink:0;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center}.kpi-icon-blue[data-v-6a85fbac]{background:#dbeafe}.kpi-icon-purple[data-v-6a85fbac]{background:#ede9fe}.kpi-icon-orange[data-v-6a85fbac]{background:#ffedd5}.kpi-icon-green[data-v-6a85fbac]{background:#d1fae5}.kpi-content[data-v-6a85fbac]{flex:1;min-width:0}.kpi-value[data-v-6a85fbac]{font-size:1.5rem;font-weight:700;color:#1a202c;line-height:1.2}.kpi-label[data-v-6a85fbac]{font-size:.78rem;color:#718096;margin-top:.15rem}.kpi-detail[data-v-6a85fbac]{margin-top:.35rem;display:flex;gap:.35rem;flex-wrap:wrap}.kpi-chip[data-v-6a85fbac]{font-size:.65rem;padding:.1rem .4rem;border-radius:4px;font-weight:600}.kpi-chip-red[data-v-6a85fbac]{background:#fee2e2;color:#991b1b}.progress-bar-container[data-v-6a85fbac]{height:6px;background:#e2e8f0;border-radius:3px;margin-top:.4rem;overflow:hidden}.progress-bar[data-v-6a85fbac]{height:100%;background:#10b981;border-radius:3px;transition:width .5s ease}.tabs-bar[data-v-6a85fbac]{display:flex;gap:0;border-bottom:2px solid #e2e8f0;margin-bottom:1.25rem}.tab-btn[data-v-6a85fbac]{padding:.6rem 1.25rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;font-size:.875rem;font-weight:500;color:#718096;transition:color .15s,border-color .15s;display:flex;align-items:center;gap:.4rem}.tab-btn[data-v-6a85fbac]:hover{color:#2d3748}.tab-btn.active[data-v-6a85fbac]{color:#2563eb;border-bottom-color:#2563eb;font-weight:600}.tab-badge[data-v-6a85fbac]{background:#2563eb;color:#fff;font-size:.65rem;padding:.1rem .4rem;border-radius:9999px;font-weight:700}.filter-bar[data-v-6a85fbac]{display:flex;align-items:flex-end;gap:1.25rem;padding:.75rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:1.25rem;flex-wrap:wrap}.filter-group[data-v-6a85fbac]{display:flex;flex-direction:column;gap:.3rem}.filter-label[data-v-6a85fbac]{font-size:.7rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.05em}.filter-chips[data-v-6a85fbac]{display:flex;gap:.35rem;flex-wrap:wrap}.filter-select[data-v-6a85fbac]{padding:.35rem .6rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.8rem;background:#fff;min-width:120px}.chip[data-v-6a85fbac]{padding:.25rem .6rem;border:1px solid #e2e8f0;border-radius:9999px;font-size:.75rem;font-weight:500;background:#fff;cursor:pointer;transition:all .15s;color:#475569}.chip[data-v-6a85fbac]:hover{border-color:#94a3b8}.chip.active[data-v-6a85fbac]{background:#2563eb;color:#fff;border-color:#2563eb}.chip-bottling.active[data-v-6a85fbac]{background:#065f46;border-color:#065f46}.chip-kegging.active[data-v-6a85fbac]{background:#9a3412;border-color:#9a3412}.chip-bulk.active[data-v-6a85fbac]{background:#5b21b6;border-color:#5b21b6}.chip-planned.active[data-v-6a85fbac]{background:#2563eb;border-color:#2563eb}.chip-inprogress.active[data-v-6a85fbac]{background:#d97706;border-color:#d97706}.loading-state[data-v-6a85fbac]{display:flex;flex-direction:column;align-items:center;padding:3rem;color:#718096}.spinner[data-v-6a85fbac]{width:40px;height:40px;border:4px solid #e2e8f0;border-top-color:#3182ce;border-radius:50%;animation:spin-6a85fbac 1s linear infinite;margin-bottom:1rem}@keyframes spin-6a85fbac{to{transform:rotate(360deg)}}.empty-state[data-v-6a85fbac]{padding:2rem;text-align:center;color:#718096;background:var(--c-bg-light, #f8fafc);border-radius:8px}.empty-state.small[data-v-6a85fbac]{padding:1rem}.results-count[data-v-6a85fbac]{font-size:.8rem;color:#718096;margin-bottom:.75rem}.dashboard-grid[data-v-6a85fbac]{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.dash-section[data-v-6a85fbac]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem}.dash-section h2[data-v-6a85fbac]{font-size:1rem;font-weight:700;color:#2d3748;margin:0 0 1rem}.dash-section-wide[data-v-6a85fbac]{grid-column:1 / -1}.dash-sessions-list[data-v-6a85fbac]{display:flex;flex-direction:column;gap:.75rem}.dash-session-card[data-v-6a85fbac]{border:1px solid #e2e8f0;border-left:4px solid #94a3b8;border-radius:8px;padding:.75rem 1rem}.dash-session-header[data-v-6a85fbac]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.4rem}.dash-beer-name[data-v-6a85fbac]{font-weight:600;font-size:.875rem;color:#2d3748;display:flex;align-items:center;gap:.35rem}.dash-session-body[data-v-6a85fbac]{display:flex;gap:1rem;font-size:.8rem;color:#718096;flex-wrap:wrap}.dash-session-actions[data-v-6a85fbac]{margin-top:.5rem;display:flex;gap:.5rem}.beer-dot[data-v-6a85fbac]{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0;border:1px solid rgba(0,0,0,.1)}.volume-breakdown[data-v-6a85fbac]{display:flex;flex-direction:column;gap:.6rem}.volume-bar-row[data-v-6a85fbac]{display:flex;align-items:center;gap:.75rem}.volume-bar-label[data-v-6a85fbac]{min-width:130px;flex-shrink:0}.volume-bar-track[data-v-6a85fbac]{flex:1;height:20px;background:#f1f5f9;border-radius:4px;overflow:hidden}.volume-bar-fill[data-v-6a85fbac]{height:100%;border-radius:4px;transition:width .5s ease}.volume-bar-fill.pkg-bottling[data-v-6a85fbac]{background:#6ee7b7}.volume-bar-fill.pkg-kegging[data-v-6a85fbac]{background:#fdba74}.volume-bar-fill.pkg-bulk[data-v-6a85fbac]{background:#c4b5fd}.volume-bar-value[data-v-6a85fbac]{font-size:.8rem;font-weight:600;color:#475569;min-width:70px;text-align:right}.week-group[data-v-6a85fbac]{margin-bottom:1rem;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.week-group-header[data-v-6a85fbac]{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.week-group-header[data-v-6a85fbac]:hover{background:#f8fafc}.collapse-toggle[data-v-6a85fbac]{font-size:.7rem;color:#94a3b8;width:12px}.week-group-title[data-v-6a85fbac]{font-weight:700;font-size:.95rem;color:#2d3748}.week-group-summary[data-v-6a85fbac]{font-size:.8rem;color:#718096}.week-group-chips[data-v-6a85fbac]{margin-left:auto;display:flex;gap:.35rem}.mini-chip[data-v-6a85fbac]{font-size:.65rem;padding:.1rem .4rem;border-radius:4px;font-weight:600}.week-group-body[data-v-6a85fbac]{border-top:1px solid #e2e8f0}.date-group[data-v-6a85fbac]{margin-bottom:1.25rem}.date-group-header[data-v-6a85fbac]{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;margin-bottom:.5rem;border-bottom:2px solid #e2e8f0}.date-group-title[data-v-6a85fbac]{font-weight:700;font-size:.95rem;color:#2d3748;text-transform:capitalize}.date-group-summary[data-v-6a85fbac]{font-size:.8rem;color:#718096}.sessions-toolbar[data-v-6a85fbac]{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.batch-actions[data-v-6a85fbac]{display:flex;align-items:center;gap:.5rem}.batch-count[data-v-6a85fbac]{font-size:.8rem;color:#2563eb;font-weight:600}.data-table[data-v-6a85fbac]{width:100%;border-collapse:collapse;font-size:.85rem}.data-table th[data-v-6a85fbac]{background:var(--c-bg-light, #f8fafc);padding:.55rem .75rem;text-align:left;font-weight:600;font-size:.78rem;color:#718096;border-bottom:1px solid #e2e8f0;white-space:nowrap;text-transform:uppercase;letter-spacing:.03em}.data-table td[data-v-6a85fbac]{padding:.5rem .75rem;border-bottom:1px solid #f1f5f9;color:#2d3748;vertical-align:middle}.data-table tr:last-child td[data-v-6a85fbac]{border-bottom:none}.data-table tr:hover td[data-v-6a85fbac]{background:#f8fafc}.th-right[data-v-6a85fbac]{text-align:right}.th-center[data-v-6a85fbac]{text-align:center}.th-checkbox[data-v-6a85fbac]{width:36px;text-align:center}.td-checkbox[data-v-6a85fbac]{text-align:center}.th-sortable[data-v-6a85fbac]{cursor:pointer;-webkit-user-select:none;user-select:none}.th-sortable[data-v-6a85fbac]:hover{color:#2563eb}.number-cell[data-v-6a85fbac]{text-align:right;font-variant-numeric:tabular-nums}.center-cell[data-v-6a85fbac]{text-align:center}.subtotal-row td[data-v-6a85fbac]{background:#f1f5f9!important}.beer-cell[data-v-6a85fbac]{display:flex;align-items:center;gap:.35rem}.row-urgent[data-v-6a85fbac]{background:#fffbeb}.row-urgent:hover td[data-v-6a85fbac]{background:#fef3c7!important}.format-badge[data-v-6a85fbac]{display:inline-block;padding:.15rem .5rem;border-radius:9999px;font-size:.72rem;font-weight:600}.pkg-bottling[data-v-6a85fbac]{background:#d1fae5;color:#065f46}.pkg-kegging[data-v-6a85fbac]{background:#ffedd5;color:#9a3412}.pkg-bulk[data-v-6a85fbac]{background:#ede9fe;color:#5b21b6}.status-badge[data-v-6a85fbac]{display:inline-block;padding:.15rem .5rem;border-radius:9999px;font-size:.72rem;font-weight:500}.status-planned[data-v-6a85fbac]{background:#dbeafe;color:#1e40af}.status-inprogress[data-v-6a85fbac]{background:#fef9c3;color:#854d0e}.status-completed[data-v-6a85fbac]{background:#d1fae5;color:#065f46}.status-cancelled[data-v-6a85fbac]{background:#fee2e2;color:#991b1b}.tag[data-v-6a85fbac]{display:inline-block;padding:.1rem .4rem;border-radius:4px;font-size:.72rem;font-weight:500}.tag-orange[data-v-6a85fbac]{background:#ffedd5;color:#9a3412}.tag-gray[data-v-6a85fbac]{background:var(--c-bg-subtle, #f1f5f9);color:#718096}.urgent-badge[data-v-6a85fbac]{display:inline-block;background:#dc2626;color:#fff;font-size:.6rem;font-weight:700;padding:.1rem .35rem;border-radius:4px;text-transform:uppercase;margin-left:.35rem}.orders-cell[data-v-6a85fbac]{display:flex;flex-wrap:wrap;gap:.25rem}.order-tag[data-v-6a85fbac]{background:#e0e7ff;color:#3730a3;padding:0 .35rem;border-radius:4px;font-size:.72rem;font-weight:500}.brewing-session-link[data-v-6a85fbac]{color:#2563eb;text-decoration:none;font-weight:500;font-size:.85rem;white-space:nowrap}.brewing-session-link[data-v-6a85fbac]:hover{text-decoration:underline;color:#1d4ed8}.text-muted[data-v-6a85fbac]{color:#a0aec0;font-size:.8rem}.deviation-ok[data-v-6a85fbac]{color:#059669}.deviation-over[data-v-6a85fbac]{color:#2563eb}.deviation-under[data-v-6a85fbac]{color:#dc2626;font-weight:600}.action-btns[data-v-6a85fbac]{display:flex;gap:.35rem}.modal-overlay[data-v-6a85fbac]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-6a85fbac]{background:#fff;border-radius:10px;padding:1.75rem;max-width:480px;width:95%;box-shadow:0 10px 40px #00000040}.modal-box h3[data-v-6a85fbac]{margin:0 0 .35rem;font-size:1.1rem;font-weight:700;color:#2d3748}.modal-subtitle[data-v-6a85fbac]{color:#718096;font-size:.85rem;margin:0 0 1rem}.modal-form[data-v-6a85fbac]{display:flex;flex-direction:column;gap:.9rem}.form-row[data-v-6a85fbac]{display:flex;flex-direction:column;gap:.3rem}.form-row label[data-v-6a85fbac]{font-weight:500;font-size:.85rem;color:#2d3748}.form-input[data-v-6a85fbac]{padding:.5rem .65rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;max-width:220px}.form-textarea[data-v-6a85fbac]{padding:.5rem .65rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;resize:vertical;width:100%;box-sizing:border-box}.modal-actions[data-v-6a85fbac]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem}.close-error[data-v-6a85fbac]{color:#dc2626;font-size:.85rem;margin-top:.5rem}@media (max-width: 1100px){.kpi-cards[data-v-6a85fbac]{grid-template-columns:repeat(2,1fr)}.dashboard-grid[data-v-6a85fbac]{grid-template-columns:1fr}}@media (max-width: 640px){.kpi-cards[data-v-6a85fbac]{grid-template-columns:1fr}.filter-bar[data-v-6a85fbac]{flex-direction:column;align-items:stretch}.tabs-bar[data-v-6a85fbac]{overflow-x:auto}}.pkg-cal-view[data-v-5283205a]{padding:24px;background:var(--c-bg-light);min-height:100vh}.planning-header[data-v-5283205a]{background:#fff;border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.25rem;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem}.header-left h1[data-v-5283205a]{margin:0;font-size:1.5rem;font-weight:700;color:#1a202c}.header-left .subtitle[data-v-5283205a]{color:#718096;margin:4px 0 0;font-size:.9rem}.constraints-row[data-v-5283205a]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.constraint-chip[data-v-5283205a]{background:#e9d8fd;color:#1a202c;border:1px solid #d6bcfa;padding:.15rem .6rem;border-radius:99px;font-size:.78rem;font-weight:600}.constraint-chip.neutral[data-v-5283205a]{background:var(--c-bg-subtle);color:#2d3748;border-color:var(--c-border);font-weight:400}.header-right[data-v-5283205a]{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.granularity-selector[data-v-5283205a]{display:flex;gap:.5rem;background:#f1f5f9;padding:.25rem;border-radius:8px}.gran-btn[data-v-5283205a]{padding:.5rem 1rem;border:none;background:transparent;border-radius:6px;cursor:pointer;font-weight:600;font-size:.95rem;color:#718096;transition:all .2s}.gran-btn.active[data-v-5283205a]{background:#fff;color:#553c9a;box-shadow:0 1px 3px #0000001a}.gran-btn[data-v-5283205a]:hover:not(.active){color:#553c9a}.navigation[data-v-5283205a]{display:flex;gap:.5rem}.nav-btn[data-v-5283205a]{padding:.5rem 1rem;border:1px solid var(--c-border-strong);background:#fff;border-radius:6px;cursor:pointer;font-weight:500;color:var(--c-text);transition:all .2s}.nav-btn[data-v-5283205a]:hover{background:var(--c-bg-light);border-color:#553c9a}.nav-today[data-v-5283205a]{background:#805ad5;color:#fff;border-color:#805ad5}.nav-today[data-v-5283205a]:hover{background:#553c9a;border-color:#553c9a}.info-banner[data-v-5283205a]{border-radius:8px;padding:.65rem 1rem;margin-bottom:.75rem;font-size:.875rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.banner-loading[data-v-5283205a]{background:#f1f5f9;color:#718096;border:1px solid #e2e8f0}.banner-error[data-v-5283205a]{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.banner-warn[data-v-5283205a]{background:#fef9c3;color:#854d0e;border:1px solid #fde68a}.banner-info[data-v-5283205a]{background:#dbeafe;color:var(--c-purple-dark);border:1px solid #bfdbfe}.banner-count[data-v-5283205a]{background:#d1fae5;color:#1a202c;border:1px solid #6ee7b7}.btn-jump[data-v-5283205a]{background:var(--c-purple-dark);color:#fff;border:none;padding:.25rem .65rem;border-radius:5px;cursor:pointer;font-size:.8rem;font-weight:500}.btn-jump[data-v-5283205a]:hover{background:#1d4ed8}.card-done[data-v-5283205a]{opacity:.72}.card-cancelled[data-v-5283205a]{opacity:.45}.mini-done[data-v-5283205a]{opacity:.65}.mini-cancelled[data-v-5283205a]{opacity:.4}.mini-status-done[data-v-5283205a]{font-size:.7rem;margin-left:auto;line-height:1}.mini-status-cancel[data-v-5283205a]{font-size:.7rem;color:#991b1b;margin-left:auto;line-height:1}.compact-done[data-v-5283205a]{opacity:.72}.compact-cancelled[data-v-5283205a]{opacity:.4}.compact-status-badge[data-v-5283205a]{display:inline-block;padding:.05rem .35rem;border-radius:4px;font-size:.65rem;font-weight:700;margin-right:.3rem;vertical-align:middle}.session-chip.chip-done[data-v-5283205a]{background:#d1fae5;color:#1a202c}.session-chip.chip-cancelled[data-v-5283205a]{background:var(--c-bg-subtle);color:var(--c-muted);text-decoration:line-through}.period-display[data-v-5283205a]{background:#fff;border-radius:10px;padding:.75rem 1.5rem;margin-bottom:1.25rem;box-shadow:0 2px 8px #0000000f;text-align:center}.period-display h2[data-v-5283205a]{margin:0;font-size:1.1rem;color:#1a202c;text-transform:capitalize}.sessions-list[data-v-5283205a]{display:flex;flex-direction:column;gap:1rem}.session-card[data-v-5283205a]{border-radius:10px;padding:1.1rem;border-left:4px solid}.session-card.pkg-33[data-v-5283205a]{background:#ecfdf5;border-color:#10b981}.session-card.pkg-75[data-v-5283205a]{background:#f0fdf4;border-color:#16a34a}.card-header[data-v-5283205a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.card-title[data-v-5283205a]{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:var(--c-text)}.pkg-icon[data-v-5283205a]{font-size:1.1rem}.beer-name[data-v-5283205a]{font-weight:400;color:var(--c-text-secondary);font-size:.9rem}.info-grid[data-v-5283205a]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem}.info-item[data-v-5283205a]{display:flex;flex-direction:column;gap:.15rem}.lbl[data-v-5283205a]{font-size:.75rem;color:var(--c-text-secondary);font-weight:600}.val[data-v-5283205a]{font-size:.875rem;color:var(--c-text)}.alert-inline[data-v-5283205a]{display:inline-block;background:#fef3c7;color:#92400e;padding:.05rem .35rem;border-radius:4px;font-size:.7rem;font-weight:600;margin-left:.35rem}.info-range.warn .val[data-v-5283205a]{color:#92400e}.info-range.ok .val[data-v-5283205a]{color:#1a202c}.card-actions[data-v-5283205a]{margin-top:.75rem;display:flex;gap:.5rem}.no-sessions[data-v-5283205a]{text-align:center;padding:2.5rem;color:var(--c-muted);background:var(--c-bg-light);border-radius:8px;border:1px dashed var(--c-border)}.week-view[data-v-5283205a]{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #00000014}.week-grid[data-v-5283205a]{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--c-border);border:1px solid var(--c-border);border-radius:8px;overflow:hidden}.day-col[data-v-5283205a]{background:#fff;min-height:180px}.day-col.today[data-v-5283205a]{background:#ecfdf5}.day-col.closure[data-v-5283205a]{background:#fff1f2}.day-col-header[data-v-5283205a]{padding:.6rem;background:var(--c-bg-light);border-bottom:2px solid var(--c-border);text-align:center;position:relative}.day-col.today .day-col-header[data-v-5283205a]{background:#6ee7b7}.day-col.closure .day-col-header[data-v-5283205a]{background:#fecdd3;border-bottom-color:#fb7185}.closure-badge[data-v-5283205a]{position:absolute;top:4px;right:4px;font-size:.8rem;line-height:1}.day-name[data-v-5283205a]{font-weight:600;font-size:.75rem;text-transform:uppercase;color:var(--c-text-secondary)}.day-col.today .day-name[data-v-5283205a]{color:#064e3b}.day-col.closure .day-name[data-v-5283205a]{color:#9f1239}.day-num[data-v-5283205a]{font-size:.9rem;font-weight:700;color:var(--c-text);margin-top:.15rem}.day-sessions[data-v-5283205a]{padding:.4rem;display:flex;flex-direction:column;gap:.4rem}.mini-card[data-v-5283205a]{border-radius:5px;padding:.4rem .5rem;cursor:pointer;font-size:.72rem;border-left:3px solid;transition:transform .1s}.mini-card[data-v-5283205a]:hover{transform:translate(2px)}.mini-card-highlight[data-v-5283205a]{outline:3px solid #2563eb;outline-offset:2px;box-shadow:0 0 0 6px #2563eb26;animation:highlight-pulse-5283205a 1.5s ease-in-out 2}@keyframes highlight-pulse-5283205a{0%,to{outline-color:#2563eb;box-shadow:0 0 0 6px #2563eb26}50%{outline-color:var(--c-purple);box-shadow:0 0 0 8px #3b82f640}}.mini-card.pkg-33[data-v-5283205a]{background:#ecfdf5;border-color:#10b981}.mini-card.pkg-75[data-v-5283205a]{background:#f0fdf4;border-color:#16a34a}.mini-card--seed[data-v-5283205a]{background:#eef2ff;border-color:#4f46e5;cursor:default}.mini-header[data-v-5283205a]{font-weight:600;margin-bottom:.2rem;display:flex;align-items:center;gap:.25rem}.mini-warn[data-v-5283205a]{color:#d97706;font-size:.65rem}.mini-info[data-v-5283205a]{color:var(--c-text-secondary);font-size:.65rem;line-height:1.3}.dluo[data-v-5283205a]{font-style:italic}.no-sessions-mini[data-v-5283205a]{text-align:center;color:var(--c-border-strong);padding:.75rem;font-size:.75rem}.weeks7-view[data-v-5283205a]{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #00000014}.weeks7-grid[data-v-5283205a]{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem}.week-card[data-v-5283205a]{background:var(--c-bg-light);border-radius:8px;overflow:hidden;border:2px solid var(--c-border);transition:border-color .2s}.week-card[data-v-5283205a]:hover{border-color:#10b981}.week-card-header[data-v-5283205a]{background:linear-gradient(135deg,#805ad5,#10b981);color:#fff;padding:.85rem 1rem;text-align:center}.wk-number[data-v-5283205a]{font-size:1.4rem;font-weight:700}.wk-dates[data-v-5283205a]{font-size:.72rem;opacity:.9}.week-card-body[data-v-5283205a]{padding:.85rem}.wk-stats[data-v-5283205a]{display:flex;justify-content:space-around;margin-bottom:.85rem;padding-bottom:.85rem;border-bottom:1px solid var(--c-border)}.stat-item[data-v-5283205a]{text-align:center;min-width:0}.stat-val[data-v-5283205a]{display:block;font-size:1.1rem;font-weight:700;color:#1a202c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-lbl[data-v-5283205a]{display:block;font-size:.62rem;color:var(--c-text-secondary);margin-top:.2rem}.wk-sessions[data-v-5283205a]{display:flex;flex-direction:column;gap:.4rem}.compact-card[data-v-5283205a]{padding:.45rem .6rem;border-radius:5px;font-size:.75rem;border-left:3px solid;cursor:pointer;transition:transform .1s}.compact-card[data-v-5283205a]:hover{transform:translate(2px)}.compact-card.pkg-33[data-v-5283205a]{background:#ecfdf5;border-color:#10b981}.compact-card.pkg-75[data-v-5283205a]{background:#f0fdf4;border-color:#16a34a}.compact-card--seed[data-v-5283205a]{background:#eef2ff;border-color:#4f46e5;cursor:default}.compact-name[data-v-5283205a]{font-weight:600;color:var(--c-text);margin-bottom:.1rem}.compact-info[data-v-5283205a]{color:var(--c-text-secondary);font-size:.68rem}.btn[data-v-5283205a]{padding:.45rem .9rem;border:none;border-radius:6px;cursor:pointer;font-weight:500;font-size:.85rem;transition:opacity .15s}.btn[data-v-5283205a]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-5283205a]{background:#805ad5;color:#fff}.btn-primary[data-v-5283205a]:hover:not(:disabled){background:#553c9a}.btn-secondary[data-v-5283205a]{background:var(--c-bg-subtle);color:var(--c-text);border:1px solid var(--c-border-strong)}.btn-secondary[data-v-5283205a]:hover:not(:disabled){background:var(--c-border)}.btn-sm[data-v-5283205a]{padding:.25rem .6rem;font-size:.75rem}.btn-close[data-v-5283205a]{background:#10b981;color:#fff}.btn-close[data-v-5283205a]:hover{background:#805ad5}.status-badge[data-v-5283205a]{display:inline-block;padding:.15rem .5rem;border-radius:99px;font-size:.72rem;font-weight:600}.st-planned[data-v-5283205a]{background:#dbeafe;color:var(--c-purple-dark)}.st-progress[data-v-5283205a]{background:#fef9c3;color:#854d0e}.st-done[data-v-5283205a]{background:#d1fae5;color:#1a202c}.st-cancel[data-v-5283205a]{background:#fee2e2;color:#991b1b}.modal-overlay[data-v-5283205a]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-5283205a]{background:#fff;border-radius:10px;padding:1.75rem;max-width:480px;width:95%;box-shadow:0 10px 40px #00000040}.modal-box h3[data-v-5283205a]{margin:0 0 .35rem;font-size:1.1rem;font-weight:700;color:var(--c-text)}.modal-subtitle[data-v-5283205a]{color:var(--c-text-secondary);font-size:.85rem;margin:0 0 1rem}.brew-info-block[data-v-5283205a]{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem}.brew-info-header[data-v-5283205a]{font-size:.8rem;font-weight:700;color:#1a202c;margin-bottom:.5rem}.brew-info-grid[data-v-5283205a]{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.35rem .75rem;margin-bottom:.6rem}.brew-info-item[data-v-5283205a]{display:flex;flex-direction:column;gap:.1rem}.brew-info-lbl[data-v-5283205a]{font-size:.7rem;color:var(--c-text-secondary);font-weight:600}.brew-info-val[data-v-5283205a]{font-size:.8rem;color:var(--c-text);font-weight:500}.btn-view-planning[data-v-5283205a]{display:inline-block;padding:.3rem .75rem;background:#10b981;color:#fff;border-radius:6px;font-size:.78rem;font-weight:600;text-decoration:none;transition:background .15s}.btn-view-planning[data-v-5283205a]:hover{background:#805ad5}.modal-form[data-v-5283205a]{display:flex;flex-direction:column;gap:.85rem}.form-row[data-v-5283205a]{display:flex;flex-direction:column;gap:.25rem}.form-row label[data-v-5283205a]{font-weight:500;font-size:.85rem;color:var(--c-text)}.form-input[data-v-5283205a]{padding:.45rem .6rem;border:1px solid var(--c-border-strong);border-radius:6px;font-size:.875rem;max-width:200px}.form-textarea[data-v-5283205a]{padding:.45rem .6rem;border:1px solid var(--c-border-strong);border-radius:6px;font-size:.875rem;resize:vertical;width:100%;box-sizing:border-box}.modal-actions[data-v-5283205a]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.1rem}.close-error[data-v-5283205a]{color:#dc2626;font-size:.85rem;margin-top:.5rem}.report-info[data-v-5283205a]{font-size:.85rem;color:#6b7280;background:#fef3c7;border-radius:6px;padding:.5rem .75rem;margin:.5rem 0}.btn-danger[data-v-5283205a]{background:#dc2626;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer}.btn-danger[data-v-5283205a]:hover{background:#b91c1c}.btn-danger[data-v-5283205a]:disabled{opacity:.5;cursor:not-allowed}.modal-detail[data-v-5283205a]{max-width:560px}.detail-header[data-v-5283205a]{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:2px solid #f0f0f0;margin-bottom:18px}.detail-header h3[data-v-5283205a]{margin:0 0 4px;font-size:1.1rem}.detail-header-icon[data-v-5283205a]{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;flex-shrink:0}.icon-done[data-v-5283205a]{background:#dcfce7;color:#16a34a}.icon-cancel[data-v-5283205a]{background:#fee2e2;color:#dc2626}.detail-status-badge[data-v-5283205a]{display:inline-block;padding:2px 10px;border-radius:9999px;font-size:.7rem;font-weight:600;margin-left:.5rem;vertical-align:middle}.detail-comparison[data-v-5283205a]{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.detail-col[data-v-5283205a]{background:var(--c-bg-light);border-radius:8px;padding:14px}.detail-col--actual[data-v-5283205a]{background:#f0fdf4}.detail-col-title[data-v-5283205a]{font-size:.8rem;font-weight:600;text-transform:uppercase;color:var(--c-text-secondary);margin-bottom:.625rem;letter-spacing:.03125rem}.detail-col--actual .detail-col-title[data-v-5283205a]{color:#16a34a}.detail-row[data-v-5283205a]{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.detail-lbl[data-v-5283205a]{font-size:.85rem;color:var(--c-text-secondary)}.detail-val[data-v-5283205a]{font-size:.85rem;font-weight:600;color:var(--c-text)}.detail-delta[data-v-5283205a]{color:#d97706}.detail-notes[data-v-5283205a]{font-size:.85rem;color:var(--c-text-secondary);padding:.625rem .875rem;background:var(--c-bg-light);border-radius:6px;margin-bottom:.75rem}.detail-notes-edit[data-v-5283205a]{margin-bottom:.75rem}.detail-notes-edit label[data-v-5283205a]{font-size:.85rem;font-weight:500;color:var(--c-text);display:block;margin-bottom:.25rem}.detail-dluo[data-v-5283205a]{font-size:.8rem;color:var(--c-text-secondary);margin-bottom:.75rem}.form-input--inline[data-v-5283205a]{max-width:130px;padding:4px 8px;font-size:.85rem}.btn-warning[data-v-5283205a]{background:#f59e0b;color:#fff;font-weight:500}.btn-warning[data-v-5283205a]:hover:not(:disabled){background:#d97706}.reopen-modal-header[data-v-5283205a]{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.reopen-modal-icon[data-v-5283205a]{width:38px;height:38px;border-radius:50%;background:#fef3c7;color:#d97706;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;flex-shrink:0}.reopen-warning-box[data-v-5283205a]{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.85rem;color:#92400e}.reopen-warning-box ul[data-v-5283205a]{margin:.4rem 0 0;padding-left:1.2rem}.reopen-warning-box li[data-v-5283205a]{margin-bottom:.25rem}.btn-edit[data-v-5283205a]{background:var(--c-purple);color:#fff;font-weight:500}.btn-edit[data-v-5283205a]:hover:not(:disabled){background:#2563eb}.action-btn[data-v-5283205a]{padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:.875rem;transition:all .2s;display:flex;align-items:center;gap:.5rem}.btn-regenerate[data-v-5283205a]{background-color:#8b5cf6;color:#fff}.btn-regenerate[data-v-5283205a]:hover{background-color:#7c3aed}.btn-regenerate[data-v-5283205a]:disabled{background-color:#c4b5fd;cursor:not-allowed}.planning-modal--regenerate[data-v-5283205a]{max-width:620px;text-align:left}.planning-modal--regenerate .planning-modal-icon[data-v-5283205a]{margin-bottom:1.25rem}.planning-modal--regenerate .planning-modal-title[data-v-5283205a]{text-align:center}.planning-modal-rules[data-v-5283205a]{display:flex;flex-direction:column;gap:.875rem;margin:0 0 1.5rem}.planning-modal-rule-group[data-v-5283205a]{background:var(--c-bg-light);border:1px solid #e2e8f0;border-radius:10px;padding:.875rem 1rem}.planning-modal-rule-title[data-v-5283205a]{margin:0 0 .5rem;font-size:.8125rem;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.04em}.planning-modal-rule-list[data-v-5283205a]{margin:0;padding-left:1.125rem;color:#475569;font-size:.875rem;line-height:1.5}.planning-modal-rule-list li+li[data-v-5283205a]{margin-top:.375rem}.pkg-cal-view[data-v-897abb27]{padding:1.5rem;background:var(--c-bg-light);min-height:100vh}.planning-header[data-v-897abb27]{background:#fff;border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.25rem;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem}.header-left h1[data-v-897abb27]{margin:0;font-size:1.5rem;font-weight:700;color:#1a202c}.header-left .subtitle[data-v-897abb27]{color:#718096;margin:4px 0 0;font-size:.9rem}.constraints-row[data-v-897abb27]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.constraint-chip[data-v-897abb27]{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7;padding:.15rem .6rem;border-radius:99px;font-size:.78rem;font-weight:600}.constraint-chip.neutral[data-v-897abb27]{background:var(--c-bg-subtle);color:var(--c-text);border-color:var(--c-border);font-weight:400}.stock-row[data-v-897abb27]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.keg-chip[data-v-897abb27]{display:flex;align-items:center;gap:.35rem;padding:.25rem .75rem;border-radius:99px;font-size:.8rem;font-weight:600;border:1px solid}.keg-ok[data-v-897abb27]{background:#d1fae5;color:#065f46;border-color:#6ee7b7}.keg-low[data-v-897abb27]{background:#fee2e2;color:#991b1b;border-color:#fca5a5}.keg-neutral[data-v-897abb27]{background:var(--c-bg-subtle);color:var(--c-text);border-color:var(--c-border);font-weight:400}.keg-min[data-v-897abb27]{font-size:.72rem;opacity:.7;font-weight:400}.header-right[data-v-897abb27]{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.granularity-selector[data-v-897abb27]{display:flex;gap:.5rem;background:#f1f5f9;padding:.25rem;border-radius:8px}.gran-btn[data-v-897abb27]{padding:.5rem 1rem;border:none;background:transparent;border-radius:6px;cursor:pointer;font-weight:600;font-size:.95rem;color:#718096;transition:all .2s}.gran-btn.active[data-v-897abb27]{background:#fff;color:#553c9a;box-shadow:0 1px 3px #0000001a}.gran-btn[data-v-897abb27]:hover:not(.active){color:#553c9a}.navigation[data-v-897abb27]{display:flex;gap:.5rem}.nav-btn[data-v-897abb27]{padding:.5rem 1rem;border:1px solid var(--c-border-strong);background:#fff;border-radius:6px;cursor:pointer;font-weight:500;color:var(--c-text);transition:all .2s}.nav-btn[data-v-897abb27]:hover{background:var(--c-bg-light);border-color:#553c9a}.nav-today[data-v-897abb27]{background:#805ad5;color:#fff;border-color:#805ad5}.nav-today[data-v-897abb27]:hover{background:#553c9a;border-color:#553c9a}.period-display[data-v-897abb27]{background:#fff;border-radius:10px;padding:.75rem 1.5rem;margin-bottom:1.25rem;box-shadow:0 2px 8px #0000000f;text-align:center}.period-display h2[data-v-897abb27]{margin:0;font-size:1.1rem;color:#9a3412;text-transform:capitalize}.sessions-list[data-v-897abb27]{display:flex;flex-direction:column;gap:1rem}.session-card[data-v-897abb27]{border-radius:10px;padding:1.1rem;border-left:4px solid}.session-card.pkg-20[data-v-897abb27]{background:#fff7ed;border-color:#ea580c}.session-card.pkg-30[data-v-897abb27]{background:#fef3c7;border-color:#d97706}.card-header[data-v-897abb27]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.card-title[data-v-897abb27]{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:var(--c-text)}.pkg-icon[data-v-897abb27]{font-size:1.1rem}.beer-name[data-v-897abb27]{font-weight:400;color:var(--c-text-secondary);font-size:.9rem}.info-grid[data-v-897abb27]{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.5rem}.info-item[data-v-897abb27]{display:flex;flex-direction:column;gap:.15rem}.lbl[data-v-897abb27]{font-size:.75rem;color:var(--c-text-secondary);font-weight:600}.val[data-v-897abb27]{font-size:.875rem;color:var(--c-text)}.tag-orange[data-v-897abb27]{display:inline-block;background:#ffedd5;color:#9a3412;padding:.1rem .45rem;border-radius:4px;font-size:.75rem;font-weight:600}.tag-gray[data-v-897abb27]{display:inline-block;background:var(--c-bg-subtle);color:var(--c-text-secondary);padding:.1rem .45rem;border-radius:4px;font-size:.75rem}.routing[data-v-897abb27]{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap}.tank-chip[data-v-897abb27]{display:inline-block;background:#e0e7ff;color:#3730a3;padding:.1rem .4rem;border-radius:4px;font-size:.72rem;font-weight:500}.tank-tbf[data-v-897abb27]{background:#fef3c7;color:#92400e}.arrow[data-v-897abb27]{color:var(--c-muted);font-size:.85rem}.text-muted[data-v-897abb27]{color:var(--c-muted)}.card-actions[data-v-897abb27]{margin-top:.75rem;display:flex;gap:.5rem}.no-sessions[data-v-897abb27]{text-align:center;padding:2.5rem;color:var(--c-muted);background:var(--c-bg-light);border-radius:8px;border:1px dashed var(--c-border)}.week-view[data-v-897abb27]{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #00000014}.week-grid[data-v-897abb27]{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--c-border);border:1px solid var(--c-border);border-radius:8px;overflow:hidden}.day-col[data-v-897abb27]{background:#fff;min-height:180px}.day-col.today[data-v-897abb27]{background:#fff7ed}.day-col.closure[data-v-897abb27]{background:#fff1f2}.day-col-header[data-v-897abb27]{padding:.6rem;background:var(--c-bg-light);border-bottom:2px solid var(--c-border);text-align:center;position:relative}.day-col.today .day-col-header[data-v-897abb27]{background:#fed7aa}.day-col.closure .day-col-header[data-v-897abb27]{background:#fecdd3;border-bottom-color:#fb7185}.closure-badge[data-v-897abb27]{position:absolute;top:4px;right:4px;font-size:.8rem;line-height:1}.day-name[data-v-897abb27]{font-weight:600;font-size:.75rem;text-transform:uppercase;color:var(--c-text-secondary)}.day-col.today .day-name[data-v-897abb27]{color:#7c2d12}.day-col.closure .day-name[data-v-897abb27]{color:#9f1239}.day-num[data-v-897abb27]{font-size:.9rem;font-weight:700;color:var(--c-text);margin-top:.15rem}.day-sessions[data-v-897abb27]{padding:.4rem;display:flex;flex-direction:column;gap:.4rem}.mini-card[data-v-897abb27]{border-radius:5px;padding:.4rem .5rem;cursor:pointer;font-size:.72rem;border-left:3px solid;transition:transform .1s}.mini-card[data-v-897abb27]:hover{transform:translate(2px)}.mini-card-highlight[data-v-897abb27]{outline:3px solid #2563eb;outline-offset:2px;box-shadow:0 0 0 6px #2563eb26;animation:highlight-pulse-897abb27 1.5s ease-in-out 2}@keyframes highlight-pulse-897abb27{0%,to{outline-color:#2563eb;box-shadow:0 0 0 6px #2563eb26}50%{outline-color:var(--c-purple);box-shadow:0 0 0 8px #3b82f640}}.mini-card.pkg-20[data-v-897abb27]{background:#fff7ed;border-color:#ea580c}.mini-card.pkg-30[data-v-897abb27]{background:#fef3c7;border-color:#d97706}.mini-card--seed[data-v-897abb27]{background:#eef2ff;border-color:#4f46e5;cursor:default}.mini-header[data-v-897abb27]{font-weight:600;margin-bottom:.2rem;display:flex;align-items:center;gap:.25rem}.mini-centri[data-v-897abb27]{font-size:.65rem}.mini-info[data-v-897abb27]{color:var(--c-text-secondary);font-size:.65rem;line-height:1.3}.dluo[data-v-897abb27]{font-style:italic}.no-sessions-mini[data-v-897abb27]{text-align:center;color:var(--c-border-strong);padding:.75rem;font-size:.75rem}.weeks7-view[data-v-897abb27]{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #00000014}.weeks7-grid[data-v-897abb27]{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem}.week-card[data-v-897abb27]{background:var(--c-bg-light);border-radius:8px;overflow:hidden;border:2px solid var(--c-border);transition:border-color .2s}.week-card[data-v-897abb27]:hover{border-color:#ea580c}.week-card-header[data-v-897abb27]{background:linear-gradient(135deg,#c2410c,#ea580c);color:#fff;padding:.85rem 1rem;text-align:center}.wk-number[data-v-897abb27]{font-size:1.4rem;font-weight:700}.wk-dates[data-v-897abb27]{font-size:.72rem;opacity:.9}.week-card-body[data-v-897abb27]{padding:.85rem}.wk-stats[data-v-897abb27]{display:flex;justify-content:space-around;margin-bottom:.85rem;padding-bottom:.85rem;border-bottom:1px solid var(--c-border)}.stat-item[data-v-897abb27]{text-align:center}.stat-val[data-v-897abb27]{display:block;font-size:1.25rem;font-weight:700;color:#9a3412}.stat-lbl[data-v-897abb27]{display:block;font-size:.62rem;color:var(--c-text-secondary);margin-top:.2rem}.wk-sessions[data-v-897abb27]{display:flex;flex-direction:column;gap:.4rem}.compact-card[data-v-897abb27]{padding:.45rem .6rem;border-radius:5px;font-size:.75rem;border-left:3px solid;cursor:pointer;transition:transform .1s}.compact-card[data-v-897abb27]:hover{transform:translate(2px)}.compact-card.pkg-20[data-v-897abb27]{background:#fff7ed;border-color:#ea580c}.compact-card.pkg-30[data-v-897abb27]{background:#fef3c7;border-color:#d97706}.compact-card--seed[data-v-897abb27]{background:#eef2ff;border-color:#4f46e5;cursor:default}.compact-name[data-v-897abb27]{font-weight:600;color:var(--c-text);margin-bottom:.1rem}.compact-info[data-v-897abb27]{color:var(--c-text-secondary);font-size:.68rem}.btn[data-v-897abb27]{padding:.45rem .9rem;border:none;border-radius:6px;cursor:pointer;font-weight:500;font-size:.85rem;transition:opacity .15s}.btn[data-v-897abb27]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-897abb27]{background:#ea580c;color:#fff}.btn-primary[data-v-897abb27]:hover:not(:disabled){background:#c2410c}.btn-secondary[data-v-897abb27]{background:var(--c-bg-subtle);color:var(--c-text);border:1px solid var(--c-border-strong)}.btn-secondary[data-v-897abb27]:hover:not(:disabled){background:var(--c-border)}.btn-sm[data-v-897abb27]{padding:.25rem .6rem;font-size:.75rem}.btn-close[data-v-897abb27]{background:#10b981;color:#fff}.btn-close[data-v-897abb27]:hover{background:#059669}.status-badge[data-v-897abb27]{display:inline-block;padding:.15rem .5rem;border-radius:99px;font-size:.72rem;font-weight:600}.st-planned[data-v-897abb27]{background:#dbeafe;color:var(--c-purple-dark)}.st-progress[data-v-897abb27]{background:#fef9c3;color:#854d0e}.st-done[data-v-897abb27]{background:#d1fae5;color:#065f46}.st-cancel[data-v-897abb27]{background:#fee2e2;color:#991b1b}.modal-overlay[data-v-897abb27]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-897abb27]{background:#fff;border-radius:10px;padding:1.75rem;max-width:480px;width:95%;box-shadow:0 10px 40px #00000040}.modal-box h3[data-v-897abb27]{margin:0 0 .35rem;font-size:1.1rem;font-weight:700;color:var(--c-text)}.modal-subtitle[data-v-897abb27]{color:var(--c-text-secondary);font-size:.85rem;margin:0 0 1rem}.brew-info-block[data-v-897abb27]{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem}.brew-info-header[data-v-897abb27]{font-size:.8rem;font-weight:700;color:#065f46;margin-bottom:.5rem}.brew-info-grid[data-v-897abb27]{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.35rem .75rem;margin-bottom:.6rem}.brew-info-item[data-v-897abb27]{display:flex;flex-direction:column;gap:.1rem}.brew-info-lbl[data-v-897abb27]{font-size:.7rem;color:var(--c-text-secondary);font-weight:600}.brew-info-val[data-v-897abb27]{font-size:.8rem;color:var(--c-text);font-weight:500}.btn-view-planning[data-v-897abb27]{display:inline-block;padding:.3rem .75rem;background:#10b981;color:#fff;border-radius:6px;font-size:.78rem;font-weight:600;text-decoration:none;transition:background .15s}.btn-view-planning[data-v-897abb27]:hover{background:#059669}.modal-form[data-v-897abb27]{display:flex;flex-direction:column;gap:.85rem}.form-row[data-v-897abb27]{display:flex;flex-direction:column;gap:.25rem}.form-row label[data-v-897abb27]{font-weight:500;font-size:.85rem;color:var(--c-text)}.form-input[data-v-897abb27]{padding:.45rem .6rem;border:1px solid var(--c-border-strong);border-radius:6px;font-size:.875rem;max-width:200px}.form-textarea[data-v-897abb27]{padding:.45rem .6rem;border:1px solid var(--c-border-strong);border-radius:6px;font-size:.875rem;resize:vertical;width:100%;box-sizing:border-box}.modal-actions[data-v-897abb27]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.1rem}.close-error[data-v-897abb27]{color:#dc2626;font-size:.85rem;margin-top:.5rem}.report-info[data-v-897abb27]{font-size:.85rem;color:#6b7280;background:#fef3c7;border-radius:6px;padding:.5rem .75rem;margin:.5rem 0}.btn-danger[data-v-897abb27]{background:#dc2626;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer}.btn-danger[data-v-897abb27]:hover{background:#b91c1c}.btn-danger[data-v-897abb27]:disabled{opacity:.5;cursor:not-allowed}.info-banner[data-v-897abb27]{border-radius:8px;padding:.65rem 1rem;margin-bottom:.75rem;font-size:.875rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.banner-loading[data-v-897abb27]{background:#f1f5f9;color:var(--c-text-secondary);border:1px solid #e2e8f0}.banner-error[data-v-897abb27]{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.banner-warn[data-v-897abb27]{background:#fef9c3;color:#854d0e;border:1px solid #fde68a}.banner-info[data-v-897abb27]{background:#dbeafe;color:var(--c-purple-dark);border:1px solid #bfdbfe}.banner-count[data-v-897abb27]{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.btn-jump[data-v-897abb27]{background:var(--c-purple-dark);color:#fff;border:none;padding:.25rem .65rem;border-radius:5px;cursor:pointer;font-size:.8rem;font-weight:500}.btn-jump[data-v-897abb27]:hover{background:#1d4ed8}.card-done[data-v-897abb27]{opacity:.72}.card-cancelled[data-v-897abb27]{opacity:.45}.mini-done[data-v-897abb27]{opacity:.65}.mini-cancelled[data-v-897abb27]{opacity:.4}.mini-status-done[data-v-897abb27]{font-size:.7rem;margin-left:auto;line-height:1}.mini-status-cancel[data-v-897abb27]{font-size:.7rem;color:#991b1b;margin-left:auto;line-height:1}.compact-done[data-v-897abb27]{opacity:.72}.compact-cancelled[data-v-897abb27]{opacity:.4}.compact-status-badge[data-v-897abb27]{display:inline-block;padding:.05rem .35rem;border-radius:4px;font-size:.65rem;font-weight:700;margin-right:.3rem;vertical-align:middle}.session-chip.chip-done[data-v-897abb27]{background:#d1fae5;color:#065f46}.session-chip.chip-cancelled[data-v-897abb27]{background:var(--c-bg-subtle);color:var(--c-muted);text-decoration:line-through}.modal-detail[data-v-897abb27]{max-width:560px}.detail-header[data-v-897abb27]{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:2px solid #f0f0f0;margin-bottom:18px}.detail-header h3[data-v-897abb27]{margin:0 0 4px;font-size:1.1rem}.detail-header-icon[data-v-897abb27]{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;flex-shrink:0}.icon-done[data-v-897abb27]{background:#dcfce7;color:#16a34a}.icon-cancel[data-v-897abb27]{background:#fee2e2;color:#dc2626}.detail-status-badge[data-v-897abb27]{display:inline-block;padding:2px 10px;border-radius:9999px;font-size:.7rem;font-weight:600;margin-left:.5rem;vertical-align:middle}.detail-comparison[data-v-897abb27]{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.detail-col[data-v-897abb27]{background:var(--c-bg-light);border-radius:8px;padding:14px}.detail-col--actual[data-v-897abb27]{background:#f0fdf4}.detail-col-title[data-v-897abb27]{font-size:.8rem;font-weight:600;text-transform:uppercase;color:var(--c-text-secondary);margin-bottom:.625rem;letter-spacing:.03125rem}.detail-col--actual .detail-col-title[data-v-897abb27]{color:#16a34a}.detail-row[data-v-897abb27]{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.detail-lbl[data-v-897abb27]{font-size:.85rem;color:var(--c-text-secondary)}.detail-val[data-v-897abb27]{font-size:.85rem;font-weight:600;color:var(--c-text)}.detail-delta[data-v-897abb27]{color:#d97706}.detail-notes[data-v-897abb27]{font-size:.85rem;color:var(--c-text-secondary);padding:.625rem .875rem;background:var(--c-bg-light);border-radius:6px;margin-bottom:.75rem}.detail-notes-edit[data-v-897abb27]{margin-bottom:.75rem}.detail-notes-edit label[data-v-897abb27]{font-size:.85rem;font-weight:500;color:var(--c-text);display:block;margin-bottom:.25rem}.detail-dluo[data-v-897abb27]{font-size:.8rem;color:var(--c-text-secondary);margin-bottom:.75rem}.form-input--inline[data-v-897abb27]{max-width:130px;padding:4px 8px;font-size:.85rem}.btn-warning[data-v-897abb27]{background:#f59e0b;color:#fff;font-weight:500}.btn-warning[data-v-897abb27]:hover:not(:disabled){background:#d97706}.reopen-modal-header[data-v-897abb27]{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.reopen-modal-icon[data-v-897abb27]{width:38px;height:38px;border-radius:50%;background:#fef3c7;color:#d97706;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;flex-shrink:0}.reopen-warning-box[data-v-897abb27]{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.85rem;color:#92400e}.reopen-warning-box ul[data-v-897abb27]{margin:.4rem 0 0;padding-left:1.2rem}.reopen-warning-box li[data-v-897abb27]{margin-bottom:.25rem}.btn-edit[data-v-897abb27]{background:var(--c-purple);color:#fff;font-weight:500}.btn-edit[data-v-897abb27]:hover:not(:disabled){background:#2563eb}.action-btn[data-v-897abb27]{padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:.875rem;transition:all .2s;display:flex;align-items:center;gap:.5rem}.btn-regenerate[data-v-897abb27]{background-color:#8b5cf6;color:#fff}.btn-regenerate[data-v-897abb27]:hover{background-color:#7c3aed}.btn-regenerate[data-v-897abb27]:disabled{background-color:#c4b5fd;cursor:not-allowed}.planning-modal--regenerate[data-v-897abb27]{max-width:620px;text-align:left}.planning-modal--regenerate .planning-modal-icon[data-v-897abb27]{margin-bottom:1.25rem}.planning-modal--regenerate .planning-modal-title[data-v-897abb27]{text-align:center}.planning-modal-rules[data-v-897abb27]{display:flex;flex-direction:column;gap:.875rem;margin:0 0 1.5rem}.planning-modal-rule-group[data-v-897abb27]{background:var(--c-bg-light);border:1px solid #e2e8f0;border-radius:10px;padding:.875rem 1rem}.planning-modal-rule-title[data-v-897abb27]{margin:0 0 .5rem;font-size:.8125rem;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.04em}.planning-modal-rule-list[data-v-897abb27]{margin:0;padding-left:1.125rem;color:#475569;font-size:.875rem;line-height:1.5}.planning-modal-rule-list li+li[data-v-897abb27]{margin-top:.375rem}.matrix-wrapper[data-v-05c32def]{width:100%}.empty[data-v-05c32def]{padding:2rem;text-align:center;color:#718096}.matrix-scroll[data-v-05c32def]{overflow-x:auto;border:1px solid #e5e7eb;border-radius:8px;max-height:75vh}.matrix-table[data-v-05c32def]{border-collapse:collapse;font-size:.8rem;font-variant-numeric:tabular-nums}.matrix-table th[data-v-05c32def],.matrix-table td[data-v-05c32def]{border:1px solid #e5e7eb;padding:.25rem .4rem;white-space:nowrap;text-align:center}.ref-col[data-v-05c32def]{font-weight:700;min-width:220px;text-align:left;padding-left:.6rem}.week-head[data-v-05c32def]{background:#2d3748;color:#fff;font-weight:600;font-size:.75rem;min-width:58px}.sticky-col[data-v-05c32def]{position:sticky;left:0;z-index:1;background:#fff}.sticky-head[data-v-05c32def]{position:sticky;top:0;z-index:2}thead .sticky-col[data-v-05c32def]{z-index:3}.virtual-row td[data-v-05c32def]{font-style:italic;border-top:2px dashed #9ca3af}.cell[data-v-05c32def]{min-width:58px}.stock-forecast-view[data-v-bfc7a460]{padding:24px;max-width:1600px;margin:0 auto}.page-header[data-v-bfc7a460]{margin-bottom:1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.subtitle[data-v-bfc7a460]{color:#718096;font-size:.875rem;margin:.25rem 0 0}.header-actions[data-v-bfc7a460]{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.horizon-fixed[data-v-bfc7a460]{font-size:.875rem;color:#2d3748;font-weight:600}.btn[data-v-bfc7a460]{padding:.5rem 1rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:.875rem}.btn-secondary[data-v-bfc7a460]{background:#f3f4f6;color:#2d3748;border:1px solid #e2e8f0}.btn-secondary[data-v-bfc7a460]:hover{background:#e5e7eb}.loading[data-v-bfc7a460]{padding:2rem;text-align:center;color:#718096}.order-readiness-view[data-v-04abc5ee]{padding:24px;max-width:1400px;margin:0 auto}.page-header[data-v-04abc5ee]{margin-bottom:1.25rem;gap:1rem}.header-actions[data-v-04abc5ee]{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.horizon-label[data-v-04abc5ee]{font-size:.875rem;color:var(--c-text);display:flex;align-items:center;gap:.4rem}.horizon-select[data-v-04abc5ee]{padding:.3rem .5rem;border:1px solid var(--c-border-strong);border-radius:6px;font-size:.875rem}.btn[data-v-04abc5ee]{padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer;font-weight:500;font-size:.875rem}.btn-secondary[data-v-04abc5ee]{background:var(--c-bg-subtle);color:var(--c-text);border:1px solid var(--c-border-strong)}.btn-secondary[data-v-04abc5ee]:hover{background:var(--c-border)}.kpi-grid[data-v-04abc5ee]{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:10px;margin-bottom:16px}.kpi-card[data-v-04abc5ee]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.kpi-ok[data-v-04abc5ee]{border-color:#86efac}.kpi-warn[data-v-04abc5ee]{border-color:#fcd34d}.kpi-danger[data-v-04abc5ee]{border-color:#fca5a5}.kpi-label[data-v-04abc5ee]{color:#718096;font-size:.78rem}.kpi-value[data-v-04abc5ee]{font-size:1.3rem;font-weight:700;color:#2d3748}.filters[data-v-04abc5ee]{display:flex;align-items:center;gap:8px;margin-bottom:10px}.filter-chip[data-v-04abc5ee]{padding:5px 13px;border:1.5px solid var(--c-border-strong);border-radius:999px;background:var(--c-bg-light);color:var(--c-text);font-size:.83rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.filter-chip[data-v-04abc5ee]:hover{background:var(--c-bg-subtle)}.filter-chip.active[data-v-04abc5ee]{background:var(--c-purple-dark);border-color:var(--c-purple-dark);color:#fff}.filter-chip.chip-warn.active[data-v-04abc5ee]{background:#d97706;border-color:#d97706;color:#fff}.filter-chip.chip-danger.active[data-v-04abc5ee]{background:#dc2626;border-color:#dc2626;color:#fff}.filter-chip.chip-ok.active[data-v-04abc5ee]{background:#16a34a;border-color:#16a34a;color:#fff}.table-wrapper[data-v-04abc5ee]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:auto}.readiness-table[data-v-04abc5ee]{width:100%;border-collapse:collapse;min-width:1150px}.readiness-table th[data-v-04abc5ee],.readiness-table td[data-v-04abc5ee]{border-bottom:1px solid #f1f5f9;padding:10px 12px;text-align:left;font-size:.9rem}.readiness-table th[data-v-04abc5ee]{background:var(--c-bg-light);color:#334155;font-weight:600;position:sticky;top:0;z-index:1}.text-right[data-v-04abc5ee]{text-align:right!important}.muted[data-v-04abc5ee]{color:#94a3b8;font-size:.78rem}.status-badge[data-v-04abc5ee]{display:inline-block;font-size:.78rem;font-weight:600;border-radius:999px;padding:3px 9px}.badge-on_time[data-v-04abc5ee]{background:#dcfce7;color:#166534}.badge-late[data-v-04abc5ee]{background:#fef3c7;color:#92400e}.badge-uncovered[data-v-04abc5ee]{background:#fee2e2;color:#991b1b}.row-late[data-v-04abc5ee]{background:#fffdf2}.row-uncovered[data-v-04abc5ee]{background:#fff5f5}.loading[data-v-04abc5ee],.error[data-v-04abc5ee],.empty-state[data-v-04abc5ee]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:18px}.error[data-v-04abc5ee]{color:#b91c1c;border-color:#fecaca}@media (max-width: 980px){.page-header[data-v-04abc5ee]{flex-direction:column;align-items:stretch}.header-actions[data-v-04abc5ee]{justify-content:space-between}.kpi-grid[data-v-04abc5ee]{grid-template-columns:repeat(2,minmax(150px,1fr))}}.location-view[data-v-50b0a3e4]{padding:1.5rem 2rem;max-width:100%;margin:0 auto}.page-header[data-v-50b0a3e4]{margin-bottom:1.25rem}.year-nav[data-v-50b0a3e4]{display:flex;align-items:center;gap:12px}.year-label[data-v-50b0a3e4]{font-size:1.1rem;font-weight:700;color:#1e293b;min-width:50px;text-align:center}.nav-btn[data-v-50b0a3e4]{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:6px 12px;font-size:.9rem;cursor:pointer;color:#475569;transition:all .15s}.nav-btn[data-v-50b0a3e4]:hover{background:#f1f5f9;border-color:#805ad5;color:#805ad5}.matrix-scroll[data-v-50b0a3e4]{overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.matrix-table[data-v-50b0a3e4]{border-collapse:separate;border-spacing:0;font-size:.8rem;min-width:100%}.sticky-col[data-v-50b0a3e4]{position:sticky;z-index:2}.col-name[data-v-50b0a3e4]{left:0;white-space:nowrap}.col-stock[data-v-50b0a3e4]{left:200px;border-right:2px solid #cbd5e1}.col-header[data-v-50b0a3e4]{z-index:4!important;background:#f8fafc!important}.matrix-table tbody .sticky-col[data-v-50b0a3e4]{background:var(--row-bg, white)}.matrix-table thead th[data-v-50b0a3e4]{padding:6px 8px;text-align:center;font-weight:600;color:#475569;border-bottom:2px solid #e2e8f0;background:#f8fafc;white-space:nowrap}.matrix-table thead .col-name[data-v-50b0a3e4],.matrix-table thead .col-stock[data-v-50b0a3e4]{text-align:left}.week-num[data-v-50b0a3e4]{font-size:.75rem;font-weight:700;color:#334155}.week-dates[data-v-50b0a3e4]{font-size:.65rem;font-weight:400;color:#94a3b8}.current-week[data-v-50b0a3e4]{background:#ede9fe!important;border-left:2px solid #805ad5;border-right:2px solid #805ad5}.clickable-week[data-v-50b0a3e4]{cursor:pointer;transition:background .15s}.clickable-week[data-v-50b0a3e4]:hover{background:#f1f5f9!important}.selected-week[data-v-50b0a3e4]{background:#e0e7ff!important;border-left:2px solid #4f46e5;border-right:2px solid #4f46e5}.matrix-table tbody tr[data-v-50b0a3e4]{transition:filter .15s}.matrix-table tbody tr[data-v-50b0a3e4]:hover{filter:brightness(.96)}.matrix-table td[data-v-50b0a3e4]{padding:5px 8px;border-bottom:1px solid #f1f5f9;white-space:nowrap;background:var(--row-bg, white)}.col-week[data-v-50b0a3e4]{min-width:72px;text-align:center}.data-cell[data-v-50b0a3e4]{font-weight:600;font-variant-numeric:tabular-nums;text-align:center}.cell-red[data-v-50b0a3e4]{background:#fecaca!important;color:#991b1b}.cell-orange[data-v-50b0a3e4]{background:#fed7aa!important;color:#9a3412}.eq-name[data-v-50b0a3e4]{font-weight:600;color:#1e293b;font-size:.78rem;overflow:hidden;text-overflow:ellipsis}.stock-cell[data-v-50b0a3e4]{white-space:nowrap}.stock-val[data-v-50b0a3e4]{font-weight:700;color:#334155;font-size:.8rem}.gear-btn[data-v-50b0a3e4]{background:none;border:none;cursor:pointer;font-size:.75rem;color:#94a3b8;padding:0 2px;margin-left:4px;line-height:1;opacity:0;transition:all .15s;vertical-align:middle}tr:hover .gear-btn[data-v-50b0a3e4]{opacity:1}.gear-btn[data-v-50b0a3e4]:hover{color:#805ad5}.details-toggle[data-v-50b0a3e4]{margin-top:1.25rem;text-align:center}.btn-details[data-v-50b0a3e4]{background:none;border:1px solid #e2e8f0;border-radius:6px;padding:6px 14px;font-size:.82rem;color:#64748b;cursor:pointer;transition:all .15s}.btn-details[data-v-50b0a3e4]:hover{border-color:#805ad5;color:#805ad5;background:#faf5ff}.list-section[data-v-50b0a3e4]{margin-top:1rem}.stats-bar[data-v-50b0a3e4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card[data-v-50b0a3e4]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 14px;display:flex;flex-direction:column;gap:4px;transition:all .2s;cursor:pointer}.stat-card[data-v-50b0a3e4]:hover{transform:translateY(-2px);box-shadow:0 3px 8px #0000001f}.stat-card.stat-volume[data-v-50b0a3e4]{cursor:default;border-left:3px solid #78909c}.stat-card.stat-en-cours.active[data-v-50b0a3e4]{border-color:#ff9800;background:linear-gradient(to bottom,#fff8e1,#fff)}.stat-card.stat-retourne.active[data-v-50b0a3e4]{border-color:#4caf50;background:linear-gradient(to bottom,#e8f5e9,#fff)}.stat-value[data-v-50b0a3e4]{font-size:1.15rem;font-weight:700;color:#1e293b;line-height:1.2}.stat-label[data-v-50b0a3e4]{font-size:.72rem;color:var(--c-text-secondary);line-height:1.3}.filters-row[data-v-50b0a3e4]{display:flex;gap:.75rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.search-input-wrapper[data-v-50b0a3e4]{position:relative;flex:1;min-width:220px}.search-icon[data-v-50b0a3e4]{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:.875rem}.search-input[data-v-50b0a3e4]{width:100%;padding:.5rem 36px;border:1px solid #e2e8f0;border-radius:6px;font-size:.9rem;outline:none;transition:border-color .2s;box-sizing:border-box}.search-input[data-v-50b0a3e4]:focus{border-color:var(--c-purple, #805ad5)}.search-clear[data-v-50b0a3e4]{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:#999;cursor:pointer;font-size:.875rem}.status-pills[data-v-50b0a3e4],.equipment-pills[data-v-50b0a3e4]{display:flex;gap:.5rem;flex-wrap:wrap}.pill-btn[data-v-50b0a3e4]{padding:.5rem 1.25rem;border-radius:6px;border:1px solid #e2e8f0;background:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s;color:var(--c-text-secondary, #64748b)}.pill-btn[data-v-50b0a3e4]:hover{background:#f1f5f9}.pill-btn.active[data-v-50b0a3e4]{background:var(--c-purple, #805ad5);border-color:var(--c-purple, #805ad5);color:#fff}.pill-count[data-v-50b0a3e4]{display:inline-block;background:#0000001f;border-radius:10px;padding:0 6px;font-size:.75rem;margin-left:4px;line-height:1.4}.pill-btn.active .pill-count[data-v-50b0a3e4]{background:#ffffff4d}.eq-pill[data-v-50b0a3e4]{font-size:.8125rem;padding:.4rem .75rem;white-space:nowrap}.table-container[data-v-50b0a3e4]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem;overflow-x:auto}.detail-table[data-v-50b0a3e4]{width:100%;border-collapse:collapse;font-size:.875rem}.detail-table thead[data-v-50b0a3e4]{background-color:#f5f5f5}.detail-table th[data-v-50b0a3e4]{padding:8px 10px;text-align:left;font-weight:600;color:var(--c-heading, #1e293b);border-bottom:2px solid #e2e8f0;white-space:nowrap}.detail-table th.sortable[data-v-50b0a3e4]{cursor:pointer;-webkit-user-select:none;user-select:none}.detail-table th.sortable[data-v-50b0a3e4]:hover{background-color:#ececec}.sort-icon[data-v-50b0a3e4]{font-size:.7rem;color:#999;margin-left:2px}.detail-table tbody tr[data-v-50b0a3e4]{border-bottom:1px solid #f0f0f0;transition:background-color .2s}.detail-table tbody tr[data-v-50b0a3e4]:hover{background-color:#f9f9f9}.detail-table td[data-v-50b0a3e4]{padding:7px 10px;vertical-align:middle}.row-overdue[data-v-50b0a3e4]{background-color:#fff5f5!important}.client-name[data-v-50b0a3e4]{font-weight:500;color:var(--c-heading, #1e293b)}.reference-field[data-v-50b0a3e4]{color:#666;font-size:.8125rem}.source-badge[data-v-50b0a3e4]{padding:3px 10px;border-radius:10px;font-size:.75rem;font-weight:600;display:inline-block}.source-prios[data-v-50b0a3e4]{background-color:#e3f2fd;color:#1565c0}.source-manual[data-v-50b0a3e4]{background-color:#f3e5f5;color:#7b1fa2}.status-badge[data-v-50b0a3e4]{padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;display:inline-block;text-transform:uppercase}.status-sorti[data-v-50b0a3e4]{background-color:#e3f2fd;color:#1565c0}.status-planifie[data-v-50b0a3e4]{background-color:#f3e5f5;color:#6a1b9a}.status-retourne[data-v-50b0a3e4]{background-color:#e8f5e9;color:#2e7d32}.duration-badge[data-v-50b0a3e4]{font-size:.8125rem;color:#555}.duration-overdue[data-v-50b0a3e4]{color:#c62828;font-weight:600}.action-buttons[data-v-50b0a3e4]{display:flex;gap:6px;flex-wrap:wrap}.btn-action[data-v-50b0a3e4]{padding:4px 10px;border:none;border-radius:4px;font-size:.8125rem;cursor:pointer;font-weight:500;transition:opacity .2s}.btn-action[data-v-50b0a3e4]:hover{opacity:.85}.btn-deliver[data-v-50b0a3e4]{background:#4caf50;color:#fff}.btn-edit[data-v-50b0a3e4]{background:#e3f2fd;color:#1565c0}.btn-cancel[data-v-50b0a3e4]{background:#ffebee;color:#c62828}.modal-overlay[data-v-50b0a3e4]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:1000;display:flex;align-items:center;justify-content:center}.modal-content[data-v-50b0a3e4]{background:#fff;border-radius:10px;width:90%;max-width:620px;max-height:90vh;overflow-y:auto}.modal-content.modal-small[data-v-50b0a3e4]{max-width:420px}.modal-header[data-v-50b0a3e4]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid #e2e8f0}.modal-header h2[data-v-50b0a3e4]{margin:0;font-size:1.1rem;color:var(--c-heading, #1e293b)}.btn-close[data-v-50b0a3e4]{background:none;border:none;font-size:1.1rem;cursor:pointer;color:#718096;padding:4px}.modal-body[data-v-50b0a3e4]{padding:20px 24px}.modal-footer[data-v-50b0a3e4]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.order-form[data-v-50b0a3e4]{display:flex;flex-direction:column;gap:16px}.form-row[data-v-50b0a3e4]{display:flex;gap:16px}.form-row .form-group[data-v-50b0a3e4]{flex:1}.form-group[data-v-50b0a3e4]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-50b0a3e4]{font-size:.875rem;font-weight:600;color:var(--c-heading, #1e293b)}.form-input[data-v-50b0a3e4],.form-textarea[data-v-50b0a3e4]{padding:10px;border:2px solid #e2e8f0;border-radius:6px;font-size:.875rem;outline:none;transition:border-color .2s;width:100%;box-sizing:border-box}.form-input[data-v-50b0a3e4]:focus,.form-textarea[data-v-50b0a3e4]:focus{border-color:#4caf50}.btn-primary[data-v-50b0a3e4]{background:#4caf50;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer}.btn-primary[data-v-50b0a3e4]:disabled{opacity:.6;cursor:not-allowed}.btn-cancel-form[data-v-50b0a3e4]{background:#f5f5f5;color:#555;border:1px solid #ddd;padding:10px 20px;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer}.popover-box[data-v-50b0a3e4]{background:#fff;border-radius:10px;padding:16px 20px;box-shadow:0 8px 24px #00000026;min-width:260px}.popover-title[data-v-50b0a3e4]{font-size:.85rem;font-weight:600;color:#1e293b;margin-bottom:10px}.loading-state[data-v-50b0a3e4],.error-state[data-v-50b0a3e4],.empty-state[data-v-50b0a3e4]{text-align:center;padding:40px;color:#718096;font-size:.9rem}.error-state[data-v-50b0a3e4]{color:#c62828}.abv-card[data-v-e99ba80e]{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014}.abv-card h3[data-v-e99ba80e]{margin:0 0 1.25rem;font-size:1.1rem}.density-inputs[data-v-e99ba80e]{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1rem}.density-col[data-v-e99ba80e]{background:#f8f9fa;border-radius:10px;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.density-header[data-v-e99ba80e]{display:flex;align-items:center;gap:.5rem}.density-label[data-v-e99ba80e]{font-weight:700;font-size:1rem;padding:.15rem .5rem;border-radius:4px}.density-label.di[data-v-e99ba80e]{background:#e3f2fd;color:#1565c0}.density-label.df[data-v-e99ba80e]{background:#fce4ec;color:#c62828}.density-sublabel[data-v-e99ba80e]{font-size:.75rem;color:#888}.density-input-row[data-v-e99ba80e]{display:flex;align-items:center;gap:.5rem}.density-input[data-v-e99ba80e]{flex:1;padding:.5rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;font-weight:500}.conversion-hint[data-v-e99ba80e]{font-size:.8rem;color:#888;white-space:nowrap}.density-status[data-v-e99ba80e]{font-size:.8rem}.status-recorded[data-v-e99ba80e]{color:#2e7d32;font-weight:500}.status-missing[data-v-e99ba80e]{color:#999;font-style:italic}.status-recipe[data-v-e99ba80e]{color:#1565c0;cursor:pointer;font-weight:500;transition:color .15s}.status-recipe[data-v-e99ba80e]:hover{color:#0d47a1}.prefill-action[data-v-e99ba80e]{font-weight:400;font-size:.75rem;text-decoration:underline}.btn[data-v-e99ba80e]{cursor:pointer;border:none;border-radius:6px;padding:.45rem .75rem;font-size:.85rem}.btn[data-v-e99ba80e]:disabled{opacity:.4;cursor:not-allowed}.btn-record[data-v-e99ba80e]{background:#4472c4;color:#fff;align-self:flex-start}.btn-sm[data-v-e99ba80e]{padding:.3rem .7rem;font-size:.8rem;background:#eee}.unit-selector[data-v-e99ba80e]{display:flex;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid #eee;font-size:.85rem}.unit-selector label[data-v-e99ba80e]{color:#666}.unit-selector button[data-v-e99ba80e]{padding:.25rem .6rem;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;font-size:.8rem}.unit-selector button.active[data-v-e99ba80e]{background:#4472c4;color:#fff;border-color:#4472c4}.abv-results[data-v-e99ba80e]{margin-bottom:1rem}.result-grid[data-v-e99ba80e]{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.75rem}.result-grid-3[data-v-e99ba80e]{grid-template-columns:1fr 1fr 1fr}.result-item[data-v-e99ba80e]{background:#f8f9fa;border-radius:8px;padding:.75rem;text-align:center}.result-highlight[data-v-e99ba80e]{background:#e8f5e9;border:2px solid #4caf50}.result-label[data-v-e99ba80e]{display:block;font-size:.75rem;color:#666;margin-bottom:.25rem}.result-value[data-v-e99ba80e]{display:block;font-size:1.3rem;font-weight:700}.result-value.taxable[data-v-e99ba80e]{color:#2e7d32}.result-measured[data-v-e99ba80e]{background:#fff3e0;border:1px solid #ff9800}.result-source[data-v-e99ba80e]{font-size:.6rem;color:#999;font-weight:400}.result-hint[data-v-e99ba80e]{display:block;font-size:.65rem;color:#999;font-style:italic;margin-top:.15rem}.deviation-alert[data-v-e99ba80e]{display:flex;align-items:flex-start;gap:.5rem;background:#fff3e0;border:1px solid #ff9800;border-radius:8px;padding:.75rem 1rem;margin-bottom:.75rem;font-size:.8rem;color:#e65100;line-height:1.4}.deviation-icon[data-v-e99ba80e]{font-size:1.1rem;flex-shrink:0}.dgddi-badge[data-v-e99ba80e]{display:inline-block;background:#4caf50;color:#fff;font-size:.6rem;padding:.1rem .3rem;border-radius:3px;vertical-align:middle;margin-left:.25rem}.calc-actions[data-v-e99ba80e]{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.method-select[data-v-e99ba80e]{padding:.3rem .5rem;border:1px solid #ddd;border-radius:6px;font-size:.85rem}.measurements-details[data-v-e99ba80e]{margin-top:.5rem}.measurements-toggle[data-v-e99ba80e]{font-size:.85rem;color:#666;cursor:pointer;padding:.4rem 0}.measurements-table[data-v-e99ba80e]{width:100%;border-collapse:collapse;font-size:.8rem;margin-top:.5rem}.measurements-table th[data-v-e99ba80e],.measurements-table td[data-v-e99ba80e]{padding:.35rem .5rem;border-bottom:1px solid #eee;text-align:left}.measurements-table th[data-v-e99ba80e]{color:#888;font-weight:500}.type-badge[data-v-e99ba80e]{display:inline-block;padding:.1rem .35rem;border-radius:3px;font-size:.7rem;font-weight:600}.type-badge.initial[data-v-e99ba80e]{background:#e3f2fd;color:#1565c0}.type-badge.final[data-v-e99ba80e]{background:#fce4ec;color:#c62828}.type-badge.intermediate[data-v-e99ba80e]{background:#f3e5f5;color:#6a1b9a}.btn-action[data-v-e99ba80e]{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;background:none;border-radius:6px;cursor:pointer;color:#a0aec0;transition:all .15s ease}.btn-action-delete[data-v-e99ba80e]:hover{background:#fef2f2;color:#dc2626}.modal-overlay[data-v-e99ba80e]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content[data-v-e99ba80e]{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:700px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-confirm[data-v-e99ba80e]{max-width:500px}.modal-header[data-v-e99ba80e]{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e2e8f0}.modal-header h2[data-v-e99ba80e]{margin:0;font-size:1.25rem;font-weight:600;color:#1a202c}.btn-close[data-v-e99ba80e]{background:none;border:none;font-size:1.5rem;color:#a0aec0;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.btn-close[data-v-e99ba80e]:hover{background:#edf2f7;color:#2d3748}.modal-body[data-v-e99ba80e]{padding:24px}.modal-body p[data-v-e99ba80e]{margin:0 0 .75rem;color:#4a5568;line-height:1.5}.warning-text[data-v-e99ba80e]{color:#dc3545;font-weight:500;font-size:.9rem}.modal-footer[data-v-e99ba80e]{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0}.btn-secondary[data-v-e99ba80e]{padding:10px 20px;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;border:1px solid #e2e8f0;background:#edf2f7;color:#4a5568}.btn-secondary[data-v-e99ba80e]:hover{background:#cbd5e0}.btn-danger[data-v-e99ba80e]{padding:10px 20px;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;border:none;background:#dc3545;color:#fff}.btn-danger[data-v-e99ba80e]:hover:not(:disabled){background:#c82333}.btn-danger[data-v-e99ba80e]:disabled{opacity:.6;cursor:not-allowed}.brewing-session-detail[data-v-ab3d49dd]{padding:20px;max-width:1400px;margin:0 auto}.header[data-v-ab3d49dd]{display:flex;align-items:center;gap:20px;margin-bottom:30px}.back-btn[data-v-ab3d49dd]{padding:10px 20px;background:#6c757d;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;transition:background .2s}.back-btn[data-v-ab3d49dd]:hover{background:#5a6268}h1[data-v-ab3d49dd]{margin:0;color:var(--c-heading);font-size:1.5rem}.loading[data-v-ab3d49dd],.loading-small[data-v-ab3d49dd]{text-align:center;color:var(--c-text-secondary);padding:40px}.loading-small[data-v-ab3d49dd]{padding:20px}.error[data-v-ab3d49dd]{color:#f44336;padding:20px;background:#ffebee;border-radius:8px;margin:20px 0}.content[data-v-ab3d49dd]{display:flex;flex-direction:column;gap:20px}.section[data-v-ab3d49dd]{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 4px #0000001a}.section h2[data-v-ab3d49dd]{margin:0 0 20px;color:var(--c-heading);font-size:1.2rem}.section-header[data-v-ab3d49dd]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h2[data-v-ab3d49dd]{margin:0}.info-grid[data-v-ab3d49dd]{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px;margin-bottom:15px}.info-card[data-v-ab3d49dd]{display:flex;flex-direction:column;gap:5px;padding:15px;background:#f8f9fa;border-radius:6px;border-left:4px solid var(--c-purple)}.info-card--levain[data-v-ab3d49dd]{border-left-color:#10b981;background:#ecfdf5}.levain-code[data-v-ab3d49dd]{font-family:Courier New,monospace;font-size:.9375rem;font-weight:700;color:#065f46;letter-spacing:.5px}.info-card .label[data-v-ab3d49dd]{font-size:.8125rem;color:var(--c-text-secondary);font-weight:500}.info-card .value[data-v-ab3d49dd]{font-size:1rem;color:var(--c-heading);font-weight:600}.info-card.editable[data-v-ab3d49dd]{cursor:pointer;transition:background .15s}.info-card.editable[data-v-ab3d49dd]:hover{background:#eef2ff;border-left-color:#4472c4}.inline-edit[data-v-ab3d49dd]{width:120px;padding:.3rem .5rem;border:1px solid #4472C4;border-radius:4px;font-size:.9375rem;font-weight:600;outline:none}.dgddi-badge[data-v-ab3d49dd]{display:inline-block;background:#4caf50;color:#fff;font-size:.6rem;padding:.1rem .3rem;border-radius:3px;vertical-align:middle;margin-left:.25rem}.result-highlight[data-v-ab3d49dd]{border:2px solid #4caf50!important;background:#e8f5e9!important}.edit-hint[data-v-ab3d49dd]{display:block;font-size:.6875rem;color:var(--c-muted);font-style:italic;margin-top:2px}.readonly-hint[data-v-ab3d49dd]{cursor:default}.taxable-value[data-v-ab3d49dd]{color:#2e7d32}.auto-close-hint[data-v-ab3d49dd]{font-size:.75rem;color:var(--c-text-secondary);font-style:italic;padding:4px 10px;background:#f0fdf4;border-radius:6px;border:1px solid #bbf7d0}.batch-input[data-v-ab3d49dd]{width:140px;padding:5px 8px;border:1px solid #ced4da;border-radius:4px;font-size:.8125rem;font-family:SF Mono,Fira Code,monospace}.batch-input[data-v-ab3d49dd]:focus{border-color:#4472c4;outline:none;box-shadow:0 0 0 2px #4472c426}.col-batch[data-v-ab3d49dd]{min-width:150px}.recipe-link[data-v-ab3d49dd]{color:var(--c-purple);text-decoration:none;font-weight:600}.recipe-link[data-v-ab3d49dd]:hover{text-decoration:underline}.status-badge[data-v-ab3d49dd]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.planned[data-v-ab3d49dd]{background:#2196f3;color:#fff}.status-badge.in_progress[data-v-ab3d49dd]{background:#ff9800;color:#fff}.status-badge.completed[data-v-ab3d49dd]{background:#4caf50;color:#fff}.status-badge.cancelled[data-v-ab3d49dd]{background:#f44336;color:#fff}.edit-actions[data-v-ab3d49dd]{display:flex;gap:10px}.btn[data-v-ab3d49dd]{padding:10px 20px;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary[data-v-ab3d49dd]{background:var(--c-purple);color:#fff}.btn-primary[data-v-ab3d49dd]:hover{background:#5568d3}.btn-success[data-v-ab3d49dd]{background:#4caf50;color:#fff}.btn-success[data-v-ab3d49dd]:hover{background:#45a049}.btn-secondary[data-v-ab3d49dd]{background:#6c757d;color:#fff}.btn-secondary[data-v-ab3d49dd]:hover{background:#5a6268}.ingredients-table[data-v-ab3d49dd],.movements-table[data-v-ab3d49dd]{width:100%;border-collapse:collapse;font-size:.875rem}.ingredients-table thead[data-v-ab3d49dd],.movements-table thead[data-v-ab3d49dd]{background:#f8f9fa}.ingredients-table th[data-v-ab3d49dd],.movements-table th[data-v-ab3d49dd]{padding:12px;text-align:left;font-weight:600;color:var(--c-heading);border-bottom:2px solid #dee2e6}.ingredients-table tbody tr[data-v-ab3d49dd],.movements-table tbody tr[data-v-ab3d49dd]{border-bottom:1px solid #e9ecef;transition:background-color .2s}.ingredients-table tbody tr[data-v-ab3d49dd]:hover,.movements-table tbody tr[data-v-ab3d49dd]:hover{background:#f8f9fa}.ingredients-table tbody tr.low-stock[data-v-ab3d49dd]{background:#fff3cd}.ingredients-table td[data-v-ab3d49dd],.movements-table td[data-v-ab3d49dd]{padding:12px;vertical-align:middle}.ingredient-type-badge[data-v-ab3d49dd]{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.6875rem;font-weight:600;text-transform:uppercase}.ingredient-type-badge.malt[data-v-ab3d49dd]{background:#ffecb3;color:#f57c00}.ingredient-type-badge.hop[data-v-ab3d49dd]{background:#c8e6c9;color:#388e3c}.ingredient-type-badge.yeast[data-v-ab3d49dd]{background:#e1bee7;color:#7b1fa2}.ingredient-type-badge.adjunct[data-v-ab3d49dd]{background:#b3e5fc;color:#0277bd}.ingredient-name[data-v-ab3d49dd]{font-weight:500;color:var(--c-heading)}.text-center[data-v-ab3d49dd],.ingredients-table th.text-center[data-v-ab3d49dd],.ingredients-table td.text-center[data-v-ab3d49dd],.movements-table th.text-center[data-v-ab3d49dd],.movements-table td.text-center[data-v-ab3d49dd]{text-align:center}.text-right[data-v-ab3d49dd]{text-align:right}.text-danger[data-v-ab3d49dd]{color:#f44336}.text-success[data-v-ab3d49dd]{color:#4caf50}.warning-icon[data-v-ab3d49dd]{margin-left:5px}.edit-cell input[data-v-ab3d49dd]{width:100%;padding:8px;border:1px solid #ced4da;border-radius:4px;font-size:.875rem}.quantity-input[data-v-ab3d49dd],.volume-input[data-v-ab3d49dd]{width:100%;max-width:200px;padding:10px;border:1px solid #ced4da;border-radius:6px;font-size:.875rem}.consumption-info[data-v-ab3d49dd],.production-info[data-v-ab3d49dd]{margin-top:20px}.info-box[data-v-ab3d49dd]{padding:15px;border-radius:6px;border-left:4px solid}.info-box.success[data-v-ab3d49dd]{background:#d4edda;border-color:#28a745;color:#155724}.info-box.info[data-v-ab3d49dd]{background:#e8f4fd;border-color:#4472c4;color:#1e3a5f}.batch-input--inline[data-v-ab3d49dd]{width:130px;font-size:.75rem}.info-box strong[data-v-ab3d49dd]{display:block;margin-bottom:5px}.production-form[data-v-ab3d49dd]{display:flex;flex-direction:column;gap:15px;max-width:400px}.production-form label[data-v-ab3d49dd]{display:flex;flex-direction:column;gap:5px;font-weight:500}.movement-type-badge[data-v-ab3d49dd]{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.6875rem;font-weight:600;text-transform:uppercase}.movement-type-badge.success[data-v-ab3d49dd]{background:#4caf50;color:#fff}.movement-type-badge.danger[data-v-ab3d49dd]{background:#f44336;color:#fff}.movement-type-badge.warning[data-v-ab3d49dd]{background:#ff9800;color:#fff}.movement-type-badge.secondary[data-v-ab3d49dd]{background:#6c757d;color:#fff}.reschedule-reason[data-v-ab3d49dd]{max-width:300px;white-space:pre-wrap;font-size:.85rem;color:#4b5563}.no-data[data-v-ab3d49dd]{text-align:center;color:var(--c-text-secondary);padding:40px;font-style:italic}.no-data-small[data-v-ab3d49dd]{color:var(--c-text-secondary);padding:10px 0;font-style:italic;font-size:.8125rem}.actions-banner[data-v-ab3d49dd]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px 22px;border-radius:8px;border-left:5px solid var(--c-purple);background:#f0f4ff;box-shadow:0 2px 6px #00000014}.actions-banner.banner-planned[data-v-ab3d49dd]{border-left-color:#2196f3;background:#e8f4fd}.actions-banner.banner-in-progress[data-v-ab3d49dd]{border-left-color:#ff9800;background:#fff8ee}.actions-banner.banner-completed[data-v-ab3d49dd]{border-left-color:#4caf50;background:#f0fdf4}.actions-banner.banner-cancelled[data-v-ab3d49dd]{border-left-color:#9e9e9e;background:#f5f5f5}.banner-left[data-v-ab3d49dd]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.banner-beer-name[data-v-ab3d49dd]{font-size:1rem;font-weight:700;color:#1a202c}.banner-dot[data-v-ab3d49dd]{color:var(--c-muted);font-size:1.125rem}.banner-volume[data-v-ab3d49dd],.banner-brew-count[data-v-ab3d49dd]{font-size:.875rem;color:#555;font-weight:500}.banner-status-badge[data-v-ab3d49dd]{display:inline-block;padding:3px 12px;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase}.banner-status-badge.planned[data-v-ab3d49dd]{background:#2196f3;color:#fff}.banner-status-badge.in_progress[data-v-ab3d49dd]{background:#ff9800;color:#fff}.banner-status-badge.completed[data-v-ab3d49dd]{background:#4caf50;color:#fff}.banner-status-badge.cancelled[data-v-ab3d49dd]{background:#9e9e9e;color:#fff}.banner-actions[data-v-ab3d49dd]{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn-start-banner[data-v-ab3d49dd]{background:var(--c-purple);color:#fff;padding:8px 18px;font-weight:600;font-size:.875rem}.btn-start-banner[data-v-ab3d49dd]:hover:not(:disabled){background:#5568d3}.btn-close-banner[data-v-ab3d49dd]{background:#ff9800;color:#fff;padding:8px 18px;font-weight:600;font-size:.875rem}.btn-close-banner[data-v-ab3d49dd]:hover:not(:disabled){background:#e68900}.btn-cancel-banner[data-v-ab3d49dd]{background:#fff;color:#dc3545;border:1.5px solid #dc3545;padding:7px 16px;font-weight:600;font-size:.8125rem}.btn-cancel-banner[data-v-ab3d49dd]:hover:not(:disabled){background:#fdf0f0}.btn-force-transfer-banner[data-v-ab3d49dd]{background:#fff;color:#d97706;border:1.5px solid #d97706;padding:7px 16px;font-weight:600;font-size:.8125rem}.btn-force-transfer-banner[data-v-ab3d49dd]:hover:not(:disabled){background:#fffbeb}.modal-force-transfer[data-v-ab3d49dd]{max-width:540px}.modal-force-transfer-header[data-v-ab3d49dd]{display:flex;align-items:center;gap:16px;padding-bottom:18px;border-bottom:2px solid #f0f0f0;margin-bottom:20px}.modal-force-transfer-icon[data-v-ab3d49dd]{width:42px;height:42px;border-radius:50%;background:#fef3c7;color:#d97706;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}.modal-force-transfer-subtitle[data-v-ab3d49dd]{color:#666;font-size:.85rem;margin:2px 0 0}.force-transfer-info-box[data-v-ab3d49dd]{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:14px 16px;margin-bottom:18px;font-size:.875rem;color:#92400e}.force-transfer-tanks[data-v-ab3d49dd]{display:flex;align-items:center;gap:10px;margin-top:10px}.tank-chip[data-v-ab3d49dd]{padding:4px 10px;border-radius:20px;font-size:.8rem;font-weight:600}.tank-chip.current[data-v-ab3d49dd]{background:#e0e7ff;color:#3730a3}.tank-chip.next[data-v-ab3d49dd]{background:#d1fae5;color:#065f46}.transfer-arrow[data-v-ab3d49dd]{color:#d97706;font-size:1.2rem;font-weight:700}.btn-force-transfer[data-v-ab3d49dd]{background:#d97706;color:#fff;border:none;padding:9px 20px;font-weight:600}.btn-force-transfer[data-v-ab3d49dd]:hover:not(:disabled){background:#b45309}.banner-error[data-v-ab3d49dd]{width:100%;color:#dc3545;font-size:.8125rem;margin-top:4px}.modal-cancel[data-v-ab3d49dd]{max-width:560px}.modal-cancel-header[data-v-ab3d49dd]{display:flex;align-items:center;gap:16px;padding-bottom:18px;border-bottom:2px solid #f0f0f0;margin-bottom:20px}.modal-cancel-icon[data-v-ab3d49dd]{width:42px;height:42px;border-radius:50%;background:#fee2e2;color:#dc2626;font-size:1.25rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-cancel-header h3[data-v-ab3d49dd]{margin:0 0 4px;font-size:1.25rem;color:#1a202c}.modal-cancel-subtitle[data-v-ab3d49dd]{margin:0;font-size:.875rem;color:var(--c-text-secondary)}.cancel-info-box[data-v-ab3d49dd]{border-radius:6px;padding:14px 16px;font-size:.875rem;margin-bottom:16px}.cancel-info-box ul[data-v-ab3d49dd]{margin:8px 0 0;padding-left:18px;line-height:1.7}.cancel-planned[data-v-ab3d49dd]{background:#eff6ff;border:1px solid #bfdbfe;color:var(--c-purple-dark)}.cancel-in-progress[data-v-ab3d49dd]{background:#fff7ed;border:1px solid #fed7aa;color:#92400e}.btn-danger[data-v-ab3d49dd]{background:#dc3545;color:#fff}.btn-danger[data-v-ab3d49dd]:hover:not(:disabled){background:#c82333}.btn-warning[data-v-ab3d49dd]{background:#ff9800;color:#fff}.btn-warning[data-v-ab3d49dd]:hover{background:#e68900}.status-done[data-v-ab3d49dd]{font-size:.9375rem;color:#444}.error-inline[data-v-ab3d49dd]{color:#f44336;margin-top:10px;font-size:.8125rem}.modal-overlay[data-v-ab3d49dd]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-ab3d49dd]{background:#fff;border-radius:10px;padding:30px;max-width:700px;width:95%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.modal-box h3[data-v-ab3d49dd]{margin:0 0 20px;color:var(--c-heading);font-size:1.25rem}.modal-box h4[data-v-ab3d49dd]{margin:20px 0 10px;color:var(--c-heading)}.modal-form[data-v-ab3d49dd]{display:flex;flex-direction:column;gap:15px}.form-row[data-v-ab3d49dd]{display:flex;flex-direction:column;gap:6px}.form-row label[data-v-ab3d49dd]{font-weight:500;font-size:.875rem;color:#555}.form-input[data-v-ab3d49dd]{padding:10px;border:1px solid #ced4da;border-radius:6px;font-size:.875rem;max-width:250px}.modal-actions[data-v-ab3d49dd]{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.close-ingredients-table[data-v-ab3d49dd]{width:100%;border-collapse:collapse;font-size:.8125rem}.close-ingredients-table th[data-v-ab3d49dd]{padding:8px 10px;text-align:left;background:#f8f9fa;border-bottom:2px solid #dee2e6;font-weight:600}.close-ingredients-table td[data-v-ab3d49dd]{padding:8px 10px;border-bottom:1px solid #e9ecef}.qty-input[data-v-ab3d49dd]{width:90px;padding:6px;border:1px solid #ced4da;border-radius:4px;font-size:.8125rem}.batch-input[data-v-ab3d49dd]{width:120px;padding:6px;border:1px solid #ced4da;border-radius:4px;font-size:.8125rem}.modal-start[data-v-ab3d49dd]{max-width:780px}.modal-start-header[data-v-ab3d49dd]{display:flex;align-items:center;gap:16px;padding-bottom:20px;border-bottom:2px solid #f0f0f0;margin-bottom:20px}.modal-start-icon[data-v-ab3d49dd]{font-size:2.5rem;line-height:1;flex-shrink:0}.modal-start-header h3[data-v-ab3d49dd]{margin:0 0 6px;font-size:1.375rem;color:#1a202c}.modal-start-subtitle[data-v-ab3d49dd]{margin:0;font-size:.9375rem;color:#555;display:flex;align-items:center;gap:10px}.brew-count-badge[data-v-ab3d49dd]{background:var(--c-purple);color:#fff;padding:2px 10px;border-radius:20px;font-size:.75rem;font-weight:700}.start-date-section[data-v-ab3d49dd]{margin-bottom:18px;padding:14px 16px;border:1px solid #dbe4f0;border-radius:10px;background:#f8fbff}.start-date-label[data-v-ab3d49dd]{display:block;margin-bottom:8px;font-size:.8125rem;font-weight:600;color:var(--c-heading)}.start-date-input[data-v-ab3d49dd]{width:220px;max-width:100%;padding:9px 10px;border:1px solid #c8d6e5;border-radius:8px;font-size:.875rem;color:#1a202c;background:#fff}.start-date-help[data-v-ab3d49dd]{margin:8px 0 0;font-size:.75rem;color:#607080}.start-ingredients-section[data-v-ab3d49dd]{margin-bottom:20px}.start-section-title[data-v-ab3d49dd]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:.9375rem;font-weight:600;color:var(--c-heading)}.start-section-actions[data-v-ab3d49dd]{display:flex;align-items:center;gap:12px}.start-help-text[data-v-ab3d49dd]{font-size:.75rem;color:#888;font-weight:400}.btn-reset-recipe[data-v-ab3d49dd]{background:none;border:1px solid #adb5bd;border-radius:5px;padding:4px 10px;font-size:.75rem;color:#495057;cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap}.btn-reset-recipe[data-v-ab3d49dd]:hover{background:#f1f3f5;border-color:#868e96}.start-outofstock-notice[data-v-ab3d49dd]{background:#fff3cd;border:1px solid #ffc107;border-radius:5px;padding:7px 12px;font-size:.75rem;color:#7d5a00;margin-bottom:10px}.start-all-removed[data-v-ab3d49dd]{display:flex;align-items:center;gap:12px;justify-content:center;padding:16px;background:#f8f9fa;border-radius:6px;border:1px dashed #ced4da}.start-ingredients-table[data-v-ab3d49dd]{width:100%;border-collapse:collapse;font-size:.875rem}.start-ingredients-table thead[data-v-ab3d49dd]{background:#f8f9fa}.start-ingredients-table th[data-v-ab3d49dd]{padding:10px 12px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6}.start-ingredients-table th.col-qty[data-v-ab3d49dd],.start-ingredients-table th.col-stock[data-v-ab3d49dd]{text-align:center}.start-ingredients-table th.col-del[data-v-ab3d49dd],.start-ingredients-table td.col-del[data-v-ab3d49dd]{width:36px;text-align:center;padding:0 6px}.btn-del-ingredient[data-v-ab3d49dd]{background:none;border:none;color:#adb5bd;font-size:1.125rem;line-height:1;cursor:pointer;padding:2px 6px;border-radius:4px;transition:color .15s,background .15s}.btn-del-ingredient[data-v-ab3d49dd]:hover{color:#dc3545;background:#fff0f0}.add-ing-footer[data-v-ab3d49dd]{display:flex;align-items:center;gap:12px;margin-top:8px}.btn-add-ingredient[data-v-ab3d49dd]{background:none;border:1px dashed #adb5bd;border-radius:5px;padding:5px 14px;font-size:.8125rem;color:#495057;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.btn-add-ingredient[data-v-ab3d49dd]:hover:not(:disabled){background:#f1f3f5;border-color:var(--c-purple);color:var(--c-purple)}.add-ing-select-footer[data-v-ab3d49dd]{flex:1;max-width:340px;padding:7px 10px;border:1px dashed #adb5bd;border-radius:6px;font-size:.8125rem;color:#495057;background:#fff;cursor:pointer;transition:border-color .15s}.add-ing-select-footer[data-v-ab3d49dd]:focus{outline:none;border-color:var(--c-purple);box-shadow:0 0 0 3px #667eea26}.add-ing-select-footer[data-v-ab3d49dd]:disabled{opacity:.4;cursor:default}.row-new-ing[data-v-ab3d49dd]{background:#f0f7ff}.row-new-ing .qty-input--start[data-v-ab3d49dd]{border-color:var(--c-purple);box-shadow:0 0 0 2px #667eea33}.start-ingredients-table tbody tr[data-v-ab3d49dd]{border-bottom:1px solid #e9ecef;transition:background .15s}.start-ingredients-table tbody tr[data-v-ab3d49dd]:hover{background:#f8f9fa}.start-ingredients-table tbody tr.row-low-stock[data-v-ab3d49dd]{background:#fff8f0}.start-ingredients-table td[data-v-ab3d49dd]{padding:10px 12px;vertical-align:middle}.qty-input--start[data-v-ab3d49dd]{width:100px;padding:7px 10px;border:1px solid #ced4da;border-radius:6px;font-size:.875rem;text-align:right;transition:border-color .2s}.qty-input--start[data-v-ab3d49dd]:focus{outline:none;border-color:var(--c-purple);box-shadow:0 0 0 3px #667eea26}.stock-cell[data-v-ab3d49dd]{font-weight:500}.stock-ok[data-v-ab3d49dd]{color:#28a745}.stock-insufficient[data-v-ab3d49dd]{color:#dc3545;font-weight:600}.start-slurry-banner[data-v-ab3d49dd]{background:#e8f5e9;border:1px solid #66bb6a;border-left:4px solid #388e3c;border-radius:6px;padding:10px 16px;font-size:.8125rem;color:#1b5e20;margin:12px 0 0;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.start-slurry-banner code[data-v-ab3d49dd]{background:#c8e6c9;border-radius:4px;padding:1px 6px;font-size:.8rem}.start-slurry-hint[data-v-ab3d49dd]{color:#2e7d32;font-style:italic}.start-slurry-row[data-v-ab3d49dd]{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.start-levain-code-row[data-v-ab3d49dd]{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}.start-levain-code-label[data-v-ab3d49dd]{font-size:.75rem;font-weight:600;white-space:nowrap;color:#2e7d32}.start-levain-code-input[data-v-ab3d49dd]{flex:1;min-width:200px;padding:4px 8px;border:1px solid #a5d6a7;border-radius:4px;font-size:.8rem;font-family:monospace;background:#f1f8e9;color:#1b5e20}.start-slurry-banner--overridden[data-v-ab3d49dd]{background:#fff8e1;border-color:#ffa000;border-left-color:#e65100;color:#e65100}.start-slurry-banner--overridden .start-slurry-hint[data-v-ab3d49dd]{color:#bf360c}.btn-slurry-toggle[data-v-ab3d49dd]{margin-left:auto;background:none;border:1px solid currentColor;border-radius:4px;padding:3px 10px;font-size:.75rem;cursor:pointer;white-space:nowrap;color:inherit}.btn-slurry-toggle[data-v-ab3d49dd]:hover{opacity:.75}.start-dryyeast-banner[data-v-ab3d49dd]{background:#e3f2fd;border:1px solid #64b5f6;border-left:4px solid #1976d2;border-radius:6px;padding:10px 16px;font-size:.8125rem;color:#0d47a1;margin:12px 0 0}.start-warning-box[data-v-ab3d49dd]{background:#fff3cd;border:1px solid #ffc107;border-left:4px solid #e6a817;border-radius:6px;padding:12px 16px;font-size:.8125rem;color:#7d5a00;margin:20px 0 0}.btn-start[data-v-ab3d49dd]{background:linear-gradient(135deg,var(--c-purple) 0%,#5568d3 100%);color:#fff;font-weight:600;padding:10px 24px}.btn-start[data-v-ab3d49dd]:hover:not(:disabled){background:linear-gradient(135deg,#5568d3,#4557c2);transform:translateY(-1px);box-shadow:0 4px 12px #667eea59}.btn-start[data-v-ab3d49dd]:disabled{opacity:.65;cursor:not-allowed}.packaging-cards[data-v-ab3d49dd]{display:flex;flex-wrap:wrap;gap:15px}.packaging-card[data-v-ab3d49dd]{padding:16px 20px;border-radius:8px;border-left:4px solid var(--c-purple);background:#f8f9fa;min-width:160px;display:flex;flex-direction:column;gap:4px}.packaging-card.pkg-bottling[data-v-ab3d49dd]{border-left-color:var(--c-purple);background:#eff6ff}.packaging-card.pkg-kegging[data-v-ab3d49dd]{border-left-color:#16a34a;background:#f0fdf4}.packaging-card.pkg-bulk[data-v-ab3d49dd]{border-left-color:#d97706;background:#fffbeb}.pkg-type[data-v-ab3d49dd]{font-weight:700;font-size:.875rem;color:var(--c-heading)}.pkg-volume[data-v-ab3d49dd]{font-size:1.25rem;font-weight:700;color:var(--c-purple-dark)}.packaging-card.pkg-kegging .pkg-volume[data-v-ab3d49dd]{color:#15803d}.packaging-card.pkg-bulk .pkg-volume[data-v-ab3d49dd]{color:#92400e}.pkg-units[data-v-ab3d49dd]{font-size:.8125rem;color:#555}.pkg-date[data-v-ab3d49dd],.pkg-dluo[data-v-ab3d49dd]{font-size:.75rem;color:var(--c-text-secondary)}.pkg-status[data-v-ab3d49dd]{margin-top:4px}.pkg-status-badge[data-v-ab3d49dd]{display:inline-block;padding:2px 10px;border-radius:12px;font-size:.6875rem;font-weight:600;text-transform:uppercase;background:#e2e8f0;color:#475569}.pkg-status-badge.planned[data-v-ab3d49dd]{background:#dbeafe;color:#1d4ed8}.pkg-status-badge.completed[data-v-ab3d49dd]{background:#dcfce7;color:#15803d}.pkg-status-badge.cancelled[data-v-ab3d49dd]{background:#fee2e2;color:#dc2626}.pkg-completed[data-v-ab3d49dd]{border-left-width:5px}.pkg-completed .pkg-volume[data-v-ab3d49dd]{color:#166534!important}.pkg-planned-ref[data-v-ab3d49dd]{font-size:.6875rem;color:var(--c-muted);font-style:italic}.packaging-card--link[data-v-ab3d49dd]{text-decoration:none;cursor:pointer;transition:transform .15s,box-shadow .15s}.packaging-card--link[data-v-ab3d49dd]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.pkg-link-hint[data-v-ab3d49dd]{font-size:.6875rem;color:var(--c-muted);margin-top:6px;opacity:0;transition:opacity .15s}.packaging-card--link:hover .pkg-link-hint[data-v-ab3d49dd]{opacity:1}.batch-number-display[data-v-ab3d49dd]{display:inline-block;padding:3px 10px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;font-family:Courier New,monospace;font-size:.8125rem;font-weight:600;color:#166534;letter-spacing:.3px}.batch-number-empty[data-v-ab3d49dd]{color:#ccc;font-size:.875rem}.workflow-hint[data-v-ab3d49dd]{display:flex;align-items:flex-start;gap:14px;padding:14px 18px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:16px;font-size:.875rem;color:var(--c-purple-dark)}.workflow-hint-icon[data-v-ab3d49dd]{width:28px;height:28px;border-radius:50%;background:var(--c-purple);color:#fff;font-size:.875rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.workflow-hint p[data-v-ab3d49dd]{margin:4px 0 0;font-size:.8125rem;color:var(--c-purple)}.workflow-hint em[data-v-ab3d49dd]{font-style:normal;font-weight:600}.modal-close[data-v-ab3d49dd]{max-width:780px}.modal-close-header[data-v-ab3d49dd]{display:flex;align-items:center;gap:16px;padding-bottom:18px;border-bottom:2px solid #f0f0f0;margin-bottom:20px}.modal-close-icon[data-v-ab3d49dd]{width:42px;height:42px;border-radius:50%;background:#dcfce7;color:#16a34a;font-size:1.375rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-close-header h3[data-v-ab3d49dd]{margin:0 0 4px;font-size:1.375rem;color:#1a202c}.modal-close-subtitle[data-v-ab3d49dd]{margin:0;font-size:.9375rem;color:#555;display:flex;align-items:center;gap:10px}.close-workflow-steps[data-v-ab3d49dd]{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding:12px 16px;background:#f8f9fa;border-radius:8px}.workflow-step[data-v-ab3d49dd]{display:flex;align-items:center;gap:8px}.workflow-step .step-number[data-v-ab3d49dd]{width:24px;height:24px;border-radius:50%;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;background:#e2e8f0;color:var(--c-text-secondary)}.workflow-step.done .step-number[data-v-ab3d49dd]{background:#dcfce7;color:#16a34a}.workflow-step.active .step-number[data-v-ab3d49dd]{background:#ff9800;color:#fff}.workflow-step .step-label[data-v-ab3d49dd]{font-size:.8125rem;font-weight:500;color:var(--c-text-secondary)}.workflow-step.done .step-label[data-v-ab3d49dd]{color:#16a34a}.workflow-step.active .step-label[data-v-ab3d49dd]{color:#e65100;font-weight:600}.workflow-step-arrow[data-v-ab3d49dd]{color:#adb5bd;font-size:1.125rem;font-weight:300}.close-section[data-v-ab3d49dd]{margin-bottom:20px}.close-section-title[data-v-ab3d49dd]{font-size:.9375rem;font-weight:600;color:var(--c-heading);margin-bottom:10px}.close-section-hint[data-v-ab3d49dd]{font-size:.8125rem;color:var(--c-text-secondary);margin:0 0 12px;line-height:1.5}.close-form-grid[data-v-ab3d49dd]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.close-qty-planned[data-v-ab3d49dd]{color:#888;font-size:.8125rem}.row-delta[data-v-ab3d49dd]{background:#fff8f0}.close-delta-notice[data-v-ab3d49dd]{margin-top:8px;font-size:.75rem;color:#92400e;padding:8px 12px;background:#fffbeb;border:1px solid #fde68a;border-radius:6px}.btn-close-confirm[data-v-ab3d49dd]{background:linear-gradient(135deg,#ff9800,#e68900);color:#fff;font-weight:600;padding:10px 24px}.btn-close-confirm[data-v-ab3d49dd]:hover:not(:disabled){background:linear-gradient(135deg,#e68900,#d47e00);transform:translateY(-1px);box-shadow:0 4px 12px #ff980059}.btn-close-confirm[data-v-ab3d49dd]:disabled{opacity:.65;cursor:not-allowed}@media (max-width: 768px){.info-grid[data-v-ab3d49dd]{grid-template-columns:1fr}.section-header[data-v-ab3d49dd]{flex-direction:column;align-items:stretch;gap:10px}.close-form-grid[data-v-ab3d49dd]{grid-template-columns:1fr}.close-workflow-steps[data-v-ab3d49dd]{flex-direction:column;align-items:flex-start}.workflow-step-arrow[data-v-ab3d49dd]{transform:rotate(90deg);margin-left:6px}}.modal-packaging-detail[data-v-ab3d49dd]{max-width:520px}.modal-packaging-detail .modal-header[data-v-ab3d49dd]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-packaging-detail .modal-header h3[data-v-ab3d49dd]{margin:0}.modal-packaging-detail .modal-close[data-v-ab3d49dd]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--c-text-secondary);padding:0 4px}.pkg-detail-grid[data-v-ab3d49dd]{display:flex;flex-direction:column;gap:12px}.pkg-detail-row[data-v-ab3d49dd]{display:flex;justify-content:space-between;align-items:center}.pkg-detail-label[data-v-ab3d49dd]{color:var(--c-text-secondary);font-size:.875rem}.pkg-detail-value[data-v-ab3d49dd]{font-weight:600;color:var(--c-heading);font-size:.875rem}.pkg-detail-value.pkg-actual[data-v-ab3d49dd]{color:#27ae60}.pkg-detail-separator[data-v-ab3d49dd]{border-top:1px solid #eee;margin:4px 0}.modal-packaging-detail .modal-footer[data-v-ab3d49dd]{display:flex;justify-content:space-between;align-items:center;margin-top:24px;gap:12px}.modal-packaging-detail .modal-footer .btn-secondary[data-v-ab3d49dd]{text-decoration:none;color:var(--c-purple);font-size:.8125rem;background:none;border:none;padding:0;box-shadow:none}.modal-packaging-detail .modal-footer .btn-secondary[data-v-ab3d49dd]:hover{text-decoration:underline;background:none}.pkg-cancel-zone[data-v-ab3d49dd]{margin:16px 0 0;padding:14px 16px;background:#fff5f5;border:1px solid #fecaca;border-radius:8px}.pkg-cancel-hint[data-v-ab3d49dd]{font-size:.8rem;color:#7f1d1d;margin-bottom:10px}.stock-entry-view[data-v-e8986ccd]{padding:24px;max-width:1400px;margin:0 auto}.page-header[data-v-e8986ccd]{margin-bottom:30px}.loading[data-v-e8986ccd],.loading-small[data-v-e8986ccd]{text-align:center;color:var(--c-text-secondary);padding:40px}.loading-small[data-v-e8986ccd]{padding:20px}.error[data-v-e8986ccd]{color:#f44336;padding:20px;background:#ffebee;border-radius:8px;margin:20px 0}.content[data-v-e8986ccd]{display:flex;flex-direction:column;gap:20px}.section[data-v-e8986ccd]{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 4px #0000001a}.section h2[data-v-e8986ccd]{margin:0 0 20px;color:var(--c-heading);font-size:1.2rem}.section h3[data-v-e8986ccd]{margin:20px 0 15px;color:var(--c-heading);font-size:1.125rem}.summary-chips[data-v-e8986ccd]{display:flex;flex-wrap:wrap;gap:10px}.category-chip[data-v-e8986ccd]{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px 14px;font:inherit;font-size:.8125rem;font-weight:500;color:var(--c-heading);cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000a}.category-chip[data-v-e8986ccd]:hover{border-color:var(--c-purple);background:#f5f3ff;box-shadow:0 2px 6px #667eea1f}.category-chip[data-v-e8986ccd]:focus-visible{outline:2px solid var(--c-purple);outline-offset:2px}.chip-label[data-v-e8986ccd]{white-space:nowrap}.chip-count[data-v-e8986ccd]{background:var(--c-purple);color:#fff;font-size:.6875rem;font-weight:700;min-width:22px;height:22px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}.quick-add-modal[data-v-e8986ccd]{display:flex;flex-direction:column;gap:18px}.quick-add-card[data-v-e8986ccd]{background:linear-gradient(135deg,#f8fbff,#eef0ff);border:1px solid #d9e2ff;border-radius:12px;padding:16px}.quick-add-card__eyebrow[data-v-e8986ccd]{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--c-purple);margin-bottom:6px}.quick-add-card__title[data-v-e8986ccd]{font-size:1.125rem;font-weight:700;color:var(--c-text);margin-bottom:8px}.quick-add-card__meta[data-v-e8986ccd]{display:flex;flex-wrap:wrap;gap:8px 16px;color:#4b5563;font-size:.875rem}.quick-add-grid[data-v-e8986ccd]{display:grid;gap:16px}.quick-add-field[data-v-e8986ccd]{display:flex;flex-direction:column;gap:8px}.quick-add-field span[data-v-e8986ccd]{font-size:.875rem;font-weight:600;color:var(--c-heading)}.quick-add-field small[data-v-e8986ccd]{color:var(--c-text-secondary);font-size:.75rem}.quick-add-input-wrap[data-v-e8986ccd]{display:flex;align-items:stretch;border:1px solid #ced4da;border-radius:10px;overflow:hidden;background:#fff;transition:border-color .2s,box-shadow .2s}.quick-add-input-wrap[data-v-e8986ccd]:focus-within{border-color:var(--c-purple);box-shadow:0 0 0 3px #667eea1f}.quick-add-input[data-v-e8986ccd]{flex:1;border:none;padding:12px 14px;font-size:.9375rem;outline:none}.quick-add-input--loss[data-v-e8986ccd]{background:#fff8f3}.quick-add-unit[data-v-e8986ccd]{display:inline-flex;align-items:center;padding:0 14px;background:#f8f9fa;border-left:1px solid #dee2e6;color:#495057;font-weight:600;white-space:nowrap}.quick-add-textarea[data-v-e8986ccd]{width:100%;min-height:92px;border:1px solid #ced4da;border-radius:10px;padding:12px 14px;font-size:.875rem;font-family:inherit;resize:vertical;transition:border-color .2s,box-shadow .2s}.quick-add-textarea[data-v-e8986ccd]:focus{outline:none;border-color:var(--c-purple);box-shadow:0 0 0 3px #667eea1f}.quick-add-helper[data-v-e8986ccd]{margin:0;font-size:.8125rem;color:#4b5563;line-height:1.5}.quick-add-warning[data-v-e8986ccd]{margin:0;padding:12px 14px;border-radius:10px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:.8125rem;font-weight:500}.form-header[data-v-e8986ccd]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:12px}.form-header h2[data-v-e8986ccd]{margin:0!important}.form-header-date[data-v-e8986ccd]{display:flex;align-items:center;gap:8px;font-size:.8125rem;color:var(--c-text-secondary)}.form-header-date label[data-v-e8986ccd]{font-weight:500;white-space:nowrap}.form-input--compact[data-v-e8986ccd]{padding:6px 10px;font-size:.8125rem;width:220px}.form-container[data-v-e8986ccd]{display:flex;flex-direction:column}.entry-table-header[data-v-e8986ccd]{display:grid;grid-template-columns:3fr 160px 60px 2fr 36px;gap:10px;padding:0 12px 8px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--c-text-secondary);border-bottom:1px solid #e9ecef}.form-input[data-v-e8986ccd],.form-select[data-v-e8986ccd]{padding:8px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:.8125rem;transition:border-color .2s;width:100%;box-sizing:border-box}.form-input[data-v-e8986ccd]:focus,.form-select[data-v-e8986ccd]:focus{outline:none;border-color:var(--c-purple);box-shadow:0 0 0 2px #667eea1a}.form-input[data-v-e8986ccd]:disabled{background:#f8f9fa;cursor:not-allowed}.form-input--loss[data-v-e8986ccd]{border-color:#e67e22;background:#fff8f3}.form-input--loss[data-v-e8986ccd]:focus{border-color:#d35400}.loss-badge[data-v-e8986ccd]{background:#e67e22;color:#fff;font-size:.5625rem;font-weight:700;padding:2px 6px;border-radius:8px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.entry-row[data-v-e8986ccd]{display:grid;grid-template-columns:3fr 160px 60px 2fr 36px;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #f1f5f9;transition:background-color .15s}.entry-row[data-v-e8986ccd]:hover{background:#f8fafc}.entry-row--loss[data-v-e8986ccd]{background:#fff8f3}.entry-row--loss[data-v-e8986ccd]:hover{background:#fff3e8}.qty-wrap[data-v-e8986ccd]{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.qty-wrap .form-input[data-v-e8986ccd]{flex:1;min-width:70px;text-align:right}.unit-display[data-v-e8986ccd]{font-size:.8125rem;color:var(--c-text-secondary);font-weight:500}.form-footer[data-v-e8986ccd]{display:flex;align-items:center;justify-content:space-between;padding-top:14px;margin-top:4px;border-top:1px solid #e9ecef}.btn-add-row[data-v-e8986ccd]{background:none;border:1px dashed #cbd5e1;border-radius:6px;padding:6px 14px;font-size:.8125rem;font-weight:500;color:var(--c-text-secondary);cursor:pointer;transition:all .15s}.btn-add-row[data-v-e8986ccd]:hover{border-color:var(--c-purple);color:var(--c-purple);background:#f5f3ff}.form-actions[data-v-e8986ccd]{display:flex;gap:8px}.btn-ghost[data-v-e8986ccd]{background:none;border:1px solid #e2e8f0;color:var(--c-text-secondary);border-radius:6px;padding:8px 16px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-ghost[data-v-e8986ccd]:hover{background:#f8f9fa;border-color:#cbd5e1;color:var(--c-heading)}.article-select-wrapper[data-v-e8986ccd]{position:relative;-webkit-user-select:none;user-select:none}.selected-display[data-v-e8986ccd]{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border:1px solid #ced4da;border-radius:6px;background:#fff;cursor:pointer;min-height:40px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.selected-display[data-v-e8986ccd]:hover{border-color:var(--c-purple)}.selected-display.open[data-v-e8986ccd]{border-color:var(--c-purple);box-shadow:0 0 0 3px #667eea26;border-radius:6px 6px 0 0}.selected-text[data-v-e8986ccd]{color:var(--c-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.placeholder[data-v-e8986ccd]{color:#adb5bd;flex:1}.chevron[data-v-e8986ccd]{font-size:1rem;color:#6c757d;margin-left:8px;transition:transform .2s;flex-shrink:0}.chevron--open[data-v-e8986ccd]{transform:rotate(180deg)}.dropdown-panel[data-v-e8986ccd]{position:absolute;top:100%;left:0;right:0;z-index:1000;background:#fff;border:1px solid var(--c-purple);border-top:none;border-radius:0 0 8px 8px;box-shadow:0 8px 24px #0000001f;max-height:320px;display:flex;flex-direction:column}.search-wrapper[data-v-e8986ccd]{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid #e9ecef;background:#f8f9fa}.search-icon[data-v-e8986ccd]{font-size:.875rem;flex-shrink:0}.search-input[data-v-e8986ccd]{flex:1;border:none;outline:none;font-size:.875rem;background:transparent;color:var(--c-heading)}.search-input[data-v-e8986ccd]::placeholder{color:#adb5bd}.options-list[data-v-e8986ccd]{overflow-y:auto;flex:1}.option-category-header[data-v-e8986ccd]{padding:8px 12px 4px;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#6c757d;background:#f8f9fa;border-top:1px solid #e9ecef;position:sticky;top:0}.option-item[data-v-e8986ccd]{display:flex;align-items:center;justify-content:space-between;padding:9px 16px;cursor:pointer;transition:background-color .15s}.option-item[data-v-e8986ccd]:hover{background:#eef0ff}.option-item--selected[data-v-e8986ccd]{background:var(--c-purple);color:#fff}.option-item--selected .option-code[data-v-e8986ccd]{color:#ffffffbf}.option-name[data-v-e8986ccd]{font-size:.875rem;color:var(--c-heading)}.option-item--selected .option-name[data-v-e8986ccd]{color:#fff}.option-code[data-v-e8986ccd]{font-size:.75rem;color:#adb5bd;font-family:monospace;margin-left:8px;flex-shrink:0}.no-results[data-v-e8986ccd]{padding:20px;text-align:center;color:#adb5bd;font-style:italic;font-size:.875rem}.btn[data-v-e8986ccd]{padding:8px 18px;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s}.btn[data-v-e8986ccd]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-e8986ccd]{background:var(--c-purple);color:#fff}.btn-primary[data-v-e8986ccd]:hover:not(:disabled){background:#5568d3}.btn-success[data-v-e8986ccd]{background:#4caf50;color:#fff}.btn-success[data-v-e8986ccd]:hover{background:#45a049}.btn-action-inline[data-v-e8986ccd]{background:none;border:none;padding:0;cursor:pointer;font-size:.9rem;border-radius:6px;transition:all .15s ease;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;opacity:.4}.entry-row:hover .btn-action-inline[data-v-e8986ccd]{opacity:1}.btn-action-inline[data-v-e8986ccd]:disabled{opacity:.15;cursor:default}.btn-action-delete[data-v-e8986ccd]:hover:not(:disabled){background:#fef2f2;color:#dc2626}.btn-sm[data-v-e8986ccd]{padding:4px 8px;font-size:.75rem}.categories-container[data-v-e8986ccd]{display:flex;flex-direction:column;gap:30px}.category-section[data-v-e8986ccd]{padding:20px;background:#f8f9fa;border-radius:8px;scroll-margin-top:110px;transition:background-color .3s ease,box-shadow .3s ease}.category-section--highlighted[data-v-e8986ccd]{background:#eef0ff;box-shadow:0 0 0 2px #667eea40}.stock-table[data-v-e8986ccd]{width:100%;border-collapse:collapse;font-size:.875rem;background:#fff;border-radius:6px;overflow:hidden}.stock-table thead[data-v-e8986ccd]{background:var(--c-heading);color:#fff}.stock-table th[data-v-e8986ccd]{padding:12px;text-align:left;font-weight:600}.stock-table tbody tr[data-v-e8986ccd]{border-bottom:1px solid #e9ecef;transition:background-color .2s}.stock-table tbody tr[data-v-e8986ccd]:hover{background:#f8f9fa}.stock-table td[data-v-e8986ccd]{padding:12px;vertical-align:middle}.article-code[data-v-e8986ccd]{font-family:monospace;color:var(--c-text-secondary);font-size:.8125rem}.article-name[data-v-e8986ccd]{font-weight:500;color:var(--c-heading)}.quantity-cell[data-v-e8986ccd]{font-size:1rem;color:var(--c-purple)}.date-cell[data-v-e8986ccd]{color:var(--c-text-secondary);font-size:.8125rem}.text-right[data-v-e8986ccd]{text-align:right}.no-data-small[data-v-e8986ccd]{text-align:center;color:var(--c-text-secondary);padding:20px;font-style:italic}@media (max-width: 900px){.entry-table-header[data-v-e8986ccd]{display:none}.entry-row[data-v-e8986ccd]{grid-template-columns:1fr 1fr;gap:8px}.col-article[data-v-e8986ccd],.col-comment[data-v-e8986ccd]{grid-column:1 / -1}.col-actions[data-v-e8986ccd]{grid-column:1 / -1;justify-self:end}.form-header[data-v-e8986ccd]{flex-direction:column;align-items:flex-start}.form-footer[data-v-e8986ccd]{flex-direction:column;gap:12px;align-items:stretch}.form-actions[data-v-e8986ccd]{justify-content:flex-end}}.stock-movements-view[data-v-1d6b33a3]{padding:24px;max-width:1400px;margin:0 auto}.page-header[data-v-1d6b33a3]{margin-bottom:12px}h2[data-v-1d6b33a3]{color:#2d3748;margin:0;font-size:.9rem}.filters-section[data-v-1d6b33a3]{background:#fff;padding:12px 16px;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:12px}.filters-grid[data-v-1d6b33a3]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;align-items:end}.filter-group[data-v-1d6b33a3]{display:flex;flex-direction:column;gap:3px}.filter-group label[data-v-1d6b33a3]{font-weight:600;color:#718096;font-size:.78rem}.filter-input[data-v-1d6b33a3]{padding:8px 16px;border:1px solid #e2e8f0;border-radius:8px;font-size:.88rem;height:32px;box-sizing:border-box}.results-section[data-v-1d6b33a3]{background:#fff;padding:16px 20px;border-radius:12px;box-shadow:0 2px 4px #0000001a}.results-header[data-v-1d6b33a3]{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.results-left[data-v-1d6b33a3]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.stats-inline[data-v-1d6b33a3]{display:flex;gap:6px;flex-wrap:wrap}.stat-chip[data-v-1d6b33a3]{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:12px;font-size:.7rem;font-weight:600;color:#fff}.stat-chip.stat-success[data-v-1d6b33a3]{background:#4caf50}.stat-chip.stat-danger[data-v-1d6b33a3]{background:#f44336}.stat-chip.stat-warning[data-v-1d6b33a3]{background:#ff9800}.stat-chip.stat-info[data-v-1d6b33a3]{background:#2196f3}.results-count[data-v-1d6b33a3]{color:#718096;font-size:.8rem;padding:4px 12px;background:#f7fafc;border-radius:20px;white-space:nowrap}.loading[data-v-1d6b33a3]{text-align:center;color:#718096;padding:40px}.error[data-v-1d6b33a3]{color:#f44336;padding:20px;background:#ffebee;border-radius:12px;margin:20px 0}.no-data[data-v-1d6b33a3]{text-align:center;color:#718096;padding:40px;font-style:italic}.movements-container[data-v-1d6b33a3]{display:flex;flex-direction:column;gap:14px}.movements-table[data-v-1d6b33a3]{width:100%;border-collapse:collapse;font-size:.88rem}.movements-table thead[data-v-1d6b33a3]{background:#f7fafc;color:#4a5568}.movements-table th[data-v-1d6b33a3]{padding:8px 10px;text-align:left;font-weight:600}.movements-table tbody tr[data-v-1d6b33a3]{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.movements-table tbody tr[data-v-1d6b33a3]:hover{background:#f7fafc}.movements-table td[data-v-1d6b33a3]{padding:6px 10px;vertical-align:middle}.date-cell[data-v-1d6b33a3]{white-space:nowrap;color:#718096;font-size:.88rem}.movement-type-badge[data-v-1d6b33a3]{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase;white-space:nowrap}.movement-type-badge.success[data-v-1d6b33a3]{background:#4caf50;color:#fff}.movement-type-badge.danger[data-v-1d6b33a3]{background:#f44336;color:#fff}.movement-type-badge.warning[data-v-1d6b33a3]{background:#ff9800;color:#fff}.movement-type-badge.secondary[data-v-1d6b33a3]{background:#6c757d;color:#fff}.article-cell[data-v-1d6b33a3]{display:flex;flex-direction:column;gap:3px}.article-code[data-v-1d6b33a3]{font-family:monospace;color:#a0aec0;font-size:.78rem}.quantity-cell[data-v-1d6b33a3]{font-size:.88rem;text-align:right;white-space:nowrap}.text-success[data-v-1d6b33a3]{color:#4caf50}.text-danger[data-v-1d6b33a3]{color:#f44336}.text-right[data-v-1d6b33a3]{text-align:right}.stock-cell[data-v-1d6b33a3]{color:#718096;font-family:monospace}.justification-cell[data-v-1d6b33a3]{max-width:300px}.justification-content[data-v-1d6b33a3]{color:#2d3748;line-height:1.4}.comment[data-v-1d6b33a3]{margin-top:5px;padding:5px 10px;background:#fff3cd;border-radius:4px;font-size:.78rem;color:#856404}.user-cell[data-v-1d6b33a3]{color:#718096}.btn[data-v-1d6b33a3]{padding:8px 16px;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.btn[data-v-1d6b33a3]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-1d6b33a3]{background:#6c757d;color:#fff}.btn-secondary[data-v-1d6b33a3]:hover:not(:disabled){background:#5a6268}.pagination[data-v-1d6b33a3]{display:flex;justify-content:center;margin-top:20px}@media (max-width: 768px){.filters-grid[data-v-1d6b33a3],.stats-grid[data-v-1d6b33a3]{grid-template-columns:1fr}.results-header[data-v-1d6b33a3]{flex-direction:column;align-items:stretch;gap:10px}}.admin-layout[data-v-d0b0775e]{background:#f8fafc;height:100%}.auth-warning[data-v-d0b0775e]{padding:24px}.warning-card[data-v-d0b0775e]{background:#fef3c7;border:1px solid #f59e0b;border-radius:12px;padding:16px;display:flex;align-items:center;gap:1rem}.warning-icon[data-v-d0b0775e]{font-size:2rem}.warning-content h3[data-v-d0b0775e]{margin:0 0 .5rem;color:#92400e}.warning-content p[data-v-d0b0775e]{margin:0 0 1rem;color:#92400e}.btn[data-v-d0b0775e]{padding:8px 16px;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:.9rem;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}.btn-primary[data-v-d0b0775e]{background:#805ad5;color:#fff}.btn-primary[data-v-d0b0775e]:hover{background:#6b46c1}.admin-body[data-v-d0b0775e]{display:flex;align-items:flex-start;min-height:calc(100vh - 70px)}.admin-sidebar[data-v-d0b0775e]{width:220px;flex-shrink:0;background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;position:sticky;top:0;max-height:100vh;overflow-y:auto;transition:width .2s ease}.admin-sidebar.collapsed[data-v-d0b0775e]{width:56px}.sidebar-header[data-v-d0b0775e]{padding:1.25rem 1rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.admin-sidebar.collapsed .sidebar-header[data-v-d0b0775e]{justify-content:center;padding:1.25rem .5rem}.sidebar-header h2[data-v-d0b0775e]{margin:0;font-size:1rem;font-weight:700;color:#2d3748;white-space:nowrap;overflow:hidden}.sidebar-toggle[data-v-d0b0775e]{background:none;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;color:#718096;font-size:.7rem;padding:.3rem .45rem;flex-shrink:0;transition:all .15s;line-height:1}.sidebar-toggle[data-v-d0b0775e]:hover{background:#f3f4f6;color:#553c9a;border-color:#805ad5}.sidebar-nav[data-v-d0b0775e]{padding:.75rem 0;flex:1}.nav-group[data-v-d0b0775e]{margin-bottom:.1rem}.nav-group-label[data-v-d0b0775e]{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.45rem 1rem;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#718096;background:none;border:none;cursor:pointer;text-align:left;transition:color .15s}.nav-group-label[data-v-d0b0775e]:hover{color:#553c9a}.group-chevron[data-v-d0b0775e]{font-size:.7rem;flex-shrink:0}.group-icon[data-v-d0b0775e]{font-size:1rem;display:block;text-align:center;width:100%}.nav-group-items[data-v-d0b0775e]{display:none;overflow:hidden}.nav-group.open .nav-group-items[data-v-d0b0775e]{display:block}.sidebar-item[data-v-d0b0775e]{display:flex;align-items:center;gap:.6rem;padding:.5rem 1rem;text-decoration:none;color:#4a5568;font-size:.9rem;font-weight:500;border-left:3px solid transparent;transition:all .15s}.sidebar-item[data-v-d0b0775e]:hover{background:#f3f4f6;color:#553c9a}.sidebar-item.active[data-v-d0b0775e]{background:#faf5ff;border-left-color:#805ad5;color:#553c9a}.item-icon[data-v-d0b0775e]{font-size:1rem;width:1.4rem;text-align:center;flex-shrink:0}.item-label[data-v-d0b0775e]{white-space:nowrap;overflow:hidden;transition:opacity .2s ease}.admin-sidebar.collapsed .item-label[data-v-d0b0775e]{display:none}.admin-sidebar.collapsed .sidebar-item[data-v-d0b0775e]{justify-content:center;padding:.6rem .5rem;border-left:none}.admin-sidebar.collapsed .sidebar-item.active[data-v-d0b0775e]{border-left:none;background:#faf5ff;border-radius:6px;margin:0 .35rem}.admin-sidebar.collapsed .nav-group[data-v-d0b0775e]{margin-bottom:.15rem}.admin-sidebar.collapsed .nav-group-label[data-v-d0b0775e]{justify-content:center;padding:.45rem .5rem}.admin-sidebar.collapsed .nav-group-items[data-v-d0b0775e]{display:block}.admin-content[data-v-d0b0775e]{flex:1;background:#f8fafc;min-width:0}.admin-home[data-v-d0b0775e]{padding:3rem 24px;color:#718096}.admin-home h1[data-v-d0b0775e]{color:#2d3748;margin-bottom:.75rem}@media (max-width: 768px){.admin-body[data-v-d0b0775e]{flex-direction:column}.admin-sidebar[data-v-d0b0775e]{width:100%;border-right:none;border-bottom:1px solid #e2e8f0}.sidebar-nav[data-v-d0b0775e]{display:flex;flex-wrap:wrap;padding:.5rem;gap:.25rem}.nav-group[data-v-d0b0775e]{display:contents}.nav-group-label[data-v-d0b0775e]{display:none}.sidebar-item[data-v-d0b0775e]{border-left:none;border-bottom:2px solid transparent;border-radius:6px;padding:.4rem .75rem}.sidebar-item.active[data-v-d0b0775e]{border-left-color:transparent;border-bottom-color:#805ad5}}.tanks-admin-view[data-v-04e93201]{padding:24px}.admin-header[data-v-04e93201]{background:#fff;border-radius:12px;padding:24px;margin-bottom:1.5rem;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.header-content h1[data-v-04e93201]{margin:0 0 .5rem;color:#1a202c;font-size:1.5rem;font-weight:700}.header-subtitle[data-v-04e93201]{margin:0;color:#718096;font-size:.9rem}.header-actions[data-v-04e93201]{display:flex;gap:.75rem}.stats-overview[data-v-04e93201]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card[data-v-04e93201]{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 4px #0000001a;display:flex;align-items:center;gap:1rem}.stat-icon[data-v-04e93201]{font-size:1.5rem}.stat-content h3[data-v-04e93201]{margin:0;font-size:1.3rem;font-weight:700;color:#2d3748}.stat-content p[data-v-04e93201]{margin:.25rem 0 0;color:#718096;font-size:.78rem}.tanks-table-container[data-v-04e93201]{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.table-header[data-v-04e93201]{padding:24px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.table-header h2[data-v-04e93201]{margin:0;font-size:1.2rem;font-weight:700;color:#2d3748}.table-wrapper[data-v-04e93201]{overflow-x:auto}.tanks-table[data-v-04e93201]{width:100%;border-collapse:collapse}.tanks-table th[data-v-04e93201]{background:linear-gradient(135deg,var(--c-purple) 0%,var(--c-purple-dark) 100%);padding:16px;text-align:left;font-weight:600;font-size:.88rem;text-transform:uppercase;letter-spacing:.5px;color:#fff;border-bottom:1px solid var(--c-border)}.tanks-table th.sortable[data-v-04e93201]{cursor:pointer;-webkit-user-select:none;user-select:none}.tanks-table th.sortable[data-v-04e93201]:hover{opacity:.9}.sort-icon[data-v-04e93201]{font-size:.75rem;margin-left:.25rem;color:#ffffffb3}.tanks-table td[data-v-04e93201]{padding:16px;font-size:.88rem;color:#2d3748;border-bottom:1px solid #e2e8f0}.tank-row[data-v-04e93201]:hover{background:var(--c-bg-light)}.tank-name strong[data-v-04e93201]{color:var(--c-purple-dark);font-size:1.1rem}.inactive-badge[data-v-04e93201]{font-size:.75rem;color:#dc2626;margin-left:.5rem;font-weight:500}.tank-type[data-v-04e93201]{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}.tank-type.type-fermentation[data-v-04e93201]{background:#fef3c7;color:#92400e}.tank-type.type-conditioning[data-v-04e93201]{background:#d1fae5;color:#065f46}.tank-type.type-brite[data-v-04e93201]{background:#e0f2fe;color:#0369a1}.tank-type.type-tbf[data-v-04e93201]{background:#fde8d8;color:#9a3412}.tank-type.type-storage[data-v-04e93201]{background:#f3e8ff;color:#7c3aed}.capacity[data-v-04e93201]{font-weight:600;color:var(--c-text)}.action-buttons[data-v-04e93201]{display:flex;gap:.375rem}.btn-action[data-v-04e93201]{background:none;border:none;padding:.4rem;cursor:pointer;font-size:1.1rem;border-radius:6px;transition:all .15s ease;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center}.btn-action-edit[data-v-04e93201]:hover{background:#eef2ff}.btn-action-delete[data-v-04e93201]:hover{background:#fef2f2;color:#dc2626}.btn[data-v-04e93201]{padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-primary[data-v-04e93201]{background:var(--c-purple);color:#fff}.btn-primary[data-v-04e93201]:hover{background:#2563eb}.btn-outline[data-v-04e93201]{background:#fff;color:var(--c-text);border:1px solid var(--c-border-strong)}.btn-outline[data-v-04e93201]:hover{background:var(--c-bg-light)}.btn-danger[data-v-04e93201]{background:#dc2626;color:#fff}.btn-danger[data-v-04e93201]:hover{background:#b91c1c}.btn[data-v-04e93201]:disabled{opacity:.5;cursor:not-allowed}.icon[data-v-04e93201]{font-size:1rem}.empty-state[data-v-04e93201]{text-align:center;padding:3rem 2rem;color:var(--c-text-secondary)}.empty-icon[data-v-04e93201]{font-size:4rem;margin-bottom:1rem}.empty-state h3[data-v-04e93201]{margin:0 0 .5rem;color:var(--c-text)}.modal-overlay[data-v-04e93201]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-04e93201]{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto}.modal-header[data-v-04e93201]{padding:1.5rem 2rem;border-bottom:1px solid var(--c-border);display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-04e93201]{margin:0;color:var(--c-purple-dark)}.btn-close[data-v-04e93201]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--c-text-secondary);padding:.25rem;border-radius:4px}.btn-close[data-v-04e93201]:hover{background:var(--c-bg-subtle)}.modal-form[data-v-04e93201]{padding:2rem}.form-grid[data-v-04e93201]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.form-group[data-v-04e93201]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-04e93201]{font-weight:600;color:var(--c-text)}.form-input[data-v-04e93201],.form-select[data-v-04e93201]{padding:.75rem;border:1px solid var(--c-border-strong);border-radius:6px;font-size:1rem}.form-input[data-v-04e93201]:focus,.form-select[data-v-04e93201]:focus{outline:none;border-color:var(--c-purple);box-shadow:0 0 0 3px #3b82f61a}.form-input.error[data-v-04e93201],.form-select.error[data-v-04e93201]{border-color:#dc2626}.error-message[data-v-04e93201]{color:#dc2626;font-size:.875rem}.form-help[data-v-04e93201]{color:var(--c-text-secondary);font-size:.875rem}.form-group-checkbox[data-v-04e93201]{grid-column:1 / -1}.checkbox-label[data-v-04e93201]{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:600;color:var(--c-text)}.form-checkbox[data-v-04e93201]{width:1.25rem;height:1.25rem;cursor:pointer;accent-color:var(--c-purple)}.modal-actions[data-v-04e93201]{display:flex;gap:.75rem;justify-content:flex-end;border-top:1px solid var(--c-border);padding-top:1.5rem}.modal-confirm[data-v-04e93201]{max-width:400px}.modal-content[data-v-04e93201]{padding:2rem}.warning-text[data-v-04e93201]{color:#dc2626;font-size:.9rem;margin-top:1rem}@media (max-width: 768px){.admin-header[data-v-04e93201]{flex-direction:column;gap:1rem;align-items:stretch}.header-actions[data-v-04e93201]{justify-content:center}.stats-overview[data-v-04e93201]{grid-template-columns:repeat(2,1fr)}.form-grid[data-v-04e93201]{grid-template-columns:1fr}.modal[data-v-04e93201]{width:95%;margin:1rem}}.gamified-article-selector[data-v-67516e51]{border:2px solid #e0e0e0;border-radius:12px;padding:20px;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.selector-header[data-v-67516e51]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.selector-header h3[data-v-67516e51]{display:flex;align-items:center;gap:10px;margin:0;font-size:1.5rem}.selector-tabs[data-v-67516e51]{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.tab-btn[data-v-67516e51]{flex:1;min-width:120px;padding:12px 16px;border:2px solid #ddd;background:#fff;border-radius:8px;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:8px;position:relative}.tab-btn[data-v-67516e51]:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.tab-btn.active[data-v-67516e51]{background:linear-gradient(135deg,var(--c-purple) 0%,var(--c-purple-dark) 100%);color:#fff;border-color:var(--c-purple)}.tab-icon[data-v-67516e51]{font-size:1.5rem}.badge[data-v-67516e51]{position:absolute;top:-8px;right:-8px;background:#ff4757;color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.articles-container[data-v-67516e51]{display:grid;grid-template-columns:1fr 1fr;gap:20px}.available-articles[data-v-67516e51],.selected-articles[data-v-67516e51]{background:#fff;border-radius:8px;padding:16px}.available-articles h4[data-v-67516e51],.selected-articles h4[data-v-67516e51]{margin:0 0 12px;display:flex;align-items:center;gap:8px}.count-badge[data-v-67516e51]{background:var(--c-purple);color:#fff;padding:2px 8px;border-radius:12px;font-size:.85rem}.search-box[data-v-67516e51]{margin-bottom:12px}.search-input[data-v-67516e51]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:.9rem}.articles-grid[data-v-67516e51]{display:grid;gap:10px;max-height:400px;overflow-y:auto}.article-card[data-v-67516e51]{border:2px solid #e0e0e0;border-radius:8px;padding:12px;cursor:pointer;transition:all .3s;position:relative}.article-card[data-v-67516e51]:hover{border-color:var(--c-purple);transform:translate(4px);box-shadow:0 2px 8px #0000001a}.article-card.selected[data-v-67516e51]{border-color:#10b981;background:#ecfdf5}.article-header[data-v-67516e51]{display:flex;gap:10px;align-items:flex-start}.article-icon[data-v-67516e51]{font-size:1.5rem}.article-info[data-v-67516e51]{flex:1}.article-name[data-v-67516e51]{font-weight:700;margin-bottom:4px}.article-meta[data-v-67516e51]{font-size:.85rem;color:var(--c-text-secondary)}.select-overlay[data-v-67516e51]{position:absolute;top:0;right:0;background:var(--c-purple);color:#fff;width:32px;height:32px;border-radius:0 8px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}.article-card:hover .select-overlay[data-v-67516e51]{opacity:1}.empty-state[data-v-67516e51]{text-align:center;padding:40px 20px;color:var(--c-muted)}.empty-icon[data-v-67516e51]{font-size:3rem;display:block;margin-bottom:12px}.selected-list[data-v-67516e51]{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.selected-item[data-v-67516e51]{border:2px solid #e0e0e0;border-radius:8px;padding:12px;background:var(--c-bg-light)}.selected-item.fade-in[data-v-67516e51]{animation:fadeIn-67516e51 .5s}@keyframes fadeIn-67516e51{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.item-header[data-v-67516e51]{display:flex;gap:10px;align-items:flex-start;margin-bottom:12px}.item-icon[data-v-67516e51]{font-size:1.3rem}.item-info[data-v-67516e51]{flex:1}.item-name[data-v-67516e51]{font-weight:700;margin-bottom:2px}.item-meta[data-v-67516e51]{font-size:.85rem;color:var(--c-text-secondary)}.btn-remove[data-v-67516e51]{background:#ff4757;color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all .3s}.btn-remove[data-v-67516e51]:hover{background:#ff2f3e;transform:rotate(90deg)}.item-quantity[data-v-67516e51]{display:flex;gap:8px;align-items:center}.item-quantity label[data-v-67516e51]{font-size:.9rem;font-weight:500}.quantity-controls[data-v-67516e51]{display:flex;gap:4px}.btn-qty[data-v-67516e51]{background:var(--c-purple);color:#fff;border:none;border-radius:4px;width:28px;height:28px;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-qty[data-v-67516e51]:hover{background:#5568d3;transform:scale(1.1)}.quantity-input[data-v-67516e51]{width:70px;padding:4px 8px;border:1px solid #ddd;border-radius:4px;text-align:center}.unit-select[data-v-67516e51]{padding:4px 8px;border:1px solid #ddd;border-radius:4px}.selection-summary[data-v-67516e51]{margin-top:16px;padding-top:16px;border-top:2px solid #e0e0e0;display:flex;justify-content:space-between}.summary-item[data-v-67516e51]{display:flex;flex-direction:column;gap:4px}.summary-item .label[data-v-67516e51]{font-size:.85rem;color:var(--c-text-secondary)}.summary-item .value[data-v-67516e51]{font-size:1.2rem;font-weight:700;color:var(--c-purple)}.recipes-gamified-view[data-v-8bf99b08]{padding:24px;max-width:1400px;margin:0 auto}.admin-header[data-v-8bf99b08]{background:#fff;border-radius:12px;padding:24px;margin-bottom:1.5rem;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.header-content h1[data-v-8bf99b08]{font-size:1.5rem;font-weight:700;margin:0 0 8px;color:#1a202c}.header-subtitle[data-v-8bf99b08]{color:#718096;margin:0;font-size:.9rem}.header-actions[data-v-8bf99b08]{display:flex;gap:12px}.btn[data-v-8bf99b08]{padding:8px 16px;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s}.btn-primary[data-v-8bf99b08]{background:var(--c-purple);color:#fff}.btn-primary[data-v-8bf99b08]:hover{background:#2563eb}.btn-outline[data-v-8bf99b08]{background:#fff;border:1px solid #e2e8f0;color:#4a5568}.btn-outline[data-v-8bf99b08]:hover{border-color:var(--c-purple);color:var(--c-purple)}.btn-outline[data-v-8bf99b08]:disabled{opacity:.5;cursor:not-allowed}.stats-overview[data-v-8bf99b08]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card[data-v-8bf99b08]{background:#fff;border-radius:12px;padding:16px 20px;box-shadow:0 2px 4px #0000001a;text-align:center}.stat-value[data-v-8bf99b08]{font-size:1.3rem;font-weight:700;color:#2d3748}.stat-label[data-v-8bf99b08]{font-size:.78rem;color:#718096;margin-top:4px}.recipes-table-container[data-v-8bf99b08]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a}.table-header[data-v-8bf99b08]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.table-header h2[data-v-8bf99b08]{margin:0;font-size:1.2rem;font-weight:700;color:#2d3748}.search-input[data-v-8bf99b08]{padding:8px 16px;border:1px solid var(--c-border);border-radius:8px;font-size:.95rem;width:300px}.style-filters[data-v-8bf99b08]{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.style-pill[data-v-8bf99b08]{padding:5px 14px;border-radius:16px;border:1px solid var(--c-border-strong);background:var(--c-bg-light);color:#4b5563;font-size:.85rem;cursor:pointer;transition:all .2s}.style-pill[data-v-8bf99b08]:hover{border-color:var(--c-purple);color:var(--c-purple)}.style-pill.active[data-v-8bf99b08]{background:var(--c-purple);color:#fff;border-color:var(--c-purple)}.loading[data-v-8bf99b08],.no-data[data-v-8bf99b08]{text-align:center;padding:40px;color:var(--c-text-secondary)}.recipes-grid[data-v-8bf99b08]{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}.recipe-card[data-v-8bf99b08]{background:#fff;border:1px solid var(--c-border);border-top:4px solid var(--c-purple);border-radius:10px;padding:20px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:12px}.recipe-card[data-v-8bf99b08]:hover{box-shadow:0 6px 16px #0000001a;transform:translateY(-2px)}.recipe-header[data-v-8bf99b08]{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.recipe-header h3[data-v-8bf99b08]{margin:0;font-size:1.15rem;color:var(--c-text);font-weight:600}.recipe-style-badge[data-v-8bf99b08]{flex-shrink:0;padding:3px 10px;border-radius:10px;font-size:.78rem;font-weight:500;background:var(--c-bg-subtle);color:#4b5563;white-space:nowrap}.recipe-description[data-v-8bf99b08]{margin:0;color:var(--c-text-secondary);font-size:.88rem;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-metrics[data-v-8bf99b08]{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;background:var(--c-bg-light);border-radius:8px;padding:10px}.metric[data-v-8bf99b08]{display:flex;flex-direction:column;align-items:center;gap:2px}.metric-value[data-v-8bf99b08]{font-size:.95rem;font-weight:700;color:var(--c-text)}.metric-label[data-v-8bf99b08]{font-size:.72rem;color:var(--c-muted);text-transform:uppercase;letter-spacing:.03em}.recipe-extra[data-v-8bf99b08]{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.82rem;color:var(--c-text-secondary)}.recipe-actions[data-v-8bf99b08]{display:flex;gap:8px;justify-content:flex-end;margin-top:auto;padding-top:12px;border-top:1px solid var(--c-bg-subtle)}.btn-action[data-v-8bf99b08]{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border:1px solid var(--c-border);border-radius:6px;background:#fff;color:var(--c-text);font-size:.82rem;cursor:pointer;transition:all .15s}.btn-action[data-v-8bf99b08]:hover{background:#f0f4ff;border-color:var(--c-purple);color:var(--c-purple)}.btn-action.danger[data-v-8bf99b08]:hover{background:#fef2f2;border-color:#dc2626;color:#dc2626}.modal-overlay[data-v-8bf99b08]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content[data-v-8bf99b08]{background:#fff;border-radius:16px;max-height:90vh;overflow-y:auto;width:100%;max-width:600px}.modal-content.extra-large[data-v-8bf99b08]{max-width:1400px}.modal-content.small[data-v-8bf99b08]{max-width:400px}.modal-header[data-v-8bf99b08]{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:2px solid var(--c-border)}.modal-header h2[data-v-8bf99b08]{margin:0;color:var(--c-text)}.btn-close[data-v-8bf99b08]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--c-text-secondary);padding:4px;border-radius:4px;transition:all .2s}.btn-close[data-v-8bf99b08]:hover{background:var(--c-bg-subtle)}.modal-form[data-v-8bf99b08],.modal-body[data-v-8bf99b08]{padding:24px}.warning[data-v-8bf99b08]{color:#ef4444;font-weight:500}.warning-secondary[data-v-8bf99b08]{color:var(--c-text-secondary);font-size:.88rem;margin-top:8px}.modal-footer[data-v-8bf99b08]{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:2px solid var(--c-border)}.btn-danger[data-v-8bf99b08]{background:#ef4444;color:#fff}.btn-danger[data-v-8bf99b08]:hover{background:#dc2626}.form-section[data-v-8bf99b08]{margin-bottom:8px;background:var(--c-bg-light);border-radius:10px;padding:20px;border:1px solid var(--c-border)}.section-header[data-v-8bf99b08]{display:flex;align-items:center;gap:10px;margin-bottom:16px}.section-icon[data-v-8bf99b08]{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.section-icon.info-icon[data-v-8bf99b08]{background:#ede9fe;color:#7c3aed}.section-icon.brew-icon[data-v-8bf99b08]{background:#fef3c7;color:#d97706}.section-icon.ferm-icon[data-v-8bf99b08]{background:#dbeafe;color:#2563eb}.section-icon.yeast-icon[data-v-8bf99b08]{background:#d1fae5;color:#059669}.section-icon.stats-icon[data-v-8bf99b08]{background:#fce7f3;color:#db2777}.form-section h3[data-v-8bf99b08]{margin:0;color:var(--c-text);font-size:1.05rem;font-weight:600}.form-grid[data-v-8bf99b08]{display:grid;gap:14px}.form-grid.cols-2[data-v-8bf99b08]{grid-template-columns:1fr 1fr}.form-grid.cols-3[data-v-8bf99b08]{grid-template-columns:1fr 1fr 1fr}.form-grid.cols-5[data-v-8bf99b08]{grid-template-columns:repeat(5,1fr)}@media (max-width: 768px){.form-grid.cols-2[data-v-8bf99b08],.form-grid.cols-3[data-v-8bf99b08],.form-grid.cols-5[data-v-8bf99b08]{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.form-grid.cols-2[data-v-8bf99b08],.form-grid.cols-3[data-v-8bf99b08],.form-grid.cols-5[data-v-8bf99b08]{grid-template-columns:1fr}}.form-group[data-v-8bf99b08]{display:flex;flex-direction:column;gap:6px}.form-group.full-width[data-v-8bf99b08]{grid-column:1 / -1}.form-group.compact label[data-v-8bf99b08]{font-size:.82rem;text-align:center;color:var(--c-text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.form-group label[data-v-8bf99b08]{font-weight:500;color:var(--c-text);font-size:.88rem}.form-group label .required[data-v-8bf99b08]{color:#ef4444;margin-left:1px}.form-group input[data-v-8bf99b08],.form-group textarea[data-v-8bf99b08],.form-group select[data-v-8bf99b08]{padding:9px 12px;border:1.5px solid var(--c-border);border-radius:8px;font-size:.95rem;background:#fff;transition:border-color .2s,box-shadow .2s;font-family:inherit}.form-group input[data-v-8bf99b08]:focus,.form-group textarea[data-v-8bf99b08]:focus,.form-group select[data-v-8bf99b08]:focus{outline:none;border-color:var(--c-purple);box-shadow:0 0 0 3px #667eea1a}.form-group input[data-v-8bf99b08]::placeholder,.form-group textarea[data-v-8bf99b08]::placeholder{color:#c4c9d4}.input-with-unit[data-v-8bf99b08]{display:flex;align-items:stretch;border:1.5px solid var(--c-border);border-radius:8px;overflow:hidden;background:#fff;transition:border-color .2s,box-shadow .2s}.input-with-unit[data-v-8bf99b08]:focus-within{border-color:var(--c-purple);box-shadow:0 0 0 3px #667eea1a}.input-with-unit input[data-v-8bf99b08]{border:none!important;border-radius:0!important;box-shadow:none!important;flex:1;min-width:0;padding:9px 12px;font-size:.95rem;background:transparent}.input-with-unit input[data-v-8bf99b08]:focus{box-shadow:none!important;border:none!important}.input-unit[data-v-8bf99b08]{display:flex;align-items:center;padding:0 12px;background:var(--c-bg-subtle);color:var(--c-text-secondary);font-size:.82rem;font-weight:600;white-space:nowrap;border-left:1.5px solid var(--c-border);-webkit-user-select:none;user-select:none}.input-unit-empty[data-v-8bf99b08]{display:none}.form-subsections[data-v-8bf99b08]{display:flex;gap:16px}.form-subsection[data-v-8bf99b08]{flex:1;background:#fff;border-radius:8px;padding:14px;border:1px solid var(--c-border)}.subsection-label[data-v-8bf99b08]{font-size:.82rem;font-weight:600;color:var(--c-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px;padding-bottom:8px;border-bottom:1px dashed var(--c-border)}@media (max-width: 600px){.form-subsections[data-v-8bf99b08]{flex-direction:column}}.color-input-row[data-v-8bf99b08]{display:grid;grid-template-columns:44px 1fr;gap:8px}.color-picker[data-v-8bf99b08]{padding:2px!important;height:40px;min-width:44px;cursor:pointer;border-radius:8px}.help-text[data-v-8bf99b08]{color:var(--c-text-secondary);font-size:.9rem;margin-bottom:12px}.field-hint[data-v-8bf99b08]{color:var(--c-muted);font-size:.78rem;margin-top:0}.tanks-by-type[data-v-8bf99b08]{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start}.tank-type-column[data-v-8bf99b08]{flex:1 1 180px;min-width:160px;background:var(--c-bg-light);border:1px solid var(--c-border);border-radius:8px;overflow:hidden}.tank-type-header[data-v-8bf99b08]{background:var(--c-border);padding:6px 12px;font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--c-text)}.tank-checkbox-item[data-v-8bf99b08]{display:flex;align-items:center;gap:8px;padding:7px 12px;cursor:pointer;border-top:1px solid var(--c-bg-subtle);transition:background .15s}.tank-checkbox-item[data-v-8bf99b08]:hover{background:#f0f4ff}.tank-checkbox-item input[type=checkbox][data-v-8bf99b08]{width:16px;height:16px;cursor:pointer;flex-shrink:0}.tank-label[data-v-8bf99b08]{display:flex;flex-direction:column;gap:1px;line-height:1.2}.tank-name[data-v-8bf99b08]{font-size:.9rem;color:var(--c-heading);font-weight:500}.tank-capacity[data-v-8bf99b08]{font-size:.75rem;color:var(--c-text-secondary)}.no-tanks[data-v-8bf99b08]{color:var(--c-text-secondary);font-style:italic;font-size:.9rem}:root{--fs-page-title: 1.5rem;--fs-section: 1.2rem;--fs-section-sm: 1.1rem;--fs-tab: .95rem;--fs-body: .9rem;--fs-table: .88rem;--fs-small: .8rem;--fs-label: .78rem;--fs-hint: .72rem;--fs-badge: .7rem;--fs-badge-xs: .65rem;--fs-kpi: 1.3rem;--fs-loading: 1.1rem;--fw-normal: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--c-heading: #1a202c;--c-text: #2d3748;--c-text-secondary: #718096;--c-muted: #a0aec0;--c-body: #4a5568;--c-border: #e2e8f0;--c-border-strong: #cbd5e0;--c-bg-light: #f7fafc;--c-bg-subtle: #edf2f7;--c-bg-page: #f8fafc;--c-purple: #805ad5;--c-purple-dark: #553c9a;--c-gradient: linear-gradient(135deg, var(--c-purple) 0%, var(--c-purple-dark) 100%);--c-error: #e53e3e;--c-error-dark: #c53030;--c-success: #38a169;--c-warning: #dd6b20;--card-radius: 12px;--card-shadow: 0 1px 3px rgba(0, 0, 0, .06);--btn-radius: 8px;--btn-radius-sm: 6px;--btn-font-size: .9rem;--table-th-bg: #f7fafc;--table-border: #e2e8f0;--label-spacing: .03em}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.6;color:var(--c-text);background-color:var(--c-bg-page)}.navbar{background-color:var(--c-text);padding:1rem 2rem;box-shadow:0 2px 4px #0000001a}.navbar-brand{color:#fff;font-size:var(--fs-page-title);font-weight:var(--fw-bold);text-decoration:none}.navbar-nav{display:flex;gap:1.5rem;list-style:none}.nav-link{color:#ecf0f1;text-decoration:none;padding:.5rem 1rem;border-radius:var(--btn-radius-sm);transition:background-color .2s}.nav-link:hover{background-color:#ffffff1a}.nav-link.active{background-color:#fff3}.container{max-width:1400px;margin:0 auto;padding:0 1rem}.grid{display:grid;gap:1.5rem}.card{background:#fff;border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:1.5rem}.btn{display:inline-block;padding:8px 16px;border:none;border-radius:var(--btn-radius);background-color:var(--c-purple);color:#fff;cursor:pointer;font-size:var(--btn-font-size);font-weight:var(--fw-semibold);transition:background-color .2s}.btn:hover{background-color:var(--c-purple-dark)}.btn-secondary{background-color:var(--c-text-secondary)}.btn-secondary:hover{background-color:var(--c-body)}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;color:var(--c-text)}.form-input{width:100%;padding:.5rem;border:1px solid var(--c-border);border-radius:var(--btn-radius);font-size:var(--fs-body)}.form-input:focus{outline:none;border-color:var(--c-purple);box-shadow:0 0 0 2px #805ad533}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:8px 10px;border-bottom:1px solid var(--table-border);text-align:left}.table th{background-color:var(--table-th-bg);font-weight:var(--fw-semibold)}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}
