/* Industry events calendar. Literal hex throughout - the --mf-* custom properties referenced by
   company-funds.css are not defined anywhere in the repo and silently do nothing. */
[v-cloak] { display: none; }

/* ---------------------------------------------------------------- hero + filters */

.ie_hero_sub {
    max-width: 640px;
    margin: 8px 0 18px;
    font-size: 15px;
    line-height: 1.5;
    color: #d7e6e6;
}

.ie_hero_link { text-decoration: none; }
.ie_hero_link:hover { color: #00A6A6; }

.ie_filters {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: flex-end;
}

.ie_filter { flex: 0 0 180px; }
.ie_filter_grow { flex: 1 1 260px; }
.ie_filter_actions { flex: 0 0 auto; padding-bottom: 4px; }
.ie_filter .form-label { font-size: 12px; color: #777777; margin-bottom: 4px; }

/* ---------------------------------------------------------------- toolbar */

.ie_toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    width:100%;
    margin-bottom:30px;
}

.ie_view_toggle { display: flex; gap: 6px; }
.ie_view_toggle .btn_border_st.is_active { background: #00A6A6; color: #ffffff; border-color: #00A6A6; }

.ie_month_nav {
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid #e3e3e3;
    border-radius: 5px;
    padding: 5px;
    background: #f6f6f6;
    line-height: 18px;
}

.ie_month_label { min-width: 100px; text-align: center; font-weight: 700; font-size: 16px; }

.ie_toolbar_right { display: flex; align-items: center; gap: 14px; }
.ie_result_count { font-size: 13px; color: #777777; }

.ie_notice {
    border-radius: 6px;
    padding: 30px;
    margin-bottom: 30px;
    font-size: 16px;
    background:#00a6a615;
    border:1px solid #00a6a620;
}

.ie_notice a { color: #00A6A6; text-decoration:none;}

    .ie_notice a img {
        margin-left: 3px;
        transition: 0.25s ease;
    }

    .ie_notice a:hover img {
        margin-left: 10px !important;
        margin-right: -7px;
    }

    .ie_notice p {
        margin-bottom: 7px;
    }

    .ie_notice strong {
        font-weight:600;
    }

    /* ---------------------------------------------------------------- list */
    .ie_group {
        width: 100%;
    }

.ie_group_head {
    font-size: 14px;
    text-transform: uppercase;
    color: #777777;
    padding-bottom: 8px;
    border-bottom: 1px solid #e3e3e3;
    margin-bottom: 12px;
}

.ie_card {
    display: flex;
    gap: 30px;
    padding: 30px;
    box-shadow: rgba(0, 0, 0, 0.08) 0px 3px 7px;
    border-radius: 5px;
    background: #ffffff;
    margin-bottom: 10px;
    transition: box-shadow 0.15s ease;
}

    .ie_card:hover {
        box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 15px;
    }
    .ie_card_past { background: #f8f8f8; }
.ie_card_cancelled { opacity: 0.65; }

.ie_date_block {
    flex: 0 0 120px;
    text-align: center;
    padding: 0px 30px 0px 0px;
    border-right:1px solid #e3e3e3;
}

.ie_date_month { font-size: 14px; color: #363836; font-weight: 400; }
.ie_date_day { font-size: 56px; line-height: 1.1; font-weight: 300; color: #363836; }
.ie_date_range { font-size: 14px; color: #00A6A6; }

.ie_card_main { flex: 1 1 auto; min-width: 0; }

.ie_card_title_row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.ie_card_title {
    font-size: 26px;
    font-weight: 400;
    color: #363836;
    text-decoration: none;
    margin-bottom:5px;
}

.ie_card_title:hover { color: #00A6A6; }

.ie_badge_edition { background: #02424B; color: #ffffff; border-color: #02424B; }
.ie_badge_warn { background: #FED766; border-color: #f0c33c; color: #5c4600; }
.ie_badge_danger { background: #fdecec; border-color: #f4b9bc; color: #de1e29; }
.ie_badge_soft { background: #ffffff; color: #777777; }

.ie_card_meta { 
font-size: 14px; 
color: #00A6A6; 
margin-bottom: 15px; 
background:url(/assets/images/location_map.svg) left top no-repeat;
background-size:20px;
padding-left:25px;
}

.ie_chip_row { display: flex; flex-wrap: wrap; gap: 6px; }

.ie_detail_head .ie_chip_row {
gap:10px;
}

    .ie_detail_head .ie_chip_row .badge {
       font-size:14px!important;
       padding:5px 10px;
    }

    .ie_chip_row span i {
    font-weight: normal;
}

    .ie_chip_row span:last-child i {
        display:none;
    }

    /* ---------------------------------------------------------------- score + attendance */
    .ie_card_signal {
        flex: 0 0 150px;
        display: flex;
        gap: 18px;
        align-items: flex-start;
    }

.ie_score { flex: 0 0 84px; text-align: center; }
.ie_score_value { font-size: 28px; font-weight: 700; line-height: 1; color: #00A6A6; }
.ie_score_scale { font-size: 11px; color: #aaaaaa; margin-top: 1px; }
.ie_score_meta { font-size: 11px; color: #777777; margin-top: 4px; }
.ie_score_none { font-size: 13px; color: #aaaaaa; padding-top: 6px; }

.ie_trend {
    display: inline-block;
    margin-top: 5px;
    font-size: 11px;
    padding: 1px 7px;
    border-radius: 50px;
    text-transform: lowercase;
}

.ie_trend_improving { background: #e6f6f2; color: #1B998B; }
.ie_trend_declining { background: #fdecec; color: #de1e29; }
.ie_trend_stable { background: #f6f6f6; color: #777777; }

.ie_attend { flex: 1 1 auto; }
.ie_attend_count { font-size: 14px; font-weight: 600; color: #363836; margin-bottom: 5px; }
.ie_segments { display: flex; flex-wrap: wrap; gap: 4px; }
.ie_seg { font-size: 11px; background: #ffffff; }
.ie_attend_hint { font-size: 12px; color: #aaaaaa; }

/* Anonymous visitors: the slot stays, so cards do not reflow on sign-in. */
.ie_attend_locked { display: flex; align-items: center; }
.ie_attend_locked .ie_attend_hint { text-align:center; font-size:14px;  }

/* ---------------------------------------------------------------- actions */

.ie_card_actions {
    flex: 0 0 118px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.ie_btn_mark,
.ie_btn_rate {
    height: 32px;
    border-radius: 5px;
    border: 1px solid #e3e3e3;
    background: #ffffff;
    color: #363836;
    font-size: 13px;
    padding: 0 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.ie_btn_mark:hover:not(:disabled),
.ie_btn_rate:hover:not(:disabled) { border-color: #00A6A6; color: #00A6A6; }
.ie_btn_mark.is_on { background: #00A6A6; border-color: #00A6A6; color: #ffffff; }
.ie_btn_mark:disabled { opacity: 0.5; cursor: default; }
.ie_btn_rate { background: #02424B; border-color: #02424B; color: #ffffff; }
.ie_btn_rate:hover { background: #1B998B; border-color: #1B998B; color: #ffffff; }

.ie_btn_mark.is_on:hover {
color:#ffffff;
}
/* ---------------------------------------------------------------- month grid */
.ie_month {
    border: 1px solid #e3e3e3;
    border-radius: 8px;
    overflow: hidden;
    background: #ffffff;
}

.ie_month_head { display: grid; grid-template-columns: repeat(7, 1fr); background: #f6f6f6; }

.ie_month_dow {
    padding: 8px 6px;
    font-size: 11px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #777777;
    text-align: center;
    border-right: 1px solid #e3e3e3;
}

.ie_month_dow:last-child { border-right: none; }

.ie_month_week { display: grid; grid-template-columns: repeat(7, 1fr); border-top: 1px solid #e3e3e3; }

.ie_month_cell {
    min-height: 104px;
    padding: 5px;
    border-right: 1px solid #e3e3e3;
    overflow: hidden;
}

.ie_month_cell:last-child { border-right: none; }
.ie_cell_out { background: #fbfbfb; }
.ie_cell_out .ie_cell_num { color: #cccccc; }
.ie_cell_today { background: #f0fafa; }
.ie_cell_today .ie_cell_num { color: #00A6A6; font-weight: 700; }
.ie_cell_num { font-size: 12px; color: #777777; margin-bottom: 3px; }

.ie_cell_event {
    display: block;
    font-size: 12px;
    line-height: 1.25;
    padding: 6px 5px;
    margin-bottom: 3px;
    background: #f6f6f6;
    border-left: 3px solid #00A6A6;
    color: #363836;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ie_cell_event:hover { background: #e6f6f6; color: #02424B; }
.ie_cell_event_mine { background: #00A6A6;  color: #ffffff; }
.ie_cell_event_mine:hover { background: #1B998B; color: #ffffff; }

/* ---------------------------------------------------------------- rating modal */

.ie_modal { max-width: 620px; }
.ie_rate_sub { font-size: 13px; color: #777777; margin-bottom: 18px; }

.ie_rate_row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 0;
    border-bottom: 1px solid #f0f0f0;
}

.ie_rate_name { font-size: 14px; font-weight: 600; }
.ie_rate_help { font-size: 12px; color: #777777; }

.ie_stars { display: flex; gap: 2px; flex: 0 0 auto; }

.ie_star {
    background: none;
    border: none;
    font-size: 26px;
    line-height: 1;
    padding: 0 2px;
    color: #e3e3e3;
    cursor: pointer;
    transition: color 0.1s ease;
}

.ie_star:hover, .ie_star.is_on { color: #FED766; }

.ie_rate_return { padding: 14px 0 6px; }
.ie_rate_return .form-label { display: flex; align-items: center; gap: 8px; margin: 0; }
.ie_rate_comment { padding-top: 8px; }
.ie_rate_note { font-size: 12px; color: #777777; margin-top: 6px; }

/* ---------------------------------------------------------------- detail page */

.ie_detail_head { display: flex; flex-wrap: wrap; gap: 60px; margin-bottom: 30px; }
.ie_detail_about { flex: 1 1 380px; min-width: 0; }
.ie_detail_desc { font-size: 20px; line-height:1.5;}
.ie_detail_links a { color: #00A6A6; }

.ie_scorecard {
    flex: 0 0 350px;
}

.ie_scorecard_top { display: flex; align-items: baseline; gap: 10px; }
.ie_scorecard_value { font-size: 44px; font-weight: 700; line-height: 1; color: #00A6A6; }
.ie_scorecard_scale { font-size: 14px; color: #aaaaaa; }
.ie_scorecard_count { font-size: 12px; color: #777777; margin-top: 6px; }

.ie_scorecard_note {
    font-size: 12px;
    color: #777777;
    line-height: 1.5;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #f0f0f0;
}

.ie_axis { margin-top: 12px; }
.ie_axis_row { display: flex; justify-content: space-between; font-size: 13px; margin-bottom: 3px; }
.ie_axis_track { height: 6px; border-radius: 3px; background: #f0f0f0; overflow: hidden; }
.ie_axis_fill { height: 100%; background: #00A6A6; border-radius: 3px; }

.ie_section_head {
    font-size: 14px;
    text-transform: uppercase;
    color: #00a6a6;
    padding-bottom: 8px;
    margin-bottom:15px;
}

.ie_comment {
    border: 1px solid #e3e3e3;
    border-left: 3px solid #00A6A6;
    border-radius: 6px;
    padding: 12px 14px;
    margin-bottom: 10px;
    background: #ffffff;
}

.ie_comment_head {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    font-size: 12px;
    color: #777777;
    margin-bottom: 6px;
}

.ie_comment_body { font-size: 14px; line-height: 1.5; }

/* ---------------------------------------------------------------- admin */

.ie_admin_row {
    border: 1px solid #e3e3e3;
    border-radius: 8px;
    margin-bottom: 8px;
    background: #ffffff;
}

.ie_admin_head {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    cursor: pointer;
}

.ie_admin_head:hover { background: #fbfbfb; }
.ie_admin_name { flex: 1 1 auto; font-weight: 600; color: #02424B; }
.ie_admin_meta { font-size: 12px; color: #777777; }
.ie_admin_body { padding: 0 14px 14px; border-top: 1px solid #f0f0f0; }

.ie_ed_row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px solid #f6f6f6;
    font-size: 13px;
}

.ie_ed_label { flex: 0 0 90px; font-weight: 600; }
.ie_ed_dates { flex: 0 0 170px; color: #777777; }
.ie_ed_place { flex: 1 1 160px; color: #777777; }
.ie_ed_actions { flex: 0 0 auto; display: flex; gap: 6px; }

.ie_tagpick { display: flex; flex-wrap: wrap; gap: 6px; }

.ie_tag {
    border: 1px solid #e3e3e3;
    background: #ffffff;
    border-radius: 50px;
    padding: 3px 12px;
    font-size: 12px;
    cursor: pointer;
    color: #363836;
}

.ie_tag.is_on { background: #00A6A6; border-color: #00A6A6; color: #ffffff; }

.ie_sug {
    border: 1px solid #e3e3e3;
    border-radius: 8px;
    padding: 14px;
    margin-bottom: 10px;
    background: #ffffff;
}

.ie_sug_head { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 8px; }
.ie_sug_title { font-weight: 600; color: #02424B; flex: 1 1 auto; }
.ie_sug_msg { font-size: 14px; line-height: 1.5; white-space: pre-wrap; margin-bottom: 10px; }
.ie_sug_actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.ie_sug_note { flex: 1 1 240px; }

/* ---------------------------------------------------------------- responsive */

@media (max-width: 1270px) {
    .ie_card { flex-wrap: wrap; gap:15px;}
    .ie_card_signal { flex: 1 1 100%; padding-left: 0; border-left: none; border-top: 1px solid #e3e3e3; padding-top: 12px; }
    .ie_card_actions { flex: 1 1 100%; flex-direction: row; }
    .ie_btn_mark, .ie_btn_rate { flex: 1 1 auto; }
    .ie_date_block {
        padding: 0px;
        border: 0px;
        display: flex;
        gap: 6px;
        flex: 0 0 100%;
    }

    .ie_date_month {
        font-size:16px;
    }

    .ie_date_day {
    font-size:16px;
    font-weight:700;
    line-height:normal;
    }

    .ie_date_range {
   font-size:16px;
    }

}

@media (max-width: 992px) {
    .ie_detail_head { flex-direction: column; gap:30px; }
    .ie_scorecard { flex: 1 1 auto; }
    .ie_detail_about {
        flex: 1 1 100%;
    }
}

@media (max-width: 767px) {
    .ie_filter, .ie_filter_grow { flex: 1 1 100%; }
    .ie_toolbar { flex-direction: column; align-items: stretch; }
    .ie_month_cell { min-height: 74px; }
    .ie_cell_event { font-size: 10px; }
    .ie_rate_row { flex-direction: column; align-items: flex-start; gap: 8px; }
}
