/* Shared layout for public readable pages (legal, narrative) */
:root {
  --bg:#050814; --bg-card:#0d1b2e; --bg-raised:#111e38; --bg-nav:rgba(5,8,20,.88);
  --border:#1e3251; --border-soft:rgba(30,50,81,.55);
  --text:#e2e8f0; --text-soft:#94a3b8; --accent:#38bdf8; --accent-dim:rgba(56,189,248,.1);
  --r:12px; --r-sm:8px;
}
[data-theme="light"] {
  --bg:#f8fafc; --bg-card:#fff; --bg-raised:#f1f5f9; --bg-nav:rgba(248,250,252,.9);
  --border:#e2e8f0; --border-soft:rgba(203,213,225,.7);
  --text:#0f172a; --text-soft:#64748b; --accent:#0284c7; --accent-dim:rgba(2,132,199,.08);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--hdgp-font-sans,'Inter',system-ui,sans-serif);background:var(--bg);color:var(--text);line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
body.lang-en .lang-zh{display:none!important}
body.lang-en .lang-en{display:inline}
body.lang-zh .lang-zh{display:inline}
body.lang-zh .lang-en{display:none!important}
body.lang-en .lang-block-en{display:block}
body.lang-zh .lang-block-zh{display:block}
.lang-block-en,.lang-block-zh{display:none}
nav{position:sticky;top:0;z-index:200;background:var(--bg-nav);backdrop-filter:blur(16px);border-bottom:1px solid var(--border-soft)}
.nav-inner{max-width:860px;margin:0 auto;padding:0 1.5rem;height:56px;display:flex;align-items:center;gap:.75rem}
.nav-brand{font-size:.88rem;font-weight:700;color:var(--text)}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:.5rem}
.lang-toggle{display:flex;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden}
.lang-toggle button{font-size:.72rem;padding:.28rem .55rem;background:transparent;border:none;color:var(--text-soft);cursor:pointer}
.lang-toggle button.active{background:var(--accent-dim);color:var(--accent);font-weight:600}
.theme-btn{width:32px;height:32px;border-radius:var(--r-sm);background:var(--bg-raised);border:1px solid var(--border);color:var(--text-soft);cursor:pointer}
.page{max-width:860px;margin:0 auto;padding:3rem 1.5rem 3rem}
.page-header{text-align:center;margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--border-soft)}
.page-header-label{font-size:.67rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.page-header-title{font-size:clamp(1.4rem,3vw,2rem);font-weight:700;margin:.5rem 0}
.page-header-sub{font-size:.88rem;color:var(--text-soft)}
.card{background:var(--bg-card);border:1px solid var(--border-soft);border-radius:var(--r);padding:1.5rem 1.75rem;margin-bottom:1.25rem}
.card h2{font-size:1.05rem;margin-bottom:.65rem;color:var(--text)}
.card h3{font-size:.92rem;margin:1rem 0 .4rem;color:var(--text-soft)}
.card p,.card li{font-size:.88rem;color:var(--text-soft);line-height:1.72}
.card ul{padding-left:1.2rem;margin-top:.35rem}
.card li{margin-bottom:.25rem}
.meta{font-size:.78rem;color:var(--text-soft);margin-top:1.5rem}
.site-footer{max-width:860px;margin:0 auto;padding:0 1.5rem 2.5rem;font-size:.78rem;color:var(--text-soft);text-align:center}
.site-footer-links{margin-bottom:1rem}
.site-footer-beian{margin-top:1rem;font-size:.72rem}
.site-footer-beian a{color:var(--text-soft)}
.site-footer-beian a:hover{color:var(--accent)}
