@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;800&display=swap";
:root{--bg-color:#05070a;--card-bg:#11141b;--card-border:#1f242d;--text-primary:#fff;--text-secondary:#8b949e;--accent-color:#d4ff00;--accent-hover:#b8e600;--indigo-primary:#6366f1;--indigo-secondary:#4f46e5;--danger:#ff4a4a;--border:#1f242d;--glass:#ffffff08;--glass-border:#ffffff14}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Outfit,sans-serif;line-height:1.5;overflow-x:hidden}.app-container{background-color:var(--bg-color);flex-direction:column;max-width:500px;min-height:100vh;margin:0 auto;padding:1.5rem;display:flex;position:relative}h1{letter-spacing:-1px;margin-bottom:.5rem;font-size:2.2rem;font-weight:800}h2{margin-bottom:1rem;font-size:1.4rem;font-weight:800}h3{font-size:1.1rem;font-weight:600}.text-muted{color:var(--text-secondary);font-size:.9rem;font-weight:400}.gradient-text{background:linear-gradient(135deg, white 0%, var(--text-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.btn-primary{background-color:var(--accent-color);color:#000;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;border:none;border-radius:16px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:1.1rem;font-family:Outfit,sans-serif;font-size:1rem;font-weight:800;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.btn-primary:hover{background-color:var(--accent-hover);transform:scale(1.02)}.btn-primary:active{transform:scale(.98)}.btn-secondary{background-color:var(--card-bg);color:#fff;border:1px solid var(--card-border);cursor:pointer;border-radius:12px;padding:.8rem 1.2rem;font-weight:700;transition:all .2s}.btn-secondary:hover{background-color:var(--card-border)}.btn-icon{background:var(--card-bg);border:1px solid var(--card-border);cursor:pointer;color:#fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.2rem;transition:all .2s;display:flex}.btn-icon:hover{background:var(--card-border);border-color:#fff}.dashboard-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.brand{color:var(--accent-color);letter-spacing:-1.5px;font-size:1.6rem;font-weight:800}.action-grid{grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem;display:grid}.action-card{background:var(--card-bg);border:1px solid var(--card-border);color:#fff;border-radius:20px;flex-direction:column;justify-content:flex-end;min-height:150px;padding:1.5rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.action-card.hero{background:linear-gradient(135deg, var(--indigo-secondary) 0%, #312e81 100%);border:none;grid-column:span 2;box-shadow:0 10px 15px -3px #4f46e533}.action-card:hover{border-color:#fff3;transform:translateY(-4px);box-shadow:0 10px 20px -5px #00000080}.action-card .icon-wrapper{background:#ffffff1a;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:auto;font-size:1.8rem;display:flex}.action-card .title{margin-top:1rem;font-size:1.2rem;font-weight:800}.action-card .subtitle{opacity:.6;margin-top:.2rem;font-size:.8rem}.routine-item{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:1.25rem;transition:border-color .2s;display:flex}.routine-item:hover{border-color:var(--indigo-primary)}.empty-state{background:var(--glass);border:1px dashed var(--glass-border);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:1rem;padding:3rem 1.5rem;display:flex}.empty-state .icon{margin-bottom:.5rem;font-size:3rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.4s ease-out forwards fadeIn}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mt-4{margin-top:1rem}.w-full{width:100%}.flex{display:flex}.flex-col{flex-direction:column}.gap-2{gap:.5rem}.items-center{align-items:center}.justify-center{justify-content:center}.capitalize{text-transform:capitalize}.exercise-row{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;flex-direction:column;gap:1rem;padding:1rem;transition:border-color .2s;display:flex;position:relative}@media (min-width:768px){.exercise-row{flex-direction:row;justify-content:space-between;align-items:center}}.exercise-row:hover{border-color:#ffffff26}.exercise-info{align-items:center;gap:1rem;display:flex}.drag-handle{cursor:grab;color:var(--text-secondary);padding:.5rem}.drag-handle:active{cursor:grabbing}.config-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;width:100%;display:grid}@media (min-width:768px){.config-grid{width:auto}}.input-field{border:1px solid var(--card-border);color:#fff;text-align:center;background:#000;border-radius:8px;outline:none;width:100%;padding:.5rem;font-family:Outfit,sans-serif;font-weight:600;transition:border-color .2s}.input-field:focus{border-color:var(--indigo-primary)}.label-text{color:var(--text-secondary);text-transform:uppercase;margin-bottom:.25rem;font-size:.7rem;display:block}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000d9;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-content{background:var(--card-bg);border:1px solid var(--card-border);border-radius:24px;flex-direction:column;width:100%;max-width:600px;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.modal-header{border-bottom:1px solid var(--card-border);padding:1.5rem}.modal-body{flex:1;padding:1rem;overflow-y:auto}.modal-footer{border-top:1px solid var(--card-border);justify-content:flex-end;padding:1rem;display:flex}.search-input{background:var(--bg-color);border:1px solid var(--card-border);color:#fff;border-radius:12px;width:100%;padding:1rem;font-family:inherit;font-size:1rem}.search-result-item{cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;padding:1rem;transition:all .2s;display:flex}.search-result-item:hover{background:var(--card-border);border-color:#ffffff1a}.badge{color:var(--text-secondary);background:#ffffff0d;border-radius:6px;padding:.2rem .5rem;font-size:.7rem;font-weight:700}.plus-icon-scale{width:24px;height:24px}
