@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/be-vietnam-pro-vietnamese-400.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/be-vietnam-pro-latin-ext-400.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/be-vietnam-pro-latin-400.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/be-vietnam-pro-vietnamese-500.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/be-vietnam-pro-latin-ext-500.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/be-vietnam-pro-latin-500.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/be-vietnam-pro-vietnamese-600.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/be-vietnam-pro-latin-ext-600.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/be-vietnam-pro-latin-600.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/be-vietnam-pro-vietnamese-700.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/be-vietnam-pro-latin-ext-700.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/be-vietnam-pro-latin-700.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lora;font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/lora-vietnamese-500.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Lora;font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/lora-latin-ext-500.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lora;font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/lora-latin-500.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lora;font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/lora-vietnamese-500.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Lora;font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/lora-latin-ext-500.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lora;font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/lora-latin-500.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lora;font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/lora-vietnamese-500.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Lora;font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/lora-latin-ext-500.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lora;font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/lora-latin-500.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--navy:#141b2d;--bg:#f5f7fb;--surface:#ffffff;--card:#f8fafc;--ink:#161b26;--ink-soft:#545d72;--border:#e3e7ef;--border-strong:#d7dce6;--blue:#2f8fe0;--blue-ink:#1458a0;--blue-soft:#e6f2fd;--blue-line:#cfe4fa;--violet:#7c5cfc;--violet-ink:#5536d1;--violet-soft:#efeafe;--violet-line:#ddd3fe;--green:#16a34a;--green-ink:#166534;--green-soft:#e7f6ec;--amber:#d97706;--amber-ink:#8a3c06;--amber-soft:#fdf1dc;--pen:#d6383e;--pen-ink:#b4232a;--pen-soft:#fdebec;--marker:#fde68a;--grid-line:rgba(47,143,224,0.09);--pen-underline:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 12' preserveAspectRatio='none'%3E%3Cpath d='M3 8 C 50 3, 112 3, 197 6' fill='none' stroke='%23d6383e' stroke-width='3.2' stroke-linecap='round'/%3E%3C/svg%3E");--pen-circle:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 80' preserveAspectRatio='none'%3E%3Cpath d='M104 6 C 160 4, 197 22, 193 42 C 189 66, 122 77, 70 72 C 20 68, 3 50, 9 31 C 15 13, 60 5, 116 9' fill='none' stroke='%23d6383e' stroke-width='2.6' stroke-linecap='round'/%3E%3C/svg%3E");--btn:#141b2d;--btn-hover:#222c45;--btn-ink:#ffffff;--btn-shadow:0 10px 24px -12px rgba(20,27,45,0.55);--header-bg:#141b2d;--header-line:#141b2d;--header-ink:#c3cbdb;--header-on:#ffffff;--header-on-bg:rgba(255,255,255,0.09);--hero-base:#f3f7fd;--hero-ink:#161b26;--hero-soft:#545d72;--grad-text:linear-gradient(90deg,#2f8fe0,#7c5cfc);--shadow:0 1px 2px rgba(22,27,38,0.04),0 10px 26px -18px rgba(22,27,38,0.3);--shadow-lg:0 30px 60px -30px rgba(22,27,38,0.35);--code-bg:#f3f5f9;--win-bar:#eef1f6;--focus:#2f8fe0;--font-sans:"Be Vietnam Pro",system-ui,sans-serif;--font-serif:"Lora",Georgia,serif;--paper:var(--surface);--accent:var(--blue);--accent-dark:var(--btn);--accent-soft:var(--blue-soft);--shadow-xs:0 1px 2px rgba(22,27,38,0.05);--shadow-sm:var(--shadow);--shadow-md:var(--shadow-lg);color-scheme:light}[data-theme=dark]{--bg:#0e1422;--surface:#141b2d;--card:#19223a;--ink:#e8ecf4;--ink-soft:#a3aec3;--border:#26314a;--border-strong:#33405e;--blue:#5aa9f0;--blue-ink:#a5cff7;--blue-soft:rgba(90,169,240,0.15);--blue-line:rgba(90,169,240,0.32);--violet:#9b83ff;--violet-ink:#cdbfff;--violet-soft:rgba(155,131,255,0.16);--violet-line:rgba(155,131,255,0.34);--green:#4ade80;--green-ink:#95eeb5;--green-soft:rgba(74,222,128,0.13);--amber:#fbbf24;--amber-ink:#fcd77a;--amber-soft:rgba(251,191,36,0.13);--pen:#ff7b7b;--pen-ink:#ffaaaa;--pen-soft:rgba(255,123,123,0.14);--marker:rgba(250,204,21,0.28);--grid-line:rgba(255,255,255,0.045);--pen-underline:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 12' preserveAspectRatio='none'%3E%3Cpath d='M3 8 C 50 3, 112 3, 197 6' fill='none' stroke='%23ff7b7b' stroke-width='3.2' stroke-linecap='round'/%3E%3C/svg%3E");--pen-circle:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 80' preserveAspectRatio='none'%3E%3Cpath d='M104 6 C 160 4, 197 22, 193 42 C 189 66, 122 77, 70 72 C 20 68, 3 50, 9 31 C 15 13, 60 5, 116 9' fill='none' stroke='%23ff7b7b' stroke-width='2.6' stroke-linecap='round'/%3E%3C/svg%3E");--btn:#2f8fe0;--btn-hover:#4a9fe6;--btn-ink:#ffffff;--btn-shadow:0 10px 24px -10px rgba(47,143,224,0.6);--header-bg:#1e2945;--header-line:rgba(255,255,255,0.09);--header-ink:#c9d1e1;--header-on:#ffffff;--header-on-bg:rgba(255,255,255,0.1);--hero-base:#141b2d;--hero-ink:#ffffff;--hero-soft:#c3cbdb;--grad-text:linear-gradient(90deg,#7dd3fc,#b3a2ff);--shadow:0 1px 2px rgba(0,0,0,0.3),0 12px 30px -18px rgba(0,0,0,0.7);--shadow-lg:0 30px 60px -28px rgba(0,0,0,0.8);--code-bg:#0f1628;--win-bar:#1c2640;--focus:#7dd3fc;--shadow-xs:0 1px 2px rgba(0,0,0,0.3);color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);font-size:16px;line-height:1.55;color:var(--ink);background:var(--bg);transition:background .2s,color .2s;overflow-x:hidden;min-height:100vh;display:flex;flex-direction:column}body>*{flex-shrink:0}body>main{flex-grow:1}h1,h2,h3{font-family:var(--font-serif);margin:0;color:var(--ink);line-height:1.28}p{line-height:1.65}a{color:inherit;text-decoration:none}button{font-family:inherit}img{max-width:100%}:focus-visible{outline:2.5px solid var(--focus);outline-offset:3px;border-radius:6px}summary:focus-visible{outline-offset:4px}.wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 24px}.narrow{max-width:820px}.muted{color:var(--ink-soft)}.center{text-align:center}.grad{background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}.svg{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;vertical-align:-.15em}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.tex .katex-display{margin:.3em 0}.paper{background-color:var(--hero-base);background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:26px 26px;background-position:-1px -1px}.pen-u{background-image:var(--pen-underline);background-repeat:no-repeat;background-position:0 100%;background-size:100% .32em;padding-bottom:.1em}.pen-o{position:relative;display:inline-block;padding:0 .18em}.pen-o:after{content:"";position:absolute;inset:-.18em -.22em -.12em;background:var(--pen-circle) no-repeat center /100% 100%;pointer-events:none}.marker{background:linear-gradient(transparent 58%,var(--marker) 58%);padding:0 .1em}.pen-ink,.stamp{color:var(--pen)}.stamp{display:inline-block;border:2px solid var(--pen);font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:12px;padding:4px 10px;border-radius:6px;transform:rotate(-6deg);background:var(--surface)}.header{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:var(--header-bg);border-bottom:1px solid var(--header-line);box-shadow:0 6px 18px -12px rgba(8,12,22,.55)}.header .row{display:flex;align-items:center;justify-content:space-between;height:64px;gap:14px}.header.is-app .row{height:56px}.logo{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:18px;color:var(--ink);letter-spacing:-.01em}.header .logo{color:#fff}.logo svg{width:32px;height:32px;flex-shrink:0}.nav{display:flex;gap:2px;font-size:14.5px;font-weight:500;align-items:center}.dd>button,.nav>a{color:var(--header-ink);padding:8px 11px;border-radius:8px;cursor:pointer;white-space:nowrap;background:none;border:0;font:inherit;display:inline-flex;align-items:center;gap:5px;transition:color .15s,background .15s}.dd>button:hover,.nav .dd.on>button,.nav .on,.nav>a:hover{color:var(--header-on);background:var(--header-on-bg)}.dd{position:relative}.dd>button .svg{font-size:14px;transition:transform .15s}.dd-menu{position:absolute;top:calc(100% + 6px);left:-8px;min-width:300px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:8px;display:none}.dd.open .dd-menu,.dd:focus-within .dd-menu,.dd:hover .dd-menu{display:block}.dd.open>button .svg,.dd:hover>button .svg{transform:rotate(180deg)}.dd-menu:before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px}.dd-item{display:flex;gap:12px;padding:10px;border-radius:10px;cursor:pointer;transition:background .15s}.dd-item:focus-visible,.dd-item:hover{background:var(--card)}.dd-item b{display:block;font-size:14.5px;color:var(--ink)}.dd-item span{font-size:13px;color:var(--ink-soft)}.dd-item .icon{width:38px;height:38px;font-size:19px}.dd-item .pill.new{color:#fff}.actions{display:flex;align-items:center;gap:8px}.lang{display:flex;border-radius:9px;padding:3px;font-size:12px;font-weight:700;background:var(--header-on-bg)}.lang a{padding:5px 9px;border-radius:6px;color:var(--header-ink);text-align:center}.lang a.on{background:#141b2d;color:#fff}.header .lang a.on,[data-theme=dark] .lang a.on{background:#fff;color:#141b2d}.drawer .lang{background:var(--card);border:1px solid var(--border)}.drawer .lang a{color:var(--ink-soft)}.drawer .lang a.on{color:#fff}[data-theme=dark] .drawer .lang a.on{color:#141b2d}.icon-btn{width:38px;height:38px;border-radius:9px;border:1px solid var(--border);background:transparent;color:var(--header-ink);cursor:pointer;display:grid;place-items:center;font-size:18px;transition:background .15s,color .15s;flex-shrink:0}.icon-btn:hover{background:var(--header-on-bg);color:var(--header-on)}.header .icon-btn{border-color:rgba(255,255,255,.16)}.drawer .icon-btn{color:var(--ink-soft)}.drawer .icon-btn:hover{background:var(--card);color:var(--ink)}.burger{display:none}.signin{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:9px;font-weight:600;font-size:14px;color:#fff;background:#2f8fe0;white-space:nowrap;box-shadow:0 8px 18px -10px rgba(47,143,224,.8);transition:background .15s}.signin:hover{background:#2580cf}.signin.me{background:transparent;color:var(--header-ink);box-shadow:none;padding:4px 10px 4px 4px;border:1px solid var(--border)}.header .signin.me{border-color:rgba(255,255,255,.16)}.header .signin.me .avatar{width:28px;height:28px}.g{width:18px;height:18px;border-radius:50%;background:#fff;display:grid;place-items:center;flex-shrink:0}.g svg{width:12px;height:12px}.avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#2f8fe0,#7c5cfc);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;flex-shrink:0;object-fit:cover}.btn .avatar{width:24px;height:24px;font-size:11px}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--header-ink);font-weight:500;margin-right:auto;margin-left:18px}.back-link:hover{color:var(--header-on)}.drawer-bg{position:fixed;inset:0;background:rgba(8,12,22,.45);z-index:70;opacity:0;pointer-events:none;transition:opacity .2s}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(340px,88vw);background:var(--surface);z-index:71;transform:translateX(100%);transition:transform .22s ease,visibility 0s .22s;display:flex;flex-direction:column;padding:18px;gap:4px;overflow-y:auto;border-left:1px solid var(--border);visibility:hidden}body.drawer-open{overflow:hidden}body.drawer-open .drawer-bg{opacity:1;pointer-events:auto}body.drawer-open .drawer{transform:none;visibility:visible;transition:transform .22s ease}.drawer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.drawer h4{margin:14px 0 4px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.drawer a.item{display:flex;align-items:center;gap:12px;padding:11px 10px;border-radius:10px;font-weight:500}.drawer a.item:hover{background:var(--card)}.drawer a.item .svg{font-size:19px;color:var(--ink-soft)}.drawer-foot{margin-top:auto;display:grid;grid-gap:10px;gap:10px;padding-top:16px;border-top:1px solid var(--border)}.drawer-foot .lang{justify-content:center}.drawer-foot .lang a{flex:1 1;padding:9px;font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border-radius:10px;font-weight:600;font-size:15px;border:0;cursor:pointer;background:var(--btn);color:var(--btn-ink);box-shadow:var(--btn-shadow);font-family:inherit;transition:background .15s,transform .15s,box-shadow .15s;text-align:center;text-decoration:none}.btn:hover{background:var(--btn-hover);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn .svg{font-size:18px}.btn-outline,.btn.ghost{background:var(--surface);color:var(--ink);border:1px solid var(--border);box-shadow:none}.btn-outline:hover,.btn.ghost:hover{background:var(--card)}.btn.violet{background:#7c5cfc;box-shadow:0 10px 24px -12px rgba(124,92,252,.75)}.btn.violet:hover{background:#6d4cf0}.btn.pen{background:#d6383e;box-shadow:0 10px 24px -12px rgba(214,56,62,.7)}.btn.pen:hover{background:#c22f35}.btn.zalo-btn{background:#0068ff;box-shadow:0 10px 24px -12px rgba(0,104,255,.7)}.btn.zalo-btn:hover{background:#005ae0}.btn.sm{padding:9px 14px;font-size:14px}.btn.block{width:100%}.btn.is-disabled,.btn:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.link-arrow{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--blue-ink)}.link-arrow .svg{transition:transform .15s}.link-arrow:hover .svg{transform:translateX(3px)}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;font-size:12.5px;font-weight:700;line-height:1.5}.pill .svg{font-size:14px}.pill.green{background:var(--green-soft);color:var(--green-ink)}.pill.blue{background:var(--blue-soft);color:var(--blue-ink)}.pill.violet{background:var(--violet-soft);color:var(--violet-ink)}.pill.amber{background:var(--amber-soft);color:var(--amber-ink)}.pill.pen{background:var(--pen-soft);color:var(--pen-ink)}.pill.new{background:#d6383e;color:#fff}.pill-xs{padding:0 7px;font-size:10.5px}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:var(--shadow);transition:transform .18s,box-shadow .18s,border-color .18s}a.card{display:block}a.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--blue-line)}.card h3{font-size:18px;margin-bottom:6px}.grid{display:grid;grid-gap:20px;gap:20px}.grid.contact-cards{grid-template-columns:1.3fr 1fr 1fr}.grid.contact-cards.two{grid-template-columns:1fr 1fr}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.section{padding:80px 0}.section.alt{background:var(--surface)}.section.tight{padding:52px 0}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-ink)}.eyebrow:before{content:"";width:18px;height:2px;border-radius:2px;background:var(--pen)}.h2{font-size:34px;margin-top:10px;letter-spacing:-.01em}.sub{color:var(--ink-soft);max-width:620px;margin:12px 0 0}.center .sub{margin:12px auto 0}.icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:22px;flex-shrink:0}.icon.blue{background:var(--blue-soft);color:var(--blue-ink)}.icon.violet{background:var(--violet-soft);color:var(--violet-ink)}.icon.green{background:var(--green-soft);color:var(--green-ink)}.icon.amber{background:var(--amber-soft);color:var(--amber-ink)}.icon.pen{background:var(--pen-soft);color:var(--pen-ink)}.icon.solid-blue{background:#2f8fe0;color:#fff}.icon.solid-violet{background:#7c5cfc;color:#fff}.icon.zalo-tile{background:#0068ff;color:#fff}.icon.sm{width:34px;height:34px;font-size:18px}.icon.logo-tile{background:#141b2d;padding:6px}.icon.logo-tile svg{width:100%;height:100%}.num{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;font-size:14px;font-weight:700;color:var(--blue-ink);background:var(--blue-soft);border:1.5px solid var(--blue-line);flex-shrink:0;font-family:var(--font-serif)}.check{padding:0;margin:0;list-style:none}.check li{display:flex;gap:9px;margin:9px 0;align-items:flex-start}.check li .svg{color:var(--pen);font-size:17px;margin-top:3px;stroke-width:2.4}kbd{display:inline-block;font:600 12.5px ui-monospace,Consolas,monospace;padding:5px 9px;border-radius:7px;background:var(--surface);border:solid var(--border);border-width:1px 1px 3px;color:var(--ink);transition:transform .12s,border-bottom-width .12s,background .12s;line-height:1.2}kbd.down{transform:translateY(2px);border-bottom-width:1px;background:var(--blue-soft);border-color:var(--blue-line)}.tabs{padding:4px;gap:4px;border-radius:999px;background:var(--surface);border:1px solid var(--border);max-width:100%}.tabs,.tabs button{display:inline-flex}.tabs button{padding:9px 20px;border-radius:999px;font-weight:600;font-size:14.5px;color:var(--ink-soft);cursor:pointer;background:none;border:0;font-family:inherit;gap:7px;align-items:center;transition:background .15s,color .15s;white-space:nowrap}.tabs button.on{background:var(--btn);color:#fff}.field{width:100%;padding:11px 14px;border-radius:10px;color:var(--ink);font:inherit}.faq details,.field{border:1px solid var(--border);background:var(--surface)}.faq details{border-radius:14px;padding:16px 20px;margin-bottom:12px;transition:border-color .15s}.faq details[open]{border-color:var(--blue-line)}.faq summary{cursor:pointer;font-weight:600;font-family:var(--font-serif);font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:12px;line-height:1.4}.faq summary::-webkit-details-marker{display:none}.faq summary .svg{transition:transform .15s;color:var(--ink-soft);margin-top:3px}.faq details[open] summary .svg{transform:rotate(180deg)}.faq p{margin:10px 0 0;color:var(--ink-soft)}.win{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);overflow:hidden;text-align:left}.win-bar{gap:8px;height:34px;padding:0 0 0 12px;background:var(--win-bar);font-size:12px;font-weight:600;color:var(--ink-soft);border-bottom:1px solid var(--border)}.win-bar,.win-bar .title{display:flex;align-items:center}.win-bar .title{flex:1 1;gap:7px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.win-bar .title svg{width:15px;height:15px}.win-bar .title.word{color:#2b579a}[data-theme=dark] .win-bar .title.word{color:#8fb4f2}.win-ctl{display:flex;height:100%}.win-ctl span{width:38px;display:grid;place-items:center;font-size:13px;color:var(--ink-soft)}.chat{padding:16px;font-size:14px;display:grid;grid-gap:10px;gap:10px}.bubble{padding:10px 13px;border-radius:12px;max-width:92%;line-height:1.55}.bubble.me{background:var(--blue-soft);justify-self:end;color:var(--ink)}.bubble.ai{background:var(--card);border:1px solid var(--border)}.bubble code{font:12.5px ui-monospace,Consolas,monospace;color:var(--violet-ink);word-break:break-word}.copied{display:flex;gap:6px;align-items:center;font-size:12px;font-weight:600;color:var(--green-ink);margin-top:6px}.word-ribbon{display:flex;gap:14px;font-size:11.5px;padding:6px 14px;color:#2b579a;background:#f3f6fb;border-bottom:1px solid #e2e7f0;white-space:nowrap;overflow:hidden}[data-theme=dark] .word-ribbon{background:#1c2640;color:#8fb4f2;border-color:var(--border)}.word-ribbon b{color:#fff;background:#2b579a;padding:0 6px;border-radius:3px}.word-area{background:#e9edf3;padding:2px 0 6px}[data-theme=dark] .word-area{background:#0f1628}.word-page{background:#fff;color:#1e2430;margin:14px;border-radius:6px;padding:20px 22px;min-height:140px;box-shadow:0 1px 3px rgba(0,0,0,.12);font-size:14px;overflow-x:auto}.word-page .eq-slot{margin-top:12px;min-height:44px}.eq-out{display:inline-block;opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s}.eq-out.show{opacity:1;transform:none}.eq-out .katex{font-size:1.22em;color:#1e2430}.eq-out .katex-display{margin:0}.caret{display:inline-block;width:2px;height:1.1em;background:#1e2430;vertical-align:-.2em;animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.appwin .body{display:grid;grid-template-columns:150px 1fr;min-height:290px}.app-side{background:#141b2d;padding:12px 8px;display:grid;align-content:start;grid-gap:4px;gap:4px}.app-side .brand{display:flex;align-items:center;gap:7px;color:#fff;font-weight:700;font-size:13px;padding:2px 6px 10px}.app-side .brand svg{width:22px;height:22px}.app-side .item{display:flex;align-items:center;gap:8px;font-size:12px;color:#a9b4c7;padding:7px 8px;border-radius:7px}.app-side .item.on{background:#222c43;color:#fff;box-shadow:inset 2px 0 0 #7dd3fc}.app-main{padding:14px 16px;background:#f4f5f7;color:#1e2430;font-size:12.5px;min-width:0}.app-main .app-title{font-family:var(--font-serif);font-size:16px;font-weight:700;margin:0 0 6px}.appwin .quota{display:inline-block;background:#e6f3f6;color:#0b5d73;font-weight:700;font-size:11.5px;padding:4px 10px;border-radius:6px;margin-bottom:10px}.appwin .file{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e3e7ef;border-radius:8px;padding:9px 10px;margin-bottom:7px}.appwin .file>.svg{color:#d6383e;font-size:18px}.appwin .file .meta{flex:1 1;min-width:0}.appwin .file b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appwin .file small{color:#5e6878;font-size:11px}.appwin .bar{height:5px;border-radius:9px;background:#e3e7ef;overflow:hidden;margin-top:5px}.appwin .bar span{display:block;height:100%;background:#0e7490;border-radius:9px}.appwin .app-row{display:flex;justify-content:space-between;align-items:center;margin:9px 0;gap:8px;flex-wrap:wrap;font-weight:600}.appwin .seg{display:inline-flex;background:#eef0f3;border-radius:8px;padding:3px;gap:2px;font-weight:600;font-size:11.5px}.appwin .seg span{padding:5px 12px;border-radius:6px;color:#5e6878}.appwin .seg span.on{background:#cfdbf1;color:#1f2940;box-shadow:inset 0 0 0 1px #b3c3e2}.appwin .app-btn{display:block;text-align:center;background:#0e7490;color:#fff;font-weight:600;padding:9px;border-radius:7px;margin-top:10px;font-size:12.5px}.appwin .ok{color:#15803d;font-weight:700;font-size:11px;display:inline-flex;gap:4px;align-items:center}.hero{padding:64px 0 80px;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;grid-gap:52px;gap:52px;align-items:center}.hero h1{font-size:46px;line-height:1.22;color:var(--hero-ink);letter-spacing:-.015em;margin-top:14px}.hero .lead{color:var(--hero-soft);font-size:18px;max-width:540px;margin:18px 0 28px}.hero .cta-row{display:flex;gap:10px;flex-wrap:wrap}[data-theme=dark] .hero .btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.22)}.hero .trust{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px;font-size:14px;color:var(--hero-soft)}.hero .trust span{display:inline-flex;gap:7px;align-items:center}.hero .trust .svg{color:var(--pen);stroke-width:2.4}.demo-stage{position:relative;padding-bottom:30px;display:grid}.demo-stage .chatwin{width:82%}.demo-stage .wordwin{width:84%;justify-self:end;position:relative;z-index:2}.demo-keys{justify-self:center;margin:12px 0;z-index:3;display:flex;gap:6px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:8px 12px;box-shadow:var(--shadow-lg);font-size:12px;color:var(--ink-soft)}.demo-keys .svg{color:var(--violet);font-size:16px}.note-pen{position:absolute;font-family:var(--font-serif);font-style:italic;color:var(--pen);font-size:15px;white-space:nowrap;right:4px;bottom:0}.pagehead{padding:56px 0 48px;border-bottom:1px solid var(--border)}[data-theme=dark] .pagehead{border-bottom-color:transparent}.pagehead h1{font-size:42px;color:var(--hero-ink)}.pagehead p{color:var(--hero-soft);max-width:640px;margin:12px 0 0}.pagehead.center{text-align:center}.pagehead.center p{margin:12px auto 0}.pagehead-slot{margin-top:24px}.crumbs{font-size:13px;color:var(--hero-soft);margin-bottom:12px;display:flex;flex-wrap:wrap}.crumb,.crumbs{gap:6px;align-items:center}.crumb{display:inline-flex}.crumbs a:hover{color:var(--hero-ink);text-decoration:underline}.pagehead.center .crumbs{justify-content:center}.bento{display:grid;grid-template-columns:1.15fr 1fr 1fr;grid-gap:20px;gap:20px;margin-top:40px}.bento.wide-first{grid-template-columns:1.3fr 1fr 1fr}.bento .tall{grid-row:span 2}.bento .wide{grid-column:span 2}.product{border-radius:20px;padding:30px;position:relative;text-align:left;overflow:hidden}.product.copy{background:linear-gradient(170deg,var(--blue-soft),transparent 62%),var(--surface);border:1px solid var(--blue-line)}.product.pdf{background:linear-gradient(170deg,var(--violet-soft),transparent 70%),var(--surface);border:1px solid var(--violet-line)}.product h3{font-size:26px;margin:16px 0 8px}.product .tag{position:absolute;top:24px;right:24px}.feature-card h3{margin-top:14px}.feature-card p{margin:0}.mini-eq{margin-top:18px;border-radius:12px;background:#fff;color:#1e2430;border:1px solid var(--border);padding:12px 16px;overflow-x:auto}.mini-eq small{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#5e6878;margin-bottom:4px}.mini-eq .katex-display{margin:.3em 0}.stats{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.stat{padding:28px 20px;border-left:1px solid var(--border)}.stat:first-child{border-left:0}.stat .big{font-family:var(--font-serif);font-size:52px;font-weight:600;line-height:1.15;color:var(--ink)}.stat .big small{font-size:17px;color:var(--ink-soft);font-family:var(--font-sans);font-weight:600;margin-left:5px}.stat p{margin:6px 0 0;font-size:14px;color:var(--ink-soft);line-height:1.5}.compare{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px;margin-top:40px}.compare .side{border-radius:18px;padding:26px 24px 24px;border:1px solid var(--border);background:var(--surface);position:relative}.compare .side.blue{border-color:var(--blue-line)}.compare .side.violet{border-color:var(--violet-line)}.compare .side h3{font-size:18px;display:flex;gap:10px;align-items:center;margin-bottom:14px}.compare .raw{font:13.5px/1.75 ui-monospace,Consolas,monospace;color:var(--ink-soft);background:var(--code-bg);border-radius:10px;padding:16px;word-break:break-word}.compare .raw.prose{font-family:inherit;line-height:1.9}.compare .good{background:#fff;color:#1e2430;border-radius:10px;padding:14px 18px;border:1px solid var(--blue-line);font-size:14.5px;line-height:2.2;overflow-x:auto}.compare .good .katex{font-size:1.08em;color:#1e2430}.compare .verdict{position:absolute;top:-14px;right:20px}.compare .pill.verdict{padding:6px 12px}.compare .foot{margin:14px 0 0;font-size:14px}.split{display:grid;grid-template-columns:.9fr 1.1fr;grid-gap:56px;gap:56px;align-items:center}.split.copy-split,.split.rev{grid-template-columns:1.1fr .9fr}.split.copy-split{gap:48px}.steps-list{display:grid;grid-gap:18px;gap:18px;margin-top:26px}.step{display:flex;gap:14px;align-items:flex-start}.step b{display:block;margin-bottom:2px}.cta{border-radius:24px;padding:48px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;overflow:hidden;border:1px solid var(--border)}.cta.paper{background-color:var(--surface)}[data-theme=dark] .cta.paper{background-color:#1b2540}.cta h2{font-size:30px}.price{font-family:var(--font-serif);font-size:34px;font-weight:600;line-height:1.25}.price small{font-family:var(--font-sans);font-size:14px;color:var(--ink-soft);font-weight:500}.tiers{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;margin-top:34px;align-items:stretch}.tier{position:relative;display:flex;flex-direction:column;text-align:left}.tier .per{font-size:13px;color:var(--ink-soft);margin-top:2px}.tier .pages{font-weight:700;margin:14px 0 4px;font-size:15px}.tier .grow{flex:1 1}.tier.featured{border:2px solid var(--blue);background:linear-gradient(180deg,var(--blue-soft),transparent 55%),var(--surface)}.tier.featured .ribbon{position:absolute;top:-13px;left:22px;background:var(--blue);color:#fff;font-size:12px;font-weight:700;padding:4px 12px;border-radius:999px}[data-theme=dark] .tier.featured .ribbon{color:#0e1422}.tier.recommended{box-shadow:0 0 0 3px var(--pen),var(--shadow-lg)}.tier .rec-tag{display:none;position:absolute;top:-13px;right:18px;background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--pen)}.tier.recommended .rec-tag{display:inline-flex}.need{margin:34px auto 0;max-width:760px;text-align:left}.need .head{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;align-items:baseline}.need .head label{font-weight:700;font-size:16px}.need .head b{font-family:var(--font-serif);font-size:22px}.need input[type=range]{width:100%;accent-color:var(--pen);margin:14px 0 6px}.need .scale{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-soft)}.note-sample{font-size:12.5px;color:var(--amber-ink);background:var(--amber-soft);display:inline-block;padding:4px 10px;border-radius:8px;margin-top:14px}.skeleton{display:inline-block;min-width:4em;border-radius:6px;background:linear-gradient(90deg,var(--card),var(--border),var(--card));background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite;color:transparent!important}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.fcard{border-radius:12px;display:grid;place-items:center;min-height:140px;position:relative;overflow:hidden;color:#1e2430;margin-bottom:14px;background-image:linear-gradient(rgba(20,40,80,.07) 1px,transparent 0),linear-gradient(90deg,rgba(20,40,80,.07) 1px,transparent 0);background-size:18px 18px;padding:10px}.fcard .katex{font-size:1.3em}.fcard .katex-display{margin:0}.fcard.c1{background-color:#eaf3ff}.fcard.c2{background-color:#f1ecff}.fcard.c3{background-color:#e8f7ee}.fcard.c4{background-color:#fff4e0}.fcard.c5{background-color:#ffeeee}.fcard.c6{background-color:#edf2f8}[data-theme=dark] .fcard{filter:brightness(.93)}.card.featured-post{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:28px;gap:28px;align-items:center}.featured-post .fcard{min-height:260px;margin:0}.featured-post .fcard .katex{font-size:2em}.post-card{padding:16px}.post-card h3{margin-top:10px;font-size:17px}.post-card p{margin:6px 0 0;font-size:13.5px}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:7px 13px;border-radius:999px;border:1px solid var(--border);font-size:13px;color:var(--ink-soft);background:var(--surface);cursor:pointer;font-family:inherit;text-align:left;transition:border-color .15s,background .15s,color .15s}.chip:hover{border-color:var(--blue-line);color:var(--ink)}.chip.is-selected,.chip.on{background:var(--btn);color:#fff;border-color:transparent}.chip-sub{display:block;font-size:11.5px;font-weight:500;opacity:.85;margin-top:2px}.two-col{display:grid;grid-gap:44px;gap:44px}.two-col.toc-left{grid-template-columns:240px minmax(0,1fr)}.two-col.toc-right{grid-template-columns:minmax(0,1fr) 240px}.two-col.halves{grid-template-columns:1fr 1fr;gap:28px}.toc{position:-webkit-sticky;position:sticky;top:96px;font-size:14px;align-self:start}.toc b{display:block;margin-bottom:8px;font-size:13px}.toc a{display:block;padding:6px 12px;border-left:2px solid var(--border);color:var(--ink-soft)}.toc a.on,.toc a:hover{color:var(--ink)}.toc a.on{border-left-color:var(--pen);font-weight:600}.article{font-size:16.5px;min-width:0}.article h2{font-size:26px;margin:34px 0 10px;scroll-margin-top:90px}.article h3{font-size:19px;margin:26px 0 8px}.article p{margin:0 0 16px}.article ol,.article ul{margin:0 0 16px;padding-left:22px}.article li{margin-bottom:8px;line-height:1.65}.article li::marker{color:var(--pen)}.article code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;background:var(--blue-soft);border-radius:4px;padding:2px 6px}.article pre{background:var(--code-bg);border:1px solid var(--border);border-radius:12px;padding:16px;overflow:auto;font-size:13.5px}.article pre code{background:none;padding:0}.article a:not(.btn):not(.link-arrow){color:var(--blue-ink);text-decoration:underline;text-underline-offset:2px}.article img{display:block;width:100%;height:auto;margin:20px 0;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.article table{width:100%;border-collapse:collapse;margin:0 0 24px;font-size:14.5px;display:block;overflow-x:auto}.article td,.article th{text-align:left;padding:10px 14px;border:1px solid var(--border)}.article th{background:var(--blue-soft);color:var(--blue-ink);font-weight:600}.article tr:nth-child(2n) td{background:var(--card)}.article>.fcard{margin:8px 0 20px;min-height:120px}.article .cta{padding:26px;margin:34px 0 8px}.article .cta h3{font-size:20px}.article.card{padding:34px}.article.card h2:first-child{margin-top:0}.timeline{border-left:2px solid var(--border);margin-left:10px;padding-left:28px}.tl{position:relative;margin-bottom:26px}.tl:before{content:"";position:absolute;left:-37px;top:28px;width:14px;height:14px;border-radius:50%;background:var(--surface);border:3px solid var(--blue)}.tl.latest:before{border-color:var(--pen)}.tl .tl-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tl .tl-head h2{font-size:24px}.tl .change{margin:10px 0 0;display:flex;gap:10px;align-items:baseline}.tl .change .pill{flex-shrink:0}.search{display:flex;align-items:center;gap:10px;max-width:520px;margin:22px 0 0;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:4px 6px 4px 14px;box-shadow:var(--shadow);color:var(--ink-soft)}.pagehead-slot .search{margin-top:0}.search input{flex:1 1;border:0;background:transparent;font:inherit;color:var(--ink);padding:10px 0;outline:none;min-width:0}.search:focus-within{outline:2.5px solid var(--focus);outline-offset:2px}.notfound{padding:110px 0;text-align:center}.notfound .big{font-family:var(--font-serif);font-size:116px;line-height:1.2;color:var(--hero-ink)}.download-card{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:30px;border-color:var(--blue-line)}.download-card .download-logo{width:64px;height:64px;display:block;flex-shrink:0}.download-card .download-logo svg{width:64px;height:64px}.download-card .grow{flex:1 1;min-width:220px}.download-card h2{font-size:26px}.download-card p{margin:4px 0 0}.illus{border-radius:12px;border:1px solid var(--border);background:var(--card);padding:16px;display:flex;align-items:center;justify-content:center;gap:10px;min-height:110px;flex-wrap:wrap}.illus.paper-white{background:#fff;color:#1e2430}.footer{color:#a9b4c7;font-size:14px;padding:52px 0 26px;background-color:#141b2d;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 0);background-size:26px 26px}[data-theme=dark] .footer{background-color:#0b101c;border-top:1px solid var(--border)}.footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;grid-gap:28px;gap:28px}.footer .cols p{max-width:330px}.footer b{color:#fff;display:block;margin-bottom:12px;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase}.footer a{display:block;margin:8px 0;cursor:pointer;transition:color .15s;overflow-wrap:anywhere}.footer a:hover{color:#fff}.footer a.logo{color:#fff;display:inline-flex;margin:0}.footer .bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #26314a;margin-top:34px;padding-top:18px;font-size:13px}.footer .bottom a{display:inline;margin:0}.zalo{position:fixed;right:20px;bottom:20px;z-index:30;display:inline-flex;align-items:center;gap:8px;padding:11px 16px 11px 12px;border-radius:999px;background:#0068ff;color:#fff;font-weight:600;font-size:14px;box-shadow:0 12px 26px -10px rgba(0,104,255,.75);transition:transform .15s}.zalo:hover{transform:translateY(-2px)}.zalo .svg{font-size:20px;transform-origin:50% 60%;animation:zalo-nudge 4s ease-in-out 1.5s infinite}.zalo:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;animation:zalo-ring 4s ease-out 1.5s infinite}@keyframes zalo-ring{0%{box-shadow:0 0 0 0 rgba(0,104,255,.38)}40%,to{box-shadow:0 0 0 12px rgba(0,104,255,0)}}@keyframes zalo-nudge{0%,78%,to{transform:rotate(0)}82%{transform:rotate(-12deg)}86%{transform:rotate(10deg)}90%{transform:rotate(-6deg)}94%{transform:rotate(3deg)}}.reveal{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}.reveal.in,.reveal.in-view{opacity:1;transform:none}body.appshell .footer,body.appshell .zalo,body.minimal .footer,body.minimal .zalo{display:none!important}.shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:calc(100vh - 56px)}.acc-side{border-right:1px solid var(--border);padding:24px 14px;position:-webkit-sticky;position:sticky;top:57px;height:calc(100vh - 57px);display:flex;flex-direction:column;gap:4px;background:var(--surface)}.acc-side a,.acc-side button{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;font-size:14.5px;font-weight:500;color:var(--ink-soft);cursor:pointer;transition:background .15s,color .15s;background:none;border:0;font-family:inherit;text-align:left;width:100%}.acc-side a .svg,.acc-side button .svg{font-size:19px}.acc-side a:hover,.acc-side button:hover{background:var(--card);color:var(--ink)}.acc-side a.on{background:var(--blue-soft);color:var(--blue-ink)}.acc-side .spacer{flex:1 1}.acc-side .help{font-size:13px;color:var(--ink-soft);padding:12px;border:1px dashed var(--border);border-radius:12px;margin-bottom:8px;line-height:1.5}.acc-side .help a{display:inline;padding:0;color:var(--blue-ink);font-weight:600;font-size:13px}.acc-side .help a:hover{background:none;text-decoration:underline}.dash{padding:30px 34px 60px;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:22px;gap:22px;align-content:start}.dash h2.sec{font-size:22px;display:flex;align-items:center;gap:10px;margin-top:10px;scroll-margin-top:80px;flex-wrap:wrap}.dash h2.sec .count{font-family:var(--font-sans);font-size:14px;font-weight:500;color:var(--ink-soft)}.hello{display:flex;align-items:center;gap:16px;flex-wrap:wrap;scroll-margin-top:80px}.hello .avatar{width:56px;height:56px;font-size:22px}.hello h1{font-size:30px}.hello p{margin:2px 0 0;color:var(--ink-soft);font-size:14.5px;word-break:break-word}.hello .grow{flex:1 1;min-width:200px}.banner{display:flex;gap:14px;align-items:center;padding:16px 18px;border-radius:14px;border:1px solid;flex-wrap:wrap}.banner .msg{flex:1 1;min-width:200px;font-size:14.5px;line-height:1.55}.banner .msg b{display:block;font-size:15.5px}.banner.blue{background:var(--blue-soft);border-color:var(--blue-line)}.banner.violet{background:var(--violet-soft);border-color:var(--violet-line)}.banner.amber{background:var(--amber-soft);border-color:rgba(217,119,6,.32)}.banner.pen{background:var(--pen-soft);border-color:rgba(214,56,62,.32)}.banner .icon{background:var(--surface)}.overview{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);grid-gap:22px;gap:22px;align-items:center}.member{aspect-ratio:1.6/1;width:100%;max-width:400px;border-radius:18px;padding:20px 22px;color:#fff;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;transition:transform .25s ease;box-shadow:0 30px 50px -28px rgba(20,27,45,.75);background:radial-gradient(120% 90% at 100% 0,rgba(124,92,252,.5),transparent 55%),radial-gradient(90% 80% at 0 100%,rgba(47,143,224,.42),transparent 60%),linear-gradient(140deg,#141b2d,#1d2846)}.member:before{background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 0);background-size:22px 22px;-webkit-mask:linear-gradient(160deg,#000 20%,transparent 85%);mask:linear-gradient(160deg,#000 20%,transparent 85%)}.member:after,.member:before{content:"";position:absolute;inset:0}.member:after{background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.1) 48%,transparent 60%);pointer-events:none}.member>*{position:relative;z-index:1}.member .top{display:flex;justify-content:space-between;align-items:flex-start}.member .top .logo{color:#fff;font-size:15px}.member .top .logo svg{width:26px;height:26px}.member .chip-gold{width:36px;height:27px;border-radius:7px;background:linear-gradient(135deg,#f6d68b,#d6a64a);box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}.member .plan{font-family:var(--font-serif);font-size:21px;font-weight:600;line-height:1.28}.member .label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.7)}.member .bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}.member .val{font-size:13.5px;font-weight:600;margin-top:2px;letter-spacing:.02em}.member .stamp{position:absolute;right:20px;top:40%;border-color:#ff8a8a;color:#ffb1b1;background:rgba(20,27,45,.55);font-size:16px;padding:6px 14px;z-index:2}.member.expired{filter:saturate(.45)}.metrics{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px}.metrics .metric{padding:18px 20px}.metric{display:flex;align-items:center;gap:18px}.ring{width:92px;height:92px;flex-shrink:0;position:relative}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:9}.ring .track{stroke:var(--border)}.ring .fill{stroke-linecap:round;transition:stroke-dashoffset 1.1s cubic-bezier(.2,.8,.2,1)}.ring .ring-center{position:absolute;inset:0;display:grid;place-items:center;align-content:center;text-align:center}.ring .ring-center b{font-family:var(--font-serif);font-size:25px;line-height:1.1}.ring .ring-center small{font-size:11.5px;color:var(--ink-soft);margin-top:2px}.metric h3{font-size:17px;margin-bottom:4px}.metric p{margin:0;font-size:13.5px;color:var(--ink-soft);line-height:1.5}.spark{width:100%;height:90px;display:block}.spark .area{opacity:.15}.spark .line{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.spark-labels{font-size:12px;color:var(--ink-soft);margin-top:6px}.card-head,.spark-labels{display:flex;justify-content:space-between}.card-head{gap:12px;flex-wrap:wrap;align-items:baseline}.card-head h3{margin:0}.feature-row{display:flex;align-items:center;gap:14px;padding:16px 0;border-top:1px solid var(--border);flex-wrap:wrap}.feature-row:first-child{border-top:0;padding-top:4px}.feature-row:last-child{padding-bottom:4px}.feature-row .grow{flex:1 1;min-width:170px}.feature-row .grow b{display:block}.feature-row .grow span{font-size:14px;color:var(--ink-soft)}.device{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);flex-wrap:wrap}.device .grow{flex:1 1;min-width:150px}.device .grow b{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.device .grow>span{font-size:13.5px;color:var(--ink-soft)}.device .pill{font-size:11px;padding:2px 8px}.device.empty{border-style:dashed;border-width:2px;background:transparent;color:var(--ink-soft)}.device.empty .icon{border:2px dashed var(--border)}.day-group h4{font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);margin:18px 0 4px}.day-group:first-child h4{margin-top:0}.event{display:flex;gap:14px;align-items:flex-start;padding:12px 0;position:relative}.event:before{content:"";position:absolute;left:16px;top:48px;bottom:-6px;width:2px;background:var(--border)}.event:last-child:before{display:none}.event .dot{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:16px;position:relative;z-index:1}.event .dot.buy{background:var(--green-soft);color:var(--green-ink)}.event .dot.use{background:var(--card);color:var(--ink-soft);border:1px solid var(--border)}.event .grow{flex:1 1;min-width:0}.event .delta{font-size:13.5px}.event .delta .plus{color:var(--green-ink);font-weight:700}.event .amt{font-weight:700;white-space:nowrap}.event .time{font-size:13px;color:var(--ink-soft);white-space:nowrap}.tabbar{display:none}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.signed-out{max-width:460px;margin:0 auto;text-align:center}.dlg-bg{position:fixed;inset:0;background:rgba(8,12,22,.5);z-index:80;display:grid;place-items:center;padding:20px;animation:fade-in .18s ease}.dlg{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:26px;max-width:430px;width:100%;box-shadow:var(--shadow-lg);animation:modal-in .22s ease}.dlg h3{font-size:20px;margin:14px 0 6px}.dlg p{margin:0}.dlg .actions-row{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;flex-wrap:wrap}.done-wrap{min-height:calc(100vh - 64px);display:grid;place-items:center;padding:56px 20px}.done-wrap .done-col{display:grid;justify-items:center;width:100%;text-align:center}.done-wrap h1{font-size:30px;color:var(--hero-ink)}.tick-draw{width:92px;height:92px}.tick-draw circle{fill:none;stroke:var(--green);stroke-width:3;stroke-dasharray:280;stroke-dashoffset:280;animation:draw .7s ease forwards}.tick-draw path{fill:none;stroke:var(--green);stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:70;stroke-dashoffset:70;animation:draw .45s ease .55s forwards}.tick-draw.warn circle,.tick-draw.warn path{stroke:var(--amber)}@keyframes draw{to{stroke-dashoffset:0}}.receipt{position:relative;background:var(--surface);padding:30px 28px 26px;max-width:460px;width:100%;box-shadow:var(--shadow-lg);margin:14px 0 18px;text-align:left}.receipt:after,.receipt:before{content:"";position:absolute;left:0;right:0;height:12px;background:linear-gradient(-45deg,transparent 8px,var(--surface) 0) 0 0 /16px 12px repeat-x,linear-gradient(45deg,transparent 8px,var(--surface) 0) 0 0 /16px 12px repeat-x}.receipt:before{top:-11px;transform:rotate(180deg)}.receipt:after{bottom:-11px}.receipt .r-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:10px;flex-wrap:wrap}.receipt .r-head .logo{font-size:16px}.receipt .r-line{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-top:1.5px dashed var(--border);font-size:14.5px;flex-wrap:wrap;align-items:baseline}.receipt .r-line:first-of-type{border-top:0}.receipt .total{font-family:var(--font-serif);font-size:24px;font-weight:600}.receipt .key{margin-top:10px}.confetti{position:fixed;top:-14px;width:8px;height:12px;border-radius:2px;z-index:90;pointer-events:none;animation:fall linear forwards}@keyframes fall{to{transform:translateY(105vh) rotate(540deg);opacity:.85}}.callout{display:flex;gap:12px;align-items:flex-start;background:var(--blue-soft);border:1px solid var(--blue-line);border-radius:10px;padding:14px 16px;margin-top:12px;font-size:14.5px;color:var(--ink)}.callout>*{min-width:0;overflow-wrap:break-word}.callout strong{color:var(--blue-ink)}.callout.is-warn{background:var(--amber-soft);border-color:rgba(217,119,6,.35)}.callout.is-warn strong{color:var(--amber-ink)}.input,.select{width:100%;padding:13px 14px;border:1px solid var(--border-strong);border-radius:10px;margin:8px 0 20px;font-size:16px;font-family:inherit;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-xs);transition:border-color .15s ease,box-shadow .15s ease}.input:focus,.select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.hint{font-size:13px;color:var(--ink-soft);margin:-14px 0 20px}.amount-row{display:flex;justify-content:space-between;align-items:baseline;padding-top:14px;border-top:1.5px dashed var(--border);margin-bottom:20px}.amount-row .amount{font-size:26px;font-weight:700;font-family:var(--font-serif)}.method-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin:8px 0 16px}.method-option{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface);color:var(--ink);font-family:inherit;text-align:left;cursor:pointer;box-shadow:var(--shadow-xs);transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.method-option strong{font-size:14px}.method-option span{font-size:12.5px;color:var(--ink-soft)}.method-option:hover{border-color:var(--blue)}.method-option:focus-visible{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.method-option.is-selected{border-color:var(--blue);background:var(--blue-soft)}.modal-overlay{position:fixed;inset:0;background:rgba(8,12,22,.55);display:flex;align-items:center;justify-content:center;padding:20px;z-index:80;animation:fade-in .18s ease}.modal{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-lg);max-width:440px;width:100%;padding:30px;position:relative;max-height:90vh;overflow-y:auto;animation:modal-in .22s ease}.modal h2{font-size:24px;margin-bottom:8px}.modal-close{position:absolute;top:14px;right:14px;background:none;border:none;cursor:pointer;color:var(--ink-soft);font-size:18px;line-height:1;padding:6px;border-radius:6px}.modal-close:hover{color:var(--ink);background:var(--card)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.qr-box{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.qr-frame{background:#fff;padding:14px;border-radius:12px;border:1px solid var(--border);box-shadow:var(--shadow)}.qr-frame.is-expired{position:relative}.qr-frame.is-expired>:first-child{opacity:.25;filter:grayscale(1)}.qr-expired-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:15px;color:#c23b3b}.status-pill{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-soft)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--blue);animation:pulse-dot 1.3s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.countdown{font-size:14px;color:var(--ink-soft);background:var(--blue-soft);border:1px solid var(--blue-line);border-radius:999px;padding:5px 14px}.countdown strong{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--blue-ink)}.countdown.is-urgent{background:var(--pen-soft);border-color:var(--pen)}.countdown.is-urgent strong{color:var(--pen-ink)}.bank-info{display:flex;align-items:center;gap:10px;width:100%;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 14px;text-align:left}.bank-logo{width:40px;height:40px;object-fit:contain;border-radius:6px;flex-shrink:0;background:#fff}.bank-details{display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--ink-soft)}.bank-details strong{font-size:13.5px;color:var(--ink)}.order-meta{display:flex;flex-direction:column;gap:4px;width:100%;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 14px;font-size:13px;color:var(--ink-soft)}.summary-list{margin-top:18px;border-top:1.5px solid var(--border)}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border);font-size:14.5px}.summary-row:last-child{border-bottom:none}.success{padding:22px;border-radius:12px;background:var(--green-soft);border:1px solid rgba(22,163,74,.3)}.key{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:20px;font-weight:700;letter-spacing:.03em;text-align:center;color:var(--blue-ink);background:var(--blue-soft);border:1.5px dashed var(--blue);padding:16px;border-radius:10px;word-break:break-all}.tool-badge{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.02em;color:var(--ink-soft);background:var(--card);border:1px solid var(--border);border-radius:999px;padding:3px 10px;margin-bottom:12px}.tool-badge.is-live{color:var(--green-ink);background:var(--green-soft);border-color:transparent}.tool-cta{display:inline-flex;gap:6px;align-items:center;margin-top:12px;font-weight:600;font-size:14px;color:var(--blue-ink)}.prompt-output{background:#141b2d;border-radius:14px;padding:20px 22px 22px;margin-top:4px;box-shadow:var(--shadow-lg)}[data-theme=dark] .prompt-output{background:#0b101c;border:1px solid var(--border)}.prompt-output-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.prompt-output-head h3{color:#fff;font-size:15px;margin:0}.prompt-copy-btn{flex:none;font-family:inherit;font-size:13.5px;font-weight:600;color:#141b2d;background:#fff;border:none;border-radius:8px;padding:8px 14px;cursor:pointer;transition:transform .12s ease,filter .12s ease}.prompt-copy-btn:hover{filter:brightness(.95)}.prompt-copy-btn:active{transform:translateY(1px)}.prompt-copy-btn.is-copied{background:#e7f6ec;color:#166534}.prompt-box{margin:0;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.2px;line-height:1.65;color:#dce6f5;max-height:360px;overflow-y:auto}.tool-workflow{display:flex;flex-direction:column;gap:10px;max-width:640px;margin:0 auto}.tool-workflow-step{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--ink-soft)}.tool-workflow-step b{color:var(--ink);font-weight:600}.tool-workflow-dot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--pen);margin-top:8px}.symbol-legend code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85em;background:var(--blue-soft);border-radius:4px;padding:3px 8px;white-space:nowrap}.check-row{display:flex;gap:10px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--border);font-size:14px}.check-row:last-child{border-bottom:none}.check-icon{flex:none;width:20px;text-align:center;font-weight:700}.check-icon.is-warn{color:var(--amber)}.check-icon.is-ok{color:var(--green)}.check-row h4{margin:0 0 2px;font-size:14.5px;font-family:var(--font-sans)}.check-row p{margin:0;color:var(--ink-soft);font-size:13.5px}.steps{display:flex;flex-direction:column;gap:16px;max-width:640px;margin:0 auto}.step-card{display:flex;gap:18px;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:22px 24px;box-shadow:var(--shadow);text-align:left}.step-num{flex:none;width:32px;height:32px;border-radius:50%;color:var(--blue-ink);background:var(--blue-soft);border:1.5px solid var(--blue-line);font-weight:700;font-family:var(--font-serif);display:flex;align-items:center;justify-content:center}.step-card h3{font-size:18px;margin-bottom:6px}.step-card p{margin:0}.step-content{flex:1 1;min-width:0}.step-image{display:block;width:100%;height:auto;margin-top:14px;border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow)}.video-embed{max-width:720px;margin:0 auto;aspect-ratio:16/9;border-radius:16px;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow);background:var(--surface)}.video-embed iframe{display:block;width:100%;height:100%;border:0}.bento>*,.compare>*,.demo-stage>*,.grid>*,.hero-grid>*,.overview>*,.split>*,.tiers>*,.two-col>*{min-width:0}@media (max-width:1060px){.hero-grid,.split,.split.copy-split,.split.rev{grid-template-columns:1fr;gap:40px}.stats{grid-template-columns:repeat(3,1fr)}.stat:nth-child(4){border-left:0}.stat:nth-child(n+4){border-top:1px solid var(--border)}}@media (max-width:900px){.header .lang,.nav{display:none}.burger{display:grid}.actions .signin .txt{display:none}.actions .signin:not(.me){padding:9px}.g3,.g4,.tiers{grid-template-columns:repeat(2,1fr)}.bento,.bento.wide-first,.grid.contact-cards{grid-template-columns:1fr 1fr}.bento .tall{grid-row:auto;grid-column:span 2}.footer .cols{grid-template-columns:1fr 1fr}.overview{grid-template-columns:1fr}.shell{grid-template-columns:minmax(0,1fr)}.acc-side{display:none}.dash{padding:24px 20px 100px}.tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:45;background:var(--surface);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.tabbar a,.tabbar button{display:grid;justify-items:center;grid-gap:3px;gap:3px;font-size:11px;color:var(--ink-soft);padding:6px 2px;border-radius:10px;cursor:pointer;background:none;border:0;font-family:inherit}.tabbar .svg{font-size:21px}.tabbar a.on{color:var(--blue-ink)}.card.featured-post,.two-col.halves,.two-col.toc-left,.two-col.toc-right{grid-template-columns:1fr}.toc{display:none}}@media (max-width:640px){.wrap{padding:0 16px}.hero{padding:40px 0 56px}.hero h1{font-size:33px}.pagehead{padding:40px 0 36px}.pagehead h1{font-size:30px}.h2{font-size:26px}.section{padding:56px 0}.bento,.bento.wide-first,.compare,.g2,.g3,.g4,.grid.contact-cards,.tiers{grid-template-columns:1fr}.bento .tall,.bento .wide{grid-column:auto}.stats{grid-template-columns:1fr 1fr}.stat{border-left:0!important;border-top:1px solid var(--border);padding:20px 6px}.stat:nth-child(-n+2){border-top:0}.stat .big{font-size:38px}.demo-stage .chatwin,.demo-stage .wordwin{width:100%}.note-pen{display:none}.cta{flex-direction:column;text-align:center;padding:30px 20px}.appwin .body,.footer .cols{grid-template-columns:1fr}.app-side{display:none}.zalo{padding:13px}.zalo .txt{display:none}.member{padding:18px;border-radius:16px}.member .plan{font-size:20px}.member .val{font-size:13px}.member .chip-gold{width:34px;height:26px}.ring{width:88px;height:88px}.ring .ring-center b{font-size:23px}.tabs button{padding:9px 14px}.header .row{gap:8px}.logo{font-size:17px}.back-link{margin-left:8px}.article.card{padding:22px 18px}.modal{padding:24px 20px}.method-options{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}