@import"https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600&family=Geist+Mono:wght@400;500&display=swap";.login-page{--bg: #ffffff;--bg-2: #f8f8f8;--bg-3: #f1f1f1;--bg-hover: #f4f4f4;--border: #e5e5e5;--border-2: #d4d4d4;--text-1: #0a0a0a;--text-2: #525252;--text-3: #a3a3a3;--accent: #18181b;--accent-text: #ffffff;--accent-hover: #27272a;--green: #22c55e;--red: #ef4444;--red-text: #b91c1c;--shadow: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--radius: 8px;--radius-lg: 12px;--transition: .15s cubic-bezier(.4,0,.2,1);font-family:Geist,-apple-system,sans-serif;background:var(--bg-2);color:var(--text-1);min-height:100vh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased}.login-page[data-theme=dark]{--bg: #09090b;--bg-2: #111113;--bg-3: #18181b;--bg-hover: #1e1e21;--border: #27272a;--border-2: #3f3f46;--text-1: #fafafa;--text-2: #a1a1aa;--text-3: #52525b;--accent: #fafafa;--accent-text: #09090b;--accent-hover: #e4e4e7}.login-page *{box-sizing:border-box}.login-page .layout{flex:1;display:grid;grid-template-columns:1fr 480px;min-height:100vh}.login-page .left{background:var(--accent);display:flex;flex-direction:column;padding:36px 48px;position:relative;overflow:hidden}.login-page .left-noise,.login-page .left-grid{position:absolute;inset:0;pointer-events:none}.login-page .left-noise{background-image:radial-gradient(ellipse at 20% 50%,rgba(255,255,255,.04) 0%,transparent 60%),radial-gradient(ellipse at 80% 20%,rgba(255,255,255,.03) 0%,transparent 50%)}.login-page .left-grid{background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:48px 48px}.login-page .left-logo{display:flex;align-items:center;gap:10px;position:relative;z-index:1}.login-page .logo-mark{width:30px;height:30px;background:#ffffff1a;border:1px solid rgba(255,255,255,.12);border-radius:7px;display:grid;place-items:center}.login-page .logo-mark svg{color:#ffffffe6}.login-page .logo-name{font-size:14px;font-weight:600;color:#ffffffe6}.login-page .left-body{flex:1;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1;gap:48px}.login-page .left-headline{display:flex;flex-direction:column;gap:12px}.login-page .left-tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;color:#ffffff80;letter-spacing:.08em;text-transform:uppercase}.login-page .tag-dot{width:5px;height:5px;border-radius:50%;background:var(--green)}.login-page .left-title{font-size:34px;font-weight:600;color:#fff;line-height:1.2;letter-spacing:-.8px}.login-page .left-sub{font-size:14px;color:#ffffff73;line-height:1.6;max-width:340px}.login-page .feature-list{display:flex;flex-direction:column;gap:14px}.login-page .feature-item{display:flex;align-items:flex-start;gap:12px;animation:loginFadeUp .5s ease both}.login-page .feature-item:nth-child(1){animation-delay:.1s}.login-page .feature-item:nth-child(2){animation-delay:.2s}.login-page .feature-item:nth-child(3){animation-delay:.3s}.login-page .feature-icon{width:32px;height:32px;border-radius:8px;background:#ffffff12;border:1px solid rgba(255,255,255,.08);display:grid;place-items:center;flex-shrink:0;margin-top:1px}.login-page .feature-icon svg{color:#ffffffb3}.login-page .feature-name{font-size:13px;font-weight:500;color:#ffffffd9}.login-page .feature-desc{font-size:12px;color:#ffffff59;margin-top:2px;line-height:1.5}.login-page .left-footer{position:relative;z-index:1}.login-page .left-footer-text{font-size:11px;color:#ffffff40}.login-page .right{background:var(--bg);border-left:1px solid var(--border);display:flex;flex-direction:column}.login-page .right-top{display:flex;align-items:center;justify-content:flex-end;padding:20px 36px;border-bottom:1px solid var(--border)}.login-page .theme-btn{width:30px;height:30px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text-2);cursor:pointer;display:grid;place-items:center;transition:all var(--transition)}.login-page .theme-btn:hover{background:var(--bg-hover);color:var(--text-1)}.login-page .right-body{flex:1;display:flex;flex-direction:column;justify-content:center;padding:48px 52px;gap:32px;animation:loginFadeUp .45s ease both}.login-page .form-header{display:flex;flex-direction:column;gap:6px}.login-page .form-title{font-size:22px;font-weight:600;color:var(--text-1);letter-spacing:-.4px}.login-page .form-subtitle{font-size:13.5px;color:var(--text-3);line-height:1.5}.login-page .form{display:flex;flex-direction:column;gap:14px}.login-page .field{display:flex;flex-direction:column;gap:6px}.login-page label{font-size:12.5px;font-weight:500;color:var(--text-2)}.login-page .input-wrap{position:relative;display:flex;align-items:center}.login-page .input-icon{position:absolute;left:11px;color:var(--text-3);pointer-events:none;display:flex;align-items:center}.login-page input[type=password],.login-page input[type=text]{width:100%;height:40px;padding:0 40px 0 36px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text-1);font-size:13.5px;font-family:Geist,sans-serif;outline:none;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}.login-page input::placeholder{color:var(--text-3)}.login-page input:hover{border-color:var(--border-2)}.login-page input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #18181b14}.login-page[data-theme=dark] input:focus{box-shadow:0 0 0 3px #fafafa14}.login-page input.error{border-color:var(--red)!important}.login-page .eye-btn{position:absolute;right:10px;background:none;border:none;cursor:pointer;color:var(--text-3);display:flex;align-items:center;padding:4px;border-radius:4px;transition:color var(--transition),background var(--transition)}.login-page .eye-btn:hover{color:var(--text-2);background:var(--bg-3)}.login-page .field-error{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--red-text)}.login-page .submit-btn{height:42px;border-radius:var(--radius);border:none;background:var(--accent);color:var(--accent-text);font-size:13.5px;font-weight:600;font-family:Geist,sans-serif;cursor:pointer;transition:all var(--transition);display:flex;align-items:center;justify-content:center;gap:8px;letter-spacing:-.1px}.login-page .submit-btn:hover{background:var(--accent-hover)}.login-page .submit-btn:active{transform:scale(.99)}.login-page .submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.login-page .spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--accent-text);border-radius:50%;animation:loginSpin .6s linear infinite}.login-page[data-theme=dark] .spinner{border:2px solid rgba(0,0,0,.2);border-top-color:var(--accent-text)}.login-page .right-footer{padding:16px 36px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:center;gap:16px}.login-page .footer-link{font-size:11.5px;color:var(--text-3);text-decoration:none}.login-page .footer-sep{width:3px;height:3px;border-radius:50%;background:var(--border-2)}@keyframes loginFadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes loginSpin{to{transform:rotate(360deg)}}@media(max-width:860px){.login-page .layout{grid-template-columns:1fr}.login-page .left{display:none}.login-page .right{border-left:none}}.admin-panel{--bg: #ffffff;--bg-2: #f8f8f8;--bg-3: #f1f1f1;--bg-hover: #f4f4f4;--border: #e5e5e5;--border-2: #d4d4d4;--text-1: #0a0a0a;--text-2: #525252;--text-3: #a3a3a3;--accent: #18181b;--accent-text: #ffffff;--accent-light: #f4f4f5;--blue: #3b82f6;--blue-light: #eff6ff;--blue-text: #1d4ed8;--green: #22c55e;--green-light: #f0fdf4;--green-text: #15803d;--amber: #f59e0b;--amber-light: #fffbeb;--amber-text: #b45309;--red: #ef4444;--red-light: #fef2f2;--red-text: #b91c1c;--sidebar-w: 240px;--header-h: 56px;--radius: 8px;--radius-lg: 12px;--shadow: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--transition: .15s cubic-bezier(.4,0,.2,1);font-family:Geist,-apple-system,sans-serif;background:var(--bg-2);color:var(--text-1);display:flex;height:100vh;overflow:hidden;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}.admin-panel[data-theme=dark]{--bg: #09090b;--bg-2: #111113;--bg-3: #18181b;--bg-hover: #1e1e21;--border: #27272a;--border-2: #3f3f46;--text-1: #fafafa;--text-2: #a1a1aa;--text-3: #52525b;--accent: #fafafa;--accent-text: #09090b;--accent-light: #27272a;--blue: #60a5fa;--blue-light: #1e3a5f;--blue-text: #93c5fd;--green: #4ade80;--green-light: #14532d;--green-text: #86efac;--amber: #fbbf24;--amber-light: #451a03;--amber-text: #fcd34d;--red: #f87171;--red-light: #450a0a;--red-text: #fca5a5;--shadow: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 12px rgba(0,0,0,.4)}.admin-panel *{box-sizing:border-box}.admin-panel .sidebar{width:var(--sidebar-w);background:var(--bg);border-right:1px solid var(--border);display:flex;flex-direction:column;height:100vh;flex-shrink:0;transition:transform var(--transition);z-index:50}.admin-panel .sidebar-logo{height:var(--header-h);display:flex;align-items:center;padding:0 16px;border-bottom:1px solid var(--border);gap:10px;flex-shrink:0}.admin-panel .logo-mark{width:28px;height:28px;background:var(--accent);border-radius:6px;display:grid;place-items:center;flex-shrink:0}.admin-panel .logo-mark svg{color:var(--accent-text)}.admin-panel .logo-name{font-size:14px;font-weight:600;color:var(--text-1);letter-spacing:-.3px}.admin-panel .logo-badge{margin-left:auto;font-size:10px;font-weight:500;padding:2px 6px;border-radius:20px;background:var(--accent-light);color:var(--text-2);font-family:Geist Mono,monospace}.admin-panel .sidebar-section{padding:8px;flex:1;overflow-y:auto}.admin-panel .sidebar-section::-webkit-scrollbar{width:0}.admin-panel .sidebar-label{font-size:11px;font-weight:500;color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;padding:8px 8px 4px;margin-top:4px}.admin-panel .nav-item{display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:var(--radius);color:var(--text-2);font-size:13.5px;font-weight:400;cursor:pointer;transition:all var(--transition);-webkit-user-select:none;user-select:none;position:relative;background:none;border:none;width:100%;text-align:left;font-family:inherit}.admin-panel .nav-item:hover{background:var(--bg-hover);color:var(--text-1)}.admin-panel .nav-item.active{background:var(--accent-light);color:var(--text-1);font-weight:500}.admin-panel .nav-item svg{flex-shrink:0;opacity:.7}.admin-panel .nav-item.active svg{opacity:1}.admin-panel .nav-badge{margin-left:auto;font-size:11px;font-weight:500;padding:1px 7px;border-radius:20px;background:var(--accent);color:var(--accent-text);font-family:Geist Mono,monospace}.admin-panel .sidebar-footer{border-top:1px solid var(--border);padding:10px 8px;flex-shrink:0}.admin-panel .user-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius);cursor:pointer;transition:background var(--transition)}.admin-panel .user-row:hover{background:var(--bg-hover)}.admin-panel .avatar{width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--accent-text);font-size:11px;font-weight:600;display:grid;place-items:center;flex-shrink:0}.admin-panel .user-info{flex:1;min-width:0}.admin-panel .user-name{font-size:13px;font-weight:500;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-panel .user-email{font-size:11px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-panel .main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.admin-panel .header{height:var(--header-h);background:var(--bg);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 20px;gap:12px;flex-shrink:0}.admin-panel .page-title{font-size:14px;font-weight:600;color:var(--text-1)}.admin-panel .header-search{flex:1;max-width:280px;position:relative;margin-left:12px}.admin-panel .header-search input{width:100%;height:32px;padding:0 10px 0 32px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-2);color:var(--text-1);font-size:13px;font-family:inherit;outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.admin-panel .header-search input:focus{border-color:var(--border-2);box-shadow:0 0 0 3px #0000000f}.admin-panel .header-search input::placeholder{color:var(--text-3)}.admin-panel .search-icon{position:absolute;left:9px;top:50%;transform:translateY(-50%);color:var(--text-3);pointer-events:none}.admin-panel .header-actions{margin-left:auto;display:flex;align-items:center;gap:6px}.admin-panel .icon-btn{width:32px;height:32px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text-2);cursor:pointer;display:grid;place-items:center;transition:all var(--transition);position:relative}.admin-panel .icon-btn:hover{background:var(--bg-hover);color:var(--text-1);border-color:var(--border-2)}.admin-panel .notif-dot{position:absolute;top:6px;right:6px;width:5px;height:5px;border-radius:50%;background:var(--red);border:1.5px solid var(--bg)}.admin-panel .content{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:20px}.admin-panel .content::-webkit-scrollbar{width:5px}.admin-panel .content::-webkit-scrollbar-track{background:transparent}.admin-panel .content::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:10px}.admin-panel .section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:-4px}.admin-panel .section-title{font-size:13px;font-weight:600;color:var(--text-1)}.admin-panel .section-action{font-size:12px;color:var(--text-3);cursor:pointer;padding:4px 8px;border-radius:6px;transition:all var(--transition);border:none;background:none;font-family:inherit}.admin-panel .section-action:hover{background:var(--bg-3);color:var(--text-2)}.admin-panel .kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.admin-panel .kpi-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px 18px;display:flex;flex-direction:column;gap:12px;transition:box-shadow var(--transition),border-color var(--transition);cursor:default}.admin-panel .kpi-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-2)}.admin-panel .kpi-top{display:flex;align-items:center;justify-content:space-between}.admin-panel .kpi-label{font-size:12px;font-weight:500;color:var(--text-2)}.admin-panel .kpi-icon{width:28px;height:28px;border-radius:7px;display:grid;place-items:center}.admin-panel .kpi-value{font-size:22px;font-weight:600;color:var(--text-1);letter-spacing:-.5px;line-height:1}.admin-panel .kpi-footer{display:flex;align-items:center;gap:6px}.admin-panel .kpi-trend{display:flex;align-items:center;gap:3px;font-size:12px;font-weight:500}.admin-panel .kpi-trend.up{color:var(--green-text)}.admin-panel .kpi-trend.down{color:var(--red-text)}.admin-panel .kpi-period{font-size:12px;color:var(--text-3)}.admin-panel .sparkline{width:60px;height:28px;margin-left:auto}.admin-panel .charts-row{display:grid;grid-template-columns:1fr 320px;gap:12px}.admin-panel .card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow var(--transition)}.admin-panel .card:hover{box-shadow:var(--shadow-md)}.admin-panel .card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 12px;border-bottom:1px solid var(--border)}.admin-panel .card-title{font-size:13px;font-weight:600;color:var(--text-1)}.admin-panel .card-subtitle{font-size:12px;color:var(--text-3);margin-top:1px}.admin-panel .card-body{padding:16px 18px}.admin-panel .bar-chart{display:flex;align-items:flex-end;gap:6px;height:160px;padding:0 4px}.admin-panel .bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end}.admin-panel .bar{width:100%;border-radius:4px 4px 0 0;background:var(--accent-light);border:1px solid var(--border);position:relative;transition:all .3s ease;cursor:pointer}.admin-panel .bar.active,.admin-panel .bar:hover{background:var(--accent);border-color:var(--accent)}.admin-panel .bar-label{font-size:10px;color:var(--text-3);font-family:Geist Mono,monospace}.admin-panel .donut-wrap{display:flex;align-items:center;gap:20px}.admin-panel .donut-svg{flex-shrink:0}.admin-panel .donut-legend{display:flex;flex-direction:column;gap:8px}.admin-panel .legend-item{display:flex;align-items:center;gap:8px;cursor:pointer}.admin-panel .legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.admin-panel .legend-name{font-size:12px;color:var(--text-2)}.admin-panel .legend-pct{font-size:12px;font-weight:600;color:var(--text-1);margin-left:auto}.admin-panel .table-wrap{overflow-x:auto}.admin-panel table{width:100%;border-collapse:collapse}.admin-panel thead th{text-align:left;font-size:11px;font-weight:500;color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;padding:10px 16px;border-bottom:1px solid var(--border);white-space:nowrap}.admin-panel tbody tr{border-bottom:1px solid var(--border);transition:background var(--transition);cursor:pointer}.admin-panel tbody tr:last-child{border-bottom:none}.admin-panel tbody tr:hover{background:var(--bg-2)}.admin-panel td{padding:11px 16px;font-size:13px;color:var(--text-2);white-space:nowrap}.admin-panel td:first-child{color:var(--text-1);font-weight:500}.admin-panel .td-mono{font-family:Geist Mono,monospace;font-size:12px}.admin-panel .badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:500;padding:3px 8px;border-radius:20px;line-height:1.4}.admin-panel .badge-dot{width:5px;height:5px;border-radius:50%}.admin-panel .badge.success{background:var(--green-light);color:var(--green-text)}.admin-panel .badge.warning{background:var(--amber-light);color:var(--amber-text)}.admin-panel .badge.danger{background:var(--red-light);color:var(--red-text)}.admin-panel .badge.info{background:var(--blue-light);color:var(--blue-text)}.admin-panel .badge.neutral{background:var(--bg-3);color:var(--text-2)}.admin-panel .feed{display:flex;flex-direction:column;gap:0}.admin-panel .feed-item{display:flex;align-items:flex-start;gap:10px;border-bottom:1px solid var(--border);cursor:pointer;transition:background var(--transition);border-radius:4px;padding:8px 4px;margin:0 -4px}.admin-panel .feed-item:last-child{border-bottom:none}.admin-panel .feed-item:hover{background:var(--bg-2)}.admin-panel .feed-avatar{width:30px;height:30px;border-radius:50%;font-size:11px;font-weight:600;display:grid;place-items:center;flex-shrink:0;color:#fff}.admin-panel .feed-body{flex:1;min-width:0}.admin-panel .feed-name{font-size:12.5px;font-weight:500;color:var(--text-1)}.admin-panel .feed-desc{font-size:12px;color:var(--text-3)}.admin-panel .feed-time{font-size:11px;color:var(--text-3);flex-shrink:0;margin-top:1px}.admin-panel .bottom-row{display:grid;grid-template-columns:1fr 340px;gap:12px}.admin-panel .tabs{display:flex;gap:2px;padding:3px;background:var(--bg-3);border-radius:8px}.admin-panel .tab{font-size:12px;font-weight:500;padding:5px 12px;border-radius:6px;cursor:pointer;color:var(--text-3);transition:all var(--transition);border:none;background:none;font-family:inherit}.admin-panel .tab.active{background:var(--bg);color:var(--text-1);box-shadow:var(--shadow)}.admin-panel .tab:hover:not(.active){color:var(--text-2)}.admin-panel .progress-item{display:flex;flex-direction:column;gap:6px}.admin-panel .progress-header{display:flex;align-items:center;justify-content:space-between}.admin-panel .progress-name{font-size:12.5px;font-weight:500;color:var(--text-1)}.admin-panel .progress-pct{font-size:12px;font-weight:600;color:var(--text-2);font-family:Geist Mono,monospace}.admin-panel .progress-bar-track{height:5px;background:var(--bg-3);border-radius:10px;overflow:hidden}.admin-panel .progress-bar-fill{height:100%;border-radius:10px;transition:width .6s cubic-bezier(.4,0,.2,1)}@keyframes admin-fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.admin-panel .kpi-card{animation:admin-fadeUp .4s ease both}.admin-panel .kpi-card:nth-child(1){animation-delay:.05s}.admin-panel .kpi-card:nth-child(2){animation-delay:.1s}.admin-panel .kpi-card:nth-child(3){animation-delay:.15s}.admin-panel .kpi-card:nth-child(4){animation-delay:.2s}.admin-panel .card{animation:admin-fadeUp .4s ease both;animation-delay:.25s}@media(max-width:1024px){.admin-panel .kpi-grid{grid-template-columns:repeat(2,1fr)}.admin-panel .charts-row,.admin-panel .bottom-row{grid-template-columns:1fr}}
