/* Korean assessment, order, sample and shared-result screens only.
   Professional reports keep typography, sizing, layout, chart/center colors and
   printed output canonical. The final block only composes the free introduction
   for narrow screens; question controls and hidden states remain unchanged. */
@media screen {
  body.library-assessment {
    --night: #1c1824;
    --night-2: #241d2e;
    --paper: #f6f1e9;
    --cream: #f6f1e9;
    --white: #fbf8f3;
    --ink: #2b2530;
    --muted: #6b6070;
    --line: #e2d9cc;
    --gold: #e6c48e;
    --gold-deep: #8a5e27;
    --assessment-paper-2: #efe8dd;
    --assessment-control-border: #918272;
    --assessment-on-dark: #f4ede2;
    --assessment-on-dark-muted: #b8aebf;
    --assessment-dark-line: #3a3145;
    --shadow: none;
    --shadow-hover: none;
    color: var(--ink);
    background: var(--paper);
  }

  /* The service header keeps its phase-dependent progress and stop controls. */
  body.library-assessment .site-header {
    color: var(--assessment-on-dark);
    background: var(--night);
    border-bottom-color: var(--assessment-dark-line);
  }
  body.library-assessment .site-header :is(.brand, .header-link, .text-button) { color: var(--assessment-on-dark); }
  body.library-assessment .site-header .header-link:hover { color: var(--gold); border-bottom-color: var(--gold); }
  body.library-assessment .header-progress #stepLabel { color: var(--assessment-on-dark-muted); }
  body.library-assessment .header-progress .progress { background: var(--assessment-dark-line); }

  /* Free introduction and license entry: existing content and geometry stay. */
  body.library-assessment .hero { color: var(--assessment-on-dark); background: var(--night-2); }
  body.library-assessment .hero::before { background: none; }
  body.library-assessment .hero h1 em,
  body.library-assessment .hero .eyebrow { color: var(--gold); }
  body.library-assessment .hero > .lead,
  body.library-assessment .hero .facts,
  body.library-assessment .hero #freeStart .privacy { color: var(--assessment-on-dark-muted); }
  body.library-assessment .hero .facts b { color: var(--assessment-on-dark); }
  body.library-assessment .hero .facts i { background: var(--assessment-on-dark-muted); }
  body.library-assessment .orbit,
  body.library-assessment .orbit::before { border-color: rgba(230, 196, 142, .28); }
  body.library-assessment .orbit svg { stroke: rgba(230, 196, 142, .42); }
  body.library-assessment .orbit-center { color: var(--night-2); background: var(--gold); box-shadow: none; }
  body.library-assessment .orbit span { color: var(--gold); background: var(--night); box-shadow: none; }
  body.library-assessment .about,
  body.library-assessment .test { background: var(--paper); }
  body.library-assessment .benefits article,
  body.library-assessment .question-wrap,
  body.library-assessment .license-gate,
  body.library-assessment .exit-panel { color: var(--ink); background: var(--white); box-shadow: none; }
  body.library-assessment .license-gate { border-color: var(--line); }
  body.library-assessment .license-gate .privacy { color: var(--muted); }
  body.library-assessment .eyebrow,
  body.library-assessment .section-tag,
  body.library-assessment .question-kicker,
  body.library-assessment .benefits article > span { color: var(--gold-deep); }
  body.library-assessment .progress { background: var(--line); }
  body.library-assessment .progress > div { background: var(--gold-deep); }
  body.library-assessment .header-progress .progress > div { background: var(--gold); }

  /* States stay visibly different without changing question controls. */
  body.library-assessment .answer label { color: var(--muted); background: var(--white); box-shadow: inset 0 0 0 1px var(--assessment-control-border); }
  body.library-assessment .answer label b { color: var(--ink); }
  body.library-assessment .answer input:checked + label {
    color: var(--gold-deep);
    background: var(--assessment-paper-2);
    border-color: var(--gold-deep);
    box-shadow: inset 0 0 0 1px var(--gold-deep);
  }
  body.library-assessment .answer input:checked + label b { color: var(--gold-deep); }
  body.library-assessment .scale-switch { color: var(--gold-deep); background: var(--assessment-paper-2); border-color: var(--line); }
  body.library-assessment .exit-confirm { background: rgba(28, 24, 36, .6); }
  body.library-assessment .license-row input,
  body.library-assessment .question-field textarea,
  body.library-assessment .order-field > input,
  body.library-assessment .keep-grid input[type="text"],
  body.library-assessment .keep-grid input[type="email"] { color: var(--ink); background: var(--white); border-color: var(--assessment-control-border); }
  body.library-assessment .license-row input:focus,
  body.library-assessment .question-field textarea:focus,
  body.library-assessment .order-field > input:focus { border-color: var(--gold-deep); outline-color: var(--gold-deep); }
  body.library-assessment .form-message[data-kind="pending"] { color: var(--gold-deep); }

  body.library-assessment .primary,
  body.library-assessment .button,
  body.library-assessment .premium-result-cta-link {
    color: var(--night-2);
    background: var(--gold);
    border-color: var(--gold);
    box-shadow: none;
  }
  body.library-assessment .primary:hover,
  body.library-assessment .button:hover,
  body.library-assessment .premium-result-cta-link:hover { color: var(--night-2); background: #f0d5ab; border-color: #f0d5ab; box-shadow: none; }
  body.library-assessment .secondary,
  body.library-assessment .button-secondary { color: var(--ink); background: var(--white); border-color: var(--assessment-control-border); box-shadow: none; }
  body.library-assessment .secondary:hover,
  body.library-assessment .secondary:focus-visible,
  body.library-assessment .button-secondary:hover { color: var(--gold-deep); background: var(--assessment-paper-2); border-color: var(--gold-deep); box-shadow: none; }
  body.library-assessment .primary:disabled { color: var(--muted); background: var(--line); border-color: var(--line); box-shadow: none; }
  body.library-assessment :focus-visible,
  body.library-assessment .answer input:focus-visible + label,
  body.library-assessment .inquiry-page a:focus-visible { outline-color: var(--gold-deep); }
  body.library-assessment :is(.site-header, .hero, footer) :focus-visible { outline-color: var(--gold); }
  body.library-assessment .license-gate :focus-visible { outline-color: var(--gold-deep); }

  /* Free results: preserve the candidate hierarchy and links. */
  body.library-assessment .result { background: var(--paper); }
  body.library-assessment .result-hero { color: var(--assessment-on-dark); background: var(--night-2); box-shadow: none; }
  body.library-assessment .result-hero h2 em,
  body.library-assessment .result .section-tag { color: var(--gold); }
  body.library-assessment .result-note { color: var(--assessment-on-dark-muted); }
  body.library-assessment .candidate { background: var(--white); border-top-color: var(--line); box-shadow: none; }
  body.library-assessment .candidate:first-child { background: var(--assessment-paper-2); border-top-color: var(--gold-deep); box-shadow: none; }
  body.library-assessment .candidate .number { color: var(--gold-deep); background: var(--assessment-paper-2); }
  body.library-assessment .candidate:first-child .number { color: var(--assessment-on-dark); background: var(--night-2); }
  body.library-assessment .candidate-heading span,
  body.library-assessment .candidate .rank,
  body.library-assessment .candidate a { color: var(--gold-deep); }
  body.library-assessment .candidate a { background: var(--white); border-color: var(--assessment-control-border); }
  body.library-assessment .candidate a:hover,
  body.library-assessment .candidate a:focus-visible { background: var(--assessment-paper-2); border-color: var(--gold-deep); box-shadow: none; }
  body.library-assessment .result-links { color: var(--assessment-on-dark); background: var(--night-2); }
  body.library-assessment .result-links small { color: var(--gold); }
  body.library-assessment .result-links p { color: var(--assessment-on-dark-muted); }
  body.library-assessment .result-links a { color: var(--gold-deep); background: var(--white); box-shadow: none; }
  body.library-assessment .result-links a:hover { background: var(--assessment-paper-2); border-color: var(--gold); }
  body.library-assessment .premium-result-cta { background: var(--white); border-color: var(--line); border-left-color: var(--gold-deep); }

  /* Orders retain their input, validation and receipt semantics. Error/success
     colors are intentionally unchanged, as are the report's center colors. */
  body.library-assessment .order-card,
  body.library-assessment .order-complete { background: var(--white); border-color: var(--line); box-shadow: none; }
  body.library-assessment .order-overview li > span,
  body.library-assessment .order-overview > a,
  body.library-assessment .order-contact,
  body.library-assessment .inquiry-resume,
  body.library-assessment .order-complete-links a { color: var(--gold-deep); }
  body.library-assessment .order-product:has(input:checked) { background: var(--assessment-paper-2); border-color: var(--gold-deep); }
  body.library-assessment .order-product input,
  body.library-assessment .order-consent > input,
  body.library-assessment .keep-grid .share-toggle input { accent-color: var(--gold-deep); }
  body.library-assessment .order-unavailable,
  body.library-assessment .order-payment { background: var(--assessment-paper-2); }

  /* Professional documents stay ruled, square and typographically unchanged.
     No selectors target chart geometry, score fills or semantic center tokens. */
  body.library-assessment .report { background: var(--white); border-color: var(--line); }
  body.library-assessment .report-print,
  body.library-assessment .keep-grid button { color: var(--ink); background: var(--white); border-color: var(--assessment-control-border); box-shadow: none; }
  body.library-assessment .report-print:hover { color: var(--assessment-on-dark); background: var(--night-2); border-color: var(--night-2); }
  body.library-assessment .keep-grid button:hover { color: var(--gold-deep); border-color: var(--gold-deep); }
  body.library-assessment .report-toc a:hover,
  body.library-assessment .sample-back,
  body.library-assessment .shared-next .text-button { color: var(--gold-deep); }
  body.library-assessment .report .sample-actions .button,
  body.library-assessment .shared-next .button { color: var(--assessment-on-dark); background: var(--night-2); border-color: var(--night-2); box-shadow: none; }
  body.library-assessment .report .sample-actions .button:hover,
  body.library-assessment .shared-next .button:hover { color: var(--night-2); background: var(--gold); border-color: var(--gold); }
  body.library-assessment .report .sample-actions .button-secondary { color: var(--ink); background: var(--white); border-color: var(--assessment-control-border); }
  body.library-assessment .report .sample-actions .button-secondary:hover { color: var(--gold-deep); background: var(--assessment-paper-2); border-color: var(--gold-deep); }

  body.library-assessment > footer { color: var(--assessment-on-dark); background: var(--night); }
  body.library-assessment > footer :is(p, small, .footer-biz) { color: var(--assessment-on-dark-muted); }
  body.library-assessment > footer .footer-biz { border-top-color: var(--assessment-dark-line); }
  body.library-assessment > footer :is(.footer-brand, .footer-contact) { color: var(--assessment-on-dark); text-decoration-color: var(--assessment-on-dark-muted); }
}

@media screen and (hover: hover) {
  body.library-assessment .answer input:not(:checked) + label:hover { color: var(--ink); background: #efe8dd; border-color: #8a5e27; }
}

/* Only the free introduction needs responsive composition: its old absolutely
   positioned art crossed the start button on narrow screens. No report rules. */
@media screen and (max-width: 800px) {
  body.library-assessment .hero:has(#freeStart) { min-height: 0; padding-bottom: 36px; }
  body.library-assessment .hero:has(#freeStart) h1 { font-size: clamp(30px,8.3vw,42px); line-height: 1.35; letter-spacing: -.025em; word-break: keep-all; }
  body.library-assessment .hero:has(#freeStart) .test-visual { position: relative; top: auto; right: auto; width: 250px; height: 230px; margin: 24px auto 0; }
  body.library-assessment #freeStart .primary { width: 100%; }
  body.library-assessment .about h2 { font-size: clamp(26px,6.8vw,34px); line-height: 1.4; word-break: keep-all; }
}
