.guide-page { background: #050b15; }
.guide-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:calc(20px + env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) 20px max(20px,env(safe-area-inset-left)); border-bottom:1px solid var(--line); }
.guide-header .brand { display:inline-flex; align-items:center; min-height:44px; min-width:44px; }
.guide-main { box-sizing:border-box; width:min(100%,calc(var(--guide-width,780px) + max(20px,env(safe-area-inset-left)) + max(20px,env(safe-area-inset-right)))); margin:0 auto; padding:24px max(20px,env(safe-area-inset-right)) 64px max(20px,env(safe-area-inset-left)); }
.guide-main h1 { font-size:clamp(2rem,7vw,3.8rem); }
.guide-main h2 { font-size:clamp(1.7rem,6vw,2.5rem); margin-bottom:24px; }
.guide-main p { line-height:1.8; margin:20px 0; color:var(--muted); }
.guide-main a:not(.button) { color:var(--teal); text-decoration:underline; text-underline-offset:4px; }
.guide-main a { overflow-wrap:anywhere; }
.guide-main nav a,.guide-main .text-link { min-height:44px; display:inline-flex; align-items:center; }
.guide-breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:32px; font-size:.875rem; }
.guide-contents { display:flex; flex-direction:column; align-items:flex-start; margin:28px 0; padding:20px; border:1px solid var(--line); border-radius:16px; }
.guide-main section { padding-top:40px; scroll-margin-top:20px; }
.guide-steps { padding-left:24px; line-height:1.8; }
.guide-steps li { padding:0 0 20px 8px; }
.guide-screen { width:min(100%,280px); margin:28px auto; }
.guide-screen img { display:block; width:100%; height:auto; border-radius:20px; }
.guide-screen figcaption { font-size:.875rem; line-height:1.6; margin-top:12px; color:var(--muted); }
.guide-main details { padding:12px 0; border-bottom:1px solid var(--line); }
.guide-main summary { min-height:44px; padding:12px 0; cursor:pointer; line-height:1.6; }
@media(min-width:760px) { .guide-main { padding-top:40px; } .guide-contents { flex-direction:row; flex-wrap:wrap; column-gap:24px; } }
