.master-report{display:grid;gap:17px}.report-head{display:flex;align-items:center;justify-content:space-between}.report-head span{color:#a992ff;font-family:"DM Mono",monospace;font-size:12px;font-weight:700;letter-spacing:.1em}.report-head h1{margin:6px 0;color:#fff;font-size:31px}.report-head p{margin:0;color:#9cadcf}.report-head button,.report-nav button{border:1px solid #334a7e;border-radius:9px;padding:11px 14px;background:#131f42;color:#c9d6f4;font:600 12px inherit}.report-head button+button{margin-left:8px;border-color:#7558e7;background:#201751;color:#d8c9ff}.report-nav{display:flex;align-items:center;gap:5px;border:1px solid #203862;border-radius:11px;padding:5px;background:#0e1937}.report-nav button{min-width:112px;border:0;background:transparent;color:#aab8d8}.report-nav button.active{background:#6845dc;color:#fff}.report-nav small{margin-left:auto;margin-right:18px;color:#7f91bb}.report-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.report-metrics article,.mastery-chart,.error-donut,.report-weak,.report-example,.note-suggestions{position:relative;border:1px solid #293f72;border-radius:14px;background:#0e1a38}.report-metrics article{display:grid;grid-template-columns:40px 1fr;gap:1px;min-height:100px;padding:17px}.report-metrics i{grid-row:span 2;display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#3c38a0;color:#c5baff}.report-metrics article:nth-child(3) i{background:#78364f;color:#ff9aba}.report-metrics article:nth-child(4) i{background:#63462c;color:#ffcd80}.report-metrics article:nth-child(5) i{background:#255756;color:#7ee6cf}.report-metrics span{color:#a9b9db;font-size:12px}.report-metrics b{color:#fff;font-size:25px}.report-metrics em{position:absolute;right:15px;bottom:18px;color:#63daac;font-size:11px;font-style:normal}.report-ai{position:relative;display:grid;grid-template-columns:145px 1fr 250px;gap:18px;align-items:center;overflow:hidden;min-height:170px;border:1px solid #4d54a7;border-radius:15px;padding:18px 25px;background:radial-gradient(circle at 76% 36%,rgba(103,69,255,.45),transparent 27%),#142559}.report-ai img{width:130px;filter:drop-shadow(0 0 18px rgba(109,87,255,.6))}.report-ai h2{margin:0 0 11px;color:#fff;font-size:22px}.report-ai blockquote{margin:0;border-left:4px solid #9b7aff;padding-left:17px;color:#d5dffc;font-size:14px;line-height:1.8}.report-ai>p{color:#dbcaff;font-size:16px;line-height:1.7;text-align:center;transform:rotate(-6deg)}.report-dashboard{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:15px}.mastery-chart,.error-donut,.report-weak{min-height:270px;padding:17px}.report-dashboard h2{margin:0;color:#fff;font-size:16px}.report-dashboard h2 button{float:right;border:1px solid #32477e;border-radius:8px;padding:7px 9px;background:#142246;color:#b8c8e9;font:600 10px inherit}.mastery-chart>div{height:185px}.mastery-chart svg{width:100%;height:100%}.mastery-chart footer{display:grid;grid-template-columns:1fr 1fr;gap:6px;color:#aebee3;font-size:11px}.mastery-chart footer span:nth-child(1){color:#a18aff}.mastery-chart footer span:nth-child(2){color:#ff91b1}.mastery-chart footer span:nth-child(3){color:#75dbf2}.mastery-chart footer b{float:right;color:inherit}.error-donut>div{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:8px;height:210px}.donut-report{display:grid;place-items:center;width:130px;height:130px;margin:auto;border:20px solid #8065ee;border-top-color:#eb6385;border-right-color:#f4b74f;border-bottom-color:#5ad6b1;border-radius:50%;text-align:center}.donut-report b{color:#fff;font-size:23px}.donut-report small{display:block;color:#a9b9da;font-size:10px}.error-donut ul{margin:0;padding:0;list-style:none}.error-donut li{margin:9px 0;color:#b6c5e5;font-size:11px}.error-donut li b{float:right;color:#d7e1ff}.error-donut li:before{content:"●";margin-right:7px;color:#e8678b}.error-donut li:nth-child(2):before{color:#a566e4}.error-donut li:nth-child(3):before{color:#579fff}.error-donut li:nth-child(4):before{color:#62d4ef}.error-donut li:nth-child(5):before{color:#725be1}.report-weak h2 small{color:#95a7ce;font-size:10px}.report-weak article{display:grid;grid-template-columns:27px 1fr auto;gap:8px;align-items:center;border-top:1px solid #263b67;padding:13px 0}.report-weak article i{color:#fa7385}.report-weak article span{display:grid;gap:5px;color:#dce7ff;font-size:12px}.report-weak article small{color:#9bacca;font-size:10px}.report-weak article em{display:block;overflow:hidden;width:100%;height:5px;border-radius:4px;background:#273b66}.report-weak article em b{display:block;height:100%;border-radius:inherit;background:#fc7186}.report-weak article button,.note-suggestions button{border:1px solid #7f62f4;border-radius:7px;padding:7px 9px;background:#2b1d75;color:#d9cfff;font:600 10px inherit;cursor:pointer}.report-example{grid-column:span 2;padding:17px}.report-example h2 small{float:right;color:#a4b3d6;font-size:11px}.report-example>div{display:grid;grid-template-columns:1.1fr 1fr;gap:14px;margin-top:12px}.report-example section{border:1px solid #293e6d;border-radius:10px;padding:13px;background:#111e41;color:#c8d5f2;font-size:12px;line-height:1.7}.report-example section span{display:inline-block;border-radius:12px;padding:4px 7px;background:#323071;color:#bcb1ff;font-size:10px}.report-example section>b{display:block;margin:9px 0;color:#e6eeff}.report-example h3{margin:0;color:#aebee0;font-size:11px}.report-example p{margin:6px 0}.correct-answer{color:#63e4b7}.note-suggestions{padding:17px}.note-suggestions>p{color:#98a9cf;font-size:11px}.note-suggestions>div{display:grid;grid-template-columns:27px 1fr auto;gap:8px;align-items:center;border-top:1px solid #263b67;padding:11px 0}.note-suggestions i{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#354cd6;color:#fff}.note-suggestions span{display:grid;gap:4px;color:#dbe6ff;font-size:11px}.note-suggestions small{color:#889bc7;font-size:10px}@media(max-width:1150px){.report-metrics{grid-template-columns:repeat(3,1fr)}.report-dashboard{grid-template-columns:1fr 1fr}.report-weak{grid-column:span 2}.report-example{grid-column:span 2}.note-suggestions{grid-column:span 2}}@media(max-width:720px){.report-head{display:block}.report-head>div+div{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.report-head button+button{margin:0}.report-nav{overflow:auto}.report-nav small{display:none}.report-metrics,.report-dashboard{grid-template-columns:1fr}.report-weak,.report-example,.note-suggestions{grid-column:auto}.report-ai{grid-template-columns:80px 1fr;padding:14px}.report-ai img{width:75px}.report-ai>p{display:none}.report-example>div{grid-template-columns:1fr}.error-donut>div{grid-template-columns:130px 1fr}}
.report-period-status{margin-top:-8px;border:1px solid #29416f;border-radius:9px;padding:9px 12px;background:#101d3e;color:#9fb2d9;font-size:12px}.report-exam-history{display:grid;gap:9px;border:1px solid #4a3ea0;border-radius:13px;padding:16px;background:linear-gradient(110deg,#151950,#1b2054)}.report-exam-history h2{margin:0;color:#fff;font-size:17px}.report-exam-history h2 small{margin-left:7px;color:#9d8dff;font-size:11px}.report-exam-history>p{margin:0;color:#b7c5e7;font-size:13px}.report-exam-history article{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center;border:1px solid #304779;border-radius:10px;padding:10px 12px;background:#101d40}.report-exam-history article>b{color:#a98bff;font-size:23px}.report-exam-history article span{display:grid;gap:4px;color:#dce6ff;font-size:12px}.report-exam-history article small{color:#91a4cc;font-size:10px}.report-exam-history button{border:1px solid #755cf0;border-radius:7px;padding:8px 10px;background:#261b65;color:#e6ddff;font:600 11px inherit;cursor:pointer}.report-exam-history button:hover{background:#3e278f}@media(max-width:720px){.report-exam-history article{grid-template-columns:1fr}.report-exam-history button{justify-self:start}}
.error-donut h2 button.active{border-color:#9275ff;background:#302274;color:#fff}

/* Quiet motion for report visuals: reveal real values, then keep them gently alive. */
.master-report .report-mastery-bars span {
  transform: scaleY(.06);
  transform-origin: center bottom;
  animation: report-bar-rise 850ms cubic-bezier(.2,.78,.25,1) both;
}
.master-report .report-mastery-bars span:nth-child(2) { animation-delay: 100ms; }
.master-report .report-mastery-bars span:nth-child(3) { animation-delay: 200ms; }
@keyframes report-bar-rise {
  0% { transform: scaleY(.06); opacity: .45; filter: brightness(.75); }
  72% { transform: scaleY(1.04); opacity: 1; }
  100% { transform: scaleY(1); opacity: 1; filter: brightness(1); }
}

.master-report .donut-report {
  animation: report-donut-breathe 4.8s ease-in-out infinite;
  box-shadow: 0 0 0 rgba(119,100,255,0);
  transition: box-shadow 240ms ease;
}
.master-report .error-donut:hover .donut-report {
  box-shadow: 0 0 24px rgba(112,122,255,.16);
}
@keyframes report-donut-breathe {
  0%, 100% { transform: scale(1); filter: drop-shadow(0 0 0 rgba(117,99,255,0)); }
  50% { transform: scale(1.035); filter: drop-shadow(0 0 8px rgba(117,99,255,.2)); }
}

.master-report .report-weak article em b {
  position: relative;
  overflow: hidden;
  transform: scaleX(0);
  transform-origin: left center;
  animation: report-progress-in 900ms cubic-bezier(.2,.78,.25,1) both, report-progress-glow 3.6s ease-in-out 900ms infinite;
}
.master-report .report-weak article:nth-of-type(2) em b { animation-delay: 120ms, 1020ms; }
.master-report .report-weak article:nth-of-type(3) em b { animation-delay: 240ms, 1140ms; }
@keyframes report-progress-in {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}
@keyframes report-progress-glow {
  0%, 100% { filter: brightness(1); }
  50% { filter: brightness(1.22); }
}

.master-report .report-weak article em b::after {
  content: '';
  position: absolute;
  inset: 0 auto 0 -45%;
  width: 36%;
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);
  opacity: 0;
}
.master-report .report-weak article:hover em b::after {
  opacity: .8;
  animation: report-progress-shimmer 900ms ease-out;
}
@keyframes report-progress-shimmer {
  from { transform: translateX(0); }
  to { transform: translateX(430%); }
}

.master-report .report-ai img {
  animation: report-bot-float 5.4s ease-in-out infinite;
}
@keyframes report-bot-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

.master-report .report-weak article button,
.master-report .note-suggestions button {
  animation: report-cta-breathe 3.8s ease-in-out infinite;
}
.master-report .report-weak article:nth-of-type(2) button,
.master-report .note-suggestions > div:nth-of-type(2) button { animation-delay: 450ms; }
.master-report .report-weak article:nth-of-type(3) button,
.master-report .note-suggestions > div:nth-of-type(3) button { animation-delay: 900ms; }
@keyframes report-cta-breathe {
  0%, 100% { filter: brightness(1); }
  50% { filter: brightness(1.09); }
}

.master-report button:not(:disabled) {
  transition: transform 180ms ease, border-color 180ms ease, background-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
}
.master-report button:not(:disabled):hover {
  transform: translateY(-2px);
  border-color: #987aff;
  box-shadow: 0 5px 16px rgba(105,82,232,.2);
}
.master-report button:not(:disabled):active {
  transform: translateY(0) scale(.97);
  box-shadow: 0 1px 5px rgba(105,82,232,.18);
}
.master-report .report-nav button.active {
  box-shadow: inset 0 -2px 0 rgba(209,194,255,.75), 0 0 16px rgba(119,91,239,.18);
}

@media (prefers-reduced-motion: reduce) {
  .master-report .report-mastery-bars span,
  .master-report .donut-report,
  .master-report .report-weak article em b,
  .master-report .report-weak article button,
  .master-report .note-suggestions button,
  .master-report .report-ai img {
    animation: none !important;
    transform: none !important;
  }
  .master-report button:not(:disabled) { transition: none !important; }
}
