:root{
  /* 默认 = 暗色（首页 Hero 风格） */
  --bg:#0B1120;
  --surface:rgba(17,24,39,.7);
  --surface-solid:#111827;
  --header-bg:linear-gradient(165deg,#0B1120 0%,#0F172A 40%,#131E36 70%,#0C1322 100%);
  --header-text:#F1F5F9;
  --text-primary:#F1F5F9;
  --text-secondary:#94A3B8;
  --text-dim:#64748B;
  --border:rgba(99,130,180,.15);
  --accent:#38BDF8;
  --accent-soft:rgba(56,189,248,.15);
  --accent-strong:#7DD3FC;
  --brand-from:#38BDF8;
  --brand-to:#6366F1;
  --input-bg:rgba(255,255,255,.03);
  --chip-bg:rgba(255,255,255,.04);
  --chip-text:var(--text-secondary);
  --shadow:0 4px 24px rgba(0,0,0,.25),0 0 0 1px rgba(99,130,180,.08);
  --glass-blur:blur(12px);
  --maxw:960px;
  --radius:14px;
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;
  font-family:"PingFang SC","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--text-primary);
  background:var(--bg);
  line-height:1.6;
  font-size:15px;
  min-height:100vh;
  transition:background .3s,color .3s;
}
a{color:var(--accent);text-decoration:none;}
a:hover{text-decoration:underline;color:var(--accent-strong);}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px;}

/* ===== HEADER ===== */
.site-header{
  position:relative;overflow:hidden;
  background:var(--header-bg);
  color:var(--header-text);
  border-bottom:1px solid var(--border);
}
.site-header::before{
  content:"";position:absolute;top:-80px;right:-60px;
  width:360px;height:360px;
  background:radial-gradient(circle,rgba(56,189,248,.07) 0%,transparent 70%);
  pointer-events:none;
}
.site-header::after{
  content:"";position:absolute;bottom:-100px;left:-40px;
  width:300px;height:300px;
  background:radial-gradient(circle,rgba(99,102,241,.05) 0%,transparent 70%);
  pointer-events:none;
}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;max-width:var(--maxw);margin:0 auto;position:relative;z-index:1;}
.brand{display:flex;align-items:center;gap:12px;}
.brand-mark{
  width:40px;height:40px;border-radius:10px;
  background:linear-gradient(135deg,var(--brand-from),var(--brand-to));
  color:#fff;font-weight:700;font-size:20px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 2px 12px rgba(56,189,248,.25);
}
.brand-text h1{font-size:19px;margin:0;font-weight:700;letter-spacing:.5px;color:var(--header-text);}
.brand-text p{margin:2px 0 0;font-size:12.5px;color:var(--text-dim);}
.site-nav a{color:var(--text-secondary);margin-left:18px;font-size:14px;transition:color .2s;}
.site-nav a.active{color:var(--accent);font-weight:600;text-decoration:none;}
.site-nav a:hover{color:var(--accent);text-decoration:none;}
.header-accent{height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.5;}

/* ===== HERO (首页) ===== */
.hero-banner{position:relative;z-index:1;text-align:center;padding:50px 20px 46px;}
.hero-banner h2{
  margin:0 0 10px;font-size:32px;font-weight:800;letter-spacing:1.5px;
  background:linear-gradient(135deg,#F1F5F9 30%,var(--accent) 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hero-banner .hero-sub{margin:0;font-size:15px;color:var(--text-secondary);letter-spacing:.3px;}
.hero-banner .hero-line{display:inline-block;width:48px;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);margin-top:18px;border-radius:1px;opacity:.6;}

/* ===== NOTICE / TOOLBAR ===== */
.notice{
  background:var(--surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);
  border:1px solid var(--border);color:var(--text-secondary);
  font-size:13.5px;padding:12px 16px;border-radius:var(--radius);margin:22px 0 0;
}
.toolbar{
  margin-top:16px;background:var(--surface);
  backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);
  border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow);
}
.toolbar-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;}
.toolbar-row.filters{margin-top:12px;}
.search-box{flex:1;min-width:220px;}
.search-box input{
  width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:8px;
  font-size:14px;outline:none;background:var(--input-bg);color:var(--text-primary);transition:border-color .2s;
}
.search-box input::placeholder{color:var(--text-dim);}
.search-box input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);}
.sort-box{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-dim);}
.sort-box select{padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:14px;background:var(--surface-solid);color:var(--text-primary);}
.filter-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.filter-label{font-size:13px;color:var(--text-dim);margin-right:2px;}
.chip{
  border:1px solid var(--border);background:var(--chip-bg);color:var(--chip-text);
  padding:5px 12px;border-radius:999px;font-size:13px;cursor:pointer;
  user-select:none;transition:all .15s;font-family:inherit;
}
.chip:hover{border-color:var(--accent);color:var(--accent);}
.chip.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:500;}
.toolbar-meta{margin-top:12px;font-size:12.5px;color:var(--text-dim);display:flex;gap:8px;align-items:center;}
.toolbar-meta .dot{opacity:.5;}

/* ===== TIMELINE + CARDS ===== */
.timeline{position:relative;margin:22px 0 40px;}
.card{
  background:var(--surface);
  backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);
  border:1px solid var(--border);border-left:3px solid var(--accent);
  border-radius:var(--radius);padding:16px 18px;margin-bottom:14px;
  box-shadow:var(--shadow);transition:border-color .2s,box-shadow .2s;
}
.card:hover{border-left-color:var(--accent-strong);box-shadow:0 8px 32px rgba(0,0,0,.18);}
.card.featured{border-left-color:#A78BFA;}
.card-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px;}
.badge{font-size:12px;padding:2px 9px;border-radius:6px;color:#fff;font-weight:600;}
.badge.type{background:var(--accent-soft);color:var(--text-secondary);font-weight:500;}
.badge.featured{background:linear-gradient(135deg,#A78BFA,#8B5CF6);}
.badge.sample{background:rgba(250,204,21,.15);color:#FBBF24;font-weight:500;border:1px solid rgba(250,204,21,.2);}
.card h3{margin:4px 0 6px;font-size:16px;line-height:1.45;}
.card h3 a{color:var(--text-primary);}
.card h3 a:hover{color:var(--accent);}
.card .summary{margin:0 0 10px;color:var(--text-secondary);font-size:14px;}
.card .keypoints{margin:0 0 12px;padding-left:20px;color:var(--text-secondary);font-size:14px;}
.card .keypoints li{margin:3px 0;}
.card .meta{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--text-dim);}
.card .tags{margin-top:10px;display:flex;gap:6px;flex-wrap:wrap;}
.tag{font-size:12px;color:var(--accent);background:var(--accent-soft);padding:2px 8px;border-radius:6px;}

.empty{text-align:center;color:var(--text-dim);padding:40px 0;}
.hidden{display:none;}
code{background:rgba(255,255,255,.06);padding:1px 6px;border-radius:4px;font-size:13px;color:var(--accent);}

/* ===== PROSE (about) ===== */
.prose{
  background:var(--surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);
  border:1px solid var(--border);border-radius:var(--radius);padding:22px 24px;margin-top:20px;box-shadow:var(--shadow);
}
.prose h2{font-size:17px;margin:22px 0 8px;color:var(--accent);border-left:3px solid var(--accent);padding-left:10px;}
.prose h2:first-child{margin-top:0;}
.prose ul{margin:6px 0;padding-left:20px;}
.prose p{margin:6px 0;}
.prose li{color:var(--text-secondary);}

/* ===== FOOTER ===== */
.site-footer{border-top:1px solid var(--border);margin-top:30px;padding:20px;background:var(--surface-solid);}
.site-footer p{margin:2px 0;font-size:12.5px;color:var(--text-dim);text-align:center;}
.site-footer .muted{opacity:.8;}

/* ===== BOARD WALL (首页卡片墙) ===== */
.board-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:24px 0 40px;}
.board-card{
  position:relative;display:block;background:var(--surface);
  backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);
  border:1px solid var(--border);border-top:3px solid transparent;
  border-radius:var(--radius);padding:20px 18px 18px;box-shadow:var(--shadow);
  text-decoration:none;color:var(--text-primary);
  transition:transform .2s,box-shadow .2s,border-color .2s;
}
.board-card:hover{transform:translateY(-3px);box-shadow:0 8px 32px rgba(0,0,0,.35),0 0 0 1px var(--accent-soft);border-color:var(--accent);text-decoration:none;}
.board-card::after{content:"→";position:absolute;right:16px;bottom:14px;font-size:18px;font-weight:700;color:var(--accent);opacity:0;transform:translateX(-5px);transition:opacity .2s,transform .2s;}
.board-card:hover::after{opacity:1;transform:translateX(0);}
.bc-icon{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:22px;color:#fff;margin-bottom:12px;box-shadow:0 3px 10px rgba(0,0,0,.3);}
.board-card h3{margin:0 0 6px;font-size:17px;}
.bc-desc{margin:0 0 14px;font-size:13.5px;color:var(--text-secondary);min-height:40px;}
.bc-meta{display:flex;gap:10px;align-items:center;font-size:12.5px;color:var(--text-dim);}
.bc-count{font-weight:600;color:var(--text-primary);}
.bc-tag{position:absolute;top:14px;right:14px;font-size:11px;color:var(--text-dim);background:rgba(255,255,255,.05);padding:2px 8px;border-radius:999px;border:1px solid var(--border);}

/* ===== BOARD HEAD (子页标题区) ===== */
.board-head{margin-top:22px;}
.board-head h2{font-size:20px;margin:0 0 4px;color:var(--accent);}
.board-head p{margin:0;font-size:13.5px;color:var(--text-dim);}

/* ===== 飞书文档占位（reading 板块） ===== */
.feishu-card{
  display:flex;align-items:center;gap:12px;
  background:var(--accent-soft);border:1px dashed var(--accent);
  border-radius:var(--radius);padding:14px 16px;margin:16px 0 0;
  color:var(--text-secondary);font-size:14px;
}
.feishu-card .feishu-ico{font-size:22px;flex-shrink:0;}
.feishu-card .feishu-text{flex:1;}
.feishu-card .feishu-text small{display:block;color:var(--text-dim);font-size:12.5px;margin-top:2px;}
.feishu-card .feishu-btn{
  font-size:13px;color:var(--accent);border:1px solid var(--accent);
  border-radius:999px;padding:4px 14px;text-decoration:none;white-space:nowrap;flex-shrink:0;
}
.feishu-card .feishu-btn:hover{background:var(--accent);color:#fff;text-decoration:none;}

/* ===== SCROLLBAR / SELECTION ===== */
::-webkit-scrollbar{width:6px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:rgba(99,130,180,.25);border-radius:3px;}
::-webkit-scrollbar-thumb:hover{background:rgba(99,130,180,.4);}
::selection{background:var(--accent-soft);color:var(--text-primary);}

/* ====================================================== */
/* THEME OVERRIDES — 子页面按板块切换独立风格            */
/* ====================================================== */

/* 1) 安全信息收集整理 —— 经典蓝橙浅色（原设计配色） */
.theme-safety{
  --bg:#F5F7FA;
  --surface:#FFFFFF;
  --surface-solid:#fff;
  --header-bg:#1A3C6E;
  --header-text:#FFFFFF;
  --text-primary:#1F2933;
  --text-secondary:#475569;
  --text-dim:#64748B;
  --border:#E2E8F0;
  --accent:#1A3C6E;
  --accent-soft:#EAF0F8;
  --accent-strong:#2563EB;
  --brand-from:#E86A17;
  --brand-to:#F59E0B;
  --input-bg:#fff;
  --chip-bg:#fff;
  --chip-text:#1F2933;
  --shadow:0 1px 3px rgba(16,24,40,.08),0 1px 2px rgba(16,24,40,.04);
  --glass-blur:none;
}
.theme-safety .site-header::before,.theme-safety .site-header::after{display:none;}
.theme-safety .site-header{border-bottom:3px solid #E86A17;}
.theme-safety .card.featured{border-left-color:#E86A17;}

/* 2) 个人笔记 —— Notion/Dribbble 画廊卡片瀑布流 */
.theme-reading{
  --bg:#F8F9FA;
  --surface:#FFFFFF;
  --surface-solid:#fff;
  --header-bg:#FFFFFF;
  --header-text:#1A1A1A;
  --text-primary:#1E293B;
  --text-secondary:#475569;
  --text-dim:#94A3B8;
  --border:#E8ECF1;
  --accent:#5B8DEF;
  --accent-soft:rgba(91,141,239,.10);
  --accent-strong:#3B7CFF;
  --brand-from:#5B8DEF;
  --brand-to:#8B5CF6;
  --input-bg:#fff;
  --chip-bg:#fff;
  --chip-text:#1E293B;
  --shadow:0 2px 12px rgba(0,0,0,.06);
  --glass-blur:none;
}
.theme-reading .site-header::before,.theme-reading .site-header::after{display:none;}
.theme-reading .site-header{border-bottom:1px solid var(--border);}

/* 筛选 pill 横排 */
.theme-reading .toolbar{
  background:transparent;border:none;box-shadow:none;padding:0;margin-top:12px;}
.theme-reading .filter-group{
  flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;
  scrollbar-width:none;}
.theme-reading .filter-group::-webkit-scrollbar{display:none;}
.theme-reading .chip{
  border-radius:999px;padding:6px 16px;font-size:13.5px;white-space:nowrap;
  border-color:var(--border);background:#fff;color:var(--text-secondary);
}
.theme-reading .chip:hover{border-color:var(--accent);color:var(--accent);}
.theme-reading .chip.active{
  background:var(--text-primary);border-color:var(--text-primary);color:#fff;
}

/* 搜索框内嵌 */
.theme-reading .search-box input{
  border-radius:999px;background:#fff;border-color:var(--border);
}
.theme-reading .sort-box{display:none;}

/* 画廊网格（替代 timeline） */
.theme-reading .timeline{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:20px;margin:24px 0 40px;
}
.theme-reading .card{
  border:none;border-left:none;
  border-radius:14px;padding:0;overflow:hidden;
  box-shadow:0 2px 16px rgba(0,0,0,.06);
  transition:transform .18s,box-shadow .18s;
  display:flex;flex-direction:column;
}
.theme-reading .card:hover{
  transform:translateY(-4px);
  box-shadow:0 8px 28px rgba(0,0,0,.1);
}

/* 封面区 */
.theme-reading .card .card-cover{
  width:100%;height:160px;overflow:hidden;
  position:relative;display:flex;align-items:center;justify-content:center;
  font-size:36px;color:rgba(255,255,255,.6);
  flex-shrink:0;
}
.theme-reading .card .card-cover.cov-blue   { background:linear-gradient(135deg,#667EEA,#764BA2); }
.theme-reading .card .card-cover.cov-green   { background:linear-gradient(135deg,#11998e,#38ef7d); }
.theme-reading .card .card-cover.cov-warm    { background:linear-gradient(135deg,#f093fb,#f5576c); }
.theme-reading .card .card-cover.cov-gold    { background:linear-gradient(135deg,#F2994A,#F2C94C); }
.theme-reading .card .card-cover.cov-ocean   { background:linear-gradient(135deg,#00c6fb,#005bea); }
.theme-reading .card .card-cover.cov-night   { background:linear-gradient(135deg,#0F172A,#1E293B); }
.theme-reading .card .card-cover.cov-default  { background:linear-gradient(135deg,#94A3B8,#CBD5E1); }

/* 卡片内容 */
.theme-reading .card .card-body{padding:16px 18px 18px;flex:1;display:flex;flex-direction:column;}
.theme-reading .card h3{font-size:15.5px;font-weight:600;margin:0 0 8px;line-height:1.45;}
.theme-reading .card h3 a{color:var(--text-primary);}
.theme-reading .card h3 a:hover{color:var(--accent);}
.theme-reading .card .keypoints{margin:0 0 12px;padding-left:0;list-style:none;color:var(--text-secondary);font-size:13.5px;}
.theme-reading .card .keypoints li{margin:4px 0;padding-left:16px;position:relative;}
.theme-reading .card .keypoints li::before{content:"·";position:absolute;left:0;color:var(--accent);font-weight:bold;}
.theme-reading .card .meta{margin-top:auto;padding-top:10px;border-top:1px solid var(--border);font-size:12px;}
.theme-reading .card .tags{margin-top:10px;}
.theme-reading .tag{font-size:11.5px;background:var(--accent-soft);color:var(--accent);padding:2px 8px;border-radius:999px;}
.theme-reading .card .card-top{display:flex;gap:6px;margin-bottom:8px;align-items:center;}
.theme-reading .badge.type{
  font-size:11px;padding:2px 8px;border-radius:999px;
  background:var(--accent-soft);color:var(--accent);font-weight:500;
}
.theme-reading .feishu-card{border-color:var(--accent);}

/* 3) 知乎专栏 —— 知乎 APP：白底知乎蓝 */
.theme-zhihu{
  --bg:#F6F6F6;
  --surface:#FFFFFF;
  --surface-solid:#fff;
  --header-bg:#FFFFFF;
  --header-text:#1A1A1A;
  --text-primary:#1A1A1A;
  --text-secondary:#444444;
  --text-dim:#8590A6;
  --border:#EBEBEB;
  --accent:#0084FF;
  --accent-soft:#E8F3FF;
  --accent-strong:#0066CC;
  --brand-from:#0084FF;
  --brand-to:#00A1FF;
  --input-bg:#fff;
  --chip-bg:#fff;
  --chip-text:#1A1A1A;
  --shadow:0 1px 3px rgba(0,0,0,.06);
  --glass-blur:none;
}
.theme-zhihu .site-header::before,.theme-zhihu .site-header::after{display:none;}
.theme-zhihu .site-header{border-bottom:1px solid var(--border);}
.theme-zhihu .card{border-radius:10px;border-left:3px solid #D6E4F0;}
.theme-zhihu .card:hover{border-left-color:var(--accent);}
.theme-zhihu .site-nav a.active{color:var(--accent);}

/* 4) 小白的AI自习室 —— 简单大气：青蓝渐变头 + 冷白 */
.theme-gzh{
  --bg:#F4F7FA;
  --surface:#FFFFFF;
  --surface-solid:#fff;
  --header-bg:linear-gradient(135deg,#0EA5E9 0%,#6366F1 100%);
  --header-text:#FFFFFF;
  --text-primary:#1E293B;
  --text-secondary:#475569;
  --text-dim:#94A3B8;
  --border:#E2E8F0;
  --accent:#0EA5E9;
  --accent-soft:#E0F2FE;
  --accent-strong:#0284C7;
  --brand-from:#22D3EE;
  --brand-to:#6366F1;
  --input-bg:#fff;
  --chip-bg:#fff;
  --chip-text:#1E293B;
  --shadow:0 2px 8px rgba(14,165,233,.08);
  --glass-blur:none;
}
.theme-gzh .site-header::before,.theme-gzh .site-header::after{display:none;}

/* ===== RESPONSIVE ===== */
@media (max-width:600px){
  .header-inner{flex-direction:column;align-items:flex-start;gap:10px;}
  .site-nav a{margin-left:0;margin-right:16px;}
  .brand-text h1{font-size:17px;}
  .hero-banner h2{font-size:24px;}
  .hero-banner{padding:32px 16px 30px;}
}
