
/* per-score feedback notes */
.meter-block{margin-bottom:1.1rem}
.meter-block:last-of-type{margin-bottom:.4rem}
.meter-note{margin-top:.45rem;padding-left:.1rem}
.meter-note p{margin:0;font-size:.92rem;line-height:1.5;color:var(--ink-soft,#54605a)}
.meter-note .jp{font-size:.86rem}
/* the span a priority is talking about, and its native form */
.repair{margin:.85rem 0 .25rem;border-radius:10px;overflow:hidden;border:1px solid rgba(0,0,0,.08)}
.repair-was,.repair-now{padding:.6rem .8rem}
.repair-was{background:rgba(198,124,78,.10)}
.repair-now{background:rgba(47,138,114,.10);border-top:1px solid rgba(0,0,0,.06)}
.repair small{display:block;font-size:.64rem;letter-spacing:.08em;opacity:.65;margin-bottom:.15rem}
.repair span{font-size:1rem;line-height:1.45}
/* spans that were tried but did not read clearly */
.strength.tried{color:#8a5a3c}
.strength.tried small{opacity:.7;font-size:.72rem;margin-left:.35rem}
.tried-mark{display:inline-flex;align-items:center;justify-content:center;width:1.05rem;height:1.05rem;border-radius:50%;background:rgba(198,124,78,.20);font-size:.72rem;font-weight:700;flex:none}

/* Match the credited green highlights; make wording-review actions explicit. */
button.strength.tried{width:100%;padding:10px 12px;min-height:44px;text-align:left;flex-wrap:wrap;background:#fff6df;border:1px solid #e8d5a6;border-radius:10px;color:#79591f;line-height:1.45}
button.strength.tried:hover{background:#f9edca}
button.strength.tried small{font-size:.8rem;opacity:1}
.annotation-legend{font-size:.78rem;color:var(--muted);margin:10px 0 14px;line-height:1.5}
.possible-reply h3{margin-bottom:6px}

/* Category identity is shared by the words and their clickable strategy names. */
.request-quote mark.used{background:var(--strategy-bg);color:var(--strategy-ink);border-bottom-color:var(--strategy-line)}
.request-quote mark.wording-check{border-bottom:2px dotted #9a6718}
button.strength.strategy-label{align-self:flex-start;max-width:100%;min-height:44px;padding:8px 12px;text-align:left;border:1px solid var(--strategy-line);border-radius:9px;background:var(--strategy-bg);color:var(--strategy-ink);font:inherit;line-height:1.5;flex-wrap:wrap}
button.strength.strategy-label:hover{box-shadow:0 0 0 2px var(--strategy-line)}
button.strength.strategy-label:focus-visible{outline:3px solid var(--strategy-ink);outline-offset:3px}
button.strength.tried.strategy-label{border-bottom:2px dotted #9a6718}
.strategy-row .strategy-symbol,.strategy-row.used .strategy-symbol,.strategy-row.recommended .strategy-symbol{background:var(--strategy-bg);color:var(--strategy-ink)}
.strategy-row .strategy-copy strong{width:fit-content;padding:2px 5px;border-radius:4px;background:var(--strategy-bg);color:var(--strategy-ink)}
.band-label{display:block;font-size:.85rem;margin-bottom:5px;color:var(--ink)}

/* Feedback hierarchy and teacher layout review. */
.teacher-entry{display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:6px 9px;background:transparent;color:var(--green);font-size:.76rem;border:1px solid var(--line);border-radius:10px}
.teacher-entry .icon{width:16px;height:16px}
.section-heading{font-size:1.35rem;margin:0 0 22px}
.overall-advice{margin:18px auto 0;max-width:490px;text-align:left;border-top:1px solid #c7decd55;padding-top:17px}
.overall-advice p{font-size:1.03rem;line-height:1.65;color:#f5f8ed}
.overall-advice .ja-toggle{color:#f5f8ed;border-color:#b7d1c2;background:#285e50}
.overall-advice .ja-box{color:#f5f8ed;background:#285e50}
.next-step-title{font-size:1.05rem;margin:17px 0 7px}
.next-move .strategy-label{margin-top:12px}
.explorer-heading h2{font-size:clamp(1.65rem,6vw,2rem)}
.feedback-details summary{font-size:1.05rem}
.understanding{margin-top:22px}
/* Beta labels participate in layout: no absolute margin notes to overlap. */
.review-part{position:relative;display:flow-root;border:1px solid #a5b6a8;border-radius:18px;margin:14px 0;padding:10px;background:var(--paper)}
.part-review-note{display:flex;flex-direction:column;gap:3px;padding:3px 7px 10px;color:var(--muted);font-size:12px;line-height:1.45}
.part-review-note strong{font-size:12px;letter-spacing:.035em;font-weight:650}
.review-part>.panel,.review-part>.result{margin-top:0;box-shadow:none}
.review-subpart{border-style:dashed;border-radius:9px;margin:10px 0;padding:8px}
.review-subpart .part-review-note{padding:0 0 8px}
.review-enabled .fixed-action .part-review-note{max-width:636px;margin:0 auto;padding:0 0 5px}
.review-enabled .fixed-action .part-review-note span{display:none}
.review-enabled.feedback-shell{padding-bottom:155px}
@media print{.review-part{break-inside:avoid}.fixed-action{position:static!important}}
.masthead .brand{min-width:0;flex:1}
.masthead .header-button,.teacher-entry{flex-shrink:0}
@media(max-width:480px){.masthead{gap:7px}.masthead .brand{font-size:.9rem}.masthead .brand small{font-size:.56rem;letter-spacing:.06em}.masthead .brandmark{width:34px;height:34px}.teacher-entry{padding:6px;font-size:.7rem}}

.model-error-code{display:block;margin-top:8px;font-family:monospace;overflow-wrap:anywhere}

/* A short first view; every existing explanation remains accessible. */
.result{text-align:left;padding:24px;border-radius:14px}
.result h1{font-size:1.8rem;max-width:none}
.overall-advice{margin:13px 0 0;max-width:none;border:0;padding:0}
.overall-advice p{font-size:1rem;line-height:1.55}
.score-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid #8fb4a0;margin-top:18px;padding-top:14px}
.score-summary>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.score-total{font-size:1.5rem;font-variant-numeric:tabular-nums}
.score-summary .level-pill{margin:0;font-size:.73rem;padding:5px 8px}
.score-breakdown-link{background:transparent;color:#fffdf4;text-decoration:underline;text-underline-offset:3px;min-height:44px;padding:7px 0;text-align:left}
.learning-disclosure>summary{cursor:pointer;min-height:44px;padding:8px 0;color:var(--deep)}
.learning-disclosure>summary h2{display:inline;font-size:1.3rem;vertical-align:middle}
.explorer .learning-disclosure>summary h2{font-size:1.55rem}
.learning-content{padding-top:12px}
.learning-content>.eyebrow{display:none}
.explorer{margin:0;padding:8px 12px}
.explorer .explored-count{margin-top:12px}
.face-learning{margin-top:14px}
.face-why{font-size:.94rem;line-height:1.55}
.face-explanation,.next-example{margin-top:12px;border-top:1px solid var(--line);padding-top:4px}
.face-explanation>summary,.next-example>summary{cursor:pointer;min-height:44px;padding:9px 0;font-weight:600;font-size:.95rem}
.face-explanation h3{margin:12px 0 7px}
.face-explanation p{font-size:.93rem}
.face-explanation .face-term{font-size:.78rem;color:var(--muted);margin:5px 0 14px}
.face-explanation .face-caution{border-left:3px solid #c5a666;padding-left:11px;margin-top:14px}
.next-move .panel-top{margin-bottom:8px}
.next-move .next-step-title{margin-top:12px}
.next-move .example-phrase{margin-top:8px}
.meter-panel .review-subpart{margin-bottom:16px}
.meter-panel .metric-label{display:flex;justify-content:space-between;gap:10px;align-items:baseline;flex-wrap:wrap}
.meter-panel .metric-label .value{margin-left:auto;white-space:nowrap;font-variant-numeric:tabular-nums}
.meter-panel .track{height:12px;margin-top:10px}
.meter-panel .fill,.meter-panel .suitable .fill,.meter-panel .clear .fill{background:var(--green)}
.meter-panel .meter-block{margin:18px 0}
.meter-panel .section-heading{margin-bottom:8px}
.profile-intro{font-size:.9rem;color:var(--muted)}
.rating-details>summary,.combined-score>summary{min-height:44px;padding:10px 0;cursor:pointer;font-size:.9rem;color:var(--green)}
.rating-content{padding-top:10px;overflow-wrap:anywhere}
.rating-content ul{padding-left:22px}
.rating-content li{margin:9px 0}
.rating-evidence{border-left:3px solid var(--line);padding-left:12px;margin:12px 0;font-size:.94rem}
.rubric-band{font-size:.92rem}
.combined-score{border-top:1px solid var(--line);margin-top:12px}
.combined-score .level-pill{margin-left:10px}
.comparison .change-evidence{margin:8px 0 16px;border-left:3px solid var(--line);padding-left:12px}
@media print{.result,.overall-advice p{color:#163c30!important;background:#fff!important}.meter-panel .fill{background:#367967!important}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}.rating-details,.combined-score{break-inside:avoid}}
.understanding{margin-top:0}
@media(max-width:480px){.shell{padding:18px 14px 28px}.review-part{padding:8px;margin:12px 0}.panel{padding:18px}.result{padding:20px}.review-enabled.feedback-shell{padding-bottom:150px}.score-summary{gap:8px}.part-review-note{font-size:11px}.part-review-note strong{font-size:12px}}
