Files
teaching-feedback-assistant/pages/defaults/index.wxss

314 lines
4.8 KiB
Plaintext

.defaults-page {
padding-top: 44rpx;
}
.top-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 18rpx;
}
.top-row > view {
flex: 1;
min-width: 0;
}
.top-row .page-heading {
max-width: none;
flex-wrap: nowrap;
white-space: nowrap;
}
.top-row .page-title {
flex: none;
font-size: 44rpx;
white-space: nowrap;
}
.reload-button {
display: flex;
flex: none;
align-items: center;
justify-content: center;
width: 72rpx;
min-width: 72rpx;
max-width: 72rpx;
height: 72rpx;
margin: 0;
padding: 0;
border: 0;
border-radius: 50%;
background: #f1f3f6;
color: #007aff;
line-height: 1;
transition: transform 140ms cubic-bezier(0.23, 1, 0.32, 1);
}
.reload-button:active {
transform: scale(0.94);
background: #e5e5ea;
}
.reload-button[disabled] {
opacity: 1;
}
.reload-icon {
display: block;
font-size: 36rpx;
line-height: 1;
}
.reload-button-loading .reload-icon {
animation: reload-spin 800ms linear infinite;
}
@keyframes reload-spin {
to {
transform: rotate(360deg);
}
}
.defaults-card {
margin-top: 28rpx;
padding: 0;
}
.defaults-grid {
display: flex;
gap: 0;
}
.defaults-grid .select-field {
width: 50%;
}
.select-field,
.duration-field {
background: transparent;
}
.select-field {
min-height: 112rpx;
transition: opacity 140ms cubic-bezier(0.23, 1, 0.32, 1);
}
.select-field-content {
display: flex;
align-items: center;
justify-content: space-between;
gap: 14rpx;
min-height: 112rpx;
padding: 18rpx 20rpx;
}
.select-field + .select-field {
border-left: 1rpx solid #e5e5ea;
}
.select-field:active {
opacity: 0.68;
}
.select-copy {
min-width: 0;
}
.select-field .field-label,
.select-field .field-value {
display: block;
}
.select-field .field-label {
color: #6e6e73;
font-size: 22rpx;
line-height: 1.25;
}
.select-field .field-value {
margin-top: 7rpx;
color: #1c1c1e;
font-size: 29rpx;
font-weight: 700;
line-height: 1.25;
}
.select-chevron {
flex: none;
color: #8e8e93;
font-size: 36rpx;
line-height: 1;
}
.duration-field {
padding: 24rpx;
border-top: 1rpx solid #e5e5ea;
}
.duration-heading {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16rpx;
}
.duration-step-label {
color: #8e8e93;
font-size: 22rpx;
}
.duration-stepper {
display: grid;
grid-template-columns: 72rpx minmax(0, 1fr) 72rpx;
width: 330rpx;
height: 76rpx;
margin: 18rpx auto 0;
overflow: hidden;
border: 1rpx solid #e5e5ea;
border-radius: 14rpx;
background: #f1f3f6;
}
.duration-step-button {
display: flex;
align-items: center;
justify-content: center;
width: 72rpx;
min-width: 72rpx;
max-width: 72rpx;
height: 76rpx;
margin: 0;
padding: 0;
border: 0;
border-radius: 0;
background: transparent;
color: #007aff;
font-size: 38rpx;
font-weight: 500;
line-height: 1;
transition: transform 140ms cubic-bezier(0.23, 1, 0.32, 1);
}
.duration-step-button:active {
transform: scale(0.9);
}
.duration-step-button[disabled] {
color: #c7c7cc;
opacity: 1;
}
.duration-value {
display: flex;
align-items: center;
justify-content: center;
gap: 8rpx;
min-width: 0;
border-right: 1rpx solid #d1d1d6;
border-left: 1rpx solid #d1d1d6;
}
.duration-number {
color: #1c1c1e;
font-size: 34rpx;
font-weight: 800;
line-height: 1;
}
.duration-unit {
color: #6e6e73;
font-size: 22rpx;
}
.duration-presets {
display: flex;
align-items: stretch;
gap: 4rpx;
margin-top: 18rpx;
padding: 4rpx;
border-radius: 12rpx;
background: #f1f3f6;
}
.duration-preset {
display: flex;
flex: 1 1 0;
align-items: center;
justify-content: center;
width: 0;
min-width: 0;
max-width: none;
min-height: 58rpx;
margin: 0;
padding: 0;
border: 0;
border-radius: 9rpx;
background: transparent;
color: #6e6e73;
font-size: 24rpx;
font-weight: 600;
line-height: 1;
transition: transform 140ms cubic-bezier(0.23, 1, 0.32, 1);
}
.duration-preset-active {
background: #ffffff;
box-shadow: 0 2rpx 8rpx rgba(60, 60, 67, 0.12);
color: #007aff;
}
.duration-preset:active {
transform: scale(0.96);
}
.time-help {
display: flex;
align-items: flex-start;
gap: 10rpx;
margin: 0 24rpx;
padding: 2rpx 0 0;
color: #6e6e73;
font-size: 24rpx;
line-height: 1.5;
}
.time-help-icon {
flex: none;
margin-top: 3rpx;
}
.save-area {
padding: 24rpx;
}
.save-defaults {
width: 100%;
min-width: 0;
max-width: none;
margin: 0;
}
@media (prefers-reduced-motion: reduce) {
.reload-button,
.select-field,
.duration-step-button,
.duration-preset {
transition: none;
}
.reload-button:active,
.duration-step-button:active,
.duration-preset:active {
transform: none;
}
.select-field:active {
opacity: 1;
}
.reload-button-loading .reload-icon {
animation: none;
}
}