/* Keep operational screens calm and fluid when content or labels grow.
   Inventory cards and controls have their own inventory-clean.css layer. */
/* A single focus treatment replaces the old stacked glow + outer outline.
   Text controls retain an accent border; keyboard navigation keeps a clear ring. */
:is(.topbar, #appContent, dialog.dialog) :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea):focus,
body .topbar .topbar__actions.topbar__actions--search-first #search.search-main:focus {
  border-color: var(--ds-accent) !important;
  box-shadow: none !important;
  outline: none !important;
}
body :where(button, a, summary, input[type="checkbox"], input[type="radio"]):focus-visible {
  outline: 2px solid var(--ds-accent) !important;
  outline-offset: 2px;
  box-shadow: none !important;
}
:is(#financePanel, #filamentPanel, #wastePanel) .finance__header {
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 16px;
}
:is(#financePanel, #filamentPanel, #wastePanel) .finance__header > div {
  flex: 1 1 240px;
  min-width: 0;
}
:is(#financePanel, #filamentPanel, #wastePanel) .finance__header > .btn {
  flex: 0 0 auto;
}
:is(#financePanel, #wastePanel) :is(.finance__period-info, .finance-brk__label, .waste-printer__name) {
  min-width: 0;
  overflow-wrap: anywhere;
}
#financePanel :is(.finance-brk__row, .finance__entries-head) { flex-wrap: wrap; gap: 6px 12px; }
#financePanel .finance-brk__val { margin-left: auto; }
#financePanel .finance-entry__desc { white-space: normal; overflow-wrap: anywhere; }
#wastePanel :is(.waste-form__field, .waste-item__info, .waste-printer__head) { min-width: 0; }
#wastePanel .waste-printer__head { flex-wrap: wrap; gap: 5px 12px; }
#wastePanel .waste-printer__cost { margin-left: auto; }
#historyPanel .history__filters > label { min-width: 0; }
#historyPanel .history__toolbar__right { flex-wrap: wrap; gap: 6px 12px; }
#settingsPanel .settings__checks { min-inline-size: 0; }
#settingsPanel .settings__check { align-items: flex-start; line-height: 1.5; }
#settingsPanel .settings__check input { flex: 0 0 18px; margin-top: 2px; }
#settingsPanel .settings__actions { flex-wrap: wrap; }
#settingsPanel .settings__actions .btn { white-space: normal; }
#pricingAdminPanel .pricing-admin__card > label { min-width: 0; }
#pricingAdminPanel .pricing-admin__actions { flex-wrap: wrap; }
#pricingPanel :is(.pricing__grid > label, .pricing-card) { min-width: 0; }
#pricingPanel .pricing__product-row { grid-template-columns: minmax(0, 1fr) 44px; }
#pricingPanel .pricing__product-row select { width: 100%; }
#filamentPanel :is(.fil-card .card__body, .fil-card__notes, .fil-card__color) { min-width: 0; overflow-wrap: anywhere; }
#filamentPanel .filament__filters { max-width: 100%; }
#upsellerPanel .upseller__header { gap: 10px 16px; }
#upsellerPanel .upseller__title-block { min-width: 0; flex: 1; }
#upsellerPanel #upsellerSyncStatus { max-width: 100%; overflow-wrap: anywhere; line-height: 1.5; }
#upsellerPanel .upseller-order__number { overflow-wrap: anywhere; }
#upsellerPanel :is(.bestsellers__toolbar, .processed-history__status) { flex-wrap: wrap; }
#upsellerPanel .bestsellers__period-select { max-width: 100%; }
#upsellerPanel .order-workflow__filter-field { min-width: 0; }
#upsellerPanel .order-workflow__filters .upseller__toolbar { margin-bottom: 0; }

@media (max-width: 1199px) {
  #productionStageNav { margin-bottom: 10px; }
  #productionStageNav button { min-width: 0; flex: 1 1 0; padding-inline: 6px; }
  #productionPriorityFilter { scrollbar-width: thin; }
  #upsellerPanel .upseller__header { align-items: center; text-align: left; }
  #upsellerPanel .upseller__subtitle { margin: 0; line-height: 1.5; }
  #upsellerKanbanBoard .kanban-card__actions { flex-wrap: wrap; }
  #upsellerKanbanBoard .kanban-card__move-btn { flex: 1 1 110px; }
}

@media (max-width: 767px) {
  #upsellerPanel { gap: 10px !important; }
  #upsellerPanel .upseller__header { flex-wrap: nowrap; gap: 10px; }
  #upsellerPanel #upsellerRefresh { flex: 0 0 auto; padding-inline: 12px; }
  #upsellerPanel #upsellerSyncStatus { padding: 6px 0; margin: 0; background: transparent; border: 0; text-align: left; font-size: 12px; }
  #upsellerPanel #upsellerSyncStatus.is-error { padding: 10px 12px; border: 1px solid var(--module-danger-border); background: var(--module-danger-bg); }
  #productionStageNav button { flex-wrap: wrap; gap: 2px 5px; }
  #productionPriorityFilter .production-priority { font-size: 12px; }
  #upsellerKbColorFilter { width: 100%; min-width: 0; }
  #upsellerKanbanBoard .production-card__facts { gap: 8px; }
  #upsellerKanbanBoard .production-card__facts > div { min-width: 0; }
  :is(#financePanel, #filamentPanel, #wastePanel) .finance__subtitle { margin-block: 0; line-height: 1.5; }
  #filamentPanel .finance-kpi__label { font-size: 11px; letter-spacing: 0; text-transform: none; }
  #filamentPanel .filament__filters { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; scrollbar-width: thin; }
  #filamentPanel .fil-chip { flex: 0 0 auto; min-height: 44px; }
  #filamentPanel .fil-card .card__split span { flex-wrap: wrap; gap: 3px 8px; }
  #wastePanel .waste-form__row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; }
  #wastePanel .waste-form__field--grow { grid-column: 1 / -1; }
  #wastePanel .waste-form__field .input { min-width: 0; max-width: 100%; width: 100%; }
  #wastePanel .waste-form__add { margin: 0; }
  #wastePanel .waste-form__add:last-child { grid-column: 1 / -1; }
  #pricingPanel .pricing-card__label { letter-spacing: 0; text-transform: none; }
}

@media (max-width: 359px) {
  #financePanel .finance-entry { grid-template-columns: minmax(0, 1fr); }
  #financePanel .finance-entry__amount { grid-column: 1; grid-row: auto; }
  #filamentPanel .finance__kpis { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  #upsellerPanel .processed-history__filters { grid-template-columns: minmax(0, 1fr); }
}

/* History emphasizes movement and product, with full notes available on demand. */
#historyPanel .history__toolbar { background:transparent !important; border:0 !important; padding:8px 0 !important; gap:12px; }
#historyPanel .history__chips { gap:6px; }
#historyPanel .history__user { background:transparent; border:0; padding:0; color:var(--ds-muted); font-size:12px; }
#historyPanel .history__type-badge { border-color:transparent; background:transparent; padding:4px 0; font-size:12px; }
#historyPanel .history__cell-when { font-size:12px !important; font-variant-numeric:tabular-nums; white-space:nowrap; }
#historyPanel .history__cell-when small { display:block; font-size:11px; color:var(--ds-muted); margin-top:3px; }
#historyPanel .history__cell-product { font-size:13px; line-height:1.5; }
#historyPanel .history__qty { font-size:15px; font-weight:700; min-width:42px; text-align:center; }
#historyPanel .history__saldo { white-space:nowrap; font-variant-numeric:tabular-nums; }
#historyPanel .history__table tbody tr:nth-child(even) { background:var(--ds-surface); }
#historyPanel .history__table tbody tr:hover { background:var(--ds-elevated); }
#historyPanel .history__obs { gap:8px; line-height:1.6; }
#historyPanel .history__obs-tag { font-size:11px; font-weight:500; }
.history-observation summary { cursor:pointer; min-height:40px; padding-block:10px; font-size:12px; color:var(--ds-muted); line-height:1.5; }
.history-observation[open] > .history__obs { padding:10px 12px; background:var(--ds-inset); border-radius:8px; margin-bottom:6px; overflow-wrap:anywhere; }
#historyPanel .history__filters select { padding-right:32px; }
@media(min-width:768px) {
 #historyPanel .history__table-wrap { max-height:70vh; overflow:auto; }
 #historyPanel .history__table thead th { position:sticky; top:0; z-index:2; background:var(--ds-elevated) !important; }
 #historyPanel .history__table :is(th,td) { padding:12px 14px !important; }
 #historyPanel .history__cell-product { min-width:180px; width:24%; }
 #historyPanel .history__cell-obs { min-width:200px; width:30%; }
}
@media(max-width:767px) {
 #historyPanel .history__table tr { padding:14px; gap:6px 12px; }
 #historyPanel .history__table td.history__cell-product { font-size:15px !important; }
 #historyPanel .history__cell-product::before { display:none; }
 #historyPanel .history__table td.history__cell-obs { padding-top:8px !important; margin-top:5px; border-top:1px solid var(--ds-border); }
 #historyPanel .history__chips { flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; }
 #historyPanel .history__chips .chip { flex-shrink:0; min-height:44px; }
}

/* Financial summary: one headline per metric and a comparable product ledger. */
#financeTabResumo { display:flex; flex-direction:column; gap:16px; }
#financeTabResumo[hidden] { display:none; }
#financeTabResumo .finance__kpis { gap:12px; margin:0; }
#financeTabResumo .finance-kpi { padding:18px; border-radius:12px; }
#financeTabResumo .finance-kpi__label { text-transform:none; letter-spacing:0; font-size:12px; }
#financeTabResumo .finance-kpi--primary { background:var(--ds-surface); border-top:3px solid var(--ds-accent); }
.finance-composition { border:1px solid var(--ds-border); border-radius:12px; padding:0 16px; }
.finance-composition > summary { cursor:pointer; min-height:48px; padding:14px 0; color:var(--ds-muted); font-size:13px; }
#financeTabResumo .finance__breakdown { margin:0 0 16px; }
#financeTabResumo .finance-brk__group--result { background:var(--ds-surface); border-color:var(--ds-border); }
#financeTabResumo .finance__warn { margin:0; padding:14px 16px; font-size:12px; line-height:1.6; }
#financeTabResumo .finance__charts { margin:0; gap:16px; }
.finance-chart-key { display:flex; flex-wrap:wrap; gap:14px; font-size:11px; color:var(--ds-muted); margin:8px 0 18px; }
.finance-chart-key span:last-child { color:#69a9c5; }
#financeTabResumo .finance__ranking-list { display:flex; flex-direction:column; gap:0; }
#financeTabResumo .finance-rank { display:grid; grid-template-columns:30px minmax(0,1fr) 160px; gap:16px; align-items:start; padding:18px 4px; border:0; border-bottom:1px solid var(--ds-border); border-radius:0; background:transparent; }
#financeTabResumo .finance-rank__name { font-size:13px; line-height:1.5; }
#financeTabResumo .finance-rank__pos { font-size:12px; padding-top:3px; color:var(--ds-muted); }
#financeTabResumo .finance-rank__flag { display:inline-block; white-space:nowrap; margin-left:8px; font-size:10px; text-transform:none; border-radius:5px; padding:2px 6px; }
#financeTabResumo .finance-rank__bar { max-width:440px; height:3px; margin-top:10px; }
#financeTabResumo .finance-rank.is-nocost .finance-rank__lucro { color:var(--ds-warning); }
#financeTabResumo .finance-rank__profit { text-align:right; display:flex; flex-direction:column; gap:5px; }
#financeTabResumo .finance-rank__profit > small { color:var(--ds-muted); font-size:10px; }
#financeTabResumo .finance-rank__lucro { font-size:17px; white-space:nowrap; font-variant-numeric:tabular-nums; }
.finance-rank-details summary { font-size:11px; color:var(--ds-muted); cursor:pointer; padding-block:10px; min-height:36px; }
#financeTabResumo .finance-rank__meta { display:flex; flex-wrap:wrap; gap:12px 20px; padding:10px 12px; background:var(--ds-inset); border-radius:8px; }
#financeTabResumo .finance-rank__meta > span { display:flex; flex-direction:column; gap:4px; font-size:11px; }
@media(max-width:767px) {
 #financeTabResumo { gap:12px; }
 #financeTabResumo .finance-kpi { padding:14px; }
 #financeTabResumo .finance-rank { grid-template-columns:24px minmax(0,1fr); gap:8px; padding-block:16px; }
 #financeTabResumo .finance-rank__profit { grid-column:2; flex-direction:row; flex-wrap:wrap; align-items:baseline; gap:8px; text-align:left; }
 #financeTabResumo .finance-rank__lucro { font-size:16px; }
 #financeTabResumo .finance-rank__flag { margin-left:0; }
}

#wastePanel .waste-form { padding:20px; border-radius:12px; margin-bottom:20px; }
.waste-form-title { margin:0 0 6px; font-size:17px; }
.waste-form-hint { margin:0 0 18px; color:var(--ds-muted); font-size:12px; }
#wastePanel .waste-form__row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; align-items:end; }
#wastePanel .waste-form__row + .waste-form__row { margin-top:16px; }
#wastePanel .waste-form__field { min-width:0; width:auto; }
#wastePanel .waste-form__add { justify-self:end; min-height:44px; }
#wastePanel #wasteAddBtn { grid-column:3; min-width:150px; }
#wastePanel .finance__charts { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:16px; }
#wastePanel .finance__chart-card:has(.finance__chart-empty) { min-height:0; }
#wastePanel .finance__chart-days:has(.finance__chart-empty),#wastePanel .waste-printers:has(.finance__chart-empty) { height:auto; min-height:80px; padding:16px 0; }
#wastePanel .finance-kpi--primary { background:var(--ds-surface); border-color:var(--ds-border); }
#wastePanel .finance-kpi { padding:18px; }
#wastePanel .finance-kpi__label { text-transform:none; letter-spacing:0; }
#wastePanel select { padding-right:32px; }
@media(max-width:767px) {
 #wastePanel .waste-form { padding:16px; }
 #wastePanel .waste-form__row { grid-template-columns:1fr 1fr; gap:12px; }
 #wastePanel .waste-form__field--grow { grid-column:1/-1; }
 #wastePanel #wasteAddBtn { grid-column:1/-1; width:100%; }
 #wastePanel .finance__charts { grid-template-columns:1fr; }
}

/* Finance summary: restrained blue/teal palette and clearer hierarchy. */
#financePanel { --fin-surface:#151f2a; --fin-line:#293847; --fin-muted:#a5b5c5; --fin-teal:#79b5cf; --fin-blue:#94bce9; }
#financePanel .finance__header { padding:8px 0; gap:24px; }
#financePanel .finance__title { font-size:26px; letter-spacing:-.7px; }
#financePanel .finance__subtitle { color:var(--fin-muted); font-size:13px; margin-top:8px; }
#financePanel .finance__toolbar { background:#111b25; border:1px solid var(--fin-line); border-radius:14px; padding:12px 16px; gap:16px; }
#financePanel .finance__period-label { text-transform:none; letter-spacing:0; font-size:12px; }
#financePanel .finance__tabs { background:transparent; border-bottom:1px solid var(--fin-line); border-radius:0; padding:0; gap:8px; }
#financePanel .finance__tab { border-radius:8px 8px 0 0; background:transparent; padding:14px 22px; border-bottom:2px solid transparent; color:var(--fin-muted); }
#financePanel .finance__tab.is-active { background:rgba(121,181,207,.07); color:var(--fin-teal); border-bottom-color:var(--fin-teal); }
#financePanel #financeTabResumo { gap:20px; }
#financePanel #financeKpis { gap:16px; }
#financePanel #financeKpis .finance-kpi { position:relative; padding:24px; gap:18px; border:1px solid var(--fin-line); border-radius:16px; background:linear-gradient(145deg,#192633,#141e28) !important; box-shadow:0 6px 18px #00000012; }
#financePanel #financeKpis .finance-kpi--primary { background:linear-gradient(135deg,#1b3638,#17272e) !important; border:1px solid #344c57; }
#financePanel #financeKpis .finance-kpi__label { color:var(--fin-muted); text-transform:none; letter-spacing:0; font-size:12px; font-weight:500; }
#financePanel #financeKpis .finance-kpi__value { font-size:clamp(22px,2vw,32px); letter-spacing:-1px; color:#e5edf6; font-weight:650; }
#financePanel #financeKpis .finance-kpi:first-child .finance-kpi__value { color:var(--fin-blue); }
#financePanel #financeKpis .finance-kpi--primary .finance-kpi__value.is-pos { color:var(--fin-teal); }
#financePanel #financeKpis .finance-kpi__value.is-neg { color:#e8aaac; }
#financePanel #financeTabResumo .finance-composition { background:#111b25; border-color:var(--fin-line); border-radius:12px; }
#financePanel #financeTabResumo .finance__warn { background:#24252a; border:1px solid #494238; border-left:3px solid #bea16f; border-radius:10px; color:#cfbb95; padding:12px 16px; font-size:12px; }
#financePanel #financeTabResumo .finance__chart-card,#financePanel #financeTabResumo .finance__ranking { background:var(--fin-surface); border:1px solid var(--fin-line); border-radius:16px; padding:24px; }
#financePanel #financeTabResumo .finance__chart-title { color:#e5edf6; font-size:15px; letter-spacing:0; text-transform:none; font-weight:600; }
#financePanel #financeChartDays { height:200px; gap:8px; background:repeating-linear-gradient(to top,transparent 0,transparent 49px,#a5b5c510 49px,#a5b5c510 50px); }
#financePanel .finance-bar__fat { background:#516d8b; border-radius:5px 5px 0 0; }
#financePanel .finance-bar__lucro { background:#79b5cf; border-radius:5px 5px 0 0; }
#financePanel .finance-chart-key { font-size:11px; gap:20px; }
#financePanel .finance-chart-key span:first-child { color:#94bce9; }
#financePanel .finance-chart-key span:last-child { color:var(--fin-teal); }
#financePanel .finance-donut { width:148px; height:148px; box-shadow:none; }
#financePanel .finance-donut__hole { background:var(--fin-surface); display:grid; place-content:center; text-align:center; color:#e5edf6; font-size:14px; font-weight:600; }
#financePanel .finance-donut__hole small { color:var(--fin-muted); font-size:10px; font-weight:400; margin-top:4px; }
#financePanel .finance-donut__legend { width:100%; }
#financePanel .finance-donut__legend-item { display:grid; grid-template-columns:8px 1fr auto; gap:10px; align-items:center; padding:9px 0; border-bottom:1px solid #a5b5c514; font-size:12px; }
#financePanel .finance-donut__legend-item strong { font-size:12px; font-weight:500; color:#e5edf6; text-align:right; }
#financePanel .finance-donut__dot { width:8px; height:8px; border-radius:50%; }
#financePanel #financeTabResumo .finance-rank__bar { background:#263746; }
#financePanel #financeTabResumo .finance-rank__bar-fill { background:var(--fin-teal); }
@media(max-width:720px) {
 #financePanel #financeKpis { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 #financePanel #financeKpis .finance-kpi { padding:16px 12px; gap:12px; }
 #financePanel #financeKpis .finance-kpi__value { font-size:20px; letter-spacing:-.6px; }
 #financePanel #financeTabResumo .finance__chart-card,#financePanel #financeTabResumo .finance__ranking { padding:16px; }
 #financePanel .finance__tab { padding:12px 16px; }
 #financePanel #financeTabResumo { gap:14px; }
}

#financePanel select.finance__period-select,#wastePanel select.finance__period-select {
 appearance:none; -webkit-appearance:none; padding-right:48px !important;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23b7c7cf' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
 background-repeat:no-repeat !important; background-position:right 16px center !important; background-size:16px !important;
}
@media(forced-colors:active) {
 #financePanel select.finance__period-select,#wastePanel select.finance__period-select { appearance:auto; background-image:none !important; }
}
