/* ============================================================
 * bootstrap-pink-override.css
 * ============================================================
 * Pink / Rose theme override for Bootstrap 3
 * Load this file AFTER bootstrap.css — do NOT edit bootstrap.css
 * ============================================================ */

/* ============================================================
   1. ROOT VARIABLES (Design Tokens)
   ============================================================ */
:root {
    --pink-primary:  #f4346f;
    --pink-dark:     #c01f55;
    --pink-hover:    #d42660;
    --pink-light:    #ff6b9d;
    --pink-soft:     #fff0f5;
    --pink-disabled: #fff8fb;
    --pink-active:   #ffe0ec;
    --pink-border:   #ffd6e7;
    --pink-gradient: linear-gradient(135deg, #f4346f 0%, #ff6b9d 100%);
    --pink-shadow:   0 4px 20px rgba(244, 52, 111, 0.18);
    
    /* Radii tokens */
    --card-radius:   16px;
    --input-radius:  12px;
    --btn-radius:    12px;
    --modal-radius:  18px;
}

/* ============================================================
   2. GLOBAL LINKS
   ============================================================ */
a {
    color: var(--pink-primary);
}
a:hover,
a:focus {
    color: var(--pink-dark);
}

/* ============================================================
   3. FORM CONTROLS
   ============================================================ */
.form-control {
    padding: 10px 14px;
    font-size: 14px;
    color: #333;
    background-color: #fff;
    border: 1.5px solid var(--pink-border);
    border-radius: var(--input-radius);
    box-shadow: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.form-control:focus {
    border-color: var(--pink-primary);
    outline: 0;
    box-shadow: 0 0 0 3px rgba(244, 52, 111, 0.10);
}

/* Placeholders */
.form-control::-webkit-input-placeholder { color: #c0a0af; }
.form-control::-moz-placeholder          { color: #c0a0af; opacity: 1; }
.form-control:-ms-input-placeholder      { color: #c0a0af; }

.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
    background-color: var(--pink-disabled);
    border-color: var(--pink-border);
    opacity: 1;
}

textarea.form-control {
    height: auto;
    min-height: 90px;
}

select.form-control {
    height: 48px;
}

/* Sizes */
.form-group-sm .form-control { border-radius: calc(var(--input-radius) - 2px); }
.form-group-lg .form-control { border-radius: calc(var(--input-radius) + 2px); }

/* Semantic Validation States */
.has-success .form-control { border-color: #5cb85c; }
.has-success .form-control:focus {
    border-color: #449d44;
    box-shadow: 0 0 0 3px rgba(92, 184, 92, 0.15);
}
.has-warning .form-control { border-color: #f0ad4e; }
.has-warning .form-control:focus {
    border-color: #ec971f;
    box-shadow: 0 0 0 3px rgba(240, 173, 78, 0.15);
}
.has-error .form-control { border-color: #e74c3c; }
.has-error .form-control:focus {
    border-color: #c0392b;
    box-shadow: 0 0 0 3px rgba(231, 76, 60, 0.15);
}

.input-group-addon {
    background-color: var(--pink-soft);
    border: 1.5px solid var(--pink-border);
    color: var(--pink-primary);
    border-radius: var(--input-radius);
}

/* ============================================================
   4. BUTTONS
   ============================================================ */
.btn {
    border-radius: var(--btn-radius);
    font-weight: 600;
    -webkit-transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease;
    transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease;
}
.btn:active,
.btn.active {
    box-shadow: none;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

/* --- Primary Button --- */
.btn-primary {
    color: #fff;
    background-color: var(--pink-primary);
    border-color: var(--pink-primary);
    background-image: var(--pink-gradient);
    box-shadow: 0 6px 20px rgba(244, 52, 111, 0.35);
}
.btn-primary:focus,
.btn-primary.focus {
    color: #fff;
    background-color: var(--pink-hover);
    border-color: var(--pink-hover);
    background-image: none;
    box-shadow: 0 0 0 3px rgba(244, 52, 111, 0.30);
}
.btn-primary:hover {
    color: #fff;
    background-color: var(--pink-hover);
    border-color: var(--pink-hover);
    background-image: linear-gradient(135deg, var(--pink-hover) 0%, var(--pink-primary) 100%);
    box-shadow: 0 10px 28px rgba(244, 52, 111, 0.45);
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
    color: #fff;
    background-color: var(--pink-dark);
    border-color: var(--pink-dark);
    background-image: none;
    box-shadow: 0 4px 10px rgba(244, 52, 111, 0.25);
}
.btn-primary:active:hover, .btn-primary.active:hover,
.open > .dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus, .btn-primary.active:focus,
.open > .dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus, .btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary.focus {
    color: #fff;
    background-color: var(--pink-dark);
    border-color: var(--pink-dark);
}
.btn-primary.disabled, .btn-primary[disabled], fieldset[disabled] .btn-primary,
.btn-primary.disabled:hover, .btn-primary[disabled]:hover, fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus, .btn-primary[disabled]:focus, fieldset[disabled] .btn-primary:focus {
    background-color: var(--pink-primary);
    border-color: var(--pink-primary);
    background-image: none;
    box-shadow: none;
    -webkit-transform: none;
    transform: none;
}
.btn-primary .badge {
    color: var(--pink-primary);
    background-color: #fff;
}

/* --- Default Button (Outline Pink) --- */
.btn-default {
    color: var(--pink-primary);
    background-color: #fff;
    border-color: var(--pink-border);
    border-width: 1.5px;
}
.btn-default:focus,
.btn-default.focus {
    color: var(--pink-primary);
    background-color: var(--pink-soft);
    border-color: var(--pink-primary);
}
.btn-default:hover {
    color: var(--pink-primary);
    background-color: var(--pink-soft);
    border-color: var(--pink-primary);
    box-shadow: 0 4px 12px rgba(244, 52, 111, 0.15);
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px);
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
    color: var(--pink-hover);
    background-color: var(--pink-active);
    border-color: var(--pink-primary);
}
.btn-default:active:hover, .btn-default.active:hover,
.open > .dropdown-toggle.btn-default:hover,
.btn-default:active:focus, .btn-default.active:focus,
.open > .dropdown-toggle.btn-default:focus,
.btn-default:active.focus, .btn-default.active.focus,
.open > .dropdown-toggle.btn-default.focus {
    color: var(--pink-hover);
    background-color: var(--pink-active);
    border-color: var(--pink-primary);
}
.btn-default.disabled, .btn-default[disabled], fieldset[disabled] .btn-default,
.btn-default.disabled:hover, .btn-default[disabled]:hover, fieldset[disabled] .btn-default:hover {
    background-color: #fff;
    border-color: var(--pink-border);
}
.btn-default .badge {
    color: #fff;
    background-color: var(--pink-primary);
}

/* --- Info Button (Remapped to Pink Light) --- */
.btn-info {
    color: #fff;
    background-color: var(--pink-light);
    border-color: var(--pink-light);
}
.btn-info:focus,
.btn-info.focus {
    color: #fff;
    background-color: var(--pink-primary);
    border-color: var(--pink-primary);
}
.btn-info:hover {
    color: #fff;
    background-color: var(--pink-primary);
    border-color: var(--pink-primary);
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px);
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
    color: #fff;
    background-color: var(--pink-hover);
    border-color: var(--pink-hover);
}
.btn-info .badge {
    color: var(--pink-light);
    background-color: #fff;
}

/* Semantics Radii Alignments */
.btn-success, .btn-warning, .btn-danger { border-radius: var(--btn-radius); }

/* Link Button */
.btn-link, .btn-link:hover, .btn-link:focus { color: var(--pink-primary); }
.btn-link:hover { color: var(--pink-dark); }

/* ============================================================
   5. NAVBAR
   ============================================================ */
.navbar {
    border-radius: var(--input-radius);
    border: 1px solid var(--pink-border);
}

/* Default Navbar */
.navbar-default {
    background-color: #fff;
    border-color: var(--pink-border);
    box-shadow: 0 2px 16px rgba(244, 52, 111, 0.08);
}
.navbar-default .navbar-brand {
    color: var(--pink-primary);
    font-weight: 700;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
    color: var(--pink-dark);
}
.navbar-default .navbar-text {
    color: var(--pink-primary);
}
.navbar-default .navbar-nav > li > a {
    color: #555;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus,
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus,
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
    color: var(--pink-primary);
    background-color: var(--pink-soft);
}
.navbar-default .navbar-nav > .disabled > a,
.navbar-default .navbar-nav > .disabled > a:hover,
.navbar-default .navbar-nav > .disabled > a:focus {
    color: #ccc;
}
.navbar-default .navbar-toggle {
    border-color: var(--pink-border);
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
    background-color: var(--pink-soft);
}
.navbar-default .navbar-toggle .icon-bar {
    background-color: var(--pink-primary);
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
    border-color: var(--pink-border);
}
.navbar-default .navbar-link { color: var(--pink-primary); }
.navbar-default .navbar-link:hover { color: var(--pink-dark); }
.navbar-default .btn-link { color: var(--pink-primary); }
.navbar-default .btn-link:hover, .navbar-default .btn-link:focus { color: var(--pink-dark); }

/* Inverse Navbar */
.navbar-inverse {
    background-color: var(--pink-primary);
    border-color: var(--pink-hover);
    background-image: var(--pink-gradient);
}
.navbar-inverse .navbar-brand {
    color: #fff;
    font-weight: 700;
}
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
    color: #fff;
}
.navbar-inverse .navbar-text       { color: rgba(255,255,255,0.85); }
.navbar-inverse .navbar-nav > li > a { color: rgba(255,255,255,0.80); }
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
    color: #fff;
    background-color: rgba(0,0,0,0.10);
}
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus,
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
    color: #fff;
    background-color: rgba(0,0,0,0.15);
}
.navbar-inverse .navbar-toggle {
    border-color: rgba(255,255,255,0.3);
}
.navbar-inverse .navbar-toggle:hover,
.navbar-inverse .navbar-toggle:focus {
    background-color: rgba(0,0,0,0.10);
}
.navbar-inverse .navbar-toggle .icon-bar { background-color: #fff; }
.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form { border-color: rgba(0,0,0,0.15); }
.navbar-inverse .navbar-link { color: rgba(255,255,255,0.85); }
.navbar-inverse .navbar-link:hover { color: #fff; }

/* ============================================================
   6. NAV TABS & PILLS
   ============================================================ */
.nav-tabs {
    border-bottom: 2px solid var(--pink-border);
}
.nav-tabs > li > a {
    border-radius: 10px 10px 0 0;
    color: #888;
    border: 1px solid transparent;
}
.nav-tabs > li > a:hover {
    border-color: var(--pink-border) var(--pink-border) transparent;
    background-color: var(--pink-soft);
    color: var(--pink-primary);
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    color: var(--pink-primary);
    background-color: #fff;
    border: 1px solid var(--pink-border);
    border-bottom-color: transparent;
    font-weight: 700;
}

.nav-pills > li > a {
    border-radius: 10px;
    color: #888;
}
.nav-pills > li > a:hover {
    background-color: var(--pink-soft);
    color: var(--pink-primary);
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
    color: #fff;
    background-color: var(--pink-primary);
}

/* ============================================================
   7. DROPDOWN MENU
   ============================================================ */
.dropdown-menu {
    border: 1.5px solid var(--pink-border);
    border-radius: 14px;
    box-shadow: 0 8px 24px rgba(244, 52, 111, 0.12);
    padding: 6px 0;
}
.dropdown-menu > li > a {
    color: #333;
    padding: 8px 20px;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
    color: var(--pink-primary);
    background-color: var(--pink-soft);
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
    color: #fff;
    background-color: var(--pink-primary);
}
.dropdown-menu .divider {
    background-color: var(--pink-border);
}
.dropdown-header {
    color: var(--pink-primary);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 700;
    padding: 8px 20px 4px;
}

/* ============================================================
   8. ALERTS
   ============================================================ */
.alert {
    border-radius: var(--input-radius);
    border-left-width: 4px;
}
.alert-danger {
    color: #a94442;
    background-color: #fff5f5;
    border-color: var(--pink-primary);
    border-left-color: #e53e3e;
}
.alert-danger hr { border-top-color: var(--pink-border); }
.alert-danger .alert-link { color: #843534; }

.alert-success {
    border-left-color: #38a169;
}

.alert-info {
    color: var(--pink-dark);
    background-color: var(--pink-soft);
    border-color: var(--pink-border);
    border-left-color: var(--pink-primary);
}
.alert-info hr { border-top-color: var(--pink-border); }
.alert-info .alert-link { color: #a0103f; }

/* ============================================================
   9. LABELS & BADGES
   ============================================================ */
.label { border-radius: 6px; }

.label-primary { background-color: var(--pink-primary); }
.label-primary[href]:hover, .label-primary[href]:focus { background-color: var(--pink-dark); }
.label-default { background-color: #888; }
.label-info { background-color: var(--pink-light); }
.label-info[href]:hover, .label-info[href]:focus { background-color: var(--pink-primary); }

.badge {
    border-radius: 10px;
    font-weight: 700;
}
.nav-pills > .active > a > .badge {
    color: var(--pink-primary);
    background-color: #fff;
}

/* ============================================================
   10. BREADCRUMB
   ============================================================ */
.breadcrumb {
    background-color: var(--pink-soft);
    border: 1px solid var(--pink-border);
    border-radius: 10px;
    padding: 10px 16px;
}
.breadcrumb > li + li:before { color: var(--pink-primary); }
.breadcrumb > .active {
    color: var(--pink-primary);
    font-weight: 700;
}
.breadcrumb a { color: var(--pink-primary); }

/* ============================================================
   11. PAGINATION
   ============================================================ */
.pagination { border-radius: var(--input-radius); }
.pagination > li > a,
.pagination > li > span {
    color: var(--pink-primary);
    background-color: #fff;
    border-color: var(--pink-border);
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}
.pagination > li > a:hover, .pagination > li > span:hover,
.pagination > li > a:focus, .pagination > li > span:focus {
    color: var(--pink-dark);
    background-color: var(--pink-soft);
    border-color: var(--pink-border);
}
.pagination > .active > a, .pagination > .active > span,
.pagination > .active > a:hover, .pagination > .active > span:hover,
.pagination > .active > a:focus, .pagination > .active > span:focus {
    color: #fff;
    background-color: var(--pink-primary);
    border-color: var(--pink-primary);
    background-image: var(--pink-gradient);
}
.pagination > .disabled > span, .pagination > .disabled > span:hover, .pagination > .disabled > span:focus,
.pagination > .disabled > a, .pagination > .disabled > a:hover, .pagination > .disabled > a:focus {
    color: #ccc;
    background-color: #fff;
    border-color: var(--pink-border);
}

/* ============================================================
   12. PROGRESS BAR
   ============================================================ */
.progress {
    background-color: var(--pink-soft);
    border-radius: 20px;
    box-shadow: none;
    border: 1px solid var(--pink-border);
}
.progress-bar {
    background-color: var(--pink-primary);
    background-image: var(--pink-gradient);
    border-radius: 20px;
    box-shadow: none;
}
.progress-bar-success  { background-color: #5cb85c; }
.progress-bar-info     { background-color: var(--pink-light); background-image: none; }
.progress-bar-warning  { background-color: #f0ad4e; }
.progress-bar-danger   { background-color: #d9534f; }

/* ============================================================
   13. LIST GROUP
   ============================================================ */
.list-group-item {
    border: 1px solid var(--pink-border);
    background-color: #fff;
}
.list-group-item:first-child { border-top-left-radius: var(--input-radius); border-top-right-radius: var(--input-radius); }
.list-group-item:last-child { border-bottom-right-radius: var(--input-radius); border-bottom-left-radius: var(--input-radius); }

a.list-group-item, button.list-group-item { color: #555; }
a.list-group-item .list-group-item-heading, button.list-group-item .list-group-item-heading { color: #333; }
a.list-group-item:hover, button.list-group-item:hover,
a.list-group-item:focus, button.list-group-item:focus {
    color: var(--pink-primary);
    background-color: var(--pink-soft);
}
.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
    color: #fff;
    background-color: var(--pink-primary);
    border-color: var(--pink-primary);
    background-image: var(--pink-gradient);
}
.list-group-item.active .list-group-item-text,
.list-group-item.active:hover .list-group-item-text,
.list-group-item.active:focus .list-group-item-text {
    color: rgba(255,255,255,0.80);
}
.list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus {
    color: #aaa;
    background-color: var(--pink-disabled);
    border-color: var(--pink-border);
}

/* Variant contexts */
.list-group-item-success { color: #3c763d; background-color: #dff0d8; }
.list-group-item-info    { color: var(--pink-dark); background-color: var(--pink-soft); }
.list-group-item-warning { color: #8a6d3b; background-color: #fcf8e3; }
.list-group-item-danger  { color: #a94442; background-color: #f2dede; }

a.list-group-item-success:hover { background-color: #d0e9c6; }
a.list-group-item-info:hover    { background-color: var(--pink-active); color: #a0103f; }
a.list-group-item-warning:hover { background-color: #faf2cc; }
a.list-group-item-danger:hover  { background-color: #ebcccc; }

/* ============================================================
   14. PANELS
   ============================================================ */
.panel {
    border-radius: var(--card-radius);
    border: 1px solid var(--pink-border);
    box-shadow: 0 2px 16px rgba(244, 52, 111, 0.07);
}
.panel-heading {
    border-top-left-radius: calc(var(--card-radius) - 1px);
    border-top-right-radius: calc(var(--card-radius) - 1px);
}
.panel-footer {
    background-color: var(--pink-soft);
    border-top: 1px solid var(--pink-border);
    border-bottom-right-radius: calc(var(--card-radius) - 1px);
    border-bottom-left-radius: calc(var(--card-radius) - 1px);
}

/* Panel Default */
.panel-default { border-color: var(--pink-border); }
.panel-default > .panel-heading {
    color: #333;
    background-color: var(--pink-soft);
    border-color: var(--pink-border);
}
.panel-default > .panel-heading + .panel-collapse > .panel-body { border-top-color: var(--pink-border); }
.panel-default > .panel-heading .badge {
    color: var(--pink-soft);
    background-color: var(--pink-primary);
}
.panel-default > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: var(--pink-border); }

/* Panel Primary */
.panel-primary { border-color: var(--pink-primary); }
.panel-primary > .panel-heading {
    color: #fff;
    background-color: var(--pink-primary);
    border-color: var(--pink-primary);
    background-image: var(--pink-gradient);
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body { border-top-color: var(--pink-primary); }
.panel-primary > .panel-heading .badge {
    color: var(--pink-primary);
    background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: var(--pink-primary); }

/* Panel Info */
.panel-info { border-color: var(--pink-border); }
.panel-info > .panel-heading {
    color: var(--pink-dark);
    background-color: var(--pink-soft);
    border-color: var(--pink-border);
}
.panel-info > .panel-heading + .panel-collapse > .panel-body { border-top-color: var(--pink-border); }
.panel-info > .panel-heading .badge {
    color: var(--pink-soft);
    background-color: var(--pink-primary);
}
.panel-info > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: var(--pink-border); }

.panel-success, .panel-warning, .panel-danger { border-radius: var(--card-radius); }
.panel-success > .panel-heading, .panel-warning > .panel-heading, .panel-danger > .panel-heading {
    border-top-left-radius: calc(var(--card-radius) - 1px); border-top-right-radius: calc(var(--card-radius) - 1px);
}

/* ============================================================
   15. WELLS
   ============================================================ */
.well {
    background-color: #fff;
    border: 1px solid var(--pink-border);
    border-radius: var(--card-radius);
    box-shadow: 0 2px 16px rgba(244, 52, 111, 0.08);
}
.well blockquote { border-color: var(--pink-border); }
.well-lg { border-radius: 18px; }
.well-sm { border-radius: var(--input-radius); }

/* ============================================================
   16. THUMBNAILS
   ============================================================ */
.thumbnail {
    border: 1px solid var(--pink-border);
    border-radius: 14px;
    box-shadow: 0 2px 12px rgba(244, 52, 111, 0.08);
}
a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active {
    border-color: var(--pink-primary);
    box-shadow: 0 4px 16px rgba(244, 52, 111, 0.20);
}

/* ============================================================
   17. JUMBOTRON
   ============================================================ */
.jumbotron {
    background-color: var(--pink-soft);
    border: 1px solid var(--pink-border);
    border-radius: 20px;
}
.jumbotron h1, .jumbotron .h1 { color: var(--pink-primary); }

/* ============================================================
   18. CLOSE BUTTON
   ============================================================ */
.close { color: var(--pink-primary); opacity: 0.5; }
.close:hover, .close:focus { color: var(--pink-dark); opacity: 1; }

/* ============================================================
   19. MODAL
   ============================================================ */
.modal-content {
    border: 1px solid var(--pink-border);
    border-radius: var(--modal-radius);
    box-shadow: 0 8px 40px rgba(244, 52, 111, 0.18);
}
.modal-header {
    border-bottom: 1px solid var(--pink-border);
    border-top-left-radius: calc(var(--modal-radius) - 1px);
    border-top-right-radius: calc(var(--modal-radius) - 1px);
}
.modal-footer {
    border-top: 1px solid var(--pink-border);
    border-bottom-right-radius: calc(var(--modal-radius) - 1px);
    border-bottom-left-radius: calc(var(--modal-radius) - 1px);
    background-color: var(--pink-soft);
}
.modal-title { color: var(--pink-primary); font-weight: 700; }

/* ============================================================
   20. POPOVERS & TOOLTIPS
   ============================================================ */
.popover {
    border: 1.5px solid var(--pink-border);
    border-radius: 14px;
    box-shadow: 0 6px 24px rgba(244, 52, 111, 0.14);
}
.popover-title {
    background-color: var(--pink-soft);
    border-bottom: 1px solid var(--pink-border);
    border-top-left-radius: 13px;
    border-top-right-radius: 13px;
    color: var(--pink-primary);
    font-weight: 700;
}
.popover.top > .arrow:after    { border-top-color:    var(--pink-border); }
.popover.right > .arrow:after  { border-right-color:  var(--pink-border); }
.popover.bottom > .arrow:after { border-bottom-color: var(--pink-border); }
.popover.left > .arrow:after   { border-left-color:   var(--pink-border); }

.tooltip-inner {
    background-color: var(--pink-primary);
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    padding: 5px 10px;
}
.tooltip.top .tooltip-arrow    { border-top-color:    var(--pink-primary); }
.tooltip.right .tooltip-arrow  { border-right-color:  var(--pink-primary); }
.tooltip.bottom .tooltip-arrow { border-bottom-color: var(--pink-primary); }
.tooltip.left .tooltip-arrow   { border-left-color:   var(--pink-primary); }

/* ============================================================
   21. TABLES
   ============================================================ */
.table > thead > tr > th {
    border-bottom: 2px solid var(--pink-border);
    color: var(--pink-primary);
    font-weight: 700;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td,
.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th {
    border-top: 1px solid var(--pink-border);
}
.table-bordered {
    border: 1px solid var(--pink-border);
    border-radius: var(--input-radius);
}
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
    border: 1px solid var(--pink-border);
}
.table-striped > tbody > tr:nth-of-type(odd) { background-color: var(--pink-disabled); }
.table-hover > tbody > tr:hover { background-color: var(--pink-soft); }
.table > tbody > tr.active > td, .table > tbody > tr.active > th,
.table > tbody > tr > td.active, .table > tbody > tr > th.active { background-color: var(--pink-soft); }

.table > tbody > tr.success > td { background-color: #dff0d8; }
.table > tbody > tr.info    > td { background-color: var(--pink-soft); }
.table > tbody > tr.warning > td { background-color: #fcf8e3; }
.table > tbody > tr.danger  > td { background-color: #f2dede; }

.panel > .table > thead > tr > th,
.panel > .table-responsive > .table > thead > tr > th {
    border-bottom-color: var(--pink-border);
}

/* ============================================================
   22. UTILITIES
   ============================================================ */
.text-primary { color: var(--pink-primary) !important; }
a.text-primary:hover, a.text-primary:focus { color: var(--pink-dark) !important; }

.bg-primary {
    color: #fff;
    background-color: var(--pink-primary) !important;
}
a.bg-primary:hover, a.bg-primary:focus {
    background-color: var(--pink-dark) !important;
}