/* ============================================================
   glcsports 模板样式（模版6） · 复刻 www.glcpg.com 版式
   类名前缀 gl-；配色由 body.theme-{a..e} 的 CSS 变量驱动；
   首页样块顺序由 .o-* 的 flex order 按主题重排（位子可变）
   ============================================================ */
:root{
  --g-r:14px; --g-r-sm:10px; --g-max:1180px;
  --g-sh1:0 4px 14px rgba(16,24,40,.06); --g-sh2:0 12px 30px rgba(16,24,40,.10);
  --g-ease:cubic-bezier(.22,.61,.36,1);
}
/* ---- 五套配色变体 ---- */
body.theme-a{--g-primary:#417fff;--g-primary-d:#2f65d4;--g-accent:#ffc107;--g-accent-d:#e0a800;--g-dark:#1b1f2a;--g-dark2:#12151d;--g-hero1:#e0efff;--g-hero2:#ffffff;--g-ink:#1a1a1a;--g-mut:#5a6472;--g-line:#e6eaf0;--g-bg:#ffffff;--g-soft:#f6f8fb;--g-grad:linear-gradient(135deg,#417fff,#2f65d4)}
body.theme-b{--g-primary:#0f9d6b;--g-primary-d:#0a7d54;--g-accent:#f6a609;--g-accent-d:#d98e00;--g-dark:#0d1f18;--g-dark2:#08150f;--g-hero1:#e3f7ee;--g-hero2:#ffffff;--g-ink:#122019;--g-mut:#54685f;--g-line:#dfeae4;--g-bg:#ffffff;--g-soft:#f2f8f5;--g-grad:linear-gradient(135deg,#0f9d6b,#0a7d54)}
body.theme-c{--g-primary:#1f3a6e;--g-primary-d:#16294f;--g-accent:#ff7a2f;--g-accent-d:#e85f16;--g-dark:#0f1830;--g-dark2:#0a1122;--g-hero1:#e7ecf7;--g-hero2:#ffffff;--g-ink:#141d33;--g-mut:#5b6580;--g-line:#e1e6f1;--g-bg:#ffffff;--g-soft:#f4f6fb;--g-grad:linear-gradient(135deg,#1f3a6e,#3a5da0)}
body.theme-d{--g-primary:#6d28d9;--g-primary-d:#5317b0;--g-accent:#f43f7a;--g-accent-d:#d61e5c;--g-dark:#170f2b;--g-dark2:#0f0820;--g-hero1:#efe7fd;--g-hero2:#ffffff;--g-ink:#1c1330;--g-mut:#6a5f82;--g-line:#e8e0f5;--g-bg:#ffffff;--g-soft:#f6f2fd;--g-grad:linear-gradient(135deg,#6d28d9,#a855f7)}
body.theme-e{--g-primary:#c62828;--g-primary-d:#9e1b1b;--g-accent:#ffb300;--g-accent-d:#e69500;--g-dark:#210a0a;--g-dark2:#160606;--g-hero1:#fdeaea;--g-hero2:#ffffff;--g-ink:#241010;--g-mut:#7a5f5f;--g-line:#f1dede;--g-bg:#ffffff;--g-soft:#fbf4f4;--g-grad:linear-gradient(135deg,#c62828,#ef5350)}
body{--g-primary:#417fff;--g-primary-d:#2f65d4;--g-accent:#ffc107;--g-dark:#1b1f2a;--g-hero1:#e0efff;--g-hero2:#fff;--g-ink:#1a1a1a;--g-mut:#5a6472;--g-line:#e6eaf0;--g-bg:#fff;--g-soft:#f6f8fb;--g-grad:linear-gradient(135deg,#417fff,#2f65d4)}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Roboto,Helvetica,Arial,sans-serif;color:var(--g-ink);background:var(--g-bg);line-height:1.65;font-size:16px}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{margin:0;padding:0;list-style:none}
h1,h2,h3,h4{margin:0;line-height:1.25;font-weight:800}
p{margin:0 0 1rem}
:focus-visible{outline:2px solid var(--g-primary);outline-offset:3px;border-radius:6px}
.wrap{width:100%;max-width:var(--g-max);margin:0 auto;padding:0 20px}
.section{padding:72px 0}
.section-alt{background:var(--g-soft)}
.sec-title{text-align:center;font-size:2rem;margin-bottom:10px}
.sec-sub{text-align:center;color:var(--g-mut);max-width:680px;margin:0 auto 44px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--g-primary);text-transform:uppercase}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--g-grad);border-radius:2px}
.text-center{text-align:center}.muted{color:var(--g-mut)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:10px;padding:12px 26px;font-size:15px;font-weight:700;cursor:pointer;transition:transform .2s var(--g-ease),box-shadow .2s,background .2s,color .2s}
.btn-primary{background:var(--g-primary);color:#fff}.btn-primary:hover{background:var(--g-primary-d);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.15)}
.btn-accent{background:var(--g-accent);color:#1a1a1a}.btn-accent:hover{background:var(--g-accent-d);transform:translateY(-2px)}
.btn-ghost{background:transparent;border-color:var(--g-line);color:var(--g-ink)}.btn-ghost:hover{border-color:var(--g-primary);color:var(--g-primary)}
.btn-sm{padding:8px 16px;font-size:14px}
.chip{display:inline-block;background:var(--g-soft);color:var(--g-primary);border-radius:999px;padding:4px 14px;font-size:13px;font-weight:700}

/* ---------- Header ---------- */
.gl-header{position:sticky;top:0;z-index:90;background:var(--g-dark);color:#fff;box-shadow:0 2px 12px rgba(0,0,0,.18)}
.gl-header .bar{display:flex;align-items:center;justify-content:space-between;height:68px}
.gl-brand{display:flex;align-items:center;gap:11px}
.gl-brand .mark{width:40px;height:40px;flex:0 0 auto;filter:drop-shadow(0 3px 6px rgba(0,0,0,.25))}
.gl-brand .bt{display:flex;flex-direction:column;line-height:1.05}
.gl-brand .bt b{font-size:19px;letter-spacing:.3px}
.gl-brand .bt em{font-style:normal;font-size:11px;letter-spacing:.14em;color:rgba(255,255,255,.62)}
.gl-nav{display:flex;align-items:center;gap:6px}
.gl-nav a{padding:9px 15px;border-radius:9px;font-size:15px;font-weight:600;color:rgba(255,255,255,.86);transition:.2s;white-space:nowrap}
.gl-nav a:hover,.gl-nav a.is-active{color:var(--g-accent);background:rgba(255,255,255,.10)}
.gl-tools{display:flex;align-items:center;gap:10px}
.gl-search{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:7px 14px}
.gl-search input{width:150px;border:0;outline:0;background:transparent;color:#fff;font-size:14px}
.gl-search input::placeholder{color:rgba(255,255,255,.55)}
.gl-burger{display:none;width:42px;height:42px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;cursor:pointer;align-items:center;justify-content:center}
/* mobile drawer */
.gl-drawer{position:fixed;inset:0;z-index:120;visibility:hidden;opacity:0;transition:.3s}
.gl-drawer.is-open{visibility:visible;opacity:1}
.gl-drawer .backdrop{position:absolute;inset:0;background:rgba(10,12,18,.55)}
.gl-drawer .panel{position:absolute;top:0;right:0;height:100%;width:min(80vw,320px);background:#fff;color:var(--g-ink);padding:18px 20px;transform:translateX(100%);transition:transform .32s var(--g-ease);overflow:auto}
.gl-drawer.is-open .panel{transform:none}
.gl-drawer .dtop{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.gl-drawer .dtop b{font-size:18px}.gl-drawer .dtop em{font-style:normal;display:block;font-size:11px;color:var(--g-mut);letter-spacing:.12em}
.gl-drawer .dclose{width:38px;height:38px;border-radius:50%;border:1px solid var(--g-line);background:transparent;cursor:pointer;font-size:20px;line-height:1}
.gl-drawer nav a{display:block;padding:13px 12px;border-radius:10px;font-weight:600;border-bottom:1px solid var(--g-soft)}
.gl-drawer .dfoot{margin-top:16px}

/* ---------- 首页样块容器（flex 列，按主题重排 order） ---------- */
.home-feed{display:flex;flex-direction:column}
.home-feed>section{width:100%}
/* 默认顺序 */
.o-hero{order:1}.o-about{order:2}.o-stats{order:3}.o-security{order:4}.o-stars{order:5}.o-update{order:6}.o-mission{order:7}.o-news{order:8}
/* 变体 b：先数据后介绍 */
body.theme-b .o-stats{order:2}body.theme-b .o-about{order:3}body.theme-b .o-stars{order:4}body.theme-b .o-security{order:5}body.theme-b .o-mission{order:6}body.theme-b .o-update{order:7}body.theme-b .o-news{order:8}
/* 变体 c：球星前置 */
body.theme-c .o-stars{order:2}body.theme-c .o-about{order:3}body.theme-c .o-security{order:4}body.theme-c .o-stats{order:5}body.theme-c .o-news{order:6}body.theme-c .o-update{order:7}body.theme-c .o-mission{order:8}
/* 变体 d：新闻前置 */
body.theme-d .o-news{order:2}body.theme-d .o-stats{order:3}body.theme-d .o-stars{order:4}body.theme-d .o-about{order:5}body.theme-d .o-security{order:6}body.theme-d .o-mission{order:7}body.theme-d .o-update{order:8}
/* 变体 e：安全/使命前置 */
body.theme-e .o-security{order:2}body.theme-e .o-mission{order:3}body.theme-e .o-stats{order:4}body.theme-e .o-stars{order:5}body.theme-e .o-about{order:6}body.theme-e .o-update{order:7}body.theme-e .o-news{order:8}

/* ---------- Hero ---------- */
.gl-hero{background:linear-gradient(to bottom,var(--g-hero1),var(--g-hero2));padding:78px 0 64px}
.gl-hero .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
.gl-hero h1{font-size:2.5rem;color:#1a1a1a;margin:14px 0 16px}
.gl-hero h1 span{color:var(--g-primary)}
.gl-hero p{font-size:1.06rem;color:#444;max-width:560px}
.gl-hero .facts{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 26px}
.gl-hero .facts span{background:#fff;border:1px solid var(--g-line);border-radius:999px;padding:6px 15px;font-size:13.5px;font-weight:600;color:var(--g-mut);box-shadow:var(--g-sh1)}
.gl-hero .cta{display:flex;gap:14px;flex-wrap:wrap}
.gl-hero .media{position:relative}
.gl-hero .media img{border-radius:20px;box-shadow:var(--g-sh2);width:100%;height:420px;object-fit:cover}
.gl-hero .float{position:absolute;left:-18px;bottom:26px;background:#fff;border-radius:14px;box-shadow:var(--g-sh2);padding:14px 18px;max-width:230px}
.gl-hero .float b{display:block;font-size:15px;margin-bottom:3px}.gl-hero .float span{font-size:13px;color:var(--g-mut)}

/* ---------- About（左右分栏） ---------- */
.gl-about .grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.gl-about h2{font-size:1.9rem;margin-bottom:16px}
.gl-about p{color:#555;line-height:1.9}
.gl-about .hl{color:var(--g-primary);font-weight:700}
.gl-about img{border-radius:16px;box-shadow:var(--g-sh2);width:100%;height:360px;object-fit:cover}

/* ---------- Stats ---------- */
.gl-stats{background:var(--g-soft);border-top:1px solid var(--g-line);border-bottom:1px solid var(--g-line)}
.gl-stats .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:8px}
.gl-stats .item{background:#fff;padding:26px 22px;border-radius:14px;box-shadow:var(--g-sh1);display:flex;align-items:center;gap:16px;transition:.3s}
.gl-stats .item:hover{transform:translateY(-4px);box-shadow:var(--g-sh2)}
.gl-stats .ic{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;color:#fff}
.gl-stats .v{font-size:1.7rem;font-weight:800;line-height:1}
.gl-stats .l{font-size:13.5px;color:var(--g-mut);margin-top:5px}

/* ---------- Security（视觉 + 步骤） ---------- */
.gl-sec{background:linear-gradient(to bottom,#fdfdfd,var(--g-hero1))}
.gl-sec .grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:center}
.gl-sec .visual{border-radius:18px;overflow:hidden;box-shadow:var(--g-sh2)}
.gl-sec .visual img{width:100%;height:420px;object-fit:cover}
.gl-sec h2{font-size:1.8rem;margin-bottom:22px}
.gl-sec .step{display:flex;align-items:flex-start;gap:15px;background:#fff;padding:16px 20px;border-radius:14px;box-shadow:var(--g-sh1);margin-bottom:16px;transition:.3s}
.gl-sec .step:hover{transform:translateY(-3px);box-shadow:var(--g-sh2)}
.gl-sec .step .n{flex:0 0 auto;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:1.1rem}
.gl-sec .step h3{font-size:1.05rem;margin-bottom:4px}.gl-sec .step p{margin:0;font-size:.92rem;color:var(--g-mut)}

/* ---------- 球星卡 ---------- */
.gl-stars .grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.gl-stars .card{position:relative;border-radius:16px;overflow:hidden;box-shadow:var(--g-sh1);background:#0d1220;aspect-ratio:3/4;transition:.3s}
.gl-stars .card:hover{transform:translateY(-5px);box-shadow:var(--g-sh2)}
.gl-stars .card img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .5s}
.gl-stars .card:hover img{transform:scale(1.06)}
.gl-stars .card figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 12px 12px;background:linear-gradient(to top,rgba(0,0,0,.82),transparent);color:#fff}
.gl-stars .card b{font-size:15px;display:block}.gl-stars .card span{font-size:12px;opacity:.8}

/* ---------- Update 手风琴 ---------- */
.gl-update{background:linear-gradient(135deg,#1e3c72,#2a5298);color:#fff}
body.theme-b .gl-update{background:linear-gradient(135deg,#0a3d2c,#0f9d6b)}
body.theme-d .gl-update{background:linear-gradient(135deg,#2e1065,#6d28d9)}
body.theme-e .gl-update{background:linear-gradient(135deg,#5a0f0f,#c62828)}
.gl-update h2{color:#fff;text-align:center;font-size:1.9rem}
.gl-update .sub{text-align:center;color:rgba(255,255,255,.75);margin:8px 0 34px}
.gl-update .acc{max-width:860px;margin:0 auto}
.gl-update .ai{background:#fff;border-radius:14px;overflow:hidden;margin-bottom:16px;box-shadow:0 8px 20px rgba(0,0,0,.14)}
.gl-update .ah{width:100%;text-align:left;background:#fff;border:0;padding:18px 22px;font-size:1rem;font-weight:700;color:#1d3557;cursor:pointer;display:flex;justify-content:space-between;align-items:center}
.gl-update .ah .ar{transition:transform .3s}.gl-update .ai.open .ah{background:var(--g-hero1)}
.gl-update .ai.open .ah .ar{transform:rotate(180deg)}
.gl-update .ab{max-height:0;overflow:hidden;transition:max-height .35s var(--g-ease);background:#fff}
.gl-update .ab ul{padding:0 24px 18px 40px;color:#333}
.gl-update .ab li{line-height:1.7;margin-bottom:.4rem;list-style:disc}

/* ---------- Mission（深色分栏） ---------- */
.gl-mission{background:linear-gradient(to right,var(--g-dark),var(--g-dark2));color:#fff;position:relative;overflow:hidden}
.gl-mission .grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.gl-mission img{border-radius:16px;box-shadow:var(--g-sh2);width:100%;height:340px;object-fit:cover}
.gl-mission h2{font-size:1.9rem;margin-bottom:14px}
.gl-mission p{color:rgba(255,255,255,.8)}
.gl-mission .mlist li{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}
.gl-mission .mlist .dot{flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:var(--g-accent);color:#1a1a1a;display:flex;align-items:center;justify-content:center;font-weight:800}
.gl-mission .mlist b{color:var(--g-accent)}

/* ---------- News 列表 ---------- */
.gl-news .list{display:grid;grid-template-columns:1fr;gap:18px;max-width:920px;margin:0 auto}
.gl-news .item{display:flex;gap:20px;background:var(--g-soft);border-radius:14px;overflow:hidden;min-height:160px;transition:.3s;border:1px solid transparent}
.gl-news .item:hover{transform:translateY(-3px);box-shadow:var(--g-sh2);border-color:var(--g-line);background:#fff}
.gl-news .thumb{flex:0 0 240px;overflow:hidden}
.gl-news .thumb img{width:100%;height:100%;min-height:160px;object-fit:cover;transition:transform .4s}
.gl-news .item:hover .thumb img{transform:scale(1.05)}
.gl-news .body{padding:20px 22px 20px 0;display:flex;flex-direction:column;justify-content:space-between}
.gl-news .body h3{font-size:1.15rem;margin-bottom:8px}
.gl-news .body h3 a:hover{color:var(--g-primary)}
.gl-news .body p{color:var(--g-mut);font-size:.95rem;margin:0}
.gl-news .meta{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:13px;color:var(--g-mut)}
.gl-news .more{color:var(--g-primary);font-weight:700}

/* ---------- 通用列表/详情/标签/搜索 ---------- */
.page-hero{background:linear-gradient(to bottom,var(--g-hero1),var(--g-hero2));padding:44px 0 30px;border-bottom:1px solid var(--g-line)}
.page-hero h1{font-size:2rem}.page-hero .crumb{font-size:13.5px;color:var(--g-mut);margin-bottom:10px}
.page-hero .crumb a:hover{color:var(--g-primary)}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ncard{background:#fff;border:1px solid var(--g-line);border-radius:16px;overflow:hidden;box-shadow:var(--g-sh1);transition:.3s;display:flex;flex-direction:column}
.ncard:hover{transform:translateY(-5px);box-shadow:var(--g-sh2)}
.ncard .cover{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--g-soft)}
.ncard .cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.ncard:hover .cover img{transform:scale(1.06)}
.ncard .nb{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.ncard h3{font-size:1.08rem}.ncard h3 a:hover{color:var(--g-primary)}
.ncard .sum{color:var(--g-mut);font-size:.92rem;margin:0;flex:1}
.ncard .time{font-size:12.5px;color:var(--g-mut)}
.pager{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:36px}
.pager a,.pager span{padding:9px 15px;border:1px solid var(--g-line);border-radius:9px;background:#fff;color:var(--g-ink);font-size:14px}
.pager .current,.pager a:hover{background:var(--g-primary);color:#fff;border-color:var(--g-primary)}
.empty{padding:50px 20px;text-align:center;color:var(--g-mut);background:var(--g-soft);border-radius:16px}
.art-wrap{display:grid;grid-template-columns:1fr 320px;gap:34px;align-items:start}
.article-body{font-size:1.06rem;line-height:1.95;color:#2c2c2c}
.article-body p{margin:0 0 1.15em}.article-body img{border-radius:12px;margin:14px 0}
.article-body h2,.article-body h3{margin:1.4em 0 .6em}
.article-body ul,.article-body ol{padding-left:1.4em;margin:0 0 1.15em}.article-body li{margin-bottom:.4em}
.side-card{background:#fff;border:1px solid var(--g-line);border-radius:16px;padding:20px 22px;box-shadow:var(--g-sh1);margin-bottom:20px}
.side-card h4{font-size:1.05rem;margin-bottom:14px;display:flex;align-items:center;gap:8px}
.side-list li{padding:9px 0;border-bottom:1px dashed var(--g-line);display:flex;gap:10px}
.side-list li:last-child{border-bottom:0}
.side-list .idx{flex:0 0 auto;width:22px;height:22px;border-radius:6px;background:var(--g-soft);color:var(--g-primary);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.side-list a:hover{color:var(--g-primary)}
.tag-cloud{display:flex;flex-wrap:wrap;gap:10px}
.tag-cloud a{background:var(--g-soft);border:1px solid var(--g-line);border-radius:999px;padding:6px 15px;font-size:13.5px;color:var(--g-mut);transition:.2s}
.tag-cloud a:hover{background:var(--g-primary);color:#fff;border-color:var(--g-primary)}
.prevnext{display:flex;justify-content:space-between;gap:16px;margin-top:28px}
.prevnext a{flex:1;background:#fff;border:1px solid var(--g-line);border-radius:12px;padding:14px 16px;font-size:13px;color:var(--g-mut)}
.prevnext a b{display:block;color:var(--g-ink);font-size:14px;margin-top:4px;font-weight:600}
.prevnext a:hover{border-color:var(--g-primary)}

/* ---------- Footer ---------- */
.gl-footer{background:var(--g-dark);color:#fff;padding:56px 0 22px}
.gl-footer .grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.12)}
.gl-footer .fb .bt b{font-size:19px}.gl-footer .fb .bt em{font-style:normal;font-size:11px;letter-spacing:.14em;color:rgba(255,255,255,.6)}
.gl-footer .fb p{color:rgba(255,255,255,.6);font-size:13.5px;margin:14px 0 0;line-height:1.8}
.gl-footer h5{font-size:15px;margin-bottom:16px;text-transform:uppercase;letter-spacing:.04em}
.gl-footer li{margin-bottom:10px}
.gl-footer a{color:rgba(255,255,255,.66);font-size:14px;transition:.2s}
.gl-footer a:hover{color:var(--g-accent)}
.gl-footer .fbot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding-top:20px;font-size:13px;color:rgba(255,255,255,.55)}
.gl-footer .fbot .links{display:flex;gap:18px;flex-wrap:wrap}

/* ---------- 用户中心 / 登录 / 注册 ---------- */
.auth{max-width:460px;margin:56px auto;background:#fff;border:1px solid var(--g-line);border-radius:20px;padding:34px 30px;box-shadow:var(--g-sh2)}
.auth h1{font-size:22px;text-align:center;margin-bottom:6px}.auth .sub{text-align:center;color:var(--g-mut);font-size:14px;margin-bottom:22px}
.field{margin-bottom:16px}.field label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}
.field input{width:100%;border:1px solid var(--g-line);border-radius:11px;padding:12px 14px;font-size:15px;outline:0;transition:.2s;background:#fff}
.field input:focus{border-color:var(--g-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--g-primary) 16%,transparent)}
.cap-row{display:flex;gap:10px;align-items:center}.cap-row input{flex:1}.cap-row img{height:44px;width:120px;border-radius:10px;border:1px solid var(--g-line);cursor:pointer;object-fit:cover}
.alert{padding:12px 14px;border-radius:10px;font-size:14px;margin-bottom:14px;display:none}
.alert.ok{display:block;background:var(--g-hero1);color:var(--g-primary)}
.alert.no{display:block;background:#fdecec;color:#d64545}
.auth .btn{width:100%}.auth .alt{text-align:center;margin-top:16px;font-size:14px;color:var(--g-mut)}
.acct{max-width:820px;margin:48px auto}
.acct-head{display:flex;align-items:center;gap:18px;background:var(--g-grad);color:#fff;border-radius:20px;padding:26px 30px;box-shadow:var(--g-sh2);flex-wrap:wrap}
.acct-head .ava{width:70px;height:70px;border-radius:50%;background:rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:800}
.acct-head h1{font-size:22px}.acct-head p{opacity:.9;font-size:14px;margin:0}
.acct-head .btn{margin-left:auto;background:#fff;color:var(--g-primary)}
.acct-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}
.acct-grid .cell{background:#fff;border:1px solid var(--g-line);border-radius:14px;padding:18px 20px}
.acct-grid .cell span{color:var(--g-mut);font-size:13px;display:block;margin-bottom:6px}.acct-grid .cell b{font-size:16px}

/* ---------- 404 ---------- */
.err-page{text-align:center;padding:80px 20px}.err-page .code{font-size:120px;font-weight:900;line-height:1;background:var(--g-grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- 回到顶部 ---------- */
.gotop{position:fixed;right:22px;bottom:22px;width:46px;height:46px;border-radius:50%;border:0;background:var(--g-primary);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--g-sh2);opacity:0;visibility:hidden;transform:translateY(12px);transition:.3s;z-index:80}
.gotop.show{opacity:1;visibility:visible;transform:none}

/* ---------- 响应式 ---------- */
@media(max-width:980px){
  .gl-nav{display:none}.gl-burger{display:flex}
  .gl-hero .grid,.gl-about .grid,.gl-sec .grid,.gl-mission .grid{grid-template-columns:1fr;gap:30px}
  .gl-hero .media img{height:320px}.gl-hero .float{left:12px}
  .gl-stats .grid{grid-template-columns:repeat(2,1fr)}
  .gl-stars .grid{grid-template-columns:repeat(3,1fr)}
  .news-grid{grid-template-columns:repeat(2,1fr)}
  .art-wrap{grid-template-columns:1fr}.gl-footer .grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .section{padding:52px 0}.gl-hero{padding:52px 0 40px}.gl-hero h1{font-size:1.9rem}
  .gl-stats .grid{grid-template-columns:1fr}.gl-stars .grid{grid-template-columns:repeat(2,1fr)}
  .news-grid{grid-template-columns:1fr}.gl-footer .grid{grid-template-columns:1fr}
  .gl-news .item{flex-direction:column}.gl-news .thumb{flex-basis:auto;height:190px}.gl-news .body{padding:0 18px 18px}
  .acct-grid,.gl-search{display:none}.gl-tools .btn-accent{padding:8px 14px;font-size:13px}
  .prevnext{flex-direction:column}
}
