.app-shell.home-active .app-header { min-height: 78px; padding-bottom: 0; }
.app-shell.home-active .company-logo { width: 72px; height: 72px; }
@media (max-width: 360px) {
  .app-shell.home-active .app-header { min-height: 72px; }
  .app-shell.home-active .company-logo { width: 66px; height: 66px; }
}
.official-panel { max-width: 1100px; margin: 0 auto; padding: 24px 16px 110px; color: #12273b; }
.official-panel h1 { margin: 0 0 6px; font-size: 1.8rem; }
.official-intro { color: #526577; margin: 0 0 24px; }
.official-controls { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.official-controls label { display: grid; gap: 6px; font-weight: 700; font-size: .9rem; }
.official-controls input, .official-controls select { width: 100%; min-height: 44px; padding: 9px 11px; border: 1px solid #b9c9d8; border-radius: 10px; background: white; font: inherit; color: inherit; }
#official-status { min-height: 24px; color: #526577; }
.official-group { margin: 24px 0; }
.official-group h2 { font-size: 1.2rem; margin: 0 0 12px; }
.official-report { display: grid; gap: 4px; width: 100%; padding: 14px 16px; margin: 8px 0; text-align: left; border: 1px solid #d9e2ea; border-radius: 12px; background: white; font: inherit; font-weight: 700; color: #12273b; cursor: pointer; }
.official-report small { color: #557287; font-size: .8rem; font-weight: 400; }
.official-report:disabled { cursor: default; opacity: .68; }
.official-report:not(:disabled):hover, .official-report:not(:disabled):focus-visible { border-color: #ff8c25; outline: 2px solid transparent; }
#official-detail { margin-top: 24px; padding: 18px; border-radius: 14px; background: white; border: 1px solid #d9e2ea; }
#official-detail h2 { margin: 0 0 5px; }
#official-detail p { color: #526577; }
.official-table-wrap { overflow-x: auto; max-height: 60vh; }
.official-table { border-collapse: collapse; width: 100%; font-size: .88rem; }
.official-table th, .official-table td { padding: 9px 12px; text-align: left; border-bottom: 1px solid #e6edf3; white-space: nowrap; }
.official-table th { position: sticky; top: 0; background: #f3f7fa; }
.official-pages { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 15px; }
.official-pages button { min-height: 40px; border: 1px solid #b9c9d8; border-radius: 8px; background: white; padding: 8px 12px; }

/* Linguagem compartilhada dos cards do Início e dos relatórios abertos por eles. */
.official-insight-card, .official-feed-card { display: grid; align-items: start; gap: 9px; width: 100%; min-height: 112px; padding: 16px; border: 1px solid #d4e3e9; border-left: 4px solid #0a9991; border-radius: 16px; background: #fff; color: #082844; text-align: left; box-shadow: 0 5px 16px #0828440a; cursor: pointer; }
.official-insight-card .official-feed-kicker, .official-feed-card .official-feed-kicker, .official-report .official-feed-kicker { color: #087f7b; font-size: .66rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.official-insight-copy { gap: 5px; }
.official-insight-copy strong, .official-feed-card strong { color: #082844; font-size: 1.08rem; line-height: 1.2; }
.official-insight-copy small, .official-feed-card small { color: #5a7284; font-size: .77rem; line-height: 1.4; }
.official-insight-value { max-width: none; color: #087f7b; font-size: .79rem; text-align: left; }
.official-insight-footer { display: flex; align-items: end; justify-content: space-between; gap: 10px; padding-top: 10px; border-top: 1px solid #e2ebee; }
.official-insight-footer small { color: #647b8a; font-size: .68rem; line-height: 1.35; }
.official-insight-action { flex: none; color: #087f7b; font-size: .76rem; font-weight: 850; }
.official-feed-card .official-insight-action { padding-top: 8px; border-top: 1px solid #e2ebee; }
.official-data-dialog { width: min(100vw, 460px); height: min(100dvh, 850px); max-height: 100dvh; margin: auto; padding: 0; border: 0; border-radius: 18px; background: #f5f8fa; color: #082844; box-shadow: 0 22px 70px #001c33aa; }
.official-data-dialog[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; }
.official-data-dialog::backdrop { background: #031b2ccb; }
.official-data-dialog-head { display: flex; align-items: flex-start; gap: 10px; padding: 21px 20px 18px; border-bottom: 1px solid #e1e8ef; background: #fff; }
.official-data-dialog-head > div { flex: 1; min-width: 0; }
.official-data-dialog-head span { color: #087f84; font-size: .65rem; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.official-data-dialog-head h2 { margin: 9px 0 5px; font-size: 1.5rem; line-height: 1.15; overflow-wrap: anywhere; }
.official-data-dialog-head p, .official-data-dialog-head small { display: block; margin: 3px 0 0; color: #61798c; font-size: .74rem; line-height: 1.4; }
.official-data-dialog-head button { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border: 1px solid #ccd9e5; border-radius: 50%; background: #f7f9fb; color: #082844; font-size: 1.5rem; }
.official-data-dialog-body { display: grid; align-content: start; gap: 14px; min-height: 0; padding: 16px 18px 24px; overflow-y: auto; overscroll-behavior: contain; }
.official-data-summary { display: grid; gap: 5px; padding: 18px; border: 1px solid #c8e1e3; border-left: 4px solid #0a9991; border-radius: 16px; background: #fff; }
.official-data-kicker { color: #087f7b; font-size: .67rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.official-data-summary strong { color: #082844; font-size: 2rem; line-height: 1; }
.official-data-summary small { color: #60798a; font-size: .76rem; }
.official-data-list-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.official-data-list-heading h3 { margin: 0; font-size: 1rem; }
.official-data-list-heading span { flex: none; padding: 6px 9px; border-radius: 20px; background: #e9f1f4; color: #486678; font-size: .68rem; font-weight: 800; }
.official-data-search { width: 100%; min-height: 46px; padding: 10px 13px; border: 1px solid #d1e1e9; border-radius: 12px; background: #fff; color: #082844; font: inherit; }
.official-data-results { display: grid; gap: 9px; }
.official-data-row { border: 1px solid #d8e5eb; border-radius: 13px; background: #fff; overflow: hidden; }
.official-data-row summary { display: flex; align-items: center; gap: 10px; min-height: 68px; padding: 11px 12px; cursor: pointer; list-style: none; }
.official-data-row summary::-webkit-details-marker { display: none; }
.official-data-row-number { display: grid; place-items: center; flex: none; width: 27px; height: 27px; border-radius: 50%; background: #e5f5f3; color: #087f84; font-size: .7rem; font-weight: 850; }
.official-data-row-preview { display: grid; gap: 4px; flex: 1; min-width: 0; }
.official-data-row-preview strong { font-size: .86rem; }
.official-data-row-preview small { overflow: hidden; color: #637d8d; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.official-data-row-action { flex: none; color: #087f7b; font-size: .7rem; font-weight: 750; }
.official-data-row[open] .official-data-row-action { color: #f58220; }
.official-data-fields { display: grid; gap: 0; margin: 0; padding: 0 12px 12px; }
.official-data-field { display: grid; grid-template-columns: minmax(105px, 38%) minmax(0, 1fr); gap: 9px; padding: 9px 0; border-top: 1px solid #edf1f3; }
.official-data-field dt { color: #61798c; font-size: .7rem; overflow-wrap: anywhere; }
.official-data-field dd { margin: 0; color: #082844; font-size: .74rem; font-weight: 700; text-align: right; overflow-wrap: anywhere; }
.official-data-state { margin: 0; padding: 18px; border: 1px solid #d8e5eb; border-radius: 13px; background: #fff; color: #526e83; font-size: .85rem; line-height: 1.5; }
.official-data-state.is-error { border-color: #f2c5bf; background: #fff6f4; color: #9b3c30; }
.official-data-dialog--pay-next .official-data-dialog-head { padding-block: 15px 12px; }
.official-data-dialog--pay-next .official-data-dialog-head h2 { margin-block: 5px 3px; font-size: 1.25rem; }
.official-pay-next-summary { display: grid; gap: 8px; padding: 14px; border: 1px solid #e9d5a8; border-radius: 15px; background: #fffaf0; }
.official-pay-next-summary .official-data-kicker { color: #90600c; }
.official-pay-next-summary p { margin: 0; color: #725b37; font-size: .76rem; line-height: 1.35; }
.official-pay-next-totals { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.official-pay-next-total { display: grid; gap: 5px; padding: 11px; border-radius: 11px; background: #fff; border: 1px solid #f0dfbc; }
.official-pay-next-total small, .official-pay-next-count { color: #725b37; font-size: .7rem; }
.official-pay-next-total strong { color: #563705; font-size: clamp(.95rem, 4vw, 1.25rem); overflow-wrap: anywhere; }
.official-pay-next-results { display: grid; gap: 8px; }
.official-pay-next-day { overflow: hidden; border: 1px solid #e4d3af; border-radius: 13px; background: #fff; }
.official-pay-next-day > summary { display: flex; align-items: center; justify-content: space-between; gap: 9px; min-height: 58px; padding: 10px 12px; background: #fff6e5; cursor: pointer; list-style: none; }
.official-pay-next-day > summary::-webkit-details-marker, .official-pay-next-title > summary::-webkit-details-marker { display: none; }
.official-pay-next-day-label, .official-pay-next-day-total, .official-pay-next-identity { display: grid; gap: 3px; min-width: 0; }
.official-pay-next-day-label strong, .official-pay-next-day-total strong { font-size: .86rem; }
.official-pay-next-day-label small, .official-pay-next-day-total small, .official-pay-next-identity small { color: #76674f; font-size: .68rem; }
.official-pay-next-day-total { flex: none; text-align: right; }
.official-pay-next-day-list { display: grid; gap: 0; padding: 0 10px; }
.official-pay-next-title { border-top: 1px solid #edf0f1; }
.official-pay-next-title > summary { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 56px; padding: 8px 2px; cursor: pointer; list-style: none; }
.official-pay-next-identity strong { overflow: hidden; color: #17384c; font-size: .78rem; text-overflow: ellipsis; white-space: nowrap; }
.official-pay-next-balance { flex: none; color: #714b0b; font-size: .78rem; }
.official-pay-next-title .official-data-fields { padding-inline: 2px; }
.official-data-dialog--calendar .official-data-dialog-head { padding-block: 15px 12px; }
.official-data-dialog--calendar .official-data-dialog-head h2 { margin-block: 5px 3px; font-size: 1.25rem; }
.official-data-dialog--receive-overdue .official-data-dialog-head { padding-block: 15px 12px; }
.official-data-dialog--receive-overdue .official-data-dialog-head h2 { margin-block: 5px 3px; font-size: 1.25rem; }
.official-data-dialog--receive-overdue .official-data-dialog-body { gap: 12px; padding: 14px 14px 22px; }
.official-overdue-summary { display: grid; gap: 5px; padding: 15px; border: 1px solid #bfe3d2; border-radius: 15px; background: #effaf4; }
.official-overdue-summary .official-data-kicker { color: #13734c; }
.official-overdue-summary > small { color: #466d5a; font-size: .74rem; }
.official-overdue-summary > strong { color: #087446; font-size: clamp(1.7rem, 7vw, 2.1rem); line-height: 1.1; overflow-wrap: anywhere; }
.official-overdue-summary p { margin: 0; color: #456a58; font-size: .72rem; line-height: 1.4; }
.official-overdue-chips { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.official-overdue-chip { display: grid; align-content: start; gap: 3px; min-width: 0; min-height: 72px; padding: 9px 8px; border: 1px solid #cbded6; border-radius: 11px; background: #fff; color: #133b2a; text-align: left; font: inherit; cursor: pointer; }
.official-overdue-chip[aria-pressed="true"] { border-color: #168456; background: #e8f7ee; box-shadow: inset 0 0 0 1px #168456; }
.official-overdue-chip strong { font-size: .7rem; line-height: 1.2; }
.official-overdue-chip small { color: #557269; font-size: .65rem; }
.official-overdue-chip span { font-size: .77rem; font-weight: 800; overflow-wrap: anywhere; }
.official-overdue-controls { display: grid; grid-template-columns: minmax(0, 1fr) minmax(112px, 32%); gap: 7px; }
.official-overdue-controls select { width: 100%; min-width: 0; min-height: 46px; padding: 7px; border: 1px solid #d1e1e9; border-radius: 12px; background: #fff; color: #082844; font: inherit; font-size: .77rem; }
.official-overdue-results { display: grid; gap: 7px; }
.official-overdue-title { overflow: hidden; border: 1px solid #d9e7de; border-radius: 12px; background: #fff; }
.official-overdue-title > summary { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; min-height: 63px; padding: 10px 12px; cursor: pointer; list-style: none; }
.official-overdue-title > summary::-webkit-details-marker { display: none; }
.official-overdue-identity, .official-overdue-amount { display: grid; gap: 3px; min-width: 0; }
.official-overdue-identity strong { overflow: hidden; color: #12354a; font-size: .79rem; text-overflow: ellipsis; white-space: nowrap; }
.official-overdue-identity small, .official-overdue-amount small { color: #5b7580; font-size: .67rem; }
.official-overdue-amount { text-align: right; }
.official-overdue-amount strong { color: #087446; font-size: .83rem; white-space: nowrap; }
.official-overdue-title .official-data-fields { padding: 0 12px 10px; }
.official-overdue-chip:focus-visible, .official-overdue-title > summary:focus-visible, .official-overdue-controls :focus-visible { outline: 3px solid #168456; outline-offset: 2px; }
@media (max-width: 360px) { .official-overdue-chip { padding: 8px 5px; } .official-overdue-chip strong { font-size: .65rem; } .official-overdue-chip span { font-size: .7rem; } }
.official-data-dialog--receive-next .official-data-dialog-head { padding-block: 15px 12px; }
.official-data-dialog--receive-next .official-data-dialog-head h2 { margin-block: 5px 3px; font-size: 1.25rem; }
.official-data-dialog--receive-next .official-data-dialog-body { gap: 9px; padding: 11px 14px 20px; }
.official-receive-next-summary { display: grid; gap: 3px; padding: 12px; border: 1px solid #c7def3; border-radius: 15px; background: #eef6ff; }
.official-receive-next-summary .official-data-kicker { color: #2467ad; }
.official-receive-next-summary > small { color: #4d6c87; font-size: .74rem; }
.official-receive-next-summary > strong { color: #2467ad; font-size: clamp(1.6rem, 7vw, 2rem); line-height: 1.1; overflow-wrap: anywhere; }
.official-receive-next-summary p { margin: 0; color: #4d6c87; font-size: .72rem; line-height: 1.4; }
.official-receive-next-highlights { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.official-receive-next-highlight { display: grid; gap: 2px; min-width: 0; padding: 8px 10px; border: 1px solid #d2e1ee; border-radius: 12px; background: #fff; }
.official-receive-next-highlight small { color: #597083; font-size: .67rem; }
.official-receive-next-highlight strong { color: #153a59; font-size: .83rem; }
.official-receive-next-highlight span { color: #2467ad; font-size: .87rem; font-weight: 800; }
.official-receive-next-timeline { padding: 9px 12px 7px; border: 1px solid #d2e1ee; border-radius: 14px; background: #fff; }
.official-receive-next-timeline-head { display: flex; align-items: baseline; justify-content: space-between; gap: 6px; }
.official-receive-next-timeline h3 { margin: 0; color: #153a59; font-size: .88rem; }
.official-receive-next-timeline-head small { color: #597083; font-size: .63rem; white-space: nowrap; }
.official-receive-next-bars { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 5px; align-items: end; margin-top: 5px; }
.official-receive-next-point { display: grid; gap: 4px; min-width: 0; text-align: center; }
.official-receive-next-track { display: flex; align-items: end; justify-content: center; height: 38px; border-bottom: 1px solid #d3dfeb; }
.official-receive-next-bar { display: block; width: min(100%, 23px); border-radius: 4px 4px 0 0; background: linear-gradient(180deg, #6aace9, #2669b8); }
.official-receive-next-point.is-empty .official-receive-next-track::after { width: 5px; height: 5px; margin-bottom: 3px; border-radius: 50%; background: #c7d6e5; content: ''; }
.official-receive-next-point small { color: #637b90; font-size: .63rem; }
.official-receive-next-timeline p { margin: 5px 0 0; color: #587183; font-size: .67rem; line-height: 1.35; }
.official-receive-next-results { display: grid; gap: 7px; }
.official-receive-next-day { overflow: hidden; border: 1px solid #d2e1ee; border-radius: 13px; background: #fff; }
.official-receive-next-day > summary { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: center; min-height: 57px; padding: 9px 12px; background: #eef6ff; cursor: pointer; list-style: none; }
.official-receive-next-day > summary::-webkit-details-marker, .official-receive-next-title > summary::-webkit-details-marker { display: none; }
.official-receive-next-day-date, .official-receive-next-day-total { display: grid; gap: 3px; min-width: 0; }
.official-receive-next-day-date strong, .official-receive-next-day-total strong { color: #153a59; font-size: .84rem; }
.official-receive-next-day-date small, .official-receive-next-day-total small { color: #597083; font-size: .67rem; }
.official-receive-next-day-total { text-align: right; }
.official-receive-next-day-list { padding: 0 10px; }
.official-receive-next-title { border-top: 1px solid #e9eef3; }
.official-receive-next-title > summary { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; min-height: 56px; padding: 8px 2px; cursor: pointer; list-style: none; }
.official-receive-next-identity, .official-receive-next-amount { display: grid; gap: 3px; min-width: 0; }
.official-receive-next-identity strong { overflow: hidden; color: #12354a; font-size: .79rem; text-overflow: ellipsis; white-space: nowrap; }
.official-receive-next-identity small { color: #5b7580; font-size: .67rem; }
.official-receive-next-amount { text-align: right; }
.official-receive-next-amount strong { color: #2467ad; font-size: .83rem; white-space: nowrap; }
.official-receive-next-title .official-data-fields { padding: 0 2px 10px; }
.official-receive-next-day > summary:focus-visible, .official-receive-next-title > summary:focus-visible { outline: 3px solid #2669b8; outline-offset: -2px; }
@media (max-width: 360px) { .official-receive-next-bars { gap: 3px; } .official-receive-next-highlight { padding: 9px; } }
.official-data-dialog--received .official-data-dialog-head { padding-block: 15px 12px; }
.official-data-dialog--received .official-data-dialog-head h2 { margin-block: 5px 3px; font-size: 1.25rem; }
.official-data-dialog--received .official-data-dialog-body { gap: 10px; padding: 12px 14px 22px; }
.official-receipts-summary { display: grid; gap: 4px; padding: 14px; border: 1px solid #b7dedf; border-radius: 15px; background: #edfaf9; }
.official-receipts-summary > small, .official-receipts-summary p { margin: 0; color: #4a7276; font-size: .73rem; line-height: 1.4; }
.official-receipts-summary > strong { color: #087f84; font-size: clamp(1.65rem, 7vw, 2rem); line-height: 1.1; overflow-wrap: anywhere; }
.official-receipts-summary .official-receipts-recovered { padding-top: 6px; border-top: 1px solid #cbe5e4; color: #236b69; }
.official-receipts-results { display: grid; gap: 8px; }
.official-receipts-day { overflow: hidden; border: 1px solid #cfe3e4; border-radius: 13px; background: #fff; }
.official-receipts-day > summary { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; min-height: 58px; padding: 10px 12px; background: #ecf8f8; cursor: pointer; list-style: none; }
.official-receipts-day > summary::-webkit-details-marker { display: none; }
.official-receipts-day-date, .official-receipts-day-total, .official-receipts-identity { display: grid; gap: 3px; min-width: 0; }
.official-receipts-day-date strong, .official-receipts-day-total strong { color: #153a42; font-size: .85rem; }
.official-receipts-day-date small, .official-receipts-day-total small, .official-receipts-identity small { color: #597880; font-size: .69rem; }
.official-receipts-day-total { text-align: right; }
.official-receipts-day-total strong { color: #087f84; }
.official-receipts-day-list { padding: 0 10px; }
.official-receipts-entry { border-top: 1px solid #e8eff0; }
.official-receipts-entry-top { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; min-height: 58px; padding: 9px 2px; }
.official-receipts-identity strong { overflow: hidden; color: #12354a; font-size: .79rem; text-overflow: ellipsis; white-space: nowrap; }
.official-receipts-amount { color: #087f84; font-size: .84rem; white-space: nowrap; }
.official-receipts-entry-recovered { display: block; padding: 0 2px 10px; color: #277271; font-size: .69rem; line-height: 1.35; }
.official-receipts-day > summary:focus-visible { outline: 3px solid #087f84; outline-offset: -2px; }
.official-data-dialog--clients .official-data-dialog-head { padding-block: 15px 12px; }
.official-data-dialog--clients .official-data-dialog-head h2 { margin-block: 5px 3px; font-size: 1.25rem; }
.official-data-dialog--clients .official-data-dialog-body { gap: 9px; padding: 12px 14px 22px; }
.official-client-summary { display: grid; gap: 4px; padding: 14px; border: 1px solid #c7def3; border-radius: 15px; background: #eef6ff; }
.official-client-summary .official-data-kicker { color: #2467ad; }
.official-client-summary > small, .official-client-summary p { margin: 0; color: #54708b; font-size: .72rem; line-height: 1.4; }
.official-client-summary > strong { color: #2467ad; font-size: clamp(1.65rem, 7vw, 2rem); line-height: 1.1; overflow-wrap: anywhere; }
.official-client-summary-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.official-client-summary-tile { display: grid; align-content: start; gap: 4px; min-width: 0; padding: 10px 11px; border: 1px solid #d6e4ee; border-radius: 12px; background: #fff; }
.official-client-summary-tile small { color: #5a7183; font-size: .68rem; }
.official-client-summary-tile strong { font-size: .98rem; line-height: 1.2; overflow-wrap: anywhere; }
.official-client-summary-tile.is-overdue strong { color: #168456; }
.official-client-summary-tile.is-upcoming strong { color: #2669b8; }
.official-client-results { display: grid; gap: 7px; }
.official-client-row { display: grid; gap: 5px; min-width: 0; padding: 10px 12px; border: 1px solid #d7e5ee; border-radius: 13px; background: #fff; }
.official-client-row-top { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 8px; }
.official-client-row-top > strong:first-child { color: #17384c; font-size: .79rem; line-height: 1.25; overflow-wrap: anywhere; }
.official-client-row-total { color: #174c7e; font-size: .84rem; white-space: nowrap; }
.official-client-row-parts { display: flex; flex-wrap: wrap; column-gap: 12px; row-gap: 3px; }
.official-client-row-parts small { font-size: .68rem; line-height: 1.3; }
.official-client-row-parts .is-overdue { color: #168456; }
.official-client-row-parts .is-upcoming { color: #2669b8; }
.official-client-row-share { display: flex; align-items: center; gap: 8px; }
.official-client-row-share small { flex: none; color: #597083; font-size: .63rem; }
.official-client-row-track { flex: 1; height: 5px; overflow: hidden; border-radius: 8px; background: #eaf1f8; }
.official-client-row-fill { display: block; height: 100%; border-radius: inherit; background: #5394cf; }
.official-payment-calendar-summary { display: grid; gap: 6px; padding: 14px; border: 1px solid #e9d5a8; border-radius: 15px; background: #fffaf0; }
.official-payment-calendar-summary .official-data-kicker { color: #90600c; }
.official-payment-calendar-summary > strong { color: #563705; font-size: 1.65rem; line-height: 1.1; }
.official-payment-calendar-summary > small { color: #725b37; font-size: .72rem; }
.official-payment-calendar-summary p { margin: 0; color: #725b37; font-size: .72rem; line-height: 1.4; }
.official-payment-calendar-results { display: grid; gap: 8px; }
.official-payment-calendar-week { overflow: hidden; border: 1px solid #e4d3af; border-radius: 13px; background: #fff; }
.official-payment-calendar-week > summary { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 58px; padding: 10px 12px; background: #fff6e5; cursor: pointer; list-style: none; }
.official-payment-calendar-week > summary::-webkit-details-marker { display: none; }
.official-payment-calendar-week-period, .official-payment-calendar-week-total, .official-payment-calendar-day-date { display: grid; gap: 3px; min-width: 0; }
.official-payment-calendar-week-period strong { color: #563705; font-size: .76rem; overflow-wrap: anywhere; }
.official-payment-calendar-week-period small, .official-payment-calendar-week-total small, .official-payment-calendar-day-date small { color: #76674f; font-size: .67rem; }
.official-payment-calendar-week-total { flex: none; text-align: right; }
.official-payment-calendar-week-total strong { color: #563705; font-size: .84rem; }
.official-payment-calendar-days { display: grid; padding: 0 10px; }
.official-payment-calendar-day { display: grid; gap: 6px; padding: 10px 2px; border-top: 1px solid #edf0f1; }
.official-payment-calendar-day.is-peak { padding-left: 8px; border-left: 3px solid #cf8717; }
.official-payment-calendar-day-top, .official-payment-calendar-day-bottom { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.official-payment-calendar-day-date strong { color: #17384c; font-size: .8rem; }
.official-payment-calendar-day-amount { flex: none; color: #714b0b; font-size: .85rem; }
.official-payment-calendar-day-bottom small { color: #61798c; font-size: .68rem; }
.official-payment-calendar-peak { color: #80500a; background: #fff0cf; border-radius: 20px; padding: 3px 6px; font-size: .65rem; font-weight: 800; }
.official-payment-calendar-track { display: block; height: 5px; border-radius: 8px; background: #f2ede3; overflow: hidden; }
.official-payment-calendar-bar { display: block; height: 100%; border-radius: inherit; background: #d99b31; }
.official-data-dialog-footer { min-height: 70px; background: #fff; }
.official-data-dialog-footer .bottom-nav { position: static; inset: auto; width: 100%; max-width: none; margin: 0; border-radius: 0 0 18px 18px; transform: none; box-shadow: 0 -7px 24px #082b4c14; }
@media (max-width: 650px) { .official-data-dialog { width: 100vw; height: 100dvh; max-height: 100dvh; border-radius: 0; } .official-data-dialog-footer .bottom-nav { border-radius: 0; } }
.official-story { flex-basis: 76px; overflow-wrap: anywhere; }
.official-story .story-orb { position: relative; display: grid; place-items: center; overflow: visible; }
.official-story .story-icon { width: 33px; height: 33px; }
.official-story-recent-badge { position: absolute; right: -4px; bottom: -3px; display: grid; width: 19px; height: 19px; place-items: center; border: 2px solid #fff; border-radius: 50%; background: #0b6771; box-shadow: 0 2px 5px #08284430; }
.official-story-recent-badge svg { width: 14px; height: 14px; stroke: #fff; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.official-recent-title { margin: 3px 0 5px; color: #c9e2ed; font-size: .72rem; font-weight: 800; letter-spacing: .025em; }
.official-home .hero-rule { display: none; }
.official-home .official-daily-main { display: grid; gap: 0; width: 100%; min-height: 198px; margin-top: 4px; padding: 18px 20px 16px; border: 1px solid #238ba4; border-radius: 16px; background: radial-gradient(circle at 88% 12%, #05617a 0, transparent 45%), linear-gradient(125deg, #072944, #043e59); color: #fff; font: inherit; text-align: left; box-shadow: 0 14px 27px #001c2c50; cursor: pointer; }
.official-home .official-daily-main::after { display: none; }
.official-daily-main-top, .official-daily-main-bottom { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; }
.official-daily-main-kicker { display: inline-flex; align-items: center; gap: 9px; color: #bddbee; font-size: .69rem; font-weight: 850; letter-spacing: .1em; white-space: nowrap; }
.official-daily-main-kicker img { width: 30px; height: 30px; object-fit: contain; }
.official-daily-main-compare { max-width: 48%; padding: 6px 9px; border: 1px solid #ffffff38; border-radius: 10px; background: #ffffff13; color: #d7e6ef; font-size: .66rem; font-weight: 800; line-height: 1.15; text-align: center; }
.official-daily-main-compare.is-up { border-color: #38d6a06b; background: #047c6070; color: #caffeb; }
.official-daily-main-compare.is-down { border-color: #ff8a8a7a; background: #a72f3a70; color: #ffe0e2; }
.official-daily-main-compare.is-flat { color: #e1edf2; }
.official-daily-main-label { margin-top: 15px; font-size: 1.12rem; line-height: 1.1; }
.official-home .official-daily-main #daily-title { display: block; margin-top: 3px; font-size: clamp(2rem, 9vw, 2.65rem); line-height: 1.08; letter-spacing: -.055em; }
.official-home .official-daily-main #daily-detail { margin-top: 2px; color: #c2dbe8; font-size: .72rem; }
.official-daily-main-bottom { align-self: end; margin-top: 14px; padding-top: 11px; border-top: 1px solid #ffffff40; }
.official-home .official-daily-main #hero-context { color: #bdd9e7; font-size: .67rem; line-height: 1.3; }
.official-daily-main-link { flex: none; color: #fff; font-size: .72rem; font-weight: 800; white-space: nowrap; }
.official-daily-main-link span { margin-left: 3px; font-size: 1rem; }
.official-daily-main:disabled { cursor: default; }
.official-daily-main:disabled .official-daily-main-link { display: none; }
@media (max-width: 370px) { .official-home .official-daily-main { padding: 15px; } .official-daily-main-kicker { gap: 5px; font-size: .6rem; } .official-daily-main-kicker img { width: 27px; height: 27px; } .official-daily-main-compare { font-size: .6rem; } .official-daily-main-bottom { gap: 7px; } }
.official-section-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin: 7px 0 8px; color: #fff; }
.official-section-heading h2 { margin: 0; font-size: .98rem; }
.official-section-heading span { max-width: 48%; color: #bed8e8; font-size: .68rem; text-align: right; }
.official-home .stories { padding-bottom: 16px; }
.official-story { gap: 4px; min-height: 82px; color: #eaf5fa; }
.official-home #feed-section { margin-top: 24px; padding-top: 18px; }
.official-home .feed-heading { margin: 0 0 13px; color: #082b4c; }
.official-insight-card { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 92px; padding: 15px; border: 1px solid #cfe2e8; border-left: 4px solid #0b9b91; border-radius: 15px; background: linear-gradient(115deg, #fff, #f2fbfb); color: #082b4c; text-align: left; box-shadow: 0 5px 15px #082b4c0c; cursor: pointer; }
.official-insight-card:focus-visible, .official-feed-card:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
.official-insight-copy { display: grid; gap: 5px; min-width: 0; }
.official-insight-copy strong { font-size: 1rem; line-height: 1.2; overflow-wrap: anywhere; }
.official-insight-copy small { color: #405e73; font-size: .76rem; line-height: 1.4; }
.official-insight-copy .official-insight-context { color: #657f90; font-size: .67rem; }
.official-insight-value { flex: none; max-width: 34%; color: #087d6a; font-size: .8rem; text-align: right; }
.official-insight-card .official-feed-kicker { font-size: .68rem; }
.official-insight-icon { flex: none; width: 38px; height: 38px; object-fit: contain; }
.official-group-card { display: grid; gap: 13px; width: 100%; padding: 16px 16px 14px; border: 1px solid #bde2e5; border-left: 4px solid #0b9b91; border-radius: 19px; background: #fff; color: #082b4c; text-align: left; box-shadow: 0 9px 22px #082b4c0e; cursor: pointer; }
.official-group-card-top { display: flex; align-items: center; gap: 9px; min-width: 0; }
.official-group-card-icon { display: flex; align-items: end; gap: 3px; justify-content: center; flex: none; width: 38px; height: 38px; padding: 9px 7px; border-radius: 12px; background: #e8f5f5; }
.official-group-card-icon i { display: block; width: 5px; background: #fb811c; }
.official-group-card-icon i:nth-child(1) { height: 10px; }
.official-group-card-icon i:nth-child(2) { height: 16px; }
.official-group-card-icon i:nth-child(3) { height: 22px; }
.official-group-card-kicker { flex: 1; min-width: 0; color: #087d79; font-size: .68rem; font-weight: 900; letter-spacing: .045em; text-transform: uppercase; }
.official-group-card-rank { flex: none; padding: 6px 8px; border-radius: 20px; background: #e9f6f3; color: #087d79; font-size: .68rem; font-weight: 850; text-transform: uppercase; }
.official-group-card-main { display: flex; align-items: center; justify-content: space-between; gap: 9px; min-width: 0; }
.official-group-card-value { display: grid; gap: 3px; min-width: 0; }
.official-group-card-value strong { font-size: 1.5rem; line-height: 1.1; overflow-wrap: anywhere; }
.official-group-card-value b { font-size: clamp(1.55rem, 7vw, 2rem); line-height: 1.1; letter-spacing: -.045em; white-space: nowrap; }
.official-group-card-share { display: grid; place-items: center; flex: none; min-width: 103px; padding: 11px 8px; border-radius: 14px; background: #e9f6f3; color: #087d79; }
.official-group-card-share strong { font-size: 1.38rem; line-height: 1.1; }
.official-group-card-share small { margin-top: 3px; color: #526f78; font-size: .65rem; }
.official-group-card-caption { color: #526e83; font-size: .76rem; }
.official-group-card-track, .official-group-share-track { display: block; height: 8px; overflow: hidden; border-radius: 20px; background: #e6edf0; }
.official-group-card-fill, .official-group-share-fill { display: block; height: 100%; border-radius: inherit; background: #0a9d97; }
.official-group-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 7px; padding-top: 12px; border-top: 1px solid #dce7ea; }
.official-group-card-context { display: grid; gap: 3px; min-width: 0; color: #526e83; font-size: .69rem; }
.official-group-card-context small { color: #738a9b; font-size: .61rem; line-height: 1.3; }
.official-group-card-action { flex: none; color: #087d79; font-size: .73rem; font-weight: 850; white-space: nowrap; }
.official-group-card:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
@media (max-width: 370px) { .official-group-card { padding: 13px 11px; } .official-group-card-share { min-width: 89px; padding: 9px 5px; } .official-group-card-share strong { font-size: 1.19rem; } .official-group-card-value b { font-size: 1.45rem; } }
.official-group-dialog { width: min(100vw, 430px); height: min(100dvh, 850px); max-height: 100dvh; margin: auto; padding: 0; border: 0; border-radius: 18px; background: #f5f8fa; color: #082b4c; box-shadow: 0 22px 70px #001c33aa; }
.official-group-dialog[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; }
.official-group-dialog::backdrop { background: #031b2ccb; }
.official-group-dialog-head { display: flex; align-items: flex-start; gap: 9px; min-height: 136px; padding: 21px 20px 18px; border-bottom: 1px solid #e1e8ef; background: #fff; }
.official-group-dialog-head div { flex: 1; min-width: 0; }
.official-group-dialog-head span { color: #087f84; font-size: .64rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.official-group-dialog-head h2 { margin: 10px 0 3px; font-size: 1.55rem; line-height: 1.1; letter-spacing: -.035em; }
.official-group-dialog-head p, .official-group-dialog-head small { display: block; margin: 3px 0 0; color: #637991; font-size: .72rem; }
.official-group-dialog-head button { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border: 1px solid #ccd9e5; border-radius: 50%; background: #f7f9fb; color: #071c39; font-size: 1.5rem; }
.official-group-dialog-body { display: grid; align-content: start; gap: 13px; min-height: 0; padding: 16px 18px 22px; overflow-y: auto; overscroll-behavior: contain; }
.official-group-leader { display: grid; gap: 11px; padding: 17px 16px; border: 1px solid #c6e2e5; border-left: 4px solid #0b9b91; border-radius: 16px; background: #fff; }
.official-group-leader-kicker { color: #087d79; font-size: .67rem; font-weight: 850; text-transform: uppercase; }
.official-group-leader-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; }
.official-group-leader-copy { display: grid; gap: 5px; min-width: 0; }
.official-group-leader-copy strong { font-size: 1.4rem; overflow-wrap: anywhere; }
.official-group-leader-copy b { font-size: 1.58rem; letter-spacing: -.04em; white-space: nowrap; }
.official-group-leader-share { display: grid; place-items: center; flex: none; padding: 9px; border-radius: 13px; background: #e9f6f3; color: #087d79; }
.official-group-leader-share strong { font-size: 1.12rem; }
.official-group-leader-share small { color: #5c7983; font-size: .61rem; }
.official-group-leader > small { color: #657f90; font-size: .67rem; }
.official-group-warning { display: flex; gap: 10px; align-items: center; padding: 12px; border: 1px solid #f4d8a2; border-radius: 13px; background: #fff9ec; }
.official-group-warning-icon { display: grid; place-items: center; flex: none; width: 31px; height: 31px; border-radius: 50%; background: #ffdf9e; color: #a66b00; font-weight: 900; }
.official-group-warning-copy { display: grid; gap: 3px; }
.official-group-warning-copy strong { color: #654a16; font-size: .76rem; }
.official-group-warning-copy small { color: #8c774f; font-size: .68rem; }
.official-group-list-heading { display: flex; align-items: center; justify-content: space-between; gap: 9px; margin-top: 2px; }
.official-group-list-heading h3 { margin: 0; font-size: 1rem; }
.official-group-list-count { padding: 6px 9px; border-radius: 20px; background: #e9f1f4; color: #486678; font-size: .67rem; font-weight: 800; }
.official-group-search { min-height: 46px; border: 1px solid #d2e0e8; border-radius: 12px; background: #fff; }
.official-group-filters { display: flex; gap: 6px; }
.official-group-filters button { flex: 1; min-width: 0; min-height: 38px; padding: 6px 5px; border: 1px solid #d1e1e9; border-radius: 20px; background: #fff; color: #537389; font-size: .67rem; }
.official-group-filters button[aria-pressed="true"] { border-color: #087f84; background: #087f84; color: #fff; font-weight: 800; }
.official-group-list { display: grid; gap: 8px; }
.official-group-row { display: grid; grid-template-columns: 29px minmax(0, 1fr) auto; align-items: center; gap: 8px; min-height: 73px; padding: 11px 10px; border: 1px solid #d8e5eb; border-radius: 13px; background: #fff; }
.official-group-row-rank { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: #e5f5f3; color: #087f84; font-size: .68rem; font-weight: 850; }
.official-group-row-rank.is-unregistered { background: #fff0d5; color: #b77605; }
.official-group-row-copy, .official-group-row-metrics { display: grid; gap: 6px; min-width: 0; }
.official-group-row-copy strong { font-size: .79rem; line-height: 1.15; overflow-wrap: anywhere; }
.official-group-row-copy small { color: #72899b; font-size: .65rem; }
.official-group-row-metrics { text-align: right; }
.official-group-row-metrics strong { font-size: .79rem; white-space: nowrap; }
.official-group-row-metrics span { color: #087d79; font-size: .7rem; font-weight: 800; }
.official-group-row:has(.is-unregistered) .official-group-row-metrics span { color: #b77605; }
.official-group-empty { margin: 0; padding: 15px; border-radius: 12px; background: #fff; color: #637991; font-size: .8rem; }
.official-group-dialog-footer { min-height: 70px; background: #fff; }
.official-group-dialog-footer .bottom-nav { position: static; inset: auto; width: 100%; max-width: none; margin: 0; border-radius: 0 0 18px 18px; transform: none; box-shadow: 0 -7px 24px #082b4c14; }
@media (max-width: 650px) { .official-group-dialog { width: 100vw; height: 100dvh; max-height: 100dvh; border-radius: 0; } .official-group-dialog-footer .bottom-nav { border-radius: 0; } }
.official-daily-dialog { width: min(100vw, 430px); height: min(100dvh, 850px); max-height: 100dvh; margin: auto; padding: 0; border: 0; border-radius: 18px; background: #f6f9fc; color: #082b4c; box-shadow: 0 22px 70px #001c33aa; }
.official-daily-dialog[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; }
.official-daily-dialog::backdrop { background: #031b2ccb; }
.official-daily-dialog-head { display: flex; align-items: center; gap: 11px; min-height: 132px; padding: 25px 22px 20px; border-bottom: 1px solid #e1e8ef; background: #fff; color: #071c39; }
.official-daily-dialog-head div { flex: 1; min-width: 0; }
.official-daily-dialog-kicker { display: block; margin-bottom: 8px; color: #526888; font-size: .65rem; font-weight: 850; letter-spacing: .15em; text-transform: uppercase; }
.official-daily-dialog-head p { margin: 4px 0 0; color: #61718d; font-size: .78rem; font-weight: 650; }
.official-daily-dialog-head h2 { margin: 0; font-size: 1.55rem; line-height: 1.1; letter-spacing: -.035em; }
.official-daily-dialog-head button { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border: 1px solid #ccd9e5; border-radius: 50%; background: #f7f9fb; color: #071c39; font-size: 1.5rem; }
.official-daily-dialog-body { display: grid; align-content: start; gap: 12px; min-height: 0; padding: 16px 12px 18px; overflow-y: auto; overscroll-behavior: contain; }
.official-daily-detail-hero { display: flex; align-items: flex-start; gap: 13px; padding: 22px 16px; border-radius: 14px; background: radial-gradient(circle at 95% 100%, #089a9c, transparent 45%), linear-gradient(125deg, #072541, #064760); color: #fff; }
.official-daily-hero-icon { flex: none; width: 45px; height: 45px; object-fit: contain; padding: 7px; border-radius: 50%; background: #ffffff28; }
.official-daily-hero-copy { display: grid; gap: 6px; min-width: 0; }
.official-daily-hero-copy span { color: #e0f8fa; font-size: .84rem; font-weight: 700; }
.official-daily-hero-copy strong { font-size: clamp(1.9rem, 8vw, 2.5rem); line-height: 1.1; letter-spacing: -.045em; }
.official-daily-hero-copy small { width: fit-content; padding: 5px 9px; border-radius: 20px; background: #0032498c; color: #d4fbec; font-size: .69rem; }
.official-daily-detail-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.official-daily-detail-stat { display: flex; align-items: center; gap: 9px; min-width: 0; padding: 13px 10px; border: 1px solid #e3eaf1; border-radius: 12px; background: #fff; }
.official-daily-detail-stat img { width: 35px; height: 35px; object-fit: contain; }
.official-daily-stat-copy { display: grid; gap: 2px; min-width: 0; }
.official-daily-detail-stat strong { font-size: 1.05rem; overflow-wrap: anywhere; }
.official-daily-detail-stat span, .official-daily-source { color: #617487; font-size: .72rem; }
.official-daily-source { margin: 0; line-height: 1.4; }
.official-daily-comparison, .official-daily-detail-section { padding: 16px 13px; border: 1px solid #e3eaf1; border-radius: 13px; background: #fff; box-shadow: 0 3px 12px #082b4c08; }
.official-daily-comparison h3, .official-daily-detail-section h3 { margin: 0 0 9px; font-size: .96rem; }
.official-daily-comparison p, .official-daily-detail-section p { margin: 5px 0 0; color: #40576b; font-size: .78rem; line-height: 1.45; }
.official-daily-compare-subtitle { color: #6b7e90 !important; }
.official-daily-compare-values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; margin: 13px 0; }
.official-daily-compare-values .official-daily-detail-stat { padding: 6px 2px; border: 0; }
.official-daily-compare-values .official-daily-detail-stat strong { font-size: 1.13rem; }
.official-daily-compare-bars { display: grid; gap: 9px; margin: 16px 0; }
.official-daily-bar-row, .official-daily-pdv-row { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: center; gap: 8px; font-size: .73rem; }
.official-daily-bar-row b, .official-daily-pdv-row b { white-space: nowrap; font-size: .72rem; }
.official-daily-bar-track { height: 17px; overflow: hidden; border-radius: 5px; background: #e7edf2; }
.official-daily-bar-track span { display: block; height: 100%; border-radius: inherit; }
.official-daily-bar-track .is-today { background: #13a895; }
.official-daily-bar-track .is-yesterday { background: #bdcbd5; }
.official-daily-bar-track .is-pdv { background: #ff851b; }
.official-daily-delta { padding: 12px; border-radius: 10px; background: #e8f7f1; color: #087d6a; font-size: .94rem; font-weight: 800; }
.official-daily-comparison.is-negative .official-daily-delta { background: #fff0ea; color: #ae3e32; }
.official-daily-compare-notice { display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 9px; background: #fff5e9; }
.official-daily-notice-icon { display: grid; place-items: center; flex: none; width: 29px; height: 29px; border-radius: 50%; background: #ff831c; color: #fff; font-weight: 900; }
.official-daily-notice-copy { display: grid; gap: 3px; }
.official-daily-notice-copy strong { font-size: .79rem; }
.official-daily-notice-copy small { color: #6e7480; font-size: .69rem; }
.official-daily-pdv-row { grid-template-columns: 49px minmax(0, 1fr) auto; margin-top: 12px; }
.official-daily-detail-section small { display: block; margin-top: 5px; color: #657f90; font-size: .7rem; }
.official-daily-dialog-footer { min-height: 70px; background: #fff; }
.official-daily-dialog-footer .bottom-nav { position: static; inset: auto; width: 100%; max-width: none; margin: 0; border-radius: 0 0 18px 18px; transform: none; box-shadow: 0 -7px 24px #082b4c14; }
@media (max-width: 650px) { .official-daily-dialog { width: 100vw; height: 100dvh; max-height: 100dvh; border-radius: 0; } }
@media (max-width: 650px) { .official-daily-dialog-footer .bottom-nav { border-radius: 0; } }
.official-feed-card { display: grid; gap: 5px; width: 100%; min-height: 91px; padding: 14px 16px; border: 1px solid #dce6ee; border-left: 4px solid #0b9b91; border-radius: 15px; background: #fff; color: #082b4c; text-align: left; box-shadow: 0 5px 15px #082b4c0c; }
.official-feed-card strong { font-size: .89rem; line-height: 1.25; }
.official-feed-card small { color: #526e83; font-size: .73rem; line-height: 1.35; }
.official-feed-kicker { color: #087d74; font-size: .66rem; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.official-home-action { text-align: center; margin-top: 8px; }
.official-story-dialog { width: min(100vw, 430px); min-height: 100dvh; max-height: 100dvh; margin: 0 auto; padding: 22px 20px calc(28px + env(safe-area-inset-bottom)); border: 0; background: radial-gradient(circle at 82% 20%, #0b6771, transparent 42%), linear-gradient(160deg, #061c31, #093957); color: #fff; }
.official-story-dialog::backdrop { background: #061c31c9; }
.official-story-progress { display: flex; gap: 5px; margin-right: 47px; }
.official-story-progress span { flex: 1; height: 4px; border-radius: 4px; background: #ffffff54; }
.official-story-progress .active { background: #ff972f; }
.official-story-close { position: absolute; top: 13px; right: 16px; width: 44px; height: 44px; border: 0; border-radius: 50%; background: #ffffff26; color: #fff; font-size: 1.6rem; }
.official-story-kicker { margin: 22vh 0 10px; color: #99e9e4; font-size: .76rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.official-story-dialog h2 { margin: 0; max-width: 24ch; font-size: clamp(1.8rem, 7vw, 2.6rem); line-height: 1.08; }
.official-story-time { margin: 14px 0 0; color: #d5e8f0; font-size: .83rem; }
.official-story-count { margin: 26px 0 0; color: #fff; font-size: .92rem; }
.official-story-actions { display: flex; gap: 9px; margin-top: 32px; }
.official-story-actions button, .official-story-detail { min-height: 46px; padding: 9px 15px; border: 1px solid #ffffff82; border-radius: 12px; background: #ffffff15; color: #fff; font-weight: 800; }
.official-story-actions button:disabled { opacity: .4; }
.official-story-next { flex: 1; }
.official-story-detail { width: 100%; margin-top: 10px; border-color: #f58220; background: #f58220; }
#quick-summary:has(.official-summary-card) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.official-summary-card { display: grid; align-content: space-between; gap: 7px; min-width: 0; min-height: 62px; padding: 9px; border-radius: 10px; background: #f1f6fa; }
.official-summary-card span { color: #36536d; font-size: .72rem; line-height: 1.2; overflow-wrap: anywhere; }
.official-summary-card strong { color: #082b4c; font-size: 1rem; }
.official-home-action { width: 100%; min-height: 46px; border: 0; border-radius: 12px; padding: 11px 14px; background: #f58220; color: #fff; font-weight: 800; text-align: left; }
.official-ranking-title { margin: 2px 0 0; color: #082b4c; font-size: 1.04rem; }
.official-ranking-note { margin: 0 0 4px; color: #557287; font-size: .78rem; line-height: 1.4; }
.official-ranking-card { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; border: 1px solid #dce6ee; border-radius: 13px; background: #fff; box-shadow: 0 3px 9px #082b4c0a; }
.official-ranking-copy { display: grid; gap: 3px; min-width: 0; }
.official-ranking-copy strong { overflow-wrap: anywhere; color: #082b4c; font-size: .85rem; }
.official-ranking-copy small { color: #557287; font-size: .74rem; }
.official-ranking-card b { flex: none; color: #087d6a; font-size: .8rem; text-align: right; }
@media (max-width: 650px) { .official-controls { grid-template-columns: 1fr; } .official-panel { padding: 20px 14px 100px; } }
.official-home .official-insight-card, .official-home .official-feed-card { display: grid; align-items: start; gap: 9px; min-height: 112px; padding: 16px; border: 1px solid #d4e3e9; border-left: 4px solid #0a9991; border-radius: 16px; background: #fff; color: #082844; text-align: left; box-shadow: 0 5px 16px #0828440a; }
.official-home .official-insight-value { max-width: none; color: #087f7b; text-align: left; }
.official-home .official-feed-card .official-insight-action { padding-top: 8px; border-top: 1px solid #e2ebee; }
.official-home .official-summary-card { min-height: 73px; padding: 12px; border: 1px solid #d8e5eb; border-radius: 13px; background: #fff; }
.official-home .official-ranking-card { min-height: 68px; border-color: #d8e5eb; }
.official-home .official-ranking-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; width: 100%; text-align: left; cursor: pointer; }
.official-ranking-context { grid-column: 1 / -1; padding-top: 8px; border-top: 1px solid #e2ebee; color: #61798c; font-size: .67rem; line-height: 1.35; }
.official-home .official-summary-card { width: 100%; color: #082844; font: inherit; text-align: left; cursor: pointer; }
.official-summary-card small { color: #61798c; font-size: .64rem; line-height: 1.3; }
.official-ranking-card:focus-visible, .official-summary-card:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
.official-story-dialog { background: #f5f8fa; color: #082844; }
.official-story-progress span { background: #d7e7eb; }
.official-story-progress .active { background: #0a9991; }
.official-story-close { border: 1px solid #ccd9e5; background: #fff; color: #082844; }
.official-story-kicker { margin: 15vh 0 12px; color: #087f7b; }
.official-story-dialog h2 { color: #082844; }
.official-story-time, .official-story-count { color: #526e83; }
.official-story-actions button { border-color: #d1e1e9; background: #fff; color: #082844; }
.official-story-detail { border-color: #f58220; background: #f58220; color: #fff; }
.official-peak-card { display: grid; gap: 10px; width: 100%; min-height: 143px; padding: 14px 15px 12px; border: 1px solid #d4e3e9; border-left: 4px solid #0a9991; border-radius: 16px; background: #fff; color: #082844; text-align: left; box-shadow: 0 5px 16px #0828440a; cursor: pointer; }
.official-peak-card-top { display: flex; align-items: center; gap: 8px; }
.official-peak-card-icon { width: 24px; height: 24px; object-fit: contain; padding: 3px; border-radius: 50%; background: #e6f5f3; }
.official-peak-card-kicker { color: #087f7b; font-size: .68rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.official-peak-card-main { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.official-peak-card-time { font-size: clamp(1.85rem, 8vw, 2.3rem); line-height: 1; letter-spacing: -.045em; }
.official-peak-card-metrics { display: grid; gap: 4px; min-width: 96px; text-align: right; }
.official-peak-card-metrics strong { font-size: .83rem; line-height: 1.15; }
.official-peak-card-metrics b { color: #087f7b; font-size: .78rem; }
.official-peak-card-context { color: #637d8d; font-size: .68rem; }
.official-peak-card-footer { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding-top: 9px; border-top: 1px solid #e2ebee; }
.official-peak-card-footer small { color: #61798c; font-size: .69rem; }
.official-peak-card-action { color: #087f7b; font-size: .75rem; font-weight: 850; white-space: nowrap; }
.official-peak-card:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
.official-peak-card:disabled { border-left-color: #b9cbd2; background: #f8fafb; cursor: default; }
.official-peak-card:disabled .official-peak-card-action { color: #708595; }
.official-peak-dialog { width: min(100vw, 430px); height: min(100dvh, 850px); max-height: 100dvh; margin: auto; padding: 0; border: 0; border-radius: 18px; background: #f5f8fa; color: #082844; box-shadow: 0 22px 70px #001c33aa; }
.official-peak-dialog[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; }
.official-peak-dialog::backdrop { background: #031b2ccb; }
.official-peak-dialog-head { display: flex; align-items: flex-start; gap: 10px; padding: 21px 20px 18px; border-bottom: 1px solid #e1e8ef; background: #fff; }
.official-peak-dialog-head > div { flex: 1; min-width: 0; }
.official-peak-dialog-head span { color: #087f84; font-size: .66rem; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.official-peak-dialog-head h2 { margin: 8px 0 4px; font-size: 1.55rem; line-height: 1.12; }
.official-peak-dialog-head p, .official-peak-dialog-head small { display: block; margin: 3px 0 0; color: #61798c; font-size: .74rem; }
.official-peak-dialog-head button { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border: 1px solid #ccd9e5; border-radius: 50%; background: #f7f9fb; color: #082844; font-size: 1.5rem; }
.official-peak-dialog-body { display: grid; align-content: start; gap: 13px; min-height: 0; padding: 16px 18px 22px; overflow-y: auto; overscroll-behavior: contain; }
.official-peak-hero { display: grid; gap: 10px; padding: 20px; border-radius: 15px; background: linear-gradient(120deg, #082844, #075469); color: #fff; }
.official-peak-hero-kicker { color: #b9e2e5; font-size: .69rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.official-peak-hero-time { font-size: clamp(2.6rem, 12vw, 3.8rem); line-height: 1; letter-spacing: -.055em; }
.official-peak-hero-metrics { display: flex; justify-content: space-between; gap: 10px; padding-top: 12px; border-top: 1px solid #ffffff42; font-size: .88rem; font-weight: 800; }
.official-peak-hero-metrics span:last-child { color: #bbf2ea; }
.official-peak-meaning, .official-peak-source { padding: 17px; border: 1px solid #d8e5eb; border-radius: 14px; background: #fff; }
.official-peak-meaning h3, .official-peak-source h3 { margin: 0 0 8px; color: #082844; font-size: .96rem; }
.official-peak-meaning p, .official-peak-source p { margin: 0; color: #5f7889; font-size: .78rem; line-height: 1.5; }
.official-peak-source-fields { display: grid; margin: 12px 0 0; }
.official-peak-source-field { display: flex; justify-content: space-between; gap: 10px; padding: 9px 0; border-top: 1px solid #edf1f3; }
.official-peak-source-field dt { color: #61798c; font-size: .75rem; }
.official-peak-source-field dd { margin: 0; color: #082844; font-size: .76rem; font-weight: 800; text-align: right; overflow-wrap: anywhere; }
.official-peak-source-row-title { padding: 10px 0; color: #087f7b; font-size: .75rem; font-weight: 800; }
.official-peak-state { margin: 0; padding: 18px; border: 1px solid #d8e5eb; border-radius: 14px; background: #fff; color: #526e83; font-size: .82rem; line-height: 1.5; }
.official-peak-dialog-footer { min-height: 70px; background: #fff; }
.official-peak-dialog-footer .bottom-nav { position: static; inset: auto; width: 100%; max-width: none; margin: 0; border-radius: 0 0 18px 18px; transform: none; box-shadow: 0 -7px 24px #082b4c14; }
@media (max-width: 650px) { .official-peak-dialog { width: 100vw; height: 100dvh; max-height: 100dvh; border-radius: 0; } .official-peak-dialog-footer .bottom-nav { border-radius: 0; } }
.official-pdv-card { display: grid; gap: 9px; width: 100%; min-height: 143px; padding: 14px 15px 12px; border: 1px solid #d4e3e9; border-left: 4px solid #0a9991; border-radius: 16px; background: #fff; color: #082844; text-align: left; box-shadow: 0 5px 16px #0828440a; cursor: pointer; }
.official-pdv-card-top { display: flex; align-items: center; gap: 8px; }
.official-pdv-card-icon { width: 24px; height: 24px; object-fit: contain; padding: 3px; border-radius: 50%; background: #e6f5f3; }
.official-pdv-card-kicker { color: #087f7b; font-size: .68rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.official-pdv-card-main { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.official-pdv-card-copy { display: grid; gap: 3px; min-width: 0; }
.official-pdv-card-copy strong { font-size: 1.35rem; line-height: 1.1; }
.official-pdv-card-copy b { font-size: 1.55rem; line-height: 1.1; }
.official-pdv-card-sales { flex: none; display: grid; place-items: center; min-width: 74px; min-height: 54px; padding: 7px; border-radius: 12px; background: #e7f4f2; color: #087f7b; font-size: .77rem; font-weight: 800; text-align: center; }
.official-pdv-card-context { color: #637d8d; font-size: .68rem; }
.official-pdv-card-footer { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding-top: 9px; border-top: 1px solid #e2ebee; }
.official-pdv-card-footer small { color: #61798c; font-size: .69rem; }
.official-pdv-card-action { color: #087f7b; font-size: .75rem; font-weight: 850; white-space: nowrap; }
.official-pdv-card:focus-visible, .official-pdv-entry summary:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
.official-pdv-card:disabled { border-left-color: #b9cbd2; background: #f8fafb; cursor: default; }
.official-pdv-card:disabled .official-pdv-card-action { color: #708595; }
.official-pdv-dialog { width: min(100vw, 430px); height: min(100dvh, 850px); max-height: 100dvh; margin: auto; padding: 0; border: 0; border-radius: 18px; background: #f5f8fa; color: #082844; box-shadow: 0 22px 70px #001c33aa; }
.official-pdv-dialog[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; }
.official-pdv-dialog::backdrop { background: #031b2ccb; }
.official-pdv-dialog-head { display: flex; align-items: flex-start; gap: 10px; padding: 21px 20px 18px; border-bottom: 1px solid #e1e8ef; background: #fff; }
.official-pdv-dialog-head > div { flex: 1; min-width: 0; }
.official-pdv-dialog-head span { color: #087f84; font-size: .66rem; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.official-pdv-dialog-head h2 { margin: 8px 0 4px; font-size: 1.55rem; line-height: 1.12; }
.official-pdv-dialog-head p, .official-pdv-dialog-head small { display: block; margin: 3px 0 0; color: #61798c; font-size: .74rem; }
.official-pdv-dialog-head button { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border: 1px solid #ccd9e5; border-radius: 50%; background: #f7f9fb; color: #082844; font-size: 1.5rem; }
.official-pdv-dialog-body { display: grid; align-content: start; gap: 16px; min-height: 0; padding: 18px 20px 24px; overflow-y: auto; overscroll-behavior: contain; }
.official-pdv-hero { display: grid; gap: 9px; padding: 24px; border-radius: 17px; background: linear-gradient(120deg, #082844, #075469); color: #fff; }
.official-pdv-hero-kicker { color: #b9e2e5; font-size: .69rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.official-pdv-hero-name { margin-top: 11px; font-size: 2.2rem; line-height: 1; }
.official-pdv-hero-value { font-size: 2.4rem; line-height: 1.12; }
.official-pdv-hero small { color: #b9e2e5; font-size: .85rem; }
.official-pdv-comparison { padding: 20px; border: 1px solid #d8e5eb; border-radius: 17px; background: #fff; }
.official-pdv-comparison h3 { margin: 0 0 5px; font-size: 1.22rem; }
.official-pdv-comparison > p { margin: 0 0 12px; color: #61798c; font-size: .81rem; }
.official-pdv-entry { border-bottom: 1px solid #e2ebee; }
.official-pdv-entry summary { display: grid; gap: 11px; padding: 17px 0; list-style: none; cursor: pointer; }
.official-pdv-entry summary::-webkit-details-marker { display: none; }
.official-pdv-entry-heading { display: flex; justify-content: space-between; gap: 8px; font-size: .94rem; }
.official-pdv-entry-track { height: 12px; border-radius: 9px; background: #e6edef; overflow: hidden; }
.official-pdv-entry-fill { display: block; height: 100%; border-radius: inherit; background: #0a9991; }
.official-pdv-entry:nth-of-type(even) .official-pdv-entry-fill { background: #f58220; }
.official-pdv-entry summary small { color: #718a9a; font-size: .74rem; }
.official-pdv-entry-fields { display: grid; margin: 0 0 14px; padding: 8px 12px; border-radius: 10px; background: #f5f8fa; }
.official-pdv-entry-field { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; border-bottom: 1px solid #e2ebee; }
.official-pdv-entry-field:last-child { border: 0; }
.official-pdv-entry-field dt { color: #61798c; font-size: .72rem; }
.official-pdv-entry-field dd { margin: 0; color: #082844; font-size: .74rem; font-weight: 750; text-align: right; overflow-wrap: anywhere; }
.official-pdv-comparison-note { display: block; margin-top: 16px; color: #718a9a; font-size: .7rem; line-height: 1.5; }
.official-pdv-count { color: #718a9a; font-size: .72rem; }
.official-pdv-dialog-footer { min-height: 70px; background: #fff; }
.official-pdv-dialog-footer .bottom-nav { position: static; inset: auto; width: 100%; max-width: none; margin: 0; border-radius: 0 0 18px 18px; transform: none; box-shadow: 0 -7px 24px #082b4c14; }
@media (max-width: 650px) { .official-pdv-dialog { width: 100vw; height: 100dvh; max-height: 100dvh; border-radius: 0; } .official-pdv-dialog-footer .bottom-nav { border-radius: 0; } }

/* MVP do cliente: atalhos e leitura dos relatórios oficiais em cartões. */
.official-shortcuts { margin: 12px 0 4px; padding: 16px; border: 1px solid #e2eaf1; border-radius: 20px; background: #fff; box-shadow: 0 8px 22px #0828440c; }
.official-shortcuts h2 { margin: 0 0 10px; color: #082844; font-size: 1.12rem; }
.official-shortcut-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.official-pdv-trends-dialog { position: fixed; inset: 0; width: min(calc(100vw - 24px), 440px); height: fit-content; max-height: calc(100dvh - 24px); margin: auto; padding: 0; border: 0; border-radius: 20px; background: #f5f8fa; color: #082844; box-shadow: 0 22px 70px #001c33aa; }
.official-pdv-trends-dialog[open] { display: flex; flex-direction: column; }
.official-pdv-trends-dialog::backdrop { background: #031b2ccb; }
.official-pdv-trends-head { display: flex; align-items: start; gap: 12px; padding: 20px 18px 15px; background: #fff; }
.official-pdv-trends-head > div { flex: 1; min-width: 0; }
.official-pdv-trends-head span, .official-pdv-trends-kicker { color: #087f84; font-size: .66rem; font-weight: 850; letter-spacing: .07em; }
.official-pdv-trends-head h2 { margin: 5px 0; font-size: 1.55rem; line-height: 1.15; }
.official-pdv-trends-head p { margin: 0; color: #587183; font-size: .75rem; }
.official-pdv-trends-head button { flex: none; width: 44px; height: 44px; border: 1px solid #d3e1e8; border-radius: 50%; background: #f7fafb; color: #082844; font-size: 1.5rem; cursor: pointer; }
.official-pdv-trends-tabs { display: grid; flex: none; grid-template-columns: repeat(3, 1fr); gap: 7px; padding: 0 18px 14px; background: #fff; }
.official-pdv-trends-tabs button { height: 44px; border: 1px solid #d5e3e9; border-radius: 11px; background: #fff; color: #526d7c; font: inherit; font-size: .82rem; font-weight: 750; cursor: pointer; }
.official-pdv-trends-tabs button[aria-pressed="true"] { border-color: #087f84; background: #e7f6f5; color: #075f63; }
.official-pdv-trends-tabs button:focus-visible, .official-pdv-trends-head button:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
.official-pdv-trends-body { flex: 0 1 auto; min-height: 0; padding: 16px 18px 20px; overflow-y: auto; overscroll-behavior: contain; }
.official-pdv-trends-hero, .official-pdv-trends-panel { display: grid; gap: 10px; padding: 18px; border: 1px solid #d6e7e9; border-left: 4px solid #0a9991; border-radius: 16px; background: #fff; }
.official-pdv-trends-comparison-values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.official-pdv-trends-metric { display: grid; align-content: start; gap: 7px; min-width: 0; padding: 12px; border-radius: 12px; background: #eef7f7; }
.official-pdv-trends-metric + .official-pdv-trends-metric { background: #f2f5f7; }
.official-pdv-trends-metric span { color: #496879; font-size: .76rem; font-weight: 700; }
.official-pdv-trends-metric strong { overflow-wrap: anywhere; font-size: clamp(1.02rem, 4vw, 1.3rem); line-height: 1.15; }
.official-pdv-trends-change-line { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; color: #486979; font-size: .8rem; }
.official-pdv-trends-change-badge { padding: 6px 10px; border-radius: 999px; background: #d9f2e9; color: #087057; font-size: 1.15rem; line-height: 1; }
.official-pdv-trends-change-badge[data-direction="down"] { background: #fff0e9; color: #a84725; }
.official-pdv-trends-change-badge[data-direction="flat"] { background: #e9f0f4; color: #486879; }
.official-pdv-trends-total { font-size: clamp(2rem, 8vw, 2.5rem); line-height: 1.08; }
.official-pdv-trends-change { color: #087d6a; font-size: 1rem; font-weight: 850; }
.official-pdv-trends-note, .official-pdv-trends-caption { margin: 0; color: #536e7d; font-size: .79rem; line-height: 1.45; }
.official-pdv-trends-body > .official-pdv-trends-caption { margin-top: 12px; }
.official-pdv-trends-panel h3 { margin: 0; font-size: 1.08rem; }
.official-pdv-trends-state { margin: 0; padding: 16px; border: 1px solid #d6e7e9; border-radius: 13px; background: #fff; color: #526e83; font-size: .83rem; line-height: 1.45; }
.official-pdv-trends-bars { display: grid; gap: 11px; margin-top: 5px; }
.official-pdv-trends-row { display: grid; grid-template-columns: 61px minmax(0, 1fr) 113px; align-items: center; gap: 8px; min-height: 27px; font-size: .75rem; }
.official-pdv-trends-value { display: grid; gap: 2px; text-align: right; }
.official-pdv-trends-value strong { font-size: .76rem; }
.official-pdv-trends-value small { color: #657f90; font-size: .65rem; }
.official-pdv-trends-track { position: relative; display: block; height: 11px; border-radius: 20px; background: #e8f0f2; }
.official-pdv-trends-fill { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #11a99c, #0784a5); }
.official-pdv-trends-row-champion .official-pdv-trends-fill { background: linear-gradient(90deg, #e7a928, #bd7710); }
.official-pdv-trends-trophy { position: absolute; top: 50%; right: -7px; width: 21px; height: 21px; transform: translateY(-50%); filter: drop-shadow(0 1px 2px #8d5d3255); }
.official-pdv-trends-history { display: grid; gap: 10px; padding: 15px; border-radius: 13px; background: #eef7f7; }
.official-pdv-trends-history strong { color: #075f63; font-size: 1rem; }
.official-pdv-trends-history p { margin: 0; color: #536e7d; font-size: .79rem; line-height: 1.45; }
.official-pdv-trends-history-track { display: block; height: 10px; overflow: hidden; border-radius: 999px; background: #d6e5e8; }
.official-pdv-trends-history-fill { display: block; height: 100%; border-radius: inherit; background: #0a9991; }
.official-pdv-trends-periods { display: grid; gap: 8px; }
.official-pdv-trends-periods div { padding: 12px; border-radius: 11px; background: #edf6f7; font-size: .82rem; font-weight: 750; }
@media (max-width: 350px) { .official-pdv-trends-comparison-values { grid-template-columns: 1fr; } .official-pdv-trends-row { grid-template-columns: 52px minmax(0, 1fr) 99px; gap: 5px; } }
.official-shortcut { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: 28px auto auto; align-content: start; justify-items: center; row-gap: 2px; min-height: 88px; padding: 10px 12px; border: 1px solid #d9e6ef; border-radius: 15px; background: #f3f8fc; color: #082844; text-align: center; font: inherit; cursor: pointer; transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.official-shortcuts-intro { margin: -6px 0 10px; color: #587188; font-size: .72rem; line-height: 1.2; }
.official-shortcut-icon { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 8px; background: #ffffffb8; }
.official-shortcut-icon-image { display: block; width: 19px; height: 19px; }
.official-shortcut-chevron { position: absolute; top: 10px; right: 12px; color: #5d7890; font-size: 1.1rem; line-height: 1; }
.official-shortcut strong { min-width: 0; margin-top: 2px; font-size: .92rem; line-height: 1.1; }
.official-shortcut small { overflow: hidden; max-width: 100%; color: #587188; font-size: .68rem; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.official-shortcut--products { background: #fff8f0; }
.official-shortcut--stock { grid-column: 1 / -1; background: #eef8f6; }
.official-shortcut--finance { background: #f1faf7; }
.official-shortcut--notes { background: #f7f4fc; }
.official-shortcut:hover { border-color: #a9c4d3; box-shadow: 0 5px 12px #08284413; transform: translateY(-1px); }
.official-shortcut:active { transform: translateY(0); }
@media (prefers-reduced-motion: reduce) { .official-shortcut { transition: none; } }
.official-shortcut:focus-visible, .official-report:focus-visible, .official-selected-area button:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
.official-panel { max-width: 700px; }
.official-panel h1 { color: #082844; letter-spacing: -.04em; }
.official-selected-area { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 13px; border: 1px solid #d7e6ee; border-radius: 12px; background: #eaf3f8; color: #234962; font-size: .8rem; font-weight: 700; }
.official-selected-area button { min-height: 44px; border: 0; background: transparent; color: #087d8d; font: inherit; font-weight: 800; cursor: pointer; }
.official-group { display: grid; gap: 10px; margin: 22px 0; }
.official-group h2 { margin: 0; color: #082844; font-size: 1.1rem; }
.official-report { position: relative; gap: 8px; min-height: 94px; margin: 0; padding: 16px 18px; border-color: #dce8ef; border-left: 4px solid #1686aa; border-radius: 16px; box-shadow: 0 5px 17px #0828440b; }
.official-report[data-area="products"] { border-left-color: #f58220; }
.official-report[data-area="stock"] { border-left-color: #5b8b5f; }
.official-report[data-area="finance"] { border-left-color: #149a82; }
.official-report[data-area="notes"] { border-left-color: #7b62c5; }
.official-report strong { padding-right: 50px; color: #082844; font-size: .93rem; line-height: 1.3; }
.official-report small { color: #5b7384; font-size: .74rem; }
.official-report-action { color: #087d8d; font-size: .75rem; font-weight: 800; }
.official-maintenance { display: grid; gap: 9px; margin: 12px 0; padding: 22px; border: 1px solid #f0d8b8; border-left: 4px solid #f58220; border-radius: 16px; background: #fffaf2; color: #573b1f; }
.official-maintenance strong { font-size: 1.12rem; }
.official-maintenance p { margin: 0; font-size: .85rem; line-height: 1.45; }
.official-data-dialog { --area-accent: #1686aa; }
.official-data-dialog[data-area="products"] { --area-accent: #f58220; }
.official-data-dialog[data-area="stock"] { --area-accent: #5b8b5f; }
.official-data-dialog[data-area="stock"] .official-data-dialog-head { padding: 13px 16px 12px; }
.official-data-dialog[data-area="stock"] .official-data-dialog-head h2 { margin: 4px 0 3px; font-size: 1.2rem; line-height: 1.15; }
.official-data-dialog[data-area="stock"] .official-data-dialog-body { gap: 10px; padding: 14px 16px 22px; }
.official-data-dialog-source { font-size: .65rem !important; opacity: .8; }
.official-data-dialog-source[hidden] { display: none; }
.official-data-dialog[data-area="stock"] .official-data-row summary { align-items: flex-start; min-height: 0; padding: 12px; }
.official-data-dialog[data-area="stock"] .official-data-row-preview strong { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.official-data-dialog[data-area="stock"] .official-data-row-preview small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.official-data-dialog[data-area="stock"] .official-data-row-preview .official-stock-metric { color: #133f5b; font-size: .81rem; font-weight: 800; }
.official-data-field.official-stock-name-field, .official-data-field.official-stock-supplier-field { grid-template-columns: minmax(0, 1fr); }
.official-data-field.official-stock-name-field dd, .official-data-field.official-stock-supplier-field dd { text-align: left; overflow-wrap: anywhere; }
.official-stock-supplier-list summary { min-height: 44px; display: flex; align-items: center; color: #276847; font-size: .8rem; font-weight: 750; cursor: pointer; }
.official-stock-supplier-list p { margin: 0; padding: 4px 0 8px; color: #082844; font-size: .8rem; font-weight: 600; line-height: 1.5; overflow-wrap: anywhere; }
.official-supplier-periods { display: grid; gap: 9px; padding: 15px; border: 1px solid #cfe2d2; border-radius: 16px; background: linear-gradient(145deg, #f5fbf6, #fff); }
.official-supplier-periods > strong { color: #173f31; font-size: .86rem; }
.official-supplier-period-choices { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.official-supplier-period-choices button { min-width: 0; min-height: 44px; padding: 7px 2px; border: 1px solid #cadbd1; border-radius: 11px; background: #fff; color: #315b48; font-size: .74rem; font-weight: 800; cursor: pointer; }
.official-supplier-period-choices button[aria-pressed="true"] { border-color: #286d49; background: #286d49; color: #fff; box-shadow: 0 4px 10px #286d4933; }
.official-supplier-period-choices button:disabled:not([aria-pressed="true"]) { border-style: dashed; color: #7c8f84; background: #edf2ee; cursor: not-allowed; }
.official-supplier-period-choices button small { display: block; margin-top: 1px; font-size: .55rem; font-weight: 600; }
.official-supplier-period-choices button:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
.official-supplier-periods > small { color: #597568; font-size: .71rem; line-height: 1.35; }
.official-data-dialog[data-area="stock"] .official-supplier-card { border-color: #cfe2d2; border-radius: 16px; box-shadow: 0 6px 18px #286d4910; }
.official-data-dialog[data-area="stock"] .official-supplier-card[open] { border-color: #79ae88; background: #fff; }
.official-data-dialog[data-area="stock"] .official-supplier-card summary { background: linear-gradient(135deg, #fff, #f7fcf8); }
.official-data-dialog[data-area="stock"] .official-supplier-card .official-data-row-action { color: #286d49; font-weight: 800; }
.official-data-dialog[data-area="stock"] .official-supplier-card .official-stock-supplier-field dd { padding: 11px 12px; border-radius: 10px; background: #f5faf6; line-height: 1.55; }
.official-supplier-filter-label { display: grid; gap: 7px; color: #254d3d; font-size: .8rem; font-weight: 800; }
.official-supplier-select { min-height: 48px; width: 100%; padding: 11px 13px; border: 1px solid #b9d8c3; border-radius: 12px; background: #fff; color: #143e2a; font-size: .85rem; }
.official-supplier-select:disabled { color: #75877c; background: #edf2ee; }
.official-data-dialog[data-area="finance"] { --area-accent: #149a82; }
.official-data-dialog[data-area="notes"] { --area-accent: #7b62c5; }
.official-data-dialog-head { padding: 20px; border-bottom: 0; background: #061c31; }
.official-data-dialog-head span { color: #ffba7b; }
.official-data-dialog-head h2 { color: #fff; }
.official-data-dialog-head p, .official-data-dialog-head small { color: #cbdce7; }
.official-data-dialog-head button { border-color: #ffffff55; background: #ffffff17; color: #fff; }
.official-data-dialog-body { gap: 16px; background: #f7f9fc; }
.official-data-summary { gap: 7px; padding: 21px; border-color: #dbe8ef; border-left: 5px solid var(--area-accent); border-radius: 18px; box-shadow: 0 8px 24px #0828440c; }
.official-data-kicker { color: var(--area-accent); }
.official-data-summary strong { font-size: clamp(1.8rem, 8vw, 2.35rem); overflow-wrap: anywhere; }
.official-data-list-heading h3 { color: #082844; }
.official-data-row { border-color: #dce8ef; border-radius: 16px; box-shadow: 0 5px 16px #0828440a; }
.official-data-row summary { min-height: 76px; padding: 15px; }
.official-data-row-number { width: 34px; height: 34px; background: #eaf3f8; color: #176986; }
.official-data-row-preview strong { font-size: .95rem; line-height: 1.25; overflow-wrap: anywhere; }
.official-data-row-preview small { color: #536d81; font-size: .77rem; white-space: normal; }
.official-data-row-action { color: var(--area-accent); }
.official-data-fields { padding: 0 15px 15px; }
.official-data-field { grid-template-columns: minmax(0, 45%) minmax(0, 1fr); gap: 10px; padding: 11px 0; }
.official-data-field dt, .official-data-field dd { font-size: .79rem; line-height: 1.35; }
.official-data-state { border-radius: 16px; }
@media (max-width: 370px) { .official-shortcuts { padding: 12px; } .official-shortcut-grid { gap: 8px; } .official-shortcut { padding: 9px 10px; } .official-report strong { padding-right: 0; } }

/* Produtos: cinco consultas em uma leitura curta, com detalhes separados. */
.official-products-panel { min-height: calc(100dvh - 94px); margin: -16px -16px -94px; padding: 18px 16px 110px; background: #f8fafc; color: #082844; }
.official-products-content, .official-products-detail-content { display: grid; gap: 12px; max-width: 640px; margin: 12px auto 0; }
.official-products-section { display: grid; gap: 9px; min-width: 0; padding: 13px; border: 1px solid #dce7ee; border-radius: 17px; background: #fff; box-shadow: 0 3px 12px #08284409; }
.official-products-section--attention { border-color: #f4d6bb; background: #fff8f3; }
.official-products-section > h2 { margin: 0; color: #082844; font-size: 1.07rem; line-height: 1.2; }
.official-products-section > p { margin: -4px 0 2px; color: #587183; font-size: .73rem; line-height: 1.35; }
.official-products-grid { display: grid; gap: 8px; min-width: 0; }
.official-products-section--attention .official-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.official-products-preview { --product-accent: #1764b3; display: grid; align-content: start; gap: 6px; min-width: 0; min-height: 80px; padding: 11px; border: 1px solid #dce7ee; border-radius: 12px; background: #fff; color: #082844; text-align: left; font: inherit; cursor: pointer; }
.official-products-preview--red { --product-accent: #d92d20; border-color: #f0d1cd; background: #fff8f7; }
.official-products-preview--orange { --product-accent: #d36a15; border-color: #f4dec8; background: #fffaf5; }
.official-products-preview--green { --product-accent: #087b62; }
.official-products-preview--amber { --product-accent: #aa690e; }
.official-products-preview-heading { display: grid; grid-template-columns: 30px minmax(0, 1fr) 14px; gap: 8px; align-items: center; min-width: 0; }
.official-products-preview-icon { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; background: color-mix(in srgb, var(--product-accent) 11%, white); color: var(--product-accent); }
.official-products-preview-icon svg { width: 19px; height: 19px; }
.official-products-preview-heading strong { min-width: 0; font-size: .83rem; line-height: 1.22; }
.official-products-preview-chevron { color: #4c6982; font-size: 1.25rem; text-align: right; }
.official-products-preview-name { min-width: 0; overflow-wrap: anywhere; color: #375b74; font-size: .73rem; line-height: 1.25; }
.official-products-preview-metrics { display: grid; gap: 2px; min-width: 0; }
.official-products-preview-metrics small, .official-products-preview-collected { color: #587183; font-size: .67rem; line-height: 1.25; }
.official-products-preview-metrics strong { color: var(--product-accent); font-size: clamp(.92rem, 4.2vw, 1.12rem); line-height: 1.1; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.official-products-preview-status { color: #587183; font-size: .73rem; line-height: 1.35; }
.official-products-preview-collected { margin-top: 3px; }
.official-products-state, .official-products-detail-state { margin: 0; padding: 12px; border: 1px dashed #d5e0e8; border-radius: 11px; background: #f7fafc; color: #526e83; font-size: .78rem; line-height: 1.45; }
.official-products-detail-content { gap: 11px; }
.official-products-detail-back, .official-products-detail-more, .official-products-detail-full { justify-self: start; min-height: 44px; padding: 9px 12px; border: 1px solid #cbdde9; border-radius: 11px; background: #fff; color: #155480; font: inherit; font-size: .78rem; font-weight: 800; cursor: pointer; }
.official-products-detail-title { margin: 0; font-size: 1.28rem; line-height: 1.2; }
.official-products-detail-context, .official-products-detail-comparison { margin: 0; padding: 11px; border-radius: 11px; background: #eef5fb; color: #365d78; font-size: .76rem; line-height: 1.4; }
.official-products-detail-list { display: grid; gap: 8px; }
.official-products-detail-row { min-width: 0; padding: 12px; border: 1px solid #dce7ee; border-radius: 13px; background: #fff; }
.official-products-detail-row-heading { display: grid; grid-template-columns: 29px minmax(0, 1fr); gap: 8px; align-items: start; }
.official-products-detail-row-heading strong { min-width: 0; overflow-wrap: anywhere; font-size: .85rem; line-height: 1.3; }
.official-products-detail-rank { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 50%; background: #e7f1fc; color: #155aaf; font-size: .75rem; font-weight: 800; }
.official-products-detail-unit { display: block; margin: 3px 0 0 37px; color: #587183; font-size: .69rem; }
.official-products-detail-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 10px; }
.official-products-detail-metrics > :only-child { grid-column: 1 / -1; }
.official-products-detail-metrics .official-notes-metric { min-height: 72px; padding: 9px; }
.official-products-detail-metrics .official-notes-metric strong { font-size: clamp(.9rem, 3.8vw, 1.12rem); }
.official-products-detail-row--amber .official-notes-metric:first-child { --note-accent: #aa690e; }
.official-products-detail-full { background: #eef6fc; }
.official-products-preview:focus-visible, .official-products-detail-back:focus-visible, .official-products-detail-more:focus-visible, .official-products-detail-full:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
@media (min-width: 700px) { .official-products-panel { padding-inline: 24px; } .official-products-panel .official-finance-head { margin-inline: -24px; } }
@media (max-width: 350px) { .official-products-section--attention .official-products-grid, .official-products-detail-metrics { grid-template-columns: 1fr; } }

.official-finance-panel { min-height: calc(100dvh - 94px); margin: -16px -16px -94px; padding: 18px 16px 110px; background: #f8fafc; color: #082844; }
.official-finance-head { display: grid; gap: 12px; margin: -18px -16px 0; padding: 19px 16px 18px; border-radius: 0 0 20px 20px; background: linear-gradient(135deg, #0a3859, #082844 72%); color: #fff; }
.official-notes-panel { min-height: calc(100dvh - 94px); margin: -16px -16px -94px; padding: 18px 16px 110px; background: #f8fafc; color: #082844; }
.official-notes-content, .official-notes-detail-content { display: grid; gap: 12px; max-width: 640px; margin: 12px auto 0; }
.official-notes-card { display: grid; gap: 12px; min-width: 0; padding: 13px; border: 1px solid #dce7ee; border-radius: 17px; background: #fff; box-shadow: 0 3px 12px #08284409; }
.official-notes-card--attention { border-color: #f4d6bb; background: #fff8f3; }
.official-notes-card-heading { display: flex; align-items: start; justify-content: space-between; gap: 8px; }
.official-notes-card-icon { display: grid; flex: 0 0 auto; width: 35px; height: 35px; place-items: center; border-radius: 50%; background: #e3f0fe; color: #1764b3; }
.official-notes-card--attention .official-notes-card-icon { background: #ffe5d0; color: #dd601b; }
.official-notes-card-icon .official-finance-icon { width: 21px; height: 21px; }
.official-notes-card-heading-copy { flex: 1 1 auto; min-width: 0; }
.official-notes-card h2 { margin: 0; color: #082844; font-size: 1.08rem; line-height: 1.22; }
.official-notes-card-heading p { margin: 3px 0 0; color: #587183; font-size: .72rem; line-height: 1.35; }
.official-notes-action { flex: none; min-height: 44px; padding: 7px 9px; border: 1px solid #d7e7f3; border-radius: 10px; background: #f5f9ff; color: #155480; font: inherit; font-size: .7rem; font-weight: 800; cursor: pointer; }
.official-notes-action:focus-visible, .official-notes-full:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
.official-notes-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.official-notes-metric { --note-accent: #225f93; display: grid; align-content: center; gap: 3px; min-width: 0; min-height: 86px; padding: 11px; border: 1px solid color-mix(in srgb, var(--note-accent) 22%, white); border-radius: 12px; background: color-mix(in srgb, var(--note-accent) 6%, white); }
.official-notes-metric--red { --note-accent: #d92d20; }
.official-notes-metric--orange { --note-accent: #d97717; }
.official-notes-metric--green { --note-accent: #178349; }
.official-notes-metric--blue { --note-accent: #2569bd; }
.official-notes-metric strong { color: var(--note-accent); font-size: clamp(.96rem, 4vw, 1.16rem); line-height: 1.12; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.official-notes-metric span { color: #36546a; font-size: .72rem; line-height: 1.3; }
.official-notes-dates { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-top: 4px; color: #244c68; font-size: .75rem; }
.official-notes-dates .official-notes-action { background: transparent; }
.official-notes-secondary-line, .official-notes-last-entry { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 3px 8px; padding: 10px; border: 1px solid #e2eaf0; border-radius: 11px; background: #fff; }
.official-notes-secondary-line > span { grid-column: 1; color: #587183; font-size: .7rem; }
.official-notes-secondary-line > strong, .official-notes-last-entry > strong { grid-column: 1; min-width: 0; font-size: .79rem; overflow-wrap: anywhere; }
.official-notes-secondary-line > small, .official-notes-last-entry > small { grid-column: 1; color: #5b7488; font-size: .68rem; }
.official-notes-secondary-line > .official-notes-action { grid-column: 2; grid-row: 1 / 4; align-self: center; }
.official-notes-last-entry h3 { grid-column: 1; margin: 0; font-size: .88rem; }
.official-notes-last-entry > .official-notes-action { grid-column: 2; grid-row: 1 / 4; align-self: center; }
.official-notes-supplier-list, .official-notes-detail-suppliers { display: grid; gap: 7px; }
.official-notes-supplier-row { display: grid; grid-template-columns: 29px minmax(0, 1fr) auto; gap: 2px 8px; align-items: center; padding: 9px; border: 1px solid #e0e8f0; border-radius: 11px; background: #fff; }
.official-notes-rank { display: grid; grid-row: 1 / 3; width: 29px; height: 29px; place-items: center; border-radius: 50%; background: #e7f1fc; color: #155aaf; font-size: .78rem; font-weight: 800; }
.official-notes-supplier-row strong { grid-column: 2 / 4; grid-row: 1; min-width: 0; overflow-wrap: anywhere; font-size: .8rem; }
.official-notes-supplier-row small { grid-column: 2; grid-row: 2; color: #587183; font-size: .67rem; }
.official-notes-supplier-row b { grid-column: 3; grid-row: 2; color: #0a4e7b; font-size: .78rem; text-align: right; font-variant-numeric: tabular-nums; }
.official-notes-state { margin: 0; padding: 11px; border: 1px dashed #d5e0e8; border-radius: 10px; background: #f7fafc; color: #526e83; font-size: .75rem; line-height: 1.45; }
.official-notes-detail-content { gap: 11px; }
.official-notes-back { justify-self: start; }
.official-notes-detail-title { margin: 0; font-size: 1.28rem; }
.official-notes-detail-note { margin: 0; padding: 11px; border-radius: 10px; background: #eef5fb; color: #365d78; font-size: .77rem; line-height: 1.45; }
.official-notes-detail-fields { display: grid; gap: 8px; margin: 0; }
.official-notes-detail-field { padding: 11px; border: 1px solid #dce7ee; border-radius: 11px; background: #fff; }
.official-notes-detail-field dt { color: #5b7488; font-size: .69rem; }
.official-notes-detail-field dd { margin: 3px 0 0; overflow-wrap: anywhere; color: #082844; font-size: .9rem; font-weight: 750; }
.official-notes-full { min-height: 44px; padding: 9px 12px; border: 1px solid #bcd5e7; border-radius: 11px; background: #eef6fc; color: #0b4a73; font: inherit; font-size: .78rem; font-weight: 800; cursor: pointer; }
@media (min-width: 700px) { .official-notes-panel { padding-inline: 24px; } .official-notes-panel .official-finance-head { margin-inline: -24px; } }
@media (max-width: 350px) {
  .official-notes-card-heading { display: grid; grid-template-columns: 35px minmax(0, 1fr); }
  .official-notes-card-heading-copy { grid-column: 2; }
  .official-notes-card-heading > .official-notes-action { grid-column: 2; justify-self: start; min-height: 40px; }
  .official-notes-metrics { grid-template-columns: 1fr; }
  .official-notes-metric { min-height: 68px; padding: 9px 11px; }
  .official-notes-metric strong { font-size: 1.06rem; }
  .official-notes-secondary-line, .official-notes-last-entry { grid-template-columns: minmax(0, 1fr); }
  .official-notes-secondary-line > .official-notes-action, .official-notes-last-entry > .official-notes-action { grid-column: 1; grid-row: 4; justify-self: start; min-height: 40px; }
  .official-notes-supplier-row { grid-template-columns: 25px minmax(0, 1fr); }
  .official-notes-supplier-row strong { grid-column: 2; }
  .official-notes-supplier-row b { grid-column: 2; grid-row: 3; text-align: left; }
}
.official-pdv-trends-page { min-height: calc(100dvh - 94px); margin: -16px -16px -94px; padding: 18px 16px 110px; background: #f8fafc; color: #082844; }
.official-pdv-trends-content { display: grid; gap: 12px; max-width: 640px; margin: 12px auto 0; }
.official-pdv-trends-hero-section, .official-pdv-trends-days-section, .official-pdv-trends-weeks-section { min-width: 0; padding: 13px; border: 1px solid #dce7ee; border-radius: 17px; background: #fff; box-shadow: 0 3px 12px #08284409; }
.official-pdv-trends-hero-section { border-color: #c9e3ff; background: #eef7ff; }
.official-pdv-trends-section-heading { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.official-pdv-trends-heading-icon { display: grid; flex: 0 0 auto; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: #d8eaff; color: #1764c4; font-size: 1.3rem; font-weight: 800; }
.official-pdv-trends-section-heading h2 { margin: 0; font-size: 1.09rem; line-height: 1.2; }
.official-pdv-trends-section-heading p { margin: 2px 0 0; color: #5b7390; font-size: .72rem; }
.official-pdv-trends-hero-section .official-pdv-trends-hero, .official-pdv-trends-days-section .official-pdv-trends-panel, .official-pdv-trends-weeks-section .official-pdv-trends-panel { display: grid; gap: 10px; padding: 0; border: 0; background: transparent; }
.official-pdv-trends-hero-section .official-pdv-trends-metric { min-height: 99px; border: 1px solid #bfe6ce; background: #f3fbf5; }
.official-pdv-trends-hero-section .official-pdv-trends-metric + .official-pdv-trends-metric { border-color: #d9e2eb; background: #fff; }
.official-pdv-trends-metric span { color: #435d74; }
.official-pdv-trends-hero-section .official-pdv-trends-metric strong { color: #128044; font-size: clamp(1rem, 4.4vw, 1.35rem); font-variant-numeric: tabular-nums; }
.official-pdv-trends-hero-section .official-pdv-trends-metric + .official-pdv-trends-metric strong { color: #102e52; }
.official-pdv-trends-change-line { padding: 8px; border-radius: 11px; background: #f3faf5; }
.official-pdv-trends-hero-section .official-pdv-trends-note { color: #60768a; }
.official-pdv-trends-days-section .official-pdv-trends-panel > .official-pdv-trends-caption, .official-pdv-trends-weeks-section .official-pdv-trends-panel > .official-pdv-trends-caption { margin: 0 0 3px; font-size: .68rem; }
.official-pdv-trends-days-section .official-pdv-trends-bars { gap: 0; margin: 0; }
.official-pdv-trends-days-section .official-pdv-trends-row { grid-template-columns: 54px minmax(0, 1fr) 108px; gap: 8px; min-height: 55px; border-top: 1px solid #e8eef3; }
.official-pdv-trends-days-section .official-pdv-trends-track { height: 10px; background: #e8eef4; }
.official-pdv-trends-days-section .official-pdv-trends-fill { background: linear-gradient(90deg, #60adff, #1682f3); }
.official-pdv-trends-days-section .official-pdv-trends-row-champion .official-pdv-trends-fill { background: linear-gradient(90deg, #63acfb, #1279e8); }
.official-pdv-trends-days-section .official-pdv-trends-value strong { overflow-wrap: anywhere; font-size: .72rem; }
.official-pdv-trends-days-section .official-pdv-trends-value small { font-size: .58rem; }
.official-pdv-trends-date { display: grid; gap: 2px; }
.official-pdv-trends-date small { color: #587183; font-size: .6rem; }
.official-pdv-trends-heading-icon .official-finance-icon { width: 22px; height: 22px; }
.official-pdv-trends-weeks-section .official-pdv-trends-history { border: 1px dashed #bacddc; background: #f7f9fc; }
.official-pdv-trends-weeks-section .official-pdv-trends-history strong { color: #173a63; }
@media (min-width: 700px) { .official-pdv-trends-page { padding-inline: 24px; } .official-pdv-trends-page .official-finance-head { margin-inline: -24px; } }
@media (max-width: 350px) { .official-pdv-trends-comparison-values { gap: 5px; } .official-pdv-trends-hero-section .official-pdv-trends-metric { padding: 8px; } .official-pdv-trends-hero-section .official-pdv-trends-metric strong { font-size: .93rem; } .official-pdv-trends-days-section .official-pdv-trends-row { grid-template-columns: 47px minmax(0, 1fr) 93px; gap: 5px; } }
.official-finance-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; }
.official-finance-brand { display: flex; align-items: center; gap: 9px; min-width: 0; }
.official-finance-icon { width: 24px; height: 24px; flex: 0 0 auto; }
.official-finance-shop-badge { display: grid; flex: 0 0 auto; width: 40px; height: 40px; place-items: center; border-radius: 50%; background: #2769ad; box-shadow: 0 0 0 2px #ffffff20; }
.official-finance-shop-badge .official-finance-icon { width: 23px; height: 23px; }
.official-finance-store { overflow: hidden; font-size: .88rem; font-weight: 800; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.official-finance-collected { display: flex; flex: 0 1 auto; align-items: center; justify-content: end; gap: 4px; min-width: 0; color: #e1ebf2; font-size: .68rem; white-space: nowrap; }
.official-finance-collected .official-finance-icon { width: 16px; height: 16px; }
.official-finance-heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 2px 8px; }
.official-finance-head h1 { grid-column: 1; grid-row: 1; margin: 0; font-size: clamp(1.8rem, 8.2vw, 2.25rem); line-height: 1.05; letter-spacing: -.045em; }
.official-finance-head p { grid-column: 1; grid-row: 2; margin: 0; color: #dce9f2; font-size: .77rem; line-height: 1.3; }
.official-finance-context { display: flex; grid-column: 2; grid-row: 1 / 3; align-items: center; gap: 5px; align-self: center; max-width: 100%; padding: 7px 9px; border-radius: 999px; background: #ffffff1d; color: #edf5fa; font-size: .67rem; font-weight: 700; white-space: nowrap; }
.official-finance-context .official-finance-icon { width: 15px; height: 15px; }
.official-finance-content, .official-finance-section, .official-finance-grid { display: grid; gap: 10px; }
.official-finance-content { margin-top: 12px; }
.official-finance-attention { padding: 11px; border: 1px solid #f4d6bb; border-radius: 16px; background: #fff6ef; box-shadow: 0 5px 17px #a85b210a; }
.official-finance-attention-title { display: flex; align-items: center; gap: 8px; margin: 0; color: #082844; font-size: 1rem; }
.official-finance-attention-icon { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 50%; background: #ffdfc6; color: #df5922; }
.official-finance-attention-title .official-finance-icon { width: 18px; height: 18px; }
.official-finance-attention > p { margin: 3px 0 10px 37px; color: #5b7181; font-size: .7rem; }
.official-finance-highlights { display: grid; gap: 6px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.official-finance-highlight { --finance-accent: #d92d20; position: relative; display: grid; justify-items: start; align-content: start; gap: 3px; min-width: 0; min-height: 104px; padding: 8px 7px; border: 1px solid color-mix(in srgb, var(--finance-accent) 25%, white); border-radius: 12px; background: color-mix(in srgb, var(--finance-accent) 6%, white); color: #082844; text-align: left; font: inherit; cursor: pointer; }
.official-finance-highlight--orange { --finance-accent: #e87516; }
.official-finance-highlight--green { --finance-accent: #168456; }
.official-finance-highlight--maintenance { --finance-accent: #765f4f; border-style: dashed; background: #f7f4f0; }
.official-finance-highlight--empty { --finance-accent: #526e83; background: #f1f6f8; }
.official-finance-highlight:disabled { cursor: default; }
.official-finance-highlight-icon { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 50%; background: color-mix(in srgb, var(--finance-accent) 13%, white); }
.official-finance-highlight-icon .official-finance-icon { width: 16px; height: 16px; color: var(--finance-accent); }
.official-finance-highlight > span:not(.official-finance-highlight-icon):not(.official-finance-highlight-chevron) { color: #28465d; font-size: .63rem; line-height: 1.18; }
.official-finance-highlight strong { overflow-wrap: anywhere; color: var(--finance-accent); font-size: .84rem; line-height: 1.14; font-variant-numeric: tabular-nums; }
.official-finance-highlight small { color: #6c7d87; font-size: .61rem; }
.official-finance-highlight-chevron { position: absolute; right: 5px; bottom: 5px; color: var(--finance-accent); font-size: 1.15rem; line-height: 1; }
.official-finance-section { margin-top: 12px; }
.official-finance-section-title { display: flex; align-items: center; gap: 7px; margin: 0; font-size: 1.05rem; letter-spacing: .015em; text-transform: uppercase; }
.official-finance-section-dot { width: 8px; height: 8px; border-radius: 50%; background: #d92d20; }
.official-finance-section--receive .official-finance-section-dot { background: #168456; }
.official-finance-section--received .official-finance-section-dot { background: #087f84; }
.official-finance-section > p { margin: -7px 0 1px; color: #587183; font-size: .72rem; line-height: 1.35; }
.official-finance-card { --finance-accent: #0b7180; position: relative; min-width: 0; padding: 10px 11px; border: 1px solid #dce7ec; border-radius: 14px; background: #fff; box-shadow: 0 3px 12px #08284409; }
.official-finance-card--openable { cursor: pointer; }
.official-finance-card:focus-within { outline: 3px solid #f58220; outline-offset: 2px; }
.official-finance-card--maintenance { --finance-accent: #9f6814; border-style: dashed; border-color: #d6dfe5; background: #fffdf9; }
.official-finance-card--empty { --finance-accent: #526e83; border-color: #d8e5ea; background: #f5f8fa; }
.official-finance-card--red { --finance-accent: #d92d20; }
.official-finance-card--orange { --finance-accent: #e87516; }
.official-finance-card--amber { --finance-accent: #a86c0a; }
.official-finance-card--green { --finance-accent: #168456; }
.official-finance-card--blue { --finance-accent: #2669b8; }
.official-finance-card--teal { --finance-accent: #087f84; }
.official-finance-card--suppliers, .official-finance-card--clients { --finance-accent: #2e7bcb; }
.official-finance-card-row { display: grid; grid-template-columns: 38px minmax(0, 1fr) minmax(0, auto) 13px; align-items: center; gap: 7px; min-height: 64px; }
.official-finance-card--maintenance .official-finance-card-row { grid-template-columns: 38px minmax(0, 1fr); }
.official-finance-card-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: color-mix(in srgb, var(--finance-accent) 12%, white); color: var(--finance-accent); }
.official-finance-card-icon .official-finance-icon { width: 21px; height: 21px; }
.official-finance-card-labels { min-width: 0; }
.official-finance-card h3 { margin: 0; color: #082844; font-size: .87rem; line-height: 1.2; }
.official-finance-caption { display: block; margin-top: 3px; color: #587183; font-size: .67rem; line-height: 1.25; }
.official-finance-count { display: block; margin-top: 3px; color: #6c7f8d; font-size: .61rem; line-height: 1.25; }
.official-finance-card-metric { display: grid; justify-items: end; align-content: center; gap: 3px; min-width: 0; text-align: right; }
.official-finance-amount { display: block; max-width: 120px; color: var(--finance-accent); font-size: clamp(.87rem, 4vw, 1.16rem); font-weight: 800; line-height: 1.1; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.official-finance-card-time { color: #688091; font-size: .59rem; line-height: 1.2; white-space: nowrap; }
.official-finance-value-unavailable { color: #60798a; font-size: .65rem; font-weight: 700; }
.official-finance-card-chevron { display: grid; width: 13px; height: 32px; place-items: center; color: #0b4a73; font-size: 1.3rem; line-height: 1; }
.official-finance-state { display: grid; gap: 2px; margin: 0 0 0 45px; color: #526e83; }
.official-finance-state--maintenance strong { color: #795334; }
.official-finance-state--empty strong { color: #526e83; }
.official-finance-state strong { font-size: .74rem; }
.official-finance-state small { color: #60798a; font-size: .66rem; line-height: 1.25; }
.official-finance-calendar { display: flex; align-items: end; gap: 3px; height: 42px; margin: 5px 5px 0 45px; overflow: hidden; }
.official-finance-calendar-bar { flex: 1 1 0; min-width: 2px; border-radius: 3px 3px 0 0; background: #7bbbc0; }
.official-finance-open { position: absolute; inset: 0; width: 100%; min-height: 44px; padding: 0; border: 0; border-radius: inherit; background: transparent; cursor: pointer; }
.official-finance-open:focus-visible { outline: none; }
.official-finance-highlight:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
@media (min-width: 700px) { .official-finance-panel { padding-inline: 24px; } .official-finance-head { margin-inline: -24px; } }
@media (max-width: 350px) { .official-finance-highlights { grid-template-columns: repeat(2, minmax(0, 1fr)); } .official-finance-highlight:last-child { grid-column: 1 / -1; min-height: 58px; } .official-finance-card-row { grid-template-columns: 34px minmax(0, 1fr) minmax(0, auto) 12px; gap: 5px; } .official-finance-card-icon { width: 34px; height: 34px; } }

/* Cada etapa do Pulso mostra os dados da consulta, sem uma segunda abertura. */
.official-story-dialog[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; width: min(100vw, 430px); height: 100dvh; min-height: 0; max-height: 100dvh; padding: 0; overflow: hidden; }
.official-story-heading { position: relative; padding: 22px 20px 15px; border-bottom: 1px solid #dce8ed; background: #fff; }
.official-story-progress { margin-right: 54px; }
.official-story-close { top: 13px; right: 16px; }
.official-story-kicker { margin: 22px 0 6px; color: #087f7b; font-size: .68rem; }
.official-story-dialog h2 { max-width: none; padding-right: 18px; font-size: clamp(1.3rem, 5vw, 1.65rem); line-height: 1.16; }
.official-story-time { margin-top: 8px; font-size: .73rem; }
.official-story-count { margin-top: 5px; font-size: .75rem; font-weight: 750; }
.official-story-body { display: grid; align-content: start; gap: 14px; min-height: 0; padding: 18px 18px 24px; overflow-y: auto; overscroll-behavior: contain; }
.official-story-overview { display: grid; gap: 8px; padding: 21px; border: 1px solid #d6e5e9; border-left: 5px solid #0a9991; border-radius: 17px; background: #fff; box-shadow: 0 7px 19px #0828440b; }
.official-story-overview-kicker { color: #087f7b; font-size: .67rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.official-story-overview strong { color: #082844; font-size: clamp(1.7rem, 8vw, 2.35rem); line-height: 1.08; overflow-wrap: anywhere; }
.official-story-overview b { color: #087f7b; font-size: 1.04rem; }
.official-story-overview small { color: #61798c; font-size: .72rem; line-height: 1.4; }
.official-story-section-title { margin: 5px 0 0; color: #082844; font-size: 1rem; }
.official-story-fields { display: grid; margin: 0; padding: 4px 16px; border: 1px solid #dce8ed; border-radius: 15px; background: #fff; }
.official-story-field { display: grid; grid-template-columns: minmax(0, 48%) minmax(0, 1fr); gap: 10px; padding: 12px 0; border-bottom: 1px solid #eaf0f3; }
.official-story-field:last-child { border-bottom: 0; }
.official-story-field dt { color: #5e7888; font-size: .78rem; overflow-wrap: anywhere; }
.official-story-field dd { margin: 0; color: #082844; font-size: .79rem; font-weight: 800; text-align: right; overflow-wrap: anywhere; }
.official-story-records { display: grid; gap: 9px; }
.official-story-record { border: 1px solid #dce8ed; border-radius: 14px; background: #fff; overflow: hidden; }
.official-story-record summary { display: grid; grid-template-columns: 30px minmax(0, 1fr); column-gap: 10px; row-gap: 4px; align-items: center; min-height: 68px; padding: 12px; list-style: none; cursor: pointer; }
.official-story-record summary::-webkit-details-marker { display: none; }
.official-story-record-number { grid-row: span 2; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #e5f5f3; color: #087f7b; font-size: .71rem; font-weight: 850; }
.official-story-record-title strong { min-width: 0; color: #082844; font-size: .86rem; overflow-wrap: anywhere; }
.official-story-record-title small { color: #60798a; font-size: .73rem; overflow-wrap: anywhere; }
.official-story-record .official-story-fields { margin: 0 12px 12px; background: #f7fafb; }
.official-story-more { min-height: 46px; border: 1px solid #b9d4dd; border-radius: 12px; background: #fff; color: #087f7b; font: inherit; font-size: .82rem; font-weight: 800; }
.official-story-more[hidden] { display: none; }
.official-story-actions { display: flex; gap: 10px; margin: 0; padding: 12px 18px calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid #dce8ed; background: #fff; }
.official-story-actions button { min-height: 48px; }
.official-story-next { flex: 1; border-color: #f58220 !important; background: #f58220 !important; color: #fff !important; }
.official-story-actions button:focus-visible, .official-story-record summary:focus-visible, .official-story-more:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
.official-story-actions button { font-size: .88rem; box-shadow: 0 2px 8px #08284412; cursor: pointer; transition: background .15s ease, transform .15s ease; }
.official-story-actions button:not(:disabled):hover { background: #eaf4f7; transform: translateY(-1px); }
.official-story-actions .official-story-next:not(:disabled):hover { background: #de6d10 !important; }
.official-story-tap-hint { display: none; }
@media (max-width: 600px) and (pointer: coarse) {
  .official-story-actions { position: relative; min-height: 58px; justify-content: center; align-items: center; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); }
  .official-story-tap-hint { display: flex; width: 100%; justify-content: space-between; align-items: center; gap: 8px; margin: 0; color: #587386; font-size: .68rem; font-weight: 750; white-space: nowrap; }
  .official-story-tap-hint span:first-child, .official-story-tap-hint span:last-child { color: #087f7b; }
  .official-story-actions button { position: absolute; width: 1px; height: 1px; min-height: 0; padding: 0; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .official-story-actions button:focus-visible { position: static; width: auto; height: 44px; min-height: 44px; padding: 8px 12px; clip-path: none; }
}
.official-story-dialog[data-area="pdv"] .official-story-heading { padding-bottom: 16px; }
.official-story-dialog[data-area="pdv"] .official-story-kicker { margin-top: 17px; }
.official-story-dialog[data-area="pdv"] .official-story-time { color: #526e83; line-height: 1.45; }
.official-story-dialog[data-area="pdv"] .official-story-count { display: inline-block; margin-top: 8px; padding: 5px 10px; border-radius: 99px; background: #e9f4f4; color: #075f5d; font-size: .72rem; }
.official-pdv-story-count { margin: 1px 2px 0; color: #526e83; font-size: .82rem; font-weight: 700; }
.official-pdv-story-list { display: grid; gap: 14px; }
.official-pdv-story-card { display: grid; gap: 5px; padding: 21px; border: 1px solid #d8e5e9; border-radius: 18px; background: #fff; box-shadow: 0 8px 24px #0828440a; }
.official-pdv-story-card h3 { margin: 0 0 7px; color: #082844; font-size: 1rem; line-height: 1.3; overflow-wrap: anywhere; }
.official-pdv-story-value { display: block; color: #082844; font-size: clamp(1.75rem, 7vw, 2.3rem); line-height: 1.12; letter-spacing: -.03em; overflow-wrap: anywhere; }
.official-pdv-story-label { margin: 0; color: #536f80; font-size: .82rem; }
.official-pdv-story-secondary { margin: 5px 0 0; color: #087f7b; font-size: .9rem; font-weight: 750; }
.official-pdv-story-bar-track { height: 12px; margin: 17px 0 5px; border-radius: 99px; background: #e5eef1; overflow: hidden; }
.official-pdv-story-bar { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #0a9991, #34b8ac); transform-origin: left; animation: official-pdv-bar-grow .55s ease-out both; }
.official-pdv-story-card .official-story-fields { margin: 13px 0 0; padding: 5px 0 0; border: 0; border-top: 1px solid #e4edef; border-radius: 0; box-shadow: none; }
.official-pdv-story-card .official-story-field { padding: 10px 0; }
.official-story-dialog[data-report="pdv-comparison"] .official-pdv-story-list { gap: 11px; }
.official-story-dialog[data-report="pdv-comparison"] .official-pdv-story-card { gap: 4px; padding: 17px 18px; border-radius: 16px; }
.official-story-dialog[data-report="pdv-comparison"] .official-pdv-story-card h3 { margin-bottom: 3px; }
.official-story-dialog[data-report="pdv-comparison"] .official-pdv-story-value { font-size: clamp(1.6rem, 6vw, 2rem); }
.official-story-dialog[data-report="pdv-comparison"] .official-pdv-story-bar-track { height: 10px; margin: 11px 0 3px; }
.official-story-dialog[data-report="pdv-comparison"] .official-story-fields { margin-top: 8px; padding-top: 3px; }
.official-story-dialog[data-report="pdv-comparison"] .official-story-field { padding: 7px 0; }
.official-story-dialog[data-report="payments"] .official-story-body { gap: 9px; padding: 13px 16px 18px; }
.official-story-dialog[data-report="payments"] .official-pdv-story-list { gap: 8px; }
.official-story-dialog[data-report="payments"] .official-pdv-story-card { grid-template-columns: minmax(0, 1fr) auto; column-gap: 10px; row-gap: 3px; padding: 12px 14px; border-radius: 13px; }
.official-story-dialog[data-report="payments"] .official-pdv-story-card h3 { margin: 0; align-self: end; font-size: .82rem; }
.official-story-dialog[data-report="payments"] .official-pdv-story-value { grid-column: 2; grid-row: 1; align-self: end; font-size: clamp(1rem, 4vw, 1.3rem); letter-spacing: -.01em; text-align: right; }
.official-story-dialog[data-report="payments"] .official-pdv-story-label { grid-column: 1 / -1; font-size: .67rem; }
.official-story-dialog[data-report="payments"] .official-pdv-story-bar-track { grid-column: 1 / -1; height: 7px; margin: 5px 0 3px; }
.official-story-dialog[data-report="payments"] .official-story-fields { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 4px 14px; margin: 4px 0 0; padding: 7px 0 0; }
.official-story-dialog[data-report="payments"] .official-story-field { display: flex; gap: 5px; padding: 0; border: 0; }
.official-story-dialog[data-report="payments"] .official-story-field dt, .official-story-dialog[data-report="payments"] .official-story-field dd { font-size: .68rem; text-align: left; }
.official-story-dialog[data-area="pdv"] .official-story-heading { border-color: #ffffff23; background: radial-gradient(circle at 86% 10%, #0c5b72, transparent 45%), linear-gradient(145deg, #071f36, #093b55); color: #fff; }
.official-story-dialog[data-area="pdv"] .official-story-progress span { background: #ffffff45; }
.official-story-dialog[data-area="pdv"] .official-story-progress .active { background: #58cfbd; }
.official-story-dialog[data-area="pdv"] .official-story-close { border-color: #ffffff70; background: #ffffff1a; color: #fff; }
.official-story-dialog[data-area="pdv"] .official-story-kicker { color: #a4e6df; }
.official-story-dialog[data-area="pdv"] h2 { color: #fff; }
.official-story-dialog[data-area="pdv"] .official-story-time { color: #c8e0e9; }
.official-story-dialog[data-area="pdv"] .official-story-count { background: #ffffff1c; color: #e6f6f5; }
.official-story-dialog[data-area="pdv"] .official-story-body { background: #f4f8fa; }
.official-pdv-story-hero { display: grid; gap: 5px; min-width: 0; padding: 17px 18px; border: 1px solid #cfe3e7; border-radius: 18px; background: #fff; box-shadow: 0 7px 20px #0828440a; }
.official-pdv-story-hero-kicker { color: #087f7b; font-size: .65rem; font-weight: 850; letter-spacing: .08em; }
.official-pdv-story-hero-value { color: #082844; font-size: clamp(1.7rem, 8vw, 2.25rem); line-height: 1.1; letter-spacing: -.04em; overflow-wrap: anywhere; }
.official-pdv-story-hero-caption { margin: 2px 0 0; color: #587386; font-size: .76rem; line-height: 1.35; }
.official-pdv-story-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.official-pdv-story-metric { display: grid; align-content: start; gap: 4px; min-width: 0; padding: 13px; border: 1px solid #d9e7eb; border-radius: 14px; background: #fff; }
.official-pdv-story-metric span { color: #597386; font-size: .68rem; line-height: 1.2; }
.official-pdv-story-metric strong { color: #082844; font-size: clamp(1rem, 5vw, 1.25rem); line-height: 1.15; overflow-wrap: anywhere; }
.official-pdv-story-metric small { color: #688092; font-size: .63rem; line-height: 1.25; }
.official-pdv-story-metrics .official-pdv-story-metric:last-child:nth-child(odd) { grid-column: 1 / -1; }
.official-pdv-story-scope { margin: 0; padding: 12px 13px; border-left: 3px solid #c59a49; border-radius: 0 10px 10px 0; background: #fff9ec; color: #655433; font-size: .73rem; line-height: 1.4; }
.official-pdv-story-section-title { margin: 3px 0 0; color: #082844; font-size: .95rem; }
.official-pdv-story-section-caption { margin: -7px 0 0; color: #5f798a; font-size: .73rem; line-height: 1.38; }
.official-pdv-story-row-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 10px; min-width: 0; }
.official-pdv-story-row-head h3 { margin: 0; font-size: .86rem; }
.official-pdv-story-row-head strong { color: #087f7b; font-size: clamp(1.03rem, 4vw, 1.28rem); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.official-pdv-story-row-facts { display: flex; flex-wrap: wrap; gap: 3px 12px; color: #597386; font-size: .7rem; }
.official-pdv-story-card--byPdv, .official-pdv-story-card--dailyPdv, .official-pdv-story-card--payments { gap: 7px; padding: 13px 15px; border-radius: 14px; }
.official-pdv-story-card--byPdv .official-pdv-story-bar-track, .official-pdv-story-card--dailyPdv .official-pdv-story-bar-track, .official-pdv-story-card--payments .official-pdv-story-bar-track { height: 7px; margin: 4px 0; }
.official-pdv-story-card--payments { grid-template-columns: minmax(0, 1fr) !important; }
.official-pdv-story-card--payments .official-pdv-story-row-head, .official-pdv-story-card--payments .official-pdv-story-row-facts { grid-column: 1 / -1; }
.official-pdv-story-related-line { margin: 3px 0 0; padding-top: 7px; border-top: 1px solid #e5eef0; color: #3d6576; font-size: .72rem; font-weight: 700; }
.official-pdv-story-context { display: grid; gap: 10px; padding-top: 4px; }
.official-pdv-story-context .official-pdv-story-section-caption { margin: 0; }
.official-pdv-story-related-card { display: grid; gap: 4px; min-width: 0; padding: 12px 14px; border: 1px solid #dce8eb; border-radius: 13px; background: #fff; }
.official-pdv-story-related-card span { color: #567183; font-size: .69rem; }
.official-pdv-story-related-card strong { color: #082844; font-size: .87rem; overflow-wrap: anywhere; }
.official-pdv-story-related-card small { color: #758a97; font-size: .62rem; line-height: 1.3; }
.official-story-dialog[data-report="summary"] .official-story-body { gap: 10px; padding: 13px 16px 18px; }
.official-story-dialog[data-report="summary"] .official-pdv-story-hero { padding: 15px 16px; }
.official-story-dialog[data-report="summary"] .official-pdv-story-metric { padding: 10px 12px; }
.official-story-dialog[data-report="summary"] .official-pdv-story-context { gap: 8px; padding-top: 0; }
.official-pdv-summary-products { display: grid; gap: 8px; min-width: 0; margin-top: 3px; }
.official-pdv-summary-products .official-pdv-story-section-title { margin: 0; }
.official-pdv-summary-products .official-pdv-story-section-caption { margin: 0; }
.official-pdv-summary-product-list { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.official-pdv-summary-product { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; align-items: center; gap: 9px; min-width: 0; padding: 9px 10px; border: 1px solid #dce8eb; border-radius: 12px; background: #fff; }
.official-pdv-summary-product-rank { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: #e2f4f1; color: #087f7b; font-size: .68rem; font-weight: 850; }
.official-pdv-summary-product-info { display: grid; gap: 2px; min-width: 0; }
.official-pdv-summary-product-info strong { color: #082844; font-size: .76rem; line-height: 1.2; overflow-wrap: anywhere; }
.official-pdv-summary-product-info small { color: #668093; font-size: .62rem; line-height: 1.2; }
.official-pdv-summary-product-quantity { color: #087f7b; font-size: .75rem; text-align: right; overflow-wrap: anywhere; }
.official-story-dialog[data-report="summary"] .official-pdv-story-related-card { gap: 2px; padding: 9px 11px; }
@media (max-width: 350px) { .official-pdv-story-metric { padding: 10px; } .official-pdv-story-row-head { display: grid; } }
.official-story-dialog[data-area="products"] .official-story-heading { border-color: #ffffff23; background: radial-gradient(circle at 88% 8%, #36556a, transparent 46%), linear-gradient(145deg, #071f36, #093b55); color: #fff; }
.official-story-dialog[data-area="products"] .official-story-progress span { background: #ffffff45; }
.official-story-dialog[data-area="products"] .official-story-progress .active { background: #ffb56a; }
.official-story-dialog[data-area="products"] .official-story-close { border-color: #ffffff70; background: #ffffff1a; color: #fff; }
.official-story-dialog[data-area="products"] .official-story-kicker { color: #ffd4a5; }
.official-story-dialog[data-area="products"] h2 { color: #fff; }
.official-story-dialog[data-area="products"] .official-story-time { color: #c8e0e9; line-height: 1.4; }
.official-story-dialog[data-area="products"] .official-story-count { display: inline-block; margin-top: 8px; padding: 5px 10px; border-radius: 99px; background: #ffffff1c; color: #fff4e8; font-size: .72rem; }
.official-story-dialog[data-area="products"] .official-story-body { gap: 10px; padding: 13px 16px 18px; background: #f4f8fa; }
.official-story-dialog[data-area="products"] .official-data-state { margin: 0; padding: 18px; border: 1px solid #dce8eb; border-radius: 14px; background: #fff; color: #526e83; font-size: .83rem; line-height: 1.45; box-shadow: 0 5px 14px #08284408; }
.official-product-story-count { margin: 1px 2px 0; color: #526e83; font-size: .82rem; font-weight: 700; }
.official-product-story-list { display: grid; gap: 8px; }
.official-product-story-card { display: grid; gap: 5px; min-width: 0; padding: 12px 14px; border: 1px solid #dce8eb; border-radius: 14px; background: #fff; box-shadow: 0 5px 14px #08284408; }
.official-product-story-heading { display: grid; grid-template-columns: 28px minmax(0, 1fr); align-items: center; gap: 9px; }
.official-product-story-number { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #fff0e2; color: #a8520a; font-size: .72rem; font-weight: 850; }
.official-product-story-title { display: grid; gap: 2px; min-width: 0; }
.official-product-story-card h3 { margin: 0; color: #082844; font-size: .86rem; line-height: 1.25; overflow-wrap: anywhere; }
.official-product-story-title small { color: #698292; font-size: .67rem; }
.official-product-story-metric { display: flex; flex-wrap: wrap; align-items: baseline; gap: 3px 8px; padding-left: 37px; }
.official-product-story-metric strong { color: #082844; font-size: clamp(1.16rem, 5vw, 1.47rem); line-height: 1.12; overflow-wrap: anywhere; }
.official-product-story-metric span, .official-product-story-secondary, .official-product-story-extra { color: #536f80; font-size: .7rem; }
.official-product-story-secondary, .official-product-story-extra { margin: 0; padding-left: 37px; overflow-wrap: anywhere; }
.official-product-story-secondary { font-weight: 700; }
.official-product-story-card[data-metric="PERDA_BRUTA"] .official-product-story-metric strong { color: #bb3e34; }
.official-product-story-card[data-metric="TOTAL_DESCONTO"] .official-product-story-metric strong { color: #a8520a; }
.official-product-story-card[data-metric="LUCRO_BRUTO"] .official-product-story-metric strong { color: #087f7b; }
.official-product-story-bar-track { height: 7px; margin: 3px 0 2px 37px; border-radius: 99px; background: #f4e9df; overflow: hidden; }
.official-product-story-bar { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #e47a19, #f5ad55); transform-origin: left; animation: official-pdv-bar-grow .55s ease-out both; }
.official-product-story-details { margin-top: 3px; padding-top: 3px; border-top: 1px solid #e7eef0; }
.official-product-story-details summary { min-height: 38px; display: flex; align-items: center; color: #a8520a; font-size: .72rem; font-weight: 800; cursor: pointer; }
.official-product-story-details .official-story-fields { margin: 0; padding: 2px 0; border: 0; box-shadow: none; }
.official-product-story-details .official-story-field { padding: 8px 0; }
.official-product-story-details summary:focus-visible { outline: 3px solid #f58220; outline-offset: 2px; }
@keyframes official-pdv-bar-grow { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@media (prefers-reduced-motion: reduce) { .official-pdv-story-bar, .official-product-story-bar { animation: none; } }

/* A cor do Acesso rápido acompanha a área; cores de status continuam independentes. */
#pdv-analysis-panel { --area-surface: #f3f8fc; --area-accent: #3f7fb0; --area-wash: #e9f2f9; }
#products-analysis-panel, #products-detail-panel { --area-surface: #fff8f0; --area-accent: #c97a2e; --area-wash: #fff0df; }
#finance-analysis-panel { --area-surface: #f1faf7; --area-accent: #2f8f82; --area-wash: #e2f3ed; }
#notes-analysis-panel, #notes-detail-panel { --area-surface: #f7f4fc; --area-accent: #8465b3; --area-wash: #eee8f8; }

:is(.official-pdv-trends-page, .official-products-panel, .official-finance-panel, .official-notes-panel) {
  background: var(--area-surface);
}
:is(.official-pdv-trends-page, .official-products-panel, .official-finance-panel, .official-notes-panel) .official-finance-head {
  border-bottom: 3px solid var(--area-accent);
}
:is(.official-pdv-trends-page, .official-products-panel, .official-finance-panel, .official-notes-panel) .official-finance-shop-badge {
  background: var(--area-accent);
}
:is(.official-pdv-trends-page, .official-products-panel, .official-finance-panel, .official-notes-panel) .official-finance-head h1 {
  padding-left: 10px;
  border-left: 4px solid var(--area-accent);
}

#pdv-analysis-panel :is(.official-pdv-trends-hero-section, .official-pdv-trends-days-section, .official-pdv-trends-weeks-section),
#products-analysis-panel .official-products-section:not(.official-products-section--attention),
#products-detail-panel .official-products-detail-row:not(.official-products-detail-row--amber),
#finance-analysis-panel .official-finance-card:not(.official-finance-card--maintenance),
#notes-analysis-panel .official-notes-card:not(.official-notes-card--attention),
#notes-detail-panel .official-notes-detail-field {
  border-top: 3px solid var(--area-accent);
  background: #fff;
}
#pdv-analysis-panel .official-pdv-trends-heading-icon,
#products-detail-panel .official-products-detail-rank,
#notes-analysis-panel .official-notes-card:not(.official-notes-card--attention) .official-notes-card-icon,
#notes-analysis-panel .official-notes-rank {
  background: var(--area-wash);
  color: var(--area-accent);
}
#products-detail-panel :is(.official-products-detail-context, .official-products-detail-comparison),
#notes-detail-panel .official-notes-detail-note {
  background: var(--area-wash);
  color: #36546a;
}
#products-detail-panel :is(.official-products-detail-back, .official-products-detail-more, .official-products-detail-full),
#notes-detail-panel :is(.official-notes-back, .official-notes-full),
#notes-analysis-panel .official-notes-action {
  border-color: color-mix(in srgb, var(--area-accent) 28%, white);
  background: var(--area-wash);
  color: var(--area-accent);
}

/* A leitura inicial fica nos últimos relatórios e nas análises de Acesso rápido. */
.official-home #feed-section,
.official-home .quick-summary {
  display: none;
}
/* Movimento comum das janelas; os dados e os controles ficam disponíveis de imediato. */
@keyframes mvb-dialog-enter {
  from { opacity: .65; transform: translate3d(0, 9px, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}
dialog[open].report-dialog,
dialog[open].official-story-dialog,
dialog[open].official-data-dialog,
dialog[open].official-group-dialog,
dialog[open].official-daily-dialog,
dialog[open].official-peak-dialog,
dialog[open].official-pdv-dialog,
dialog[open].official-pdv-trends-dialog {
  animation: mvb-dialog-enter 210ms cubic-bezier(.22, 1, .36, 1) both;
}
@media (prefers-reduced-motion: reduce) {
  dialog[open].report-dialog,
  dialog[open].official-story-dialog,
  dialog[open].official-data-dialog,
  dialog[open].official-group-dialog,
  dialog[open].official-daily-dialog,
  dialog[open].official-peak-dialog,
  dialog[open].official-pdv-dialog,
  dialog[open].official-pdv-trends-dialog { animation: none; }
}
/* Perfil do cliente: identidade e acesso, no mesmo padrão das páginas de análise. */
.app-shell:not(.home-active) .profile-panel { margin: -16px -16px -94px; min-height: 100dvh; padding: 0 0 calc(110px + env(safe-area-inset-bottom)); background: #f2f6f9; color: #082844; }
.profile-head { padding: 28px 22px 24px; border-radius: 0 0 23px 23px; background: linear-gradient(145deg, #082b49, #061c31); color: #fff; }
.profile-head .brand-mark { display: block; width: 32px; height: 32px; object-fit: contain; }
.profile-head .brand-subtitle { margin: 5px 0 23px; color: #c8dce9; font-size: .72rem; }
.profile-head h2 { margin: 0; font-size: clamp(1.65rem, 6vw, 2rem); letter-spacing: -.04em; }
.profile-head > p:last-child { margin: 5px 0 0; color: #c8dce9; font-size: .86rem; }
.profile-content { display: grid; gap: 12px; padding: 16px; }
.profile-card { min-width: 0; padding: 17px; border: 1px solid #dfe8ef; border-radius: 18px; background: #fff; box-shadow: 0 7px 20px #0828440a; }
.profile-card h3 { margin: 0; font-size: 1rem; letter-spacing: -.02em; }
.profile-card-copy { margin: 6px 0 0; color: #5b7183; font-size: .79rem; line-height: 1.45; }
.profile-card .profile-user { gap: 12px; padding: 0; border: 0; }
.profile-card .profile-user h3 { margin: 0; }
.profile-card .profile-user p { color: #5b7183; }
.profile-card .profile-company-logo { border-color: #dce8ef; box-shadow: none; }
.profile-store-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 13px 0 0; padding: 0; list-style: none; }
.profile-store-list li { padding: 8px 11px; border-radius: 10px; background: #eef5f9; color: #164769; font-size: .78rem; font-weight: 750; }
.profile-card .profile-logo-upload { margin-top: 14px; border-color: #c5d9e6; background: #f0f7fb; color: #084264; }
.profile-card .profile-logo-preview { border-color: #dce8ef; background: #f5f9fb; }
.profile-card .profile-logo-preview p, .profile-card .profile-logo-help { color: #5b7183; }
.profile-card .profile-logo-preview-actions button + button { border-color: #c5d9e6; color: #164769; }
.profile-card .profile-logo-preview-actions button { min-height: 44px; }
.profile-card .profile-logo-message { color: #506d80; }
.profile-help { padding: 0; }
.profile-help summary { min-height: 52px; padding: 16px 17px; cursor: pointer; font-weight: 800; }
.profile-help[open] summary { border-bottom: 1px solid #e5edf2; }
.profile-help dl { margin: 0; padding: 3px 17px 17px; }
.profile-help dt { margin-top: 14px; font-size: .8rem; font-weight: 800; }
.profile-help dd { margin: 4px 0 0; color: #5b7183; font-size: .78rem; line-height: 1.45; }
.profile-panel .profile-logout { display: block; width: 100%; min-height: 48px; margin: 10px 0 0; padding: 12px 16px; border: 1px solid #cbd9e3; border-radius: 13px; background: #fff; color: #24475e; font-weight: 800; text-align: center; }
@media (prefers-reduced-motion: reduce) { .profile-panel *, .profile-panel *::before, .profile-panel *::after { scroll-behavior: auto; } }
/* Arquivo de consultas: encontrar a fonte oficial sem repetir as análises. */
.app-shell:not(.home-active) .official-panel { max-width: none; min-height: 100dvh; margin: -16px -16px -94px; padding: 0 0 calc(115px + env(safe-area-inset-bottom)); background: #f2f6fa; color: #082844; }
.official-archive-head { padding: 17px 19px 16px; border-radius: 0 0 20px 20px; background: linear-gradient(145deg, #082b49, #061c31); color: #fff; }
.official-archive-kicker { color: #94d2e9; font-size: .68rem; font-weight: 850; letter-spacing: .09em; }
.official-archive-head h1 { margin: 6px 0 0; color: #fff; font-size: clamp(1.5rem, 5vw, 1.75rem); }
.official-archive-head p { margin: 3px 0 0; color: #c5dce9; font-size: .78rem; }
.official-archive-content { padding: 12px 16px; }
.official-archive-filters { padding: 11px 13px; border: 1px solid #dfe9f0; border-radius: 16px; background: #fff; box-shadow: 0 7px 19px #0828440a; }
.official-archive-filters .official-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; }
.official-archive-filters .official-controls label { min-width: 0; gap: 3px; color: #254b65; font-size: .76rem; }
.official-archive-filters .official-controls label:last-child { grid-column: 1 / -1; }
.official-archive-filters .official-controls input, .official-archive-filters .official-controls select { min-width: 0; min-height: 44px; font-size: .82rem; }
.official-archive-status-filter { display: flex; gap: 6px; margin-top: 9px; }
.official-archive-status-filter button { flex: 1; min-width: 0; min-height: 44px; padding: 7px 5px; border: 1px solid #d8e4ed; border-radius: 10px; background: #f4f8fa; color: #45647a; font-size: .7rem; font-weight: 800; }
.official-archive-status-filter button[aria-pressed="true"] { border-color: #0b6d99; background: #e4f2f9; color: #075a84; }
.official-archive-content #official-status { min-height: 0; margin: 10px 2px 2px; color: #587184; font-size: .77rem; line-height: 1.4; }
.official-archive-content .official-selected-area { flex-wrap: wrap; margin-top: 10px; padding: 2px 0 7px; border: 0; border-bottom: 1px solid #d7e6ee; border-radius: 0; background: transparent; }
.official-selected-area h2 { margin: 0; color: #082844; font-size: 1.12rem; }
.official-selected-area small { margin-left: auto; color: #587184; font-size: .72rem; font-weight: 500; white-space: nowrap; }
.official-selected-area button { padding: 0 4px; }
.official-archive-group { margin: 14px 0 0; }
.official-selected-area + .official-archive-group { margin-top: 2px; }
.official-archive-group-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 9px; padding: 0 2px; }
.official-archive-group-heading h2 { margin: 0 0 5px; font-size: 1.03rem; }
.official-archive-group-heading small { color: #627b8d; font-size: .68rem; white-space: nowrap; }
.official-archive-group[data-area="pdv"] { --archive-accent: #3886c9; }
.official-archive-group[data-area="products"] { --archive-accent: #d59526; }
.official-archive-group[data-area="stock"] { --archive-accent: #5b8b5f; }
.official-archive-group[data-area="finance"] { --archive-accent: #1b9c86; }
.official-archive-group[data-area="notes"] { --archive-accent: #8068bd; }
.official-archive-group .official-report, .official-archive-suspended .official-report { grid-template-columns: minmax(0, 1fr) auto; gap: 4px 8px; min-height: 78px; margin: 6px 0; padding: 12px 13px; border: 1px solid #dfe8ee; border-left: 4px solid var(--archive-accent, #8ba2b1); border-radius: 14px; background: #fff; box-shadow: 0 5px 14px #08284409; }
.official-archive-group .official-report strong, .official-archive-suspended .official-report strong { grid-column: 1 / -1; font-size: .84rem; line-height: 1.3; }
.official-archive-group .official-report-subtitle { grid-column: 1 / -1; color: #5b7384; font-size: .72rem; font-weight: 500; }
.official-archive-group .official-report small, .official-archive-suspended .official-report small { grid-column: 1; color: #587184; font-size: .72rem; }
.official-archive-group .official-report[data-status="unavailable"] small { color: #9b6530; }
.official-archive-group .official-report .official-report-action, .official-archive-suspended .official-report .official-report-action { grid-column: 2; align-self: end; color: #0a6e91; font-size: .69rem; white-space: nowrap; }
.official-stock-note { margin: 11px 2px 0; color: #587184; font-size: .72rem; line-height: 1.4; }
.official-archive-suspended { margin-top: 13px; border: 1px solid #d9e4eb; border-radius: 15px; background: #fff; }
.official-archive-suspended summary { min-height: 49px; padding: 14px 15px; color: #385e75; font-size: .82rem; font-weight: 800; cursor: pointer; }
.official-archive-suspended-content { padding: 0 12px 12px; }
.official-archive-suspended .official-report { --archive-accent: #a4b4bd; box-shadow: none; }
@media (max-width: 360px) { .official-archive-filters .official-controls { grid-template-columns: 1fr; } .official-archive-filters .official-controls label:last-child { grid-column: auto; } }
