/* All AI Zone: legal pages (refund, terms, privacy) and the offline page.
   Builds on style.css tokens. Body text stays Times New Roman 12pt (owner preference). */
.lg-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;padding:14px 0}
.lg-top .tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}
.lg-top select.lang-select{max-width:150px}
.lg-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 0}
.lg-tabs a{display:inline-flex;align-items:center;gap:.4em;border-radius:999px;padding:.35em 1em;font-weight:bold;text-decoration:none;color:var(--ink);background:var(--panel);border:1.5px solid var(--line)}
.lg-tabs a:hover{border-color:var(--c,var(--brand2));color:var(--c,var(--brand2))}
.lg-tabs a[aria-current=page]{background:var(--c,var(--brand2));border-color:var(--c,var(--brand2));color:#fff;box-shadow:0 6px 16px color-mix(in srgb,var(--c,#7c3aed) 35%,transparent)}
.lg-tabs .dot{width:.6em;height:.6em;border-radius:50%;background:currentColor;opacity:.8}

.lg-hero{position:relative;overflow:hidden;margin:16px 0 18px;padding:26px 22px;border-radius:22px;color:#fff;
  background:linear-gradient(120deg,var(--h1,#7c3aed),var(--h2,#ec4899) 55%,var(--h3,#f97316));box-shadow:var(--shadow-lg)}
.lg-hero::after{content:"";position:absolute;inset-inline-end:-40px;top:-40px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.14)}
.lg-hero h1{font-size:2rem;margin:0 0 .2em;position:relative}
.lg-hero p{margin:0;position:relative;opacity:.95}
.lg-hero .kicker{display:inline-block;font-weight:bold;letter-spacing:.06em;text-transform:uppercase;font-size:10.5pt;background:rgba(255,255,255,.2);border-radius:999px;padding:.15em .8em;margin-bottom:10px}

.lg-notice{display:flex;gap:10px;align-items:flex-start;border-radius:14px;padding:12px 14px;margin:0 0 16px;font-weight:bold;
  background:color-mix(in srgb,#f59e0b 14%,var(--panel));border:1.5px solid color-mix(in srgb,#f59e0b 55%,transparent);color:var(--ink)}
.lg-notice::before{content:"i";flex:none;width:1.5em;height:1.5em;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#f59e0b;color:#fff;font-style:italic}

.lg-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px;align-items:start;margin-bottom:10px}
.lg-toc{position:sticky;top:14px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow)}
.lg-toc h2{font-size:1rem;margin:0 0 8px;color:var(--brand2)}
.lg-toc ol{margin:0;padding:0;list-style:none;counter-reset:t}
.lg-toc li{counter-increment:t}
.lg-toc a{display:block;padding:4px 6px;border-radius:8px;text-decoration:none;color:var(--ink)}
.lg-toc a::before{content:counter(t) ". ";color:var(--brand);font-weight:bold}
.lg-toc a:hover{background:var(--hover)}

article.legal{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:24px 26px;box-shadow:var(--shadow);min-width:0;overflow-wrap:anywhere}
article.legal h2{font-size:1.3rem;margin:1.5em 0 .5em;padding-top:.2em;color:var(--sc,var(--brand2));scroll-margin-top:14px;display:flex;gap:.45em;align-items:baseline}
article.legal h2::before{content:"";flex:none;width:.55em;height:.55em;border-radius:3px;transform:rotate(45deg) translateY(-.1em);background:var(--sc,var(--brand2))}
article.legal section:nth-of-type(6n+1){--sc:#db2777}
article.legal section:nth-of-type(6n+2){--sc:#7c3aed}
article.legal section:nth-of-type(6n+3){--sc:#2563eb}
article.legal section:nth-of-type(6n+4){--sc:#0d9488}
article.legal section:nth-of-type(6n+5){--sc:#ea580c}
article.legal section:nth-of-type(6n+6){--sc:#16a34a}
:root[data-theme=dark] article.legal h2{color:color-mix(in srgb,var(--sc) 55%,#fff)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) article.legal h2{color:color-mix(in srgb,var(--sc) 55%,#fff)}}
article.legal section:first-of-type h2{margin-top:0}
article.legal h3{font-size:1.05rem;margin:1.1em 0 .4em}
article.legal p,article.legal li{margin:.5em 0}
article.legal ul,article.legal ol{padding-inline-start:1.4em}
article.legal .box{border-radius:14px;padding:14px 16px;margin:0 0 6px;border:2px solid transparent;
  background:linear-gradient(var(--panel2),var(--panel2)) padding-box,var(--grad) border-box}
article.legal .box strong{color:var(--brand)}
article.legal table{border-collapse:collapse;width:100%;margin:.6em 0;display:block;overflow-x:auto}
article.legal th,article.legal td{border:1px solid var(--line);padding:6px 8px;text-align:start;vertical-align:top}
article.legal th{background:var(--soft)}
.lg-foot{margin-top:24px}
.lg-foot .op{margin:.3em 0 0}

@media (max-width:860px){
  .lg-grid{grid-template-columns:minmax(0,1fr)}
  .lg-toc{position:static}
}
@media (max-width:640px){
  .lg-hero{padding:20px 16px;border-radius:18px}
  .lg-hero h1{font-size:1.6rem}
  article.legal{padding:16px 14px}
  .lg-top .logo{font-size:1.15rem}
}

/* ---------- Offline page ---------- */
.off{max-width:520px;margin:8vh auto;text-align:center}
.off .orb{width:120px;height:120px;margin:0 auto 18px;border-radius:32px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#7c3aed,#ec4899 55%,#f97316);box-shadow:var(--shadow-lg)}
.off .orb img{width:84px;height:84px}
.off h1{font-size:1.8rem}
.off .row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px}
