/* Mobile reading and task surfaces. Desktop composition keeps its own styles. */
.km-tabs,.km-reading-controls,.km-enquiry-start{display:none}.km-menu:not([open]){display:none}
.km-menu{--km-rule:#d9dddc;--km-surface:#f5f6f5;box-sizing:border-box;max-width:none;padding:0;border:0;color:#161616;background:#fff;font-family:var(--font-sans,system-ui,sans-serif)}
.km-menu::backdrop{background:rgb(0 0 0 / .4)}
.km-native.km-menu-open{position:fixed;width:100%;overflow:hidden}
.km-confirm .skip-link{position:absolute;left:max(12px,env(safe-area-inset-left,0px));top:-100px;padding:12px;background:#fff;color:#161616;z-index:10}
.km-confirm .skip-link:focus{top:max(12px,env(safe-area-inset-top,0px))}
.km-confirm header a{display:inline-flex;align-items:center;min-height:44px}
.km-confirm input:not([type=checkbox]),.km-confirm textarea,.km-confirm select{font-size:16px;min-height:48px}
.km-confirm button{min-height:48px;min-width:44px}
@media(max-width:1023px){
 .km-native{--km-ink:#161616;--km-surface:#f5f6f5;--km-rule:#d9dddc;--km-yellow:#f5dc3d;--km-bottom:calc(66px + env(safe-area-inset-bottom,0px));padding-bottom:var(--km-bottom);overflow-wrap:anywhere}
 .km-confirm.km-native{padding-bottom:24px}
 .km-native *{box-sizing:border-box}
 .km-native [hidden]{display:none!important}
 .km-native :is(button,a,summary,input,select,textarea){-webkit-tap-highlight-color:transparent;touch-action:manipulation}
 .km-native :is(button,summary){cursor:pointer}
 .km-native :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #1758a6;outline-offset:3px}
 .km-native :is(input,select,textarea){font-size:16px;min-width:0;max-width:100%;border-radius:8px;scroll-margin-block:110px}
 .km-native input:not([type=checkbox]):not([type=radio]),.km-native select{min-height:48px;padding:11px 12px}
 .km-native textarea{padding:12px;line-height:1.6;min-height:120px}
 .km-native :is(button,input[type=submit],summary){min-height:44px}
 .km-native button{min-width:44px}
 .km-native :is(input[type=checkbox],input[type=radio]){min-width:20px;min-height:20px;flex-shrink:0;accent-color:#161616}
 .km-native :is(label:has(input[type=checkbox]),label:has(input[type=radio])){min-height:44px;align-items:center}
 .km-native main :is(h1,h2,h3,[id]){scroll-margin-top:100px}
 .km-native :is([data-hub-result],[data-preparation-result],[data-question-result],[data-arrival-result],[data-budget-result],[data-research-result],[data-guide-result],[data-comparison],[data-budget-step] legend){scroll-margin-top:calc(100px + env(safe-area-inset-top,0px))}
 .km-native .catalog [data-detail-panel]{scroll-margin-top:calc(100px + env(safe-area-inset-top,0px))}
 .km-native main :is(h1,h2,h3){text-wrap:pretty}
 .km-native .container{width:auto;max-width:100%;margin-left:max(18px,env(safe-area-inset-left,0px));margin-right:max(18px,env(safe-area-inset-right,0px))}
 .km-confirm.km-native header,.km-confirm.km-native main{padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px))}
 .km-confirm.km-native header{padding-top:max(12px,env(safe-area-inset-top,0px))}
 .km-native .editorial-header{position:sticky;top:0;z-index:30;border-bottom:1px solid #161616;background:var(--km-yellow);padding-top:env(safe-area-inset-top,0px)}
 .km-native .editorial-masthead{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding-block:12px}
 .km-native .editorial-masthead{min-height:0;padding-block:8px}
 .km-native .editorial-header .kun-brand{width:184px;max-width:100%;grid-row:1}
 .km-native .editorial-header .kun-name-line{padding-top:5px;gap:8px;font-size:10px;line-height:1.2;border-top-width:1px}
 .km-native .kun-name-line [lang=en]{font-size:9px;letter-spacing:.15em}
 .km-native .editorial-header .kun-name-line::after{display:none}
 .km-native .editorial-header .kun-name-line [lang=ko]{font-size:10px}
 .km-native .locale-switcher{margin:0;grid-row:1}
 .km-native .locale-switcher__options{border:0;background:transparent}
 .km-native .locale-switcher a{min-height:44px;padding:8px;font-size:12px;border:0;background:transparent;color:#161616;text-decoration:none}
 .km-native .locale-switcher a[aria-current]{display:none}
 .km-native .editorial-menu{grid-row:1;min-width:44px;width:44px;height:44px;padding:0;border:0;border-radius:8px;font-size:0;background:transparent;color:#161616}
 .km-native .editorial-menu::before{content:'☰';font:26px/1 system-ui,sans-serif}
 .km-native .kn-utility{display:none}
 .km-native .site-status{font-size:12px;line-height:1.5;padding-block:7px;background:#f5f6f5;color:#555d59}
 .km-native .site-status .status-inner{display:block;min-height:0;padding:0}
 .km-native .site-status .status-inner>span{display:none}
 .km-native .site-status strong{display:block;font-size:12px;font-weight:500;line-height:1.5;color:#555d59}
 .kun-nav-js .km-native .editorial-nav-frame{display:none}
 .km-native .kn-primary:not([hidden]){grid-template-columns:1fr}
 .km-native .km-tabs{position:fixed;z-index:50;bottom:0;inset-inline:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:4px max(6px,env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0px) max(6px,env(safe-area-inset-left,0px));min-height:var(--km-bottom);background:#fff;border-top:1px solid var(--km-rule)}
 .km-tabs>a,.km-tabs>button{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:60px;margin:0;padding:5px 0 7px;border:0;background:transparent;color:#555d59;font:600 11px/1.2 var(--font-sans,system-ui,sans-serif);text-decoration:none;border-radius:9px}
 .km-tabs svg{width:23px;height:23px;flex-shrink:0}
 .km-tabs :is([aria-current],[aria-expanded=true]){color:#161616;background:#fff8cf}
 .km-tabs [aria-current] svg{stroke-width:2.3}
 .km-tabs> :active{background:#eeefed}
 .kun-nav-js .km-menu-fallback{display:none}
 .km-native.km-editing .km-tabs{visibility:hidden;pointer-events:none}
 .km-native.km-menu-open{position:fixed;width:100%;overflow:hidden}
 .km-native .km-menu{position:fixed;inset:auto 0 0;margin:0;width:100%;height:min(88dvh,760px);max-height:calc(100dvh - env(safe-area-inset-top,0px) - 12px);border-radius:20px 20px 0 0;overflow:hidden;box-shadow:0 -8px 40px rgb(0 0 0 / .1)}
 .km-menu[open]{display:flex;flex-direction:column}
 .km-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;padding:12px max(18px,env(safe-area-inset-right,0px)) 12px max(18px,env(safe-area-inset-left,0px));border-bottom:1px solid var(--km-rule)}
 .km-menu-heading h2{font-size:21px;line-height:1.3;letter-spacing:-.025em;margin:0}
 .km-menu-heading button{width:44px;height:44px;min-width:44px;background:var(--km-surface);border:0;border-radius:50%;font:30px/1 system-ui,sans-serif;color:#161616}
 .km-menu-body{overflow-y:auto;overscroll-behavior:contain;padding:16px max(18px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(18px,env(safe-area-inset-left,0px));min-height:0}
 .km-menu-search{display:flex;align-items:center;gap:12px;min-height:52px;padding:12px;background:var(--km-surface);border:1px solid var(--km-rule);border-radius:10px;color:#161616;text-decoration:none;font-size:15px;font-weight:600}
 .km-menu-search svg{flex-shrink:0}
 .km-menu-body section{margin-top:24px}
 .km-menu-body h3{font-size:13px;font-weight:700;color:#555d59;margin:0 0 6px}
 .km-menu-body ul{list-style:none;margin:0;padding:0}
 .km-menu-body li{margin:0;border-bottom:1px solid #eff0ef}
 .km-menu-body li a{display:flex;align-items:center;min-height:48px;padding:11px 2px;color:#161616;text-decoration:none;font-size:16px;line-height:1.45}
 .km-menu-body li a[aria-current]{font-weight:750;background:#fff8cf}
 .km-native .kn-start{padding:14px 0;margin:0;border-bottom:1px solid var(--km-rule)}
 .km-native .kn-start>p{font-size:15px;line-height:1.55;font-weight:450;margin:0;text-wrap:pretty}
 .km-native .kn-start :is(.kn-task-links,.kn-shortcuts){display:none}
 .km-native .reader-front{padding-top:0;margin-block:20px 28px;gap:28px}
 .km-native .reader-lead{gap:12px}
 .km-native .reader-lead>div{order:0}
 .km-native .reader-lead .home-media{margin:0}
 .km-native .reader-lead .home-media img{aspect-ratio:16/9;max-height:220px;object-fit:cover;border-radius:10px}
 .km-native .reader-lead .home-media figcaption{font-size:10px;line-height:1.4;margin-top:6px}
 .km-native .reader-lead .reader-topic{margin:0 0 8px;font-size:12px}
 .km-native .reader-lead h1{font-size:29px;line-height:1.16;letter-spacing:-.03em}
 .km-native .reader-lead .reader-deck{font-size:16px;line-height:1.6;margin-block:10px}
 .km-native .reader-support{padding:20px 0 0;border-top:1px solid var(--km-rule);border-left:0}
 .km-native .reader-support>h2{font-size:18px;text-transform:none;letter-spacing:-.02em;margin-bottom:16px}
 .km-native .reader-support .reader-card{padding-bottom:20px}
 .km-native :is(.reader-card h3,.vs-collection .reader-card h2){font-size:21px;line-height:1.35;letter-spacing:-.02em}
 .km-native :is(.reader-jobs-promo,.career-bridge){padding:20px;border-radius:12px}
 .km-native .reader-heading{padding-block:22px 16px}
 .km-native .reader-heading h1{font-size:31px;line-height:1.18;letter-spacing:-.03em;margin-block:12px 16px}
 .km-native .reader-heading>.reader-deck{font-size:18px;line-height:1.65}
 .km-native .reader-meta{margin-top:20px}
 .km-native .reader-actions{gap:8px;padding-block:4px}
 .km-native .reader-actions button{border-color:#c9cecb;border-radius:8px;font-size:14px;flex:1;min-height:44px}
 .km-native .km-reading-controls{display:flex;align-items:center;gap:12px;width:max-content;margin-top:8px;padding:4px;border:1px solid var(--km-rule);border-radius:10px}
 .km-reading-controls button{width:44px;height:44px;padding:0;border:0;background:var(--km-surface);color:#161616;border-radius:7px;font:600 16px/1 var(--font-sans,system-ui,sans-serif)}
 .km-reading-controls button:disabled{opacity:.4;cursor:default}
 .km-reading-controls output{font-size:13px;min-width:82px;text-align:center}
 .km-native .reader-prose{font-size:18px;line-height:1.85}
 html[lang=en] .km-native .reader-prose{font-size:20px;line-height:1.75}
 .km-native .reader-layout{padding-top:4px;gap:20px}
 .km-native .reader-toc{border:1px solid var(--km-rule);border-radius:10px;padding:0 14px;background:var(--km-surface)}
 .km-native .reader-toc summary{display:list-item;padding-block:13px;min-height:48px;font-size:15px}
 .km-native .reader-toc a{display:flex;min-height:44px;align-items:center;padding-block:8px;line-height:1.5;font-size:14px}
 .km-native .reader-prose :is(h2,h3){scroll-margin-top:100px}
 .km-native :is(.reader-table,.university-compare-region,.sp-table-wrap,.catalog-table-wrap){overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
 .km-native .university-hero .container{padding-block:22px 12px}
 .km-native :is(.university-hero h1,.catalog .catalog-intro h1,.sp-heading h1,.ux-tool-hero h1){font-size:30px;line-height:1.2;letter-spacing:-.03em}
 .km-native .university-hero .lead{font-size:16px;line-height:1.65}
 .km-native .university-task-links--compact{gap:2px 16px}
 .km-native .university-task-links--compact a{font-size:14px;min-height:44px}
 .km-directory-tools summary{min-height:44px;padding-block:10px;font-size:14px;font-weight:600}
 .km-native .university-filter-panel{padding:16px;border:1px solid var(--km-rule);border-radius:12px;background:var(--km-surface)}
 .km-native :is(.university-filter-grid,.vs-extra-filter-grid,.catalog-filter-grid,.sp-fields,.udi-grid){grid-template-columns:minmax(0,1fr);gap:16px}
 .km-native .university-filter-actions{display:flex;flex-wrap:wrap;gap:12px}
 .km-native .university-filter-actions>*{min-height:44px;border-radius:8px}
 .km-native .university-record{padding:16px;border-radius:10px;background:#fff}
 .km-native .university-record h3{font-size:20px;line-height:1.4}
 .km-native .university-record__actions{display:flex;flex-wrap:wrap;gap:10px}
 .km-native .university-record__actions :is(a,label){min-height:44px}
 .km-native .university-pagination button{min-width:44px;min-height:44px;border-radius:8px}
 .km-native .university-facts{grid-template-columns:minmax(0,1fr)}
 .km-native .university-facts dt{padding-bottom:4px;border-bottom:0;font-size:13px;color:#555d59}
 .km-native .university-facts dd{margin:0 0 10px;padding-top:0}
 .km-native .catalog{padding-top:20px}
 .km-native .catalog .catalog-intro p{font-size:16px;line-height:1.65}
 .km-native .catalog .catalog-intro{margin-bottom:16px}
 .km-native .catalog .kn-catalog-scope{font-size:13px;line-height:1.6;padding:10px 12px;margin-block:14px}
 .km-native .catalog-filters{padding:16px;border-radius:12px}
 .km-native .catalog-filters h2{font-size:19px}
 .km-native .km-extra-filters{grid-column:1/-1;border-block:1px solid var(--km-rule);padding-block:2px}
 .km-extra-filters summary{padding-block:12px;font-size:15px;font-weight:600}
 .km-extra-filters[open]>.catalog-field{margin-block:12px 16px}
 .km-native :is(.catalog-filter-actions,.catalog-detail-heading){flex-wrap:wrap;gap:10px}
 .km-native .catalog-filter-actions button{flex:1;min-height:48px;border-radius:8px;font-size:15px;padding-inline:10px}
 .km-native :is(.catalog-next,.catalog-pagination){gap:10px}
 .km-native .catalog-next a{min-height:44px;display:flex;align-items:center}
 .km-native .sp{padding-top:20px}
 .km-native .sp-heading{margin-bottom:22px}
 .km-native .sp-heading>p{font-size:16px;line-height:1.65}
 .km-native .sp :is(fieldset,.sp-card,.sp-panel){padding:16px;border-radius:10px;min-width:0}
 .km-native .sp :is(button,.sp-button){border-radius:8px;min-height:48px;padding:12px 16px}
 .km-native .sp-nav{gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
 .km-native .sp-location>span{display:none}
 .km-native .sp-tool-menu{width:auto;margin-left:auto}
 .km-native .sp-tool-menu summary{min-height:44px;padding-block:10px;font-size:14px}
 .km-native .sp-field label{font-size:15px;line-height:1.5}
 .km-native .sp-actions{gap:10px;flex-wrap:wrap}
 .km-native .sp-actions button{flex:1 1 120px}
 .km-native :is(.sp-step-nav,.sp-tabs){overflow-x:auto;max-width:100%;overscroll-behavior-x:contain}
 .km-native :is(.sp-links,.kn-card-grid){gap:12px}
 .km-native .kn-card-grid>a{border-radius:10px;padding:16px}
 .km-native .rr-card{padding:14px}
 .km-native .rr-choices{gap:10px}
 .km-native .rr-choices button{white-space:normal}
 .km-native .search-form{gap:12px}
 .km-native .search-form input{width:100%;min-height:50px}
 .km-native :is(.search-form button,.search-type-tabs button){min-height:44px;border-radius:8px}
 .km-native .search-result-card{padding-block:18px}
 .km-native :is(.ud,.udi){min-width:0}
 .km-native .udi-field :is(input,textarea,select){font-size:16px;border-radius:8px}
 .km-native .udi-types label{min-height:48px;border-radius:8px;padding:12px}
 .km-native .udi-actions button{min-height:48px;border-radius:8px}
 .km-native .km-enquiry-start{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 16px;margin-top:18px;border:1px solid #161616;border-radius:8px;background:#f5dc3d;color:#161616;font-size:16px;font-weight:700;text-decoration:none}
 .km-native .ud-page #request{scroll-margin-top:calc(100px + env(safe-area-inset-top,0px))}
 .km-native :is(.business-page,.trust-copy){padding-top:22px}
 .km-native .trust-hub-nav{padding:16px;border-radius:10px}
 .km-native .trust-hub-nav ul{grid-template-columns:1fr}
 .km-native .footer{margin-top:36px;padding-top:28px}
 .km-native .footer-grid{gap:24px}
 .km-native .footer-grid nav a{min-height:44px}
 .km-native .pa-consent{bottom:calc(var(--km-bottom) + 8px);left:max(8px,env(safe-area-inset-left,0px));right:max(8px,env(safe-area-inset-right,0px));max-height:calc(100dvh - var(--km-bottom) - 100px);padding:16px;border-radius:14px;box-shadow:0 4px 24px rgb(0 0 0 / .14)}
 .km-native .pa-consent summary{min-height:44px;padding-block:10px}
 .km-native .pa-actions{gap:10px}
 .km-native .pa-actions button{min-height:48px;border-radius:8px}
 .km-native .pa-settings{border-radius:8px}
 .km-native :is(button,summary,.kn-card-grid>a,.university-record__actions>a,.sp-links>a):active{background-color:#e9ede9}
}
/* Forward can restore an existing menu history entry after rotating/resizing. */
@media(min-width:1024px){
 .km-menu{width:540px;height:80dvh;max-height:calc(100dvh - 48px);border-radius:16px;overflow:hidden}
 .km-menu[open]{display:flex;flex-direction:column}
 .km-menu-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;border-bottom:1px solid #d9dddc}
 .km-menu-heading h2{margin:0;font-size:22px}
 .km-menu-heading button{min-width:44px;min-height:44px;border:0;border-radius:50%;font-size:28px;background:#f5f6f5;color:#161616}
 .km-menu-body{min-height:0;overflow:auto;padding:16px 20px 24px;overscroll-behavior:contain}
 .km-menu-search{display:flex;align-items:center;gap:12px;padding:12px;background:#f5f6f5;color:#161616;text-decoration:none;border-radius:8px}
 .km-menu-body h3{font-size:14px;margin:24px 0 4px;color:#555d59}
 .km-menu-body ul{list-style:none;padding:0;margin:0}
 .km-menu-body li a{display:flex;align-items:center;min-height:44px;padding-block:10px;color:#161616;text-decoration:none;border-bottom:1px solid #eff0ef}
}
/* A field guide: two starting points, then a compact index by purpose. */
.km-menu .km-menu-heading{padding-block:18px;background:#161616;color:#fff;border-bottom:4px solid #f5dc3d}
.km-menu .km-menu-heading h2{font-size:23px;font-weight:750;letter-spacing:-.035em;color:#fff}
.km-menu-heading p{margin:5px 0 0;font-size:12px;line-height:1.5;color:#d9dddc}
.km-menu .km-menu-heading button{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;background:#343734;color:#fff;border:1px solid #555d59;border-radius:50%;padding:10px}
.km-menu-heading button svg{width:22px;height:22px}
.km-menu .km-menu-body{padding-top:16px}
.km-menu .km-menu-search{gap:10px;min-height:52px;padding:12px;border:1px solid #c9cecb;background:#fff;border-radius:10px;font-size:14px;font-weight:500;line-height:1.5}
.km-menu-search>svg:first-child{width:21px;height:21px;flex-shrink:0}
.km-menu-search>svg:last-child{width:18px;height:18px;flex-shrink:0;margin-left:auto}
.km-menu-featured{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:12px}
.km-menu-feature{display:flex;align-items:center;gap:12px;min-height:80px;padding:16px;border-radius:12px;color:#161616;text-decoration:none;background:#f5f6f5;border:1px solid #e5e8e5}
.km-menu-feature--plan{background:#f5dc3d;border-color:#f5dc3d}
.km-menu-feature>svg:first-child{width:28px;height:28px;flex-shrink:0}
.km-menu-feature>svg:last-child{width:20px;height:20px;flex-shrink:0;margin-left:auto}
.km-menu-feature strong{display:block;font-size:18px;line-height:1.35;font-weight:750;letter-spacing:-.02em}
.km-menu-feature small{display:block;margin-top:4px;font-size:12px;line-height:1.5;color:#424a45}
.km-menu .km-menu-group{margin-top:28px}
.km-menu-group-heading{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.km-menu-group-icon{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border:1px solid #d9dddc;border-radius:10px;background:#f5f6f5}
.km-menu-group-icon svg{width:21px;height:21px}
.km-menu .km-menu-group h3{font-size:16px;line-height:1.4;color:#161616;margin:0;font-weight:750;letter-spacing:-.02em}
.km-menu-group-heading p{font-size:12px;line-height:1.5;color:#555d59;margin:3px 0 0}
.km-menu .km-menu-group ul{padding-left:0}
.km-menu .km-menu-group li{border:0}
.km-menu .km-menu-group li a{justify-content:space-between;gap:10px;min-height:50px;padding:12px 10px;border:0;border-bottom:1px solid #e9ece9;font-size:15px;line-height:1.5;border-radius:6px}
.km-menu-group li a>svg{width:16px;height:16px;flex-shrink:0;color:#67716b}
.km-menu .km-menu-group li a[aria-current]{background:#fff8cf;font-weight:750;box-shadow:inset 3px 0 #bba213}
.km-menu-feature[aria-current]{box-shadow:inset 0 0 0 2px #161616}
.km-menu .km-menu-utility{margin-top:28px;padding:20px 14px 10px;border:1px solid #e5e8e5;border-radius:12px;background:#f5f6f5}
.km-menu .km-menu-utility h3{margin:0 0 10px;font-size:13px;color:#555d59}
.km-menu .km-menu-utility ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}
.km-menu .km-menu-utility li{border:0}
.km-menu .km-menu-utility li a{min-height:48px;border:0;padding:9px 0;font-size:13px;line-height:1.5}
.km-menu :is(a,button):focus-visible{outline:3px solid #1758a6;outline-offset:3px}
.km-menu :is(a,button):active{filter:brightness(.95)}
@media(max-width:359px){.km-native .editorial-header .kun-brand{width:150px}.km-native .editorial-masthead{gap:4px}.km-native .locale-switcher a{padding:5px;font-size:11px}.km-native .reader-lead h1{font-size:26px}.km-native .reader-heading h1{font-size:28px}}
@media(max-height:500px) and (max-width:1023px){.km-native .editorial-header{position:relative}.km-native .km-menu{height:96dvh;max-height:96dvh}}
@media(prefers-reduced-motion:no-preference){.km-tabs :is(a,button){transition:background-color .12s ease}}
@media(forced-colors:active){.km-tabs [aria-current]{border:2px solid Highlight}.km-menu{border:1px solid CanvasText}}
@media print{.km-tabs,.km-menu,.km-reading-controls,.km-enquiry-start,.km-native .editorial-menu{display:none!important}.km-native{padding-bottom:0!important}.km-native .editorial-header{position:static}.km-native.km-menu-open{position:static;overflow:visible}}
