/* Shared components maintained by Freedom Render Farm. */
.card { display:flex; flex-direction:column; min-width:0; background:#fff; border:1px solid #ddd; border-radius:14px; overflow-wrap:anywhere; }
.card-header,.card-body,.card-footer { padding:24px; } .card-header { border-radius:inherit; border-bottom:1px solid #ddd; } .card-body { flex:1 1 auto; } .card-footer { border-top:1px solid #ddd; }
.card-title { margin-bottom:16px; }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:6px; padding:10px 18px; border:1px solid transparent; border-radius:8px; background:transparent; color:inherit; font-size:14px; line-height:1.5; font-weight:600; text-align:center; vertical-align:middle; text-decoration:none; transition:background .15s,border-color .15s; }
.btn:hover { filter:brightness(1.08); } .btn:disabled,.btn.disabled { opacity:.5; pointer-events:none; } .btn-sm { padding:6px 12px; font-size:12px; } .btn-block { width:100%; }
.btn-primary { background:#3d2d20; border-color:#80552f; color:#ffc18b; }.btn-secondary { background:#373737; border-color:#666; color:#eee; }
.btn-danger { background:#542c29; border-color:#8e544c; color:#ffd1cb; }.btn-success { background:#254c35; border-color:#48735a; color:#b9e8cb; }.btn-warning { background:#654923; color:#ffe0b0; }
.btn-outline-primary { border-color:#b9773e; color:#e9b27e; }.btn-outline-secondary,.btn-outline-dark { border-color:#777; color:inherit; }.btn-outline-danger { border-color:#ad6257; color:#eea89d; }.btn-link { color:#bc7439; }
.btn-close { width:24px; height:24px; border:0; background:transparent; color:inherit; padding:0; cursor:pointer; }.btn-close::before { content:'×'; font-size:24px; line-height:1; }
.form-control,.form-select { display:block; width:100%; min-height:44px; padding:10px 13px; border:1px solid #bbb; border-radius:8px; background:#fff; color:#333; font-size:14px; line-height:1.5; }
.form-control::placeholder { color:#929292; }.form-control:focus,.form-select:focus { outline:2px solid #e5a05f55; outline-offset:1px; border-color:#e5a05f; }.form-control:disabled,.form-select:disabled { opacity:.55; }
.form-control-sm,.form-select-sm { min-height:34px; padding:6px 10px; font-size:12px; }.form-group { margin-bottom:16px; }.form-label { font-size:13px; }.is-invalid { border-color:#d4776e; }
.form-check { position:relative; min-height:24px; padding-left:26px; }.form-check-input { float:left; margin:4px 0 0 -26px; width:17px; height:17px; accent-color:#c58245; cursor:pointer; }.form-check-label { font-size:14px; cursor:pointer; }
.form-switch { padding-left:46px; }.form-switch .form-check-input { appearance:none; width:34px; height:20px; margin-left:-46px; border:1px solid #777; background:#555; border-radius:20px; position:relative; }.form-switch .form-check-input::before { content:''; position:absolute; width:14px; height:14px; border-radius:50%; background:#eee; top:2px; left:3px; }.form-switch .form-check-input:checked { background:#b5743d; }.form-switch .form-check-input:checked::before { left:15px; }
.input-group { display:flex; align-items:stretch; }.input-group>.form-control { flex:1 1 auto; width:1%; border-radius:8px 0 0 8px; }.input-group-text { display:flex; align-items:center; padding:8px 12px; background:#eee; border:1px solid #bbb; border-left:0; border-radius:0 8px 8px 0; }
.table { width:100%; margin-bottom:16px; color:inherit; }.table th,.table td { padding:12px 16px; border-bottom:1px solid #ddd; vertical-align:middle; }.table th { font-size:12px; font-weight:600; }.table-sm th,.table-sm td { padding:8px; }.table-responsive { position:relative; max-width:100%; overflow-x:auto; }
.badge { display:inline-block; padding:5px 9px; border-radius:6px; font-size:11px; font-weight:600; line-height:1.4; }.badge-success { background:#244834; color:#b6e2c7; }.badge-danger { background:#532f2c; color:#ffc0b7; }
.alert { position:relative; padding:14px 18px; margin-bottom:20px; border:1px solid #b7c3cb; border-radius:8px; background:#e9eff2; color:#293c48; font-size:14px; }.alert-success { background:#24392d; border-color:#41664d; color:#b9e3c5; }.alert-danger { background:#402a28; border-color:#78504b; color:#ffc1b9; }.alert-warning { background:#362b22; border-color:#66503b; color:#f0c19a; }.alert-info { background:#24313b; border-color:#465e71; color:#c3dbea; }.alert-dismissible { padding-right:48px; }.alert-dismissible .btn-close { position:absolute; top:12px; right:12px; }
.pagination { display:flex; flex-wrap:wrap; gap:6px; list-style:none; padding:0; margin:16px 0; }.page-link { display:flex; align-items:center; justify-content:center; min-width:34px; min-height:34px; padding:5px 10px; border:1px solid #80552f; border-radius:6px; color:#dca16b; }.page-item.active .page-link { background:#3d2d20; }.page-item.disabled .page-link { opacity:.5; }
.navbar { position:relative; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; padding:12px 16px; }.navbar-brand { display:flex; align-items:center; }.navbar-nav { display:flex; flex-direction:column; list-style:none; margin:0; padding:0; }.nav-link { display:block; padding:10px 16px; color:inherit; }.navbar-collapse { flex-basis:100%; }.navbar-toggler { padding:8px 12px; background:#292929; border:1px solid #777; border-radius:6px; color:#fff; }.navbar-toggler-icon::before { content:'☰'; font-size:24px; }
.collapse:not(.show) { display:none; }.collapsing { height:0; overflow:hidden; transition:height .25s ease; }.fade { transition:opacity .15s; }.fade:not(.show) { opacity:0; }
.dropdown { position:relative; }.dropdown-menu { display:none; position:absolute; top:100%; left:0; z-index:1000; min-width:180px; padding:6px; margin:4px 0; border:1px solid #555; border-radius:8px; background:#292929; color:#eee; list-style:none; box-shadow:0 8px 24px #0005; }.dropdown-menu.show { display:block; }.dropdown-menu-end { left:auto; right:0; }.dropdown-item { display:block; width:100%; border:0; border-radius:4px; padding:8px 12px; background:transparent; color:inherit; text-align:left; font-size:13px; }.dropdown-item:hover,.dropdown-item:focus { background:#444; }.dropdown-toggle::after { content:'▾'; margin-left:6px; }
.carousel { position:relative; }.carousel-inner { position:relative; width:100%; overflow:hidden; border-radius:inherit; }.carousel-item { display:none; position:relative; width:100%; }.carousel-item.active { display:block; }.carousel-item img { width:100%; }.carousel-caption { position:absolute; inset:auto 14% 20px; color:#fff; }.carousel-control-prev,.carousel-control-next { position:absolute; top:0; bottom:0; display:flex; align-items:center; justify-content:center; width:12%; background:transparent; border:0; color:#fff; z-index:2; }.carousel-control-prev { left:0; }.carousel-control-next { right:0; }.carousel-control-prev-icon::before { content:'‹'; font-size:36px; }.carousel-control-next-icon::before { content:'›'; font-size:36px; }
@media(min-width:992px) { .navbar-expand-lg .navbar-collapse { display:flex!important; flex-basis:auto; }.navbar-expand-lg .navbar-toggler { display:none; } }
#rf-notices { position:fixed; z-index:2000; bottom:24px; right:24px; width:min(360px,calc(100vw - 48px)); pointer-events:none; } #rf-notices .alert { box-shadow:0 6px 24px #0005; }
