.df-blog-wrapper{--df-green:#22C55E;--df-green-2:#16A34A;--df-green-3:#15803D;--df-green-bright:#4ADE80;--df-ink:#06280E;--df-ink-2:#0B2E12;--df-text:#1A2E1F;--df-muted:#4B6352;--df-mint:#F0FDF4;--df-mint-2:#DCFCE7;--df-line:#C9E6D1;--df-white:#FFFFFF;--df-gold:#EAB308;--df-blue:#2563EB;--df-warn:#DC2626;--df-shadow:0 18px 50px rgba(6,40,14,.08);--df-radius:18px;--df-bg:#F7FBF8;font-family:Poppins,system-ui,sans-serif;color:var(--df-text);background:var(--df-bg);line-height:1.7;font-weight:400;font-size:17px;-webkit-font-smoothing:antialiased;width:100%;min-width:0}.df-blog-wrapper *,.df-blog-wrapper :after,.df-blog-wrapper :before{box-sizing:border-box}.df-blog-wrapper img{max-width:100%;height:auto}.df-blog-wrapper a{color:var(--df-green-3);text-decoration:underline;text-underline-offset:2px}.df-blog-wrapper a:hover{color:var(--df-green-2)}.df-wrap{max-width:1280px;margin:0 auto;padding:0 24px}.df-layout,.df-wrap{width:100%;box-sizing:border-box}.df-layout{display:grid;grid-template-columns:300px 1fr;gap:36px;padding:48px 24px 80px;align-items:start}.df-left-col{display:flex;flex-direction:column;gap:24px;min-width:0}.df-blog-wrapper article{min-width:0;overflow:hidden}.df-hero{background:radial-gradient(900px 420px at 90% -10%,rgba(34,197,94,.28),transparent 60%),linear-gradient(180deg,#06280E,#0B3A16 55%,#0E4A1C);color:#fff;padding:72px 0 56px;position:relative;overflow:hidden;width:100%;box-sizing:border-box}.df-hero .df-wrap{overflow:visible}.df-hero:after{content:"";position:absolute;right:-80px;bottom:-80px;width:360px;height:360px;background:linear-gradient(135deg,#12D55F,#00752B);opacity:.18;clip-path:polygon(25% 6%,75% 6%,100% 50%,75% 94%,25% 94%,0 50%)}.df-kicker{color:var(--df-green-bright);font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px}.df-hero h1{font-size:clamp(28px,4.5vw,48px);line-height:1.15;margin:12px 0 18px;font-weight:700;letter-spacing:-.02em;color:#ffffff}.df-deck{font-size:18px;max-width:760px;color:#E7F7EB;font-weight:300;margin:0 0 24px;line-height:1.72}.df-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:28px;font-size:13px;color:#C9E6D1;padding-top:20px;border-top:1px solid rgba(255,255,255,.12)}.df-meta strong{color:#fff;font-weight:600}.df-meta div{color:rgba(255,255,255,.9)!important}.df-toc{background:#fff;border:1px solid var(--df-line);border-radius:var(--df-radius);padding:18px 16px;box-shadow:var(--df-shadow)}.df-toc h2{font-size:12px;margin:0 0 10px;color:var(--df-ink);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.df-toc a{display:block;font-size:13px;line-height:1.35;padding:7px 8px;border-radius:8px;text-decoration:none;color:var(--df-muted);transition:background .15s,color .15s}.df-toc a:hover{background:var(--df-mint);color:var(--df-ink)}.df-blog-wrapper article h2{font-size:clamp(22px,2.8vw,32px);line-height:1.25;color:var(--df-ink);margin:48px 0 16px;padding-top:8px;scroll-margin-top:120px;font-weight:700}.df-blog-wrapper article h3{font-size:20px;color:var(--df-ink-2);margin:32px 0 12px;font-weight:600}.df-blog-wrapper article h4{font-size:17px;color:var(--df-green-3);margin:22px 0 8px;font-weight:600}.df-blog-wrapper article p{margin:0 0 16px;color:var(--df-text);font-size:17px;line-height:1.75}.df-blog-wrapper article ol,.df-blog-wrapper article ul{margin:0 0 18px;padding-left:24px}.df-blog-wrapper article ul{list-style-type:disc}.df-blog-wrapper article ol{list-style-type:decimal}.df-blog-wrapper article li{margin:0 0 8px}.df-blog-wrapper article strong{color:var(--df-ink);font-weight:600}.df-callout ul,.df-method ul,.df-resource ul,.df-sw ul{list-style-type:disc;padding-left:22px;margin:0 0 12px}.df-callout ol,.df-method ol{list-style-type:decimal;padding-left:22px;margin:0 0 12px}.df-callout li,.df-method li,.df-resource li,.df-sw li{margin-bottom:6px}.df-lede{font-size:19px;color:var(--df-ink);background:#fff;border-left:5px solid var(--df-green);padding:18px 20px;border-radius:0 14px 14px 0;margin:0 0 28px;line-height:1.72}.df-callout{background:linear-gradient(180deg,#fff,var(--df-mint));border:1px solid var(--df-line);border-radius:var(--df-radius);padding:20px 22px;margin:22px 0}.df-callout h3{margin-top:0}.df-callout p:last-child{margin-bottom:0}.df-resource{display:grid;gap:10px;background:var(--df-ink);color:#fff;border-radius:var(--df-radius);padding:18px 20px;margin:22px 0}.df-resource a,.df-resource-label{color:var(--df-green-bright)}.df-resource-label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:600}.df-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0;width:100%;min-width:0}.df-card{background:#fff;border:1px solid var(--df-line);border-radius:14px;padding:16px 18px}.df-card h4{margin-top:0}.df-ok{color:#15803D!important}.df-bad{color:#B91C1C!important}.df-sw{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0 18px}.df-strength{border:1px solid #b7e4c4!important}.df-strength,.df-weak{background:#fff!important}.df-weak{border:1px solid #fecaca!important}.df-sw .df-card h4{font-size:16px;margin:0 0 10px;font-weight:600}.df-sw ul{margin:0;padding-left:20px}.df-strength ul{list-style-type:disc;color:#15803D}.df-strength ul li{color:var(--df-text)}.df-weak ul{list-style-type:disc;color:#B91C1C}.df-weak ul li{color:var(--df-text)}.df-method{background:#fff;border:1px solid var(--df-line);border-radius:var(--df-radius);padding:22px 22px 8px;margin:22px 0 28px;box-shadow:var(--df-shadow);scroll-margin-top:120px}.df-method h3,.df-method h4{margin-top:0}.df-bestline{font-size:15px;color:var(--df-ink);margin:8px 0 16px;font-weight:400}.df-formula{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--df-ink);color:#E7F7EB!important;padding:12px 14px;border-radius:10px;overflow-x:auto;font-size:14px;margin:12px 0}.df-pill{display:inline-block;background:var(--df-mint-2);color:var(--df-green-3);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.df-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:18px 0 28px;border-radius:14px;border:1px solid var(--df-line);background:#fff;box-shadow:var(--df-shadow);max-width:100%}.df-blog-wrapper table{width:100%;border-collapse:collapse;min-width:600px;font-size:13.5px}.df-blog-wrapper thead th{background:var(--df-ink);color:#fff;text-align:left;padding:12px;font-weight:600;white-space:nowrap}.df-blog-wrapper tbody td{padding:10px 12px;border-bottom:1px solid var(--df-line);vertical-align:top}.df-blog-wrapper tbody tr:nth-child(2n){background:var(--df-mint)}.df-blog-wrapper tbody tr:hover{background:#E8FBEA}.df-table-pretty thead th{background:#ECFDF3;color:var(--df-ink);font-size:12px;letter-spacing:.06em;text-transform:uppercase}.df-table-pretty tbody tr:nth-child(2n){background:#F8FBF8}.df-table-pretty tbody td{padding:14px;font-size:14px}.df-table-pretty tbody td:first-child{font-weight:600;color:var(--df-ink)}.df-diagram{background:#fff;border:1px solid var(--df-line);border-radius:var(--df-radius);padding:18px;margin:22px 0 28px;box-shadow:var(--df-shadow);overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.df-diagram svg{display:block;min-width:480px;max-width:100%;height:auto}.df-diagram h3{margin:0 0 12px}.df-caption{font-size:13px;color:var(--df-muted);margin:10px 0 0;font-style:italic}.df-faq{margin:32px 0}.df-faq h2{margin-bottom:16px}.df-faq details{background:#fff;border:1px solid var(--df-line);border-radius:12px;padding:14px 18px;margin:0 0 10px;cursor:pointer}.df-faq summary{cursor:pointer;font-weight:600;color:var(--df-ink);font-size:16px;list-style:none;display:flex;justify-content:space-between;align-items:center}.df-faq summary::-webkit-details-marker{display:none}.df-faq summary:after{content:"+";font-size:20px;color:var(--df-green-3);flex-shrink:0}.df-faq details[open] summary:after{content:"−"}.df-faq details p{margin:12px 0 0;color:var(--df-muted);font-size:15px}.df-author{display:flex;gap:20px;background:#fff;border:1px solid var(--df-line);border-radius:var(--df-radius);padding:24px;margin:40px 0 20px;box-shadow:var(--df-shadow);align-items:flex-start}.df-author h2{margin-top:0!important;font-size:22px}.df-author p{font-size:14px;color:var(--df-muted);margin-bottom:10px}.df-author a{color:var(--df-green-3)}.df-socials{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}.df-socials a{font-size:13px;font-weight:600;text-decoration:none;color:var(--df-green-3)}.df-socials a:hover{text-decoration:underline}.df-sidebar-desktop{display:block}.df-sidebar-mobile{display:none;padding-bottom:48px}@media (max-width:1200px){.df-layout{grid-template-columns:240px 1fr;gap:24px;padding:40px 20px 60px}}@media (max-width:960px){.df-layout{grid-template-columns:1fr;padding:28px 20px 60px;gap:28px}.df-left-col{flex-direction:row;flex-wrap:wrap;gap:16px}.df-toc{flex:1 1 300px}.df-sidebar-desktop{display:none}.df-sidebar-mobile{display:block}.df-grid-2,.df-sw{grid-template-columns:1fr 1fr}.df-author{flex-direction:row}}@media (max-width:768px){.df-hero{padding:40px 0 36px}.df-hero h1{font-size:clamp(22px,6vw,30px)}.df-deck{font-size:15px;line-height:1.65}.df-meta{font-size:12px;gap:8px 14px}.df-kicker{font-size:11px}.df-wrap{padding:0 16px}.df-layout{padding:20px 16px 48px;gap:20px}.df-left-col{flex-direction:column;gap:16px}.df-blog-wrapper article h2{font-size:20px;margin:32px 0 12px}.df-blog-wrapper article h3{font-size:17px;margin:22px 0 10px}.df-blog-wrapper article h4{font-size:15px}.df-blog-wrapper article p{font-size:15px;line-height:1.72}.df-blog-wrapper article ol,.df-blog-wrapper article ul{padding-left:20px}.df-lede{font-size:15px;padding:14px 16px}.df-callout,.df-resource{padding:16px}.df-method{padding:16px 14px 8px;margin:16px 0 20px}.df-diagram{padding:12px}.df-bestline{font-size:14px}.df-grid-2{gap:12px}.df-grid-2,.df-sw{grid-template-columns:1fr}.df-sw{gap:10px}.df-table-wrap{margin:14px 0 20px;border-radius:10px}.df-blog-wrapper table{font-size:12.5px}.df-blog-wrapper thead th{padding:10px;font-size:12px}.df-blog-wrapper tbody td{padding:9px 10px;font-size:12.5px}.df-table-pretty tbody td{padding:10px;font-size:13px}.df-toc{padding:14px}.df-toc h2{font-size:11px}.df-toc a{font-size:12.5px;padding:6px 8px}.df-faq details p,.df-faq summary{font-size:14px}.df-author{flex-direction:column;padding:18px 16px;gap:14px}.df-author h2{font-size:18px}.df-author p{font-size:13px}.df-socials{gap:10px}.df-socials a{font-size:12px}}@media (max-width:480px){.df-hero{padding:32px 0 28px}.df-hero h1{font-size:20px;line-height:1.25}.df-deck{font-size:14px}.df-meta{font-size:11px}.df-wrap{padding:0 12px}.df-layout{padding:16px 12px 40px}.df-blog-wrapper article h2{font-size:18px}.df-blog-wrapper article h3{font-size:15px}.df-blog-wrapper article p,.df-lede{font-size:14px}.df-formula{font-size:12px;padding:10px 12px}.df-method{padding:14px 12px 6px}.df-callout{padding:14px 12px}.df-toc a{font-size:12px;padding:5px 6px}.df-faq summary{font-size:13px}.df-author h2{font-size:16px}}