/**
 * @license
 * Copyright 2026 Cactusio
 *
 * This code is part of the Cactusio web platform.
 * All rights remain reserved.
 * Unauthorized use, extraction, or redistribution is not permitted.
 *
 * more info at [https://policies.cactusio.com/en/](https://policies.cactusio.com/en/)
 */
:root{--c-bg:#ffffff;--c-bg-elevated:#f5f5f7;--c-bg-subtle:#fbfbfd;--c-text:#1d1d1f;--c-text-secondary:#6e6e73;--c-text-tertiary:#86868b;--c-border:rgba(0, 0, 0, 0.08);--c-border-strong:rgba(0, 0, 0, 0.14);--c-accent:#2f8f52;--c-accent-strong:#226b3d;--c-accent-soft:rgba(47, 143, 82, 0.10);--c-nav-bg:rgba(255, 255, 255, 0.72);--c-shadow:0 1px 2px rgba(0, 0, 0, 0.04),0 8px 24px rgba(0, 0, 0, 0.06);--maxw:980px;--radius:18px;--radius-sm:12px;--ease:cubic-bezier(0.4, 0, 0.2, 1);--font:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font);background:var(--c-bg);color:var(--c-text);line-height:1.6;font-size:17px;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.nav{position:sticky;top:0;z-index:50;background:var(--c-nav-bg);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--c-border)}.nav__inner{max-width:var(--maxw);margin:0 auto;padding:0 22px;height:52px;display:flex;align-items:center;justify-content:space-between}.nav__brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--c-text);font-weight:600;font-size:17px;letter-spacing:-.02em}.nav__brand img{width:26px;height:26px;border-radius:7px;display:block}.nav__right{display:flex;align-items:center;gap:8px}.lang-toggle{display:inline-flex;padding:3px;border-radius:999px;background:var(--c-bg-elevated);border:1px solid var(--c-border)}.lang-toggle button{font-family:inherit;font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--c-text-secondary);background:0 0;border:none;padding:5px 13px;border-radius:999px;cursor:pointer;transition:all .25s var(--ease)}.lang-toggle button.is-active{background:var(--c-bg);color:var(--c-text);box-shadow:0 1px 2px rgba(0,0,0,.12)}@media (prefers-color-scheme:dark){:root{--c-bg:#000000;--c-bg-elevated:#1c1c1e;--c-bg-subtle:#0a0a0a;--c-text:#f5f5f7;--c-text-secondary:#a1a1a6;--c-text-tertiary:#86868b;--c-border:rgba(255, 255, 255, 0.10);--c-border-strong:rgba(255, 255, 255, 0.18);--c-accent:#68be7c;--c-accent-strong:#8fd3a0;--c-accent-soft:rgba(104, 190, 124, 0.14);--c-nav-bg:rgba(20, 20, 22, 0.72);--c-shadow:0 1px 2px rgba(0, 0, 0, 0.4),0 8px 28px rgba(0, 0, 0, 0.5)}.lang-toggle button.is-active{background:#3a3a3c}}.hero{max-width:var(--maxw);margin:0 auto;padding:72px 22px 28px}.hero__eyebrow{display:inline-block;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--c-accent);margin-bottom:14px}.hero h1{font-size:clamp(34px, 6vw, 56px);line-height:1.05;font-weight:700;letter-spacing:-.03em}.hero__meta{margin-top:18px;color:var(--c-text-secondary);font-size:15px}.hero__meta strong{color:var(--c-text);font-weight:600}.layout{max-width:var(--maxw);margin:0 auto;padding:8px 22px 120px;display:grid;grid-template-columns:240px 1fr;gap:56px;align-items:start}.toc{position:sticky;top:76px;align-self:start}.toc__title{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-tertiary);margin-bottom:14px;padding-left:12px}.toc ul{list-style:none}.toc a{display:block;font-size:14px;color:var(--c-text-secondary);text-decoration:none;padding:7px 12px;border-radius:8px;border-left:2px solid transparent;transition:all .2s var(--ease);line-height:1.35}.toc a:hover{color:var(--c-text);background:var(--c-bg-elevated)}.toc a.is-current{color:var(--c-accent);background:var(--c-accent-soft);border-left-color:var(--c-accent);font-weight:600}@media (max-width:840px){.layout{grid-template-columns:1fr;gap:0}.toc{position:static;margin:0 0 32px;padding:18px;background:var(--c-bg-elevated);border-radius:var(--radius)}.toc__title{padding-left:0}.toc ul{columns:2;column-gap:18px}.toc a{padding:6px 8px}}.article{min-width:0}.section{scroll-margin-top:76px;padding:14px 0 8px}.section+.section{margin-top:26px;border-top:1px solid var(--c-border);padding-top:34px}.section h2{font-size:26px;font-weight:700;letter-spacing:-.02em;margin-bottom:16px;scroll-margin-top:76px}.section h3{font-size:18px;font-weight:600;letter-spacing:-.01em;margin:26px 0 10px;color:var(--c-text)}.section p{color:var(--c-text-secondary);margin-bottom:14px}.section p strong{color:var(--c-text);font-weight:600}.section ol,.section ul{margin:6px 0 18px;padding-left:4px;list-style:none}.section li{position:relative;color:var(--c-text-secondary);padding-left:26px;margin-bottom:9px}.section ul li::before{content:"";position:absolute;left:6px;top:11px;width:6px;height:6px;border-radius:50%;background:var(--c-accent)}.section ol{counter-reset:li}.section ol li{counter-increment:li}.section ol li::before{content:counter(li);position:absolute;left:0;top:1px;width:19px;height:19px;font-size:11px;font-weight:700;color:var(--c-accent);background:var(--c-accent-soft);border-radius:50%;display:grid;place-items:center}.section li strong{color:var(--c-text);font-weight:600}.section a{color:var(--c-accent);text-decoration:none}.section a:hover{text-decoration:underline}.card{background:var(--c-bg-elevated);border:1px solid var(--c-border);border-radius:var(--radius);padding:22px 24px;margin:18px 0}.card--accent{background:var(--c-accent-soft);border-color:transparent}.card p:last-child{margin-bottom:0}.card__label{font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--c-accent);margin-bottom:8px}.kv{display:grid;grid-template-columns:max-content 1fr;gap:8px 28px;margin:8px 0 4px}.kv dt{color:var(--c-text-tertiary);font-size:15px}.kv dd{color:var(--c-text);font-size:15px;font-weight:500}@media (max-width:520px){.kv{grid-template-columns:1fr;gap:2px 0}.kv dd{margin-bottom:12px}}.tldr{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:8px 0 30px}.tldr__item{background:var(--c-bg-elevated);border:1px solid var(--c-border);border-radius:var(--radius-sm);padding:18px}.tldr__item h4{font-size:15px;font-weight:600;margin-bottom:6px}.tldr__item p{font-size:14px;color:var(--c-text-secondary);margin:0}.legal-grid{max-width:var(--maxw);margin:0 auto;padding:8px 22px 100px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.legal-card{display:block;text-decoration:none;color:inherit;background:var(--c-bg-elevated);border:1px solid var(--c-border);border-radius:var(--radius);padding:30px 28px;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}.legal-card:hover{transform:translateY(-3px);box-shadow:var(--c-shadow)}.legal-card--product{border-style:dashed;border-color:var(--c-border-strong)}.legal-card__icon{width:46px;height:46px;border-radius:13px;background:var(--c-accent-soft);color:var(--c-accent);display:grid;place-items:center;font-size:22px;margin-bottom:18px}.legal-card h2{font-size:21px;font-weight:650;letter-spacing:-.01em;margin-bottom:8px}.legal-card p{color:var(--c-text-secondary);font-size:15px;margin:0}.legal-card__more{margin-top:16px;color:var(--c-accent);font-weight:600;font-size:14px}.foot{border-top:1px solid var(--c-border);background:var(--c-bg-subtle)}.foot__inner{max-width:var(--maxw);margin:0 auto;padding:40px 22px;display:flex;flex-wrap:wrap;gap:18px 32px;align-items:center;justify-content:space-between}.foot__links{display:flex;flex-wrap:wrap;gap:8px 22px}.foot__links a{color:var(--c-text-secondary);text-decoration:none;font-size:14px;transition:color .2s var(--ease)}.foot__links a:hover{color:var(--c-text)}.foot__copy{color:var(--c-text-tertiary);font-size:13px}.totop{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border-radius:50%;border:1px solid var(--c-border-strong);background:var(--c-nav-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:var(--c-text);font-size:18px;cursor:pointer;display:grid;place-items:center;opacity:0;transform:translateY(12px);pointer-events:none;transition:all .3s var(--ease);box-shadow:var(--c-shadow)}.totop.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}[data-lang-content]{display:none}[data-lang-content].is-active{display:block}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}