@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Barlow:wght@300;400;500;600;700;800;900&family=Barlow+Condensed:wght@400;500;600;700;800&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #141416;--bg-elevated: #1b1b1f;--bg-panel: #f0eeeb;--bg-panel-hover: #e8e5e0;--border: rgba(255, 255, 255, .06);--border-panel: rgba(0, 0, 0, .08);--text: #f5f5f3;--text-on-panel: #141416;--text-muted: #6b6b73;--text-dim: #45454d;--volt: #c8ff00;--volt-dim: rgba(200, 255, 0, .1);--volt-mid: rgba(200, 255, 0, .25);--protein: #c8ff00;--carbs: #ff8a00;--fat: #ff3d5a;--water: #00b4ff;--kcal: #c8ff00;--success: #00d26a;--warning: #ff8a00;--danger: #ff3d5a;--radius: 10px;--radius-sm: 6px;--radius-xs: 4px;--font-score: "Bebas Neue", "Impact", sans-serif;--font-display: "Barlow Condensed", "Arial Narrow", sans-serif;--font-body: "Barlow", sans-serif}body{font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);background-size:40px 40px;pointer-events:none;z-index:0}#root{position:relative;z-index:1}button{cursor:pointer;border:none;font-family:var(--font-body)}input{font-family:var(--font-body)}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:20px;position:relative;transition:border-color .2s ease,transform .2s ease}.card:hover{border-color:#ffffff1a}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulseGlow{0%,to{opacity:.4}50%{opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes borderGlow{0%,to{border-color:var(--border)}50%{border-color:var(--volt-mid)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes scoreReveal{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes voltPulse{0%,to{box-shadow:0 0 #c8ff0000}50%{box-shadow:0 0 20px 2px #c8ff0026}}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;position:relative}.login-page:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 50% at 20% 80%,rgba(200,255,0,.04) 0%,transparent 70%),radial-gradient(ellipse 50% 40% at 80% 20%,rgba(255,138,0,.03) 0%,transparent 70%);pointer-events:none}.login-box{width:100%;max-width:400px;animation:fadeInUp .5s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.login-box:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--volt);box-shadow:0 0 20px #c8ff004d}.login-box h1{font-family:var(--font-score);font-size:3rem;font-weight:400;text-align:left;margin-bottom:2px;color:var(--text);letter-spacing:.04em;line-height:.9;text-transform:uppercase}.login-box p{color:var(--text-muted);text-align:left;margin-bottom:32px;font-size:.85rem;font-weight:400}.login-box .field{margin-bottom:20px}.login-box label{display:block;font-family:var(--font-display);font-size:.7rem;font-weight:700;color:var(--text-muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.12em}.login-box input{width:100%;padding:14px 16px;background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:1rem;outline:none;transition:all .2s ease;font-weight:500}.login-box input:focus{border-color:var(--volt);background:#c8ff0008;box-shadow:0 0 0 3px var(--volt-dim)}.login-box .btn-login{width:100%;padding:16px;background:var(--volt);color:var(--bg);border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.9rem;font-weight:800;margin-top:12px;transition:all .2s ease;letter-spacing:.08em;text-transform:uppercase;position:relative}.login-box .btn-login:before{display:none}.login-box .btn-login:hover{transform:translateY(-1px);box-shadow:0 4px 24px #c8ff0040}.login-box .btn-login:active{transform:translateY(0)}.login-box .btn-login:disabled{opacity:.4;transform:none;box-shadow:none}.login-error{background:#ff3d5a14;color:var(--danger);padding:12px 16px;border-radius:var(--radius-sm);font-size:.82rem;margin-bottom:18px;text-align:left;border-left:3px solid var(--danger);animation:fadeIn .3s ease-out;font-weight:500}.dashboard-layout{max-width:1000px;margin:0 auto;padding:0 24px 60px;animation:fadeIn .4s ease-out}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:20px 0;margin-bottom:0;border-bottom:none;position:relative}.dashboard-header:after{display:none}.dashboard-header h1{font-family:var(--font-score);font-size:1.8rem;font-weight:400;color:var(--text);letter-spacing:.06em;text-transform:uppercase;line-height:1}.tab-nav{display:flex;gap:2px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:3px}.tab-nav .tab{padding:8px 22px;border-radius:6px;font-family:var(--font-display);font-size:.82rem;font-weight:700;color:var(--text-muted);text-decoration:none;transition:all .2s ease;position:relative;text-transform:uppercase;letter-spacing:.08em}.tab-nav .tab.active{background:var(--volt);color:var(--bg);box-shadow:0 2px 12px #c8ff0033}.tab-nav .tab.active:after{display:none}.tab-nav .tab:hover:not(.active){color:var(--text);background:#ffffff0a}.btn-logout{background:transparent;color:var(--text-dim);font-family:var(--font-display);font-size:.72rem;font-weight:700;padding:8px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);transition:all .2s ease;letter-spacing:.08em;text-transform:uppercase}.btn-logout:hover{color:var(--danger);border-color:#ff3d5a4d;background:#ff3d5a0f}.day-nav{display:flex;align-items:center;gap:8px;margin-bottom:0;padding:16px 0 20px;animation:fadeInUp .4s cubic-bezier(.16,1,.3,1)}.day-nav button{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);padding:10px 16px;border-radius:var(--radius-sm);font-size:.9rem;transition:all .2s ease;font-family:var(--font-body);font-weight:600}.day-nav button:hover{border-color:var(--volt);background:var(--volt-dim);color:var(--volt)}.date-picker{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:10px 12px;font-size:.82rem;font-family:var(--font-body);font-weight:500;outline:none;color-scheme:dark;transition:all .2s ease}.date-picker:focus{border-color:var(--volt);box-shadow:0 0 0 3px var(--volt-dim)}.date-label{font-family:var(--font-display);font-size:1rem;font-weight:700;min-width:130px;text-align:center;color:var(--text);text-transform:uppercase;letter-spacing:.04em}.btn-today{background:var(--volt)!important;color:var(--bg)!important;border:none!important;font-size:.75rem!important;font-weight:800;font-family:var(--font-display)!important;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 2px 12px #c8ff0033;margin-left:auto;padding:10px 20px!important;border-radius:var(--radius-sm)!important}.btn-today:hover{box-shadow:0 4px 24px #c8ff004d!important;transform:translateY(-1px)}.today-page{max-width:1000px;margin:0 auto;padding:0}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}@media(max-width:600px){.summary-grid{grid-template-columns:repeat(2,1fr)}}.summary-card{text-align:center;padding:24px 16px 20px;position:relative;overflow:hidden;animation:scoreReveal .5s cubic-bezier(.16,1,.3,1) both;background:var(--bg-elevated)!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important}.summary-card:nth-child(1){animation-delay:0s}.summary-card:nth-child(2){animation-delay:.04s}.summary-card:nth-child(3){animation-delay:.08s}.summary-card:nth-child(4){animation-delay:.12s}.summary-card:nth-child(5){animation-delay:.16s}.summary-card:nth-child(6){animation-delay:.2s}.summary-card:before{display:none}.summary-card:hover{background:var(--bg-elevated)!important;transform:translateY(-2px);border-color:var(--volt-mid)!important}.summary-card .value{font-family:var(--font-score);font-size:3.2rem;font-weight:400;letter-spacing:.02em;line-height:1;position:relative;color:var(--text)!important}.summary-card .label{font-family:var(--font-display);font-size:.68rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.14em;margin-top:6px;display:flex;align-items:center;justify-content:center;gap:6px}.summary-card .label:before{content:"";width:6px;height:6px;border-radius:50%}.summary-card:nth-child(1) .label:before{background:var(--kcal)}.summary-card:nth-child(2) .label:before{background:var(--protein)}.summary-card:nth-child(3) .label:before{background:var(--carbs)}.summary-card:nth-child(4) .label:before{background:var(--fat)}.summary-card:nth-child(5) .label:before{background:var(--water)}.summary-card:nth-child(6) .label:before{background:#a855f7}.summary-card:after{content:"";position:absolute;top:0;left:0;right:0;height:3px}.summary-card:nth-child(1):after{background:var(--kcal)}.summary-card:nth-child(2):after{background:var(--protein)}.summary-card:nth-child(3):after{background:var(--carbs)}.summary-card:nth-child(4):after{background:var(--fat)}.summary-card:nth-child(5):after{background:var(--water)}.summary-card:nth-child(6):after{background:#a855f7}.charts-row{display:grid;grid-template-columns:1.4fr 1fr;gap:8px;margin-bottom:8px}.charts-row.charts-row-3{grid-template-columns:repeat(3,1fr)}@media(max-width:800px){.charts-row.charts-row-3{grid-template-columns:1fr 1fr}}@media(max-width:640px){.charts-row,.charts-row.charts-row-3{grid-template-columns:1fr}}.chart-card{padding:24px 20px;animation:fadeInUp .5s cubic-bezier(.16,1,.3,1) .25s both}.chart-card h3{font-family:var(--font-display);font-size:.72rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:16px;display:flex;align-items:center;gap:8px}.chart-card h3:before{content:"";width:3px;height:12px;border-radius:2px;background:var(--volt);box-shadow:0 0 8px #c8ff004d}.timeline-section{animation:fadeInUp .5s cubic-bezier(.16,1,.3,1) .3s both}.timeline-section h2{font-family:var(--font-display);font-size:.78rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:16px;display:flex;align-items:center;gap:8px}.timeline-section h2:before{content:"";width:3px;height:12px;border-radius:2px;background:var(--volt);box-shadow:0 0 8px #c8ff004d}.timeline{position:relative;padding-left:0;display:flex;flex-direction:column;gap:4px}.timeline:before{display:none}.timeline-item{position:relative;margin-bottom:0;padding:16px 20px;background:var(--bg-elevated);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--border);border-radius:var(--radius);margin-left:0;transition:all .2s ease;animation:fadeInUp .4s cubic-bezier(.16,1,.3,1) both;display:flex;gap:16px;align-items:center;overflow:hidden}.timeline-item:nth-child(1){animation-delay:.32s}.timeline-item:nth-child(2){animation-delay:.36s}.timeline-item:nth-child(3){animation-delay:.4s}.timeline-item:nth-child(4){animation-delay:.44s}.timeline-item:nth-child(5){animation-delay:.48s}.timeline-item:nth-child(n+6){animation-delay:.52s}.timeline-item:hover{border-color:#ffffff1a;transform:translate(3px)}.timeline-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:0;background:var(--text-dim);border:none;box-shadow:none;z-index:2}.timeline-item.meal:before{background:var(--volt);box-shadow:0 0 8px #c8ff0033}.timeline-item.workout:before{background:var(--warning);box-shadow:0 0 8px #ff8a0033}.timeline-item.water:before{background:var(--water);box-shadow:0 0 8px #00b4ff33}.timeline-item.weight:before{background:#a855f7;box-shadow:0 0 8px #a855f733}.timeline-item.sleep:before{background:#6366f1;box-shadow:0 0 8px #6366f133}.timeline-item .time{font-family:var(--font-display);font-size:.72rem;font-weight:700;color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase;min-width:50px}.timeline-item .event-type{font-family:var(--font-display);font-size:.9rem;font-weight:700;text-transform:uppercase;margin-bottom:1px;color:var(--text);letter-spacing:.04em}.timeline-item .details{font-size:.78rem;color:var(--text-muted);line-height:1.4;font-weight:400}.timeline-item .thumb{width:56px;height:56px;border-radius:var(--radius-sm);object-fit:cover;margin-left:auto;border:1px solid var(--border);transition:all .2s ease;flex-shrink:0}.timeline-item .thumb:hover{transform:scale(1.08);box-shadow:0 4px 16px #0006}.empty-state{text-align:center;padding:80px 20px;color:var(--text-dim);font-family:var(--font-display);font-size:.9rem;font-weight:600;animation:fadeIn .5s ease-out;text-transform:uppercase;letter-spacing:.08em}.empty-state:before{content:"";display:block;width:24px;height:3px;background:var(--volt);margin:0 auto 14px;border-radius:2px}.timeline-item-header{display:flex;align-items:flex-start;justify-content:space-between;flex:1;min-width:0}.event-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease;flex-shrink:0}.timeline-item:hover .event-actions{opacity:1}.btn-icon{background:#ffffff0a;border:1px solid var(--border);color:var(--text-muted);width:30px;height:30px;border-radius:var(--radius-xs);font-size:.8rem;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.btn-icon:hover{color:var(--volt);border-color:var(--volt);background:var(--volt-dim);box-shadow:0 0 10px #c8ff001a}.btn-icon.btn-danger:hover{color:var(--danger);border-color:var(--danger);background:#ff3d5a14;box-shadow:0 0 10px #ff3d5a1a}.confirm-delete{display:flex;gap:4px;align-items:center;font-family:var(--font-display);font-size:.68rem;font-weight:700;color:var(--danger);letter-spacing:.06em;text-transform:uppercase}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:100;padding:20px;animation:fadeIn .2s ease-out}.modal-content{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:28px;width:100%;max-width:480px;max-height:80vh;overflow-y:auto;animation:fadeInUp .3s cubic-bezier(.16,1,.3,1);position:relative;box-shadow:0 24px 64px #00000080}.modal-content:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--volt);border-radius:var(--radius) 0 0 var(--radius);animation:none}.modal-content h3{font-family:var(--font-display);font-size:1.1rem;font-weight:700;margin-bottom:20px;color:var(--text);text-transform:uppercase;letter-spacing:.06em}.modal-content h4{font-family:var(--font-display);font-size:.68rem;font-weight:700;color:var(--volt);margin:20px 0 14px;text-transform:uppercase;letter-spacing:.12em}.modal-fields{display:flex;flex-direction:column;gap:14px}.modal-fields .field{display:flex;flex-direction:column;gap:5px}.modal-fields label{font-family:var(--font-display);font-size:.65rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}.modal-fields input{background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text);padding:12px 14px;font-size:.9rem;outline:none;transition:all .2s ease;font-weight:500}.modal-fields input:focus{border-color:var(--volt);box-shadow:0 0 0 3px var(--volt-dim)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.btn-cancel{background:transparent;color:var(--text-muted);padding:10px 20px;border-radius:var(--radius-sm);border:1px solid var(--border);font-family:var(--font-display);font-size:.8rem;font-weight:700;transition:all .2s ease;text-transform:uppercase;letter-spacing:.06em}.btn-cancel:hover{color:var(--text);border-color:#ffffff26}.btn-save{background:var(--volt);color:var(--bg);padding:10px 24px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.8rem;font-weight:800;transition:all .2s ease;text-transform:uppercase;letter-spacing:.06em}.btn-save:hover{box-shadow:0 4px 20px #c8ff0040;transform:translateY(-1px)}.range-page{padding:0}.range-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:16px 0 20px}.range-header h2{font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:.08em}.range-toggle{display:flex;gap:2px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:3px}.range-toggle button{padding:8px 20px;border-radius:6px;font-family:var(--font-display);font-size:.78rem;font-weight:700;color:var(--text-muted);transition:all .2s ease;text-transform:uppercase;letter-spacing:.08em}.range-toggle button+button{border-left:none}.range-toggle button.active{background:var(--volt);color:var(--bg);box-shadow:0 2px 12px #c8ff0033}.range-toggle button:hover:not(.active){color:var(--text);background:#ffffff0a}.range-charts{display:grid;grid-template-columns:1fr 1fr;gap:8px}.range-charts .card{border-radius:var(--radius)}.range-charts .card:nth-child(2n){border-right-color:var(--border)}@media(max-width:640px){.range-charts{grid-template-columns:1fr}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff26}@media(max-width:768px){.dashboard-header{flex-wrap:wrap;gap:12px}.dashboard-header h1{font-size:1.4rem}.day-nav{flex-wrap:wrap;gap:8px}.summary-card .value{font-size:2.4rem}}@media(max-width:480px){.dashboard-layout{padding:0 16px 40px}.tab-nav .tab{padding:6px 14px;font-size:.75rem}.modal-content{padding:20px;margin:10px}.summary-card{padding:20px 12px 16px}.summary-card .value{font-size:2rem}.summary-grid{grid-template-columns:repeat(2,1fr);gap:6px}}::selection{background:var(--volt);color:var(--bg)}
