/**
 * Genesis Doctor - Custom Styles v5.0
 * Modern Admin Dashboard Theme with Enhanced Form Elements
 */

:root {
    /* Color Palette */
    --primary: #4e73df;
    --primary-dark: #2e59d9;
    --secondary: #858796;
    --success: #1cc88a;
    --info: #36b9cc;
    --warning: #f6c23e;
    --danger: #e74a3b;
    --light: #f8f9fc;
    --dark: #5a5c69;
    --white: #ffffff;

    /* Layout */
    --sidebar-bg: #ffffff;
    --sidebar-width: 260px;
    --header-height: 70px;
    --content-bg: #f5f7fa;

    /* Shadows */
    --shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    --shadow-md: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    --shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
    --border-radius: 0.5rem;
}

/* ========================================
   RESET & BASE
   ======================================== */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #5a5c69;
    background-color: var(--content-bg);
    overflow-x: hidden;
}

a {
    color: var(--primary);
    text-decoration: none;
    transition: all 0.2s ease;
}

a:hover {
    color: var(--primary-dark);
}

/* ========================================
   LAYOUT STRUCTURE
   ======================================== */
.wrapper {
    display: flex;
    min-height: 100vh;
}

/* Sidebar */
.main-sidebar {
    width: var(--sidebar-width);
    background-color: var(--sidebar-bg);
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    z-index: 1040;
    box-shadow: 2px 0 10px rgba(0, 0, 0, 0.05);
    display: flex;
    flex-direction: column;
    transition: margin-left 0.3s ease;
}

.brand-link {
    height: var(--header-height);
    display: flex;
    align-items: center;
    padding: 0 1.5rem;
    border-bottom: 1px solid #e3e6f0;
    color: var(--primary);
    font-size: 1.25rem;
    font-weight: 700;
    text-decoration: none;
}

.brand-link i {
    margin-right: 0.5rem;
    font-size: 1.5rem;
}

.brand-link:hover {
    color: var(--primary-dark);
}

.sidebar {
    flex: 1;
    overflow-y: auto;
    padding: 1rem 0;
}

.sidebar::-webkit-scrollbar {
    width: 6px;
}

.sidebar::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.1);
    border-radius: 3px;
}

/* Topbar */
.main-header {
    height: var(--header-height);
    background-color: var(--white);
    border-bottom: 1px solid #e3e6f0;
    position: fixed;
    top: 0;
    left: var(--sidebar-width);
    right: 0;
    z-index: 1030;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 1.5rem;
    transition: left 0.3s ease;
}

/* Content Wrapper */
.content-wrapper {
    flex: 1;
    margin-left: var(--sidebar-width);
    margin-top: var(--header-height);
    padding: 2rem;
    background-color: var(--content-bg);
    min-height: calc(100vh - var(--header-height));
    transition: margin-left 0.3s ease;
}

.content-header {
    margin-bottom: 1.5rem;
}

.content-header h1 {
    font-size: 1.75rem;
    font-weight: 600;
    color: #2c3e50;
    margin: 0;
}

/* Footer */
.main-footer {
    background-color: var(--white);
    border-top: 1px solid #e3e6f0;
    padding: 1rem 2rem;
    margin-left: var(--sidebar-width);
    text-align: center;
    color: #858796;
    font-size: 0.875rem;
    transition: margin-left 0.3s ease;
}

/* ========================================
   SIDEBAR MENU
   ======================================== */
.nav-sidebar {
    list-style: none;
    padding: 0;
    margin: 0;
}

.nav-item {
    margin: 0.25rem 0.75rem;
}

.nav-link {
    display: flex;
    align-items: center;
    padding: 0.75rem 1rem;
    color: #5a5c69;
    border-radius: 0.5rem;
    transition: all 0.2s ease;
    font-size: 0.95rem;
}

.nav-link:hover {
    background-color: #f8f9fc;
    color: var(--primary);
}

.nav-link.active {
    background-color: #e7f0ff;
    color: var(--primary);
    font-weight: 500;
}

.nav-icon {
    margin-right: 0.75rem;
    width: 1.25rem;
    text-align: center;
    font-size: 1.1rem;
}

/* Treeview */
.nav-treeview {
    list-style: none;
    padding: 0;
    margin: 0;
    display: none;
}

.nav-treeview .nav-link {
    padding-left: 3rem;
    font-size: 0.9rem;
}

.menu-open>.nav-treeview {
    display: block;
}

/* ========================================
   NAVBAR
   ======================================== */
.navbar-nav {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    align-items: center;
}

.navbar-nav .nav-item {
    margin: 0 0.5rem;
}

.navbar-nav .nav-link {
    color: #5a5c69;
    padding: 0.5rem;
    display: flex;
    align-items: center;
}

.navbar-nav .nav-link:hover {
    color: var(--primary);
    background: transparent;
}

/* Dropdown */
.dropdown {
    position: relative;
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 1000;
    display: none;
    min-width: 12rem;
    padding: 0.5rem 0;
    margin: 0.5rem 0 0;
    font-size: 0.9rem;
    color: #212529;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.05);
    border-radius: 0.5rem;
    box-shadow: var(--shadow-md);
}

.dropdown-menu.show {
    display: block;
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: 0.5rem 1rem;
    clear: both;
    font-weight: 400;
    color: #212529;
    text-align: inherit;
    background-color: transparent;
    border: 0;
    cursor: pointer;
}

.dropdown-item:hover {
    background-color: #f8f9fc;
    color: var(--primary);
}

.dropdown-divider {
    height: 0;
    margin: 0.5rem 0;
    overflow: hidden;
    border-top: 1px solid #e9ecef;
}

/* ========================================
   CARDS & COMPONENTS
   ======================================== */
.card {
    background-color: var(--white);
    border: none;
    border-radius: var(--border-radius);
    box-shadow: 0 0.15rem 1.75rem 0 rgba(58, 59, 69, 0.15);
    margin-bottom: 1.5rem;
}

.card-header {
    padding: 1rem 1.25rem;
    background-color: transparent;
    border-bottom: 1px solid #e3e6f0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.card-title {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: #2c3e50;
}

.card-body {
    padding: 1.25rem;
}

.card-footer {
    padding: 1rem 1.25rem;
    background-color: #f8f9fc;
    border-top: 1px solid #e3e6f0;
}

/* Small Boxes */
.small-box {
    border-radius: var(--border-radius);
    position: relative;
    display: block;
    margin-bottom: 1.5rem;
    box-shadow: 0 0.15rem 1.75rem 0 rgba(58, 59, 69, 0.15);
    color: #fff;
    overflow: hidden;
    transition: transform 0.2s ease;
}

.small-box:hover {
    transform: translateY(-5px);
}

.small-box>.inner {
    padding: 1.5rem;
}

.small-box h3 {
    font-size: 2rem;
    font-weight: 700;
    margin: 0 0 0.5rem 0;
}

.small-box p {
    font-size: 0.95rem;
    margin: 0;
    opacity: 0.9;
}

.small-box .icon {
    position: absolute;
    top: 1rem;
    right: 1rem;
    font-size: 3.5rem;
    color: rgba(0, 0, 0, 0.15);
}

.small-box-footer {
    display: block;
    padding: 0.5rem;
    text-align: center;
    background-color: rgba(0, 0, 0, 0.1);
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    font-size: 0.875rem;
}

.small-box-footer:hover {
    background-color: rgba(0, 0, 0, 0.15);
    color: #fff;
}

/* Info Boxes */
.info-box {
    min-height: 90px;
    background: var(--white);
    width: 100%;
    box-shadow: 0 0.15rem 1.75rem 0 rgba(58, 59, 69, 0.15);
    border-radius: var(--border-radius);
    margin-bottom: 1.5rem;
    display: flex;
    padding: 1rem;
}

.info-box-icon {
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    font-size: 2.5rem;
    color: #fff;
}

.info-box-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 1rem;
    flex: 1;
}

.info-box-text {
    font-size: 0.875rem;
    color: #858796;
    margin-bottom: 0.25rem;
}

.info-box-number {
    font-size: 1.5rem;
    font-weight: 700;
    color: #2c3e50;
}

/* ========================================
   BUTTONS
   ======================================== */
.btn {
    display: inline-block;
    font-weight: 500;
    text-align: center;
    vertical-align: middle;
    user-select: none;
    padding: 0.5rem 1rem;
    font-size: 0.95rem;
    line-height: 1.5;
    border-radius: 0.5rem;
    transition: all 0.2s ease;
    border: 1px solid transparent;
    cursor: pointer;
}

.btn:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-sm);
}

.btn-primary {
    background-color: var(--primary);
    color: #fff;
}

.btn-success {
    background-color: var(--success);
    color: #fff;
}

.btn-danger {
    background-color: var(--danger);
    color: #fff;
}

.btn-info {
    background-color: var(--info);
    color: #fff;
}

.btn-warning {
    background-color: var(--warning);
    color: #212529;
}

.btn-secondary {
    background-color: var(--secondary);
    color: #fff;
}

.btn-sm {
    padding: 0.375rem 0.75rem;
    font-size: 0.875rem;
}

.btn-lg {
    padding: 0.75rem 1.5rem;
    font-size: 1.1rem;
}

.btn-block {
    display: block;
    width: 100%;
}

/* ========================================
   UTILITIES
   ======================================== */
.bg-primary {
    background-color: var(--primary) !important;
    color: #fff;
}

.bg-success {
    background-color: var(--success) !important;
    color: #fff;
}

.bg-info {
    background-color: var(--info) !important;
    color: #fff;
}

.bg-warning {
    background-color: var(--warning) !important;
    color: #212529;
}

.bg-danger {
    background-color: var(--danger) !important;
    color: #fff;
}

.bg-secondary {
    background-color: var(--secondary) !important;
    color: #fff;
}

.bg-light {
    background-color: var(--light) !important;
}

.bg-gradient-primary {
    background: linear-gradient(180deg, var(--primary) 10%, var(--primary-dark) 100%);
}

.bg-gradient-success {
    background: linear-gradient(180deg, var(--success) 10%, #17a673 100%);
}

.bg-gradient-info {
    background: linear-gradient(180deg, var(--info) 10%, #2c9faf 100%);
}

.bg-gradient-warning {
    background: linear-gradient(180deg, var(--warning) 10%, #dda20a 100%);
}

.bg-gradient-danger {
    background: linear-gradient(180deg, var(--danger) 10%, #be2617 100%);
}

.text-center {
    text-align: center !important;
}

.text-right {
    text-align: right !important;
}

.text-muted {
    color: #858796 !important;
}

.text-primary {
    color: var(--primary) !important;
}

.text-success {
    color: var(--success) !important;
}

.text-danger {
    color: var(--danger) !important;
}

.text-warning {
    color: var(--warning) !important;
}

.text-white {
    color: #fff !important;
}

.text-white-50 {
    color: rgba(255, 255, 255, 0.5) !important;
}

.font-weight-bold {
    font-weight: 700 !important;
}

.float-right {
    float: right !important;
}

.float-sm-right {
    float: right !important;
}

.d-none {
    display: none !important;
}

.d-block {
    display: block !important;
}

.d-flex {
    display: flex !important;
}

.d-inline-block {
    display: inline-block !important;
}

.d-sm-inline-block {
    display: inline-block !important;
}

.align-items-center {
    align-items: center !important;
}

.justify-content-center {
    justify-content: center !important;
}

.m-0 {
    margin: 0 !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.mb-2 {
    margin-bottom: 0.5rem !important;
}

.mb-3 {
    margin-bottom: 1rem !important;
}

.mb-4 {
    margin-bottom: 1.5rem !important;
}

.mt-2 {
    margin-top: 0.5rem !important;
}

.mt-3 {
    margin-top: 1rem !important;
}

.mt-4 {
    margin-top: 1.5rem !important;
}

.mr-2 {
    margin-right: 0.5rem !important;
}

.ml-2 {
    margin-left: 0.5rem !important;
}

.ml-auto {
    margin-left: auto !important;
}

.p-0 {
    padding: 0 !important;
}

.p-3 {
    padding: 1rem !important;
}

.p-4 {
    padding: 1.5rem !important;
}

.py-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

.pl-3 {
    padding-left: 1rem !important;
}

/* ========================================
   GRID SYSTEM
   ======================================== */
.container-fluid {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

[class^="col-"] {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

.col-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

.col-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%;
}

@media (min-width: 768px) {
    .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-md-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-md-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

@media (min-width: 992px) {
    .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }
}

/* ========================================
   TABLES
   ======================================== */
.table {
    width: 100%;
    margin-bottom: 1rem;
    color: #5a5c69;
    border-collapse: collapse;
}

.table th,
.table td {
    padding: 0.75rem;
    vertical-align: top;
    border-top: 1px solid #e3e6f0;
}

.table thead th {
    vertical-align: bottom;
    border-bottom: 2px solid #e3e6f0;
    background-color: #f8f9fc;
    font-weight: 600;
    font-size: 0.875rem;
    text-transform: uppercase;
    color: #858796;
}

.table-hover tbody tr:hover {
    background-color: #f8f9fc;
}

/* ========================================
   ALERTS
   ======================================== */
.alert {
    position: relative;
    padding: 1rem 1.25rem;
    margin-bottom: 1rem;
    border: none;
    border-radius: 0.5rem;
    border-left: 4px solid;
}

.alert-success {
    color: #0f6848;
    background-color: #d4edda;
    border-left-color: var(--success);
}

.alert-danger {
    color: #721c24;
    background-color: #f8d7da;
    border-left-color: var(--danger);
}

.alert-warning {
    color: #856404;
    background-color: #fff3cd;
    border-left-color: var(--warning);
}

.alert-info {
    color: #0c5460;
    background-color: #d1ecf1;
    border-left-color: var(--info);
}

.alert i {
    margin-right: 0.5rem;
}

.alert .close {
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    padding: 0.5rem;
    color: inherit;
    background: transparent;
    border: none;
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
    opacity: 0.5;
    transition: opacity 0.2s;
}

.alert .close:hover {
    opacity: 1;
}

.alert-dismissible {
    padding-right: 3rem;
}

.fade {
    transition: opacity 0.15s linear;
}

.fade.show {
    opacity: 1;
}

/* ========================================
   BADGES
   ======================================== */
.badge {
    display: inline-block;
    padding: 0.35em 0.65em;
    font-size: 75%;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.35rem;
}

.badge-success {
    background-color: var(--success);
    color: #fff;
}

.badge-danger {
    background-color: var(--danger);
    color: #fff;
}

.badge-warning {
    background-color: var(--warning);
    color: #212529;
}

.badge-info {
    background-color: var(--info);
    color: #fff;
}

/* ========================================
   BREADCRUMB
   ======================================== */
.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    margin-bottom: 0;
    list-style: none;
    background-color: transparent;
}

.breadcrumb-item+.breadcrumb-item::before {
    display: inline-block;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    color: #858796;
    content: "/";
}

.breadcrumb-item.active {
    color: #858796;
}

/* ========================================
   ENHANCED FORM ELEMENTS
   ======================================== */

/* Form Groups */
.form-group {
    margin-bottom: 1.25rem;
}

.form-group label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
    color: #2c3e50;
    font-size: 0.95rem;
}

.form-group label .text-danger {
    color: var(--danger);
    margin-left: 0.25rem;
}

/* Input Fields */
.form-control {
    display: block;
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 0.95rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 2px solid #e3e6f0;
    border-radius: 0.5rem;
    transition: all 0.3s ease;
}

.form-control:hover {
    border-color: #d1d3e2;
}

.form-control:focus {
    color: #495057;
    background-color: #fff;
    border-color: var(--primary);
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(78, 115, 223, 0.15);
}

.form-control:disabled,
.form-control[readonly] {
    background-color: #f8f9fc;
    opacity: 1;
    cursor: not-allowed;
}

.form-control::placeholder {
    color: #a8b1c7;
    opacity: 1;
}

/* Form Control Sizes */
.form-control-sm {
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    border-radius: 0.35rem;
}

.form-control-lg {
    padding: 0.875rem 1.25rem;
    font-size: 1.1rem;
    border-radius: 0.6rem;
}

/* Select Dropdowns */
select.form-control {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px 12px;
    padding-right: 2.5rem;
    appearance: none;
    cursor: pointer;
}

select.form-control:focus {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%234e73df' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
}

select.form-control option {
    padding: 0.5rem;
}

/* Textarea */
textarea.form-control {
    min-height: 100px;
    resize: vertical;
}

/* Input Groups */
.input-group {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 100%;
}

.input-group>.form-control {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
    margin-bottom: 0;
}

.input-group-prepend,
.input-group-append {
    display: flex;
}

.input-group-text {
    display: flex;
    align-items: center;
    padding: 0.75rem 1rem;
    margin-bottom: 0;
    font-size: 0.95rem;
    font-weight: 500;
    line-height: 1.5;
    color: #495057;
    text-align: center;
    white-space: nowrap;
    background-color: #f8f9fc;
    border: 2px solid #e3e6f0;
    border-radius: 0.5rem;
    transition: all 0.3s ease;
}

.input-group>.input-group-prepend>.input-group-text {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0;
}

.input-group>.input-group-append>.input-group-text {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left: 0;
}

.input-group>.form-control:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group>.form-control:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group:focus-within .input-group-text {
    border-color: var(--primary);
    background-color: #e7f0ff;
    color: var(--primary);
}

/* Border Utilities for Input Groups */
.border-left-0 {
    border-left: 0 !important;
}

.border-right-0 {
    border-right: 0 !important;
}

.border-top-0 {
    border-top: 0 !important;
}

.border {
    border: 1px solid #e3e6f0 !important;
}

.rounded {
    border-radius: 0.5rem !important;
}

.rounded-lg {
    border-radius: 0.75rem !important;
}

.shadow {
    box-shadow: var(--shadow-md) !important;
}

.shadow-sm {
    box-shadow: var(--shadow-sm) !important;
}

.shadow-lg {
    box-shadow: var(--shadow-lg) !important;
}

/* Form Validation States */
.form-control.is-valid {
    border-color: var(--success);
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%231cc88a' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.form-control.is-invalid {
    border-color: var(--danger);
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e74a3b' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23e74a3b' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.invalid-feedback {
    display: block;
    margin-top: 0.25rem;
    font-size: 0.875rem;
    color: var(--danger);
}

.valid-feedback {
    display: block;
    margin-top: 0.25rem;
    font-size: 0.875rem;
    color: var(--success);
}

/* Small Text */
small.text-muted {
    display: block;
    margin-top: 0.25rem;
    font-size: 0.875rem;
    color: #858796;
}

/* Checkboxes and Radios */
.form-check {
    position: relative;
    display: block;
    padding-left: 1.75rem;
    margin-bottom: 0.5rem;
}

.form-check-input {
    position: absolute;
    margin-top: 0.3rem;
    margin-left: -1.75rem;
    width: 1.25rem;
    height: 1.25rem;
    cursor: pointer;
}

.form-check-input[type="checkbox"] {
    border-radius: 0.25rem;
}

.form-check-input[type="radio"] {
    border-radius: 50%;
}

.form-check-label {
    margin-bottom: 0;
    cursor: pointer;
    color: #5a5c69;
}

/* Custom Controls */
.custom-control {
    position: relative;
    display: block;
    min-height: 1.5rem;
    padding-left: 2rem;
}

.custom-control-input {
    position: absolute;
    left: 0;
    z-index: -1;
    width: 1.25rem;
    height: 1.5rem;
    opacity: 0;
}

.custom-control-label {
    position: relative;
    margin-bottom: 0;
    vertical-align: top;
    cursor: pointer;
    color: #5a5c69;
}

.custom-control-label::before {
    position: absolute;
    top: 0.125rem;
    left: -2rem;
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    pointer-events: none;
    content: "";
    background-color: #fff;
    border: 2px solid #d1d3e2;
    transition: all 0.3s ease;
}

.custom-control-label::after {
    position: absolute;
    top: 0.125rem;
    left: -2rem;
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    content: "";
    background: no-repeat 50% / 50% 50%;
}

.custom-checkbox .custom-control-label::before {
    border-radius: 0.35rem;
}

.custom-checkbox .custom-control-input:checked~.custom-control-label::before {
    background-color: var(--primary);
    border-color: var(--primary);
}

.custom-checkbox .custom-control-input:checked~.custom-control-label::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:focus~.custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(78, 115, 223, 0.25);
}

.custom-radio .custom-control-label::before {
    border-radius: 50%;
}

.custom-radio .custom-control-input:checked~.custom-control-label::before {
    background-color: var(--primary);
    border-color: var(--primary);
}

.custom-radio .custom-control-input:checked~.custom-control-label::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.custom-radio .custom-control-input:focus~.custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(78, 115, 223, 0.25);
}

/* File Input */
input[type="file"].form-control {
    padding: 0.5rem 1rem;
    height: auto;
}

/* Login Box Styles */
.login-box {
    width: 100%;
    max-width: 400px;
    padding: 15px;
}

/* ========================================
   RESPONSIVE
   ======================================== */
body.sidebar-collapse .main-sidebar {
    margin-left: calc(var(--sidebar-width) * -1);
}

body.sidebar-collapse .main-header {
    left: 0;
}

body.sidebar-collapse .content-wrapper {
    margin-left: 0;
}

body.sidebar-collapse .main-footer {
    margin-left: 0;
}

@media (max-width: 768px) {
    .main-sidebar {
        margin-left: calc(var(--sidebar-width) * -1);
    }

    .main-header {
        left: 0;
    }

    .content-wrapper {
        margin-left: 0;
    }

    .main-footer {
        margin-left: 0;
    }

    body.sidebar-open .main-sidebar {
        margin-left: 0;
    }
}

/* ========================================
   SCROLL TO TOP BUTTON
   ======================================== */
#scroll-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 1050;
    display: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
    color: white;
    border: none;
    box-shadow: 0 4px 15px rgba(78, 115, 223, 0.4);
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 1.25rem;
    align-items: center;
    justify-content: center;
}

#scroll-to-top:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 20px rgba(78, 115, 223, 0.6);
}

#scroll-to-top:active {
    transform: translateY(-2px);
}

#scroll-to-top i {
    display: block;
    line-height: 50px;
}

/* Animation for scroll button */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

#scroll-to-top.show {
    display: flex;
    animation: fadeInUp 0.3s ease;
}

/* ========================================
   LOADING STATES
   ======================================== */
.btn.loading {
    position: relative;
    color: transparent !important;
    pointer-events: none;
}

.btn.loading::after {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    top: 50%;
    left: 50%;
    margin-left: -8px;
    margin-top: -8px;
    border: 2px solid transparent;
    border-top-color: currentColor;
    border-radius: 50%;
    animation: spin 0.6s linear infinite;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}/ *   = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =  
       C O M P L E T E   G R I D   S Y S T E M   W I T H   A L L   B R E A K P O I N T S  
       = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =   * /  
  
 / *   B a s e   C o l u m n   C l a s s e s   ( M o b i l e   F i r s t )   * /  
 . c o l - 1   {  
         f l e x :   0   0   8 . 3 3 3 3 3 3 % ;  
         m a x - w i d t h :   8 . 3 3 3 3 3 3 % ;  
 }  
  
 . c o l - 2   {  
         f l e x :   0   0   1 6 . 6 6 6 6 6 7 % ;  
         m a x - w i d t h :   1 6 . 6 6 6 6 6 7 % ;  
 }  
  
 . c o l - 3   {  
         f l e x :   0   0   2 5 % ;  
         m a x - w i d t h :   2 5 % ;  
 }  
  
 . c o l - 4   {  
         f l e x :   0   0   3 3 . 3 3 3 3 3 3 % ;  
         m a x - w i d t h :   3 3 . 3 3 3 3 3 3 % ;  
 }  
  
 . c o l - 5   {  
         f l e x :   0   0   4 1 . 6 6 6 6 6 7 % ;  
         m a x - w i d t h :   4 1 . 6 6 6 6 6 7 % ;  
 }  
  
 . c o l - 6   {  
         f l e x :   0   0   5 0 % ;  
         m a x - w i d t h :   5 0 % ;  
 }  
  
 . c o l - 7   {  
         f l e x :   0   0   5 8 . 3 3 3 3 3 3 % ;  
         m a x - w i d t h :   5 8 . 3 3 3 3 3 3 % ;  
 }  
  
 . c o l - 8   {  
         f l e x :   0   0   6 6 . 6 6 6 6 6 7 % ;  
         m a x - w i d t h :   6 6 . 6 6 6 6 6 7 % ;  
 }  
  
 . c o l - 9   {  
         f l e x :   0   0   7 5 % ;  
         m a x - w i d t h :   7 5 % ;  
 }  
  
 . c o l - 1 0   {  
         f l e x :   0   0   8 3 . 3 3 3 3 3 3 % ;  
         m a x - w i d t h :   8 3 . 3 3 3 3 3 3 % ;  
 }  
  
 . c o l - 1 1   {  
         f l e x :   0   0   9 1 . 6 6 6 6 6 7 % ;  
         m a x - w i d t h :   9 1 . 6 6 6 6 6 7 % ;  
 }  
  
 . c o l - 1 2   {  
         f l e x :   0   0   1 0 0 % ;  
         m a x - w i d t h :   1 0 0 % ;  
 }  
  
 / *   S m a l l   d e v i c e s   ( l a n d s c a p e   p h o n e s ,   5 7 6 p x   a n d   u p )   * /  
 @ m e d i a   ( m i n - w i d t h :   5 7 6 p x )   {  
         . c o l - s m - 1   {  
                 f l e x :   0   0   8 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   8 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - s m - 2   {  
                 f l e x :   0   0   1 6 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   1 6 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - s m - 3   {  
                 f l e x :   0   0   2 5 % ;  
                 m a x - w i d t h :   2 5 % ;  
         }  
  
         . c o l - s m - 4   {  
                 f l e x :   0   0   3 3 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   3 3 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - s m - 5   {  
                 f l e x :   0   0   4 1 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   4 1 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - s m - 6   {  
                 f l e x :   0   0   5 0 % ;  
                 m a x - w i d t h :   5 0 % ;  
         }  
  
         . c o l - s m - 7   {  
                 f l e x :   0   0   5 8 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   5 8 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - s m - 8   {  
                 f l e x :   0   0   6 6 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   6 6 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - s m - 9   {  
                 f l e x :   0   0   7 5 % ;  
                 m a x - w i d t h :   7 5 % ;  
         }  
  
         . c o l - s m - 1 0   {  
                 f l e x :   0   0   8 3 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   8 3 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - s m - 1 1   {  
                 f l e x :   0   0   9 1 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   9 1 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - s m - 1 2   {  
                 f l e x :   0   0   1 0 0 % ;  
                 m a x - w i d t h :   1 0 0 % ;  
         }  
 }  
  
 / *   M e d i u m   d e v i c e s   ( t a b l e t s ,   7 6 8 p x   a n d   u p )   * /  
 @ m e d i a   ( m i n - w i d t h :   7 6 8 p x )   {  
         . c o l - m d - 1   {  
                 f l e x :   0   0   8 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   8 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - m d - 2   {  
                 f l e x :   0   0   1 6 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   1 6 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - m d - 3   {  
                 f l e x :   0   0   2 5 % ;  
                 m a x - w i d t h :   2 5 % ;  
         }  
  
         . c o l - m d - 4   {  
                 f l e x :   0   0   3 3 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   3 3 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - m d - 5   {  
                 f l e x :   0   0   4 1 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   4 1 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - m d - 6   {  
                 f l e x :   0   0   5 0 % ;  
                 m a x - w i d t h :   5 0 % ;  
         }  
  
         . c o l - m d - 7   {  
                 f l e x :   0   0   5 8 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   5 8 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - m d - 8   {  
                 f l e x :   0   0   6 6 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   6 6 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - m d - 9   {  
                 f l e x :   0   0   7 5 % ;  
                 m a x - w i d t h :   7 5 % ;  
         }  
  
         . c o l - m d - 1 0   {  
                 f l e x :   0   0   8 3 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   8 3 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - m d - 1 1   {  
                 f l e x :   0   0   9 1 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   9 1 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - m d - 1 2   {  
                 f l e x :   0   0   1 0 0 % ;  
                 m a x - w i d t h :   1 0 0 % ;  
         }  
 }  
  
 / *   L a r g e   d e v i c e s   ( d e s k t o p s ,   9 9 2 p x   a n d   u p )   * /  
 @ m e d i a   ( m i n - w i d t h :   9 9 2 p x )   {  
         . c o l - l g - 1   {  
                 f l e x :   0   0   8 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   8 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - l g - 2   {  
                 f l e x :   0   0   1 6 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   1 6 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - l g - 3   {  
                 f l e x :   0   0   2 5 % ;  
                 m a x - w i d t h :   2 5 % ;  
         }  
  
         . c o l - l g - 4   {  
                 f l e x :   0   0   3 3 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   3 3 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - l g - 5   {  
                 f l e x :   0   0   4 1 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   4 1 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - l g - 6   {  
                 f l e x :   0   0   5 0 % ;  
                 m a x - w i d t h :   5 0 % ;  
         }  
  
         . c o l - l g - 7   {  
                 f l e x :   0   0   5 8 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   5 8 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - l g - 8   {  
                 f l e x :   0   0   6 6 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   6 6 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - l g - 9   {  
                 f l e x :   0   0   7 5 % ;  
                 m a x - w i d t h :   7 5 % ;  
         }  
  
         . c o l - l g - 1 0   {  
                 f l e x :   0   0   8 3 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   8 3 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - l g - 1 1   {  
                 f l e x :   0   0   9 1 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   9 1 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - l g - 1 2   {  
                 f l e x :   0   0   1 0 0 % ;  
                 m a x - w i d t h :   1 0 0 % ;  
         }  
 }  
  
 / *   E x t r a   l a r g e   d e v i c e s   ( l a r g e   d e s k t o p s ,   1 2 0 0 p x   a n d   u p )   * /  
 @ m e d i a   ( m i n - w i d t h :   1 2 0 0 p x )   {  
         . c o l - x l - 1   {  
                 f l e x :   0   0   8 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   8 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - x l - 2   {  
                 f l e x :   0   0   1 6 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   1 6 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - x l - 3   {  
                 f l e x :   0   0   2 5 % ;  
                 m a x - w i d t h :   2 5 % ;  
         }  
  
         . c o l - x l - 4   {  
                 f l e x :   0   0   3 3 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   3 3 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - x l - 5   {  
                 f l e x :   0   0   4 1 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   4 1 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - x l - 6   {  
                 f l e x :   0   0   5 0 % ;  
                 m a x - w i d t h :   5 0 % ;  
         }  
  
         . c o l - x l - 7   {  
                 f l e x :   0   0   5 8 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   5 8 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - x l - 8   {  
                 f l e x :   0   0   6 6 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   6 6 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - x l - 9   {  
                 f l e x :   0   0   7 5 % ;  
                 m a x - w i d t h :   7 5 % ;  
         }  
  
         . c o l - x l - 1 0   {  
                 f l e x :   0   0   8 3 . 3 3 3 3 3 3 % ;  
                 m a x - w i d t h :   8 3 . 3 3 3 3 3 3 % ;  
         }  
  
         . c o l - x l - 1 1   {  
                 f l e x :   0   0   9 1 . 6 6 6 6 6 7 % ;  
                 m a x - w i d t h :   9 1 . 6 6 6 6 6 7 % ;  
         }  
  
         . c o l - x l - 1 2   {  
                 f l e x :   0   0   1 0 0 % ;  
                 m a x - w i d t h :   1 0 0 % ;  
         }  
 }  
  
 / *   = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =  
       M I N I M A L I S T   F O R M   S T Y L E S  
       = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =   * /  
  
 / *   F o r m   G r o u p s   * /  
 . f o r m - g r o u p   {  
         m a r g i n - b o t t o m :   1 . 2 5 r e m ;  
 }  
  
 . f o r m - g r o u p   l a b e l   {  
         d i s p l a y :   b l o c k ;  
         m a r g i n - b o t t o m :   0 . 5 r e m ;  
         f o n t - w e i g h t :   5 0 0 ;  
         c o l o r :   # 6 c 7 5 7 d ;  
         f o n t - s i z e :   0 . 8 7 5 r e m ;  
 }  
  
 / *   I n p u t   F i e l d s   -   M i n i m a l i s t   S t y l e   * /  
 . f o r m - c o n t r o l   {  
         d i s p l a y :   b l o c k ;  
         w i d t h :   1 0 0 % ;  
         p a d d i n g :   0 . 7 5 r e m   1 r e m ;  
         f o n t - s i z e :   0 . 9 5 r e m ;  
         f o n t - w e i g h t :   4 0 0 ;  
         l i n e - h e i g h t :   1 . 5 ;  
         c o l o r :   # 4 9 5 0 5 7 ;  
         b a c k g r o u n d - c o l o r :   # f f f ;  
         b a c k g r o u n d - c l i p :   p a d d i n g - b o x ;  
         b o r d e r :   1 p x   s o l i d   # d e e 2 e 6 ;  
         b o r d e r - r a d i u s :   0 . 3 7 5 r e m ;  
         t r a n s i t i o n :   b o r d e r - c o l o r   0 . 1 5 s   e a s e - i n - o u t ,   b o x - s h a d o w   0 . 1 5 s   e a s e - i n - o u t ;  
 }  
  
 . f o r m - c o n t r o l : f o c u s   {  
         c o l o r :   # 4 9 5 0 5 7 ;  
         b a c k g r o u n d - c o l o r :   # f f f ;  
         b o r d e r - c o l o r :   # 8 0 b d f f ;  
         o u t l i n e :   0 ;  
         b o x - s h a d o w :   0   0   0   0 . 2 r e m   r g b a ( 0 ,   1 2 3 ,   2 5 5 ,   0 . 2 5 ) ;  
 }  
  
 . f o r m - c o n t r o l : : p l a c e h o l d e r   {  
         c o l o r :   # a d b 5 b d ;  
         o p a c i t y :   1 ;  
 }  
  
 . f o r m - c o n t r o l : d i s a b l e d ,  
 . f o r m - c o n t r o l [ r e a d o n l y ]   {  
         b a c k g r o u n d - c o l o r :   # e 9 e c e f ;  
         o p a c i t y :   1 ;  
 }  
  
 / *   F o r m   C o n t r o l   S i z e s   * /  
 . f o r m - c o n t r o l - l g   {  
         p a d d i n g :   0 . 8 7 5 r e m   1 . 2 5 r e m ;  
         f o n t - s i z e :   1 . 1 2 5 r e m ;  
         b o r d e r - r a d i u s :   0 . 5 r e m ;  
 }  
  
 . f o r m - c o n t r o l - s m   {  
         p a d d i n g :   0 . 5 r e m   0 . 7 5 r e m ;  
         f o n t - s i z e :   0 . 8 7 5 r e m ;  
         b o r d e r - r a d i u s :   0 . 2 5 r e m ;  
 }  
  
 / *   S e l e c t   D r o p d o w n s   -   M i n i m a l i s t   S t y l e   * /  
 s e l e c t . f o r m - c o n t r o l   {  
         b a c k g r o u n d - i m a g e :   u r l ( " d a t a : i m a g e / s v g + x m l , % 3 c s v g   x m l n s = ' h t t p : / / w w w . w 3 . o r g / 2 0 0 0 / s v g '   v i e w B o x = ' 0   0   1 6   1 6 ' % 3 e % 3 c p a t h   f i l l = ' n o n e '   s t r o k e = ' % 2 3 3 4 3 a 4 0 '   s t r o k e - l i n e c a p = ' r o u n d '   s t r o k e - l i n e j o i n = ' r o u n d '   s t r o k e - w i d t h = ' 2 '   d = ' M 2   5 l 6   6   6 - 6 ' / % 3 e % 3 c / s v g % 3 e " ) ;  
         b a c k g r o u n d - r e p e a t :   n o - r e p e a t ;  
         b a c k g r o u n d - p o s i t i o n :   r i g h t   0 . 7 5 r e m   c e n t e r ;  
         b a c k g r o u n d - s i z e :   1 6 p x   1 2 p x ;  
         p a d d i n g - r i g h t :   2 . 5 r e m ;  
         a p p e a r a n c e :   n o n e ;  
         c u r s o r :   p o i n t e r ;  
 }  
  
 s e l e c t . f o r m - c o n t r o l : f o c u s   {  
         b a c k g r o u n d - i m a g e :   u r l ( " d a t a : i m a g e / s v g + x m l , % 3 c s v g   x m l n s = ' h t t p : / / w w w . w 3 . o r g / 2 0 0 0 / s v g '   v i e w B o x = ' 0   0   1 6   1 6 ' % 3 e % 3 c p a t h   f i l l = ' n o n e '   s t r o k e = ' % 2 3 8 0 b d f f '   s t r o k e - l i n e c a p = ' r o u n d '   s t r o k e - l i n e j o i n = ' r o u n d '   s t r o k e - w i d t h = ' 2 '   d = ' M 2   5 l 6   6   6 - 6 ' / % 3 e % 3 c / s v g % 3 e " ) ;  
 }  
  
 / *   T e x t a r e a   * /  
 t e x t a r e a . f o r m - c o n t r o l   {  
         m i n - h e i g h t :   1 0 0 p x ;  
         r e s i z e :   v e r t i c a l ;  
 }  
  
 / *   I n p u t   G r o u p s   * /  
 . i n p u t - g r o u p   {  
         p o s i t i o n :   r e l a t i v e ;  
         d i s p l a y :   f l e x ;  
         f l e x - w r a p :   w r a p ;  
         a l i g n - i t e m s :   s t r e t c h ;  
         w i d t h :   1 0 0 % ;  
 }  
  
 . i n p u t - g r o u p > . f o r m - c o n t r o l   {  
         p o s i t i o n :   r e l a t i v e ;  
         f l e x :   1   1   a u t o ;  
         w i d t h :   1 % ;  
         m i n - w i d t h :   0 ;  
         m a r g i n - b o t t o m :   0 ;  
 }  
  
 . i n p u t - g r o u p - p r e p e n d   {  
         d i s p l a y :   f l e x ;  
 }  
  
 . i n p u t - g r o u p - t e x t   {  
         d i s p l a y :   f l e x ;  
         a l i g n - i t e m s :   c e n t e r ;  
         p a d d i n g :   0 . 7 5 r e m   1 r e m ;  
         m a r g i n - b o t t o m :   0 ;  
         f o n t - s i z e :   0 . 9 5 r e m ;  
         f o n t - w e i g h t :   4 0 0 ;  
         l i n e - h e i g h t :   1 . 5 ;  
         c o l o r :   # 4 9 5 0 5 7 ;  
         t e x t - a l i g n :   c e n t e r ;  
         w h i t e - s p a c e :   n o w r a p ;  
         b a c k g r o u n d - c o l o r :   # e 9 e c e f ;  
         b o r d e r :   1 p x   s o l i d   # d e e 2 e 6 ;  
         b o r d e r - r a d i u s :   0 . 3 7 5 r e m ;  
 }  
  
 . i n p u t - g r o u p > . i n p u t - g r o u p - p r e p e n d > . i n p u t - g r o u p - t e x t   {  
         b o r d e r - t o p - r i g h t - r a d i u s :   0 ;  
         b o r d e r - b o t t o m - r i g h t - r a d i u s :   0 ;  
 }  
  
 . i n p u t - g r o u p > . f o r m - c o n t r o l : n o t ( : f i r s t - c h i l d )   {  
         b o r d e r - t o p - l e f t - r a d i u s :   0 ;  
         b o r d e r - b o t t o m - l e f t - r a d i u s :   0 ;  
 }  
 