/* 主题样式 - 科技蓝 / 极客青 */

/* ====== 科技蓝 (默认主题) ====== */
[data-theme="tech"] {
  --brand: #0050b3;
  --brand-2: #1677ff;
  --brand-3: #69b1ff;
  --ink: #002766;
  --muted: #1677ff;
  --paper: #e6f4ff;
  --line: rgba(22, 119, 255, .22);
  --card: rgba(255, 255, 255, .74);
  --danger: #f43f5e;
  --ok: #10b981;
  --shadow: 0 24px 70px rgba(22, 119, 255, .12);
  --inner: inset 0 1px 0 rgba(255,255,255,.9), inset 0 -18px 40px rgba(22,119,255,.04);
  --hero-from: #002766;
  --hero-via: #0050b3;
  --hero-to: #4096ff;
  --hero-shadow: rgba(22, 119, 255, .28);
  --input-bg: rgba(255,255,255,.82);
  --input-focus-ring: rgba(22, 119, 255, .15);
  --th-bg: rgba(230, 244, 255, .5);
  --th-color: #0050b3;
  --tr-hover: rgba(230, 244, 255, .4);
  --resource-body-bg: rgba(230, 244, 255, .82);
  --announce-bg: rgba(230, 244, 255, .86);
  --code-bg: rgba(230, 244, 255, .92);
  --code-color: #0050b3;
  --badge-yellow-bg: #fef3c7;
  --badge-yellow-color: #92400e;
  --badge-green-bg: #d1fae5;
  --badge-green-color: #065f46;
  --badge-red-bg: #fee2e2;
  --badge-red-color: #991b1b;
  --text-ad-bg: rgba(255,255,255,.75);
  --text-ad-color: #0050b3;
  --text-ad-border: rgba(22, 119, 255, .24);
  --menu-item-bg: rgba(186, 230, 253, .84);
  --menu-item-hover: rgba(22, 119, 255, .12);
  --pill-bg: rgba(255,255,255,.74);
  --notice-bg: rgba(255,255,255,.78);
  --modal-bg: rgba(255,255,255,.92);
  --danger-notice-bg: rgba(254, 242, 242, .86);
  --danger-notice-border: rgba(244, 63, 94, .28);
  --danger-notice-color: #9f1239;
  --footer-bg: transparent;
  --grid-line: rgba(22, 119, 255, .05);
  --glow-color: rgba(22, 119, 255, .2);
  --success-hero-from: #002766;
  --success-hero-to: #4096ff;
  --admin-body-bg: #e6f4ff;
}

/* ====== 极客青 ====== */
[data-theme="cyan"] {
  --brand: #0891b2;
  --brand-2: #06b6d4;
  --brand-3: #67e8f9;
  --ink: #083344;
  --muted: #0891b2;
  --paper: #ecfeff;
  --line: rgba(6, 182, 212, .22);
  --card: rgba(255, 255, 255, .74);
  --danger: #f43f5e;
  --ok: #10b981;
  --shadow: 0 24px 70px rgba(6, 182, 212, .12);
  --inner: inset 0 1px 0 rgba(255,255,255,.9), inset 0 -18px 40px rgba(6,182,212,.04);
  --hero-from: #083344;
  --hero-via: #0e7490;
  --hero-to: #22d3ee;
  --hero-shadow: rgba(6, 182, 212, .28);
  --input-bg: rgba(255,255,255,.82);
  --input-focus-ring: rgba(6, 182, 212, .15);
  --th-bg: rgba(236, 254, 255, .5);
  --th-color: #0e7490;
  --tr-hover: rgba(236, 254, 255, .4);
  --resource-body-bg: rgba(236, 254, 255, .82);
  --announce-bg: rgba(236, 254, 255, .86);
  --code-bg: rgba(236, 254, 255, .92);
  --code-color: #0e7490;
  --badge-yellow-bg: #fef3c7;
  --badge-yellow-color: #92400e;
  --badge-green-bg: #d1fae5;
  --badge-green-color: #065f46;
  --badge-red-bg: #fee2e2;
  --badge-red-color: #991b1b;
  --text-ad-bg: rgba(255,255,255,.75);
  --text-ad-color: #0e7490;
  --text-ad-border: rgba(6, 182, 212, .24);
  --menu-item-bg: rgba(207, 250, 254, .84);
  --menu-item-hover: rgba(6, 182, 212, .12);
  --pill-bg: rgba(255,255,255,.74);
  --notice-bg: rgba(255,255,255,.78);
  --modal-bg: rgba(255,255,255,.92);
  --danger-notice-bg: rgba(254, 242, 242, .86);
  --danger-notice-border: rgba(244, 63, 94, .28);
  --danger-notice-color: #9f1239;
  --footer-bg: transparent;
  --grid-line: rgba(6, 182, 212, .05);
  --glow-color: rgba(6, 182, 212, .2);
  --success-hero-from: #083344;
  --success-hero-to: #22d3ee;
  --admin-body-bg: #ecfeff;
}

/* ====== 各主题 body 背景 ====== */
[data-theme="tech"] body {
  background:
    radial-gradient(circle at 12% 8%, rgba(22, 119, 255, .25) 0, transparent 28%),
    radial-gradient(circle at 84% 16%, rgba(0, 80, 179, .18) 0, transparent 24%),
    linear-gradient(135deg, #f0f8ff 0%, #e6f4ff 48%, #bae0ff 100%);
}
[data-theme="cyan"] body {
  background:
    radial-gradient(circle at 12% 8%, rgba(6, 182, 212, .25) 0, transparent 28%),
    radial-gradient(circle at 84% 16%, rgba(8, 145, 178, .18) 0, transparent 24%),
    linear-gradient(135deg, #f0fdff 0%, #ecfeff 48%, #cffafe 100%);
}

/* ====== 各主题 body::before 网格线 ====== */
[data-theme="tech"] body::before {
  background-image:
    linear-gradient(rgba(22, 119, 255, .05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(22, 119, 255, .05) 1px, transparent 1px);
}
[data-theme="cyan"] body::before {
  background-image:
    linear-gradient(rgba(6, 182, 212, .05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(6, 182, 212, .05) 1px, transparent 1px);
}

/* ====== 各主题 body::after 光晕 ====== */
[data-theme="tech"] body::after { background: radial-gradient(circle, rgba(22, 119, 255, .2), transparent 68%); }
[data-theme="cyan"] body::after { background: radial-gradient(circle, rgba(6, 182, 212, .2), transparent 68%); }
