/* ══════════════════════════════════════════════════════════════
   AUTOMATE · legal.css — общий стиль для правовых страниц
   (privacy / terms / data-deletion). Терминал-неон, self-host шрифт.
   ══════════════════════════════════════════════════════════════ */

@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/static/fonts/ibm-plex-mono-cyrillic-400-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/static/fonts/ibm-plex-mono-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/static/fonts/ibm-plex-mono-cyrillic-500-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/static/fonts/ibm-plex-mono-latin-500-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url('/static/fonts/ibm-plex-mono-cyrillic-600-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url('/static/fonts/ibm-plex-mono-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:700;font-display:swap;src:url('/static/fonts/ibm-plex-mono-cyrillic-700-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:700;font-display:swap;src:url('/static/fonts/ibm-plex-mono-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

:root{
  --bg:#050505; --surface:#0c0c0c; --text:#bfe8bf; --text-bright:#d6ffd6;
  --text-dim:#6a9a6a; --text-muted:#3f7040; --accent:#00ff41; --brand:#00ccff;
  --warn:#ffd166; --negative:#ff4444; --border:#163016; --border-bright:#245a24;
  --maxw:840px;
}
*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; background:var(--bg); }
body{
  background:var(--bg); color:var(--text);
  font-family:'IBM Plex Mono','Courier New',monospace;
  font-size:14.5px; line-height:1.78; -webkit-font-smoothing:antialiased;
  position:relative; overflow-x:hidden; min-height:100vh;
}
body::before{
  content:''; position:fixed; inset:0; pointer-events:none; z-index:9999;
  background:repeating-linear-gradient(0deg, rgba(0,0,0,0.08) 0, rgba(0,0,0,0.08) 1px, transparent 1px, transparent 4px);
  opacity:0.3;
}
body::after{
  content:''; position:fixed; inset:0; pointer-events:none; z-index:9998;
  background:radial-gradient(ellipse 80% 55% at 50% -10%, rgba(0,255,65,0.05), transparent 60%);
}
::selection{ background:var(--accent); color:#000; }
a{ color:inherit; text-decoration:none; }

/* ─── top bar ─── */
.legal-nav{
  position:sticky; top:0; z-index:100; height:58px;
  background:rgba(5,5,5,0.72); backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
  display:flex; align-items:center;
}
.legal-nav .inner{ max-width:var(--maxw); width:100%; margin:0 auto; padding:0 24px;
  display:flex; align-items:center; justify-content:space-between; }
.legal-nav .brand{ display:flex; align-items:center; gap:9px; }
.legal-nav .brand img{ height:24px; filter:drop-shadow(0 0 8px rgba(0,255,65,0.35)); }
.legal-nav .brand .word{ font-size:17px; font-weight:700; letter-spacing:0.15em; color:var(--text-bright); }
.legal-nav .brand .word b{ color:var(--accent); }
.legal-nav .back{ font-size:12px; letter-spacing:0.06em; color:var(--text-dim); text-transform:uppercase; }
.legal-nav .back:hover{ color:var(--text-bright); }

/* ─── document ─── */
.legal-wrap{ max-width:var(--maxw); margin:0 auto; padding:52px 24px 90px; }
.legal-eyebrow{ font-size:11px; letter-spacing:0.22em; text-transform:uppercase; color:var(--text-dim); font-weight:600; }
.legal-eyebrow::before{ content:'// '; color:var(--text-muted); }
.legal-header{ border-bottom:1px dashed var(--border); padding-bottom:28px; margin-bottom:20px; }
.legal-header h1{ font-size:clamp(1.7rem,4vw,2.4rem); color:var(--text-bright); letter-spacing:-0.01em; margin:14px 0 4px; line-height:1.15; }
.legal-meta{ margin-top:16px; font-size:12.5px; color:var(--text-dim); display:flex; gap:10px 26px; flex-wrap:wrap; }
.legal-meta b{ color:var(--text-bright); font-weight:600; }

.legal-intro{ color:var(--text-dim); font-size:14px; line-height:1.8; margin:24px 0 30px; }

/* table of contents */
.toc{ border:1px solid var(--border); border-radius:3px; padding:20px 24px; background:var(--surface); margin-bottom:44px; }
.toc h4{ font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--text-dim); margin-bottom:14px; }
.toc ol{ list-style:none; column-count:2; column-gap:32px; }
.toc li{ break-inside:avoid; margin-bottom:9px; font-size:13px; }
.toc a{ color:var(--text); display:flex; gap:10px; }
.toc a .num{ color:var(--accent); }
.toc a:hover{ color:var(--text-bright); }
@media(max-width:620px){ .toc ol{ column-count:1; } }

/* sections */
.legal-section{ margin-bottom:36px; scroll-margin-top:72px; }
.legal-section h2{ font-size:16px; color:var(--text-bright); margin-bottom:14px; letter-spacing:0.02em; display:flex; gap:12px; align-items:baseline; }
.legal-section h2 .num{ color:var(--accent); font-size:13px; font-weight:700; }
.legal-section h3{ font-size:13.5px; color:var(--text-bright); margin:20px 0 8px; font-weight:600; }
.legal-section p{ margin-bottom:13px; }
.legal-section ul{ list-style:none; margin:8px 0 14px; }
.legal-section li{ position:relative; padding-left:20px; margin-bottom:9px; }
.legal-section li::before{ content:'▸'; color:var(--accent); position:absolute; left:0; }
.legal-section strong{ color:var(--text-bright); font-weight:600; }
.legal-section a{ color:var(--accent); border-bottom:1px dotted var(--accent); }
.legal-section a:hover{ color:var(--text-bright); border-color:var(--text-bright); }

.callout{ border:1px solid var(--border-bright); border-left:2px solid var(--accent);
  background:rgba(0,255,65,0.035); padding:14px 18px; border-radius:2px; margin:16px 0; font-size:13.5px; }
.callout.warn{ border-left-color:var(--warn); background:rgba(255,209,102,0.05); }

.legal-footer{ border-top:1px solid var(--border); margin-top:56px; padding-top:26px;
  display:flex; justify-content:space-between; gap:16px 30px; flex-wrap:wrap; font-size:12px; color:var(--text-muted); }
.legal-footer .links{ display:flex; gap:22px; flex-wrap:wrap; }
.legal-footer a{ color:var(--text-dim); }
.legal-footer a:hover{ color:var(--text-bright); }
