/* Native dialog supplies focus containment, background inertness, and Escape dismissal. */
.quick-start-dialog { box-sizing:border-box; width:min(600px,calc(100vw - 24px)); max-height:calc(100dvh - 24px); overflow:auto; border:1px solid #d9e3ef; border-radius:16px; padding:24px; color:#193454; background:#fff; box-shadow:0 20px 70px #10243b40; }
.quick-start-dialog::backdrop { background:#10243b99; }
/* Only open dialogs use flex layout; closed native dialogs must remain hidden. */
.quick-start-dialog[open] { display:flex; flex-direction:column; }
.quick-start-dialog > header,.quick-start-dialog > footer { flex-shrink:0; }
.quick-start-dialog header,.quick-start-dialog footer,.quick-start-dialog footer > div { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.quick-start-dialog header h2 { font-size:1.25rem; margin:0; }
.quick-start-dialog h3 { font-size:1.15rem; }
.quick-start-dialog button { min-height:44px; padding:8px 14px; border:1px solid #c7d5e5; border-radius:8px; background:#f4f8fd; color:#193454; }
.quick-start-dialog button:focus-visible,.guide-help :focus-visible { outline:3px solid #1375df; outline-offset:3px; }
.quick-start-dialog [data-guide-next],.quick-start-dialog [data-guide-finish],.quick-start-dialog [data-guide-retry] { background:#1375df; color:white; }
.quick-start-dialog button:disabled { opacity:.55; }
.quick-start-dialog [hidden] { display:none !important; }
.quick-start-dialog [data-guide-progress],.quick-start-replay { color:#526a85; font-size:.875rem; margin-top:16px; }
.quick-start-content { min-height:0; overflow-y:auto; overscroll-behavior:contain; line-height:1.6; }
.quick-start-content img { display:block; width:100%; max-width:100%; height:auto; max-height:clamp(120px,23dvh,220px); object-fit:contain; margin:0 auto 14px; border-radius:12px; }
.quick-start-message { color:#a52828; }
.guide-help { position:relative; font-size:.875rem; }
.guide-help summary { cursor:pointer; padding:10px 6px; min-height:44px; }
.guide-help > button { position:absolute; top:100%; left:0; z-index:20; min-width:140px; min-height:44px; padding:10px; background:white; color:#193454; border:1px solid #c7d5e5; border-radius:8px; box-shadow:0 4px 18px #10243b20; }
@media(max-width:480px) { .quick-start-dialog { padding:16px; } .quick-start-dialog footer { flex-wrap:wrap; } .quick-start-dialog footer > div { flex-wrap:wrap; margin-left:auto; } }
