
:root{color-scheme:dark;--bg:#0b1018;--panel:#131c29;--txt:#f4f4f0;--sub:#aab7c7;--edge:#2b3545;--red:#fa5654;--w:1080px;font-family:system-ui,-apple-system,'Noto Sans KR',sans-serif}
*{box-sizing:border-box}body{background:var(--bg);color:var(--txt);margin:0;line-height:1.75}a{color:#fba09e;text-underline-offset:3px}a:hover{color:#ffd3cb}.wrap{width:min(var(--w),calc(100% - 36px));margin:0 auto}.bar{background:#111927;border-bottom:1px solid var(--edge)}.bar .wrap{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:22px}.logo{text-decoration:none;font-size:22px;letter-spacing:-1px;font-weight:900;color:#fff;white-space:nowrap}.logo span{color:var(--red)}.nav{display:flex;gap:20px;flex-wrap:wrap}.nav a{font-size:13px;color:#d6e0e9;text-decoration:none}.nav a:hover{text-decoration:underline}.hero{background:radial-gradient(ellipse at 85% 0%,#b235302b,transparent 55%),#121d2b;border-bottom:1px solid var(--edge);padding:62px 0}.breadcrumb{font-size:12px;color:var(--sub);margin-bottom:14px}.breadcrumb a{color:var(--sub)}h1{font-size:clamp(27px,4vw,43px);line-height:1.32;letter-spacing:-.05em;margin:6px 0 18px}h2{font-size:24px;line-height:1.3;letter-spacing:-.04em;margin:36px 0 16px}h3{font-size:18px;line-height:1.45;margin:24px 0 6px}.lead{max-width:800px;font-size:17px;color:#cdd7e2}.pill{font-size:11px;display:inline-block;padding:4px 10px;border:1px solid #9e4a49;border-radius:20px;color:#ffb7b4;margin-bottom:9px}.content{padding:25px 0 80px;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px}.main article,.aside-box,.tile,.notice{background:var(--panel);border:1px solid var(--edge);border-radius:14px;padding:25px;margin:0 0 20px}.main article h2:first-child{margin-top:0}.main p,.main li{color:#d1dbe4}.main ul{padding-left:22px}.muted,.source-note{color:var(--sub);font-size:13px}.aside-box h3{margin-top:0}.aside-box ul{padding-left:20px;font-size:13px}.aside-box li{margin-bottom:8px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.tile{margin:0;text-decoration:none;display:block;color:#f7f7f4;padding:18px}.tile:hover{border-color:#fb7771;background:#1f2939;color:white}.tile small{display:block;color:var(--sub);margin-top:5px}.action{display:inline-block;padding:11px 16px;border-radius:8px;text-decoration:none;background:var(--red);color:white;font-weight:750;margin:4px 8px 4px 0}.action:hover{background:#fc7771;color:white}.action.secondary{background:#293748;color:white}.poster{max-width:100%;border-radius:12px;border:1px solid var(--edge);aspect-ratio:16/9;object-fit:cover;background:#0f1721}.embed{aspect-ratio:16/9;position:relative;background:#060b11;border-radius:12px;overflow:hidden}.embed iframe{width:100%;height:100%;border:0}.play{position:absolute;inset:0;background:transparent;border:0;color:white;font-size:20px;font-weight:bold;cursor:pointer}.play span{padding:15px 26px;border-radius:50px;background:#ed514f;box-shadow:0 4px 22px #0008}.qa{border-top:1px solid var(--edge);padding:10px 0}.qa strong{display:block;color:white}.cta-links{display:flex;flex-wrap:wrap;gap:10px}.footer{background:#101927;border-top:1px solid var(--edge);padding:35px 0;color:var(--sub);font-size:12px}.footlinks{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:12px}.footlinks a{color:#cfd9e4}.notice{background:#1a2432;font-size:13px;color:#bfcddd}.note-t{font-weight:bold;color:#fff}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}
@media(max-width:760px){.content{grid-template-columns:1fr;padding-top:18px}.nav{gap:11px}.nav a{font-size:12px}.bar .wrap{padding:13px 0;align-items:flex-start;flex-direction:column}.hero{padding:34px 0}.main article,.aside-box{padding:19px}.grid{grid-template-columns:1fr}}

.embed.has-player iframe{height:calc(100% - 64px)}.embed-fallback{position:absolute;bottom:0;left:0;right:0;z-index:3;background:#152b3c;min-height:64px;padding:7px;display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap}.embed-fallback a{display:inline-block;padding:8px 10px;color:#fff;background:#e8504d;border-radius:7px;text-decoration:none;font-weight:750;font-size:12px}.embed-fallback a:last-child{background:#3b556b}@media(max-width:420px){.embed-fallback{padding:4px;gap:4px}.embed-fallback a{font-size:10px;padding:6px}}


/* Mobile layout guard: keep camera, video and article content within the device viewport. */
html{width:100%;max-width:100%;overflow-x:clip;-webkit-text-size-adjust:100%}
body{width:100%;max-width:100%;overflow-x:clip}
.wrap,.bar .wrap,.hero .wrap,.content,.main,.main article,.aside,.aside-box{min-width:0;max-width:100%}
.content{grid-template-columns:minmax(0,1fr) minmax(0,260px)}
.main article,.aside-box,.main p,.main li,.breadcrumb,.lead,.source-note{overflow-wrap:anywhere}
.embed,.poster,.embed iframe,.jnbox,.jnscreen{width:100%;max-width:100%;min-width:0}
.jn-language-bar{width:100%;max-width:100%;min-width:0}
.jn-language-bar>div{width:100%;max-width:1190px;min-width:0}
.jn-language-bar a{min-width:0;max-width:100%;text-align:center}
@media(max-width:760px){
 .content{grid-template-columns:minmax(0,1fr);gap:16px}
 .bar .wrap{gap:11px}
 .bar .nav{width:100%;min-width:0;justify-content:flex-start;gap:9px 14px}
 .bar .nav a{line-height:1.5}
 .hero{padding:30px 0 34px}
 h1{font-size:clamp(27px,7vw,36px);overflow-wrap:break-word}
 .main article h2{font-size:clamp(20px,5.4vw,24px)}
 .main article{padding:18px}
 .jn-language-bar>div{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;padding:9px 18px!important;max-width:100%!important;align-items:stretch!important;justify-content:stretch!important}
 .jn-language-bar>div>span{display:none!important}
 .jn-language-bar a{display:flex;justify-content:center;align-items:center;white-space:nowrap;font-size:11px!important;line-height:1.45;min-width:0;padding:8px 3px!important;border-radius:8px}
 .embed{max-width:100%;min-width:0;aspect-ratio:16/9}
 .embed[style*="min-height:280px"]{min-height:220px!important}
 .embed-fallback{max-width:100%}
}
@media(max-width:360px){
 .jn-language-bar>div{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .main article,.aside-box{padding:15px}
}
