Files

500 lines
10 KiB
CSS

#qortal-admin-root {
max-width: 1180px;
margin-bottom: 0;
padding-bottom: 0;
}
#qortal-admin-root .qortal-help {
margin-bottom: 16px;
color: var(--color-text-maxcontrast);
}
#qortal-admin-root .qortal-grid {
display: grid;
grid-template-columns: 240px minmax(560px, 1fr);
gap: 10px 14px;
align-items: start;
}
#qortal-admin-root .qortal-input-group {
display: flex;
flex-direction: column;
gap: 6px;
}
#qortal-admin-root .qortal-identity-provider-form {
margin-top: 12px;
}
#qortal-admin-root .qortal-inline-check {
display: inline-flex;
align-items: center;
gap: 8px;
min-height: 34px;
}
#qortal-admin-root .qortal-table td {
overflow-wrap: anywhere;
vertical-align: top;
}
/* Default admin form fields to full width for readability.
* Keep compact numeric fields and checkboxes/radios at intrinsic sizes. */
#qortal-admin-root input[type='text'],
#qortal-admin-root input[type='email'],
#qortal-admin-root input[type='password'],
#qortal-admin-root input[type='url'],
#qortal-admin-root input[type='search'],
#qortal-admin-root select,
#qortal-admin-root textarea {
width: 100%;
max-width: 100%;
}
#qortal-admin-root input[type='checkbox'],
#qortal-admin-root input[type='radio'],
#qortal-admin-root input[type='number'],
#qortal-admin-root input[type='range'],
#qortal-admin-root input[type='file'],
#qortal-admin-root input[type='color'],
#qortal-admin-root input[type='date'],
#qortal-admin-root input[type='datetime-local'],
#qortal-admin-root input[type='time'] {
width: auto;
max-width: 100%;
}
#qortal-admin-root .qortal-billing-form {
margin: 14px 0;
padding: 12px;
border: 1px solid var(--color-border);
border-radius: var(--border-radius-large);
background: var(--color-background-dark);
}
#qortal-admin-root .qortal-billing-form h4 {
margin: 0 0 12px 0;
}
#qortal-admin-root .qortal-billing-profile-grid {
display: grid;
grid-template-columns: repeat(2, minmax(220px, 1fr));
gap: 10px 14px;
}
#qortal-admin-root .qortal-billing-field {
display: flex;
flex-direction: column;
gap: 6px;
}
#qortal-admin-root .qortal-billing-field input {
width: 100%;
max-width: 100%;
}
#qortal-admin-root .qortal-billing-field--wide {
grid-column: 1 / -1;
}
#qortal-admin-root .qortal-billing-field--full {
grid-column: 1 / -1;
}
#qortal-admin-root .qortal-warning-note {
color: var(--color-warning, #f59e0b);
font-weight: 600;
}
#qortal-admin-root .qortal-purchase-section {
margin-top: 14px;
}
#qortal-admin-root .qortal-purchase-section h4 {
margin: 0 0 10px 0;
}
#qortal-admin-root .qortal-purchase-grid {
display: grid;
gap: 12px;
}
#qortal-admin-root .qortal-purchase-grid--subscriptions {
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}
#qortal-admin-root .qortal-purchase-grid--onetime {
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
#qortal-admin-root .qortal-purchase-card {
display: flex;
flex-direction: column;
gap: 10px;
padding: 14px;
border-radius: var(--border-radius-large);
border: 1px solid color-mix(in srgb, var(--color-primary) 24%, var(--color-border) 76%);
background:
linear-gradient(145deg, color-mix(in srgb, var(--color-primary) 11%, transparent 89%), transparent 58%),
var(--color-main-background);
min-height: 230px;
}
#qortal-admin-root .qortal-purchase-card--onetime {
min-height: 170px;
}
#qortal-admin-root .qortal-purchase-card h5 {
margin: 0;
font-size: 16px;
}
#qortal-admin-root .qortal-purchase-price {
font-size: 19px;
font-weight: 700;
}
#qortal-admin-root .qortal-purchase-pill {
display: inline-flex;
align-items: center;
gap: 4px;
font-size: 11px;
font-weight: 700;
padding: 3px 8px;
border-radius: 999px;
border: 1px solid color-mix(in srgb, var(--color-primary) 42%, var(--color-border) 58%);
width: fit-content;
}
#qortal-admin-root .qortal-purchase-features {
margin: 0;
padding-left: 16px;
color: var(--color-text-maxcontrast);
font-size: 12px;
line-height: 1.4;
}
#qortal-admin-root .qortal-purchase-meta {
margin: 0;
font-size: 12px;
color: var(--color-text-maxcontrast);
}
#qortal-admin-root .qortal-purchase-actions {
margin-top: auto;
display: flex;
gap: 8px;
flex-wrap: wrap;
}
#qortal-admin-root .qortal-purchase-actions .button {
width: 100%;
}
#qortal-admin-root .qortal-purchase-current {
border-color: color-mix(in srgb, var(--color-success) 44%, var(--color-border) 56%);
background:
linear-gradient(145deg, color-mix(in srgb, var(--color-success) 14%, transparent 86%), transparent 58%),
var(--color-main-background);
}
#qortal-admin-root textarea {
width: 100%;
min-height: 64px;
padding: 10px 12px;
font-family: "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;
font-size: 13px;
line-height: 1.35;
resize: vertical;
overflow-x: auto;
}
#qortal-admin-root .qortal-note {
margin: 0;
color: var(--color-text-maxcontrast);
font-size: 12px;
}
#qortal-admin-root .qortal-toggles {
display: flex;
flex-direction: column;
gap: 10px;
margin: 16px 0;
}
#qortal-admin-root .qortal-actions {
display: flex;
gap: 10px;
margin: 16px 0;
flex-wrap: wrap;
}
#qortal-admin-root .qortal-card {
border: 1px solid var(--color-border);
border-radius: var(--border-radius-large);
padding: 14px;
margin: 14px 0;
background: var(--color-main-background);
}
#qortal-admin-root .qortal-card h3 {
margin: 0 0 8px 0;
}
#qortal-admin-root .qortal-card-header {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
margin-bottom: 10px;
}
#qortal-admin-root .qortal-card-header h3 {
margin: 0;
}
#qortal-admin-root .qortal-card-toggle {
margin-left: auto;
}
#qortal-admin-root .qortal-card-body {
display: block;
}
#qortal-admin-root .qortal-card-body[hidden],
#qortal-admin-root [hidden] {
display: none !important;
}
#qortal-admin-root .qortal-hidden {
display: none;
}
#qortal-admin-root[data-mode-active='powered'] .qortal-full-only {
display: none;
}
#qortal-admin-root[data-mode-active='full_qortal'] .qortal-powered-only {
display: none;
}
#qortal-admin-root[data-billing-advanced='0'] .qortal-chd-advanced {
display: none;
}
#qortal-admin-root .qortal-card ol {
margin: 8px 0 0 20px;
}
#qortal-admin-root .qortal-status-list {
list-style: none;
margin: 8px 0 0 0;
padding: 0;
}
#qortal-admin-root .qortal-status-list li {
display: flex;
align-items: center;
gap: 8px;
margin-bottom: 6px;
}
#qortal-admin-root .qortal-status-dot {
width: 10px;
height: 10px;
border-radius: 50%;
display: inline-block;
}
#qortal-admin-root .qortal-status-dot.ok {
background: var(--color-success);
}
#qortal-admin-root .qortal-status-dot.warn {
background: var(--color-warning, #f59e0b);
}
#qortal-admin-root .qortal-status-dot.error {
background: var(--color-error);
}
#qortal-admin-root .qortal-notices ul {
margin: 8px 0 0 18px;
}
#qortal-admin-root .qortal-notice {
margin-bottom: 6px;
font-weight: 600;
}
#qortal-admin-root .qortal-notice.error {
color: var(--color-error);
}
#qortal-admin-root .qortal-notice.warning {
color: var(--color-warning, #f59e0b);
}
#qortal-admin-root .qortal-notice.info {
color: var(--color-text-maxcontrast);
}
#qortal-admin-root .qortal-inline-form {
display: grid;
grid-template-columns: 180px minmax(280px, 1fr);
gap: 8px 12px;
align-items: center;
}
#qortal-admin-root .qortal-inline-form input {
width: 100%;
}
#qortal-admin-root .qortal-inline-form button {
justify-self: start;
}
#qortal-admin-root .qortal-link-form {
grid-template-columns: 220px minmax(280px, 1fr);
}
#qortal-admin-root .qortal-qapps-form {
grid-template-columns: 160px minmax(280px, 1fr);
}
#qortal-admin-root .qortal-user-search {
grid-template-columns: 160px minmax(240px, 1fr);
}
#qortal-admin-root .qortal-policy-grid code {
display: inline-block;
padding: 4px 6px;
background: var(--color-background-dark);
border-radius: var(--border-radius-large);
}
#qortal-admin-root .qortal-setup-options {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 12px;
margin-top: 12px;
}
#qortal-admin-root .qortal-setup-option pre {
margin: 8px 0 0 0;
}
#qortal-admin-root .qortal-table-wrap {
margin-top: 12px;
overflow: auto;
}
#qortal-admin-root .qortal-table {
width: 100%;
border-collapse: collapse;
}
#qortal-admin-root .qortal-table th,
#qortal-admin-root .qortal-table td {
padding: 8px 10px;
border-bottom: 1px solid var(--color-border);
text-align: left;
vertical-align: top;
}
#qortal-admin-root .qortal-qapp-description-cell {
max-width: 280px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
#qortal-admin-root .qortal-qapp-actions-cell {
white-space: nowrap;
width: 1%;
}
#qortal-admin-root .qortal-table th {
font-weight: 700;
}
#qortal-admin-root .qortal-qapp-icon {
width: 28px;
height: 28px;
border-radius: 6px;
object-fit: cover;
display: inline-block;
background: var(--color-background-dark);
}
#qortal-admin-root .qortal-compact-status {
min-height: 64px;
}
#qortal-admin-root .qortal-feedback {
min-height: 24px;
font-weight: 600;
}
#qortal-admin-root .qortal-feedback.error {
color: var(--color-error);
}
#qortal-admin-root .qortal-feedback.success {
color: var(--color-success);
}
#qortal-admin-root .qortal-status {
background: var(--color-background-dark);
border-radius: var(--border-radius-large);
padding: 12px;
min-height: 140px;
overflow: auto;
white-space: pre-wrap;
word-break: break-word;
}
@media (max-width: 780px) {
#qortal-admin-root {
max-width: none;
padding: 0 8px;
}
#qortal-admin-root .qortal-card {
padding: 12px;
margin: 10px 0;
}
#qortal-admin-root .qortal-grid {
grid-template-columns: 1fr;
}
#qortal-admin-root .qortal-billing-profile-grid {
grid-template-columns: 1fr;
}
#qortal-admin-root .qortal-purchase-grid--subscriptions,
#qortal-admin-root .qortal-purchase-grid--onetime {
grid-template-columns: 1fr;
}
#qortal-admin-root .qortal-inline-form,
#qortal-admin-root .qortal-link-form {
grid-template-columns: 1fr;
}
#qortal-admin-root .qortal-actions {
flex-direction: column;
align-items: stretch;
}
#qortal-admin-root .qortal-actions button {
width: 100%;
}
#qortal-admin-root .qortal-card-header {
flex-direction: column;
align-items: stretch;
}
}