/*
 * v129 报告评分模块 CSS 收口版
 * 目的：替代 v123-v128 堆叠式覆盖；评分区只维护本文件。
 * 修改位置说明：
 * - 分数数字：.report-score-number
 * - “人生评分”：.report-score-label
 * - 圆环位置/大小：.report-score-ring
 * - 顶部背景：.report-score-module::before / ::after
 */

:root{
  --report-gold:#ffe58c;
  --report-gold-2:#ffc84d;
  --report-blue:#1598ff;
  --report-panel:#06173d;
  --report-line:rgba(255,218,122,.56);
}

.report-score-module{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  margin:0 0 16px;
  padding:112px 14px 14px;
  border-radius:24px;
  border:1px solid var(--report-line);
  background:
    radial-gradient(circle at 18% 14%,rgba(255,204,74,.15),transparent 20%),
    radial-gradient(circle at 84% 10%,rgba(63,166,255,.20),transparent 23%),
    radial-gradient(circle at 50% 38%,rgba(38,103,210,.19),transparent 48%),
    linear-gradient(180deg,#031026 0%,#071d48 46%,#04132e 100%);
  box-shadow:0 20px 46px rgba(0,0,0,.38),0 0 36px rgba(255,202,76,.13),inset 0 1px 0 rgba(255,255,255,.10);
}
.report-score-module::before{
  content:"";
  position:absolute;
  z-index:0;
  left:-146px;
  top:-116px;
  width:430px;
  height:430px;
  background:url('/static/images/report-v127-compass.png?v=129') center/contain no-repeat;
  opacity:.56;
  filter:drop-shadow(0 0 20px rgba(255,190,64,.26)) saturate(1.06) brightness(.88);
  pointer-events:none;
}
.report-score-module::after{
  content:"";
  position:absolute;
  z-index:0;
  right:-72px;
  top:12px;
  width:238px;
  height:156px;
  background:url('/static/images/report-v127-dragon.png?v=129') center/contain no-repeat;
  opacity:.58;
  filter:drop-shadow(0 0 24px rgba(84,180,255,.52)) saturate(1.42) brightness(1.16);
  pointer-events:none;
}
.report-score-module > *{position:relative;z-index:1;}

.report-score-main{
  display:grid;
  grid-template-columns:146px 1fr;
  gap:12px;
  align-items:center;
  min-height:158px;
  padding:12px;
  border-radius:22px;
  background:
    radial-gradient(circle at 14% 28%,rgba(34,146,255,.18),transparent 36%),
    linear-gradient(125deg,rgba(4,15,40,.88),rgba(6,21,55,.78));
  border:1px solid rgba(255,225,145,.40);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 16px 34px rgba(0,0,0,.24),0 0 26px rgba(41,139,255,.10);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.report-score-ring{
  position:relative;
  width:142px;
  height:142px;
  margin:0 auto;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 50% 50%,#07173a 0 46%,transparent 47%),
    radial-gradient(circle at 38% 25%,rgba(255,255,255,.22),transparent 17%),
    conic-gradient(from -50deg,#fff0b2 0 7%,#ffd15a 8% 55%,rgba(255,224,125,.20) 55% 68%,#2597ff 68% 86%,rgba(43,150,255,.24) 86% 100%);
  box-shadow:0 0 0 1px rgba(255,229,145,.32),0 0 30px rgba(255,204,79,.42),0 0 32px rgba(39,144,255,.32),inset 0 0 0 10px rgba(1,8,26,.62);
}
.report-score-ring::before{
  content:"";
  position:absolute;
  inset:-7px;
  z-index:-1;
  border-radius:50%;
  background:conic-gradient(from 12deg,transparent 0 58%,rgba(43,153,255,.86) 62% 73%,transparent 79%,rgba(255,214,93,.86) 84% 94%,transparent 100%);
  filter:blur(2px);
  opacity:.78;
}
.report-score-number{
  display:block;
  margin:-2px 0 0;
  color:#fff6d7;
  font-size:52px;
  line-height:.88;
  font-weight:1000;
  letter-spacing:-1.2px;
  text-shadow:0 0 18px rgba(255,205,80,.45),0 4px 18px rgba(0,0,0,.68);
}
.report-score-label{
  display:block;
  margin:8px 0 0;
  color:#fff2bd;
  font-size:16px;
  line-height:1;
  font-weight:1000;
  letter-spacing:.2px;
  white-space:nowrap;
  text-shadow:0 0 10px rgba(255,214,112,.30);
  transform:translateX(0);
}

.report-fate-panel{padding:0 0 0 4px;color:#fff;text-align:left;}
.report-fate-title{font-size:14px;color:#ffe796;font-weight:1000;margin-bottom:7px;}
.report-grade-badge{
  float:left;
  width:56px;
  height:62px;
  margin:2px 11px 5px 0;
  display:grid;
  place-items:center;
  border-radius:15px;
  background:linear-gradient(160deg,rgba(255,238,179,.15),rgba(3,12,31,.82));
  border:1px solid rgba(255,222,122,.72);
  color:#fff0b3;
  font-size:42px;
  font-weight:1000;
  box-shadow:0 0 24px rgba(255,204,77,.22),inset 0 1px 0 rgba(255,255,255,.18);
  text-shadow:0 0 16px rgba(255,211,92,.42);
}
.report-stage-text{font-size:18px;line-height:1.18;font-weight:900;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.65);}
.report-stage-text b{display:block;margin-top:3px;color:#ffe28a;font-size:27px;line-height:1.08;text-shadow:0 0 16px rgba(255,204,77,.36);}
.report-fate-panel p{clear:both;margin:8px 0 0;color:#e2efff;font-size:12px;line-height:1.55;font-weight:800;}

.report-score-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0 0;}
.report-score-metrics div{
  min-height:106px;
  padding:10px 5px 8px;
  border-radius:17px;
  background:linear-gradient(180deg,rgba(255,255,255,.105),rgba(4,14,37,.75));
  border:1px solid rgba(126,184,255,.34);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 12px 26px rgba(0,0,0,.24);
  text-align:center;
}
.report-score-metrics .wealth{border-color:rgba(255,213,92,.58);}
.report-score-metrics .career{border-color:rgba(70,177,255,.58);}
.report-score-metrics .love{border-color:rgba(255,98,185,.58);}
.report-score-metrics .direction{border-color:rgba(69,236,236,.52);}
.report-score-metrics i{display:grid;place-items:center;width:30px;height:30px;margin:0 auto 6px;border-radius:50%;font-style:normal;font-size:17px;background:rgba(255,255,255,.08);}
.report-score-metrics b{display:block;color:#ffe28a;font-size:22px;line-height:1.05;font-weight:1000;}
.report-score-metrics span{display:block;margin-top:4px;color:#fff;font-size:11px;line-height:1.2;font-weight:1000;}
.report-score-metrics em{display:block;margin-top:3px;color:#bed4fa;font-size:10px;line-height:1.2;font-style:normal;font-weight:800;}

.report-score-engine{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  margin:10px 0 0;
  padding:12px 10px;
  border-radius:16px;
  background:linear-gradient(90deg,rgba(6,25,60,.78),rgba(13,48,104,.68),rgba(6,25,60,.78));
  border:1px solid rgba(122,177,255,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  text-align:center;
}
.report-score-engine span{color:#ffe69b;font-size:13px;font-weight:1000;}
.report-score-engine em{color:#cfe0ff;font-size:11px;font-style:normal;font-weight:800;}

@media(max-width:390px){
  .report-score-module{padding:88px 12px 13px;border-radius:22px;}
  .report-score-module::before{left:-138px;top:-102px;width:392px;height:392px;opacity:.50;}
  .report-score-module::after{right:-70px;top:8px;width:218px;height:142px;opacity:.54;}
  .report-score-main{grid-template-columns:128px 1fr;gap:9px;min-height:152px;padding:11px 9px;}
  .report-score-ring{width:124px;height:124px;}
  .report-score-number{font-size:43px;line-height:.88;}
  .report-score-label{font-size:14px;margin-top:7px;}
  .report-grade-badge{width:48px;height:55px;font-size:37px;margin-right:8px;}
  .report-stage-text{font-size:16px;}.report-stage-text b{font-size:23px;}
  .report-fate-panel p{font-size:11px;line-height:1.45;}
  .report-score-metrics{gap:7px;}
  .report-score-metrics div{min-height:98px;padding:9px 4px 7px;border-radius:15px;}
  .report-score-metrics i{width:28px;height:28px;font-size:16px;}
  .report-score-metrics b{font-size:20px;}
  .report-score-metrics span{font-size:11px;}
  .report-score-metrics em{font-size:9px;}
}


.master-pay-status{
  min-height:18px;
  margin:8px 0 0;
  color:#ffe7a3;
  font-size:12px;
  line-height:1.45;
  font-weight:800;
  text-align:center;
}
.master-feature-item[disabled],.report-master-btn[disabled]{
  opacity:.72;
  cursor:wait;
  filter:saturate(.85);
}
