    :root{
      --bg:#f3f5df;
      --bg2:#eef1d2;
      --card:#ffffff;
      --soft:#fbfcf3;
      --text:#121827;
      --muted:#63708a;
      --line:#d9dec3;
      --line2:#cdd4ad;
      --green:#a7bf00;
      --green-dark:#596600;
      --green-soft:#e9edd5;
      --coral:#ff563f;
      --coral-soft:#ffe2df;
      --yellow:#f5c84b;
      --shadow:0 22px 70px rgba(44,52,24,.13);
      --sidebar:290px;
    }
    *{box-sizing:border-box}
    body{
      margin:0;
      color:var(--text);
      font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
      background:radial-gradient(circle at 12% 8%,rgba(167,191,0,.18),transparent 30%),linear-gradient(135deg,var(--bg),#fbfcf3 55%,var(--bg2));
    }
    button,input,select,textarea{font:inherit}
    button{border:0;border-radius:16px;padding:12px 16px;background:var(--coral);color:white;font-weight:900;cursor:pointer;transition:.18s ease;box-shadow:0 14px 28px rgba(255,86,63,.18)}
    button:hover{transform:translateY(-1px)}
    button.secondary{background:var(--green-soft);color:#3b410c;border:1px solid rgba(89,102,0,.08);box-shadow:none;padding:10px 10px;font-size:13px}
    button.ghost{background:white;color:#3b410c;border:1px solid var(--line);box-shadow:none}
    button.danger{background:var(--coral-soft);color:#9f1f18;border:1px solid rgba(229,72,61,.18);box-shadow:none}
    input,select,textarea{width:100%;color:var(--text);background:white;border:1px solid var(--line2);border-radius:16px;padding:12px 14px;outline:none}
    textarea{min-height:112px;resize:vertical}
    label{display:block;font-size:13px;color:#252d42;font-weight:850;margin:14px 0 7px}
    p{color:var(--muted);line-height:1.55;margin:0}
    h1,h2,h3{margin:0;color:var(--text)}
    .small{font-size:12px;color:var(--muted)}
    .app{display:grid;grid-template-columns:var(--sidebar) 1fr;min-height:100vh}
    .sidebar{
      position:sticky;top:0;height:100vh;overflow:auto;
      padding:24px 18px;
      background:rgba(255,255,255,.55);
      border-right:1px solid var(--line);
      backdrop-filter:blur(14px);
    }
    .brand{
      display:flex;align-items:center;gap:12px;
      padding:10px 8px 22px;
      border-bottom:1px solid var(--line);
      margin-bottom:18px;
    }
    .logo{
      width:44px;height:44px;border-radius:16px;background:var(--green);
      display:grid;place-items:center;color:#fff;font-weight:950;
      box-shadow:0 16px 34px rgba(167,191,0,.28);
    }
    .brand strong{display:block;font-size:16px;color:var(--green-dark)}
    .brand span{display:block;font-size:12px;color:var(--muted)}
    .nav{display:grid;gap:8px;margin-bottom:18px}
    .nav button{
      display:flex;align-items:center;gap:10px;justify-content:flex-start;
      background:transparent;color:#3f4609;border:1px solid transparent;box-shadow:none;
      padding:12px 13px;
    }
    .nav button.active,.nav button:hover{background:white;border-color:var(--line);transform:none;box-shadow:0 10px 26px rgba(44,52,24,.07)}
    .side-card{
      background:rgba(255,255,255,.72);
      border:1px solid var(--line);
      border-radius:22px;
      padding:16px;
      box-shadow:0 16px 44px rgba(44,52,24,.08);
      margin-bottom:16px;
    }
    .main{padding:28px;min-width:0}
    .topbar{
      display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:22px;
    }
    .topbar h1{font-size:34px;letter-spacing:-.055em;color:var(--green);line-height:1}
    .topbar p{font-size:14px;margin-top:7px}
    .status{padding:13px 14px;border-radius:17px;font-size:14px;line-height:1.45;border:1px solid var(--line);background:var(--soft);color:#44506a}
    .status.ok{border-color:rgba(167,191,0,.55);color:#4f5b00;background:#f4f8dc}
    .status.warn{border-color:rgba(245,200,75,.75);color:#854d0e;background:#fff7d7}
    .status.bad{border-color:rgba(229,72,61,.35);color:#991b1b;background:#ffe2df}
    .card{background:rgba(255,255,255,.82);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:22px;margin-bottom:24px;backdrop-filter:blur(10px)}
    .card h2{font-size:22px;letter-spacing:-.03em;margin-bottom:18px}
    .row{display:flex;gap:12px}.row>*{flex:1}
    .grid{display:grid;grid-template-columns:500px 1fr;gap:24px;align-items:start}
    .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
    .kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}
    .kpi{background:rgba(255,255,255,.88);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 15px 42px rgba(44,52,24,.08);min-height:118px}
    .kpi .label{font-size:13px;color:#61700d;font-weight:950}
    .kpi .value{font-size:32px;letter-spacing:-.05em;font-weight:950;color:#151b2d;margin:8px 0 4px}
    .kpi .sub{font-size:12px;color:var(--muted)}
    .panel-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
    .insight{background:white;border:1px solid var(--line);border-radius:22px;padding:18px;margin-bottom:14px;box-shadow:0 12px 34px rgba(44,52,24,.07)}
    .pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:950;letter-spacing:.03em;text-transform:uppercase;margin-right:6px}
    .critical{background:var(--coral-soft);color:#9f1f18;border:1px solid rgba(229,72,61,.22)}
    .important{background:#fff1c2;color:#7a4a00;border:1px solid rgba(245,200,75,.55)}
    .nice{background:var(--green-soft);color:#596600;border:1px solid rgba(167,191,0,.25)}
    .platform{background:#f5f6ea;color:#424b12;border:1px solid var(--line)}
    .action-box{margin-top:13px;padding:14px;border-radius:17px;background:#f4f7dd;border:1px solid rgba(167,191,0,.28);color:#3e460d;font-size:14px;line-height:1.45}
    .chat-layout{display:grid;grid-template-columns:360px 1fr;gap:24px;align-items:start}
    .chat-log{height:520px;overflow:auto;background:#f8f9ed;border:1px solid var(--line);border-radius:22px;padding:16px;margin-bottom:14px}
    .msg{max-width:92%;padding:13px 15px;border-radius:18px;margin-bottom:11px;white-space:pre-wrap;line-height:1.5;font-size:14px;box-shadow:0 8px 20px rgba(44,52,24,.05)}
    .msg.user{margin-left:auto;background:var(--coral);color:white}
    .msg.bot{background:white;border:1px solid var(--line);color:#1d2438}
    .quick{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:13px}
    .quick button{border-radius:999px;padding:9px 12px;font-size:12px}
    table{width:100%;border-collapse:collapse;font-size:13px;background:white}
    th,td{border-bottom:1px solid var(--line);padding:10px;text-align:left;color:#29324a}
    th{background:#f3f5df;color:#121827;position:sticky;top:0}
    .tablewrap{max-height:520px;overflow:auto;border:1px solid var(--line);border-radius:18px}
    .view{display:none}.view.active{display:block}
    .empty{padding:34px;text-align:center;border:1px dashed var(--line2);border-radius:22px;color:var(--muted);background:white}
    .custom-range{display:none}.custom-range.active{display:block}
    .list-item{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;margin-bottom:10px}

    .compact-select{width:220px;min-width:180px;padding:11px 12px}
    .topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
    .scroll-panel{max-height:420px;overflow:auto;padding-right:6px}
    .scroll-panel.tall{max-height:560px}
    details.faq-item{background:white;border:1px solid var(--line);border-radius:18px;padding:16px;margin-bottom:12px;box-shadow:0 10px 26px rgba(44,52,24,.06)}
    details.faq-item summary{cursor:pointer;font-weight:900;color:#3f4609}
    details.faq-item p{margin-top:10px}
    .date-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
    .tablewrap thead th{position:sticky;top:0;z-index:5;box-shadow:0 1px 0 var(--line)}
    .entity-indent-0 td{font-weight:850;background:#fff}
    .entity-indent-1 td:first-child{padding-left:22px}
    .entity-indent-2 td:first-child{padding-left:42px}


    .calendar-presets{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 4px}
    .calendar-presets button{padding:8px 11px;border-radius:999px;font-size:12px;box-shadow:none;background:white;color:#3f4609;border:1px solid var(--line)}
    .calendar-presets button:hover{background:var(--green-soft);transform:none}
    .modern-date-input{cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 2v3M17 2v3M3.5 9.09h17M6 13h2M11 13h2M16 13h2M6 17h2M11 17h2M16 17h2M6.2 22h11.6c2.1 0 3.2-1.1 3.2-3.2V7.2C21 5.1 19.9 4 17.8 4H6.2C4.1 4 3 5.1 3 7.2v11.6C3 20.9 4.1 22 6.2 22Z' stroke='%23596600' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 14px center;padding-right:42px}
    .flatpickr-calendar{border:1px solid var(--line)!important;border-radius:22px!important;box-shadow:0 24px 80px rgba(44,52,24,.18)!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;overflow:hidden!important}
    .flatpickr-months{background:#fbfcf3!important;padding:8px 0!important}
    .flatpickr-months .flatpickr-month{color:#121827!important}
    .flatpickr-current-month{font-weight:900!important}
    .flatpickr-weekdays{background:#fbfcf3!important}
    span.flatpickr-weekday{color:#596600!important;font-weight:900!important}
    .flatpickr-day{border-radius:12px!important;color:#243047!important}
    .flatpickr-day:hover{background:var(--green-soft)!important;border-color:var(--green-soft)!important;color:#3f4609!important}
    .flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background:var(--coral)!important;border-color:var(--coral)!important;color:white!important}
    .flatpickr-day.today{border-color:var(--green)!important}


    
    .bar-chart{display:flex;flex-direction:column;gap:12px;margin-top:8px}
    .bar-row{display:grid;grid-template-columns:170px 1fr 80px;gap:10px;align-items:center}
    .bar-label{font-size:12px;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .bar-track{height:12px;background:#eef1d2;border-radius:999px;overflow:hidden;border:1px solid #d9dec3}
    .bar-fill{height:100%;background:#596600;border-radius:999px}
    .bar-fill.alt{background:#ff563f}
    .bar-value{font-size:12px;color:#596600;font-weight:800;text-align:right}
    .dual-row{display:flex;justify-content:space-between;gap:14px;align-items:center;border-bottom:1px solid #eef1d2;padding-bottom:9px}
    .dual-values{display:flex;gap:12px;align-items:center;color:#667085;font-size:12px;white-space:nowrap}

    .chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:24px}
    .chart-card{background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:0 16px 44px rgba(44,52,24,.08)}
    .chart-title{font-size:16px;font-weight:950;color:#121827;margin-bottom:6px}
    .chart-sub{font-size:12px;color:var(--muted);margin-bottom:12px}
    .mini-chart{width:100%;height:190px;display:block;overflow:visible}
    .chart-line{fill:none;stroke:#596600;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
    .chart-line-alt{fill:none;stroke:#ff563f;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
    .chart-area{fill:rgba(167,191,0,.15)}
    .chart-axis{stroke:#d9dec3;stroke-width:1}
    .chart-dot{fill:#596600}
    .chart-dot-alt{fill:#ff563f}
    .chart-empty{height:190px;display:grid;place-items:center;background:#fbfcf3;border:1px dashed var(--line);border-radius:18px;color:var(--muted);font-size:13px;text-align:center;padding:16px}
    .chart-legend{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px;color:var(--muted);font-size:12px}
    .legend-dot{width:10px;height:10px;border-radius:999px;display:inline-block;background:#596600}
    .legend-dot.alt{background:#ff563f}

    .compact-chart-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
    .compact-chart-card{min-height:142px;cursor:pointer;transition:.18s ease;position:relative;overflow:hidden}
    .compact-chart-card:hover{transform:translateY(-2px);box-shadow:0 20px 50px rgba(44,52,24,.13)}
    .compact-metric{font-size:28px;font-weight:950;color:#121827;margin-top:16px}
    .compact-note{font-size:12px;color:var(--muted);margin-top:4px}
    .compact-bars{display:flex;gap:5px;align-items:end;height:46px;margin-top:14px}
    .compact-bar{flex:1;background:#596600;border-radius:8px 8px 3px 3px;min-height:5px;opacity:.88}
    .compact-bar.alt{background:#ff563f}
    .chart-modal-overlay{display:none;position:fixed;inset:0;background:rgba(18,24,39,.42);z-index:9999;padding:38px;backdrop-filter:blur(5px)}
    .chart-modal-overlay.active{display:grid;place-items:center}
    .chart-modal{background:white;border:1px solid var(--line);border-radius:28px;box-shadow:0 30px 100px rgba(18,24,39,.35);width:min(1080px,96vw);max-height:86vh;overflow:auto;padding:26px}
    .chart-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}
    .chart-modal-header h2{margin:0;font-size:26px;color:#121827}
    .bar-chart{display:flex;flex-direction:column;gap:14px;margin-top:8px}
    .bar-row{display:grid;grid-template-columns:270px 1fr 95px;gap:12px;align-items:center}
    .bar-label{font-size:12px;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .bar-level{min-width:58px;text-align:center;display:inline-block;font-size:10px;font-weight:900;color:#596600;background:#eef1d2;border:1px solid #d9dec3;border-radius:999px;padding:3px 7px;margin-right:7px;text-transform:uppercase}
    .bar-track{height:13px;background:#eef1d2;border-radius:999px;overflow:hidden;border:1px solid #d9dec3}
    .bar-fill{height:100%;background:#596600;border-radius:999px}
    .bar-fill.alt{background:#ff563f}
    .bar-value{font-size:12px;color:#596600;font-weight:900;text-align:right}
    .dual-row{display:grid;grid-template-columns:270px 1fr;gap:12px;align-items:center;border-bottom:1px solid #eef1d2;padding-bottom:11px}
    .dual-values{display:flex;gap:14px;align-items:center;justify-content:flex-end;color:#667085;font-size:12px;white-space:nowrap}

    @media(max-width:1180px){
      .bar-chart{gap:12px}
      .bar-row{grid-template-columns:170px 1fr 80px;gap:10px}
      .bar-value{font-weight:800}
      .dual-row{display:flex;justify-content:space-between;gap:14px;padding-bottom:9px}
      .dual-values{gap:12px;justify-content:initial}
      .chart-grid{grid-template-columns:1fr}
    }
