/* Uni News Korea visual system v1. Static editorial components; no tracking or fonts. */
.visual-system {
  --vs-paper: #f5f5f0;
  --vs-rule: #d9d9d2;
  --vs-field: #77776f;
  --vs-ink: #161616;
  --vs-muted: #55554f;
  --vs-yellow: #f5dc3d;
  color: var(--vs-ink);
}
.visual-system :is(h1,h2,h3) { overflow-wrap: anywhere; text-wrap: pretty; }
.visual-system :is(input,select,textarea,button) { font: inherit; }
.visual-system :is(a,button,input,select,textarea,summary,[tabindex="0"]):focus-visible { outline: 3px solid var(--vs-ink); outline-offset: 4px; }
.visual-system :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { border: 1px solid var(--vs-field); background: #fff; color: var(--vs-ink); min-height: 48px; }
.visual-system :is(button,summary) { min-height: 44px; }
.visual-system .container { width: min(calc(100% - 2.5rem),76rem); }
.visual-system .site-status { font-size: .75rem; }
.visual-system .status-inner { padding-block: .35rem; gap: .35rem 1rem; }
.visual-system .editorial-masthead { padding-block: 1.05rem; gap: 1rem; }
.visual-system .editorial-masthead .kun-brand { width: 20rem; }
.visual-system.vs-inner .editorial-masthead { padding-block: .7rem; }
.visual-system.vs-inner .editorial-masthead .kun-brand { width: 17rem; }
.visual-system .editorial-header .primary-nav a { min-height: 44px; padding-block: .65rem; }
.visual-system .locale-switcher a { min-height: 44px; }
.visual-system .site-breadcrumb { margin-block: 0 1.25rem; font-size: .8125rem; }
.visual-system .site-breadcrumb a { display: inline-flex; align-items: center; min-height: 32px; }
.visual-system .hero { padding-block: 2rem 1.5rem; }
.visual-system :is(.hero h1,.business-page h1,.ux-planner h1,.vs-collection h1) { max-width: 30ch; font-size: clamp(1.875rem,3.5vw,3rem); line-height: 1.12; letter-spacing: -.035em; }
.visual-system :is(.hero .lead,.business-intro) { max-width: 66ch; font: 400 1.125rem/1.6 var(--font-sans); color: var(--vs-muted); }
.visual-system .section { padding-block: 2rem; }
.visual-system .vs-section-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: .5rem 1.5rem; border-top: 3px solid var(--vs-ink); padding-top: 1rem; margin-bottom: 1.5rem; }
.visual-system .vs-section-heading h2 { margin: 0; font-size: 1.625rem; line-height: 1.2; letter-spacing: -.025em; }
.visual-system .vs-section-heading>a { display: inline-flex; align-items: center; min-height: 44px; font-size: .875rem; }
/* Shell: identical navigation groups, existing registration information retained. */
.visual-system .footer { margin-top: 3rem; background: var(--vs-paper); border-top: 2px solid var(--vs-ink); padding-block: 2.5rem 1.5rem; }
.visual-system .footer-grid { display: grid; grid-template-columns: minmax(13rem,1.5fr) repeat(3,minmax(0,1fr)); gap: 2rem; }
.visual-system .footer-brand { max-width: min(15rem,100%); }
.visual-system .kun-name-line { flex-wrap: wrap; }
.visual-system .vs-footer-intro p { font-size: .8125rem; line-height: 1.6; max-width: 38ch; color: var(--vs-muted); }
.visual-system .footer-grid nav { display: flex; flex-direction: column; align-items: flex-start; gap: 0; }
.visual-system .footer-grid h2 { font-size: .8125rem; font-weight: 800; margin: 0 0 .5rem; }
.visual-system .footer-grid nav a { display: inline-flex; align-items: center; min-height: 44px; padding-block: .35rem; font-size: .875rem; line-height: 1.4; }
.visual-system .footer-legal { font-size: .75rem; line-height: 1.6; border-top: 1px solid var(--vs-rule); padding-top: 1.25rem; }
.visual-system .footer-legal p { max-width: none; margin-block: .35rem; }
.visual-system .pa-consent { border-color: var(--vs-field); border-radius: 0; padding: 12px; box-shadow: 0 2px 12px #0002; }
.visual-system .pa-consent h2 { font-size: 1rem; margin-bottom: 4px; }
.visual-system .pa-consent :is(p,details) { margin-bottom: 8px; }
.visual-system .pa-consent summary { min-height: 32px; }
.visual-system :is(.pa-actions button,.pa-settings) { border-radius: 0; color: var(--vs-ink); border-color: var(--vs-field); }
.visual-system .pa-actions button:hover { background: var(--vs-paper); }
/* Editorial home: lead / latest / collections / practical next actions. */
.visual-system .editorial-strapline { font-size: .8125rem; padding-block: .75rem; }
.visual-system .reader-front { grid-template-columns: minmax(0,1.8fr) minmax(16rem,1fr); gap: 2.5rem; margin-block: 2rem 3rem; }
.visual-system .reader-lead h1 { width: auto; max-width: none; font-size: clamp(2rem,3.2vw,3rem); line-height: 1.1; letter-spacing: -.035em; }
.visual-system .reader-lead .reader-deck { font-size: 1.125rem; line-height: 1.6; max-width: 60ch; }
.visual-system .reader-support { padding-left: 2rem; }
.visual-system .reader-support h2 { font-size: .8125rem; letter-spacing: .04em; text-transform: uppercase; }
.visual-system .reader-support .reader-card h3 { font-size: 1.25rem; line-height: 1.25; }
.visual-system .reader-section { margin-block: 2.5rem; padding-top: 0; border-top: 0; }
.visual-system .reader-list { gap: 1.5rem 2.5rem; }
.visual-system .reader-list>.reader-card { padding-block: 0 1.5rem; border-bottom: 1px solid var(--vs-rule); }
.visual-system .reader-card h3 { font-size: 1.375rem; line-height: 1.25; letter-spacing: -.015em; }
.visual-system .reader-card .reader-topic { font-size: .75rem; line-height: 1.5; color: var(--vs-muted); }
.visual-system .reader-card .reader-deck { font-size: .9375rem; line-height: 1.6; color: var(--vs-muted); }
.visual-system .reader-date { font-size: .75rem; }
.visual-system .vs-series-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem; }
.visual-system .vs-series-card { padding: 1.5rem; background: var(--vs-paper); border-top: 3px solid var(--vs-ink); }
.visual-system .vs-series-card h3 { margin: .5rem 0; font-size: 1.5rem; }
.visual-system .vs-series-card p { color: var(--vs-muted); font-size: .9375rem; }
.visual-system .vs-series-card a { display: inline-flex; align-items: center; min-height: 44px; }
.visual-system .reader-jobs-promo { margin-block: 2.5rem; padding: 2rem; }
.visual-system .media-tools { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.visual-system .vs-collection { padding-block: 2rem; }
.visual-system .vs-collection>header { margin-bottom: 2rem; max-width: 64rem; }
.visual-system .vs-collection .reader-list { margin-top: 1.5rem; }
.visual-system .vs-collection .reader-card h2 { font-size: 1.375rem; line-height: 1.3; margin-block: .4rem .75rem; }
.visual-system .business-page { padding-block: 2rem; }
.visual-system .business-grid { gap: 2rem; }
.visual-system .business-grid>.reader-card { border: 0; border-top: 1px solid var(--vs-rule); padding: 1.25rem 0; }
/* Article reading measure and all article prose/metadata remain untouched. */
.visual-system .reader-heading { max-width: 64rem; padding-top: 2rem; }
.visual-system .reader-heading h1 { font-size: clamp(2rem,3.6vw,3.5rem); line-height: 1.12; letter-spacing: -.035em; max-width: 32ch; }
.visual-system .reader-heading>.reader-deck { font-size: 1.1875rem; line-height: 1.6; max-width: 66ch; }
.visual-system .reader-meta { font-size: .8125rem; line-height: 1.5; border-top: 1px solid var(--vs-rule); padding-top: 1rem; }
.visual-system .reader-meta p { margin-block: .25rem; }
.visual-system .reader-actions { padding-block: .5rem; }
.kun-nav-js .visual-system .reader-actions[hidden] { display: flex !important; visibility: hidden; }
.kun-nav-js .visual-system .ux-planner [data-form-jump][hidden] { display: block !important; visibility: hidden; }
.visual-system .reader-toc summary { padding-block: .6rem; }
.visual-system .reader-prose { min-width: 0; }
.visual-system .reader-prose :is(h2,h3) { scroll-margin-top: 1.25rem; }
/* University products: evidence follows the title; fields precede optional filters. */
.visual-system .university-hero { background: #fff; }
.visual-system .university-hero .container { display: block; padding-block: 1.5rem; }
.visual-system .university-hero h1 { font-size: clamp(1.875rem,3.5vw,3rem); line-height: 1.14; max-width: 32ch; letter-spacing: -.03em; margin-block: .5rem 1rem; }
.visual-system .university-hero .lead { max-width: 70ch; font-size: 1.0625rem; line-height: 1.6; }
.visual-system .university-hero .kicker { margin-top: 0; }
.visual-system .university-directory-actions { margin-top: .75rem; }
.visual-system .university-hero-copy { display: block; }
.visual-system .university-directory-actions { border-top: 0; padding-top: 0; }
.visual-system .university-task-links--compact { display: flex; flex-wrap: wrap; gap: 0 1.5rem; }
.visual-system .university-task-links--compact li { border: 0; }
.visual-system .university-task-links--compact a { font-size: .8125rem; gap: .75rem; }
.visual-system #university-search { font-size: 1.375rem; margin-block: 0 .5rem; }
.visual-system .vs-directory-help { font-size: .8125rem; }
.visual-system .university-filter-panel>.university-source-strip { width: 100%; padding-block: 0; margin-top: .25rem; }
.visual-system .university-filter-panel>.university-source-strip summary { padding-block: .35rem; }
.visual-system .university-source-strip__action { display: none; }
.visual-system .university-source-strip summary::after { display: none; }
.visual-system .university-source-strip { display: block; margin-top: 0; padding-block: .5rem; border-top: 0; font-size: .8125rem; }
.visual-system .university-source-strip summary { display: list-item; cursor: pointer; min-height: 44px; padding-block: .65rem; }
.visual-system .university-source-strip summary strong { margin-right: .6rem; }
.visual-system .university-source-strip p { margin-block: .5rem; }
.visual-system .university-source-strip>div { padding-bottom: .75rem; }
.visual-system .university-filter-panel { margin-top: .75rem; padding: 1.25rem; background: var(--vs-paper); border: 1px solid var(--vs-rule); }
.visual-system .university-filter-grid { grid-template-columns: minmax(0,2fr) minmax(0,1fr); gap: 1rem; }
.visual-system .university-search-field { grid-column: auto; }
.visual-system .university-filter-grid input { min-width: 0; width: 100%; }
.visual-system .vs-extra-filters { grid-column: 1/-1; border-block: 1px solid var(--vs-rule); }
.visual-system .vs-extra-filters summary { display: list-item; padding-block: .7rem; cursor: pointer; font-size: .875rem; font-weight: 700; }
.visual-system .vs-extra-filter-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; padding-bottom: 1rem; }
.visual-system .university-filter-actions { margin-top: .75rem; }
.visual-system .university-filter-actions a { border: 1px solid var(--vs-field); min-height: 44px; padding: .65rem .8rem; background: #fff; }
.visual-system .university-result-status { margin-block: .75rem; font-size: .9375rem; border-left: 3px solid var(--vs-ink); background: #fff; }
.visual-system .university-record { padding: 1.1rem; border-color: var(--vs-rule); gap: .6rem; align-content: start; }
.visual-system .university-record h3 { font-size: 1.1875rem; line-height: 1.3; }
.visual-system .university-record p { font-size: .875rem; line-height: 1.55; }
.visual-system .university-record__actions { align-self: end; }
.visual-system .university-record__actions>a { min-height: 44px; display: inline-flex; align-items: center; }
.visual-system .university-pagination { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; margin-block: 1rem; }
.visual-system .university-pagination button { min-width: 44px; padding: .5rem .85rem; border: 1px solid var(--vs-field); background: #fff; color: var(--vs-ink); cursor: pointer; }
.visual-system .university-pagination button:disabled { opacity: .5; cursor: default; }
.visual-system .university-pagination button[aria-current=page] { background: var(--vs-ink); color: #fff; }
.visual-system .university-fact-layout { gap: 2rem; }
.visual-system .university-fact-layout h2 { font-size: 1.375rem; line-height: 1.3; }
.visual-system .university-facts { grid-template-columns: minmax(8rem,.8fr) minmax(0,1.4fr); }
.visual-system :is(.university-evidence-card,.university-limit-card) { margin-block: 0 1rem; border-color: var(--vs-rule); background: var(--vs-paper); }
.visual-system .university-compare-region { position: relative; overflow: auto; border-color: var(--vs-field); }
.visual-system .university-compare-table { table-layout: fixed; min-width: 0; width: max-content; border-collapse: separate; border-spacing: 0; }
.visual-system .university-compare-table :is(th,td) { width: 210px; min-width: 210px; max-width: 210px; box-sizing: border-box; padding: .85rem; border: 0; border-right: 1px solid var(--vs-rule); border-bottom: 1px solid var(--vs-rule); overflow-wrap: anywhere; font-size: .9375rem; }
.visual-system .university-compare-table tr>:first-child { width: 112px; min-width: 112px; max-width: 112px; position: sticky; left: 0; z-index: 1; background: var(--vs-paper); font-size: .8125rem; }
.visual-system .university-compare-table thead th { background: #fff9d9; vertical-align: top; }
.visual-system .vs-scroll-hint { font-size: .8125rem; color: var(--vs-muted); margin-block: .75rem; }
.visual-system .university-compare-region:has(table[hidden]) + .vs-scroll-hint { display: none; }
/* Task, trust and commercial pages share controls but retain their distinct policies. */
.visual-system .trust-copy { max-width: 64rem; font-family: var(--font-sans); font-size: 1rem; line-height: 1.75; }
.visual-system .trust-copy :is(p,li) { font-family: inherit; max-width: 75ch; }
.visual-system .trust-copy>section { padding-block: 1.25rem; border-top: 1px solid var(--vs-rule); }
.visual-system .trust-copy h2 { font-size: 1.5rem; line-height: 1.25; margin-block: .25rem 1rem; }
.visual-system .trust-hub-nav { background: var(--vs-paper); border: 1px solid var(--vs-rule); padding: 1.25rem; margin-bottom: 2rem; }
.visual-system .trust-hub-nav ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 2rem; list-style: none; padding: 0; }
.visual-system .trust-hub-nav a { display: inline-flex; min-height: 44px; align-items: center; padding-block: .3rem; }
.visual-system .contact-channels { margin-bottom: 2rem; border-top: 3px solid var(--vs-ink); padding-top: 1rem; }
.visual-system .contact-channels ul { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem 2rem; }
.visual-system .contact-channels li { border-bottom: 1px solid var(--vs-rule); padding-block: .5rem; }
.visual-system .contact-channels a { display: inline-flex; min-height: 44px; align-items: center; overflow-wrap: anywhere; }
.visual-system .kun-public-search-results { display: grid; gap: 1rem; }
.visual-system .kun-public-search-fallback { columns: 2; column-gap: 2rem; }
.visual-system .kun-public-search-fallback li { break-inside: avoid; padding-block: .35rem; }
.visual-system .vs-search-archive { margin-block: 2rem; }
.visual-system .vs-search-archive>summary { padding-block: .75rem; cursor: pointer; font-weight: 700; }
.visual-system .ux-process { max-width: none; }
.visual-system .ux-process ol { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem 2rem; list-style: decimal-leading-zero; padding-left: 2rem; }
.visual-system .ux-process li { border-top: 1px solid var(--vs-rule); padding-block: 1rem; }
.visual-system .vs-example { background: var(--vs-paper); padding: 1.5rem; border: 1px solid var(--vs-rule); margin-block: 2rem; }
.visual-system .vs-example>p:first-child { font-size: .75rem; font-weight: 800; letter-spacing: .04em; }
.visual-system .vs-evidence-flow { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); list-style: none; padding: 0; gap: 1rem; }
.visual-system .vs-evidence-flow li { border-top: 3px solid var(--vs-ink); padding-top: .75rem; }
.visual-system .vs-evidence-flow strong { display: block; font-size: .9375rem; margin-bottom: .5rem; }
.visual-system .vs-evidence-flow p { font-size: .875rem; line-height: 1.6; }
.visual-system .vs-error { min-height: 45vh; padding-block: 3rem; }
.visual-system .vs-error h1 { max-width: 24ch; font-size: clamp(1.875rem,3.5vw,3rem); line-height: 1.15; }
.visual-system .vs-error .business-links { display: flex; flex-wrap: wrap; align-items: flex-start; gap: .5rem 1.5rem; margin-top: 1.25rem; }
.visual-system .vs-error .business-links a { display: inline-flex; align-items: center; min-height: 44px; padding-block: .5rem; }
.visual-system .vs-policy-toc { margin-block: 1.25rem; padding: .5rem 1rem; border: 1px solid var(--vs-field); background: var(--vs-paper); }
.visual-system .vs-policy-toc summary { padding-block: .6rem; font-weight: 700; cursor: pointer; }
.visual-system .vs-policy-toc ol { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,18rem),1fr)); gap: .25rem 2rem; padding-left: 1.5rem; }
.visual-system .vs-policy-toc a { display: inline-flex; align-items: center; min-height: 44px; }
.visual-system [id^="vs-policy-section-"] { scroll-margin-top: 1.25rem; }
@media(max-width:767px) {
  .visual-system .vs-error .business-links { flex-direction: column; }
  .kun-nav-js:not(.kun-reader-ready) .visual-system [data-reader-toc] nav { display: none; }
  .kun-nav-js .visual-system #editorial-navigation { display: none; }
  .kun-nav-js .visual-system .editorial-header:has([data-editorial-menu][aria-expanded="true"]) #editorial-navigation { display: flex; }
  .kun-nav-js .visual-system .editorial-menu[hidden] { display: inline-flex !important; visibility: hidden; align-items: center; }
  .visual-system .status-inner strong { font-weight: 500; }
  .visual-system .editorial-masthead { flex-wrap: nowrap; padding-block: .8rem; gap: .5rem; }
  .visual-system .editorial-masthead .kun-brand,.visual-system.vs-inner .editorial-masthead .kun-brand { width: 10.5rem; flex-shrink: 1; }
  .visual-system .editorial-utilities { gap: .4rem; }
  .visual-system .editorial-header .locale-switcher a { padding-inline: .5rem; font-size: .75rem; }
  .visual-system .editorial-menu { padding-inline: .5rem; font-size: .75rem; }
  .visual-system .editorial-header .primary-nav { gap: 0 1rem; }
  .visual-system .editorial-header .primary-nav a { padding-block: .5rem; font-size: .875rem; }
  .visual-system .hero,.visual-system .university-hero .container { padding-block: 1.25rem; }
  .visual-system .site-breadcrumb { margin-bottom: .75rem; }
  .visual-system .reader-front { display: block; margin-top: 1.5rem; }
  .visual-system .reader-lead h1 { font-size: 2rem; line-height: 1.14; }
  .visual-system .reader-support { padding: 1.25rem 0 0; margin-top: 1.5rem; border-left: 0; border-top: 1px solid var(--vs-rule); }
  .visual-system .reader-support .reader-card:not(.has-art) { display: block; }
  .visual-system .reader-section { margin-block: 2rem; }
  .visual-system .reader-card h3 { font-size: 1.25rem; }
  .visual-system .vs-series-grid,.visual-system .vs-evidence-flow { grid-template-columns: minmax(0,1fr); }
  .visual-system .vs-series-card { padding: 1.25rem; }
  .visual-system .media-tools { display: block; }
  .visual-system .reader-jobs-promo { padding: 1.5rem; }
  .visual-system .reader-heading { padding-top: 1.5rem; }
  .visual-system .reader-heading>.reader-deck { font-size: 1.0625rem; }
  .visual-system .university-filter-panel { padding: 1rem; }
  .visual-system .university-filter-grid,.visual-system .vs-extra-filter-grid { grid-template-columns: minmax(0,1fr); }
  .visual-system .university-directory-actions { display: block; }
  .visual-system .university-facts { grid-template-columns: minmax(7rem,.75fr) minmax(0,1.25fr); }
  .visual-system .university-facts dt,.visual-system .university-facts dd { font-size: .875rem; line-height: 1.6; }
  .visual-system .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem 1rem; }
  .visual-system .vs-footer-intro { grid-column: 1/-1; }
  .visual-system .footer-grid h2 { margin-bottom: .3rem; }
  .visual-system .footer-grid nav a { font-size: .8125rem; }
  .visual-system .footer-legal { margin-top: 1.5rem; }
  .visual-system .trust-hub-nav ul,.visual-system .contact-channels ul,.visual-system .ux-process ol { grid-template-columns: minmax(0,1fr); }
  .visual-system .kun-public-search-fallback { columns: auto; }
}
@media(max-width:359px) {
  .visual-system .container,.visual-system .footer-legal { width: calc(100% - 2rem); }
  .visual-system .editorial-masthead { flex-wrap: wrap; }
  .visual-system .reader-lead h1 { font-size: 1.875rem; }
}
@media(forced-colors:active) {
  .visual-system :is(.university-record,.vs-series-card,.vs-example,.vs-extra-filters) { border: 1px solid CanvasText; }
  .visual-system .university-pagination button[aria-current=page] { outline: 2px solid Highlight; }
  .visual-system :is(a,button,input,select,summary):focus-visible { outline-color: Highlight; }
}
@media print {
  .visual-system .footer,.visual-system .university-pagination,.visual-system .vs-scroll-hint { display: none; }
  .visual-system .university-compare-region { overflow: visible; }
  .visual-system .university-compare-table { width: 100%; }
  .visual-system .university-compare-table :is(th,td) { position: static; width: auto; min-width: 0; max-width: none; font-size: 9pt; }
  .visual-system :is(.reader-card,.university-record,.vs-series-card) { break-inside: avoid; }
}
