.install-wrap{max-width:880px;margin:auto;padding:45px 36px 0}.install-heading h1{font-size:52px;letter-spacing:-2px}.install-heading>p{max-width:540px;color:var(--muted);font-size:17px;line-height:1.55;margin:22px 0 36px}.back-link{font-size:14px;display:flex;align-items:center;gap:10px}.download-card{display:flex;align-items:center;gap:18px;background:white;border:1px solid var(--line);border-radius:20px;padding:25px;flex-wrap:wrap}.download-card>div{flex:1}.download-card h2{font-size:19px;margin:0 0 5px;font-weight:600;letter-spacing:-.5px}.download-card p{margin:0;font-size:12px;color:var(--muted);line-height:1.5}#purchase-status{margin-top:7px;font-size:12px;color:#454b60}.download-card [hidden],.download-message[hidden],.release-details[hidden]{display:none}.text-button{background:none;border:0;color:#454b60;text-decoration:underline;font-size:13px}.download-message{font-size:14px;line-height:1.5;color:#595e70}.release-details{color:var(--muted);font-size:12px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:15px 5px}.release-details summary{font-size:12px;padding:0;gap:10px}.release-details details{max-width:390px}.release-details p{padding:10px 0 5px;font-size:12px}.release-details code{display:block;font-size:11px;overflow-wrap:anywhere}.install-notice{display:flex;gap:13px;padding:22px 0 0;color:#686b74;align-items:flex-start}.install-notice>.icon{margin-top:3px;flex-shrink:0}.install-notice p{margin:0;font-size:13px;line-height:1.6}.install-notice strong{font-weight:600;color:#44474e}.install-steps{list-style:none;padding:0;margin:45px 0 0}.install-steps>li{display:grid;grid-template-columns:35px 1fr 35px;gap:20px;border-top:1px solid var(--line);padding:30px 0}.step-number{font-size:14px;width:31px;height:31px;border:1px solid #d6d8df;border-radius:50%;display:grid;place-items:center;color:#626772}.install-steps h2{font-weight:500;font-size:22px;letter-spacing:-.6px;margin:2px 0 12px}.install-steps p{font-size:16px;color:#686b74;line-height:1.65;margin:0 0 12px}.install-steps strong{font-weight:500;color:#343740}.step-icon{width:25px;height:25px;color:#878c99}.install-steps .step-note{font-size:13px;line-height:1.65}.step-note a{text-decoration:underline;text-underline-offset:3px;color:#4d556a}.step-note .icon{width:13px;height:13px}.settings-route{display:flex;gap:11px;flex-wrap:wrap;background:#e9ebf0;padding:15px;border-radius:11px;align-items:center;font-size:13px;margin:20px 0;color:#414753}.install-help{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.install-help p{padding-inline:0;font-size:14px}.download-card .button:disabled{opacity:.7}.download-card .button{padding:13px 18px;font-size:13px}@media(max-width:760px){.install-wrap{padding:24px 24px 0}.install-heading h1{font-size:41px;letter-spacing:-1.7px}.install-heading>p{font-size:16px}.download-card{padding:20px;gap:15px}.download-card>img{width:43px;height:43px}.download-card .button{flex-basis:100%}.install-notice p{font-size:12px}.install-steps>li{grid-template-columns:28px 1fr;gap:13px}.step-number{width:26px;height:26px;font-size:12px}.step-icon{display:none}.install-steps h2{font-size:20px}.install-steps p{font-size:15px}.settings-route{font-size:12px;gap:8px}.back-link{font-size:12px}.back-link .icon{width:16px}.release-details{flex-direction:column;gap:12px}}
.legal{max-width:720px}.legal h1{font-size:44px;letter-spacing:-1.6px;margin:0 0 8px}.legal .legal-meta{color:var(--muted);font-size:13px;margin:0 0 34px}.legal h2{font-size:21px;font-weight:600;letter-spacing:-.5px;margin:36px 0 10px}.legal p,.legal li{font-size:16px;line-height:1.65;color:#505460;margin:0 0 12px}.legal ul{padding-left:22px;margin:0 0 12px}.legal a{text-decoration:underline;text-underline-offset:3px;color:#454b60}.legal .placeholder{background:#fff4d6;color:#6b4d00;padding:1px 5px;border-radius:4px}@media(max-width:760px){.legal h1{font-size:36px}.legal p,.legal li{font-size:15px}}

/* Step 3: the three macOS prompts as mock-ups, one column each. */
.approve-flow{list-style:none;padding:0;margin:18px 0 8px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.approve-flow>li{display:flex;flex-direction:column;gap:10px;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;margin:0}
.flow-step{font-size:12px;font-weight:600;color:#626772;letter-spacing:.2px}
.flow-action{font-size:14px;line-height:1.5;color:#343740;margin:0}.flow-action strong{font-weight:600;color:#202125}
.mock{background:#1c1c1e;color:#f2f2f7;border-radius:14px;padding:16px;font-size:12.5px;line-height:1.45;box-shadow:0 10px 26px #00000024}
.mock-dialog{display:flex;flex-direction:column;gap:10px}.mock-icon{width:44px;height:44px}
.mock-title{font-weight:700;font-size:14px;letter-spacing:-.2px}.mock-body{color:#c9c9cf}
.mock-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.mock-buttons.stack{flex-direction:column}
.mock-button{flex:1;text-align:center;padding:8px 8px;border-radius:10px;background:#3a3a3c;color:#f2f2f7;font-size:12px;font-weight:500;white-space:nowrap}
.mock-button.blue{background:#2f7cf6}.mock-button.small{flex:0 0 auto;padding:6px 10px;font-size:11.5px;white-space:nowrap}
.mock-button.tap{box-shadow:0 0 0 2.5px #1c1c1e,0 0 0 5px #ffcc00}
.mock-settings{padding:12px 0 10px}.mock-heading{font-weight:700;font-size:13px;padding:0 14px 8px}
.mock-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:12px;border-top:1px solid #3a3a3c}
.mock-row.blocked{align-items:center;background:#2c2c2e;margin:8px 8px 0;border-radius:10px;border:0}
.mock-select{color:#c9c9cf;white-space:nowrap}.mock-sub{color:#8e8e93;font-size:11px;padding:8px 22px 0}
@media(max-width:760px){.approve-flow{grid-template-columns:1fr}}

/* Step 3 breaks out of the text column (55px gutters each side) so the three
   prompts read at a comfortable size; equal columns, dialogs capped at alert width. */
.approve-flow{--bleed:clamp(0px,(100vw - 880px) / 2,100px);margin-inline:calc(-55px - var(--bleed));grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.approve-flow>li{padding:16px}
.mock-dialog{width:100%;max-width:300px;margin-inline:auto}.mock-settings{width:100%}.mock-select{white-space:normal}
@media(max-width:760px){.approve-flow{margin-inline:-41px 0;grid-template-columns:1fr}.mock-dialog{max-width:320px}}
