/* YuVost Design B for native interactive screens only. PDF/export templates
   never load this file. The existing Bootstrap/Select2 behaviours stay intact. */
html.uv-native {
  --uvn-bg:#e9e9e1; --uvn-panel:#f8f7ef; --uvn-field:#fbfaf4;
  --uvn-ink:#20211d; --uvn-muted:#70736c; --uvn-line:#d9dacd;
  --uvn-yellow:#ead93f; --uvn-green:#347563; --uvn-red:#b65348;
  --uvn-shadow:0 10px 28px rgba(32,33,29,.04);
  background:var(--uvn-bg); color:var(--uvn-ink); color-scheme:light;
}
html.uv-native body {
  margin:0; background:var(--uvn-bg)!important; color:var(--uvn-ink);
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:13px; line-height:1.5; -webkit-font-smoothing:antialiased;
}
html.uv-native :is(h1,h2,h3,h4,h5,h6) {color:var(--uvn-ink); letter-spacing:-.025em; font-weight:650;}
html.uv-native :is(h1,h2) {line-height:1.2;}
html.uv-native a {color:var(--uvn-green); text-underline-offset:3px;}
html.uv-native a:hover {color:#245446;}
html.uv-native :focus-visible {outline:3px solid rgba(172,156,19,.6); outline-offset:3px;}
html.uv-native ::selection {background:#f5ec90; color:#20211d;}
html.uv-native .text-muted, html.uv-native .text-secondary {color:var(--uvn-muted)!important;}
html.uv-native .text-danger {color:var(--uvn-red)!important;}
html.uv-native .text-success {color:var(--uvn-green)!important;}
html.uv-native .text-primary {color:var(--uvn-green)!important;}
html.uv-native .text-gradient {background-image:none!important; background-clip:initial; -webkit-background-clip:initial; -webkit-text-fill-color:currentColor;}
html.uv-native .bg-primary {background-color:#20211d!important; color:#fff!important;}
html.uv-native .bg-primary :is(h1,h2,h3,h4,h5,h6) {color:#fff;}

/* Standalone native navigation; an embedded screen uses the contextual strip below. */
html.uv-native #sidenav-main {
  width:228px; max-width:228px; margin:12px!important; padding:10px 0;
  border:1px solid #292d3a; border-radius:18px!important;
  background:#111526!important; box-shadow:0 10px 30px rgba(17,21,38,.12);
}
html.uv-native #sidenav-main .sidenav-header {height:auto; min-height:68px;}
html.uv-native #sidenav-main .navbar-brand {display:flex; align-items:center; gap:8px; white-space:normal;}
html.uv-native #sidenav-main .navbar-brand span {color:#f8f7ef!important; font-weight:650;}
html.uv-native #sidenav-main .navbar-brand-img {padding:3px; background:var(--uvn-yellow); border-radius:7px;}
html.uv-native #sidenav-main :is(.navbar-collapse,.navbar-nav) {max-height:none;}
html.uv-native #sidenav-main .navbar-collapse {height:calc(100vh - 120px); overflow-y:auto;}
html.uv-native #sidenav-main .nav-link {
  min-height:36px; margin:2px 9px; padding:8px 10px; border-radius:9px;
  color:#c8ccd6!important; font-size:12.5px; line-height:1.35; background:transparent;
}
html.uv-native #sidenav-main .nav-link .nav-link-text {white-space:normal;}
html.uv-native #sidenav-main .nav-link:hover {background:rgba(255,255,255,.065)!important; color:#fff!important;}
html.uv-native #sidenav-main .nav-link.active {
  background:#282c39!important; color:#fff!important; box-shadow:inset 3px 0 var(--uvn-yellow);
}
html.uv-native #sidenav-main .nav-link.active i {color:var(--uvn-yellow)!important; opacity:1!important;}
html.uv-native #sidenav-main .nav-item h6 {margin:14px 18px 5px!important; padding:0!important; color:#8f94a5!important; font-size:10px; letter-spacing:.08em;}
html.uv-native #sidenav-main .uv-native-nav-create {display:inline-flex; align-items:center; justify-content:center; width:25px; height:25px; margin-right:13px!important; border-radius:7px; flex:0 0 25px; color:var(--uvn-yellow);}
html.uv-native #sidenav-main .uv-native-nav-create:hover {background:rgba(234,217,63,.15);}
html.uv-native #sidenav-main .uv-native-nav-create i {color:inherit!important;}
html.uv-native #sidenav-main .nav-item>div>.nav-link {flex:1; min-width:0;}
html.uv-native .main-content {margin-left:252px!important; padding:0 8px 30px; max-height:none!important;}
html.uv-native #navbarBlur {min-height:34px; margin:10px 8px!important; background:transparent!important;}
html.uv-native #navbarBlur .container-fluid {padding-left:8px!important; padding-right:8px!important;}
html.uv-native .container-fluid {max-width:1680px; padding-left:18px; padding-right:18px;}

/* Panels, document lists and summaries. Existing hidden/d-none rules are untouched. */
html.uv-native :is(.card,.modal-content) {
  border:1px solid var(--uvn-line); border-radius:17px; background:var(--uvn-panel);
  box-shadow:var(--uvn-shadow); color:var(--uvn-ink);
}
html.uv-native .card-header {padding:17px 19px 12px; border-bottom:1px solid #e2e2d7; background:transparent;}
html.uv-native .card-body {padding:18px 19px;}
html.uv-native .card-footer {padding:12px 19px; border-color:var(--uvn-line); background:#f0efe6;}
html.uv-native :is(.bg-light,.bg-gray-100) {background-color:var(--uvn-panel)!important;}
html.uv-native form.p-3.bg-light {padding:18px!important; border:1px solid var(--uvn-line); border-radius:16px!important; box-shadow:var(--uvn-shadow)!important;}
html.uv-native form.p-3.bg-light h5 {font-size:16px; margin-bottom:14px!important;}
html.uv-native .main-content>.container-fluid>.row {--bs-gutter-x:18px;}
html.uv-native :is(.summary,.summary>div,.account) {color:var(--uvn-ink);}
html.uv-native .summary>div, html.uv-native .account {border:1px solid var(--uvn-line); background:#f0efe6!important; border-radius:12px;}
html.uv-native .wrap {max-width:1380px; margin:22px auto;}
html.uv-native body>main:not(.main-content) {max-width:1040px; margin:24px auto; padding:24px; border:1px solid var(--uvn-line); border-radius:18px; background:var(--uvn-panel);}

/* Form controls: retain all native IDs, values, widgets and validation. */
html.uv-native :is(.form-control,.form-select,.search-document-input,.select-sort,input[type=text],input[type=number],input[type=date],input[type=email],input[type=password],input[type=tel],input[type=url],textarea,select) {
  min-height:39px; padding:8px 11px; border:1px solid #d3d4c7; border-radius:10px;
  background-color:var(--uvn-field); color:var(--uvn-ink); font-size:13px; line-height:1.45;
  box-shadow:none; max-width:100%;
}
html.uv-native textarea {min-height:92px;}
html.uv-native :is(input,textarea)::placeholder {color:#90948b; opacity:1;}
html.uv-native .search-document-input {border-color:#d3d4c7!important;}
html.uv-native :is(.form-control,.form-select,input,textarea,select):focus {border-color:#a89e2b; box-shadow:0 0 0 3px rgba(234,217,63,.22);}
html.uv-native :is(input,textarea,select):disabled {background:#e8e8df; color:#787c73; cursor:not-allowed;}
html.uv-native :is(label,.form-label) {color:#666b61; font-size:12px; font-weight:600;}
html.uv-native :is(input[type=checkbox],input[type=radio]) {accent-color:var(--uvn-green);}
html.uv-native .form-check-input {border-color:#bfc3b5;}
html.uv-native .form-check-input:checked {background-color:var(--uvn-green); border-color:var(--uvn-green);}
html.uv-native .input-group .input-group-text {background:#efeee5; border-color:#d3d4c7; color:#666b61;}
html.uv-native :is(.invalid-feedback,.errorlist) {color:var(--uvn-red); font-size:12px;}
html.uv-native :is(.form-control,.form-select).is-invalid {border-color:var(--uvn-red);}
html.uv-native .select2-container .select2-selection--single {min-height:39px; border:1px solid #d3d4c7!important; border-radius:10px; background:var(--uvn-field)!important;}
html.uv-native .select2-container:is(.select2-container--focus,.select2-container--open) .select2-selection--single {border-color:#a89e2b!important; box-shadow:0 0 0 3px rgba(234,217,63,.22);}
html.uv-native .select2-container .select2-selection__rendered {padding-left:11px; padding-right:28px; line-height:37px; color:var(--uvn-ink); font-size:13px;}
html.uv-native .select2-container .select2-selection__arrow {top:6px; right:7px;}
html.uv-native .select2-dropdown {border-color:#c5c8b9; border-radius:10px; background:var(--uvn-field); box-shadow:0 12px 30px rgba(32,33,29,.14);}
html.uv-native .select2-container--open {z-index:1075;}
html.uv-native .select2-results__option--highlighted[aria-selected] {background:var(--uvn-green)!important; color:#fff!important;}

/* Native actions keep semantic destructive/success colours. */
html.uv-native :is(.btn,.search-document-button,button:not([class]),a.download) {
  min-height:36px; padding:8px 13px; border-radius:10px; font-size:12.5px;
  font-weight:600; line-height:1.35; letter-spacing:0; text-transform:none; box-shadow:none;
}
html.uv-native :is(.btn-primary,.btn-dark,.bg-gradient-dark,.bg-gradient-primary,.search-document-button,button:not([class]),a.download) {
  border:1px solid #20211d!important; background:#20211d!important; background-image:none!important; color:#fff!important;
}
html.uv-native :is(.btn-primary,.btn-dark,.bg-gradient-dark,.bg-gradient-primary,.search-document-button):hover {background:#34362e!important; border-color:#34362e!important; box-shadow:0 4px 12px rgba(32,33,29,.12);}
html.uv-native :is(.btn-warning,.bg-gradient-warning) {border-color:#d0bc25!important; background:var(--uvn-yellow)!important; background-image:none!important; color:#20211d!important;}
html.uv-native :is(.btn-success,.bg-gradient-success) {border-color:var(--uvn-green)!important; background:var(--uvn-green)!important; background-image:none!important; color:#fff!important;}
html.uv-native :is(.btn-danger,.bg-gradient-danger) {border-color:#a7483f!important; background:var(--uvn-red)!important; background-image:none!important; color:#fff!important;}
html.uv-native :is(.btn-secondary,.btn-outline-secondary,.btn-outline-primary,.btn-outline-dark) {border:1px solid #cdd0c1!important; background:#f4f3e9!important; background-image:none!important; color:#4f554a!important;}
html.uv-native :is(.btn-secondary,.btn-outline-secondary,.btn-outline-primary,.btn-outline-dark):hover {border-color:#a8ad9a; background:#eeeddd; color:var(--uvn-ink);}
html.uv-native :is(.btn,.search-document-button):disabled {opacity:.5; box-shadow:none;}
html.uv-native #createArchiveBtn {right:22px!important; bottom:18px!important; font-size:13px!important; padding:11px 18px; border-radius:12px; box-shadow:0 8px 24px rgba(32,33,29,.22); border-bottom:3px solid var(--uvn-yellow)!important;}

/* Tables and scrolling preserve existing row/formset structure. */
html.uv-native :is(.table-responsive,.uv-native-table-scroll) {max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:#c3c6b8 transparent;}
html.uv-native table {color:var(--uvn-ink); font-size:12.5px;}
html.uv-native .table {--bs-table-bg:transparent; --bs-table-color:var(--uvn-ink); --bs-table-border-color:#e1e2d6; --bs-table-striped-bg:rgba(223,225,212,.2); --bs-table-hover-bg:rgba(234,217,63,.08);}
html.uv-native .table :is(td,th) {padding:11px 12px; border-bottom-color:#e1e2d6; vertical-align:middle;}
html.uv-native .table thead th {background:#efeee5; color:#666c60; font-size:11px; font-weight:700; letter-spacing:.02em; white-space:nowrap;}
html.uv-native .table :is(input,select) {min-height:34px; padding:6px 8px; font-size:12px; border-radius:7px;}
html.uv-native .table .btn {min-height:29px; padding:5px 8px; border-radius:7px; font-size:11px;}
html.uv-native .pagination {gap:5px;}
html.uv-native .page-link {border:1px solid #d1d4c5; border-radius:9px!important; background:var(--uvn-panel); color:#555e4f; font-size:12px;}
html.uv-native .page-item.active .page-link {background:#20211d; border-color:#20211d; color:#fff; box-shadow:inset 0 -2px var(--uvn-yellow);}

/* Dialogs/dropdowns keep Bootstrap's original visibility and focus lifecycle. */
html.uv-native .modal-backdrop {background:#111526;}
html.uv-native .modal-content {box-shadow:0 28px 70px rgba(17,21,38,.2);}
html.uv-native .modal-header {padding:17px 20px; border-color:var(--uvn-line);}
html.uv-native .modal-title {font-size:18px;}
html.uv-native .modal-body {padding:20px;}
html.uv-native .modal-footer {padding:12px 20px; border-color:var(--uvn-line); background:#f0efe6; border-radius:0 0 17px 17px;}
html.uv-native .dropdown-menu {border-color:var(--uvn-line); border-radius:12px; background:var(--uvn-field); box-shadow:var(--uvn-shadow); font-size:13px;}
html.uv-native .dropdown-item:hover {background:#f2eebc; color:var(--uvn-ink);}
html.uv-native .offcanvas {background:#111526; color:#e4e6ed;}
html.uv-native .offcanvas :is(h1,h2,h3,h4,h5,h6,a:not(.btn)) {color:#e4e6ed!important;}
html.uv-native .offcanvas a:not(.btn):hover {color:var(--uvn-yellow)!important;}
html.uv-native .offcanvas .btn-close {filter:invert(1);}
html.uv-native body>.container {max-width:1460px; margin:22px auto; padding:22px; border:1px solid var(--uvn-line); border-radius:18px; background:var(--uvn-panel);}
html.uv-native body>nav.navbar {padding:10px 14px; border-bottom:1px solid var(--uvn-line); background:var(--uvn-panel)!important;}
html.uv-native .main-content .page-header[style] {background-image:none!important; background:#20211d!important; min-height:180px!important;}
html.uv-native .alert-info {border-color:#cfdcd4; background:#edf3ed; color:#365445;}
html.uv-native .alert-warning {border-color:#dfd481; background:#f7f2c2; color:#61581c;}
html.uv-native progress {accent-color:var(--uvn-green);}
html.uv-native .nav-tabs {border-bottom-color:var(--uvn-line); gap:5px;}
html.uv-native .nav-tabs .nav-link {border:1px solid var(--uvn-line); border-radius:9px 9px 0 0; color:#656c5e; background:#efeee5;}
html.uv-native .nav-tabs .nav-link.active {background:var(--uvn-panel); color:#20211d; border-bottom:3px solid var(--uvn-yellow);}

/* Within YuVost, retain every native section/action in one contextual strip. */
html.uv-native-embedded #sidenav-main {
  position:relative!important; inset:auto!important; display:block!important;
  width:100%!important; max-width:none!important; height:auto!important; margin:0 0 16px!important;
  padding:8px 0; border:0; border-bottom:1px solid var(--uvn-line); border-radius:0!important;
  background:var(--uvn-panel)!important; box-shadow:none; transform:none!important;
}
html.uv-native-embedded #sidenav-main :is(.sidenav-header,hr) {display:none;}
html.uv-native-embedded #sidenav-main .navbar-collapse {display:block!important; height:auto!important; max-height:none!important; overflow:visible;}
html.uv-native-embedded #sidenav-main .navbar-nav {display:flex; flex-direction:row; align-items:center; flex-wrap:nowrap; gap:4px; padding:0 10px 3px; overflow-x:auto; scrollbar-width:thin;}
html.uv-native-embedded #sidenav-main .nav-item {flex:0 0 auto; width:auto!important; margin:0!important;}
html.uv-native-embedded #sidenav-main .nav-item>div {gap:0; border:1px solid transparent; border-radius:9px;}
html.uv-native-embedded #sidenav-main .nav-link {margin:0; padding:8px 9px; color:#656b5f!important; font-size:12px; min-height:34px;}
html.uv-native-embedded #sidenav-main .nav-link .nav-link-text {white-space:nowrap; margin-left:0!important;}
html.uv-native-embedded #sidenav-main .nav-link>i {display:none;}
html.uv-native-embedded #sidenav-main .nav-link.active {background:#20211d!important; color:#fff!important; box-shadow:inset 0 -3px var(--uvn-yellow);}
html.uv-native-embedded #sidenav-main .nav-link:hover {background:#eeede1!important; color:#20211d!important;}
html.uv-native-embedded #sidenav-main .nav-link.active:hover {background:#34362e!important; color:#fff!important;}
html.uv-native-embedded #sidenav-main .uv-native-nav-create {margin:0 4px!important; width:23px; min-width:23px; height:23px; flex-basis:23px; color:#727963; background:#eeeddd; border-radius:6px;}
html.uv-native-embedded #sidenav-main .uv-native-nav-create:hover {background:var(--uvn-yellow); color:#20211d;}
html.uv-native-embedded #sidenav-main .uv-native-nav-caption {padding-left:9px; border-left:1px solid var(--uvn-line);}
html.uv-native-embedded #sidenav-main .nav-item h6 {margin:0 4px!important; color:#959b8d!important; font-size:9px; white-space:nowrap;}
html.uv-native-embedded .main-content {margin:0!important; padding:0 4px 26px;}
html.uv-native-embedded .uv-native-empty-header {display:none!important;}
html.uv-native-embedded .container-fluid {padding-left:13px; padding-right:13px;}
html.uv-native-embedded body>main:not(.main-content) {margin:12px;}
html.uv-native-embedded body>nav.navbar .navbar-brand {display:none;}

@media(max-width:1199px) {
  html.uv-native:not(.uv-native-embedded) .main-content {margin-left:0!important;}
  html.uv-native:not(.uv-native-embedded) body.g-sidenav-pinned #sidenav-main {transform:translateX(0);}
}
@media(max-width:680px) {
  html.uv-native .container-fluid {padding-left:12px; padding-right:12px;}
  html.uv-native .card-body {padding:14px;}
  html.uv-native .card-header {padding:14px;}
  html.uv-native .modal-body {padding:15px;}
  html.uv-native .main-content {padding-left:0; padding-right:0;}
  html.uv-native body>main:not(.main-content) {margin:12px; padding:18px;}
  html.uv-native #createArchiveBtn {right:14px!important; bottom:12px!important;}
  html.uv-native-embedded #sidenav-main {margin-bottom:12px!important;}
  html.uv-native-embedded #sidenav-main .navbar-nav {padding-left:8px; padding-right:8px;}
  html.uv-native-embedded .container-fluid {padding-left:10px; padding-right:10px;}
}
@media(prefers-reduced-motion:reduce) {html.uv-native *,html.uv-native *::before,html.uv-native *::after {scroll-behavior:auto!important; transition:none!important;}}
