@import "https://fonts.googleapis.com/css2?family=Sansation:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&family=Outfit:wght@300;400;500;600;700;800;900&family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&family=Inter:wght@300;400;500;600;700&display=swap";@font-face{font-family:Nexa;src:url(/fonts/Nexa-Bold.woff2)format("woff2"),url(/fonts/Nexa-Bold.otf)format("opentype"),url(/fonts/Nexa-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Nexa;src:url(/fonts/Nexa-Regular.woff2)format("woff2"),url(/fonts/Nexa-Regular.otf)format("opentype"),url(/fonts/Nexa-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--bg-primary:#08070b;--bg-secondary:#0f0d15;--bg-tertiary:#171420;--bg-card:#110e18bf;--bg-card-hover:#181422d9;--bg-glass:#0f0d15b8;--bg-glass-input:#0a080fd1;--text-primary:#f8fafc;--text-secondary:#9f9baa;--text-muted:#696478;--text-light:#cbd5e1;--accent-light:#fda4af;--accent-gradient-subtle:linear-gradient(135deg, #9f123938, #e11d480f);--accent-glow:#e11d4859;--accent-glow-strong:#e11d4899;--success-color:#10b981;--success-glow:#10b98140;--warning-color:#f59e0b;--warning-glow:#f59e0b40;--danger-color:#ef4444;--danger-glow:#ef444440;--info-color:#38bdf8;--border-color:#ffffff14;--border-subtle:#ffffff0a;--border-hover:#ffffff29;--border-focus:#e11d4899;--radius-xl:22px;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--radius-xs:6px;--radius-full:9999px;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 2px 8px #0006;--shadow-md:0 8px 24px -4px #0000008c, 0 4px 10px -2px #00000059;--shadow-lg:0 20px 36px -8px #000000bf, 0 8px 18px -4px #00000073;--shadow-inset-bevel:inset 0 1px 1px #ffffff1a;--font-display:"Sansation", "Nexa", "Outfit", "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-sans:"Sansation", "Nexa", "Plus Jakarta Sans", "Inter", system-ui, -apple-system, sans-serif;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.16, 1, .3, 1);--transition-spring:.4s cubic-bezier(.175, .885, .32, 1.275)}:root,[data-theme=light]{--accent-color:#e11d48;--accent-hover:#f43f5e;--accent-dark:#9f1239;--accent-gradient:linear-gradient(135deg, #9f1239, #e11d48 50%, #fb7185);--accent-gradient-hover:linear-gradient(135deg, #be123c, #f43f5e 50%, #fecdd3);--border-accent:#e11d484d;--shadow-glow:0 0 35px -5px var(--accent-glow)}[data-theme=light]{--bg-primary:#f7f6fa;--bg-secondary:#fff;--bg-tertiary:#f0eef5;--bg-card:#ffffffd9;--bg-card-hover:#fffffff7;--bg-glass:#ffffffbf;--bg-glass-input:#ffffffe6;--text-primary:#1a1523;--text-secondary:#5c566a;--text-muted:#8b859a;--text-light:#35303f;--accent-light:#e11d48;--accent-gradient-subtle:linear-gradient(135deg, #9f12391f, #e11d4808);--accent-glow:#e11d4838;--accent-glow-strong:#e11d4866;--success-color:#059669;--success-glow:#05966929;--warning-color:#d97706;--warning-glow:#d9770629;--danger-color:#dc2626;--danger-glow:#dc262629;--info-color:#0284c7;--border-color:#140f1e1a;--border-subtle:#140f1e0d;--border-hover:#140f1e2e;--border-focus:#e11d4880;--shadow-xs:0 1px 2px #140f1e0f;--shadow-sm:0 2px 8px #140f1e14;--shadow-md:0 8px 24px -4px #140f1e1f, 0 4px 10px -2px #140f1e0f;--shadow-lg:0 20px 36px -8px #140f1e29, 0 8px 18px -4px #140f1e14;--shadow-inset-bevel:inset 0 1px 1px #fff9}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 12% 8%,#9f123929,#0000 35%),radial-gradient(circle at 88% 22%,#e11d4817,#0000 40%),radial-gradient(circle at 50% 85%,#8813371f,#0000 45%);background-attachment:fixed;max-width:100vw;min-height:100vh;font-size:15px;line-height:1.5;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#e11d4866}a{color:inherit;text-decoration:none}.app-container{flex-direction:column;min-height:100vh;display:flex;position:relative}.app-header{-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--border-color);z-index:50;transition:all var(--transition-normal);background:#0c0a12c7;padding:.85rem 1.25rem;position:sticky;top:0}.header-content{justify-content:space-between;max-width:1240px;margin:0 auto}.app-title,.header-content{align-items:center;display:flex}.app-title{font-family:var(--font-display);letter-spacing:-.03em;background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 2px 10px #e11d4840);transition:transform var(--transition-fast);-webkit-background-clip:text;gap:.5rem;font-size:1.55rem;font-weight:800}.app-title:hover{transform:scale(1.02)}.app-main{flex:1;width:100%;max-width:1240px;margin:0 auto;padding:2rem 1.5rem}h1,h2,h3,h4,h5{letter-spacing:-.025em;color:var(--text-primary)}.btn,h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:700}.btn{letter-spacing:.01em;border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.4rem;font-size:.875rem;display:inline-flex;position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 14px #e11d4859,var(--shadow-inset-bevel);border:1px solid #ffffff26}.btn-primary:hover:not(:disabled){background:var(--accent-gradient-hover);transform:translateY(-1.5px);box-shadow:0 6px 20px #e11d4880,0 0 25px #e11d484d}.btn-secondary{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-xs);background:#ffffff0d}.btn-secondary:hover:not(:disabled){border-color:var(--border-hover);color:#fff;background:#ffffff17;transform:translateY(-1.5px)}.btn-danger{color:#f87171;box-shadow:var(--shadow-xs);background:#ef44441f;border:1px solid #ef444440}.btn-danger:hover:not(:disabled){color:#fff;background:#ef4444;border-color:#ef4444;transform:translateY(-1.5px);box-shadow:0 4px 14px #ef444466}.btn-secondary-sm{font-size:.775rem;font-family:var(--font-display);color:var(--text-primary);border-radius:var(--radius-sm);border:1px solid var(--border-color);transition:all var(--transition-fast);background:#ffffff0d;padding:.4rem .85rem;font-weight:700}.btn-secondary-sm:hover:not(:disabled){border-color:var(--border-hover);color:#fff;background:#ffffff1a}.card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);box-sizing:border-box;max-width:100%;transition:border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal);padding:1.65rem;position:relative}.card:hover{border-color:var(--border-accent);box-shadow:var(--shadow-lg),0 0 20px #e11d481a}@media (width<=640px){.card{padding:1.15rem}}.dashboard-grid{grid-template-columns:1fr;gap:1.5rem;margin-top:1.5rem;display:grid}@media (width>=768px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.grid-span-2{grid-column:span 2}}@media (width>=1024px){.dashboard-grid{grid-template-columns:repeat(4,1fr)}.grid-span-4{grid-column:span 4}.grid-span-3{grid-column:span 3}.grid-span-1{grid-column:span 1}}.form-group{flex-direction:column;gap:.45rem;margin-bottom:1.25rem;display:flex}.form-label{font-family:var(--font-display);letter-spacing:.02em;color:var(--text-secondary);font-size:.825rem;font-weight:600}.form-input,.select-input{background-color:var(--bg-glass-input);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast);width:100%;padding:.75rem 1rem;font-size:.95rem;box-shadow:inset 0 2px 4px #0000004d}.form-input:hover,.select-input:hover{border-color:var(--border-hover)}.form-input:focus,.select-input:focus{border-color:var(--border-focus);background-color:#0f0c16f2;outline:none;box-shadow:0 0 0 3px #e11d4840,inset 0 2px 4px #0000004d}.select-input{cursor:pointer;appearance:none;background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20stroke%3D%22%23fda4af%22%20stroke-width%3D%222.2%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22m19.5%208.25-7.5%207.5-7.5-7.5%22%2F%3E%3C%2Fsvg%3E);background-position:right 1rem center;background-repeat:no-repeat;background-size:1.15rem;padding-right:2.75rem}.modal-overlay{-webkit-backdrop-filter:blur(18px);z-index:100;background-color:#06040acc;justify-content:center;align-items:center;padding:1.5rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg),0 0 30px #000c;width:100%;max-width:520px;max-height:85vh;padding:2.2rem;animation:.28s cubic-bezier(.16,1,.3,1) modalScaleUp;position:relative;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.modal-header h2,.modal-header h3{font-family:var(--font-display);color:var(--text-primary);font-size:1.35rem;font-weight:800}.modal-close{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;width:2.2rem;height:2.2rem;transition:all var(--transition-fast);background:#ffffff0f;border-radius:50%;justify-content:center;align-items:center;font-size:1.35rem;display:flex}.modal-close:hover{color:#fff;background-color:#ef444433;border-color:#ef444466;transform:rotate(90deg)}.modal-actions{justify-content:flex-end;gap:.85rem;margin-top:2rem;display:flex}.badge{font-family:var(--font-display);letter-spacing:.03em;border-radius:var(--radius-full);border:1px solid #0000;align-items:center;gap:.35rem;padding:.3rem .75rem;font-size:.725rem;font-weight:700;display:inline-flex}.badge-success{color:#34d399;background-color:#10b9811f;border-color:#10b9814d}.badge-warning{color:#fbbf24;background-color:#f59e0b1f;border-color:#f59e0b4d}.badge-danger{color:#f87171;background-color:#ef44441f;border-color:#ef44444d}.user-selector{align-items:center;gap:.75rem;display:flex}.user-selector .select-input{background-color:var(--bg-tertiary);border-color:var(--border-color);width:180px;padding:.4rem 2rem .4rem 1rem;font-size:.875rem}.empty-state{text-align:center;background-color:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--radius-lg);flex-direction:column;justify-content:center;align-items:center;margin-top:2rem;padding:4rem 2rem;display:flex}.empty-state-icon{opacity:.85;margin-bottom:1.5rem;font-size:3rem}.empty-state h3{margin-bottom:.5rem}.empty-state p{color:var(--text-secondary);max-width:420px;margin-bottom:1.5rem}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);flex-direction:column;gap:.5rem;display:flex;position:relative;overflow:hidden}.stat-card:before{content:"";background:var(--accent-gradient);border-radius:4px 0 0 4px;width:4px;height:100%;position:absolute;top:0;left:0}.stat-card.success:before{background:linear-gradient(#10b981,#059669)}.stat-card.warning:before{background:linear-gradient(#f59e0b,#d97706)}.stat-card.danger:before{background:linear-gradient(#ef4444,#dc2626)}.stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-size:.75rem;font-weight:700}.stat-label,.stat-value{font-family:var(--font-display)}.stat-value{color:var(--text-primary);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.95rem;font-weight:800;line-height:1.15}.stat-desc{color:var(--text-muted);font-size:.775rem}.table-container{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm);overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:.9rem}.data-table td,.data-table th{padding:1.1rem 1.25rem}.data-table th{color:var(--text-secondary);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--border-color);background-color:#171420d9;font-size:.8rem;font-weight:700}.data-table tr{transition:background-color var(--transition-fast);background-color:#0000;border-bottom:1px solid #ffffff0d}.data-table tr:hover{background-color:#ffffff09}.data-table tr:last-child{border-bottom:none}.actions-cell{gap:.5rem;display:flex}.chart-container{width:100%;height:300px;margin-top:1rem;position:relative}.chart-svg{width:100%;height:100%;overflow:visible}.chart-line{fill:none;stroke:var(--accent-color);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.chart-target-line{fill:none;stroke:var(--text-muted);stroke-width:1.5px;stroke-dasharray:4 4}.chart-area{fill:url(#chart-gradient);opacity:.2}.chart-grid-line{stroke:var(--border-color);stroke-width:1px}.chart-text{fill:var(--text-secondary);font-size:10px;font-family:var(--font-sans)}.chart-point{fill:var(--bg-secondary);stroke:var(--accent-color);stroke-width:2.5px;cursor:pointer;transition:r var(--transition-fast),fill var(--transition-fast)}.chart-point:hover{r:7;fill:var(--accent-color)}.chart-tooltip{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-sm);pointer-events:none;box-shadow:var(--shadow-lg);z-index:10;background-color:#171420f2;flex-direction:column;gap:.25rem;padding:.6rem .85rem;font-size:.775rem;display:flex;position:absolute}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.94)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.nav-menu{align-items:center;gap:.9rem;display:flex}.nav-link{color:var(--text-secondary);font-family:var(--font-display);letter-spacing:.01em;transition:all var(--transition-fast);cursor:pointer;white-space:nowrap;border-bottom:2px solid #0000;padding:.35rem 0;font-size:.85rem;font-weight:600}.nav-link:hover{color:var(--text-primary)}.nav-link.router-link-active{color:var(--accent-light);border-bottom-color:var(--accent-color);filter:drop-shadow(0 2px 8px #e11d4866);font-weight:700}@media (width<=850px){.app-header{padding:.75rem 1rem}.header-content{flex-direction:column;align-items:stretch;gap:.65rem}.app-title{font-size:1.35rem}.app-main{padding:1rem}.nav-menu{white-space:nowrap;border-top:1px solid var(--border-color);-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.4rem;width:100%;padding:.4rem 0 .1rem;overflow-x:auto}.nav-menu::-webkit-scrollbar{display:none}.nav-link{border-radius:var(--radius-sm);background-color:var(--bg-secondary);border:1px solid var(--border-color);flex-shrink:0;padding:.4rem .85rem;font-size:.825rem}.nav-link.router-link-active{background:var(--accent-gradient);color:#fff;border-color:#0000}.modal-content{max-width:95vw;padding:1.5rem}.card{padding:1.15rem}}@media (width<=550px){.app-title{font-size:1.2rem}.calendar-grid{gap:.2rem!important}.cal-day-cell{min-height:60px!important;padding:.25rem!important}.cal-day-num{font-size:.65rem!important}.cal-weight-pill{padding:.1rem .3rem!important;font-size:.6rem!important}.cal-photo-badge-overlay{padding:.08rem .25rem!important;font-size:.55rem!important}}.progress-gallery{grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:1.25rem;margin-top:1rem;display:grid}.progress-photo-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal);flex-direction:column;display:flex;overflow:hidden}.progress-photo-card:hover{border-color:var(--accent-color);box-shadow:var(--shadow-md),0 0 16px #e11d4833;transform:translateY(-3px)}.progress-photo-wrapper{cursor:pointer;background-color:#030206;width:100%;height:220px;position:relative;overflow:hidden}.progress-photo{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;transition:transform var(--transition-normal);background-color:#030206}.progress-photo-wrapper:hover .progress-photo{transform:scale(1.04)}.progress-photo-details{flex-direction:column;gap:.25rem;padding:.85rem;display:flex}.progress-photo-label{font-family:var(--font-display);text-transform:uppercase;color:var(--accent-light);letter-spacing:.04em;font-size:.7rem;font-weight:700}.progress-photo-weight{font-family:var(--font-display);color:var(--text-primary);font-size:1.15rem;font-weight:800}.progress-photo-diff{font-size:.8rem;font-weight:600}.progress-photo-diff.loss{color:var(--success-color)}.progress-photo-diff.gain{color:var(--danger-color)}.progress-photo-date{color:var(--text-muted);font-size:.725rem}.file-upload-input{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.table-image{-o-object-fit:cover;object-fit:cover;border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border-color);vertical-align:middle;min-width:34px;max-width:34px;min-height:34px;max-height:34px;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);display:inline-block;width:34px!important;height:34px!important}.table-image:hover{border-color:var(--accent-color);box-shadow:0 0 10px var(--accent-glow);transform:scale(1.2)}.motivation-slideshow-card{text-align:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);min-height:250px;padding:2.2rem;position:relative;overflow:hidden}.motivation-slideshow-card,.motivation-slideshow-wrapper{flex-direction:column;justify-content:center;align-items:center;display:flex}.motivation-slideshow-wrapper{width:100%;height:100%}.motivation-slide{flex-direction:column;align-items:center;gap:1.15rem;width:100%;animation:.5s ease-in-out fadeIn;display:flex}.motivation-slide-image{border-radius:var(--radius-md);-o-object-fit:cover;object-fit:cover;max-width:190px;max-height:190px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.motivation-slide-phrase{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.01em;max-width:82%;font-size:1.3rem;font-style:italic;font-weight:600;line-height:1.45}.motivation-slideshow-dots{gap:.5rem;display:flex;position:absolute;bottom:1rem}.motivation-dot{background-color:var(--border-color);cursor:pointer;width:9px;height:9px;transition:all var(--transition-fast);border-radius:50%}.motivation-dot.active{background-color:var(--accent-color);box-shadow:0 0 8px var(--accent-glow);transform:scale(1.2)}[data-sonner-toaster]{z-index:999999!important;font-family:var(--font-sans)!important;pointer-events:none!important;flex-direction:column!important;gap:10px!important;width:auto!important;max-width:420px!important;display:flex!important;position:fixed!important;inset:24px 24px auto auto!important}[data-sonner-toast]{pointer-events:auto!important;-webkit-backdrop-filter:blur(18px)!important;border:1px solid #ffffff1a!important;border-left:4px solid var(--accent-color)!important;color:#f8fafc!important;background:#120f1aeb!important;border-radius:14px!important;flex-direction:row!important;align-items:center!important;gap:.85rem!important;width:100%!important;min-width:300px!important;padding:.95rem 2.25rem .95rem 1.25rem!important;animation:.3s cubic-bezier(.16,1,.3,1) toastSlideIn!important;display:flex!important;position:relative!important;box-shadow:0 18px 40px #000c,0 0 25px #e11d4826!important}[data-sonner-toast][data-type=success]{border-left-color:#10b981!important;box-shadow:0 18px 40px #000c,0 0 25px #10b98133!important}[data-sonner-toast]:has([data-icon*=check]){border-left-color:#10b981!important;box-shadow:0 18px 40px #000c,0 0 25px #10b98133!important}[data-sonner-toast][data-type=error]{border-left-color:#ef4444!important;box-shadow:0 18px 40px #000c,0 0 25px #ef444433!important}[data-sonner-toast][data-type=info]{border-left-color:#38bdf8!important;box-shadow:0 18px 40px #000c,0 0 25px #38bdf833!important}[data-sonner-toast] [data-icon]{flex-shrink:0!important;align-items:center!important;font-size:1.1rem!important}[data-sonner-toast] [data-content],[data-sonner-toast] [data-icon]{justify-content:center!important;margin:0!important;display:flex!important}[data-sonner-toast] [data-content]{flex-direction:column!important;flex:1!important}[data-sonner-toast] [data-title]{font-family:var(--font-display)!important;color:#f8fafc!important;font-size:.925rem!important;font-weight:700!important;line-height:1.35!important}[data-sonner-toast] [data-description]{color:#94a3b8!important;margin-top:2px!important;font-size:.8rem!important}[data-sonner-toast] [data-close-button]{color:#94a3b8!important;cursor:pointer!important;background:#ffffff0f!important;border:1px solid #ffffff1f!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;width:22px!important;height:22px!important;font-size:12px!important;transition:all .2s!important;display:flex!important;position:absolute!important;top:50%!important;right:10px!important;transform:translateY(-50%)!important}[data-sonner-toast] [data-close-button]:hover{color:#fff!important;background:#ef44444d!important;border-color:#ef444480!important}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(-12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=640px){[data-sonner-toaster]{width:auto!important;max-width:none!important;top:16px!important;left:16px!important;right:16px!important}[data-sonner-toast]{width:100%!important;min-width:0!important}}[data-theme=light] body,[data-theme=light] html{background-image:radial-gradient(circle at 12% 8%,#e11d4814,#0000 35%),radial-gradient(circle at 88% 22%,#e11d480d,#0000 40%),radial-gradient(circle at 50% 85%,#9f12390f,#0000 45%)}[data-theme=light] ::-webkit-scrollbar-thumb{background:#140f1e2e}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#e11d4866}[data-theme=light] .app-header{background:#ffffffd1}[data-theme=light] .btn-secondary{background:#140f1e0a}[data-theme=light] .btn-secondary:hover:not(:disabled){color:var(--text-primary);background:#140f1e14}[data-theme=light] .btn-secondary-sm{background:#140f1e0a}[data-theme=light] .btn-secondary-sm:hover:not(:disabled){background:#140f1e14}[data-theme=light] .form-input:focus,[data-theme=light] .select-input:focus{background-color:#fff}[data-theme=light] .modal-overlay{background-color:#1e192859}[data-theme=light] .modal-content{box-shadow:var(--shadow-lg),0 0 30px #140f1e1a}[data-theme=light] .data-table th{background-color:#140f1e0a}[data-theme=light] .data-table tr{border-bottom-color:#140f1e0f}[data-theme=light] .data-table tr:hover{background-color:#140f1e08}[data-theme=light] [data-sonner-toast]{color:#1a1523!important;background:#fffffff5!important;border:1px solid #140f1e14!important;box-shadow:0 18px 40px #140f1e2e,0 0 25px #e11d481a!important}[data-theme=light] [data-sonner-toast] [data-title]{color:#1a1523!important}[data-theme=light] [data-sonner-toast] [data-description]{color:#5c566a!important}[data-theme=light] [data-sonner-toast] [data-close-button]{color:#5c566a!important;background:#140f1e0f!important;border:1px solid #140f1e1f!important}[data-theme=light] [data-sonner-toast] [data-close-button]:hover{color:#fff!important;background:#dc262626!important;border-color:#dc262666!important}.app-version-badge[data-v-9ffc02d4]{font-family:var(--font-display);color:var(--text-muted);-webkit-text-fill-color:var(--text-muted);border:1px solid var(--border-color);border-radius:var(--radius-full);white-space:nowrap;background:#ffffff0f;align-self:flex-end;margin-bottom:.2rem;padding:.1rem .45rem;font-size:.65rem;font-weight:700}[data-theme=light] .app-version-badge[data-v-9ffc02d4]{background:#140f1e0d}.header-main-row[data-v-9ffc02d4]{justify-content:space-between;align-items:center;gap:1.25rem;width:100%;display:flex}.user-controls-group[data-v-9ffc02d4]{flex-shrink:0;align-items:center;gap:.55rem;display:flex}.apk-download-btn[data-v-9ffc02d4]{color:#4ade80;font-family:var(--font-display);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:#22c55e1f;border:1px solid #22c55e4d;flex-shrink:0;justify-content:center;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.apk-download-btn[data-v-9ffc02d4]:hover{color:#fff;background:#22c55e38;border-color:#22c55e;box-shadow:0 0 12px #22c55e59}.apk-mobile-link[data-v-9ffc02d4]{color:#4ade80!important;background:#22c55e14!important;border-color:#22c55e40!important}.apk-mobile-link[data-v-9ffc02d4]:hover{color:#fff!important;background:#22c55e2e!important;border-color:#22c55e!important}.user-display-name[data-v-9ffc02d4]{font-family:var(--font-display);color:var(--text-light);white-space:nowrap;text-overflow:ellipsis;vertical-align:middle;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:#ffffff0d;max-width:140px;padding:.35rem .75rem;font-size:.85rem;font-weight:600;display:inline-block;overflow:hidden}.nav-dropdown[data-v-9ffc02d4]{position:relative}.nav-dropdown-trigger[data-v-9ffc02d4]{cursor:pointer;background:0 0;border:none;align-items:center;gap:.3rem;display:inline-flex}.dropdown-caret[data-v-9ffc02d4]{transition:transform var(--transition-fast);font-size:.7em}.nav-dropdown.open .dropdown-caret[data-v-9ffc02d4]{transform:rotate(180deg)}.nav-dropdown-menu[data-v-9ffc02d4]{-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-accent);border-radius:var(--radius-md);min-width:170px;box-shadow:var(--shadow-lg),0 0 30px #0009;z-index:60;background:#110e18f7;flex-direction:column;gap:.15rem;padding:.4rem;display:flex;position:absolute;top:calc(100% + .65rem);left:0}.nav-dropdown-menu-right[data-v-9ffc02d4]{left:auto;right:0}.nav-dropdown-item[data-v-9ffc02d4]{border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-display);white-space:nowrap;text-align:left;cursor:pointer;width:100%;transition:all var(--transition-fast);background:0 0;border:none;padding:.55rem .75rem;font-size:.85rem;font-weight:600;display:block}.nav-dropdown-item.router-link-active[data-v-9ffc02d4],.nav-dropdown-item[data-v-9ffc02d4]:hover{background:var(--accent-gradient-subtle);color:var(--text-primary)}.nav-dropdown-item-danger[data-v-9ffc02d4]{color:#f87171}.nav-dropdown-item-danger[data-v-9ffc02d4]:hover{color:#f87171;background:#ef44441f}[data-theme=light] .nav-dropdown-menu[data-v-9ffc02d4]{background:#fffffff7}.user-dropdown-trigger[data-v-9ffc02d4]{cursor:pointer;align-items:center;gap:.4rem;display:inline-flex}.mobile-nav-section-label[data-v-9ffc02d4]{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding:.5rem .25rem .1rem;font-size:.7rem;font-weight:700}.mobile-nav-section-label[data-v-9ffc02d4]:first-child{padding-top:0}.lang-switcher[data-v-9ffc02d4]{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-md);background:#0a080fbf;flex-shrink:0;gap:2px;padding:3px;display:inline-flex}.lang-btn[data-v-9ffc02d4]{color:var(--text-secondary);font-family:var(--font-display);border-radius:var(--radius-xs);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;padding:.3rem .6rem;font-size:.75rem;font-weight:700}.lang-btn[data-v-9ffc02d4]:hover{color:var(--text-primary)}.lang-btn.active[data-v-9ffc02d4]{background:var(--accent-gradient);color:#fff;box-shadow:0 2px 8px #e11d4866}.theme-toggle-btn[data-v-9ffc02d4]{border:1px solid var(--border-color);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;width:34px;height:34px;transition:all var(--transition-fast);background:#ffffff0f;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.theme-toggle-btn[data-v-9ffc02d4]:hover{color:var(--text-primary);border-color:var(--border-hover);background:#ffffff1a}.mobile-hamburger-btn[data-v-9ffc02d4]{border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;width:38px;height:38px;transition:all var(--transition-fast);background:#ffffff0f;justify-content:center;align-items:center;font-size:1.15rem;display:flex}.mobile-hamburger-btn.active[data-v-9ffc02d4],.mobile-hamburger-btn[data-v-9ffc02d4]:hover{background-color:var(--accent-color);border-color:var(--accent-color);color:#fff;box-shadow:0 0 14px var(--accent-glow)}.mobile-dropdown-drawer[data-v-9ffc02d4]{-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-accent);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-lg),0 0 30px #000c;background:#110e18f2;flex-direction:column;gap:1rem;margin-top:.85rem;padding:1.15rem;display:flex}.mobile-lang-switcher[data-v-9ffc02d4]{justify-content:stretch;width:100%}.mobile-lang-switcher .lang-btn[data-v-9ffc02d4]{text-align:center;flex:1}.mobile-nav-links[data-v-9ffc02d4]{flex-direction:column;gap:.4rem;display:flex}.mobile-nav-link[data-v-9ffc02d4]{border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-display);transition:all var(--transition-fast);background-color:#ffffff08;border:1px solid #0000;align-items:center;gap:.6rem;padding:.75rem 1rem;font-size:.95rem;font-weight:600;display:flex}.mobile-nav-link.router-link-active[data-v-9ffc02d4],.mobile-nav-link[data-v-9ffc02d4]:hover{background:var(--accent-gradient-subtle);color:var(--text-primary);border-color:var(--accent-color);font-weight:700;box-shadow:0 2px 10px #e11d4826}.mobile-user-footer[data-v-9ffc02d4]{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:.75rem;padding-top:.85rem;display:flex}.mobile-user-name[data-v-9ffc02d4]{font-family:var(--font-display);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.desktop-only[data-v-9ffc02d4]{display:flex}.mobile-only[data-v-9ffc02d4]{display:none}@media (width<=768px){.desktop-only[data-v-9ffc02d4]{display:none!important}.mobile-only[data-v-9ffc02d4]{display:flex!important}}[data-theme=light] .user-display-name[data-v-9ffc02d4]{background:#140f1e0d}[data-theme=light] .lang-switcher[data-v-9ffc02d4],[data-theme=light] .theme-toggle-btn[data-v-9ffc02d4]{background:#140f1e0a}[data-theme=light] .theme-toggle-btn[data-v-9ffc02d4]:hover{background:#140f1e14}[data-theme=light] .mobile-hamburger-btn[data-v-9ffc02d4]{background:#140f1e0d}[data-theme=light] .mobile-dropdown-drawer[data-v-9ffc02d4]{background:#fffffff7}[data-theme=light] .mobile-nav-link[data-v-9ffc02d4]{background-color:#140f1e08}.loading-overlay-container[data-v-2d51c5b6]{z-index:10000;-webkit-backdrop-filter:blur(18px);background-color:#06040ad1;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}[data-theme=light] .loading-overlay-container[data-v-2d51c5b6]{background-color:#1e192859}.loading-overlay-card[data-v-2d51c5b6]{background:var(--bg-secondary);border:1px solid var(--border-accent);border-radius:var(--radius-xl);text-align:center;flex-direction:column;align-items:center;min-width:270px;padding:2.5rem 3rem;display:flex;box-shadow:0 24px 48px #000c,0 0 35px #e11d4840}.dots-wrapper[data-v-2d51c5b6]{justify-content:center;align-items:center;gap:.6rem;height:58px;margin-bottom:1.4rem;display:flex}.loading-dot[data-v-2d51c5b6]{background:var(--accent-gradient,var(--accent-color));border-radius:50%;flex-shrink:0;width:14px;height:14px;box-shadow:0 0 12px #e11d488c}.loading-message[data-v-2d51c5b6]{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:700}.loading-fade-enter-active[data-v-2d51c5b6],.loading-fade-leave-active[data-v-2d51c5b6]{transition:opacity .25s}.loading-fade-enter-from[data-v-2d51c5b6],.loading-fade-leave-to[data-v-2d51c5b6]{opacity:0}.update-banner[data-v-bcaa21f0]{background:var(--accent-gradient);color:#fff;box-shadow:var(--shadow-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 1.25rem;display:flex}.update-banner-text[data-v-bcaa21f0]{flex-wrap:wrap;align-items:baseline;gap:.5rem;font-size:.85rem;display:flex}.update-banner-text strong[data-v-bcaa21f0]{font-family:var(--font-display);font-weight:800}.update-banner-actions[data-v-bcaa21f0]{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.update-banner-btn[data-v-bcaa21f0]{color:#fff;font-family:var(--font-display);border-radius:var(--radius-full);white-space:nowrap;transition:all var(--transition-fast);background:#ffffff2e;border:1px solid #fff6;padding:.4rem .9rem;font-size:.8rem;font-weight:700;text-decoration:none}.update-banner-btn[data-v-bcaa21f0]:hover{background:#ffffff4d}.update-banner-dismiss[data-v-bcaa21f0]{color:#fff;opacity:.8;cursor:pointer;background:0 0;border:none;padding:.2rem .4rem;font-size:1.2rem;line-height:1}.update-banner-dismiss[data-v-bcaa21f0]:hover{opacity:1}.update-banner-fade-enter-active[data-v-bcaa21f0],.update-banner-fade-leave-active[data-v-bcaa21f0]{transition:all .25s}.update-banner-fade-enter-from[data-v-bcaa21f0],.update-banner-fade-leave-to[data-v-bcaa21f0]{opacity:0;transform:translateY(-100%)}
