/* Personal Finance 2.16: optional first-run walkthrough; all five themes. */
.onboarding-panel{padding:17px 19px;border-radius:19px}
.onboarding-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.onboarding-head h2{margin:0;font-size:18px;letter-spacing:-.02em}
.onboarding-head>span{font-size:12px;color:var(--muted)}
.onboarding-track{height:5px;background:var(--panel2);border-radius:100px;overflow:hidden;margin:12px 0 10px}
.onboarding-track>span{display:block;height:100%;border-radius:100px;background:var(--mint);transition:width .18s ease}
.onboarding-steps{display:grid}
.onboarding-step{display:flex;align-items:center;gap:11px;padding:11px 1px;border-bottom:1px solid var(--border)}
.onboarding-step:last-child{border-bottom:0}
.onboarding-step-icon{display:grid;place-items:center;flex:none;width:27px;height:27px;border-radius:50%;
 background:var(--panel2);border:1px solid var(--border);font-size:12px;font-weight:780;color:var(--muted)}
.onboarding-step.done .onboarding-step-icon{background:var(--mint);border-color:var(--mint);color:var(--button-ink)}
.onboarding-step-body{display:grid;gap:3px}
.onboarding-step-body strong{font-size:13px;font-weight:750}
.onboarding-step-body small{font-size:11px;color:var(--muted);line-height:1.35}
.onboarding-step.done .onboarding-step-body strong{color:var(--muted)}
.onboarding-continue{width:100%;min-height:46px;display:flex;justify-content:center;align-items:center;margin-top:13px}
.onboarding-skip{display:block;margin:9px auto 0;padding:8px 12px;border:0;background:transparent;
 color:var(--muted);font-size:12px;cursor:pointer;min-height:35px}
.onboarding-skip:hover{text-decoration:underline}
.onboarding-skip:focus-visible,.onboarding-close:focus-visible{outline:2px solid var(--mint);outline-offset:2px}
.onboarding-finished{padding:16px 18px}
.onboarding-finished h2{font-size:16px}
.onboarding-finished p{font-size:13px;line-height:1.5;color:var(--muted);margin:9px 0 12px}
.onboarding-close{flex:none;width:30px;height:30px;border:0;background:transparent;
 color:var(--muted);font-size:23px;cursor:pointer;border-radius:8px}
.onboarding-finish-actions{display:flex;flex-wrap:wrap;gap:8px}
.onboarding-finish-actions .btn{min-height:43px;flex:1 1 135px}
.onboarding-preset-heading{font-size:14px;font-weight:770;color:var(--text);margin:17px 0 8px}
.onboarding-preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:6px}
.onboarding-preset{display:flex;align-items:center;gap:8px;min-height:44px;border:1px solid var(--border);
 border-radius:12px;padding:9px 10px;background:var(--panel2);font-size:12px;cursor:pointer}
.onboarding-preset:has(input:checked){border-color:var(--mint);background:var(--panel)}
.onboarding-preset input{width:17px;height:17px;min-width:17px;accent-color:var(--mint);cursor:pointer}
.onboarding-preset-name{min-width:0;display:flex;gap:6px;align-items:center;line-height:1.35}
.onboarding-preset-name svg{flex:none;width:17px;height:17px;color:var(--mint)}
@media(max-width:760px){
 .onboarding-panel{padding:15px 14px;border-radius:18px}
 .onboarding-head h2{font-size:17px}
 .onboarding-preset{padding:8px;font-size:12px;min-height:48px}
 .onboarding-preset-grid{gap:6px}
}
@media(max-width:350px){.onboarding-preset-grid{grid-template-columns:1fr}}

.onboarding-entry-placeholder{margin:9px 0 2px;font-size:13px;line-height:1.55;color:var(--muted)}
