@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap";:root{--font-title: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-main: hsl(226, 23%, 6%);--bg-sidebar: hsl(226, 24%, 4%);--bg-card: rgba(18, 22, 35, .65);--bg-card-hover: rgba(28, 33, 50, .8);--border-color: rgba(255, 255, 255, .07);--border-focus: hsl(263, 85%, 65%);--color-primary: hsl(263, 80%, 60%);--color-primary-glow: rgba(138, 92, 246, .35);--color-secondary: hsl(190, 95%, 48%);--color-secondary-glow: rgba(6, 182, 212, .3);--color-text-primary: hsl(210, 40%, 98%);--color-text-secondary: hsl(215, 20%, 65%);--color-text-muted: hsl(215, 12%, 45%);--color-success: hsl(142, 70%, 45%);--color-success-bg: rgba(16, 185, 129, .1);--color-warning: hsl(48, 96%, 53%);--color-warning-bg: rgba(245, 158, 11, .1);--color-danger: hsl(350, 85%, 55%);--color-danger-bg: rgba(239, 68, 68, .1);--color-info: hsl(200, 95%, 48%);--color-info-bg: rgba(14, 165, 233, .1);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--transition-fast: .15s ease;--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--glass-blur: blur(12px);--select-arrow: url("data:image/svg+xml;utf8,<svg fill='white' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");--brand-text-start: #fff;--nav-hover-bg: rgba(255, 255, 255, .03);--border-hover: rgba(255, 255, 255, .12);--btn-secondary-bg: rgba(255, 255, 255, .05);--btn-secondary-bg-hover: rgba(255, 255, 255, .08);--table-th-bg: rgba(255, 255, 255, .01);--table-hover-bg: rgba(255, 255, 255, .015);--input-bg: rgba(0, 0, 0, .2);--input-color: white;--tooltip-bg: rgba(15, 23, 42, .95);--tooltip-color: #ffffff;--tooltip-border: rgba(255, 255, 255, .08);--scrollbar-thumb: rgba(255, 255, 255, .15);--scrollbar-thumb-hover: rgba(255, 255, 255, .3)}:root.light{--bg-main: hsl(225, 20%, 96%);--bg-sidebar: hsl(225, 20%, 98%);--bg-card: rgba(255, 255, 255, .7);--bg-card-hover: rgba(240, 243, 248, .85);--border-color: rgba(0, 0, 0, .06);--border-focus: hsl(263, 80%, 58%);--color-primary: hsl(263, 75%, 55%);--color-primary-glow: rgba(138, 92, 246, .15);--color-secondary: hsl(190, 90%, 42%);--color-secondary-glow: rgba(6, 182, 212, .15);--color-text-primary: hsl(224, 20%, 15%);--color-text-secondary: hsl(220, 12%, 42%);--color-text-muted: hsl(220, 10%, 62%);--color-success: hsl(142, 65%, 38%);--color-success-bg: rgba(16, 185, 129, .08);--color-warning: hsl(38, 90%, 45%);--color-warning-bg: rgba(245, 158, 11, .08);--color-danger: hsl(350, 75%, 48%);--color-danger-bg: rgba(239, 68, 68, .08);--color-info: hsl(200, 85%, 40%);--color-info-bg: rgba(14, 165, 233, .08);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .05);--select-arrow: url("data:image/svg+xml;utf8,<svg fill='%235c6479' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");--brand-text-start: hsl(224, 20%, 15%);--nav-hover-bg: rgba(0, 0, 0, .03);--border-hover: rgba(0, 0, 0, .12);--btn-secondary-bg: rgba(0, 0, 0, .04);--btn-secondary-bg-hover: rgba(0, 0, 0, .07);--table-th-bg: rgba(0, 0, 0, .01);--table-hover-bg: rgba(0, 0, 0, .015);--input-bg: rgba(255, 255, 255, .9);--input-color: hsl(224, 20%, 15%);--tooltip-bg: rgba(255, 255, 255, .98);--tooltip-color: hsl(224, 20%, 15%);--tooltip-border: rgba(0, 0, 0, .1);--scrollbar-thumb: rgba(0, 0, 0, .12);--scrollbar-thumb-hover: rgba(0, 0, 0, .22)}*{box-sizing:border-box;margin:0;padding:0;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}body{background-color:var(--bg-main);color:var(--color-text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden;background-image:radial-gradient(at 0% 0%,rgba(138,92,246,.08) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(6,182,212,.06) 0px,transparent 50%);background-attachment:fixed}.glass-panel{background:var(--bg-card);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--glass-shadow);transition:transform var(--transition-normal),border-color var(--transition-fast),box-shadow var(--transition-normal)}.glass-panel:hover{border-color:var(--border-hover)}.app-container{display:flex;min-height:100vh}.sidebar{width:260px;background:var(--bg-sidebar);border-right:1px solid var(--border-color);display:flex;flex-direction:column;padding:24px 16px;flex-shrink:0;z-index:10}.brand-logo{display:flex;align-items:center;gap:12px;padding:12px 8px;margin-bottom:32px}.brand-icon{width:36px;height:36px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));box-shadow:0 0 15px var(--color-primary-glow);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700}.brand-name{font-family:var(--font-title);font-size:1.25rem;font-weight:700;letter-spacing:-.5px;background:linear-gradient(to right,var(--brand-text-start),var(--color-text-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.nav-menu{display:flex;flex-direction:column;gap:8px;flex-grow:1}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-sm);color:var(--color-text-secondary);text-decoration:none;cursor:pointer;font-size:.95rem;font-weight:500;transition:var(--transition-fast);border:1px solid transparent}.nav-item:hover{background:var(--nav-hover-bg);color:var(--color-text-primary)}.nav-item.active{background:linear-gradient(to right,#8a5cf626,#06b6d405);color:var(--color-text-primary);border-left:3px solid var(--color-primary);border-color:transparent transparent transparent var(--color-primary)}.main-content{flex-grow:1;padding:40px;display:flex;flex-direction:column;gap:32px;max-width:1400px;margin:0 auto;width:100%}.header-section{display:flex;justify-content:space-between;align-items:center}.header-title{font-family:var(--font-title);font-size:2rem;font-weight:700;letter-spacing:-.5px}.header-subtitle{color:var(--color-text-secondary);font-size:.95rem;margin-top:4px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}.stat-card{padding:24px}.stat-header{display:flex;justify-content:space-between;align-items:center;color:var(--color-text-secondary);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-family:var(--font-title);font-size:2.25rem;font-weight:700;margin:16px 0 8px}.stat-desc{font-size:.8rem;color:var(--color-text-muted)}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:var(--radius-sm);font-weight:600;font-size:.9rem;cursor:pointer;transition:var(--transition-fast);border:1px solid transparent;outline:none}.btn-primary{background:var(--color-primary);color:#fff;box-shadow:0 4px 15px #8a5cf64d}.btn-primary:hover{background:#955eed;box-shadow:0 4px 20px #8a5cf680;transform:translateY(-1px)}.btn-secondary{background:var(--btn-secondary-bg);color:var(--color-text-primary);border-color:var(--border-color)}.btn-secondary:hover{background:var(--btn-secondary-bg-hover);border-color:var(--border-hover)}.btn-danger{background:var(--color-danger-bg);color:var(--color-danger);border-color:#ef444433}.btn-danger:hover{background:var(--color-danger);color:#fff}.table-container{overflow-x:auto;width:100%}.custom-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.custom-table th{padding:16px;color:var(--color-text-secondary);font-weight:600;border-bottom:1px solid var(--border-color);background:var(--table-th-bg)}.custom-table td{padding:16px;border-bottom:1px solid var(--border-color);color:var(--color-text-primary);vertical-align:middle}.custom-table tr:last-child td{border-bottom:none}.custom-table tr:hover td{background:var(--table-hover-bg)}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-danger{background:var(--color-danger-bg);color:var(--color-danger)}.badge-info{background:var(--color-info-bg);color:var(--color-info)}.form-group{margin-bottom:20px;display:flex;flex-direction:column;gap:8px}.form-label{font-size:.85rem;font-weight:600;color:var(--color-text-secondary)}.form-control{background:var(--input-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:12px;color:var(--input-color);font-family:var(--font-body);font-size:.9rem;transition:var(--transition-fast);outline:none;width:100%}.form-control:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--color-primary-glow)}select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:var(--select-arrow);background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:100}.modal-content{width:100%;max-width:600px;max-height:90vh;overflow-y:auto;padding:32px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.modal-close{cursor:pointer;color:var(--color-text-secondary);transition:var(--transition-fast)}.modal-close:hover{color:#fff}.tabs-container{display:flex;gap:16px;border-bottom:1px solid var(--border-color);margin-bottom:24px}.tab-btn{padding:12px 8px;background:none;border:none;color:var(--color-text-secondary);font-weight:600;font-size:.95rem;cursor:pointer;border-bottom:2px solid transparent;transition:var(--transition-fast)}.tab-btn:hover{color:#fff}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px;color:var(--color-text-secondary);text-align:center}.empty-icon{color:var(--color-text-muted)}.logout-item{color:var(--color-danger)!important;border-top:1px solid var(--border-color)!important;margin-top:12px!important;padding-top:12px!important}.logout-item:hover{background:var(--color-danger-bg)!important;color:var(--color-danger)!important}.theme-toggle-item{border-top:1px solid var(--border-color);margin-top:auto;padding-top:12px;margin-bottom:8px}.theme-toggle-item:hover{background:var(--nav-hover-bg);color:var(--color-text-primary)}[data-tooltip]{position:relative}[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:125%;left:50%;transform:translate(-50%) scale(.95);background:var(--tooltip-bg);color:var(--tooltip-color);padding:6px 12px;border-radius:6px;font-size:.75rem;font-weight:500;white-space:nowrap;box-shadow:0 4px 20px #00000026;opacity:0;pointer-events:none;transition:opacity .1s cubic-bezier(.4,0,.2,1),transform .1s cubic-bezier(.4,0,.2,1);z-index:1000;border:1px solid var(--tooltip-border)}[data-tooltip]:hover:before{opacity:1;transform:translate(-50%) scale(1)}[data-tooltip]:after{content:"";position:absolute;bottom:115%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:var(--tooltip-bg) transparent transparent transparent;opacity:0;pointer-events:none;transition:opacity .1s ease;z-index:1000}[data-tooltip]:hover:after{opacity:1}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite!important}.counter{font-size:16px;padding:5px 10px;border-radius:5px;color:var(--accent);background:var(--accent-bg);border:2px solid transparent;transition:border-color .3s;margin-bottom:24px}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{inset-inline:0;margin:0 auto}.hero .base{width:170px;position:relative;z-index:0}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;top:34px;height:28px;transform:perspective(2000px) rotate(300deg) rotateX(44deg) rotateY(39deg) scale(1.4)}.hero .vite{z-index:0;top:107px;height:26px;width:auto;transform:perspective(2000px) rotate(300deg) rotateX(40deg) rotateY(39deg) scale(.8)}#center{display:flex;flex-direction:column;gap:25px;place-content:center;place-items:center;flex-grow:1}@media (max-width: 1024px){#center{padding:32px 20px 24px;gap:18px}}#next-steps{display:flex;border-top:1px solid var(--border);text-align:left}#next-steps>div{flex:1 1 0;padding:32px}@media (max-width: 1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{margin-bottom:16px;width:22px;height:22px}@media (max-width: 1024px){#next-steps{flex-direction:column;text-align:center}}#docs{border-right:1px solid var(--border)}@media (max-width: 1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{list-style:none;padding:0;display:flex;gap:8px;margin:32px 0 0}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);font-size:16px;border-radius:6px;background:var(--social-bg);display:flex;padding:6px 12px;align-items:center;gap:8px;text-decoration:none;transition:box-shadow .3s}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{height:18px;width:18px}@media (max-width: 1024px){#next-steps ul{margin-top:20px;flex-wrap:wrap;justify-content:center}#next-steps ul li{flex:1 1 calc(50% - 8px)}#next-steps ul a{width:100%;justify-content:center;box-sizing:border-box}}#spacer{height:88px;border-top:1px solid var(--border)}@media (max-width: 1024px){#spacer{height:48px}}.ticks{position:relative;width:100%}.ticks:before,.ticks:after{content:"";position:absolute;top:-4.5px;border:5px solid transparent}.ticks:before{left:0;border-left-color:var(--border)}.ticks:after{right:0;border-right-color:var(--border)}
