/* GeoChopper — shared styles for legal pages (privacy, terms) */
:root{
  --bg:#0a1524; --panel:#0f2138; --ink:#eaf1fb;
  --ink-soft:rgba(234,241,251,.72); --ink-faint:rgba(234,241,251,.46);
  --line:rgba(255,255,255,.09); --line-2:rgba(255,255,255,.15);
  --cyan:#5fccff; --gold:#f4c842; --gold-soft:#f9d873; --gold-dp:#c9922a;
  --font-d:'Fredoka',system-ui,sans-serif;
  --font-b:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
}
*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:var(--font-b); font-size:16px; line-height:1.72;
  -webkit-font-smoothing:antialiased;
}
a{ color:var(--cyan); text-decoration:none; }
a:hover{ text-decoration:underline; }
img{ display:block; max-width:100%; }

/* top bar */
.bar{
  position:sticky; top:0; z-index:10;
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 24px; background:rgba(8,17,30,.86);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.bar .brand{ display:flex; align-items:center; gap:11px; }
.bar .brand img{ width:34px; height:34px; border-radius:10px; }
.bar .brand span{ font-family:var(--font-d); font-weight:600; font-size:1.12rem; }
.bar .brand b{ color:var(--gold-soft); font-weight:600; }
.bar .back{ font-size:.9rem; color:var(--ink-soft); }
.bar .back:hover{ color:var(--ink); text-decoration:none; }

/* document */
.doc{ max-width:780px; margin:0 auto; padding:60px 24px 100px; }
.doc h1{
  font-family:var(--font-d); font-weight:700; letter-spacing:-.01em;
  font-size:clamp(2rem,5vw,2.8rem); margin:0 0 10px;
  background:linear-gradient(120deg,var(--gold-soft),var(--gold-dp));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
}
.doc .updated{ color:var(--ink-faint); font-size:.9rem; margin:0 0 8px; }
.doc .intro{ color:var(--ink-soft); font-size:1.06rem; margin:18px 0 40px; }
.doc h2{
  font-family:var(--font-d); font-weight:600; font-size:1.35rem;
  margin:44px 0 12px; padding-top:20px; border-top:1px solid var(--line); color:var(--ink);
}
.doc h3{ font-family:var(--font-d); font-weight:500; font-size:1.06rem; margin:26px 0 8px; }
.doc p{ color:var(--ink-soft); margin:0 0 14px; }
.doc ul{ color:var(--ink-soft); margin:0 0 16px; padding-left:22px; }
.doc li{ margin:6px 0; }
.doc strong{ color:var(--ink); font-weight:600; }
.doc .lead-note{
  background:rgba(59,184,245,.07); border:1px solid rgba(59,184,245,.22);
  border-radius:12px; padding:16px 18px; margin:0 0 30px; color:var(--ink-soft); font-size:.96rem;
}
.doc .toc{
  background:rgba(255,255,255,.03); border:1px solid var(--line);
  border-radius:14px; padding:20px 24px; margin:0 0 44px;
}
.doc .toc h4{ font-family:var(--font-b); font-weight:700; font-size:.72rem; letter-spacing:.16em;
  text-transform:uppercase; color:var(--ink-faint); margin:0 0 12px; }
.doc .toc ol{ margin:0; padding-left:20px; color:var(--ink-soft); }
.doc .toc a{ color:var(--ink-soft); }
.doc .toc a:hover{ color:var(--cyan); }

/* data table */
.doc table{ width:100%; border-collapse:collapse; margin:0 0 20px; font-size:.94rem; }
.doc th,.doc td{ text-align:left; padding:11px 14px; border-bottom:1px solid var(--line); vertical-align:top; }
.doc th{ color:var(--ink); font-weight:600; background:rgba(255,255,255,.03); }
.doc td{ color:var(--ink-soft); }
.doc .table-wrap{ overflow-x:auto; border:1px solid var(--line); border-radius:12px; margin:0 0 22px; }

/* footer */
.foot{ border-top:1px solid var(--line); padding:30px 24px; text-align:center; }
.foot p{ color:var(--ink-faint); font-size:.84rem; margin:0; }
.foot a{ color:var(--ink-soft); }
