/* Telas DRE gerencial (#dre) e Relatórios financeiros (#finance-reports).
   Medidas e cores amostradas das capturas dre e relatorios-financeiros (2560 × 907, escala 1). */
#view-root[data-view='dre'], #view-root[data-view='finance-reports'], #view-root[data-view='finance-report'] {
  --dre-dark: #0f1921;
  --dre-line: #d9dee2;
  --dre-head: #f6f6f6;
  --dre-text: #262b2f;
  --dre-muted: #6b7177;
  --dre-revenue: #d8efde;
  --dre-revenue-child: #e9f6ec;
  --dre-expense: #f8dadd;
  --dre-expense-child: #fbeaec;
  --dre-result: #d5eef1;
  --dre-green: #519261;
  --dre-red: #c9302c;
  --dre-blue: #2b8fa3;
  font-family: 'Source Sans Pro', 'Source Sans 3', system-ui, sans-serif;
  color: var(--dre-text);
}
.topbar h1[data-route='dre']::before, .topbar h1[data-route='finance-reports']::before, .topbar h1[data-route='finance-report']::before {
  content: ''; display: inline-block; width: 24px; height: 24px; margin-right: 8px; vertical-align: -3px;
  background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23262b2f'%3E%3Cpath d='M3 3h2v16h16v2H3zm4 8h3v7H7zm5-5h3v12h-3zm5 3h3v9h-3z'/%3E%3C/svg%3E");
}
.topbar h1[data-route='finance-reports']::before, .topbar h1[data-route='finance-report']::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23262b2f'%3E%3Cpath d='M9 2h6l-1.5 3h-3zM8 7h8l4 14H4zm4 3a2 2 0 0 0-2 2c0 1.5 1.3 1.8 2.2 2 .6.1.8.3.8.6 0 .4-.4.6-1 .6-.5 0-1-.2-1.2-.6l-1 .8c.3.5.8.8 1.4.9V17h1.6v-1c1-.2 1.6-.9 1.6-1.8 0-1.3-1-1.7-2.1-1.9-.6-.1-.9-.3-.9-.6 0-.3.3-.5.8-.5.4 0 .8.2 1 .5l1-.7c-.3-.5-.7-.8-1.3-1V10z'/%3E%3C/svg%3E");
}

/* ---- DRE gerencial ---- */
.dre-screen { display: flex; flex-direction: column; gap: 16px; }
.dre-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.dre-toolbar-start, .dre-toolbar-end { display: flex; gap: 4px; align-items: center; flex-wrap: wrap; }
.dre-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 37px; padding: 0 12px;
  border: 1px solid var(--dre-dark); border-radius: 3px; font: inherit; font-size: 15px; line-height: 1; cursor: pointer;
  white-space: nowrap; list-style: none;
}
.dre-btn-dark { background: var(--dre-dark); color: #fff; }
.dre-btn-outline { background: #fff; color: var(--dre-text); border-color: #adb5bd; }
.dre-btn-square { width: 41px; padding: 0; }
.dre-btn:disabled { cursor: not-allowed; opacity: .9; }
.dre-more, .dre-period { position: relative; }
.dre-more > summary::-webkit-details-marker, .dre-period > summary::-webkit-details-marker { display: none; }
.dre-caret { width: 0; height: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid currentColor; }
.dre-menu {
  position: absolute; left: 0; top: 42px; z-index: 20; min-width: 220px; background: #fff; border: 1px solid var(--dre-line);
  border-radius: 3px; box-shadow: 0 6px 16px rgba(0, 0, 0, .15); padding: 4px 0; display: flex; flex-direction: column;
}
.dre-menu-period { left: auto; right: 0; }
.dre-menu a, .dre-menu button {
  display: block; padding: 8px 14px; color: var(--dre-text); text-decoration: none; background: transparent; border: 0;
  text-align: left; font: inherit; font-size: 15px; cursor: pointer;
}
.dre-menu a:hover, .dre-menu button:hover:not(:disabled) { background: var(--dre-head); }
.dre-menu button:disabled { color: var(--dre-muted); cursor: not-allowed; }
.dre-custom { display: flex; gap: 8px; padding: 8px 14px; border-top: 1px solid var(--dre-line); margin-top: 4px; }
.dre-custom label { display: flex; flex-direction: column; gap: 2px; font-size: 13px; color: var(--dre-muted); }
.dre-custom input { height: 32px; font: inherit; font-size: 14px; border: 1px solid var(--dre-line); border-radius: 3px; padding: 0 6px; }
.dre-tree, .dre-gear, .dre-search { display: inline-block; width: 15px; height: 15px; background: center / contain no-repeat; }
.dre-tree { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M9 2h6v5h-2v3h6v4h2v5h-6v-5h2v-2h-5v2h2v5H9v-5h2v-2H6v2h2v5H2v-5h2v-4h6V7H9z'/%3E%3C/svg%3E"); }
.dre-gear { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23262b2f'%3E%3Cpath d='M12 8a4 4 0 1 0 0 8 4 4 0 0 0 0-8zm9 5v-2l-2.3-.5a7 7 0 0 0-.8-1.9l1.3-2-1.4-1.4-2 1.3a7 7 0 0 0-1.9-.8L13 3h-2l-.5 2.3a7 7 0 0 0-1.9.8l-2-1.3-1.4 1.4 1.3 2a7 7 0 0 0-.8 1.9L3 11v2l2.3.5c.2.7.4 1.300.8 1.900l-1.300 2 1.400 1.400 2-1.300c.600.400 1.200.600 1.900.800L11 21h2l.5-2.300c.7-.2 1.300-.4 1.900-.8l2 1.300 1.400-1.400-1.300-2c.4-.6.600-1.200.8-1.900z'/%3E%3C/svg%3E"); }
.dre-search { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M10 3a7 7 0 0 1 5.6 11.2l5.1 5.1-1.4 1.4-5.1-5.1A7 7 0 1 1 10 3zm0 2.5a4.5 4.5 0 1 0 0 9 4.5 4.5 0 0 0 0-9z'/%3E%3C/svg%3E"); }

.dre-table-wrap { background: #fff; border: 1px solid var(--dre-line); border-radius: 3px; overflow-x: auto; }
.dre-table { width: 100%; border-collapse: collapse; font-size: 15px; font-variant-numeric: tabular-nums; }
.dre-table th, .dre-table td { height: 46px; padding: 0 12px; border-bottom: 1px solid var(--dre-line); box-sizing: border-box; }
.dre-table thead th { background: var(--dre-head); font-weight: 600; text-align: left; }
.dre-table thead th.dre-amount, .dre-table td.dre-amount { text-align: right; border-left: 1px solid var(--dre-line); }
.dre-table th.dre-label { text-align: left; font-weight: inherit; min-width: 260px; }
.dre-table tbody tr:last-child th, .dre-table tbody tr:last-child td { border-bottom: 0; }
.dre-row.dre-group th, .dre-row.dre-group td, .dre-row.dre-result th, .dre-row.dre-result td { font-weight: 700; }
.dre-row.dre-group.dre-tone-revenue > * { background: var(--dre-revenue); }
.dre-row.dre-group.dre-tone-expense > * { background: var(--dre-expense); }
.dre-row.dre-result > * { background: var(--dre-result); }
.dre-row.dre-line.dre-child-revenue > * { background: var(--dre-revenue-child); }
.dre-row.dre-line.dre-child-expense > * { background: var(--dre-expense-child); }
.dre-row.dre-line th.dre-label { padding-left: 32px; }
.dre-row.dre-group th.dre-label > span:last-child, .dre-row.dre-result th.dre-label > span:last-child { margin-left: 8px; }
.dre-op {
  display: inline-flex; align-items: center; justify-content: center; width: 17px; height: 17px; box-sizing: border-box;
  background: #fff; border: 1px solid var(--dre-green); border-radius: 2px; font-size: 13px; line-height: 1; font-weight: 700;
  color: var(--dre-green); vertical-align: middle;
}
.dre-op-expense { border-color: #d98b92; color: var(--dre-red); }
.dre-op-result { border-color: #8bc3cf; color: var(--dre-blue); }
.dre-row.dre-origin > * { background: #fff; font-size: 14px; color: var(--dre-muted); font-style: italic; height: 38px; }
.dre-row.dre-origin th.dre-label { padding-left: 52px; }

/* ---- Relatórios financeiros ---- */
.frp-screen { display: block; }
.frp-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; align-items: start; }
.frp-card {
  position: relative; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden;
  border-radius: 3px; color: #fff; text-decoration: none; background: var(--frp, #11b8e9); min-height: 108px;
}
.frp-card:hover { filter: brightness(1.04); }
.frp-body { position: relative; z-index: 1; padding: 10px 10px 8px; }
.frp-body h3 { margin: 0 0 6px; font-size: 26px; font-weight: 500; line-height: 1.15; color: #fff; }
.frp-body p { margin: 0; font-size: 15px; line-height: 1.45; color: rgba(255, 255, 255, .92); }
.frp-foot {
  position: relative; z-index: 1; display: block; text-align: center; padding: 3px 0; font-size: 14px;
  background: rgba(0, 0, 0, .1); color: rgba(255, 255, 255, .85);
}
.frp-arrow { font-size: 11px; display: inline-block; vertical-align: 1px; }
.frp-mark { position: absolute; right: 8px; bottom: 28px; width: 70px; height: 70px; color: rgba(0, 0, 0, .15); z-index: 0; }
.frp-mark svg { fill: currentColor; stroke: currentColor; }
.frp-info { --frp: #11b8e9; }
.frp-info .frp-foot { background: #0fa5d1; }
.frp-danger { --frp: #f25f4e; }
.frp-danger .frp-foot { background: #d95546; }
.frp-success { --frp: #12a05a; }
.frp-success .frp-foot { background: #0f8b4c; }
.frp-warning { --frp: #f0952a; }
.frp-warning .frp-foot { background: #d88326; }
.frp-dark { --frp: #0f1921; }
.frp-dark .frp-foot { background: #0d161e; }
.frp-purple { --frp: #8a2fa8; }
.frp-purple .frp-foot { background: #792398; }
.frp-maroon { --frp: #7a1741; }
.frp-maroon .frp-foot { background: #6d143a; }
.frp-card.is-disabled { cursor: not-allowed; opacity: .55; }
.frp-card.is-disabled:hover { filter: none; }
@media (max-width: 900px) { .frp-grid { grid-template-columns: 1fr; } }

/* ---- Telas de relatório financeiro (#finance-report?kind=...) ---- */
.frr-screen { display: flex; flex-direction: column; gap: 16px; }
.frr-toolbar { align-items: center; }
.frr-search { position: relative; }
.frr-search > summary { list-style: none; }
.frr-search-menu { right: 0; left: auto; min-width: 420px; padding: 12px; }
.frr-search-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.frr-field { display: flex; flex-direction: column; gap: 3px; font-size: 13px; color: var(--dre-muted); }
.frr-field input, .frr-field select { height: 34px; font: inherit; font-size: 15px; color: var(--dre-text); border: 1px solid var(--dre-line); border-radius: 3px; padding: 0 8px; background: #fff; }
.frr-search-actions { display: flex; gap: 6px; margin-top: 12px; }
.frr-search-actions .dre-btn { text-decoration: none; }
.frr-period-apply { padding: 0 14px 8px; }
.frr-columns-menu { min-width: 240px; padding: 6px 0; }
.frr-check { display: flex; align-items: center; gap: 8px; padding: 6px 14px; font-size: 15px; cursor: pointer; }
.frr-dark-icon { filter: invert(1) brightness(.2); }

.frr-cards { display: grid; gap: 14px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.frr-cards-statement { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.frr-cards-payables, .frr-cards-receivables { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.frr-card { background: #fff; border: 1px solid var(--dre-line); border-radius: 3px; display: flex; flex-direction: column; min-height: 140px; }
.frr-card-main { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 14px 8px 12px; text-align: center; flex: 1; }
.frr-card-icon { width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; font-size: 20px; margin-bottom: 6px; background: #e9ecef; color: #5b6168; }
.frr-card-green .frr-card-icon { background: #d8efde; color: #1f9d4d; }
.frr-card-red .frr-card-icon { background: #f8dadd; color: #d12f3f; }
.frr-card-brown .frr-card-icon { background: #efe7de; color: #85693f; }
.frr-card-orange .frr-card-icon { background: #fdf0dc; color: #c27a12; }
.frr-card-blue .frr-card-icon { background: #dbe8fb; color: #1d6fe0; }
.frr-card-purple .frr-card-icon { background: #e6dcf6; color: #5a2fa8; }
.frr-card-label { font-size: 13px; color: var(--dre-muted); }
.frr-card-value { font-size: 26px; font-weight: 600; line-height: 1.15; font-variant-numeric: tabular-nums; }
.frr-card-note { font-size: 12px; color: var(--dre-muted); }
.frr-card-extras { margin: 0; padding: 8px 12px; border-top: 1px solid var(--dre-line); display: flex; flex-direction: column; gap: 4px; font-size: 12px; color: var(--dre-muted); }
.frr-card-extras div { display: flex; justify-content: space-between; }
.frr-card-extras dt, .frr-card-extras dd { margin: 0; }
.is-pos { color: var(--dre-green); }
.is-neg { color: var(--dre-red); }
.is-brown { color: #85693f; }
.is-blue { color: #1d6fe0; }
.is-purple { color: #5a2fa8; }

.frr-tabs { display: flex; gap: 8px; margin-bottom: 8px; }
.frr-tabs a { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border: 1px solid var(--dre-line); border-radius: 3px; background: #fff; color: var(--dre-text); text-decoration: none; font-size: 13px; }
.frr-tabs a.current { background: var(--dre-dark); color: #fff; border-color: var(--dre-dark); }
.frr-count { background: #e9ecef; color: var(--dre-text); border-radius: 3px; padding: 0 6px; font-size: 11px; }
.frr-table-wrap { background: #fff; border: 1px solid var(--dre-line); border-radius: 3px; overflow-x: auto; }
.frr-table { width: 100%; border-collapse: collapse; font-size: 14px; font-variant-numeric: tabular-nums; }
.frr-table th, .frr-table td { padding: 10px 12px; border-bottom: 1px solid var(--dre-line); border-right: 1px solid var(--dre-line); text-align: left; vertical-align: middle; }
.frr-table th:last-child, .frr-table td:last-child { border-right: 0; }
.frr-table thead th { background: var(--dre-head); font-weight: 600; white-space: nowrap; }
.frr-table tbody tr:nth-child(even) { background: #f3f3f3; }
.frr-table .frr-num { text-align: right; white-space: nowrap; }
.frr-table .frr-center-text { text-align: center; }
.frr-table tr.frr-group td { background: #ededed; }
.frr-empty { padding: 16px; text-align: center; color: var(--dre-muted); }
.frr-badge { display: inline-block; padding: 2px 6px; border-radius: 3px; font-size: 10px; font-weight: 700; color: #fff; line-height: 1.3; }
.frr-badge-ok { background: #3da64a; }
.frr-badge-late { background: #d9453c; }
.frr-badge-part { background: #e2a02b; }
.frr-badge-open { background: #6c757d; }
.frr-badge.is-outline { background: #fff; }
.frr-badge-ok.is-outline { color: #2f8a3a; border: 1px solid #3da64a; }
.frr-badge-late.is-outline { color: #c9302c; border: 1px solid #d9453c; }
.frr-badge-part.is-outline { color: #b27a14; border: 1px solid #e2a02b; }
.frr-badge-open.is-outline { color: #5b6168; border: 1px solid #adb5bd; }

.frr-progress-label { margin: 8px 0 2px; font-size: 12px; color: var(--dre-muted); }
.frr-progress { height: 16px; border-radius: 3px; background: #e9ecef; color: #5b6168; font-size: 11px; text-align: center; line-height: 16px; }
.frr-seller-tabs { display: flex; flex-wrap: wrap; gap: 4px; border-bottom: 1px solid var(--dre-line); margin: 12px 0; padding-bottom: 10px; }
.frr-seller-tabs a { padding: 6px 12px; border-radius: 3px; font-size: 12px; font-weight: 600; color: var(--dre-muted); text-decoration: none; }
.frr-seller-tabs a.current { background: var(--dre-dark); color: #fff; }

.frr-centers { display: flex; flex-direction: column; gap: 8px; }
.frr-center { background: #fff; border: 1px solid var(--dre-line); border-radius: 3px; }
.frr-center > summary { display: flex; align-items: center; gap: 12px; padding: 8px 12px; cursor: pointer; list-style: none; }
.frr-center > summary::-webkit-details-marker { display: none; }
.frr-center-name { display: flex; flex-direction: column; flex: 1; }
.frr-center-name small { color: var(--dre-muted); font-size: 12px; }
.frr-center-icon, .frr-chevron { color: var(--dre-muted); }
.frr-center[open] .frr-chevron { transform: rotate(180deg); }
.frr-center-body { border-top: 1px solid var(--dre-line); }

.frr-bank-filter { background: #fff; border: 1px solid var(--dre-line); border-radius: 3px; padding: 16px; }
.frr-bank-fields { display: flex; flex-wrap: wrap; gap: 24px; }
.frr-bank-fields .frr-field { min-width: 260px; }
.frr-bank-actions { display: flex; gap: 4px; margin-top: 12px; }
.frr-btn { display: inline-flex; align-items: center; height: 32px; padding: 0 10px; border: 0; border-radius: 3px; color: #fff; font: inherit; font-size: 14px; text-decoration: none; cursor: pointer; }
.frr-btn-green { background: #12a05a; }
.frr-btn-red { background: #e9453a; }
.frr-chart { background: #fff; padding: 12px 12px 8px; display: grid; grid-template-columns: 48px 1fr; grid-template-rows: 280px auto; column-gap: 8px; }
.frr-axis { display: flex; flex-direction: column; justify-content: space-between; align-items: flex-end; font-size: 11px; color: var(--dre-muted); }
.frr-plot { position: relative; border-left: 0; }
.frr-grid-lines { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: space-between; }
.frr-grid-lines i { border-top: 1px solid #e3e6e8; display: block; }
.frr-bars { position: absolute; inset: 0; display: flex; align-items: flex-end; gap: 0; border-bottom: 1px solid #c9cdd1; }
.frr-bar-slot { flex: 1; height: 100%; display: flex; align-items: flex-end; justify-content: center; }
.frr-bar { width: 60%; min-height: 2px; }
.frr-legend { grid-column: 2; display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; list-style: none; margin: 10px 0 0; padding: 0; font-size: 12px; font-weight: 600; }
.frr-legend i { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 5px; }

@media print {
  .frr-toolbar, .frr-search, .frr-tabs, .frr-seller-tabs { display: none !important; }
  .frr-table-wrap { overflow: visible; border: 0; }
  .frr-table tbody tr:nth-child(even) { background: #fff; }
}
@media (max-width: 900px) {
  .frr-cards, .frr-cards-statement, .frr-cards-payables, .frr-cards-receivables { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .frr-search-menu { min-width: 0; width: calc(100vw - 48px); }
  .frr-search-grid { grid-template-columns: 1fr; }
}

/* DRE gerencial: o rótulo da linha é célula de dados (só o cabeçalho é cabeçalho de coluna). */
.dre-table td.dre-label { text-align: left; font-weight: inherit; min-width: 260px; }
.dre-row.dre-group td.dre-label, .dre-row.dre-result td.dre-label { font-weight: 700; }
.dre-row.dre-line td.dre-label { padding-left: 32px; }
.dre-row.dre-group td.dre-label > span:last-child, .dre-row.dre-result td.dre-label > span:last-child { margin-left: 8px; }
.dre-row.dre-origin td.dre-label { padding-left: 52px; }

/* DRE gerencial, Mais ações (captura dre--mais-acoes): Imprimir e Exportar com ícone, lista estreita. */
.dre-more .dre-menu { min-width: 124px; }
.dre-more .dre-menu button { display: flex; align-items: center; gap: 10px; white-space: nowrap; font-size: 13px; }
.dre-mi { display: inline-block; width: 14px; height: 14px; flex: none; background: center / contain no-repeat; }
.dre-mi-print { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23262b2f'%3E%3Cpath d='M6 2h12v5H6zM3 8h18a1 1 0 0 1 1 1v8h-4v5H6v-5H2V9a1 1 0 0 1 1-1zm5 7v5h8v-5z'/%3E%3C/svg%3E"); }
.dre-mi-xls { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23262b2f' stroke-width='2'%3E%3Crect x='3' y='3' width='18' height='18' rx='1'/%3E%3Cpath d='M8 8l8 8M16 8l-8 8'/%3E%3C/svg%3E"); }
@media print {
  .dre-toolbar { display: none !important; }
}

/* Relatórios financeiros: Busca avançada como painel na página (capturas ...--busca-avancada). */
.frr-adv-panel { background: #fff; border: 1px solid var(--dre-line); border-radius: 4px; padding: 16px 16px 14px; }
.frr-adv-panel[hidden] { display: none; }
.frr-adv-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px 12px; }
.frr-adv-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.frr-adv-field.is-wide { grid-column: span 2; }
.frr-adv-label { font-size: 12px; color: var(--dre-text); }
.frr-adv-field input, .frr-adv-field select { height: 36px; width: 100%; font: inherit; font-size: 13px; color: var(--dre-text); border: 1px solid var(--dre-line); border-radius: 3px; padding: 0 10px; background: #fff; }
.frr-adv-field input:disabled, .frr-adv-field select:disabled { background: #fff; color: #7c858d; cursor: not-allowed; }
.frr-adv-range { display: flex; align-items: center; gap: 10px; }
.frr-adv-range > span { font-size: 11px; }
.frr-adv-checks { display: flex; flex-wrap: wrap; gap: 14px; margin: 14px 0 18px; }
.frr-adv-check { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--dre-text); cursor: not-allowed; }
.frr-adv-actions { display: flex; gap: 4px; }
.frr-adv-actions .frr-btn { gap: 5px; height: 38px; padding: 0 10px; }
.frr-adv-toggle[aria-expanded='true'] { background: var(--dre-head); }
@media (max-width: 900px) {
  .frr-adv-grid { grid-template-columns: 1fr; }
  .frr-adv-field.is-wide { grid-column: auto; }
}

/* Relatório de contas bancárias: seletor de conta e data no desenho do original. */
.frr-select2-wrap, .frr-date-wrap { position: relative; display: flex; }
.frr-select2 { display: flex; align-items: center; justify-content: space-between; width: 100%; height: 34px; padding: 0 10px; font: inherit; font-size: 15px; color: var(--dre-text); background: #fff; border: 1px solid var(--dre-line); border-radius: 3px; cursor: pointer; }
.frr-select2-list { position: absolute; left: 0; right: 0; top: 36px; z-index: 20; margin: 0; padding: 4px 0; list-style: none; background: #fff; border: 1px solid var(--dre-line); border-radius: 3px; box-shadow: 0 6px 16px rgba(0, 0, 0, .15); max-height: 240px; overflow: auto; }
.frr-select2-list[hidden] { display: none; }
.frr-select2-list li { padding: 7px 12px; font-size: 15px; cursor: pointer; }
.frr-select2-list li:hover, .frr-select2-list li[aria-selected='true'] { background: var(--dre-head); }
.frr-date-wrap input[type='text'] { flex: 1; min-width: 0; height: 34px; font: inherit; font-size: 15px; border: 1px solid var(--dre-line); border-right: 0; border-radius: 3px 0 0 3px; padding: 0 8px; background: #fff; }
.frr-calendar { width: 36px; height: 34px; border: 1px solid var(--dre-line); border-radius: 0 3px 3px 0; background: #fff; cursor: pointer; display: grid; place-items: center; }
.frr-calendar-icon { width: 16px; height: 16px; border: 2px solid #3b4147; border-top-width: 4px; border-radius: 2px; box-sizing: border-box; }
