| @@ -1432,8 +1432,36 @@ | ||
| 1432 | 1432 | outline: none; |
| 1433 | 1433 | box-shadow: 0 0 0 1px #7873f5; |
| 1434 | 1434 | } |
| 1435 | 1435 | |
| 1436 | +/* Contextual note under the modal filter strip — only rendered for content types | |
| 1437 | + that need one (currently Media). Continues the filter strip's own surface so it | |
| 1438 | + reads as part of it rather than as a banner dropped on top. */ | |
| 1439 | +.mxchat-kb-filter-note { | |
| 1440 | + display: flex; | |
| 1441 | + align-items: center; | |
| 1442 | + gap: 8px; | |
| 1443 | + padding: 10px 20px; | |
| 1444 | + background-color: #f8f9fa; | |
| 1445 | + border-bottom: 1px solid #e5e5e5; | |
| 1446 | + color: #555; | |
| 1447 | + font-size: 13px; | |
| 1448 | + line-height: 1.4; | |
| 1449 | +} | |
| 1450 | + | |
| 1451 | +/* An author-level display value outranks the browser default for [hidden], so the | |
| 1452 | + hidden state has to be restated here or the note would never hide. */ | |
| 1453 | +.mxchat-kb-filter-note[hidden] { | |
| 1454 | + display: none; | |
| 1455 | +} | |
| 1456 | + | |
| 1457 | +.mxchat-kb-filter-note-icon { | |
| 1458 | + width: 16px; | |
| 1459 | + height: 16px; | |
| 1460 | + flex-shrink: 0; | |
| 1461 | + color: #7873f5; | |
| 1462 | +} | |
| 1463 | + | |
| 1436 | 1464 | /* Special style for the "processed" filter */ |
| 1437 | 1465 | #mxchat-kb-processed-filter { |
| 1438 | 1466 | border-left: 3px solid #1e88e5; |
| 1439 | 1467 | } |
| @@ -1451,8 +1479,9 @@ | ||
| 1451 | 1479 | .mxchat-kb-selection-header { |
| 1452 | 1480 | display: flex; |
| 1453 | 1481 | justify-content: space-between; |
| 1454 | 1482 | align-items: center; |
| 1483 | + gap: var(--mxch-spacing-md, 16px); | |
| 1455 | 1484 | padding: 15px 20px; |
| 1456 | 1485 | background-color: #f8f9fa; |
| 1457 | 1486 | border-bottom: 1px solid #eee; |
| 1458 | 1487 | position: sticky; |
| @@ -4078,6 +4107,128 @@ | ||
| 4078 | 4107 | } |
| 4079 | 4108 | @media (max-width: 782px) { |
| 4080 | 4109 | .mxchat-meta-chip-grid { |
| 4081 | 4110 | grid-template-columns: 1fr; |
| 4111 | + } | |
| 4112 | +} | |
| 4113 | + | |
| 4114 | +/* ========================================================================== | |
| 4115 | + Re-import affected entries (plan 89739b) | |
| 4116 | + Layout only. Every colour, radius and space is a shell token; the badges, | |
| 4117 | + notices, progress bar and disclosure are the shell's own. | |
| 4118 | + ========================================================================== */ | |
| 4119 | +.mxch-kb-reimport [hidden] { | |
| 4120 | + display: none; | |
| 4121 | +} | |
| 4122 | +.mxch-kb-reimport-controls { | |
| 4123 | + display: flex; | |
| 4124 | + align-items: flex-end; | |
| 4125 | + flex-wrap: wrap; | |
| 4126 | + gap: var(--mxch-spacing-md); | |
| 4127 | + margin-top: var(--mxch-spacing-lg); | |
| 4128 | +} | |
| 4129 | +.mxch-kb-reimport-controls .mxch-field { | |
| 4130 | + flex: 0 0 220px; | |
| 4131 | + margin-bottom: 0; | |
| 4132 | +} | |
| 4133 | +.mxch-kb-reimport .mxch-btn[disabled] { | |
| 4134 | + opacity: 0.55; | |
| 4135 | + cursor: default; | |
| 4136 | +} | |
| 4137 | +.mxch-kb-reimport-progress, | |
| 4138 | +.mxch-kb-reimport-error { | |
| 4139 | + margin-top: var(--mxch-spacing-lg); | |
| 4140 | +} | |
| 4141 | +.mxch-kb-reimport-progress .mxch-progress-label { | |
| 4142 | + margin-bottom: 0; | |
| 4143 | +} | |
| 4144 | +.mxch-kb-reimport-results { | |
| 4145 | + margin-top: var(--mxch-spacing-lg); | |
| 4146 | + padding-top: var(--mxch-spacing-lg); | |
| 4147 | + border-top: 1px solid var(--mxch-card-border); | |
| 4148 | +} | |
| 4149 | +.mxch-kb-reimport-done { | |
| 4150 | + margin-bottom: var(--mxch-spacing-md); | |
| 4151 | +} | |
| 4152 | +.mxch-kb-reimport-counts { | |
| 4153 | + display: flex; | |
| 4154 | + flex-wrap: wrap; | |
| 4155 | + gap: var(--mxch-spacing-sm); | |
| 4156 | +} | |
| 4157 | +.mxch-kb-reimport-list { | |
| 4158 | + list-style: none; | |
| 4159 | + margin: var(--mxch-spacing-md) 0 0; | |
| 4160 | + padding: 0; | |
| 4161 | + max-height: 336px; | |
| 4162 | + overflow-y: auto; | |
| 4163 | + border: 1px solid var(--mxch-card-border); | |
| 4164 | + border-radius: var(--mxch-radius-md); | |
| 4165 | +} | |
| 4166 | +.mxch-kb-reimport-list li { | |
| 4167 | + display: flex; | |
| 4168 | + align-items: center; | |
| 4169 | + justify-content: space-between; | |
| 4170 | + gap: var(--mxch-spacing-md); | |
| 4171 | + margin: 0; | |
| 4172 | + padding: var(--mxch-spacing-sm) var(--mxch-spacing-md); | |
| 4173 | + border-top: 1px solid var(--mxch-card-border); | |
| 4174 | + font-size: 13px; | |
| 4175 | + line-height: 1.5; | |
| 4176 | +} | |
| 4177 | +.mxch-kb-reimport-list li:first-child { | |
| 4178 | + border-top: 0; | |
| 4179 | +} | |
| 4180 | +.mxch-kb-reimport-source { | |
| 4181 | + min-width: 0; | |
| 4182 | + overflow-wrap: anywhere; | |
| 4183 | + color: var(--mxch-text-primary); | |
| 4184 | +} | |
| 4185 | +.mxch-kb-reimport-note { | |
| 4186 | + display: block; | |
| 4187 | + font-size: 12px; | |
| 4188 | + color: var(--mxch-text-secondary); | |
| 4189 | +} | |
| 4190 | +.mxch-kb-reimport-reasons { | |
| 4191 | + display: flex; | |
| 4192 | + flex-wrap: wrap; | |
| 4193 | + justify-content: flex-end; | |
| 4194 | + gap: var(--mxch-spacing-xs); | |
| 4195 | + flex-shrink: 0; | |
| 4196 | +} | |
| 4197 | +.mxch-kb-reimport-notes { | |
| 4198 | + margin-top: var(--mxch-spacing-sm); | |
| 4199 | + border: 0; | |
| 4200 | + border-radius: 0; | |
| 4201 | +} | |
| 4202 | +.mxch-kb-reimport-notes li { | |
| 4203 | + padding-left: 0; | |
| 4204 | + padding-right: 0; | |
| 4205 | +} | |
| 4206 | +.mxch-kb-reimport-footer { | |
| 4207 | + display: flex; | |
| 4208 | + align-items: center; | |
| 4209 | + flex-wrap: wrap; | |
| 4210 | + gap: var(--mxch-spacing-sm) var(--mxch-spacing-md); | |
| 4211 | +} | |
| 4212 | +.mxch-kb-reimport-footer .mxch-field-hint { | |
| 4213 | + margin-top: 0; | |
| 4214 | +} | |
| 4215 | +@media (max-width: 600px) { | |
| 4216 | + .mxch-kb-reimport-controls .mxch-field { | |
| 4217 | + flex-basis: 100%; | |
| 4218 | + } | |
| 4219 | + .mxch-kb-reimport-controls .mxch-btn { | |
| 4220 | + width: 100%; | |
| 4221 | + justify-content: center; | |
| 4222 | + } | |
| 4223 | + .mxch-kb-reimport-list li { | |
| 4224 | + flex-direction: column; | |
| 4225 | + align-items: flex-start; | |
| 4226 | + gap: var(--mxch-spacing-xs); | |
| 4227 | + } | |
| 4228 | + .mxch-kb-reimport-reasons { | |
| 4229 | + justify-content: flex-start; | |
| 4230 | + } | |
| 4231 | + .mxch-kb-reimport-list { | |
| 4232 | + max-height: 480px; | |
| 4082 | 4233 | } |
| 4083 | 4234 | } |