/* A++1 form typography and A++3 working hierarchy.
   Screen presentation only: print and exported document templates are untouched. */
@media screen {
  body.body--logged-in #generator {
    --ink: #17252e;
    --muted: #53626a;
    --green: #315967;
    --green-2: #17252e;
    --mint: #e7eeee;
    --line: #cbd4d7;
    font-family: "DM Sans", sans-serif;
    min-width: 0;
  }
  body.body--logged-in #generator > .section-head { max-width: 800px; margin-bottom: 32px; }
  body.body--logged-in #generator > .section-head h1 {
    font: 600 clamp(30px, 3vw, 40px)/1.15 "Space Grotesk", sans-serif;
    letter-spacing: -.035em;
    max-width: none;
    margin: 0 0 16px;
  }
  body.body--logged-in #generator > .section-head p:not(.eyebrow) { font-size: 16px; line-height: 1.65; }
  body.body--logged-in #generator .tool-shell {
    grid-template-columns: minmax(0, 1fr);
    border: 0;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    overflow: visible;
  }
  body.body--logged-in #generator .tool-rail {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    padding: 0;
    background: #fff;
    border: 0;
    border-block: 1px solid #cbd4d7;
  }
  body.body--logged-in #generator .rail-step {
    min-height: 68px;
    padding: 16px 20px;
    border-radius: 0;
    border-bottom: 3px solid transparent;
    font: 600 14px/1.5 "DM Sans", sans-serif;
    color: #53626a;
    white-space: normal;
  }
  body.body--logged-in #generator .rail-step.active { border-bottom-color: #315967; background: #e7eeee; color: #17252e; }
  body.body--logged-in #generator .tool-panel { min-width: 0; padding: 32px; }
  body.body--logged-in #generator .step-pane > h2 { font: 600 26px/1.3 "Space Grotesk", sans-serif; letter-spacing: -.025em; margin: 0 0 24px; }
  body.body--logged-in #generator .doc-grid { gap: 0; margin-top: 24px; border-top: 1px solid #cbd4d7; }
  body.body--logged-in #generator .doc-card {
    min-height: 140px;
    padding: 24px;
    border: 0;
    border-bottom: 1px solid #cbd4d7;
    border-radius: 0;
    box-shadow: none;
    background: #fff;
  }
  body.body--logged-in #generator .doc-card:nth-child(odd) { border-right: 1px solid #cbd4d7; }
  body.body--logged-in #generator .doc-card strong { font: 600 20px/1.35 "Space Grotesk", sans-serif; letter-spacing: -.025em; }
  body.body--logged-in #generator .doc-card span { font-size: 14px; line-height: 1.6; }
  body.body--logged-in #generator .doc-card.active { background: #e7eeee; box-shadow: inset 3px 0 #315967; }
  body.body--logged-in #generator .doc-card.disabled { cursor: not-allowed; }
  body.body--logged-in #generator .document-guide { margin-top: 28px; padding: 24px; background: #f1f3f3; border: 0; border-left: 3px solid #315967; border-radius: 0; }
  body.body--logged-in #generator .document-guide h3 { font-size: 17px; font-weight: 600; }
  body.body--logged-in #generator .document-guide li { font-size: 14px; line-height: 1.6; }
  body.body--logged-in #generator label { min-width: 0; gap: 8px; margin-top: 24px; font-size: 14px; line-height: 1.5; font-weight: 600; }
  body.body--logged-in #generator :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), select, textarea) {
    min-width: 0;
    min-height: 48px;
    padding: 12px 14px;
    font: 400 15px/1.5 "DM Sans", sans-serif;
    background: #fff;
    border: 1px solid #71818a;
    border-radius: 6px;
    color: #17252e;
    box-shadow: none;
  }
  body.body--logged-in #generator :is(input, select, textarea):focus-visible { outline: 3px solid #315967; outline-offset: 1px; box-shadow: none; }
  body.body--logged-in #generator :is(button, a, summary):focus-visible { outline: 3px solid #315967; outline-offset: 4px; }
  body.body--logged-in #generator .form-grid.two { gap: 0 24px; }
  body.body--logged-in #generator .hint { color: #53626a; font-size: 13px; font-weight: 400; line-height: 1.65; }
  body.body--logged-in #generator .actions { gap: 12px; margin-top: 28px; padding-top: 20px; border-top: 1px solid #cbd4d7; }
  body.body--logged-in #generator .btn { min-height: 44px; box-shadow: none; }
  body.body--logged-in #generator .advanced-params { margin: 28px 0; padding: 24px; background: #f1f3f3; border: 0; border-radius: 0; }
  body.body--logged-in #generator .advanced-params > summary { min-height: 44px; font-size: 17px; color: #17252e; }
  body.body--logged-in #generator .advanced-params .hint { margin-top: 0; }
  body.body--logged-in #generator .params-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; }
  body.body--logged-in #generator .params-grid label { margin-top: 20px; font-size: 14px; }
  body.body--logged-in #generator .param-etykieta { color: #315967; min-height: 40px; line-height: 1.45; }
  body.body--logged-in #generator .param-help { margin-top: 6px; font-size: 13px; color: #53626a; }
  body.body--logged-in #generator #employeeFields { margin-block: 28px !important; padding: 24px !important; border-radius: 0 !important; background: #f1f3f3 !important; border: 0 !important; }
  body.body--logged-in #generator .interview-layout { grid-template-columns: 240px minmax(0, 1fr); gap: 32px; }
  body.body--logged-in #generator .interview-outline { border: 0; border-right: 1px solid #cbd4d7; border-radius: 0; background: #fff; }
  body.body--logged-in #generator .interview-outline > summary { font-weight: 600; padding: 0 16px 16px 0; min-height: 44px; }
body.body--logged-in #generator #interviewNavigation { padding: 8px 16px 8px 8px; }
body.body--logged-in #generator #interviewNavigation :is(button, summary) { scroll-margin-block: 8px; }
  body.body--logged-in #generator #interviewNavigation button { min-height: 44px; border-radius: 0; font-weight: 500; line-height: 1.5; }
  body.body--logged-in #generator #interviewNavigation button[aria-current] { background: #e7eeee; border-color: transparent; border-left-color: #315967; color: #17252e; }
  body.body--logged-in #generator #questionText { font: 600 27px/1.3 "Space Grotesk", sans-serif; letter-spacing: -.025em; margin: 20px 0 12px; overflow-wrap: anywhere; }
  body.body--logged-in #generator .question-head { font-size: 13px; font-weight: 500; margin-top: 20px; }
  body.body--logged-in #generator .mini-progress { height: 4px; }
  body.body--logged-in #generator .choice { min-height: 48px; padding: 12px 16px; font-size: 15px; font-weight: 500; }
  body.body--logged-in #generator .choice.active { background: #e7eeee; border-color: #315967; color: #17252e; box-shadow: inset 0 -2px #315967; }
  body.body--logged-in #generator #answerText { min-height: 170px; }
  body.body--logged-in #generator :is(.help, .notice, .summary) { border-radius: 0; line-height: 1.65; }
  body.body--logged-in #generator .summary { padding: 24px; background: #f1f3f3; }
  body.body--logged-in #generator :is(.position-assessment, .kz) { border-radius: 0; box-shadow: none; }

  /* The saved document is the main object; commands and revisions stay outside its paper. */
  body.body--logged-in #generator .result { border: 0; border-radius: 0; background: #e7eeee; box-shadow: none; overflow: visible; }
  body.body--logged-in #generator .result-toolbar { padding: 28px 32px; align-items: flex-start; background: #fff; gap: 24px; }
  body.body--logged-in #generator #resultTitle { font: 600 30px/1.25 "Space Grotesk", sans-serif; letter-spacing: -.03em; margin: 12px 0; overflow-wrap: anywhere; }
  body.body--logged-in #generator .toolbar-actions { flex: 0 1 430px; justify-content: flex-end; gap: 8px; }
  body.body--logged-in #generator .toolbar-actions .btn { font-size: 13px; white-space: normal; }
  body.body--logged-in #generator #documentReleaseStatus { font-size: 13px; font-weight: 600; letter-spacing: 0; }
  body.body--logged-in #generator .document-revision-bar:not([hidden]) { padding: 20px 32px; background: #f1f3f3; }
  body.body--logged-in #generator .document-revision-details summary { min-height: 44px; display: inline-flex; align-items: center; }
  body.body--logged-in #generator :is(.trust-panel, .legal-check, .export-presentation-settings) { border-radius: 0; box-shadow: none; }
  body.body--logged-in #generator .export-presentation-settings { background: #fff; margin: 0; padding: 24px 32px; border: 0; border-bottom: 1px solid #cbd4d7; }
  body.body--logged-in #generator .export-presentation-settings label { margin-top: 0; }
  body.body--logged-in #generator .export-presentation-settings select { max-width: 620px; }
  body.body--logged-in #generator .document-preview { max-width: 920px; margin: 32px auto; padding: 48px; background: #fff; color: #17252e; box-shadow: 0 12px 32px #17252e14; overflow-wrap: anywhere; }
  body.body--logged-in #generator .document-preview h1 { font: 600 30px/1.25 "Space Grotesk", sans-serif; letter-spacing: -.025em; }
  body.body--logged-in #generator .document-preview :is(h2, h3) { color: #17252e; }
  body.body--logged-in #generator .document-preview th { background: #315967; }
  body.body--logged-in #generator .document-edit-pane { background: #fff; padding: 24px 32px; }
  body.body--logged-in #generator .edit-hint { border-radius: 0; background: #f1f3f3; }
  body.body--logged-in #generator .document-fields-editor > label { font-weight: 600; }
  body.body--logged-in #generator .document-source-editor summary { min-height: 48px; padding-block: 14px; }

  @media (hover: hover) and (pointer: fine) {
    body.body--logged-in #generator :is(.doc-card:not(:disabled), .rail-step:not(.active)):hover { background: #f1f3f3; }
  }
  @media (max-width: 1100px) {
    body.body--logged-in #generator .interview-layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    body.body--logged-in #generator .interview-outline { border-right: 0; border-bottom: 1px solid #cbd4d7; }
    body.body--logged-in #generator .interview-outline > summary { padding: 12px 0; }
    body.body--logged-in #generator .result-toolbar { flex-direction: column; }
    body.body--logged-in #generator .toolbar-actions { flex-basis: auto; justify-content: flex-start; }
    body.body--logged-in #generator .document-preview { margin: 24px; padding: 32px; }
  }
  @media (max-width: 600px) {
    body.body--logged-in #generator .tool-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.body--logged-in #generator .rail-step { min-height: 64px; padding: 12px; font-size: 13px; }
    body.body--logged-in #generator .tool-panel { padding: 24px 16px; }
    body.body--logged-in #generator .step-pane > h2 { font-size: 24px; }
    body.body--logged-in #generator .doc-grid { grid-template-columns: minmax(0, 1fr); }
    body.body--logged-in #generator .doc-card { padding: 20px 16px; min-height: 120px; }
    body.body--logged-in #generator .doc-card:nth-child(odd) { border-right: 0; }
    body.body--logged-in #generator .doc-card strong { font-size: 19px; }
    body.body--logged-in #generator .doc-card span { font-size: 15px; }
    body.body--logged-in #generator :is(.document-guide, .advanced-params, .summary) { padding: 20px 16px; }
    body.body--logged-in #generator .params-grid { grid-template-columns: minmax(0, 1fr); }
    body.body--logged-in #generator .param-etykieta { min-height: 0; }
    body.body--logged-in #generator :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), select, textarea) { font-size: 16px; padding-inline: 12px; }
    body.body--logged-in #generator label { font-size: 15px; }
    body.body--logged-in #generator label:has(#genNip) > div { flex-wrap: wrap; }
    body.body--logged-in #generator #genNip { flex-basis: 100% !important; }
    body.body--logged-in #generator #genNipLookupBtn { min-height: 44px; }
    body.body--logged-in #generator .actions .btn { min-height: 48px; white-space: normal; }
    body.body--logged-in #generator #questionText { font-size: 24px; }
    body.body--logged-in #generator .choice { flex: 1 1 auto; }
    body.body--logged-in #generator .result-toolbar { padding: 24px 16px; }
    body.body--logged-in #generator #resultTitle { font-size: 26px; }
    body.body--logged-in #generator .document-revision-bar:not([hidden]),
    body.body--logged-in #generator :is(.export-presentation-settings, .document-edit-pane) { padding: 20px 16px; }
    body.body--logged-in #generator .document-preview { margin: 20px 8px; padding: 24px 16px; }
    body.body--logged-in #generator .document-preview h1 { font-size: 25px; }
    body.body--logged-in #generator .document-preview table { font-size: 13px; }
    body.body--logged-in #generator .document-preview :is(th, td) { padding: 8px; }
  }
  .premium-generator-context{padding-left:12px;border-left:3px solid var(--premium-brand);font-size:14px!important;color:var(--ink);line-height:1.6!important}
  .premium-select-value{display:none}
  @media(max-width:760px){.premium-select-value{display:block;color:var(--muted);font-size:13px;line-height:1.5;margin:6px 0 0;overflow-wrap:anywhere}.premium-select-value[hidden]{display:none}}
  @media (prefers-reduced-motion: reduce) {
    body.body--logged-in #generator * { animation: none; transition: none; scroll-behavior: auto; }
  }
}
