/**
 * CropWise ? Government Digital Portal Design System
 * Professional forest-green government interface
 */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

/* ?? Light theme (default) ????????????????????????????????????????? */
html.cropwise-landing {
    --cw-primary: #1B5E20;
    --cw-primary-hover: #2E7D32;
    --cw-secondary: #388E3C;
    --cw-light-green: #A5D6A7;
    --cw-gold: #388E3C;
    --cw-light-yellow: #E8F5E9;
    --cw-olive: #66BB6A;
    --cw-bg: #F8FAFC;
    --cw-white: #FFFFFF;
    --cw-dark-gray: #4B5563;
    --cw-black: #1F2937;
    --cw-success: #16A34A;
    --cw-warning: #F59E0B;
    --cw-danger: #DC2626;
    --cw-info: #388E3C;

    --cw-sidebar-bg: #1B5E20;
    --cw-sidebar-hover: #2E7D32;
    --cw-sidebar-active: #FFFFFF;
    --cw-sidebar-text: #FFFFFF;

    --cw-surface: #FFFFFF;
    --cw-surface-2: #F8FAFC;
    --cw-card-border: #E5E7EB;
    --cw-input-border: #D1D5DB;
    --cw-text: #1F2937;
    --cw-text-secondary: #374151;
    --cw-text-muted: #6B7280;

    --cw-radius-card: 12px;
    --cw-radius-btn: 10px;
    --cw-radius-input: 10px;
    --cw-radius-nav: 10px;
    --cw-shadow: 0 4px 16px rgba(27, 94, 32, 0.08);
    --cw-shadow-hover: 0 8px 24px rgba(27, 94, 32, 0.12);
    --cw-transition: 180ms cubic-bezier(0.4, 0, 0.2, 1);
    --cw-space-1: 8px;
    --cw-space-2: 16px;
    --cw-space-3: 24px;
    --cw-space-4: 32px;

    --bg-primary: var(--cw-bg);
    --bg-secondary: var(--cw-white);
    --glass-bg: var(--cw-white);
    --glass-border: var(--cw-card-border);
    --text-primary: var(--cw-text);
    --text-secondary: var(--cw-text-secondary);
    --text-muted: var(--cw-text-muted);
    --accent-blue: var(--cw-secondary);
    --accent-purple: var(--cw-primary);
    --accent-cyan: var(--cw-secondary);
    --gradient-main: linear-gradient(135deg, #1B5E20 0%, #388E3C 55%, #66BB6A 100%);
    --gradient-soft: linear-gradient(135deg, rgba(27, 94, 32, 0.08), rgba(56, 142, 60, 0.06));
    --shadow-card: var(--cw-shadow);
    --shadow-glow: 0 0 32px rgba(27, 94, 32, 0.12);
    --brand-border: rgba(27, 94, 32, 0.22);
    --brand-tint: rgba(27, 94, 32, 0.06);
    --brand-tint-strong: rgba(56, 142, 60, 0.12);

    --hero-bg-base: linear-gradient(160deg, #F8FAFC 0%, #FFFFFF 50%, #F1F8E9 100%);
    --hero-veil:
        linear-gradient(
            to top,
            rgba(15, 23, 42, 0.5) 0%,
            rgba(15, 23, 42, 0.22) 20%,
            rgba(15, 23, 42, 0.07) 40%,
            transparent 60%
        ),
        radial-gradient(
            ellipse 92% 115% at 76% 50%,
            transparent 0%,
            rgba(27, 94, 32, 0.05) 40%,
            rgba(27, 94, 32, 0.18) 68%,
            rgba(27, 94, 32, 0.32) 100%
        ),
        linear-gradient(
            102deg,
            rgba(27, 94, 32, 0.97) 0%,
            rgba(27, 94, 32, 0.94) 16%,
            rgba(27, 94, 32, 0.86) 28%,
            rgba(27, 94, 32, 0.72) 40%,
            rgba(27, 94, 32, 0.52) 50%,
            rgba(27, 94, 32, 0.32) 58%,
            rgba(56, 142, 60, 0.18) 66%,
            rgba(56, 142, 60, 0.09) 74%,
            rgba(56, 142, 60, 0.03) 84%,
            transparent 94%
        ) !important;
    --hero-veil-mobile:
        linear-gradient(
            to top,
            rgba(15, 23, 42, 0.48) 0%,
            rgba(15, 23, 42, 0.18) 28%,
            transparent 55%
        ),
        linear-gradient(
            180deg,
            rgba(27, 94, 32, 0.94) 0%,
            rgba(27, 94, 32, 0.88) 32%,
            rgba(27, 94, 32, 0.68) 52%,
            rgba(56, 142, 60, 0.32) 72%,
            rgba(56, 142, 60, 0.1) 88%,
            transparent 100%
        ) !important;

    --footer-bg: linear-gradient(180deg, #F8FAFC 0%, #FFFFFF 55%, #F1F8E9 100%);
    --footer-divider: #E5E7EB;
    --footer-text: #1F2937;
    --footer-muted: #374151;
    --footer-faint: #6B7280;
    --footer-link: #64748B;
    --footer-link-hover: #1B5E20;
    --footer-heading: #1B5E20;
    --footer-input-bg: #FFFFFF;
    --footer-input-border: #D1D5DB;
    --footer-input-text: #1F2937;
    --footer-input-placeholder: #9CA3AF;

    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    color-scheme: light;
}

/* ?? Dark theme ???????????????????????????????????????????????????? */
html.cropwise-landing[data-theme="dark"] {
    --cw-bg: #0F172A;
    --cw-surface: #1E293B;
    --cw-surface-2: #111827;
    --cw-card-border: rgba(255, 255, 255, 0.08);
    --cw-input-border: rgba(255, 255, 255, 0.12);
    --cw-text: #F9FAFB;
    --cw-text-secondary: #E5E7EB;
    --cw-text-muted: #9CA3AF;

    --cw-sidebar-bg: #111827;
    --cw-sidebar-hover: #1B5E20;
    --cw-sidebar-active: #FFFFFF;

    --bg-primary: var(--cw-bg);
    --bg-secondary: var(--cw-surface-2);
    --glass-bg: var(--cw-surface);
    --glass-border: var(--cw-card-border);
    --text-primary: var(--cw-text);
    --text-secondary: var(--cw-text-secondary);
    --text-muted: var(--cw-text-muted);
    --shadow-card: 0 8px 24px rgba(0, 0, 0, 0.35);
    --hero-bg-base: linear-gradient(160deg, #0F172A 0%, #111827 100%);
    --hero-veil:
        linear-gradient(
            to top,
            rgba(8, 12, 24, 0.58) 0%,
            rgba(8, 12, 24, 0.26) 20%,
            rgba(8, 12, 24, 0.08) 40%,
            transparent 60%
        ),
        radial-gradient(
            ellipse 92% 115% at 76% 50%,
            transparent 0%,
            rgba(17, 24, 39, 0.08) 40%,
            rgba(27, 94, 32, 0.22) 68%,
            rgba(27, 94, 32, 0.36) 100%
        ),
        linear-gradient(
            102deg,
            rgba(17, 24, 39, 0.98) 0%,
            rgba(17, 24, 39, 0.95) 16%,
            rgba(27, 94, 32, 0.88) 28%,
            rgba(27, 94, 32, 0.72) 40%,
            rgba(27, 94, 32, 0.5) 50%,
            rgba(27, 94, 32, 0.3) 58%,
            rgba(56, 142, 60, 0.16) 66%,
            rgba(56, 142, 60, 0.07) 74%,
            rgba(56, 142, 60, 0.02) 84%,
            transparent 94%
        );
    --hero-veil-mobile:
        linear-gradient(
            to top,
            rgba(8, 12, 24, 0.52) 0%,
            rgba(8, 12, 24, 0.2) 28%,
            transparent 55%
        ),
        linear-gradient(
            180deg,
            rgba(17, 24, 39, 0.96) 0%,
            rgba(27, 94, 32, 0.86) 32%,
            rgba(27, 94, 32, 0.64) 52%,
            rgba(56, 142, 60, 0.28) 72%,
            rgba(56, 142, 60, 0.08) 88%,
            transparent 100%
        );

    --footer-bg: linear-gradient(180deg, #111827 0%, #0F172A 55%, #1E293B 100%);
    --footer-divider: rgba(148, 163, 184, 0.22);
    --footer-text: #F9FAFB;
    --footer-muted: #CBD5E1;
    --footer-faint: #94A3B8;
    --footer-link: #94A3B8;
    --footer-link-hover: #A5D6A7;
    --footer-heading: #A5D6A7;
    --footer-input-bg: #1E293B;
    --footer-input-border: rgba(148, 163, 184, 0.3);
    --footer-input-text: #F9FAFB;
    --footer-input-placeholder: #94A3B8;

    color-scheme: dark;
}

/* ?? Base ?????????????????????????????????????????????????????????? */
html.cropwise-landing body {
    font-family: 'Inter', system-ui, sans-serif;
    font-weight: 400;
    background: var(--cw-bg) !important;
    color: var(--cw-text) !important;
    transition: background var(--cw-transition), color var(--cw-transition);
}

html.cropwise-landing h1,
html.cropwise-landing h2,
html.cropwise-landing h3,
html.cropwise-landing h4,
html.cropwise-landing .top-header h1 {
    font-weight: 700;
}

/* ?? Buttons ??????????????????????????????????????????????????????? */
html.cropwise-landing .btn {
    font-weight: 600;
    border-radius: var(--cw-radius-btn);
    transition: transform var(--cw-transition), box-shadow var(--cw-transition), background var(--cw-transition);
}

html.cropwise-landing .btn-primary {
    background: var(--cw-primary) !important;
    color: #FFFFFF !important;
    border: none !important;
    box-shadow: 0 4px 14px rgba(46, 107, 45, 0.25);
}

html.cropwise-landing .btn-primary:hover {
    background: var(--cw-sidebar-hover) !important;
    transform: translateY(-1px);
    box-shadow: var(--cw-shadow-hover);
}

html.cropwise-landing .btn-secondary,
html.cropwise-landing .btn.btn-secondary {
    background: var(--cw-gold) !important;
    color: var(--cw-black) !important;
    border: none !important;
}

html.cropwise-landing .btn-ghost {
    background: var(--cw-white) !important;
    color: var(--cw-primary) !important;
    border: 1px solid var(--cw-card-border) !important;
}

html.cropwise-landing[data-theme="dark"] .btn-ghost {
    background: var(--cw-surface) !important;
    color: var(--cw-light-green) !important;
    border-color: var(--cw-card-border) !important;
}

/* ?? Cards ????????????????????????????????????????????????????????? */
html.cropwise-landing .content-card,
html.cropwise-landing .stat-card,
html.cropwise-landing .glass,
html.cropwise-landing .feature-card,
html.cropwise-landing .about-intro,
html.cropwise-landing .about-step,
html.cropwise-landing .pricing-card,
html.cropwise-landing .auth-card {
    background: var(--cw-surface) !important;
    border: 1px solid var(--cw-card-border) !important;
    border-radius: var(--cw-radius-card) !important;
    box-shadow: var(--cw-shadow);
    transition: transform var(--cw-transition), box-shadow var(--cw-transition);
}

html.cropwise-landing .content-card:hover,
html.cropwise-landing .stat-card:hover,
html.cropwise-landing .feature-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--cw-shadow-hover);
}

/* ?? Forms ????????????????????????????????????????????????????????? */
html.cropwise-landing .form-control,
html.cropwise-landing input,
html.cropwise-landing select,
html.cropwise-landing textarea,
html.cropwise-landing .cw-select__trigger {
    background: var(--cw-white) !important;
    border: 1px solid var(--cw-input-border) !important;
    border-radius: var(--cw-radius-input) !important;
    color: var(--cw-text) !important;
    transition: border-color var(--cw-transition), box-shadow var(--cw-transition);
}

html.cropwise-landing[data-theme="dark"] .form-control,
html.cropwise-landing[data-theme="dark"] input:not(.newsletter input),
html.cropwise-landing[data-theme="dark"] select,
html.cropwise-landing[data-theme="dark"] textarea,
html.cropwise-landing[data-theme="dark"] .cw-select__trigger {
    background: var(--cw-surface) !important;
    border-color: var(--cw-input-border) !important;
    color: var(--cw-text) !important;
}

html.cropwise-landing .form-control:focus,
html.cropwise-landing input:focus,
html.cropwise-landing select:focus,
html.cropwise-landing textarea:focus,
html.cropwise-landing .cw-select.is-open .cw-select__trigger {
    border-color: var(--cw-primary) !important;
    box-shadow: 0 0 0 3px rgba(46, 107, 45, 0.15) !important;
    outline: none;
}

html.cropwise-landing .cw-select__menu {
    background: var(--cw-white) !important;
    border: 1px solid var(--cw-card-border) !important;
    border-radius: var(--cw-radius-input) !important;
    box-shadow: var(--cw-shadow-hover);
}

html.cropwise-landing[data-theme="dark"] .cw-select__menu {
    background: var(--cw-surface) !important;
}

html.cropwise-landing .cw-select__option.is-selected,
html.cropwise-landing .cw-select__option:hover:not(:disabled) {
    background: rgba(46, 107, 45, 0.12) !important;
    color: var(--cw-primary) !important;
}

/* ?? Tables ?????????????????????????????????????????????????????????? */
html.cropwise-landing .table-responsive {
    border-radius: var(--cw-radius-nav);
    overflow: hidden;
    border: 1px solid var(--cw-card-border);
}

html.cropwise-landing .table {
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
}

html.cropwise-landing .table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--cw-bg) !important;
    color: var(--cw-primary) !important;
    font-weight: 600;
    border-bottom: 1px solid var(--cw-card-border) !important;
}

html.cropwise-landing .table tbody tr:nth-child(even) {
    background: rgba(46, 107, 45, 0.04);
}

html.cropwise-landing[data-theme="dark"] .table tbody tr:nth-child(even) {
    background: rgba(255, 255, 255, 0.03);
}

html.cropwise-landing .table tbody tr:hover,
html.cropwise-landing .table tbody tr.selected {
    background: rgba(168, 198, 108, 0.2) !important;
}

html.cropwise-landing .table td {
    color: var(--cw-text) !important;
    border-color: var(--cw-card-border) !important;
}

/* ?? Badges ???????????????????????????????????????????????????????? */
html.cropwise-landing .badge-success,
html.cropwise-landing .badge.badge-success {
    background: rgba(46, 125, 50, 0.15) !important;
    color: var(--cw-success) !important;
    border: 1px solid rgba(46, 125, 50, 0.35);
}

html.cropwise-landing .badge-warning,
html.cropwise-landing .badge.badge-warning,
html.cropwise-landing .badge-pending {
    background: rgba(244, 196, 48, 0.2) !important;
    color: #8A6D00 !important;
    border: 1px solid rgba(244, 196, 48, 0.5);
}

html.cropwise-landing .badge-danger,
html.cropwise-landing .badge.badge-danger,
html.cropwise-landing .badge-rejected {
    background: rgba(198, 40, 40, 0.12) !important;
    color: var(--cw-danger) !important;
    border: 1px solid rgba(198, 40, 40, 0.35);
}

html.cropwise-landing .badge-secondary,
html.cropwise-landing .badge-archived {
    background: rgba(68, 68, 68, 0.12) !important;
    color: var(--cw-dark-gray) !important;
    border: 1px solid var(--cw-card-border);
}

html.cropwise-landing .badge-info {
    background: rgba(25, 118, 210, 0.12) !important;
    color: var(--cw-info) !important;
    border: 1px solid rgba(25, 118, 210, 0.3);
}

/* ?? Dashboard sidebar & topbar ????????????????????????????????????? */
html.cropwise-landing.tech-dashboard .sidebar {
    background: var(--cw-sidebar-bg) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.12) !important;
    transition: width var(--cw-transition);
}

html.cropwise-landing.tech-dashboard .sidebar-brand-text strong,
html.cropwise-landing.tech-dashboard .sidebar-brand-text small,
html.cropwise-landing.tech-dashboard .nav-section-title,
html.cropwise-landing.tech-dashboard .nav-link,
html.cropwise-landing.tech-dashboard .nav-link i,
html.cropwise-landing.tech-dashboard .logout-btn,
html.cropwise-landing.tech-dashboard .logout-btn i {
    color: var(--cw-sidebar-text) !important;
}

html.cropwise-landing.tech-dashboard .nav-link:hover {
    background: var(--cw-sidebar-hover) !important;
}

html.cropwise-landing.tech-dashboard .nav-link.active {
    background: #FFFFFF !important;
    color: #1B5E20 !important;
}

html.cropwise-landing.tech-dashboard .nav-link.active i {
    color: #1B5E20 !important;
}

html.cropwise-landing.tech-dashboard .nav-link.active::before {
    background: var(--cw-primary);
}

html.cropwise-landing.tech-dashboard .top-header {
    background: var(--cw-white) !important;
    border-bottom: 1px solid var(--cw-card-border) !important;
    box-shadow: 0 2px 12px rgba(30, 30, 30, 0.05);
}

html.cropwise-landing.tech-dashboard[data-theme="dark"] .top-header {
    background: #1F1F1F !important;
    border-bottom-color: var(--cw-card-border) !important;
}

html.cropwise-landing.tech-dashboard .main-content,
html.cropwise-landing.tech-dashboard .page-content {
    background: var(--cw-bg) !important;
}

/* ?? Modals ???????????????????????????????????????????????????????? */
html.cropwise-landing [id$="Modal"],
html.cropwise-landing .tech-modal-overlay {
    background: rgba(30, 30, 30, 0.45) !important;
    animation: cwFadeIn 200ms ease;
}

html.cropwise-landing [id$="Modal"] > div,
html.cropwise-landing .tech-modal {
    background: var(--cw-surface) !important;
    border: 1px solid var(--cw-card-border) !important;
    border-radius: var(--cw-radius-card) !important;
    color: var(--cw-text) !important;
    animation: cwSlideUp 220ms ease;
}

/* ?? Landing nav & hero (title text unchanged) ????????????????????? */
html.cropwise-landing .premium-nav.scrolled {
    background: rgba(255, 255, 255, 0.96) !important;
    border-bottom: 1px solid var(--cw-card-border);
    backdrop-filter: blur(12px);
}

html.cropwise-landing[data-theme="dark"] .premium-nav.scrolled {
    background: rgba(31, 31, 31, 0.96) !important;
}

html.cropwise-landing .hero.hero-media h1,
html.cropwise-landing .hero.hero-media .hero-title-accent,
html.cropwise-landing .hero.hero-media .hero-desc {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

html.cropwise-landing .hero.hero-media .hero-badge {
    background: rgba(244, 196, 48, 0.22);
    border: 1px solid rgba(244, 196, 48, 0.55);
    color: #FFFFFF;
}

html.cropwise-landing .section-label,
html.cropwise-landing .pricing-badge {
    background: rgba(244, 196, 48, 0.2);
    border: 1px solid rgba(244, 196, 48, 0.45);
    color: var(--cw-primary);
    border-radius: var(--cw-radius-btn);
}

html.cropwise-landing .nav-links a.active::after,
html.cropwise-landing .slider-progress {
    background: var(--cw-gold);
}

html.cropwise-landing .feature-icon,
html.cropwise-landing .about-icon {
    background: rgba(46, 107, 45, 0.1);
    color: var(--cw-primary);
    border-radius: var(--cw-radius-btn);
}

/* ?? Auth ?????????????????????????????????????????????????????????? */
html.cropwise-landing .auth-alert {
    background: rgba(244, 196, 48, 0.18);
    border: 1px solid rgba(244, 196, 48, 0.45);
    color: var(--cw-black);
    border-radius: var(--cw-radius-input);
}

html.cropwise-landing .nav-portal-badge {
    background: rgba(244, 196, 48, 0.18);
    border: 1px solid rgba(244, 196, 48, 0.45);
    color: var(--cw-primary);
}

/* ?? Animations ???????????????????????????????????????????????????? */
@keyframes cwFadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes cwSlideUp {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

html.cropwise-landing .reveal {
    animation: cwSlideUp 220ms ease both;
}

html.cropwise-landing .bg-mesh,
html.cropwise-landing.tech-dashboard .bg-mesh-dashboard {
    background: var(--cw-bg) !important;
}

/* ?? Links ??????????????????????????????????????????????????????????? */
html.cropwise-landing a:not(.btn):not(.nav-link):not(.nav-logo):not(.premium-nav a) {
    color: var(--cw-secondary);
}

html.cropwise-landing[data-theme="dark"] a:not(.btn):not(.nav-link):not(.nav-logo):not(.premium-nav a) {
    color: #8BC34A;
}

/* ?? Responsive ?????????????????????????????????????????????????????? */
@media (max-width: 768px) {
    html.cropwise-landing.tech-dashboard .sidebar.mobile-open {
        box-shadow: var(--cw-shadow-hover);
    }
}

/* ?? Top bar utilities ??????????????????????????????????????????????? */
html.cropwise-landing .theme-toggle {
    border: 1px solid var(--cw-card-border);
    background: var(--cw-surface);
    color: var(--cw-primary);
    border-radius: var(--cw-radius-btn);
    transition: background var(--cw-transition), transform var(--cw-transition);
}

html.cropwise-landing .theme-toggle:hover {
    background: rgba(46, 107, 45, 0.08);
    transform: scale(1.04);
}

html.cropwise-landing.tech-dashboard .logout-btn:hover,
html.cropwise-landing.tech-dashboard .logout-btn:hover i {
    background: rgba(244, 196, 48, 0.2) !important;
    color: var(--cw-black) !important;
}

html.cropwise-landing.tech-dashboard .stat-card .stat-icon {
    background: rgba(46, 107, 45, 0.1);
    color: var(--cw-primary);
    border-radius: var(--cw-radius-btn);
}

html.cropwise-landing .notification-panel,
html.cropwise-landing .profile-dropdown {
    background: var(--cw-surface) !important;
    border: 1px solid var(--cw-card-border) !important;
    border-radius: var(--cw-radius-card) !important;
    box-shadow: var(--cw-shadow-hover);
}

html.cropwise-landing .notification-item:hover {
    background: rgba(46, 107, 45, 0.08);
}

html.cropwise-landing .breadcrumb,
html.cropwise-landing .page-breadcrumb {
    color: var(--cw-text-muted);
}

html.cropwise-landing .breadcrumb a,
html.cropwise-landing .page-breadcrumb a {
    color: var(--cw-secondary);
}

html.cropwise-landing .premium-nav {
    transition: background var(--cw-transition), border-color var(--cw-transition);
}

html.cropwise-landing .footer {
    background: var(--cw-bg);
    border-top: 1px solid var(--cw-card-border);
    color: var(--cw-text-secondary);
}

html.cropwise-landing .footer a {
    color: var(--cw-secondary);
}

html.cropwise-landing .gradient-text {
    background: var(--gradient-main);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

html.cropwise-landing {
    transition: background-color var(--cw-transition), color var(--cw-transition);
}

html.cropwise-landing body {
    transition: background-color var(--cw-transition), color var(--cw-transition);
}

/* ?? Button ripple ????????????????????????????????????????????????? */
html.cropwise-landing .btn {
    position: relative;
    overflow: hidden;
}

html.cropwise-landing .cw-ripple {
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.35);
    transform: scale(0);
    animation: cwRipple 250ms ease-out;
    pointer-events: none;
}

html.cropwise-landing .btn-secondary .cw-ripple {
    background: rgba(30, 30, 30, 0.15);
}

@keyframes cwRipple {
    to { transform: scale(1); opacity: 0; }
}

/* ?? Lucide icons in navigation ???????????????????????????????????? */
html.cropwise-landing .nav-link .cw-lucide,
html.cropwise-landing .logout-btn .cw-lucide {
    width: 1.15rem;
    height: 1.15rem;
    flex-shrink: 0;
    stroke: currentColor;
}

html.cropwise-landing.tech-dashboard .sidebar.collapsed .nav-link .cw-lucide {
    width: 1.25rem;
    height: 1.25rem;
}

/* ?? Dashboard shell (authoritative overrides) ??????????????????????? */
html.cropwise-landing.tech-dashboard body,
html.cropwise-landing.tech-dashboard body.tech-dashboard {
    background: var(--cw-bg) !important;
    color: var(--cw-text) !important;
}

html.cropwise-landing.tech-dashboard .bg-mesh,
html.cropwise-landing.tech-dashboard .bg-mesh-dashboard {
    background: var(--cw-bg) !important;
}

html.cropwise-landing.tech-dashboard .top-header h1 {
    color: var(--cw-text) !important;
    font-size: 1.25rem;
}

html.cropwise-landing.tech-dashboard .user-info__welcome {
    color: var(--cw-text-secondary);
    font-size: 0.9rem;
}

html.cropwise-landing.tech-dashboard .user-avatar {
    background: rgba(46, 107, 45, 0.12);
    color: var(--cw-primary);
    border: 1px solid var(--cw-card-border);
    border-radius: 50%;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background var(--cw-transition), transform var(--cw-transition);
}

html.cropwise-landing.tech-dashboard .user-avatar:hover {
    background: rgba(244, 196, 48, 0.25);
    transform: scale(1.04);
}

html.cropwise-landing.tech-dashboard .topbar-theme,
html.cropwise-landing.tech-dashboard .sidebar-toggle,
html.cropwise-landing.tech-dashboard .menu-toggle {
    background: var(--cw-surface) !important;
    border: 1px solid var(--cw-card-border) !important;
    color: var(--cw-primary) !important;
    border-radius: var(--cw-radius-btn) !important;
    padding: 8px 12px;
    cursor: pointer;
    transition: background var(--cw-transition), transform var(--cw-transition);
}

html.cropwise-landing.tech-dashboard .topbar-theme:hover,
html.cropwise-landing.tech-dashboard .sidebar-toggle:hover,
html.cropwise-landing.tech-dashboard .menu-toggle:hover {
    background: rgba(46, 107, 45, 0.08) !important;
}

html.cropwise-landing.tech-dashboard .sidebar {
    width: 260px;
    transition: width 220ms cubic-bezier(0.4, 0, 0.2, 1), transform 220ms ease;
}

html.cropwise-landing.tech-dashboard .sidebar-header,
html.cropwise-landing.tech-dashboard .sidebar-footer {
    border-color: rgba(255, 255, 255, 0.12) !important;
}

html.cropwise-landing.tech-dashboard .nav-link {
    border-radius: var(--cw-radius-nav);
    margin: 2px 10px;
    padding: 11px 14px;
    display: flex;
    align-items: center;
    gap: 12px;
    transition: background var(--cw-transition), color var(--cw-transition);
}

html.cropwise-landing.tech-dashboard .nav-section-title {
    color: rgba(255, 255, 255, 0.65) !important;
    font-size: 0.68rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 16px 20px 6px;
}

html.cropwise-landing.tech-dashboard .logout-btn {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    border-radius: var(--cw-radius-nav) !important;
    margin: 8px 10px;
}

html.cropwise-landing.tech-dashboard .card,
html.cropwise-landing.tech-dashboard .panel,
html.cropwise-landing.tech-dashboard .tech-card,
html.cropwise-landing.tech-dashboard .content-card {
    background: var(--cw-surface) !important;
    border: 1px solid var(--cw-card-border) !important;
    border-radius: var(--cw-radius-card) !important;
    box-shadow: var(--cw-shadow);
    transition: transform var(--cw-transition), box-shadow var(--cw-transition);
}

html.cropwise-landing.tech-dashboard .card:hover,
html.cropwise-landing.tech-dashboard .content-card:hover {
    box-shadow: var(--cw-shadow-hover);
}

html.cropwise-landing.tech-dashboard .card-header {
    border-bottom: 1px solid var(--cw-card-border);
    padding: 16px 20px;
}

html.cropwise-landing.tech-dashboard .card-header h3 {
    color: var(--cw-text);
    font-weight: 700;
    font-size: 1rem;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

html.cropwise-landing.tech-dashboard .card-header h3 i,
html.cropwise-landing.tech-dashboard .card-header h3 svg {
    color: var(--cw-primary);
}

html.cropwise-landing.tech-dashboard .card-body {
    padding: 20px;
    color: var(--cw-text-secondary);
}

html.cropwise-landing.tech-dashboard .stat-card {
    border-left: 4px solid var(--cw-primary) !important;
}

html.cropwise-landing.tech-dashboard .stat-card.blue { border-left-color: var(--cw-secondary) !important; }
html.cropwise-landing.tech-dashboard .stat-card.purple { border-left-color: var(--cw-olive) !important; }
html.cropwise-landing.tech-dashboard .stat-card.orange { border-left-color: var(--cw-gold) !important; }

html.cropwise-landing.tech-dashboard .stat-card .stat-value {
    color: var(--cw-text);
    font-weight: 700;
}

html.cropwise-landing.tech-dashboard .stat-card .stat-label {
    color: var(--cw-text-muted);
}

/* ?? Breadcrumbs ????????????????????????????????????????????????????? */
html.cropwise-landing .breadcrumb,
html.cropwise-landing .page-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.85rem;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

html.cropwise-landing .breadcrumb li::after,
html.cropwise-landing .page-breadcrumb span.sep {
    content: '/';
    margin-left: 8px;
    color: var(--cw-text-muted);
}

/* ?? Table search & filter toolbar ??????????????????????????????????? */
html.cropwise-landing .search-bar,
html.cropwise-landing .table-toolbar {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    flex-wrap: wrap;
    align-items: center;
}

html.cropwise-landing .search-bar .form-control,
html.cropwise-landing .table-toolbar input[type="search"],
html.cropwise-landing .table-toolbar .form-control {
    max-width: 320px;
    min-width: 180px;
}

html.cropwise-landing .table-toolbar .filter-label {
    color: var(--cw-text-muted);
    font-size: 0.85rem;
    font-weight: 600;
}

/* ?? Floating labels (form-group pattern) ???????????????????????????? */
html.cropwise-landing .form-group {
    position: relative;
    margin-bottom: 20px;
}

html.cropwise-landing .form-group > label {
    display: block;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--cw-text-secondary);
    margin-bottom: 6px;
    transition: color var(--cw-transition);
}

html.cropwise-landing .form-group .form-control:focus + label,
html.cropwise-landing .form-group:focus-within > label {
    color: var(--cw-primary);
}

html.cropwise-landing .form-group .form-control.is-invalid,
html.cropwise-landing .form-group .form-control:invalid:not(:placeholder-shown) {
    border-color: var(--cw-gold) !important;
    box-shadow: 0 0 0 3px rgba(244, 196, 48, 0.2) !important;
}

html.cropwise-landing .auth-field label {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--cw-text-secondary);
    margin-bottom: 6px;
    display: block;
}

html.cropwise-landing .auth-input-wrap {
    position: relative;
}

html.cropwise-landing .auth-input:focus {
    border-color: var(--cw-primary) !important;
    box-shadow: 0 0 0 3px rgba(46, 107, 45, 0.15) !important;
}

/* ?? Charts ?????????????????????????????????????????????????????????? */
html.cropwise-landing .chart-container,
html.cropwise-landing .card-body canvas {
    background: var(--cw-surface);
    border-radius: var(--cw-radius-nav);
}

html.cropwise-landing[data-theme="dark"] .chart-container,
html.cropwise-landing[data-theme="dark"] .card-body canvas {
    background: var(--cw-surface);
}

/* ?? Notification panel ?????????????????????????????????????????????? */
html.cropwise-landing .notification-panel {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    min-width: 320px;
    max-height: 400px;
    overflow-y: auto;
    z-index: 300;
    animation: cwSlideUp 200ms ease;
}

html.cropwise-landing .notification-panel__header {
    padding: 14px 18px;
    border-bottom: 1px solid var(--cw-card-border);
    font-weight: 700;
    color: var(--cw-text);
}

html.cropwise-landing .notification-item {
    padding: 12px 18px;
    border-bottom: 1px solid var(--cw-card-border);
    font-size: 0.88rem;
    color: var(--cw-text-secondary);
    transition: background var(--cw-transition);
}

html.cropwise-landing .notification-item.unread {
    border-left: 3px solid var(--cw-gold);
}

html.cropwise-landing .user-dropdown {
    animation: cwSlideUp 180ms ease;
}

html.cropwise-landing .dropdown-item {
    color: var(--cw-text) !important;
}

html.cropwise-landing .dropdown-item:hover {
    background: rgba(46, 107, 45, 0.08) !important;
}

html.cropwise-landing .dropdown-item.logout-item:hover {
    background: rgba(198, 40, 40, 0.08) !important;
    color: var(--cw-danger) !important;
}

/* ?? Fade-in on scroll ??????????????????????????????????????????????? */
html.cropwise-landing .cw-fade-in {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 220ms ease, transform 220ms ease;
}

html.cropwise-landing .cw-fade-in.cw-visible {
    opacity: 1;
    transform: translateY(0);
}

/* ?? Auth page ??????????????????????????????????????????????????????? */
html.cropwise-landing body.auth-page {
    background: var(--cw-bg) !important;
}

html.cropwise-landing .auth-card {
    animation: cwSlideUp 240ms ease both;
}

html.cropwise-landing .auth-submit {
    width: 100%;
    margin-top: 8px;
}

/* ?? Dark theme dashboard extras ????????????????????????????????????? */
html.cropwise-landing.tech-dashboard[data-theme="dark"] .card,
html.cropwise-landing.tech-dashboard[data-theme="dark"] .stat-card,
html.cropwise-landing.tech-dashboard[data-theme="dark"] .content-card {
    background: var(--cw-surface) !important;
    border-color: var(--cw-card-border) !important;
}

html.cropwise-landing.tech-dashboard[data-theme="dark"] .table thead th {
    background: var(--cw-surface-2) !important;
}

html.cropwise-landing.tech-dashboard[data-theme="dark"] .admin-activity-item:hover {
    background: rgba(255, 255, 255, 0.04);
}

/* ?? Status pills (inline) ??????????????????????????????????????????? */
html.cropwise-landing .status-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
}

html.cropwise-landing .status-pill--success { background: rgba(46, 125, 50, 0.15); color: var(--cw-success); }
html.cropwise-landing .status-pill--pending { background: rgba(244, 196, 48, 0.2); color: #8A6D00; }
html.cropwise-landing .status-pill--rejected { background: rgba(198, 40, 40, 0.12); color: var(--cw-danger); }
html.cropwise-landing .status-pill--archived { background: rgba(68, 68, 68, 0.12); color: var(--cw-dark-gray); }

/* ?? Premium nav (landing) ??????????????????????????????????????????? */
html.cropwise-landing .premium-nav {
    background: transparent;
}

html.cropwise-landing .premium-nav.scrolled .nav-logo,
html.cropwise-landing .premium-nav.scrolled .nav-links a {
    color: var(--cw-text);
}

html.cropwise-landing .nav-links a {
    transition: color var(--cw-transition);
}

html.cropwise-landing .nav-links a:hover {
    color: var(--cw-primary);
}

/* ?? Focus visible (WCAG AA) ????????????????????????????????????????? */
html.cropwise-landing :focus-visible {
    outline: 2px solid var(--cw-primary);
    outline-offset: 2px;
}

html.cropwise-landing .btn:focus-visible {
    outline-color: var(--cw-gold);
}

/* ==========================================================================
   Government Digital Portal ? Authoritative UI Layer
   Navy blue professional interface (visual only)
   ========================================================================== */
html.cropwise-landing {
    --cw-primary: #1B5E20;
    --cw-primary-hover: #2E7D32;
    --cw-secondary: #388E3C;
    --cw-light-green: #A5D6A7;
    --cw-gold: #388E3C;
    --cw-light-yellow: #E8F5E9;
    --cw-olive: #66BB6A;
    --cw-bg: #F8FAFC;
    --cw-white: #FFFFFF;
    --cw-dark-gray: #4B5563;
    --cw-black: #1F2937;
    --cw-success: #16A34A;
    --cw-warning: #F59E0B;
    --cw-danger: #DC2626;
    --cw-info: #388E3C;
    --cw-sidebar-bg: #1B5E20;
    --cw-sidebar-hover: #2E7D32;
    --cw-sidebar-active: #FFFFFF;
    --cw-sidebar-text: #FFFFFF;
    --cw-surface: #FFFFFF;
    --cw-surface-2: #F8FAFC;
    --cw-card-border: #E5E7EB;
    --cw-input-border: #D1D5DB;
    --cw-text: #1F2937;
    --cw-text-secondary: #374151;
    --cw-text-muted: #6B7280;
    --cw-radius-card: 12px;
    --cw-radius-btn: 10px;
    --cw-radius-input: 10px;
    --cw-radius-nav: 10px;
    --cw-shadow: 0 4px 16px rgba(27, 94, 32, 0.08);
    --cw-shadow-hover: 0 8px 24px rgba(27, 94, 32, 0.12);
    --cw-shadow-soft: 0 1px 2px rgba(31, 41, 55, 0.04), 0 8px 20px rgba(27, 94, 32, 0.06);
    --cw-transition: 180ms cubic-bezier(0.4, 0, 0.2, 1);
    --bg-primary: var(--cw-bg);
    --bg-secondary: var(--cw-surface);
    --bg-elevated: #FFFFFF;
    --glass-bg: var(--cw-surface);
    --glass-border: var(--cw-card-border);
    --text-primary: var(--cw-text);
    --text-secondary: var(--cw-text-secondary);
    --text-muted: var(--cw-text-muted);
    --accent-blue: var(--cw-secondary);
    --accent-purple: var(--cw-primary);
    --accent-cyan: var(--cw-secondary);
    --gradient-main: linear-gradient(135deg, #1B5E20 0%, #388E3C 55%, #66BB6A 100%);
    --gradient-soft: linear-gradient(135deg, rgba(27, 94, 32, 0.08), rgba(56, 142, 60, 0.06));
    --shadow-card: var(--cw-shadow);
    --shadow-glow: 0 20px 50px rgba(27, 94, 32, 0.14);
    --brand-border: rgba(27, 94, 32, 0.2);
    --brand-tint: rgba(27, 94, 32, 0.06);
    --brand-tint-strong: rgba(56, 142, 60, 0.1);
    --hero-bg-base: linear-gradient(150deg, #F8FAFC 0%, #FFFFFF 48%, #F1F8E9 100%);
    color-scheme: light;
}

html.cropwise-landing[data-theme="dark"] {
    --cw-bg: #0F172A;
    --cw-surface: #1E293B;
    --cw-surface-2: #111827;
    --cw-card-border: rgba(255, 255, 255, 0.08);
    --cw-input-border: rgba(255, 255, 255, 0.12);
    --cw-text: #F9FAFB;
    --cw-text-secondary: #E5E7EB;
    --cw-text-muted: #9CA3AF;
    --cw-sidebar-bg: #111827;
    --cw-sidebar-hover: #1B5E20;
    --cw-sidebar-active: #FFFFFF;
    --cw-sidebar-text: #F9FAFB;
    --cw-primary: #388E3C;
    --cw-primary-hover: #66BB6A;
    --cw-secondary: #81C784;
    --bg-primary: var(--cw-bg);
    --bg-secondary: var(--cw-surface-2);
    --bg-elevated: var(--cw-surface);
    --glass-bg: var(--cw-surface);
    --glass-border: var(--cw-card-border);
    --text-primary: var(--cw-text);
    --text-secondary: var(--cw-text-secondary);
    --text-muted: var(--cw-text-muted);
    --shadow-card: 0 12px 32px rgba(0, 0, 0, 0.3);
    --shadow-glow: 0 20px 50px rgba(56, 142, 60, 0.15);
    --brand-border: rgba(129, 199, 132, 0.2);
    --brand-tint: rgba(56, 142, 60, 0.1);
    --brand-tint-strong: rgba(102, 187, 106, 0.14);
    --gradient-main: linear-gradient(135deg, #1B5E20 0%, #388E3C 55%, #66BB6A 100%);
    --hero-bg-base: linear-gradient(150deg, #0F172A 0%, #111827 48%, #1E293B 100%);
    --footer-bg: linear-gradient(180deg, #111827 0%, #0F172A 55%, #1E293B 100%);
    --footer-divider: rgba(148, 163, 184, 0.22);
    --footer-text: #F9FAFB;
    --footer-muted: #CBD5E1;
    --footer-faint: #94A3B8;
    --footer-link: #94A3B8;
    --footer-link-hover: #A5D6A7;
    --footer-heading: #A5D6A7;
    --footer-input-bg: #1E293B;
    --footer-input-border: rgba(148, 163, 184, 0.3);
    --footer-input-text: #F9FAFB;
    --footer-input-placeholder: #94A3B8;
    color-scheme: dark;
}

html.cropwise-landing,
html.cropwise-landing body {
    font-size: 15px;
    letter-spacing: -0.01em;
}

html.cropwise-landing h1,
html.cropwise-landing .top-header h1 {
    font-size: clamp(1.35rem, 1.1rem + 1vw, 2rem);
    line-height: 1.2;
    letter-spacing: -0.04em;
}

html.cropwise-landing h2 { font-size: clamp(1.35rem, 1.1rem + 0.75vw, 1.5rem); }
html.cropwise-landing small,
html.cropwise-landing .caption { font-size: 13px; }

html.cropwise-landing .dashboard-container {
    background: var(--cw-bg);
}

html.cropwise-landing.tech-dashboard .sidebar {
    width: 280px !important;
    background: var(--cw-sidebar-bg) !important;
    border-right: 1px solid var(--cw-card-border) !important;
    box-shadow: 10px 0 30px rgba(15, 23, 42, 0.03);
    padding: 14px 10px;
    transition: width var(--cw-transition), transform var(--cw-transition), background var(--cw-transition);
}

html.cropwise-landing.tech-dashboard .sidebar.collapsed {
    width: 78px !important;
}

html.cropwise-landing.tech-dashboard .main-content {
    margin-left: 280px;
    transition: margin-left var(--cw-transition);
}

html.cropwise-landing.tech-dashboard .main-content.expanded {
    margin-left: 78px;
}

html.cropwise-landing.tech-dashboard .sidebar-header {
    padding: 14px 12px 18px;
    margin-bottom: 8px;
}

html.cropwise-landing.tech-dashboard .sidebar-brand {
    min-height: 48px;
    gap: 12px;
}

html.cropwise-landing.tech-dashboard .sidebar-logo-icon {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: linear-gradient(135deg, #F1F8E9, #FFFFFF);
    box-shadow: inset 0 0 0 1px var(--cw-card-border), 0 10px 20px rgba(27, 94, 32, 0.08);
}

html.cropwise-landing.tech-dashboard .sidebar-brand-text strong {
    color: #FFFFFF !important;
    font-size: 0.98rem;
    letter-spacing: -0.02em;
}

html.cropwise-landing.tech-dashboard .sidebar-brand-text small {
    color: rgba(255, 255, 255, 0.78) !important;
    font-weight: 500;
}

html.cropwise-landing.tech-dashboard .nav-menu {
    gap: 2px;
}

html.cropwise-landing.tech-dashboard .nav-section-title {
    color: var(--cw-text-muted) !important;
    padding: 20px 14px 7px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
}

html.cropwise-landing.tech-dashboard .nav-link {
    min-height: 44px;
    padding: 11px 13px;
    margin: 3px 0;
    gap: 12px;
    color: var(--cw-sidebar-text) !important;
    border: 0 !important;
    border-radius: 14px;
    font-weight: 600;
    letter-spacing: -0.01em;
    transition: background var(--cw-transition), color var(--cw-transition), transform var(--cw-transition);
}

html.cropwise-landing.tech-dashboard .nav-link i,
html.cropwise-landing.tech-dashboard .nav-link svg {
    color: inherit !important;
}

html.cropwise-landing.tech-dashboard .nav-link:hover {
    background: var(--cw-sidebar-hover) !important;
    color: #FFFFFF !important;
    transform: translateX(2px);
}

html.cropwise-landing.tech-dashboard .nav-link.active {
    background: #FFFFFF !important;
    color: #1B5E20 !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

html.cropwise-landing.tech-dashboard .nav-link.active i {
    color: #1B5E20 !important;
}

html.cropwise-landing.tech-dashboard .nav-link.active::before {
    display: none;
}

html.cropwise-landing.tech-dashboard .sidebar-footer {
    padding: 12px 0 0;
}

html.cropwise-landing.tech-dashboard .logout-btn {
    min-height: 44px;
    background: transparent !important;
    border: 0 !important;
    color: var(--cw-sidebar-text) !important;
    border-radius: 14px !important;
    font-weight: 600;
    transition: background var(--cw-transition), color var(--cw-transition), transform var(--cw-transition);
}

html.cropwise-landing.tech-dashboard .logout-btn:hover,
html.cropwise-landing.tech-dashboard .logout-btn:hover i,
html.cropwise-landing.tech-dashboard .logout-btn:hover svg {
    background: rgba(239, 68, 68, 0.08) !important;
    color: var(--cw-danger) !important;
}

html.cropwise-landing.tech-dashboard .top-header {
    position: sticky;
    top: 0;
    z-index: 120;
    min-height: 72px;
    padding: 0 28px;
    background: rgba(255, 255, 255, 0.84) !important;
    border-bottom: 1px solid rgba(226, 232, 240, 0.8) !important;
    box-shadow: 0 1px 0 rgba(15, 23, 42, 0.02), 0 12px 26px rgba(15, 23, 42, 0.04);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

html.cropwise-landing.tech-dashboard[data-theme="dark"] .top-header {
    background: rgba(17, 24, 39, 0.86) !important;
    border-bottom-color: var(--cw-card-border) !important;
}

html.cropwise-landing .topbar-search {
    position: relative;
    flex: 1 1 320px;
    max-width: 440px;
    min-width: 220px;
}

html.cropwise-landing .topbar-search i,
html.cropwise-landing .topbar-search svg {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--cw-text-muted);
    pointer-events: none;
}

html.cropwise-landing .topbar-search input {
    width: 100%;
    min-height: 42px;
    padding: 10px 14px 10px 42px;
    background: var(--cw-surface-2) !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    color: var(--cw-text) !important;
    font-size: 0.92rem;
}

html.cropwise-landing .topbar-search input:focus {
    background: var(--cw-surface) !important;
    border-color: var(--cw-secondary) !important;
    box-shadow: 0 0 0 4px rgba(20, 184, 166, 0.14) !important;
}

html.cropwise-landing .topbar-icon-btn,
html.cropwise-landing.tech-dashboard .topbar-theme,
html.cropwise-landing.tech-dashboard .sidebar-toggle,
html.cropwise-landing.tech-dashboard .menu-toggle,
html.cropwise-landing .theme-toggle {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--cw-surface) !important;
    border: 1px solid var(--cw-card-border) !important;
    color: var(--cw-text-secondary) !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
    transition: transform var(--cw-transition), color var(--cw-transition), background var(--cw-transition), border-color var(--cw-transition);
}

html.cropwise-landing .topbar-icon-btn:hover,
html.cropwise-landing.tech-dashboard .topbar-theme:hover,
html.cropwise-landing.tech-dashboard .sidebar-toggle:hover,
html.cropwise-landing.tech-dashboard .menu-toggle:hover,
html.cropwise-landing .theme-toggle:hover {
    background: #F1F8E9 !important;
    border-color: rgba(20, 184, 166, 0.25) !important;
    color: var(--cw-primary) !important;
    transform: scale(1.03);
}

html.cropwise-landing.tech-dashboard .user-info {
    gap: 10px;
}

html.cropwise-landing.tech-dashboard .user-avatar {
    width: 42px;
    height: 42px;
    background: linear-gradient(135deg, #E8F5E9, #FFFFFF);
    border: 1px solid rgba(20, 184, 166, 0.22);
    color: #1B5E20;
    box-shadow: 0 10px 26px rgba(27, 94, 32, 0.12);
}

html.cropwise-landing.tech-dashboard[data-theme="dark"] .user-avatar {
    background: rgba(20, 184, 166, 0.14);
    color: #81C784;
}

html.cropwise-landing.tech-dashboard .user-info__welcome,
html.cropwise-landing.tech-dashboard .user-info > span {
    color: var(--cw-text-secondary);
    font-weight: 600;
}

html.cropwise-landing .content-card,
html.cropwise-landing .stat-card,
html.cropwise-landing .glass,
html.cropwise-landing .feature-card,
html.cropwise-landing .about-intro,
html.cropwise-landing .about-step,
html.cropwise-landing .pricing-card,
html.cropwise-landing .auth-card,
html.cropwise-landing.tech-dashboard .card,
html.cropwise-landing.tech-dashboard .panel,
html.cropwise-landing.tech-dashboard .tech-card,
html.cropwise-landing.tech-dashboard .content-card {
    background: var(--cw-surface) !important;
    border: 1px solid var(--cw-card-border) !important;
    border-radius: 18px !important;
    box-shadow: var(--cw-shadow-soft);
}

html.cropwise-landing .content-card:hover,
html.cropwise-landing .stat-card:hover,
html.cropwise-landing .feature-card:hover,
html.cropwise-landing.tech-dashboard .card:hover,
html.cropwise-landing.tech-dashboard .content-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--cw-shadow-hover);
}

html.cropwise-landing.tech-dashboard .page-content {
    padding: 28px;
    background: var(--cw-bg) !important;
}

html.cropwise-landing .welcome-banner,
html.cropwise-landing .dashboard-welcome,
html.cropwise-landing .hero-card,
html.cropwise-landing .overview-hero {
    background: linear-gradient(135deg, #1B5E20 0%, #388E3C 58%, #66BB6A 100%) !important;
    color: #FFFFFF !important;
    border: 0 !important;
    border-radius: 24px !important;
    box-shadow: 0 24px 60px rgba(27, 94, 32, 0.22);
}

html.cropwise-landing .welcome-banner *,
html.cropwise-landing .dashboard-welcome *,
html.cropwise-landing .overview-hero * {
    color: inherit !important;
}

html.cropwise-landing .stat-card {
    min-height: 132px;
    padding: 22px !important;
    border-left: 0 !important;
}

html.cropwise-landing.tech-dashboard .stat-card {
    border-left: 0 !important;
}

html.cropwise-landing.tech-dashboard .stat-card::before {
    content: "";
    display: block;
    width: 44px;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--cw-primary), var(--cw-secondary));
    margin-bottom: 16px;
}

html.cropwise-landing.tech-dashboard .stat-card .stat-icon {
    background: #F1F8E9 !important;
    color: var(--cw-primary) !important;
    border-radius: 16px !important;
}

html.cropwise-landing .btn {
    min-height: 42px;
    padding: 10px 16px;
    border-radius: 12px;
    font-weight: 600;
    letter-spacing: -0.01em;
    transition: transform var(--cw-transition), box-shadow var(--cw-transition), background var(--cw-transition), border-color var(--cw-transition), color var(--cw-transition);
}

html.cropwise-landing .btn:hover {
    transform: translateY(-1px) scale(1.01);
}

html.cropwise-landing .btn-primary {
    background: var(--cw-primary) !important;
    color: #FFFFFF !important;
    box-shadow: 0 12px 26px rgba(27, 94, 32, 0.18);
}

html.cropwise-landing .btn-primary:hover {
    background: var(--cw-primary-hover) !important;
    box-shadow: 0 16px 32px rgba(27, 94, 32, 0.24);
}

html.cropwise-landing .btn-secondary,
html.cropwise-landing .btn.btn-secondary,
html.cropwise-landing .btn-ghost {
    background: var(--cw-surface) !important;
    color: var(--cw-primary) !important;
    border: 1px solid rgba(27, 94, 32, 0.22) !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}

html.cropwise-landing .btn-secondary:hover,
html.cropwise-landing .btn-ghost:hover {
    background: #F1F8E9 !important;
    border-color: rgba(27, 94, 32, 0.34) !important;
}

html.cropwise-landing .form-control,
html.cropwise-landing input,
html.cropwise-landing select,
html.cropwise-landing textarea,
html.cropwise-landing .auth-input,
html.cropwise-landing .cw-select__trigger {
    min-height: 44px;
    background: var(--cw-surface) !important;
    border: 1px solid var(--cw-input-border) !important;
    border-radius: 12px !important;
    color: var(--cw-text) !important;
    box-shadow: 0 1px 0 rgba(15, 23, 42, 0.02);
}

html.cropwise-landing .form-control:focus,
html.cropwise-landing input:focus,
html.cropwise-landing select:focus,
html.cropwise-landing textarea:focus,
html.cropwise-landing .auth-input:focus,
html.cropwise-landing .cw-select.is-open .cw-select__trigger {
    border-color: var(--cw-secondary) !important;
    box-shadow: 0 0 0 4px rgba(20, 184, 166, 0.14) !important;
}

html.cropwise-landing .form-group > label,
html.cropwise-landing .auth-field label {
    color: var(--cw-text-secondary);
    font-size: 13px;
    font-weight: 600;
}

html.cropwise-landing .table-responsive {
    border-radius: 16px;
    border: 1px solid var(--cw-card-border);
    box-shadow: var(--cw-shadow-soft);
}

html.cropwise-landing .table {
    background: var(--cw-surface);
}

html.cropwise-landing .table thead th {
    background: var(--cw-surface-2) !important;
    color: var(--cw-text-secondary) !important;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    border-bottom: 1px solid var(--cw-card-border) !important;
}

html.cropwise-landing .table td {
    color: var(--cw-text-secondary) !important;
    border-color: rgba(226, 232, 240, 0.8) !important;
}

html.cropwise-landing .table tbody tr:nth-child(even) {
    background: transparent;
}

html.cropwise-landing .table tbody tr:hover,
html.cropwise-landing .table tbody tr.selected {
    background: #F1F8E9 !important;
}

html.cropwise-landing[data-theme="dark"] .table tbody tr:hover,
html.cropwise-landing[data-theme="dark"] .table tbody tr.selected {
    background: rgba(20, 184, 166, 0.1) !important;
}

html.cropwise-landing .badge,
html.cropwise-landing [class*="badge-"],
html.cropwise-landing .status-pill {
    border-radius: 999px !important;
    border: 0 !important;
    font-weight: 700;
    padding: 5px 10px;
}

html.cropwise-landing .badge-success,
html.cropwise-landing .badge-completed,
html.cropwise-landing .status-pill--success,
html.cropwise-landing .status-pill--completed {
    background: rgba(16, 185, 129, 0.12) !important;
    color: #047857 !important;
}

html.cropwise-landing .badge-active,
html.cropwise-landing .status-pill--active {
    background: rgba(27, 94, 32, 0.12) !important;
    color: #1B5E20 !important;
}

html.cropwise-landing .badge-warning,
html.cropwise-landing .badge-pending,
html.cropwise-landing .status-pill--pending {
    background: rgba(245, 158, 11, 0.14) !important;
    color: #B45309 !important;
}

html.cropwise-landing .badge-danger,
html.cropwise-landing .badge-rejected,
html.cropwise-landing .badge-cancelled,
html.cropwise-landing .status-pill--rejected,
html.cropwise-landing .status-pill--cancelled {
    background: rgba(239, 68, 68, 0.12) !important;
    color: #DC2626 !important;
}

html.cropwise-landing .badge-secondary,
html.cropwise-landing .badge-draft,
html.cropwise-landing .badge-archived,
html.cropwise-landing .status-pill--draft,
html.cropwise-landing .status-pill--archived {
    background: rgba(100, 116, 139, 0.12) !important;
    color: #475569 !important;
}

html.cropwise-landing .badge-info {
    background: rgba(14, 165, 233, 0.12) !important;
    color: #0369A1 !important;
}

html.cropwise-landing .premium-nav.scrolled {
    background: rgba(255, 255, 255, 0.86) !important;
    border-bottom: 1px solid rgba(226, 232, 240, 0.75);
    box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06);
}

html.cropwise-landing[data-theme="dark"] .premium-nav.scrolled {
    background: rgba(17, 24, 39, 0.86) !important;
}

html.cropwise-landing .hero.hero-media .hero-badge,
html.cropwise-landing .section-label,
html.cropwise-landing .pricing-badge,
html.cropwise-landing .nav-portal-badge {
    background: rgba(204, 251, 241, 0.18) !important;
    border: 1px solid rgba(94, 234, 212, 0.32) !important;
    color: #FFFFFF;
    border-radius: 999px;
}

html.cropwise-landing .nav-portal-badge,
html.cropwise-landing .section-label,
html.cropwise-landing .pricing-badge {
    color: var(--cw-primary) !important;
}

html.cropwise-landing .hero-tag {
    background: rgba(255, 255, 255, 0.16) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: #FFFFFF !important;
    backdrop-filter: blur(12px);
}

html.cropwise-landing .slider-progress,
html.cropwise-landing .nav-links a.active::after {
    background: var(--cw-secondary) !important;
}

html.cropwise-landing .feature-icon,
html.cropwise-landing .about-icon {
    background: #F1F8E9 !important;
    color: var(--cw-primary) !important;
    border-radius: 16px;
}

html.cropwise-landing .auth-main {
    background:
        radial-gradient(circle at 20% 10%, rgba(20, 184, 166, 0.16), transparent 32%),
        radial-gradient(circle at 80% 80%, rgba(6, 182, 212, 0.12), transparent 34%),
        var(--cw-bg);
}

html.cropwise-landing .auth-card {
    max-width: 460px;
    padding: 44px 38px;
    border-radius: 24px !important;
    box-shadow: 0 24px 70px rgba(27, 94, 32, 0.14);
    position: relative;
    overflow: hidden;
}

html.cropwise-landing .auth-card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 5px;
    background: linear-gradient(90deg, #1B5E20, #388E3C, #66BB6A);
}

html.cropwise-landing .auth-logo {
    width: 82px;
    height: 82px;
    padding: 10px;
    border-radius: 22px;
    background: #F1F8E9;
    box-shadow: inset 0 0 0 1px rgba(20, 184, 166, 0.18);
}

html.cropwise-landing .auth-header h1 {
    color: var(--cw-text);
    font-size: 2rem;
}

html.cropwise-landing .gradient-text {
    background: linear-gradient(135deg, #1B5E20, #66BB6A);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

html.cropwise-landing [id$="Modal"] > div,
html.cropwise-landing .tech-modal {
    animation: cwModalZoom 200ms ease;
    box-shadow: 0 30px 80px rgba(15, 23, 42, 0.22);
}

@keyframes cwModalZoom {
    from { opacity: 0; transform: translateY(10px) scale(0.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

html.cropwise-landing .chart-container,
html.cropwise-landing .card-body canvas {
    background: var(--cw-surface);
    border-radius: 16px;
}

html.cropwise-landing :focus-visible {
    outline: 2px solid var(--cw-secondary);
    outline-offset: 3px;
}

@media (max-width: 1024px) {
    html.cropwise-landing.tech-dashboard .main-content,
    html.cropwise-landing.tech-dashboard .main-content.expanded {
        margin-left: 0;
    }

    html.cropwise-landing.tech-dashboard .sidebar {
        transform: translateX(-100%);
        width: 280px !important;
    }

    html.cropwise-landing.tech-dashboard .sidebar.mobile-open,
    html.cropwise-landing.tech-dashboard .sidebar.active {
        transform: translateX(0);
    }

    html.cropwise-landing.tech-dashboard .top-header {
        padding: 0 18px;
    }
}

@media (max-width: 768px) {
    html.cropwise-landing.tech-dashboard .top-header {
        min-height: auto;
        padding: 12px 16px;
        gap: 12px;
        flex-wrap: wrap;
    }

    html.cropwise-landing .topbar-search {
        order: 3;
        flex-basis: 100%;
        max-width: none;
    }

    html.cropwise-landing.tech-dashboard .page-content {
        padding: 18px 14px;
    }

    html.cropwise-landing .auth-card {
        padding: 38px 24px;
    }
}

/* ==========================================================================
   Dark-mode text readability (contrast only ? no layout/background changes)
   Landing sections define --surface-* text tokens as dark values for all
   themes, which become invisible on the dark-mode surfaces. Remap them to
   light values so every heading, paragraph, label, and link stays legible.
   ========================================================================== */
html.cropwise-landing[data-theme="dark"] {
    --surface-heading: #F4FBF4;
    --surface-body: #DCEEDC;
    --surface-body-muted: #B8D6BA;
    --surface-body-faint: #AFC8B1;
    --surface-placeholder: #AFC8B1;
    --surface-accent: #A5D6A7;
    --tag-text: #F4FBF4;
    --chip-text: #C8E6C9;
    --text-primary: #F4FBF4;
    --text-secondary: #DCEEDC;
    --text-muted: #AFC8B1;
}

html.cropwise-landing[data-theme="dark"] .hero.hero-media .slide-text h2,
html.cropwise-landing[data-theme="dark"] .section-header h2,
html.cropwise-landing[data-theme="dark"] .slide-text h2,
html.cropwise-landing[data-theme="dark"] .feature-card h3,
html.cropwise-landing[data-theme="dark"] .about-intro h3,
html.cropwise-landing[data-theme="dark"] .about-step h4,
html.cropwise-landing[data-theme="dark"] .pricing-name,
html.cropwise-landing[data-theme="dark"] .pricing-price {
    color: #F4FBF4 !important;
    -webkit-text-fill-color: #F4FBF4 !important;
}

html.cropwise-landing[data-theme="dark"] .slide-text p,
html.cropwise-landing[data-theme="dark"] .section-header p,
html.cropwise-landing[data-theme="dark"] .feature-card p,
html.cropwise-landing[data-theme="dark"] .about-intro > p,
html.cropwise-landing[data-theme="dark"] .about-list li,
html.cropwise-landing[data-theme="dark"] .about-step p,
html.cropwise-landing[data-theme="dark"] .pricing-desc,
html.cropwise-landing[data-theme="dark"] .pricing-features li,
html.cropwise-landing[data-theme="dark"] .about-step-number {
    color: #DCEEDC !important;
}

html.cropwise-landing[data-theme="dark"] .premium-nav.scrolled .nav-links a {
    color: #CBD5E1;
}

html.cropwise-landing[data-theme="dark"] .premium-nav.scrolled .nav-links a:hover,
html.cropwise-landing[data-theme="dark"] .premium-nav.scrolled .nav-links a.active {
    color: #81C784;
}

/* Feature/about icon tiles in dark mode use dark green chips ? light glyphs for contrast */
html.cropwise-landing[data-theme="dark"] .feature-icon i,
html.cropwise-landing[data-theme="dark"] .feature-icon svg,
html.cropwise-landing[data-theme="dark"] .about-icon i,
html.cropwise-landing[data-theme="dark"] .about-icon svg {
    color: #A5D6A7 !important;
}

/* Footer ? theme-aware (updates with light/dark toggle) */
html.cropwise-landing .premium-footer {
    background: var(--footer-bg) !important;
    border-top: 1px solid var(--footer-divider) !important;
    color: var(--footer-muted);
    transition: background var(--cw-transition), border-color var(--cw-transition), color var(--cw-transition);
}

html.cropwise-landing .premium-footer .nav-logo {
    color: var(--footer-text) !important;
    -webkit-text-fill-color: var(--footer-text) !important;
    font-weight: 700;
}

html.cropwise-landing .premium-footer .footer-brand p {
    color: var(--footer-muted) !important;
    font-weight: 400;
}

html.cropwise-landing .premium-footer .footer-col h4 {
    color: var(--footer-heading) !important;
    font-weight: 700;
}

html.cropwise-landing .premium-footer .footer-col a {
    color: var(--footer-link) !important;
    font-weight: 500;
}

html.cropwise-landing .premium-footer .footer-col a:hover {
    color: var(--footer-link-hover) !important;
}

html.cropwise-landing .premium-footer .footer-bottom,
html.cropwise-landing .premium-footer .footer-bottom span {
    color: var(--footer-faint) !important;
    font-weight: 500;
    border-top-color: var(--footer-divider);
}

html.cropwise-landing .premium-footer .newsletter input {
    background: var(--footer-input-bg) !important;
    border: 1px solid var(--footer-input-border) !important;
    color: var(--footer-input-text) !important;
}

html.cropwise-landing .premium-footer .newsletter input::placeholder {
    color: var(--footer-input-placeholder) !important;
    opacity: 1;
}

html.cropwise-landing .premium-footer .newsletter input:focus {
    border-color: var(--cw-secondary) !important;
    box-shadow: 0 0 0 3px rgba(56, 142, 60, 0.2) !important;
    outline: none;
}

/* ?? Government portal: high-contrast readable text (all surfaces) ??? */
html.cropwise-landing label,
html.cropwise-landing .form-group > label,
html.cropwise-landing .auth-field label {
    color: #374151 !important;
    font-weight: 600;
}

html.cropwise-landing input::placeholder,
html.cropwise-landing textarea::placeholder,
html.cropwise-landing select::placeholder {
    color: #9CA3AF !important;
    opacity: 1;
}

html.cropwise-landing .table td,
html.cropwise-landing .table th {
    font-size: 0.92rem;
}

html.cropwise-landing[data-theme="dark"] label,
html.cropwise-landing[data-theme="dark"] .form-group > label,
html.cropwise-landing[data-theme="dark"] .auth-field label {
    color: #E5E7EB !important;
}

/* ==========================================================================
   Landing hero ? organized government portal layout (functionality unchanged)
   ========================================================================== */
html.cropwise-landing .hero.hero-media {
    min-height: 100dvh;
    height: 100dvh;
    max-height: 100dvh;
    align-items: stretch;
}

html.cropwise-landing .hero.hero-media::before {
    background: var(--hero-veil) !important;
    pointer-events: none !important;
}

html.cropwise-landing .hero-media__soft-da,
html.cropwise-landing .hero-media__soft-da img {
    pointer-events: none !important;
}

html.cropwise-landing .hero-media__frame {
    display: flex;
    align-items: center;
    flex: 1;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: calc(var(--nav-height, 72px) + 120px) 32px 48px;
    box-sizing: border-box;
}

html.cropwise-landing .hero.hero-media .hero-content.reveal {
    opacity: 1 !important;
    transform: none !important;
}

html.cropwise-landing .hero.hero-media .hero-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    width: 100%;
    max-width: 480px;
    position: relative;
    margin-top: 48px;
    padding: 18px 20px;
    border-radius: 14px;
    background: rgba(15, 23, 42, 0.22);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 18px 48px rgba(15, 23, 42, 0.18);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    z-index: 4;
    pointer-events: auto;
}

html.cropwise-landing .hero.hero-media::before {
    background: var(--hero-veil) !important;
}

html.cropwise-landing .hero-media__soft-da img {
    mask-image: linear-gradient(
        98deg,
        transparent 0%,
        transparent 34%,
        rgba(0, 0, 0, 0.18) 46%,
        rgba(0, 0, 0, 0.42) 56%,
        rgba(0, 0, 0, 0.68) 66%,
        rgba(0, 0, 0, 0.88) 76%,
        #000 86%,
        #000 100%
    );
    -webkit-mask-image: linear-gradient(
        98deg,
        transparent 0%,
        transparent 34%,
        rgba(0, 0, 0, 0.18) 46%,
        rgba(0, 0, 0, 0.42) 56%,
        rgba(0, 0, 0, 0.68) 66%,
        rgba(0, 0, 0, 0.88) 76%,
        #000 86%,
        #000 100%
    );
    pointer-events: none !important;
}

html.cropwise-landing .hero.hero-media .hero-brand-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 10px;
    width: 100%;
    min-width: 0;
}

html.cropwise-landing .hero.hero-media .hero-agri-logo {
    width: 42px;
    height: 42px;
    object-fit: contain;
    flex-shrink: 0;
    border-radius: 0;
    background: transparent !important;
    padding: 0;
    box-shadow: none;
}

html.cropwise-landing .hero.hero-media .hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    padding: 5px 10px;
    font-size: 0.68rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: #FFFFFF !important;
    background: rgba(255, 255, 255, 0.12) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    border-radius: 999px;
    min-width: 0;
    line-height: 1.25;
}

html.cropwise-landing .hero.hero-media h1 {
    margin: 0 0 8px;
    font-size: clamp(1.75rem, 3.4vw, 2.35rem);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -0.03em;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

html.cropwise-landing .hero.hero-media .hero-title-accent {
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    background: linear-gradient(120deg, #ffffff 0%, #e8f5e9 42%, #c8e6c9 100%) !important;
    background-size: 180% 100% !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
}

html.cropwise-landing .hero.hero-media .hero-desc {
    margin: 0 0 12px;
    max-width: 46ch;
    font-size: 0.9rem;
    line-height: 1.5;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.92) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.92) !important;
}

html.cropwise-landing .hero.hero-media .hero-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 14px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
    width: 100%;
}

html.cropwise-landing .hero.hero-media .hero-tag {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 9px;
    font-size: 0.72rem;
    font-weight: 600;
    color: #FFFFFF !important;
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    border-radius: 999px;
}

html.cropwise-landing .hero.hero-media .hero-tag i {
    color: #A5D6A7 !important;
    font-size: 0.72rem;
}

html.cropwise-landing .hero.hero-media .hero-ctas {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    width: 100%;
    margin: 0;
}

html.cropwise-landing .hero.hero-media .hero-ctas .btn-primary {
    min-width: 0;
    padding: 9px 14px;
    font-size: 0.85rem;
    font-weight: 600;
    box-shadow: 0 6px 18px rgba(27, 94, 32, 0.32);
}

html.cropwise-landing .hero.hero-media .hero-ctas .btn-ghost {
    min-width: 0;
    padding: 9px 14px;
    font-size: 0.85rem;
    font-weight: 600;
    color: #1B5E20 !important;
    background: #FFFFFF !important;
    border: 1px solid rgba(255, 255, 255, 0.85) !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.12);
}

html.cropwise-landing .hero.hero-media .hero-ctas .btn-ghost:hover {
    background: #F1F8E9 !important;
    border-color: #FFFFFF !important;
    color: #2E7D32 !important;
}

html.cropwise-landing .hero.hero-media + .hero-slider-section,
html.cropwise-landing .hero.hero-media + .section {
    margin-top: 0;
}

@media (max-width: 900px) {
    html.cropwise-landing .hero.hero-media::before {
        background: var(--hero-veil-mobile) !important;
    }

    html.cropwise-landing .hero-media__soft-da img {
        mask-image: linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.35) 0%,
            rgba(0, 0, 0, 0.72) 38%,
            #000 62%,
            #000 100%
        );
        -webkit-mask-image: linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.35) 0%,
            rgba(0, 0, 0, 0.72) 38%,
            #000 62%,
            #000 100%
        );
    }

    html.cropwise-landing .hero-media__frame {
        padding: calc(var(--nav-height, 72px) + 32px) 20px 48px;
        align-items: flex-end;
    }

    html.cropwise-landing .hero.hero-media .hero-content {
        max-width: none;
        padding: 16px 16px;
    }

    html.cropwise-landing .hero.hero-media .hero-agri-logo {
        width: 40px;
        height: 40px;
        background: transparent !important;
        padding: 0;
        box-shadow: none;
    }

    html.cropwise-landing .hero.hero-media .hero-ctas .btn {
        flex: 1 1 calc(50% - 6px);
        min-width: 130px;
        justify-content: center;
    }
}

@media (max-width: 640px) {
    html.cropwise-landing .hero.hero-media {
        min-height: clamp(520px, 90vh, 760px);
    }

    html.cropwise-landing .hero.hero-media .hero-ctas {
        flex-direction: column;
        align-items: stretch;
    }

    html.cropwise-landing .hero.hero-media .hero-ctas .btn {
        width: 100%;
        flex: none;
    }
}

/* ?? Navbar readability over hero (high contrast) ??????????????????? */
html.cropwise-landing .premium-nav:not(.scrolled) {
    background: linear-gradient(
        180deg,
        rgba(15, 23, 42, 0.72) 0%,
        rgba(15, 23, 42, 0.28) 70%,
        rgba(15, 23, 42, 0) 100%
    );
}

html.cropwise-landing .premium-nav:not(.scrolled) .nav-logo {
    color: #FFFFFF;
}

html.cropwise-landing .premium-nav:not(.scrolled) .nav-links a {
    color: rgba(255, 255, 255, 0.94);
    font-weight: 600;
}

html.cropwise-landing .premium-nav:not(.scrolled) .nav-links a:hover,
html.cropwise-landing .premium-nav:not(.scrolled) .nav-links a.active {
    color: #FFFFFF;
}

html.cropwise-landing .premium-nav:not(.scrolled) .nav-links a.active::after {
    background: #FFFFFF;
}

html.cropwise-landing .premium-nav:not(.scrolled) .theme-toggle {
    color: #FFFFFF;
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.38);
}

html.cropwise-landing .premium-nav:not(.scrolled) .nav-toggle {
    display: none !important;
}

/* Keep landing nav links available without the hamburger menu */
@media (max-width: 768px) {
    html.cropwise-landing .nav-links {
        display: flex !important;
        position: static;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 12px 16px;
        padding: 0;
        background: transparent;
        border: 0;
        backdrop-filter: none;
    }

    html.cropwise-landing .nav-links a {
        font-size: 0.8rem;
    }

    html.cropwise-landing .premium-nav .nav-inner {
        flex-wrap: wrap;
        gap: 10px 16px;
        padding-top: 10px;
        padding-bottom: 10px;
    }
}

/* Scrolled navbar ? dark text on light glass surface */
html.cropwise-landing .premium-nav.scrolled .nav-logo,
html.cropwise-landing .premium-nav.scrolled .nav-links a {
    color: #1F2937;
}

html.cropwise-landing .premium-nav.scrolled .nav-links a:hover,
html.cropwise-landing .premium-nav.scrolled .nav-links a.active {
    color: #1B5E20;
}

html.cropwise-landing .premium-nav.scrolled .nav-links a.active::after {
    background: #388E3C;
}

html.cropwise-landing .premium-nav.scrolled .theme-toggle {
    color: #1B5E20;
    background: #FFFFFF;
    border-color: #E5E7EB;
}

html.cropwise-landing .premium-nav.scrolled .nav-toggle span {
    background: #1F2937;
}

html.cropwise-landing[data-theme="dark"] .premium-nav.scrolled .nav-logo,
html.cropwise-landing[data-theme="dark"] .premium-nav.scrolled .nav-links a {
    color: #F1F5F9;
}

html.cropwise-landing[data-theme="dark"] .premium-nav.scrolled .nav-links a:hover,
html.cropwise-landing[data-theme="dark"] .premium-nav.scrolled .nav-links a.active {
    color: #A5D6A7;
}

html.cropwise-landing[data-theme="dark"] .premium-nav.scrolled .theme-toggle {
    color: #F1F5F9;
    background: rgba(27, 94, 32, 0.35);
    border-color: rgba(148, 163, 184, 0.35);
}

html.cropwise-landing[data-theme="dark"] .premium-nav.scrolled .nav-toggle span {
    background: #F1F5F9;
}

/* ?? Landing theme sync (sections + atmosphere follow data-theme) ??? */
html.cropwise-landing .section,
html.cropwise-landing .hero-slider-section {
    background-color: var(--bg-primary);
    transition: background-color var(--cw-transition);
}

html.cropwise-landing .bg-mesh,
html.cropwise-landing .bg-mesh-dashboard,
html.cropwise-landing #particle-canvas,
html.cropwise-landing .mouse-glow,
html.cropwise-landing .hero-media__soft-da,
html.cropwise-landing .hero-media__soft-da img,
html.cropwise-landing .hero.hero-media::before {
    pointer-events: none !important;
}

html.cropwise-landing .bg-mesh {
    background: var(--hero-bg-base) !important;
    transition: background var(--cw-transition);
}

html.cropwise-landing .premium-nav {
    z-index: 1000 !important;
    pointer-events: auto !important;
}

html.cropwise-landing .premium-nav a,
html.cropwise-landing .premium-nav button,
html.cropwise-landing .hero.hero-media .hero-content,
html.cropwise-landing .hero.hero-media .hero-content a,
html.cropwise-landing .hero.hero-media .hero-content button,
html.cropwise-landing .btn {
    pointer-events: auto !important;
}

html.cropwise-landing .nav-toggle,
html.cropwise-landing .menu-toggle,
html.cropwise-landing.tech-dashboard .menu-toggle {
    display: none !important;
}

html.cropwise-landing.tech-dashboard .sidebar-overlay {
    pointer-events: auto;
}

html.cropwise-landing.tech-dashboard .nav-link,
html.cropwise-landing.tech-dashboard .stat-card,
html.cropwise-landing.tech-dashboard .btn,
html.cropwise-landing.tech-dashboard button,
html.cropwise-landing.tech-dashboard a,
html.cropwise-landing.tech-dashboard .sidebar-toggle {
    pointer-events: auto !important;
}

html.cropwise-landing[data-theme="dark"] .btn-ghost:not(.hero.hero-media .hero-ctas .btn-ghost) {
    background: var(--cw-surface) !important;
    border-color: var(--cw-card-border) !important;
    color: var(--cw-text) !important;
}

html.cropwise-landing[data-theme="dark"] .social-links a {
    color: var(--footer-muted);
    border-color: var(--footer-divider);
}

html.cropwise-landing[data-theme="dark"] .social-links a:hover {
    color: var(--footer-link-hover);
    border-color: var(--footer-link-hover);
}

/* ==========================================================================
   System-wide green palette lock
   Keeps older premium/shared styles aligned with the CropWise green identity.
   ========================================================================== */
html.cropwise-landing {
    --cw-primary: #1B5E20;
    --cw-primary-hover: #2E7D32;
    --cw-secondary: #388E3C;
    --cw-light-green: #A5D6A7;
    --cw-gold: #66BB6A;
    --cw-light-yellow: #E8F5E9;
    --cw-olive: #66BB6A;
    --cw-info: #388E3C;

    --accent-blue: #388E3C;
    --accent-purple: #2E7D32;
    --accent-cyan: #66BB6A;
    --brand-deep: #1B5E20;
    --brand-mid: #2E7D32;
    --brand-bright: #66BB6A;
    --brand-lime: #81C784;
    --brand-mist: #E8F5E9;
    --surface-accent: #1B5E20;
    --chip-text: #1B5E20;

    --gradient-main: linear-gradient(135deg, #1B5E20 0%, #388E3C 55%, #66BB6A 100%);
    --gradient-soft: linear-gradient(135deg, rgba(27, 94, 32, 0.1), rgba(56, 142, 60, 0.08));
    --shadow-glow: 0 0 40px rgba(27, 94, 32, 0.14);
    --brand-border: rgba(27, 94, 32, 0.24);
    --brand-tint: rgba(27, 94, 32, 0.07);
    --brand-tint-strong: rgba(56, 142, 60, 0.12);
    --icon-surface-bg: rgba(56, 142, 60, 0.1);
}

html.cropwise-landing[data-theme="dark"] {
    --cw-bg: #08130A;
    --cw-surface: #102016;
    --cw-surface-2: #0B1A10;
    --cw-card-border: rgba(165, 214, 167, 0.14);
    --cw-input-border: rgba(165, 214, 167, 0.22);
    --cw-text: #F4FBF4;
    --cw-text-secondary: #DCEEDC;
    --cw-text-muted: #AFC8B1;
    --cw-primary: #66BB6A;
    --cw-primary-hover: #81C784;
    --cw-secondary: #A5D6A7;
    --cw-light-green: #C8E6C9;

    --bg-primary: #08130A;
    --bg-secondary: #102016;
    --bg-elevated: rgba(165, 214, 167, 0.08);
    --glass-bg: rgba(16, 32, 22, 0.82);
    --glass-border: rgba(165, 214, 167, 0.16);
    --text-primary: #F4FBF4;
    --text-secondary: #DCEEDC;
    --text-muted: #AFC8B1;
    --accent-blue: #A5D6A7;
    --accent-purple: #81C784;
    --accent-cyan: #66BB6A;
    --surface-heading: #F4FBF4;
    --surface-body: #DCEEDC;
    --surface-body-muted: #B8D6BA;
    --surface-body-faint: #AFC8B1;
    --surface-placeholder: #AFC8B1;
    --surface-accent: #A5D6A7;
    --chip-text: #C8E6C9;
    --tag-text: #F4FBF4;

    --gradient-main: linear-gradient(135deg, #2E7D32 0%, #66BB6A 55%, #A5D6A7 100%);
    --gradient-soft: linear-gradient(135deg, rgba(102, 187, 106, 0.16), rgba(165, 214, 167, 0.1));
    --shadow-glow: 0 0 44px rgba(102, 187, 106, 0.16);
    --brand-border: rgba(165, 214, 167, 0.28);
    --brand-tint: rgba(102, 187, 106, 0.12);
    --brand-tint-strong: rgba(129, 199, 132, 0.18);
    --footer-bg: linear-gradient(180deg, #102016 0%, #08130A 60%, #0B1A10 100%);
    --footer-divider: rgba(165, 214, 167, 0.18);
    --footer-text: #F4FBF4;
    --footer-muted: #DCEEDC;
    --footer-faint: #AFC8B1;
    --footer-link: #B8D6BA;
    --footer-link-hover: #C8E6C9;
    --footer-heading: #A5D6A7;
    --footer-input-bg: #102016;
    --footer-input-border: rgba(165, 214, 167, 0.26);
    --footer-input-text: #F4FBF4;
    --footer-input-placeholder: #AFC8B1;
}

html.cropwise-landing[data-theme="dark"] .content-card,
html.cropwise-landing[data-theme="dark"] .stat-card,
html.cropwise-landing[data-theme="dark"] .glass,
html.cropwise-landing[data-theme="dark"] .feature-card,
html.cropwise-landing[data-theme="dark"] .about-intro,
html.cropwise-landing[data-theme="dark"] .about-step,
html.cropwise-landing[data-theme="dark"] .pricing-card,
html.cropwise-landing[data-theme="dark"] .auth-card,
html.cropwise-landing.tech-dashboard[data-theme="dark"] .card,
html.cropwise-landing.tech-dashboard[data-theme="dark"] .panel,
html.cropwise-landing.tech-dashboard[data-theme="dark"] .content-card {
    background: var(--cw-surface) !important;
    border-color: var(--cw-card-border) !important;
}

html.cropwise-landing .btn-primary,
html.cropwise-landing .welcome-banner,
html.cropwise-landing .dashboard-welcome,
html.cropwise-landing .hero-card,
html.cropwise-landing .overview-hero {
    background: var(--gradient-main) !important;
}

/* ==========================================================================
   Landing agri layout ? inspired visual system (text/features unchanged)
   ========================================================================== */
html.cropwise-landing.landing-agri {
    --nav-height: 72px;
    --agri-green: #2E7D32;
    --agri-green-deep: #1B5E20;
    --agri-green-mid: #388E3C;
    --agri-green-bright: #66BB6A;
    --agri-cream: #F7FBF5;
    font-family: "Source Sans 3", "Segoe UI", sans-serif;
}

html.cropwise-landing.landing-agri h1,
html.cropwise-landing.landing-agri h2,
html.cropwise-landing.landing-agri h3,
html.cropwise-landing.landing-agri h4,
html.cropwise-landing.landing-agri .nav-logo,
html.cropwise-landing.landing-agri .btn {
    font-family: Outfit, "Source Sans 3", sans-serif;
}

/* Floating pill navigation */
html.cropwise-landing.landing-agri .premium-nav {
    top: 18px;
    left: 0;
    right: 0;
    height: auto;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    pointer-events: none !important;
}

html.cropwise-landing.landing-agri .premium-nav .nav-inner {
    pointer-events: auto !important;
    width: min(1120px, calc(100% - 32px));
    margin: 0 auto;
    padding: 10px 16px 10px 18px;
    border-radius: 999px;
    background: rgba(27, 94, 32, 0.72);
    border: 1px solid rgba(255, 255, 255, 0.22);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 12px 40px rgba(15, 40, 18, 0.22);
    gap: 16px;
}

html.cropwise-landing.landing-agri .premium-nav.scrolled .nav-inner {
    background: rgba(27, 94, 32, 0.92);
    border-color: rgba(255, 255, 255, 0.18);
}

html.cropwise-landing.landing-agri .nav-logo,
html.cropwise-landing.landing-agri .nav-links a,
html.cropwise-landing.landing-agri .theme-toggle {
    color: #FFFFFF !important;
}

html.cropwise-landing.landing-agri .nav-links a {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

html.cropwise-landing.landing-agri .nav-links a.active::after {
    display: none;
}

html.cropwise-landing.landing-agri .nav-links a.active,
html.cropwise-landing.landing-agri .nav-links a:hover {
    color: #C8E6C9 !important;
}

html.cropwise-landing.landing-agri .theme-toggle {
    background: rgba(255, 255, 255, 0.12) !important;
    border-color: rgba(255, 255, 255, 0.28) !important;
}

html.cropwise-landing.landing-agri .nav-actions .btn-primary {
    background: #FFFFFF !important;
    color: var(--agri-green-deep) !important;
    border: 0 !important;
    border-radius: 999px;
    box-shadow: none;
    font-weight: 700;
}

html.cropwise-landing.landing-agri .nav-actions .btn-primary:hover {
    background: #F1F8E9 !important;
    color: var(--agri-green) !important;
}

/* Full-bleed hero — locked to viewport so home cannot overscroll upward */
html.cropwise-landing.landing-agri .hero.hero-media {
    min-height: 100dvh !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    background-color: #163d1a !important;
    background-image: none !important;
}

html.cropwise-landing.landing-agri .hero-media__soft-da {
    z-index: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    filter: blur(0.45px) saturate(1.06) contrast(0.96) brightness(1.08) !important;
}

html.cropwise-landing.landing-agri[data-theme="light"] .hero-media__soft-da,
html.cropwise-landing.landing-agri[data-theme="dark"] .hero-media__soft-da {
    opacity: 1 !important;
    filter: blur(0.45px) saturate(1.06) contrast(0.96) brightness(1.08) !important;
}

html.cropwise-landing.landing-agri .hero-media__soft-da img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1.03) !important;
    opacity: 1 !important;
    visibility: visible !important;
    mask-image: none !important;
    -webkit-mask-image: none !important;
    image-rendering: auto !important;
}

html.cropwise-landing.landing-agri .hero.hero-media::before {
    z-index: 1 !important;
    background:
        linear-gradient(
            105deg,
            rgba(15, 46, 18, 0.62) 0%,
            rgba(27, 94, 32, 0.38) 34%,
            rgba(27, 94, 32, 0.12) 58%,
            rgba(255, 255, 255, 0.06) 78%,
            transparent 100%
        ),
        radial-gradient(
            ellipse at 70% 45%,
            transparent 0%,
            rgba(18, 48, 24, 0.12) 100%
        ) !important;
}

html.cropwise-landing.landing-agri .hero.hero-media::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(
        180deg,
        rgba(18, 48, 24, 0.12) 0%,
        transparent 28%,
        transparent 72%,
        rgba(18, 48, 24, 0.16) 100%
    );
}

html.cropwise-landing.landing-agri .hero-media__frame {
    z-index: 2 !important;
    padding: calc(var(--nav-height) + 88px) 32px 72px !important;
    align-items: flex-end !important;
}

html.cropwise-landing.landing-agri .hero.hero-media .hero-content {
    max-width: 560px !important;
    margin-top: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    gap: 0;
}

html.cropwise-landing.landing-agri .hero.hero-media .hero-brand-row {
    margin-bottom: 18px;
}

html.cropwise-landing.landing-agri .hero.hero-media h1,
html.cropwise-landing.landing-agri .hero.hero-media .hero-title-accent {
    font-size: clamp(3rem, 7.2vw, 5rem) !important;
    font-weight: 800 !important;
    letter-spacing: -0.04em !important;
    line-height: 0.98 !important;
    text-shadow: none;
}

html.cropwise-landing.landing-agri .hero.hero-media .hero-desc {
    max-width: 46ch !important;
    font-size: 1.18rem !important;
    line-height: 1.6 !important;
    margin-bottom: 28px !important;
    color: rgba(255, 255, 255, 0.94) !important;
}

html.cropwise-landing.landing-agri .hero.hero-media .hero-agri-logo {
    width: 48px !important;
    height: 48px !important;
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
}

html.cropwise-landing.landing-agri .hero.hero-media .hero-badge {
    font-size: 0.76rem !important;
    padding: 6px 12px !important;
}

html.cropwise-landing.landing-agri .hero.hero-media .hero-ctas .btn-primary {
    background: var(--agri-green-bright) !important;
    color: #123018 !important;
    border: 0 !important;
    border-radius: 10px;
    padding: 14px 22px !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.2);
}

html.cropwise-landing.landing-agri .hero.hero-media .hero-ctas .btn-primary:hover {
    background: #81C784 !important;
}

html.cropwise-landing.landing-agri .hero.hero-media .hero-ctas .btn-ghost {
    background: transparent !important;
    color: #FFFFFF !important;
    border: 1px solid rgba(255, 255, 255, 0.55) !important;
    border-radius: 10px;
    padding: 14px 22px !important;
    box-shadow: none !important;
}

html.cropwise-landing.landing-agri .hero.hero-media .hero-ctas .btn-ghost:hover {
    background: rgba(255, 255, 255, 0.12) !important;
    color: #FFFFFF !important;
}

html.cropwise-landing.landing-agri .hero-download-note {
    margin: 14px 0 0;
    font-size: 0.82rem;
    color: rgba(255, 255, 255, 0.78);
    letter-spacing: 0.02em;
}

/* Green value pillars strip */
html.cropwise-landing.landing-agri .landing-pillars {
    background: var(--agri-green-mid);
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

html.cropwise-landing.landing-agri .landing-pillars__inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    width: min(1120px, calc(100% - 32px));
    margin: 0 auto;
}

html.cropwise-landing.landing-agri .landing-pillars .hero-tag {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 0;
    padding: 28px 16px;
    font-size: 0.95rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #FFFFFF !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    border-right: 1px solid rgba(255, 255, 255, 0.22) !important;
}

html.cropwise-landing.landing-agri .landing-pillars .hero-tag:last-child {
    border-right: 0 !important;
}

html.cropwise-landing.landing-agri .landing-pillars .hero-tag i {
    font-size: 1.45rem !important;
    color: #FFFFFF !important;
    opacity: 0.95;
}

/* Services / features ? clean white section */
html.cropwise-landing.landing-agri .landing-services {
    background: #FFFFFF;
    padding: 88px 24px 72px;
}

html.cropwise-landing.landing-agri .landing-services .section-header {
    text-align: center;
    max-width: 640px;
    margin: 0 auto 48px;
}

html.cropwise-landing.landing-agri .landing-services .section-label {
    color: var(--agri-green-mid);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 0.75rem;
}

html.cropwise-landing.landing-agri .landing-services .section-header h2 {
    color: #1A2E1C;
    font-size: clamp(1.8rem, 3.2vw, 2.5rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    margin: 10px 0 12px;
}

html.cropwise-landing.landing-agri .landing-services .section-header p {
    color: #4B6350;
    font-size: 1.05rem;
}

html.cropwise-landing.landing-agri .landing-services .features-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    width: min(1120px, 100%);
    margin: 0 auto;
}

html.cropwise-landing.landing-agri .landing-services .feature-card {
    background: #FFFFFF !important;
    border: 1px solid rgba(27, 94, 32, 0.12) !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 28px rgba(27, 94, 32, 0.06);
    padding: 28px 24px;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

html.cropwise-landing.landing-agri .landing-services .feature-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 36px rgba(27, 94, 32, 0.12);
}

html.cropwise-landing.landing-agri .landing-services .feature-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(56, 142, 60, 0.12);
    color: var(--agri-green-deep);
    margin-bottom: 16px;
}

html.cropwise-landing.landing-agri .landing-services .feature-card h3 {
    color: #1A2E1C;
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: 8px;
}

html.cropwise-landing.landing-agri .landing-services .feature-card p {
    color: #4B6350;
    line-height: 1.55;
    margin: 0;
}

/* About consult split band */
html.cropwise-landing.landing-agri .landing-consult {
    padding: 0;
    background: transparent;
}

html.cropwise-landing.landing-agri .landing-consult__shell {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    min-height: 520px;
    width: 100%;
}

html.cropwise-landing.landing-agri .landing-consult__panel {
    background: linear-gradient(160deg, #1B5E20 0%, #2E7D32 55%, #388E3C 100%);
    color: #FFFFFF;
    padding: 64px clamp(24px, 5vw, 72px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 28px;
}

html.cropwise-landing.landing-agri .landing-consult__panel .section-header {
    text-align: left;
    margin: 0;
    max-width: none;
}

html.cropwise-landing.landing-agri .landing-consult__panel .section-label,
html.cropwise-landing.landing-agri .landing-consult__panel h2,
html.cropwise-landing.landing-agri .landing-consult__panel .section-header p,
html.cropwise-landing.landing-agri .landing-consult__panel .about-intro h3,
html.cropwise-landing.landing-agri .landing-consult__panel .about-intro p,
html.cropwise-landing.landing-agri .landing-consult__panel .about-list li {
    color: #FFFFFF !important;
}

html.cropwise-landing.landing-agri .landing-consult__panel .section-label {
    opacity: 0.85;
}

html.cropwise-landing.landing-agri .landing-consult__panel .section-header p,
html.cropwise-landing.landing-agri .landing-consult__panel .about-intro p {
    color: rgba(255, 255, 255, 0.88) !important;
}

html.cropwise-landing.landing-agri .landing-consult__panel .about-intro {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0;
}

html.cropwise-landing.landing-agri .landing-consult__panel .about-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.14);
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
}

html.cropwise-landing.landing-agri .landing-consult__panel .about-list {
    margin-top: 16px;
}

html.cropwise-landing.landing-agri .landing-consult__panel .about-list i {
    color: #C8E6C9 !important;
}

html.cropwise-landing.landing-agri .landing-consult__aside {
    background:
        linear-gradient(120deg, rgba(27, 94, 32, 0.55) 0%, rgba(27, 94, 32, 0.18) 42%, transparent 70%),
        linear-gradient(180deg, #E8F5E9 0%, #F1F8E9 100%);
    padding: 56px clamp(24px, 4vw, 56px);
    display: flex;
    align-items: center;
}

html.cropwise-landing.landing-agri .landing-consult__aside .about-steps {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
}

html.cropwise-landing.landing-agri .landing-consult__aside .about-step {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 16px;
    align-items: start;
    background: rgba(255, 255, 255, 0.88) !important;
    border: 1px solid rgba(27, 94, 32, 0.14) !important;
    border-radius: 14px !important;
    padding: 18px 18px;
    box-shadow: 0 10px 24px rgba(27, 94, 32, 0.08);
}

html.cropwise-landing.landing-agri .landing-consult__aside .about-step-num {
    color: var(--agri-green-deep);
    font-weight: 800;
    font-size: 1.1rem;
}

html.cropwise-landing.landing-agri .landing-consult__aside h4 {
    color: #1A2E1C;
    margin: 0 0 6px;
}

html.cropwise-landing.landing-agri .landing-consult__aside p {
    color: #4B6350;
    margin: 0;
    line-height: 1.5;
}

/* Access card */
html.cropwise-landing.landing-agri .landing-access {
    background: var(--agri-cream);
    padding: 88px 24px;
}

html.cropwise-landing.landing-agri .landing-access .section-header {
    text-align: center;
    margin-bottom: 36px;
}

html.cropwise-landing.landing-agri .landing-access .pricing-card {
    border-radius: 18px !important;
    border: 1px solid rgba(27, 94, 32, 0.14) !important;
    box-shadow: 0 16px 40px rgba(27, 94, 32, 0.1);
}

/* Footer polish ? high-contrast text on dark green */
html.cropwise-landing.landing-agri .premium-footer {
    background: #123018 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.14) !important;
    color: #FFFFFF !important;
}

html.cropwise-landing.landing-agri .premium-footer .nav-logo,
html.cropwise-landing.landing-agri .premium-footer .nav-logo span {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

html.cropwise-landing.landing-agri .premium-footer .footer-brand p {
    color: rgba(255, 255, 255, 0.88) !important;
}

html.cropwise-landing.landing-agri .premium-footer .footer-col h4 {
    color: #C8E6C9 !important;
}

html.cropwise-landing.landing-agri .premium-footer .footer-col a {
    color: rgba(255, 255, 255, 0.9) !important;
}

html.cropwise-landing.landing-agri .premium-footer .footer-col a:hover {
    color: #FFFFFF !important;
}

html.cropwise-landing.landing-agri .premium-footer .footer-bottom,
html.cropwise-landing.landing-agri .premium-footer .footer-bottom span {
    color: rgba(255, 255, 255, 0.72) !important;
    border-top-color: rgba(255, 255, 255, 0.16) !important;
}

html.cropwise-landing.landing-agri .premium-footer .newsletter input {
    background: #FFFFFF !important;
    border: 1px solid rgba(255, 255, 255, 0.85) !important;
    color: #1B5E20 !important;
}

html.cropwise-landing.landing-agri .premium-footer .newsletter input::placeholder {
    color: #6B7280 !important;
}

html.cropwise-landing.landing-agri .premium-footer .newsletter .btn-primary {
    background: #66BB6A !important;
    color: #123018 !important;
    border: 0 !important;
}

/* Soft motion */
@keyframes agri-rise {
    from { opacity: 0; transform: translateY(18px); }
    to { opacity: 1; transform: translateY(0); }
}

html.cropwise-landing.landing-agri .hero.hero-media .hero-content.reveal,
html.cropwise-landing.landing-agri .landing-pillars,
html.cropwise-landing.landing-agri .landing-services .feature-card.reveal {
    animation: agri-rise 0.7s ease both;
}

html.cropwise-landing.landing-agri .landing-services .feature-card.reveal-delay-1 { animation-delay: 0.05s; }
html.cropwise-landing.landing-agri .landing-services .feature-card.reveal-delay-2 { animation-delay: 0.1s; }
html.cropwise-landing.landing-agri .landing-services .feature-card.reveal-delay-3 { animation-delay: 0.15s; }
html.cropwise-landing.landing-agri .landing-services .feature-card.reveal-delay-4 { animation-delay: 0.2s; }
html.cropwise-landing.landing-agri .landing-services .feature-card.reveal-delay-5 { animation-delay: 0.25s; }

@media (max-width: 960px) {
    html.cropwise-landing.landing-agri .landing-consult__shell {
        grid-template-columns: 1fr;
    }

    html.cropwise-landing.landing-agri .landing-services .features-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    html.cropwise-landing.landing-agri .landing-pillars__inner {
        grid-template-columns: repeat(2, 1fr);
    }

    html.cropwise-landing.landing-agri .landing-pillars .hero-tag:nth-child(2) {
        border-right: 0 !important;
    }

    html.cropwise-landing.landing-agri .landing-pillars .hero-tag:nth-child(1),
    html.cropwise-landing.landing-agri .landing-pillars .hero-tag:nth-child(2) {
        border-bottom: 1px solid rgba(255, 255, 255, 0.22) !important;
    }
}

@media (max-width: 768px) {
    html.cropwise-landing.landing-agri .premium-nav .nav-inner {
        width: calc(100% - 20px);
        border-radius: 22px;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
        padding: 12px;
    }

    html.cropwise-landing.landing-agri .nav-links {
        order: 3;
        width: 100%;
        justify-content: center;
        gap: 14px;
        flex-wrap: wrap;
    }

    html.cropwise-landing.landing-agri .hero-media__frame {
        padding: calc(var(--nav-height) + 110px) 20px 56px !important;
    }

    html.cropwise-landing.landing-agri .hero.hero-media::before {
        background: linear-gradient(
            180deg,
            rgba(15, 46, 18, 0.55) 0%,
            rgba(27, 94, 32, 0.78) 45%,
            rgba(27, 94, 32, 0.88) 100%
        ) !important;
    }

    html.cropwise-landing.landing-agri .landing-services .features-grid {
        grid-template-columns: 1fr;
    }

    html.cropwise-landing.landing-agri .landing-pillars__inner {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 480px) {
    html.cropwise-landing.landing-agri .landing-pillars__inner {
        grid-template-columns: 1fr;
    }

    html.cropwise-landing.landing-agri .landing-pillars .hero-tag {
        border-right: 0 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.22) !important;
    }

    html.cropwise-landing.landing-agri .landing-pillars .hero-tag:last-child {
        border-bottom: 0 !important;
    }
}

/* ==========================================================================
   Landing ? Admin login popover (inside nav section)
   ========================================================================== */
html.cropwise-landing.landing-agri .nav-actions {
    position: relative;
}

html.cropwise-landing.landing-agri .premium-nav,
html.cropwise-landing.landing-agri .premium-nav .nav-inner,
html.cropwise-landing.landing-agri .nav-actions {
    overflow: visible !important;
}

body.admin-login-modal-open {
    overflow: auto;
}

html.cropwise-landing.landing-agri .admin-login-modal {
    position: fixed;
    inset: 0;
    z-index: 4000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 16px;
    pointer-events: none;
}

html.cropwise-landing.landing-agri .admin-login-modal.is-open {
    display: flex !important;
}

html.cropwise-landing.landing-agri .admin-login-modal__dialog {
    position: relative;
    z-index: 1;
    width: min(92vw, 340px);
    max-height: min(70vh, 420px);
    overflow-y: auto;
    margin: 0;
    padding: 20px 18px !important;
    border-radius: 16px !important;
    background: #FFFFFF !important;
    border: 1px solid rgba(27, 94, 32, 0.14) !important;
    box-shadow: 0 18px 42px rgba(15, 40, 18, 0.22);
    animation: agri-rise 0.22s ease both;
    pointer-events: auto;
}

html.cropwise-landing.landing-agri .admin-login-modal__dialog::before {
    content: "";
    position: absolute;
    top: -7px;
    right: 28px;
    width: 14px;
    height: 14px;
    background: #FFFFFF;
    border-left: 1px solid rgba(27, 94, 32, 0.14);
    border-top: 1px solid rgba(27, 94, 32, 0.14);
    transform: rotate(45deg);
}

html.cropwise-landing.landing-agri .admin-login-modal__close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 30px;
    height: 30px;
    border: 1px solid rgba(27, 94, 32, 0.18);
    border-radius: 8px;
    background: #F7FBF5;
    color: #1B5E20;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

html.cropwise-landing.landing-agri .admin-login-modal__close:hover {
    background: #E8F5E9;
}

html.cropwise-landing.landing-agri .admin-login-modal .auth-header {
    margin-bottom: 14px;
    padding: 0 28px 0 0;
    text-align: left;
}

html.cropwise-landing.landing-agri .admin-login-modal .auth-logo {
    width: 40px;
    height: 40px;
    margin: 0 0 8px;
}

html.cropwise-landing.landing-agri .admin-login-modal .auth-header h1,
html.cropwise-landing.landing-agri .admin-login-modal .auth-field label {
    color: #1A2E1C !important;
    -webkit-text-fill-color: #1A2E1C !important;
}

html.cropwise-landing.landing-agri .admin-login-modal .auth-header h1 {
    font-size: 1.2rem;
    margin-bottom: 4px;
}

html.cropwise-landing.landing-agri .admin-login-modal .auth-header p {
    color: #4B6350 !important;
    font-size: 0.8rem;
    line-height: 1.35;
    margin: 0;
}

html.cropwise-landing.landing-agri .admin-login-modal .auth-field {
    margin-bottom: 12px;
}

html.cropwise-landing.landing-agri .admin-login-modal .auth-alert {
    margin-bottom: 12px;
    padding: 10px 12px;
    font-size: 0.82rem;
    color: #B91C1C;
    background: rgba(239, 68, 68, 0.08);
    border-color: rgba(239, 68, 68, 0.28);
}

html.cropwise-landing.landing-agri .admin-login-modal .auth-input {
    background: #FFFFFF !important;
    color: #1A2E1C !important;
    min-height: 42px;
}

html.cropwise-landing.landing-agri .admin-login-modal .auth-submit {
    width: 100%;
    min-height: 42px;
    margin-top: 2px;
}

@media (max-width: 768px) {
    html.cropwise-landing.landing-agri .admin-login-modal__dialog {
        width: min(94vw, 320px);
    }
}

/* ==========================================================================
   Admin portal ? compact landing-page-aligned dashboard
   ========================================================================== */
html.cropwise-landing.tech-dashboard.admin-portal,
html.cropwise-landing.tech-dashboard.admin-portal[data-theme="light"] {
    --cw-bg: #F7FBF5;
    --cw-surface: #FFFFFF;
    --cw-surface-2: #F1F8E9;
    --cw-primary: #1B5E20;
    --cw-secondary: #388E3C;
    --cw-accent: #66BB6A;
    --cw-text: #1A2E1C;
    --cw-text-secondary: #425A46;
    --cw-text-muted: #6A7F6E;
    --cw-card-border: rgba(27, 94, 32, 0.12);
    --cw-shadow-soft: 0 5px 18px rgba(27, 94, 32, 0.055);
    --cw-shadow-hover: 0 9px 24px rgba(27, 94, 32, 0.09);
    font-family: "Source Sans 3", "Segoe UI", sans-serif;
}

html.cropwise-landing.tech-dashboard.admin-portal[data-theme="dark"] {
    --cw-bg: #08130A;
    --cw-surface: #102016;
    --cw-surface-2: #152A1B;
    --cw-text: #F4FBF4;
    --cw-text-secondary: #DCEEDC;
    --cw-text-muted: #AFC8B1;
    --cw-card-border: rgba(165, 214, 167, 0.15);
    --cw-shadow-soft: 0 6px 20px rgba(0, 0, 0, 0.2);
    --cw-shadow-hover: 0 9px 26px rgba(0, 0, 0, 0.27);
}

html.cropwise-landing.tech-dashboard.admin-portal h1,
html.cropwise-landing.tech-dashboard.admin-portal h2,
html.cropwise-landing.tech-dashboard.admin-portal h3,
html.cropwise-landing.tech-dashboard.admin-portal h4,
html.cropwise-landing.tech-dashboard.admin-portal .sidebar-brand,
html.cropwise-landing.tech-dashboard.admin-portal .btn {
    font-family: Outfit, "Source Sans 3", sans-serif;
}

html.cropwise-landing.tech-dashboard.admin-portal .dashboard-container,
html.cropwise-landing.tech-dashboard.admin-portal .main-content,
html.cropwise-landing.tech-dashboard.admin-portal .page-content,
html.cropwise-landing.tech-dashboard.admin-portal .bg-mesh-dashboard {
    background: var(--cw-bg) !important;
}

/* Compact shell */
html.cropwise-landing.tech-dashboard.admin-portal .sidebar {
    width: 240px !important;
    padding: 12px 10px;
    background: linear-gradient(180deg, #1B5E20 0%, #16551C 100%) !important;
    box-shadow: 5px 0 20px rgba(15, 48, 20, 0.1);
}

html.cropwise-landing.tech-dashboard.admin-portal .sidebar.collapsed {
    width: 72px !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .main-content {
    margin-left: 240px;
}

html.cropwise-landing.tech-dashboard.admin-portal .main-content.expanded {
    margin-left: 72px;
}

html.cropwise-landing.tech-dashboard.admin-portal .sidebar-header {
    padding: 10px 10px 14px;
    margin-bottom: 4px;
}

html.cropwise-landing.tech-dashboard.admin-portal .sidebar-logo-icon {
    width: 38px;
    height: 38px;
    border-radius: 11px;
}

html.cropwise-landing.tech-dashboard.admin-portal .nav-section-title {
    padding: 15px 12px 5px;
    font-size: 0.65rem;
    color: rgba(255, 255, 255, 0.56) !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .nav-link {
    min-height: 38px;
    padding: 8px 11px;
    margin: 2px 0;
    border-radius: 10px;
    font-size: 0.86rem;
    gap: 10px;
}

html.cropwise-landing.tech-dashboard.admin-portal .nav-link.active {
    box-shadow: 0 5px 16px rgba(5, 30, 10, 0.13);
}

html.cropwise-landing.tech-dashboard.admin-portal .sidebar-footer {
    padding-top: 8px;
}

html.cropwise-landing.tech-dashboard.admin-portal .logout-btn {
    min-height: 38px;
    border-radius: 10px !important;
    font-size: 0.86rem;
}

html.cropwise-landing.tech-dashboard.admin-portal .top-header {
    min-height: 64px;
    padding: 0 20px;
    background: rgba(255, 255, 255, 0.92) !important;
    border-bottom: 1px solid var(--cw-card-border) !important;
    box-shadow: 0 3px 14px rgba(27, 94, 32, 0.045);
}

html.cropwise-landing.tech-dashboard.admin-portal[data-theme="dark"] .top-header {
    background: rgba(16, 32, 22, 0.94) !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .top-header h1 {
    font-size: 1.15rem;
    color: var(--cw-text) !important;
    letter-spacing: -0.025em;
}

html.cropwise-landing.tech-dashboard.admin-portal .topbar-search {
    max-width: 390px;
}

html.cropwise-landing.tech-dashboard.admin-portal .topbar-search input {
    min-height: 38px;
    padding-top: 8px;
    padding-bottom: 8px;
    background: var(--cw-surface-2) !important;
    border-color: rgba(27, 94, 32, 0.07) !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .topbar-icon-btn,
html.cropwise-landing.tech-dashboard.admin-portal .topbar-theme,
html.cropwise-landing.tech-dashboard.admin-portal .sidebar-toggle,
html.cropwise-landing.tech-dashboard.admin-portal .user-avatar {
    width: 38px;
    height: 38px;
    border-radius: 11px !important;
    box-shadow: none;
}

html.cropwise-landing.tech-dashboard.admin-portal .page-content {
    padding: 20px;
}

/* Minimal, compact metric cards */
html.cropwise-landing.tech-dashboard.admin-portal .stats-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

html.cropwise-landing.tech-dashboard.admin-portal .stat-card {
    min-height: 104px;
    padding: 15px 16px !important;
    gap: 12px;
    border: 1px solid var(--cw-card-border) !important;
    border-radius: 14px !important;
    background: var(--cw-surface) !important;
    box-shadow: var(--cw-shadow-soft) !important;
    overflow: hidden;
}

html.cropwise-landing.tech-dashboard.admin-portal .stat-card::before {
    display: none !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .stat-card::after {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: linear-gradient(180deg, #388E3C, #66BB6A);
    opacity: 0.9;
}

html.cropwise-landing.tech-dashboard.admin-portal .stat-card .stat-icon {
    width: 40px;
    height: 40px;
    border-radius: 12px !important;
    background: #F1F8E9 !important;
    color: #1B5E20 !important;
    font-size: 1rem;
}

html.cropwise-landing.tech-dashboard.admin-portal[data-theme="dark"] .stat-card .stat-icon {
    background: rgba(102, 187, 106, 0.12) !important;
    color: #A5D6A7 !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .stat-card .stat-info {
    min-width: 0;
}

html.cropwise-landing.tech-dashboard.admin-portal .stat-card .stat-info h3 {
    margin: 0 0 3px;
    font-size: 0.67rem;
    line-height: 1.2;
    letter-spacing: 0.08em;
    color: var(--cw-text-muted) !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .stat-card .stat-info .value {
    font-size: 1.45rem;
    line-height: 1;
    color: var(--cw-text) !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .stat-card .stat-info .sub {
    display: block;
    margin-top: 4px;
    font-size: 0.7rem;
    line-height: 1.25;
    color: var(--cw-text-muted) !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .stat-card__chevron {
    right: 11px;
    font-size: 0.7rem;
}

html.cropwise-landing.tech-dashboard.admin-portal .stat-card--clickable:hover {
    transform: translateY(-2px);
    background: #FBFEFA !important;
    border-color: rgba(56, 142, 60, 0.24) !important;
    box-shadow: var(--cw-shadow-hover) !important;
}

html.cropwise-landing.tech-dashboard.admin-portal[data-theme="dark"] .stat-card--clickable:hover {
    background: #152A1B !important;
}

/* Clean content panels throughout the admin area */
html.cropwise-landing.tech-dashboard.admin-portal .content-card,
html.cropwise-landing.tech-dashboard.admin-portal .card,
html.cropwise-landing.tech-dashboard.admin-portal .panel,
html.cropwise-landing.tech-dashboard.admin-portal .tech-card {
    border: 1px solid var(--cw-card-border) !important;
    border-radius: 14px !important;
    background: var(--cw-surface) !important;
    box-shadow: var(--cw-shadow-soft) !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .content-card:hover,
html.cropwise-landing.tech-dashboard.admin-portal .card:hover,
html.cropwise-landing.tech-dashboard.admin-portal .panel:hover {
    transform: none;
    box-shadow: var(--cw-shadow-soft) !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .card-header {
    min-height: 54px;
    padding: 13px 16px;
    border-bottom: 1px solid var(--cw-card-border) !important;
    position: relative;
    z-index: 5;
    overflow: visible;
}

/* Filter dropdowns in card headers must paint above table bodies. */
html.cropwise-landing.tech-dashboard.admin-portal .content-card > .card-header:has(.cw-select),
html.cropwise-landing.tech-dashboard.admin-portal .content-card > .card-header:has(select.form-control) {
    z-index: 30;
    overflow: visible !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .content-card:has(> .card-header .cw-select.is-open) {
    overflow: visible !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .card-header h3 {
    font-size: 0.92rem;
    color: var(--cw-text) !important;
    letter-spacing: -0.01em;
}

html.cropwise-landing.tech-dashboard.admin-portal .card-header h3 i {
    color: #2E7D32 !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .card-header-note {
    color: var(--cw-text-muted) !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .card-body {
    padding: 16px;
}

html.cropwise-landing.tech-dashboard.admin-portal #dashboard-content > .content-card {
    margin-top: 16px !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .dashboard-primary-grid {
    display: grid;
    grid-template-columns: minmax(0, 2.1fr) minmax(250px, 0.9fr);
    gap: 16px;
}

html.cropwise-landing.tech-dashboard.admin-portal #adminMonthlyChart {
    max-height: 245px !important;
}

html.cropwise-landing.tech-dashboard.admin-portal #adminBarangayChart {
    max-height: 235px !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .admin-activity-feed {
    max-height: 330px;
    overflow-y: auto;
}

html.cropwise-landing.tech-dashboard.admin-portal .form-control,
html.cropwise-landing.tech-dashboard.admin-portal input,
html.cropwise-landing.tech-dashboard.admin-portal select,
html.cropwise-landing.tech-dashboard.admin-portal textarea,
html.cropwise-landing.tech-dashboard.admin-portal .cw-select__trigger {
    border-radius: 10px !important;
}

html.cropwise-landing.tech-dashboard.admin-portal .table th {
    background: #F7FBF5 !important;
    color: #3E6545 !important;
    font-size: 0.72rem;
}

html.cropwise-landing.tech-dashboard.admin-portal[data-theme="dark"] .table th {
    background: #152A1B !important;
    color: #C8E6C9 !important;
}

@media (max-width: 1180px) {
    html.cropwise-landing.tech-dashboard.admin-portal .stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    html.cropwise-landing.tech-dashboard.admin-portal .dashboard-primary-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    html.cropwise-landing.tech-dashboard.admin-portal .main-content,
    html.cropwise-landing.tech-dashboard.admin-portal .main-content.expanded {
        margin-left: 0 !important;
    }

    html.cropwise-landing.tech-dashboard.admin-portal .page-content {
        padding: 14px;
    }

    html.cropwise-landing.tech-dashboard.admin-portal .top-header {
        padding: 0 14px;
    }
}

@media (max-width: 520px) {
    html.cropwise-landing.tech-dashboard.admin-portal .stats-grid {
        grid-template-columns: 1fr;
    }

    html.cropwise-landing.tech-dashboard.admin-portal .stat-card {
        min-height: 92px;
    }
}
