Compatibility with discourse admin

Fixes towards admin settings.
This commit is contained in:
2026-03-08 00:56:01 -04:00
parent 3e5951dd81
commit 8c1ad49518
6 changed files with 311 additions and 19 deletions

View File

@@ -102,6 +102,20 @@ html.dark-scheme .cl-admin-tabs .cl-admin-tab:hover {
flex: 1;
min-width: 0;
margin-bottom: 0 !important;
padding-bottom: 10px !important;
}
/* Inside bg-pairs, let the label and value stack vertically to fit the narrower space */
.cl-bg-pair > .row.setting .setting-label {
float: none;
width: 100%;
margin-right: 0;
}
.cl-bg-pair > .row.setting .setting-value {
float: none;
width: 100%;
padding-right: 0;
}
.cl-bg-pair.cl-tab-hidden {
@@ -173,8 +187,149 @@ html.dark-scheme .admin-detail:not(.cl-tabs-active) .row.setting[data-setting="c
border-top-color: rgba(255, 255, 255, 0.12);
}
/* ── Tab content spacing ── */
/* ── Settings row distribution (match Discourse native layout) ── */
.cl-tabs-active .row.setting[data-setting] {
margin-bottom: 16px;
.cl-tabs-active .row.setting {
padding-bottom: 20px;
}
/* Clearfix without overflow:hidden (avoids clipping dropdowns/color pickers) */
.cl-tabs-active .row.setting::after {
content: "";
display: table;
clear: both;
}
.cl-tabs-active .row.setting .setting-label {
float: left;
width: 17.6576%;
margin-right: 12px;
}
.cl-tabs-active .row.setting .setting-label h3 {
font-size: var(--font-0);
font-weight: normal;
}
.cl-tabs-active .row.setting .setting-label .history-icon {
opacity: 0;
transition: opacity 0.3s;
color: var(--primary-medium);
}
.cl-tabs-active .row.setting .setting-label:hover .history-icon {
opacity: 1;
}
.cl-tabs-active .row.setting .setting-value {
float: left;
width: 53%;
padding-right: 20px;
}
.cl-tabs-active .row.setting .setting-value input[type="checkbox"],
.cl-tabs-active .row.setting .setting-value input[type="radio"] {
flex: 0 0 auto;
}
.cl-tabs-active .row.setting .setting-value .select-kit {
width: 100% !important;
}
.cl-tabs-active .row.setting .setting-value .category-selector {
width: 95%;
}
.cl-tabs-active .row.setting .setting-value .input-setting-string,
.cl-tabs-active .row.setting .setting-value .input-setting-integer,
.cl-tabs-active .row.setting .setting-value .input-setting-textarea {
width: 100%;
}
.cl-tabs-active .row.setting .setting-value .input-setting-textarea {
height: 150px;
}
.cl-tabs-active .row.setting .setting-value .input-setting-list {
padding: 1px;
background-color: var(--secondary);
border: 1px solid var(--input-border-color);
border-radius: 3px;
transition: border linear 0.2s, box-shadow linear 0.2s;
}
.cl-tabs-active .row.setting .setting-controls {
float: left;
}
.cl-tabs-active .row.setting .desc,
.cl-tabs-active .row.setting .validation-error {
padding-top: 3px;
font-size: var(--font-down-1);
line-height: var(--line-height-large);
}
.cl-tabs-active .row.setting .desc {
color: var(--primary-medium);
}
.cl-tabs-active .row.setting .validation-error {
color: var(--danger);
}
.cl-tabs-active .row.setting .setting-theme-warning {
font-size: var(--font-down-1);
color: var(--primary-medium);
}
/* Overridden settings indicator (yellow dot) */
.cl-tabs-active .row.setting.overridden .values input {
background-color: var(--highlight-bg);
}
.cl-tabs-active .row.setting.overridden h3 {
position: relative;
}
.cl-tabs-active .row.setting.overridden h3::before {
content: "";
position: absolute;
top: 0.5rem;
left: -1rem;
width: 0.5rem;
height: 0.5rem;
border-radius: 100%;
background-color: var(--highlight-high);
}
.cl-tabs-active .row.setting.overridden.string input[type="text"],
.cl-tabs-active .row.setting.overridden.string input[type="password"],
.cl-tabs-active .row.setting.overridden.string textarea {
background-color: var(--highlight-bg);
}
@media (max-width: 767px) {
.cl-tabs-active .row.setting .setting-label {
float: none;
width: 100%;
margin-right: 0;
margin-left: 0;
}
.cl-tabs-active .row.setting .setting-label h3 {
margin-bottom: 6px;
}
.cl-tabs-active .row.setting .setting-value {
width: 100%;
padding-right: 0;
}
.cl-tabs-active .row.setting .setting-value .input-setting-list {
width: 100%;
}
.cl-tabs-active .row.setting .setting-value .select-kit {
width: 100% !important;
}
}