:root{--primary-color:#f7a31a;--primary-dark:#e8941a;--primary-light:#f9b847;--bg-primary:#0a0a0a;--bg-secondary:#141414;--bg-tertiary:#1a1a1a;--bg-card:#1f1f1f;--bg-hover:#2a2a2a;--text-primary:#fff;--text-secondary:#e5e5e5;--text-muted:#b3b3b3;--text-disabled:#6b6b6b;--border-primary:#333;--border-secondary:#404040;--border-accent:#f7a31a;--success:#00d084;--error:#e50914;--warning:#ffb020;--info:#00a8ff;--shadow-sm:0 2px 4px #0000004d;--shadow-md:0 4px 8px #0006;--shadow-lg:0 8px 16px #00000080;--shadow-xl:0 12px 24px #0009;--transition-fast:.15s ease-in-out;--transition-normal:.3s ease-in-out;--transition-slow:.5s ease-in-out}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:400;line-height:1.6;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}.admin-layout{min-height:100vh;display:flex}.sidebar{background:linear-gradient(180deg, var(--bg-secondary) 0%, var(--bg-tertiary) 100%);border-right:1px solid var(--border-primary);z-index:1000;width:260px;height:100vh;transition:var(--transition-normal);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:fixed;top:0;left:0}.sidebar-header{border-bottom:1px solid var(--border-primary);background:var(--bg-card);justify-content:center;align-items:center;padding:1.5rem;display:flex}.sidebar-brand{color:var(--text-primary);letter-spacing:-.02em;align-items:center;gap:.75rem;font-size:1.4rem;font-weight:700;text-decoration:none;display:flex}.logo-text{color:var(--primary-color)}.sidebar-nav{scrollbar-width:thin;flex:1;padding:1.5rem 0;overflow-y:auto}.nav-section{margin:1.25rem 1rem .5rem}.nav-section-title{color:var(--text-disabled);text-transform:uppercase;letter-spacing:.1em;padding:0 .75rem;font-size:.7rem;font-weight:700}.nav-item{margin:.2rem .75rem}.nav-link{color:var(--text-secondary);transition:var(--transition-fast);border-radius:8px;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;display:flex}.nav-link:hover{color:var(--text-primary);background-color:var(--bg-hover);transform:translate(4px)}.nav-link.active{color:var(--bg-primary);background:linear-gradient(135deg, var(--primary-color), var(--primary-light));box-shadow:var(--shadow-md);font-weight:600}.nav-icon{text-align:center;width:18px;font-size:1.1rem}.main-content{background-color:var(--bg-primary);flex-direction:column;flex:1;min-width:0;min-height:100vh;margin-left:260px;display:flex}.content-wrapper{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:2rem;animation:.4s ease-out fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.dashboard-top-header{border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.greeting-section{flex-direction:column;display:flex}.greeting-text{color:var(--primary-color);text-transform:uppercase;letter-spacing:.05em;font-size:.9rem;font-weight:500}.welcome-back{color:var(--text-primary);margin-top:.25rem;font-size:1.8rem;font-weight:700}.user-profile-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:8px;align-items:center;gap:.6rem;height:38px;padding:.4rem .85rem;display:flex}.profile-avatar{background:var(--bg-hover);width:24px;height:24px;color:var(--primary-color);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;display:flex}.profile-info{flex-direction:column;justify-content:center;display:flex}.profile-name{color:var(--text-primary);font-size:.8rem;font-weight:600;line-height:1.2}.profile-role{color:var(--text-muted);font-size:.65rem;line-height:1.2}.header-btn{background-color:var(--bg-card);border:1px solid var(--border-primary);height:38px;color:var(--text-primary);cursor:pointer;transition:var(--transition-fast);box-sizing:border-box;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:0 1rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.header-btn:hover{background-color:var(--bg-hover);border-color:var(--border-secondary)}.header-btn-icon{width:38px;height:38px;padding:0}.dashboard-card{background:var(--bg-card);border:1px solid var(--border-primary);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), box-shadow var(--transition-fast);border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.dashboard-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.card-title{color:var(--text-primary);font-size:1.1rem;font-weight:600}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;margin-bottom:1.5rem;display:grid}.overview-stats{justify-content:space-around;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.stat-circle{justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:relative}.circle-svg{width:120px;height:120px;transform:rotate(-90deg)}.circle-bg{fill:none;stroke:var(--bg-hover);stroke-width:8px}.circle-progress-bar{fill:none;stroke:var(--primary-color);stroke-width:8px;stroke-linecap:round;stroke-dasharray:314;stroke-dashoffset:60px;transition:stroke-dashoffset 1s ease-out}.circle-content{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute}.circle-content .percentage{color:var(--text-primary);font-size:1.4rem;font-weight:700}.circle-content .label{color:var(--text-muted);text-transform:uppercase;font-size:.7rem}.stats-list{flex-direction:column;flex:1;gap:1rem;display:flex}.stat-item{align-items:center;gap:.75rem;display:flex}.stat-icon{border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;display:flex}.stat-icon.calories{color:var(--error);background:#e509141a}.stat-icon.protein{color:var(--success);background:#00d0841a}.stat-info{flex-direction:column;display:flex}.stat-label{color:var(--text-muted);font-size:.8rem}.stat-value{color:var(--text-primary);font-size:.95rem;font-weight:600}.trend{color:var(--success);margin-left:.25rem;font-size:.75rem}.activity-chart{flex-direction:column;justify-content:space-between;height:140px;display:flex}.chart-bars{justify-content:space-between;align-items:flex-end;height:100px;padding:0 .5rem;display:flex}.bar-wrapper{flex-direction:column;flex:1;align-items:center;display:flex}.bar{background-color:var(--bg-hover);width:14px;transition:height var(--transition-slow) ease-out, background-color var(--transition-fast);border-radius:4px 4px 0 0}.bar.active{background-color:var(--primary-color);box-shadow:0 0 10px #f7a31a66}.chart-labels{border-top:1px solid var(--border-primary);justify-content:space-between;padding-top:.5rem;display:flex}.chart-labels span{color:var(--text-disabled);text-transform:uppercase;text-align:center;flex:1;font-size:.7rem}.fitness-goals{flex-direction:column;gap:1rem;display:flex}.goal-card{background:var(--bg-card);border:1px solid var(--border-primary);transition:transform var(--transition-fast);border-radius:12px;justify-content:space-between;align-items:center;padding:1.25rem;display:flex;position:relative;overflow:hidden}.goal-card:hover{transform:translate(4px)}.goal-card:before{content:"";width:4px;height:100%;position:absolute;top:0;left:0}.goal-card.side-planks:before{background:var(--primary-color)}.goal-card.rope-lifting:before{background:var(--info)}.goal-content h4{color:var(--text-primary);font-size:.95rem;font-weight:600}.goal-content p{color:var(--text-muted);margin-top:.25rem;font-size:.8rem}.goal-image{opacity:.7;font-size:1.5rem}.goal-card.side-planks .goal-image{color:var(--primary-color)}.goal-card.rope-lifting .goal-image{color:var(--info)}.table-responsive{width:100%;overflow-x:auto}.custom-table{border-collapse:collapse;text-align:left;width:100%;margin-top:.5rem}.custom-table th{text-transform:uppercase;color:var(--text-disabled);border-bottom:1px solid var(--border-primary);letter-spacing:.05em;padding:1rem;font-size:.75rem;font-weight:600}.custom-table td{color:var(--text-secondary);border-bottom:1px solid var(--border-primary);vertical-align:middle;padding:1rem;font-size:.875rem}.custom-table tr:hover td{background-color:var(--bg-hover)}.btn{cursor:pointer;transition:var(--transition-fast);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--primary-color), var(--primary-light));color:var(--bg-primary)}.btn-primary:hover{box-shadow:var(--shadow-md);opacity:.95;transform:translateY(-1px)}.btn-secondary{background-color:var(--bg-hover);border-color:var(--border-primary);color:var(--text-primary)}.btn-secondary:hover{background-color:var(--bg-card)}.btn-danger{background-color:var(--error);color:var(--text-primary)}.btn-danger:hover{opacity:.9}.btn-sm{border-radius:6px;padding:.25rem .5rem;font-size:.75rem}.badge{text-transform:uppercase;border-radius:4px;align-items:center;padding:.25rem .5rem;font-size:.7rem;font-weight:700;display:inline-flex}.badge-success{color:var(--success);background-color:#00d0841a}.badge-danger{color:var(--error);background-color:#e509141a}.badge-warning{color:var(--warning);background-color:#ffb0201a}.badge-info{color:var(--info);background-color:#00a8ff1a}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1.25rem;display:flex}.form-label{color:var(--text-muted);font-size:.8rem;font-weight:600}.form-input{background-color:var(--bg-secondary);border:1px solid var(--border-primary);width:100%;color:var(--text-primary);transition:var(--transition-fast);border-radius:8px;outline:none;padding:.75rem 1rem;font-size:.9rem}.form-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #f7a31a1a}.form-input::placeholder{color:var(--text-disabled)}.auth-container{background:radial-gradient(circle at center, var(--bg-secondary) 0%, var(--bg-primary) 100%);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.auth-card{background:var(--bg-card);border:1px solid var(--border-primary);width:100%;max-width:420px;box-shadow:var(--shadow-xl);border-radius:16px;flex-direction:column;gap:1.5rem;padding:2.5rem;display:flex}.auth-header{text-align:center}.auth-logo{color:var(--text-primary);margin-bottom:.5rem;font-size:2rem;font-weight:800}.auth-subtitle{color:var(--text-muted);font-size:.85rem}.status-info{justify-content:space-between;align-items:center;margin-top:1rem;display:flex}.status-values{flex-direction:column;display:flex}.status-values .current{color:var(--success);font-size:1.4rem;font-weight:700}.status-values .average{color:var(--text-disabled);text-transform:uppercase;font-size:.75rem}.status-days{gap:.35rem;display:flex}.status-days span{color:var(--text-disabled);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:4px;padding:.2rem .4rem;font-size:.7rem}.status-days span.active{color:var(--bg-primary);background:var(--success);border-color:var(--success);font-weight:600}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100;background:#000000bf;justify-content:center;align-items:center;width:100%;height:100%;padding:1.5rem;display:flex;position:fixed;top:0;left:0}.modal-content{background:var(--bg-card);border:1px solid var(--border-primary);width:100%;max-width:540px;box-shadow:var(--shadow-xl);border-radius:12px;animation:.25s ease-out fadeInUp;overflow:hidden}.modal-header{border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.modal-title{font-size:1.1rem;font-weight:600}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:1.25rem}.modal-body{max-height:70vh;padding:1.5rem;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-primary);justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}@keyframes live-blink{0%{opacity:1}50%{opacity:.3}to{opacity:1}}.live-badge-blink{animation:1.2s infinite live-blink}@keyframes pulse{0%{transform:scale(.95);box-shadow:0 0 #ef4444b3}70%{transform:scale(1);box-shadow:0 0 0 6px #ef444400}to{transform:scale(.95);box-shadow:0 0 #ef444400}}
