/* Preview design; content and disclosure behavior come from the FAQ generator. */
body.downloads-static-page{background:#f5f7f7!important;color:#55565c;--faq-text:#55565c;--faq-muted:#78878d;--faq-line:#c9d7db;--faq-link:#477e8b;font-family:"Yu Gothic UI","Noto Sans JP",Meiryo,sans-serif;font-size:14px;line-height:1.7}
.downloads-static-page::before {
 background-color:#f5f7f7;
 background-image:
  radial-gradient(circle,rgba(120,199,212,.22) 1px,transparent 1.5px),
  linear-gradient(rgba(120,199,212,.07) 1px,transparent 1px),
  linear-gradient(90deg,rgba(120,199,212,.07) 1px,transparent 1px),
  linear-gradient(169deg,transparent 16%,rgba(120,199,212,.14) 16% 28%,transparent 28% 61%,rgba(120,199,212,.10) 61% 73%,transparent 73%),
  radial-gradient(ellipse at 8% 15%,rgba(164,223,233,.3),transparent 36%),
  radial-gradient(ellipse at 94% 80%,rgba(164,223,233,.22),transparent 34%);
 background-size:64px 64px,64px 64px,64px 64px,100% 100%,100% 100%,100% 100%;
 background-position:0 0;
}
body.downloads-static-page{--downloads-text:#55565c;--downloads-muted:#64777d;--downloads-link:#477e8b;--downloads-line:#c9d7db;--downloads-accent:#78b9c5;--downloads-error:#a33c48;letter-spacing:normal}
#page .downloads-content{padding:125px 0 64px}
.downloads-page.gridContainer{width:min(1152px,calc(100% - 48px));max-width:1152px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none}
.downloads-intro{text-align:center;margin-bottom:28px}
.downloads-intro h1{width:min(1037px,100%);margin:0 auto 16px;padding:0 0 20px;border-bottom:1px solid #aab6ba;color:#597b86;font:300 30px/1.3 "Avenir Next","Century Gothic","Segoe UI Light",sans-serif;letter-spacing:.1em}
.downloads-intro p{margin:0;font:400 14px/1.75 "Yu Gothic UI","Noto Sans JP",Meiryo,sans-serif;color:#55565c}
.distribution-notice,.status-message{max-width:1037px;margin:24px auto;padding:14px 20px;background:rgba(220,238,241,.7);border-color:#78b9c5;border-radius:2px;color:#55565c}
#catalog-content{width:min(1037px,100%);margin:auto}.download-section{margin-top:36px;padding-top:28px}.section-heading h2{font-size:21px;font-weight:400}.section-heading p{margin:8px 0 16px}
#application-list,#library-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;background:none;border:0;box-shadow:none;border-radius:0}
.download-group,.library-card,.download-group+.download-group,.library-card+.library-card{border:1px solid #c9d7db;border-radius:3px;background:rgba(248,251,252,.8);padding:8px 4px;margin:0}
.download-group__heading,.library-card__heading h3{font-size:17px;font-weight:500}.library-card__icon{border-color:#aac8ce;background:#deedf0;color:#477e8b}
#download-app .download-row{display:grid;grid-template-columns:minmax(0,1fr) 126px;grid-template-areas:"primary download" "meta meta";gap:10px 14px;padding:12px 16px;min-width:0}
.download-row__description,.version-picker{grid-area:primary}.download-row__meta{grid-area:meta;white-space:normal;font-size:13px}.download-link,.download-link--disabled{grid-area:download}
.download-link,.download-link:visited{background:#78b9c5;color:white;border:1px solid #67a5b2;border-radius:2px;height:38px;box-shadow:none;text-shadow:none}.download-link:hover{background:#65a8b5;color:white;box-shadow:none;transform:none}
.secondary-button{background:transparent;border:1px solid #78b9c5;color:#477e8b;box-shadow:none}.secondary-button:hover{background:#deedf0;color:#355f6a;box-shadow:none}
.download-link--disabled{background:#e3e9eb;color:#718187;border:1px solid #c9d7db;border-radius:2px;box-shadow:none}
#download-app .download-row[data-delivery-status="preparing"],#download-app .download-row[data-delivery-status="unknown"]{background:#edf1f2}
.version-picker__trigger{border:1px solid #aac0c7;border-radius:2px;background:#f8fafb;min-height:38px;padding:6px 12px;justify-content:space-between;color:#55565c}
.version-picker__trigger:hover,.version-picker__trigger:focus-visible,.version-picker__trigger[aria-expanded="true"]{background:#e4f1f3;border-color:#6b9da9;color:#355f6a}
.version-picker__listbox{left:0;width:100%;min-width:0;background:#f8fafb;border:1px solid #86a5af;border-radius:2px;box-shadow:0 8px 20px #31414922;backdrop-filter:none}
.version-picker__option{flex-direction:column;align-items:flex-start;gap:4px;padding:10px;color:#55565c}.version-picker__option-label,.version-picker__option-meta{flex:auto;white-space:normal;text-align:left}.version-picker__option:hover,.version-picker__option:focus-visible{background:#e5f0f2;border-color:#86a5af}.version-picker__option[aria-selected="true"]{background:#d5e9ed}
@media(max-width:900px){#application-list,#library-list{grid-template-columns:minmax(0,1fr)}}
@media(max-width:767px){#page .downloads-content{padding-top:110px}.downloads-page.gridContainer{width:calc(100% - 24px);max-width:none}#catalog-content,.distribution-notice{width:calc(100% - 24px)}.download-section{padding-top:24px}.version-picker__listbox{left:0;width:100%}}

/* Legacy theme clearfix nodes must not become grid cells. */
#application-list::before,#application-list::after,#library-list::before,#library-list::after{content:none!important;display:none!important}
#download-app .download-row.download-row--indent-1,#download-app .download-row.download-row--indent-2{padding:12px 16px}
.download-group__heading,.library-card__heading{padding-top:12px;padding-bottom:8px}
@media(max-width:480px){#download-app .download-row{grid-template-columns:minmax(0,1fr);grid-template-areas:"primary" "meta" "download"}.download-link,.download-link--disabled{justify-self:end}.version-picker__trigger-label{white-space:normal}}

/* Reading and control typography share the CONTACT/FAQ font stack. */
#download-app{font-family:"Yu Gothic UI","Noto Sans JP",Meiryo,sans-serif;font-size:14px;font-weight:400;line-height:1.75;letter-spacing:normal;font-kerning:auto}
#download-app .section-heading h2{font:400 21px/1.3 "Yu Gothic UI","Noto Sans JP",Meiryo,sans-serif;letter-spacing:.02em}
#download-app .download-group__heading,#download-app .library-card__heading h3{font:400 18px/1.3 "Yu Gothic UI","Noto Sans JP",Meiryo,sans-serif;letter-spacing:.02em}
#download-app .download-row__title,#download-app .version-picker__trigger,#download-app .version-picker__option,#download-app .version-picker__option-label{font-family:inherit;font-size:14px;font-weight:400;line-height:1.7;letter-spacing:.02em}
#download-app .download-link,#download-app .download-link--disabled,#download-app .secondary-button{font-family:inherit;font-size:14px;font-weight:400;line-height:1.4;letter-spacing:.05em;backdrop-filter:none;-webkit-backdrop-filter:none}
#download-app .download-row__meta,#download-app .version-picker__option-meta{font-family:inherit;font-size:13px;font-weight:400;line-height:1.6;letter-spacing:normal}
#download-app .download-link:hover,#download-app .secondary-button:hover{border-color:#67a5b2}
#download-app .download-link--disabled[data-delivery-status]{color:#718187;border-color:#c9d7db;background:#e3e9eb}
#download-app .secondary-button{min-height:38px;border-radius:2px}
#download-app :is(.download-link,.secondary-button,.version-picker__trigger,.version-picker__option):focus-visible{outline:2px solid #597b86;outline-offset:2px}
#download-app .status-message--error h2{font:400 18px/1.3 "Yu Gothic UI","Noto Sans JP",Meiryo,sans-serif;letter-spacing:.02em;color:#a33c48}
@media(max-width:767px){.downloads-page.gridContainer{width:calc(100% - 24px)!important;max-width:calc(100% - 24px)!important}#download-app .download-group__heading,#download-app .library-card__heading h3{font-size:16px}}

/* Character-style introduction and download action. */
.downloads-intro{text-align:left;width:min(1037px,100%);margin:0 auto 28px}.downloads-intro h1{display:flex;align-items:center;gap:20px;border:0;padding:0;margin:0 0 18px;text-align:left;letter-spacing:.08em}.downloads-intro h1 em{font-style:italic;font-size:40px}.downloads-intro h1 small{font:500 18px/1.4 "Yu Gothic UI","Noto Sans JP",Meiryo,sans-serif;letter-spacing:.12em}.downloads-intro p{text-align:left}
.distribution-notice{border:1px solid #aac8ce;text-align:center;padding:18px 24px}#catalog-content{border-top:1px solid #aab6ba;margin-top:32px}
#download-app .download-link{width:100%;min-width:0;max-width:none;min-height:62px;height:auto;padding:9px 12px;gap:13px;border-radius:3px;background:#78c7d4;border-color:color-mix(in srgb,#78c7d4 72%,#52616a);font-size:17px;line-height:1.3;font-weight:400;letter-spacing:.09em;transition:background-color 150ms ease,color 150ms ease}
#download-app .download-link:hover,#download-app .download-link:focus-visible{background:color-mix(in srgb,#78c7d4 84%,#20202a);color:white}
#download-app .download-link svg{width:27px;height:27px;flex:0 0 auto;stroke-width:1.7;margin:0}
#download-app .download-row{grid-template-columns:minmax(0,1fr);grid-template-areas:"primary" "meta" "download"}.download-group__heading{display:flex;align-items:center;gap:10px}.platform-icon{display:inline-flex;flex:0 0 24px}.platform-icon svg{width:24px;height:24px;fill:currentColor}
@media(max-width:767px){.downloads-intro h1{flex-wrap:wrap;gap:4px 16px}.downloads-intro h1 em{font-size:34px}.downloads-intro h1 small{font-size:16px}#download-app .download-link{min-height:58px;font-size:16px}#download-app .download-link svg{width:25px;height:25px}}

/* Library jackets lead the selection; acquisition controls remain visible. */
#library-list{gap:28px}#library-list .library-card{padding:0;overflow:visible;border:1px solid #aac8ce;border-radius:4px;background:rgba(248,251,252,.9)}
#library-list .library-card__heading{position:relative;display:block;padding:0;overflow:hidden;border-radius:3px 3px 0 0}
.library-jacket{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
#download-app #library-list .library-card__heading h3{position:absolute;bottom:0;left:0;right:0;margin:0;padding:48px 24px 20px;background:linear-gradient(transparent,rgba(20,28,38,.82));color:white;font-size:26px;line-height:1.4;letter-spacing:.04em}
#download-app #library-list .download-row{padding:20px 24px 24px;gap:12px}
@media(max-width:900px) and (min-width:601px){#library-list .library-card{display:grid;grid-template-columns:45% minmax(0,1fr);align-items:center}#library-list .library-card__heading{border-radius:3px 0 0 3px}#download-app #library-list .library-card__heading h3{font-size:22px}}
@media(max-width:600px){#library-list{gap:24px}#download-app #library-list .library-card__heading h3{font-size:24px}#download-app #library-list .download-row{padding:18px}}

/* Typography follows the character page introduction and reading text. */
#download-app{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Yu Gothic UI",Meiryo,sans-serif;font-weight:350;letter-spacing:.032em;line-height:1.62}
.downloads-intro h1{gap:18px;align-items:center}.downloads-intro h1 em{font-size:43px;line-height:1.12;letter-spacing:.085em}.downloads-intro h1 small{font-family:"Hiragino Maru Gothic ProN","Yu Gothic UI","Noto Sans JP",sans-serif;font-size:18px;font-weight:400;line-height:1;letter-spacing:.12em}
.downloads-intro p{font-family:inherit;font-weight:350;line-height:1.62;letter-spacing:.032em}
#download-app .section-heading h2,#download-app .download-group__heading,#download-app .library-card__name{font-family:inherit;font-weight:400;letter-spacing:.035em;line-height:1.4}
#download-app .version-picker__trigger,#download-app .version-picker__option,#download-app .version-picker__option-label,#download-app .download-row__meta{font-family:inherit;font-weight:350;letter-spacing:.032em}
.distribution-notice{padding:12px 20px;border:1px solid rgba(134,165,175,.22);border-radius:12px;background:rgba(226,239,242,.38);color:#78878d;font-size:13px;line-height:1.75;box-shadow:none}.distribution-notice p{color:inherit}
.platform-icon img{display:block;width:24px;height:24px;object-fit:contain}
#download-app .download-link{width:min(260px,100%);justify-self:end}
#library-list{gap:20px}#library-list .library-card{display:grid;grid-template-columns:40% minmax(0,1fr);align-items:center}
#library-list .library-card__heading{border-radius:3px 0 0 3px;align-self:stretch;display:flex;align-items:center;background:rgba(218,235,239,.35)}
#library-list .library-jacket{aspect-ratio:1;object-fit:contain;height:auto;width:100%}
#download-app #library-list .download-row{padding:18px;gap:10px;grid-template-areas:"name" "primary" "meta" "download";grid-template-columns:minmax(0,1fr)}
#download-app .library-card__name{grid-area:name;margin:0 0 4px;font-size:21px;color:#55565c}
#download-app #library-list .download-link{min-height:52px;font-size:16px;gap:8px}#download-app #library-list .download-link svg{width:25px;height:25px}
@media(max-width:900px){#library-list .library-card{grid-template-columns:36% minmax(0,1fr)}}
@media(max-width:767px){.downloads-intro h1{gap:11px}.downloads-intro h1 em{font-size:32px}.downloads-intro h1 small{font-size:14px}.downloads-intro p{letter-spacing:.028em}#download-app .library-card__name{font-size:18px}}
@media(max-width:480px){#library-list .library-card{grid-template-columns:34% minmax(0,1fr)}#download-app #library-list .download-row{padding:12px;gap:8px}#download-app #library-list .download-link{font-size:14px;letter-spacing:.05em;gap:5px;min-height:48px;padding:8px}#download-app #library-list .download-link svg{width:22px;height:22px}}

#library-list .library-card::before,#library-list .library-card::after,#library-list .library-card__heading::before,#library-list .library-card__heading::after{content:none!important;display:none!important}
#library-list .library-card__heading{grid-column:1;grid-row:1}#download-app #library-list .download-row{grid-column:2;grid-row:1}

/* Section labels use the character-name typography. */
#download-app .section-heading h2{font-family:"Hiragino Maru Gothic ProN","Yu Gothic UI","Noto Sans JP",sans-serif;font-size:21px;font-weight:300;line-height:1.4;letter-spacing:.075em;margin:0 0 24px}
#document-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#document-list::before,#document-list::after{content:none!important;display:none!important}
#document-list>.download-row{border:1px solid #c9d7db;border-radius:3px;background:rgba(248,251,252,.8);padding:18px}
#download-app #application-list .download-link,#download-app #document-list .download-link{width:100%;max-width:none}
img.platform-icon{width:24px;height:24px;object-fit:contain;opacity:.68}
#library-list .library-card{align-items:stretch}#library-list .library-card__heading{display:block;overflow:hidden;border-radius:3px 0 0 3px;min-height:0}
.library-jacket-link{display:block;position:relative;height:100%;min-height:200px;border-radius:inherit;overflow:hidden;color:white!important}
#library-list .library-jacket{position:absolute;inset:0;display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.library-jacket-names{position:absolute;bottom:0;left:0;right:0;z-index:1;padding:34px 12px 12px;background:linear-gradient(transparent,rgba(10,20,28,.8));display:flex;flex-direction:column;gap:3px;color:white}
.library-jacket-names small{font-family:inherit;font-weight:400;font-size:11px;line-height:1.3;letter-spacing:.05em}.library-jacket-names>span{font-size:20px;line-height:1.35;letter-spacing:.025em}
.library-jacket-effect{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;background:color-mix(in srgb,var(--jacket-accent) 80%,transparent);color:white;opacity:0;transition:opacity .2s;font-size:16px;letter-spacing:.06em;z-index:2}.library-jacket-effect svg{width:24px;height:24px}
.library-jacket-link[href]:hover .library-jacket-effect,.library-jacket-link[href]:focus-visible .library-jacket-effect{opacity:1}.library-jacket-link:focus-visible{outline:2px solid #597b86;outline-offset:2px}.library-jacket-link[aria-disabled=true]{cursor:default}
@media(max-width:900px){#document-list{grid-template-columns:minmax(0,1fr)}}
@media(max-width:767px){#download-app .section-heading h2{font-size:21px}.library-jacket-names>span{font-size:16px}.library-jacket-names{padding:30px 8px 10px}.library-jacket-effect{font-size:12px;gap:3px}.library-jacket-effect svg{width:18px;height:18px}}
@media(prefers-reduced-motion:reduce){.library-jacket-effect{transition:none}}

/* Same palette and gradient as TOP; visible through transparent jackets. */
.library-jacket-link{background:linear-gradient(145deg,var(--jacket-soft),color-mix(in srgb,var(--jacket-accent) 42%,#fff))}
