.initial-setup-dialog { width:min(100%,480px); max-width:100%; height:100dvh; max-height:100dvh; margin:auto; padding:0; border:0; border-radius:0; outline:none; background:var(--panel); color:var(--text); overflow:hidden; }
.initial-setup-dialog::backdrop { background:color-mix(in srgb,var(--text) 48%,transparent); }
.initial-setup-panel { display:flex; flex-direction:column; width:100%; height:100%; min-height:0; padding-top:env(safe-area-inset-top,0px); }
.initial-setup-toolbar { display:flex; align-items:center; justify-content:space-between; flex:none; min-height:60px; padding:8px 16px; gap:12px; }
.initial-setup-toolbar button { min-width:48px; width:auto; }
.initial-setup-count { color:var(--muted); font-size:var(--fs-body); font-variant-numeric:tabular-nums; }
.initial-setup-progress { display:block; appearance:none; border:0; height:4px; width:calc(100% - 48px); flex:none; margin:0 24px; color:var(--gold); background:var(--panel3); border-radius:var(--r-full); overflow:hidden; }
.initial-setup-progress::-webkit-progress-bar { background:var(--panel3); }
.initial-setup-progress::-webkit-progress-value { background:var(--gold); border-radius:var(--r-full); }
.initial-setup-progress::-moz-progress-bar { background:var(--gold); border-radius:var(--r-full); }
.initial-setup-body { flex:1 1 auto; min-height:0; overflow:auto; overscroll-behavior:contain; padding:24px; scroll-padding-block:16px; }
.initial-setup-body h2 { margin:0 0 16px; font-size:var(--fs-headline); line-height:1.35; font-weight:700; word-break:keep-all; }
.initial-setup-body > p { margin:0 0 20px; color:var(--text-sub); font-size:var(--fs-body-l); line-height:1.65; }
.initial-setup-field { display:flex; flex-direction:column; align-items:stretch; gap:8px; margin:24px 0 12px; font-size:var(--fs-body-l); color:var(--text); }
.initial-setup-field input { width:100%; min-width:0; min-height:52px; padding:14px; font-size:var(--fs-title-m); border-radius:var(--r-md); background:var(--panel2); border:1px solid var(--line); color:var(--text); }
.initial-setup-dialog .initial-setup-help { margin:8px 0 0; color:var(--muted); font-size:var(--fs-body); line-height:1.6; overflow-wrap:anywhere; }
.initial-setup-choices { display:grid; gap:10px; padding:0; margin:20px 0; border:0; min-width:0; }
.initial-setup-choices legend { padding:0; margin:0 0 10px; font-size:var(--fs-body-l); color:var(--text); }
.initial-setup-choice { display:flex; align-items:center; gap:12px; min-height:76px; margin:0; padding:16px; border:2px solid transparent; border-radius:var(--r-lg); background:var(--panel2); cursor:pointer; }
.initial-setup-choice:has(input:checked) { border-color:var(--gold); background:var(--primary-bg); }
.initial-setup-choice input { width:20px; height:20px; flex:none; padding:0; margin:0; accent-color:var(--gold); }
.initial-setup-choice strong,.initial-setup-choice small { display:block; }
.initial-setup-choice strong { color:var(--text); font-size:var(--fs-title-m); font-weight:600; }
.initial-setup-choice small { color:var(--text-sub); font-size:var(--fs-body); margin-top:4px; line-height:1.5; }
.initial-setup-routes { padding:16px; border-radius:var(--r-md); background:var(--panel2); }
.initial-setup-routes h3,.initial-setup-existing h3 { margin:0 0 8px; font-size:var(--fs-body-l); color:var(--text-sub); font-weight:500; }
.initial-setup-routes p { margin:0; font-family:var(--font-code); font-size:var(--fs-title-m); line-height:1.65; overflow-wrap:anywhere; }
.initial-setup-existing { margin-top:20px; }
.initial-setup-existing ul { margin:0; padding-left:20px; font-size:var(--fs-body-l); line-height:1.8; color:var(--text-sub); }
.initial-setup-body .initial-setup-feedback { margin:16px 0 0; color:var(--text-sub); }
.initial-setup-feedback:empty { display:none; }
.initial-setup-body .initial-setup-feedback[data-error="true"] { color:var(--red); }
.initial-setup-actions { display:grid; flex:none; gap:8px; padding:12px 24px calc(12px + var(--safe-b)); background:var(--panel); }
.initial-setup-actions .initial-setup-help { margin:0 0 4px; }
.initial-setup-dialog button { font-family:var(--font-ui); font-size:var(--fs-title-m); cursor:pointer; }
.initial-setup-primary,.initial-setup-secondary { min-height:48px; border:0; border-radius:var(--r-md); padding:12px 16px; font-weight:600; }
.initial-setup-primary { width:100%; min-height:54px; background:var(--gold); color:var(--gold-ink); }
.initial-setup-secondary { background:transparent; color:var(--text-sub); }
.initial-setup-primary:disabled { background:var(--panel3); color:var(--muted); cursor:default; }
.initial-setup-secondary:disabled { color:var(--muted); cursor:default; }
.initial-setup-dialog button:not(:disabled):active { filter:brightness(.94); }
.initial-setup-dialog :is(button,input):focus-visible { outline:2px solid var(--gold); outline-offset:3px; }
.initial-setup-dialog h2:focus { outline:none; }
@media (prefers-reduced-motion:reduce) { .initial-setup-dialog * { animation:none; transition:none; scroll-behavior:auto; } }
