html, body, #root, .app, .content { height: 100%; width: 100%; font-family: "Noto Sans HK", "Noto Sans SC"; } .page-grey { filter: grayscale(100%); } /* Chrome, Safari, Edge, Opera */ input::-webkit-outer-spin-button, input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } /* Firefox */ input[type=number] { -moz-appearance: textfield; } /* body{ padding-top: 53px; font-family: 微軟正黑體; } */ /* main{ padding-top: 43px; } */ img { -webkit-transition: all 0.2s } /*Filter styles*/ .saturate {-webkit-filter: saturate(3);} .grayscale {-webkit-filter: grayscale(100%) brightness(1.5);} .contrast {-webkit-filter: contrast(10%);} .brightness {-webkit-filter: brightness(1.2);} .blur {-webkit-filter: blur(3px);} .invert {-webkit-filter: invert(100%);} .sepia {-webkit-filter: sepia(100%);} .huerotate {-webkit-filter: hue-rotate(180deg);} .rss.opacity {-webkit-filter: opacity(50%);} img:hover{-webkit-filter:none;} a:link, a:visited, a:hover, a:active { color: #005FCC; /* WCAG AA compliant */ background-color: transparent; text-decoration: underline; } /* iframe#webpack-dev-server-client-overlay{display:none!important} */ /* ===== WCAG 2.4.7 Focus Visible (Keyboard only) ===== */ :where( a, button, input, select, textarea, summary, [role="button"], [role="link"], [tabindex]:not([tabindex="-1"]) ):focus-visible { outline: 3px solid #1976d2; outline-offset: 2px; border-radius: 4px; } /* Suppress mouse focus */ :where( a, button, input, select, textarea, summary, [role="button"], [role="link"], [tabindex]:not([tabindex="-1"]) ):focus:not(:focus-visible) { outline: none; } /* ===== MUI DataGrid keyboard focus (WCAG 2.4.7 / 2.4.11) ===== */ .MuiDataGrid-columnHeader:focus-visible, .MuiDataGrid-cell:focus-visible { outline: 3px solid #1976d2; outline-offset: -2px; box-shadow: 0 0 0 3px rgba(25, 118, 210, 0.25); } /* Contained buttons only */ .MuiButton-contained { box-shadow: none; } .MuiButton-contained:hover { } /* iAM Smart button — keep green border */ .MuiButton-outlinedIAmSmart { color: #2E7D32; /* green text */ border: 1px solid #2E7D32; /* keep your green */ } .MuiButton-outlinedIAmSmart:hover { color: #2E7D32; /* green text */ border: 1px solid #2E7D32; background-color: rgba(46, 125, 50, 0.08); /* optional */ } /* ===== Outlined button focus ===== */ .MuiButton-outlined:focus-visible { outline: 3px solid #1976d2; outline-offset: 2px; } /* Step icon number color (text inside the circle) */ .MuiStepIcon-text { fill: #1A1A1A; /* dark text, high contrast */ } /* Placeholder text contrast */ .MuiInputBase-input::placeholder { color: #6B6B6B; /* passes 4.5:1 on white */ opacity: 1; /* IMPORTANT */ } /* WCAG-safe error text color */ .Mui-error, .MuiFormHelperText-root.Mui-error, .MuiTypography-errorMessage1 { color: #B00020; /* dark red, AA compliant */ opacity: 1; /* remove faded appearance */ }