/* Owner-supplied landscape; the cards carry the function, the artwork carries the atmosphere. */
#download-view{position:relative;isolation:isolate;background:#f5f8f5}
.download-landscape{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom;z-index:-1;pointer-events:none;user-select:none}
#download.download-page{width:min(1160px,calc(100% - 80px));padding:70px 0 66px;min-height:calc(100svh - var(--header));display:flex;flex-direction:column;justify-content:center}
#download .service-heading{text-align:center;padding-bottom:38px}
#download .service-heading .eyebrow{font-size:14px;letter-spacing:.17em;color:#637563;margin-bottom:16px}
.download-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:start;transition:grid-template-columns .4s var(--ease)}
.download-card{padding:26px 28px 18px;background:rgba(255,255,253,.94);border:1px solid rgba(255,255,255,.95);border-radius:24px;box-shadow:0 10px 32px #3857470b,0 2px 7px #38574706;min-width:0;min-height:350px;transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
@media(min-width:961px){
 .download-grid[data-active="0"]{grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr) minmax(0,.9fr)}
 .download-grid[data-active="1"]{grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr) minmax(0,.9fr)}
 .download-grid[data-active="2"]{grid-template-columns:minmax(0,.9fr) minmax(0,.9fr) minmax(0,1.2fr)}
 .download-grid[data-active] .download-card{transform:translateY(4px) scale(.965)}
 .download-grid[data-active] .download-card.is-active{transform:translateY(-5px) scale(1.025);box-shadow:0 18px 42px #38574714,0 3px 10px #38574708;position:relative;z-index:1}
}
.release-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.release-heading .eyebrow{margin:0;font-size:14px;letter-spacing:.08em;color:#6d7f6d}
.release-heading>svg{width:27px;height:27px;color:#688575}
.download-card h2{font-size:28px;font-weight:400;line-height:1.5;letter-spacing:.04em;margin:12px 0 9px;color:#314d43}
.download-purpose{font-size:16px;line-height:1.8;color:#637165;margin:0;min-height:58px}
.release-summary{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;margin-top:22px;margin-bottom:18px}
.release-version{font:22px/1.5 var(--sans);color:#394f43;font-variant-numeric:tabular-nums}
.release-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 13px;font-size:14px;color:#6b786d;line-height:1.7}
.download-card .button{display:flex;justify-content:center;width:100%;min-height:51px;padding:10px 20px;border-radius:28px;border:1px solid transparent;background:#3b6158;color:#fff;font-size:17px;box-shadow:0 2px 5px #22463714;transition:background-color .2s ease,transform .18s ease}
.download-card .button.outline{background:#566b50;color:#fff;border-color:transparent}
.download-card .button:hover{background:#2e5148;transform:translateY(-1px);box-shadow:0 3px 8px #22463718}
.download-card .button.outline:hover{background:#465c41}
.download-card .button:active{transform:translateY(0)}
.download-card .button:focus-visible{outline:2px solid #314d43;outline-offset:5px}
.download-card [aria-disabled=true]{opacity:.5;cursor:default;transform:none;box-shadow:none}
.release-check{margin-top:17px;font-size:15px;color:#657365}
.release-check summary{min-height:44px;cursor:pointer;padding:10px 0;line-height:1.6;font-size:15px;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px}
.release-check summary::-webkit-details-marker{display:none}
.release-check summary:after{content:'+';font:22px/1 var(--sans);color:#8b9a87}
.release-check[open] summary:after{content:'−'}
.release-check[open] summary{border-bottom:1px solid #e3e8df}
.release-check summary:focus-visible{outline:2px solid #52684e;outline-offset:2px}
.release-notes{margin-top:16px}.release-notes p{white-space:pre-line;font-size:15px;line-height:1.9;color:#5c6a5d;overflow-wrap:anywhere}
.release-check p{font-size:14px;line-height:1.85;overflow-wrap:anywhere}
.release-date{margin-top:15px;color:#768172}
.release-file-info{margin-top:17px;padding-top:16px;border-top:1px solid #e3e8df}
.release-file-info h3{font:14px/1.8 var(--sans);color:#657365;margin-bottom:8px}
.release-check code{display:block;overflow-wrap:anywhere;font-size:12px;line-height:1.85;margin:9px 0;color:#73816f}
.release-status-row{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:12px;min-height:28px;font-size:14px;color:#53654f}
.release-status-row>p{font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.release-status-row button{font-size:14px;white-space:nowrap}
.release-count{margin:18px 0 12px;font:14px/1.7 var(--sans);color:#6b786d}
.release-empty{font:15px/1.8 var(--sans);color:#6b786d;margin:18px 0}
.release-list{display:flex;flex-direction:column;gap:12px;min-width:0;overflow-y:visible;overflow-x:clip}
.release-list.has-scroll{overflow-y:auto;scrollbar-gutter:stable;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#8eaa99 #edf1eb}
.release-list:focus-visible{outline:2px solid #52684e;outline-offset:3px}
.release-item{flex:none;min-width:0;padding:14px 0 8px;border-top:1px solid #dce4d9}
.release-item h3{font:16px/1.65 var(--sans);color:#314d43;margin:0;overflow-wrap:anywhere}
.release-item .release-summary{margin:9px 0 12px;gap:4px 9px}
.release-item .release-version{font-size:17px}
.release-item .release-meta{font-size:12px;gap:5px 10px}
.download-card .release-item .button{font-size:15px;min-height:43px;padding:9px 12px}
.release-item .release-check{margin-top:4px}
.release-item .release-check summary{font-size:13px;min-height:36px;padding:7px 0}
.release-empty[hidden]{display:none}
#retrieval-form{margin-top:22px}
#retrieval-code{width:100%;min-width:0;min-height:46px;border:1px solid #c6d3c7;border-radius:9px;background:#f5f8f3;color:#314d43;padding:11px 13px;font:16px/1.4 "Microsoft YaHei","PingFang SC",sans-serif}
#retrieval-code:focus{outline:2px solid #688575;outline-offset:3px}
#retrieval-submit{margin-top:14px}
.download-card .retrieval-button{background:#76826a}
.download-card .retrieval-button:hover{background:#5f7057}
.download-card .button:disabled{opacity:.6;cursor:wait;transform:none}
#retrieval-status{font:14px/1.7 "Microsoft YaHei","PingFang SC",sans-serif;color:#53654f;min-height:24px;margin:13px 0 0;overflow-wrap:anywhere}
#retrieval-status.error{color:#9a5141}
#retrieval-result{border-top:1px solid #d8dfd3;margin-top:12px;padding-top:12px}
#retrieval-result p{font:14px/1.8 "Microsoft YaHei","PingFang SC",sans-serif;margin:0 0 6px;overflow-wrap:anywhere}
#retrieval-result .button{margin-top:12px}
#retrieval-result[hidden]{display:none}
.site-stat-note{font-size:13px;color:#747c6c;text-align:center;padding:0 20px 22px;line-height:1.8}
@media(max-width:1100px){#download.download-page{width:calc(100% - 80px)}.download-grid{gap:22px}.download-card{padding:26px 22px 18px}.download-card h2{font-size:26px}.download-purpose{font-size:16px}}
@media(max-width:960px){
  #download.download-page{width:min(480px,calc(100% - 40px));padding:38px 0 43px}
  #download .service-heading{padding-bottom:27px}
  #download .service-heading .eyebrow{font-size:13px;margin-bottom:10px}
  .download-landscape{object-position:20% bottom}
  .download-grid{grid-template-columns:minmax(0,1fr);gap:21px}
  .download-card{padding:25px 28px 15px;border-radius:22px;min-height:0;transform:none}
  .download-purpose{min-height:0}
  .download-card h2{font-size:29px;margin-top:8px}
  .release-heading .eyebrow{font-size:13px}
  .release-summary{margin-top:22px;margin-bottom:16px}
  .release-version{font-size:21px}
  .release-meta{font-size:13px;gap:8px}
  .download-card .button{font-size:16px;min-height:49px}
  .release-status-row{display:block;min-height:22px}
  .release-status-row button{padding-left:0}
}
@media(max-width:360px){#download.download-page{width:calc(100% - 32px)}.download-card{padding:22px 20px 13px}.download-card h2{font-size:26px}.release-summary{gap:5px}.release-meta{font-size:12px}}
@media(prefers-reduced-motion:reduce){.download-grid,.download-card,.download-card .button{transition:none}.download-card .button:hover{transform:none}}
@media(forced-colors:active){.download-landscape{display:none}.download-card{border:1px solid CanvasText}.download-card .button{border:1px solid ButtonText;color:ButtonText}.download-card{background:Canvas}}
