/* Desktop download page */
.dl-page { --dl-bg:var(--color-bg-dark); --dl-surface:var(--color-surface-dark); --dl-text:var(--color-text-dark); --dl-muted:var(--color-text-muted); --dl-border:var(--color-border-dark); --dl-orange:var(--color-primary); overflow-x:hidden; }
.dl-page .container { max-width:1240px; padding-inline:clamp(20px,4vw,58px); }
.eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 20px; color:var(--dl-orange); font-size:.69rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.eyebrow>span { width:28px; height:1px; background:currentColor; }
.dl-page .display { font-family:var(--font-display); font-weight:500; letter-spacing:-.035em; }
.dl-page .display em { color:var(--dl-orange); font-weight:500; }

.dl-nav { padding:12px 0; background:color-mix(in srgb,var(--dl-bg) 90%,transparent); backdrop-filter:blur(18px); border-bottom:1px solid var(--dl-border); }
.dl-nav .nav-logo { font-family:var(--font-display); font-size:1.4rem; letter-spacing:-.02em; }
.dl-nav .nav-logo img,.dl-footer .nav-logo img { width:38px; height:38px; border-radius:10px; }
.dl-nav .nav-links { gap:27px; }
.dl-nav .nav-links a:not(.btn) { color:var(--dl-muted); font-size:.85rem; }
.dl-nav .nav-links a[aria-current="page"] { color:var(--dl-orange); }
.dl-nav .theme-toggle { width:38px; height:38px; padding:0; overflow:hidden; color:transparent; border-radius:50%; position:relative; }
.dl-nav .theme-toggle::after { content:"◐"; position:absolute; inset:0; display:grid; place-items:center; color:var(--dl-muted); }

.dl-hero { position:relative; padding:96px 0 84px; background:radial-gradient(circle at 78% 30%,rgba(230,97,40,.13),transparent 32%),var(--dl-bg); border-bottom:1px solid var(--dl-border); overflow:hidden; }
.dl-hero::before { content:""; position:absolute; inset:0; opacity:.16; background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px); background-size:72px 72px; mask-image:linear-gradient(to bottom,#000,transparent 92%); pointer-events:none; }
.dl-hero .container { position:relative; z-index:1; display:grid; grid-template-columns:minmax(380px,.92fr) minmax(480px,1.08fr); align-items:center; gap:clamp(40px,6vw,90px); }
.dl-hero .container>* { min-width:0; }
.dl-hero h1 { margin:0 0 26px; font-size:clamp(3.6rem,5.6vw,6.2rem); line-height:.9; }
.dl-hero .hero-lede { max-width:560px; margin:0 0 30px; color:var(--dl-muted); font-size:clamp(1rem,1.4vw,1.15rem); line-height:1.7; }
.dl-platform-chips { display:flex; flex-wrap:wrap; gap:9px 22px; color:var(--dl-muted); font-size:.73rem; font-weight:500; }
.dl-platform-chips span { display:flex; align-items:center; gap:8px; }
.dl-platform-chips span::before { content:""; width:4px; height:4px; border-radius:50%; background:var(--dl-orange); }

.release-card { position:relative; min-width:0; padding:clamp(26px,3.4vw,40px); background:var(--dl-surface); border:1px solid var(--dl-border); border-radius:26px; box-shadow:0 34px 90px rgba(0,0,0,.4); }
.release-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:8px; }
.release-head strong { font-family:var(--font-display); font-size:1.7rem; font-weight:500; line-height:1.15; }
.status-pill { display:inline-flex; align-items:center; gap:8px; padding:7px 13px; border:1px solid var(--dl-border); border-radius:99px; font-size:.62rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--dl-muted); white-space:nowrap; }
.status-pill::before { content:""; width:7px; height:7px; border-radius:50%; background:var(--dl-muted); }
.release-card[data-state="ready"] .status-pill { color:#7bc98d; border-color:rgba(123,201,141,.35); }
.release-card[data-state="ready"] .status-pill::before { background:#7bc98d; box-shadow:0 0 0 4px rgba(123,201,141,.12); }
.release-card[data-state="prep"] .status-pill { color:var(--dl-orange); border-color:color-mix(in srgb,var(--dl-orange) 45%,var(--dl-border)); }
.release-card[data-state="prep"] .status-pill::before { background:var(--dl-orange); box-shadow:0 0 0 4px rgba(230,97,40,.12); }
.release-meta { margin-bottom:22px; color:var(--dl-muted); font-size:.78rem; }
.release-meta strong { color:var(--dl-text); font-weight:600; }
.release-notes { margin:0 0 26px; padding:19px 21px; background:var(--dl-bg); border:1px solid var(--dl-border); border-radius:16px; color:var(--dl-muted); font-size:.83rem; line-height:1.7; }
.release-notes strong { display:block; margin-bottom:8px; color:var(--dl-text); font-family:var(--font-display); font-size:1.05rem; font-weight:500; }
.release-notes ul { margin:0; padding-left:18px; }
.release-notes li+li { margin-top:6px; }

.installer-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.installer { min-width:0; display:flex; flex-direction:column; gap:12px; padding:19px; background:var(--dl-bg); border:1px solid var(--dl-border); border-radius:17px; }
.installer.recommended { border-color:color-mix(in srgb,var(--dl-orange) 55%,var(--dl-border)); }
.installer-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.installer-top strong { font-size:.95rem; }
.rec-tag { padding:4px 9px; color:var(--dl-orange); border:1px solid currentColor; border-radius:99px; font-size:.55rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; }
.installer p { margin:0; color:var(--dl-muted); font-size:.7rem; line-height:1.55; }
.installer-meta { display:flex; flex-wrap:wrap; gap:6px 14px; color:var(--dl-muted); font-size:.62rem; }
.installer .btn { justify-content:center; }
.sha-row { display:flex; align-items:center; gap:9px; min-width:0; }
.sha-row code { flex:1; min-width:0; overflow:hidden; padding:8px 10px; color:var(--dl-muted); background:var(--dl-bg); border:1px solid var(--dl-border); border-radius:8px; font-size:.6rem; text-overflow:ellipsis; white-space:nowrap; }
.copy-btn { flex:0 0 auto; padding:7px 11px; color:var(--dl-muted); background:transparent; border:1px solid var(--dl-border); border-radius:8px; font:inherit; font-size:.6rem; letter-spacing:.05em; text-transform:uppercase; cursor:pointer; }
.copy-btn:hover { color:var(--dl-text); border-color:var(--dl-text); }

.prep-state p { margin:0 0 14px; color:var(--dl-muted); font-size:.86rem; line-height:1.7; max-width:520px; }
.prep-state p strong { color:var(--dl-text); }
.prep-list { display:grid; gap:0; margin:22px 0 26px; border-top:1px solid var(--dl-border); }
.prep-list div { display:grid; grid-template-columns:.72fr 1fr; gap:16px; padding:13px 0; border-bottom:1px solid var(--dl-border); font-size:.76rem; }
.prep-list div strong { color:var(--dl-text); font-weight:600; }
.prep-list div span { color:var(--dl-muted); line-height:1.55; }
.prep-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.prep-actions .btn-discord { grid-column:1/-1; justify-content:flex-start; }

.dl-section { padding:clamp(76px,9vw,120px) 0; }
.dl-section.tinted { background:var(--dl-surface); border-block:1px solid var(--dl-border); }
.section-intro { margin-bottom:52px; }
.section-intro h2 { margin:0; font-size:clamp(2.6rem,4.6vw,4.6rem); line-height:.96; }
.section-intro>p { max-width:640px; margin-top:20px; color:var(--dl-muted); font-size:.95rem; line-height:1.75; }

.arch-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.arch-card { position:relative; padding:32px; background:var(--dl-bg); border:1px solid var(--dl-border); border-radius:24px; }
.arch-card.recommended { border-color:color-mix(in srgb,var(--dl-orange) 55%,var(--dl-border)); }
.arch-card h3 { margin:18px 0 12px; font-family:var(--font-display); font-size:2rem; font-weight:500; line-height:1.1; }
.arch-card p { color:var(--dl-muted); font-size:.82rem; line-height:1.7; }
.arch-card .chip-row { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
.arch-card .chip-row span { padding:7px 11px; color:var(--dl-muted); border:1px solid var(--dl-border); border-radius:99px; font-size:.64rem; }
.detect-note { display:flex; align-items:center; gap:10px; margin-top:26px; padding:15px 18px; color:var(--dl-muted); background:var(--dl-bg); border:1px solid var(--dl-border); border-radius:13px; font-size:.74rem; }
.detect-note::before { content:""; width:7px; height:7px; flex:0 0 7px; border-radius:50%; background:var(--dl-orange); box-shadow:0 0 0 4px rgba(230,97,40,.12); }
.detect-note strong { color:var(--dl-text); }
.detect-note[hidden] { display:none; }

.desktop-feature { display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:clamp(44px,6vw,90px); }
.desktop-feature h2 { margin:0 0 22px; font-size:clamp(2.6rem,4.4vw,4.2rem); line-height:.96; }
.desktop-feature .lede { color:var(--dl-muted); line-height:1.75; }
.desktop-points { display:grid; margin-top:34px; border-top:1px solid var(--dl-border); }
.desktop-points div { display:grid; grid-template-columns:.8fr 1fr; gap:20px; padding:16px 0; border-bottom:1px solid var(--dl-border); }
.desktop-points strong { font-size:.8rem; }
.desktop-points span { color:var(--dl-muted); font-size:.76rem; line-height:1.6; }
.app-window { margin:0; padding:6px; background:#070707; border:1px solid rgba(255,255,255,.13); border-radius:21px; box-shadow:0 28px 68px rgba(0,0,0,.45); overflow:hidden; transform:rotate(-1deg); }
.app-window img { width:100%; display:block; border-radius:15px; }
.app-window figcaption { padding:13px 8px 7px; color:var(--dl-muted); font-size:.62rem; text-align:center; }

.update-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.update-card { padding:28px; background:var(--dl-bg); border:1px solid var(--dl-border); border-radius:20px; }
.update-card>span { color:var(--dl-orange); font-family:var(--font-display); font-size:1.15rem; }
.update-card h3 { margin:14px 0 10px; font-family:var(--font-display); font-size:1.45rem; font-weight:500; }
.update-card p { margin:0; color:var(--dl-muted); font-size:.76rem; line-height:1.65; }
.update-card code { padding:2px 6px; color:var(--dl-text); background:var(--dl-surface); border:1px solid var(--dl-border); border-radius:5px; font-size:.68rem; }

.help-strip { display:grid; grid-template-columns:1.35fr .65fr; align-items:center; gap:40px; padding:clamp(30px,4vw,46px); background:var(--dl-bg); border:1px solid var(--dl-border); border-radius:26px; }
.help-strip h2 { margin:0 0 10px; font-size:clamp(2rem,3.4vw,3.1rem); line-height:1; }
.help-strip p { margin:0; color:var(--dl-muted); font-size:.85rem; line-height:1.7; }
.help-strip-actions { display:flex; flex-direction:column; gap:10px; }
.help-strip-actions .btn { justify-content:center; }

.dl-page .btn-secondary { background:var(--dl-surface); border-color:var(--dl-border); }
.dl-footer { padding:70px 0 25px; background:var(--dl-bg); border-top:1px solid var(--dl-border); }
.dl-footer .footer-top { display:flex; justify-content:space-between; align-items:flex-start; padding-bottom:50px; border-bottom:1px solid var(--dl-border); }
.dl-footer .footer-top p { color:var(--dl-muted); font-size:.8rem; line-height:1.6; text-align:right; }
.dl-footer .footer-content { display:grid; grid-template-columns:repeat(3,minmax(120px,1fr)); max-width:590px; margin:48px 0; }
.dl-footer .footer-section h3 { color:var(--dl-muted); font-size:.6rem; font-weight:600; letter-spacing:.13em; text-transform:uppercase; }
.dl-footer .footer-links { list-style:none; }
.dl-footer .footer-links a { display:inline-block; padding:4px 0; color:var(--dl-text); font-size:.76rem; }
.dl-footer .footer-bottom { display:flex; justify-content:space-between; padding-top:22px; color:var(--dl-muted); font-size:.66rem; }

@media (max-width:1100px) {
  .dl-hero .container { grid-template-columns:.9fr 1.1fr; gap:44px; }
}
@media (max-width:899px) {
  .dl-nav .mobile-menu-toggle { width:40px; height:40px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; border:1px solid var(--dl-border); border-radius:50%; }
  .dl-nav .mobile-menu-toggle span { width:16px; height:1px; background:var(--dl-text); }
  .dl-nav .nav-links { gap:18px; padding:28px; background:color-mix(in srgb,var(--dl-surface) 97%,transparent); }
  .dl-nav .nav-links a:not(.btn) { color:var(--dl-text); }
  .dl-nav .theme-toggle { width:auto; height:auto; padding:10px 18px; color:var(--dl-text); border-radius:99px; }
  .dl-nav .theme-toggle::after { display:none; }
  .dl-hero { padding:60px 0 70px; }
  .dl-hero .container { grid-template-columns:1fr; gap:50px; }
  .dl-hero h1 { font-size:clamp(3.4rem,12vw,5.4rem); }
  .installer-grid { grid-template-columns:1fr; }
  .arch-grid { grid-template-columns:1fr; }
  .desktop-feature { grid-template-columns:1fr; gap:50px; }
  .update-grid { grid-template-columns:1fr; }
  .help-strip { grid-template-columns:1fr; gap:28px; }
  .help-strip-actions { flex-direction:row; flex-wrap:wrap; }
  .help-strip-actions .btn { flex:1; min-width:150px; }
  .dl-footer .footer-top { display:block; }
  .dl-footer .footer-top p { margin-top:20px; text-align:left; }
  .dl-footer .footer-content { grid-template-columns:repeat(2,1fr); row-gap:34px; }
}
@media (max-width:620px) {
  .dl-page .container { padding-inline:20px; }
  .dl-hero h1 { font-size:3.5rem; }
  .release-card { padding:24px 20px; }
  .prep-list div { grid-template-columns:1fr; gap:3px; }
  .arch-card { padding:26px 22px; }
  .desktop-points div { grid-template-columns:1fr; gap:4px; }
  .dl-section { padding-block:76px; }
}
@media (prefers-reduced-motion:reduce) { .dl-page *,.dl-page *::before,.dl-page *::after { animation:none!important; transition-duration:.01ms!important; scroll-behavior:auto!important; } }
