:root {
    --brand-green: #2ecc71; --brand-orange: #e67e22; --brand-cyan: #17a2b8; --brand-dark: #2c3e50; --gray-light: #f8f9fa;
}
.bg-brand-green { background-color: var(--brand-green) !important; }
.bg-brand-orange { background-color: var(--brand-orange) !important; }
.bg-brand-cyan { background-color: var(--brand-cyan) !important; }
.text-brand-green { color: var(--brand-green) !important; }
.text-brand-orange { color: var(--brand-orange) !important; }
.text-brand-cyan { color: var(--brand-cyan) !important; }

.kms-dashboard-wrapper { background-color: #f4f7f6; overflow-x: hidden; font-family: 'Segoe UI', Roboto, sans-serif; min-height: 100vh; }
#wrapper { display: flex; width: 100%; align-items: stretch; }
#sidebar-wrapper { min-width: 250px; max-width: 250px; min-height: 100vh; background-color: #fff; margin-left: -250px; transition: margin 0.25s ease-out; }
@media (min-width: 768px) { #sidebar-wrapper { margin-left: 0; } #wrapper.toggled #sidebar-wrapper { margin-left: -250px; } }
#wrapper.toggled #sidebar-wrapper { margin-left: 0; }
#page-content-wrapper { width: 100%; }

.sidebar-heading { border-bottom: 1px solid #eee; }
.list-group-item { border: none; padding: 1rem 1.5rem; font-weight: 500; color: var(--brand-dark); }
.list-group-item:hover, .list-group-item.active { background-color: #e8f5e9 !important; color: var(--brand-green) !important; border-left: 4px solid var(--brand-green) !important; font-weight: bold; }

/* Cards 6-Grid */
.kms-card { border: none; border-radius: 15px; box-shadow: 0 10px 20px rgba(0,0,0,0.1); transition: transform 0.3s ease; overflow: hidden; position: relative; }
.kms-card:hover { transform: translateY(-5px); }
.card-green { background: linear-gradient(135deg, var(--brand-green) 0%, #27ae60 100%); }
.card-orange { background: linear-gradient(135deg, var(--brand-orange) 0%, #d35400 100%); }
.card-cyan { background: linear-gradient(135deg, var(--brand-cyan) 0%, #0984e3 100%); }
.icon-bg { position: absolute; bottom: 15px; right: 15px; }

/* Wizard */
.kms-wizard-steps { display: flex; justify-content: space-around; list-style: none; padding: 0; margin: 0; background: #fff; border-radius: 10px 10px 0 0; border-bottom: 1px solid #eee; }
.kms-wizard-steps li { padding: 20px; color: #ccc; font-weight: bold; text-transform: uppercase; font-size: 0.9rem; position: relative; }
.kms-wizard-steps li.active { color: var(--brand-dark); }
.kms-wizard-steps li.active::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 3px; background: linear-gradient(90deg, var(--brand-green), var(--brand-cyan)); }
.step-icon { margin-right: 8px; }

.product-card-select input { display: none; }
.product-card-select .card { cursor: pointer; border: 2px solid #eee; transition: all 0.2s; }
.product-card-select input:checked + .card { border-color: var(--brand-green); background-color: #f0fff4; box-shadow: 0 5px 15px rgba(46, 204, 113, 0.3); }

/* Form Styles */
.form-select, .form-control { padding: 12px; border-radius: 8px; border: 1px solid #ddd; }
.form-select:focus, .form-control:focus { border-color: var(--brand-green); box-shadow: 0 0 0 0.2rem rgba(46, 204, 113, 0.25); }