Files
Hy-Memory/memhub/apps/web/src/selected-memory.css
T
2026-10-27 12:19:49 +08:00

539 lines
11 KiB
CSS

/* Approved empty, list, and detail states for the memory view. */
.selected-memory-empty {
display: flex;
align-items: center;
justify-content: space-between;
gap: 40px;
padding: 120px 90px 80px 66px;
color: #384a57;
}
.selected-memory-empty h2 {
font-size: 30px;
font-weight: 500;
line-height: 1.8;
margin: 0 0 20px;
}
.selected-memory-empty p {
font-size: 15px;
color: #5e6e7a;
margin: 0 0 40px;
}
.selected-memory-empty p small {
display: block;
margin-top: 24px;
color: #63707b;
font-size: 12px;
line-height: 1.7;
}
.selected-memory-empty > div > div {
display: flex;
gap: 20px;
}
.selected-memory-loading {
width: 86px;
height: 86px;
flex-shrink: 0;
border: 3px solid #d5e2e9;
border-top-color: #6f8796;
border-right-color: #6f8796;
border-radius: 50%;
animation: r6-spin 1.8s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
.selected-memory-loading {
animation: none;
}
}
[data-native-reduce-motion="true"] .selected-memory-loading {
animation: none;
}
.r6-shell .view.r6-memory {
padding: 28px 70px 32px 46px;
}
.r6-shell .r6-memory .memory-instrument-header {
min-height: 76px;
margin-bottom: 18px;
align-items: flex-start;
background: none;
}
.r6-shell .r6-memory .memory-instrument-header h1 {
font-size: 26px;
line-height: 45px;
font-weight: 600;
}
.r6-shell .r6-memory .core-memory-map {
grid-template-columns: 280px minmax(260px, 1fr) 418px;
border: 0;
border-radius: 0;
min-height: 0;
height: auto;
flex: 1;
overflow: hidden;
}
.r6-shell .r6-memory .map-library {
padding: 14px 12px;
background: rgb(255 255 255 / 14%);
border: 0;
}
.selected-source-filter label {
display: block;
font-size: 14px;
line-height: 24px;
margin-left: 4px;
color: #384a57;
}
.selected-source-filter .om-option-menu-button {
height: 48px;
margin-top: 12px;
padding: 0 28px 0 4px;
border: 0;
background: transparent;
color: #384a57;
font-size: 15px;
}
.selected-source-filter button.om-option-menu-button:hover:not(:disabled) {
color: #384a57;
background: #e7eef2;
border-color: transparent;
}
.selected-source-filter .om-option-menu-button::after {
top: 18px;
right: 4px;
}
.selected-source-filter details {
position: relative;
font-size: 11px;
color: #5e6e7a;
margin: 0 0 4px;
}
.selected-source-filter details {
text-align: right;
}
.r6-shell .r6-memory .map-search {
height: 44px;
margin: 13px 0 21px;
gap: 7px;
padding: 0 4px 0 12px;
border: 1px solid #c6d2da;
background: rgb(255 255 255 / 50%);
border-radius: 8px;
}
.r6-shell .r6-memory .map-search input {
min-height: 40px;
font-size: 13px;
}
.r6-shell .r6-memory .map-search-submit {
min-height: 34px;
padding: 0 12px;
border: 1px solid rgb(64 87 103 / 18%);
border-radius: 6px;
background: #4f6373;
color: #fff;
font:
500 12px / 20px "Noto Sans SC",
"PingFang SC",
sans-serif;
box-shadow: inset 0 1px 0 rgb(255 255 255 / 18%);
transition:
background-color var(--r6-fast),
border-color var(--r6-fast);
}
.r6-shell .r6-memory .map-search-submit:hover:not(:disabled) {
background: #435966;
border-color: rgb(48 71 87 / 28%);
}
.r6-shell .r6-memory .map-search-submit:focus-visible {
outline: 2px solid #557c93;
outline-offset: 2px;
}
.r6-shell .r6-memory .map-memory-list {
flex: 1 1 0;
min-height: 0;
margin: 0;
padding: 0;
}
.r6-shell .r6-memory .map-memory-item {
min-height: 88px;
margin: 0 0 11px;
border: 1px solid transparent;
padding: 10px 12px;
border-radius: 8px;
font-size: 14px;
line-height: 25px;
display: flex;
flex-direction: column;
align-items: stretch;
gap: 8px;
font-family: "Noto Sans SC", "PingFang SC", sans-serif;
}
.r6-shell .r6-memory .map-memory-item > .map-memory-content {
min-height: 40px;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.r6-shell .r6-memory .map-memory-tags.wb-tags {
grid-column: 2;
min-height: 0;
margin: 0;
padding: 0;
}
.r6-shell .r6-memory .map-memory-item small {
font-size: 11px;
line-height: 19px;
margin: 0;
}
.r6-shell .r6-memory .map-state {
display: none;
}
.r6-shell .r6-memory .map-memory-item[aria-pressed="true"] {
background: rgb(158 178 194 / 22%);
border-color: rgb(130 156 173 / 42%);
}
.r6-shell .r6-memory .map-stage {
background: transparent;
border: 0;
}
.r6-shell .r6-memory .map-stage-heading {
padding: 14px 32px 0;
min-height: 100px;
align-items: flex-start;
}
.r6-shell .r6-memory .map-stage-heading h2 {
font-size: 18px;
line-height: 31px;
font-weight: 500;
}
.selected-graph-subtitle {
margin: 10px 0 0;
font-size: 12px;
line-height: 21px;
color: #5e6e7a;
}
.r6-shell .r6-memory .map-meta {
min-height: 50px;
padding: 12px 32px;
font-size: 12px;
border: 0;
}
.r6-shell .r6-memory .map-inspector {
padding: 14px 22px 24px;
background: rgb(255 255 255 / 30%);
border: 0;
border-radius: 0;
overflow-y: auto;
overflow-anchor: none;
min-height: 0;
}
.r6-shell .r6-memory .map-inspector-heading {
padding: 0;
margin-bottom: 12px;
}
.r6-shell .r6-memory .map-inspector-heading h2 {
font-size: 18px;
line-height: 31px;
font-weight: 500;
}
.selected-memory-detail {
display: flex;
min-width: 0;
flex-direction: column;
color: #384a57;
font-family: "Noto Sans SC", "PingFang SC", sans-serif;
}
.selected-memory-status {
color: #287b67;
font-size: 12px;
line-height: 21px;
margin: 0 0 32px;
}
.selected-memory-detail > h3 {
display: block;
font-size: 22px;
line-height: 38px;
font-weight: 500;
letter-spacing: normal;
margin: 0 0 18px;
overflow-wrap: anywhere;
}
.selected-memory-body {
display: block;
flex: none;
min-width: 0;
font-size: 17px;
line-height: 29px;
letter-spacing: normal;
margin: 0;
white-space: pre-wrap;
overflow-wrap: anywhere;
}
.selected-memory-source {
margin: 32px 0 22px;
font-size: 12px;
color: #5e6e7a;
line-height: 21px;
}
.selected-memory-times {
margin: -16px 0 22px;
font-size: 12px;
color: #5e6e7a;
line-height: 21px;
}
.selected-memory-more {
font-size: 12px;
padding: 16px 0;
color: #5e6e7a;
}
.selected-memory-history {
list-style: none;
padding: 0;
font-size: 14px;
}
.selected-memory-history li {
border-top: 1px solid #c7d6e0;
padding-top: 14px;
}
.selected-memory-page {
position: fixed;
inset: 58px 0 48px 78px;
z-index: 15;
overflow: hidden;
display: flex;
flex-direction: column;
min-height: 0;
background: #eaf1f5;
color: #384a57;
padding: 28px 116px 50px 46px;
font-family: "Noto Sans SC", "PingFang SC", sans-serif;
}
.selected-memory-page[hidden] {
display: none;
}
.selected-memory-page > header {
flex-shrink: 0;
display: flex;
justify-content: space-between;
align-items: center;
gap: 24px;
}
.selected-memory-page > header .r6-button {
min-width: 150px;
}
.selected-memory-page h1 {
font-size: 26px;
line-height: 45px;
font-weight: 600;
margin: 0;
outline: none;
}
.selected-editor {
display: flex;
flex-direction: column;
min-height: 0;
flex: 1;
padding-left: 34px;
padding-top: 39px;
}
.selected-editor > p {
font-size: 15px;
line-height: 26px;
color: #5e6e7a;
margin: 0 0 52px;
}
.selected-editor textarea {
display: block;
width: min(100%, 1138px);
min-height: 100px;
height: 294px;
flex: 0 1 294px;
padding: 28px 24px;
border: 1px solid rgb(255 255 255 / 85%);
border-radius: 8px;
background: rgb(255 255 255 / 26%);
backdrop-filter: blur(20px);
font:
400 20px / 34px "Noto Sans SC",
"PingFang SC",
sans-serif;
color: #384a57;
resize: none;
overflow-y: auto;
overscroll-behavior: contain;
margin-bottom: 38px;
}
.selected-editor > p:nth-of-type(2) {
margin-bottom: 42px;
font-size: 14px;
}
.selected-page-actions {
display: flex;
justify-content: flex-end;
gap: 20px;
margin-top: 32px;
padding-bottom: 24px;
flex-shrink: 0;
}
.selected-page-actions .r6-button {
min-width: 150px;
}
.selected-editor .selected-page-actions {
flex-wrap: wrap;
margin-top: auto;
padding-top: 32px;
}
.selected-editor .selected-page-actions .r6-button[data-variant="primary"] {
min-width: 150px;
}
.selected-conflict h2 {
font-size: 18px;
color: #946b2f;
font-weight: 400;
}
.selected-conflict {
min-height: 0;
overflow-y: auto;
overscroll-behavior: contain;
scrollbar-width: thin;
flex: 1 1 180px;
}
.selected-conflict p {
font-size: 15px;
line-height: 26px;
}
.selected-conflict blockquote {
padding: 16px;
border-left: 2px solid #8da4b3;
white-space: pre-wrap;
}
.selected-delete {
padding: 130px 66px 0;
min-height: 0;
flex: 1;
display: flex;
flex-direction: column;
}
.selected-delete h2 {
font-size: 30px;
line-height: 54px;
font-weight: 600;
}
.selected-delete > p {
font-size: 18px;
line-height: 33px;
margin: 28px 0;
overflow-wrap: anywhere;
overflow-y: auto;
min-height: 0;
}
.selected-delete > p:first-of-type {
font-size: 20px;
line-height: 36px;
margin: 18px 0 0;
}
.selected-delete .selected-page-actions {
margin-top: auto;
padding-top: 32px;
}
.selected-page-error {
color: #953f3f;
padding-left: 34px;
font-size: 15px;
flex: 0 1 auto;
min-height: 0;
max-height: 72px;
overflow-y: auto;
overflow-wrap: anywhere;
}
@media (max-height: 959px) {
.selected-memory-page {
padding-top: 24px;
padding-bottom: 24px;
}
.selected-editor {
padding-top: 18px;
}
.selected-editor > p,
.selected-editor > p:nth-of-type(2) {
margin-bottom: 12px;
flex-shrink: 0;
}
.selected-editor textarea {
margin-bottom: 12px;
padding: 16px 20px;
}
.selected-editor .selected-page-actions,
.selected-delete .selected-page-actions {
padding-top: 16px;
padding-bottom: 0;
}
.selected-delete {
padding-top: 24px;
}
.selected-delete h2 {
margin: 12px 0;
flex-shrink: 0;
}
.selected-delete > p {
margin: 12px 0;
}
}
@media (max-width: 1250px) {
.r6-shell .view.r6-memory {
padding: 28px 24px;
}
.r6-shell .r6-memory .core-memory-map {
grid-template-columns: 240px minmax(200px, 1fr) 340px;
}
.selected-memory-page {
padding-right: 40px;
}
}
@media (max-width: 1100px) {
.r6-shell .r6-memory .core-memory-map {
grid-template-columns: 240px minmax(200px, 1fr);
}
.r6-shell .r6-memory .map-inspector {
background: #eff5f8;
width: min(418px, calc(100vw - 32px));
}
.r6-shell .r6-memory .map-inspector-heading {
position: sticky;
top: -14px;
z-index: 1;
background: #eff5f8;
padding: 10px 0;
}
.selected-editor {
padding-left: 0;
}
.selected-memory-page {
padding: 24px;
}
.selected-delete {
padding-left: 0;
padding-right: 0;
}
}
@media (max-width: 600px) {
.selected-memory-page {
left: 64px;
}
}
@media (prefers-reduced-transparency: reduce) {
.r6-shell .r6-memory .map-library,
.r6-shell .r6-memory .map-inspector,
.selected-editor textarea {
background: #f1f6f9;
backdrop-filter: none;
}
}
[data-native-reduce-transparency="true"]
.r6-shell
.r6-memory
:is(.map-library, .map-inspector),
[data-native-reduce-transparency="true"] .selected-editor textarea {
background: #f1f6f9;
backdrop-filter: none;
}