
.f15-pfbca,
.f15-pfbca * {
    box-sizing: border-box!important;
}
.f15-pfbca {
    --f15-blue: #0052CC!important;
    --f15-blue-dark: #0052CC!important;
    --f15-text: #202124!important;
    --f15-muted: #6f7378!important;
    --f15-line: #dfe3e8!important;
    --f15-soft: #f5f7fa!important;
    --f15-soft-blue: #eef5ff!important;
    --f15-sidebar: #242424!important;
    --f15-green: #2f8b49!important;
    --f15-green-bg: #e7f5e9!important;
    --f15-red: #b62929!important;
    --f15-red-bg: #fde8e8!important;
    --f15-warn: #8f6500!important;
    --f15-warn-bg: #fff4cf!important;
    width: min(1328px, calc(100% - 32px))!important;
    margin: 0 auto!important;
    color: var(--f15-text)!important;
    font-family: inherit!important;
}
.f15-pfbca button,
.f15-pfbca input,
.f15-pfbca select {
    font: inherit!important;
}
.f15-pfbca button {
    cursor: pointer!important;
}
.f15-pfbca button:disabled {
    cursor: not-allowed!important;
    opacity: .55!important;
}
.f15-pfbca a {
    color: var(--f15-blue)!important;
}
.f15-pfbca-intro {
    margin: 54px 0 20px!important;
}
.f15-pfbca-intro h1 {
    margin: 0 0 4px!important;
    font-size: clamp(32px, 3vw, 47px)!important;
    line-height: 1.05!important;
    letter-spacing: -.035em!important;
    font-weight: 500!important;
}
.f15-pfbca-intro > p {
    margin: 0!important;
    max-width: 920px!important;
    font-size: 16px!important;
    line-height: 1.55!important;
    color: #33383d!important;
}
.f15-pfbca-eyebrow {
    margin-bottom: 3px!important;
    color: var(--f15-blue)!important;
    font-size: 11px!important;
    line-height: 1!important;
    font-weight: 700!important;
    text-transform: uppercase!important;
}
.f15-pfbca-readonly {
    display: flex!important;
    align-items: center!important;
    margin-top: 16px!important;
    min-height: 34px!important;
    padding: 7px 14px!important;
    border: 1px solid #c8dcfa!important;
    border-left: 3px solid var(--f15-blue)!important;
    border-radius: 8px!important;
    background: #f4f8ff!important;
    color: #3a4047!important;
    font-size: 13px!important;
}
.f15-pfbca-readonly > span {
    margin-right: 8px!important;
    font-size: 12px!important;
}
.f15-pfbca-shell {
    display: grid!important;
    grid-template-columns: 300px minmax(0, 1fr)!important;
    min-height: 610px!important;
    border: 1px solid #d7dce3!important;
    border-radius: 24px!important;
    overflow: hidden!important;
    background: #fff!important;
    box-shadow: 0 8px 26px rgba(20, 34, 54, .08)!important;
}
.f15-pfbca-sidebar {
    padding: 24px 24px 28px!important;
    background: var(--f15-sidebar)!important;
    color: #fff!important;
}
.f15-pfbca-sidebar-kicker {
    margin-bottom: 8px!important;
    font-size: 11px!important;
    line-height: 1!important;
    color: #b6b6b6!important;
}
.f15-pfbca-sidebar h2 {
    margin: 0 0 30px!important;
    max-width: 220px!important;
    color: #fff!important;
    font-size: 24px!important;
    line-height: 1.06!important;
    font-weight: 600!important;
}
.f15-pfbca-label {
    display: block!important;
    margin: 0 0 8px!important;
    font-size: 12px!important;
    color: #e7e7e7!important;
}
.f15-pfbca-token,
.f15-pfbca-account {
    width: 100%!important;
    height: 44px!important;
    padding: 0 13px!important;
    border: 1px solid #444!important;
    border-radius: 7px!important;
    outline: none!important;
    background: #3a3a3a!important;
    color: #fff!important;
    font-size: 13px!important;
}
.f15-pfbca-token::placeholder {
    color: #8f8f8f!important;
}
.f15-pfbca-token:focus,
.f15-pfbca-account:focus {
    border-color: var(--f15-blue)!important;
    box-shadow: 0 0 0 2px rgba(0, 82, 204, .18)!important;
}
.f15-pfbca-account:disabled {
    color: #7f7f7f!important;
}
.f15-pfbca-generate-token {
    display: inline-block!important;
    margin: 6px 0 24px!important;
    font-size: 11px!important;
}
.f15-pfbca-primary,
.f15-pfbca-secondary,
.f15-pfbca-outline {
    border-radius: 7px!important;
    font-weight: 500!important;
    transition: .15s ease!important;
}
.f15-pfbca-sidebar .f15-pfbca-primary,
.f15-pfbca-sidebar .f15-pfbca-secondary {
    width: 100%!important;
    min-height: 44px!important;
    margin-top: 18px!important;
}
.f15-pfbca-primary {
    border: 1px solid var(--f15-blue)!important;
    background: var(--f15-blue)!important;
    color: #fff!important;
}
.f15-pfbca-primary:hover:not(:disabled) {
    border-color: var(--f15-blue-dark)!important;
    background: var(--f15-blue-dark)!important;
}
.f15-pfbca-secondary {
    margin-top: 9px !important;
    border: 2px solid #fff!important;
    background: transparent!important;
    color: #fff!important;
}
.f15-pfbca-secondary:hover {
    background: rgba(255,255,255,.08)!important;
}
.f15-pfbca-privacy {
    margin: 66px 0 0!important;
    color: #b7b7b7!important;
    font-size: 11px!important;
    line-height: 1.35!important;
}
.f15-pfbca-main {
    min-width: 0!important;
    padding: 24px 24px 18px!important;
    background: #fff!important;
}
.f15-pfbca-status-row {
    display: flex!important;
    align-items: flex-start!important;
    justify-content: space-between!important;
    gap: 20px!important;
    min-height: 50px!important;
    padding: 0 0 17px!important;
    border-bottom: 1px solid var(--f15-line)!important;
}
.f15-pfbca-status-title {
    display: flex!important;
    align-items: center!important;
    gap: 10px!important;
    font-size: 16px!important;
}
.f15-pfbca-status-badge {
    display: inline-flex!important;
    align-items: center!important;
    min-height: 22px!important;
    padding: 2px 9px!important;
    border-radius: 99px!important;
    font-size: 11px!important;
    font-weight: 600!important;
}
.f15-pfbca-status-badge.is-idle {
    background: #ededed!important;
    color: #6f6f6f!important;
}
.f15-pfbca-status-badge.is-loading {
    background: #dcecff!important;
    color: #0052CC!important;
}
.f15-pfbca-status-badge.is-done {
    background: var(--f15-green-bg)!important;
    color: var(--f15-green)!important;
}
.f15-pfbca-status-badge.is-failed {
    background: var(--f15-red-bg)!important;
    color: var(--f15-red)!important;
}
.f15-pfbca-status-message {
    margin-top: 7px!important;
    color: var(--f15-muted)!important;
    font-size: 12px!important;
}
.f15-pfbca-status-message.is-error {
    color: var(--f15-red)!important;
}
.f15-pfbca-export-actions {
    display: flex!important;
    gap: 12px!important;
}
.f15-pfbca-outline {
    min-height: 40px!important;
    padding: 0 18px!important;
    border: 2px solid var(--f15-blue)!important;
    background: #fff!important;
    color: var(--f15-blue)!important;
}
.f15-pfbca-outline:hover {
    background: #f3f8ff!important;
}
.f15-pfbca-progress {
    padding: 12px 0 0!important;
}
.f15-pfbca-progress-track {
    height: 5px!important;
    overflow: hidden!important;
    border-radius: 99px!important;
    background: #e9edf2!important;
}
.f15-pfbca-progress-track > span {
    display: block!important;
    width: 0!important;
    height: 100%!important;
    border-radius: inherit!important;
    background: var(--f15-blue)!important;
    transition: width .2s ease!important;
}
.f15-pfbca-kpis {
    display: grid!important;
    grid-template-columns: repeat(6, minmax(0,1fr))!important;
    gap: 12px!important;
    margin: 18px 0 18px!important;
}
.f15-pfbca-kpi {
    min-width: 0!important;
    padding: 14px 14px 13px!important;
    border-radius: 9px!important;
    background: #f4f7fb!important;
}
.f15-pfbca-kpi span {
    display: block!important;
    margin-bottom: 3px!important;
    color: #80868d!important;
    font-size: 11px!important;
}
.f15-pfbca-kpi strong {
    display: block!important;
    font-size: 27px!important;
    line-height: 1!important;
    font-weight: 500!important;
    color: #22272d!important;
}
.f15-pfbca-tabs {
    display: grid!important;
    grid-template-columns: repeat(3, 1fr)!important;
    gap: 3px!important;
    margin: 0 0 18px!important;
    padding: 3px!important;
    border: 1px solid #e4e6e8!important;
    border-radius: 8px!important;
    box-shadow: 0 2px 7px rgba(0,0,0,.12)!important;
}
.f15-pfbca-tabs button {
    height: 38px!important;
    border: 0!important;
    border-radius: 6px!important;
    background: #fff!important;
    color: #2e3135!important;
    font-size: 13px!important;
}
.f15-pfbca-tabs button.is-active {
    background: #242424!important;
    color: #fff!important;
}
.f15-pfbca-tabs button em {
    font-style: normal!important;
    color: inherit!important;
}
.f15-pfbca-panel {
    display: none!important;
}
.f15-pfbca-panel.is-active {
    display: block!important;
}
.f15-pfbca-empty {
    min-height: 350px!important;
    display: flex!important;
    flex-direction: column!important;
    align-items: center!important;
    justify-content: center!important;
    border-radius: 8px!important;
    background: #f6f6f6!important;
    text-align: center!important;
}
.f15-pfbca-empty-icon {
    margin-bottom: 16px!important;
    color: var(--f15-blue)!important;
    font-size: 34px!important;
}
.f15-pfbca-empty p {
    margin: 0 0 8px!important;
    font-size: 14px!important;
    color: #555!important;
}
.f15-pfbca-inline-token-link {
    font-size: 12px!important;
}
.f15-pfbca-data-view h3,
.f15-pfbca-comments-head h3,
.f15-pfbca-insights-head h3 {
    margin: 0!important;
    font-size: 21px!important;
    line-height: 1.2!important;
    font-weight: 600!important;
}
.f15-pfbca-comments-head p,
.f15-pfbca-insights-head p {
    margin: 4px 0 0!important;
    color: var(--f15-muted)!important;
    font-size: 12px!important;
}
.f15-pfbca-table-wrap {
    width: 100%!important;
    max-height: 455px!important;
    margin-top: 14px!important;
    overflow: auto!important;
    border-radius: 7px!important;
}
.f15-pfbca-table {
    width: 100%!important;
    border-collapse: collapse!important;
    table-layout: auto!important;
    font-size: 12px!important;
}
.f15-pfbca-table th {
    position: sticky!important;
    top: 0!important;
    z-index: 2!important;
    padding: 9px 7px!important;
    border: 1px solid #abc8ed!important;
    background: #cfe3fb!important;
    color: #1e2b38!important;
    text-align: left!important;
    white-space: nowrap!important;
    font-weight: 600!important;
}
.f15-pfbca-table td {
    padding: 8px 7px!important;
    border-bottom: 1px solid #fff!important;
    vertical-align: top!important;
    line-height: 1.3!important;
}
.f15-pfbca-table tbody tr:nth-child(odd) {
    background: #F3F4F8!important;
}
.f15-pfbca-table tbody tr:nth-child(even) {
    background: #fff!important;
}
.f15-pfbca-table strong {
    font-weight: 600!important;
}
.f15-pfbca-table code {
    padding: 1px 3px!important;
    background: #eceeef!important;
    color: #555!important;
    font: inherit!important;
    word-break: break-all!important;
}
.f15-pfbca-table a {
    display: inline-block!important;
    margin-top: 3px!important;
    font-size: 11px!important;
}
.f15-pfbca-table .f15-pfbca-ad-id {
    display: block!important;
    margin-top: 3px!important;
    color: #8a8f94!important;
    font-size: 10px!important;
}
.f15-pfbca-table .f15-pfbca-action-row {
    display: flex!important;
    flex-wrap: wrap!important;
    gap: 5px!important;
}
.f15-pfbca-mini-btn {
    padding: 4px 8px!important;
    border: 1px solid var(--f15-blue)!important;
    border-radius: 3px!important;
    background: #fff!important;
    color: var(--f15-blue)!important;
    font-size: 10px!important;
    line-height: 1.2!important;
}
.f15-pfbca-pill {
    display: inline-flex!important;
    padding: 4px 8px!important;
    border-radius: 99px!important;
    font-size: 10px!important;
    font-weight: 600!important;
    white-space: nowrap!important;
}
.f15-pfbca-pill.ok {
    background: var(--f15-green-bg)!important;
    color: var(--f15-green)!important;
}
.f15-pfbca-pill.warn {
    background: var(--f15-warn-bg)!important;
    color: var(--f15-warn)!important;
}
.f15-pfbca-pill.error {
    background: var(--f15-red-bg)!important;
    color: var(--f15-red)!important;
}
.f15-pfbca-comment-tools {
    display: grid!important;
    grid-template-columns: minmax(250px, 1.5fr) minmax(150px, .7fr) minmax(150px, .7fr) auto!important;
    gap: 12px!important;
    align-items: end!important;
    margin-top: 18px!important;
    padding: 13px!important;
    border-radius: 9px!important;
    background: #f5f5f5!important;
}
.f15-pfbca-field label {
    display: block!important;
    margin: 0 0 6px!important;
    color: #4f5459!important;
    font-size: 10px!important;
    font-weight: 600!important;
}
.f15-pfbca-field input,
.f15-pfbca-field select {
    width: 100%!important;
    height: 42px!important;
    padding: 0 12px!important;
    border: 1px solid #d2d5d9!important;
    border-radius: 7px!important;
    background: #fff!important;
    color: #2d3135!important;
    font-size: 12px!important;
}
.f15-pfbca-comment-count {
    padding-bottom: 12px!important;
    white-space: nowrap!important;
    color: #767b80!important;
    font-size: 11px!important;
}
.f15-pfbca-comment-count strong {
    color: #2e3236!important;
}
.f15-pfbca-comments-wrap {
    max-height: 430px!important;
}
.f15-pfbca-comment-text {
    min-width: 260px!important;
    white-space: normal!important;
}
.f15-pfbca-shared {
    display: block!important;
    margin-top: 4px!important;
    color: #868b90!important;
    font-size: 10px!important;
}
.f15-pfbca-inline-empty {
    padding: 60px 20px!important;
    text-align: center!important;
    color: #81868b!important;
    font-size: 12px!important;
}
.f15-pfbca-insights-head {
    display: flex!important;
    align-items: flex-start!important;
    justify-content: space-between!important;
    gap: 18px!important;
}
.f15-pfbca-insight-button {
    min-height: 40px!important;
    padding: 0 18px!important;
}
.f15-pfbca-insights-empty {
    margin-top: 18px!important;
    min-height: 260px!important;
    display: flex!important;
    align-items: center!important;
    justify-content: center!important;
    padding: 30px!important;
    border-radius: 10px!important;
    background: #f7f7f7!important;
    color: #74787d!important;
    text-align: center!important;
    font-size: 12px!important;
}
.f15-pfbca-leaders {
    display: grid!important;
    grid-template-columns: repeat(3, 1fr)!important;
    gap: 12px!important;
    margin: 18px 0 14px!important;
}
.f15-pfbca-leader {
    position: relative!important;
    min-height: 120px!important;
    padding: 16px 14px 14px!important;
    border: 1px solid #c9ddfa!important;
    border-radius: 8px!important;
    background: #f1f6ff!important;
    text-align: left!important;
    display: flex!important;
    flex-direction: column!important;
    align-items: flex-start!important;
    justify-content: center!important;
}
.f15-pfbca-leader-icon {
    display: grid!important;
    place-items: center!important;
    width: 48px!important;
    height: 48px!important;
    margin: 0 0 10px!important;
    border-radius: 50%!important;
    background: var(--f15-blue)!important;
}
.f15-pfbca-leader-icon img {
    width: 22px!important;
    height: 22px!important;
    display: block!important;
}
.f15-pfbca-leader span {
    display: block!important;
    color: #00000066!important;
    font-size: 12px!important;
    font-weight: 400!important;
    line-height: 1.3!important;
}
.f15-pfbca-leader strong {
    display: block!important;
    margin-top: 3px!important;
    color: #3F3F3F!important;
    font-size: 14px!important;
    font-weight: 600!important;
    line-height: 1.35!important;
}
.f15-pfbca-leader b {
    display: block!important;
    margin-top: 4px!important;
    color: #262626!important;
    font-size: 24px!important;
    line-height: 1!important;
    font-weight: 600!important;
}
.f15-pfbca-sentiments {
    display: grid!important;
    grid-template-columns: repeat(4, 1fr)!important;
    gap: 12px!important;
    margin: 14px 0!important;
}
.f15-pfbca-sentiment {
    min-height: 90px!important;
    padding: 13px 18px!important;
    border-radius: 6px!important;
    text-align: center!important;
    display: flex!important;
    flex-direction: column!important;
    align-items: center!important;
    justify-content: center!important;
}
.f15-pfbca-sentiment.positive { background:#e8f5e5!important; }
.f15-pfbca-sentiment.neutral { background:#eef4fb!important; }
.f15-pfbca-sentiment.negative { background:#fbe8e7!important; }
.f15-pfbca-sentiment.unclear { background:#f1f1f1!important; }
.f15-pfbca-sentiment span {
    display:block!important;
    color:#00000066!important;
    font-size:12px!important;
    font-weight:400!important;
    line-height:1.3!important;
}
.f15-pfbca-sentiment strong {
    display:block!important;
    margin:4px 0 5px!important;
    color:#262626!important;
    font-size:24px!important;
    line-height:1!important;
    font-weight:600!important;
}
.f15-pfbca-sentiment small {
    color:#00000066!important;
    font-size:11px!important;
    font-weight:400!important;
    line-height:1.3!important;
}
.f15-pfbca-summary {
    margin: 12px 0!important;
    padding: 14px 16px!important;
    border-radius: 8px!important;
    background: #f5f7f9!important;
}
.f15-pfbca-summary h4 {
    margin:0 0 5px!important;
    font-size:14px!important;
    font-weight:600!important;
    color:#3F3F3F!important;
    padding-bottom:3px!important;
}
.f15-pfbca-summary p {
    margin:0!important;
    color:#42484e!important;
    font-size:12px!important;
    line-height:1.5!important;
}
.f15-pfbca-insight-list {
    margin-top: 10px!important;
    border-top: 1px solid #e3e6e8!important;
}
.f15-pfbca-insight-row {
    display: grid!important;
    grid-template-columns: 48px minmax(0,1fr)!important;
    gap: 12px!important;
    padding: 12px 0!important;
    border-bottom: 1px solid #e3e6e8!important;
}
.f15-pfbca-insight-icon {
    display: grid!important;
    place-items: center!important;
    width: 48px!important;
    height: 48px!important;
    border-radius: 50%!important;
    background: #dcebff!important;
}
.f15-pfbca-insight-icon img {
    width: 29px!important;
    height: 29px!important;
    display: block!important;
}
.f15-pfbca-insight-row h4 {
    margin:0 0 7px!important;
    padding-bottom:2px!important;
    font-size:14px!important;
    font-weight:600!important;
    color:#3F3F3F!important;
}
.f15-pfbca-insight-row ul,
.f15-pfbca-insight-row ol {
    margin:0!important;
    padding-left:18px!important;
}
.f15-pfbca-insight-row li {
    margin: 0 0 5px!important;
    font-size: 12px!important;
    line-height: 1.45!important;
    color:#444a50!important;
}
.f15-pfbca-insight-row p {
    margin:0!important;
    font-size:12px!important;
    line-height:1.45!important;
    color:#6b7278!important;
}
.f15-pfbca-support {
    display:inline-block!important;
    margin-left:6px!important;
    color:#7b8187!important;
    font-size:10px!important;
}
.f15-pfbca-notable-metrics {
    display:flex!important;
    flex-wrap:wrap!important;
    gap:5px!important;
    margin:5px 0!important;
}
.f15-pfbca-notable-metrics span {
    padding:3px 6px!important;
    border-radius:99px!important;
    background:#f0f0f0!important;
    color:#6f7478!important;
    font-size:10px!important;
}
.f15-pfbca-notable-links a {
    margin-right:10px!important;
    font-size:10px!important;
}
.f15-pfbca-analysis-meta {
    margin: 10px 0 4px!important;
    color:#777e85!important;
    font-size:10px!important;
}
.f15-pfbca-ai-notice {
    display:flex!important;
    flex-direction:column!important;
    gap:5px!important;
    text-align:center!important;
}
.f15-pfbca-spinner {
    display:inline-block!important;
    width:18px!important;
    height:18px!important;
    margin-right:8px!important;
    vertical-align:-4px!important;
    border:2px solid #c9d2dc!important;
    border-top-color:var(--f15-blue)!important;
    border-radius:50%!important;
    animation:f15-pfbca-spin .75s linear infinite!important;
}
@keyframes f15-pfbca-spin { to { transform:rotate(360deg); } }
.f15-pfbca-modal {
    position:fixed!important;
    inset:0!important;
    z-index:999999!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:30px!important;
    background:rgba(0,0,0,.58)!important;
}
.f15-pfbca-modal[hidden] { display:none!important; }
.f15-pfbca-modal-card {
    position:relative!important;
    width:min(980px, 96vw)!important;
    max-height:86vh!important;
    overflow:auto!important;
    padding:28px!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 24px 80px rgba(0,0,0,.3)!important;
}
.f15-pfbca-modal-close {
    position:absolute!important;
    top:13px!important;
    right:16px!important;
    border:0!important;
    background:transparent!important;
    color:#111!important;
    font-size:30px!important;
    line-height:1!important;
}
.f15-pfbca-modal-card h2 {
    margin:0 40px 6px 0!important;
    font-size:22px!important;
}
.f15-pfbca-modal-card h3 {
    margin:18px 0 7px!important;
    font-size:15px!important;
}
.f15-pfbca-modal-card p,
.f15-pfbca-modal-card li {
    font-size:12px!important;
    line-height:1.5!important;
}
.f15-pfbca-modal-sentiments {
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    gap:10px!important;
    margin:16px 0!important;
}
.f15-pfbca-modal-sentiments > div {
    padding:12px!important;
    border-radius:8px!important;
    background:#f4f5f6!important;
}
.f15-pfbca-modal-sentiments span {
    display:block!important;
    color:#687079!important;
    font-size:10px!important;
}
.f15-pfbca-modal-sentiments strong {
    display:block!important;
    margin-top:3px!important;
    font-size:20px!important;
}
.f15-pfbca-error-box {
    padding:16px!important;
    border-radius:8px!important;
    background:#fff0f0!important;
    color:#9f2828!important;
    font-size:12px!important;
}
@media (max-width: 1050px) {
    .f15-pfbca-shell { grid-template-columns:260px minmax(0,1fr)!important; }
    .f15-pfbca-kpis { grid-template-columns:repeat(3,1fr)!important; }
    .f15-pfbca-comment-tools { grid-template-columns:1fr 1fr!important; }
    .f15-pfbca-comment-count { padding-bottom:0!important; }
}
@media (max-width: 760px) {
    .f15-pfbca { width:min(100% - 20px, 680px)!important; }
    .f15-pfbca-intro { margin-top:28px!important; }
    .f15-pfbca-shell { display:block!important; border-radius:16px!important; }
    .f15-pfbca-sidebar { padding:22px 20px!important; }
    .f15-pfbca-sidebar h2 { margin-bottom:20px!important; }
    .f15-pfbca-privacy { margin-top:28px!important; }
    .f15-pfbca-main { padding:18px 14px!important; }
    .f15-pfbca-status-row,
    .f15-pfbca-insights-head { flex-direction:column!important; }
    .f15-pfbca-export-actions { width:100%!important; }
    .f15-pfbca-export-actions button { flex:1!important; }
    .f15-pfbca-kpis { grid-template-columns:repeat(2,1fr)!important; }
    .f15-pfbca-tabs { grid-template-columns:1fr!important; }
    .f15-pfbca-leaders { grid-template-columns:1fr!important; }
    .f15-pfbca-sentiments,
    .f15-pfbca-modal-sentiments { grid-template-columns:repeat(2,1fr)!important; }
    .f15-pfbca-comment-tools { grid-template-columns:1fr!important; }
    .f15-pfbca-table-wrap { max-height:420px!important; }
    .f15-pfbca-modal { padding:12px!important; }
    .f15-pfbca-modal-card { padding:22px 16px!important; }
}

/* v0.1.1 — public workflow first-screen visual lockup (Figma match) */
#f15-pfbca-tool,
#f15-pfbca-tool * {
    box-sizing: border-box!important;
}
#f15-pfbca-tool [hidden] {
    display: none!important;
}
#f15-pfbca-tool {
    width: min(1144px, calc(100% - 32px))!important;
    max-width: 1144px!important;
    margin: 0 auto!important;
    padding: 70px 0 80px!important;
    color: #242424!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 16px!important;
    line-height: 1.35!important;
}
#f15-pfbca-tool .f15-pfbca-intro {
    margin: 0 0 24px!important;
    padding: 0!important;
}
#f15-pfbca-tool .f15-pfbca-eyebrow {
    margin: 0 0 4px!important;
    color: #0052CC!important;
    font-size: 11px!important;
    line-height: 1.1!important;
    font-weight: 700!important;
    letter-spacing: 0!important;
    text-transform: uppercase!important;
}
#f15-pfbca-tool .f15-pfbca-intro h1 {
    margin: 0 0 4px!important;
    padding: 0!important;
    color: #252525!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 46px!important;
    line-height: 1.08!important;
    font-weight: 400!important;
    letter-spacing: -1.45px!important;
    text-transform: none!important;
}
#f15-pfbca-tool .f15-pfbca-intro > p {
    margin: 0!important;
    padding: 0!important;
    max-width: none!important;
    color: #444!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 15px!important;
    line-height: 1.45!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-readonly {
    display: flex!important;
    align-items: center!important;
    width: 100%!important;
    min-height: 36px!important;
    margin: 20px 0 0!important;
    padding: 7px 14px!important;
    border: 1px solid #bed7ff!important;
    border-left: 4px solid #0052CC!important;
    border-radius: 8px!important;
    background: #f3f7ff!important;
    color: #444!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 13px!important;
    line-height: 1.3!important;
    box-shadow: none!important;
}
#f15-pfbca-tool .f15-pfbca-readonly > span {
    display: inline-block!important;
    margin: 0 10px 0 0!important;
    font-size: 13px!important;
    line-height: 1!important;
}
#f15-pfbca-tool .f15-pfbca-readonly strong {
    color: #333!important;
    font-weight: 700!important;
}
#f15-pfbca-tool .f15-pfbca-shell {
    position: relative!important;
    left: 50%!important;
    display: grid!important;
    grid-template-columns: 300px minmax(0, 1fr)!important;
    width: min(1280px, calc(100vw - 80px))!important;
    min-height: 550px!important;
    margin: 0!important;
    transform: translateX(-50%)!important;
    overflow: hidden!important;
    border: 1px solid #d5dce5!important;
    border-radius: 22px!important;
    background: #fff!important;
    box-shadow: 0 8px 26px rgba(35, 55, 85, .08)!important;
}
#f15-pfbca-tool .f15-pfbca-sidebar {
    display: flex!important;
    flex-direction: column!important;
    min-width: 0!important;
    min-height: 548px!important;
    padding: 25px 24px 28px!important;
    background: #242424!important;
    color: #fff!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
}
#f15-pfbca-tool .f15-pfbca-sidebar-kicker {
    margin: 0 0 9px!important;
    padding: 0!important;
    color: #bcbcbc!important;
    font-size: 11px!important;
    line-height: 1!important;
    font-weight: 400!important;
    letter-spacing: 0!important;
}
#f15-pfbca-tool .f15-pfbca-sidebar h2 {
    margin: 0 0 29px!important;
    padding: 0!important;
    max-width: 220px!important;
    color: #fff!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 22px!important;
    line-height: 1.06!important;
    font-weight: 600!important;
    letter-spacing: 0!important;
    text-transform: none!important;
}
#f15-pfbca-tool .f15-pfbca-label {
    display: block!important;
    margin: 0 0 7px!important;
    padding: 0!important;
    color: #ddd!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 12px!important;
    line-height: 1.2!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-token,
#f15-pfbca-tool .f15-pfbca-account {
    display: block!important;
    width: 100%!important;
    max-width: none!important;
    height: 44px!important;
    min-height: 44px!important;
    margin: 0!important;
    padding: 0 13px!important;
    border: 1px solid #444!important;
    border-radius: 7px!important;
    outline: 0!important;
    background: #3b3b3b!important;
    color: #fff!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 13px!important;
    line-height: 44px!important;
    font-weight: 400!important;
    letter-spacing: 0!important;
    box-shadow: none!important;
    appearance: auto!important;
    -webkit-appearance: auto!important;
}
#f15-pfbca-tool .f15-pfbca-token::placeholder {
    color: #8d8d8d!important;
    opacity: 1!important;
    font-size: 13px!important;
}
#f15-pfbca-tool .f15-pfbca-token:focus,
#f15-pfbca-tool .f15-pfbca-account:focus {
    border-color: #0052CC!important;
    outline: 0!important;
    box-shadow: 0 0 0 2px rgba(0,82,204,.18)!important;
}
#f15-pfbca-tool .f15-pfbca-token:disabled,
#f15-pfbca-tool .f15-pfbca-account:disabled {
    opacity: 1!important;
    color: #818181!important;
    background: #393939!important;
}
#f15-pfbca-tool .f15-pfbca-generate-token,
#f15-pfbca-tool .f15-pfbca-inline-token-link {
    color: #0052CC!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-weight: 400!important;
    text-decoration: underline!important;
    text-decoration-thickness: 1px!important;
    text-underline-offset: 2px!important;
}
#f15-pfbca-tool .f15-pfbca-generate-token {
    display: inline-block!important;
    margin: 6px 0 24px!important;
    padding: 0!important;
    font-size: 11px!important;
    line-height: 1.2!important;
}
#f15-pfbca-tool button {
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    text-transform: none!important;
    letter-spacing: 0!important;
    box-shadow: none!important;
}
#f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-primary,
#f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-secondary {
    display: flex!important;
    align-items: center!important;
    justify-content: center!important;
    width: 100%!important;
    min-width: 0!important;
    min-height: 44px!important;
    height: 44px!important;
    margin: 18px 0 0!important;
    padding: 0 14px!important;
    border-radius: 7px!important;
    font-size: 13px!important;
    line-height: 1!important;
    font-weight: 500!important;
}
#f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-primary {
    border: 1px solid #0052CC!important;
    background: #0052CC!important;
    color: #fff!important;
}
#f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-primary:disabled {
    opacity: 1!important;
    border-color: #0052CC!important;
    background: #0052CC!important;
    color: #fff!important;
    cursor: not-allowed!important;
}
#f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-secondary {
    margin-top: 9px!important;
    border: 2px solid #fff!important;
    background: transparent!important;
    color: #fff!important;
}
#f15-pfbca-tool .f15-pfbca-privacy {
    margin: auto 0 0!important;
    padding: 0!important;
    color: #aaa!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 11px!important;
    line-height: 1.35!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-main {
    min-width: 0!important;
    min-height: 548px!important;
    padding: 24px 24px 22px!important;
    background: #fff!important;
    color: #242424!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
}
#f15-pfbca-tool .f15-pfbca-status-row {
    display: flex!important;
    align-items: flex-start!important;
    justify-content: space-between!important;
    gap: 20px!important;
    min-height: 40px!important;
    margin: 0!important;
    padding: 0 0 16px!important;
    border: 0!important;
    border-bottom: 1px solid #d7d7d7!important;
}
#f15-pfbca-tool .f15-pfbca-status-title {
    display: flex!important;
    align-items: center!important;
    gap: 10px!important;
    margin: 0!important;
    padding: 0!important;
    color: #151515!important;
    font-size: 16px!important;
    line-height: 1.3!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-status-title strong {
    color: #151515!important;
    font-weight: 700!important;
}
#f15-pfbca-tool .f15-pfbca-status-badge {
    display: inline-flex!important;
    align-items: center!important;
    justify-content: center!important;
    min-height: 22px!important;
    margin: 0!important;
    padding: 2px 9px!important;
    border: 0!important;
    border-radius: 999px!important;
    font-size: 11px!important;
    line-height: 1!important;
    font-weight: 500!important;
    box-shadow: none!important;
}
#f15-pfbca-tool .f15-pfbca-status-badge.is-idle {
    background: #e9e9e9!important;
    color: #666!important;
}
#f15-pfbca-tool .f15-pfbca-status-message {
    margin: 6px 0 0!important;
    padding: 0!important;
    color: #6f7378!important;
    font-size: 12px!important;
    line-height: 1.35!important;
}
#f15-pfbca-tool .f15-pfbca-kpis[hidden] + .f15-pfbca-tabs {
    margin-top: 26px!important;
}
#f15-pfbca-tool .f15-pfbca-tabs {
    display: grid!important;
    grid-template-columns: repeat(3, minmax(0, 1fr))!important;
    gap: 3px!important;
    width: 100%!important;
    min-height: 43px!important;
    margin: 0 0 25px!important;
    padding: 3px!important;
    border: 1px solid #e4e6e8!important;
    border-radius: 8px!important;
    background: #fff!important;
    box-shadow: 0 2px 7px rgba(0,0,0,.12)!important;
}
#f15-pfbca-tool .f15-pfbca-tabs button {
    display: flex!important;
    align-items: center!important;
    justify-content: center!important;
    gap: 8px!important;
    width: 100%!important;
    min-width: 0!important;
    height: 37px!important;
    min-height: 37px!important;
    margin: 0!important;
    padding: 0 12px!important;
    border: 0!important;
    border-radius: 6px!important;
    background: #fff!important;
    color: #303030!important;
    font-size: 13px!important;
    line-height: 1!important;
    font-weight: 400!important;
    box-shadow: none!important;
}
#f15-pfbca-tool .f15-pfbca-tabs button.is-active {
    background: #242424!important;
    color: #fff!important;
}
#f15-pfbca-tool .f15-pfbca-tabs button em {
    margin: 0!important;
    color: inherit!important;
    font-size: inherit!important;
    line-height: inherit!important;
    font-style: normal!important;
}
#f15-pfbca-tool .f15-pfbca-tab-icon {
    display: inline-flex!important;
    align-items: center!important;
    justify-content: center!important;
    width: 16px!important;
    height: 16px!important;
    flex: 0 0 16px!important;
    color: currentColor!important;
}
#f15-pfbca-tool .f15-pfbca-tab-icon svg {
    display: block!important;
    width: 16px!important;
    height: 16px!important;
    overflow: visible!important;
}
#f15-pfbca-tool .f15-pfbca-panel {
    margin: 0!important;
    padding: 0!important;
}
#f15-pfbca-tool .f15-pfbca-empty {
    display: flex!important;
    flex-direction: column!important;
    align-items: center!important;
    justify-content: center!important;
    width: 100%!important;
    min-height: 367px!important;
    margin: 0!important;
    padding: 30px!important;
    border: 0!important;
    border-radius: 8px!important;
    background: #f6f6f6!important;
    color: #555!important;
    text-align: center!important;
    box-shadow: none!important;
}
#f15-pfbca-tool .f15-pfbca-empty-icon {
    display: flex!important;
    align-items: center!important;
    justify-content: center!important;
    width: 44px!important;
    height: 44px!important;
    margin: 0 0 16px!important;
    padding: 0!important;
    color: #0052CC!important;
    font-size: 0!important;
    line-height: 1!important;
}
#f15-pfbca-tool .f15-pfbca-empty-icon img {
    display: block!important;
    width: 44px!important;
    height: 44px!important;
    max-width: 44px!important;
    max-height: 44px!important;
    margin: 0!important;
    padding: 0!important;
    object-fit: contain!important;
}
#f15-pfbca-tool .f15-pfbca-empty p {
    margin: 0 0 10px!important;
    padding: 0!important;
    color: #555!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 14px!important;
    line-height: 1.35!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-inline-token-link {
    display: inline-block!important;
    margin: 0!important;
    padding: 0!important;
    font-size: 12px!important;
    line-height: 1.3!important;
}

@media (max-width: 1050px) {
    #f15-pfbca-tool .f15-pfbca-shell {
        grid-template-columns: 260px minmax(0, 1fr)!important;
        width: calc(100vw - 40px)!important;
    }
}
@media (max-width: 760px) {
    #f15-pfbca-tool {
        width: calc(100% - 20px)!important;
        max-width: 680px!important;
        padding: 36px 0 48px!important;
    }
    #f15-pfbca-tool .f15-pfbca-intro h1 {
        font-size: 34px!important;
        letter-spacing: -.8px!important;
    }
    #f15-pfbca-tool .f15-pfbca-shell {
        position: static!important;
        left: auto!important;
        display: block!important;
        width: 100%!important;
        min-height: 0!important;
        margin: 0!important;
        transform: none!important;
        border-radius: 16px!important;
    }
    #f15-pfbca-tool .f15-pfbca-sidebar,
    #f15-pfbca-tool .f15-pfbca-main {
        min-height: 0!important;
    }
    #f15-pfbca-tool .f15-pfbca-privacy {
        margin-top: 28px!important;
    }
    #f15-pfbca-tool .f15-pfbca-tabs {
        grid-template-columns: repeat(3, minmax(0,1fr))!important;
    }
    #f15-pfbca-tool .f15-pfbca-tabs button {
        padding: 0 6px!important;
        font-size: 12px!important;
    }
    #f15-pfbca-tool .f15-pfbca-empty {
        min-height: 300px!important;
    }
}

/* v0.1.2 — first-screen Figma refinement / Four15 site style isolation */
#f15-pfbca-tool,
#f15-pfbca-tool * {
    font-family: Inter, Inter, Arial, Helvetica, sans-serif!important;
}

/* Keep the entire workflow aligned to the same site/header content width. */
#f15-pfbca-tool .f15-pfbca-shell {
    position: static!important;
    left: auto!important;
    width: 100%!important;
    max-width: 100%!important;
    margin: 0!important;
    transform: none!important;
}

/* Sidebar typography from Andrea's design. */
#f15-pfbca-tool .f15-pfbca-sidebar-kicker {
    color: rgba(255,255,255,.60)!important;
    font-size: 12px!important;
    line-height: 1.2!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-sidebar h2 {
    color: #FFFFFF!important;
    font-size: 20px!important;
    line-height: 1.08!important;
    font-weight: 600!important;
}
#f15-pfbca-tool .f15-pfbca-label {
    color: #D9D9D9!important;
    font-size: 12px!important;
    line-height: 1.2!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-token,
#f15-pfbca-tool .f15-pfbca-account {
    font-size: 13px!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-token::placeholder {
    color: rgba(255,255,255,.40)!important;
    font-size: 13px!important;
    font-weight: 400!important;
    opacity: 1!important;
}
#f15-pfbca-tool .f15-pfbca-account:disabled {
    color: rgba(255,255,255,.40)!important;
}
#f15-pfbca-tool .f15-pfbca-generate-token,
#f15-pfbca-tool .f15-pfbca-inline-token-link {
    color: #0052CC!important;
    font-size: 14px!important;
    line-height: 1.25!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-primary,
#f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-secondary,
#f15-pfbca-tool button {
    font-size: 14px!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-privacy {
    color: rgba(255,255,255,.60)!important;
    font-size: 12px!important;
    line-height: 1.35!important;
    font-weight: 400!important;
}

/* Tabs: gray tray + three separate raised buttons, matching the Figma treatment. */
#f15-pfbca-tool .f15-pfbca-tabs {
    gap: 8px!important;
    min-height: 46px!important;
    padding: 4px!important;
    border: 0!important;
    border-radius: 8px!important;
    background: #F1F1F1!important;
    box-shadow: none!important;
}
#f15-pfbca-tool .f15-pfbca-tabs button {
    height: 38px!important;
    min-height: 38px!important;
    padding: 0 12px!important;
    border: 1px solid #E7E7E7!important;
    border-radius: 7px!important;
    background: #FFFFFF!important;
    color: #303030!important;
    font-size: 14px!important;
    line-height: 1!important;
    font-weight: 400!important;
    box-shadow: 0 2px 5px rgba(0,0,0,.14)!important;
}
#f15-pfbca-tool .f15-pfbca-tabs button.is-active {
    border-color: #242424!important;
    background: #242424!important;
    color: #FFFFFF!important;
    box-shadow: 0 2px 5px rgba(0,0,0,.20)!important;
}
#f15-pfbca-tool .f15-pfbca-tab-icon,
#f15-pfbca-tool .f15-pfbca-tab-icon svg {
    width: 14px!important;
    height: 14px!important;
    min-width: 14px!important;
    max-width: 14px!important;
    min-height: 14px!important;
    max-height: 14px!important;
    flex: 0 0 14px!important;
}

/* Initial empty-state typography. */
#f15-pfbca-tool .f15-pfbca-empty p {
    color: #3F3F3F!important;
    font-size: 16px!important;
    line-height: 1.35!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-inline-token-link {
    color: #0052CC!important;
    font-size: 14px!important;
    line-height: 1.25!important;
    font-weight: 400!important;
}

@media (max-width: 1050px) {
    #f15-pfbca-tool .f15-pfbca-shell {
        width: 100%!important;
        max-width: 100%!important;
    }
}


/* v0.1.3 — loading/results refinement from Andrea Figma */
#f15-pfbca-tool,
#f15-pfbca-tool * {
    font-family: Inter, Arial, Helvetica, sans-serif!important;
}

/* The Figma loading state uses the status badge itself as the progress cue. */
#f15-pfbca-tool .f15-pfbca-progress {
    display: none!important;
}

#f15-pfbca-tool .f15-pfbca-status-badge.is-loading {
    gap: 6px!important;
    padding-right: 7px!important;
}
#f15-pfbca-tool .f15-pfbca-status-badge.is-loading::after {
    content: ''!important;
    display: inline-block!important;
    width: 11px!important;
    height: 11px!important;
    flex: 0 0 11px!important;
    border: 1.5px solid rgba(0,82,204,.24)!important;
    border-top-color: #0052CC!important;
    border-right-color: #0052CC!important;
    border-radius: 50%!important;
    animation: f15-pfbca-status-spin .7s linear infinite!important;
}
@keyframes f15-pfbca-status-spin {
    to { transform: rotate(360deg); }
}

/* Export actions from the loading/results frame. */
#f15-pfbca-tool .f15-pfbca-export-actions {
    align-items: center!important;
    gap: 12px!important;
}
#f15-pfbca-tool .f15-pfbca-export-actions .f15-pfbca-outline {
    height: 46px!important;
    min-height: 46px!important;
    padding: 0 18px!important;
    border: 2px solid #0052CC!important;
    border-radius: 7px!important;
    background: #FFFFFF!important;
    color: #0052CC!important;
    font-size: 14px!important;
    line-height: 1!important;
    font-weight: 500!important;
    box-shadow: none!important;
}
#f15-pfbca-tool .f15-pfbca-export-actions .f15-pfbca-outline:disabled {
    opacity: .48!important;
    background: #FFFFFF!important;
    color: #0052CC!important;
    cursor: not-allowed!important;
}

/* KPI cards — centered and sized exactly like the Figma frame. */
#f15-pfbca-tool .f15-pfbca-kpis {
    gap: 12px!important;
    margin: 18px 0!important;
}
#f15-pfbca-tool .f15-pfbca-kpi {
    display: flex!important;
    flex-direction: column!important;
    align-items: center!important;
    justify-content: center!important;
    height: 64px!important;
    min-height: 64px!important;
    padding: 0 8px!important;
    border: 0!important;
    border-radius: 8px!important;
    background: rgba(0,82,204,.05)!important;
    text-align: center!important;
    box-shadow: none!important;
}
#f15-pfbca-tool .f15-pfbca-kpi span {
    display: block!important;
    margin: 0 0 3px!important;
    padding: 0!important;
    color: rgba(0,0,0,.40)!important;
    font-size: 12px!important;
    line-height: 1.1!important;
    font-weight: 400!important;
    text-align: center!important;
}
#f15-pfbca-tool .f15-pfbca-kpi strong {
    display: block!important;
    margin: 0!important;
    padding: 0!important;
    color: #262626!important;
    font-size: 24px!important;
    line-height: 1!important;
    font-weight: 600!important;
    text-align: center!important;
}

/* Active Ads table refinement. */
#f15-pfbca-tool .f15-pfbca-data-view h3 {
    color: #262626!important;
    font-size: 20px!important;
    line-height: 1.2!important;
    font-weight: 600!important;
}
#f15-pfbca-tool .f15-pfbca-table {
    font-size: 12px!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-table thead {
    box-shadow: inset 0 2px 0 #0052CC!important;
}
#f15-pfbca-tool .f15-pfbca-table th {
    border-top: 2px solid #0052CC!important;
    border-right: 1px solid #ABC8ED!important;
    border-bottom: 1px solid #ABC8ED!important;
    border-left: 1px solid #ABC8ED!important;
    background: #CFE3FB!important;
    color: #262626!important;
    font-size: 12px!important;
    line-height: 1.2!important;
    font-weight: 600!important;
}
#f15-pfbca-tool .f15-pfbca-table td,
#f15-pfbca-tool .f15-pfbca-table td *,
#f15-pfbca-tool .f15-pfbca-table a,
#f15-pfbca-tool .f15-pfbca-table code,
#f15-pfbca-tool .f15-pfbca-table .f15-pfbca-ad-id {
    font-family: Inter, Arial, Helvetica, sans-serif!important;
}

/* v0.1.4 — Active Ads table + status polish from Andrea Figma */

/* Export and row action buttons: outline at rest, solid blue on hover. */
#f15-pfbca-tool .f15-pfbca-export-actions .f15-pfbca-outline:not(:disabled):hover,
#f15-pfbca-tool .f15-pfbca-export-actions .f15-pfbca-outline:not(:disabled):focus-visible,
#f15-pfbca-tool .f15-pfbca-mini-btn:hover,
#f15-pfbca-tool .f15-pfbca-mini-btn:focus-visible {
    border-color: #0052CC!important;
    background: #0052CC!important;
    color: #FFFFFF!important;
    box-shadow: none!important;
}

/* Status bubbles use a soft border in the same family as their state color. */
#f15-pfbca-tool .f15-pfbca-status-badge {
    min-height: 24px!important;
    padding: 3px 10px!important;
    border: 1px solid rgba(0,0,0,.12)!important;
}
#f15-pfbca-tool .f15-pfbca-status-badge.is-idle {
    border-color: rgba(0,0,0,.12)!important;
}
#f15-pfbca-tool .f15-pfbca-status-badge.is-loading {
    border-color: rgba(0,82,204,.20)!important;
}
#f15-pfbca-tool .f15-pfbca-status-badge.is-done {
    border-color: #15810133!important;
    background: #E7F5E9!important;
    color: #158101!important;
}
#f15-pfbca-tool .f15-pfbca-status-badge.is-failed {
    border-color: rgba(182,41,41,.20)!important;
}

/* Row-level status bubbles follow the same treatment. */
#f15-pfbca-tool .f15-pfbca-pill {
    min-height: 23px!important;
    padding: 4px 9px!important;
    border: 1px solid transparent!important;
    border-radius: 999px!important;
    line-height: 1!important;
}
#f15-pfbca-tool .f15-pfbca-pill.ok {
    border-color: #15810133!important;
    background: #E7F5E9!important;
    color: #158101!important;
}
#f15-pfbca-tool .f15-pfbca-pill.warn {
    border-color: rgba(143,101,0,.20)!important;
}
#f15-pfbca-tool .f15-pfbca-pill.error {
    border-color: rgba(182,41,41,.20)!important;
}

/* Andrea's table header is 45px tall with the blue accent only on the bottom edge. */
#f15-pfbca-tool .f15-pfbca-table thead {
    box-shadow: none!important;
}
#f15-pfbca-tool .f15-pfbca-table th {
    height: 45px!important;
    min-height: 45px!important;
    padding: 0 10px!important;
    border-top: 0!important;
    border-right: 1px solid #ABC8ED!important;
    border-bottom: 2px solid #0052CC!important;
    border-left: 1px solid #ABC8ED!important;
    background: #CFE3FB!important;
    color: #262626!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 13px!important;
    line-height: 1.2!important;
    font-weight: 600!important;
    vertical-align: middle!important;
}

/* Balance the Active Ads columns so ad names wrap cleanly and metric columns breathe. */
#f15-pfbca-tool .f15-pfbca-ads-table {
    width: 100%!important;
    table-layout: fixed!important;
}
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(1),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(1) { width: 34%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(2),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(2) { width: 12%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(3),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(3) { width: 10%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(4),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(4) { width: 11%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(5),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(5) { width: 9%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(6),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(6) { width: 10%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(7),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(7) { width: 14%!important; }

/* Keep row-action buttons refined and consistent with the export buttons. */
#f15-pfbca-tool .f15-pfbca-mini-btn {
    border: 1px solid #0052CC!important;
    background: #FFFFFF!important;
    color: #0052CC!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-weight: 500!important;
    transition: background-color .15s ease, color .15s ease, border-color .15s ease!important;
}

/* v0.1.5 — Active Ads table alignment/polish */
#f15-pfbca-tool .f15-pfbca-ads-table,
#f15-pfbca-tool .f15-pfbca-ads-table th,
#f15-pfbca-tool .f15-pfbca-ads-table td {
    box-sizing: border-box!important;
}

/* Figma uses no vertical column rules; keep only the blue header underline. */
#f15-pfbca-tool .f15-pfbca-ads-table th {
    padding: 0 8px!important;
    border-top: 0!important;
    border-right: 0!important;
    border-bottom: 2px solid #0052CC!important;
    border-left: 0!important;
    text-align: left!important;
}
#f15-pfbca-tool .f15-pfbca-ads-table td {
    padding: 8px 8px!important;
    border-top: 0!important;
    border-right: 0!important;
    border-left: 0!important;
    border-bottom: 1px solid #FFFFFF!important;
    text-align: left!important;
}

/* Slightly narrower Ad column; redistribute room to metrics/status/actions. */
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(1),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(1) { width: 30%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(2),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(2) { width: 12%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(3),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(3) { width: 10%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(4),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(4) { width: 11%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(5),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(5) { width: 9%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(6),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(6) { width: 11%!important; }
#f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(7),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(7) { width: 17%!important; }

/* Keep action text compact so it always stays inside the table. */
#f15-pfbca-tool .f15-pfbca-ads-table .f15-pfbca-mini-btn {
    width: auto!important;
    max-width: 100%!important;
    min-width: 0!important;
    padding: 4px 6px!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 10px!important;
    line-height: 1.2!important;
    font-weight: 500!important;
    white-space: nowrap!important;
}

/* v0.1.6 — Comments tab polish from Andrea Figma */
#f15-pfbca-tool .f15-pfbca-comments-head p {
    margin: 4px 0 0!important;
    color: var(--f15-muted)!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 13px!important;
    line-height: 1.35!important;
    font-weight: 400!important;
}

/* Filters: compact 8px inner padding, cleaner label spacing, count below fields. */
#f15-pfbca-tool .f15-pfbca-comment-tools {
    display: grid!important;
    grid-template-columns: minmax(0, 1.6fr) minmax(150px, .65fr) minmax(150px, .65fr)!important;
    column-gap: 14px!important;
    row-gap: 8px!important;
    align-items: start!important;
    margin-top: 18px!important;
    padding: 8px!important;
    border-radius: 9px!important;
    background: #F5F5F5!important;
    box-sizing: border-box!important;
}
#f15-pfbca-tool .f15-pfbca-comment-tools .f15-pfbca-field {
    min-width: 0!important;
}
#f15-pfbca-tool .f15-pfbca-comment-tools .f15-pfbca-field label {
    display: block!important;
    margin: 0 0 8px!important;
    color: #3F3F3F!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 12px!important;
    line-height: 1.2!important;
    font-weight: 400!important;
}
#f15-pfbca-tool .f15-pfbca-comment-tools .f15-pfbca-field input,
#f15-pfbca-tool .f15-pfbca-comment-tools .f15-pfbca-field select {
    width: 100%!important;
    height: 42px!important;
    min-height: 42px!important;
    margin: 0!important;
    border: 1px solid #D2D5D9!important;
    border-radius: 7px!important;
    background-color: #FFFFFF!important;
    color: #2D3135!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 13px!important;
    line-height: 1.2!important;
    font-weight: 400!important;
    box-shadow: none!important;
    box-sizing: border-box!important;
}
#f15-pfbca-tool .f15-pfbca-comment-tools .f15-pfbca-field input {
    padding: 0 12px!important;
}
#f15-pfbca-tool .f15-pfbca-comment-tools .f15-pfbca-field input::placeholder {
    color: rgba(63,63,63,.52)!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 13px!important;
    font-weight: 400!important;
    opacity: 1!important;
}
/* Use our own chevron so its right spacing matches the Figma rather than the browser default. */
#f15-pfbca-tool .f15-pfbca-comment-tools .f15-pfbca-field select {
    -webkit-appearance: none!important;
    appearance: none!important;
    padding: 0 40px 0 12px!important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M3.5 5.25 7 8.75l3.5-3.5' stroke='%233F3F3F' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
    background-repeat: no-repeat!important;
    background-position: right 14px center!important;
    background-size: 14px 14px!important;
}
#f15-pfbca-tool .f15-pfbca-comment-count {
    grid-column: 1 / -1!important;
    justify-self: end!important;
    align-self: center!important;
    margin: 0!important;
    padding: 0 4px 0 0!important;
    color: #767B80!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 11px!important;
    line-height: 1.25!important;
    font-weight: 400!important;
    white-space: nowrap!important;
}
#f15-pfbca-tool .f15-pfbca-comment-count strong {
    color: #2E3236!important;
    font-weight: 600!important;
}

/* Comments table: same clean language as Ads, no vertical rules and aligned cell starts. */
#f15-pfbca-tool .f15-pfbca-comments-table {
    width: 100%!important;
    table-layout: fixed!important;
    border-collapse: collapse!important;
    box-sizing: border-box!important;
}
#f15-pfbca-tool .f15-pfbca-comments-table th,
#f15-pfbca-tool .f15-pfbca-comments-table td {
    box-sizing: border-box!important;
    text-align: left!important;
}
#f15-pfbca-tool .f15-pfbca-comments-table th {
    height: 45px!important;
    min-height: 45px!important;
    padding: 0 8px!important;
    border-top: 0!important;
    border-right: 0!important;
    border-bottom: 2px solid #0052CC!important;
    border-left: 0!important;
    background: #CFE3FB!important;
    color: #262626!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 13px!important;
    line-height: 1.15!important;
    font-weight: 600!important;
    vertical-align: middle!important;
    white-space: normal!important;
}
#f15-pfbca-tool .f15-pfbca-comments-table td {
    padding: 8px 8px!important;
    border-top: 0!important;
    border-right: 0!important;
    border-left: 0!important;
    border-bottom: 1px solid #FFFFFF!important;
    color: #262626!important;
    font-family: Inter, Arial, Helvetica, sans-serif!important;
    font-size: 12px!important;
    line-height: 1.3!important;
    font-weight: 400!important;
    vertical-align: top!important;
}
#f15-pfbca-tool .f15-pfbca-comments-table .f15-pfbca-comment-text {
    min-width: 0!important;
    width: auto!important;
    white-space: normal!important;
    overflow-wrap: anywhere!important;
}
/* Slightly tighten Comment Text and reserve enough room for Created Time + Likes. */
#f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(1),
#f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(1) { width: 15%!important; }
#f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(2),
#f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(2) { width: 8%!important; }
#f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(3),
#f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(3) { width: 10%!important; }
#f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(4),
#f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(4) { width: 14%!important; }
#f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(5),
#f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(5) { width: 27%!important; }
#f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(6),
#f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(6) { width: 19%!important; }
#f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(7),
#f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(7) { width: 7%!important; }

@media (max-width: 760px) {
    #f15-pfbca-tool .f15-pfbca-comment-tools {
        grid-template-columns: 1fr!important;
    }
    #f15-pfbca-tool .f15-pfbca-comment-count {
        grid-column: 1!important;
        justify-self: start!important;
        padding-right: 0!important;
    }
}


/* v0.1.12 — mobile-only layout pass from Andrea's Figma frames.
   Desktop/tablet styles above 760px are intentionally untouched. */
@media (max-width: 760px) {
    /* The workflow itself goes edge-to-edge on phones. Only the intro keeps page gutters. */
    #f15-pfbca-tool {
        position: relative!important;
        left: 50%!important;
        width: 100vw!important;
        max-width: none!important;
        margin: 0!important;
        padding: 36px 0 48px!important;
        transform: translateX(-50%)!important;
        overflow: visible!important;
    }

    #f15-pfbca-tool .f15-pfbca-intro {
        display: flex!important;
        flex-direction: column!important;
        width: 100%!important;
        margin: 0 0 26px!important;
        padding: 0 18px!important;
    }
    /* Figma mobile places the tool name first, then the blue workflow eyebrow. */
    #f15-pfbca-tool .f15-pfbca-intro h1 {
        order: 1!important;
        margin: 0 0 8px!important;
        font-size: 34px!important;
        line-height: 1.08!important;
        letter-spacing: -.8px!important;
        font-weight: 400!important;
    }
    #f15-pfbca-tool .f15-pfbca-eyebrow {
        order: 2!important;
        margin: 0 0 8px!important;
        font-size: 11px!important;
        line-height: 1.1!important;
    }
    #f15-pfbca-tool .f15-pfbca-intro > p {
        order: 3!important;
        margin: 0!important;
        font-size: 16px!important;
        line-height: 1.36!important;
    }

    /* Avoid flexing the strong/text into separate columns on narrow screens. */
    #f15-pfbca-tool .f15-pfbca-readonly {
        order: 4!important;
        position: relative!important;
        display: block!important;
        width: 100%!important;
        min-height: 54px!important;
        margin: 24px 0 0!important;
        padding: 10px 12px 10px 50px!important;
        border: 1px solid #BED7FF!important;
        border-left: 4px solid #0052CC!important;
        border-radius: 8px!important;
        background: #F3F7FF!important;
        color: #444!important;
        font-size: 14px!important;
        line-height: 1.28!important;
        white-space: normal!important;
    }
    #f15-pfbca-tool .f15-pfbca-readonly > span {
        position: absolute!important;
        top: 50%!important;
        left: 16px!important;
        width: 18px!important;
        margin: 0!important;
        transform: translateY(-50%)!important;
        font-size: 14px!important;
        line-height: 1!important;
        text-align: center!important;
    }
    #f15-pfbca-tool .f15-pfbca-readonly strong {
        display: inline!important;
        font-size: 14px!important;
        line-height: inherit!important;
    }

    /* Full-width tool card. The white results area overlaps the dark card with its own rounded top. */
    #f15-pfbca-tool .f15-pfbca-shell {
        position: relative!important;
        left: auto!important;
        display: block!important;
        width: 100%!important;
        max-width: none!important;
        min-height: 0!important;
        margin: 0!important;
        transform: none!important;
        overflow: hidden!important;
        border: 1px solid #D8E0E9!important;
        border-radius: 22px 22px 0 0!important;
        background: #242424!important;
        box-shadow: 0 6px 20px rgba(24, 43, 67, .08)!important;
    }
    #f15-pfbca-tool .f15-pfbca-sidebar {
        min-height: 0!important;
        padding: 26px 17px 42px!important;
        border-radius: 0!important;
    }
    #f15-pfbca-tool .f15-pfbca-sidebar-kicker {
        margin: 0 0 10px!important;
        font-size: 12px!important;
        line-height: 1.1!important;
    }
    #f15-pfbca-tool .f15-pfbca-sidebar h2 {
        max-width: none!important;
        margin: 0 0 28px!important;
        font-size: 20px!important;
        line-height: 1.08!important;
    }
    #f15-pfbca-tool .f15-pfbca-label {
        margin: 0 0 7px!important;
        font-size: 12px!important;
        line-height: 1.2!important;
    }
    #f15-pfbca-tool .f15-pfbca-token,
    #f15-pfbca-tool .f15-pfbca-account {
        height: 50px!important;
        min-height: 50px!important;
        padding: 0 16px!important;
        border-radius: 8px!important;
        font-size: 13px!important;
        line-height: 50px!important;
    }
    #f15-pfbca-tool .f15-pfbca-generate-token {
        margin: 6px 0 24px!important;
        font-size: 12px!important;
    }
    #f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-primary,
    #f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-secondary {
        height: 50px!important;
        min-height: 50px!important;
        margin-top: 26px!important;
        border-radius: 7px!important;
        font-size: 14px!important;
        font-weight: 400!important;
    }
    #f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-secondary {
        margin-top: 11px!important;
    }
    #f15-pfbca-tool .f15-pfbca-privacy {
        margin: 28px 0 0!important;
        color: rgba(255,255,255,.60)!important;
        font-size: 11px!important;
        line-height: 1.2!important;
    }
    #f15-pfbca-tool .f15-pfbca-privacy-extra {
        display: none!important;
    }

    #f15-pfbca-tool .f15-pfbca-main {
        position: relative!important;
        z-index: 2!important;
        min-height: 0!important;
        margin: -24px 0 0!important;
        padding: 28px 18px 64px!important;
        border-radius: 28px 28px 0 0!important;
        background: #FFF!important;
    }

    /* Status + exports */
    #f15-pfbca-tool .f15-pfbca-status-row {
        display: flex!important;
        flex-direction: column!important;
        align-items: stretch!important;
        gap: 14px!important;
        min-height: 0!important;
        padding: 0 0 22px!important;
    }
    #f15-pfbca-tool .f15-pfbca-status-copy {
        width: 100%!important;
    }
    #f15-pfbca-tool .f15-pfbca-status-title {
        gap: 12px!important;
        font-size: 20px!important;
        line-height: 1.15!important;
    }
    #f15-pfbca-tool .f15-pfbca-status-badge {
        min-height: 25px!important;
        padding: 3px 10px!important;
        font-size: 12px!important;
    }
    #f15-pfbca-tool .f15-pfbca-status-message {
        margin-top: 8px!important;
        font-size: 14px!important;
        line-height: 1.3!important;
    }
    #f15-pfbca-tool .f15-pfbca-export-actions {
        display: grid!important;
        grid-template-columns: repeat(2, minmax(0, 1fr))!important;
        gap: 12px!important;
        width: 100%!important;
    }
    #f15-pfbca-tool .f15-pfbca-export-actions .f15-pfbca-outline {
        width: 100%!important;
        height: 48px!important;
        min-height: 48px!important;
        padding: 0 8px!important;
        border-radius: 7px!important;
        font-size: 14px!important;
    }

    /* Keep controls that are intentionally hidden by the app hidden on mobile.
       The mobile display:grid rules above must not override the HTML hidden state. */
    #f15-pfbca-tool .f15-pfbca-export-actions[hidden],
    #f15-pfbca-tool .f15-pfbca-kpis[hidden] {
        display: none!important;
    }

    /* Initial state spacing matches the mobile frame: divider -> tabs -> compact empty card. */
    #f15-pfbca-tool .f15-pfbca-kpis[hidden] + .f15-pfbca-tabs {
        margin-top: 26px!important;
    }

    /* Five mobile KPI cards: 2 across on the first row, 3 across on the second. */
    #f15-pfbca-tool .f15-pfbca-kpis {
        display: grid!important;
        grid-template-columns: repeat(6, minmax(0, 1fr))!important;
        gap: 10px!important;
        margin: 22px 0 28px!important;
    }
    #f15-pfbca-tool .f15-pfbca-kpi {
        height: 64px!important;
        min-height: 64px!important;
        padding: 0 5px!important;
        border-radius: 8px!important;
    }
    #f15-pfbca-tool .f15-pfbca-kpi:nth-child(1),
    #f15-pfbca-tool .f15-pfbca-kpi:nth-child(2) {
        grid-column: span 3!important;
    }
    #f15-pfbca-tool .f15-pfbca-kpi:nth-child(3),
    #f15-pfbca-tool .f15-pfbca-kpi:nth-child(4),
    #f15-pfbca-tool .f15-pfbca-kpi:nth-child(6) {
        grid-column: span 2!important;
    }
    /* Andrea's mobile frame keeps Shares in the tables/Insights, but not in the KPI strip. */
    #f15-pfbca-tool .f15-pfbca-kpi:nth-child(5) {
        display: none!important;
    }
    #f15-pfbca-tool .f15-pfbca-kpi span {
        font-size: 12px!important;
    }
    #f15-pfbca-tool .f15-pfbca-kpi strong {
        font-size: 24px!important;
    }

    /* Mobile tabs are intentionally asymmetric: compact Ads/Insights, flexible Comments. */
    #f15-pfbca-tool .f15-pfbca-tabs {
        grid-template-columns: 64px minmax(0, 1fr) 92px!important;
        gap: 8px!important;
        min-height: 46px!important;
        margin: 0 0 30px!important;
        padding: 4px!important;
        border-radius: 9px!important;
    }
    #f15-pfbca-tool .f15-pfbca-tabs button {
        height: 38px!important;
        min-height: 38px!important;
        padding: 0 5px!important;
        border-radius: 7px!important;
        font-size: 13px!important;
        white-space: nowrap!important;
    }
    #f15-pfbca-tool .f15-pfbca-tab-icon,
    #f15-pfbca-tool .f15-pfbca-tab-icon svg {
        width: 14px!important;
        height: 14px!important;
        min-width: 14px!important;
        max-width: 14px!important;
        min-height: 14px!important;
        max-height: 14px!important;
        flex: 0 0 14px!important;
    }

    /* Initial empty state */
    #f15-pfbca-tool .f15-pfbca-empty {
        min-height: 214px!important;
        padding: 24px 20px!important;
        border-radius: 8px!important;
    }
    #f15-pfbca-tool .f15-pfbca-empty-icon {
        margin-bottom: 14px!important;
    }
    #f15-pfbca-tool .f15-pfbca-empty p {
        max-width: 330px!important;
        margin-bottom: 12px!important;
        font-size: 16px!important;
        line-height: 1.35!important;
    }
    #f15-pfbca-tool .f15-pfbca-inline-token-link {
        font-size: 14px!important;
    }

    /* Headings inside result tabs */
    #f15-pfbca-tool .f15-pfbca-data-view h3,
    #f15-pfbca-tool .f15-pfbca-comments-head h3,
    #f15-pfbca-tool .f15-pfbca-insights-head h3 {
        font-size: 20px!important;
        line-height: 1.2!important;
    }
    #f15-pfbca-tool .f15-pfbca-comments-head p,
    #f15-pfbca-tool .f15-pfbca-insights-head p {
        margin-top: 5px!important;
        font-size: 14px!important;
        line-height: 1.32!important;
    }

    /* Tables intentionally scroll horizontally instead of crushing columns on phones. */
    #f15-pfbca-tool .f15-pfbca-table-wrap,
    #f15-pfbca-tool .f15-pfbca-comments-wrap {
        width: 100%!important;
        max-height: none!important;
        overflow-x: auto!important;
        overflow-y: visible!important;
        border-radius: 7px!important;
        -webkit-overflow-scrolling: touch!important;
        scrollbar-width: auto!important;
        scrollbar-color: #666 #D9D9D9!important;
    }
    #f15-pfbca-tool .f15-pfbca-ads-table {
        width: 780px!important;
        min-width: 780px!important;
        table-layout: fixed!important;
    }
    #f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(1),
    #f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(1) { width: 235px!important; }
    #f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(2),
    #f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(2) { width: 110px!important; }
    #f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(3),
    #f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(3) { width: 88px!important; }
    #f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(4),
    #f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(4) { width: 92px!important; }
    #f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(5),
    #f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(5) { width: 70px!important; }
    #f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(6),
    #f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(6) { width: 90px!important; }
    #f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(7),
    #f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(7) { width: 95px!important; }

    #f15-pfbca-tool .f15-pfbca-comments-table {
        width: 930px!important;
        min-width: 930px!important;
        table-layout: fixed!important;
    }
    #f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(1),
    #f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(1) { width: 145px!important; }
    #f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(2),
    #f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(2) { width: 145px!important; }
    #f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(3),
    #f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(3) { width: 175px!important; }
    #f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(4),
    #f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(4) { width: 130px!important; }
    #f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(5),
    #f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(5) { width: 180px!important; }
    #f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(6),
    #f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(6) { width: 110px!important; }
    #f15-pfbca-tool .f15-pfbca-comments-table th:nth-child(7),
    #f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(7) { width: 45px!important; }

    /* Comments filters: search across the first row, Ad + Sort side-by-side below it. */
    #f15-pfbca-tool .f15-pfbca-comment-tools {
        grid-template-columns: repeat(2, minmax(0, 1fr))!important;
        column-gap: 12px!important;
        row-gap: 12px!important;
        margin-top: 18px!important;
        padding: 10px!important;
        border-radius: 12px!important;
    }
    #f15-pfbca-tool .f15-pfbca-comment-tools .f15-pfbca-field:first-child {
        grid-column: 1 / -1!important;
    }
    #f15-pfbca-tool .f15-pfbca-comment-tools .f15-pfbca-field label {
        margin-bottom: 7px!important;
        font-size: 12px!important;
    }
    #f15-pfbca-tool .f15-pfbca-comment-tools .f15-pfbca-field input,
    #f15-pfbca-tool .f15-pfbca-comment-tools .f15-pfbca-field select {
        height: 48px!important;
        min-height: 48px!important;
        border-radius: 8px!important;
        font-size: 13px!important;
    }
    #f15-pfbca-tool .f15-pfbca-comment-count {
        grid-column: 1 / -1!important;
        justify-self: end!important;
        padding-right: 2px!important;
        font-size: 12px!important;
    }

    /* Insights cards stack like the mobile Figma. */
    #f15-pfbca-tool .f15-pfbca-insights-head {
        flex-direction: column!important;
        gap: 14px!important;
    }
    #f15-pfbca-tool .f15-pfbca-insight-button {
        width: 100%!important;
        min-height: 46px!important;
    }
    #f15-pfbca-tool .f15-pfbca-leaders {
        grid-template-columns: 1fr!important;
        gap: 14px!important;
        margin: 18px 0 16px!important;
    }
    #f15-pfbca-tool .f15-pfbca-leader {
        min-height: 140px!important;
        padding: 20px!important;
        border: 0!important;
        border-radius: 8px!important;
        background: #F1F6FF!important;
        justify-content: flex-start!important;
    }
    #f15-pfbca-tool .f15-pfbca-leader-icon {
        margin-bottom: 12px!important;
    }
    #f15-pfbca-tool .f15-pfbca-sentiments,
    #f15-pfbca-tool .f15-pfbca-modal-sentiments {
        grid-template-columns: repeat(2, minmax(0, 1fr))!important;
        gap: 10px!important;
    }
    #f15-pfbca-tool .f15-pfbca-insight-row {
        grid-template-columns: 48px minmax(0, 1fr)!important;
        gap: 12px!important;
    }

    /* Keep modals usable without affecting desktop. */
    #f15-pfbca-tool .f15-pfbca-modal {
        padding: 12px!important;
    }
    #f15-pfbca-tool .f15-pfbca-modal-card {
        padding: 22px 16px!important;
        border-radius: 12px!important;
    }
}

/* v0.1.13 — final Figma refinements */
#f15-pfbca-tool a.f15-pfbca-open-post {
    color: #0052CC!important;
    text-decoration-line: underline!important;
    text-decoration-color: #0052CC!important;
    text-decoration-thickness: 1px!important;
    text-underline-offset: 2px!important;
}
#f15-pfbca-tool a.f15-pfbca-open-post:hover,
#f15-pfbca-tool a.f15-pfbca-open-post:focus-visible {
    color: #0052CC!important;
    text-decoration-color: #0052CC!important;
}

@media (max-width: 760px) {
    #f15-pfbca-tool .f15-pfbca-ads-table {
        width: 805px!important;
        min-width: 805px!important;
    }

    #f15-pfbca-tool .f15-pfbca-ads-table th:nth-child(7),
    #f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(7) {
        width: 120px!important;
        padding-left: 6px!important;
        padding-right: 6px!important;
    }

    #f15-pfbca-tool .f15-pfbca-ads-table .f15-pfbca-action-row {
        width: 100%!important;
        align-items: flex-start!important;
    }

    #f15-pfbca-tool .f15-pfbca-ads-table .f15-pfbca-mini-btn {
        width: auto!important;
        max-width: 100%!important;
        box-sizing: border-box!important;
        padding-left: 6px!important;
        padding-right: 6px!important;
        font-size: 10px!important;
    }
}

/* v0.1.15 — Andrea final QA feedback */

/* Meta account select: custom chevron gives the arrow the same visual gutter
   on the right that the field text has on the left. */
#f15-pfbca-tool .f15-pfbca-account {
    -webkit-appearance: none!important;
    appearance: none!important;
    background-color: #3A3A3A!important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23FFFFFF' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
    background-repeat: no-repeat!important;
    background-position: right 13px center!important;
    background-size: 12px 8px!important;
    padding-right: 38px!important;
}

/* Keep every Insights asset contained and centered. This prevents theme/global
   image rules from clipping individual SVGs such as Objections. */
#f15-pfbca-tool .f15-pfbca-insight-icon,
#f15-pfbca-tool .f15-pfbca-leader-icon {
    overflow: visible!important;
}
#f15-pfbca-tool .f15-pfbca-insight-icon img {
    display: block!important;
    width: 30px!important;
    height: 30px!important;
    max-width: none!important;
    max-height: none!important;
    margin: 0!important;
    padding: 0!important;
    border: 0!important;
    border-radius: 0!important;
    object-fit: contain!important;
    object-position: center!important;
    overflow: visible!important;
    clip-path: none!important;
    transform: none!important;
}
#f15-pfbca-tool .f15-pfbca-leader-icon img {
    display: block!important;
    width: 22px!important;
    height: 22px!important;
    max-width: none!important;
    max-height: none!important;
    margin: 0!important;
    padding: 0!important;
    border: 0!important;
    border-radius: 0!important;
    object-fit: contain!important;
    object-position: center!important;
    overflow: visible!important;
    clip-path: none!important;
    transform: none!important;
}

@media (max-width: 760px) {
    /* Mobile Figma: white arrow with a 16px right gutter, matching the
       16px left padding used by the field text. */
    #f15-pfbca-tool .f15-pfbca-account {
        background-position: right 16px center!important;
        padding-right: 44px!important;
    }
}

/* v0.1.17 — link/button color correction
   Structural accents remain #0052CC; interactive links/buttons use #0066FF. */

/* Links */
#f15-pfbca-tool a,
#f15-pfbca-tool .f15-pfbca-generate-token,
#f15-pfbca-tool .f15-pfbca-inline-token-link,
#f15-pfbca-tool a.f15-pfbca-open-post {
    color: #0066FF!important;
}
#f15-pfbca-tool .f15-pfbca-generate-token,
#f15-pfbca-tool .f15-pfbca-inline-token-link,
#f15-pfbca-tool a.f15-pfbca-open-post {
    text-decoration-color: #0066FF!important;
}
#f15-pfbca-tool a:hover,
#f15-pfbca-tool a:focus-visible {
    color: #0066FF!important;
}

/* Filled blue buttons */
#f15-pfbca-tool .f15-pfbca-primary,
#f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-primary {
    border-color: #0066FF!important;
    background: #0066FF!important;
    color: #FFFFFF!important;
}
#f15-pfbca-tool .f15-pfbca-primary:disabled,
#f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-primary:disabled {
    border-color: #0066FF!important;
    background: #0066FF!important;
    color: #FFFFFF!important;
}

/* Only solid-blue buttons darken on hover. */
#f15-pfbca-tool .f15-pfbca-primary:not(:disabled):hover,
#f15-pfbca-tool .f15-pfbca-primary:not(:disabled):focus-visible,
#f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-primary:not(:disabled):hover,
#f15-pfbca-tool .f15-pfbca-sidebar .f15-pfbca-primary:not(:disabled):focus-visible {
    border-color: #0052CC!important;
    background: #0052CC!important;
    color: #FFFFFF!important;
}

/* Outline buttons use the brighter blue, but do not invert/darken on hover. */
#f15-pfbca-tool .f15-pfbca-outline,
#f15-pfbca-tool .f15-pfbca-export-actions .f15-pfbca-outline,
#f15-pfbca-tool .f15-pfbca-mini-btn {
    border-color: #0066FF!important;
    background: #FFFFFF!important;
    color: #0066FF!important;
}
#f15-pfbca-tool .f15-pfbca-outline:not(:disabled):hover,
#f15-pfbca-tool .f15-pfbca-outline:not(:disabled):focus-visible,
#f15-pfbca-tool .f15-pfbca-export-actions .f15-pfbca-outline:not(:disabled):hover,
#f15-pfbca-tool .f15-pfbca-export-actions .f15-pfbca-outline:not(:disabled):focus-visible,
#f15-pfbca-tool .f15-pfbca-mini-btn:hover,
#f15-pfbca-tool .f15-pfbca-mini-btn:focus-visible {
    border-color: #0066FF!important;
    background: #F5F9FF!important;
    color: #0066FF!important;
}
#f15-pfbca-tool .f15-pfbca-export-actions .f15-pfbca-outline:disabled {
    background: #FFFFFF!important;
    color: #0066FF!important;
}

/* v0.1.18 — prevent theme/Elementor zebra-striping from darkening table rows */
#f15-pfbca-tool .f15-pfbca-table tbody tr:nth-child(odd) > td,
#f15-pfbca-tool .f15-pfbca-table tbody tr:nth-child(odd) > th {
    background-color: transparent!important;
}

#f15-pfbca-tool .f15-pfbca-table tbody tr:nth-child(even) > td,
#f15-pfbca-tool .f15-pfbca-table tbody tr:nth-child(even) > th {
    background-color: transparent!important;
}

#f15-pfbca-tool .f15-pfbca-table tbody tr:nth-child(odd) {
    background: #F3F4F8!important;
}

#f15-pfbca-tool .f15-pfbca-table tbody tr:nth-child(even) {
    background: #FFFFFF!important;
}

/* v0.1.19 — final QA: long ad names + static disabled account chevron */

/* Long Meta ad names often use underscores instead of spaces.
   Allow them to wrap inside their own column/card instead of spilling over
   adjacent content. */
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(1),
#f15-pfbca-tool .f15-pfbca-ads-table td:nth-child(1) strong,
#f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(1),
#f15-pfbca-tool .f15-pfbca-comments-table td:nth-child(1) strong,
#f15-pfbca-tool .f15-pfbca-comments-table code,
#f15-pfbca-tool .f15-pfbca-leader strong,
#f15-pfbca-tool .f15-pfbca-insight-row strong,
#f15-pfbca-tool .f15-pfbca-modal h2 {
    min-width: 0!important;
    max-width: 100%!important;
    white-space: normal!important;
    overflow-wrap: anywhere!important;
    word-break: break-word!important;
}

/* The account chevron should always be present.
   Disabled: muted/low-opacity appearance.
   Enabled: full white.
   No transition/animation between states. */
#f15-pfbca-tool .f15-pfbca-account {
    transition: none!important;
    animation: none!important;
}

#f15-pfbca-tool .f15-pfbca-account:disabled {
    background-color: #393939!important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23FFFFFF' stroke-opacity='.28' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
    background-repeat: no-repeat!important;
    background-position: right 13px center!important;
    background-size: 12px 8px!important;
    padding-right: 38px!important;
}

#f15-pfbca-tool .f15-pfbca-account:not(:disabled) {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23FFFFFF' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
}

@media (max-width: 760px) {
    #f15-pfbca-tool .f15-pfbca-account:disabled,
    #f15-pfbca-tool .f15-pfbca-account:not(:disabled) {
        background-position: right 16px center!important;
        padding-right: 44px!important;
    }
}

/* v0.1.20 — vertically center status labels inside their pills */

/* Main Status badge (Not Started / Loading / Done / Failed).
   The slightly asymmetric vertical padding compensates for Inter's visual
   baseline so the label appears optically centered, not a pixel high. */
#f15-pfbca-tool .f15-pfbca-status-badge {
    align-items: center!important;
    justify-content: center!important;
    padding: 4px 10px 2px!important;
}

#f15-pfbca-tool .f15-pfbca-status-badge.is-loading {
    padding: 4px 7px 2px 10px!important;
}

/* Row-level status pills (Loaded / warnings / errors). */
#f15-pfbca-tool .f15-pfbca-pill {
    align-items: center!important;
    justify-content: center!important;
    padding: 5px 9px 3px!important;
}

/* v0.1.21 — table pill optical centering only
   Keep the main Status badge alignment from v0.1.20 unchanged. */
#f15-pfbca-tool .f15-pfbca-table .f15-pfbca-pill {
    display: inline-flex!important;
    align-items: center!important;
    justify-content: center!important;
    min-height: 24px!important;
    padding: 4px 9px!important;
    line-height: 1!important;
}

/* v0.1.22 — clearer scan progress + explicit Insights next step */

/* Override the older Figma-era rule that hid the progress element. */
#f15-pfbca-tool .f15-pfbca-progress:not([hidden]) {
    display: block!important;
    margin: 14px 0 0!important;
    padding: 12px 14px!important;
    border: 1px solid #B8D5FF!important;
    border-radius: 8px!important;
    background: #F2F7FF!important;
}

#f15-pfbca-tool .f15-pfbca-progress-meta {
    display: flex!important;
    align-items: center!important;
    justify-content: space-between!important;
    gap: 16px!important;
    margin: 0 0 9px!important;
    color: #1F1F1F!important;
    font-size: 12px!important;
    line-height: 1.25!important;
}

#f15-pfbca-tool .f15-pfbca-progress-meta strong {
    position: relative!important;
    display: inline-flex!important;
    align-items: center!important;
    gap: 8px!important;
    color: #1F1F1F!important;
    font-size: 12px!important;
    font-weight: 600!important;
}

#f15-pfbca-tool .f15-pfbca-progress-meta strong::before {
    content: ''!important;
    width: 14px!important;
    height: 14px!important;
    flex: 0 0 14px!important;
    border: 2px solid rgba(0,102,255,.20)!important;
    border-top-color: #0066FF!important;
    border-right-color: #0066FF!important;
    border-radius: 50%!important;
    animation: f15-pfbca-status-spin .7s linear infinite!important;
}

#f15-pfbca-tool .f15-pfbca-progress-meta span {
    color: #5E6670!important;
    font-size: 11px!important;
    font-weight: 500!important;
    white-space: nowrap!important;
}

#f15-pfbca-tool .f15-pfbca-progress-track {
    position: relative!important;
    display: block!important;
    width: 100%!important;
    height: 7px!important;
    overflow: hidden!important;
    border-radius: 999px!important;
    background: #DDE8F7!important;
}

#f15-pfbca-tool .f15-pfbca-progress-track > span {
    display: block!important;
    height: 100%!important;
    border-radius: inherit!important;
    background: #0066FF!important;
    transition: width .25s ease!important;
}

#f15-pfbca-tool .f15-pfbca-progress.is-indeterminate .f15-pfbca-progress-track > span {
    width: 34%!important;
    animation: f15-pfbca-progress-indeterminate 1.15s ease-in-out infinite!important;
}

@keyframes f15-pfbca-progress-indeterminate {
    0% { transform: translateX(-120%); }
    100% { transform: translateX(310%); }
}

#f15-pfbca-tool .f15-pfbca-status-badge.is-loading {
    min-height: 26px!important;
    padding-left: 10px!important;
    padding-right: 8px!important;
    border: 1px solid #AFCFFF!important;
    background: #EAF3FF!important;
    color: #0052CC!important;
    font-size: 12px!important;
    font-weight: 600!important;
}

/* Clear post-scan action so users know Insights is a separate step. */
#f15-pfbca-tool .f15-pfbca-next-step:not([hidden]) {
    display: flex!important;
    align-items: center!important;
    justify-content: space-between!important;
    gap: 18px!important;
    margin: 14px 0 0!important;
    padding: 12px 14px!important;
    border: 1px solid #C9DDFC!important;
    border-radius: 8px!important;
    background: #F5F9FF!important;
}

#f15-pfbca-tool .f15-pfbca-next-step > div {
    display: flex!important;
    align-items: baseline!important;
    flex-wrap: wrap!important;
    gap: 5px!important;
    min-width: 0!important;
}

#f15-pfbca-tool .f15-pfbca-next-step strong {
    color: #262626!important;
    font-size: 12px!important;
    font-weight: 600!important;
}

#f15-pfbca-tool .f15-pfbca-next-step span {
    color: #5E6670!important;
    font-size: 12px!important;
    font-weight: 400!important;
}

#f15-pfbca-tool .f15-pfbca-next-step .f15-pfbca-primary {
    flex: 0 0 auto!important;
    min-height: 36px!important;
    padding: 0 14px!important;
    font-size: 12px!important;
}

@media (max-width: 760px) {
    #f15-pfbca-tool .f15-pfbca-progress-meta,
    #f15-pfbca-tool .f15-pfbca-next-step:not([hidden]) {
        align-items: flex-start!important;
    }

    #f15-pfbca-tool .f15-pfbca-next-step:not([hidden]) {
        flex-direction: column!important;
    }

    #f15-pfbca-tool .f15-pfbca-next-step .f15-pfbca-primary {
        width: 100%!important;
    }
}

/* v0.1.23 — accurate ready count + visible explanation for comment access issues */

#f15-pfbca-tool .f15-pfbca-status-badge.is-warning {
    border-color: #E2B93B66!important;
    background: #FFF7D6!important;
    color: #7A5A00!important;
}

#f15-pfbca-tool .f15-pfbca-status-message.is-warning {
    color: #7A5A00!important;
}

#f15-pfbca-tool .f15-pfbca-issue-summary:not([hidden]) {
    display: flex!important;
    flex-direction: column!important;
    gap: 4px!important;
    margin: 14px 0 0!important;
    padding: 12px 14px!important;
    border: 1px solid #E7C85A!important;
    border-radius: 8px!important;
    background: #FFF9E5!important;
}

#f15-pfbca-tool .f15-pfbca-issue-summary strong {
    color: #5F4700!important;
    font-size: 12px!important;
    font-weight: 600!important;
    line-height: 1.35!important;
}

#f15-pfbca-tool .f15-pfbca-issue-summary span {
    color: #665C3B!important;
    font-size: 12px!important;
    font-weight: 400!important;
    line-height: 1.45!important;
}

@media (max-width: 760px) {
    #f15-pfbca-tool .f15-pfbca-issue-summary:not([hidden]) {
        margin-left: 0!important;
        margin-right: 0!important;
    }
}

