.nq-page { color: #18263a; font-size: 15px; }
.nq-page [hidden], .nq-presenter[hidden] { display: none !important; }
.nq-page button, .nq-page select, .nq-page input { font-family: inherit; }
.nq-page button { width: auto; min-height: 42px; margin: 0; padding: 9px 15px; border: 1px solid #cfdae5; border-radius: 6px; background: #fff; color: #233850; box-shadow: none; font-size: 14px; font-weight: 700; cursor: pointer; }
.nq-page button:hover { border-color: #087f6d; color: #087f6d; }
.nq-page button:disabled { opacity: .5; cursor: not-allowed; }
.nq-page button:focus-visible, .nq-page a:focus-visible, .nq-presenter button:focus-visible { outline: 3px solid #e5b329; outline-offset: 2px; }
.nq-page .nq-primary { border-color: #087f6d; background: #087f6d; color: #fff; }
.nq-page .nq-primary:hover { border-color: #066657; background: #066657; color: #fff; }
.nq-heading { margin-bottom: 20px !important; }
.nq-heading-mark { display: flex; align-items: center; gap: 10px; color: #087f6d; font-size: 13px; font-weight: 800; }
.nq-heading-mark img { flex: 0 0 56px; border-radius: 10px; }
.modern-subpage #content .nq-heading h1 { margin: 16px 0 12px; font-size: 32px; line-height: 1.35; }
.nq-heading > p { max-width: 720px; margin: 0; padding: 0; color: #54657a; font-size: 16px; line-height: 1.7; }
.nq-jumps { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 24px; }
.nq-jumps a { padding: 8px 11px; border: 1px solid #d9e3ed; border-radius: 5px; background: #f8fafc; color: #28505a; font-size: 13px; font-weight: 700; text-decoration: none; }
.nq-panel { margin: 0 0 22px; padding: 24px; border: 1px solid #d5e1e9; border-radius: 8px; background: #fff; }
.nq-section-head, .nq-group-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; }
.nq-section-head { margin-bottom: 18px; }
.nq-section-head span, .nq-daily span, .nq-result > span { display: block; color: #087f6d; font-size: 12px; font-weight: 800; }
.nq-section-head h2, .nq-daily h2 { margin: 4px 0 0; color: #18263a; font-size: 22px; font-weight: 800; }
.nq-section-head > strong { color: #697b8d; font-size: 12px; font-weight: 700; white-space: nowrap; }
.nq-form-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: end; gap: 12px; }
.nq-form-grid label, .nq-collection-controls label, .nq-print-controls label { display: grid; min-width: 0; gap: 5px; color: #41566c; font-size: 13px; font-weight: 700; }
.nq-page select, .nq-page input[type=search], .nq-page input[type=text] { width: 100%; height: 43px; margin: 0; padding: 7px 11px; border: 1px solid #cdd9e3; border-radius: 5px; background: #fff; color: #172a3e; font-size: 15px; }
.nq-page .nq-check { display: flex; align-items: center; gap: 8px; min-height: 43px; margin: 0; }
.nq-check input { width: 18px !important; height: 18px !important; margin: 0 !important; appearance: auto !important; opacity: 1 !important; accent-color: #087f6d; }
.nq-help { margin: 12px 0; color: #61758a; font-size: 13px; line-height: 1.6; }
.nq-daily { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 0 0 26px; padding: 21px 24px; border-left: 4px solid #e6b52e; background: #f7faf9; }
.nq-daily h2 { font-size: 19px; }
.nq-daily p { margin: 4px 0 0; color: #5a6c7e; font-size: 13px; }
.nq-daily > div:last-child { display: grid; justify-items: end; gap: 8px; }
.nq-daily strong { color: #52677b; font-size: 12px; white-space: nowrap; }
.nq-play-top { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; color: #4d6175; font-size: 13px; font-weight: 800; }
.nq-play-top strong { color: #c25737; }
.nq-play progress { display: block; width: 100%; height: 9px; margin: 14px 0 24px; accent-color: #087f6d; }
.nq-question-meta { display: flex; gap: 7px; }
.nq-question-meta span { padding: 3px 9px; border-radius: 4px; background: #edf5f3; color: #087f6d; font-size: 12px; font-weight: 800; }
.modern-subpage #content .nq-play h2 { margin: 17px 0 23px; color: #15283d; font-size: 25px; font-weight: 800; line-height: 1.5; }
.nq-play form { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 10px; }
.nq-play form label { grid-column: 1 / -1; color: #41566c; font-size: 13px; font-weight: 800; }
.nq-page .nq-play input[type=text] { height: 50px; font-size: 18px; }
.nq-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.nq-actions a { display: inline-flex; align-items: center; min-height: 42px; padding: 9px 15px; border: 1px solid #cfdae5; border-radius: 6px; background: #fff; color: #233850; font-size: 14px; font-weight: 700; text-decoration: none; }
.nq-play-bottom { justify-content: space-between; padding-top: 16px; border-top: 1px solid #e1e8ee; }
.nq-feedback { min-height: 72px; margin-top: 15px; padding: 13px 15px; border: 1px solid #cae5dc; border-radius: 6px; background: #eff8f4; color: #275b4e; }
.nq-feedback[data-correct=false] { border-color: #e9d4b4; background: #fff9eb; color: #6d5127; }
.nq-feedback p { margin: 4px 0 0; padding: 0; font-size: 14px; line-height: 1.6; }
.nq-result-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; margin: 20px 0; }
.nq-result-summary div { display: grid; gap: 5px; padding: 13px; border: 1px solid #d8e4e9; border-radius: 6px; background: #f8fbfa; }
.nq-result-summary span { color: #65788a; font-size: 12px; }
.nq-result-summary strong { color: #087f6d; font-size: 20px; font-weight: 800; }
#nqWrongList h3 { margin: 26px 0 10px; font-size: 17px; }
#nqWrongList > div { padding: 13px 0; border-top: 1px solid #e1e8ee; }
#nqWrongList p { margin: 4px 0 0; color: #576a7d; font-size: 14px; }
.nq-section { margin: 28px 0; }
.nq-section > h2, .nq-collection .nq-section-head h2 { margin: 0 0 10px; color: #18263a; font-size: 22px; font-weight: 800; line-height: 1.4; }
.nq-section > p { margin: 0 0 12px; color: #596d7f; font-size: 14px; line-height: 1.75; }
.nq-collection { padding-top: 22px; border-top: 1px solid #dce6ed; }
.nq-collection-controls { display: grid; grid-template-columns: minmax(180px, 2fr) repeat(2, minmax(115px, 1fr)); align-items: end; gap: 10px; }
.nq-collection-controls .nq-check { grid-column: 1 / 3; }
.nq-collection-controls button { justify-self: end; grid-column: 3; }
.nq-group { margin: 24px 0; }
.nq-group-head { margin-bottom: 10px; }
.nq-group h2 { margin: 0; color: #233850; font-size: 18px; font-weight: 800; }
.nq-group-head span { color: #718295; font-size: 12px; }
.nq-entry-list { display: grid; gap: 8px; }
.nq-entry { min-width: 0; margin: 0 !important; padding: 15px 17px; border: 1px solid #d9e4eb; border-radius: 6px; background: #fff; }
.nq-entry:target { border-color: #087f6d; background: #f5fbf8; }
.nq-entry-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #6b7e8e; font-size: 11px; font-weight: 700; }
.nq-page .nq-favorite { min-height: 30px; padding: 3px 8px; border: 0; background: transparent; color: #64788b; font-size: 15px; }
.nq-page .nq-favorite[aria-pressed=true] { color: #b68114; }
.nq-entry h3 { margin: 2px 0 11px; color: #182e42; font-size: 16px; font-weight: 800; line-height: 1.5; }
.nq-entry-actions { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px 13px; }
.nq-entry details { min-width: 0; margin: 0; }
.nq-entry summary { color: #087f6d; font-size: 12px; font-weight: 800; cursor: pointer; }
.nq-entry details p { max-width: 590px; margin: 7px 0 0; color: #53677a; font-size: 13px; line-height: 1.6; }
.nq-entry details p strong { color: #133b36; font-weight: 800; }
.nq-page .nq-entry-actions button { min-height: 25px; padding: 2px 6px; border: 0; background: none; color: #667a8f; font-size: 12px; }
.nq-page .nq-more { width: 100%; margin-top: 9px; background: #f8fbfc; }
.nq-print-controls { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; gap: 10px; }
.nq-print-controls .nq-check { grid-column: 1; }
.nq-print-controls button { justify-self: start; }
.nq-faq details { border-bottom: 1px solid #dde6ed; }
.nq-faq summary { padding: 13px 0; color: #273e52; font-weight: 800; cursor: pointer; }
.nq-faq p { margin: 0 0 14px; color: #53697a; font-size: 14px; }
.nq-related { padding-top: 22px; border-top: 1px solid #dce6ed; }
.nq-related > div { display: flex; flex-wrap: wrap; gap: 8px; }
.nq-related a { padding: 10px 12px; border: 1px solid #d5e1e8; border-radius: 5px; color: #186e62; font-size: 13px; font-weight: 800; text-decoration: none; }
.nq-host-open { overflow: hidden; }
.nq-presenter { position: fixed; z-index: 20000; inset: 0; display: flex; flex-direction: column; padding: 22px; background: #102939; color: #fff; }
.nq-presenter-bar { display: flex; align-items: center; justify-content: space-between; gap: 15px; font-size: 16px; font-weight: 800; }
.nq-presenter-bar > div { display: flex; gap: 8px; }
.nq-presenter button { min-width: 46px; min-height: 44px; padding: 8px 14px; border: 1px solid #719592; border-radius: 5px; background: #183e4a; color: #fff; font-size: 14px; font-weight: 800; cursor: pointer; }
.nq-presenter button:disabled { opacity: .45; }
.nq-presenter main { display: grid; align-content: center; justify-items: center; flex: 1; text-align: center; }
.nq-presenter main p { margin: 0 0 24px; color: #9ed7c9; font-size: 17px; }
.nq-presenter h2 { max-width: 1000px; margin: 0; color: #fff; font-size: clamp(27px, 4vw, 55px); font-weight: 800; line-height: 1.35; }
.nq-presenter main div { max-width: 1000px; margin-top: 30px; padding: 15px; color: #fff4c4; font-size: clamp(19px, 2.4vw, 29px); line-height: 1.45; }
.nq-presenter-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; }
.nq-presenter-actions button:last-child { border-color: #e9b832; background: #e9b832; color: #14242b; }
.nq-print-sheet { display: none; }
@media screen and (max-width: 850px) { .nq-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .nq-collection-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); } .nq-collection-controls label:first-child { grid-column: 1 / -1; } .nq-collection-controls .nq-check { grid-column: 1; } .nq-collection-controls button { grid-column: 2; } }
@media screen and (max-width: 620px) { .modern-subpage #content .nq-heading h1 { font-size: 27px; } .nq-heading > p { font-size: 14px; } .nq-panel { padding: 18px 15px; } .nq-section-head { align-items: flex-start; flex-wrap: wrap; } .nq-section-head h2, .nq-daily h2, .nq-section > h2 { font-size: 19px; } .nq-daily { align-items: flex-start; flex-direction: column; padding: 17px; } .nq-daily > div:last-child { justify-items: start; } .nq-result-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } .nq-presenter { padding: 14px; } }
@media screen and (max-width: 420px) { .modern-subpage #content .nq-heading h1 { font-size: 23px; } .nq-form-grid, .nq-collection-controls, .nq-print-controls { grid-template-columns: 1fr; } .nq-collection-controls label:first-child, .nq-collection-controls .nq-check, .nq-collection-controls button, .nq-print-controls .nq-check { grid-column: 1; } .nq-collection-controls button { justify-self: stretch; } .nq-play form { grid-template-columns: 1fr; } .nq-play form label { grid-column: 1; } .nq-result-summary { grid-template-columns: 1fr 1fr; } .nq-presenter-actions button { flex: 1 1 auto; } }
@media (prefers-reduced-motion: reduce) { .nq-page *, .nq-presenter * { scroll-behavior: auto !important; transition-duration: 0s !important; animation-duration: 0s !important; } }
@media print { @page { size: A4; margin: 16mm; } body { background: #fff !important; color: #111 !important; font: 11pt/1.45 sans-serif !important; } body > :not(#nqPrintSheet) { display: none !important; } #nqPrintSheet { display: block !important; } .nq-print-sheet h1 { margin: 0 0 14mm; font-size: 20pt; } .nq-print-sheet h2 { margin: 12mm 0 5mm; font-size: 14pt; } .nq-print-sheet ol { margin: 0; padding-left: 8mm; } .nq-print-sheet li { margin: 0 0 7mm; break-inside: avoid; } .nq-print-sheet li p { margin: 2mm 0 0; } }
