.tab .sheetSyncButton {
    --sync-info: #3b82f6;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    padding: 0;
    margin: -4px 2px -4px -6px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--muted);
    font: inherit;
    cursor: pointer;
    touch-action: manipulation;
}
.tab .sheetSyncButton:hover { background: var(--btn-hover); }
.sheetSyncButton:focus-visible { outline: 2px solid var(--accent); outline-offset: 1px; }
.sheetSyncButton[data-tone="pending"] { color: var(--warning); }
.sheetSyncButton[data-tone="error"] { color: var(--danger); }
.sheetSyncButton[data-tone="busy"] { color: var(--sync-info); }
.modalCard.sheetSyncCard {
    width: 720px;
    max-width: calc(100vw - 32px);
    height: auto;
    max-height: min(740px, calc(100dvh - 32px));
    overflow-y: hidden;
    gap: 10px;
    padding: 20px;
}
.sheetSyncCard .sheetSyncBody {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    scrollbar-gutter: stable;
    gap: 10px;
}
.sheetSyncCard > *, .sheetSyncBody > * { flex-shrink: 0; }
.sheetSyncCard h3 { overflow-wrap: anywhere; }
.sheetSyncCard h3:focus { outline: none; }
.sheetSyncSection { padding-bottom: 8px; border-bottom: 1px solid var(--line); }
.sheetSyncSection[hidden] { display: none; }
.sheetSyncSection h4 { margin: 0 0 4px; }
.sheetSyncSection h4 i { width: 20px; color: var(--muted); }
.sheetSyncSection p { margin: 4px 0; }
.sheetSyncDetails { color: var(--muted); font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; margin: 6px 0; }
#sheetSyncDeviceDetails { min-height: 1.5em; }
#sheetSyncCloudDetails { min-height: 3em; }
@media (max-width: 480px) {
    .modalCard.sheetSyncCard { padding: 16px; }
    #sheetSyncDeviceDetails { min-height: 3em; }
    #sheetSyncCloudDetails { min-height: 4.5em; }
}
.sheetSyncCard > .modalActions { margin-top: 0; }
#sheetSyncGitDetails { white-space: pre-line; }
.sheetSyncCloudIssue { margin-top: 8px; font-size: 13px; color: var(--muted); }
.sheetSyncCloudIssue summary { cursor: pointer; }
#sheetSyncCloudIssueDetails { white-space: pre-line; }
.sheetSyncSection [data-tone="pending"] { color: var(--warning); }
.sheetSyncSection [data-tone="error"] { color: var(--danger); }
.sheetSyncSection [data-tone="busy"] { color: #3b82f6; }
.sheetSyncActions { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px; margin-top: 8px; }
.actionHelp { display: block; font-size: 12px; line-height: 1.4; color: var(--muted); font-weight: 400; margin-top: 4px; }
.actionBtn.describedAction { height: auto; min-height: 44px; align-items: flex-start; }
.describedAction > i { flex-shrink: 0; margin-top: 2px; }
.describedAction > span { min-width: 0; }
.actionLabel { display: block; }
.sheetSyncAuto { display: flex; align-items: center; gap: 8px; font-size: 13px; margin-top: 8px; }
.sheetSyncRecovery { display: flex; flex-direction: column; gap: 6px; }
.sheetSyncRecovery .actionBtn { text-align: left; }
.sheetSyncRecovery .actionBtn:disabled { opacity: .55; cursor: default; }
#sheetSyncRecoveryDetails:empty { display: none; }
