.food-text-ellipsis{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;vertical-align:middle}@media (min-width: 480px){.food-text-ellipsis{max-width:180px}}@media (min-width: 768px){.food-text-ellipsis{max-width:220px}}.food-kcal-badge{background:linear-gradient(90deg,#f59e0b 60%,#fbbf24);color:#111827;font-weight:600;font-size:11px;border-radius:7px;padding:1px 7px;margin-left:8px;box-shadow:0 2px 8px #f59e0b14;letter-spacing:.3px;display:inline-block;min-width:36px;text-align:center}@media (min-width: 480px){.food-kcal-badge{font-size:12px;padding:2px 9px;min-width:44px}}@media (min-width: 768px){.food-kcal-badge{font-size:13px;padding:3px 11px;min-width:52px}}*{box-sizing:border-box}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,Noto Sans,Helvetica Neue,"Apple Color Emoji","Segoe UI Emoji";background:#0f172a;color:#e2e8f0;font-size:14px;line-height:1.5}.container{max-width:1600px;margin:12px auto;padding:0 12px}@media (min-width: 768px){.container{margin:24px auto;padding:0 16px}body{font-size:16px}}.card{background:#111827;border:1px solid #1f2937;border-radius:12px;padding:12px;box-shadow:0 10px 30px #00000040;margin-bottom:12px}@media (min-width: 768px){.card{border-radius:16px;padding:16px;margin-bottom:16px}}.button{border:0;border-radius:8px;padding:8px 12px;background:#2563eb;color:#fff;font-weight:600;cursor:pointer;font-size:14px;touch-action:manipulation;-webkit-user-select:none;user-select:none;min-height:44px;display:flex;align-items:center;justify-content:center}@media (min-width: 768px){.button{border-radius:12px;padding:10px 14px;font-size:16px;min-height:auto}}.button.secondary{background:#374151}.button.ghost{background:transparent;border:1px solid #334155}.button:disabled{background:#374151;color:#6b7280;cursor:not-allowed;opacity:.5}.button.mobile-only{display:flex}@media (min-width: 768px){.button.mobile-only{display:none}}.input,.textarea{width:100%;background:#0b1220;border:1px solid #243244;color:#e2e8f0;padding:12px;border-radius:8px;font-size:16px;touch-action:manipulation;min-height:44px}@media (min-width: 768px){.input,.textarea{padding:10px 12px;border-radius:12px;min-height:auto}}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}@media (min-width: 768px){.row{gap:12px;flex-wrap:nowrap}}.grid-5{display:grid;grid-template-columns:1fr;gap:8px}@media (min-width: 480px){.grid-5{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px){.grid-5{grid-template-columns:repeat(3,1fr);gap:12px}}@media (min-width: 1024px){.grid-5{grid-template-columns:repeat(5,1fr)}}.badge{display:inline-block;padding:2px 8px;border-radius:999px;border:1px solid #334155;font-size:12px;color:#94a3b8}.list{list-style:none;padding:0;margin:8px 0 0}.list li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border:1px solid #1f2937;border-radius:10px;background:#0b1220}.list li span{flex:1;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}@media (min-width: 480px){.list li span{max-width:180px;font-size:14px}}@media (min-width: 768px){.list li span{max-width:200px;font-size:14px}}@media (min-width: 1024px){.list li span{max-width:220px}}hr.sep{border:none;height:1px;background:#1f2937;margin:14px 0}.small{font-size:12px;color:#94a3b8}.app-header-left{display:flex;align-items:center;gap:10px;cursor:pointer}@media (max-width: 480px){.app-header-left{gap:0px}}@media (min-width: 480px){.app-header-left{gap:0px}}@media (min-width: 768px){.app-header-left{gap:0px}}.app-header-logo{width:28px;height:28px;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(16,185,129,.25))}@media (min-width: 480px){.app-header-logo{width:32px;height:32px}}@media (min-width: 768px){.app-header-logo{width:56px;height:56px}}.app-header-left .title{background:linear-gradient(135deg,#6ee7b7,#10b981,#059669);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent}.title{font-size:16px;font-weight:800;letter-spacing:.2px}@media (min-width: 480px){.title{font-size:18px}}@media (min-width: 768px){.title{font-size:20px}}.subtitle{font-size:12px;color:#94a3b8}@media (min-width: 480px){.subtitle{font-size:13px}}@media (min-width: 768px){.subtitle{font-size:14px}}.hamburger-menu-wrapper{position:relative;margin-bottom:12px}.hamburger-button{width:100%;height:50px;display:flex;align-items:center;gap:12px;padding:0 16px;background:#1f2937;border:1px solid #374151;border-radius:12px;color:#10b981;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0003}.hamburger-button:hover{background:#374151;border-color:#4b5563;transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.hamburger-button:active{transform:translateY(0)}.hamburger-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.current-tab-label{display:flex;align-items:center;gap:10px;flex:1;color:#e2e8f0;font-weight:600;font-size:15px}.current-tab-icon{font-size:20px}.current-tab-text{flex:1;text-align:left}@media (min-width: 768px){.hamburger-button{width:auto;min-width:200px;height:48px;border-radius:10px}.current-tab-label{font-size:16px}}.menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.hamburger-dropdown-menu{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:80%;background:#1f2937;border-right:1px solid #374151;z-index:1000;padding:20px 0;overflow-y:auto;animation:slideInLeft .3s ease;box-shadow:4px 0 24px #0000004d}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@media (min-width: 768px){.hamburger-dropdown-menu{position:absolute;top:60px;left:-15px;width:230px;max-width:none;background:#1f2937;border:1px solid #374151;border-radius:12px;padding:8px;animation:slideDown .3s ease;box-shadow:0 10px 40px #0006;height:313px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}}.menu-item{display:flex;align-items:center;gap:14px;padding:16px 20px;color:#e2e8f0;cursor:pointer;transition:all .2s ease;border-left:3px solid transparent}@media (min-width: 768px){.menu-item{border-left:none;border-radius:8px;padding:12px 16px;margin-bottom:2px}}.menu-item:hover{background:#374151}.menu-item.active{background:#374151;border-left-color:#10b981;color:#10b981}@media (min-width: 768px){.menu-item.active{background:linear-gradient(90deg,#10b98126,#10b9810d);border-left:3px solid #10b981}}.menu-item-icon{font-size:22px;min-width:28px;text-align:center}.menu-item-label{flex:1;font-size:14px;font-weight:600}.active-indicator{color:#10b981;font-size:18px;font-weight:700}.mobile-menu-container,.tabbar,.tab{display:none!important}.tab.active{background:#1f2937}.meal-title{color:#ef4444;font-weight:800;letter-spacing:.6px;font-size:14px;margin-bottom:10px}@media (min-width: 480px){.meal-title{font-size:16px}}@media (min-width: 768px){.meal-title{font-size:18px}}.kv{display:flex;gap:6px;align-items:center;flex-wrap:wrap}@media (min-width: 480px){.kv{gap:8px}}.kv label{width:80px;color:#a1a1aa;font-size:10px;text-transform:uppercase;letter-spacing:.6px}@media (min-width: 480px){.kv label{width:90px;font-size:11px}}@media (min-width: 768px){.kv label{font-size:12px}}footer{margin:20px 0 10px;text-align:center;color:#64748b;font-size:10px}@media (min-width: 480px){footer{margin:24px 0 10px;font-size:11px}}@media (min-width: 768px){footer{margin:28px 0 10px;font-size:12px}}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#0f172a;padding:16px}.auth-form{background:#111827;border:1px solid #1f2937;border-radius:12px;padding:20px;box-shadow:0 10px 30px #00000040;width:100%;max-width:350px}@media (min-width: 480px){.auth-form{border-radius:14px;padding:24px;max-width:400px}}@media (min-width: 768px){.auth-form{border-radius:16px;padding:32px;max-width:450px}}.auth-header{display:flex;flex-direction:column;align-items:center;margin-bottom:28px;gap:12px}@media (min-width: 480px){.auth-header{margin-bottom:30px;gap:14px}}@media (min-width: 768px){.auth-header{margin-bottom:32px;gap:16px}}.app-logo{width:70px;height:70px;animation:fadeInScale .6s ease-out}@media (min-width: 480px){.app-logo{width:80px;height:80px}}@media (min-width: 768px){.app-logo{width:90px;height:90px}}.app-logo svg{width:100%;height:100%;filter:drop-shadow(0 4px 12px rgba(16,185,129,.3))}.app-logo img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(16,185,129,.3))}.app-title{font-size:26px;font-weight:700;background:linear-gradient(135deg,#34d399,#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent;margin:0;letter-spacing:-.5px;animation:fadeInUp .6s ease-out .1s both}@media (min-width: 480px){.app-title{font-size:28px}}@media (min-width: 768px){.app-title{font-size:32px}}.app-subtitle{color:#9ca3af;font-size:15px;margin:0;font-weight:500;animation:fadeInUp .6s ease-out .2s both}@media (min-width: 480px){.app-subtitle{font-size:16px}}@media (min-width: 768px){.app-subtitle{font-size:17px}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.auth-form h2{text-align:center;color:#e2e8f0;margin-bottom:20px;font-size:20px}@media (min-width: 480px){.auth-form h2{margin-bottom:22px;font-size:22px}}@media (min-width: 768px){.auth-form h2{margin-bottom:24px;font-size:24px}}.form-group{margin-bottom:14px}@media (min-width: 480px){.form-group{margin-bottom:15px}}@media (min-width: 768px){.form-group{margin-bottom:16px}}.form-group label{display:block;color:#e2e8f0;margin-bottom:6px;font-weight:500;font-size:13px}@media (min-width: 480px){.form-group label{margin-bottom:7px;font-size:14px}}@media (min-width: 768px){.form-group label{margin-bottom:8px;font-size:15px}}.form-group input,.form-group select{width:100%;background:#0b1220;border:1px solid #243244;color:#e2e8f0;padding:10px;border-radius:6px;font-size:13px;min-height:42px;box-sizing:border-box}@media (min-width: 480px){.form-group input,.form-group select{padding:11px;border-radius:7px;font-size:14px;min-height:44px}}@media (min-width: 768px){.form-group input,.form-group select{padding:12px;border-radius:8px;font-size:14px;min-height:46px}}.password-input-container{position:relative;width:100%}.password-input-container input{padding-right:40px}@media (min-width: 480px){.password-input-container input{padding-right:42px}}@media (min-width: 768px){.password-input-container input{padding-right:45px}}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:#a1a1aa;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px;min-height:36px}@media (min-width: 480px){.password-toggle{right:11px;width:23px;height:23px;min-height:40px}}@media (min-width: 768px){.password-toggle{right:12px;width:24px;height:24px;min-height:44px}}.password-toggle:hover{color:#e2e8f0}.password-toggle svg{width:16px;height:16px}@media (min-width: 480px){.password-toggle svg{width:17px;height:17px}}@media (min-width: 768px){.password-toggle svg{width:18px;height:18px}}.form-group input:focus,.form-group select:focus{outline:none;border-color:#2563eb}.auth-button{width:100%;background:#2563eb;color:#fff;border:none;padding:10px;border-radius:6px;font-weight:600;cursor:pointer;margin-top:14px;font-size:14px;min-height:42px}@media (min-width: 480px){.auth-button{padding:11px;border-radius:7px;margin-top:15px;font-size:15px;min-height:44px}}@media (min-width: 768px){.auth-button{padding:12px;border-radius:8px;margin-top:16px;font-size:16px;min-height:46px}}.auth-button:hover{background:#1d4ed8}.auth-button:disabled{background:#6b7280;cursor:not-allowed}.auth-switch{text-align:center;margin-top:16px;color:#a1a1aa;font-size:13px}@media (min-width: 480px){.auth-switch{margin-top:18px;font-size:14px}}@media (min-width: 768px){.auth-switch{margin-top:20px;font-size:14px}}.link-button{background:none;border:none;color:#2563eb;cursor:pointer;text-decoration:underline;margin-left:8px}.link-button:hover{color:#1d4ed8}.user-profile{max-width:100%;margin:0 auto}@media (min-width: 480px){.user-profile{max-width:600px;padding:0 20px}}@media (min-width: 768px){.user-profile{max-width:700px;padding:0 24px}}@media (min-width: 1024px){.user-profile{max-width:800px;padding:0}}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px}@media (min-width: 480px){.profile-header{margin-bottom:22px;flex-wrap:nowrap}}@media (min-width: 768px){.profile-header{margin-bottom:24px}}.profile-header h2{color:#e2e8f0;margin:0;font-size:18px}@media (min-width: 480px){.profile-header h2{font-size:20px}}@media (min-width: 768px){.profile-header h2{font-size:22px}}.profile-actions{display:flex;gap:8px;flex-wrap:wrap}@media (min-width: 480px){.profile-actions{gap:10px}}@media (min-width: 768px){.profile-actions{gap:12px;flex-wrap:nowrap}}.edit-button{background:#2563eb;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-weight:500;font-size:12px;min-height:36px}@media (min-width: 480px){.edit-button{padding:7px 14px;border-radius:7px;font-size:13px;min-height:40px}}@media (min-width: 768px){.edit-button{padding:8px 16px;border-radius:8px;font-size:14px;min-height:44px}}.edit-button:hover{background:#1d4ed8}.logout-button{background:#dc2626;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-weight:500;font-size:12px;min-height:36px}@media (min-width: 480px){.logout-button{padding:7px 14px;border-radius:7px;font-size:13px;min-height:40px}}@media (min-width: 768px){.logout-button{padding:8px 16px;border-radius:8px;font-size:14px;min-height:44px}}.logout-button:hover{background:#b91c1c}.profile-info{display:grid;gap:16px;grid-template-columns:1fr}@media (min-width: 480px){.profile-info{gap:20px}}@media (min-width: 768px){.profile-info{gap:24px;grid-template-columns:1fr 1fr}}@media (max-width: 768px){.profile-info{grid-template-columns:1fr}}.info-card{background:#111827;border:1px solid #1f2937;border-radius:8px;padding:16px}@media (min-width: 480px){.info-card{border-radius:10px;padding:18px}}@media (min-width: 768px){.info-card{border-radius:12px;padding:20px}}.info-card h3{color:#e2e8f0;margin:0 0 12px;font-size:16px;font-weight:600}@media (min-width: 480px){.info-card h3{margin:0 0 14px;font-size:17px}}@media (min-width: 768px){.info-card h3{margin:0 0 16px;font-size:18px}}.info-grid{display:grid;gap:10px}@media (min-width: 480px){.info-grid{gap:11px}}@media (min-width: 768px){.info-grid{gap:12px}}.info-item{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid #1f2937;font-size:13px}@media (min-width: 480px){.info-item{padding:7px 0;font-size:14px}}@media (min-width: 768px){.info-item{padding:8px 0;font-size:14px}}.info-item:last-child{border-bottom:none}.info-item label{color:#a1a1aa;font-weight:500}.info-item span{color:#e2e8f0;font-weight:600}.language-card{margin-top:12px}.language-switcher-container{display:flex;padding:8px 0}.edit-form{background:#111827;border:1px solid #1f2937;border-radius:12px;padding:24px}.edit-form .form-group{margin-bottom:20px}.form-actions{display:flex;gap:12px;margin-top:24px}.save-button{background:#059669;color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:500}.save-button:hover{background:#047857}.save-button:disabled{background:#6b7280;cursor:not-allowed}.cancel-button{background:#6b7280;color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:500}.cancel-button:hover{background:#4b5563}.cancel-button:disabled{background:#6b7280;cursor:not-allowed}.water-intake-section{background:#0f172a;border:1px solid #1e293b;border-radius:12px;padding:16px}.water-intake-section.compact{background:transparent;border:none;padding:8px 0}.water-intake-input{display:flex;align-items:center;gap:8px;margin-bottom:12px}.water-intake-input input{flex:1;max-width:200px}.water-unit{color:#a1a1aa;font-weight:500;font-size:14px}.water-label{color:#a1a1aa;font-weight:500;font-size:14px;min-width:30px}.water-progress{display:flex;flex-direction:column;gap:8px}.water-info{display:flex;justify-content:space-between;align-items:center;font-size:14px}.water-info span:first-child{color:#3b82f6;font-weight:600}.water-percentage{color:#a1a1aa;font-size:12px}.water-bar{height:8px;background:#1e293b;border-radius:4px;overflow:hidden}.water-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#06b6d4);border-radius:4px;transition:width .3s ease}.water-compact-info{color:#3b82f6;font-weight:600;font-size:12px}.language-switcher{display:flex;gap:3px;background:#1e293b;border-radius:6px;padding:3px}@media (min-width: 480px){.language-switcher{gap:4px;border-radius:7px;padding:4px}}@media (min-width: 768px){.language-switcher{border-radius:8px}}.lang-btn{background:transparent;border:none;color:#a1a1aa;padding:4px 8px;border-radius:4px;cursor:pointer;font-weight:500;font-size:11px;transition:all .2s ease;min-height:32px}@media (min-width: 480px){.lang-btn{padding:5px 10px;border-radius:5px;font-size:12px;min-height:36px}}@media (min-width: 768px){.lang-btn{padding:6px 12px;border-radius:6px;font-size:12px;min-height:40px}}.lang-btn:hover{color:#e2e8f0;background:#334155}.lang-btn.active{background:#2563eb;color:#fff}.language-switcher-modern{display:flex;flex-direction:column;gap:8px;width:100%}.lang-option{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#1e293b;border:2px solid #334155;border-radius:10px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.lang-option:hover{background:#334155;border-color:#475569;transform:translate(4px)}.lang-option.active{background:linear-gradient(135deg,#3b82f626,#2563eb1a);border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f633,0 4px 12px #3b82f633}.lang-option.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#3b82f6,#2563eb)}.lang-option .flag{font-size:28px;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.lang-option .lang-text{flex:1;font-size:16px;font-weight:600;color:#e2e8f0;text-align:left}.lang-option.active .lang-text{color:#60a5fa}.lang-option .check-icon{font-size:20px;color:#10b981;font-weight:700;animation:checkBounce .4s ease}@keyframes checkBounce{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}@media (min-width: 768px){.lang-option{padding:16px 20px}.lang-option .flag{font-size:32px}.lang-option .lang-text{font-size:17px}}.water-readonly{color:#e2e8f0;font-weight:500;padding:6px 12px;background:#1e293b;border-radius:6px;font-size:12px}@media (min-width: 480px){.water-readonly{padding:7px 14px;font-size:13px}}@media (min-width: 768px){.water-readonly{padding:8px 16px;font-size:14px}}.water-readonly-display{display:flex;flex-direction:column;gap:12px}.water-amount{color:#e2e8f0;font-weight:600;font-size:16px}@media (min-width: 480px){.water-amount{font-size:17px}}@media (min-width: 768px){.water-amount{font-size:18px}}.calories-section{margin-bottom:16px}.calories-section.compact{margin-bottom:8px}.calories-label{font-size:11px;color:#a1a1aa;text-transform:uppercase;letter-spacing:.6px;font-weight:600;min-width:60px}@media (min-width: 480px){.calories-label{font-size:12px;min-width:70px}}@media (min-width: 768px){.calories-label{font-size:12px;min-width:80px}}.calories-input{display:flex;align-items:center;gap:8px;margin-bottom:12px}.calories-unit{color:#a1a1aa;font-size:12px;font-weight:500}@media (min-width: 480px){.calories-unit{font-size:13px}}@media (min-width: 768px){.calories-unit{font-size:14px}}.calories-readonly{color:#e2e8f0;font-weight:500;padding:6px 12px;background:#1e293b;border-radius:6px;font-size:12px}@media (min-width: 480px){.calories-readonly{padding:7px 14px;font-size:13px}}@media (min-width: 768px){.calories-readonly{padding:8px 16px;font-size:14px}}.calories-readonly-display{display:flex;flex-direction:column;gap:12px}.calories-amount{color:#e2e8f0;font-weight:600;font-size:16px}@media (min-width: 480px){.calories-amount{font-size:17px}}@media (min-width: 768px){.calories-amount{font-size:18px}}.calories-progress{margin-top:8px}.calories-info{display:flex;flex-direction:column;gap:4px;color:#94a3b8;font-size:12px}@media (min-width: 480px){.calories-info{font-size:13px}}@media (min-width: 768px){.calories-info{font-size:14px}}.calories-percentage,.calories-note{color:#fbbf24;font-weight:500}.calories-info-page{max-width:100%;margin:0 auto}.calories-content{display:flex;flex-direction:column;gap:20px;margin-top:16px}@media (min-width: 480px){.calories-content{gap:24px;margin-top:20px}}@media (min-width: 768px){.calories-content{gap:28px;margin-top:24px}}.calories-section-info{background:#111827;border:1px solid #1f2937;border-radius:8px;padding:16px}@media (min-width: 480px){.calories-section-info{border-radius:10px;padding:18px}}@media (min-width: 768px){.calories-section-info{border-radius:12px;padding:20px}}.calories-section-info h3{color:#e2e8f0;margin:0 0 12px;font-size:16px;font-weight:600}@media (min-width: 480px){.calories-section-info h3{margin:0 0 14px;font-size:17px}}@media (min-width: 768px){.calories-section-info h3{margin:0 0 16px;font-size:18px}}.calories-section-info p{color:#94a3b8;line-height:1.6;margin:0;font-size:13px}@media (min-width: 480px){.calories-section-info p{font-size:14px}}@media (min-width: 768px){.calories-section-info p{font-size:14px;line-height:1.7}}.tips-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}@media (min-width: 480px){.tips-list{gap:10px}}@media (min-width: 768px){.tips-list{gap:12px}}.tips-list li{color:#94a3b8;padding:8px 12px;background:#0b1220;border-radius:6px;border:1px solid #1f2937;font-size:12px;line-height:1.5}@media (min-width: 480px){.tips-list li{padding:9px 14px;border-radius:7px;font-size:13px}}@media (min-width: 768px){.tips-list li{padding:10px 16px;border-radius:8px;font-size:14px}}.external-link-section{text-align:center;margin-top:16px}@media (min-width: 480px){.external-link-section{margin-top:20px}}@media (min-width: 768px){.external-link-section{margin-top:24px}}.external-link-button{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;padding:12px 20px;border-radius:8px;cursor:pointer;font-weight:600;font-size:13px;transition:all .3s ease;box-shadow:0 4px 12px #2563eb4d}@media (min-width: 480px){.external-link-button{padding:14px 24px;border-radius:9px;font-size:14px}}@media (min-width: 768px){.external-link-button{padding:16px 28px;border-radius:10px;font-size:15px}}.external-link-button:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-2px);box-shadow:0 6px 16px #2563eb66}.external-link-button.compact{padding:8px 12px;font-size:11px;border-radius:6px;white-space:nowrap}@media (min-width: 480px){.external-link-button.compact{padding:9px 14px;font-size:12px;border-radius:7px}}@media (min-width: 768px){.external-link-button.compact{padding:10px 16px;font-size:13px;border-radius:8px}}.recipes-page{max-width:100%;margin:0 auto}.recipes-content{display:flex;flex-direction:column;gap:20px;margin-top:16px}@media (min-width: 480px){.recipes-content{gap:24px;margin-top:20px}}@media (min-width: 768px){.recipes-content{gap:28px;margin-top:24px}}.recipes-section-info{background:#111827;border:1px solid #1f2937;border-radius:8px;padding:16px}@media (min-width: 480px){.recipes-section-info{border-radius:10px;padding:18px}}@media (min-width: 768px){.recipes-section-info{border-radius:12px;padding:20px}}.recipes-section-info h3{color:#e2e8f0;margin:0 0 12px;font-size:16px;font-weight:600}@media (min-width: 480px){.recipes-section-info h3{margin:0 0 14px;font-size:17px}}@media (min-width: 768px){.recipes-section-info h3{margin:0 0 16px;font-size:18px}}.recipes-section-info p{color:#94a3b8;line-height:1.6;margin:0;font-size:13px}@media (min-width: 480px){.recipes-section-info p{font-size:14px}}@media (min-width: 768px){.recipes-section-info p{font-size:14px;line-height:1.7}}.day-header{transition:background-color .2s ease;border-radius:8px;min-height:60px;display:flex;align-items:center}@media (min-width: 480px){.day-header{min-height:65px}}@media (min-width: 768px){.day-header{min-height:70px}}.day-header:hover{background-color:#1f2937}.day-header:hover .calories-summary{background-color:#111827}.expand-icon{font-size:12px;color:#64748b;transition:transform .2s ease;-webkit-user-select:none;user-select:none}.calories-summary{background:#1e293b;color:#f59e0b;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;width:80px;text-align:center;flex-shrink:0}@media (min-width: 480px){.calories-summary{font-size:13px;padding:6px 10px;width:90px}}@media (min-width: 768px){.calories-summary{font-size:14px;padding:6px 12px;width:100px}.expand-icon{font-size:14px}}.card .card{background:transparent;border:none;box-shadow:none;padding:0;margin-bottom:0}.card{width:auto;max-width:100%;box-sizing:border-box;transition:width .2s ease}.card.expanded{width:100%}.all-days-container{display:flex;flex-direction:column;gap:16px}@media (min-width: 480px){.all-days-container{gap:20px}}@media (min-width: 768px){.all-days-container{gap:24px}}.pagination-info{display:flex;justify-content:center}.pagination-text{color:#94a3b8;font-size:12px;font-weight:500;background:#1e293b;padding:6px 12px;border-radius:8px;border:1px solid #334155}@media (min-width: 480px){.pagination-text{font-size:13px;padding:7px 14px}}@media (min-width: 768px){.pagination-text{font-size:14px;padding:8px 16px}}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:20px;flex-wrap:wrap}@media (min-width: 480px){.pagination{gap:12px;margin-top:24px}}@media (min-width: 768px){.pagination{gap:16px;margin-top:28px;flex-wrap:nowrap}}.pagination-btn{background:#1e293b;color:#e2e8f0;border:1px solid #334155;border-radius:8px;padding:8px 12px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease;min-height:36px;display:flex;align-items:center;justify-content:center;white-space:nowrap}@media (min-width: 480px){.pagination-btn{padding:9px 14px;font-size:13px;min-height:40px}}@media (min-width: 768px){.pagination-btn{padding:10px 16px;font-size:14px;min-height:44px}}.pagination-btn:hover:not(:disabled){background:#334155;border-color:#475569;color:#f1f5f9}.pagination-btn:disabled{background:#111827;color:#6b7280;border-color:#1f2937;cursor:not-allowed;opacity:.6}.pagination-numbers{display:flex;gap:4px}@media (min-width: 480px){.pagination-numbers{gap:6px}}@media (min-width: 768px){.pagination-numbers{gap:8px}}.pagination-number{background:#1e293b;color:#94a3b8;border:1px solid #334155;border-radius:6px;padding:6px 10px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease;min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center}@media (min-width: 480px){.pagination-number{padding:7px 12px;font-size:13px;min-width:36px;min-height:36px}}@media (min-width: 768px){.pagination-number{padding:8px 14px;font-size:14px;min-width:40px;min-height:40px}}.pagination-number:hover{background:#334155;border-color:#475569;color:#e2e8f0}.pagination-number.active{background:#2563eb;color:#fff;border-color:#2563eb}.pagination-number.active:hover{background:#1d4ed8;border-color:#1d4ed8}.day-content{padding:16px;margin-top:8px;background:#0b1220;border-top:1px solid #1f2937;border-radius:0 0 12px 12px}@media (min-width: 480px){.day-content{padding:18px;margin-top:10px}}@media (min-width: 768px){.day-content{padding:20px;margin-top:12px}}.meals-accordion{margin-top:16px}.meal-card{margin-bottom:8px}.meal-header{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:8px 8px 0 0;-webkit-user-select:none;user-select:none}.meal-header:hover{background-color:#1f2937}.meal-title{font-weight:500}.meal-arrow{font-size:18px;transition:transform .2s ease}.meal-content{border-top:1px solid #e2e8f0;padding:16px}.compact-meals{margin-top:8px}.compact-meal-header{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:8px 8px 0 0;-webkit-user-select:none;user-select:none}.compact-meal-header:hover{background-color:#1f2937}.spacing-small{height:8px}.calories-summary{display:flex;align-items:center;justify-content:center;gap:9px;width:120px;height:40px}.header-content{display:flex;justify-content:space-between;align-items:center}.activity-title{font-size:16px}.water-section{margin-bottom:16px}.water-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.water-label{font-weight:500}.water-amount{font-size:14px;color:#666}.water-progress-bar{width:100%;height:8px;background-color:#e0e0e0;border-radius:4px;overflow:hidden}.water-progress-fill{height:100%;background-color:#4caf50;transition:width .3s ease}.water-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px}.water-btn-group{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.water-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;transition:transform .1s ease,box-shadow .1s ease,opacity .15s;white-space:nowrap;-webkit-user-select:none;user-select:none}.water-btn:active{transform:scale(.95)}.water-btn-glass{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:#fff;box-shadow:0 2px 8px #3b82f659}.water-btn-glass:hover{box-shadow:0 4px 12px #3b82f680;opacity:.92}.water-btn-bottle{background:linear-gradient(135deg,#34d399,#10b981);color:#fff;box-shadow:0 2px 8px #10b98159}.water-btn-bottle:hover{box-shadow:0 4px 12px #10b98180;opacity:.92}.water-btn-reset{background:#ef44441f;color:#ef4444;border:1.5px solid rgba(239,68,68,.3);padding:6px 12px;font-size:14px;font-weight:700;box-shadow:none}.water-btn-reset:hover{background:#ef444433}.water-percentage{font-size:12px;color:#4caf50;font-weight:500}.step-section{margin-bottom:16px;margin-top:16px}.step-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.step-label{color:#a1a1aa;font-size:14px;min-width:30px}.step-amount{font-size:14px;color:#666}.step-progress-bar{width:100%;height:8px;background-color:#e0e0e0;border-radius:4px;overflow:hidden}.step-progress-fill{height:100%;background-color:#ff7043;transition:width .3s ease}.step-controls{display:flex;align-items:center;gap:8px;margin-top:8px}.step-input{width:100px}.step-percentage{font-size:12px;color:#ff7043;font-weight:500}.activities-section{margin-top:16px}.activities-title{font-weight:500;margin-bottom:8px}.activity-empty-message{color:#64748b;font-style:italic;padding:8px 0}.activity-controls{gap:6px}.food-empty-message{color:#64748b;font-style:italic;padding:8px 0}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.app-header{justify-content:space-between;margin-bottom:12px}.app-controls{gap:16px}.pagination-container{flex-direction:column;gap:12px}.pagination-controls{align-items:center;gap:12px}.row.app-header{justify-content:space-between;margin-bottom:12px;flex-wrap:wrap}.row.app-controls{gap:16px;flex-wrap:wrap}.row.pagination-container{flex-direction:column;gap:12px}.row.pagination-info{justify-content:space-between;align-items:center;flex-wrap:wrap}.row.pagination-controls{align-items:center;gap:12px;flex-wrap:wrap}.row.calories-summary{align-items:center;gap:8px}.row.header-content{justify-content:space-between;align-items:center;flex-wrap:wrap}@media (max-width: 767px){.row.app-header{flex-direction:row;gap:12px;align-items:center}.row.app-controls{display:none}}.loading-container{position:fixed;top:0;left:0;width:100vw;height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999}.loading-spinner{width:50px;height:50px;border:3px solid rgba(255,255,255,.3);border-top:3px solid white;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.loading-text{color:#fff;font-size:16px;font-weight:500;letter-spacing:.5px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.password-card{margin-top:16px}.password-form{display:flex;flex-direction:column;gap:16px}.password-form .form-group{display:flex;flex-direction:column;gap:8px}.password-form .password-input-container{position:relative;display:flex;align-items:center}.password-form .password-input-container input{flex:1;padding-right:40px}.password-form .password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:#a1a1aa;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px;min-height:36px;transition:color .2s}@media (min-width: 480px){.password-form .password-toggle{right:11px;width:23px;height:23px;min-height:40px}}@media (min-width: 768px){.password-form .password-toggle{right:12px;width:24px;height:24px;min-height:44px}}.password-form .password-toggle:hover:not(:disabled){color:#cbd5e1}.password-form .password-toggle:disabled{cursor:not-allowed;opacity:.5}.password-error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:12px;border-radius:8px;font-size:14px;text-align:center;animation:slideDown .3s ease-out}.password-mismatch-hint{color:#fca5a5;font-size:12px;margin-top:4px;display:block;animation:slideDown .3s ease-out}.input-error{border-color:#ef444480!important;background:#ef44440d!important}.change-password-button{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:14px 24px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d;margin-top:8px}.change-password-button:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 6px 16px #3b82f666;transform:translateY(-2px)}.change-password-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.change-password-button svg{flex-shrink:0}.change-password-button .spinner{animation:spin 1s linear infinite}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (min-width: 768px){.password-form{gap:20px}.change-password-button{padding:16px 28px;font-size:16px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-content{background:#1e293b;border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #334155}.modal-header h2{margin:0;color:#f1f5f9;font-size:20px}.modal-close{background:none;border:none;color:#94a3b8;font-size:24px;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s}.modal-close:hover{color:#f1f5f9}.modal-body{padding:20px}.photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:20px}.photo-card{background:#0f172a;border:1px solid #334155;border-radius:12px;overflow:hidden;transition:transform .2s}.photo-card:hover{transform:scale(1.02)}.photo-image{width:100%;height:150px;object-fit:cover;display:block}.photo-info{padding:8px;display:flex;justify-content:space-between;align-items:center}.photo-calories{color:#fbbf24;font-weight:600;font-size:14px}.photo-delete-btn{background:#dc2626;border:none;border-radius:6px;padding:4px 8px;cursor:pointer;font-size:16px;transition:background-color .2s}.photo-delete-btn:hover{background:#b91c1c}.no-photos{text-align:center;padding:40px 20px;color:#64748b}.no-photos p{margin:0;font-size:16px}.add-photo-section{border-top:1px solid #334155;padding-top:20px;margin-top:20px}.add-photo-section h3{margin:0 0 16px;color:#f1f5f9;font-size:18px}.photo-preview{margin:16px 0;text-align:center;position:relative;display:inline-block}.photo-preview img{max-width:100%;max-height:200px;border-radius:8px;border:2px solid #334155}.preview-remove-btn{position:absolute;top:8px;right:8px;background:#ef4444e6;color:#fff;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;font-weight:700;z-index:10;transition:all .2s}.preview-remove-btn:hover{background:#dc2626;transform:scale(1.1)}.photo-actions{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.photo-actions .button{flex:1;min-width:140px}.photo-form{display:flex;flex-direction:column;gap:12px}.photo-form .form-group{display:flex;flex-direction:column;gap:8px}.photo-form label{color:#cbd5e1;font-size:14px;font-weight:500}.photo-form input[type=number]{padding:10px 12px;border-radius:8px;border:1px solid #334155;background:#0f172a;color:#e2e8f0;font-size:16px}.photo-form input[type=number]:focus{outline:none;border-color:#3b82f6}.photo-icon-btn{background:none;border:none;cursor:pointer;font-size:20px;padding:4px 8px;transition:transform .2s;color:#e2e8f0}.photo-icon-btn:hover{transform:scale(1.1)}.meal-header-actions{display:flex;align-items:center;gap:8px}@media (max-width: 480px){.photos-grid{grid-template-columns:repeat(2,1fr)}.photo-actions{flex-direction:column}.photo-actions .button{width:100%}}.weight-history-modal{max-width:500px}.weight-with-icon{display:flex;align-items:center;gap:8px}.weight-history-icon{background:none;border:none;cursor:pointer;font-size:20px;padding:4px 8px;transition:transform .2s;border-radius:6px}.weight-history-icon:hover{transform:scale(1.15);background:#3b82f61a}.weight-history-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.weight-history-item{background:#0f172a;border:1px solid #1e293b;border-radius:10px;padding:12px 16px;transition:all .2s}.weight-history-item:hover{border-color:#334155;transform:translate(4px)}.weight-history-main{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.weight-value{font-size:20px;font-weight:700;color:#3b82f6}.weight-date{font-size:13px;color:#94a3b8}.weight-change{font-size:14px;font-weight:600;padding:4px 8px;border-radius:6px;display:inline-block}.weight-change.positive{background:#ef44441a;color:#ef4444}.weight-change.negative{background:#22c55e1a;color:#22c55e}.weight-change.neutral{background:#94a3b81a;color:#94a3b8}.no-history{text-align:center;padding:40px 20px;color:#64748b}.no-history p{font-size:16px}.notes-page{display:flex;flex-direction:column;gap:12px;padding-bottom:32px}.notes-header-card{padding:14px 16px}.notes-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.notes-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.notes-sort-toggle{display:flex;border:1.5px solid #334155;border-radius:8px;overflow:hidden}.notes-sort-btn{background:transparent;border:none;color:#9ca3af;font-size:13px;font-weight:500;padding:6px 12px;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.notes-sort-btn.active{background:#2563eb;color:#fff}.notes-sort-btn:hover:not(.active){background:#1e293b;color:#e2e8f0}.notes-add-btn{white-space:nowrap}.notes-form-card{padding:16px}.notes-form{display:flex;flex-direction:column;gap:10px}.notes-title-input{font-size:15px;font-weight:600}.notes-content-input{background:#1e293b;border:1.5px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;padding:10px 12px;resize:vertical;min-height:100px;font-family:inherit;line-height:1.5;transition:border-color .2s;outline:none}.notes-content-input:focus{border-color:#2563eb}.notes-form-actions{display:flex;gap:8px;justify-content:flex-end}.notes-empty{text-align:center;color:#64748b;font-style:italic;padding:32px 16px}.notes-list{display:flex;flex-direction:column;gap:10px}.note-card{padding:14px 16px;display:flex;flex-direction:column;gap:8px}.note-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}.note-title{font-size:16px;font-weight:700;color:#f1f5f9;flex:1;word-break:break-word}.note-actions{display:flex;gap:6px;flex-shrink:0}.note-action-btn{background:transparent;border:1.5px solid #334155;border-radius:8px;color:#94a3b8;font-size:12px;font-weight:500;padding:4px 10px;cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap;display:flex;align-items:center;gap:4px}.note-edit-btn:hover{background:#2563eb26;border-color:#2563eb;color:#60a5fa}.note-delete-btn:hover{background:#ef44441f;border-color:#ef4444;color:#f87171}.note-content{color:#cbd5e1;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.note-meta{font-size:11px;color:#475569;display:flex;flex-wrap:wrap;gap:6px}.note-updated{color:#475569}
