/* v17 浅色层 —— 由 tools/plan-index.py 在 theme.css 之后注入，靠 !important 覆盖青蓝深色主题 */
:root{
  --bg:#f3f6fc !important;
  --panel:#ffffff !important;
  --panel2:#f7f9ff !important;
  --line:#e3e9f5 !important;
  --line2:#d3dcef !important;
  --ink:#1b2440 !important;
  --dim:#5c6784 !important;
  --dim2:#8a94ad !important;
  --accent:#5b7cfa !important;
  --accent2:#8b5cf6 !important;
  --ok:#17a673 !important;
  --glow:0 0 0 1px rgba(91,124,250,.16), 0 18px 50px -26px rgba(28,42,90,.40) !important;
}
html,body{
  background-color:#f3f6fc !important;
  background-image:
    radial-gradient(760px 420px at 90% 4%, rgba(139,92,246,.16), transparent 62%),
    radial-gradient(820px 460px at 6% 10%, rgba(91,124,250,.16), transparent 64%) !important;
  background-attachment:fixed !important;
  background-size:auto !important;
  color:#1b2440 !important;
}
body::before{display:none !important;content:none !important;}
a{color:#4a63d8 !important;}
a:hover{color:#8b5cf6 !important;}
h1{
  background:linear-gradient(96deg,#1b2440 8%,#5b7cfa 58%,#8b5cf6 96%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  letter-spacing:-.02em !important;
}
h2,h3{color:#1b2440 !important;}
.eyebrow{
  color:#3f57c4 !important;
  background:rgba(91,124,250,.10) !important;
  border:1px solid rgba(91,124,250,.20) !important;
  border-radius:999px !important;
  padding:6px 14px !important;
  display:inline-block !important;
  letter-spacing:.10em !important;
}
.nav a{
  color:#3f4c6b !important;
  background:rgba(255,255,255,.72) !important;
  border:1px solid var(--line) !important;
  border-radius:999px !important;
  padding:8px 15px !important;
  box-shadow:0 6px 18px -14px rgba(28,42,90,.5) !important;
}
.nav a:hover{background:#fff !important;border-color:rgba(91,124,250,.42) !important;color:#2f45a8 !important;}
.card,.catcard,.plan,.week,.item,.panel,.sbox,.qa-item{
  background:#ffffff !important;
  border:1px solid var(--line) !important;
  border-radius:18px !important;
  box-shadow:0 18px 50px -30px rgba(28,42,90,.40) !important;
  color:#1b2440 !important;
}
.card:hover,.catcard:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(91,124,250,.42) !important;
  box-shadow:0 26px 60px -30px rgba(28,42,90,.48) !important;
}
.plan a, .plan-link, a.open{
  background:linear-gradient(102deg,#5b7cfa,#8b5cf6) !important;
  color:#fff !important;
  border:0 !important;
  border-radius:999px !important;
}
a.newbtn{
  color:#4a63d8 !important;
  border:1.5px dashed rgba(91,124,250,.55) !important;
  background:rgba(255,255,255,.7) !important;
  border-radius:14px !important;
}
a.newbtn:hover{border-style:solid !important;background:#fff !important;}
.searchbox input,.sbox input,input,textarea,select{
  background:#fff !important;
  border:1px solid var(--line) !important;
  border-radius:12px !important;
  color:#1b2440 !important;
}
.searchbox input:focus,.sbox input:focus,input:focus,textarea:focus,select:focus{
  border-color:#5b7cfa !important;
  box-shadow:0 0 0 4px rgba(91,124,250,.16) !important;
  outline:none !important;
}
.chip,.tag{
  background:rgba(91,124,250,.09) !important;
  border:1px solid rgba(91,124,250,.22) !important;
  color:#3f57c4 !important;
  border-radius:999px !important;
}
.chip.on{background:linear-gradient(102deg,#5b7cfa,#8b5cf6) !important;color:#fff !important;border-color:transparent !important;}
.bar{background:#e8eefb !important;border-radius:999px !important;}
.bar > i,.bar-fill{background:linear-gradient(90deg,#5b7cfa,#8b5cf6) !important;border-radius:999px !important;}
code{background:#eef2fb !important;color:#33406b !important;border-radius:6px !important;padding:1px 6px !important;}
.dim,.muted,.sub{color:#5c6784 !important;}
.empty{background:rgba(255,255,255,.7) !important;border:1.5px dashed var(--line2) !important;border-radius:16px !important;color:#5c6784 !important;}
::selection{background:rgba(91,124,250,.22) !important;}
table{border-color:var(--line) !important;}
th{background:#f7f9ff !important;color:#1b2440 !important;}
td,th{border-color:var(--line) !important;}
@media (max-width:640px){h1{font-size:29px !important;}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none !important;animation:none !important;}}