:root{--bg-app:#f9fafb;--bg-card:#fff;--bg-header:#181f2a;--text-main:#111827;--text-muted:#6b7280;--border-color:#f3f4f6;--border-dark:#2d3748;--primary:#ff7218;--primary-hover:#e05d07;--primary-light:#ff72181a;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000000d;--shadow-lg:0 10px 25px -5px #00000014;--radius-pill:9999px;--radius-card:16px;--radius-xl:24px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-app);color:var(--text-main);-webkit-font-smoothing:antialiased;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}h1,h2,h3,h4,.ultra-bold{letter-spacing:-.03em;font-weight:900!important}.loading-screen{min-height:100vh;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.spinner-large{border:4px solid #e5e7eb;border-top-color:var(--primary);border-radius:50%;width:44px;height:44px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}.caloria-login-page{background:#fc5c02;justify-content:center;align-items:center;width:100vw;min-height:100vh;padding:40px 24px;display:flex}.login-layout{justify-content:space-between;align-items:center;gap:48px;width:100%;max-width:1100px;display:flex}.login-left-panel{flex-direction:column;flex:1;align-items:center;max-width:520px;display:flex}.welcome-heading h1{color:#fff;text-align:center;letter-spacing:-.03em;margin-bottom:28px;font-size:34px;font-weight:900;line-height:1.25}.login-box{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#c8501459;border:1px solid #ffffff2e;border-radius:28px;width:100%;padding:36px 32px;box-shadow:0 20px 40px #0000001f}.login-box-title{color:#fff;text-align:center;margin-bottom:24px;font-size:22px;font-weight:900}.login-error-banner{color:#fff;border-radius:var(--radius-pill);background:#b91c1ce6;align-items:center;gap:8px;margin-bottom:20px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.caloria-form{flex-direction:column;gap:16px;display:flex}.password-field-wrapper{align-items:center;display:flex;position:relative}.password-field-wrapper input{padding-right:48px!important}.password-toggle-btn{color:#ffffffbf;cursor:pointer;border-radius:var(--radius-pill);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .15s;display:flex;position:absolute;right:14px}.password-toggle-btn:hover{color:#fff}.form-field input{border-radius:var(--radius-pill);color:#fff;background:#a0320a73;border:1px solid #ffffff26;outline:none;width:100%;padding:16px 20px;font-size:15px;font-weight:600;transition:all .2s}.form-field input::placeholder{color:#ffffffa6}.form-field input:focus{background:#8c2805a6;border-color:#ffffff80;box-shadow:0 0 0 3px #fff3}.login-submit-btn{color:#df652c;border-radius:var(--radius-pill);cursor:pointer;background:#fff;border:none;width:100%;margin-top:8px;padding:16px 24px;font-size:17px;font-weight:900;transition:transform .15s,box-shadow .15s}.login-submit-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.btn-spinner{border:3px solid #df652c4d;border-top-color:#df652c;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin;display:inline-block}.login-right-panel{flex:1;justify-content:center;align-items:center;display:flex}.logo-container{justify-content:center;align-items:center;display:flex;transform:translate(25%)}.kitchen-brand-logo{object-fit:contain;filter:none;width:100%;max-width:380px;height:auto}@media (width<=868px){.login-layout{flex-direction:column-reverse;gap:32px}.welcome-heading h1{margin-bottom:20px;font-size:26px}.logo-container{transform:none}.kitchen-brand-logo{max-width:240px}.login-left-panel{width:100%}}.holiday-container{flex-direction:column;min-height:100vh;display:flex}.holiday-top-bar{background:var(--bg-header);color:#fff;justify-content:space-between;align-items:center;padding:18px 40px;display:flex}.kitchen-brand{letter-spacing:-.02em;align-items:center;gap:10px;font-size:18px;font-weight:900;display:flex}.brand-dot{background:var(--primary);border-radius:50%;width:10px;height:10px}.holiday-card{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.holiday-icon-wrapper{color:#ef4444;background:#fef2f2;border-radius:30px;justify-content:center;align-items:center;width:100px;height:100px;margin-bottom:24px;display:flex}.holiday-date-badge{border-radius:var(--radius-pill);color:var(--text-main);background:#e5e7eb;margin-bottom:16px;padding:6px 18px;font-size:14px;font-weight:800}.holiday-title{color:var(--text-main);letter-spacing:-.03em;margin-bottom:12px;font-size:32px;font-weight:900}.holiday-subtitle{color:var(--text-muted);max-width:500px;font-size:18px;font-weight:500;line-height:1.6}.dashboard-container{flex-direction:column;height:100vh;max-height:100vh;transition:background-color .4s;display:flex;overflow:hidden}.meal-bg-lunch{background-color:#fde8b3}.meal-bg-dinner{background-color:#bdd8f7}.dashboard-header{background:var(--bg-header);color:#fff;border-bottom:1px solid #ffffff0d;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 32px;display:flex}.brand-section{align-items:center;gap:14px;display:flex}.brand-header-logo{border-radius:var(--radius-pill);object-fit:contain;width:40px;height:40px}.brand-title{color:#fff;letter-spacing:-.03em;font-size:19px;font-weight:900;line-height:1.2}.brand-subtitle{color:#9ca3af;font-size:12px;font-weight:600}.header-actions{align-items:center;gap:12px;display:flex}.dashboard-main{flex-direction:column;flex:1;align-items:center;width:100%;max-width:100%;min-height:0;margin:0 auto;padding:14px 28px;display:flex;overflow:hidden}.dashboard-main.full-width{width:100%;max-width:100%}.meal-selector-section{flex-shrink:0;justify-content:center;width:100%;max-width:440px;margin-bottom:12px;display:flex}.meal-tabs{border-radius:var(--radius-pill);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:#fff;gap:6px;width:100%;padding:5px;display:flex}.meal-tab{border-radius:var(--radius-pill);color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:8px;padding:9px 20px;font-size:14px;font-weight:800;transition:all .2s;display:flex}.meal-tab.active{background:var(--primary);color:#fff;box-shadow:0 4px 12px #ff721859}.plan-breakdown-card{border-radius:var(--radius-card);width:100%;box-shadow:var(--shadow-md);border:1px solid var(--border-color);background:#fff;flex-direction:column;flex:1;min-height:0;padding:18px 24px;display:flex;overflow:hidden}.plan-breakdown-card.full-width-card{width:100%}.card-header-row{flex-shrink:0;justify-content:space-between;align-items:center;width:100%;margin-bottom:14px;display:flex}.heading-with-badge{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;width:100%;display:flex}.heading-with-badge h2{color:var(--text-main);letter-spacing:-.03em;font-size:21px;font-weight:900}.header-stat-badges{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.total-count-badge{color:#fff;border-radius:var(--radius-pill);letter-spacing:-.01em;background:#111827;padding:6px 16px;font-size:13px;font-weight:800;box-shadow:0 2px 5px #0000001f}.diet-stat-badge{border-radius:var(--radius-pill);align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:700;display:inline-flex}.diet-stat-badge.veg-highlight{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0}.diet-stat-badge.non-veg-highlight{color:#b91c1c;background:#fee2e2;border:1px solid #fecaca}.chart-icon-badge{border-radius:var(--radius-pill);width:36px;height:36px;color:var(--text-muted);background:#f3f4f6;justify-content:center;align-items:center;display:flex}.categories-2x2-grid{flex:1;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:14px;width:100%;min-height:0;display:grid}.plan-box{border-radius:var(--radius-card);cursor:pointer;border:1px solid #0000;flex-direction:column;justify-content:space-between;height:100%;min-height:0;padding:18px 22px;transition:transform .15s,box-shadow .15s;display:flex}.plan-box:hover{transform:translateY(-3px);box-shadow:0 10px 24px #00000014}.plan-box-top{justify-content:space-between;align-items:center;width:100%;display:flex}.plan-box-title{letter-spacing:-.01em;text-transform:uppercase;font-size:14px;font-weight:900}.plan-box-icon{opacity:.75;justify-content:center;align-items:center;display:flex}.plan-box-count{letter-spacing:-.04em;margin:14px 0 18px;font-size:44px;font-weight:900;line-height:1}.plan-box-breakdown{flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;display:flex}.cat-breakdown-pill{border-radius:var(--radius-pill);align-items:center;gap:7px;padding:6px 14px;font-size:14px;font-weight:800;line-height:1;display:inline-flex}.cat-breakdown-pill strong{font-size:16px;font-weight:900}.cat-breakdown-pill.veg-pill{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0}.cat-breakdown-pill.non-veg-pill{color:#b91c1c;background:#fee2e2;border:1px solid #fecaca}.dot{border-radius:50%;width:7px;height:7px;display:inline-block}.dot-veg{background:#16a34a}.dot-non-veg{background:#dc2626}.plan-box.high-protein{background:#fff1f2;border-color:#ffe4e6}.plan-box.high-protein .plan-box-title,.plan-box.high-protein .plan-box-count,.plan-box.high-protein .plan-box-icon{color:#be123c}.plan-box.low-carb{background:#f0f9ff;border-color:#e0f2fe}.plan-box.low-carb .plan-box-title,.plan-box.low-carb .plan-box-count,.plan-box.low-carb .plan-box-icon{color:#2563eb}.plan-box.balanced{background:#f0fdf4;border-color:#dcfce7}.plan-box.balanced .plan-box-title,.plan-box.balanced .plan-box-count,.plan-box.balanced .plan-box-icon{color:#16a34a}.plan-box.custom{background:#faf5ff;border-color:#f3e8ff}.plan-box.custom .plan-box-title,.plan-box.custom .plan-box-count,.plan-box.custom .plan-box-icon{color:#9333ea}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:100;background:#0f172aa6;justify-content:center;align-items:center;padding:24px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-centered-content{border-radius:var(--radius-xl);border:1px solid var(--border-color);background:#fff;flex-direction:column;width:100%;max-width:860px;max-height:85vh;animation:.2s cubic-bezier(.16,1,.3,1) popIn;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.modal-centered-content.modal-wide{width:95vw;max-width:1360px;height:88vh;max-height:88vh}@keyframes popIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{border-bottom:1px solid var(--border-color);background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 32px;display:flex}.modal-title-group{align-items:center;gap:14px;display:flex}.modal-category-pill{border-radius:var(--radius-pill);letter-spacing:.5px;text-transform:uppercase;padding:5px 16px;font-size:13px;font-weight:800}.modal-header h2{letter-spacing:-.03em;color:var(--text-main);font-size:20px;font-weight:900}.btn-close{border-radius:var(--radius-pill);cursor:pointer;color:var(--text-muted);background:#f3f4f6;border:none;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.btn-close:hover{color:var(--text-main);background:#e5e7eb}.modal-body-side-by-side{background:#f9fafb;flex:1;grid-template-columns:1fr 1fr;gap:20px;min-height:0;padding:20px 24px;display:grid;overflow:hidden}@media (width<=900px){.modal-body-side-by-side{grid-template-columns:1fr;overflow-y:auto}}.modal-column{border-radius:var(--radius-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;min-height:0;display:flex;overflow:hidden}.column-banner{border-bottom:2px solid #0000;flex-shrink:0;padding:14px 20px}.veg-banner{background:#f0fdf4;border-bottom-color:#bbf7d0}.non-veg-banner{background:#fff1f2;border-bottom-color:#fecaca}.column-banner-title{justify-content:space-between;align-items:center;display:flex}.banner-title-text{letter-spacing:-.01em;font-size:15px;font-weight:900}.veg-banner .banner-title-text{color:#15803d}.non-veg-banner .banner-title-text{color:#b91c1c}.banner-count-badge{border-radius:var(--radius-pill);padding:3px 12px;font-size:13px;font-weight:900}.veg-count{color:#15803d;background:#dcfce7;border:1px solid #86efac}.non-veg-count{color:#b91c1c;background:#fee2e2;border:1px solid #fca5a5}.column-table-scroll{flex:1;position:relative;overflow-y:auto}.empty-state-column{text-align:center;color:var(--text-muted);padding:48px 20px;font-size:14px;font-weight:600}.orders-excel-table{table-layout:auto;border-collapse:collapse;text-align:left;width:max-content;min-width:100%;font-size:13px}.column-table-scroll{-webkit-overflow-scrolling:touch;flex:1;position:relative;overflow:auto}.sticky-th{z-index:10;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;padding:8px;font-size:11px;font-weight:800;position:sticky;top:0}.veg-table thead th.sticky-th{color:#166534;background:#ecfdf5;border-bottom:2px solid #a7f3d0}.non-veg-table thead th.sticky-th{color:#9f1239;background:#fff1f2;border-bottom:2px solid #fecdd3}.orders-excel-table td{border-bottom:1px solid var(--border-color);color:var(--text-main);vertical-align:middle;white-space:nowrap;padding:8px}.col-serial{text-align:center;width:36px;min-width:36px;max-width:36px;padding:6px 2px!important}.serial-circle{color:#374151;-webkit-user-select:none;user-select:none;background:#fff;border:1.5px solid #d1d5db;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin:0 auto;font-size:11px;font-weight:800;transition:all .15s;display:flex}.veg-order-row{cursor:pointer;background:#fff;transition:background-color .15s}.veg-order-row.loc-group-alt{background:#f4fbf6}.veg-order-row:hover{background:#dcfce7}.non-veg-order-row{cursor:pointer;background:#fff;transition:background-color .15s}.non-veg-order-row.loc-group-alt{background:#fff5f5}.non-veg-order-row:hover{background:#fee2e2}.row-selected-veg{cursor:pointer;background:#bbf7d0!important;border-bottom:1px solid #86efac!important}.row-selected-veg:hover{background:#a7f3d0!important}.row-selected-veg .serial-circle{color:#fff;background:#16a34a;border-color:#15803d}.row-selected-nonveg{cursor:pointer;background:#fecdd3!important;border-bottom:1px solid #fda4af!important}.row-selected-nonveg:hover{background:#fca5a5!important}.row-selected-nonveg .serial-circle{color:#fff;background:#dc2626;border-color:#b91c1c}.row-delivered-veg{cursor:pointer;background:#16a34a!important;border-bottom:1px solid #15803d!important}.row-delivered-veg:hover{background:#15803d!important}.row-delivered-veg td,.row-delivered-veg .name-text,.row-delivered-veg .location-text{color:#fff!important}.row-delivered-veg .door-badge{color:#fff!important;background:#ffffff40!important;border-color:#fff6!important}.row-delivered-veg .user-avatar-small{color:#16a34a!important;background:#fff!important}.row-delivered-veg .serial-circle{color:#16a34a;background:#fff;border-color:#fff;font-weight:900}.row-delivered-nonveg{cursor:pointer;background:#dc2626!important;border-bottom:1px solid #b91c1c!important}.row-delivered-nonveg:hover{background:#b91c1c!important}.row-delivered-nonveg td,.row-delivered-nonveg .name-text,.row-delivered-nonveg .location-text{color:#fff!important}.row-delivered-nonveg .door-badge{color:#fff!important;background:#ffffff40!important;border-color:#fff6!important}.row-delivered-nonveg .user-avatar-small{color:#dc2626!important;background:#fff!important}.row-delivered-nonveg .serial-circle{color:#dc2626;background:#fff;border-color:#fff;font-weight:900}.delivered-badge{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.5px;background:#fff;margin-left:4px;padding:2px 6px;font-size:9px;font-weight:900;display:inline-block}.delivered-badge.veg-deliv{color:#15803d}.delivered-badge.non-veg-deliv{color:#b91c1c}.col-name{min-width:100px}.col-customization{min-width:80px}.col-location{min-width:90px}.col-door{min-width:70px}.customization-text{color:#6b7280;word-break:break-word;font-size:12px;font-weight:600}.customization-text.has-customization{color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:4px;padding:2px 6px;font-weight:800;display:inline-block}.row-delivered-veg .customization-text,.row-delivered-nonveg .customization-text{color:#fff!important}.row-delivered-veg .customization-text.has-customization,.row-delivered-nonveg .customization-text.has-customization{color:#fff!important;background:#ffffff40!important;border-color:#fff6!important}.door-badge{font-variant-numeric:tabular-nums;word-break:break-word;border-radius:5px;padding:3px 8px;font-size:12px;font-weight:800;display:inline-block}.door-badge.veg-door{color:#15803d;background:#e8f8ee;border:1px solid #bbf7d0}.door-badge.non-veg-door{color:#b91c1c;background:#fde8e8;border:1px solid #fecaca}.empty-state{text-align:center;color:var(--text-muted);padding:48px 24px;font-weight:500}.user-name-cell{align-items:center;gap:10px;display:flex}.user-avatar-small{width:28px;height:28px;color:var(--text-muted);background:#e5e7eb;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.name-text{color:var(--text-main);font-weight:800}.location-text{color:var(--text-muted);font-weight:600}.btn-icon{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;transition:background .2s,transform .15s;display:flex}.btn-icon:hover:not(:disabled){background:#ffffff38;transform:rotate(30deg)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:#fff;border-radius:var(--radius-pill);cursor:pointer;background:#ffffff1f;border:1px solid #fff3;align-items:center;gap:7px;padding:9px 18px;font-size:14px;font-weight:700;transition:background .2s,transform .15s;display:flex}.btn-secondary:hover{background:#ffffff38;transform:translateY(-1px)}
