:root {
  color-scheme: dark;
  --ink: #f4f7fb;
  --muted: rgba(232, 241, 250, 0.68);
  --line: rgba(210, 232, 247, 0.18);
  --panel: rgba(8, 18, 31, 0.72);
  --panel-strong: rgba(8, 18, 31, 0.9);
  --accent: #68e4ff;
  --accent-2: #88a7ff;
  --page: #07111e;
  --radius: 24px;
  --shadow: 0 24px 80px rgba(0, 0, 0, 0.28);
  --display: "STKaiti", "KaiTi", "FangSong", serif;
  --sans: "Microsoft YaHei UI", "PingFang SC", "Noto Sans CJK SC", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--page);
  font-family: var(--sans);
  min-width: 320px;
}
button, input { font: inherit; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 50;
  padding: 18px clamp(18px, 3vw, 52px);
}

.nav-shell {
  position: relative;
  width: min(1380px, 100%);
  margin: 0 auto;
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto minmax(180px, 1fr);
  align-items: center;
  gap: 18px;
  padding: 0 12px 0 22px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(5, 13, 24, .58);
  backdrop-filter: blur(22px) saturate(135%);
  box-shadow: 0 12px 50px rgba(0,0,0,.18);
}

.beijing-clock {
  display: flex;
  align-items: baseline;
  gap: 10px;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.clock-date { color: var(--muted); font-size: 12px; letter-spacing: .08em; }
.clock-time { font-size: 15px; font-weight: 700; letter-spacing: .04em; }
.clock-zone { color: var(--accent); font-size: 10px; letter-spacing: .14em; }

.primary-nav { display: flex; align-items: stretch; justify-content: center; min-width: 0; max-width: 100%; }
.nav-item { position: relative; }
.nav-link {
  min-height: 56px;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 0;
  color: rgba(245, 249, 253, .76);
  background: transparent;
  cursor: pointer;
  font-size: 14px;
  letter-spacing: .04em;
  white-space: nowrap;
}
.nav-item.active .nav-link,
.nav-link:hover,
.nav-link:focus-visible { color: #fff; }
.nav-item.active .nav-link::after {
  content: "";
  position: absolute;
  left: 50%; bottom: 9px;
  width: 18px; height: 2px;
  transform: translateX(-50%);
  background: var(--accent);
}
.chevron { font-size: 9px; opacity: .7; transform: translateY(1px); }
.dropdown {
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  width: max-content;
  min-width: 148px;
  padding: 9px;
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, -6px);
  transition: .2s ease;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(5, 13, 24, .92);
  box-shadow: 0 20px 60px rgba(0,0,0,.34);
  backdrop-filter: blur(24px);
}
.nav-item:hover .dropdown,
.nav-item:focus-within .dropdown {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}
.dropdown a {
  display: block;
  padding: 10px 12px;
  color: rgba(243,247,251,.72);
  font-size: 13px;
  border-bottom: 1px solid rgba(255,255,255,.06);
}
.dropdown a:last-child { border-bottom: 0; }
.dropdown a:hover, .dropdown a:focus-visible { color: #fff; background: rgba(255,255,255,.07); }

.search-button {
  position: relative;
  width: 40px; height: 40px;
  display: grid; place-items: center;
  border: 1px solid rgba(255,255,255,.16);
  color: #fff;
  background: rgba(255,255,255,.07);
  cursor: pointer;
}
.search-button::before {
  content: "";
  width: 12px; height: 12px;
  border: 1.8px solid currentColor;
  border-radius: 50%;
  transform: translate(-1px,-1px);
}
.search-button::after {
  content: "";
  position: absolute;
  width: 7px; height: 1.8px;
  background: currentColor;
  transform: translate(8px,8px) rotate(45deg);
}
.search-glyph { display:none; }

.header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
}

.hero {
  position: relative;
  min-height: 760px;
  height: 92vh;
  overflow: hidden;
  display: grid;
  place-items: center;
}
.hero-media, .hero-scrim, .hero-grain { position: absolute; inset: 0; }
.hero-media video, .hero-media img {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%; object-fit: cover; object-position: center;
}
/* GIF 始终位于底层；视频可用时覆盖它，失败时仍可显示主页壁纸。 */
.hero-media img { z-index: 0; }
.hero-media video { z-index: 1; }
.hero-video-unavailable .hero-media video { display: none; }
.hero-scrim {
  background:
    linear-gradient(180deg, rgba(3,8,16,.28), rgba(4,11,21,.12) 43%, var(--page) 98%),
    linear-gradient(90deg, rgba(5,13,24,.45), transparent 36%, transparent 64%, rgba(5,13,24,.35));
}
.hero-grain {
  opacity: .12;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
  mix-blend-mode: soft-light;
  pointer-events: none;
}
.hero-copy {
  position: relative;
  z-index: 2;
  width: min(1120px, calc(100% - 40px));
  padding-top: 70px;
  text-align: center;
}
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 24px;
  color: rgba(255,255,255,.7);
  font-size: 11px;
  letter-spacing: .34em;
}
.eyebrow::before, .eyebrow::after { content: ""; width: 42px; height: 1px; background: currentColor; opacity: .5; }
.site-title {
  margin: 0;
  font-family: var(--display);
  font-size: clamp(52px, 8vw, 116px);
  font-weight: 500;
  line-height: .98;
  letter-spacing: .04em;
  text-wrap: balance;
  text-shadow: 0 12px 50px rgba(0,0,0,.42);
}
.site-title small { font-size: .42em; font-weight: 400; margin-left: .18em; letter-spacing: .08em; }
.hero-description {
  max-width: 590px;
  margin: 26px auto 0;
  color: rgba(246,249,252,.72);
  font-size: 15px;
  letter-spacing: .08em;
  line-height: 1.9;
}
.hero-marker {
  position: absolute;
  z-index: 3;
  left: 50%; bottom: 42px;
  transform: translateX(-50%);
  display: flex; flex-direction: column; align-items: center; gap: 10px;
  color: rgba(255,255,255,.55);
  font-size: 9px; letter-spacing: .28em;
}
.hero-marker::after { content:""; width:1px; height:42px; background: linear-gradient(var(--accent), transparent); }

.home-main {
  position: relative;
  z-index: 3;
  width: min(1260px, calc(100% - 40px));
  margin: -96px auto 0;
  padding-bottom: 100px;
}
.overview {
  display: grid;
  grid-template-columns: 1.2fr repeat(3, .62fr);
  min-height: 150px;
  border: 1px solid var(--line);
  background: var(--panel-strong);
  box-shadow: var(--shadow);
  backdrop-filter: blur(26px);
}
.overview-intro, .metric { padding: 28px 32px; }
.overview-intro { display:flex; flex-direction:column; justify-content:center; }
.kicker { margin:0 0 9px; color:var(--accent); font-size:10px; letter-spacing:.24em; text-transform:uppercase; }
.overview h2 { margin:0; font-size:26px; font-weight:500; letter-spacing:.06em; }
.overview p { margin:9px 0 0; color:var(--muted); font-size:13px; line-height:1.7; }
.metric { border-left:1px solid var(--line); display:flex; flex-direction:column; justify-content:center; }
.metric-value { font-family: Georgia, serif; font-size:34px; line-height:1; color:#fff; }
.metric-label { margin-top:10px; color:var(--muted); font-size:12px; letter-spacing:.12em; }

.content-grid {
  display: grid;
  grid-template-columns: 1.28fr .92fr .8fr;
  gap: 18px;
  margin-top: 18px;
}
.card {
  position: relative;
  min-height: 230px;
  padding: 28px;
  overflow: hidden;
  border: 1px solid var(--line);
  background: var(--panel);
  backdrop-filter: blur(22px);
  box-shadow: 0 18px 50px rgba(0,0,0,.14);
}
.card-wide { grid-column: span 2; }
.card-tall { grid-row: span 2; }
.card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:22px; }
.card-index { color:rgba(255,255,255,.34); font-family:Georgia,serif; font-size:12px; letter-spacing:.12em; }
.card h3 { margin:0; font-size:19px; font-weight:550; letter-spacing:.06em; }
.card-sub { margin:7px 0 0; color:var(--muted); font-size:12px; line-height:1.65; }
.text-link { color:var(--accent); font-size:12px; letter-spacing:.08em; }

.map-stage {
  min-height: 226px;
  display:grid;
  place-items:center;
  border-top:1px solid var(--line);
  background:
    linear-gradient(var(--line) 1px, transparent 1px),
    linear-gradient(90deg, var(--line) 1px, transparent 1px);
  background-size:34px 34px;
  background-position:center;
}
.map-empty { text-align:center; color:var(--muted); }
.map-empty strong { display:block; margin-bottom:8px; color:#fff; font-size:14px; font-weight:500; }
.map-empty span { font-size:11px; letter-spacing:.12em; }
.map-dot { width:9px; height:9px; margin:0 auto 16px; background:var(--accent); border-radius:50%; box-shadow:0 0 0 8px rgba(104,228,255,.12), 0 0 30px var(--accent); }

.visit-status { display:flex; align-items:center; gap:12px; padding:18px 0; border-block:1px solid var(--line); }
.pulse { width:8px; height:8px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 7px rgba(104,228,255,.1); }
.visit-status strong { display:block; font-size:15px; }
.visit-status span { color:var(--muted); font-size:11px; }
.tiny-note { margin:18px 0 0; color:var(--muted); font-size:11px; line-height:1.8; }

.content-list { list-style:none; margin:0; padding:0; }
.content-list li { display:grid; grid-template-columns:80px 1fr auto; align-items:center; gap:14px; min-height:58px; border-top:1px solid var(--line); }
.content-list li:first-child { border-top:0; }
.list-type { color:var(--accent); font-size:10px; letter-spacing:.14em; }
.list-title { font-size:13px; }
.list-date { color:var(--muted); font-size:11px; font-variant-numeric:tabular-nums; }
.empty-row { color:var(--muted); }

.word-cloud { display:flex; flex-wrap:wrap; gap:9px; }
.word-cloud span {
  padding:8px 11px;
  border:1px dashed rgba(255,255,255,.2);
  color:var(--muted);
  font-size:11px;
}
.tag-area { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; }
.tag-placeholder { min-height:43px; padding:12px; border-bottom:1px solid var(--line); color:var(--muted); font-size:11px; }

.subscribe-copy { max-width:520px; color:var(--muted); font-size:13px; line-height:1.8; }
.social-list { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.social-list a {
  padding:10px 14px;
  border:1px solid var(--line);
  color:rgba(255,255,255,.8);
  font-size:12px;
  transition:.2s ease;
}
.social-list a:hover { color:#fff; border-color:var(--accent); transform:translateY(-2px); }
.rss-line { margin-top:22px; padding-top:18px; border-top:1px solid var(--line); display:flex; justify-content:space-between; color:var(--muted); font-size:11px; }

.site-footer { width:min(1260px,calc(100% - 40px)); margin:0 auto; padding:30px 0 60px; display:flex; justify-content:space-between; color:rgba(255,255,255,.42); font-size:11px; letter-spacing:.08em; }

.search-dialog {
  width:min(680px,calc(100% - 28px));
  padding:0;
  border:1px solid var(--line);
  color:var(--ink);
  background:rgba(6,15,27,.96);
  box-shadow:0 40px 120px rgba(0,0,0,.6);
  backdrop-filter:blur(28px);
}
.search-dialog::backdrop { background:rgba(0,5,12,.68); backdrop-filter:blur(8px); }
.search-inner { padding:26px; }
.search-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:18px; }
.search-top strong { font-size:14px; letter-spacing:.1em; }
.close-search { border:0; color:var(--muted); background:transparent; cursor:pointer; font-size:22px; }
.search-field { width:100%; padding:18px 0; border:0; border-bottom:1px solid var(--line); outline:0; color:#fff; background:transparent; font-size:24px; }
.search-hint { margin:18px 0 0; color:var(--muted); font-size:11px; }

.wechat-dialog {
  width:min(480px,calc(100% - 28px));
  max-height:calc(100dvh - 28px);
  padding:0;
  overflow:auto;
  border:1px solid rgba(255,255,255,.26);
  border-radius:20px;
  color:#f5f3f1;
  background:#171a21;
  box-shadow:0 32px 100px rgba(0,0,0,.72);
}
.wechat-dialog::backdrop { background:rgba(0,0,0,.75); backdrop-filter:blur(6px); }
.wechat-dialog-inner { padding:22px; }
.wechat-dialog-heading { display:flex; align-items:start; justify-content:space-between; gap:16px; margin-bottom:18px; }
.wechat-dialog-heading span { color:#aaa7ae; font-size:10px; letter-spacing:.18em; }
.wechat-dialog-heading h2 { margin:6px 0 0; font-size:24px; font-family:var(--display); }
.wechat-dialog-heading button { border:0; color:inherit; background:transparent; font-size:29px; line-height:1; cursor:pointer; }
.wechat-dialog img { display:block; width:min(100%,430px); height:auto; margin:auto; border-radius:8px; background:#fff; }
.wechat-dialog p { margin:15px 0 0; color:#c7c4c8; text-align:center; font-size:12px; }

/* Direction A — cinematic glass */
.theme-glass { --radius:24px; }
.theme-glass .nav-shell,
.theme-glass .dropdown,
.theme-glass .search-button,
.theme-glass .overview,
.theme-glass .card,
.theme-glass .search-dialog { border-radius:var(--radius); }
.theme-glass .dropdown { border-radius:16px; }
.theme-glass .search-button { border-radius:50%; }
.theme-glass .map-stage { border-radius:14px; }

/* Direction B — editorial */
.theme-editorial {
  color-scheme:light;
  --ink:#172130;
  --muted:rgba(23,33,48,.62);
  --line:rgba(23,33,48,.18);
  --panel:rgba(249,247,239,.94);
  --panel-strong:#f8f5eb;
  --accent:#006b89;
  --accent-2:#264b8f;
  --page:#e9e5da;
  --display:"SimSun","STSong",Georgia,serif;
}
.theme-editorial .site-header { padding-top:0; }
.theme-editorial .nav-shell {
  width:100%;
  max-width:none;
  min-height:72px;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.34);
  background:rgba(13,24,38,.72);
  box-shadow:none;
}
.theme-editorial .hero { height:78vh; min-height:680px; align-items:end; }
.theme-editorial .hero-copy { text-align:left; padding:0 0 118px; }
.theme-editorial .eyebrow { margin-left:4px; }
.theme-editorial .eyebrow::before { display:none; }
.theme-editorial .site-title { max-width:760px; font-size:clamp(58px,8vw,112px); }
.theme-editorial .hero-description { margin:28px 0 0; max-width:440px; }
.theme-editorial .hero .site-title,
.theme-editorial .hero .hero-description,
.theme-editorial .hero .eyebrow { color:#fff; }
.theme-editorial .beijing-clock .clock-date { color:rgba(238,247,252,.64); }
.theme-editorial .beijing-clock .clock-time { color:#fff; }
.theme-editorial .hero-scrim { background:linear-gradient(90deg,rgba(4,10,17,.82),rgba(4,10,17,.08) 72%),linear-gradient(180deg,transparent 45%,rgba(3,8,14,.72)); }
.theme-editorial .home-main { margin:-62px auto 0; }
.theme-editorial .overview { box-shadow:0 30px 70px rgba(28,36,45,.16); }
.theme-editorial .overview h2,
.theme-editorial .metric-value,
.theme-editorial .card h3,
.theme-editorial .map-empty strong { color:var(--ink); }
.theme-editorial .content-grid { grid-template-columns:1fr 1fr; gap:1px; background:var(--line); border:1px solid var(--line); }
.theme-editorial .card { box-shadow:none; border:0; min-height:260px; }
.theme-editorial .card-wide { grid-column:span 1; }
.theme-editorial .card-tall { grid-row:span 1; }
.theme-editorial .card-map { grid-column:span 2; }
.theme-editorial .card-contact { grid-column:span 2; }
.theme-editorial .social-list a { color:var(--ink); }
.theme-editorial .hero-marker { display:none; }
.theme-editorial .search-dialog { color:var(--ink); background:#f8f5eb; }
.theme-editorial .search-field { color:var(--ink); }

/* Direction C — night console */
.theme-console {
  --ink:#eaf8ff;
  --muted:rgba(220,239,247,.63);
  --line:rgba(109,222,247,.22);
  --panel:rgba(3,14,24,.64);
  --panel-strong:rgba(3,14,24,.84);
  --accent:#62e8ff;
  --accent-2:#b7ffdb;
  --page:#020a12;
  --display:"Microsoft YaHei UI",sans-serif;
}
.theme-console .nav-shell { border-radius:0; border-inline:0; background:rgba(1,10,18,.7); }
.theme-console .hero { height:100vh; }
.theme-console .hero-scrim { background:linear-gradient(180deg,rgba(0,8,15,.2),rgba(0,8,15,.05) 52%,#020a12 100%); }
.theme-console .hero-copy { text-align:left; }
.theme-console .eyebrow { color:var(--accent); }
.theme-console .eyebrow::before { width:8px; height:8px; background:var(--accent); }
.theme-console .eyebrow::after { width:180px; }
.theme-console .site-title { max-width:760px; font-family:var(--sans); font-weight:800; letter-spacing:-.03em; }
.theme-console .site-title small { display:block; margin:16px 0 0; font-family:Georgia,serif; font-style:italic; font-weight:400; letter-spacing:.03em; }
.theme-console .hero-description { margin:28px 0 0; }
.theme-console .home-main { margin:-130px auto 0; }
.theme-console .overview,
.theme-console .card { border-radius:4px; }
.theme-console .overview { border-top:2px solid var(--accent); }
.theme-console .card::before { content:""; position:absolute; left:0; top:0; width:28px; height:2px; background:var(--accent); }
.theme-console .content-grid { grid-template-columns:1.1fr .9fr 1fr; }
.theme-console .card-map { grid-column:span 1; }
.theme-console .card-recent { grid-column:span 2; }
.theme-console .card-contact { grid-column:span 2; }
.theme-console .dropdown, .theme-console .search-button, .theme-console .search-dialog { border-radius:0; }

.concept-ribbon {
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:40;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.16);
  color:rgba(255,255,255,.72);
  background:rgba(2,8,15,.7);
  backdrop-filter:blur(16px);
  font-size:10px;
  letter-spacing:.1em;
}

@media (max-width:1080px) {
  .nav-shell { grid-template-columns:minmax(0,1fr) 42px; width:100%; }
  .primary-nav { order:3; grid-column:1/-1; width:100%; overflow-x:auto; justify-content:flex-start; border-top:1px solid rgba(255,255,255,.09); }
  .site-header { padding:12px; }
  .nav-shell { padding:8px 12px 0; }
  .beijing-clock { padding-right:108px; }
  .header-actions { position:absolute; top:8px; right:10px; }
  .search-button { position:relative; top:auto; right:auto; }
  .nav-link { min-height:48px; }
  .content-grid, .theme-console .content-grid { grid-template-columns:1fr 1fr; }
  .card-wide, .theme-console .card-recent, .theme-console .card-contact { grid-column:span 2; }
  .card-tall { grid-row:span 1; }
  .overview { grid-template-columns:1.2fr repeat(3,.55fr); }
  .overview-intro,.metric { padding:24px 20px; }
}

@media (max-width:720px) {
  .nav-shell { padding-right:64px; }
  .header-actions { top:11px; right:10px; }
  .auth-button { position:static; }
  .search-button { position:relative; top:auto; right:auto; z-index:auto; }
  .search-button::before, .search-button::after { display:none; }
  .search-glyph { display:block; font-size:24px; line-height:1; transform:translateY(-1px); }
  .clock-zone { display:none; }
  .clock-date { font-size:10px; }
  .clock-time { font-size:13px; }
  .hero { min-height:680px; height:88vh; }
  .site-title { font-size:48px; }
  .site-title small { display:block; margin:12px 0 0; }
  .hero-description { font-size:13px; }
  .home-main { width:min(100% - 24px,1260px); margin-top:-58px; }
  .overview { grid-template-columns:repeat(3,1fr); }
  .overview-intro { grid-column:1/-1; border-bottom:1px solid var(--line); }
  .metric { padding:19px 14px; text-align:center; }
  .metric:first-of-type { border-left:0; }
  .metric-value { font-size:28px; }
  .metric-label { font-size:10px; }
  .content-grid,
  .theme-editorial .content-grid,
  .theme-console .content-grid { grid-template-columns:1fr; }
  .card-wide,.card-tall,.theme-editorial .card-map,.theme-editorial .card-contact,.theme-console .card-recent,.theme-console .card-contact { grid-column:span 1; }
  .card { padding:22px; }
  .content-list li { grid-template-columns:64px 1fr; }
  .list-date { display:none; }
  .site-footer { width:calc(100% - 28px); flex-direction:column; gap:8px; }
}

@media (prefers-reduced-motion:reduce) {
  * { scroll-behavior:auto !important; animation:none !important; transition:none !important; }
}

.auth-button{min-width:52px;height:30px;margin:0;border:1px solid rgba(247,173,135,.46);border-radius:999px;color:#f6c3ab;background:rgba(247,173,135,.07);font:600 11px var(--sans);cursor:pointer;transition:.2s}.auth-button:hover:not(:disabled){color:#24191c;background:#f3b394;transform:translateY(-1px)}.auth-button:disabled{cursor:not-allowed;opacity:.52}.auth-dialog{width:min(420px,calc(100% - 28px));padding:0;border:1px solid rgba(247,173,135,.35);border-radius:18px;color:#eee9e9;background:linear-gradient(145deg,#2d252a,#111217 80%);box-shadow:0 28px 80px rgba(0,0,0,.55)}.auth-dialog::backdrop{background:rgba(5,6,10,.7);backdrop-filter:blur(4px)}.auth-panel{position:relative;display:grid;gap:14px;padding:30px}.auth-close{position:absolute;top:12px;right:14px;width:31px;height:31px;border:0;border-radius:50%;color:#c7bec1;background:rgba(255,255,255,.06);font-size:22px;cursor:pointer}.auth-kicker{margin:0;color:#f2aa8a;font:700 10px var(--sans);letter-spacing:.17em}.auth-panel h2{margin:0;font:650 31px var(--display)}.auth-copy,.auth-panel small{margin:0;color:#aaa3a6;font-size:12px;line-height:1.7}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:4px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(0,0,0,.18)}.auth-tabs button{height:34px;border:0;border-radius:7px;color:#aaa3a6;background:transparent;font:inherit;font-size:12px;cursor:pointer}.auth-tabs button[aria-selected="true"]{color:#281c20;background:#f4b393;font-weight:700}.auth-panel label{display:grid;gap:7px;color:#d9d2d4;font-size:11px}.auth-panel input{height:43px;padding:0 12px;border:1px solid rgba(255,255,255,.13);border-radius:8px;outline:0;color:#f4eeee;background:rgba(0,0,0,.18);font:13px var(--sans)}.auth-panel input:focus{border-color:rgba(247,173,135,.76);box-shadow:0 0 0 3px rgba(247,173,135,.1)}.auth-status{min-height:18px;margin:0;color:#f2b196;font-size:11px;line-height:1.5}.auth-submit,.auth-signout{height:42px;border:1px solid rgba(255,227,211,.7);border-radius:9px;color:#2b1d21;background:linear-gradient(145deg,#ffd0b6,#e99d78);font:700 13px var(--sans);cursor:pointer}.auth-signout{color:#d7ced0;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.17)}.auth-submit:disabled{opacity:.6;cursor:wait}@media(max-width:720px){.auth-panel{padding:26px 22px}.auth-dialog{width:min(420px,calc(100% - 20px))}}

.auth-admin{display:grid;place-items:center;height:42px;border:1px solid rgba(255,227,211,.7);border-radius:9px;color:#2b1d21;background:linear-gradient(145deg,#ffd0b6,#e99d78);font:700 13px var(--sans);text-decoration:none}

/* 管理后台入口必须由管理员校验后显式显示。 */
.auth-admin[hidden] { display: none !important; }

/* 登录完成后不继续模糊主页背景。 */
.auth-dialog::backdrop { backdrop-filter: none; }
