:root{--bg:#faf9f5;--bg-soft:#f1efe7;--surface:#fff;--surface-hover:#f5f3ec;--border:#e7e3d8;--text:#1c2430;--text-dim:#6b6558;--grad-1:#c1442e;--grad-2:#c1442e;--grad-3:#c1442e;--accent:#c1442e;--accent-rgb:193,68,46;--teal:#2e6e5e;--teal-strong:#6fcdb0;--radius:16px;--header-bg:hsla(48,33%,97%,.8);--header-shadow:0 2px 8px rgba(28,36,48,.06);--card-fill:#fff}[data-theme=dark]{--bg:#232320;--bg-soft:#2b2a26;--surface:#2e2d28;--surface-hover:#37362f;--border:#423f37;--text:#edeae2;--text-dim:#a8a297;--grad-1:#e0684e;--grad-2:#e0684e;--grad-3:#e0684e;--accent:#e0684e;--accent-rgb:224,104,78;--teal:#5a9484;--teal-strong:#1f5b4d;--header-bg:rgba(35,35,32,.7);--header-shadow:none;--card-fill:#2e2d28}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}a{color:inherit;text-decoration:none}@font-face{font-family:Fraunces;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/fraunces-latin.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:Fraunces;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/fraunces-latin-ext.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:Fraunces;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/fraunces-vietnamese.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}h1,h2,h3{font-family:Fraunces,Georgia,serif}.grad-text{background:linear-gradient(120deg,var(--grad-1),var(--grad-2),var(--grad-3));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.glow-bg{position:relative}.glow-bg:before{content:"";position:absolute;top:-20%;left:50%;transform:translateX(-50%);width:800px;height:800px;background:radial-gradient(circle,rgba(var(--accent-rgb),.18),transparent 60%);filter:blur(60px);z-index:0;pointer-events:none;will-change:transform;transform:translateX(-50%) translateZ(0);contain:paint}@media (max-width:768px){.glow-bg:before{width:420px;height:420px;filter:blur(40px)}}.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:12px;font-weight:600;font-size:16px;cursor:pointer;border:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn-primary{background:linear-gradient(120deg,var(--grad-1),var(--grad-2));color:#fff;box-shadow:0 8px 30px rgba(var(--accent-rgb),.35)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(var(--accent-rgb),.5)}.btn-ghost{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-ghost:hover{background:var(--surface-hover)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px;transition:transform .25s ease,background .25s ease,border-color .25s ease}.card:hover{transform:translateY(-4px)}.container{max-width:1140px;margin:0 auto;padding:0 24px}.section{padding:96px 0;position:relative;z-index:1}@media (max-width:768px){.section{padding:64px 0}}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.nav-link{color:var(--text-dim);font-size:15px;padding:8px 12px;border-radius:8px;transition:color .2s,background .2s}.nav-link:hover{color:var(--text);background:var(--surface)}.free-pill{border:1.5px solid transparent;background-image:linear-gradient(var(--card-fill),var(--card-fill)),linear-gradient(120deg,var(--grad-1),var(--grad-2),var(--grad-3));background-origin:border-box;background-clip:padding-box,border-box;transition:transform .18s ease,box-shadow .18s ease,color .18s ease}.free-pill:hover{background-image:linear-gradient(120deg,var(--grad-1),var(--grad-2),var(--grad-3)),linear-gradient(120deg,var(--grad-1),var(--grad-2),var(--grad-3));color:#fff;transform:translateY(-2px);box-shadow:0 6px 18px rgba(var(--accent-rgb),.3)}body,html{overflow-x:clip;max-width:100%}*{min-width:0}h1,h2,h3,p{overflow-wrap:break-word;word-wrap:break-word}.content-prose h1{font-size:clamp(28px,5vw,40px);font-weight:800;margin:0 0 20px;line-height:1.15}.content-prose h2{font-size:24px;font-weight:700;margin:36px 0 14px}.content-prose h3{font-size:19px;font-weight:700;margin:28px 0 10px}.content-prose p{font-size:16px;line-height:1.8;color:var(--text-dim);margin:0 0 16px}.content-prose ol,.content-prose ul{padding-left:22px;margin:0 0 16px;color:var(--text-dim);line-height:1.9}.content-prose a{color:var(--grad-1);text-decoration:underline}.content-prose strong{color:var(--text)}.content-prose code{background:var(--bg-soft);padding:2px 6px;border-radius:6px;font-size:14px}.tool-card{border:1.5px solid transparent;border-radius:var(--radius);background-image:linear-gradient(var(--card-fill),var(--card-fill)),linear-gradient(120deg,var(--grad-1),var(--grad-2),var(--grad-3));background-origin:border-box;background-clip:padding-box,border-box;padding:24px;transition:transform .2s ease,box-shadow .2s ease}.tool-card-link:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(var(--accent-rgb),.22)}.tool-card-soft{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:24px}.combo-card{border:1.5px solid transparent;background-image:linear-gradient(var(--card-fill),var(--card-fill)),linear-gradient(120deg,var(--grad-1),var(--grad-2),var(--grad-3));background-origin:border-box;background-clip:padding-box,border-box;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.combo-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(var(--accent-rgb),.28)}.btn-grad-pill{border:1.5px solid transparent;border-radius:999px;color:var(--text);background-image:linear-gradient(var(--card-fill),var(--card-fill)),linear-gradient(120deg,var(--grad-1),var(--grad-2),var(--grad-3));background-origin:border-box;background-clip:padding-box,border-box;transition:transform .18s ease,box-shadow .18s ease,color .18s ease}.btn-grad-pill:hover{background-image:linear-gradient(120deg,var(--grad-1),var(--grad-2),var(--grad-3)),linear-gradient(120deg,var(--grad-1),var(--grad-2),var(--grad-3));color:#fff;transform:translateY(-2px);box-shadow:0 6px 18px rgba(var(--accent-rgb),.3)}.tool-search{border:1.5px solid transparent;background-origin:border-box;background-clip:padding-box,border-box;transition:box-shadow .18s ease,background-image .18s ease}.tool-search,.tool-search:focus{background-image:linear-gradient(var(--card-fill),var(--card-fill)),linear-gradient(120deg,var(--grad-1),var(--grad-2),var(--grad-3))}.tool-search:focus{outline:none;box-shadow:0 0 0 3px rgba(var(--accent-rgb),.18)}.tool-search::placeholder{color:var(--text-dim)}select option{background-color:#fff;color:#1c2430}[data-theme=dark] select option{background-color:#2e2d28;color:#edeae2}