@import "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,300;0,14..32,400;0,14..32,500;0,14..32,600;0,14..32,700;1,14..32,400&family=Outfit:wght@600;700;800;900&display=swap";:root{--blue:#2563eb;--blue-hover:#1d4ed8;--blue-light:#eff6ff;--blue-ring:#2563eb24;--sidebar-bg:#0c1425;--sidebar-w:248px;--bg:#f1f5f9;--card:#fff;--border:#e2e8f0;--border-2:#cbd5e1;--t1:#0f172a;--t2:#475569;--t3:#94a3b8;--green:#16a34a;--green-bg:#f0fdf4;--green-border:#bbf7d0;--yellow:#ca8a04;--yellow-bg:#fefce8;--yellow-border:#fde68a;--red:#dc2626;--red-bg:#fef2f2;--red-border:#fecaca;--r:10px;--r-md:14px;--r-lg:18px;--r-xl:24px;--s1:0 1px 2px #0000000a;--s2:0 1px 3px #0000000f, 0 8px 20px #0000000d;--s3:0 4px 8px #0000000f, 0 16px 40px #00000014}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--t1);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5}h1,h2,h3,h4,h5,.brand-font{letter-spacing:-.025em;font-family:Outfit,sans-serif}.db-layout{min-height:100vh;display:flex}.db-sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);background:var(--sidebar-bg);z-index:50;flex-direction:column;height:100vh;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.db-content,.db-main{margin-left:var(--sidebar-w);flex:1;min-height:100vh;padding:2.5rem 3rem;overflow-y:auto}.db-logo{cursor:default;border-bottom:1px solid #ffffff0f;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:1.5rem 1.5rem 1.25rem;display:flex}.logo-icon{background:var(--blue);color:#fff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex;box-shadow:0 4px 10px #2563eb66}.db-logo span{color:#fff;letter-spacing:-.02em;font-family:Outfit,sans-serif;font-size:1.125rem;font-weight:700}.nav-section{flex-direction:column;flex:1;gap:2px;padding:.5rem .75rem;display:flex}.nav-label{text-transform:uppercase;letter-spacing:.1em;color:#ffffff40;padding:.75rem .75rem .375rem;font-size:.6563rem;font-weight:700}.nav-item{color:#ffffff73;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:9px;align-items:center;gap:.75rem;padding:.6rem .875rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.nav-item:hover{color:#ffffffd9;background:#ffffff12}.nav-item.active{color:#93c5fd;background:#2563eb38;border-color:#93c5fd1f;font-weight:600}.nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.sidebar-footer{border-top:1px solid #ffffff0f;padding:.75rem}.sidebar-user{cursor:default;border-radius:9px;align-items:center;gap:.75rem;padding:.625rem .75rem;transition:background .15s;display:flex}.sidebar-user:hover{background:#ffffff0a}.user-avatar{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8125rem;font-weight:700;display:flex}.user-info{flex:1;min-width:0}.user-info h4{color:#ffffffe0;white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:600;overflow:hidden}.user-info p{color:#ffffff59;font-size:.6875rem}.btn-logout{color:#ffffff4d;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;transition:color .15s;display:flex}.btn-logout:hover{color:#ffffffa6}.db-header-section{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.db-title{color:var(--t1);font-size:1.75rem;font-weight:800;line-height:1.2}.db-subtitle{color:var(--t2);margin-top:.25rem;font-size:.9375rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--s1);align-items:center;gap:1rem;padding:1.25rem 1.375rem;transition:box-shadow .2s;display:flex}.stat-card:hover{box-shadow:var(--s2)}.stat-icon-wrapper{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.stat-icon-wrapper.blue{background:var(--blue-light);color:var(--blue)}.stat-icon-wrapper.green{background:var(--green-bg);color:var(--green)}.stat-icon-wrapper.yellow{background:var(--yellow-bg);color:var(--yellow)}.stat-icon-wrapper.red{background:var(--red-bg);color:var(--red)}.stat-info{flex-direction:column;gap:3px;min-width:0;display:flex}.stat-label{color:var(--t3);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;font-size:.6875rem;font-weight:600;display:block}.stat-value{color:var(--t1);letter-spacing:-.02em;font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:800;line-height:1.1;display:block}.stat-info h3{color:var(--t1);font-family:Outfit,sans-serif;font-size:1.375rem;font-weight:800}.stat-info p{color:var(--t3);text-transform:uppercase;letter-spacing:.06em;font-size:.6875rem;font-weight:600}.search-container{position:relative}.search-icon{color:var(--t3);pointer-events:none;position:absolute;top:50%;left:.875rem;transform:translateY(-50%)}.search-input{border-radius:var(--r);border:1px solid var(--border);background:var(--card);width:100%;color:var(--t1);box-shadow:var(--s1);padding:.6875rem 1rem .6875rem 2.625rem;font-family:inherit;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.search-input::placeholder{color:var(--t3)}.search-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring);outline:none}.btn-primary,.btn-auth-primary{background:var(--blue);color:#fff;border-radius:var(--r);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.6875rem 1.25rem;font-family:inherit;font-size:.9375rem;font-weight:600;line-height:1;text-decoration:none;transition:background .15s,transform .1s,box-shadow .15s;display:inline-flex}.btn-primary:hover,.btn-auth-primary:hover{background:var(--blue-hover);transform:translateY(-1px);box-shadow:0 6px 16px #2563eb47}.btn-primary:active,.btn-auth-primary:active{box-shadow:none;transform:none}.btn-primary:disabled,.btn-auth-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary,.btn-auth-secondary{color:var(--t1);border:1px solid var(--border);border-radius:var(--r);cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:.5rem;padding:.6875rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.btn-secondary:hover,.btn-auth-secondary:hover{border-color:var(--border-2);background:#f8fafc}.btn-secondary:disabled,.btn-auth-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-facebook-connect{color:#fff;border-radius:var(--r-md);cursor:pointer;background:#1877f2;border:none;justify-content:center;align-items:center;gap:.75rem;width:100%;padding:.875rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:700;transition:background .15s,transform .1s,box-shadow .15s;display:flex}.btn-facebook-connect:hover{background:#1564d0;transform:translateY(-1px);box-shadow:0 8px 20px #1877f247}.btn-facebook-connect:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.fb-icon-white{fill:#fff;flex-shrink:0;width:20px;height:20px}.badge-success,.badge-active{background:var(--green-bg);color:#15803d;border:1px solid var(--green-border);border-radius:9999px;align-items:center;gap:4px;padding:2px 8px;font-size:.6875rem;font-weight:600;display:inline-flex}.dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:5px;height:5px}.dot.pulse{animation:2s ease-in-out infinite dot-pulse}@keyframes dot-pulse{0%,to{opacity:1}50%{opacity:.35}}.error-msg{background:var(--red-bg);border:1px solid var(--red-border);color:#b91c1c;border-radius:var(--r);word-break:break-word;align-items:flex-start;gap:.625rem;margin-bottom:1.25rem;padding:.8125rem 1rem;font-size:.875rem;font-weight:500;display:flex}.auth-page{height:100vh;display:flex;overflow:hidden}.auth-visual{background:var(--sidebar-bg);flex:1.1;justify-content:center;align-items:center;padding:3rem;display:flex;position:relative;overflow:hidden}.auth-visual:before{content:"";background:radial-gradient(65% 55% at 28%,#2563eb47 0%,#0000 70%),radial-gradient(45% 65% at 72% 22%,#6366f129 0%,#0000 60%);position:absolute;inset:0}.auth-visual img{object-fit:cover;z-index:1;width:100%;height:100%;position:relative}.auth-visual-content{z-index:1;max-width:400px;position:relative}.auth-visual-icon{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:18px;justify-content:center;align-items:center;width:68px;height:68px;margin:0 0 2rem;display:flex;box-shadow:0 12px 28px #2563eb6b}.auth-visual h2{color:#fff;margin-bottom:.875rem;font-size:1.875rem;font-weight:800;line-height:1.2}.auth-visual p{color:#ffffff85;font-size:.9375rem;line-height:1.7}.auth-visual-features{flex-direction:column;gap:.75rem;margin-top:2.25rem;display:flex}.auth-feature-item{color:#ffffffa6;align-items:center;gap:.75rem;font-size:.875rem;display:flex}.auth-feature-item .check-icon{color:#60a5fa;background:#2563eb47;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.auth-form-side{background:#fff;justify-content:center;align-items:center;width:460px;min-width:460px;padding:3rem;display:flex;overflow-y:auto}.auth-content-box{width:100%;max-width:360px}.auth-brand{align-items:center;gap:.625rem;margin-bottom:2.5rem;display:flex}.auth-brand span{color:var(--t1);letter-spacing:-.02em;font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:700}.auth-header-text{margin-bottom:2rem}.auth-header-text h1{color:var(--t1);margin-bottom:.375rem;font-size:1.875rem;font-weight:800}.auth-header-text p{color:var(--t2);font-size:.9375rem;line-height:1.6}.form-group{margin-bottom:1.125rem}.form-label{color:var(--t1);margin-bottom:.4375rem;font-size:.8125rem;font-weight:600;display:block}.form-input{border:1px solid var(--border);border-radius:var(--r);width:100%;color:var(--t1);background:#fdfdfd;padding:.6875rem .875rem;font-family:inherit;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.form-input::placeholder{color:var(--t3)}.form-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring);background:#fff;outline:none}.divider{color:var(--t3);align-items:center;gap:.75rem;margin:1.5rem 0;font-size:.8125rem;display:flex}.divider:before,.divider:after{content:"";background:var(--border);flex:1;height:1px}.btn-social{border:1px solid var(--border);border-radius:var(--r);width:100%;color:var(--t1);cursor:pointer;background:#fff;padding:.6875rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .15s}.btn-social:hover{border-color:var(--border-2);background:#f8fafc}.auth-footer-text{text-align:center;color:var(--t2);margin-top:1.5rem;font-size:.875rem}.auth-footer-text button{color:var(--blue);cursor:pointer;background:0 0;border:none;margin-left:.25rem;font-family:inherit;font-size:.875rem;font-weight:600}.auth-footer-text button:hover{color:var(--blue-hover)}.toast{z-index:9999;border-radius:var(--r-md);box-shadow:var(--s3);align-items:center;gap:.5rem;padding:.875rem 1.25rem;font-size:.875rem;font-weight:600;animation:.25s cubic-bezier(.34,1.56,.64,1) toast-in;display:flex;position:fixed;bottom:2rem;right:2rem}.toast-success{background:var(--green-bg);border:1px solid var(--green-border);color:#15803d}.toast-error{background:var(--red-bg);border:1px solid var(--red-border);color:#b91c1c}@keyframes toast-in{0%{opacity:0;transform:translate(16px)scale(.96)}to{opacity:1;transform:none}}.connect-container{flex-direction:column;gap:1.5rem;display:flex}.connect-title{color:var(--t1);font-size:1.25rem;font-weight:800}.connect-desc{color:var(--t2);font-size:.9375rem;line-height:1.6}.connect-desc-section{margin-bottom:1.5rem}.connect-footer-note{text-align:center;color:var(--t3);margin-top:1rem;font-size:.8125rem}.fade-in{animation:.28s ease-out fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.animate-spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (width<=1024px){.auth-visual{display:none}.auth-form-side{width:100%;min-width:0}}
