/* Soft sage and warm ivory; shared public/admin finishing layer. */
:root{--polish-page:#f7f8f2;--polish-surface:#fffefa;--polish-tint:#f0f5eb;--polish-tint-end:#fafbf7;--polish-line:#dce5d5;--polish-ink:#244c38;--polish-muted:#60735b;--polish-shadow:0 4px 16px rgba(32,62,43,.045)}
html[data-theme=dark]{--polish-page:#111b16;--polish-surface:#1d2b23;--polish-tint:#25382b;--polish-tint-end:#1d2b23;--polish-line:#405443;--polish-ink:#e5eee5;--polish-muted:#b5c7af;--polish-shadow:0 4px 16px rgba(0,0,0,.12)}
body{background:var(--polish-page)!important;color:var(--polish-ink)!important}.app{background:var(--polish-page)!important;--finish-bg:var(--polish-page);--finish-card:var(--polish-surface);--finish-soft:var(--polish-tint);--finish-active:var(--polish-tint);--finish-line:var(--polish-line);--finish-muted:var(--polish-muted)}
.app-header{box-shadow:0 5px 18px rgba(25,51,50,.12);border:1px solid #ffffff1c}.app-header .brand{line-height:1.35}.app-header .brandicon{box-shadow:0 2px 8px #0b302a1a}.app-header .app-menu-toggle,.app-header .install-app-btn{background:#ffffff0b;border-color:#ffffff60}.app-header .app-menu-toggle:hover,.app-header .install-app-btn:hover{background:#ffffff1f}
#main>.top{background:transparent!important}.top .search{background:var(--polish-surface)!important;border-color:var(--polish-line);box-shadow:var(--polish-shadow)}.top .search:focus-within{border-color:#8baa7d;box-shadow:0 0 0 3px #8baa7d22}.top .tabs{gap:8px}.top .tab{background:var(--polish-surface);border-color:var(--polish-line);color:var(--polish-ink)}.top .tab:not(.active):hover{background:var(--polish-tint)}.top .tab.active{background:#315d44!important;border-color:#315d44;color:#fff!important}.titlebar .pill{background:var(--polish-tint);border:1px solid var(--polish-line);color:var(--polish-ink);font-weight:600}
#songs .song{background:linear-gradient(115deg,var(--polish-surface) 48%,var(--polish-tint-end))!important;border:1px solid var(--polish-line)!important;border-left:1px solid var(--polish-line)!important;box-shadow:var(--polish-shadow);border-radius:14px}#songs .song:hover{background:var(--polish-tint)!important;border-color:#a1b995!important}#songs .songart{background:var(--polish-tint)!important;border:1px solid var(--polish-line);border-radius:11px;color:#416b50}#songs .songname{line-height:1.55}#songs .sub{color:var(--polish-muted)!important;margin-top:4px}#songs .heart{color:#55764b;min-width:36px;min-height:40px}#songs .heart.fav{color:#a33d5a}.song-page-buttons button{background:var(--polish-surface);border-color:var(--polish-line)}.song-page-buttons button[aria-current=page]{background:#315d44;color:#fff}.song-page-summary,.disclaimer{color:var(--polish-muted)!important}
.bible-language,.bible-testament,.bible-book,.bible-saved-card,.profile-card,.gallery-tile,.music-row{box-shadow:var(--polish-shadow);border-color:var(--polish-line)!important}.bible-language,.bible-testament,.bible-book{border-left-width:1px!important;background:linear-gradient(115deg,var(--polish-surface) 45%,var(--polish-tint-end))!important}.bible-quick-jump{background:var(--polish-tint)!important;box-shadow:none}.bible-verse-list,.lyrics{box-shadow:var(--polish-shadow)!important}.switch{background:var(--polish-tint)!important;border:1px solid var(--polish-line)}.song-credits{background:var(--polish-tint)!important}.profile-card>summary:hover{background:var(--polish-tint);border-radius:14px}.profile-copy{color:var(--polish-ink)}.gallery-tile strong{background:var(--polish-surface);font-size:13px;line-height:1.5}.gallery-more{background:#315d44}.music-compact-toolbar{align-items:center}.music-add-button{min-height:42px}.music-row.current{background:var(--polish-tint)!important}.music-download-row .remote-download-button{border-color:#b4c7a9;color:var(--polish-ink)!important}.empty{background:var(--polish-tint)!important;color:var(--polish-muted)!important}
.bottom{background:var(--polish-surface)!important;border-color:var(--polish-line);box-shadow:0 5px 22px rgba(32,62,43,.09)}.bottom .nav{color:var(--polish-muted)!important}.bottom .nav.active{background:var(--polish-tint)!important;color:var(--polish-ink)!important}.app-menu{background:var(--polish-surface)!important;color:var(--polish-ink)!important}.app-menu-head{background:var(--polish-tint)!important;border-color:var(--polish-line)}.app-menu-links button{color:var(--polish-ink)!important}.app-menu-links button>span{background:var(--polish-tint)!important;color:var(--polish-ink)!important}.app-menu-links button:hover{background:var(--polish-tint)!important}.app-menu-footer a{color:var(--polish-ink);text-underline-offset:3px}
/* Studio: retain full-width workspace and clearly labelled selection controls. */
.shell .main{color:var(--polish-ink)}.shell .card{border-color:var(--polish-line);box-shadow:var(--polish-shadow);background:var(--polish-surface)}.shell .muted,.shell .song-updated{color:var(--polish-muted)}.shell .toolbar{background:var(--polish-tint-end);border-color:var(--polish-line);box-shadow:none}.shell .item{border-color:var(--polish-line)}.shell .pill{background:var(--polish-tint);color:#315d44}.shell .stat{background:linear-gradient(120deg,var(--polish-surface),var(--polish-tint-end));border-top-width:1px}.shell .side{box-shadow:4px 0 18px #183b2a0a}.shell input:not([type=checkbox]),.shell select,.shell textarea{border-color:#c7d5be;background:var(--polish-surface)}.shell .field label,.shell label{color:#395b3c}.shell .download-editor-slot{background:var(--polish-tint-end)}
html[data-theme=dark] #songs .heart,html[data-theme=dark] #songs .songart{color:#b5cda7}html[data-theme=dark] #songs .heart.fav{color:#f1a8bc}html[data-theme=dark] #songs .song:hover{border-color:#6c8e62!important}html[data-theme=dark] .app-menu-head small,html[data-theme=dark] .app-menu-links b{color:var(--polish-muted)}
@media(max-width:650px){.songs{gap:10px}#songs .song{border-radius:12px}#songs .songart{border-radius:10px}.top .tabs{gap:7px}.gallery-tile strong{font-size:12px}.app-menu-links button{min-height:48px}.app-menu-head{padding-top:max(22px,env(safe-area-inset-top))}}

/* Mobile app bar spans the screen; padding belongs inside the header. */
@media(max-width:650px){
 .app-header{width:100%;max-width:none;margin:0;border:0;border-radius:0;box-sizing:border-box;padding:calc(12px + env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) 12px max(14px,env(safe-area-inset-left,0px));box-shadow:0 2px 8px rgba(25,51,50,.1)}
 .app-header .headline{width:100%;max-width:none;margin:0}
}
