/* ============ 主题系统：明暗模式 / 风格面板 / 特效层 ============ */

/* ---- 特效层 ---- */
#fx{position:fixed;inset:0;z-index:60;pointer-events:none}
#scrollProgress{position:fixed;top:0;left:0;height:3px;width:0;z-index:200;
  background:var(--grad);box-shadow:0 0 12px var(--cyan);transition:width .1s linear;border-radius:0 2px 2px 0}

/* ---- 主题选择面板 ---- */
.theme-panel-mask{position:fixed;inset:0;z-index:500;background:rgba(5,5,15,.72);backdrop-filter:blur(10px);
  display:flex;align-items:center;justify-content:center;padding:20px}
.theme-panel{width:min(680px,94vw);max-height:88vh;overflow:auto;padding:26px;background:var(--panel-solid);border:1px solid var(--line2)}
.tp-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.tp-head h3{font-size:20px}
.tp-head small{color:var(--txt3);font-size:12.5px}
.tp-head .icon-btn{margin-left:auto}
.tp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}
.tp-card{border-radius:16px;padding:14px;cursor:pointer;background:var(--panel);border:1.5px solid var(--line);transition:.25s}
.tp-card:hover{border-color:var(--cyan);transform:translateY(-3px)}
.tp-card.on{border-color:var(--cyan);box-shadow:var(--glow)}
.tp-preview{position:relative;height:78px;border-radius:11px;overflow:hidden;margin-bottom:10px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--tc1) 22%,#0a0a18),color-mix(in srgb,var(--tc2) 30%,#0a0a18))}
@supports not (background:color-mix(in srgb,red,blue)){
  .tp-preview{background:#12122a}
  .radar-sweep{background:conic-gradient(from 0deg,transparent 0deg,rgba(94,234,212,.28) 24deg,transparent 40deg)}
}
.tp-orb{position:absolute;border-radius:50%;filter:blur(6px);animation:orbFloat 4s ease-in-out infinite}
.tp-orb.o1{width:34px;height:34px;left:14px;top:16px;background:var(--tc1)}
.tp-orb.o2{width:26px;height:26px;right:20px;top:26px;background:var(--tc2);animation-delay:1s}
.tp-orb.o3{width:18px;height:18px;left:52%;bottom:10px;background:var(--tc3);animation-delay:2s}
.tp-name{font-size:14.5px;font-weight:700}
.tp-desc{font-size:12px;color:var(--txt3);margin-top:4px}
.tp-foot{display:flex;align-items:center;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.tp-foot #tpCurrent{font-size:13px;color:var(--txt2);flex:1}
