:root{--tg-bg:var(--tg-theme-bg-color,#fff);--tg-bg2:var(--tg-theme-secondary-bg-color,#f2f2f7);--tg-text:var(--tg-theme-text-color,#000);--tg-hint:var(--tg-theme-hint-color,#8e8e93);--tg-link:var(--tg-theme-link-color,#007aff);--tg-btn:var(--tg-theme-button-color,#007aff);--tg-btn-text:var(--tg-theme-button-text-color,#fff);--tg-accent:var(--tg-theme-accent-text-color,#007aff)}[data-theme=light]{--tg-bg:#fff;--tg-bg2:#f2f2f7;--tg-text:#000;--tg-hint:#8e8e93;--tg-link:#007aff;--tg-btn:#007aff;--tg-btn-text:#fff;--tg-accent:#007aff}[data-theme=dark]{--tg-bg:#1c1c1e;--tg-bg2:#2c2c2e;--tg-text:#fff;--tg-hint:#98989d;--tg-link:#0a84ff;--tg-btn:#0a84ff;--tg-btn-text:#fff;--tg-accent:#0a84ff}:root{--bg:var(--tg-bg);--surface:var(--tg-bg2);--text:var(--tg-text);--hint:var(--tg-hint);--accent:var(--tg-accent);--btn:var(--tg-btn);--btn-text:var(--tg-btn-text);--card-bg:var(--tg-bg);--card-bg-raised:var(--tg-bg2);--bg-secondary:#f2f2f7;--ring-track:#e5e5ea;--divider:#00000012;--divider-strong:#0000001f;--shadow-card:0 2px 16px #00000012, 0 0 0 .5px #0000000f;--shadow-nav:0 -1px 0 #00000014;--nav-blur-bg:#ffffffd9;--tag-alpha:.1;--nav-height:60px;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px);--radius-xs:8px;--radius-sm:12px;--radius:18px;--radius-lg:24px;--protein-color:#5e9bff;--carbs-color:#ff9f43;--fats-color:#a29bfe;--green:#34c759;--blue:#007aff;--purple:#5856d6;--orange:#ff9500;--red:#ff3b30;--gray:#8e8e93}body.theme-dark{--bg-secondary:#2c2c2e;--ring-track:#3a3a3c;--divider:#ffffff14;--divider-strong:#ffffff26;--shadow-card:0 2px 16px #0000004d, 0 0 0 .5px #ffffff0f;--shadow-nav:0 -1px 0 #ffffff0f;--nav-blur-bg:#1c1c1ee6;--tag-alpha:.18}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{height:-webkit-fill-available}body{background:var(--surface);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;min-height:100vh;-webkit-user-select:none;user-select:none;min-height:-webkit-fill-available;font-family:Inter,-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif}input,textarea{-webkit-user-select:auto;user-select:auto}.app-container{padding-bottom:calc(var(--nav-height) + var(--safe-bottom) + 8px);min-height:100vh;position:relative}.page{flex-direction:column;gap:14px;padding:20px 16px;display:flex}.page-title{letter-spacing:-.6px;color:var(--text);font-size:28px;font-weight:800;line-height:1.1}.page-subtitle{color:var(--hint);margin-top:2px;font-size:14px;font-weight:500}.section-label{text-transform:uppercase;letter-spacing:.6px;color:var(--hint);padding:0 2px;font-size:12px;font-weight:700}.card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-card);flex-direction:column;gap:12px;padding:16px;transition:transform .15s,box-shadow .15s;display:flex}.card:active{transform:scale(.985)}.card-surface{background:var(--card-bg-raised);box-shadow:none}.card-tight{gap:8px;padding:12px 14px}.dish-card{align-items:center;gap:12px;display:flex}.dish-info{flex:1;min-width:0}.dish-title{white-space:pre-wrap;font-size:15px;font-weight:600;line-height:1.35}.dish-meta{color:var(--hint);margin-top:3px;font-size:13px;font-weight:500}.dish-badge{background:rgba(255, 149, 0, calc(var(--tag-alpha) * 1.5));color:var(--orange);border-radius:20px;align-items:center;gap:3px;margin-top:5px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.meal-header{align-items:center;gap:8px;padding:6px 14px 4px;display:flex}.meal-header-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.meal-header-label{text-transform:uppercase;letter-spacing:.5px;color:var(--hint);font-size:13px;font-weight:700}.meal-header-kcal{color:var(--hint);margin-left:auto;font-size:13px;font-weight:600}.nutrient-bars{flex-direction:column;gap:10px;padding:4px 0;display:flex}.nutrient-row{flex-direction:column;gap:5px;display:flex}.nutrient-row-header{justify-content:space-between;align-items:center;display:flex}.nutrient-label{color:var(--hint);text-transform:uppercase;letter-spacing:.3px;font-size:12px;font-weight:600}.nutrient-value{color:var(--text);font-size:12px;font-weight:700}.nutrient-track{background:var(--divider);border-radius:100px;height:6px;overflow:hidden}.nutrient-fill{border-radius:100px;height:100%;transition:width .8s cubic-bezier(.34,1.56,.64,1)}.summary-card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:16px;padding:20px;display:flex}.summary-stats{gap:0;display:flex}.summary-stat{flex-direction:column;flex:1;gap:2px;padding:0 4px;display:flex}.summary-stat+.summary-stat{border-left:1px solid var(--divider);margin-left:12px;padding-left:16px}.summary-stat-value{letter-spacing:-.5px;color:var(--text);font-size:20px;font-weight:800}.summary-stat-label{color:var(--hint);font-size:12px;font-weight:500}.today-header-info{justify-content:space-between;align-items:flex-start;margin-top:8px;display:flex}.notification-bell{-webkit-backdrop-filter:blur(10px);cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s;display:flex;position:relative;box-shadow:0 4px 12px #0000000d}.notification-badge{background:var(--red);color:#fff;border:2px solid var(--surface);border-radius:10px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:11px;font-weight:800;display:flex;position:absolute;top:-2px;right:-2px;box-shadow:0 2px 4px #ff3b3066}body.theme-dark .notification-bell{background:#0003;border-color:#ffffff0d;box-shadow:0 4px 12px #0000004d}body.theme-dark .notification-badge{border-color:var(--surface)}.status-pill{white-space:nowrap;border-radius:100px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.status-confirmed,.status-delivered{background:rgba(52, 199, 89, var(--tag-alpha));color:var(--green)}.status-sent{background:rgba(0, 122, 255, var(--tag-alpha));color:var(--blue)}.status-viewed{background:rgba(88, 86, 214, var(--tag-alpha));color:var(--purple)}.status-modified{background:rgba(255, 149, 0, var(--tag-alpha));color:var(--orange)}.status-skipped,.status-draft{background:rgba(142, 142, 147, var(--tag-alpha));color:var(--gray)}.status-manual_required{background:rgba(255, 59, 48, var(--tag-alpha));color:var(--red)}.status-in_delivery{background:rgba(0, 122, 255, var(--tag-alpha));color:var(--blue)}.status-awaiting_selection{background:rgba(255, 149, 0, var(--tag-alpha));color:var(--orange)}.btn{background:var(--btn);color:var(--btn-text);border-radius:var(--radius-sm);cursor:pointer;text-align:center;letter-spacing:-.1px;border:none;width:100%;padding:14px 20px;font-family:inherit;font-size:15px;font-weight:700;transition:opacity .15s,transform .12s}.btn:active{opacity:.78;transform:scale(.97)}.btn:disabled{opacity:.35;pointer-events:none}.btn-sm{border-radius:var(--radius-xs);width:auto;padding:8px 14px;font-size:13px;font-weight:600}.btn-secondary{background:var(--card-bg-raised);color:var(--text);box-shadow:none}.btn-ghost{color:var(--accent);box-shadow:none;background:0 0;padding:8px 12px;font-weight:600}.btn-danger{color:var(--red);background:#ff3b301f}.btn-primary-action{color:#fff;background:linear-gradient(135deg,#007aff,#5856d6);border:none;font-weight:700;box-shadow:0 4px 14px #007aff4d}.btn-primary-action:active{transform:scale(.98);box-shadow:0 2px 8px #007aff33}.bottom-nav{height:calc(var(--nav-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:var(--nav-blur-bg);-webkit-backdrop-filter:blur(24px)saturate(180%);box-shadow:var(--shadow-nav);z-index:200;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-item{cursor:pointer;color:var(--hint);flex-direction:column;align-items:center;gap:4px;padding:6px 20px;text-decoration:none;transition:color .2s,transform .12s;display:flex;position:relative}.nav-item:active{transform:scale(.88)}.nav-item.active{color:var(--accent)}.nav-icon{justify-content:center;align-items:center;width:24px;height:24px;display:flex}.nav-icon svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px;transition:stroke-width .2s}.nav-item.active .nav-icon svg{stroke-width:2.2px}.nav-label{letter-spacing:.15px;font-size:10px;font-weight:600}.date-scroller{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;padding:4px 2px 8px;display:flex;overflow-x:auto}.date-scroller::-webkit-scrollbar{display:none}.date-chip{border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;min-width:52px;box-shadow:var(--shadow-card);border:1.5px solid #0000;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative}.date-chip:active{transform:scale(.93)}.date-chip.active{background:var(--accent);color:var(--btn-text);border-color:var(--accent);box-shadow:0 4px 16px #007aff4d}.date-chip.has-menu .date-dot{background:var(--accent);border-radius:50%;width:5px;height:5px;margin-top:3px}.date-chip.active .date-dot{background:#ffffffb3}.date-weekday{text-transform:uppercase;letter-spacing:.3px;opacity:.6;font-size:10px;font-weight:700}.date-day{letter-spacing:-.5px;font-size:20px;font-weight:800}.history-list{flex-direction:column;gap:0;display:flex;position:relative}.history-item{gap:14px;padding:0 0 20px;display:flex;position:relative}.history-item:last-child{padding-bottom:0}.history-left{flex-direction:column;flex-shrink:0;align-items:center;width:18px;padding-top:3px;display:flex}.history-dot{border:2px solid var(--surface);border-radius:50%;flex-shrink:0;width:12px;height:12px;box-shadow:0 0 0 1.5px}.history-line{background:var(--divider);flex:1;width:1.5px;margin-top:6px}.history-item:last-child .history-line{display:none}.history-content{flex:1;min-width:0;padding-bottom:4px}.history-date-label{color:var(--hint);margin-bottom:6px;font-size:12px;font-weight:600}.history-card{background:var(--card-bg);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.history-card-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.history-tariff{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.history-dishes-list{color:var(--hint);font-size:13px;line-height:1.5}.profile-hero{flex-direction:column;align-items:center;gap:10px;padding:12px 0 8px;display:flex}.profile-avatar{background:linear-gradient(135deg, var(--accent) 0%, #ff6b9d 100%);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;font-size:30px;font-weight:800;display:flex;box-shadow:0 8px 24px #00000026}.profile-name{letter-spacing:-.4px;font-size:22px;font-weight:800}.profile-username{color:var(--hint);font-size:14px;font-weight:500}.profile-stats{gap:10px;display:flex}.profile-stat{background:var(--card-bg);border-radius:var(--radius-sm);text-align:center;box-shadow:var(--shadow-card);flex-direction:column;flex:1;gap:4px;padding:14px 12px;display:flex}.profile-stat-value{letter-spacing:-.5px;font-size:22px;font-weight:800}.profile-stat-label{color:var(--hint);text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:600}.profile-row{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.profile-row:last-child{border-bottom:none}.profile-label{color:var(--hint);font-size:14px;font-weight:500}.profile-value{text-align:right;flex:1;margin-left:16px;font-size:14px;font-weight:600}.restriction-tags{flex-wrap:wrap;gap:6px;padding-top:4px;display:flex}.restriction-tag{border-radius:100px;padding:5px 12px;font-size:12px;font-weight:700;display:inline-flex}.restriction-allergen{background:rgba(255, 59, 48, var(--tag-alpha));color:var(--red)}.restriction-dietary{background:rgba(0, 122, 255, var(--tag-alpha));color:var(--blue)}.pause-row{border-bottom:1px solid var(--divider);flex-direction:column;gap:2px;padding:10px 0;display:flex}.pause-row:last-child{border-bottom:none}.pause-dates{font-size:14px;font-weight:600}.pause-reason{color:var(--hint);font-size:13px}.star-rating{justify-content:center;gap:8px;padding:8px 0;display:flex}.star{cursor:pointer;filter:grayscale()opacity(.25);font-size:30px;transition:transform .15s}.star:active{transform:scale(1.35)}.star.filled{filter:none}.star-rating-mini{gap:2px;display:flex}.star-mini{filter:grayscale()opacity(.25);font-size:14px}.star-mini.filled{filter:none}.skeleton{background:linear-gradient(90deg, var(--card-bg-raised) 25%, var(--card-bg) 50%, var(--card-bg-raised) 75%);border-radius:var(--radius-sm);background-size:300% 100%;animation:1.6s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-title{border-radius:8px;height:22px}.skeleton-text{border-radius:6px;height:15px}.skeleton-card{border-radius:var(--radius);height:80px}.skeleton-circle{border-radius:50%}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:56px 24px;display:flex}.empty-icon{opacity:.7;font-size:52px;animation:3.5s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty-title{letter-spacing:-.3px;font-size:20px;font-weight:800}.empty-text{color:var(--hint);max-width:270px;font-size:14px;font-weight:500;line-height:1.6}.spinner{border:3px solid var(--card-bg-raised);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;margin:56px auto;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.pull-indicator{text-align:center;color:var(--hint);padding:12px;font-size:13px;font-weight:500}::-webkit-scrollbar{display:none}.divider{background:var(--divider);border-radius:100px;height:1px}.premium-stats-container{gap:12px;display:flex}.premium-stat-card{border-radius:var(--radius);box-shadow:var(--shadow-card);flex:1;align-items:center;gap:12px;padding:16px;display:flex;position:relative;overflow:hidden}.premium-stat-card:after{content:"";-webkit-backdrop-filter:blur(8px);z-index:1;background:#ffffff1a;position:absolute;inset:0}.gradient-blue{color:#fff;background:linear-gradient(135deg,#007affe6 0%,#00c6ffcc 100%)}.gradient-orange{color:#fff;background:linear-gradient(135deg,#ff9500e6 0%,#fc0c 100%)}.premium-stat-icon{z-index:2;background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:24px;display:flex}.premium-stat-content{z-index:2;flex-direction:column;display:flex}.premium-stat-label{text-transform:uppercase;opacity:.85;letter-spacing:.5px;font-size:11px;font-weight:700}.premium-stat-value{letter-spacing:-.3px;font-size:16px;font-weight:800}.section-header-row{justify-content:space-between;align-items:center;display:flex}.edit-icon-btn{color:var(--accent);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;padding:4px 8px;font-size:13px;font-weight:600;transition:opacity .15s}.edit-icon-btn:active{opacity:.6}.bottom-sheet-backdrop{z-index:1000;background:#00000080;position:fixed;inset:0}.bottom-sheet{background:var(--surface);z-index:1001;border-radius:24px 24px 0 0;flex-direction:column;max-height:90vh;padding:16px 20px 32px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 32px #00000026}.bottom-sheet-drag-handle{background:var(--divider-strong);border-radius:4px;width:40px;height:4px;margin:0 auto 16px}.bottom-sheet-title{text-align:center;margin-bottom:20px;font-size:20px;font-weight:800}.bottom-sheet-content{flex:1;overflow-y:auto}.options-list{flex-direction:column;gap:12px;display:flex}.option-item{background:var(--card-bg);border-radius:var(--radius-sm);cursor:pointer;border:2px solid #0000;justify-content:space-between;align-items:center;padding:16px;transition:transform .1s;display:flex}.option-item:active{transform:scale(.98)}.option-item.selected{border-color:var(--accent);background:#007aff0d}.option-title{font-size:16px;font-weight:600}.option-radio{border:2px solid var(--hint);border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.option-item.selected .option-radio{border-color:var(--accent)}.option-radio-inner{background:var(--accent);border-radius:50%;width:10px;height:10px}.option-checkbox{border:2px solid var(--hint);color:#0000;border-radius:6px;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;font-weight:700;display:flex}.option-checkbox.checked{background:var(--accent);border-color:var(--accent);color:#fff}.settings-card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;display:flex;overflow:hidden}.settings-row{cursor:pointer;justify-content:space-between;align-items:center;padding:14px 20px;transition:background .15s;display:flex}.settings-row:active{background:var(--divider)}.settings-row-left{align-items:center;gap:14px;display:flex}.settings-icon{font-size:20px;line-height:1}.settings-label{color:var(--text);font-size:16px;font-weight:500}.settings-row-right{align-items:center;gap:8px;display:flex}.settings-value{color:var(--hint);white-space:nowrap;text-overflow:ellipsis;text-align:right;max-width:150px;font-size:15px;overflow:hidden}.settings-chevron{color:#8e8e9399;padding-bottom:2px;font-size:20px;line-height:1}.settings-divider{background:var(--divider);height:1px;margin-left:54px}.calorie-tracking-card{text-align:center;flex-direction:column;align-items:center;padding:24px 16px;display:flex}.calorie-ring-wrapper{justify-content:center;align-items:center;margin-bottom:20px;display:flex;position:relative}.calorie-ring-text{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute}.calorie-consumed{color:var(--text);font-size:32px;font-weight:800;line-height:1.1}.calorie-total{color:var(--hint);font-size:14px;font-weight:500}.macro-bars-compact{justify-content:space-between;gap:16px;width:100%;display:flex}.macro-bar-item{flex-direction:column;flex:1;gap:6px;display:flex}.macro-label-small{color:var(--hint);text-align:left;white-space:nowrap;font-size:11px;font-weight:700}.macro-track-small{background:var(--bg-secondary);border-radius:4px;height:6px;overflow:hidden}.macro-fill-small{border-radius:4px;height:100%}.macro-fill-small.protein{background:var(--blue)}.macro-fill-small.carbs{background:var(--green)}.macro-fill-small.fats{background:var(--orange)}.delivery-progress-container{background:var(--card-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--divider);box-shadow:var(--shadow-card);border-radius:20px;margin-bottom:20px;padding:16px;position:relative;overflow:hidden}.delivery-status-card.status-skipped{background:var(--card-bg);box-shadow:var(--shadow-sm);border-left:4px solid var(--orange);border-radius:16px;align-items:center;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.delivery-status-card .delivery-status-icon{font-size:24px}.delivery-status-card .delivery-status-info{flex-direction:column;display:flex}.delivery-status-card .delivery-status-text{font-size:16px;font-weight:700}.delivery-progress-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.delivery-progress-title{color:var(--text);align-items:center;gap:10px;font-size:16px;font-weight:700;display:flex}.dp-icon{font-size:22px}.dp-time{color:var(--hint);background:var(--surface);border-radius:12px;padding:4px 10px;font-size:13px;font-weight:600}.dp-stepper{padding:0 10px;position:relative}.dp-track-bg{background:var(--surface);z-index:1;border-radius:2px;height:4px;position:absolute;top:10px;left:42px;right:42px}.dp-track-fill{background:var(--btn);z-index:2;transform-origin:0;border-radius:2px;height:4px;position:absolute;top:10px;left:42px;right:42px}.dp-steps{z-index:3;justify-content:space-between;display:flex;position:relative}.dp-step{flex-direction:column;align-items:center;gap:8px;width:65px;display:flex}.dp-node{background:var(--card-bg);border:3px solid var(--surface);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:all .3s;display:flex}.dp-node.completed{border-color:var(--btn);background:var(--btn);color:var(--btn-text,#fff)}.dp-node.completed svg{width:12px;height:12px}.dp-node.current{border-color:var(--btn);background:var(--card-bg);animation:2s infinite dpPulse}@keyframes dpPulse{0%{box-shadow:0 0 #007aff66}70%{box-shadow:0 0 0 8px #007aff00}to{box-shadow:0 0 #007aff00}}.dp-node-dot{background:var(--btn);border-radius:50%;width:8px;height:8px}.dp-label{text-align:center;color:var(--hint);font-size:11px;font-weight:500;line-height:1.1;transition:color .3s}.dp-label.active{color:var(--text);font-weight:700}.delivery-photo-block{background:var(--card-bg);border:1px solid var(--divider);box-shadow:var(--shadow-card);border-radius:20px;margin-bottom:20px;padding:16px;overflow:hidden}.delivery-photo-block--loading{padding:20px}.delivery-photo-skeleton{background:linear-gradient(90deg, var(--bg-secondary) 25%, var(--divider) 50%, var(--bg-secondary) 75%);background-size:200% 100%;border-radius:12px;width:100%;height:160px;animation:1.5s infinite shimmer}.delivery-photo-header{align-items:center;gap:8px;margin-bottom:12px;display:flex}.delivery-photo-icon{font-size:18px}.delivery-photo-title{color:var(--text);font-size:15px;font-weight:700}.delivery-photo-image-wrap{cursor:pointer;border-radius:14px;margin-bottom:12px;position:relative;overflow:hidden}.delivery-photo-image-wrap:active{transition:transform .1s;transform:scale(.98)}.delivery-photo-image{object-fit:cover;border-radius:14px;width:100%;max-height:220px;display:block}.delivery-photo-zoom-hint{-webkit-backdrop-filter:blur(8px);color:#fff;background:#00000080;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;bottom:10px;right:10px}.delivery-photo-dismiss{width:100%;color:var(--green,#34c759);cursor:pointer;background:linear-gradient(135deg,#34c7591a,#34c7590d);border:none;border-radius:14px;padding:12px;font-family:inherit;font-size:15px;font-weight:700;transition:all .2s}.delivery-photo-dismiss:active{background:#34c75926;transform:scale(.97)}.delivery-photo-lightbox{z-index:9999;cursor:pointer;background:#000000eb;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.delivery-photo-lightbox-img{object-fit:contain;border-radius:12px;max-width:100%;max-height:85vh}.delivery-photo-lightbox-close{top:max(16px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(10px);color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex;position:absolute;right:16px}.dish-card-interactive{background:var(--card-bg);-webkit-user-select:none;user-select:none;cursor:pointer;border-radius:12px;align-items:center;gap:12px;min-height:72px;padding:12px 14px;transition:all .2s;display:flex}.dish-card-interactive:active{background:var(--bg-secondary);transform:scale(.98)}.dish-card-interactive.eaten{opacity:.7}.dish-card-left{justify-content:center;align-items:center;display:flex}.dish-image{object-fit:cover;background-color:var(--bg-secondary);border-radius:10px;flex-shrink:0;width:44px;height:44px}.dish-image-placeholder{background-color:var(--bg-secondary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex}.eaten-checkbox{border:2px solid var(--divider);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.eaten-checkbox.checked{background:var(--blue);border-color:var(--blue)}.eaten-checkbox svg{width:16px;height:16px}.dish-title.strikethrough{color:var(--hint);text-decoration:line-through}.dish-meta-row{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.dish-compact-rating{transform-origin:0;transform:scale(.8)}.dish-meta-details{color:var(--hint);margin-left:auto;font-size:12px;font-weight:600}.icon-button{background:var(--bg-secondary);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;transition:all .2s;display:flex}.icon-button:active{background:var(--divider);transform:scale(.9)}.sauce-selector-card{flex-direction:column;gap:12px;padding:16px;display:flex}.sauce-selector-header{justify-content:space-between;align-items:center;display:flex}.sauce-limit-badge{background:var(--bg-secondary);color:var(--hint);border-radius:12px;padding:4px 10px;font-size:12px;font-weight:700}.sauce-list{flex-direction:column;gap:8px;display:flex}.sauce-row{background:var(--bg-secondary);cursor:pointer;border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;padding:12px;transition:all .2s;display:flex}.sauce-row.selected{background:#2481cc1a;border-color:#2481cc4d}.sauce-row.disabled{opacity:.5;cursor:not-allowed}.sauce-row .checkbox{border:2px solid var(--divider);color:#0000;border-radius:6px;justify-content:center;align-items:center;width:22px;height:22px;transition:all .2s;display:flex}.sauce-row .checkbox.checked{background:var(--blue);border-color:var(--blue);color:#fff}.sauce-title{font-size:15px;font-weight:600}.dish-detail-content{text-align:center;flex-direction:column;gap:20px;display:flex}.dish-detail-title{font-size:20px;font-weight:800;line-height:1.3}.dish-detail-kbzhu{background:var(--bg-secondary);border-radius:16px;grid-template-columns:repeat(2,1fr);gap:12px;padding:16px;display:grid}.kbzhu-row{background:var(--card-bg);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:8px;display:flex}.kbzhu-row span{color:var(--hint);font-size:12px;font-weight:600}.kbzhu-row strong{color:var(--tg-theme-text-color,#000);font-size:16px;font-weight:800}.dish-detail-actions{flex-direction:column;gap:16px;display:flex}.dish-detail-rating-section{flex-direction:column;align-items:center;gap:8px;display:flex}.dish-detail-rating-section p{font-size:15px;font-weight:700}.summary-card.locked{background:var(--bg-secondary);opacity:.9}.floating-action-bar{bottom:calc(var(--nav-height) + var(--safe-bottom));padding:16px 20px max(16px, env(safe-area-inset-bottom));background:var(--card-bg);border-top:1px solid var(--divider);z-index:10;position:fixed;left:0;right:0;box-shadow:0 -8px 24px #0000001f}@keyframes pulseBtn{0%{box-shadow:0 0 #2481cc66}70%{box-shadow:0 0 0 10px #2481cc00}to{box-shadow:0 0 #2481cc00}}.cta-animate{animation:2s infinite pulseBtn}.dish-detail-description{color:var(--tg-theme-hint-color,#707579);text-align:left;margin-top:8px;margin-bottom:20px;padding:0 4px;font-size:14px;line-height:1.4}.blocked-dishes-section{opacity:.92;margin-top:8px}.blocked-dishes-header{align-items:center;gap:6px;padding:4px 2px 6px;display:flex}.blocked-dishes-icon{opacity:.6;font-size:14px}.blocked-dishes-title{text-transform:uppercase;letter-spacing:.5px;color:var(--hint);font-size:12px;font-weight:700}.blocked-dishes-count{color:var(--hint);background:rgba(142, 142, 147, var(--tag-alpha));border-radius:100px;margin-left:auto;padding:2px 8px;font-size:12px;font-weight:600}.blocked-dishes-card{opacity:.55;border-left:3px solid var(--hint);transition:opacity .2s}.blocked-dishes-card:active{opacity:.7}.blocked-dish-item{cursor:pointer;padding:10px 4px}.blocked-dish-title{text-decoration:line-through;color:var(--hint)!important;font-weight:500!important}.blocked-dish-reason{color:var(--hint);opacity:.8;margin-top:2px;font-size:11px;line-height:1.35}.blocked-dish-action{flex-shrink:0;align-items:center;padding-right:4px;display:flex}.blocked-dish-action .settings-chevron{color:var(--hint);opacity:.5;font-size:20px}.blocked-dishes-hint{color:var(--hint);text-align:center;opacity:.6;margin-top:6px;font-size:11px;font-weight:500}.quiz-container{background:var(--bg);z-index:9999;padding:max(16px, env(safe-area-inset-top)) 20px max(20px, env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.quiz-progress{flex-shrink:0;justify-content:center;gap:6px;padding:8px 0 16px;display:flex}.quiz-progress-dot{background:var(--divider);border-radius:2px;width:28px;height:4px;transition:all .4s cubic-bezier(.34,1.56,.64,1)}.quiz-progress-dot.active{background:var(--accent);width:36px}.quiz-step{flex-direction:column;flex:1;gap:20px;display:flex}.quiz-title{letter-spacing:-.5px;color:var(--text);text-align:center;font-size:26px;font-weight:800;line-height:1.2}.quiz-subtitle{color:var(--hint);text-align:center;margin-top:-8px;font-size:15px;font-weight:500}.quiz-goals-grid{grid-template-columns:1fr 1fr;gap:12px;padding:8px 0;display:grid}.quiz-goal-card{border-radius:var(--radius);background:var(--card-bg);box-shadow:var(--shadow-card);cursor:pointer;color:var(--text);border:2px solid #0000;flex-direction:column;align-items:center;gap:8px;padding:24px 12px 20px;font-family:inherit;transition:all .25s cubic-bezier(.34,1.56,.64,1);display:flex}.quiz-goal-card:active{transform:scale(.95)}.quiz-goal-card.selected{border-color:var(--accent);background:#007aff14;box-shadow:0 4px 20px #007aff33}body.theme-dark .quiz-goal-card.selected{background:#0a84ff26}.quiz-goal-icon{font-size:40px;line-height:1}.quiz-goal-title{font-size:16px;font-weight:700}.quiz-goal-subtitle{color:var(--hint);font-size:12px;font-weight:500}.quiz-meals-options{grid-template-columns:1fr 1fr;gap:14px;padding:16px 0;display:grid}.quiz-meals-card{border-radius:var(--radius);background:var(--card-bg);box-shadow:var(--shadow-card);cursor:pointer;color:var(--text);border:2px solid #0000;flex-direction:column;align-items:center;gap:4px;padding:28px 16px 24px;font-family:inherit;transition:all .25s cubic-bezier(.34,1.56,.64,1);display:flex}.quiz-meals-card:active{transform:scale(.95)}.quiz-meals-card.selected{border-color:var(--accent);background:#007aff14;box-shadow:0 4px 20px #007aff33}body.theme-dark .quiz-meals-card.selected{background:#0a84ff26}.quiz-meals-number{letter-spacing:-2px;background:linear-gradient(135deg, var(--accent), #5856d6);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:44px;font-weight:900;line-height:1}.quiz-meals-label{font-size:16px;font-weight:700}.quiz-meals-detail{color:var(--hint);margin-top:4px;font-size:12px;font-weight:500}.quiz-constraint-group{flex-direction:column;gap:10px;display:flex}.quiz-constraint-group-label{color:var(--hint);text-transform:uppercase;letter-spacing:.4px;font-size:13px;font-weight:700}.quiz-chips{flex-wrap:wrap;gap:8px;display:flex}.quiz-chip{background:var(--card-bg);color:var(--text);border:1.5px solid var(--divider-strong);cursor:pointer;white-space:nowrap;border-radius:100px;padding:8px 16px;font-family:inherit;font-size:14px;font-weight:600;transition:all .2s}.quiz-chip:active{transform:scale(.93)}.quiz-chip.selected{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 2px 10px #007aff4d}.quiz-constraint-actions{flex-direction:column;gap:12px;margin-top:8px;display:flex}.quiz-skip-btn{color:var(--hint);cursor:pointer;background:0 0;border:none;padding:12px;font-family:inherit;font-size:14px;font-weight:600;transition:color .2s}.quiz-skip-btn:active{color:var(--accent)}.quiz-back-btn{color:var(--hint);cursor:pointer;background:0 0;border:none;margin-top:auto;padding:8px;font-family:inherit;font-size:13px;font-weight:600;transition:color .2s}.quiz-back-btn:active{color:var(--accent)}.quiz-result-step{padding:12px 14px 120px}@keyframes pulse-btn{0%,90%{box-shadow:var(--shadow-btn);transform:scale(1)}94%{box-shadow:0 6px 16px var(--accent-light);transform:scale(1.02)}97%{box-shadow:var(--shadow-btn);transform:scale(.98)}to{box-shadow:var(--shadow-btn);transform:scale(1)}}@keyframes shake-btn{0%,85%{transform:rotate(0)}87%{transform:rotate(2deg)}89%{transform:rotate(-2deg)}91%{transform:rotate(2deg)}93%{transform:rotate(-2deg)}95%{transform:rotate(0)}to{transform:rotate(0)}}.quiz-cta-btn{z-index:100;width:calc(100% - 28px);box-shadow:var(--shadow-btn);animation:3.5s cubic-bezier(.34,1.56,.64,1) infinite pulse-btn,5s ease-in-out infinite shake-btn;position:fixed;bottom:24px;left:14px}.quiz-tariff-card{border-radius:var(--radius);text-align:center;background:linear-gradient(135deg,#007aff14 0%,#5856d614 100%);border:1px solid #007aff26;padding:20px}body.theme-dark .quiz-tariff-card{background:linear-gradient(135deg,#0a84ff1f 0%,#5856d61f 100%);border-color:#0a84ff33}.quiz-tariff-badge{color:var(--green);margin-bottom:8px;font-size:13px;font-weight:700}.quiz-tariff-title{letter-spacing:-.5px;margin-bottom:14px;font-size:24px;font-weight:800}.quiz-tariff-stats{justify-content:space-around;display:flex}.quiz-tariff-stat{flex-direction:column;gap:2px;display:flex}.quiz-tariff-stat-value{letter-spacing:-.5px;font-size:20px;font-weight:800}.quiz-tariff-stat-label{color:var(--hint);text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:600}.quiz-menu-preview{flex-direction:column;gap:12px;display:flex}.quiz-menu-title{letter-spacing:-.3px;font-size:18px;font-weight:700}.quiz-menu-note{color:var(--accent);margin-top:-8px;font-size:13px;font-weight:600}.quiz-dishes{flex-direction:column;gap:8px;display:flex}.quiz-dish-card{background:var(--card-bg);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);padding:14px 16px;transition:all .2s}@keyframes highlight-replace{0%{box-shadow:0 0 0 0px var(--accent);background:#007aff1a;transform:scale(.97)}50%{background:var(--card-bg-raised);transform:scale(1.02);box-shadow:0 4px 20px 4px #007aff4d}to{box-shadow:var(--shadow-card);background:var(--card-bg);transform:scale(1)}}.quiz-dish-card.replaced{border-left:3px solid var(--accent);animation:1.2s cubic-bezier(.34,1.56,.64,1) .1s forwards highlight-replace}.quiz-dish-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.quiz-dish-category{color:var(--hint);text-transform:uppercase;letter-spacing:.3px;font-size:12px;font-weight:700}.quiz-dish-badge{color:var(--accent);background:rgba(0, 122, 255, calc(var(--tag-alpha)));border-radius:100px;padding:2px 8px;font-size:11px;font-weight:700}.quiz-dish-title{font-size:15px;font-weight:600;line-height:1.3}.quiz-dish-calories{color:var(--hint);margin-top:2px;font-size:13px;font-weight:500}.quiz-dish-replacement{color:var(--accent);border-top:1px solid var(--divider);margin-top:6px;padding-top:6px;font-size:12px;font-weight:600}.quiz-menu-totals{background:var(--surface);border-radius:var(--radius-sm);flex-direction:column;gap:2px;padding:12px 14px;font-size:14px;font-weight:700;display:flex}.quiz-totals-macros{color:var(--hint);font-size:12px;font-weight:500}.quiz-replacement-badge{border-radius:var(--radius-sm);text-align:center;color:var(--accent);background:#007aff14;padding:12px 16px;font-size:13px;font-weight:700}.quiz-replacement-badge.success{color:var(--green);background:#34c7591a}.quiz-cta-btn{background:linear-gradient(135deg,#007aff,#5856d6);margin-top:4px;padding:16px;font-size:17px;box-shadow:0 4px 20px #007aff4d}.dish-carousel{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:16px;padding-bottom:8px;display:flex;overflow-x:auto}.dish-carousel::-webkit-scrollbar{display:none}.carousel-image{aspect-ratio:1;object-fit:cover;scroll-snap-align:center;border-radius:16px;flex:0 0 90%;width:90%;box-shadow:0 4px 12px #0000001a}.single-dish-image{aspect-ratio:1;object-fit:cover;border-radius:16px;width:100%;max-width:280px;margin:16px auto;display:block;box-shadow:0 4px 12px #0000001a}.quiz-dish-modal{flex-direction:column;gap:16px;padding:16px;display:flex}.quiz-dish-modal-img{object-fit:cover;border-radius:16px;width:100%;height:220px}.quiz-dish-modal-title{color:var(--text-color);margin:0;font-size:20px;font-weight:700;line-height:1.3}.quiz-dish-modal-macros{flex-wrap:wrap;gap:8px;display:flex}.quiz-modal-macro-chip{background:var(--bg-color);border:1px solid var(--border-color);color:var(--text-color);border-radius:12px;padding:6px 12px;font-size:13px;font-weight:500}.quiz-modal-macro-chip.cal{color:#d46b08;background:#ff95001a;border-color:#ff95004d}.quiz-dish-modal-replacement{background:#ff3b301a;border:1px solid #ff3b304d;border-radius:12px;margin-top:8px;padding:14px}.quiz-dish-modal-close{width:100%;margin-top:8px}.notification-bell{background:var(--card-bg);cursor:pointer;width:44px;height:44px;box-shadow:var(--shadow-card);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;transition:transform .15s,box-shadow .15s;display:flex;position:relative}.notification-bell:active{transform:scale(.9)}.notification-badge{background:var(--red);color:#fff;border:2px solid var(--surface);letter-spacing:-.3px;border-radius:100px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-family:inherit;font-size:10px;font-weight:800;animation:.35s cubic-bezier(.34,1.56,.64,1) badge-pop;display:flex;position:absolute;top:-2px;right:-2px}@keyframes badge-pop{0%{transform:scale(0)}to{transform:scale(1)}}.notifications-list{flex-direction:column;gap:0;display:flex}.notification-item{border-bottom:1px solid var(--divider);align-items:flex-start;gap:12px;padding:14px 16px;transition:background .2s;display:flex;position:relative}.notification-item:last-child{border-bottom:none}.notification-item.clickable{cursor:pointer}.notification-item.clickable:active{background:var(--card-bg-raised)}.notification-item.unread{background:#007aff0a}.notification-item.unread:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}body.theme-dark .notification-item.unread{background:#0a84ff14}.notification-item-icon{background:var(--card-bg-raised);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:24px;line-height:1;display:flex}.notification-item-content{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.notification-item-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.notification-item-title{color:var(--text);font-size:14px;font-weight:700;line-height:1.3}.notification-item-time{color:var(--hint);white-space:nowrap;flex-shrink:0;font-size:11px;font-weight:500}.notification-item-text{color:var(--hint);margin:0;font-size:13px;font-weight:400;line-height:1.45}.today-header-info{justify-content:space-between;align-items:flex-start;display:flex}
