:root {
    --ck-orange-300: #f9bf8a;
    --ck-orange-400: #f7a45a;
    --ck-orange-500: #ff7a1a;
    --ck-orange-600: #e76a10;
    --ck-cream-50: #fffbf6;
    --ck-cream-100: #fdf6ed;
    --ck-cream-200: #f8ecde;
    --ck-sand-300: #d7c1a4;
    --ck-ink-700: #4f3623;
    --ck-ink-900: #2d1d10;
    --ck-success: #2f8d50;
    --ck-danger: #d45c3f;
    --bs-primary: var(--ck-orange-500);
    --bs-primary-rgb: 249, 115, 22;
    --bs-secondary: #a88663;
    --bs-secondary-rgb: 168, 134, 99;
}

body {
    font-family: "Plus Jakarta Sans", "Manrope", sans-serif;
    color: var(--ck-ink-900);
    background:
        radial-gradient(1100px 500px at 100% -20%, rgba(255, 122, 26, 0.14), transparent 62%),
        radial-gradient(860px 440px at -8% 0%, rgba(247, 164, 90, 0.14), transparent 60%),
        linear-gradient(180deg, var(--ck-cream-50), #fdf6ed 58%, #fff3e6);
    min-height: 100vh;
}

.container {
    max-width: 1320px;
}

.navbar {
    border: 1px solid rgba(215, 193, 164, 0.5);
    background: rgba(255, 252, 247, 0.96) !important;
    backdrop-filter: blur(7px);
    border-radius: 14px;
    margin-top: 12px;
    box-shadow: 0 10px 24px rgba(109, 74, 38, 0.07);
}

.navbar .navbar-brand {
    color: var(--ck-ink-900) !important;
    font-weight: 800;
}

.navbar .nav-link {
    color: #664127 !important;
    font-weight: 600;
}

.navbar .nav-link:hover,
.navbar .nav-link.active {
    color: var(--ck-orange-600) !important;
}

.card,
.modal-content,
.accordion-item {
    border: 1px solid rgba(215, 193, 164, 0.5) !important;
    background: rgba(255, 252, 247, 0.96);
    border-radius: 16px;
    box-shadow: 0 12px 28px rgba(93, 58, 26, 0.07);
}

.card-header,
.modal-header,
.accordion-button {
    background: linear-gradient(180deg, #fff9f1 0%, #f9f0e3 100%) !important;
    color: var(--ck-ink-700) !important;
    border-bottom: 1px solid rgba(205, 183, 157, 0.4) !important;
}

.accordion-button:not(.collapsed) {
    box-shadow: none;
}

.table {
    --bs-table-striped-bg: #fdf4e9;
}

.table thead th,
.table .bg-light th {
    background: #fbf1e4 !important;
    color: #6d4729;
    border-color: #ecdcc9;
}

.table td,
.table th {
    border-color: #efdfcd;
}

.form-control,
.form-select,
textarea {
    border: 1px solid #e3ceba;
    border-radius: 12px;
    background: #fffaf4;
    color: var(--ck-ink-900);
}

.form-control:focus,
.form-select:focus,
textarea:focus {
    border-color: var(--ck-orange-400);
    box-shadow: 0 0 0 0.2rem rgba(245, 149, 69, 0.22);
    background: #fffefb;
}

.btn {
    border-radius: 11px;
    font-weight: 700;
}

.btn-primary {
    background: linear-gradient(135deg, var(--ck-orange-500), var(--ck-orange-400));
    border-color: transparent;
    color: #fff;
    box-shadow: 0 8px 18px rgba(242, 123, 34, 0.26);
}

.btn-primary:hover,
.btn-primary:focus {
    background: linear-gradient(135deg, var(--ck-orange-600), var(--ck-orange-500));
    border-color: transparent;
    color: #fff;
}

.btn-outline-primary {
    color: var(--ck-orange-600);
    border-color: #eca364;
    background: #fff8ef;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    color: #fff;
    background: var(--ck-orange-500);
    border-color: var(--ck-orange-500);
}

.btn-outline-secondary {
    color: #735038;
    border-color: #d1b59a;
    background: #fff8ef;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
    color: #fff;
    background: #9a714c;
    border-color: #9a714c;
}

.btn-success,
.bg-success,
.badge.bg-success {
    background-color: var(--ck-success) !important;
    border-color: var(--ck-success) !important;
}

.btn-danger,
.bg-danger,
.badge.bg-danger {
    background-color: var(--ck-danger) !important;
    border-color: var(--ck-danger) !important;
}

.btn-warning,
.bg-warning,
.badge.bg-warning {
    background: linear-gradient(135deg, #ef9d44, #e8862b) !important;
    color: #fff !important;
    border-color: transparent !important;
}

.bg-primary,
.badge.bg-primary {
    background: linear-gradient(135deg, var(--ck-orange-500), var(--ck-orange-400)) !important;
}

.bg-dark,
.badge.bg-dark {
    background: linear-gradient(135deg, #7b4c27, #5b3518) !important;
}

.bg-info,
.badge.bg-info {
    background-color: #d98a41 !important;
    color: #fff !important;
}

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

.alert {
    border-radius: 12px;
    border-color: rgba(205, 183, 157, 0.48);
}

.alert-success {
    background: #ebf6ef;
    color: #2a7042;
}

.alert-info {
    background: #f8ecdf;
    color: #6f4827;
}

.alert-warning {
    background: #fff0e1;
    color: #7f4f1f;
}

.alert-danger {
    background: #fbe9e5;
    color: #8f3524;
}

.badge {
    border-radius: 999px;
    font-weight: 700;
}

.bg-success-soft {
    background: #eaf6ee !important;
}

.status-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    border-radius: 999px;
    font-size: 0.76rem;
    font-weight: 700;
}

.status-tag span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    display: inline-block;
}

.status-tag.processing {
    background: #ffefdd;
    color: #8b541f;
}

.status-tag.processing span {
    background: var(--ck-orange-500);
}

.status-tag.completed {
    background: #e8f5eb;
    color: #2d7d48;
}

.status-tag.completed span {
    background: #33a260;
}

.button-primary,
.button-secondary {
    border: 0;
    border-radius: 10px;
    font-weight: 700;
    padding: 10px 12px;
}

.button-primary {
    background: linear-gradient(135deg, var(--ck-orange-500), var(--ck-orange-400));
    color: #fff;
}

.button-secondary {
    background: #ead7c4;
    color: #623a1d;
}

.tool-explainer {
    color: #856241;
    font-size: 0.8rem;
}

.list-group-item {
    border-color: #eedfcf;
    background: #fffaf3;
    color: var(--ck-ink-900);
}

.marketing-overview-card {
    position: relative;
    overflow: hidden;
}

.marketing-overview-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(255, 122, 26, 0.06), rgba(255, 190, 125, 0.03) 55%, transparent 80%);
    pointer-events: none;
}

.feature-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 5px 11px;
    border-radius: 999px;
    font-size: 0.78rem;
    background: #fff1e2;
    color: #b65714;
    border: 1px solid #f0c79f;
    font-weight: 700;
}

.list-group-item.active {
    background: linear-gradient(135deg, var(--ck-orange-500), var(--ck-orange-400)) !important;
    border-color: transparent !important;
}

.card,
.table-responsive,
.modal-content,
.accordion-item {
    animation: card-rise 0.45s ease both;
}

@keyframes card-rise {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
