body.jpm-page{isolation:isolate;margin:0;background:#080d14;color:#e9edf3;font-family:"Segoe UI",system-ui,sans-serif;line-height:1.5}
body.jpm-page::before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(7,12,19,.35),#080d14 94%),url("members-background.png") center top/cover no-repeat;pointer-events:none}
.jpm-page *{box-sizing:border-box}
.jpm-page a{color:inherit}
.jpm-shell{width:calc(100% - 48px);max-width:calc(var(--jr-max,1366px) - 48px);margin:30px auto 44px;display:grid;grid-template-columns:222px minmax(0,1fr);gap:26px;align-items:start}
.jpm-sidebar{position:sticky;top:24px;overflow:hidden;border:1px solid #ffffff14;background:linear-gradient(160deg,#121b27f5,#0c121bf5);border-radius:16px;box-shadow:0 18px 60px #0003;padding:26px 15px 18px}
.jpm-side-brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:14px;font-weight:750;letter-spacing:1.6px;padding:0 8px 27px;border-bottom:1px solid #ffffff12}
.jpm-side-brand small{display:block;font-size:11px;font-weight:400;letter-spacing:1px;color:#9aa8b9;margin-top:3px}
.jpm-sigil{font-size:32px;color:#dcc08a;line-height:1}
.jpm-side-label{display:block;font-size:10px;font-weight:650;letter-spacing:2.1px;color:#9ba7b7;padding:21px 12px 11px}
.jpm-side-nav{display:grid;gap:4px}
.jpm-side-nav a{display:flex;justify-content:space-between;gap:8px;padding:10px 13px;border-radius:8px;font-size:13px;text-decoration:none;color:#b6c0cf;border:1px solid transparent;transition:background .15s,color .15s}
.jpm-side-nav a span:last-child{color:#738095}
.jpm-side-nav a:hover{background:#ffffff07;color:#fff}
.jpm-side-nav a[aria-current="page"]{background:linear-gradient(90deg,#b8945429,#b894540a);border-color:#d5b57640;color:#f0d6a4}
.jpm-side-foot{border-top:1px solid #ffffff12;margin:20px 8px 0;padding-top:4px}
.jpm-side-foot .jpm-side-label{padding-left:4px;font-size:9px}
.jpm-side-foot p{font-size:13px;line-height:1.8;color:#b7c1cf;margin:0 4px 18px}
.jpm-login-link{display:flex;justify-content:space-between;text-decoration:none;font-size:12px;padding:10px 12px;border:1px solid #ffffff20;border-radius:7px}
.jpm-main{min-width:0}
.jpm-hero{min-height:266px;border:1px solid #dbc18e38;border-radius:16px;overflow:hidden;position:relative;padding:34px 38px;background:linear-gradient(90deg,#0c1424f5 0%,#0c1424d1 36%,#0c142414 100%),url("members-background.png") center 40%/cover;box-shadow:0 15px 45px #0003}
.jpm-eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:650;color:#d8bb83}
.jpm-page .jpm-hero h1{font-size:38px;font-weight:650;letter-spacing:-1.2px;line-height:1.13;color:#fff;margin:15px 0 13px;border:0;padding:0;background:none;text-shadow:0 2px 16px #0003}
.jpm-hero h1 span{display:block;font-size:18px;font-weight:400;letter-spacing:.1px;margin-top:8px;color:#d9e0ea}
.jpm-hero p{font-size:13px;line-height:1.8;color:#b7c4d5;max-width:430px;margin:0 0 20px}
.jpm-hero-tag{display:flex;align-items:center;gap:9px;color:#d9c49e;font-size:10px;letter-spacing:.9px;text-transform:uppercase}
.jpm-hero-tag img{border-radius:4px}
.jpm-totals{display:grid;grid-template-columns:.8fr 1.1fr 1.1fr;border:1px solid #ffffff14;border-radius:12px;background:#0f1824f0;margin:18px 0 25px;padding:22px 0;box-shadow:0 10px 30px #0002}
.jpm-totals>div{padding:0 26px;border-right:1px solid #ffffff12;min-width:0}
.jpm-totals>div:last-child{border-right:0}
.jpm-totals dt{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#b1bdcb;margin-bottom:5px}
.jpm-totals dd{font-size:24px;line-height:1.25;margin:0;font-weight:550;color:#f3e1bd;font-variant-numeric:tabular-nums;white-space:nowrap}
.jpm-directory{border:1px solid #ffffff17;border-radius:14px;background:#101824f5;overflow:hidden;box-shadow:0 15px 45px #0002}
.jpm-directory-head{padding:24px 28px 0;display:flex;justify-content:space-between;gap:16px;align-items:center}
.jpm-page .jpm-directory h2{font-size:23px;font-weight:600;letter-spacing:-.4px;color:#f4f6fa;margin:4px 0 0;padding:0;border:0;background:none}
.jpm-count{display:inline-flex;align-items:center;white-space:nowrap;font-size:11px;color:#c6cfdc;border:1px solid #ffffff1a;border-radius:25px;padding:5px 11px;background:#ffffff04}
.jpm-directory-note{padding:0 28px;font-size:12px;color:#a4b0c1;margin:10px 0 23px}
.jpm-table-wrap{overflow-x:auto;scrollbar-color:#685938 #0c1420;scrollbar-width:thin}
.jpm-table-wrap[hidden]{display:none}
.jpm-page table.jpm-table{border-collapse:collapse;width:100%;min-width:680px;margin:0;border:0;table-layout:auto}
.jpm-page .jpm-table thead{background:#080f1bb3}
.jpm-page .jpm-table th{padding:14px 18px;border:0;border-top:1px solid #ffffff0c;border-bottom:1px solid #ffffff0f;color:#a9b6c7;font-size:10px;font-weight:550;letter-spacing:1.4px;text-transform:uppercase;text-align:left;background:transparent;white-space:nowrap}
.jpm-page .jpm-table td{padding:12px 18px;border:0;border-bottom:1px solid #ffffff0b;vertical-align:middle;font-size:13px;background:transparent;white-space:nowrap;color:#d6deea}
.jpm-page .jpm-table th:first-child,.jpm-page .jpm-table td:first-child{padding-left:28px}
.jpm-page .jpm-table th:last-child,.jpm-page .jpm-table td:last-child{padding-right:28px}
.jpm-page .jpm-table tr:last-child td{border-bottom:0}
.jpm-page .jpm-table tbody tr:nth-child(even){background:#ffffff02}
.jpm-page .jpm-table tbody tr:hover{background:#cfb78309}
.jpm-page .jpm-table .jpm-number{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-weight:550}
.jpm-page .jpm-table .jpm-fights{color:#e6c88e}
.jpm-person{display:flex;align-items:center;gap:13px;min-width:190px;text-decoration:none;font-size:14px;font-weight:600;color:#e8edf5}
.jpm-person img{display:block;width:48px;height:48px;object-fit:cover;border-radius:11px;border:1px solid #e0c28c52;background:#17202b;box-shadow:0 4px 12px #0003;flex-shrink:0}
.jpm-profile-arrow{margin-left:auto;padding-left:12px;color:#758398;font-size:12px}
.jpm-person:hover{color:#f3dab0}
.jpm-rank{display:inline-block;border:1px solid #95a9c330;background:#95a9c309;padding:4px 10px;border-radius:5px;font-size:10px;font-weight:500;color:#b7c8de}
.jpm-rank.jpm-master{color:#e4c891;border-color:#d8b57538;background:#d8b5750b}
.jpm-directory-foot{border-top:1px solid #ffffff0d;padding:16px 28px;display:flex;justify-content:space-between;gap:14px;font-size:10px;color:#9aa8ba;line-height:1.7;flex-wrap:wrap}
.jpm-directory-foot span:last-child{color:#c2ac81}
.jpm-update{display:flex;align-items:flex-start;gap:8px;font-size:11px;color:#a1afc0;line-height:1.7;padding:0 4px;margin:20px 0 0}
.jpm-update-dot{width:5px;height:5px;background:#b5a177;border-radius:50%;flex-shrink:0;margin-top:6px}
.jpm-empty{padding:28px;color:#bfc9d8;font-size:14px;margin:0;border-top:1px solid #ffffff0c}
.jpm-empty[hidden]{display:none}
.jpm-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.jpm-page a:focus-visible,.jpm-page [tabindex]:focus-visible{outline:2px solid #dfbd7c;outline-offset:4px}
.jpm-home-members{padding:26px;margin:24px 0}
.jpm-home-members h2{margin-top:0}
.jpm-home-members-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.jpm-home-member-link{display:block;padding:20px;border:1px solid #b99a5845;border-radius:10px;text-decoration:none;background:linear-gradient(110deg,#111c2dee,#111c2d90),url("members-background.png") right center/cover;color:#f1e3c5}
.jpm-home-member-link strong{display:block;font-size:18px;margin-bottom:5px}
.jpm-home-member-link span{display:block;font-size:12px;color:#c4cddd}
.jpm-home-member-link em{display:block;margin-top:14px;font-size:12px;font-style:normal;color:#dfbd7c}
@media(min-width:1600px){.jpm-hero{min-height:300px;padding:44px}.jpm-page .jpm-hero h1{font-size:44px}}
@media(max-width:1150px){.jpm-shell{grid-template-columns:190px minmax(0,1fr);gap:18px}.jpm-sidebar{padding-left:10px;padding-right:10px}.jpm-hero{padding:28px;min-height:250px}.jpm-totals>div{padding:0 18px}.jpm-totals dd{font-size:21px}}
@media(max-width:1000px){.jpm-shell{width:calc(100% - 32px);max-width:calc(var(--jr-max,1366px) - 32px)}}
@media(max-width:850px){.jpm-shell{grid-template-columns:1fr;margin-top:18px}.jpm-sidebar{position:static;padding:12px;display:block;border-radius:12px}.jpm-side-brand,.jpm-side-label,.jpm-side-foot{display:none}.jpm-side-nav{display:flex;overflow-x:auto;padding-bottom:3px;gap:6px}.jpm-side-nav a{flex-shrink:0;padding:8px 12px}.jpm-side-nav a span:last-child{display:none}.jpm-hero{min-height:250px}.jpm-totals dd{font-size:23px}}
@media(max-width:540px){.jpm-shell{gap:14px}.jpm-hero{padding:25px 22px;min-height:257px;background-position:60% 40%}.jpm-page .jpm-hero h1{font-size:32px}.jpm-hero h1 span{font-size:16px}.jpm-eyebrow{font-size:9px;letter-spacing:1.7px}.jpm-totals{padding:17px 0;margin-bottom:19px;grid-template-columns:.65fr 1.2fr 1.15fr}.jpm-totals>div{padding:0 10px}.jpm-totals dt{font-size:8px;letter-spacing:.4px}.jpm-totals dd{font-size:clamp(12px,3.7vw,20px)}.jpm-directory-head{padding:21px 20px 0}.jpm-directory-note{padding:0 20px;font-size:11px}.jpm-page .jpm-directory h2{font-size:21px}.jpm-directory-foot{padding:15px 20px}.jpm-update{font-size:10px}.jpm-home-members-grid{grid-template-columns:1fr}}
@media(max-width:480px){.jpm-shell{width:calc(100% - 24px);max-width:calc(var(--jr-max,1366px) - 24px)}}
@media(prefers-reduced-motion:reduce){.jpm-page *{transition:none!important;scroll-behavior:auto!important}}

.jpm-scroll-hint{display:none}
@media(max-width:850px){.jpm-scroll-hint{display:block;margin:0;padding:0 20px 12px;font-size:10px;color:#c2ac81}}

/* The same page background continues behind the header and footer. */
.jpm-page .jr-header,.jpm-page .jr-nav,.jpm-page .jr-footer{background:rgba(6,15,28,.64)}
.jpm-page .jr-head-inner::before{background:none}
.jpm-page .jr-footer{margin-top:0}
.jpm-page .jpm-shell{margin-top:0;margin-bottom:0;padding-top:28px;padding-bottom:32px;min-height:calc(100vh - 180px)}
.jpm-page .jpm-logo-panel{border:0;border-radius:0;box-shadow:none;background:none;padding:10px 0}
.jpm-logo-panel .jpm-guild-logo{display:block;width:100%;height:auto;max-width:300px;margin:0 auto;object-fit:contain;filter:drop-shadow(0 12px 24px #0007)}
@media(max-width:850px){.jpm-page .jpm-logo-panel{padding:0 0 8px}.jpm-logo-panel .jpm-guild-logo{max-width:140px}}
