/* ===== PrimeFaces Saga 主題的藍與偏藍灰，改成跟著外觀主題走 =====
   design/theme/tools/extract_pf_saga.py 從 Saga 的 theme.css 挑出站上用得到的元件（輸入框、密碼、下拉選單、對話框、
   按鈕、上傳）含藍／灰的規則，選擇器與值照抄，色碼再由 extract_palette.py 換成 palette.css 的變數。
   JISE 畫面不變：同選擇器、同值、載入順序在 Saga 之後、專案 CSS 之前（專案自己的覆蓋照樣生效）。
   不要手改；PrimeFaces 升版時重跑兩支工具。 */
body .ui-button {
    background:var(--blue-2196f3);
    border:1px solid var(--blue-2196f3);
}
body .ui-button.ui-state-hover {
    background:var(--blue-0d89ec);
    border-color:var(--blue-0d89ec);
}
body .ui-button.ui-state-focus {
    box-shadow:0 0 0 .2em var(--blue-a6d5fa);
}
body .ui-button.ui-state-active,
body .ui-button.ui-state-down {
    background:var(--blue-0b7ad1);
    border-color:var(--blue-0b7ad1);
}
body .ui-button.ui-button-outlined {
    color:var(--blue-2196f3);
}
body .ui-button.ui-button-outlined.ui-state-hover {
    background:var(--blue-2196f3-a04);
    color:var(--blue-2196f3);
}
body .ui-button.ui-button-outlined.ui-state-active,
body .ui-button.ui-button-outlined.ui-state-down {
    background:var(--blue-2196f3-a16);
    color:var(--blue-2196f3);
}
body .ui-button.ui-button-outlined.ui-button-plain.ui-state-hover {
    background:var(--slate-e9ecef);
}
body .ui-button.ui-button-outlined.ui-button-plain.ui-state-active,
body .ui-button.ui-button-outlined.ui-button-plain.ui-state-down {
    background:var(--slate-dee2e6);
}
body .ui-button.ui-button-flat {
    color:var(--blue-2196f3);
}
body .ui-button.ui-button-flat.ui-state-hover {
    background:var(--blue-2196f3-a04);
    color:var(--blue-2196f3);
}
body .ui-button.ui-button-flat.ui-state-active,
body .ui-button.ui-button-flat.ui-state-down {
    background:var(--blue-2196f3-a16);
    color:var(--blue-2196f3);
}
body .ui-button.ui-button-flat.ui-button-plain.ui-state-hover {
    background:var(--slate-e9ecef);
}
body .ui-button.ui-button-flat.ui-button-plain.ui-state-active,
body .ui-button.ui-button-flat.ui-button-plain.ui-state-down {
    background:var(--slate-dee2e6);
}
body .ui-button.ui-button-secondary {
    background:var(--slate-607d8b);
    border:1px solid var(--slate-607d8b);
}
body .ui-button.ui-button-secondary.ui-state-hover,
body .ui-button.ui-button-secondary:not(:disabled):hover {
    background:var(--slate-56717d);
    border-color:var(--slate-56717d);
}
body .ui-button.ui-button-secondary.ui-state-focus {
    box-shadow:0 0 0 .2rem var(--slate-beccd2);
}
body .ui-button.ui-button-secondary.ui-state-active,
body .ui-button.ui-button-secondary:active {
    background:var(--slate-4d646f);
    border-color:var(--slate-4d646f);
}
body .ui-button.ui-button-secondary.ui-button-outlined {
    color:var(--slate-607d8b);
}
body .ui-button.ui-button-secondary.ui-button-outlined:enabled:hover {
    background:var(--slate-607d8b-a04);
    color:var(--slate-607d8b);
}
body .ui-button.ui-button-secondary.ui-button-outlined:enabled:active {
    background:var(--slate-607d8b-a16);
    color:var(--slate-607d8b);
}
body .ui-button.ui-button-secondary.ui-button-flat {
    color:var(--slate-607d8b);
}
body .ui-button.ui-button-secondary.ui-button-flat:enabled:hover {
    background:var(--slate-607d8b-a04);
    color:var(--slate-607d8b);
}
body .ui-button.ui-button-secondary.ui-button-flat:enabled:active {
    background:var(--slate-607d8b-a16);
    color:var(--slate-607d8b);
}
body .ui-button.ui-button-warning {
    color:var(--slate-212529);
}
body .ui-button.ui-button-warning.ui-state-hover {
    color:var(--slate-212529);
}
body .ui-button.ui-button-warning.ui-state-active {
    color:var(--slate-212529);
}
body .ui-button.ui-button-info {
    background:var(--blue-0288d1);
    border:1px solid var(--blue-0288d1);
}
body .ui-button.ui-button-info.ui-state-hover {
    background:var(--blue-027abc);
    border-color:var(--blue-027abc);
}
body .ui-button.ui-button-info.ui-state-focus {
    box-shadow:0 0 0 .2rem var(--blue-89d4fe);
}
body .ui-button.ui-button-info.ui-state-active {
    background:var(--blue-026da7);
    border-color:var(--blue-026da7);
}
body .ui-button.ui-button-info.ui-button-outlined {
    color:var(--blue-0288d1);
}
body .ui-button.ui-button-info.ui-button-outlined.ui-state-hover {
    background:var(--blue-0288d1-a04);
    color:var(--blue-0288d1);
}
body .ui-button.ui-button-info.ui-button-outlined.ui-state-active {
    background:var(--blue-0288d1-a16);
    color:var(--blue-0288d1);
}
body .ui-button.ui-button-info.ui-button-flat {
    color:var(--blue-0288d1);
}
body .ui-button.ui-button-info.ui-button-flat.ui-state-hover {
    background:var(--blue-0288d1-a04);
    color:var(--blue-0288d1);
}
body .ui-button.ui-button-info.ui-button-flat.ui-state-active {
    background:var(--blue-0288d1-a16);
    color:var(--blue-0288d1);
}
body .ui-fileupload .ui-fileupload-buttonbar {
    border:1px solid var(--slate-dee2e6);
    background:var(--slate-f8f9fa);
    color:var(--slate-495057);
}
body .ui-fileupload .ui-fileupload-content {
    border:1px solid var(--slate-dee2e6);
    color:var(--slate-495057);
}
body .ui-inputfield {
    color:var(--slate-495057);
    border:1px solid var(--slate-ced4da);
}
body .ui-inputfield.ui-state-hover {
    border-color:var(--blue-2196f3);
}
body .ui-inputfield.ui-state-focus {
    border-color:var(--blue-2196f3);
    box-shadow:0 0 0 .2em var(--blue-a6d5fa);
}
body .ui-password-panel {
    color:var(--slate-495057);
}
body .ui-selectonemenu {
    border:1px solid var(--slate-ced4da);
}
body .ui-selectonemenu.ui-state-hover {
    border-color:var(--blue-2196f3);
}
body .ui-selectonemenu.ui-state-focus {
    border-color:var(--blue-2196f3);
    box-shadow:0 0 0 .2em var(--blue-a6d5fa);
}
body .ui-selectonemenu-panel .ui-selectonemenu-filter-container {
    background:var(--slate-f8f9fa);
    color:var(--slate-495057);
}
body .ui-selectonemenu-panel .ui-selectonemenu-items.ui-selectonemenu-table>thead tr th {
    background:var(--slate-f8f9fa);
    border:1px solid var(--slate-e9ecef);
    color:var(--slate-495057);
}
body .ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item {
    color:var(--slate-495057);
}
body .ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item.ui-selectonemenu-row {
    color:var(--slate-495057);
}
body .ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item.ui-state-hover {
    background:var(--slate-e9ecef);
    color:var(--slate-495057);
}
body .ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item.ui-state-highlight {
    background:var(--blue-e3f2fd);
    color:var(--slate-495057);
}
body .ui-selectonemenu-panel .ui-selectonemenu-items .ui-selectonemenu-item-group {
    color:var(--slate-495057);
}
body .ui-progressbar .ui-progressbar-value {
    background:var(--blue-2196f3);
}
body .ui-progressbar .ui-progressbar-label {
    color:var(--slate-495057);
}
body .ui-progressbar.ui-progressbar-info .ui-progressbar-value {
    background:var(--blue-0288d1);
}
body .ui-dialog .ui-dialog-titlebar {
    color:var(--slate-495057);
}
body .ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-icon:hover {
    background:var(--slate-e9ecef);
    color:var(--slate-495057);
}
body .ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-icon:focus {
    box-shadow:0 0 0 .2rem var(--blue-a6d5fa);
}
body .ui-dialog .ui-dialog-content {
    color:var(--slate-495057);
}
body .ui-dialog .ui-dialog-footer {
    color:var(--slate-495057);
}
