*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #F4F3F8;--color-surface: #FFFFFF;--color-primary: #8B7EC8;--color-primary-hover: #7B6DC0;--color-accent: #D4E84D;--color-text: #2D2B3D;--color-text-muted: #6B6880;--color-border: #DDD8F0;--color-error: #DC2626;--color-tab-inactive: #9B96B0;--color-primary-soft: rgba(139, 126, 200, .08);--color-primary-medium: rgba(139, 126, 200, .14);--color-primary-focus: rgba(139, 126, 200, .22);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--shadow-sm: 0 1px 3px rgba(45, 43, 61, .08), 0 2px 8px rgba(45, 43, 61, .05);--shadow-md: 0 4px 20px rgba(0, 0, 0, .12), 0 1px 4px rgba(0, 0, 0, .06);--glass-blur: blur(20px)}[data-theme=dark]{--color-bg: #7461C0;--color-surface: rgba(255, 255, 255, .12);--color-primary: #D4E84D;--color-primary-hover: #C0D238;--color-accent: #D4E84D;--color-text: #FFFFFF;--color-text-muted: rgba(255, 255, 255, .75);--color-border: rgba(255, 255, 255, .18);--color-error: #FF8080;--color-tab-inactive: rgba(255, 255, 255, .45);--color-primary-soft: rgba(212, 232, 77, .12);--color-primary-medium: rgba(212, 232, 77, .22);--color-primary-focus: rgba(212, 232, 77, .32);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .2), 0 1px 3px rgba(0, 0, 0, .12);--shadow-md: 0 4px 20px rgba(0, 0, 0, .25), 0 1px 4px rgba(0, 0, 0, .15)}[data-theme=dark] body{background:#7461c0}body{font-family:Inter,ui-sans-serif,system-ui,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.5;transition:background .3s ease,color .3s ease}.calorie-input-container{display:flex;flex-direction:column;gap:8px}.calorie-input-row{display:flex;gap:12px}.calorie-input{flex:1;padding:14px 16px;font-size:1.1rem;font-family:inherit;border:2px solid var(--color-border);border-radius:var(--radius-md);outline:none;background:var(--color-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);color:var(--color-text);transition:border-color .2s ease,box-shadow .2s ease;width:100%}.calorie-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-focus)}.calorie-input::placeholder{color:var(--color-text-muted)}.calorie-input::-webkit-outer-spin-button,.calorie-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.calorie-input[type=number]{-moz-appearance:textfield}.calorie-input-button{padding:14px 28px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:700;font-family:inherit;cursor:pointer;transition:background .2s ease,transform .1s ease;white-space:nowrap}.calorie-input-button:hover{background:var(--color-primary-hover)}.calorie-input-button:active{transform:scale(.98)}.calorie-input-error{color:var(--color-error);font-size:.875rem;margin-top:4px}@media(max-width:640px){.calorie-input-container{gap:10px}.calorie-input{font-size:1rem;padding:12px 14px}.calorie-input-button{padding:12px 20px;font-size:.95rem;width:100%}}.category-filter{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-start}.category-filter__chip{padding:5px 12px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);font-size:.75rem;font-weight:500;font-family:inherit;cursor:pointer;color:var(--color-text-muted);white-space:nowrap;transition:border-color .2s ease,color .2s ease,background .2s ease,transform .15s ease}.category-filter__chip:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft);transform:translateY(-1px)}.category-filter__chip--active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-medium)}@media(max-width:640px){.category-filter{justify-content:center}}.result-card{background:var(--color-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);display:flex;flex-direction:column;gap:8px;transition:box-shadow .2s ease,transform .15s ease}.result-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.result-card__name{font-size:1.1rem;font-weight:700;color:var(--color-text);line-height:1.3}.result-card__portion-info{font-size:.875rem;color:var(--color-text-muted)}.result-card__portions{font-size:1.5rem;font-weight:800;color:var(--color-primary);line-height:1.2}.result-card__total{font-size:.875rem;color:var(--color-text-muted)}@media(max-width:640px){.result-card{padding:16px}.result-card__portions{font-size:1.25rem}}.result-list{display:flex;flex-direction:column;gap:16px}.result-list__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.result-list__empty{text-align:center;color:var(--color-text-muted);padding:32px;font-size:1rem}@media(max-width:640px){.result-list__grid{grid-template-columns:1fr}}@media(min-width:641px)and (max-width:1024px){.result-list__grid{grid-template-columns:repeat(2,1fr)}}.product-select{position:relative;width:100%}.product-select__trigger{width:100%;padding:14px 16px;font-size:1rem;font-family:inherit;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);color:var(--color-text);cursor:pointer;outline:none;transition:border-color .2s ease,box-shadow .2s ease;display:flex;align-items:center;gap:8px;text-align:left}.product-select__trigger:hover,.product-select__trigger--open{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-focus)}.product-select__placeholder{flex:1;color:var(--color-text-muted)}.product-select__value{flex:1;color:var(--color-text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-select__trigger-cal{font-size:.85rem;font-weight:700;color:var(--color-primary);white-space:nowrap;flex-shrink:0}.product-select__arrow{color:var(--color-primary);flex-shrink:0;transition:transform .2s ease;margin-left:auto}.product-select__arrow--open{transform:rotate(180deg)}.product-select__dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;border-radius:var(--radius-md);border:1.5px solid var(--color-border);box-shadow:var(--shadow-md);z-index:200;overflow:hidden;background:#fffffff7;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);animation:dropdown-in .15s ease}[data-theme=dark] .product-select__dropdown{background:#1c1050f7}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.product-select__search-wrap{padding:10px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:8px}.product-select__search-icon{color:var(--color-text-muted);flex-shrink:0}.product-select__search{flex:1;border:none;outline:none;background:transparent;font-size:.875rem;font-family:inherit;color:var(--color-text);min-width:0}.product-select__search::placeholder{color:var(--color-text-muted)}.product-select__search-clear{border:none;background:none;cursor:pointer;color:var(--color-text-muted);font-size:.75rem;padding:2px 4px;border-radius:4px;line-height:1;transition:color .15s ease;flex-shrink:0}.product-select__search-clear:hover{color:var(--color-primary)}.product-select__list{max-height:280px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-primary) transparent;padding:4px}.product-select__list::-webkit-scrollbar{width:4px}.product-select__list::-webkit-scrollbar-track{background:transparent}.product-select__list::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:2px}.product-select__option{width:100%;padding:9px 12px;border:none;border-radius:var(--radius-sm);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;transition:background .12s ease}.product-select__option:hover{background:var(--color-primary-soft)}.product-select__option--active{background:var(--color-primary-medium)}.product-select__option-name{font-size:.9rem;font-family:inherit;color:var(--color-text);text-align:left;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-select__option--active .product-select__option-name{color:var(--color-primary);font-weight:600}.product-select__option-meta{font-size:.78rem;font-family:inherit;color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}.product-select__option--active .product-select__option-meta{color:var(--color-primary)}.product-select__empty{padding:20px;text-align:center;color:var(--color-text-muted);font-size:.875rem}.burn-mode{display:flex;flex-direction:column;gap:24px}.burn-mode__hint{text-align:center;color:var(--color-text-muted);padding:32px 16px;font-size:1rem}.burn-mode__product-info{background:var(--color-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);padding:20px;border:1px solid var(--color-border);box-shadow:var(--shadow-sm);font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:12px}.burn-mode__product-info>div:first-child{font-size:1.1rem;color:var(--color-text)}.burn-mode__product-info>div:last-child{font-size:1.1rem;color:var(--color-primary);font-weight:800;white-space:nowrap}.burn-mode__activities{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.burn-mode__activity-card{background:var(--color-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;transition:box-shadow .2s ease,transform .15s ease}.burn-mode__activity-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.burn-mode__activity-emoji{font-size:2.5rem;line-height:1}.burn-mode__activity-name{font-weight:600;color:var(--color-text);font-size:.95rem}.burn-mode__activity-time{font-size:1.25rem;font-weight:800;color:var(--color-primary)}@media(max-width:640px){.burn-mode__activities{grid-template-columns:repeat(2,1fr)}.burn-mode__activity-card{padding:16px 12px}.burn-mode__activity-emoji{font-size:2rem}.burn-mode__activity-time{font-size:1.1rem}}@media(min-width:641px)and (max-width:1024px){.burn-mode__activities{grid-template-columns:repeat(3,1fr)}}.disclaimer{padding:32px 16px;border-top:1px solid var(--color-border);margin-top:40px}.disclaimer__text{font-size:.8rem;color:var(--color-text-muted);text-align:center;margin-bottom:8px;line-height:1.6}.disclaimer__alcohol{font-size:.8rem;color:var(--color-text-muted);text-align:center;line-height:1.6}@media(max-width:640px){.disclaimer{padding:24px 8px;margin-top:32px}}.app{max-width:900px;margin:0 auto;padding:0 16px;min-height:100vh}.app__header{padding:32px 0 24px;border-bottom:1px solid var(--color-border);position:relative;display:flex;align-items:center;justify-content:center}.app__header-center{text-align:center}.app__title{font-size:2rem;font-weight:800;color:var(--color-primary);letter-spacing:-.5px}.app__subtitle{font-size:1rem;color:var(--color-text-muted);margin-top:4px}.app__theme-toggle{position:absolute;right:0;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:1.5px solid var(--color-border);background:var(--color-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;color:var(--color-text);transition:border-color .2s ease,transform .2s ease,background .2s ease;padding:0;line-height:1}.app__theme-toggle:hover{border-color:var(--color-primary);transform:translateY(-50%) scale(1.1)}.app__main{padding:24px 0}.app__tabs{display:flex;gap:8px;margin-bottom:24px}.app__tab{flex:1;padding:12px;border-radius:var(--radius-md);border:2px solid var(--color-border);background:transparent;font-size:.95rem;font-weight:600;cursor:pointer;color:var(--color-tab-inactive);font-family:inherit;transition:border-color .2s ease,color .2s ease,background .2s ease}.app__tab:hover{border-color:var(--color-primary);color:var(--color-primary)}.app__tab--active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.app__description{color:var(--color-text-muted);text-align:center;padding:32px 16px;font-size:1rem}.app__burned-mode{display:flex;flex-direction:column;gap:24px}@media(max-width:640px){.app__title{font-size:1.75rem}.app__tabs{flex-direction:column}.app__tab{padding:10px;font-size:.9rem}}
