:root{--bg-primary: #0f0f1a;--bg-secondary: #1a1a2e;--bg-tertiary: #16213e;--card-bg: #1e1e30;--card-border: rgba(255, 107, 53, .2);--card-border-hover: rgba(255, 107, 53, .4);--text-primary: #ffffff;--text-secondary: #a0a0b0;--text-muted: #6a6a7a;--accent-primary: #ff6b35;--accent-primary-hover: #ff8c5a;--accent-primary-glow: rgba(255, 107, 53, .4);--color-success: #00d26a;--color-warning: #ffb627;--color-danger: #ff4757;--input-bg: #252535;--input-border: #3a3a4a;--input-focus-glow: rgba(255, 107, 53, .3);--shadow-card: 0 4px 20px rgba(0, 0, 0, .3);--shadow-btn: 0 4px 15px rgba(255, 107, 53, .4);--shadow-btn-hover: 0 6px 20px rgba(255, 107, 53, .5);--shadow-glow: 0 0 20px rgba(255, 107, 53, .5);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 50%,var(--bg-tertiary) 100%);background-attachment:fixed}h1,h2,h3,h4,h5{margin:0 0 4px;color:var(--text-primary)}p{margin:0}button,input,select{font:inherit}button{border-radius:10px;border:none;padding:10px 18px;background:var(--accent-primary);color:#fff;cursor:pointer;font-weight:500;box-shadow:var(--shadow-btn);transition:all .2s ease}button:hover{background:var(--accent-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-btn-hover)}button:active{transform:translateY(0)}button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}button.btn-secondary{background:transparent;border:1px solid rgba(255,107,53,.5);color:var(--accent-primary);box-shadow:none}button.btn-secondary:hover{background:#ff6b351a;border-color:var(--accent-primary);transform:translateY(-1px);box-shadow:none}button.btn-ghost{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);box-shadow:none}button.btn-ghost:hover{background:#ffffff1a;border-color:#fff3;color:var(--text-primary);transform:translateY(-1px);box-shadow:none}button.btn-danger{background:var(--color-danger);box-shadow:0 4px 15px #ff475766}button.btn-danger:hover{background:#ff5c6a;box-shadow:0 6px 20px #ff475780}input,select{width:100%;margin-top:6px;padding:10px 14px;border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-primary);transition:all .2s ease}input::placeholder{color:var(--text-muted)}input:focus,select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 10px var(--input-focus-glow)}select{cursor:pointer}select option{background:var(--card-bg);color:var(--text-primary)}label{display:flex;flex-direction:column;font-size:14px;color:var(--text-secondary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--input-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--accent-primary);color:#fff}#root{max-width:1100px;margin:0 auto;padding:24px 24px 100px}.app{display:flex;flex-direction:column;gap:24px}.app-header{display:flex;flex-direction:column;gap:16px}.header-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.app-logo{display:flex;align-items:center;gap:12px;color:var(--text-primary);transition:all .2s ease}.app-logo:hover{color:var(--accent-primary)}.logo-icon{width:40px;height:40px;border-radius:10px}.date-picker{display:flex;align-items:center;gap:8px}.date-arrow{width:40px;height:40px;padding:0;font-size:18px;display:flex;align-items:center;justify-content:center;background:var(--card-bg);border:1px solid var(--card-border);color:var(--text-primary);box-shadow:none}.date-arrow:hover{border-color:var(--accent-primary);color:var(--accent-primary);box-shadow:var(--shadow-glow);transform:none}.date-display{position:relative;display:flex;align-items:center}.date-input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;margin:0}.date-label{padding:10px 20px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:10px;font-weight:600;min-width:140px;text-align:center;cursor:pointer;color:var(--text-primary);transition:all .2s ease}.date-label:hover{border-color:var(--accent-primary);box-shadow:var(--shadow-glow)}.date-today-hint{font-size:13px;color:var(--accent-primary);cursor:pointer;padding:6px 12px;border-radius:6px;transition:all .2s ease;background:#ff6b351a}.date-today-hint:hover{background:#ff6b3533}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#1e1e30f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--card-border);padding:8px 16px;z-index:1000}.bottom-nav-inner{max-width:500px;margin:0 auto;display:flex;justify-content:space-around;align-items:center}.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 16px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;border-radius:12px;box-shadow:none}.nav-item:hover{color:var(--text-primary);background:#ffffff0d;transform:none;box-shadow:none}.nav-item.active{color:var(--accent-primary);background:#ff6b3526;box-shadow:var(--shadow-glow)}.nav-item-icon{font-size:22px;display:flex;align-items:center;justify-content:center}.nav-item-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.page{display:flex;flex-direction:column;gap:20px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;padding:24px;box-shadow:var(--shadow-card);transition:all .3s ease}.card:hover{border-color:var(--card-border-hover);transform:translateY(-2px)}.card-title{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:16px;display:flex;align-items:center;gap:8px}.form-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.form-grid.compact{margin-top:16px}.form-actions{display:flex;align-items:flex-end;gap:12px}.banner{padding:14px 18px;border-radius:12px;font-size:14px;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.banner.error{background:#ff475726;color:var(--color-danger);border:1px solid rgba(255,71,87,.3)}.banner.success{background:#00d26a26;color:var(--color-success);border:1px solid rgba(0,210,106,.3)}.muted{color:var(--text-secondary);font-size:14px}.stack{display:flex;flex-direction:column;gap:16px;margin-top:12px}.activity{border:1px solid var(--card-border);border-radius:14px;padding:18px;background:#ffffff05;display:flex;flex-direction:column;gap:14px;transition:all .2s ease}.activity:hover{border-color:var(--card-border-hover)}.activity-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.inline-actions{display:flex;gap:8px;flex-wrap:wrap}.items{display:flex;flex-direction:column;gap:12px}.items-header{display:flex;justify-content:space-between;align-items:center}.items-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.item-row{display:flex;flex-direction:column;gap:8px;border:1px solid var(--input-border);border-radius:12px;padding:14px;background:var(--input-bg);transition:all .2s ease}.item-row:hover{border-color:var(--card-border-hover)}.item-row-content{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;width:100%}.edit-amount-row{display:flex;align-items:center;gap:8px;margin-top:8px}.edit-amount-row input{width:80px;padding:6px 10px}.edit-amount-row button{padding:6px 12px;font-size:13px}.edit-amount-row button.secondary{background:transparent;border:1px solid var(--input-border);color:var(--text-muted)}.item-actions{display:flex;gap:8px}.item-actions button{padding:6px 12px;font-size:13px}.item-row-editing .edit-form-compact{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;width:100%}.item-row-editing .edit-form-compact label{display:flex;flex-direction:column;gap:4px;font-size:12px}.item-row-editing .edit-form-compact input{padding:6px 8px;font-size:14px;min-width:70px}.item-row-editing .edit-form-actions{display:flex;gap:8px;align-items:center}.item-row-editing .edit-form-actions button.secondary{background:transparent;border:1px solid var(--input-border);color:var(--text-muted)}.product-search{position:relative;width:100%}.product-search input{width:100%}.search-loading{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.search-results{position:absolute;top:100%;left:0;right:0;background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;max-height:300px;overflow-y:auto;z-index:100;box-shadow:var(--shadow-card);list-style:none;padding:0;margin:6px 0 0}.search-results li button{width:100%;text-align:left;padding:12px 16px;border:none;background:none;cursor:pointer;display:flex;flex-direction:column;gap:4px;color:var(--text-primary);box-shadow:none;border-radius:0;transition:background .15s}.search-results li button:hover{background:#ff6b351a;transform:none;box-shadow:none}.search-item-name{font-weight:500;color:var(--text-primary)}.search-item-info{font-size:12px;color:var(--text-secondary)}.search-empty{position:absolute;top:100%;left:0;right:0;background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;margin-top:6px;padding:14px 16px;color:var(--text-muted);font-size:14px;z-index:100}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:20px}.pagination button{padding:10px 18px}.pagination span{color:var(--text-secondary);font-size:14px}.list-search{margin-bottom:20px}.list-search input{width:100%;max-width:400px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.profile-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.stat{display:flex;flex-direction:column;gap:6px;padding:12px;background:#ffffff08;border-radius:10px;transition:all .2s ease}.stat:hover{background:#ffffff0d}.stat-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:18px;font-weight:600;color:var(--text-primary)}.stat.highlight{background:#ff6b351a;border:1px solid rgba(255,107,53,.2);padding:14px;grid-column:span 2}.stat.highlight .stat-value{color:var(--accent-primary);font-size:22px}.calories-summary{display:flex;flex-direction:column;gap:12px}.calorie-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05)}.calorie-row:last-child{border-bottom:none}.calorie-row.total{font-weight:600;border-top:2px solid var(--accent-primary);border-bottom:none;margin-top:6px;padding-top:14px}.calorie-row .value{font-weight:500}.calorie-row .value.eaten{color:var(--color-warning)}.calorie-row .value.deficit{color:var(--color-success)}.calorie-row .value.surplus{color:var(--color-danger);font-weight:600}.calorie-row .value.remaining{color:var(--color-success)}.calorie-row .label-warning{color:var(--color-danger);font-weight:600}.calorie-row.target-row{background:#00d26a1a;padding:12px 14px;border-radius:10px;border-bottom:none;margin-bottom:6px}.calorie-row .value.target{color:var(--color-success);font-weight:600}.macros-comparison{display:flex;gap:16px;margin-bottom:20px;padding:14px;background:#ffffff08;border-radius:12px}.macro-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px}.macro-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.macro-value{font-size:14px;font-weight:500;color:var(--text-primary)}.chart-placeholder{height:200px;display:flex;align-items:center;justify-content:center;background:#ffffff05;border-radius:10px;border:1px dashed var(--input-border)}.calories-estimate{color:var(--accent-primary);font-weight:600}.muted.small{font-size:11px;margin-top:2px;font-style:italic}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px}.spinner{width:44px;height:44px;border:3px solid var(--input-border);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{display:flex;align-items:center;justify-content:center;min-height:80vh}.auth-container{background:var(--card-bg);border:1px solid var(--card-border);border-radius:20px;padding:40px;width:100%;max-width:420px;box-shadow:var(--shadow-card);text-align:center}.auth-header{margin-bottom:32px}.auth-header h1{margin:0 0 12px;font-size:32px;color:var(--text-primary)}.auth-tagline{color:var(--text-muted);font-size:16px;margin:0 0 20px}.auth-features{list-style:none;padding:0;margin:0;text-align:left;display:flex;flex-direction:column;gap:10px}.auth-features li{color:var(--text-secondary);font-size:14px;padding:8px 12px;background:#ff6b3514;border-radius:8px;border-left:3px solid var(--accent)}.auth-tabs{display:flex;gap:8px;margin-bottom:28px}.auth-tabs button{flex:1;padding:12px 18px;background:#ffffff0d;border:1px solid var(--input-border);color:var(--text-secondary);box-shadow:none}.auth-tabs button:hover{background:#ffffff14;transform:none;box-shadow:none}.auth-tabs button.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:var(--shadow-btn)}.auth-error{background:#ff475726;color:var(--color-danger);padding:14px 18px;border-radius:10px;margin-bottom:18px;font-size:14px;text-align:left;border:1px solid rgba(255,71,87,.3)}.auth-form{display:flex;flex-direction:column;gap:18px;text-align:left}.auth-form .form-group{display:flex;flex-direction:column;gap:8px}.auth-form label{font-size:14px;font-weight:500;color:var(--text-secondary)}.auth-form input{padding:14px 16px;font-size:15px}.auth-form .btn-primary{margin-top:10px;padding:16px 24px;font-size:16px;font-weight:600}.user-menu{position:relative}.user-menu-trigger{background:#ffffff0d;border:1px solid var(--input-border);color:var(--text-secondary);padding:8px 14px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:14px;box-shadow:none}.user-menu-trigger:hover{color:var(--text-primary);background:#ffffff14;transform:none;box-shadow:none}.user-menu-trigger .arrow{font-size:8px}.user-menu-dropdown{position:absolute;top:100%;right:0;margin-top:6px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:10px;box-shadow:var(--shadow-card);min-width:120px;z-index:100;overflow:hidden}.user-menu-dropdown button{width:100%;text-align:left;padding:12px 16px;background:transparent;border:none;border-radius:0;color:var(--text-secondary);cursor:pointer;font-size:14px;white-space:nowrap;box-shadow:none}.user-menu-dropdown button:hover{background:#ff47571a;color:var(--color-danger);transform:none;box-shadow:none}.yesterday-hint{grid-column:1 / -1;background:#ffb6271a;border:1px solid rgba(255,182,39,.3);border-radius:12px;padding:14px}.yesterday-header{font-weight:600;margin-bottom:10px;color:var(--color-warning)}.yesterday-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.yesterday-items li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid rgba(255,182,39,.2)}.yesterday-items li:last-child{border-bottom:none}.yesterday-items li span{color:var(--text-primary)}.yesterday-items li button{padding:6px 12px;font-size:13px;background:var(--color-warning);color:#1a1a2e;box-shadow:0 4px 15px #ffb6274d}.yesterday-items li button:hover{background:#ffc940}.measurements-latest{margin-bottom:12px}.measurements-row{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:10px}.measurements-row span{font-size:14px;color:var(--text-secondary)}.measurements-row strong{color:var(--text-primary)}.tabs{display:flex;gap:8px;margin-bottom:20px}.tabs button{padding:10px 20px;background:#ffffff0d;border:1px solid var(--input-border);color:var(--text-secondary);box-shadow:none}.tabs button:hover{background:#ffffff14;transform:none;box-shadow:none}.tabs button.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:var(--shadow-btn)}@media(max-width:768px){#root{padding:16px 12px 90px}.app-header{gap:12px}.header-row{flex-wrap:wrap}.logo-icon{width:32px;height:32px}.app-logo{gap:10px;font-size:20px}.date-picker{justify-content:center;width:100%}.date-arrow{width:44px;height:44px}.page-header{flex-direction:column;align-items:stretch;gap:12px}.card{padding:18px;border-radius:14px}.form-grid{grid-template-columns:1fr;gap:14px}.form-actions{width:100%}.form-actions button{width:100%;padding:14px}.activity-header{flex-direction:column;gap:12px}.inline-actions{width:100%}.inline-actions button{flex:1;padding:12px 10px;font-size:13px}.item-row{padding:12px}.item-row button{width:100%;margin-top:10px}.dashboard-grid{grid-template-columns:1fr;gap:16px}.profile-stats{grid-template-columns:1fr;gap:12px}.stat.highlight{grid-column:span 1}.macros-comparison{flex-direction:column;gap:12px}.macro-item{flex-direction:row;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05)}.macro-item:last-child{border-bottom:none}.calorie-row{flex-direction:column;align-items:flex-start;gap:4px}.calorie-row .value{font-size:16px}.pagination{flex-wrap:wrap;gap:10px}.pagination button{flex:1;min-width:100px;padding:12px 14px;font-size:13px}.list-search input{max-width:100%}.auth-container{padding:28px 22px;margin:16px;border-radius:16px}.auth-container h1{font-size:24px}.auth-tabs button{padding:12px 14px;font-size:14px}.tabs{flex-wrap:wrap}.tabs button{flex:1;min-width:80px;padding:12px 14px;font-size:13px}.chart-placeholder{height:160px}.bottom-nav{padding:6px 12px}.nav-item{padding:8px 12px}.nav-item-icon{font-size:20px}.nav-item-label{font-size:10px}}@media(max-width:400px){#root{padding:12px 8px 85px}h1{font-size:22px}h2{font-size:18px}button{font-size:14px;padding:12px 14px}.stat-value{font-size:16px}.stat.highlight .stat-value{font-size:18px}.nav-item{padding:6px 8px}}.analytics-period-selector{display:flex;gap:8px;margin-bottom:16px}.analytics-period-selector button{flex:1;padding:8px 12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff9;font-size:13px;cursor:pointer;transition:all .2s ease}.analytics-period-selector button:hover{background:#ffffff1a;color:#fffc}.analytics-period-selector button.active{background:linear-gradient(135deg,#ff6b354d,#ff4d4d4d);border-color:var(--accent);color:#fff}.analytics-empty{text-align:center;padding:24px}.workout-analytics{display:flex;flex-direction:column;gap:20px}.analytics-summary{display:flex;gap:16px;padding:16px;background:#ffffff08;border-radius:12px}.analytics-summary .stat-item{display:flex;flex-direction:column;gap:4px;flex:1}.analytics-summary .stat-value{font-size:24px;font-weight:700;color:#fff}.analytics-summary .stat-item.highlight .stat-value{color:#ff6b35!important;-webkit-text-fill-color:#ff6b35!important;text-shadow:0 0 20px rgba(255,107,53,.5)}.analytics-summary .stat-label{font-size:12px;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.analytics-section{border-top:1px solid rgba(255,255,255,.1);padding-top:16px}.analytics-section h4{font-size:14px;font-weight:600;color:#fffc;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.analytics-section h5{font-size:12px;font-weight:500;color:#ffffff80;margin:12px 0 8px}.cardio-list{display:flex;flex-direction:column;gap:12px}.cardio-item{padding:12px;background:#ffffff08;border-radius:10px;border-left:3px solid var(--accent)}.cardio-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.cardio-type{font-weight:600;color:#fff}.cardio-sessions{font-size:12px;color:#ffffff80}.cardio-stats{display:flex;gap:16px;flex-wrap:wrap}.cardio-stat{font-size:13px;color:#ffffffb3}.cardio-stat strong{color:#fff;font-weight:600}.cardio-stat.calories strong{color:var(--accent)}.cardio-avg{margin-top:8px;font-size:12px;color:#fff6;display:flex;gap:12px}.muscle-groups,.strength-records{margin-bottom:16px}.muscle-list,.records-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.muscle-item,.record-item{padding:10px 12px;background:#ffffff08;border-radius:8px;display:flex;flex-direction:column;gap:4px}.muscle-name,.record-name{font-size:13px;font-weight:500;color:#fff}.muscle-sets,.record-weight{font-size:12px;color:#ffffff80}.strength-total{font-size:14px;color:#ffffffb3;padding:12px;background:#ff6b351a;border-radius:8px;text-align:center}.strength-total strong{color:var(--accent);font-weight:700}.steps-stats{display:flex;gap:16px;flex-wrap:wrap;align-items:baseline}.steps-total{font-size:18px;color:#fff}.steps-total strong{font-weight:700;color:var(--accent)}.steps-avg,.steps-calories{font-size:13px;color:#ffffff80}.cardio-history-chart{display:flex;flex-direction:column;gap:16px}.chart-summary{display:flex;gap:16px;padding:12px 16px;background:#ff6b351a;border-radius:10px;border-left:3px solid var(--accent)}.summary-item{display:flex;flex-direction:column;gap:2px}.summary-value{font-size:20px;font-weight:700;color:#fff}.summary-label{font-size:11px;color:#ffffff80;text-transform:uppercase}.chart-empty{padding:24px;text-align:center}@media(max-width:600px){.analytics-summary{flex-direction:column;gap:12px}.analytics-summary .stat-item{flex-direction:row;justify-content:space-between;align-items:center}.muscle-list,.records-list{grid-template-columns:1fr 1fr}.cardio-stats{flex-direction:column;gap:4px}}@keyframes pulse-glow{0%,to{box-shadow:0 0 15px #ff6b3566}50%{box-shadow:0 0 25px #ff6b3599}}.pulse-glow{animation:pulse-glow 2s ease-in-out infinite}
