
:root{
  --pri:#0b4f8a; --pri-d:#073863; --pri-l:#e9f1f9; --acc:#e4572e;
  --ink:#1c232b; --sub:#5d6873; --mute:#8a949e; --line:#e2e7ec; --soft:#f5f7f9;
  --fb:"Noto Sans JP","Noto Sans","Noto Sans Bengali","Noto Sans Devanagari","Noto Sans Myanmar","Noto Sans Sinhala","Noto Sans Thai","Noto Sans KR","Noto Sans SC",system-ui,-apple-system,"Segoe UI","Hiragino Sans","Yu Gothic UI","Meiryo","Myanmar Text","Nirmala UI","Iskoola Pota","Leelawadee UI","Malgun Gothic","Microsoft YaHei",sans-serif;
  --fl:"Noto Sans","Noto Sans JP",system-ui,-apple-system,"Segoe UI",sans-serif;
}
html:lang(zh-Hans){--fb:"Noto Sans SC","Microsoft YaHei","PingFang SC","Noto Sans",system-ui,sans-serif}
html:lang(ko){--fb:"Noto Sans KR","Malgun Gothic","Apple SD Gothic Neo","Noto Sans",system-ui,sans-serif}
html:lang(en),html:lang(vi),html:lang(id),html:lang(mn){--fb:"Noto Sans","Segoe UI",system-ui,-apple-system,"Noto Sans JP",sans-serif}
html:lang(ne),html:lang(hi){--fb:"Noto Sans Devanagari","Nirmala UI","Noto Sans",system-ui,sans-serif}
html:lang(bn){--fb:"Noto Sans Bengali","Nirmala UI","Vrinda","Noto Sans",system-ui,sans-serif}
html:lang(my){--fb:"Noto Sans Myanmar","Myanmar Text","Noto Sans",system-ui,sans-serif}
html:lang(si){--fb:"Noto Sans Sinhala","Iskoola Pota","Nirmala UI","Noto Sans",system-ui,sans-serif}
html:lang(th){--fb:"Noto Sans Thai","Leelawadee UI","Tahoma","Noto Sans",system-ui,sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--ink);font-family:var(--fb);font-size:14px;line-height:1.6;overflow-x:hidden}
html:lang(my) body,html:lang(si) body{line-height:1.9}
a{color:inherit;text-decoration:none}
a:hover .tt,a:hover h3,a.lk:hover{color:var(--pri);text-decoration:underline}
h1,h2,h3,p{margin:0}
ul,ol{list-style:none;margin:0;padding:0}
button,input,select{font:inherit;color:inherit}
.wrap{max-width:1280px;margin:0 auto;padding:0 16px}
.tt,h1,h2,h3,p,.by span{overflow-wrap:anywhere}

/* 見本の札 */
.mockflag{position:fixed;right:12px;bottom:12px;z-index:50;background:rgba(28,35,43,.88);color:#fff;font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;pointer-events:none;letter-spacing:.02em}
.mockflag::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--acc);margin-right:6px;vertical-align:1px}

/* 上の帯 */
.util{background:var(--soft);border-bottom:1px solid var(--line);font-size:12px;color:var(--sub)}
.util-in{display:flex;align-items:center;gap:10px;min-height:30px;flex-wrap:wrap;padding-top:3px;padding-bottom:3px}
.ai-chip{display:inline-flex;align-items:center;gap:4px;font-family:var(--fl);font-weight:800;font-size:10px;color:#fff;background:linear-gradient(135deg,var(--pri),#2a7fc4);border-radius:3px;padding:1px 6px;letter-spacing:.04em}
.util-tag{margin-left:auto;color:var(--mute)}

/* 頭 */
.hd{border-bottom:1px solid var(--line);background:#fff}
.hd-in{display:flex;align-items:center;gap:22px;padding-top:14px;padding-bottom:12px}
.logo{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.logo svg{width:42px;height:42px;flex:0 0 auto}
.wm{font-family:"Noto Sans",system-ui,sans-serif;font-weight:800;font-size:25px;letter-spacing:-.03em;line-height:1;display:flex;align-items:baseline;gap:5px;white-space:nowrap}
.wm-j{color:var(--pri)}
.wm-l{color:var(--ink);font-weight:500}
.idot{position:relative;display:inline-block}
.idot::after{content:"";position:absolute;left:50%;top:-.02em;width:.24em;height:.24em;margin-left:-.12em;border-radius:50%;background:var(--acc)}
.wm-h{color:#fff;background:var(--pri);border-radius:6px;padding:3px 7px 4px;font-size:.82em;align-self:center}
.wm-h::after{content:"";display:inline-block;width:.22em;height:.22em;border-radius:50%;background:var(--acc);margin-left:2px;vertical-align:.5em}
.kari{display:block;font-size:10px;color:var(--mute);border:1px solid var(--line);border-radius:3px;padding:0 5px;margin-top:5px;width:max-content;line-height:1.6}
.search{flex:1 1 auto;display:flex;max-width:540px;border:2px solid var(--pri);border-radius:8px;overflow:hidden;background:#fff}
.search svg{width:18px;height:18px;margin:0 2px 0 12px;align-self:center;flex:0 0 auto;stroke:var(--mute)}
.search input{flex:1;min-width:0;border:0;outline:0;padding:10px 10px;background:transparent}
.search button{background:var(--pri);color:#fff;border:0;padding:0 20px;font-weight:700;cursor:pointer;white-space:nowrap}
.search button:hover{background:var(--pri-d)}
.hd-tools{display:flex;gap:10px;align-items:center;margin-left:auto;flex:0 0 auto}
.langsel{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:6px 8px;background:#fff}
.langsel svg{width:18px;height:18px;stroke:var(--pri);flex:0 0 auto}
.langsel select{border:0;background:transparent;outline:0;cursor:pointer;max-width:170px;font-weight:500}
.btn-login{display:flex;align-items:center;gap:6px;border:1px solid var(--pri);color:var(--pri);border-radius:8px;padding:7px 14px;font-weight:700;white-space:nowrap}
.btn-login:hover{background:var(--pri-l)}
.btn-login svg{width:16px;height:16px;stroke:currentColor}
.langstrip{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding-bottom:10px}
.ls-label{font-size:11px;color:var(--mute);margin-right:2px}
.chip{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:1px 10px;background:#fff;cursor:pointer;line-height:1.7}
.chip:hover{border-color:var(--pri);color:var(--pri)}
.chip.on{background:var(--pri);border-color:var(--pri);color:#fff}
.tabs{background:var(--pri)}
.tabs-in{display:flex;overflow-x:auto;scrollbar-width:none}
.tabs-in::-webkit-scrollbar{display:none}
.tabs-in a{color:#fff;padding:10px 18px 9px;font-weight:700;white-space:nowrap;border-bottom:3px solid transparent;font-size:14px}
.tabs-in a:hover{background:rgba(255,255,255,.1)}
.tabs-in a.on{background:#fff;color:var(--pri);border-bottom-color:var(--acc)}

/* 3段 */
.layout{display:grid;grid-template-columns:160px minmax(0,1fr) 300px;gap:20px;padding-top:18px;padding-bottom:36px}
.lnav h2{font-size:12px;color:var(--mute);font-weight:700;margin:0 0 6px 4px;letter-spacing:.04em}
.lnav li a{display:flex;align-items:center;gap:9px;padding:6px 6px;border-radius:8px;font-size:13px;font-weight:500}
.lnav li a:hover{background:var(--pri-l);color:var(--pri)}
.ni{width:28px;height:28px;border-radius:8px;background:var(--pri-l);display:grid;place-items:center;flex:0 0 auto}
.ni svg{width:16px;height:16px;stroke:var(--pri);fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.lnav-in{position:sticky;top:10px}

/* 大見出し */
.hero{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);gap:12px;margin-bottom:18px}
.hero-main{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:340px;border-radius:12px;overflow:hidden;color:#fff;background:linear-gradient(135deg,#08355f 0%,#0c5a8c 50%,#1f8a9e 100%)}
.hero-art{position:absolute;inset:0}
.hero-art svg{width:100%;height:100%;display:block}
.hero-txt{position:relative;padding:60px 20px 18px;background:linear-gradient(to top,rgba(3,18,36,.92) 0%,rgba(3,18,36,.7) 55%,rgba(3,18,36,0) 100%)}
.hero-txt h1{font-size:22px;line-height:1.42;margin:8px 0 6px;font-weight:800}
.hero-txt p{font-size:13px;opacity:.9;line-height:1.6}
.hero-main:hover h1{text-decoration:underline}
.kicker{display:inline-flex;gap:6px;align-items:center;font-size:11px;font-weight:700;background:var(--acc);color:#fff;padding:2px 9px;border-radius:3px}
.hero-txt .by{color:rgba(255,255,255,.85);margin-top:10px}
.hero-txt .voice{background:rgba(255,255,255,.16);color:#fff}
.hero-side{display:grid;grid-template-rows:1fr 1fr;gap:12px}
.tile{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.tile-art{height:96px;flex:0 0 auto}
.tile-art svg{width:100%;height:100%;display:block}
.tile-txt{padding:10px 13px 12px}
.tile-k{font-size:11px;font-weight:700;color:var(--acc)}
.tile h3{font-size:14.5px;line-height:1.45;margin-top:3px}

/* 枠 */
.box{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:18px;background:#fff}
.box-h{display:flex;align-items:center;gap:8px;border-bottom:2px solid var(--pri);padding-bottom:8px;margin-bottom:4px}
.box-h h2{font-size:16px;font-weight:800}
.more{margin-left:auto;font-size:12px;color:var(--pri);white-space:nowrap;font-weight:500}
.more::after{content:" ›"}
.ai-mini{font-family:var(--fl);font-size:10px;font-weight:700;color:var(--pri);background:var(--pri-l);border-radius:3px;padding:1px 6px}

/* トピックス */
.topics-body{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:18px}
.tlist li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed var(--line)}
.tlist li:last-child{border-bottom:0}
.tlist li a{display:block;flex:1;min-width:0;position:relative;padding-left:13px;font-weight:500}
.tlist li a::before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;background:var(--pri);border-radius:1px}
.tlist .new,.tlist .voice{margin-left:7px;vertical-align:1px}
.tag{font-size:11px;color:var(--sub);white-space:nowrap;border:1px solid var(--line);border-radius:3px;padding:0 6px;flex:0 0 auto}
.new{font-family:var(--fl);font-size:10px;font-weight:800;color:#fff;background:var(--acc);border-radius:3px;padding:0 5px;line-height:16px;white-space:nowrap}
.voice{font-size:10.5px;font-weight:700;color:var(--pri);background:var(--pri-l);border-radius:999px;padding:1px 8px 1px 7px;white-space:nowrap;display:inline-flex;align-items:center;gap:3px}
.voice::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--acc)}
.pick{display:block;padding-top:8px}
.pick .thumb{width:100%;height:120px;border-radius:8px}
.pick h3{font-size:14px;line-height:1.45;margin:8px 0 6px}
.pick-k{font-size:11px;font-weight:700;color:var(--acc)}

/* 記者 */
.av{width:22px;height:22px;border-radius:50%;display:inline-grid;place-items:center;color:#fff;font-family:var(--fl);font-weight:800;font-size:11px;flex:0 0 auto;line-height:1}
.by{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--sub);flex-wrap:wrap}
.by.sm{font-size:11px;margin-top:2px}
.by.sm .av{width:16px;height:16px;font-size:8.5px}

/* 広告 */
.ad{margin:0 auto 18px;width:100%}
.ad-meta{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--mute);margin-bottom:3px;line-height:1.4}
.ad-x{font-family:var(--fl);letter-spacing:.1em}
.ad-body{display:block;position:relative;overflow:hidden;border:1px solid #d8dee4;color:#fff;font-family:"Noto Sans JP","Noto Sans",system-ui,sans-serif}
.ad-size{position:absolute;right:5px;bottom:3px;font-family:var(--fl);font-size:9px;opacity:.65;letter-spacing:.04em}
.ad-fake{position:absolute;left:6px;bottom:3px;font-size:9px;opacity:.65}
.ad-728{max-width:728px}
.ad-728 .ad-body{aspect-ratio:728/90;display:flex;align-items:center;gap:16px;padding:0 18px;background:linear-gradient(100deg,#164a3c,#1f7a5c 60%,#2c9a70)}
.ad-728 .a-name{font-family:"Noto Sans",sans-serif;font-weight:800;font-size:22px;letter-spacing:-.02em;white-space:nowrap}
.ad-728 .a-copy{font-size:13px;opacity:.95;flex:1;min-width:0;line-height:1.4}
.ad-728 .a-btn{background:#ffd34d;color:#1b3a2e;font-weight:800;font-size:12px;padding:7px 14px;border-radius:999px;white-space:nowrap}
.ad-728 svg{height:60%;flex:0 0 auto}
.r300{width:300px;max-width:100%;margin-left:auto;margin-right:auto}
.ad-300x250 .ad-body{width:300px;max-width:100%;height:250px}
.ad-300x600 .ad-body{width:300px;max-width:100%;height:600px}
.ad1{background:linear-gradient(160deg,#2f8fd6,#1a5fa8);padding:22px 20px}
.ad1 .a-s{font-size:12px;opacity:.9}
.ad1 .a-big{font-size:27px;font-weight:800;line-height:1.25;margin:6px 0 10px}
.ad1 .a-name{font-weight:700;font-size:13px}
.a-btn2{display:inline-block;margin-top:12px;background:#fff;color:#1a5fa8;font-weight:800;font-size:12px;border-radius:999px;padding:6px 16px}
.ad1 svg{position:absolute;right:-6px;top:58px;width:130px;opacity:.95}
.ad2{background:linear-gradient(180deg,#2b1f5c,#4b2f8f 55%,#7a3fa8);padding:26px 22px;text-align:center}
.ad2 .a-name{font-family:"Noto Sans",sans-serif;font-weight:800;font-size:26px;letter-spacing:-.02em}
.ad2 .a-s{font-size:13px;opacity:.9;margin-top:4px}
.ad2 svg{width:150px;margin:26px auto 18px;display:block}
.ad2 .a-pts{font-size:13px;line-height:2;text-align:left;display:inline-block}
.ad2 .a-pts li::before{content:"✓ ";color:#ffd34d;font-weight:800}
.ad2 .a-btn2{color:#4b2f8f;margin-top:20px;padding:9px 22px;font-size:13px}
.ad3{background:linear-gradient(150deg,#f08a3c,#e4572e);padding:22px 20px}
.ad3 .a-name{font-weight:800;font-size:22px}
.ad3 .a-s{font-size:13px;margin-top:6px;line-height:1.5}
.ad3 svg{position:absolute;right:12px;bottom:26px;width:120px}
.ad3 .a-btn2{color:#d2481f}

/* カテゴリ */
.cats{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.cat{border:1px solid var(--line);border-radius:12px;padding:12px 14px 6px;background:#fff}
.cat.wide{grid-column:1/-1}
.cat-h{display:flex;align-items:center;gap:9px;margin-bottom:10px;padding-bottom:9px;border-bottom:1px solid var(--line)}
.cat-ic{width:28px;height:28px;border-radius:8px;background:var(--pri);display:grid;place-items:center;flex:0 0 auto}
.cat-ic svg{width:16px;height:16px;stroke:#fff;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cat-h h2{font-size:15.5px;font-weight:800}
.lead{display:grid;grid-template-columns:108px minmax(0,1fr);gap:11px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.thumb{width:108px;height:74px;border-radius:8px;overflow:hidden;display:block}
.thumb svg{width:100%;height:100%;display:block}
.lead h3{font-size:14px;line-height:1.45;margin:0 0 6px;font-weight:700}
.clist li{padding:7px 0;border-bottom:1px dashed var(--line)}
.clist li:last-child{border-bottom:0}
.clist .tt{font-size:13.5px;font-weight:500;line-height:1.5}
.cat.wide .cat-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 22px}
.cat.wide .lead{border-bottom:0}

/* 社員記者 */
.writers{border-radius:12px;background:linear-gradient(135deg,#eaf2fb 0%,#f8fbfe 70%);border:1px solid #d2e0ee;padding:14px 16px;margin-bottom:18px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 18px;align-items:center}
.writers h2{font-size:16px;font-weight:800;display:flex;align-items:center;gap:8px}
.writers h2 svg{width:20px;height:20px;stroke:var(--pri);fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.writers p{font-size:12.5px;color:var(--sub);margin-top:3px}
.w-list{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.w-card{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:12px;line-height:1.45}
.w-card .av{width:34px;height:34px;font-size:15px}
.btn-acc{background:var(--acc);color:#fff;font-weight:700;border-radius:999px;padding:8px 18px;font-size:13px;text-align:center;max-width:300px;line-height:1.45}
.btn-acc:hover{background:#cc4521}

/* 右の柱 */
.rail>*{margin-bottom:18px}
.consult{border-radius:12px;padding:16px;color:#fff;background:linear-gradient(140deg,#0b4f8a,#1f78bd)}
.consult h2{font-size:16px;font-weight:800;display:flex;align-items:center;gap:8px}
.consult h2 svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:1.9}
.consult p{font-size:12.5px;opacity:.92;margin:6px 0 12px}
.btn-msg{display:flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:var(--pri);font-weight:800;border-radius:999px;padding:10px 12px;font-size:13.5px;text-align:center}
.btn-msg svg{width:20px;height:20px;flex:0 0 auto}
.btn-msg:hover{background:#f1f6fc}
.tool{padding:11px 0 12px;border-bottom:1px solid var(--line)}
.tool:last-child{border-bottom:0;padding-bottom:2px}
.tool h3{font-size:13.5px;font-weight:700;margin-bottom:7px;display:flex;align-items:center;gap:6px}
.tool h3 svg{width:16px;height:16px;stroke:var(--pri);fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.fld{display:block;font-size:11.5px;color:var(--sub)}
.fld input,.fld select,.cur-row select{display:block;width:100%;margin-top:3px;border:1px solid #cfd6dd;border-radius:7px;padding:6px 8px;background:#fff;color:var(--ink);font-size:13.5px}
.cur-row{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:8px;align-items:end}
.cur-out{margin-top:8px;font-family:var(--fl);font-weight:800;font-size:19px;color:var(--pri);overflow-wrap:anywhere}
.cur-out small{font-size:12px;color:var(--sub);font-weight:500}
.note{font-size:10.5px;color:var(--mute);margin-top:2px}
.visa-out{display:flex;gap:12px;align-items:center;margin-top:10px}
.ring{width:64px;height:64px;flex:0 0 auto}
.visa-days{font-weight:800;font-size:18px;color:var(--pri);line-height:1.3}
.visa-days.warn{color:var(--acc)}
.visa-hint{font-size:11.5px;color:var(--sub);margin-top:2px}
.wx{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;text-align:center}
.wx li{background:var(--soft);border-radius:8px;padding:7px 4px}
.wx svg{width:34px;height:34px;display:block;margin:2px auto}
.wx .c{font-size:12px;font-weight:700}
.wx .d{font-size:11px;color:var(--sub)}
.wx .tp{font-family:var(--fl);font-size:12px;font-weight:700}
.wx .hi{color:#d2481f}.wx .lo{color:#2a6fb5}
.jobs form{display:grid;gap:9px;margin-top:8px}
.btn-pri{background:var(--pri);color:#fff;border:0;border-radius:8px;padding:9px;font-weight:700;cursor:pointer}
.btn-pri:hover{background:var(--pri-d)}
.rank li{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px dashed var(--line)}
.rank li:last-child{border-bottom:0}
.rk{flex:0 0 22px;height:22px;border-radius:5px;background:#eef1f4;color:var(--sub);font-family:var(--fl);font-weight:800;font-size:12px;display:grid;place-items:center;margin-top:1px}
.rank li:nth-child(-n+3) .rk{background:var(--pri);color:#fff}
.rank li:first-child .rk{background:var(--acc)}
.rank .tt{font-size:13px;line-height:1.5;font-weight:500}

/* 足 */
.ft{background:#0d2238;color:#b8c4d0;padding:28px 0 70px;font-size:12.5px}
.ft-top{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.12)}
.ft-top .wm{font-size:19px}
.ft-top .wm-j{color:#8cc2f0}.ft-top .wm-l{color:#fff}
.ft-links{display:flex;flex-wrap:wrap;gap:8px 22px;padding:14px 0}
.ft-links a{color:#fff;font-weight:500}
.ft-links a:hover{text-decoration:underline}
.ft-note{color:#8fa0b1;font-size:11.5px}
.ft-copy{color:#8fa0b1;font-size:11px;margin-top:4px;font-family:var(--fl)}

/* 幅ごとの崩し */
@media (max-width:1120px){
  .layout{grid-template-columns:minmax(0,1fr) 300px}
  .lnav{grid-column:1/-1}
  .lnav h2{display:none}
  .lnav-in{position:static}
  .lnav ul{display:flex;flex-wrap:wrap;gap:4px 6px}
  .lnav li a{border:1px solid var(--line);padding:4px 10px 4px 5px;font-size:12.5px}
  .ni{width:22px;height:22px;border-radius:6px}
  .ni svg{width:13px;height:13px}
}
@media (max-width:880px){
  .layout{grid-template-columns:minmax(0,1fr)}
  .hd-in{flex-wrap:wrap;gap:12px}
  .search{order:3;flex-basis:100%;max-width:none}
  .hero{grid-template-columns:minmax(0,1fr)}
  .hero-side{grid-template-rows:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .cats{grid-template-columns:minmax(0,1fr)}
  .cat.wide .cat-body{grid-template-columns:minmax(0,1fr)}
  .cat.wide .lead{border-bottom:1px solid var(--line)}
  .topics-body{grid-template-columns:minmax(0,1fr)}
  .pick{display:grid;grid-template-columns:108px minmax(0,1fr);gap:11px;border-top:1px solid var(--line);padding-top:10px}
  .pick .thumb{width:108px;height:74px}
  .pick h3{margin-top:2px}
  .writers{grid-template-columns:minmax(0,1fr)}
  .btn-acc{max-width:none}
  .w-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
  .util-tag{display:none}
  .wm{font-size:21px}
  .logo svg{width:36px;height:36px}
  .hd-tools{margin-left:0;width:100%}
  .langsel{flex:1;min-width:0}
  .langsel select{max-width:none;width:100%}
  .hero-side{grid-template-columns:minmax(0,1fr)}
  .hero-main{min-height:310px}
  .hero-txt h1{font-size:18.5px}
  .tile{flex-direction:row}
  .tile-art{width:110px;height:auto;min-height:86px}
  .lead,.pick{grid-template-columns:88px minmax(0,1fr)}
  .thumb,.pick .thumb{width:88px;height:64px}
  .tlist li{flex-wrap:wrap;gap:4px 10px}
  .tlist .tag{margin-left:13px}
  .w-list{grid-template-columns:minmax(0,1fr)}
  .ad-728 .ad-body{aspect-ratio:auto;min-height:90px;padding:10px 12px;gap:10px;flex-wrap:wrap}
  .ad-728 svg{display:none}
  .ad-728 .a-name{font-size:18px}
  .ad-728 .a-copy{font-size:12px;flex-basis:100%;order:3}
  .tabs-in a{padding:9px 13px 8px;font-size:13px}
}

.logo-img{height:68px;width:auto;display:block}
.ft-logo{height:42px;width:auto;display:block}
@media (max-width:600px){.logo-img{height:50px}}
.thumb img,.pick .thumb img,.tile-art img,.hero-main>img,.card-img img{width:100%;height:100%;object-fit:cover;display:block}
.hero-main>img{position:absolute;inset:0}
.tile-art .thumb{width:100%!important;height:100%!important;border-radius:0}
.tile-art{height:120px}
.topics-body:not(:has(.pick)){grid-template-columns:minmax(0,1fr)}
.noimg{display:grid!important;place-items:center;background:var(--pri-l)}
.noimg svg{width:40%;height:40%;stroke:var(--pri);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.by .dt{color:var(--mute);margin-left:4px}
.crumb{font-size:12px;color:var(--sub);margin:4px 0 10px}
.crumb a{color:var(--pri)}
.art{border:1px solid var(--line);border-radius:12px;background:#fff;padding:20px 22px 26px;margin-bottom:18px}
.art h1{font-size:25px;line-height:1.45;font-weight:800;margin:8px 0 10px}
.art .sumr{color:var(--sub);font-size:14px;margin:0 0 14px}
.art .hero-img{margin:14px 0 4px;border-radius:10px;overflow:hidden;aspect-ratio:16/9;background:var(--soft)}
.art .hero-img img{width:100%;height:100%;object-fit:cover;display:block}
.art .credit{font-size:11px;color:var(--mute);margin-bottom:16px}
.art .credit a{text-decoration:underline}
.body{font-size:15.5px;line-height:1.95}
.body h2{font-size:19px;font-weight:800;margin:30px 0 12px;padding:6px 0 6px 12px;border-left:5px solid var(--pri);background:linear-gradient(90deg,var(--pri-l),transparent)}
.body h3{font-size:16.5px;font-weight:800;margin:22px 0 8px}
.body p{margin:0 0 14px}
.body ul,.body ol{margin:0 0 16px;padding-left:1.4em}
.body ul{list-style:disc}.body ol{list-style:decimal}
.body li{margin:4px 0}
.body blockquote{margin:0 0 16px;padding:10px 14px;background:var(--soft);border-radius:8px;color:var(--sub)}
.tbl{overflow-x:auto;margin:0 0 18px}
.tbl table,.facts table{border-collapse:collapse;width:100%;font-size:14px}
.tbl th,.tbl td,.facts th,.facts td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.tbl th,.facts th{background:var(--pri-l);font-weight:700;white-space:nowrap}
.facts{margin:6px 0 20px;border:2px solid var(--pri);border-radius:12px;overflow:hidden}
.facts h2{background:var(--pri);color:#fff;font-size:15px;padding:8px 14px;margin:0}
.facts table{font-size:13.5px}
.facts th{width:30%}
.facts td,.facts th{border-left:0;border-right:0}
.jobid{display:inline-block;font-family:var(--fl);font-weight:800;background:var(--acc);color:#fff;border-radius:6px;padding:2px 10px;font-size:13px}
.srcs{margin-top:22px;border-top:1px solid var(--line);padding-top:12px;font-size:12.5px;color:var(--sub)}
.srcs h2{font-size:13px;margin-bottom:6px}
.srcs li{margin:3px 0;list-style:none}
.srcs a{color:var(--pri);text-decoration:underline;overflow-wrap:anywhere}
.cta{margin-top:20px;border-radius:12px;padding:16px;background:linear-gradient(140deg,#0b4f8a,#1f78bd);color:#fff;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.cta p{flex:1;min-width:220px;font-size:14px}
.cta a{background:#fff;color:var(--pri);font-weight:800;border-radius:999px;padding:9px 18px;font-size:13.5px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.card-img{aspect-ratio:16/9;display:block;background:var(--soft)}
.card-img.noimg{aspect-ratio:16/9}
.card-tx{padding:10px 12px 12px;display:flex;flex-direction:column;gap:5px;flex:1}
.card h3{font-size:14.5px;line-height:1.5;font-weight:700}
.card p{font-size:12.5px;color:var(--sub);line-height:1.6}
.card .meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}
.pill{font-size:11px;border:1px solid var(--line);border-radius:999px;padding:0 8px;color:var(--sub);white-space:nowrap}
.pill.pr{background:var(--acc);border-color:var(--acc);color:#fff;font-weight:700}
.page-h{display:flex;align-items:center;gap:10px;margin:2px 0 6px}
.page-h h1{font-size:22px;font-weight:800}
.page-h .cnt{font-size:12px;color:var(--mute)}
.subs{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 16px}
.subs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:3px 12px;font-size:12.5px;cursor:pointer}
.subs button.on{background:var(--pri);border-color:var(--pri);color:#fff}
.related h2{font-size:16px;font-weight:800;margin:0 0 10px}
.prev-note{background:#fff8e6;border:1px solid #f1d58a;color:#6b5414;font-size:12px;padding:6px 10px;border-radius:8px;margin:10px 0 0}
.sr-box{position:relative}
#srRes{position:absolute;left:0;right:0;top:100%;z-index:20;background:#fff;border:1px solid var(--line);border-radius:0 0 10px 10px;box-shadow:0 8px 20px rgba(0,0,0,.08);max-height:360px;overflow:auto;display:none}
#srRes a{display:block;padding:8px 12px;border-bottom:1px solid var(--line);font-size:13px}
#srRes a small{color:var(--mute);margin-left:6px}
@media (max-width:560px){.art{padding:14px 14px 20px}.art h1{font-size:20px}.body{font-size:15px}.cards{grid-template-columns:minmax(0,1fr)}}
