Files
intranet/web/intranet_repo/projects/_central/layouts/kalli.css
T

338 lines
7.4 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* Kalli – Eintragungsassistent */
.kalli-wizard {
width: 90%;
max-width: 1400px;
margin: var(--space-xl) auto;
overflow: hidden;
background: #fff;
box-shadow: var(--shadow-md);
}
.kalli-progress {
display: flex;
align-items: center;
justify-content: center;
gap: 0;
padding: 20px 28px 16px;
background: var(--gray-50);
border-bottom: 1px solid var(--gray-200);
}
.kalli-progress-step {
display: flex;
flex-shrink: 0;
flex-direction: column;
align-items: center;
gap: 4px;
}
.kalli-progress-circle {
display: flex;
align-items: center;
justify-content: center;
width: 32px;
height: 32px;
color: var(--gray-500);
font-size: var(--font-size-sm);
font-weight: 600;
background: var(--gray-200);
border: 2px solid var(--gray-300);
transition: all 250ms ease;
}
.kalli-progress-step.active .kalli-progress-circle {
color: #fff;
background: var(--nak-blue);
border-color: var(--nak-blue);
box-shadow: 0 2px 8px rgba(39, 134, 207, 0.35);
}
.kalli-progress-step.done .kalli-progress-circle {
color: var(--nak-blue);
background: #fff;
border-color: var(--nak-blue);
}
.kalli-progress-label {
color: var(--gray-500);
font-size: var(--font-size-xs);
font-weight: 500;
white-space: nowrap;
transition: color 250ms ease;
}
.kalli-progress-step.active .kalli-progress-label,
.kalli-progress-step.done .kalli-progress-label {
color: var(--nak-blue);
}
.kalli-progress-line {
flex: 1;
min-width: 20px;
max-width: 60px;
height: 2px;
margin: 0 6px 20px;
background: var(--gray-300);
transition: background 250ms ease;
}
.kalli-progress-line.done { background: var(--nak-blue); }
.kalli-step[hidden] { display: none !important; }
.kalli-modal-body { padding: 22px 28px 16px; }
.kalli-section-title {
margin: 0 0 16px;
color: var(--gray-600);
font-size: var(--font-size-sm);
font-weight: 600;
letter-spacing: 0.04em;
text-transform: uppercase;
}
.kalli-category-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: var(--space-lg);
}
.kalli-category {
display: flex;
flex-direction: column;
gap: 2px;
}
.kalli-category-label {
margin-bottom: 4px;
color: var(--gray-700);
font-size: var(--font-size-sm);
font-weight: 600;
letter-spacing: 0.03em;
text-transform: uppercase;
}
.kalli-category-label--custom { color: var(--nak-red); }
label.kalli-radio-item {
display: flex;
align-items: center;
gap: 8px;
padding: 0 5px;
color: var(--gray-600);
font-size: var(--font-size-sm);
font-weight: 300;
letter-spacing: normal;
text-transform: none;
cursor: pointer;
border: 1px solid transparent;
transition: background 150ms ease, border-color 150ms ease;
}
label.kalli-radio-item:hover {
background: var(--gray-50);
border-color: var(--gray-200);
}
label.kalli-radio-item input[type="radio"] {
flex-shrink: 0;
align-self: center;
width: 16px;
height: 16px;
margin: 0;
accent-color: var(--nak-blue);
}
label.kalli-radio-item span {
overflow-wrap: break-word;
line-height: 1.4;
word-break: break-word;
hyphens: auto;
}
.kalli-custom-section {
margin-top: var(--space-lg);
padding: var(--space-md);
background: hsl(0, 60%, 98%);
border: 1px solid hsl(0, 60%, 90%);
}
.kalli-custom-hint {
margin: 0 0 var(--space-sm);
color: var(--gray-600);
font-size: var(--font-size-sm);
}
.kalli-custom-options {
display: flex;
flex-wrap: wrap;
gap: var(--space-lg);
margin-bottom: var(--space-sm);
}
.kalli-field-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: var(--space-md);
}
.kalli-field-grid-single { grid-template-columns: 1fr; }
.kalli-field-group {
display: flex;
flex-direction: column;
gap: 4px;
}
.kalli-label {
color: var(--gray-700);
font-size: var(--font-size-sm);
font-weight: 500;
}
.kalli-label-note {
color: var(--gray-500);
font-weight: 300;
}
.kalli-required { color: var(--nak-red); }
.kalli-field {
box-sizing: border-box;
width: 100%;
padding: 12px 14px;
color: inherit;
font-family: var(--font-primary);
font-size: var(--font-size-base);
font-weight: 300;
background: var(--gray-50);
border: 1px solid var(--gray-300);
outline: none;
transition: border-color 150ms ease, box-shadow 150ms ease;
}
.kalli-field:focus {
background: #fff;
border-color: var(--nak-blue);
box-shadow: 0 0 0 3px rgba(39, 134, 207, 0.2);
}
.kalli-summary {
display: flex;
flex-direction: column;
border: 1px solid var(--gray-200);
}
.kalli-summary-row {
display: flex;
align-items: center;
justify-content: space-between;
padding: 12px 16px;
border-bottom: 1px solid var(--gray-100);
}
.kalli-summary-row:last-child { border-bottom: 0; }
.kalli-summary-label {
color: var(--gray-600);
font-size: var(--font-size-sm);
font-weight: 500;
}
.kalli-summary-value {
color: var(--gray-900);
font-size: var(--font-size-sm);
font-weight: 500;
text-align: right;
}
.kalli-validation-error {
margin: var(--space-md) 28px 0;
padding: 10px 14px;
color: hsl(0, 78%, 40%);
font-size: var(--font-size-sm);
font-weight: 600;
background: hsl(0, 78%, 95%);
}
.kalli-validation-error--step { margin: var(--space-md) 0 0; }
.kalli-modal-actions {
display: flex;
align-items: center;
justify-content: space-between;
gap: 10px;
padding: 16px 28px 20px;
border-top: 1px solid var(--gray-200);
}
.kalli-modal-actions-left,
.kalli-modal-actions-right {
display: flex;
gap: 8px;
}
.kalli-btn {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 38px;
padding: 8px 18px;
color: var(--gray-800);
font-family: var(--font-primary);
font-size: var(--font-size-sm);
font-weight: 600;
white-space: nowrap;
cursor: pointer;
background: #fff;
border: 1px solid var(--gray-300);
transition: background 150ms ease, transform 150ms ease;
}
.kalli-btn:hover {
background: var(--gray-100);
transform: translateY(-1px);
}
.kalli-btn:disabled {
opacity: 0.65;
cursor: wait;
transform: none;
}
.kalli-btn-primary {
color: #fff;
background: var(--nak-blue);
border-color: var(--nak-blue);
}
.kalli-btn-primary:hover {
background: var(--nak-blue-hover);
border-color: var(--nak-blue-hover);
}
.kalli-btn-submit {
padding: 10px 24px;
color: #fff;
font-weight: 700;
background: linear-gradient(135deg, var(--nak-blue), var(--nak-blue-hover));
border-color: var(--nak-blue-hover);
}
.kalli-btn-submit:hover {
background: linear-gradient(135deg, var(--nak-blue-hover), #185d8f);
}
@media (max-width: 600px) {
.kalli-wizard { width: 100%; margin: 0; }
.kalli-progress { padding: 14px 12px 10px; }
.kalli-progress-label { font-size: 0.65rem; }
.kalli-progress-circle { width: 26px; height: 26px; font-size: 0.7rem; }
.kalli-progress-line { min-width: 12px; margin-bottom: 16px; }
.kalli-modal-body { padding: 16px; }
.kalli-category-grid,
.kalli-field-grid { grid-template-columns: 1fr; }
.kalli-validation-error { margin-right: 16px; margin-left: 16px; }
.kalli-validation-error--step { margin-right: 0; margin-left: 0; }
.kalli-modal-actions { flex-wrap: wrap; padding: 12px 16px 16px; }
}