/* ═══════════════════════════════════════════════════════════════════
   ib —— 借《Internal Beyond》的视觉语言：液态玻璃 + 蓝
   不搬它的任何素材，只用它的做法：半透明面板、blur(12px) saturate(1.25)、
   14px 圆角、大范围弥散的蓝色阴影、深蓝墨字。参考：
   https://github.com/Sui-IB/InternalBeyond （PolyForm Noncommercial）
   ═══════════════════════════════════════════════════════════════════ */

html[data-scheme="ib"] {
  --bg: #dfe8f7;
  --ui: #16305f;
  --me: #4d6bfe;
  --me-hi: #2f4ecf;
  --anom: #5080b0;
  --err: #b8443c;
  --dim-k: 0.6;
  --scan: 0;
  --glow: 0;

  --ib-ink: #16305f;
  --ib-ink-2: #5f739b;
  --ib-accent: #5080b0;
  --ib-accent-l: #72a8d8;
  --ib-glass: rgba(255, 255, 255, .62);
  --ib-glass-2: rgba(255, 255, 255, .42);
  --ib-line: rgba(96, 136, 196, .3);
  --ib-shadow: 0 20px 54px rgba(110, 150, 210, .16);
  --ib-shadow-sm: 0 8px 24px rgba(110, 150, 210, .14);
  --ib-radius: 14px;
  --ib-sans: "Noto Sans SC", "Microsoft YaHei", "PingFang SC", system-ui, sans-serif;
}

/* ── 底：一层天空蓝的渐变 + 两团柔光，像光从窗户进来 ── */
html[data-scheme="ib"] body {
  background:
    radial-gradient(80% 60% at 18% 8%, rgba(255, 255, 255, .85), transparent 62%),
    radial-gradient(70% 55% at 88% 12%, rgba(114, 168, 216, .34), transparent 66%),
    radial-gradient(90% 70% at 50% 108%, rgba(80, 128, 176, .28), transparent 68%),
    linear-gradient(170deg, #eaf1fc 0%, #dfe8f7 46%, #d3e0f4 100%);
  color: var(--ib-ink);
  background-attachment: fixed;
}

/* 屏幕那一层：只留很淡的斜向高光，不要扫描线 */
html[data-scheme="ib"] .crt {
  background:
    repeating-linear-gradient(115deg, rgba(255, 255, 255, .16) 0 2px, transparent 2px 9px),
    radial-gradient(120% 100% at 50% 0%, rgba(255, 255, 255, .5), transparent 58%);
  opacity: .7;
  mix-blend-mode: normal;
}
html[data-scheme="ib"] .crt::after {
  background: radial-gradient(120% 110% at 50% 42%, transparent 60%, rgba(70, 106, 158, .16) 100%);
  opacity: 1;
}

/* ── 顶栏：做成一块浮起来的玻璃条 ── */
html[data-scheme="ib"] .bar {
  margin: 10px 14px 0;
  border: 1px solid var(--ib-line);
  border-bottom: 1px solid var(--ib-line);
  border-radius: var(--ib-radius);
  background: var(--ib-glass);
  backdrop-filter: blur(12px) saturate(1.25);
  -webkit-backdrop-filter: blur(12px) saturate(1.25);
  box-shadow: var(--ib-shadow-sm);
  color: var(--ib-ink);
}
html[data-scheme="ib"] .bar__l b { color: var(--ib-ink); }
html[data-scheme="ib"] .bar__l .dim,
html[data-scheme="ib"] .bar__r .dim { color: var(--ib-ink-2); }
html[data-scheme="ib"] .bar__title {
  letter-spacing: .14em;
  text-transform: uppercase;
  font-family: var(--ib-sans);
  font-weight: 600;
  color: var(--ib-accent);
}
html[data-scheme="ib"] .mem i { background: rgba(96, 136, 196, .25); }
html[data-scheme="ib"] .mem i.on { background: var(--ib-accent); }
html[data-scheme="ib"] .mem i.hot { background: var(--me); }
html[data-scheme="ib"] .mem span,
html[data-scheme="ib"] .bar__pid { color: var(--ib-ink-2); }
html[data-scheme="ib"] .bar__c button {
  color: var(--ib-ink-2);
  border: 1px solid transparent;
  border-radius: 999px;
  background: none;
}
html[data-scheme="ib"] .bar__c button:hover { color: var(--ib-ink); }
html[data-scheme="ib"] .bar__c button.on {
  color: #fff;
  background: var(--ib-accent);
  border-color: transparent;
  box-shadow: 0 4px 14px rgba(80, 128, 176, .34);
}
html[data-scheme="ib"] .bar__pet { color: var(--ib-ink-2); border-radius: 999px; }
html[data-scheme="ib"] .bar__pet:hover { color: var(--ib-ink); border-color: var(--ib-line); }
html[data-scheme="ib"] .hb { background: var(--ib-accent); box-shadow: 0 0 0 3px rgba(80,128,176,.18); }
html[data-scheme="ib"] #clock { color: var(--ib-ink); }

/* ── 首屏 ── */
html[data-scheme="ib"] .boot .ln { color: var(--ib-ink-2); }
html[data-scheme="ib"] .boot .ln .ps { color: var(--ib-accent); }
html[data-scheme="ib"] .name {
  color: var(--ib-ink);
  font-family: var(--ib-sans);
  font-weight: 600;
  letter-spacing: .02em;
  text-shadow: none;
}
html[data-scheme="ib"] .lede,
html[data-scheme="ib"] .cmd { color: var(--ib-ink); text-shadow: none; }
html[data-scheme="ib"] .cmd .ps { color: var(--ib-accent); }
html[data-scheme="ib"] .hint { color: var(--ib-ink-2); }
html[data-scheme="ib"] .caret { background: var(--me); }
html[data-scheme="ib"] #wish-in {
  background: rgba(255, 255, 255, .55);
  border: 1px solid var(--ib-line);
  border-radius: 999px;
  color: var(--ib-ink);
  caret-color: var(--me);
  padding: 3px 12px;
}
html[data-scheme="ib"] #wish-in::placeholder { color: var(--ib-ink-2); }
html[data-scheme="ib"] .hint--type.typing #wish-in {
  border-color: var(--me);
  box-shadow: 0 0 0 3px rgba(77, 107, 254, .16);
}
html[data-scheme="ib"] .ls a { color: var(--ib-ink); }
html[data-scheme="ib"] .ls a:hover { color: var(--me); text-decoration: underline; text-underline-offset: 3px; }
html[data-scheme="ib"] .ls span { color: var(--ib-ink-2); }

/* neofetch 那块：玻璃卡 */
html[data-scheme="ib"] .fetch {
  background: var(--ib-glass);
  border: 1px solid var(--ib-line);
  border-radius: var(--ib-radius);
  backdrop-filter: blur(12px) saturate(1.2);
  -webkit-backdrop-filter: blur(12px) saturate(1.2);
  box-shadow: var(--ib-shadow);
}
html[data-scheme="ib"] .fetch dt { color: var(--ib-ink-2); }
html[data-scheme="ib"] .fetch dd { color: var(--ib-ink); }
html[data-scheme="ib"] .fetch dd b { color: var(--ib-accent); }
html[data-scheme="ib"] .fetch__hint { color: var(--ib-ink-2); }

/* ── 各屏：玻璃卡 + 圆角 + 弥散阴影 ── */
html[data-scheme="ib"] .frame {
  background: var(--ib-glass);
  border: 1px solid var(--ib-line);
  border-radius: var(--ib-radius);
  backdrop-filter: blur(12px) saturate(1.2);
  -webkit-backdrop-filter: blur(12px) saturate(1.2);
  box-shadow: var(--ib-shadow);
  overflow: hidden;
}
html[data-scheme="ib"] .frame::before,
html[data-scheme="ib"] .frame::after { opacity: 0; }
html[data-scheme="ib"] .frame__bar {
  background: var(--ib-glass-2);
  border-bottom: 1px solid var(--ib-line);
  color: var(--ib-ink);
  font-family: var(--ib-sans);
  font-weight: 600;
  letter-spacing: .04em;
}
html[data-scheme="ib"] .frame__bar span:first-child { text-transform: none; }
html[data-scheme="ib"] .frame__foot { color: var(--ib-ink-2); }
html[data-scheme="ib"] .frame__foot b { color: var(--ib-ink); }

/* 每屏字母序号 */
html[data-scheme="ib"] .wrap { counter-reset: chap; }
html[data-scheme="ib"] .block { counter-increment: chap; }
html[data-scheme="ib"] .block > .cmd::before {
  content: counter(chap, upper-alpha);
  display: inline-block;
  min-width: 1.5em;
  margin-right: 6px;
  font-weight: 700;
  color: var(--acc, var(--ib-accent));
}
html[data-scheme="ib"] #checkin { --acc: #2f7d8c; }
html[data-scheme="ib"] #journey { --acc: #a8763a; }
html[data-scheme="ib"] #notes { --acc: #6d5bb8; }
html[data-scheme="ib"] #works { --acc: #b5693a; }
html[data-scheme="ib"] #collected { --acc: #a8557f; }
html[data-scheme="ib"] #contact { --acc: var(--me); }

/* 标签 / chip / 按钮：玻璃胶囊 */
html[data-scheme="ib"] .chips button,
html[data-scheme="ib"] .chip,
html[data-scheme="ib"] .btn {
  background: rgba(255, 255, 255, .5);
  border: 1px solid var(--ib-line);
  border-radius: 999px;
  color: var(--ib-ink);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
html[data-scheme="ib"] .chips button:hover,
html[data-scheme="ib"] .chip:hover,
html[data-scheme="ib"] .btn:hover {
  background: #fff;
  border-color: var(--ib-accent);
  color: var(--ib-accent);
  box-shadow: 0 6px 18px rgba(110, 150, 210, .22);
}
html[data-scheme="ib"] .chips button.on,
html[data-scheme="ib"] .chip.on {
  background: var(--ib-accent);
  border-color: transparent;
  color: #fff;
}
html[data-scheme="ib"] .btn--ghost { color: var(--ib-ink-2); }

/* 进度条 / 统计 */
html[data-scheme="ib"] .meter {
  background: rgba(96, 136, 196, .14);
  border: 1px solid rgba(96, 136, 196, .2);
  border-radius: 999px;
  overflow: hidden;
}
html[data-scheme="ib"] .meter i { background: var(--acc, var(--ib-accent)); border-radius: 999px; }
html[data-scheme="ib"] .yr button { color: var(--ib-ink-2); }
/* ib 里底色太接近字色（对比度只有 3.1），改成浅色底 + 深字 */
html[data-scheme="ib"] .yr button.on {
  color: var(--ib-ink);
  background: rgba(80, 128, 176, .16);
  border-color: var(--ib-accent);
  border-bottom: 1px solid var(--ib-accent);
}

/* 联系那块的白卡也换成玻璃 */
html[data-scheme="ib"] .who {
  background: rgba(255, 255, 255, .58);
  border: 1px solid var(--ib-line);
  border-radius: var(--ib-radius);
  box-shadow: var(--ib-shadow-sm);
}
html[data-scheme="ib"] .who__h::before { background: var(--ib-accent); box-shadow: 0 0 0 2px rgba(80,128,176,.2); }
html[data-scheme="ib"] .mail__in,
html[data-scheme="ib"] .mail__ta {
  background: rgba(255, 255, 255, .6);
  border: 1px solid var(--ib-line);
  border-radius: 10px;
  color: var(--ib-ink);
}
html[data-scheme="ib"] .mail__in:focus,
html[data-scheme="ib"] .mail__ta:focus {
  border-color: var(--me);
  box-shadow: 0 0 0 3px rgba(77, 107, 254, .14);
  outline: none;
}

/* 命令行：也是玻璃 */
html[data-scheme="ib"] .sh {
  background: rgba(255, 255, 255, .72);
  backdrop-filter: blur(16px) saturate(1.25);
  -webkit-backdrop-filter: blur(16px) saturate(1.25);
  border-top: 1px solid var(--ib-line);
  color: var(--ib-ink);
}
html[data-scheme="ib"] .sh__list {
  background: rgba(255, 255, 255, .5);
  border-bottom: 1px solid var(--ib-line);
}
html[data-scheme="ib"] .sh__list li.on { background: var(--ib-accent); color: #fff; }
html[data-scheme="ib"] .sh__list li.on .k,
html[data-scheme="ib"] .sh__list li.on .a { color: #fff; }
html[data-scheme="ib"] .sh__hint { color: var(--ib-ink-2); }

/* 猫的对话气泡、标尺、飘字 */
html[data-scheme="ib"] .pet__say {
  background: rgba(255, 255, 255, .78);
  border: 1px solid var(--ib-line);
  border-radius: 10px;
  color: var(--ib-ink);
  box-shadow: var(--ib-shadow-sm);
}
html[data-scheme="ib"] .pet img { filter: drop-shadow(0 6px 14px rgba(110, 150, 210, .34)); }
html[data-scheme="ib"] .gauge { color: var(--ib-ink-2); }
html[data-scheme="ib"] .gauge__rail { background: rgba(96, 136, 196, .18); }
html[data-scheme="ib"] .gauge__rail i { background: var(--ib-accent); }
html[data-scheme="ib"] .wishes span { color: var(--ib-ink); text-shadow: 0 1px 6px rgba(255, 255, 255, .8); }
html[data-scheme="ib"] .wishes span.on { opacity: .3; }
html[data-scheme="ib"] .stream { opacity: .07; color: var(--ib-ink-2); }
html[data-scheme="ib"] .wish-clear { color: var(--ib-ink-2); }
html[data-scheme="ib"] .wish-clear[data-done="1"] { color: var(--ib-accent); }

html[data-scheme="ib"] ::selection { background: rgba(77, 107, 254, .2); }
html[data-scheme="ib"] ::-webkit-scrollbar { width: 10px; }
html[data-scheme="ib"] ::-webkit-scrollbar-track { background: transparent; }
html[data-scheme="ib"] ::-webkit-scrollbar-thumb {
  background: rgba(96, 136, 196, .4);
  border: 3px solid transparent;
  background-clip: padding-box;
  border-radius: 999px;
}

/* 底栏那条斜纹在玻璃风里不要了 */
html[data-scheme="ib"] .band { display: none; }

@media (max-width: 780px) {
  html[data-scheme="ib"] .bar { margin: 6px 8px 0; }
}


/* 点阵地图在浅色玻璃上太淡了：拉一点对比把它捞回来 */
html[data-scheme="ib"] #dotmap { filter: contrast(1.45) saturate(1.1); }
html[data-scheme="ib"] #dotfx  { filter: contrast(1.2); }



  30%      { transform: translateY(-2.5px); }
  60%      { transform: translateY(0); }
}
