.mobile-document,.mobile-page { height:auto; overflow-y:auto; }
.mobile-page { min-height:100dvh; font-size:15px; line-height:1.7; }
.mobile-header, .mobile-main, .mobile-footer { width:min(1040px,calc(100% - 64px)); margin-inline:auto; }
.mobile-header { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:26px; border-bottom:1px solid var(--border); }
.mobile-brand { display:inline-flex; align-items:center; gap:10px; font-size:24px; font-weight:600; }
.mobile-brand img { object-fit:contain; }
.mobile-header nav { display:flex; gap:24px; color:#bcbcbc; font-size:14px; }
.mobile-header a:hover, .mobile-footer a:hover { color:#fff; }
.mobile-intro { padding:60px 0 36px; }
.mobile-intro h1 { font-size:clamp(34px,5vw,52px); line-height:1.2; letter-spacing:-.04em; font-weight:600; margin:18px 0; }
.mobile-lede { color:#bcbcbc; font-size:17px; line-height:1.8; }
.mobile-downloads { display:grid; grid-template-columns:1.15fr 1fr; gap:20px; }
.mobile-card { background:linear-gradient(125deg,#202020,#111); border:1px solid var(--border); border-radius:14px; padding:28px; }
.mobile-card-secondary { background:#111; }
.mobile-card h2 { font-size:25px; font-weight:600; margin:8px 0 14px; line-height:1.4; }
.mobile-card p { color:#c0c0c0; }
.mobile-status { min-height:52px; margin:20px 0 10px; font-size:14px; }
.mobile-download { min-height:48px; width:100%; margin:16px 0; font-size:15px; }
.mobile-download:disabled { cursor:not-allowed; opacity:.6; }
.mobile-note { font-size:13px; color:#a7a7a7; line-height:1.8; }
.mobile-card .mobile-note { margin-top:18px; }
.mobile-card details { margin-top:20px; font-size:13px; }
.mobile-card code { margin:12px 0; user-select:all; }
.mobile-card .text-link { line-height:1.7; }
.mobile-use { margin-top:46px; border-top:1px solid var(--border); padding-top:28px; }
.mobile-use h2 { font-size:22px; margin-bottom:22px; font-weight:500; }
.mobile-use h3 { font-size:17px; margin-bottom:9px; font-weight:500; }
.mobile-use p { color:#bcbcbc; }
.mobile-use-grid { display:grid; grid-template-columns:1fr 1fr; gap:34px; }
.mobile-steps { list-style:none; counter-reset:step; display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin-bottom:24px; }
.mobile-steps li { counter-increment:step; }
.mobile-steps li::before { content:"0" counter(step); display:block; color:#aaa; font-size:13px; margin-bottom:12px; }
.mobile-steps strong { font-weight:500; display:block; font-size:16px; margin-bottom:8px; }
.mobile-steps span { display:block; color:#bcbcbc; font-size:14px; }
.mobile-footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:14px; margin-top:56px; padding:22px 0; border-top:1px solid var(--border); color:#aaa; font-size:12px; }
.mobile-license-intro { padding-bottom:10px; }
.license-entry { padding:24px 0; border-bottom:1px solid var(--border); }
.license-entry h2 { font-size:22px; font-weight:500; margin-bottom:12px; }
.license-entry p { color:#bcbcbc; margin:10px 0; }
.license-links { display:flex; flex-wrap:wrap; gap:12px 24px; font-size:14px; }
@media(max-width:720px) { .mobile-header,.mobile-main,.mobile-footer { width:calc(100% - 36px); }.mobile-header { padding-block:20px; gap:16px; }.mobile-header nav { gap:14px; font-size:13px; }.mobile-intro { padding-top:40px; }.mobile-downloads,.mobile-use-grid,.mobile-steps { grid-template-columns:1fr; gap:20px; }.mobile-card { padding:24px; }.mobile-lede { font-size:16px; }.mobile-use { margin-top:32px; }.mobile-steps li { border-bottom:1px solid var(--border-soft); padding-bottom:18px; }.mobile-steps li:last-child { border:0; }.mobile-footer { margin-top:40px; } }
