/* Scoped styles: include alongside the host v2 app.css. */
.exam-companions {
  --ec-ink:#263c35; --ec-muted:#52665e; --ec-border:#ccd9d0; --ec-accent:#27684e;
  color:var(--ec-ink); background:#fafbf6; border:1px solid var(--ec-border);
  border-radius:18px; padding:clamp(16px,3vw,32px); max-width:1040px; margin:0 auto;
  font:inherit; line-height:1.65; overflow-wrap:anywhere; box-sizing:border-box;
}
.exam-companions *, .exam-companions *::before, .exam-companions *::after {box-sizing:border-box;}
.exam-companions h2 {font-size:clamp(1.3rem,3.2vw,1.8rem);line-height:1.3;margin:20px 0 10px;}
.exam-companions h3 {font-size:1.05rem;line-height:1.45;margin:16px 0 8px;}
.exam-companions p {margin:8px 0;white-space:pre-wrap;}
.exam-companions button,.exam-companions select,.exam-companions textarea {
  font:inherit;color:inherit;max-width:100%;border:1px solid var(--ec-border);border-radius:9px;
}
.exam-companions button {padding:9px 14px;min-height:44px;background:#fff;cursor:pointer;text-align:left;line-height:1.4;}
.exam-companions button:hover:not(:disabled) {background:#e9f1e8;border-color:var(--ec-accent);}
.exam-companions button[aria-pressed="true"] {background:var(--ec-accent);color:#fff;border-color:var(--ec-accent);}
.exam-companions button:disabled {cursor:default;background:#f0f2ed;color:#66746b;}
.exam-companions button:focus-visible,.exam-companions a:focus-visible,.exam-companions select:focus-visible,
.exam-companions textarea:focus-visible {outline:3px solid #be7633;outline-offset:3px;}
.exam-companions a {color:#205f46;display:inline-block;min-height:44px;padding:8px 10px 8px 0;text-underline-offset:3px;}
.exam-companions textarea {display:block;width:100%;min-height:90px;background:#fff;padding:12px;resize:vertical;line-height:1.65;}
.exam-companions select {background:#fff;padding:9px 12px;min-height:44px;}
.exam-companions .ec-toolbar,.exam-companions .ec-filters,.exam-companions .ec-question-nav,
.exam-companions .ec-assessment {display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.exam-companions .ec-assessment h3,.exam-companions .ec-assessment p {flex-basis:100%;}
.exam-companions .ec-toolbar {padding-bottom:10px;border-bottom:1px solid var(--ec-border);}
.exam-companions .ec-status {font-size:.88rem;color:var(--ec-muted);min-height:1.5em;}
.exam-companions .ec-notice {background:#eef2e8;border-left:3px solid #769e80;padding:12px 16px;border-radius:0 8px 8px 0;}
.exam-companions .ec-muted {color:var(--ec-muted);font-size:.9rem;}
.exam-companions .ec-kicker {color:var(--ec-accent);font-weight:650;}
.exam-companions .ec-paper-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px;margin-top:20px;}
.exam-companions .ec-paper-card {border:1px solid var(--ec-border);background:#fff;border-radius:12px;padding:18px;}
.exam-companions .ec-paper-card h3 {margin-top:0;}
.exam-companions .ec-sources {border-bottom:1px solid var(--ec-border);padding-bottom:18px;margin-bottom:20px;}
.exam-companions .ec-question-list {list-style:none;margin:0;padding:0;display:grid;gap:8px;}
.exam-companions .ec-question-list li {display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.exam-companions .ec-question-list button {flex:1 1 300px;}
.exam-companions .ec-field {display:block;font-weight:600;margin:18px 0;}
.exam-companions .ec-field textarea {font-weight:400;margin-top:6px;}
.exam-companions .ec-reveal {border:1px solid var(--ec-border);background:#fff;border-radius:10px;padding:12px;margin:12px 0;}
.exam-companions .ec-reveal>button {width:100%;}
.exam-companions .ec-reveal>button:disabled[aria-expanded="true"] {color:var(--ec-accent);background:#eef5ed;}
.exam-companions .ec-reveal ol {padding-left:25px;}
.exam-companions dt {font-weight:650;margin-top:12px;}
.exam-companions dd {margin:3px 0 10px 16px;}
.exam-companions .ec-question-nav {margin-top:24px;padding-top:16px;border-top:1px solid var(--ec-border);}
@media(max-width:560px) {
  .exam-companions {border-radius:10px;padding:14px;}
  .exam-companions .ec-toolbar button,.exam-companions .ec-question-nav button {flex:1 1 90px;text-align:center;}
  .exam-companions .ec-filters select {flex:1 1 140px;width:100%;}
  .exam-companions .ec-assessment button {flex:1 1 120px;}
  .exam-companions .ec-question-list li {align-items:stretch;}
  .exam-companions .ec-question-list span {padding:0 10px 8px;}
}
@media(prefers-reduced-motion:reduce) {.exam-companions * {scroll-behavior:auto;}}
@media print {
  .exam-companions .ec-toolbar,.exam-companions .ec-filters,.exam-companions .ec-question-nav {display:none;}
  .exam-companions {border:0;background:#fff;}
}
