@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800;900&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;700&family=Fira+Code:wght@400;500;600&display=swap";:root{--bg-main:#06080f;--bg-secondary:#0b0e17;--bg-tertiary:#111524;--surface-glass:#111524b3;--surface-glass-card:#161c3099;--surface-border:#ffffff14;--surface-border-glow:#6366f166;--primary:#6366f1;--primary-light:#818cf8;--primary-glow:#6366f159;--accent-cyan:#06b6d4;--accent-cyan-glow:#06b6d459;--accent-pink:#ec4899;--accent-purple:#a855f7;--accent-emerald:#10b981;--accent-amber:#f59e0b;--accent-red:#ef4444;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--font-heading:"Outfit", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;--font-mono:"Space Grotesk", "Fira Code", monospace;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:30px;--radius-full:9999px}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background-color:var(--bg-main);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 50% 0,#6366f11f 0%,#0000 60%),radial-gradient(circle at 90% 40%,#06b6d40f 0%,#0000 50%),radial-gradient(circle at 10% 70%,#a855f70f 0%,#0000 50%),linear-gradient(#ffffff04 1px,#0000 1px),linear-gradient(90deg,#ffffff04 1px,#0000 1px);background-size:100% 100%,100% 100%,100% 100%,64px 64px,64px 64px;min-height:100vh;line-height:1.5;overflow-x:hidden}.touch-pan-y{touch-action:pan-y;-webkit-overflow-scrolling:touch}.gpu-layer{backface-visibility:hidden;perspective:1000px;transform:translateZ(0)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff26}::-webkit-scrollbar-thumb:hover{background:var(--primary)}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{color:inherit;outline:none;font-family:inherit}.glass-panel{background:var(--surface-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:0 20px 50px #0006}.glass-card{background:var(--surface-glass-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:20px;transition:all .3s cubic-bezier(.16,1,.3,1)}.glass-card:hover{border-color:var(--surface-border-glow);transform:translateY(-2px);box-shadow:0 10px 30px #00000080,0 0 20px #6366f126}.gradient-text-neon{background:linear-gradient(135deg,#00f2fe 0%,#4facfe 50%,#a855f7 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.gradient-text-shimmer{background:linear-gradient(90deg,#fff 0%,#a5b4fc 30%,#06b6d4 60%,#ec4899 80%,#fff 100%) 0 0/200%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;animation:6s linear infinite shine}@keyframes shine{to{background-position:200%}}.btn{border-radius:var(--radius-full);white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:.92rem;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-primary{color:#fff;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 50%,#06b6d4 100%);box-shadow:0 4px 20px #6366f159}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 28px #6366f18c}.btn-secondary{color:var(--text-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1f}.btn-secondary:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff40;transform:translateY(-2px)}.btn-success{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);box-shadow:0 4px 20px #10b98159}.btn-success:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 28px #10b9818c}.btn-danger{color:#fff;background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);box-shadow:0 4px 20px #ef444459}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 28px #ef44448c}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-sm{padding:6px 14px;font-size:.82rem}.badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.badge-primary{color:var(--primary-light);background:#6366f126;border:1px solid #6366f14d}.badge-success{color:var(--accent-emerald);background:#10b98126;border:1px solid #10b9814d}.badge-warning{color:var(--accent-amber);background:#f59e0b26;border:1px solid #f59e0b4d}.badge-danger{color:var(--accent-red);background:#ef444426;border:1px solid #ef44444d}@keyframes pulse-indicator{0%{opacity:.7;transform:scale(.95)}50%{opacity:1;transform:scale(1.15)}to{opacity:.7;transform:scale(.95)}}.pulse-dot{border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse-indicator}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-main{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:24px}.dashboard-grid{grid-template-columns:280px 1fr;align-items:start;gap:24px;display:grid}@media (width<=1024px){.dashboard-grid{grid-template-columns:1fr}}:root{--bg-main:#f8f7ee;--bg-secondary:#f1f2e5;--bg-tertiary:#e9ecdd;--surface-glass:#fffef8;--surface-glass-card:#fffef8;--surface-border:#d9dfcf;--surface-border-glow:#89ad79;--primary:#29704a;--primary-light:#276a46;--primary-glow:#347d4c29;--text-primary:#253529;--text-secondary:#4d6253;--text-muted:#617568}body{color:var(--text-primary);background:#f8f7ee radial-gradient(at 80% 0,#b4cc942b,#0000 55%)}:where(button,a,input,textarea,select,[role=button]):focus-visible{outline-offset:3px;outline:3px solid #277148!important}:where(input,textarea,select):not([type=checkbox]):not([type=radio]){min-height:40px}button:disabled{cursor:not-allowed}.skip-link{color:#fffef8;z-index:100;background:#276a46;border-radius:10px;padding:12px 18px;font-weight:700;position:fixed;top:-100px;left:12px}.skip-link:focus{top:12px}.dashboard-sidebar{box-shadow:8px 0 35px #2946240d;background:#f0f3e6!important;border-color:#d6dfc9!important}.dashboard-sidebar nav button,.dashboard-sidebar nav button span,.dashboard-bottom-nav button{font-size:.84rem}.dashboard-sidebar nav button{text-align:left;width:100%;min-height:42px}.dashboard-sidebar nav button[aria-current=page],.dashboard-sidebar nav button:hover{color:#1e5939!important;box-shadow:none!important;background:#dce9d5!important;border-color:#39865a!important}.dashboard-sidebar nav button[aria-current=page] .material-symbols-outlined{color:#276a46}.dashboard-topbar{background:#fffef8f5!important;border-color:#d6dfc9!important}.dashboard-bottom-nav{padding-bottom:env(safe-area-inset-bottom);height:calc(64px + env(safe-area-inset-bottom))!important;background:#fffef8!important;border-color:#d6dfc9!important}.dashboard-bottom-nav button{min-width:0;min-height:48px}.dashboard-bottom-nav button[aria-current=page]{color:#276a46!important}.dashboard-main{color:var(--text-primary)!important;background:0 0!important;padding-top:clamp(18px,3vw,36px)!important}.dashboard-main>div{max-width:1440px}.page-intro{justify-content:space-between;align-items:flex-end;gap:20px;padding:4px 0 10px;display:flex}.page-intro__eyebrow,.setup-guide__kicker{color:#276a46;letter-spacing:.12em;font-size:.72rem;font-weight:800}.page-intro__eyebrow span{color:#758471;margin:0 6px}.page-intro h1{letter-spacing:-.035em;margin-top:7px;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(1.55rem,2.6vw,2.25rem);font-weight:800;line-height:1.2}.page-intro p{color:#526657;max-width:620px;margin-top:8px;font-size:.92rem}.page-intro__status{color:#305e3f;background:#edf4e9;border:1px solid #cadbca;border-radius:100px;flex-shrink:0;align-items:center;gap:9px;padding:9px 13px;font-size:.78rem;font-weight:700;display:inline-flex}.page-intro__dot{background:#829483;border-radius:50%;width:8px;height:8px}.page-intro__status.is-running .page-intro__dot{background:#21834b}.page-intro__status.is-paused .page-intro__dot{background:#b87d1d}.setup-guide{background:linear-gradient(110deg,#e8f1df,#f3f5e9 65%,#edf2dd);border:1px solid #d1ddc4;border-radius:20px;padding:clamp(18px,2.4vw,28px);box-shadow:0 14px 36px #2b47260f}.setup-guide__heading{justify-content:space-between;align-items:end;gap:14px;margin-bottom:20px;display:flex}.setup-guide h2{letter-spacing:-.02em;margin-top:4px;font-size:1.14rem}.setup-guide__heading p{color:#4b6450;max-width:360px;font-size:.82rem}.setup-guide__steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.setup-step{text-align:left;color:#253529;background:#fffef8;border:1px solid #d6dfc9;border-radius:13px;align-items:center;gap:12px;min-width:0;padding:14px 12px;transition:border-color .2s,background .2s,transform .2s;display:flex}.setup-step:hover{background:#f4faef;border-color:#659972;transform:translateY(-2px)}.setup-step>span:nth-child(2){flex:1;gap:3px;min-width:0;display:grid}.setup-step strong{font-size:.84rem}.setup-step small{color:#516855;font-size:.73rem;line-height:1.4}.setup-step__number{color:#276a46;font-size:.8rem;font-weight:800}.setup-step>span:last-child{color:#276a46}#root [class*="bg-[#110c1b]"],#root [class*="bg-[#161120]"],#root [class*="bg-[#171224]"],#root [class*="bg-[#0f0b17]"],#root [class*="bg-[#0d0914]"]{background-color:#f5f5eb!important}#root [class*="bg-[#1e1929]"],#root [class*="bg-[#221d2d]"],#root [class*="bg-[#2d2738]"],#root [class*="bg-[#383243]"],#root [class*="bg-[#2e264a]"]{background-color:#fffef8!important}#root [class*="hover:bg-[#2d2738]"]:hover,#root [class*="hover:bg-[#383243]"]:hover{background-color:#e5efdf!important}#root [class*="border-[#3c494d]"],#root [class*="border-[#2e264a]"]{border-color:#d6dfc9!important}#root [class*="text-[#e9def5]"],#root [class*="text-[#bbc9cd]"],#root [class*="text-[#859397]"]{color:#2c3f30!important}#root [class*="bg-[#110c1b]"] [class*=text-white],#root [class*="bg-[#161120]"] [class*=text-white],#root [class*="bg-[#1e1929]"] [class*=text-white],#root [class*="bg-[#221d2d]"] [class*=text-white]{color:#253529!important}#root [class*="bg-[#110c1b]"] [class*="bg-[#12d8fa]"][class*="text-[#003640]"],#root [class*="bg-[#161120]"] [class*="bg-[#12d8fa]"][class*="text-[#003640]"],#root [class*="bg-[#1e1929]"] [class*="bg-[#12d8fa]"][class*="text-[#003640]"]{color:#fffef8!important}#root [class*="text-[#bbc9cd]"]{color:#4d6253!important}#root [class*="text-[#859397]"]{color:#596c5d!important}#root [class*="text-[#12d8fa]"],#root [class*="text-[#16d9fb]"],#root [class*="text-[#a7ecff]"],#root [class*="text-[#cdbdff]"]{color:#246a43!important}#root [class*="text-[#59ff93]"]{color:#247347!important}#root [class*="border-[#12d8fa]"],#root [class*="border-[#16d9fb]"],#root [class*="border-[#cdbdff]"],#root [class*="border-[#59ff93]"]{border-color:#a9caaa!important}#root [class*="bg-[#12d8fa]"],#root [class*="bg-[#16d9fb]"],#root [class*="bg-[#59ff93]"],#root [class*="bg-[#cdbdff]"]{background-color:#277148!important}#root [class*="bg-[#12d8fa]/"],#root [class*="bg-[#59ff93]/"],#root [class*="bg-[#cdbdff]/"],#root [class*="bg-[#5203d5]/"]{background-color:#e4f0df!important}#root [class*="bg-[#12d8fa]"]:not([class*="bg-[#12d8fa]/"]),#root [class*="bg-[#59ff93]"]:not([class*="bg-[#59ff93]/"]),#root [class*="bg-[#cdbdff]"]:not([class*="bg-[#cdbdff]/"]){color:#fffef8!important}#root [class*="bg-[#12d8fa]/"],#root [class*="bg-[#59ff93]/"],#root [class*="bg-[#cdbdff]/"]{color:#246a43!important}#root [class*="bg-[#12d8fa]"]:not([class*="bg-[#12d8fa]/"])[class*="text-[#003640]"],#root [class*="bg-[#59ff93]"]:not([class*="bg-[#59ff93]/"])[class*="text-[#003918]"]{color:#fffef8!important}#root [class*="bg-[#93000a]/"]{background-color:#fce8e4!important}#root [class*="text-[#ffb4ab]"]{color:#a13532!important}#root [class*="border-[#ffb4ab]"]{border-color:#e2aaa4!important}#root .dashboard-sidebar{background:#f0f3e6!important}#root .dashboard-topbar,#root .dashboard-bottom-nav{background:#fffef8!important}#root [role=dialog][aria-label="Điều hướng dashboard"]{background:#f0f3e6!important}#root .dashboard-sidebar [class*="text-[#bbc9cd]"],#root .dashboard-topbar [class*="text-[#bbc9cd]"],#root [role=dialog][aria-label="Điều hướng dashboard"] [class*="text-[#bbc9cd]"]{color:#4d6253!important}#root .dashboard-sidebar [class*="text-[#859397]"],#root .dashboard-topbar [class*="text-[#859397]"],#root .dashboard-bottom-nav [class*="text-[#859397]"],#root [role=dialog][aria-label="Điều hướng dashboard"] [class*="text-[#859397]"]{color:#596c5d!important}#root .dashboard-sidebar [class*="text-[#a7ecff]"],#root .dashboard-topbar [class*="text-[#a7ecff]"],#root [role=dialog][aria-label="Điều hướng dashboard"] [class*="text-[#a7ecff]"]{color:#246a43!important}#root .dashboard-sidebar [class*="border-[#3c494d]"],#root .dashboard-topbar [class*="border-[#3c494d]"],#root .dashboard-bottom-nav [class*="border-[#3c494d]"],#root [role=dialog][aria-label="Điều hướng dashboard"] [class*="border-[#3c494d]"]{border-color:#d6dfc9!important}#root [role=dialog][aria-label="Điều hướng dashboard"] nav button[aria-current=page]{color:#1e5939!important;background:#dce9d5!important}#root .dashboard-sidebar [class*="bg-[#1e1929]"],#root .dashboard-topbar [class*="bg-[#1e1929]"]{background-color:#e8f1df!important}#root .dashboard-sidebar [class*="text-[#59ff93]"],#root .dashboard-topbar [class*="text-[#59ff93]"]{color:#276a46!important}#root .dashboard-topbar h1{color:#253529!important}#root .dashboard-sidebar nav button[aria-current=page],#root .dashboard-sidebar nav button:hover{color:#1e5939!important;background:#dce9d5!important}#root .dashboard-bottom-nav button[aria-current=page]{color:#276a46!important}#root .page-intro__status{color:#305e3f!important;background:#edf4e9!important}#root .setup-guide{background:linear-gradient(110deg,#e8f1df,#f3f5e9 65%,#edf2dd)!important}#root .setup-step{color:#253529!important;background:#fffef8!important}#root .setup-step:hover{background:#f4faef!important}#root :where(input,textarea,select):not([type=checkbox]):not([type=radio]){color:#253529;background-color:#fffef8;border-color:#cbd8c5}#root :where(input,textarea)::placeholder{color:#66796a;opacity:1}.dashboard-main section,.dashboard-main [class*=rounded-2xl]{scroll-margin-top:84px}.dashboard-main :where(input,textarea,select){accent-color:#277148}.dashboard-main :where(input,textarea,select):focus{border-color:#277148}.dashboard-main :where(table){border-collapse:separate;border-spacing:0}.dashboard-main :where(th){white-space:nowrap}.dashboard-main :where(th,td){line-height:1.5}.dashboard-main :where(button){touch-action:manipulation}.messenger-back{display:none}.dashboard-main :where([class*=overflow-x-auto]){scrollbar-width:thin;scrollbar-color:#a9caaa transparent}.dashboard-main :where(table){min-width:max-content}.dashboard-main :where(table) th,.dashboard-main :where(table) td{vertical-align:middle}.table-scroll-hint{display:none}@media (width>=768px){.dashboard-main{padding-left:calc(256px + clamp(18px,2.5vw,42px))!important;padding-right:clamp(18px,2.5vw,42px)!important}.dashboard-main>div{margin-inline:auto}.dashboard-main :where(section,[class*=rounded-xl],[class*=rounded-2xl]){min-width:0}}@media (width>=768px) and (width<=1199px){.messenger-layout .messenger-list{width:260px}.messenger-layout .messenger-inspector{display:none}}@media (width<=1100px){.setup-guide__steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){.dashboard-main{padding-bottom:calc(84px + env(safe-area-inset-bottom))!important}.dashboard-main>div{width:100%}.dashboard-main :where(button,a,select,input:not([type=checkbox]):not([type=radio])){min-height:40px}.dashboard-main :where([class*=shadow-2xl],[class*=shadow-xl]){box-shadow:0 5px 20px #2b472614}.dashboard-main :where([class*=p-6]){padding:16px}.dashboard-main :where([class*=gap-6]){gap:16px}.page-intro{display:block}.page-intro__status{margin-top:14px}.setup-guide__heading{display:block}.setup-guide__heading p{margin-top:8px}.dashboard-main :where(input,textarea,select){font-size:16px}.dashboard-main :where([class*=overflow-x-auto]){-webkit-overflow-scrolling:touch}.dashboard-main :where(table){font-size:.78rem}.dashboard-main :where(table) th,.dashboard-main :where(table) td{padding-block:10px}.table-scroll-hint{color:#4d6253;padding:10px 14px 0;font-size:.76rem;display:block}.messenger-layout{height:min(740px,100dvh - 220px);min-height:420px}.messenger-layout .messenger-list{border-right:0;width:100%}.messenger-layout .messenger-conversation,.messenger-layout .messenger-inspector,.messenger-layout--chat .messenger-list{display:none}.messenger-layout--chat .messenger-conversation{width:100%;display:flex}.messenger-back{color:#276a46;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.messenger-layout .messenger-conversation>div:first-child{padding-inline:9px}.messenger-leave-label{display:none}}@media (width<=520px){.setup-guide__steps{grid-template-columns:1fr}.setup-step{padding:12px 14px}.page-intro__status{font-size:.75rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
