.install-wrap { width: min(100% - 48px, 800px); margin-inline: auto; }
.install-intro { padding: 52px 0 48px; }
.edition-label { display:flex; align-items:center; gap:8px; color:var(--ink-soft); font-size:13px; margin-bottom:24px; }
.edition-dot { width:6px; height:6px; background:var(--ink-soft); border-radius:50%; }
.install-intro h1 { font-size:clamp(36px,5vw,52px); line-height:1.12; letter-spacing:-.04em; }
.download-line { display:flex; align-items:center; flex-wrap:wrap; column-gap:10px; row-gap:6px; margin-top:26px; font-size:14px; }
.download-symbol { width:17px; height:17px; color:var(--ink-soft); flex:none; }
.download-line a { margin-left:4px; font-weight:500; }
.steps-heading { display:flex; justify-content:space-between; align-items:center; padding-bottom:15px; font-size:13px; color:var(--ink-soft); }
.platform-picker select { min-height:36px; padding:4px 25px 4px 10px; font:inherit; color:var(--ink-soft); border:0; border-radius:5px; background-color:transparent; cursor:pointer; }
.platform-picker select:hover { background-color:#f0f0ed; }
.install-steps { list-style:none; margin:0; padding:0; }
.install-step { display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:start; column-gap:22px; padding:32px 0; border-top:1px solid var(--rule); }
.step-number { font-size:13px; font-weight:500; line-height:28px; text-align:center; border:1px solid var(--rule); border-radius:50%; width:28px; height:28px; color:var(--ink-soft); }
.step-body { min-width:0; }
.step-body h2 { font-size:21px; margin:0 0 8px; line-height:28px; letter-spacing:-.025em; }
.step-body p { font-size:15px; line-height:1.6; }
.step-body strong { color:var(--paper); font-weight:500; }
.step-body .step-note { font-size:13px; margin-top:6px; color:var(--ink-faint); }
.unzip-art { display:flex; align-items:center; align-self:center; gap:15px; margin:0 5px 0 24px; }
.zip-sheet { width:47px; height:59px; display:flex; flex-direction:column; justify-content:space-between; align-items:center; border:1px solid #d1d5cc; border-radius:3px 12px 3px 3px; background:#fff; padding-bottom:5px; color:#7c8177; font-size:9px; letter-spacing:.05em; }
.zip-seam { height:33px; border-left:3px dotted #c5c9c0; }
.unzip-arrow { width:20px; height:20px; color:#989d93; }
.sift-folder { width:67px; height:48px; position:relative; display:grid; place-items:center; background:#e7eadd; border:1px solid #d1d7c6; border-radius:3px 5px 5px 5px; }
.sift-folder::before { content:''; position:absolute; left:-1px; top:-9px; width:29px; height:9px; border:1px solid #d1d7c6; border-bottom:0; background:#e7eadd; border-radius:4px 7px 0 0; }
.sift-folder img { filter:brightness(0); opacity:.52; }
.address-control { display:flex; align-items:center; max-width:470px; margin-top:18px; border:1px solid #dce0d7; background:#fff; border-radius:8px; overflow:hidden; }
.address-control input { min-width:0; flex:1; width:100%; border:0; padding:13px 15px; background:transparent; font:14px/1.5 Switzer,sans-serif; color:var(--paper); }
.address-control button { display:flex; justify-content:center; align-items:center; gap:8px; align-self:stretch; padding:10px 15px; min-width:94px; border:0; border-left:1px solid var(--rule); background:#f3f4ef; color:var(--paper); font:500 13px Switzer,sans-serif; cursor:pointer; }
.address-control button:hover { background:#eaece5; }
.address-control svg { width:16px; height:16px; }
.address-control:focus-within { outline:2px solid #70796a; outline-offset:3px; }
.address-control input:focus-visible, .address-control button:focus-visible { outline:0; }
.step-body .copy-status { min-height:20px; font-size:12px; margin-top:6px; }
.add-step .step-body { grid-column:2/-1; }
.chrome-guide { max-width:590px; margin-top:22px; border:1px solid #dfe2da; border-radius:9px; overflow:hidden; background:#fff; font:12px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; color:#3c4043; }
.guide-top { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:15px 18px; border-bottom:1px solid #eee; }
.guide-top>span:first-child { font-size:14px; font-weight:500; }
.guide-developer { display:flex; align-items:center; gap:10px; font-size:11px; }
.guide-toggle { display:inline-flex; align-items:center; justify-content:flex-end; width:29px; height:17px; border-radius:20px; padding:2px; background:#1a73e8; }
.guide-toggle::after { content:''; width:13px; height:13px; background:white; border-radius:50%; }
.guide-toolbar { display:flex; align-items:center; gap:14px; padding:13px 18px; }
.guide-load { color:#174ea6; padding:7px 11px; border:1px solid #1a73e8; border-radius:4px; font-weight:500; }
.guide-muted { font-size:11px; color:#8d9398; }
.guide-card { margin:0 18px 16px; padding:12px; display:flex; align-items:center; gap:11px; border:1px solid #eaede7; border-radius:6px; max-width:290px; }
.guide-card img { filter:brightness(0); opacity:.65; }
.guide-card small { display:block; margin-top:3px; color:#7b8179; font-size:10px; }
.guide-card>svg { width:18px; height:18px; margin-left:auto; color:#68745e; }
.install-finish { display:flex; align-items:center; justify-content:space-between; gap:28px; border-top:1px solid var(--rule); padding:30px 0 34px 50px; }
.install-finish h2 { font-size:19px; }
.install-finish p { font-size:13px; margin-top:6px; }
.install-finish .install-cta { flex:none; margin:0; gap:22px; font-size:14px; min-height:46px; }
.install-help { margin-left:50px; border-top:1px solid var(--rule); padding-top:18px; }
.install-help summary { cursor:pointer; font-size:13px; color:var(--ink-soft); width:fit-content; min-height:36px; }
.help-content { padding:0 0 8px; max-width:620px; }
.help-content h3 { margin:20px 0 5px; font-size:14px; font-weight:500; }
.help-content p { font-size:13px; }
.help-contact { margin-top:20px; }
.help-content code { font:inherit; color:var(--paper); }
.beta-note { margin:10px 0 34px 50px; font-size:12px; color:var(--ink-faint); }
.device-notice { margin-top:22px; padding:18px 20px; background:#eff1e9; border-radius:8px; font-size:14px; }
.text-button { display:inline-flex; align-items:center; gap:10px; min-height:40px; padding:6px 0; border:0; background:transparent; color:var(--paper); font:500 14px Switzer,sans-serif; cursor:pointer; text-decoration:underline; text-underline-offset:4px; }
.help-copy { font-size:13px; margin-top:8px; }
.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; }
button:focus-visible, select:focus-visible, summary:focus-visible { outline:2px solid var(--ink-soft); outline-offset:4px; }
.install-page .header-link { gap:8px; }
.install-page .site-footer { border-top:1px solid var(--rule); }
@media(max-width:650px) {
  .install-intro { padding:28px 0 36px; }
  .install-wrap { width:calc(100% - 40px); }
  .download-line { font-size:13px; }
  .download-line a { margin-left:27px; }
  .install-step { grid-template-columns:25px minmax(0,1fr); gap:16px; padding:26px 0; }
  .step-number { width:25px; height:25px; line-height:25px; font-size:12px; }
  .step-body h2 { font-size:19px; }
  .step-body p { font-size:14px; }
  .unzip-art { display:none; }
  .address-control input { font-size:13px; padding:12px 10px; }
  .address-control button { padding:10px; min-width:70px; gap:6px; font-size:12px; }
  .address-control svg { width:14px; height:14px; }
  .guide-top { padding:13px 12px; gap:8px; }
  .guide-top>span:first-child { font-size:12px; }
  .guide-developer { gap:6px; font-size:10px; }
  .guide-toolbar { padding:12px; gap:10px; }
  .guide-muted { font-size:9px; }
  .guide-card { margin:0 12px 12px; }
  .guide-load { padding:6px 8px; font-size:10px; }
  .desktop-break { display:none; }
  .install-finish { align-items:flex-start; flex-direction:column; padding-left:41px; gap:18px; }
  .install-help, .beta-note { margin-left:41px; }
}
@media(prefers-reduced-motion:reduce) { *, *::before, *::after { scroll-behavior:auto !important; } }

.developer-guide .guide-top { border-bottom:0; }
.developer-guide .guide-toggle { outline:3px solid #dceaff; outline-offset:3px; }
