/* Exact supplied transparent artwork, with contrast adapted to the surface. */
img[src*="yujeong-logo-dark"]{filter:brightness(0) saturate(100%) invert(17%) sepia(34%) saturate(1300%) hue-rotate(104deg) brightness(87%)}
.academy-logo{border-radius:0!important;width:248px;max-width:48vw}
.entry-header .academy-logo{width:284px}
.academy-phone{display:inline-block;margin-top:9px;font-size:20px;letter-spacing:.035em;font-weight:800;color:#003b22;text-decoration:none}
.entry-story .steps small{font-size:12px;color:#667761;line-height:1.6;display:inline-block}
.sheet-brand{display:flex;gap:15px;align-items:center;margin-bottom:18px}
.sheet-brand>img{width:164px;height:auto;background:#003b22;padding:8px 10px;border-radius:7px}
.sheet-brand .sheet-kicker{margin:0;min-width:0;font-size:10px}
/* Character sits behind the next report card, outside the reading area. */
.report-heading{position:relative;isolation:isolate;min-height:208px;padding:20px 215px 18px 0;margin-bottom:0;overflow:hidden;align-items:center}
.report-heading::after{content:"";position:absolute;z-index:-1;right:2px;bottom:0;width:214px;height:208px;background:url('assets/brand/teacher-mascot-refined.png') no-repeat center top / 245px 245px;pointer-events:none}
.report-heading .report-actions{flex-shrink:0;margin-left:auto}
.exam-report .report-heading>div{min-width:0}
.exam-report .report-heading .report-pdf-actions{margin:16px 0 0;flex-wrap:wrap}
/* One proportional frame at every zoom/reflow width; never offset outside the card. */
:is(#reportContent,.exam-report) .report-heading{--mascot-size:clamp(132px,24vw,245px);display:flex;flex-wrap:wrap;min-height:calc(var(--mascot-size)*.85);padding:20px calc(var(--mascot-size) + 8px) 18px 0;margin-bottom:0;column-gap:12px;row-gap:12px}
:is(#reportContent,.exam-report) .report-heading::after{right:0;bottom:0;width:var(--mascot-size);height:calc(var(--mascot-size)*.85);background-size:var(--mascot-size) var(--mascot-size);background-position:center top}
:is(#reportContent,.exam-report) .report-heading>div{min-width:0;max-width:100%}
:is(#reportContent,.exam-report) .report-heading .report-actions{margin-left:0;flex-wrap:wrap;align-items:flex-start}
.parent-pending{background:#fff8e9;border:1px solid #e9d7ad;color:#5a4a27}
.parent-pending .completion-badge{display:inline-block;border-radius:7px;padding:3px 10px;background:#f2e4bd;color:#604b17;font-size:13px}
.parent-pending p{margin:10px 0 0;line-height:1.7}
.overview-section{position:relative;border:1px solid #d6e2ce;border-radius:24px;overflow:hidden;background:#f5f7ee url('assets/brand/summary-paper.svg') center/cover}
.overview-full-summary{position:relative;margin:0;padding:28px 30px 24px;border:0;border-radius:0;background:transparent;box-shadow:none}
.overview-full-summary::after{content:"";position:absolute;bottom:-13px;left:50%;height:13px;width:2px;background:#9ab89f}
.overview-full-summary h4{display:flex;align-items:center;gap:10px}
.overview-full-summary h4::before{content:"";width:5px;height:20px;border-radius:8px;background:#61886a;flex-shrink:0}
.overview-points{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:28px 24px 24px;background:transparent;align-items:stretch}
.overview-points::before{content:"";position:absolute;top:12px;left:calc(24px + (100% - 78px)/6);right:calc(24px + (100% - 78px)/6);height:2px;background:#9ab89f}
.overview-point{position:relative;display:block;min-width:0;padding:22px;background:#f1f5ee;border:1px solid #d6e2ce;border-radius:18px;box-shadow:0 5px 14px #214c2c05}
.overview-point::before{content:"";position:absolute;top:-17px;left:50%;height:16px;width:2px;background:#9ab89f}
.overview-point+.overview-point{border-left:1px solid #e0e8d9;border-top:1px solid #e0e8d9}
.overview-point:nth-child(2){background:#f8f5e9;border-color:#ebe5d2}
.overview-point:nth-child(3){background:#edf4f1;border-color:#dce9e2}
.overview-number{display:flex;align-items:center;justify-content:center;width:37px;height:33px;border-radius:11px;background:#fff;color:#51775b;font-size:13px;font-weight:850;margin-bottom:13px;box-shadow:0 2px 6px #143c2308}
.overview-point h4{font-size:17px;line-height:1.55;margin:0 0 10px;word-break:keep-all}
.overview-point p{font-size:15px;line-height:1.85;margin:0;color:#566c5d}
@media(max-width:900px){.report-heading{display:block;padding-right:178px;min-height:190px}.report-heading .report-actions{margin-top:13px}.report-heading::after{right:-8px;width:180px;height:190px;background-size:220px 220px;bottom:0}.overview-points{grid-template-columns:1fr;padding-top:12px;gap:16px}.overview-points::before{display:none}.overview-point{display:grid;grid-template-columns:37px minmax(0,1fr);gap:15px}.overview-full-summary::after{left:65px}.overview-point::before{left:40px;top:-18px;height:17px}.overview-point:first-child::before{top:-14px;height:13px}}
@media(max-width:650px){.entry-header .academy-logo{width:236px;max-width:70vw}.report-heading{padding-right:122px;min-height:166px}.report-heading::after{width:134px;height:166px;background-size:184px 184px;right:-13px;bottom:0}.report-heading h2{font-size:25px}.report-heading p{font-size:12px}.overview-full-summary{margin:0;padding:22px 20px}.overview-points{padding:12px 14px 18px;gap:16px}.overview-point{padding:19px;border-radius:17px}.overview-full-summary::after{left:51px}.overview-point::before{left:36px}.sheet-brand{gap:8px}.sheet-brand>img{width:136px}.sheet-brand .sheet-kicker{font-size:8px}}
@media print{.report-heading::after{display:none}.report-heading{padding-right:0;min-height:0}.overview-full-summary,.overview-point{print-color-adjust:exact;-webkit-print-color-adjust:exact;box-shadow:none}}
/* Shared report typography; saved individual styles still take precedence. */
:is(#reportContent,.exam-report){--report-body:16px;--report-card-title:18px;--report-section-title:22px}
:is(#reportContent,.exam-report) :is(.verdict-summary,.inline-summary,.overview-point p,.study-action){font-size:var(--report-body);line-height:1.8;letter-spacing:0}
:is(#reportContent,.exam-report) :is(.overview-point h4,.study-card h4,.topic-name){font-size:var(--report-card-title);line-height:1.5;letter-spacing:0}
:is(#reportContent,.exam-report) :is(.analysis-basis-heading h3,.domains-section h3,.scope-section h3,.study-section h3){font-size:var(--report-section-title);line-height:1.5}
:is(#reportContent,.exam-report) .verdict-headline{font-size:24px;line-height:1.5;letter-spacing:0}
:is(#reportContent,.exam-report) :is(.scope-kind,.scope-card li,.study-example p,.study-check p,.study-mini-flow li){font-size:14px;line-height:1.7;letter-spacing:0}

/* Quiet subject colors preserve the academy's restrained card layout. */
.scope-card{--scope-tint:#f1f6f2;--scope-icon-bg:#dfece2;--scope-accent:#38634e;--scope-border:#d9e5db;background:var(--scope-tint);border-color:var(--scope-border)}
.scope-card[data-scope-tone="literature"]{--scope-tint:#f5f2f8;--scope-icon-bg:#e9e1f0;--scope-accent:#6b507f;--scope-border:#e5dced}
.scope-card[data-scope-tone="grammar"]{--scope-tint:#faf6ec;--scope-icon-bg:#f0e5cc;--scope-accent:#80652e;--scope-border:#ece2cb}
.scope-card[data-scope-tone="discussion"]{--scope-tint:#eef6f6;--scope-icon-bg:#dcecec;--scope-accent:#386c70;--scope-border:#d8e7e8}
.scope-card[data-scope-tone="media"]{--scope-tint:#fbf2ee;--scope-icon-bg:#f2e0d8;--scope-accent:#8b5947;--scope-border:#ecdcd3}
.scope-card .scope-icon{background:var(--scope-icon-bg);color:var(--scope-accent)}
.scope-card .scope-kind{color:var(--scope-accent);font-weight:750}
.scope-card .scope-topics li{border-color:var(--scope-border)}


/* Justify report prose while keeping the last line natural and controls compact. */
:is(#reportContent,.exam-report) :is(.verdict-summary,.inline-summary,.verdict-supporting,.overview-point p,.insight-card p,.summary-text,.preparation-item,.study-card p,.study-forecast-note,.question-explanation p,.evidence){
  text-align:justify;
  text-align-last:left;
  text-justify:inter-character;
  letter-spacing:-.025em;
  text-wrap:wrap;
  word-break:normal;
  line-break:strict;
  overflow-wrap:anywhere;
}
:is(#reportContent,.exam-report) .report-prose-tail{display:inline-block;max-width:100%;white-space:normal;word-break:keep-all;overflow-wrap:anywhere;vertical-align:baseline;text-align:left;text-align-last:left}
:is(#reportContent,.exam-report) [contenteditable]:not([contenteditable="false"]):focus .report-prose-tail{display:inline;word-break:normal}
@media print{:is(#reportContent,.exam-report) .report-heading{padding-right:0;min-height:0}}

/* Let each paragraph use its card, and share content rows across parallel cards. */
:is(#reportContent,.exam-report) .verdict-summary{width:100%;max-width:none;min-width:0}
:is(#reportContent,.exam-report) .overview-point{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr;gap:12px;align-content:start;container-type:inline-size}
:is(#reportContent,.exam-report) .overview-point :is(.overview-number,h4,p){margin:0;min-width:0}
:is(#reportContent,.exam-report) .overview-point h4{font-size:16px;font-size:clamp(16px,4.1cqi,20px);line-height:1.5;letter-spacing:-.035em;text-align:left;text-align-last:auto;text-justify:auto;text-wrap:balance;word-break:keep-all;overflow-wrap:anywhere}
:is(#reportContent,.exam-report) .overview-point p{width:100%;line-height:1.8}
:is(#reportContent,.exam-report) .study-grid--forecast{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:16px}
:is(#reportContent,.exam-report) .study-card--forecast{display:grid;grid-template-rows:auto auto auto auto 1fr;gap:14px;align-content:start;padding:24px}
:is(#reportContent,.exam-report) .study-card--forecast :is(.study-card-top,h4){margin:0;min-width:0;text-align:left;text-align-last:auto}
:is(#reportContent,.exam-report) .study-card--forecast .study-card-top{gap:12px;align-items:center}
:is(#reportContent,.exam-report) .study-domain{display:inline-flex;align-items:center;max-width:100%;padding:5px 11px;border-radius:7px;background:#edf3e8;color:#315c44;font-size:13px;font-weight:800;line-height:1.5;text-align:left;word-break:keep-all}
:is(#reportContent,.exam-report) .study-card--forecast .study-step{flex:none;color:#7b9785}
:is(#reportContent,.exam-report) .study-card--forecast .study-block{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin:0;padding:14px 0 0;border:0;border-top:1px solid #e0e8dc;border-radius:0;background:transparent;min-width:0}
:is(#reportContent,.exam-report) .study-card--forecast .study-block>span{display:block;margin:0;font-size:13px;font-weight:800;line-height:1.5;color:#46694f;text-align:left}
:is(#reportContent,.exam-report) .study-card--forecast .study-block p{width:100%;max-width:none;min-width:0;margin:0;font-size:var(--report-body);font-weight:400;line-height:1.8;letter-spacing:-.025em;color:#435e4e}
:is(#reportContent,.exam-report) .study-card--forecast .study-block p{text-align:justify;text-align-last:left;text-justify:inter-character;letter-spacing:-.06em}
@supports(grid-template-rows:subgrid){
  :is(#reportContent,.exam-report) .overview-point{grid-row:span 3;grid-template-rows:subgrid}
  :is(#reportContent,.exam-report) .study-card--forecast{grid-row:span 5;grid-template-rows:subgrid}
}
@media(max-width:900px){
  :is(#reportContent,.exam-report) .overview-point{grid-row:auto;grid-template-columns:37px minmax(0,1fr);grid-template-rows:auto auto;gap:10px 15px}
  :is(#reportContent,.exam-report) .overview-point .overview-number{grid-column:1;grid-row:1 / span 2}
  :is(#reportContent,.exam-report) .overview-point :is(h4,p){grid-column:2}
  :is(#reportContent,.exam-report) .study-grid--forecast{grid-template-columns:1fr;gap:14px}
  :is(#reportContent,.exam-report) .study-card--forecast{grid-row:auto;grid-template-rows:auto;gap:13px;padding:20px}
}
