/* ポップアップ関連 */
#popup {
    display: none;
}

#popup-message {
    margin: 0;
    white-space: pre-line;
}

.popup-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}

.popup-table th {
    padding: 8px;
    text-align: left;
    background-color: #F3F3F5;
}

.popup-table td {
    padding: 8px;
    text-align: left;
}

.negative-amount {
    color: red;
}

.custom-popup.ui-dialog {
    border-radius: 10px;
    overflow: hidden;
    min-width: 600px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
    z-index: 1002;
}

.custom-popup .ui-dialog-content {
    position: relative;
    top: 10px !important;
    padding: 10px !important;
    overflow-y: auto !important;
}

.custom-popup .ui-dialog-titlebar {
    background-color: aliceblue !important;
    border: none;
    color: black !important;
    font-weight: bold !important;
    position: relative;
    top: 0 !important;
}

.custom-popup .ui-dialog-titlebar-close {
    position: absolute;
    top: 50%;
    transform: translateY(35%);
}

.custom-popup .ui-dialog-buttonpane {
    border-top: none !important;
    margin: 0 !important;
    padding: 8px 14px;
}

.custom-popup .ui-dialog-buttonpane .ui-button,
.custom-popup .ui-dialog-buttonpane button {
    background-color: #F3F3F5;
    color: #228bc8;
    font-weight: 700;
    font-size: 13px;
    margin-right: 10px;
    border: none;
    border-radius: 10px;
    padding: 8px 14px;
}

.custom-popup .ui-dialog-buttonpane .ui-button:hover,
.custom-popup .ui-dialog-buttonpane .ui-button:focus,
.custom-popup .ui-dialog-buttonpane .ui-button.ui-state-focus,
.custom-popup .ui-dialog-buttonpane .ui-button.ui-state-active {
    background-color: #F3F3F5;
    color: #228bc8;
    font-weight: 700;
    font-size: 13px;
    margin-right: 10px;
    border: none;
    box-shadow: none;
    outline: none;
}

.custom-popup .ui-dialog,
.custom-popup .ui-dialog-titlebar,
.custom-popup .ui-dialog-content,
.custom-popup .ui-dialog-buttonpane,
.custom-popup .ui-button,
#popup {
    font-family: 'Noto Sans JP' !important;
    font-size: 14px !important;
    font-style: normal !important;
}

.popup-spinner {
  width: 36px;
  height: 36px;
  margin: 20px auto;
  border: 4px solid #ccc;
  border-top: 4px solid #0078D7;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}