@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Outfit:wght@400;500;600;700;800;900&display=swap";.app-shell-container{display:flex;height:100vh;width:100vw;overflow:hidden;background-color:var(--color-bg-page);background-image:radial-gradient(circle at 50% 50%,#fff6,#0000),url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.024'/%3E%3C/svg%3E")}.desktop-nav-sidebar{width:290px;background-color:#fffc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--color-border);display:flex;flex-direction:column;padding:40px 24px;flex-shrink:0;box-shadow:var(--shadow-sm)}.sidebar-brand-panel{display:flex;align-items:center;gap:12px;margin-bottom:40px}.brand-logo-icon{font-size:32px;filter:drop-shadow(0 4px 10px rgba(67,121,52,.2))}.sidebar-brand-panel h2{font-size:26px;font-weight:900;color:var(--color-primary);letter-spacing:-.04em}.sidebar-menu-links{display:flex;flex-direction:column;gap:10px}.menu-tab-link{display:flex;align-items:center;gap:14px;padding:14px 18px;border:1px solid transparent;background:none;border-radius:var(--radius-md);font-size:14px;font-weight:700;color:var(--color-text-secondary);cursor:pointer;text-align:left;transition:var(--transition-fast)}.menu-tab-link:hover{background-color:#ffffffe6;color:var(--color-text-primary);transform:translate(2px)}.menu-tab-link.active{background-color:#fff;border-color:var(--color-border);color:var(--color-primary);box-shadow:var(--shadow-sm)}.sidebar-history-session{margin-top:36px;border-top:1px solid var(--color-border);padding-top:28px;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.sidebar-history-session h3{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.history-session-list{display:flex;flex-direction:column;gap:10px}.history-session-item{padding:12px 16px;border:1px solid var(--color-border);background-color:#ffffff80;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);display:flex;flex-direction:column;gap:6px}.history-session-item:hover{border-color:var(--color-primary-light);background-color:#fff;transform:translateY(-1px)}.history-session-item.active{border-color:var(--color-primary);background-color:#fff;box-shadow:var(--shadow-sm)}.session-item-title{font-size:13px;font-weight:800;color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.session-item-time{font-size:10px;color:var(--color-text-muted);font-weight:600}.sidebar-profile-summary{border-top:1px solid var(--color-border);padding-top:24px;font-size:12px;font-weight:800;color:var(--color-primary);letter-spacing:-.01em}.app-main-viewport{flex:1;overflow-y:auto;height:100%;position:relative;background-color:transparent}.mobile-bottom-tabbar{position:fixed;bottom:0;left:0;right:0;height:72px;display:none;justify-content:space-around;align-items:center;padding-bottom:12px;z-index:90;background-color:#ffffffd9;-webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%);border-top:1px solid rgba(0,0,0,.05);box-shadow:0 -8px 24px #22261f05}.mobile-bottom-tabbar button{flex:1;height:100%;border:none;background:none;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-fast);border-right:1px solid rgba(0,0,0,.04);position:relative}.mobile-bottom-tabbar button:last-child{border-right:none}.mobile-bottom-tabbar button.active{color:var(--color-primary);background-color:#4379340a}.tab-icon-item{font-size:22px;transition:transform var(--transition-bounce)}.mobile-bottom-tabbar button:active .tab-icon-item{transform:scale(.9)}.mobile-bottom-tabbar button.active .tab-icon-item{transform:scale(1.08)}.tab-text-item{font-size:11px;font-weight:800;letter-spacing:-.01em}.mobile-bottom-tabbar button.active .tab-text-item{font-weight:900}@media (max-width: 767px){.desktop-nav-sidebar{display:none}.mobile-bottom-tabbar{display:flex}.app-main-viewport{padding-bottom:72px}}.chat-page-container{display:flex;flex-direction:column;height:100%;position:relative;background-color:transparent}.chat-top-actions{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--color-border);background-color:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);gap:12px;z-index:10}.new-chat-btn{padding:10px 20px;background-color:#fff;color:var(--color-primary);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:13px;font-weight:800;cursor:pointer;transition:var(--transition-fast);white-space:nowrap;box-shadow:var(--shadow-sm)}.new-chat-btn:hover{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:translateY(-1px)}.conv-selector-mobile{flex:1;max-width:200px}.conv-selector-mobile select{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:#fff;color:var(--color-text-primary);font-size:13px;font-weight:700;outline:none;box-shadow:var(--shadow-sm)}.messages-viewport{flex:1;overflow-y:auto;padding:24px 24px 90px;display:flex;flex-direction:column;gap:24px}.message-bubble-row{display:flex;gap:14px;max-width:80%;animation:fadeInUp var(--transition-normal) forwards}.message-bubble-row.user{align-self:flex-end;flex-direction:row-reverse}.message-bubble-row.assistant{align-self:flex-start}.avatar-icon{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-icon.assistant{box-shadow:var(--shadow-sm)}.avatar-svg-node{width:100%;height:100%;display:block}.avatar-icon.user{border:1.5px solid white;box-shadow:var(--shadow-sm);overflow:hidden;display:flex;align-items:center;justify-content:center}.user-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.bubble-wrapper{display:flex;flex-direction:column;gap:6px}.message-bubble-row.user .bubble-wrapper{align-items:flex-end}.bubble-content-text{padding:14px 20px;border-radius:var(--radius-md);font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);display:flex;flex-direction:column;gap:10px}.message-bubble-row.assistant .bubble-content-text{background-color:#fff;color:var(--color-text-primary);border-top-left-radius:4px;font-weight:500}.message-bubble-row.user .bubble-content-text{background-color:var(--color-primary);color:#fff;border-top-right-radius:4px;border-color:var(--color-primary);font-weight:500;box-shadow:0 8px 24px #43793426}.chat-image-preview-bubble{width:140px;height:140px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background-color:var(--color-bg-page);align-self:flex-start}.message-bubble-row.user .chat-image-preview-bubble{align-self:flex-end}.chat-image-preview-bubble img{width:100%;height:100%;object-fit:cover}.msg-time{font-size:10px;color:var(--color-text-muted);font-weight:600;padding:0 6px}.parsed-card-panel{background-color:#fff;border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:24px;margin-top:10px;width:320px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:16px;animation:scaleUp var(--transition-normal) forwards}.parsed-card-panel.pending{border-color:var(--color-primary-light)}.parsed-card-panel.confirmed{opacity:.85;background-color:#fffc;box-shadow:var(--shadow-sm)}.card-header-bar{display:flex;justify-content:space-between;align-items:center}.card-header-bar span{font-size:15px;font-weight:800;color:var(--color-text-primary);letter-spacing:-.01em}.badge-status{font-size:10px;padding:4px 10px;border-radius:var(--radius-full);font-weight:900;text-transform:uppercase}.pending .badge-status{background-color:var(--color-primary-lightest);color:var(--color-primary)}.confirmed .badge-status{background-color:var(--color-bg-page);color:var(--color-text-muted)}.parsed-items-list{display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:16px 0}.parsed-item-row{display:flex;justify-content:space-between;align-items:center}.p-item-name{font-size:14px;font-weight:800;color:var(--color-text-primary)}.p-item-val{font-size:13px;font-weight:700;color:var(--color-primary)}.confirmed .p-item-val{color:var(--color-text-secondary)}.confirm-save-btn{width:100%;padding:14px;border:none;background-color:var(--color-primary);color:#fff;font-size:14px;font-weight:900;border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-fast);box-shadow:0 6px 16px #43793433}.confirm-save-btn:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 8px 20px #4379344d}.confirm-save-btn:active{transform:translateY(0)}.chat-input-bar-area{position:absolute;bottom:20px;left:20px;right:20px;height:58px;border-radius:var(--radius-full);padding:6px;display:flex;align-items:center;gap:10px;background-color:#ffffffd9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:var(--shadow-md);z-index:20}.pic-input-btn{width:46px;height:46px;border-radius:50%;border:1px solid rgba(0,0,0,.05);background-color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-sm)}.pic-input-btn:hover{background-color:var(--color-bg-page);transform:scale(1.05);box-shadow:var(--shadow-md)}.chat-input-bar-area input{flex:1;height:100%;border:none;background:none;outline:none;padding:0 16px;font-size:15px;color:var(--color-text-primary);font-weight:600}.chat-input-bar-area input::placeholder{color:var(--color-text-muted)}.send-msg-btn{padding:0 24px;height:46px;background-color:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-full);font-size:14px;font-weight:900;cursor:pointer;transition:var(--transition-fast);box-shadow:0 4px 12px #43793426}.send-msg-btn:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 6px 16px #43793440}.visual-loading{background-color:#fff!important;color:var(--color-text-secondary)!important}.loading-dots{display:flex;align-items:center;gap:4px}.loading-text{font-size:13px;font-weight:800;color:var(--color-primary)}.dot{animation:blink 1.4s infinite both;font-size:20px;font-weight:900}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes blink{0%{opacity:.2}20%{opacity:1}to{opacity:.2}}.actionsheet-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#22261f59;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:150;display:flex;justify-content:center;align-items:flex-end;padding:20px}.ios-actionsheet{width:100%;max-width:380px;display:flex;flex-direction:column;gap:10px;animation:slideUp var(--transition-bounce) forwards}.actionsheet-group{background-color:#fffffff0;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid rgba(0,0,0,.05);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.actionsheet-title{padding:16px 20px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);text-align:center;font-weight:900;border-bottom:1px solid rgba(0,0,0,.04)}.actionsheet-btn{width:100%;padding:18px;background:none;border:none;font-size:16px;font-weight:800;color:var(--color-text-primary);cursor:pointer;transition:var(--transition-fast);text-align:center;border-bottom:1px solid rgba(0,0,0,.04)}.actionsheet-btn:last-child{border-bottom:none}.actionsheet-btn:hover{background-color:#4379340f;color:var(--color-primary)}.actionsheet-btn.highlight{color:var(--color-primary)}.actionsheet-btn.cancel-btn{color:#ff3b30;border-bottom:none;font-weight:900}.actionsheet-group .cancel-btn:hover{background-color:#ff3b300f}.chat-global-toast{position:absolute;top:86px;left:50%;transform:translate(-50%);background-color:#22261f;color:#fff;padding:12px 24px;border-radius:var(--radius-full);font-size:13px;font-weight:800;box-shadow:var(--shadow-lg);z-index:200;white-space:nowrap}.record-page-container{padding:16px;display:flex;flex-direction:column;gap:24px}@media (min-width: 768px){.record-page-container{padding:32px 40px;gap:28px;max-width:1000px;margin:0 auto}}.record-header{text-align:center;margin-bottom:8px}.record-header h2{font-size:28px;font-weight:900;color:var(--color-text-primary);margin-bottom:6px;letter-spacing:-.03em}.record-header p{font-size:14px;font-weight:600;color:var(--color-text-secondary)}.calorie-dashboard-card{background-color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:32px 24px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;align-items:center;gap:24px;position:relative;overflow:hidden}.circle-progress-container{width:100%;max-width:240px;height:100px;background:radial-gradient(circle at 50% 50%,#4379340a,#fff0);border-radius:var(--radius-md);border:1px solid var(--color-border);display:flex;justify-content:center;align-items:center;box-shadow:var(--shadow-inner)}.progress-details{display:flex;flex-direction:column;align-items:center;text-align:center}.p-cals-num{font-family:Outfit,sans-serif;font-size:42px;font-weight:900;color:var(--color-primary);line-height:1;letter-spacing:-.03em}.p-cals-label{font-size:11px;font-weight:800;color:var(--color-text-secondary);margin-top:6px;text-transform:uppercase;letter-spacing:.08em}.cals-stats-row{display:flex;justify-content:space-around;width:100%;text-align:center}.stat-col{display:flex;flex-direction:column;flex:1;gap:4px}.stat-col-divider{width:1px;background-color:var(--color-border);align-self:stretch}.c-val{font-family:Outfit,sans-serif;font-size:22px;font-weight:900;color:var(--color-text-primary);letter-spacing:-.02em}.c-val.alert-red{color:#ff3b30}.c-label{font-size:11px;font-weight:800;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.linear-progress-box{width:100%;display:flex;flex-direction:column;gap:8px}.linear-progress-bg{width:100%;height:8px;background-color:var(--color-bg-input);border-radius:var(--radius-full);overflow:hidden;border:1px solid rgba(0,0,0,.02)}.linear-progress-bar{height:100%;background:linear-gradient(90deg,var(--color-primary-light) 0%,var(--color-primary) 100%);border-radius:var(--radius-full);transition:width var(--transition-slow)}.linear-progress-bar.overlimit{background:linear-gradient(90deg,#ff9500,#ff3b30)}.progress-pct-text{font-size:12px;font-weight:800;color:var(--color-text-secondary);align-self:flex-end}.record-meal-section{background-color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:var(--transition-fast)}.record-meal-section:hover{box-shadow:var(--shadow-md);border-color:#43793426}.section-head{width:100%;padding:20px 24px;border:none;background:none;display:flex;justify-content:space-between;align-items:center;cursor:pointer;outline:none;transition:var(--transition-fast)}.section-head:hover{background-color:#43793405}.section-title-left{display:flex;align-items:center;gap:12px}.section-title-left h3{font-size:16px;font-weight:850;color:var(--color-text-primary);letter-spacing:-.01em}.meal-items-count-badge{padding:3px 9px;background-color:var(--color-bg-page);border-radius:var(--radius-full);font-size:10px;font-weight:900;color:var(--color-text-secondary);border:1px solid var(--color-border)}.section-title-right{display:flex;align-items:center;gap:12px}.sec-cals-tot{font-family:Outfit,sans-serif;font-size:14px;font-weight:800;color:var(--color-primary)}.sec-arrow{font-size:12px;color:var(--color-text-muted);transition:transform var(--transition-fast)}.record-meal-section.collapsed .sec-arrow{transform:rotate(-90deg)}.section-body{border-top:1px solid var(--color-border);background-color:#fff;padding:8px 0;display:flex;flex-direction:column}.empty-section-tip{padding:24px;text-align:center;font-size:12px;font-weight:700;color:var(--color-text-muted)}.meal-item-row-container{border-bottom:1px solid var(--color-border);transition:var(--transition-fast)}.meal-item-row-container:last-child{border-bottom:none}.meal-item-row-container:hover{background-color:#43793404}.meal-row-display{display:flex;justify-content:space-between;align-items:center;padding:16px 24px}.m-row-left{display:flex;flex-direction:column;gap:4px}.m-item-name{font-size:14px;font-weight:800;color:var(--color-text-primary)}.m-item-sub{font-size:11px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase}.m-row-right{display:flex;align-items:center;gap:16px}.m-item-cals{font-family:Outfit,sans-serif;font-size:14px;font-weight:800;color:var(--color-text-primary)}.action-icon-btns-group{display:flex;gap:4px}.row-edit-action-btn{background:none;border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-fast);font-size:13px}.row-edit-action-btn:hover{background-color:var(--color-bg-page)}.row-edit-action-btn.del-btn:hover{background-color:#ffebe9;color:#ff3b30}.meal-row-edit-form{padding:18px 24px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;background-color:#43793403}.edit-input-field{padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:13px;font-weight:700;background-color:#fff;outline:none;transition:var(--transition-fast)}.edit-input-field:focus{border-color:var(--color-primary)}.edit-input-field.input-name{flex:2;min-width:150px}.edit-input-field.input-cals{flex:1;min-width:80px}.edit-input-field.select-type{flex:1;min-width:90px}.edit-action-btns-group{display:flex;gap:8px}.edit-save-btn,.edit-cancel-btn{padding:10px 16px;border-radius:var(--radius-full);font-size:12px;font-weight:800;cursor:pointer;border:none;transition:var(--transition-fast)}.edit-save-btn{background-color:var(--color-primary);color:#fff}.edit-save-btn:hover{background-color:var(--color-primary-hover)}.edit-cancel-btn{background-color:var(--color-bg-page);color:var(--color-text-secondary);border:1px solid var(--color-border)}.edit-cancel-btn:hover{background-color:var(--color-border)}.daily-feedback-card{background:linear-gradient(135deg,#fff,#43793408);border:1px solid var(--color-border);border-left:6px solid var(--color-primary);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:12px;animation:fadeInUp var(--transition-normal) forwards}.daily-feedback-card h3{font-size:16px;font-weight:900;color:var(--color-primary);letter-spacing:-.01em}.daily-feedback-card p{font-size:13.5px;line-height:1.6;color:var(--color-text-secondary);font-weight:600}.cabinet-page-container{padding:16px;display:flex;flex-direction:column;gap:24px}@media (min-width: 768px){.cabinet-page-container{padding:32px 40px;gap:28px;max-width:1200px;margin:0 auto}}.cabinet-header{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:1px solid var(--color-border);padding-bottom:20px}@media (min-width: 600px){.cabinet-header{flex-direction:row;align-items:center}}.cabinet-header h2{font-size:28px;font-weight:900;color:var(--color-text-primary);margin-bottom:4px;letter-spacing:-.03em}.cabinet-header p{font-size:14px;font-weight:600;color:var(--color-text-secondary)}.add-item-trigger-btn{padding:12px 24px;background-color:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-full);font-size:14px;font-weight:900;cursor:pointer;box-shadow:0 6px 16px #43793433;transition:var(--transition-fast);white-space:nowrap}.add-item-trigger-btn:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 8px 20px #4379344d}.category-scroll-bar{display:flex;gap:10px;overflow-x:auto;padding:4px 0;scrollbar-width:none}.category-scroll-bar::-webkit-scrollbar{display:none}.cabinet-category-tab{padding:10px 20px;background-color:#fff;border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:var(--radius-full);font-size:13px;font-weight:800;cursor:pointer;transition:var(--transition-fast);white-space:nowrap;box-shadow:var(--shadow-sm)}.cabinet-category-tab:hover{border-color:var(--color-primary-light);color:var(--color-primary);transform:translateY(-1px)}.cabinet-category-tab.active{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 4px 12px #43793433}.snack-items-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media (min-width: 600px){.snack-items-grid{grid-template-columns:repeat(3,1fr);gap:20px}}@media (min-width: 900px){.snack-items-grid{grid-template-columns:repeat(4,1fr);gap:24px}}.snack-item-card{background-color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:16px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-sm);transition:transform var(--transition-bounce),box-shadow var(--transition-bounce);position:relative;overflow:hidden}.snack-item-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:#4379341f}.snack-img-container{aspect-ratio:1.25 / 1;background:linear-gradient(135deg,#f6f5ee,#eae6cf);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:40px;position:relative;overflow:hidden;box-shadow:var(--shadow-inner)}.snack-img-container span{filter:drop-shadow(0 4px 8px rgba(34,38,31,.15));transition:transform var(--transition-bounce)}.snack-item-card:hover .snack-img-container span{transform:scale(1.15) rotate(3deg)}.snack-card-details{display:flex;flex-direction:column;gap:2px}.snack-card-name{font-size:15px;font-weight:850;color:var(--color-text-primary);letter-spacing:-.01em}.snack-card-category-badge{font-size:10px;font-weight:850;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.snack-stock-action-panel{display:flex;justify-content:space-between;align-items:center;background-color:var(--color-bg-page);padding:6px;border-radius:var(--radius-full);border:1px solid rgba(0,0,0,.02)}.stock-num-display{font-family:Outfit,sans-serif;font-size:13px;font-weight:900;color:var(--color-text-primary)}.stock-adjust-circle-btn{width:28px;height:28px;border-radius:50%;border:1px solid var(--color-border);background-color:#fff;color:var(--color-primary);font-size:14px;font-weight:900;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-sm)}.stock-adjust-circle-btn:hover{background-color:var(--color-primary-lightest);transform:scale(1.05);box-shadow:var(--shadow-md)}.stock-adjust-circle-btn:active{transform:scale(.95)}.card-trash-btn{position:absolute;top:10px;right:10px;background-color:#ffffffe6;border:1px solid rgba(0,0,0,.04);width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;cursor:pointer;transition:var(--transition-fast);opacity:0;transform:scale(.9)}.snack-item-card:hover .card-trash-btn{opacity:1;transform:scale(1)}.card-trash-btn:hover{background-color:#ffebe9;color:#ff3b30;border-color:#ff3b3026}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#22261f66;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;display:flex;justify-content:center;align-items:center;padding:16px}.add-pantry-modal{background-color:#fff;width:100%;max-width:440px;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--color-border);overflow:hidden;display:flex;flex-direction:column;animation:scaleUp var(--transition-bounce) forwards}.modal-header{padding:20px 24px;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.modal-header h3{font-size:18px;font-weight:900;color:var(--color-text-primary);letter-spacing:-.01em}.close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:var(--color-text-muted);transition:var(--transition-fast)}.close-btn:hover{color:var(--color-text-primary)}.modal-body{padding:24px;display:flex;flex-direction:column;gap:16px}.modal-field-group{display:flex;flex-direction:column;gap:8px}.modal-field-group label{font-size:12px;font-weight:800;color:var(--color-text-secondary)}.modal-field-group input,.modal-field-group select{padding:12px 16px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;font-weight:700;background-color:var(--color-bg-page);outline:none;transition:var(--transition-fast)}.modal-field-group input:focus,.modal-field-group select:focus{border-color:var(--color-primary);background-color:#fff}.modal-footer{padding:16px 24px;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:12px}.btn-secondary{padding:10px 20px;background-color:var(--color-bg-page);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:var(--radius-full);font-weight:800;cursor:pointer;transition:var(--transition-fast)}.btn-secondary:hover{background-color:var(--color-border)}.btn-primary{padding:10px 20px;background-color:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-full);font-weight:800;cursor:pointer;transition:var(--transition-fast);box-shadow:0 4px 12px #43793426}.btn-primary:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 6px 16px #43793440}.mine-page-container{padding:16px;display:flex;flex-direction:column;gap:24px}@media (min-width: 768px){.mine-page-container{padding:32px 40px;gap:28px;max-width:900px;margin:0 auto}}.mine-header{text-align:center;margin-bottom:8px}.mine-header h2{font-size:28px;font-weight:900;color:var(--color-text-primary);margin-bottom:6px;letter-spacing:-.03em}.mine-header p{font-size:14px;font-weight:600;color:var(--color-text-secondary)}.mine-form-layout{display:flex;flex-direction:column;gap:20px}.form-card-section{background-color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:24px;transition:var(--transition-fast)}.form-card-section:hover{box-shadow:var(--shadow-md)}.form-card-section h3{font-size:16px;color:var(--color-text-primary);font-weight:900;border-left:5px solid var(--color-primary);padding-left:12px;line-height:1;letter-spacing:-.01em}.form-grid-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width: 480px){.form-grid-fields{grid-template-columns:1fr;gap:20px}}.form-single-col-fields{display:flex;flex-direction:column;gap:24px}.field-group-mine{display:flex;flex-direction:column;gap:10px}.field-group-mine.flex-row{flex-direction:row;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-border);padding-bottom:20px}.field-title-inline{font-size:14px;font-weight:800;color:var(--color-text-secondary)}.field-group-mine label{font-size:13px;font-weight:800;color:var(--color-text-secondary)}.field-group-mine input[type=number],.field-group-mine input[type=text],.field-group-mine textarea{padding:14px 18px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;font-weight:700;background-color:var(--color-bg-page);color:var(--color-text-primary);outline:none;transition:var(--transition-fast)}.field-group-mine input:focus,.field-group-mine textarea:focus{border-color:var(--color-primary);background-color:#fff;box-shadow:0 0 0 4px var(--color-primary-lightest)}.badge-selection-group{display:flex;gap:8px;flex-wrap:wrap}.goal-selection-badge{padding:10px 18px;background-color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:12.5px;font-weight:800;color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-sm)}.goal-selection-badge:hover{border-color:var(--color-primary-light);color:var(--color-primary);transform:translateY(-1px)}.goal-selection-badge.active{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 4px 12px #43793433}.cals-setup-header{display:flex;justify-content:space-between;align-items:center}.cals-calc-btn{background:none;border:none;color:var(--color-primary);font-size:12px;font-weight:800;cursor:pointer;transition:var(--transition-fast);text-decoration:underline;text-underline-offset:3px}.cals-calc-btn:hover{color:var(--color-primary-hover)}.save-profile-action-btn{padding:18px;background-color:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-full);font-size:16px;font-weight:900;cursor:pointer;transition:var(--transition-fast);box-shadow:0 6px 20px #43793433;text-align:center;margin-top:12px}.save-profile-action-btn:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 8px 24px #4379344d}.mine-toast-layer{position:fixed;top:86px;left:50%;transform:translate(-50%);background-color:#22261f;color:#fff;padding:12px 28px;border-radius:var(--radius-full);font-size:13px;font-weight:800;box-shadow:var(--shadow-lg);z-index:200;white-space:nowrap}:root{--color-primary: #437934;--color-primary-hover: #36622a;--color-primary-light: #6a9c51;--color-primary-lightest: #eaf2e8;--color-accent: #e15c32;--color-accent-light: #fbeee9;--color-bg-page: #f6f5ee;--color-bg-card: rgba(255, 255, 255, .98);--color-bg-image-container: #eae6cf;--color-bg-input: #f2f0e4;--color-text-primary: #22261f;--color-text-secondary: #585d53;--color-text-muted: #8a8e85;--color-border: rgba(0, 0, 0, .05);--sidebar-width: 280px;--radius-sm: 10px;--radius-md: 18px;--radius-lg: 28px;--radius-xl: 36px;--radius-full: 9999px;--shadow-sm: 0 4px 12px rgba(34, 38, 31, .015);--shadow-md: 0 12px 32px rgba(34, 38, 31, .035);--shadow-lg: 0 20px 48px rgba(34, 38, 31, .05);--shadow-inner: inset 0 2px 4px rgba(0, 0, 0, .02);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--color-bg-page);color:var(--color-text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 50% 50%,#fff6,#0000),url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.024'/%3E%3C/svg%3E")}h1,h2,h3,h4,h5,h6{font-family:Outfit,sans-serif;font-weight:800;letter-spacing:-.03em}button,input,select,textarea{font-family:inherit}#root{width:100%;height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideInBottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.animate-fade-in-up{animation:fadeInUp var(--transition-normal) forwards}.animate-fade-in{animation:fadeIn var(--transition-normal) forwards}.animate-scale-up{animation:scaleUp var(--transition-normal) forwards}.glassmorphism{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.3)}.glassmorphism-dark{background:#2c3227d9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1)}
