/* ==========================================================================
   companyGridThemeV1.0.0.1.css  (Lotus.Framework — source of truth)
   Kendo Grid theme — COMPANY panel only (.companyContent).
   Admin/sidebar panels: adminGridThemeV1.0.0.1.css (separate palette).
   Consuming apps sync a local copy via BeforeBuild (CMR / CustomsInsurance).
   ========================================================================== */

/* No flash: hide ops cells until kendoGridEnhance finishes first layout pass */
.k-grid.cis-grid-pending tbody td:has(.k-button),
.k-grid.cis-grid-pending tbody td:has(.cis-grid-actions),
.k-grid.cis-grid-pending tbody td:has(.cis-grid-ops),
.k-grid.cis-grid-pending tbody td:has(.company-grid-ops) {
    visibility: hidden;
}

.k-grid.cis-grid-ready tbody td:has(.k-button),
.k-grid.cis-grid-ready tbody td:has(.cis-grid-actions),
.k-grid.cis-grid-ready tbody td:has(.cis-grid-ops),
.k-grid.cis-grid-ready tbody td:has(.company-grid-ops) {
    visibility: visible;
}

:root{
    --cis-grid-header-bg: #334155;
    --cis-grid-header-border: #293548;
    --cis-grid-row-odd: #fff;
    --cis-grid-row-even: #f8fafc;
    --cis-grid-row-hover: #f3f0f8;
    --cis-grid-cell-border: #e8ecf2;
    --cis-grid-text: #374151;
    --cis-grid-toolbar-btn: #22a34a;
    --cis-grid-toolbar-btn-hover: #1d8d40;
    --cis-grid-act-bg: #eef5fb;
    --cis-grid-act-border: #b7c9df;
    --cis-grid-act-text: #1e4361;
    --cis-grid-act-danger-bg: #fff1f1;
    --cis-grid-act-danger-border: #f1b4b4;
    --cis-grid-act-danger-text: #b42318;
    --cis-grid-filter-purple: #4a297c;
    --cis-grid-filter-purple-deep: #3b1f66;
}
.companyContent .k-grid.k-widget{
    display: block !important;
    border: 1px solid var(--cis-grid-cell-border) !important;
    border-radius: 10px;
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
    background: #fff !important;
    box-shadow: 0 1px 3px rgba(51, 65, 85, .06);
}
.companyContent .k-grid-toolbar.k-toolbar,
.companyContent .k-grid .k-toolbar.k-grid-toolbar,
.companyContent .k-grid-toolbar.cis-grid-toolbar-pro {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: .45rem;
    min-height: 0 !important;
    padding: 0 0 .5rem !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    text-align: start !important;
}
.companyContent .k-grid-toolbar .k-button:not(.grid-excel-export-btn),
.companyContent .k-grid-toolbar a.k-button:not(.grid-excel-export-btn),
.companyContent .k-grid-toolbar label.k-button:not(.grid-excel-export-btn),
.companyContent .k-grid-toolbar.cis-grid-toolbar-pro .k-button:not(.grid-excel-export-btn),
.companyContent .k-grid-toolbar.cis-grid-toolbar-pro a.k-button:not(.grid-excel-export-btn){
    float: none !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    min-width: 0 !important;
    width: auto !important;
    min-height: 36px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 7px 14px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: var(--cis-grid-toolbar-btn) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    box-shadow: 0 1px 4px rgba(34, 163, 74, .2) !important;
}
.companyContent .k-grid-toolbar .k-button:not(.grid-excel-export-btn):hover,
.companyContent .k-grid-toolbar a.k-button:not(.grid-excel-export-btn):hover,
.companyContent .k-grid-toolbar .k-button:not(.grid-excel-export-btn):focus,
.companyContent .k-grid-toolbar a.k-button:not(.grid-excel-export-btn):focus{
    background: var(--cis-grid-toolbar-btn-hover) !important;
    color: #fff !important;
}
.companyContent .k-grid-toolbar .k-button .cis-add,
.companyContent .k-grid-toolbar a.k-button .cis-add{
    width: 14px !important;
    height: 14px !important;
}

.companyContent .k-grid-toolbar.cis-grid-toolbar-pro .grid-excel-export-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
    padding: 0 !important;
    border: 1px solid var(--cis-grid-act-border) !important;
    border-radius: 50% !important;
    background: #fff !important;
    color: #217346 !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    box-shadow: 0 1px 3px rgba(30, 67, 97, .1) !important;
    transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.companyContent .k-grid-toolbar.cis-grid-toolbar-pro .grid-excel-export-btn .cis-excel-ic {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    flex-shrink: 0;
    background-position: center center !important;
    background-size: 18px 18px !important;
    filter: brightness(0) saturate(100%) invert(32%) sepia(18%) saturate(2472%) hue-rotate(115deg) brightness(92%) contrast(88%);
}

.companyContent .k-grid-toolbar.cis-grid-toolbar-pro .grid-excel-export-btn:hover,
.companyContent .k-grid-toolbar.cis-grid-toolbar-pro .grid-excel-export-btn:focus {
    background: var(--cis-grid-header-bg) !important;
    border-color: var(--cis-grid-header-bg) !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(30, 67, 97, .22) !important;
    transform: translateY(-1px);
}

.companyContent .k-grid-toolbar.cis-grid-toolbar-pro .grid-excel-export-btn:hover .cis-excel-ic,
.companyContent .k-grid-toolbar.cis-grid-toolbar-pro .grid-excel-export-btn:focus .cis-excel-ic {
    filter: brightness(0) invert(1);
}

.companyContent .k-grid-toolbar.cis-grid-toolbar-pro .cis-grid-toolbar-add{
    min-height: 36px !important;
    font-weight: 500 !important;
}
.companyContent .k-grid-header{
    background: var(--cis-grid-header-bg) !important;
    border: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    line-height: normal !important;
}
.companyContent .k-grid-header-wrap{
    background: var(--cis-grid-header-bg) !important;
    border: 0 !important;
    border-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: normal !important;
}
.companyContent .k-grid-header,
.companyContent .k-grid-header-wrap,
.companyContent .k-grid-header th.k-header,
.companyContent .k-grid-header th.k-header a,
.companyContent th.k-header,
.companyContent th.k-header a{
    background: var(--cis-grid-header-bg) !important;
    color: #fff !important;
    border-color: var(--cis-grid-header-border) !important;
    line-height: 1.35 !important;
}
.companyContent .k-grid-header th.k-header{
    position: relative !important;
    font-weight: 700;
    font-size: 13px !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    padding: 0 10px 0 30px !important;
    margin: 0 !important;
    vertical-align: middle !important;
    overflow: hidden !important;
    text-align: center !important;
}
.companyContent .k-grid-header th.k-header > .k-link{
    display: block !important;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    height: 42px !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 42px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    background: transparent !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-align: center !important;
    vertical-align: middle;
}
.companyContent .k-grid-header .k-link > .k-icon:not(.k-filter),
.companyContent .k-grid-header .k-link .k-i-arrow-n,
.companyContent .k-grid-header .k-link .k-i-arrow-s,
.companyContent .k-grid-header th.k-header .k-icon.k-i-arrow-n,
.companyContent .k-grid-header th.k-header .k-icon.k-i-arrow-s{
    filter: brightness(0) invert(1) !important;
    opacity: .95 !important;
    vertical-align: middle !important;
    display: inline-block !important;
    margin: 0 2px !important;
    position: static !important;
    left: auto !important;
    top: auto !important;
}
.companyContent .k-grid-header th.k-header > .k-grid-filter,
.companyContent .k-grid-header .k-header > .k-grid-filter,
.companyContent th.k-header > .k-grid-filter{
    position: absolute !important;
    left: 4px !important;
    right: auto !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    float: none !important;
    z-index: 2;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    min-height: 22px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 5px !important;
    background: transparent !important;
    box-shadow: none !important;
    line-height: 0 !important;
    opacity: .9;
    text-decoration: none !important;
}
.companyContent .k-grid-header th.k-header > .k-grid-filter:hover,
.companyContent .k-grid-header .k-header > .k-grid-filter:hover,
.companyContent th.k-header > .k-grid-filter:hover,
.companyContent .k-grid-header th.k-header > .k-grid-filter:focus{
    background: rgba(255, 255, 255, .16) !important;
    opacity: 1;
}
.companyContent .k-grid-header .k-grid-filter .k-icon.k-filter,
.companyContent .k-grid-header .k-icon.k-filter,
.companyContent .k-grid .k-grid-header .k-icon.k-filter{
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    float: none !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 14px !important;
    height: 14px !important;
    background-color: transparent !important;
    opacity: 1 !important;
    filter: none !important;
}
.companyContent .k-grid tr:nth-child(odd){
    background: var(--cis-grid-row-odd);
}
.companyContent .k-grid tr:nth-child(even){
    background: var(--cis-grid-row-even);
}
.companyContent .k-grid tr:hover td{
    background: var(--cis-grid-row-hover) !important;
}
.companyContent .k-grid tr td,
.companyContent .k-grid .k-grid-content td{
    padding: 10px 12px !important;
    vertical-align: middle !important;
    border-color: var(--cis-grid-cell-border) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: var(--cis-grid-text) !important;
    white-space: normal !important;
    word-break: break-word !important;
    overflow: hidden !important;
    text-overflow: clip !important;
}
.companyContent .k-grid > .k-grid-content,
.companyContent .k-grid .k-grid-content{
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    background: #fff !important;
    height: auto !important;
    max-height: none !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    flex: none !important;
    min-height: 0 !important;
}
.companyContent .k-grid .k-grid-content table,
.companyContent .k-grid-content table{
    height: auto !important;
}
.companyContent .k-grid .k-grid-content tr,
.companyContent .k-grid .k-grid-content td{
    height: auto !important;
}
.companyContent .k-pager-wrap.k-grid-pager{
    position: relative;
    z-index: 1;
    background: #f8fafc !important;
    border: 0 !important;
    border-top: 1px solid var(--cis-grid-cell-border) !important;
    border-radius: 0 0 10px 10px;
    margin: 0 !important;
    padding: .55rem .5rem !important;
    text-align: center !important;
    clear: both;
}
.companyContent .k-grid td.cis-grid-ops-cell,
.companyContent .k-grid td:has(.cis-grid-ops),
.companyContent .k-grid td:has(.company-grid-ops){
    padding: 8px 6px !important;
    overflow: visible !important;
    vertical-align: middle;
    text-align: start;
    white-space: nowrap;
}
.companyContent .cis-grid-ops,
.companyContent .company-grid-ops{
    display: inline-grid;
    grid-template-columns: 1fr;
    justify-items: stretch;
    gap: 4px;
    width: max-content;
    max-width: none;
    min-width: 0;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
.companyContent .cis-grid-ops .k-button,
.companyContent .company-grid-ops .k-button,
.companyContent .k-grid tr td .cis-grid-ops .k-button,
.companyContent .k-grid tr td .company-grid-ops .k-button{
    display: inline-flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 5px;
    box-sizing: border-box !important;
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 28px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 4px 8px !important;
    border: 1px solid var(--cis-grid-act-border) !important;
    border-radius: 7px !important;
    background: var(--cis-grid-act-bg) !important;
    color: var(--cis-grid-act-text) !important;
    font-size: 11px !important;
    font-weight: 600;
    line-height: 1.2 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    float: none !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
}
.companyContent .k-grid tbody td > .k-button,
.companyContent .k-grid tbody td > a.k-button{
    display: inline-flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 5px;
    box-sizing: border-box !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 28px !important;
    height: auto !important;
    margin: 0 0 4px 0 !important;
    padding: 4px 8px !important;
    border: 1px solid var(--cis-grid-act-border) !important;
    border-radius: 7px !important;
    background: var(--cis-grid-act-bg) !important;
    color: var(--cis-grid-act-text) !important;
    font-size: 11px !important;
    font-weight: 600;
    line-height: 1.2 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    float: none !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
}
.companyContent .cis-grid-ops .k-button:hover,
.companyContent .company-grid-ops .k-button:hover,
.companyContent .k-grid tbody td .k-button:hover,
.companyContent .k-grid tbody td a.k-button:hover{
    background: #ddeefb !important;
    border-color: #7ea0c7 !important;
    color: var(--cis-grid-act-text) !important;
}
.companyContent .k-grid tbody td .k-button .cis-icon,
.companyContent .cis-grid-ops .cis-icon,
.companyContent .company-grid-ops .cis-icon{
    display: inline-block !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    float: none !important;
    flex-shrink: 0;
    width: 14px !important;
    height: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: middle;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}
.companyContent .cis-grid-ops .k-button[href*="archive"],
.companyContent .cis-grid-ops .k-button[href*="delete"],
.companyContent .cis-grid-ops .k-button[href*="Delete"],
.companyContent .cis-grid-ops .k-button[href*="remove"],
.companyContent .company-grid-ops .k-button[href*="archive"],
.companyContent .company-grid-ops .k-button[href*="delete"],
.companyContent .company-grid-ops .k-button[href*="Delete"],
.companyContent .company-grid-ops .k-button[href*="remove"],
.companyContent .k-grid tr td a.k-button[href*="archiveCMRInsurance"]{
    border-color: var(--cis-grid-act-danger-border) !important;
    background: var(--cis-grid-act-danger-bg) !important;
    color: var(--cis-grid-act-danger-text) !important;
}
.companyContent .cis-grid-ops > div{
    display: contents;
}
.companyContent .k-grid tr td > a.k-button{
    box-sizing: border-box !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    line-height: 1.2 !important;
    float: none !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

/* cis-act-btn stacks (insurance certificate list, etc.) */
.companyContent .k-grid td:has(.cis-grid-actions) {
    padding: 8px 6px !important;
    overflow: visible !important;
    vertical-align: middle;
    text-align: start;
    white-space: nowrap;
}

.companyContent .k-grid .cis-grid-actions--stacked {
    display: inline-grid;
    grid-template-columns: 1fr;
    justify-items: stretch;
    gap: 4px;
    width: max-content;
    max-width: none;
    margin: 0;
    padding: 4px 2px;
    box-sizing: border-box;
}

.companyContent .k-grid .cis-grid-actions--stacked > span {
    display: block;
    width: 100%;
    max-width: none;
}

.companyContent .k-grid .cis-grid-actions--stacked .cis-act-btn {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: flex-start;
    box-sizing: border-box !important;
}
.companyContent .k-animation-container .k-filter-menu,
.companyContent .k-filter-menu{
    min-width: 240px !important;
    padding: 12px !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 14px 34px rgba(30, 40, 70, .18) !important;
}
.companyContent .k-filter-menu .k-filter-help-text{
    margin: 0 0 10px !important;
    padding: 0 !important;
    color: #475569 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
}
.companyContent .k-filter-menu .k-dropdown,
.companyContent .k-filter-menu .k-textbox,
.companyContent .k-filter-menu .k-datepicker,
.companyContent .k-filter-menu .k-numerictextbox{
    width: 100% !important;
    margin-bottom: 8px !important;
}
.companyContent .k-filter-menu .k-button,
.companyContent .k-filter-menu button.k-button{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    width: calc(50% - 6px) !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 32px !important;
    margin: 8px 3px 0 !important;
    padding: 4px 10px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: var(--cis-grid-filter-purple) !important;
    color: #fff !important;
    font-weight: 600 !important;
    box-shadow: none !important;
    float: none !important;
    vertical-align: top !important;
}
.companyContent .k-filter-menu .k-button:hover,
.companyContent .k-filter-menu button.k-button:hover{
    background: var(--cis-grid-filter-purple-deep) !important;
    color: #fff !important;
}
.companyContent .k-filter-menu .k-button:last-child,
.companyContent .k-filter-menu button.k-button:last-child{
    background: #eef2f7 !important;
    color: #334155 !important;
}
.companyContent .k-filter-menu .k-button:last-child:hover,
.companyContent .k-filter-menu button.k-button:last-child:hover{
    background: #e2e8f0 !important;
    color: #1f2937 !important;
}
