/* Viewport-stable page background and a readable footer on every route. */
html{min-height:100%;background:var(--bg)}
body{min-height:100vh;min-height:100dvh;isolation:isolate;background-repeat:no-repeat;background-attachment:fixed;background-size:100vw 100vh}
@supports(height:100dvh){body{background-size:100vw 100dvh}}
body::before{z-index:-1}
.main-shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;min-width:0}
.topbar{flex-shrink:0}
.main-shell>main{flex:1;width:100%;display:flex;flex-direction:column;min-width:0}
main>footer{margin-top:auto;flex-shrink:0;flex-wrap:wrap;gap:12px 16px}
footer .footer-credit{display:inline-flex;align-items:center;gap:6px;font-size:11px;line-height:1.8;color:var(--muted)}
footer .footer-credit>span{margin-left:0}
footer .footer-credit a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
@media(max-width:560px){
 main>footer{padding-top:18px;padding-bottom:18px;justify-content:space-between}
 footer .footer-credit{flex-basis:100%;margin-left:0;justify-content:center;min-height:32px}
}

/* Language follows the theme panel and spans the full settings grid. */
.settings-grid>.language-panel{grid-column:1/-1;min-width:0}.language-panel select{width:100%;max-width:100%}

#existing-dialog{max-width:650px;width:calc(100% - 32px);max-height:calc(100dvh - 32px);overflow:auto;padding:30px}#existing-dialog>h2{padding-right:25px}#existing-dialog>p{line-height:1.8}.existing-copy{margin:16px 0;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--input)}.existing-copy h3{margin:0 0 10px;overflow-wrap:anywhere}.existing-copy p{font-size:12px;line-height:1.8}.existing-copy .primary{margin:6px 9px 4px 0}.job-status.paused{background:var(--accent-dim);color:var(--accent)}@media(max-width:560px){#existing-dialog{padding:24px 18px}.existing-copy{padding:14px}.existing-copy .primary{width:100%;white-space:normal}}
/* Library direct actions and ephemeral guest disclosure. */
.guest-policy{margin:0 0 24px;padding:16px 20px;border:1px solid var(--accent-line);border-radius:10px;background:var(--accent-dim);font-size:12px;line-height:1.8}.guest-policy strong{color:var(--accent)}.guest-policy p{margin:5px 0}.guest-policy small{color:var(--muted)}.guest-warning{font-size:11px;line-height:1.8;color:var(--muted);margin:10px 0}.library-track{cursor:default;flex-wrap:wrap}.library-track .track-name{min-width:70px;flex:1}.track-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.track-actions a,.track-actions button{min-height:40px;border:1px solid var(--line);border-radius:6px;padding:8px 10px;display:inline-flex;align-items:center;gap:5px;font-size:10px}.track-actions a{color:var(--accent);border-color:var(--accent-line)}.track-actions svg{width:13px;height:13px}.track-delete,.danger-text{color:var(--muted)}.track-delete:hover,.danger-text:hover{color:#ff748c;border-color:#ff748c}.collection-footer,.job-actions{flex-wrap:wrap}#delete-dialog{width:min(440px,calc(100% - 32px));padding:28px;background:var(--paper);color:var(--ink);border:1px solid var(--accent-line);border-radius:14px}#delete-dialog h2{font-size:22px;margin:0 0 16px}#delete-dialog p{color:var(--muted);font-size:13px;line-height:1.8}.delete-dialog-actions{display:flex;justify-content:flex-end;gap:20px;margin-top:24px}.danger-button{background:#ff748c;color:#240810}
@media(max-width:560px){.track-actions{width:100%;justify-content:flex-end;gap:10px;margin-top:3px}.track-actions a,.track-actions button{min-height:44px;padding:10px 14px;font-size:11px}.collection-footer{gap:4px 14px}.guest-policy{padding:12px 14px;font-size:11px}.guest-policy p{line-height:1.8}}

