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 */
}