/* BDV UI REBUILD R1.14 — visual polish only.
   No structural, data, workflow, permission or business-logic change.
   Loaded last so the existing R1.13.2 layout remains the source of truth. */

:root{
  --bdv-p-bg-1:#eef7fb;
  --bdv-p-bg-2:#f7fafc;
  --bdv-p-bg-3:#eef4f8;
  --bdv-p-surface:rgba(255,255,255,.96);
  --bdv-p-surface-soft:rgba(249,252,254,.94);
  --bdv-p-line:#d4e2ea;
  --bdv-p-line-strong:#bfd3df;
  --bdv-p-ink:#113651;
  --bdv-p-muted:#668095;
  --bdv-p-blue:#087fae;
  --bdv-p-blue-dark:#123f60;
  --bdv-p-radius:14px;
  --bdv-p-radius-sm:10px;
  --bdv-p-shadow:0 8px 24px rgba(22,62,88,.07);
  --bdv-p-shadow-soft:0 3px 12px rgba(22,62,88,.055);
  --bdv-p-shadow-hover:0 10px 28px rgba(22,62,88,.10);
  --bdv-p-focus:0 0 0 3px rgba(10,139,185,.14);
}

/* --------------------------------------------------------------------------
   STAFF SHELL — same layout, softer depth and a real background
   -------------------------------------------------------------------------- */
body.staff-app.bdv-polish-r114{
  color:var(--bdv-p-ink);
  background:
    radial-gradient(circle at 12% 8%, rgba(83,176,211,.10), transparent 27rem),
    radial-gradient(circle at 88% 2%, rgba(24,139,178,.07), transparent 30rem),
    linear-gradient(145deg,var(--bdv-p-bg-1) 0%,var(--bdv-p-bg-2) 48%,var(--bdv-p-bg-3) 100%);
}
body.staff-app.bdv-polish-r114 .main{
  background:
    radial-gradient(circle at 18% 10%, rgba(34,155,198,.055) 0 1px, transparent 1.5px) 0 0/18px 18px,
    linear-gradient(145deg,rgba(239,248,252,.78),rgba(248,251,253,.88) 55%,rgba(238,245,249,.82));
}
body.staff-app.bdv-polish-r114 .content{
  position:relative;
}

/* Top bar: no size changes, only finish. */
body.staff-app.bdv-polish-r114 .topbar{
  background:rgba(255,255,255,.94);
  border-bottom:1px solid rgba(190,211,223,.78);
  box-shadow:0 4px 18px rgba(19,55,80,.045);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
body.staff-app.bdv-polish-r114 .searchbar,
body.staff-app.bdv-polish-r114 .searchbar-modern{
  background:rgba(255,255,255,.92);
  border-color:var(--bdv-p-line);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
  border-radius:11px;
}
body.staff-app.bdv-polish-r114 .searchbar:focus-within,
body.staff-app.bdv-polish-r114 .searchbar-modern:focus-within{
  border-color:#8fc9dd;
  box-shadow:var(--bdv-p-focus);
}

/* Sidebar stays exactly where it is; only surface details change. */
body.staff-app.bdv-polish-r114 .sidebar{
  box-shadow:8px 0 26px rgba(5,35,61,.08);
}
body.staff-app.bdv-polish-r114 .sidebar .brand,
body.staff-app.bdv-polish-r114 .sidebar .r18-brand-card{
  border-radius:15px;
  overflow:hidden;
}
body.staff-app.bdv-polish-r114 .bdv-nav>a,
body.staff-app.bdv-polish-r114 .bdv-nav-tools summary,
body.staff-app.bdv-polish-r114 .bdv-nav-tools div>a{
  border-radius:10px;
  transition:background-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
body.staff-app.bdv-polish-r114 .bdv-nav>a:hover,
body.staff-app.bdv-polish-r114 .bdv-nav-tools summary:hover,
body.staff-app.bdv-polish-r114 .bdv-nav-tools div>a:hover{
  transform:translateX(1px);
}
body.staff-app.bdv-polish-r114 .bdv-nav>a.is-active{
  box-shadow:0 5px 14px rgba(5,38,64,.12);
}

/* Cards/surfaces: preserve dimensions and layout. */
body.staff-app.bdv-polish-r114 .card,
body.staff-app.bdv-polish-r114 .surface,
body.staff-app.bdv-polish-r114 .panel,
body.staff-app.bdv-polish-r114 .section-card,
body.staff-app.bdv-polish-r114 .bdv-card{
  border-color:var(--bdv-p-line);
  border-radius:var(--bdv-p-radius);
  box-shadow:var(--bdv-p-shadow-soft);
  background-color:var(--bdv-p-surface);
}

/* Buttons: same actions/sizing, cleaner finish. */
body.staff-app.bdv-polish-r114 .btn,
body.staff-app.bdv-polish-r114 button:not(.checkin-r5-check):not(.mobile-menu),
body.staff-app.bdv-polish-r114 .quick-icon,
body.staff-app.bdv-polish-r114 .icon-button{
  border-radius:10px;
  transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
body.staff-app.bdv-polish-r114 .btn:hover,
body.staff-app.bdv-polish-r114 .quick-icon:hover,
body.staff-app.bdv-polish-r114 .icon-button:hover{
  box-shadow:0 4px 12px rgba(13,70,105,.08);
}
body.staff-app.bdv-polish-r114 .btn-primary,
body.staff-app.bdv-polish-r114 .quick-icon-primary{
  box-shadow:0 5px 14px rgba(8,127,174,.16);
}
body.staff-app.bdv-polish-r114 .btn-primary:hover,
body.staff-app.bdv-polish-r114 .quick-icon-primary:hover{
  box-shadow:0 7px 18px rgba(8,127,174,.22);
}

/* Inputs/selects/textareas: no geometry change. */
body.staff-app.bdv-polish-r114 input,
body.staff-app.bdv-polish-r114 select,
body.staff-app.bdv-polish-r114 textarea,
body.staff-app.bdv-polish-r114 .form-control,
body.staff-app.bdv-polish-r114 .form-select{
  border-color:var(--bdv-p-line-strong);
  border-radius:9px;
  background-color:rgba(255,255,255,.96);
  transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;
}
body.staff-app.bdv-polish-r114 input:focus,
body.staff-app.bdv-polish-r114 select:focus,
body.staff-app.bdv-polish-r114 textarea:focus,
body.staff-app.bdv-polish-r114 .form-control:focus,
body.staff-app.bdv-polish-r114 .form-select:focus{
  border-color:#77bfd8;
  box-shadow:var(--bdv-p-focus);
  outline:none;
}
body.staff-app.bdv-polish-r114 input::placeholder,
body.staff-app.bdv-polish-r114 textarea::placeholder{color:#8aa0af;opacity:.92}

/* Pills/tags get a tiny refinement without changing their footprint. */
body.staff-app.bdv-polish-r114 .badge,
body.staff-app.bdv-polish-r114 .pill,
body.staff-app.bdv-polish-r114 [class*="chip"],
body.staff-app.bdv-polish-r114 [class*="badge"]{
  border-radius:999px;
}

/* Page typography: spacing stays inherited. */
body.staff-app.bdv-polish-r114 h1,
body.staff-app.bdv-polish-r114 h2,
body.staff-app.bdv-polish-r114 h3{
  text-rendering:optimizeLegibility;
  letter-spacing:-.025em;
}
body.staff-app.bdv-polish-r114 .eyebrow{
  letter-spacing:.11em;
}

/* --------------------------------------------------------------------------
   CHECK-INS — exact R7S17 layout preserved; cosmetics only
   -------------------------------------------------------------------------- */
body.staff-app.bdv-polish-r114[data-page="checkin_list"] .checkin-r5-toolbar,
body.staff-app.bdv-polish-r114[data-page="checkin_list"] .checkin-r5-board{
  border-color:#c9dce7;
  box-shadow:0 8px 22px rgba(20,61,87,.065);
}
body.staff-app.bdv-polish-r114[data-page="checkin_list"] .checkin-r5-table-head{
  background:linear-gradient(180deg,#194966 0%,#173f5e 100%);
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.06);
}
body.staff-app.bdv-polish-r114[data-page="checkin_list"] .checkin-r5-row{
  transition:background-color .14s ease,box-shadow .14s ease;
}
body.staff-app.bdv-polish-r114[data-page="checkin_list"] .checkin-r5-row:hover{
  background:#f5fbfe;
  box-shadow:inset 3px 0 0 #73bfd9;
}
body.staff-app.bdv-polish-r114[data-page="checkin_list"] .checkin-r5-group{
  border-top-color:#d9e6ed;
  border-bottom-color:#d9e6ed;
}
body.staff-app.bdv-polish-r114[data-page="checkin_list"] .checkin-r5-check{
  border-radius:8px;
  background:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
body.staff-app.bdv-polish-r114[data-page="checkin_list"] .checkin-r5-cell-select,
body.staff-app.bdv-polish-r114[data-page="checkin_list"] .checkin-r5-contact-input,
body.staff-app.bdv-polish-r114[data-page="checkin_list"] .bdv-rule-input{
  box-shadow:inset 0 1px 2px rgba(16,56,82,.025);
}
body.staff-app.bdv-polish-r114[data-page="checkin_list"] details[open] > summary{
  box-shadow:var(--bdv-p-focus);
}

/* --------------------------------------------------------------------------
   VOYAGE / SERVICES — keep current composition; improve material quality
   -------------------------------------------------------------------------- */
body.staff-app.bdv-polish-r114 .r18-voyage-hero,
body.staff-app.bdv-polish-r114 .voyage-hero,
body.staff-app.bdv-polish-r114 [class*="voyage-hero"]{
  box-shadow:0 12px 30px rgba(12,70,104,.11);
  border-radius:16px;
}
body.staff-app.bdv-polish-r114 .r18-context-grid,
body.staff-app.bdv-polish-r114 .r18-service-card,
body.staff-app.bdv-polish-r114 .r18-flight-card,
body.staff-app.bdv-polish-r114 .v17-flight-card,
body.staff-app.bdv-polish-r114 .r14-flight-service,
body.staff-app.bdv-polish-r114 .r16-flight-service{
  border-color:var(--bdv-p-line);
  box-shadow:var(--bdv-p-shadow-soft);
}
body.staff-app.bdv-polish-r114 .r18-service-card:hover,
body.staff-app.bdv-polish-r114 .r18-flight-card:hover,
body.staff-app.bdv-polish-r114 .v17-flight-card:hover{
  border-color:#bfd9e6;
  box-shadow:var(--bdv-p-shadow-hover);
}
body.staff-app.bdv-polish-r114 .r18-service-tabs a,
body.staff-app.bdv-polish-r114 .r18-voyage-tabs a{
  transition:color .15s ease,background-color .15s ease,border-color .15s ease;
}

/* Tables and lists elsewhere. */
body.staff-app.bdv-polish-r114 table{
  border-color:var(--bdv-p-line);
}
body.staff-app.bdv-polish-r114 table thead th{
  background:linear-gradient(180deg,#eef6fa,#e7f1f6);
  border-color:#cfdee7;
}
body.staff-app.bdv-polish-r114 table tbody tr{
  transition:background-color .13s ease;
}
body.staff-app.bdv-polish-r114 table tbody tr:hover{
  background-color:#f5fbfd;
}

/* Dropdowns/menus/dialogs. */
body.staff-app.bdv-polish-r114 .user-menu-panel,
body.staff-app.bdv-polish-r114 .bdv-row-menu-panel,
body.staff-app.bdv-polish-r114 .fx-command-shell,
body.staff-app.bdv-polish-r114 dialog,
body.staff-app.bdv-polish-r114 [role="menu"]{
  border-color:var(--bdv-p-line);
  border-radius:13px;
  box-shadow:0 18px 50px rgba(13,49,73,.16);
}

/* Tiny usability details. */
body.staff-app.bdv-polish-r114 a:focus-visible,
body.staff-app.bdv-polish-r114 button:focus-visible,
body.staff-app.bdv-polish-r114 summary:focus-visible{
  outline:2px solid rgba(10,139,185,.56);
  outline-offset:2px;
}
body.staff-app.bdv-polish-r114 ::selection{background:#ccebf6;color:#0e3853}
body.staff-app.bdv-polish-r114 *{scrollbar-color:#9bb8c8 transparent}
body.staff-app.bdv-polish-r114 ::-webkit-scrollbar{width:10px;height:10px}
body.staff-app.bdv-polish-r114 ::-webkit-scrollbar-track{background:transparent}
body.staff-app.bdv-polish-r114 ::-webkit-scrollbar-thumb{background:#a9c1cf;border:3px solid transparent;background-clip:padding-box;border-radius:999px}
body.staff-app.bdv-polish-r114 ::-webkit-scrollbar-thumb:hover{background:#88aaba;border:3px solid transparent;background-clip:padding-box}

/* --------------------------------------------------------------------------
   CLIENT PORTAL — polish only; no access or content changes
   -------------------------------------------------------------------------- */
body.portal-shell.bdv-polish-r114{
  background:
    radial-gradient(circle at 12% 0%,rgba(68,169,205,.10),transparent 30rem),
    linear-gradient(145deg,#eff7fb 0%,#fbfcfd 52%,#eff5f8 100%);
  color:var(--bdv-p-ink);
}
body.portal-shell.bdv-polish-r114 .portal-header{
  background:rgba(255,255,255,.95);
  border-bottom-color:#d7e4eb;
  box-shadow:0 5px 20px rgba(18,56,81,.055);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
body.portal-shell.bdv-polish-r114 .portal-brand,
body.portal-shell.bdv-polish-r114 .portal-pass-link,
body.portal-shell.bdv-polish-r114 .portal-primary-nav a,
body.portal-shell.bdv-polish-r114 .portal-content article,
body.portal-shell.bdv-polish-r114 .portal-content section,
body.portal-shell.bdv-polish-r114 .portal-content .card{
  border-radius:12px;
}
body.portal-shell.bdv-polish-r114 .portal-content article,
body.portal-shell.bdv-polish-r114 .portal-content .card{
  border-color:#d6e4eb;
  box-shadow:var(--bdv-p-shadow-soft);
}
body.portal-shell.bdv-polish-r114 a,
body.portal-shell.bdv-polish-r114 button{
  transition:color .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease;
}
body.portal-shell.bdv-polish-r114 input,
body.portal-shell.bdv-polish-r114 select,
body.portal-shell.bdv-polish-r114 textarea{
  border-radius:9px;
}

/* --------------------------------------------------------------------------
   STAFF LOGIN — same R7S16 composition, refined surface only
   -------------------------------------------------------------------------- */
body.login-staff-v620.bdv-polish-r114{
  background:
    radial-gradient(circle at 12% 10%,rgba(66,166,203,.13),transparent 30rem),
    radial-gradient(circle at 88% 88%,rgba(213,188,95,.07),transparent 28rem),
    linear-gradient(145deg,#edf6fb,#f9fbfc 52%,#eef4f7);
}
body.login-staff-v620.bdv-polish-r114 .login-staff-shell{
  border-radius:22px;
  box-shadow:0 28px 70px rgba(16,47,69,.15);
  overflow:hidden;
}
body.login-staff-v620.bdv-polish-r114 .login-staff-logo-strip,
body.login-staff-v620.bdv-polish-r114 .login-staff-card{
  border-radius:16px;
}
body.login-staff-v620.bdv-polish-r114 input{
  border-radius:10px;
  transition:border-color .15s ease,box-shadow .15s ease;
}
body.login-staff-v620.bdv-polish-r114 input:focus{
  border-color:#77bfd8;
  box-shadow:var(--bdv-p-focus);
  outline:none;
}
body.login-staff-v620.bdv-polish-r114 .login-staff-submit{
  border-radius:10px;
  box-shadow:0 7px 18px rgba(8,127,174,.20);
  transition:box-shadow .15s ease,transform .15s ease;
}
body.login-staff-v620.bdv-polish-r114 .login-staff-submit:hover{
  box-shadow:0 9px 24px rgba(8,127,174,.26);
}

@media (max-width:720px){
  :root{--bdv-p-radius:12px;--bdv-p-radius-sm:9px}
  body.staff-app.bdv-polish-r114 .topbar{backdrop-filter:none;-webkit-backdrop-filter:none}
  body.portal-shell.bdv-polish-r114 .portal-header{backdrop-filter:none;-webkit-backdrop-filter:none}
}

@media (prefers-reduced-motion:reduce){
  body.staff-app.bdv-polish-r114 *,
  body.portal-shell.bdv-polish-r114 *,
  body.login-staff-v620.bdv-polish-r114 *{
    transition:none!important;
    scroll-behavior:auto!important;
  }
}
