/* Stover Mennonite Church — fixed Quiet Field staff styling. No theme switching. */
:root, [data-bs-theme=light] {
 --stover-white:#fdfdfd;--stover-soft:#eeeeee;--stover-rust:#9a5b54;
 --stover-olive:#6c6e5e;--stover-ink:#272611;--stover-paper:#f9f8f4;
 --bs-body-color:var(--stover-ink);--bs-body-bg:var(--stover-paper);
 --bs-primary:var(--stover-olive);--bs-link-color:#505845;--bs-link-hover-color:var(--stover-rust);
 --bs-border-color:#d7d8ce;--bs-secondary-color:#596054;--bs-tertiary-bg:#f1f0ea;
}
html,body{min-height:100%}
body{background:var(--stover-paper)!important;color:var(--stover-ink);font-family:'Segoe UI',Arial,sans-serif;font-size:15px;line-height:1.6}
body a{color:#505845}body a:hover{color:var(--stover-rust)}
body h1,body h2,body h3,.navbar-brand,.card-header{font-family:Georgia,'Times New Roman',serif}
#wrapper{padding:0 32px 70px!important;max-width:1600px;margin:auto}
.main-nav{margin:0 -32px 34px!important;padding:20px max(32px,3vw) 22px!important;min-height:98px;background:var(--stover-paper)!important;border-bottom:1px solid #deded6;gap:20px;box-shadow:none;position:relative}
.main-nav.navbar-fixed{position:sticky;top:0;z-index:1020}
.main-nav .navbar-brand{font-size:27px;font-weight:400;line-height:1.15;letter-spacing:-.025em;color:var(--stover-ink);white-space:nowrap;margin-right:12px}
.main-nav .navbar-brand span{font-size:14px;letter-spacing:0;color:var(--stover-olive)}
.church-nav-link{font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;white-space:nowrap;color:var(--stover-rust)}
.main-nav .navbar-nav{gap:8px;align-items:center}
.main-nav .nav-link{font-size:12px;letter-spacing:.05em;font-weight:700;white-space:nowrap;padding:9px 12px!important;color:var(--stover-ink)}
.navbar .container-fluid{gap:15px}
.navbar-collapse{min-width:0;align-items:center;justify-content:space-between;gap:26px}
.navbar-collapse>div:first-child{min-width:0;overflow-wrap:anywhere;font-size:14px;color:#5d6355}
.navbar-collapse>div:last-child{flex:1;min-width:0}
.input-group .form-control,.form-control{border-radius:0!important;border-color:#c8cbc0;background:#fff;color:var(--stover-ink);min-height:39px}
.input-group-text{background:#eceee6;border-color:#c8cbc0}
.path{max-width:1440px;width:100%;margin:42px auto 40px;clear:both}
.card,.modal-content{background:#fff;border:1px solid #d7d9cd;border-radius:1px!important;box-shadow:0 7px 24px #27261107}
.card-header{font-size:21px;padding:20px 25px!important;background:#f1f1ea;border-color:#ddded5;color:var(--stover-ink)}
.card-body{padding:28px!important}
.btn{border-radius:0!important;font-size:12px;font-weight:650;letter-spacing:.035em;padding:10px 15px;line-height:1.3}
.btn-success,.btn-primary{background:var(--stover-olive)!important;border-color:var(--stover-olive)!important;color:#fff!important}
.btn-success:hover,.btn-primary:hover{background:#56594a!important;border-color:#56594a!important}
.btn-outline-primary{border-color:var(--stover-olive);color:#505845}
.btn-outline-primary:hover{background:var(--stover-olive);color:#fff}
.table-responsive{max-width:1440px;margin:34px auto 0;overflow-x:auto;border:1px solid #d9dcd1;background:#fff;box-shadow:0 7px 22px #27261107}
#main-table{margin:0;width:100%;min-width:780px;--bs-table-bg:#fff;--bs-table-hover-bg:#f4f4ee;--bs-table-border-color:#e3e5dd;--bs-table-color:var(--stover-ink);font-size:14px;line-height:1.55}
#main-table thead th{background:#e9ebe2!important;padding:18px 14px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#4e554a;vertical-align:middle;border-bottom:2px solid #d1d4c7;white-space:nowrap}
#main-table tbody td{padding:15px 14px;vertical-align:middle;border-color:#e3e5dd}
#main-table tr[hidden]{display:none!important}
#main-table .filename{display:flex;align-items:center;gap:13px;min-width:180px}
#main-table .filename a{font-weight:650;color:#4b5340;text-decoration:none;overflow-wrap:anywhere}
#main-table .filename a:hover{text-decoration:underline;color:var(--stover-rust)}
#main-table td:last-child{min-width:175px}
#main-table td:last-child a{display:inline-block;margin:2px 6px 2px 0}
.message{max-width:1440px;margin:22px auto;padding:12px 18px;border:1px solid #bec3b1;background:#e9eee3;color:#3e5835}
.message.error{background:#fbebe7;border-color:#dbb9b1;color:#7e3935}
/* Native no-dependency icon fallbacks — avoids icon font and font CDN. */
i.fa:before{font-style:normal;font-family:'Segoe UI Symbol','Apple Symbols',sans-serif;display:inline-block;min-width:1.05em;font-weight:400;content:'•'}
i.fa{font-style:normal;margin-right:5px;color:var(--stover-olive)}
.fa-home:before{content:'⌂'!important}.fa-folder-o:before{content:'▣'!important}.fa-cloud-upload:before,.fa-arrow-circle-o-up:before{content:'↑'!important}
.fa-plus-square:before{content:'+'!important}.fa-search:before{content:'⌕'!important}.fa-user-circle:before{content:'◉'!important}.fa-sign-out:before{content:'↪'!important}
.fa-file-pdf-o:before,.fa-file-text-o:before,.fa-file-o:before,.fa-file-word-o:before,.fa-file-excel-o:before,.fa-file-powerpoint-o:before{content:'▤'!important}
.fa-music:before,.fa-headphones:before{content:'♫'!important}.fa-file-video-o:before{content:'▷'!important}.fa-picture-o:before,.fa-file-image-o:before{content:'▧'!important}
.fa-chevron-circle-left:before,.fa-undo:before{content:'←'!important}.fa-times-circle:before,.fa-times-circle-o:before,.fa-window-close:before{content:'×'!important}
.fa-trash:before,.fa-trash-o:before{content:'✕'!important}.fa-pencil-square-o:before,.fa-pencil-square:before{content:'✎'!important}.fa-check-circle:before,.fa-check-square:before{content:'✓'!important}
.fa-download:before,.fa-cloud-download:before{content:'↓'!important}.fa-link:before,.fa-external-link-square:before{content:'↗'!important}.fa-cog:before{content:'⚙'!important}
.fa-files-o:before{content:'▤'!important}.fa-floppy-o:before{content:'▣'!important}.fa-exclamation-circle:before,.fa-question-circle:before,.fa-info-circle:before{content:'ⓘ'!important}
/* Login styling */
.fm-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#efeee7!important}
.fm-login-page #wrapper{width:100%}.h-100vh{min-height:90vh;display:flex;align-items:center;justify-content:center}
.card-wrapper{width:min(100%,480px);margin:auto;padding:22px}
.fm-login-page .card.fat{box-shadow:0 20px 70px #27261116}
.fm-login-page .card.fat .card-body{padding:42px!important}
.fm-login-page .card-title{font-size:38px;font-weight:400;letter-spacing:-.035em;color:var(--stover-ink)}
.church-login-kicker{font-size:10px;letter-spacing:.2em;color:var(--stover-rust);font-weight:800;text-transform:uppercase;margin-bottom:12px}
.fm-login-page .footer{padding-top:22px;font-size:11px}
/* Upload card */
.church-upload-screen{max-width:920px;margin-top:45px}.church-upload-tip{font-size:13px;color:#6b6e62;margin:15px 0 25px}
.church-upload-target{border:2px dashed #9fa597;background:#f4f5ee;padding:44px 25px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;color:#4d5646}
.church-upload-target>span{font-size:35px;line-height:1;color:var(--stover-olive)}.church-upload-target strong{font:normal 24px Georgia,serif}.church-upload-target small{color:#666b61}
.church-upload-target:hover,.church-upload-target.dragging{border-color:var(--stover-rust);background:#f4f0eb}
#church-upload-input{display:block;margin:18px 0;max-width:100%}.church-upload-button{margin:6px 0 15px}
#church-upload-message{font-size:13px;color:#545b4e}
#church-upload-progress{display:block;width:100%;height:12px;accent-color:var(--stover-olive);margin:16px 0}
#church-upload-results{margin-top:12px}.church-upload-result{padding:10px 12px;border-bottom:1px solid #dde0d6;font-size:13px}
.church-upload-result.success{color:#37603b}.church-upload-result.error{color:#9d3832;background:#fdf4f0}
.hidden,[hidden]{display:none!important}.modal{z-index:1060}
@media (max-width:900px){#wrapper{padding:0 18px 50px!important}.main-nav{margin:0 -18px 30px!important;padding:19px 18px!important;min-height:83px;flex-wrap:wrap}.main-nav .navbar-brand{font-size:24px}.main-nav .navbar-brand span{display:block}.main-nav .navbar-collapse{width:100%}.navbar .nav-link{font-size:13px}.path{margin:28px auto}.card-body{padding:20px!important}.table-responsive{margin:22px auto}}
@media (max-width:550px){.main-nav .navbar-brand{font-size:21px}.church-nav-link{font-size:10px}.card-header{font-size:19px}#main-table{font-size:13px}.church-upload-target{padding:35px 15px}.fm-login-page .card.fat .card-body{padding:28px!important}}

/* Compact help page, consistent with the church's Quiet Field palette. */
.church-help-page{padding:32px 8px 55px}
.church-help-eyebrow{color:var(--stover-rust);font-weight:750;letter-spacing:.13em;font-size:11px;margin-bottom:10px}
.church-help-heading{font:normal 30px/1.2 Georgia,'Times New Roman',serif;margin-bottom:18px}
.church-help-heading-small{font-size:16px;font-weight:750;margin-bottom:8px;color:var(--stover-ink)}
.church-help-contact a{font-size:20px;font-weight:650;overflow-wrap:anywhere}
.church-help-back{font-family:'Segoe UI',Arial,sans-serif;font-size:12px;color:var(--stover-rust);text-decoration:none;white-space:nowrap}
.church-help-page hr{border-color:#d4d9ce;margin:26px 0}
.church-hash-tool{background:#f6f7f2;border:1px solid #d8dcd2;padding:20px}
.church-hash-input{max-width:400px;flex:1;min-width:220px}
#js-pwd-result{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;overflow-wrap:anywhere}
