/* Orrery 文档页共享样式 —— 隐私政策 / EULA / 退款 / 支持 / 更新日志
   落地页(index.html、okit.html)仍是自包含单文件,这里只服务这几个文字页。 */
:root{
  --paper:#f8f7f4; --card:#ffffff; --ink:#1b1c20; --dim:#5a5d65; --faint:#94969d;
  --line:rgba(27,28,32,.08); --line-2:rgba(27,28,32,.15);
  --blue:#3d7bfd; --amber:#f59e0b; --violet:#8b5cf6; --teal:#0d9d92;
  --serif:ui-serif,"New York","Songti SC","Noto Serif SC",Georgia,serif;
  --sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--paper); color:var(--ink); font-family:var(--sans);
  -webkit-font-smoothing:antialiased; line-height:1.85; overflow-x:hidden;
}
body::before{
  content:""; position:fixed; inset:0; pointer-events:none; z-index:1;
  background:
    radial-gradient(900px 600px at 84% -8%, rgba(61,123,253,.07), transparent 60%),
    radial-gradient(800px 560px at 4% 14%, rgba(245,158,11,.06), transparent 58%);
}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
::selection{background:rgba(61,123,253,.18)}

/* ---------- nav ---------- */
nav{
  position:sticky; top:0; z-index:60; display:flex; align-items:center; justify-content:space-between;
  gap:20px; padding:16px clamp(20px,5vw,44px);
  background:rgba(248,247,244,.82); backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--line);
}
nav .brand{display:flex;align-items:center;gap:9px;color:var(--ink);font-size:14px;letter-spacing:.14em}
nav .brand:hover{text-decoration:none}
nav .brand b{font-weight:600}
nav .crumb{color:var(--faint);letter-spacing:.14em}
nav .links{display:flex;gap:22px;font-size:13.5px;color:var(--dim)}
nav .links a{color:var(--dim);white-space:nowrap}
nav .links a:hover{color:var(--ink);text-decoration:none}
/* 窄屏:品牌与链接挤在一行会把中文链接压成竖排单字,让它整体换行,并收起面包屑 */
@media(max-width:680px){
  nav{flex-wrap:wrap;gap:10px 18px;padding:13px 20px}
  nav .crumb{display:none}
  nav .links{gap:18px;font-size:13px}
}

.mark{width:24px;height:24px;flex:none}
.mark .ring{fill:none;stroke:currentColor;stroke-width:1.7}
.mark .arm{stroke:currentColor;stroke-width:1.3}
.mark .sun{fill:var(--amber)}
.mark .pl{fill:var(--blue)}
.mark .orb{transform-origin:16px 16px;animation:markspin 16s linear infinite}
@keyframes markspin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.mark .orb{animation:none}}

/* ---------- 正文 ---------- */
main{position:relative;z-index:2;max-width:760px;margin:0 auto;padding:clamp(40px,7vw,76px) clamp(20px,5vw,32px) 90px}
.kicker{
  display:flex;align-items:center;gap:10px;font-size:11.5px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--faint);margin-bottom:18px;
}
.kicker::before{content:"";width:26px;height:2px;border-radius:2px;background:var(--amber)}
h1{font-family:var(--serif);font-weight:600;font-size:clamp(30px,5vw,44px);line-height:1.25;margin:0 0 12px}
.updated{color:var(--faint);font-size:13px;margin:0 0 44px}
h2{font-family:var(--serif);font-weight:600;font-size:clamp(20px,3vw,25px);line-height:1.4;margin:52px 0 14px}
h3{font-size:16px;font-weight:600;margin:30px 0 8px}
p{margin:0 0 16px;color:var(--dim)}
main > p:first-of-type{color:var(--ink)}
strong{color:var(--ink);font-weight:600}
ul,ol{margin:0 0 18px;padding-left:22px;color:var(--dim)}
li{margin-bottom:9px}
li::marker{color:var(--faint)}
code{
  font-family:var(--mono);font-size:.88em;background:rgba(27,28,32,.05);
  border:1px solid var(--line);border-radius:5px;padding:1px 6px;color:var(--ink);
}
hr{border:0;border-top:1px solid var(--line);margin:44px 0}

.card{
  background:var(--card);border:1px solid var(--line);border-radius:14px;
  padding:22px 24px;margin:24px 0;box-shadow:0 16px 40px -28px rgba(27,28,32,.22);
}
.card p:last-child,.card ul:last-child{margin-bottom:0}
.card h3{margin-top:0}
.callout{border-left:3px solid var(--amber);background:rgba(245,158,11,.05);
  border-radius:0 10px 10px 0;padding:16px 20px;margin:24px 0}
.callout p:last-child{margin-bottom:0}
.callout strong{color:var(--ink)}

table{width:100%;border-collapse:collapse;margin:22px 0;font-size:14.5px;display:block;overflow-x:auto}
th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-weight:600;color:var(--ink);white-space:nowrap;background:rgba(27,28,32,.02)}
td{color:var(--dim)}

.toc{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 40px}
.toc a{
  font-size:13px;color:var(--dim);border:1px solid var(--line-2);border-radius:999px;
  padding:5px 13px;transition:.2s;
}
.toc a:hover{color:var(--ink);border-color:var(--ink);text-decoration:none}

/* ---------- footer ---------- */
footer{position:relative;z-index:2;border-top:1px solid var(--line);padding:44px clamp(20px,5vw,44px) 40px}
.foot-in{max-width:1180px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:18px 30px}
footer .brand{display:flex;align-items:center;gap:9px;color:var(--ink);font-size:15px;letter-spacing:.14em}
footer .brand:hover{text-decoration:none}
.foot-links{display:flex;flex-wrap:wrap;gap:20px;font-size:13px}
.foot-links a{color:var(--dim)}
.foot-links a:hover{color:var(--ink);text-decoration:none}
.foot-note{margin-left:auto;font-size:11.5px;letter-spacing:.14em;color:var(--faint)}
@media(max-width:640px){.foot-note{margin-left:0}}
