:root{--vt-c-white:#fff;--vt-c-white-soft:#f8f8f8;--vt-c-white-mute:#f2f2f2;--vt-c-black:#181818;--vt-c-black-soft:#222;--vt-c-black-mute:#282828;--vt-c-indigo:#2c3e50;--vt-c-divider-light-1:#3c3c3c4a;--vt-c-divider-light-2:#3c3c3c1f;--vt-c-divider-dark-1:#545454a6;--vt-c-divider-dark-2:#5454547a;--vt-c-text-light-1:var(--vt-c-indigo);--vt-c-text-light-2:#3c3c3ca8;--vt-c-text-dark-1:var(--vt-c-white);--vt-c-text-dark-2:#ebebeba3;--color-background:var(--vt-c-white);--color-background-soft:var(--vt-c-white-soft);--color-background-mute:var(--vt-c-white-mute);--color-border:var(--vt-c-divider-light-2);--color-border-hover:var(--vt-c-divider-light-1);--color-heading:var(--vt-c-text-light-1);--color-text:var(--vt-c-text-light-1);--section-gap:160px}@media (prefers-color-scheme:dark){:root{--color-background:var(--vt-c-black);--color-background-soft:var(--vt-c-black-soft);--color-background-mute:var(--vt-c-black-mute);--color-border:var(--vt-c-divider-dark-2);--color-border-hover:var(--vt-c-divider-dark-1);--color-heading:var(--vt-c-text-dark-1);--color-text:var(--vt-c-text-dark-2)}}*,:before,:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;line-height:1.6;transition:color .5s,background-color .5s}:root{--tp-jade:#00bfa5;--tp-jade-dark:#00897b;--tp-jade-glow:#00bfa566;--tp-ink:#111827;--tp-cloud:#f3f4f6;--tp-slate:#030712;--tp-slate-light:#1e293b;--tp-surface:#0f172a;--tp-surface-hover:#1e293b;--tp-accent-blue:#3b82f6;--tp-accent-purple:#8b5cf6;--tp-accent-pink:#ec4899;--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-serif:"Noto Serif SC", Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:"JetBrains Mono", "Fira Code", Consolas, monospace;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:2rem;--spacing-xl:4rem;--spacing-2xl:8rem;--glass-bg-light:#ffffffb3;--glass-border-light:#ffffff80;--glass-bg-dark:#0f172a73;--glass-border-dark:#ffffff14;--glass-border-gradient:linear-gradient(135deg, #ffffff1a 0%, #ffffff05 100%);--glass-shadow:0 12px 32px -4px #000c, 0 0 0 1px #ffffff0d inset}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--tp-slate);color:#f8fafc;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 15%,#3b82f626 0%,#0000 50%),radial-gradient(circle at 85% 30%,#8b5cf626 0%,#0000 50%);background-attachment:fixed;line-height:1.6;transition:background-color .3s,color .3s;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);margin-bottom:var(--spacing-md);letter-spacing:-.02em;font-weight:700;line-height:1.1}h1{font-size:3.5rem}h2{font-size:2.5rem}h3{font-size:1.75rem}p{margin-bottom:var(--spacing-md);color:#94a3b8;font-size:1.125rem}a{color:var(--tp-jade);text-decoration:none;transition:color .2s}a:hover{color:var(--tp-jade-dark)}.glass-panel{background:var(--glass-bg-dark);-webkit-backdrop-filter:blur(32px);box-shadow:var(--glass-shadow);background-clip:padding-box;border:1px solid #0000;border-radius:24px;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1);position:relative}.glass-panel:before{content:"";z-index:-1;background:var(--glass-border-gradient);border-radius:24px;margin:-1px;position:absolute;inset:0}.glass-panel:hover{transform:translateY(-4px);box-shadow:0 20px 50px -12px #00bfa526,inset 0 0 0 1px #ffffff1a}.container{max-width:1280px;padding:0 var(--spacing-lg);margin:0 auto}.section{padding:var(--spacing-2xl) 0;z-index:1;position:relative}.text-center{text-align:center}.btn{font-weight:600;font-family:var(--font-sans);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:.875rem 2rem;font-size:1.05rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary{background-color:var(--tp-jade);color:#000;box-shadow:0 4px 14px 0 var(--tp-jade-glow);position:relative;overflow:hidden}.btn-primary:after{content:"";background:linear-gradient(90deg,#0000,#fff6,#0000);width:50%;height:100%;transition:all .5s;position:absolute;top:0;left:-100%;transform:skew(-20deg)}.btn-primary:hover:after{left:150%}.btn-primary:hover{background-color:#00e6c8;transform:translateY(-3px);box-shadow:0 8px 30px #00bfa599}.btn-secondary{color:#f8fafc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#ffffff0d;border:1px solid #ffffff1a}.btn-secondary:hover{background-color:#ffffff1a;border-color:#fff3;transform:translateY(-2px)}.fade-up{opacity:0;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(40px)}.fade-up.visible{opacity:1;transform:translateY(0)}.text-gradient{background:linear-gradient(135deg,#f8fafc 0%,#94a3b8 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-gradient-primary{background:linear-gradient(135deg, var(--tp-jade) 0%, #3b82f6 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.glow-blob{background:radial-gradient(circle, var(--tp-jade-glow) 0%, transparent 70%);filter:blur(60px);z-index:-1;opacity:.5;pointer-events:none;border-radius:50%;width:600px;height:600px;animation:10s ease-in-out infinite alternate float;position:absolute}@keyframes float{0%{transform:translateY(0)scale(1)}50%{transform:translateY(-30px)scale(1.05)}to{transform:translateY(0)scale(1)}}.bento-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1200px;margin:0 auto;display:grid}@media (width<=992px){.bento-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.bento-grid{grid-template-columns:1fr}}.navbar[data-v-5eba8787]{z-index:1000;background:0 0;border-bottom:1px solid #0000;height:80px;transition:all .4s cubic-bezier(.16,1,.3,1);position:fixed;top:0;left:0;right:0}.navbar.scrolled[data-v-5eba8787]{-webkit-backdrop-filter:blur(24px);background:#ffffffb3;border-bottom:1px solid #ffffff4d;box-shadow:0 4px 30px #0000000d}@media (prefers-color-scheme:dark){.navbar.scrolled[data-v-5eba8787]{background:#030712a6;border-bottom:1px solid #ffffff0d;box-shadow:0 10px 40px #0006}}.navbar-container[data-v-5eba8787]{justify-content:space-between;align-items:center;height:100%;display:flex}.brand[data-v-5eba8787]{align-items:center;gap:.75rem;text-decoration:none;display:flex}.logo-img[data-v-5eba8787]{width:auto;height:32px}.dark-only[data-v-5eba8787]{display:none}@media (prefers-color-scheme:dark){.light-only[data-v-5eba8787]{display:none}.dark-only[data-v-5eba8787]{display:block}}.nav-links[data-v-5eba8787]{align-items:center;gap:2rem;display:flex}.nav-links a[data-v-5eba8787]:not(.btn){color:var(--tp-ink);opacity:.7;font-size:.95rem;font-weight:600;text-decoration:none;transition:opacity .3s,color .3s;position:relative}.nav-links a[data-v-5eba8787]:not(.btn):after{content:"";background:var(--tp-jade);border-radius:2px;width:0;height:2px;transition:all .3s;position:absolute;bottom:-4px;left:50%;transform:translate(-50%)}.nav-links a[data-v-5eba8787]:not(.btn):hover:after,.nav-links a.router-link-active[data-v-5eba8787]:not(.btn):after{width:100%}@media (prefers-color-scheme:dark){.nav-links a[data-v-5eba8787]:not(.btn){color:var(--tp-cloud)}}.nav-links a[data-v-5eba8787]:not(.btn):hover,.nav-links a.router-link-active[data-v-5eba8787]:not(.btn){opacity:1}.nav-download[data-v-5eba8787]{border-radius:12px;padding:.6rem 1.5rem;font-size:.95rem}.lang-switcher[data-v-5eba8787]{align-items:center;display:flex}.lang-select[data-v-5eba8787]{border:1px solid var(--glass-border-light);color:var(--tp-ink);cursor:pointer;background:0 0;border-radius:6px;outline:none;padding:.25rem .5rem;font-family:inherit;font-size:.85rem}@media (prefers-color-scheme:dark){.lang-select[data-v-5eba8787]{border-color:var(--glass-border-dark);color:var(--tp-cloud)}.lang-select option[data-v-5eba8787]{background:var(--tp-slate);color:var(--tp-cloud)}}.footer[data-v-ccdd20ed]{padding:var(--spacing-xl) 0 var(--spacing-lg);margin-top:var(--spacing-2xl);background-color:#f8fafc;border-top:1px solid #0000000d;position:relative;overflow:hidden}@media (prefers-color-scheme:dark){.footer[data-v-ccdd20ed]{background-color:#020408;border-top:1px solid #ffffff0d}}.footer[data-v-ccdd20ed]:before{content:"TichPhong";color:#00bfa505;pointer-events:none;z-index:0;font-size:15rem;font-weight:800;line-height:1;position:absolute;bottom:-40px;right:-20px}.footer-grid[data-v-ccdd20ed],.footer-bottom[data-v-ccdd20ed]{z-index:1;position:relative}.footer-grid[data-v-ccdd20ed]{gap:var(--spacing-xl);margin-bottom:var(--spacing-xl);grid-template-columns:2fr 1fr 1fr;display:grid}@media (width<=768px){.footer-grid[data-v-ccdd20ed]{gap:var(--spacing-lg);grid-template-columns:1fr}}.brand-text[data-v-ccdd20ed]{font-family:var(--font-serif);margin-bottom:var(--spacing-sm);color:var(--tp-jade);font-size:1.5rem}.brand-desc[data-v-ccdd20ed]{opacity:.7;max-width:400px}.footer-links h4[data-v-ccdd20ed]{font-family:var(--font-sans);margin-bottom:var(--spacing-md);font-size:1.1rem}.footer-links ul[data-v-ccdd20ed]{padding:0;list-style:none}.footer-links li[data-v-ccdd20ed]{margin-bottom:var(--spacing-sm)}.footer-links a[data-v-ccdd20ed]{color:var(--tp-ink);opacity:.7;transition:opacity .2s,color .2s}@media (prefers-color-scheme:dark){.footer-links a[data-v-ccdd20ed]{color:var(--tp-cloud)}}.footer-links a[data-v-ccdd20ed]:hover{opacity:1;color:var(--tp-jade)}.footer-bottom[data-v-ccdd20ed]{text-align:center;padding-top:var(--spacing-lg);opacity:.6;border-top:1px solid #0000001a;font-size:.9rem}@media (prefers-color-scheme:dark){.footer-bottom[data-v-ccdd20ed]{border-top:1px solid #ffffff1a}}.main-content{min-height:100vh}.home-view[data-v-45c49db8]{overflow:hidden}.mb-xl[data-v-45c49db8]{margin-bottom:4rem}.section-title[data-v-45c49db8]{background:linear-gradient(135deg,#f8fafc 0%,#cbd5e1 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:1rem;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:800}.section-subtitle[data-v-45c49db8]{color:#94a3b8;max-width:600px;margin:0 auto;font-size:1.25rem}.hero-section[data-v-45c49db8]{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding-top:12rem;display:flex;position:relative}.hero-bg[data-v-45c49db8]{z-index:-1;background-image:radial-gradient(at 50% -20%,#1e293bcc 0%,#0000 60%);width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.pill-badge[data-v-45c49db8]{color:#cbd5e1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:100px;align-items:center;gap:8px;margin-bottom:2rem;padding:6px 16px;font-size:.875rem;font-weight:600;display:inline-flex}.pill-dot[data-v-45c49db8]{background-color:var(--tp-jade);width:8px;height:8px;box-shadow:0 0 10px var(--tp-jade);border-radius:50%}.hero-title[data-v-45c49db8]{letter-spacing:-.04em;margin-bottom:1.5rem;font-size:clamp(3.5rem,8vw,6rem);font-weight:800;line-height:1.1}.highlight-text[data-v-45c49db8]{font-size:clamp(4rem,9vw,7rem)}.hero-subtitle[data-v-45c49db8]{color:#94a3b8;max-width:700px;margin:0 auto 3rem;font-size:1.35rem;font-weight:400}.hero-actions[data-v-45c49db8]{justify-content:center;gap:1.25rem;margin-bottom:6rem;display:flex}.btn-lg[data-v-45c49db8]{padding:1rem 2.5rem;font-size:1.1rem}.mockup-container[data-v-45c49db8]{perspective:2000px;width:100%;max-width:1200px;margin-top:2rem}.mockup-frame[data-v-45c49db8]{background:#0f172a80;border-radius:20px;padding:.5rem;transition:transform .6s cubic-bezier(.16,1,.3,1),box-shadow .6s;transform:rotateX(8deg)scale(.95)translateY(-20px);box-shadow:0 25px 50px -12px #000000b3}.mockup-container.visible .mockup-frame[data-v-45c49db8]{transform:rotateX(0)scale(1)translateY(0)}.mockup-img[data-v-45c49db8]{border-radius:16px;width:100%;height:auto;display:block}.bento-card[data-v-45c49db8]{flex-direction:column;height:100%;min-height:400px;display:flex;overflow:hidden}.bento-large[data-v-45c49db8]{flex-direction:row;grid-column:span 2}.bento-content[data-v-45c49db8]{z-index:2;flex-direction:column;flex:1;padding:2.5rem;display:flex}.bento-large .bento-content[data-v-45c49db8]{max-width:50%}.icon-wrapper[data-v-45c49db8]{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:1.5rem;display:flex}.icon-wrapper.primary[data-v-45c49db8]{color:var(--tp-jade);background:#00bfa51a}.icon-wrapper.secondary[data-v-45c49db8]{color:#3b82f6;background:#3b82f61a}.icon-wrapper.accent[data-v-45c49db8]{color:#ec4899;background:#ec48991a}.bento-title[data-v-45c49db8]{color:#f8fafc;margin-bottom:1rem;font-size:1.75rem;font-weight:700}.bento-text[data-v-45c49db8]{color:#94a3b8;font-size:1.1rem;line-height:1.6}.bento-visual[data-v-45c49db8]{border-radius:0 0 24px 24px;flex:1;min-height:250px;position:relative;overflow:hidden}.bento-large .bento-visual[data-v-45c49db8]{border-radius:0 24px 24px 0}.centered-visual[data-v-45c49db8]{background:radial-gradient(circle,#ffffff08 0%,#0000 70%);justify-content:center;align-items:center;padding:2rem;display:flex}.bento-img[data-v-45c49db8]{width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1);position:absolute}.object-cover[data-v-45c49db8]{object-fit:cover}.object-contain[data-v-45c49db8]{object-fit:contain;width:80%;height:80%;position:relative}.object-top-left[data-v-45c49db8]{object-fit:cover;object-position:left top;border-radius:12px;width:110%;height:110%;top:10%;left:10%;box-shadow:0 10px 30px #00000080}.object-center[data-v-45c49db8]{object-fit:cover;object-position:center top;width:120%;top:5%;left:-10%}.bento-card:hover .bento-img[data-v-45c49db8]{transform:scale(1.05)}@media (width<=992px){.bento-large[data-v-45c49db8]{flex-direction:column;grid-column:span 1}.bento-large .bento-content[data-v-45c49db8]{max-width:100%}.bento-large .bento-visual[data-v-45c49db8]{border-radius:0 0 24px 24px}.object-top-left[data-v-45c49db8]{width:100%;top:0;left:0}}@media (width<=768px){.hero-actions[data-v-45c49db8]{flex-direction:column;align-items:stretch}}
