[data-feedback-root] { font: 14px/1.5 Arial, sans-serif; color: #1d252d; }
[data-feedback-root] *, [data-feedback-root] *::before { box-sizing: border-box; }
[data-feedback-root] [hidden] { display: none !important; }
[data-feedback-root] button, [data-feedback-root] input, [data-feedback-root] textarea, [data-feedback-root] select { font: inherit; }
[data-feedback-root] button { cursor: pointer; border: 1px solid #cbd6dc; border-radius: 8px; background: #fff; color: #1d252d; padding: 10px 14px; font-weight: 700; }
[data-feedback-root] button:hover { background: #f1f5f6; }
[data-feedback-root] :focus-visible { outline: 3px solid #087595; outline-offset: 3px; }
[data-feedback-root] .fb-launch { position: fixed; right: 20px; bottom: 20px; z-index: 90; background: #1d252d; color: #fff; border-color: #1d252d; box-shadow: 0 4px 18px #1d252d25; display: flex; align-items: center; gap: 8px; }
[data-feedback-root] .fb-launch:hover { background: #303e48; border-color: #303e48; color: #fff; }
[data-feedback-root] .fb-panel { position: fixed; inset: 0 0 0 auto; margin: 0; width: min(480px, 100%); height: 100dvh; max-width: 100%; max-height: 100dvh; border: 0; border-radius: 16px 0 0 16px; padding: 24px; background: #fff; color: #1d252d; box-shadow: -10px 0 60px #152b3320; overflow-y: auto; }
[data-feedback-root] .fb-panel::backdrop { background: #1d252d55; backdrop-filter: none; }
[data-feedback-root] h2 { margin: 4px 0 0; font-size: 24px; line-height: 1.25; letter-spacing: -.4px; }
[data-feedback-root] h3 { margin: 0; font-size: 16px; line-height: 1.4; }
[data-feedback-root] p { margin: 0; }
.fb-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.fb-eyebrow { display: block; color: #63717b; font-size: 11px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
[data-feedback-root] .fb-close { font-size: 24px; line-height: 1; padding: 6px 10px; }
.fb-tabs { display: flex; border-bottom: 1px solid #dce3e6; margin-bottom: 24px; gap: 16px; }
[data-feedback-root] .fb-tabs button { border: 0; border-bottom: 3px solid transparent; border-radius: 0; padding: 12px 0; background: none; color: #63717b; }
[data-feedback-root] .fb-tabs [aria-selected=true] { border-color: #ffe500; color: #1d252d; }
.fb-context { padding: 16px; background: #f2f6f7; border-radius: 10px; margin-bottom: 24px; display: grid; gap: 4px; overflow-wrap: anywhere; }
.fb-context strong { font-size: 18px; }
.fb-context small { color: #63717b; font-size: 12px; }
.fb-form { display: grid; gap: 16px; }
.fb-form label { display: block; font-weight: 700; }
.fb-form input, .fb-form textarea { display: block; width: 100%; margin-top: 8px; padding: 12px; border: 1px solid #bfcbd2; border-radius: 8px; background: #fff; color: #1d252d; }
.fb-form textarea { resize: vertical; min-height: 140px; }
[data-feedback-root] .fb-primary { background: #ffe500; border-color: #ffe500; padding: 14px; }
[data-feedback-root] .fb-primary:hover { background: #f4db00; }
.fb-muted, .fb-hint, .fb-note-meta { color: #63717b; font-weight: 400; }
[data-feedback-root] .fb-hint { font-size: 12px; margin-top: -8px; }
.fb-target:empty { display: none; }
.fb-selected { display: flex; align-items: center; gap: 12px; padding: 12px; border: 1px solid #cbd6dc; border-radius: 8px; overflow-wrap: anywhere; }
.fb-selected span { flex: 1; min-width: 0; }
.fb-exports { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.fb-exports button { font-size: 12px; }
[data-feedback-root] .fb-note-text { white-space: pre-wrap; overflow-wrap: anywhere; margin: 8px 0; }
.fb-note-meta { font-size: 12px; overflow-wrap: anywhere; }
.fb-note-actions { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-top: 12px; flex-wrap: wrap; }
.fb-note-actions a { color: #00658a; }
[data-feedback-root] .fb-note-actions button { font-size: 12px; padding: 8px 10px; }
.fb-empty { padding: 32px 0; text-align: center; }
[data-feedback-root] .fb-empty p { margin-top: 8px; color: #63717b; }
[data-feedback-root] .fb-message:not(:empty) { margin-top: 20px; padding: 12px; border-left: 3px solid #087595; background: #eef6f8; }
[data-feedback-root] .fb-footer { margin-top: 24px; padding: 16px 0 0; border-top: 1px solid #dce3e6; background: none; color: #63717b; font-size: 12px; }
.fb-highlight { outline: 3px solid #007fa3 !important; outline-offset: 3px !important; cursor: crosshair !important; }
[data-feedback-root] .fb-picker-hint { position: fixed; inset: auto 16px 16px; margin: 0 auto; width: fit-content; max-width: calc(100% - 32px); border: 0; border-radius: 10px; padding: 12px 16px; background: #1d252d; color: #fff; box-shadow: 0 4px 24px #0003; }
.fb-picker-hint button { margin-left: 12px; }
@media(max-width: 540px) { [data-feedback-root] .fb-panel { padding: 20px; border-radius: 0; } [data-feedback-root] .fb-launch { right: 12px; bottom: 12px; font-size: 12px; } }
.fb-revealed { outline: 3px solid #007fa3 !important; outline-offset: 5px !important; box-shadow: 0 0 0 8px #007fa31a !important; scroll-margin: 100px; }
[data-feedback-root] .fb-note-actions .fb-show-target { color: #075b80; border-color: #b9cfd7; padding: 8px 12px; font-size: 13px; }
[data-feedback-root] .fb-reveal-hint { position: fixed; inset: auto 16px 16px; margin: 0 auto; width: fit-content; max-width: min(760px, calc(100% - 32px)); border: 1px solid #cbd6dc; border-left: 4px solid #007fa3; border-radius: 10px; padding: 12px 16px; background: #fff; color: #1d252d; box-shadow: 0 4px 24px #0002; }
.fb-reveal-hint:popover-open { display: flex; gap: 12px; align-items: center; }
.fb-reveal-hint span { overflow-wrap: anywhere; max-height: 80px; overflow-y: auto; flex: 1; }
.fb-reveal-hint button { flex-shrink: 0; }
@media(max-width: 540px) { .fb-reveal-hint:popover-open { flex-wrap: wrap; } .fb-reveal-hint span { flex-basis: 100%; } }

[data-feedback-root] button:disabled { opacity: .55; cursor: wait; }
.fb-identity { display: block; font-weight: 700; margin-bottom: 16px; }
.fb-identity input, .fb-filters select, .fb-form select { display: block; width: 100%; padding: 10px 12px; margin-top: 6px; border: 1px solid #bfcbd2; border-radius: 8px; background: #fff; color: #1d252d; min-width: 0; }
.fb-identity input { font-weight: 400; }
.fb-edit-info { background: #fff8d5; padding: 12px; border-radius: 8px; font-size: 12px; }
[data-feedback-root] .fb-check { display: flex; align-items: flex-start; gap: 10px; padding: 12px; background: #f2f6f7; border-radius: 8px; font-weight: 400; }
.fb-check input { flex: 0 0 18px; width: 18px; height: 18px; margin: 2px 0 0; accent-color: #00658a; }
.fb-attachment { border-top: 1px solid #dce3e6; padding-top: 16px; }
.fb-field-title { font-weight: 700; }
.fb-attachment-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 16px; }
.fb-image-preview { display: grid; gap: 8px; margin-top: 12px; }
.fb-image-preview:empty { display: none; }
.fb-snapshot { display: block; max-width: 100%; height: auto; border: 1px solid #dce3e6; border-radius: 6px; margin: 8px 0; }
.fb-list-tools { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 12px 0; }
.fb-filters { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 20px; }
.fb-filters label { min-width: 0; font-size: 12px; font-weight: 700; }
.fb-results { margin-top: 8px !important; color: #63717b; font-size: 12px; }
.fb-note-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; }
.fb-status { display: inline-block; padding: 3px 8px; border-radius: 5px; font-size: 12px; font-weight: 700; background: #eef2f4; color: #52646f; }
.fb-status-working { background: #fff3d1; color: #795510; }
.fb-status-fixed { background: #e5f2f7; color: #15617e; }
.fb-status-verified { background: #e6f3ec; color: #226c4b; }
[data-feedback-root] [data-fb-delete] { color: #a03b35; margin-left: auto; }
[data-feedback-root] summary { cursor: pointer; color: #075b80; font-size: 13px; padding: 8px 0; }
.fb-history { margin-top: 10px; }
.fb-revision { padding: 12px 0; border-top: 1px solid #dce3e6; }
.fb-conflict { background: #fff7df; border-left: 3px solid #c07400; border-radius: 4px; padding: 12px; margin-top: 12px; font-size: 13px; }
.fb-count:not(:empty) { border-radius: 12px; background: #ffe500; color: #1d252d; padding: 0 6px; font-size: 12px; }
[data-feedback-root] .fb-markers { position: fixed; inset: 0; width: 100%; height: 100%; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background: transparent; overflow: visible; pointer-events: none; }
[data-feedback-root] .fb-pin { position: absolute; pointer-events: auto; width: 30px; height: 30px; padding: 0; border: 2px solid #fff; border-radius: 50%; background: #00658a; color: #fff; box-shadow: 0 2px 8px #152b3340; font-size: 13px; }
[data-feedback-root] .fb-pin:hover { background: #00465f; transform: scale(1.1); }
.fb-marker-tools { position: absolute; bottom: 16px; left: 16px; right: 16px; margin: auto; width: fit-content; max-width: calc(100% - 32px); pointer-events: auto; display: flex; align-items: center; gap: 12px; padding: 12px 16px; border: 1px solid #cbd6dc; border-radius: 10px; background: #fff; box-shadow: 0 4px 24px #0002; }
.fb-marker-tools span { max-width: 420px; font-size: 12px; color: #63717b; }
.fb-marker-tools button { flex-shrink: 0; }
@media(max-width: 540px) { .fb-marker-tools { flex-wrap: wrap; gap: 8px; } .fb-marker-tools span { flex-basis: 100%; } }

.fb-scopes { display: flex; gap: 6px; padding: 4px; background: #f0f4f5; border-radius: 10px; margin-bottom: 14px; }
[data-feedback-root] .fb-scopes button { flex: 1; border-color: transparent; background: transparent; padding: 8px; }
[data-feedback-root] .fb-scopes [aria-pressed=true] { background: #fff; border-color: #dce3e6; box-shadow: 0 1px 3px #152b3310; }
.fb-search { width: 100%; padding: 11px 12px; border: 1px solid #bfcbd2; border-radius: 8px; background: #fff; color: #1d252d; }
.fb-list-controls { display: flex; flex-wrap: wrap; gap: 0 20px; margin: 6px 0; }
.fb-list-controls > details[open] { flex-basis: 100%; }
.fb-list-controls > details > summary { font-weight: 600; }
.fb-filters { background: #f3f6f7; padding: 12px; border-radius: 8px; margin: 4px 0 8px; }
.fb-filters label:last-child { grid-column: 1 / -1; }
.fb-exchange .fb-exports { margin: 8px 0 16px; }
.fb-exchange .fb-hint { margin-bottom: 12px; }
.fb-filter-chips { display: flex; flex-wrap: wrap; gap: 6px; }
[data-feedback-root] .fb-filter-chips button { font-size: 12px; font-weight: 400; padding: 4px 8px; background: #edf5f7; color: #075b80; border-color: #d2e4eb; text-align: left; overflow-wrap: anywhere; }
.fb-filter-chips button span { margin-left: 6px; }
[data-feedback-root] .fb-list-tools button { font-size: 12px; padding: 7px 10px; }
.fb-list-tools select { min-width: 0; max-width: 55%; border: 0; background: transparent; color: #63717b; padding: 8px 0; font-size: 12px; }
.fb-note { padding: 16px; margin-top: 12px; border: 1px solid #dce3e6; border-radius: 12px; background: #fff; }
[data-feedback-root] .fb-note-detail > summary { display: block; list-style: none; padding: 0; color: #1d252d; font-size: 14px; }
.fb-note-detail > summary::-webkit-details-marker { display: none; }
.fb-note-detail .fb-note-heading { flex-wrap: nowrap; margin-bottom: 8px; }
.fb-note-heading .fb-status { flex-shrink: 0; }
.fb-note-screen { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; color: #63717b; }
.fb-note-preview { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; line-height: 1.5; margin: 4px 0 8px; }
.fb-note-detail[open] .fb-note-preview { display: block; white-space: pre-wrap; }
.fb-note-detail > summary > .fb-note-meta { display: block; }
.fb-expand-label { display: block; font-size: 12px; color: #075b80; margin-top: 6px; }
.fb-expand-label span:last-child, .fb-note-detail[open] .fb-expand-label span:first-child { display: none; }
.fb-note-detail[open] .fb-expand-label span:last-child { display: inline; }
.fb-note-body { padding-top: 14px; }
.fb-note-label { display: block; margin-top: 12px; color: #63717b; font-size: 11px; font-weight: 700; }
.fb-note-context { padding: 14px; background: #f3f6f7; border-radius: 8px; margin-bottom: 12px; }
[data-feedback-root] .fb-note-context h3 { font-size: 13px; margin-bottom: 10px; }
.fb-note-fields { display: grid; grid-template-columns: 72px minmax(0,1fr); gap: 8px 12px; margin: 0; font-size: 12px; line-height: 1.5; }
.fb-note-fields dt { color: #63717b; font-weight: 400; }
.fb-note-fields dd { margin: 0; overflow-wrap: anywhere; color: #1d252d; }
.fb-record { border-top: 1px solid #e5eaed; margin-top: 8px; padding-top: 4px; }
.fb-record > .fb-note-fields { padding: 6px 0; }
[data-feedback-root] .fb-edit-note { font-size: 12px; padding: 8px 10px; margin-top: 12px; }
.fb-note > .fb-note-actions { border-top: 1px solid #e5eaed; padding-top: 10px; margin-top: 14px; }
[data-feedback-root] .fb-note-actions .fb-show-target { padding: 6px 0; border: 0; background: none; font-size: 12px; }
.fb-note-actions a { font-size: 12px; }
.fb-more { position: relative; margin-left: auto; }
[data-feedback-root] .fb-more > summary { list-style: none; font-size: 22px; line-height: 1; padding: 4px 10px; border-radius: 6px; color: #63717b; }
.fb-more > summary::-webkit-details-marker { display: none; }
.fb-more > summary:hover { background: #f0f4f5; }
.fb-more[open] > button { position: absolute; bottom: 100%; right: 0; z-index: 1; box-shadow: 0 3px 16px #152b3320; }
