@font-face{font-family:SoftKorean;src:url('/assets/noto-sans-kr-site30.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f7fc;color:#172b48;font-family:Arial,SoftKorean,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-underline-offset:4px}a:hover{color:#405ac0}button,input,textarea,select{font:inherit}button,a.button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #9d47a8;outline-offset:4px}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:white;z-index:100}.masthead{background:#fff;border-bottom:1px solid #172b48;padding:18px 4vw;display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;line-height:1.2}.brand small{display:block;font-size:11px;font-weight:400;margin-top:5px}.masthead nav{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:700}.masthead details{position:relative}.masthead summary{cursor:pointer}.masthead details div{position:absolute;background:#fff;border:1px solid #172b48;min-width:240px;max-height:65vh;overflow:auto;padding:12px;right:0;z-index:20}.masthead details div a{display:block;padding:8px}.menu{display:none}.shell{max-width:1220px;margin:auto;padding:0 40px}.reader{max-width:860px;margin:auto;padding:64px 40px 20px}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.14em;font-weight:800}.hero{text-align:center;padding:72px 5% 30px}.hero h1{font-size:clamp(3rem,6.5vw,6rem);line-height:1.08;letter-spacing:-.045em;margin:26px auto;max-width:1040px}.hero h1 span{color:#536ac5}.hero .lead{max-width:670px;margin:24px auto}.lead{font-size:1.15rem}.actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:28px 0}.button,button{display:inline-block;border:1.5px solid #172b48;border-radius:50px;background:#172b48;color:#fff;padding:12px 24px;font-weight:700;text-decoration:none}.button.light,button.light{background:#fff;color:#172b48}.hero-art{display:block;width:100%;height:auto;margin:10px auto 40px}.boundary{background:#e9e8ff;border:1px solid #172b48;border-radius:24px;padding:24px 28px;margin:28px 0}.boundary p{margin:0}.section-head{text-align:center;max-width:680px;margin:64px auto 32px}h2{font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.2;letter-spacing:-.025em}h3{line-height:1.3}h1,h2,h3{overflow-wrap:break-word;hyphens:auto}.reader h1{font-size:clamp(2.15rem,5vw,3.7rem);line-height:1.13;margin:20px 0 26px;letter-spacing:-.035em}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.card{display:block;border:1px solid #172b48;border-radius:28px;padding:30px;background:#e8f0ff;text-decoration:none}.card:nth-child(4n+2),.card:nth-child(4n+3){background:#efebfa}.card h3{font-size:1.4rem;margin:16px 0}.card p{font-size:15px}.number{font-size:13px;border:1px solid #172b48;border-radius:30px;padding:5px 9px;display:inline-block}.duet{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start;margin:70px 0}.duet>div{padding:30px}.duet>div:nth-child(2){background:#e8f0ff;border-radius:32px}.reader section{padding:28px 0;border-bottom:1px solid #b7c1d6}.reader .toc{background:#e8f0ff;padding:24px;border-radius:22px;margin:30px 0}.toc a{display:block;padding:5px 0}.byline,.sources,.small,.caption{font-size:12px}.sources a{display:block}.app-card{border:1px solid #172b48;border-radius:30px;background:#fff;display:grid;grid-template-columns:1fr 200px;gap:32px;padding:32px;margin:70px 0 40px;box-shadow:7px 7px 0 #d5dff5}.app-card h2{font-size:1.8rem}.app-card p{font-size:14px}.app-identity{display:flex;align-items:center;gap:10px}.app-identity img{border-radius:10px}.product{width:100%;height:auto;align-self:center;border-radius:18px}.badges{display:flex;flex-wrap:wrap;gap:10px}.badges img{width:140px;height:auto}footer{background:#172b48;color:#fff;padding:48px max(5vw,24px) 95px;margin-top:60px;display:grid;grid-template-columns:1fr 1fr;gap:30px}footer a{display:block;font-size:14px}footer .small{grid-column:1/-1;max-width:950px}.sticky{position:fixed;bottom:18px;right:18px;z-index:8;background:#fff;color:#172b48;border:1px solid #172b48;border-radius:50px;padding:10px 18px;font-size:12px;font-weight:700;text-decoration:none;box-shadow:3px 3px 0 #a7b9e1}.note-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.note-grid form{background:#e8f0ff;border-radius:26px;padding:26px}label{display:block;margin:18px 0;font-size:14px;font-weight:700}label span{display:block;font-size:12px;font-weight:400}input,select,textarea{display:block;width:100%;background:#fff;color:#172b48;border:1px solid #7484a7;border-radius:10px;padding:10px;margin-top:8px;font-size:16px}textarea{min-height:100px;resize:vertical}.tool-actions{display:flex;flex-wrap:wrap;gap:10px}.tool-actions button{font-size:13px;padding:11px 16px}#record{white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border:1px dashed #7484a7;border-radius:24px;padding:26px}#status{border-left:3px solid #536ac5;padding:12px;font-size:13px;min-height:40px}.record-title{margin-top:0}html[dir=rtl] .masthead details div{right:auto;left:0}html[dir=rtl] .sticky{right:auto;left:18px}html[dir=rtl] h1,html[dir=rtl] h2,html[dir=rtl] h3{word-break:normal;overflow-wrap:normal;line-height:1.35}html[lang=ko]{word-break:keep-all;font-family:SoftKorean,Arial,sans-serif}@media(max-width:800px){.masthead nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px;border-bottom:1px solid #172b48}.masthead nav.open{display:flex;flex-direction:column;align-items:stretch}.masthead details div{position:static;border:0;max-height:none}.menu{display:block;background:white;color:#172b48;font-size:12px;padding:8px 13px}.brand{font-size:16px}.brand img{width:30px;height:30px}.shell{padding:0 22px}.reader{padding:42px 24px 20px}.hero{padding:42px 0 20px}.hero h1{font-size:clamp(2.8rem,10vw,4.5rem)}.cards,.duet,.note-grid{grid-template-columns:1fr}.duet{gap:10px;margin:40px 0}.duet>div{padding:24px}.card{padding:24px}.app-card{grid-template-columns:1fr;padding:26px;gap:24px;margin:48px 0}.product{max-width:190px;margin:auto}.badges{flex-direction:column;align-items:flex-start}footer{grid-template-columns:1fr}.boundary{padding:22px}.note-grid form{padding:20px}html[dir=rtl] .hero h1{font-size:2.7rem}}
html[dir=rtl] .skip{left:auto;right:-9999px}html[dir=rtl] .skip:focus{right:12px;left:auto}
html[lang=ko] body,html[lang=ko] button{font-family:SoftKorean,Arial,sans-serif}

/* Mobile nav containment: inline accordion panels stay within the full nav row. */
@media(max-width:800px){
header nav{min-width:0;max-width:100%;box-sizing:border-box;max-height:calc(100vh - 140px);max-height:calc(100dvh - 140px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:12px}
header nav details{position:static;width:100%;min-width:0;max-width:100%;box-sizing:border-box}
html header nav details>div{position:static;inset:auto;width:100%;min-width:0;max-width:100%;box-sizing:border-box;max-height:none;overflow:visible}
header nav a,header nav summary{max-width:100%;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
}

header nav a[lang=ko]{font-family:SoftKorean,Arial,sans-serif}
