PlayIntegrityFix/module/webroot/styles.css
2025-04-27 18:10:44 +08:00

232 lines
4.6 KiB
CSS

@import url('https://mui.kernelsu.org/mmrl/insets.css');
@import url('https://mui.kernelsu.org/mmrl/colors.css');
:root {
/* window inset */
--top-inset: var(--window-inset-top, 0px);
--bottom-inset: var(--window-inset-bottom, 0px);
/* Background colors */
--bg-primary: var(--background, #EDEDED);
--bg-secondary: var(--tonalSurface, #fff);
--bg-input: var(--surfaceBright, #F5F5F5);
/* Text colors */
--text-constant: var(--onSurface, #000);
--text-primary: var(--onSurface, #000);
--text-muted: #757575;
/* Border colors */
--border-color: var(--outlineVariant, #ccc);
/* Button colors */
--btn-primary: var(--primary, #007bff);
--btn-primary-text: var(--onPrimary, #fff);
}
@media (prefers-color-scheme: dark) {
:root {
/* Background colors */
--bg-primary: var(--background, #151515);
--bg-secondary: var(--tonalSurface, #292929);
--bg-input: var(--surfaceBright, #1b1b1b);
/* Text colors */
--text-constant: var(--onSurface, #eee);;
--text-primary: var(--onSurface, #eee);
--text-muted: #C2C2C2;
/* Border colors */
--border-color: var(--outlineVariant, #636363);
}
}
body {
color: var(--text-primary);
background-color: var(--bg-primary);
padding-top: var(--top-inset);
padding-bottom: var(--bottom-inset);
margin: 0;
}
.content {
padding-bottom: 30px;
display: flex;
flex-direction: column;
align-items: center;
height: calc(100vh - var(--top-inset) - var(--bottom-inset));
box-sizing: border-box;
}
.header {
user-select: none;
}
.button-box {
width: calc(85vw + 30px);
max-width: 800px;
flex-shrink: 0;
background-color: var(--bg-secondary);
border: none;
border-radius: 15px;
box-sizing: border-box;
box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.2);
overflow: hidden;
}
.toggle-list {
display: flex;
align-items: center;
background-color: var(--bg-secondary);
min-height: 25px;
padding: 8px 20px;
white-space: nowrap;
text-align: left;
border-bottom: 1px solid var(--border-color);;
position: relative;
overflow: hidden;
}
.toggle-list:last-child {
border-bottom: none;
margin-bottom: 0;
}
.toggle-text {
font-size: 16px;
font-weight: bold;
white-space: wrap;
max-width: calc(100% - 76px);
user-select: none;
}
.toggle-switch {
position: relative;
display: inline-block;
margin-left: auto;
width: 40px;
height: 25px;
}
.toggle-switch input {
opacity: 0;
width: 0;
height: 0;
}
.slider {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: var(--border-color);
-webkit-transition: .4s;
transition: .4s;
}
.slider:before {
position: absolute;
content: "";
height: 19px;
width: 19px;
left: 3px;
bottom: 3px;
background-color: var(--text-muted);
transition: .4s;
}
input:checked+.slider {
background-color: var(--btn-primary);
}
input:focus+.slider {
box-shadow: 0 0 1px var(--btn-primary);
}
input:checked+.slider:before {
background-color: var(--btn-primary-text);
transform: translateX(15px);
}
.slider.round {
border-radius: 25px;
}
.slider.round:before {
border-radius: 50%;
}
.output-terminal {
width: calc(85vw + 30px);
max-width: 800px;
flex-grow: 1;
background-color: var(--bg-input);
box-sizing: border-box;
border-radius: 15px;
box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.2);
margin-top: 15px;
overflow: hidden;
}
.output-terminal-header {
display: flex;
padding: 5px 15px;
font-size: 14px;
justify-content: space-between;
background-color: var(--bg-secondary);
color: var(--text-muted);
user-select: none;
}
.clear-terminal {
display: flex;
align-items: center;
svg {
fill: var(--text-muted);;
}
}
.output-terminal-content {
font-family: monospace;
font-size: 14px;
padding: 10px;
width: calc(100% - 20px);
height: calc(100% - 50px);
overflow-y: auto;
}
.output-content {
position: relative;
width: 100%;
padding: 0;
margin: 0;
white-space: pre-wrap;
word-break: break-word;
}
.ripple-element {
position: relative;
overflow: hidden;
}
.ripple {
position: absolute;
border-radius: 50%;
transform: scale(0);
opacity: 1;
animation: ripple-animation ease-out forwards;
pointer-events: none;
background: rgba(0, 0, 0, 0.2);
}
.ripple.end {
opacity: 0;
}
@keyframes ripple-animation {
to {
transform: scale(3);
}
}