@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap");

:root {
    --theme-ink: #1c1917;
    --theme-charcoal: #292524;
    --theme-ruby: #be123c;
    --theme-ruby-dark: #9f1239;
    --theme-amber: #d97706;
    --theme-stone: #57534e;
    --theme-ivory: #faf6f1;
    --theme-paper: #ffffff;
    --background: 36 33% 97%;
    --foreground: 24 10% 10%;
    --card: 0 0% 100%;
    --card-foreground: 24 10% 10%;
    --primary: 346 83% 41%;
    --primary-foreground: 36 33% 97%;
    --secondary: 30 10% 94%;
    --secondary-foreground: 24 10% 10%;
    --muted: 30 8% 92%;
    --muted-foreground: 24 6% 35%;
    --accent: 30 20% 90%;
    --accent-foreground: 24 10% 10%;
    --border: 30 12% 86%;
    --input: 30 12% 86%;
    --ring: 346 83% 41%;
    --sidebar-background: 24 10% 15%;
    --sidebar-foreground: 36 33% 96%;
    --sidebar-primary: 346 83% 41%;
    --sidebar-primary-foreground: 0 0% 100%;
    --sidebar-accent: 24 8% 22%;
    --sidebar-accent-foreground: 36 33% 96%;
    --sidebar-border: 24 8% 22%;
}

body {
    font-family: "Outfit", "Segoe UI", Tahoma, sans-serif !important;
    background: #faf6f1 !important;
    background-attachment: fixed !important;
    color: #1c1917 !important;
}

h1, h2, h3, .header h1,
.main-content > header .flex.items-center.space-x-1 {
    font-family: "Outfit", "Segoe UI", sans-serif;
    letter-spacing: -0.02em;
}

.container {
    background-color: transparent !important;
}

body.app-page {
    padding: 0 !important;
}

.main-content .container {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 16px 20px 24px !important;
    min-height: auto !important;
}

.main-content .section {
    width: 100% !important;
    max-width: none !important;
}

#CaseEntryListContainer,
#entryGrid,
#entryGridDefendant,
.main-content .dx-datagrid,
.main-content .dx-widget.dx-datagrid {
    width: 100% !important;
    max-width: none !important;
}

.main-content .dx-datagrid-headers,
.main-content .dx-datagrid-rowsview,
.main-content .dx-datagrid-container,
.main-content .dx-datagrid-content,
.main-content .dx-datagrid-table {
    width: 100% !important;
    max-width: 100% !important;
}

.header {
    background: #ffffff !important;
    color: #1c1917 !important;
    border-radius: 0 !important;
    border-bottom: 4px solid #be123c !important;
    box-shadow: none !important;
    letter-spacing: -0.02em;
}

.section {
    background-color: #ffffff !important;
    border: 1px solid #e7e0d8 !important;
    border-radius: 2px !important;
    box-shadow: 0 1px 0 rgba(28, 25, 23, 0.04) !important;
}

.section-header {
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-size: 14px !important;
    border-left: 4px solid #be123c;
}

.section-header.blue {
    background: #292524 !important;
}

.section-header.green {
    background: #1b365d !important;
}

.section-header.purple {
    background: #57534e !important;
}

.section-header.orange {
    background: #d97706 !important;
}

.section-header.teal {
    background: #9f1239 !important;
}

.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus {
    border-color: #be123c !important;
    box-shadow: 0 0 0 3px rgba(190, 18, 60, 0.12) !important;
}

.button {
    border-radius: 2px !important;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-size: 12px !important;
}

.button-primary {
    background-color: #be123c !important;
    color: #fffaf8 !important;
}

.button-primary:hover {
    background-color: #9f1239 !important;
}

.button-secondary {
    background-color: #292524 !important;
    color: #fffaf8 !important;
}

.button-secondary:hover {
    background-color: #44403c !important;
}

.toast {
    background-color: #292524 !important;
    border-radius: 2px !important;
}

.sidebar {
    background: #1c1917 !important;
    border-right: 0 !important;
    box-shadow: none !important;
}

.sidebar.top-nav {
    position: sticky !important;
    top: 60px;
    left: 0;
    width: 100% !important;
    height: auto !important;
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0 20px;
    z-index: 40;
    border-bottom: 1px solid #292524;
}

.top-nav .nav-menu {
    padding: 6px 0 !important;
    flex: 1 1 auto;
}

.top-nav .nav-menu ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    margin: 0 0 0 0 !important;
}

.top-nav .nav-menu li {
    margin-bottom: 0;
}

.top-nav a.nav-item {
    width: auto !important;
    padding: 10px 14px !important;
    border-left: 0 !important;
    border-bottom: 3px solid transparent !important;
    white-space: nowrap;
}

.top-nav .nav-item.active {
    border-left: 0 !important;
    border-bottom: 3px solid #be123c !important;
}

.top-nav .nav-icon {
    margin-right: 8px;
}

.top-nav .district-cards {
    display: flex;
    align-items: center;
    padding: 6px 0;
    margin: 0;
}

.top-nav .district-card {
    margin: 0;
    padding: 8px 14px;
    white-space: nowrap;
}

.top-nav .district-card h3 {
    font-size: 14px;
    margin: 0;
}

.nav-menu {
    padding-top: 28px !important;
}

.main-content {
    margin-left: 0 !important;
    margin-top: 0 !important;
}

.main-content > header.sticky {
    position: sticky;
    top: 0;
}

@media (max-width: 768px) {
    .sidebar.top-nav {
        transform: none !important;
        position: sticky !important;
        overflow-x: auto;
        white-space: nowrap;
    }

    .main-content {
        margin-left: 0 !important;
    }
}

.nav-item {
    color: #e7e5e4 !important;
    border-radius: 0 !important;
    border-left: 3px solid transparent !important;
}

a.nav-item {
    display: flex !important;
    align-items: center;
    width: 100%;
    text-decoration: none !important;
    box-sizing: border-box;
    cursor: pointer;
}

.nav-item a {
    color: inherit !important;
    text-decoration: none !important;
}

.nav-icon.nav-icon-dashboard {
    color: #fbbf24 !important;
    stroke: #fbbf24 !important;
}

.nav-icon.nav-icon-users {
    color: #38bdf8 !important;
    stroke: #38bdf8 !important;
}

.nav-icon.nav-icon-case {
    color: #4ade80 !important;
    stroke: #4ade80 !important;
}

.nav-icon.nav-icon-search {
    color: #fb923c !important;
    stroke: #fb923c !important;
}

.nav-icon.nav-icon-reports {
    color: #c084fc !important;
    stroke: #c084fc !important;
}

.nav-icon.nav-icon-import {
    color: #22d3ee !important;
    stroke: #22d3ee !important;
}

.nav-item:hover {
    background-color: #292524 !important;
    color: #ffffff !important;
}

.nav-item.active {
    background: #292524 !important;
    color: #ffffff !important;
    border-left: 3px solid #be123c !important;
    font-weight: 600;
}

.nav-item.active a {
    color: #ffffff !important;
}

.district-card {
    background: #be123c !important;
    border-radius: 2px !important;
    display: block;
    text-decoration: none !important;
}

a.district-card,
a.district-card h3 {
    color: #fffaf8 !important;
    text-decoration: none !important;
}

.district-card.orange {
    background: #d97706 !important;
}

.district-card.blue {
    background: #57534e !important;
}

.district-card a {
    color: #fffaf8 !important;
    text-decoration: none !important;
}

.main-content > header,
header.bg-white,
header.shadow-sm {
    background: #ffffff !important;
    color: #1c1917 !important;
    border-bottom: 4px solid #be123c !important;
    box-shadow: 0 1px 0 rgba(28, 25, 23, 0.06) !important;
}

.main-content > header .text-gray-600,
.main-content > header #clock,
header.bg-white .text-gray-600,
header #clock {
    color: #78716c !important;
}

.main-content > header .flex.items-center.space-x-1,
header.bg-white .flex.items-center.space-x-1 {
    color: #1c1917 !important;
    font-weight: 700;
    text-shadow: none;
}

header .w-8.h-8,
header .bg-gray-100 {
    background-color: #f5f0eb !important;
}

.content-header {
    background: #ffffff !important;
    border-color: #e7e0d8 !important;
    border-radius: 2px !important;
}

.bg-blue-50 { background-color: #f5f0eb !important; }
.bg-blue-500 { background-color: #ffffff !important; }
.bg-blue-600 { background-color: #ffffff !important; }
.bg-green-50 { background-color: #fff7f5 !important; }
.bg-green-500 { background-color: #ffffff !important; }
.bg-green-600 { background-color: #ffffff !important; }
.bg-orange-500 { background-color: #ffffff !important; }
.bg-orange-600 { background-color: #ffffff !important; }
.bg-purple-500 { background-color: #ffffff !important; }
.bg-purple-600 { background-color: #ffffff !important; }
.bg-lightgreen-500,
.bg-lightgreen-600 { background-color: #ffffff !important; }
.bg-yellow-50 { background-color: #fffbeb !important; }
.bg-yellow-400 { background-color: #d97706 !important; }
.from-blue-50 { --tw-gradient-from: #faf6f1 var(--tw-gradient-from-position); }
.to-blue-50 { --tw-gradient-to: #faf6f1 var(--tw-gradient-to-position); }
.to-indigo-100 { --tw-gradient-to: #e7e0d8 var(--tw-gradient-to-position); }

.text-blue-500,
.text-blue-600,
.text-blue-700 { color: #be123c !important; }
.text-orange-600 { color: #d97706 !important; }
.hover\:text-blue-700:hover { color: #9f1239 !important; }
.hover\:bg-blue-600:hover { background-color: #f5f0eb !important; }
.hover\:bg-green-600:hover { background-color: #fff7f5 !important; }
.hover\:bg-purple-700:hover { background-color: #f5f5f4 !important; }
.border-blue-600 { border-color: #be123c !important; }

.rounded-lg.shadow-md {
    border-radius: 2px !important;
    box-shadow: none !important;
    border: 1px solid #e7e0d8 !important;
    overflow: hidden;
    transition: border-color 0.2s ease, transform 0.2s ease;
}

.rounded-lg.shadow-md:hover {
    transform: none;
    border-color: #be123c !important;
    box-shadow: none !important;
}

.rounded-lg.shadow-md.bg-blue-500 {
    border-top: 6px solid #292524 !important;
}
.rounded-lg.shadow-md.bg-green-500 {
    border-top: 6px solid #be123c !important;
}
.rounded-lg.shadow-md.bg-lightgreen-500,
.rounded-lg.shadow-md.bg-lightgreen-600 {
    border-top: 6px solid #d97706 !important;
}
.rounded-lg.shadow-md.bg-purple-500,
.rounded-lg.shadow-md.bg-purple-600 {
    border-top: 6px solid #57534e !important;
}
.rounded-lg.shadow-md.bg-orange-500,
.rounded-lg.shadow-md.bg-orange-600,
.rounded-lg.shadow-md.bg-blue-600 {
    border-top: 6px solid #9f1239 !important;
}

.rounded-lg.shadow-md .text-white,
.rounded-lg.shadow-md .text-sm,
.rounded-lg.shadow-md .text-4xl {
    color: #1c1917 !important;
}

.rounded-lg.stat-box {
    border: 0 !important;
    border-top: 0 !important;
    border-radius: 8px !important;
}

.rounded-lg.stat-box:hover {
    border-color: transparent !important;
}

.rounded-lg.stat-box .text-4xl,
.rounded-lg.stat-box .text-4xl.text-white,
.rounded-lg.stat-box a {
    color: #ffffff !important;
}

.rounded-lg.stat-box .text-sm,
.rounded-lg.stat-box .text-sm.text-white {
    color: #111111 !important;
}

.rounded-lg.stat-box-total {
    background: linear-gradient(135deg, #e8b4b8 0%, #c27a7a 100%) !important;
}

.rounded-lg.stat-box-hearing {
    background: linear-gradient(135deg, #b5d9bc 0%, #6f9e78 100%) !important;
}

.rounded-lg.stat-box-highcourt {
    background: linear-gradient(135deg, #b3cce3 0%, #6b8fb5 100%) !important;
}

.rounded-lg.stat-box-closed {
    background: linear-gradient(135deg, #cbb8dc 0%, #8f7aa8 100%) !important;
}

.rounded-lg.stat-box-orders {
    background: linear-gradient(135deg, #e8c49a 0%, #c4925a 100%) !important;
}

.rounded-lg.shadow-sm {
    background-color: #ffffff !important;
    border: 1px solid #e7e0d8 !important;
    border-radius: 2px !important;
    box-shadow: none !important;
}

.rounded-lg.office-box {
    border-radius: 8px !important;
    border: 0 !important;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.rounded-lg.office-box:hover {
    transform: translateY(-3px);
    box-shadow:
        inset 5px 5px 10px rgba(255, 255, 255, 0.65),
        inset -5px -5px 12px rgba(0, 0, 0, 0.08),
        0 10px 22px rgba(0, 0, 0, 0.1) !important;
}

.rounded-lg.office-box .text-gray-600 {
    color: #57534e !important;
}

.rounded-lg.office-box .text-blue-600,
.rounded-lg.office-box .text-blue-600 a {
    color: #1d4ed8 !important;
}

.rounded-lg.office-box .text-orange-600,
.rounded-lg.office-box .text-orange-600 a {
    color: #c2410c !important;
}

.rounded-lg.office-box .text-gray-400,
.rounded-lg.office-box svg {
    color: #78716c !important;
    stroke: #78716c;
}

.rounded-lg.office-box a {
    text-decoration: none !important;
}

.rounded-lg.office-box h3,
.rounded-lg.office-box .text-gray-800 {
    color: #111111 !important;
}

.rounded-lg.office-box-pune {
    background-color: #fde2e4 !important;
}

.rounded-lg.office-box-konkan {
    background-color: #d8f3e4 !important;
}

.rounded-lg.office-box-nagpur {
    background-color: #dbeafe !important;
}

.rounded-lg.office-box-sambhajinagar {
    background-color: #edd9f9 !important;
}

.rounded-lg.office-box-nashik {
    background-color: #fdecc8 !important;
}

.rounded-lg.office-box-amravati {
    background-color: #cffafe !important;
}

.dash-layout {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.dash-stats {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.dash-stats > a {
    display: block;
    text-decoration: none !important;
}

.dash-stats .stat-box .p-6 {
    padding: 16px 12px !important;
}

.dash-offices {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    align-content: start;
}

@media (max-width: 1024px) {
    .dash-layout {
        grid-template-columns: 1fr;
    }

    .dash-offices {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .dash-offices {
        grid-template-columns: 1fr;
    }
}

.rounded-lg a,
.shadow-md a,
.district-card a {
    color: inherit !important;
    text-decoration: none !important;
}

.bg-yellow-50.rounded-lg,
.bg-green-50.rounded-lg {
    border-top: 4px solid #be123c;
}

.bg-green-50.rounded-lg {
    border-top-color: #d97706;
}

[style*="color: #042f8d"],
[style*="color:#042f8d"] {
    color: #292524 !important;
}

[style*="color: #ea580c"],
[style*="color:#ea580c"] {
    color: #be123c !important;
}

[style*="color: #0b3b69"],
[style*="color:#0b3b69"] {
    color: #292524 !important;
}

[style*="background-color: #2563eb" i],
[style*="background-color:#2563eb" i] {
    background-color: #be123c !important;
}

[style*="background-color: #156519"],
[style*="background-color:#156519"] {
    background-color: #1b365d !important;
}

[style*="background-color: #f97316"],
[style*="background-color:#f97316"] {
    background-color: #d97706 !important;
}

.dx-datagrid-headers {
    background-color: #1b365d !important;
    color: #ffffff !important;
}

.dx-datagrid .dx-header-row > td,
.dx-datagrid .dx-header-row > td > .dx-datagrid-text-content,
.dx-datagrid .dx-header-row > td > .dx-datagrid-text-content:not(.dx-sort-indicator):not(.dx-header-filter-indicator),
.dx-treelist .dx-header-row > td,
.dx-datagrid-headers .dx-header-row > td,
.dx-datagrid-headers .dx-header-row > td .dx-datagrid-text-content {
    background-color: #1b365d !important;
    color: #ffffff !important;
}

.dx-datagrid-rowsview .dx-row-alt > td {
    background-color: #faf6f1 !important;
}

.dx-datagrid-rowsview .dx-row:hover > td {
    background-color: #fff1f2 !important;
}

.dx-button-mode-contained.dx-button-default {
    background-color: #be123c !important;
    border-color: #be123c !important;
}

.dx-button-mode-contained.dx-button-success {
    background-color: #1b365d !important;
    border-color: #1b365d !important;
    color: #ffffff !important;
}

.dx-button-mode-contained.dx-button-success.dx-state-hover,
.dx-button-mode-contained.dx-button-success.dx-state-focused {
    background-color: #163050 !important;
    border-color: #163050 !important;
}

#entryGrid .dx-header-row > td,
#entryGridDefendant .dx-header-row > td,
#entryGrid .dx-datagrid-text-content,
#entryGridDefendant .dx-datagrid-text-content {
    background-color: #1b365d !important;
    color: #ffffff !important;
}

a:link, a:visited {
    color: #9f1239;
}

a:hover {
    color: #be123c;
}

.nav-item,
.nav-item a,
.nav-item a:link,
.nav-item a:visited {
    color: #e7e5e4 !important;
    text-decoration: none !important;
}

.nav-item:hover,
.nav-item:hover a,
.nav-item:hover a:link {
    color: #ffffff !important;
}

.nav-item.active,
.nav-item.active a,
.nav-item.active a:link,
.nav-item.active a:visited {
    color: #ffffff !important;
}

.district-card a,
.district-card a:link,
.district-card a:visited {
    color: #fffaf8 !important;
    text-decoration: none !important;
}

.shadow-md a,
.shadow-md a:link,
.shadow-md a:visited,
.text-white a,
.text-white a:link,
.rounded-lg.shadow-md a {
    color: #1c1917 !important;
    text-decoration: none !important;
}

.loader {
    border-top-color: #be123c !important;
}

.section-header h2,
.section-header h1,
.section-header h3 {
    color: #faf6f1;
    font-weight: 600;
}

.form-field label,
.form-field label strong {
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-size: 12px;
}

input[type="text"],
input[type="password"],
input[type="email"],
select,
textarea,
.form-field input,
.form-field select,
.form-field textarea {
    border-color: #e7e0d8;
    background-color: #ffffff;
    border-radius: 2px;
}

.dx-texteditor.dx-editor-outlined {
    background-color: #ffffff;
}

.dx-datagrid {
    background-color: #ffffff;
}

.dx-toolbar {
    background-color: #faf6f1 !important;
}

main.flex-1 {
    color: #1c1917;
}

.text-gray-800 {
    color: #1c1917 !important;
}

.text-white a {
    color: #1c1917 !important;
}

body.login-page {
    margin: 0 !important;
    padding: 28px !important;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #163050 0%, #1f4a78 48%, #3a6fa3 100%) !important;
}

body.login-page form#form1 {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
}

.login-shell {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    min-height: 640px;
    background: #ffffff;
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 30px 70px rgba(22, 48, 80, 0.32);
}

.login-hero {
    position: relative;
    min-height: 640px;
    padding: 48px 40px;
    display: flex;
    align-items: flex-end;
    color: #f4f1ea;
    overflow: hidden;
}

.login-hero-bg {
    position: absolute;
    inset: 0;
    background-color: #1f4a78;
    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.28'/%3E%3C/svg%3E"),
        repeating-linear-gradient(135deg, rgba(232, 214, 176, 0.08) 0 1px, transparent 1px 8px),
        repeating-linear-gradient(45deg, rgba(12, 32, 58, 0.08) 0 1px, transparent 1px 10px),
        radial-gradient(circle at 16% 18%, rgba(244, 226, 186, 0.22), transparent 42%),
        radial-gradient(circle at 88% 10%, rgba(126, 179, 217, 0.28), transparent 34%),
        radial-gradient(circle at 70% 78%, rgba(14, 36, 64, 0.4), transparent 46%),
        linear-gradient(160deg, #3a6fa3 0%, #1f4a78 52%, #163050 100%);
    background-size: 180px 180px, auto, auto, auto, auto, auto, auto;
}

.login-orb {
    position: absolute;
    border-radius: 50%;
    z-index: 1;
    border: 10px solid rgba(244, 226, 186, 0.22);
    box-shadow: inset 0 0 40px rgba(255, 248, 230, 0.16), 0 16px 36px rgba(14, 36, 64, 0.28);
}

.login-orb-1 {
    width: 210px;
    height: 210px;
    top: 36px;
    right: -28px;
    background: radial-gradient(circle at 32% 28%, #7eb3d9 0%, #2e6a9a 46%, #163050 100%);
}

.login-orb-2 {
    width: 128px;
    height: 128px;
    top: 230px;
    right: 150px;
    background: radial-gradient(circle at 30% 30%, #f0e2c4 0%, #c4a574 50%, #8a6a3a 100%);
}

.login-orb-3 {
    width: 88px;
    height: 88px;
    top: 72px;
    left: 36px;
    background: radial-gradient(circle at 35% 30%, #fff6e4 0%, #d4b483 55%, #9a7540 100%);
}

.login-hero-copy {
    position: relative;
    z-index: 2;
    max-width: 420px;
}

.login-kicker {
    letter-spacing: 0.16em;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
    margin: 0 0 8px;
    color: #e6d5b8;
}

.login-hero-copy h1 {
    font-size: 46px;
    line-height: 1.1;
    margin: 0 0 12px;
    color: #f7f4ee;
    font-weight: 700;
}

.login-hero-title {
    font-size: 16px;
    line-height: 1.5;
    margin: 0 0 10px;
    color: #ece7de;
}

.login-hero-sub {
    margin: 0;
    font-size: 14px;
    color: rgba(247, 244, 238, 0.78);
}

.login-panel {
    background: #ffffff;
    padding: 56px 52px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.login-hello {
    margin: 0 0 6px;
    color: #1b365d;
    font-weight: 600;
    font-size: 18px;
}

.login-hello span {
    color: #1b365d;
}

.login-panel h2 {
    margin: 0 0 28px;
    color: #1c1917;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: -0.03em;
    text-transform: none;
}

.login-error {
    display: block;
    min-height: 22px;
    margin: 0 0 16px;
    color: #8a4f4f;
    font-size: 13px;
    font-weight: 600;
    text-align: left;
}

body.login-page .form-grid {
    gap: 22px;
    margin-bottom: 28px;
}

body.login-page .form-field label {
    color: #6b5c4e;
    font-size: 12px;
    letter-spacing: 0.08em;
    margin-bottom: 6px;
}

body.login-page .form-field input {
    border: 0 !important;
    border-bottom: 2px solid #e7e0d8 !important;
    border-radius: 0 !important;
    padding: 10px 36px 10px 0 !important;
    font-size: 15px !important;
    background: transparent !important;
}

body.login-page .form-field input:focus {
    border-bottom-color: #1b365d !important;
    box-shadow: none !important;
}

.login-password-field {
    position: relative;
}

.login-eye {
    position: absolute;
    right: 4px;
    bottom: 10px;
    cursor: pointer;
    color: #6b5c4e;
}

.login-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

body.login-page .login-submit {
    width: 100%;
    padding: 14px 16px !important;
    border-radius: 8px !important;
    background: linear-gradient(90deg, #2e6a9a 0%, #1b365d 100%) !important;
    color: #f7f4ee !important;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 14px !important;
    font-weight: 700 !important;
}

body.login-page .login-submit:hover {
    background: linear-gradient(90deg, #245585 0%, #163050 100%) !important;
}

body.login-page .login-cancel {
    width: 100%;
    padding: 12px 16px !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: #1b365d !important;
    border: 1px solid #d7cbb8 !important;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

body.login-page .login-cancel:hover {
    border-color: #1b365d !important;
    color: #1b365d !important;
}

@media (max-width: 900px) {
    body.login-page {
        padding: 12px !important;
        align-items: stretch;
    }

    .login-shell {
        grid-template-columns: 1fr;
        min-height: auto;
        border-radius: 18px;
    }

    .login-hero {
        min-height: 320px;
        padding: 28px 24px;
    }

    .login-orb-1 {
        width: 120px;
        height: 120px;
        top: 16px;
        right: -16px;
    }

    .login-orb-2 {
        width: 80px;
        height: 80px;
        top: 140px;
        right: 90px;
    }

    .login-orb-3 {
        width: 64px;
        height: 64px;
        left: 16px;
        top: 20px;
    }

    .login-hero-copy h1 {
        font-size: 32px;
    }

    .login-panel {
        padding: 32px 24px 40px;
    }
}

.add-new-case .section {
    border: 2px solid #cbd5e1 !important;
    border-radius: 10px !important;
    overflow: hidden;
}

.add-new-case .section-header {
    border-left: none;
    text-align: left;
    padding: 14px 20px;
}

.add-new-case .section-header h2,
.add-new-case .header h1 {
    color: #1c1917 !important;
}

.add-new-case .form-field label strong,
.add-new-case .form-field strong[style*="color: #042f8d"],
.add-new-case .form-field strong[style*="color:#042f8d"] {
    color: #1c1917 !important;
}

.add-new-case .form-field input:not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]),
.add-new-case .form-field select,
.add-new-case .form-field textarea,
.add-new-case input[type="text"],
.add-new-case input[type="email"],
.add-new-case input[type="tel"],
.add-new-case input[type="password"],
.add-new-case textarea,
.add-new-case select {
    border: 1px solid #94a3b8 !important;
    background-color: #ffffff !important;
}

.add-new-case .dx-texteditor.dx-editor-outlined,
.add-new-case .dx-texteditor.dx-state-readonly,
.add-new-case .dx-texteditor-container {
    border: 1px solid #94a3b8 !important;
}

.add-new-case .button,
.add-new-case .button-primary,
.add-new-case .button-secondary,
.add-new-case .dx-dx-button-back,
.add-new-case input[type="button"],
.add-new-case input[type="submit"],
.add-new-case [style*="background-color: #2563eb"],
.add-new-case [style*="background-color:#2563eb"],
.add-new-case .dx-button-mode-contained.dx-button-default,
.add-new-case .dx-button-mode-contained.dx-button-success {
    background-color: #1b365d !important;
    border-color: #1b365d !important;
    color: #ffffff !important;
}

.add-new-case .button:hover,
.add-new-case .button-primary:hover,
.add-new-case .button-secondary:hover,
.add-new-case input[type="button"]:hover,
.add-new-case input[type="submit"]:hover,
.add-new-case .dx-button-mode-contained.dx-button-default.dx-state-hover,
.add-new-case .dx-button-mode-contained.dx-button-success.dx-state-hover {
    background-color: #163050 !important;
    border-color: #163050 !important;
    color: #ffffff !important;
}

.add-new-case .button-outline,
.add-new-case input.button-outline,
.add-new-case input[type="submit"].button-outline {
    background-color: #ffffff !important;
    border: 1px solid #1b365d !important;
    color: #1b365d !important;
}

.add-new-case .button-outline:hover,
.add-new-case input.button-outline:hover,
.add-new-case input[type="submit"].button-outline:hover {
    background-color: #e8eef6 !important;
    color: #1b365d !important;
}

.add-new-case .section-fill-case {
    background-color: #dbeafe !important;
    border-color: #60a5fa !important;
}

.add-new-case .section-fill-case .section-header.blue {
    background: #93c5fd !important;
}

.add-new-case .section-fill-appellant {
    background-color: #fde2e4 !important;
    border-color: #fb7185 !important;
}

.add-new-case .section-fill-appellant .section-header.green {
    background: #f5b5bc !important;
}

.add-new-case .section-fill-appellant-lawyer {
    background-color: #e2f0d9 !important;
    border-color: #84cc16 !important;
}

.add-new-case .section-fill-appellant-lawyer .section-header.green {
    background: #a8d48c !important;
}

.add-new-case .section-fill-defendant {
    background-color: #edd9f9 !important;
    border-color: #c084fc !important;
}

.add-new-case .section-fill-defendant .section-header.purple {
    background: #c084fc !important;
}

.add-new-case .section-fill-defendant-lawyer {
    background-color: #f3e8ff !important;
    border-color: #a78bfa !important;
}

.add-new-case .section-fill-defendant-lawyer .section-header.purple {
    background: #c4b5fd !important;
}

.add-new-case .section-fill-docs {
    background-color: #fdecc8 !important;
    border-color: #f59e0b !important;
}

.add-new-case .section-fill-docs .section-header.orange {
    background: #f0c878 !important;
}

.add-new-case .section-fill-judge {
    background-color: #ffe4d6 !important;
    border-color: #fb923c !important;
}

.add-new-case .section-fill-judge .section-header.purple {
    background: #fdba74 !important;
}

.add-new-case .section-fill-remarks {
    background-color: #cffafe !important;
    border-color: #22d3ee !important;
}

.add-new-case .section-fill-remarks .section-header.teal {
    background: #67e8f9 !important;
}

.report-list-page .report-boxes {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    align-content: start;
}

.report-list-page .report-box,
.report-list-page .report-box:link,
.report-list-page .report-box:visited,
.report-list-page .report-box:hover {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 140px;
    text-decoration: none !important;
    color: #111111 !important;
    border: 2px solid transparent !important;
}

.report-list-page .report-box h3,
.report-list-page .report-box .text-gray-800 {
    color: #111111 !important;
    font-size: 20px;
    margin: 0;
}

.report-list-page .report-box-1 {
    background-color: #dbeafe !important;
    border-color: #60a5fa !important;
}

.report-list-page .report-box-2 {
    background-color: #d8f3e4 !important;
    border-color: #34d399 !important;
}

.report-list-page .report-box-3 {
    background-color: #edd9f9 !important;
    border-color: #c084fc !important;
}

.report-list-page .report-box-4 {
    background-color: #fde2e4 !important;
    border-color: #fb7185 !important;
}

.report-list-page .report-box-5 {
    background-color: #fdecc8 !important;
    border-color: #f59e0b !important;
}

.report-list-page .report-box-6 {
    background-color: #cffafe !important;
    border-color: #22d3ee !important;
}

.report-list-page .report-box-7 {
    background-color: #e2f0d9 !important;
    border-color: #84cc16 !important;
}

@media (max-width: 700px) {
    .report-list-page .report-boxes {
        grid-template-columns: 1fr;
    }
}
