/* PAYATE JSON Formatter & Validator — scoped under #jsn. */
@font-face{font-family:"PoppinsFB";src:local("Segoe UI Semibold"),local("Segoe UI"),local("Roboto Medium"),local("Roboto"),local("Helvetica Neue"),local("Arial");size-adjust:107%;ascent-override:98%;descent-override:32.7%;line-gap-override:0%}
body{margin:0;background:#f4f7fb;color:#14233c;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
#jsn{--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;max-width:820px;margin:0 auto;padding:22px 16px 40px}
#jsn h1,#jsn h2{font-family:Poppins,"PoppinsFB",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
#jsn .jn-hero{background:#fff;border:1px solid #e6ecf5;border-radius:16px;padding:24px;box-shadow:0 1px 2px rgba(15,27,45,.05);margin-bottom:16px}
#jsn .jn-hero h1{margin:0 0 8px;font-size:25px;line-height:1.2;color:#0f1b2d;font-weight:700}
#jsn .jn-hero p{margin:0;font-size:14px;line-height:1.7;color:#4a5b73;max-width:680px}
#jsn .jn-card{background:#fff;border:1px solid #e6ecf5;border-radius:14px;padding:18px;box-shadow:0 1px 2px rgba(15,27,45,.05);margin-bottom:16px}
#jsn .jn-lblrow{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;gap:12px;flex-wrap:wrap}
#jsn .jn-lblrow label{font-size:12.5px;font-weight:600;color:#5a6b83}
#jsn .jn-toolbtns{display:flex;gap:14px}
#jsn .jn-link{background:none;border:0;color:#1d64d8;font-size:12.5px;font-weight:600;cursor:pointer;padding:0}
#jsn .jn-link:hover{text-decoration:underline}
#jsn textarea{width:100%;box-sizing:border-box;border:1px solid #d7deea;border-radius:10px;padding:12px 14px;font-size:13.5px;line-height:1.6;color:#14233c;background:#fbfcfe;font-family:var(--mono);resize:vertical}
#jsn textarea:focus{outline:none;border-color:#1d64d8;background:#fff;box-shadow:0 0 0 3px rgba(29,100,216,.12)}
#jsn .jn-actions{display:flex;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}
#jsn .jn-btn{background:#1d64d8;color:#fff;border:0;border-radius:10px;padding:11px 22px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}
#jsn .jn-btn:hover{background:#1550b4}
#jsn .jn-btn--ghost{background:#eef2f8;color:#1d64d8}
#jsn .jn-btn--ghost:hover{background:#e2e9f4}
#jsn .jn-status{font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:20px}
#jsn .jn-status--ok{color:#0a6b42;background:#e3f6ec}
#jsn .jn-status--bad{color:#b42020;background:#fdecec}
#jsn .jn-outwrap{padding:14px 16px 16px}
#jsn .jn-outhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
#jsn .jn-outhead span{font-size:12.5px;font-weight:600;color:#5a6b83}
#jsn .jn-copy{border:1px solid #cfe0fb;background:#eaf1fe;color:#1d64d8;border-radius:8px;padding:5px 12px;font-size:12px;font-weight:600;cursor:pointer}
#jsn .jn-copy:hover{background:#dbe8fd}
#jsn .jn-out{margin:0;background:#0f1b2d;border-radius:10px;padding:14px 16px;font-family:var(--mono);font-size:13px;line-height:1.65;color:#dbe4f0;white-space:pre;overflow:auto;max-height:520px}
#jsn .jn-out .jn-key{color:#7fb3ff}
#jsn .jn-out .jn-str{color:#7ee2a8}
#jsn .jn-out .jn-num{color:#ffb86b}
#jsn .jn-out .jn-bool{color:#ff8fb3}
#jsn .jn-out .jn-null{color:#c0a5ff}
#jsn .jn-faq{background:#fff;border:1px solid #e6ecf5;border-radius:16px;padding:20px 22px;box-shadow:0 1px 2px rgba(15,27,45,.05)}
#jsn .jn-faq h2{margin:0 0 10px;font-size:19px;color:#0f1b2d}
#jsn .jn-faq details{border-top:1px solid #eef2f8;padding:2px 0}
#jsn .jn-faq details:first-of-type{border-top:0}
#jsn .jn-faq summary{cursor:pointer;list-style:none;padding:12px 26px 12px 2px;position:relative;font-weight:600;font-size:14.5px;color:#14233c}
#jsn .jn-faq summary::-webkit-details-marker{display:none}
#jsn .jn-faq summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:18px;color:#5a6782}
#jsn .jn-faq details[open] summary::after{content:"\2212"}
#jsn .jn-faq details p{margin:0 2px 12px;font-size:13.5px;line-height:1.7;color:#4a5b73}
#jsn .jn-faq code{background:#eef2f8;padding:1px 5px;border-radius:4px;font-size:12.5px;font-family:var(--mono)}
/* Shared More PAYATE tools related section */
.pyt-rel{max-width:820px;margin:16px auto;padding:20px 22px;background:#fff;border:1px solid #e6ecf5;border-radius:14px;box-shadow:0 1px 2px rgba(15,27,45,.05);font-family:Poppins,"PoppinsFB",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#14233c}
.pyt-rel h2{margin:0 0 12px;font-size:18px;color:#0f1b2d}
.pyt-rel .prg{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
.pyt-rel a{display:block;text-decoration:none;border:1px solid #e6ecf5;border-radius:10px;padding:12px 14px;background:#fbfcfe;transition:border-color .15s,background .15s}
.pyt-rel a:hover{border-color:#1d64d8;background:#f2f7ff}
.pyt-rel .prt{display:block;font-weight:600;font-size:14px;color:#14233c;margin-bottom:2px}
.pyt-rel .prd{display:block;font-size:12px;line-height:1.4;color:#5a6782}
