/* ==========================================================================
   jefayx 三站共用外壳：配色、字体、顶栏、页脚、基础控件
   与 jefayx.com 首页 v4 的数值逐项对齐（2026-11-01）。
   2026-11-01 第二版：左上角兜帽小人换成猫形回声标识。
   所有类名以 shell- 开头，避免和各站原有样式冲突。
   深浅色由三站共用的 theme-init.js 设置 :root[data-theme]，本文件只读取它。
   ========================================================================== */

:root{
  /* 字体 */
  --shell-sans:"DM Sans","PingFang SC","PingFang TC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  --shell-mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
  /* 浅色 */
  --shell-bg:#f3f4f1;--shell-panel:#fff;--shell-raise:#f6f7f4;--shell-line:#e0e3df;--shell-line2:#cdd2cd;
  --shell-text:#121514;--shell-muted:#5d6562;--shell-dim:#8b928f;
  --shell-amber:#a3540c;--shell-amber-soft:rgba(163,84,12,.14);   /* 只给"正在发生"的东西 */
  --shell-green:#07483f;--shell-focus:#16766a;                     /* 链接 */
  --shell-up:#b4382e;--shell-down:#0f7a4a;                         /* 红涨绿跌、利好红利空绿，只用于数据 */
  --shell-up-soft:rgba(180,56,46,.09);--shell-down-soft:rgba(15,122,74,.09);
  --shell-radius:6px;
}
:root[data-theme="dark"]{
  --shell-bg:#0c0e0e;--shell-panel:#111414;--shell-raise:#161a1a;--shell-line:#252a2a;--shell-line2:#323838;
  --shell-text:#e7eae8;--shell-muted:#8d9693;--shell-dim:#5d6663;
  --shell-amber:#f2a65a;--shell-amber-soft:rgba(242,166,90,.16);
  --shell-green:#8fd3bf;--shell-focus:#9de1d3;
  --shell-up:#f0877c;--shell-down:#6fcf9f;--shell-up-soft:rgba(240,135,124,.12);--shell-down-soft:rgba(111,207,159,.12);
}

/* 字号规则（与首页一致）
   一般内文 15px · 列表标题 16px · 页面大标题 26px/500 · 小标题、时间、来源缩写用等宽字
   等宽小标题 12px/600、字距 .6px · 时间 12px · 来源缩写 11px · 大数字 19–21px/500 等宽
   唯一例外：晨报长文正文维持 16px，方便阅读。圆角一律 6px。 */

/* ── 顶栏 ── */
.shell-top,.shell-top *,.shell-foot,.shell-foot *,.shell-seg,.shell-seg *,.shell-chip,.shell-iconbtn{box-sizing:border-box}
.shell-top{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--shell-bg) 88%,transparent);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--shell-line);font-family:var(--shell-sans)}
.shell-top .shell-inner{display:flex;align-items:center;gap:22px;height:72px;width:min(94vw,1240px);margin:0 auto}
.shell-brand{display:inline-flex;align-items:center;gap:8px;padding:4px 14px 4px 0;margin-right:-8px;border-right:1px solid var(--shell-line);
  color:var(--shell-muted);font-size:15px;text-decoration:none}
.shell-brand:hover{color:var(--shell-text)}
/* ── 左上角标识：猫形回声（2026-11-01，替换兜帽小人）──
   替换原来 .hood .h-cloak / .h-seam / .h-rim / .h-face / .h-glow 那一组规则。
   颜色：猫身和回声圈 = 正文色，眼睛 = 琥珀色，跟随深浅主题。 */
:root{--mark-ink:var(--shell-text);--mark-eye:var(--shell-amber)}
.hood{width:40px;height:40px;flex-shrink:0;overflow:visible;stroke:none}
.hood *{stroke:none}
.hood .h-body,.hood .h-ring{fill:var(--mark-ink)}
/* 回声圈靠 mask 里的描边画出来；旧样式里 .hood *{stroke:none} 会把它吃掉，这里加权重保回来 */
.shell-brand .hood mask .e-o,.brand .hood mask .e-o,.hood mask .e-o{stroke:#fff}
.shell-brand .hood mask .e-i,.brand .hood mask .e-i,.hood mask .e-i{stroke:#000}
.hood .h-eye{fill:var(--mark-eye);transform-box:fill-box;transform-origin:center;transition:transform .07s ease-in}
.hood.blink .h-eye{transform:scaleY(.1)}
.hood.wink .h-eye.r{transform:scaleY(.1)}

.shell-nav{display:flex;gap:4px}
.shell-nav a{position:relative;padding:8px 12px;border-radius:var(--shell-radius);font-size:15px;color:var(--shell-muted);text-decoration:none}
.shell-nav a:hover{color:var(--shell-text);background:var(--shell-raise)}
.shell-nav a[aria-current="page"]{color:var(--shell-text);font-weight:600}
.shell-nav a[aria-current="page"]::after{content:"";position:absolute;left:12px;right:12px;bottom:-17px;height:2px;background:var(--shell-amber);border-radius:2px}

.shell-cmd{margin-left:auto;position:relative;width:300px}
.shell-cmd input{width:100%;height:40px;font:500 14px var(--shell-mono);color:var(--shell-text);background:var(--shell-panel);
  border:1px solid var(--shell-line2);border-radius:var(--shell-radius);padding:0 12px 0 32px;outline:none}
.shell-cmd input::placeholder{color:var(--shell-dim)}
.shell-cmd input:focus{border-color:var(--shell-amber);box-shadow:0 0 0 3px var(--shell-amber-soft)}
.shell-cmd .slash{position:absolute;left:12px;top:50%;transform:translateY(-50%);font:600 13px var(--shell-mono);color:var(--shell-amber)}

/* ── 页脚 ── */
.shell-foot{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;width:min(94vw,1240px);margin:0 auto;padding:14px 0 30px;
  border-top:1px solid var(--shell-line);font:12px var(--shell-mono);color:var(--shell-dim)}
.shell-foot a{color:var(--shell-muted);text-decoration:none}
.shell-foot a:hover{color:var(--shell-text)}
.shell-foot .l{display:inline-flex;align-items:center;gap:10px}
.shell-foot .lock{display:inline-grid;place-items:center;width:26px;height:26px;margin-left:-6px;border-radius:4px;color:var(--shell-dim)}
.shell-foot .lock svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7}
.shell-foot .links{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px}
.shell-foot .cta{color:var(--shell-amber)}
.shell-foot .soc{display:inline-flex;align-items:center;gap:7px}
.shell-foot .soc svg{width:14px;height:14px}

/* ── 基础控件 ── */
.shell-seg{display:inline-flex;border:1px solid var(--shell-line2);border-radius:var(--shell-radius);padding:3px;background:var(--shell-panel)}
.shell-seg button,.shell-seg a{font:inherit;font-size:14px;color:var(--shell-muted);background:transparent;border:0;border-radius:4px;padding:6px 12px;cursor:pointer;white-space:nowrap;text-decoration:none}
.shell-seg [aria-pressed="true"],.shell-seg [aria-current="page"]{background:var(--shell-text);color:var(--shell-bg)}
.shell-chip{font:inherit;font-size:13px;color:var(--shell-muted);background:var(--shell-panel);border:1px solid var(--shell-line);border-radius:var(--shell-radius);padding:5px 12px;cursor:pointer;white-space:nowrap}
.shell-chip[aria-pressed="true"]{color:var(--shell-bg);background:var(--shell-text);border-color:var(--shell-text)}
.shell-iconbtn{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:var(--shell-radius);border:1px solid var(--shell-line2);color:var(--shell-muted);background:var(--shell-panel)}
.shell-iconbtn:hover{color:var(--shell-text)}
.shell-iconbtn[aria-disabled="true"]{opacity:.35;pointer-events:none}
.shell-iconbtn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.shell-label{font:600 12px var(--shell-mono);letter-spacing:.6px;color:var(--shell-muted)}
.shell-live{color:var(--shell-amber)}
.shell-live::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:7px;vertical-align:1px}

/* ── 手机 ── */
@media (max-width:640px){
  .shell-top .shell-inner{gap:10px;height:62px}
  .shell-brand{padding-right:10px;gap:6px;font-size:14px}
  .shell-brand .hood{width:36px;height:36px}
  .shell-nav{margin-left:auto}
  .shell-nav a{padding:8px}
  .shell-nav a[aria-current="page"]::after{bottom:-12px}
  .shell-cmd{display:none}
}
@media (prefers-reduced-motion:reduce){.hood .h-eye{transition:none}}
