/* セキュリティ図鑑の記事と同じ見た目（fin-szart.php が szart-<ID>.json のある記事にだけ出す）。WP がpxを書き換えるので rem で書く */
html body .sza-hero,html body .sza-top,html body .sza-body{--n:#0E1B2B;--nv:#15304F;--b:#2457F5;--t:#0E9F95;--ln:#E3EAF2;--m:#5B6B7C;--l:#F5F8FC;font-family:"Zen Kaku Gothic New",sans-serif;color:var(--n);letter-spacing:0}
html body .sza-hero *,html body .sza-top *{box-sizing:border-box;letter-spacing:0}
html body .sza-hero{background:radial-gradient(60rem 26rem at 95% -10%,rgba(14,159,149,.10),transparent 60%),radial-gradient(50rem 26rem at 0 0,rgba(36,87,245,.08),transparent 60%),linear-gradient(180deg,#F4F7FD,#fff);border-bottom:0;padding:1.25rem 1rem 1.75rem}
html body .sza-in{max-width:74rem;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:2.5rem;align-items:center}
html body .sza-crumb{font-size:.75rem!important;color:var(--m);margin:0 0 1.5rem}html body .sza-crumb a{color:var(--m)!important;text-decoration:none!important}
html body .sza-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin:0 0 .75rem!important;font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:.8rem!important;color:#3A4D60!important}
html body .sza-cat{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:.4rem;background:#FFF4DE;color:#B26A00!important;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:800;font-size:.75rem}
html body .sza-cat svg,html body .sza-chips svg{width:.9rem;height:.9rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
html body h1.sza-h1{margin:0 0 1.1rem!important;padding:0!important;border:0!important;background:none!important;font-size:clamp(1.6rem,2.6vw,2.25rem)!important;line-height:1.45!important;font-weight:900!important;color:var(--n)!important;text-align:left!important;text-wrap:balance}
html body h1.sza-h1::before,html body h1.sza-h1::after{display:none!important}
html body .sza-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:0!important}
html body .sza-chips span{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border:1px solid var(--ln);border-radius:999px;background:#fff;font-size:.8rem!important;color:#3A4D60}html body .sza-chips span svg{color:var(--t)}html body .sza-chips b{font-family:Outfit,sans-serif;font-size:.95rem;color:var(--n)}
html body .sza-thumb{transform:rotate(1.5deg);border-radius:1rem;overflow:hidden;border:1px solid var(--ln);box-shadow:0 1.75rem 3.5rem -2rem rgba(14,27,43,.45);background:#fff}html body .sza-thumb img{display:block;width:100%;height:auto}
html body .sza-top{max-width:74rem;margin:0 auto;padding:0 1rem 1rem}
html body .sza-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin:0 0 2.5rem}
html body .sza-stat{position:relative;overflow:hidden;padding:1.1rem 1.1rem 1rem;border:1px solid var(--ln);border-radius:1.1rem;background:#fff;box-shadow:0 .75rem 1.75rem -1.4rem rgba(14,27,43,.35)}
html body .sza-stat::after{content:"";position:absolute;right:-1.6rem;top:-1.6rem;width:5rem;height:5rem;border-radius:50%;background:var(--c);opacity:.1}
html body .sza-stat.c0{--c:#2457F5}html body .sza-stat.c1{--c:#7B61FF}html body .sza-stat.c2{--c:#0E9F95}html body .sza-stat.c3{--c:#E8890C}
html body .sza-ti{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:.75rem;background:var(--c,#2457F5);color:#fff;box-shadow:0 .5rem 1rem -.5rem var(--c,#2457F5)}
html body .sza-ti svg{width:1.2rem;height:1.2rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
html body .sza-stat b{display:block;margin:.7rem 0 .2rem;font-family:Outfit,"Zen Kaku Gothic New",sans-serif;font-size:1.65rem;line-height:1.15;font-weight:800;color:var(--n)}
html body .sza-stat strong{display:block;font-size:.8rem;color:var(--n)}html body .sza-stat small{display:block;margin-top:.15rem;font-size:.7rem;line-height:1.5;color:var(--m)}
html body .sza-toc{max-width:52rem;margin:0 auto 2.5rem;padding:1.4rem 1.6rem;border:1px solid var(--ln);border-radius:1.25rem;background:#fff;box-shadow:0 1rem 2.4rem -2rem rgba(14,27,43,.4)}
html body .sza-toc-h{display:flex;align-items:center;gap:.5rem;margin:0 0 .8rem!important;font-size:.95rem!important}html body .sza-toc-h svg{width:1.1rem;height:1.1rem;fill:none;stroke:var(--t);stroke-width:2}html body .sza-toc-h small{margin-left:auto;font-size:.75rem;color:var(--m)}
html body .sza-toc ol{display:grid;grid-template-columns:1fr 1fr;gap:.2rem 1.5rem;margin:0!important;padding:0!important;list-style:none}html body .sza-toc li{margin:0!important;padding:0!important}html body .sza-toc li::before{display:none!important}
html body .sza-toc a{display:flex;gap:.6rem;padding:.55rem .4rem;border-radius:.5rem;font-size:.85rem!important;line-height:1.5;color:var(--n)!important;text-decoration:none!important}html body .sza-toc a:hover{background:var(--l)}
html body .sza-toc i{flex:none;font-style:normal;font-family:"IBM Plex Mono",monospace;font-size:.75rem;font-weight:700;color:var(--t);padding-top:.1rem}
html body .sza-st{max-width:52rem;margin:0 auto 1.5rem;display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--ln);border-radius:1.25rem;overflow:hidden;background:#fff;box-shadow:0 1rem 2.4rem -2rem rgba(14,27,43,.4)}
html body .sza-sum{padding:1.5rem;background:radial-gradient(18rem 12rem at 0 100%,rgba(242,169,59,.12),transparent 70%),linear-gradient(180deg,#F8FFFD,#fff)}html body .sza-todo{padding:1.5rem;border-left:1px solid var(--ln)}
html body .sza-k{margin:0 0 .3rem!important;font-family:"IBM Plex Mono",monospace;font-size:.7rem!important;letter-spacing:.12em!important;font-weight:700;color:var(--t)!important}html body .sza-todo .sza-k{color:#E8604A!important}
html body .sza-st h2{margin:0 0 1rem!important;padding:0!important;border:0!important;background:none!important;font-size:1.15rem!important;font-weight:900!important;color:var(--n)!important}html body .sza-st h2::before,html body .sza-st h2::after{display:none!important}
html body .sza-st ol{margin:0!important;padding:0!important;list-style:none;display:grid;gap:.8rem}html body .sza-st li{margin:0!important;padding:0!important}html body .sza-st li::before{display:none!important}
html body .sza-sum li{display:flex;gap:.8rem;padding-top:.7rem;border-top:2px solid #FBD9D2;font-size:.85rem!important;line-height:1.85!important;font-weight:700}html body .sza-sum i{font-style:normal;font-family:Outfit,sans-serif;font-size:1.2rem;font-weight:800;color:#E8604A}
html body .sza-todo a{display:flex;align-items:center;gap:.7rem;padding:.75rem .9rem;border:1px solid var(--ln);border-radius:.8rem;background:#fff;font-size:.82rem!important;line-height:1.6;font-weight:700;color:var(--n)!important;text-decoration:none!important;transition:.15s}html body .sza-todo a:hover{border-color:#E8604A}
html body .sza-todo a i{flex:none;display:grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:50%;background:#E8604A;color:#fff;font-style:normal;font-weight:800;font-size:.8rem}html body .sza-todo a em{margin-left:auto;font-style:normal;color:var(--m)}
/* 本文：見出しごとの白いカード */
html body .sza-body .sza-sec{margin:0 0 2rem;padding:1.6rem 1.6rem 1.2rem;border:1px solid var(--ln);border-radius:1.25rem;background:#fff;box-shadow:0 1rem 2.4rem -2.2rem rgba(14,27,43,.4)}
html body .sza-body .sza-sec>h2{display:flex!important;align-items:center;gap:.7rem;margin:0 0 1.2rem!important;padding:0!important;border:0!important;background:none!important;font-size:1.25rem!important;line-height:1.45!important;color:var(--n)!important}
html body .sza-body .sza-sec>h2::before,html body .sza-body .sza-sec>h2::after{display:none!important}
html body .sza-no{flex:none;display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:.6rem;background:var(--b);color:#fff;font-family:Outfit,sans-serif;font-size:.85rem;font-weight:800;box-shadow:0 .5rem 1rem -.5rem var(--b)}
html body .sza-cards{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:1rem 0 1.2rem}
html body .sza-card{display:flex;flex-direction:column;gap:.3rem;padding:1rem;border:1px solid var(--ln);border-radius:1rem;background:#fff}
html body .sza-card .sza-ti{width:2.2rem;height:2.2rem;margin-bottom:.4rem}html body .sza-card .t0{--c:#2457F5}html body .sza-card .t1{--c:#7B61FF}html body .sza-card .t2{--c:#E8890C}html body .sza-card .t3{--c:#E8604A}
html body .sza-card b{font-size:.92rem;color:var(--n)}html body .sza-card small{font-size:.75rem;line-height:1.6;color:var(--m)}
html body .sza-body ul:not([class]){margin:1rem 0!important;padding:0!important;list-style:none;display:grid;gap:.5rem}
html body .sza-body ul:not([class])>li{position:relative;margin:0!important;padding:.75rem .9rem .75rem 2rem!important;border-radius:.7rem;background:#F1F7FA;line-height:1.85!important}
html body .sza-body ul:not([class])>li::before{content:""!important;position:absolute;left:.9rem;top:1.25rem;width:.45rem;height:.45rem;border-radius:50%;background:var(--t);box-shadow:0 0 0 3px rgba(14,159,149,.18)}
html body .sza-body table.fin-t thead th,html body .sza-body table thead th{background:var(--nv)!important;color:#fff!important}
@media (max-width:900px){html body .sza-in{grid-template-columns:minmax(0,1fr)}html body .sza-thumb{max-width:28rem}html body .sza-stats{grid-template-columns:1fr 1fr}html body .sza-st{grid-template-columns:minmax(0,1fr)}html body .sza-todo{border-left:0;border-top:1px solid var(--ln)}html body .sza-toc ol{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){html body .sza-cards{grid-template-columns:minmax(0,1fr)}html body .sza-body .sza-sec{padding:1.2rem 1rem}}
/* 2026-10-30 調整：本文の地を淡い色にしてカードを浮かせる・見出しは左寄せ・「本文」の見出しは消す */
html body .rvz.ec-ar .ec-paper#ec-body{background:#F3F6FA!important;box-shadow:none!important;border:0!important;border-radius:1.5rem!important;padding:1.6rem 1.4rem!important}
html body .rvz.ec-ar .ec-paper#ec-body>.ec-ch{display:none!important}
html body .sza-body .sza-sec>h2{justify-content:flex-start!important;text-align:left!important}
html body .sza-body .sza-sec>h2 span:last-child{text-align:left}
html body .sza-sum i{flex:none;width:2rem}
html body .sza-body .sza-sec{border-color:#DCE5EF!important}
html body .sza-body .sza-sec{position:relative}
html body .sza-sic{position:absolute;right:1.2rem;top:1rem;width:3.2rem;height:3.2rem;opacity:.35;pointer-events:none}html body .sza-sic svg{width:100%;height:100%}
html body .sza-body .sza-sec>h2{padding-right:3.5rem!important}
html body .sza-card b,html body .sza-stat b,html body .sza-stat strong,html body .sza-sum span,html body .sza-todo span{background:none!important;box-shadow:none!important;padding:0!important}html body .sza-card b{font-size:.95rem!important;margin-top:.1rem}
html body .sza-st.one{grid-template-columns:minmax(0,1fr)}html body .sza-st.one .sza-sum ol{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}html body .sza-top>.sza-toc:first-child{margin-top:2rem}
/* 静的な記事（.ar-body）用 */
html body .ar-body.sza-body{max-width:none!important}
html body .ar-body.sza-body .ar-sec p,html body .ar-body.sza-body .ar-sec li{font-size:1.02rem!important;line-height:1.95!important}
html body .ar-body.sza-body .ar-sec h3{font-size:1.1rem!important}
html body .ar-body.sza-body .sza-sec>h2{font-size:1.25rem!important}
html body .ar-body.sza-body .sza-sec{scroll-margin-top:7rem}
