/* Japanese Abroad V1 — scoped to its own route, shared header/footer left intact. */
.abroad-page{background:#f6f9fc;color:#172238}
.abroad-page .site-header,.abroad-page .site-footer{color:#f4f7fb}
.abroad-page [hidden]{display:none!important}
.abroad-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.abroad-page a:focus-visible,.abroad-page button:focus-visible,.abroad-page input:focus-visible,.abroad-page select:focus-visible,.abroad-multiselect__summary:focus-visible{outline:3px solid #eb3950;outline-offset:3px}
.abroad-hero{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(485px,36vw,550px);background:#080e17;color:#f6f8fd}
.abroad-hero__image{position:absolute;z-index:-2;inset:0;width:100%;opacity:1;overflow:hidden}
.abroad-hero__image picture,.abroad-hero__image img{display:block;width:100%;height:100%}.abroad-hero__image img{object-fit:cover;object-position:center}
.abroad-hero__shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(5,10,17,.91) 0%,rgba(5,10,17,.84) 21%,rgba(5,10,17,.62) 34%,rgba(5,10,17,.04) 61%),linear-gradient(0deg,rgba(5,10,17,.24),transparent 26%,transparent 78%,rgba(5,10,17,.2))}
.abroad-hero__inner{position:relative;padding-top:24px;padding-bottom:35px}
.abroad-hero .breadcrumbs{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:#b1bdcc;font-size:12px;line-height:1.35}
.abroad-hero .breadcrumbs a:hover{color:#fff}
.abroad-hero .breadcrumbs .separator{color:#ea354f}
.abroad-hero__copy{width:min(500px,44%);padding-top:36px}
.abroad-kicker,.abroad-section-label{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:800;line-height:1.3;letter-spacing:.09em;text-transform:uppercase}
.abroad-kicker{color:#d4dce7}
.abroad-kicker::before,.abroad-section-label::before{content:'';width:19px;height:2px;flex:none;border-radius:2px;background:#ed2b45}
.abroad-hero h1{margin:13px 0 15px;font-size:clamp(48px,4.75vw,73px);line-height:.96;font-weight:900;letter-spacing:-.052em;text-wrap:balance;text-shadow:0 3px 25px rgba(0,0,0,.2)}
.abroad-hero__copy>p{max-width:515px;margin:0;color:#dce3ec;font-size:clamp(16px,1.2vw,19px);line-height:1.45}
.abroad-hero__snapshot{display:flex;gap:8px;align-items:center;margin-top:19px;color:#c2cbd6;font-size:12px}
.abroad-hero__snapshot span{font-size:20px;color:#f04a60;line-height:1}
.abroad-hero__snapshot time{color:#fff;font-weight:650}
.abroad-hero__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:510px;margin:23px 0 0;padding:0;border:1px solid rgba(255,255,255,.15);border-radius:10px;overflow:hidden;background:rgba(5,11,20,.54);backdrop-filter:blur(8px)}
.abroad-hero__stats div{display:flex;flex-direction:column-reverse;justify-content:center;gap:3px;min-height:68px;padding:9px 14px;border-right:1px solid rgba(255,255,255,.105)}
.abroad-hero__stats div:last-child{border-right:0}
.abroad-hero__stats dt{font-size:11px;line-height:1.25;color:#d0d8e3}
.abroad-hero__stats dd{margin:0;color:#fff;font-size:29px;line-height:1;font-weight:900;letter-spacing:-.04em}
.abroad-hero__stats dd::before{content:'';display:inline-block;width:5px;height:14px;margin-right:7px;border-radius:3px;background:#ed314d;transform:skew(-10deg)}
.abroad-subnav{background:#fff;border-bottom:1px solid #e3eaf2;color:#243249}
.abroad-subnav .container{display:flex;gap:30px;align-items:center;min-height:44px}
.abroad-subnav a{position:relative;padding:12px 2px;color:#62738a;font-size:12px;font-weight:750}
.abroad-subnav a:hover,.abroad-subnav a.is-active{color:#15233a}
.abroad-subnav a.is-active::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#eb3049}
.abroad-canvas{background:linear-gradient(180deg,#f7fbff 0%,#f4f8fc 35%,#fff 100%);color:#172338}
.abroad-content{padding-top:0;padding-bottom:72px}
.abroad-section-label{color:#677a8d}
.abroad-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:17px}
.abroad-section-heading h2{margin:5px 0 0;color:#152238;font-size:clamp(27px,2.45vw,37px);line-height:1.05;letter-spacing:-.038em}
.abroad-section-heading>a{margin-bottom:6px;font-size:12px;color:#2f5580;font-weight:700}
.abroad-section-heading>a span{color:#df2b46}
.abroad-section-heading>a:hover{text-decoration:underline}
.abroad-filters{margin-bottom:29px;padding:20px 0 23px;border-bottom:1px solid #e5ebf2;scroll-margin-top:16px}
.abroad-filters__top{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:12px}
.abroad-filters__top h2{margin:5px 0 0;font-size:26px;line-height:1.05;letter-spacing:-.032em}
.abroad-filter-grid{display:grid;grid-template-columns:minmax(260px,2.2fr) repeat(3,minmax(145px,1fr));align-items:end;gap:13px}
.abroad-field{display:grid;min-width:0;gap:6px;color:#607285;font-size:11px;font-weight:750}
.abroad-field input:not([type="checkbox"]),.abroad-field select,.abroad-sort select{display:block;width:100%;height:46px;border:1px solid #d8e2ec;border-radius:8px;padding:0 12px;background:#fff;color:#25344b;font:inherit;font-size:12px;font-weight:550;box-shadow:0 3px 12px rgba(39,62,93,.025);transition:border-color .15s ease,box-shadow .15s ease}
.abroad-multiselect{position:relative;min-width:0}
.abroad-multiselect__summary{display:flex;width:100%;height:46px;align-items:center;justify-content:space-between;gap:8px;padding:0 34px 0 12px;border:1px solid #d8e2ec;border-radius:8px;background:#fff;color:#25344b;font-size:12px;font-weight:550;line-height:1;cursor:pointer;box-shadow:0 3px 12px rgba(39,62,93,.025);list-style:none;white-space:nowrap;overflow:hidden}
.abroad-multiselect__summary::-webkit-details-marker{display:none}
.abroad-multiselect__summary>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.abroad-multiselect__summary::after{content:'';position:absolute;right:12px;width:12px;height:8px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%23445b75' stroke-width='1.5' d='m1 1 5 5 5-5'/%3E%3C/svg%3E") center/12px 8px no-repeat;transition:transform .15s ease}
.abroad-multiselect[open] .abroad-multiselect__summary::after{transform:rotate(180deg)}
.abroad-multiselect[open] .abroad-multiselect__summary{border-color:#8fa6bd;box-shadow:0 0 0 3px rgba(69,106,151,.12)}
.abroad-multiselect__menu{position:absolute;z-index:50;top:calc(100% + 7px);left:0;width:max(100%,250px);max-height:330px;overflow:auto;padding:7px;border:1px solid #d8e2ec;border-radius:9px;background:#fff;box-shadow:0 16px 38px rgba(24,45,72,.16)}
.abroad-multiselect__option{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:36px;padding:6px 7px;border-radius:6px;color:#34475e;font-size:11px;font-weight:650;cursor:pointer}
.abroad-multiselect__option:hover{background:#f1f5f9}
.abroad-multiselect__option input{width:15px;height:15px;margin:0;accent-color:#e83049;box-shadow:none}
.abroad-multiselect__option small{color:#8493a4;font-size:10px;font-weight:650}

.abroad-field input:not([type="checkbox"]):focus,.abroad-field select:focus,.abroad-sort select:focus{border-color:#8fa6bd;box-shadow:0 0 0 3px rgba(69,106,151,.12);outline:0}
.abroad-field input:not([type="checkbox"])::placeholder{color:#9cabb8;font-weight:450}
.abroad-field select,.abroad-sort select{cursor:pointer;appearance:none;padding-right:28px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%23445b75' stroke-width='1.5' d='m1 1 5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
.abroad-filters__reset{display:flex;justify-content:flex-end;min-height:16px;margin-top:6px}
.abroad-filters__reset button{padding:0;border:0;background:transparent;color:#476a92;font-size:11px;font-weight:700;cursor:pointer}
.abroad-filters__reset button:hover{text-decoration:underline}
.abroad-leagues{margin-bottom:22px;scroll-margin-top:16px}
.abroad-league-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}
.abroad-league-card{display:flex;min-width:0;min-height:157px;align-items:center;flex-direction:column;justify-content:flex-start;gap:5px;padding:15px 5px 12px;border:1px solid #dce5ee;border-radius:9px;background:#fff;box-shadow:0 7px 19px rgba(30,58,91,.02);color:#172338;text-align:center;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.abroad-league-card:hover{transform:translateY(-2px);border-color:#a8bacb;box-shadow:0 12px 25px rgba(30,58,91,.08)}
.abroad-league-card[aria-pressed="true"]{border-color:#ef3851;box-shadow:0 0 0 2px rgba(239,56,81,.13)}
.abroad-league-card__mark{display:grid;width:84px;height:42px;place-items:center}
.abroad-league-logo{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center}
.abroad-league-card__title{display:grid;place-items:center;min-height:27px;font-size:10.5px;line-height:1.15;font-weight:800;word-wrap:break-word;overflow-wrap:anywhere}
.abroad-league-card__count{display:flex;align-items:center;flex-direction:column;gap:0;margin-top:auto}
.abroad-league-card__count strong{font-size:22px;line-height:1;letter-spacing:-.04em}
.abroad-league-card__count small{color:#6c7b8c;font-size:10px}
.abroad-league-card__country{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;font-size:9.5px;line-height:1.25;color:#586a80;white-space:nowrap}
.abroad-league-card__country img{width:19px;height:13px;object-fit:cover;box-shadow:0 0 0 1px rgba(22,39,61,.075);flex:none}
.abroad-players{scroll-margin-top:18px}
.abroad-players__heading{margin-bottom:15px}
.abroad-players__heading p{margin:8px 0 0;font-size:11px;color:#647791}
.abroad-players__heading output{font-weight:800;color:#193956}
.abroad-sort{display:flex;align-items:center;gap:10px;margin-bottom:2px;font-size:11px;color:#62758b}
.abroad-sort select{width:180px;height:39px;font-size:11px}
.abroad-player-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:13px}
.abroad-player-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid #e0e7ee;border-radius:9px;background:#fff;box-shadow:0 5px 14px rgba(32,52,82,.035);transition:box-shadow .18s ease,transform .18s ease}
.abroad-player-card:hover{transform:translateY(-2px);box-shadow:0 13px 24px rgba(31,55,85,.105)}
.abroad-player-card__media{position:relative;aspect-ratio:1.62;background:#26384d;overflow:hidden}
.abroad-player-card__media>img{width:100%;height:100%;object-fit:cover;filter:hue-rotate(var(--portrait-rotate,0deg));opacity:.94}
.abroad-player-card__initial{position:absolute;bottom:-17px;right:8px;color:rgba(255,255,255,.09);font-size:102px;line-height:1;font-weight:900;pointer-events:none}
.abroad-player-card__placeholder-note{position:absolute;left:8px;bottom:7px;padding:3px 5px;border:1px solid rgba(255,255,255,.1);border-radius:3px;background:rgba(4,10,18,.48);color:#ecf2fb;font-size:8px;letter-spacing:.025em}
.abroad-player-card__body{display:flex;flex:1;flex-direction:column;padding:11px 11px 9px}
.abroad-player-card h3{margin:0;color:#1b2a40;font-size:14px;line-height:1.16;font-weight:850;letter-spacing:-.025em;overflow-wrap:anywhere}
.abroad-player-card__latin{display:block;min-height:15px;margin-top:2px;color:#8a99aa;font-size:9px;line-height:1.3}
.abroad-player-card dl{display:grid;gap:5px;margin:10px 0 11px}
.abroad-player-card dl>div{display:grid;grid-template-columns:1fr;gap:2px}
.abroad-player-card dt{font-size:8px;line-height:1.1;color:#a0aebe}
.abroad-player-card dd{display:flex;min-width:0;align-items:center;gap:7px;margin:0;font-size:10px;line-height:1.2;color:#4b5d74}
.abroad-player-card dd>span:last-child{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.abroad-player-card .abroad-country-flag{flex:none;width:17px;height:12px;object-fit:cover;box-shadow:0 0 0 1px rgba(23,37,57,.065)}
.abroad-player-card__club-mark,.abroad-player-card__competition-mark{display:grid;place-items:center;flex:none;border-radius:5px}
.abroad-player-card__club-mark{width:18px;height:18px;background:#edf2f8;color:#465975;font-size:8px;font-weight:950}
.abroad-player-card__competition-mark{display:grid;width:28px;height:14px;place-items:center;overflow:hidden;background:#f7f9fc}
.abroad-player-card__competition-mark .abroad-league-logo{width:100%;height:100%;object-fit:contain}
.abroad-league-short{display:grid;width:100%;height:100%;place-items:center;border:1px solid #d7e0e9;border-radius:4px;background:#eef3f7;color:var(--league-color,#52657a);font-size:7px;line-height:1;font-weight:900;letter-spacing:.035em}

.abroad-players__load{display:flex;justify-content:center;margin-top:22px}
.abroad-players__load button{min-height:40px;padding:0 20px;border:1px solid #344e6d;border-radius:8px;background:#102032;color:#fff;font-size:11px;font-weight:800;cursor:pointer;transition:background .2s}
.abroad-players__load button:hover{background:#23405e}
.abroad-players__empty{padding:38px 20px;border:1px dashed #b8c8da;border-radius:10px;background:#fff;color:#5a6e85;text-align:center;font-size:14px}
@media(min-width:1600px){
  .abroad-hero__image img{object-position:center}
}
@media(max-width:1150px){
  .abroad-hero__copy{width:min(525px,55%)}
  .abroad-league-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .abroad-league-card{min-height:145px}
  .abroad-player-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .abroad-filter-grid{grid-template-columns:minmax(220px,1.7fr) repeat(3,minmax(115px,1fr))}
}
@media(max-width:820px){
  .abroad-hero{min-height:490px}
  .abroad-hero__image{width:100%;left:0;right:0;opacity:.9}
  .abroad-hero__shade{background:linear-gradient(90deg,#07101a 0%,rgba(7,14,23,.88) 42%,rgba(7,14,23,.56) 100%),linear-gradient(0deg,#070d17,transparent 26%)}
  .abroad-hero__copy{width:min(550px,90%)}
  .abroad-hero h1{font-size:clamp(43px,7vw,60px)}
  .abroad-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .abroad-field--search{grid-column:1/-1}
  .abroad-player-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:580px){
  .abroad-hero{min-height:620px}
  .abroad-hero__inner{padding-top:17px;padding-bottom:25px}
  .abroad-hero__image{width:100%;left:0;right:0;opacity:1}
  .abroad-hero__image img{object-position:center bottom}
  .abroad-hero__shade{background:linear-gradient(180deg,rgba(5,10,17,.67) 0%,rgba(5,10,17,.55) 48%,rgba(5,10,17,.05) 79%,rgba(5,10,17,.28) 100%)}
  .abroad-hero .breadcrumbs{font-size:10px}
  .abroad-hero__copy{width:100%;padding-top:39px}
  .abroad-hero h1{font-size:clamp(41px,11vw,58px);max-width:470px}
  .abroad-hero__copy>p{max-width:420px;font-size:15px}
  .abroad-hero__stats{margin-top:22px}
  .abroad-hero__stats div{min-height:64px;padding:8px 6px}
  .abroad-hero__stats dt{font-size:9px}
  .abroad-hero__stats dd{font-size:25px}
  .abroad-hero__stats dd::before{width:3px;height:12px;margin-right:4px}
  .abroad-subnav .container{justify-content:space-between;gap:12px}
  .abroad-subnav a{font-size:11px}
  .abroad-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .abroad-field--search{grid-column:1/-1}
  .abroad-filter-grid .abroad-field:nth-child(4){grid-column:1/-1}
  .abroad-field input:not([type="checkbox"]),.abroad-field select,.abroad-multiselect__summary{height:43px}
  .abroad-filters__top h2{font-size:23px}
  .abroad-section-heading h2{font-size:27px}
  .abroad-section-heading>a{font-size:10px;text-align:right}
  .abroad-league-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .abroad-league-card{min-height:134px}
  .abroad-league-card__mark{width:76px;height:38px}
  .abroad-players__heading{align-items:start;flex-direction:column;gap:13px}
  .abroad-sort{align-self:flex-end}
  .abroad-player-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .abroad-player-card__body{padding:9px 9px 8px}
  .abroad-player-card h3{font-size:12.5px}
  .abroad-player-card__placeholder-note{font-size:7px}
}
@media(max-width:340px){
  .abroad-player-grid{grid-template-columns:1fr}
  .abroad-player-card__media{aspect-ratio:2}
}
@media(prefers-reduced-motion:reduce){
  .abroad-page .abroad-player-card,.abroad-page .abroad-league-card{transition:none}
}
