/* Availability stays optional; existing viewer and access policies are preserved. */
.availability{margin:24px 0;border:1px solid var(--line);border-radius:12px;background:var(--surface);scroll-margin-top:24px}
.availability>details>summary{cursor:pointer;min-height:56px;padding:15px 20px;font-weight:600;font-size:14px}
.availability-hint{float:right;color:var(--muted);font-size:12px;font-weight:400}
.availability-body{padding:0 20px 22px}
.availability-note{color:var(--muted);font-size:13px;line-height:1.7;margin:4px 0 22px;max-width:850px}
.availability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.availability-grid article{min-width:0}
.availability-label{color:var(--cyan);font-size:10px;letter-spacing:1px;font-weight:650;margin:0 0 8px}
.availability-grid h2{font-size:17px;line-height:1.4;margin:0 0 10px}
.availability-grid article>p:not(.availability-label){color:var(--muted);font-size:13px;line-height:1.8}
.availability-grid strong{color:var(--text);font-weight:600}
.availability-grid a,.availability-shortcut{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--cyan);font-size:13px;text-decoration:underline;text-underline-offset:4px}
.availability-shortcut{margin-top:10px;flex-wrap:wrap}
.viewer-fallbacks{border-top:1px solid var(--line);margin-top:22px;padding-top:10px}
.viewer-fallbacks summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:14px}
.viewer-fallbacks p,.viewer-fallbacks li{color:var(--muted);font-size:13px;line-height:1.8}
.viewer-fallbacks li{margin-bottom:10px}
.readiness-checklist summary{cursor:pointer;min-height:44px;padding:10px 0;color:var(--cyan);font-size:13px}
.readiness-checklist ul{padding-left:20px;color:var(--muted);font-size:13px;line-height:1.8}
.viewer-fallbacks a{display:inline-flex;align-items:center;min-height:44px;color:var(--cyan);text-decoration:underline;text-underline-offset:4px}
.availability :is(a,summary):focus-visible,.availability-shortcut:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
@media(max-width:760px){.availability-grid{grid-template-columns:1fr;gap:20px}.availability-grid article+article{border-top:1px solid var(--line);padding-top:20px}.availability-hint{display:block;float:none;padding-left:18px;margin-top:2px}.availability-body{padding:0 18px 18px}.viewer-fallbacks ul{padding-left:20px}}
