BODY{font-family:Helvetica, Arial, Sans-Serif;font-size:16px;color:#6b6b6b;}
BODY{background:#FFFFFF;}

#loader{position:fixed;z-index:10000;height:100%;width:100%;left:0px;right:0px;top:0px;bottom:0px;background:url('/images/loading.gif') center center no-repeat #FFFFFF;opacity:0.8;}

.thumbnail{border:none;padding:0px;border-radius:0px;background:transparent;margin:0px;}
H1{font-size:42px;font-family:Helvetica, Arial, Sans-Serif;color:#000000;font-weight:700;border:none;margin:15px 0px;}
H2{font-size:36px;font-family:Helvetica, Arial, Sans-Serif;color:#000000;font-weight:700;border:none;margin:15px 0px;}
H3{font-size:30px;font-family:Helvetica, Arial, Sans-Serif;color:#000000;font-weight:700;border:none;margin:10px 0px;}
H4{font-size:24px;font-family:Helvetica, Arial, Sans-Serif;color:#000000;font-weight:700;border:none;margin:10px 0px;}
H5{font-size:16px;font-family:Helvetica, Arial, Sans-Serif;color:#000000;font-weight:700;border:none;margin:10px 0px;}
A{color:#000000;text-decoration:none;}
A:hover{color:#000000;text-decoration:underline;}

INPUT.center{text-align:center;}
INPUT.highlighted{background:#FFF6CC;}

DIV.header_area{background:#000000;border-top:1px solid;border-bottom:1px solid;padding:20px;}
DIV.header_area DIV.logo{padding:0px 0px;text-align:center;float:left;}
DIV.header_area DIV.logo IMG{max-width:300px;max-height:100px;}

DIV.headline{background:#000000;padding:20px;}
DIV.headline H1{background:#000000;font-size:59px;color:#FFFFFF;text-align:center;}

DIV.header_area H1{font-family:Helvetica,arial,sans-serif;font-size:35px;font-weight:700;color:#FFFFFF;text-align:center;line-height:50px;padding:25px;margin:0px;}
BODY.seller DIV.header_area H1{color:#B11500;}
BODY.buyer DIV.header_area H1{color:#009900;}
BODY.agent DIV.header_area H1{color:#009900;}

DIV.navigation_area{}
DIV.navigation_area{background:#000000;position:relative;}

.navbar{margin-bottom:0px;background:#000000;min-height:auto;z-index:1000;}
.navbar .navbar-collapse{margin:10px 0px 0px 0px;padding:0px;float:right;}
.navbar-inverse{border:none;border-radius:0px;}
.navbar-inverse .navbar-nav{float:none;margin:0px auto;}
.navbar-inverse .navbar-nav > li > a{font-size:16px;color:#FFFFFF;background:#000000;font-family:Helvetica, Arial, Sans-Serif;line-height:20px;font-weight:500;text-transform:none;padding:20px 15px;margin:0px 0px;font-weight:bold;}
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a.sel,
.navbar-inverse .navbar-nav > li > a.sel:hover{background:#000000;color:#FFFFFF !important;text-decoration:underline;}
.navbar-inverse .navbar-nav>.open>a, .navbar-default .navbar-nav>.open>a:focus, .navbar-default .navbar-nav>.open>a:hover {font-size:16px;color:#FFFFFF;background:#000000;}
.navbar-inverse .navbar-nav .dropdown-menu{border-radius:0px;padding:0px;border:none;min-width:100%;}
.navbar-inverse .navbar-nav .dropdown-menu > li > a{font-size:16px;color:#FFFFFF;background:#000000;font-family:Helvetica, Arial, Sans-Serif;line-height:20px;font-weight:500;text-transform:uppercase;padding:20px 10px;margin:0px 0px;border-top:1px solid #FFFFFF;}
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a{font-size:16px;color:#FFFFFF;background:#000000;font-family:Helvetica, Arial, Sans-Serif;line-height:20px;font-weight:500;text-transform:uppercase;padding:20px 10px;margin:0px 0px;}
.navbar-inverse .navbar-nav .dropdown-menu > li > a:hover,
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover{font-size:16px;color:#FFFFFF;background:#000000;}
.navbar-inverse .navbar-nav .navbar-toggle{margin-right:0px;}

.content_area{padding:0px 0px;background:#FFFFFF;min-height:800px;}
.content_area A:hover{color:#000000;text-decoration:underline;}
.content_wrapper{position:relative;padding:0px;}
.content_header{position:absolute;z-index:1;width:100%;}
.content_header IMG{width:100%;}
.content_inner{background:#FFFFFF;position:relative;z-index:2;min-height:200px;margin-bottom:50px;}
.content_inner DIV.sep{display:inline-block;margin:5px auto 15px;overflow:hidden;background:#009844;height:3px;width:50px;font-weight:normal;}

.client_intro{margin-bottom:30px;}
.client_intro H2{color:#6b6b6b;font-size:30px;font-weight:700;padding:0px;margin:50px 0px;}
.client_intro .client_intro_image{text-align:center;}
.client_intro .client_intro_image IMG{max-width:100%;}
.client_intro .client_intro_address{text-align:center;margin:15px;font-size:14px;}
.client_intro .client_intro_text{margin:25px;} 
.client_intro .client_intro_text_editable{min-height:100px;padding:6px;}
.client_intro .client_intro_text_editable:hover{border:1px dotted #000000;padding:5px;cursor:pointer;background:#CECECE;}
.client_intro .client_intro_specs{}
.client_intro .client_intro_specs .client_intro_spec{text-align:center;margin:15px 0px;font-weight:bold}

BODY.seller .client_intro H2{color:#B11500;}
BODY.buyer .client_intro H2{color:#000000;}
BODY.agent .client_intro H2{color:#009900;}

.client_intro INPUT.H2{color:#6b6b6b;font-size:30px;font-weight:700;padding:0px;margin:50px 0px;border:none;width:calc(100% - 5px);}
.client_intro .intro_agent_edit{float:right;text-align:right;margin:50px 0px;} 
.client_intro .intro_agent_edit A .fa,
.client_intro .intro_agent_edit A .fas,
.client_intro .intro_agent_edit A:hover .fa,
.client_intro .intro_agent_edit A:hover .fas{color:#000000;text-decoration:none;display:inline-block;margin:0px 2px;}

.client_intro .client_intro_image INPUT.file{border:none;margin:10px auto;display:inline-block;width:105px;}
.client_intro .client_intro_address INPUT.text{text-align:center;margin:15px;font-size:14px;border:none;}
.client_intro .client_intro_address TEXTAREA.text{text-align:center;margin:15px;font-size:36px;font-weight:600;border:none;min-height:60px;padding:10px;line-height:1.2;resize:vertical;height:fit-content;}


BODY.seller .client_intro INPUT.H2{color:#B11500;}
BODY.buyer .client_intro INPUT.H2{color:#000000;}
BODY.agent .client_intro INPUT.H2{color:#009900;}

.property_info{margin:25px 0px;}
.property_info .line{margin-bottom:5px;}


.timeline{margin:20px;border-left:4px solid #000000;padding:1px 0px;}

.timeline_milestone H2{color:#6b6b6b;font-size:26px;font-weight:700;padding:0px;margin:50px 0px;}
BODY.seller .timeline_milestone H2{color:#B11500;}
BODY.buyer .timeline_milestone H2{color:#000000;}
BODY.agent .timeline_milestone H2{color:#009900;}

.card{margin:60px 15px 0px 15px;padding:0px 0px;background:#d7d7d7;border-radius:7px;border:1px solid transparent;}
.card .card_heading{background:#009901;padding:20px;position:relative;border-radius:7px 7px 0px 0px;}
.card_filters .card_heading{background:#000000;}
.card_filters_sticky{position:sticky;top:0px;z-index:1000;}
.card .card_heading H3,
.card .card_heading INPUT.H3,
.card .card_heading SELECT.H3{color:#FFFFFF;font-family:Montserrat,helvetica,ariel,sans-serif;padding:0px;margin:0px 100px 0px 0px;font-size:16px;font-weight:600;display:block;border:none;background:transparent;width:100%;}
.card .card_heading INPUT.H3::placeholder{color:#BBBBBB;font-family:Montserrat,helvetica,ariel,sans-serif;font-size:16px;font-weight:600;}
.card .card_heading_toggle H3{width:calc(100% - 50px);display:inline-block;margin-right:0px;}
.card .card_heading_toggle .toggle{float:right;}
.card .card_heading_toggle .toggle .fa{color:#FFFFFF;}

.card_body{padding:15px;overflow:visible;}
.card_body .line{margin:0px 0px 15px 0px;overflow:visible;}
.card_label{border-bottom:2px solid #000000;margin:0px 0px 0px 0px;font-weight:bold;}
.card_label2{margin:0px 0px 5px 0px;font-weight:bold;}
.card_section{border:none;margin:0px 0px 60px 0px;padding:15px 15px 0px 15px;}
.card_content{font-family:Montserrat,helvetica,ariel,sans-serif;padding:0px;margin:0px;font-size:16px;}
.card_content INPUT.text,
.card_content SELECT,
.card_content TEXTAREA,
.card_content OPTION{background:#d7d7d7;font-family:Montserrat,helvetica,ariel,sans-serif;padding:0px;margin:0px;font-size:16px;background:transparent;border:none;}
.card_links{text-align:center;margin:10px 0px 0px 0px;} 
.card_links A.button{color:#FFFFFF;text-decoration:none;margin:0px 5px;}
.card_links A.button:hover{color:#FFFFFF;text-decoration:none;margin:0px 5px;}


.card_new{cursor:pointer;background:#FFFFFF;border:none;}
.card_new .card_heading{background:#FFFFFF;border:1px dotted #636363;border-radius:7px;}
.card_new .card_heading H3{color:#636363;}
.card_new .card_heading INPUT.H3{color:#000000;}

.card_deleted{cursor:pointer;background:#F8F8F8;border:1px dotted #CCCCCC;}
.card_deleted .card_heading{background:#EEEEEE;border-bottom:1px dotted #CCCCCC;}
.card_deleted .card_heading H3{color:#CCCCCC;}
.card_deleted .card_heading INPUT.H3{color:#CCCCCC;}
.card_deleted INPUT.text{color:#CCCCCC;}
.card_deleted INPUT::placeholder{color:#CCCCCC;}
.card_deleted TEXTAREA{color:#CCCCCC;}
.card_deleted SELECT{color:#CCCCCC;}
.card_deleted .wysiwyg_inactive{color:#CCCCCC;}
.card_deleted .wysiwyg_inactive *{color:#CCCCCC !important;}

.choose_icon{text-align:center;margin-bottom:30px;}
.choose_icon I{font-size:22px;height:42px;width:42px;border-radius:21px;margin:0px auto;padding:0px;text-align:center;line-height:42px;display:block;color:#FFFFFF;background:#636363;cursor:pointer;}

.drop_target_dragover{border:1px dotted #000000;}
.drop_target_dragover>*{opacity:0.0;}
.drop_target INPUT.file{width:100%;margin:5px auto;border:none;background:transparent}

/* Custom file input styling */
.hidden-file-input {
    opacity: 0;
    position: absolute;
    z-index: -1;
    width: 0.1px;
    height: 0.1px;
    overflow: hidden;
}

.custom-file-label {
    display: inline-block;
    padding: 8px 12px;
    background-color: var(--agent-bg-color1, #007bff);
    color: var(--agent-fg-color1, white);
    border-radius: 4px;
    cursor: pointer;
    margin: 5px auto;
    font-weight: normal;
    border: 1px solid black;
}

.custom-file-label:hover {
    background-color: var(--agent-bg-color2, #0056b3);
    color: var(--agent-fg-color2, white);
}

.agent-dynamic-button {
    display: inline-block !important;
    padding: 8px 12px !important;
    background-color: var(--agent-bg-color1, #007bff) !important;
    color: var(--agent-fg-color1, white) !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    margin: 5px auto !important;
    font-weight: 500 !important;
    border: 1px solid black !important;
    text-decoration: none !important;
}

.agent-dynamic-button:hover {
    background-color: var(--agent-bg-color2, #0056b3) !important;
    color: var(--agent-fg-color2, white) !important;
}



/* Templates page specific column widths */
.templates-page .template-label-col {
    width: 19% !important;
    text-align: right !important;
}

.templates-page .template-input-col {
    width: 20% !important;
}

.custom-remove-button {
    display: inline-block;
    padding: 8px 12px;
    background-color: var(--agent-bg-color2, #6c757d);
    color: var(--agent-fg-color2, white);
    border-radius: 4px;
    cursor: pointer;
    margin: 5px 5px 5px 20px;
    text-decoration: none !important;
    border: 1px solid black;
    font-size: inherit;
    font-weight: normal;
}

.custom-remove-button:hover {
    background-color: var(--agent-bg-color1, #007bff) !important;
    color: var(--agent-fg-color1, white) !important;
    text-decoration: none !important;
}


.client_dashboard{}
.client_dashboard .client_dashboard_body .col{margin-bottom:15px;padding:15px;}
.client_dashboard .client_dashboard_percent{text-align:center;margin:0px auto;}
.client_dashboard .client_dashboard_percent .progress-text{font-size:16px !important;color:#000000}
.client_dashboard .client_dashboard_percent .front-ring .progress-ring__circle{stroke-width: 15;stroke: rgba(0,0,0,.05);r: 65 !important;}
.client_dashboard .client_dashboard_steps{text-align:center;}
.client_dashboard .client_dashboard_next_date{text-align:center;}
.client_dashboard .client_dashboard_calendar{text-align:center;background:url('/images/due-date-days-rotated-trans1.png') center center no-repeat #009901;color:#009901;background-size:225px 150px;height:150px;width:225px;text-transform:uppercase;margin:0px auto;}
.client_dashboard .client_dashboard_calendar_text{text-align:center;height:150px;width:225px;font-size:20px;font-weight:bold;line-height:25px;padding:65px 0px 0px 0px;text-transform:uppercase; transform: rotate(-15deg);}
.client_dashboard .client_dashboard_next_timeline_item{text-align:center;}
.client_dashboard .client_dashboard_next_timeline_item H3{text-align:center;}
.client_dashboard .client_dashboard_next_timeline_item H3 .next{}
BODY.seller .client_dashboard .client_dashboard_next_timeline_item H3 .next{color:#009901;}
BODY.buyer .client_dashboard .client_dashboard_next_timeline_item H3 .next{color:#009901;}

.timeline_item_digest{}
.timeline_item_digest .timeline_item_info{border-bottom:1px dotted #000000;padding-bottom:5px;margin-bottom:5px;}
.timeline_item_digest .timeline_item_info_date{display:inline-block;margin-left:5px;}
.timeline_item_digest .timeline_item_info_title{display:inline-block;margin-left:5px;font-weight:bold;}
.timeline_item_digest .timeline_item_info_label{display:inline-block;margin-left:5px;}
.timeline_item_digest .timeline_item_info_completed_by{display:inline-block;margin-left:5px;font-style:italic;}



.timeline .timeline_item{margin:50px 0px 50px 50px;padding:0px 0px;border-radius:7px 7px 7px 7px;}
.timeline .timeline_item .timeline_item_date_note{font-size:11px;font-style:italic;color:#990000;}
.timeline .timeline_item .timeline_item_heading{background:#636363;padding:20px;position:relative;border-radius:7px 7px 0px 0px;border: 2px solid #d7d7d7;}
.timeline .timeline_item .timeline_item_heading H3{color:#FFFFFF;font-family:Montserrat,helvetica,ariel,sans-serif;padding:0px;margin:0px 100px 0px 0px;font-size:16px;font-weight:600;display:inline-block;max-width:calc(100% - 75px);}
.timeline .timeline_item .timeline_item_heading .timeline_item_checkbox{float:right;}
.timeline .timeline_item .timeline_item_heading .timeline_item_checkbox INPUT{height:30px;width:30px;color:#990000;margin-top:-5px;}
.timeline .timeline_item .timeline_item_heading .timeline_item_complete_details{float:right;}
.timeline .timeline_item .timeline_item_heading .timeline_item_complete_details .fa{font-size:30px;width:30px;color:#FFFFFF;margin-top:-5px;margin-right:5px;}

.timeline .timeline_item .timeline_item_heading .timeline_item_icon{position:absolute;top:0px;left:-80px;padding: 3px;background: #FFFFFF;display: block;border-radius: 50px;border:4px solid #000000}
.timeline .timeline_item .timeline_item_heading .timeline_item_icon>I{font-size:22px;height:42px;width:42px;border-radius:21px;margin:0px;padding:0px;text-align:center;line-height:42px;display:block;color:#FFFFFF;background:#636363;}
.timeline .timeline_item .timeline_item_heading .arrow-left {position:absolute;top:17px;left:-13px;width: 13px; height: 23px; background:url('/images/timeline-arrow.png') right center no-repeat;}
.timeline .timeline_item_body{padding:15px;background:#d7d7d7;border-radius:0px 0px 7px 7px;border: 2px solid #d7d7d7}
.timeline .timeline_item_image IMG{float:left;width:40%;margin-bottom:15px;margin-right:15px;border:2px solid #000000}
.timeline .timeline_item_content{font-family:Montserrat,helvetica,ariel,sans-serif;padding:0px;margin:0px;font-size:16px;}
.timeline .timeline_item_content:after{display:table;content:'';clear:both;}
.timeline .timeline_item_content A{color:#636363;font-family:Montserrat,helvetica,ariel,sans-serif;font-size:16px;text-decoration:underline;}
.timeline .timeline_item_content A:hover{color:#000000;font-family:Montserrat,helvetica,ariel,sans-serif;font-size:16px;text-decoration:underline;}
.timeline .timeline_item_link{float:right;margin:10px 0px 0px 10px;} 
.timeline .timeline_item_link A.button{color:#FFFFFF;text-decoration:none;}
.timeline .timeline_item_link A.button:hover{color:#FFFFFF;text-decoration:none;}
.timeline .timeline_item_custom_notice{padding:2px;font-size:11px;font-style:italic;}

.timeline .timeline_item_INFO H1{color:#009900;}
.timeline .timeline_item_AGENT H1{color:#000000;}
.timeline .timeline_item_OTHER H1{color:#000000;}
.timeline .timeline_item_USER H1{color:#009901;}
.timeline .timeline_item_INFO .timeline_item_heading{background:#009900;}
.timeline .timeline_item_AGENT .timeline_item_heading{background:#000000;}
.timeline .timeline_item_OTHER .timeline_item_heading{background:#000000;}
.timeline .timeline_item_USER .timeline_item_heading{background:#009901;}
.timeline .timeline_item_INFO .timeline_item_heading .timeline_item_icon>I{background:#009900;}
.choose_icon_INFO I{background:#009900;}
.timeline .timeline_item_AGENT .timeline_item_heading .timeline_item_icon>I{background:#000000;}
.choose_icon_AGENT I{background:#000000;}
.timeline .timeline_item_OTHER .timeline_item_heading .timeline_item_icon>I{background:#000000;}
.choose_icon_OTHER I{background:#000000;}
.timeline .timeline_item_USER .timeline_item_heading .timeline_item_icon>I{background:#009901;}
.choose_icon_USER I{background:#009901;}
.timeline .timeline_item_INFO .timeline_item_heading .arrow-left{background-color:#009900;}
.timeline .timeline_item_AGENT .timeline_item_heading .arrow-left{background-color:#000000;}
.timeline .timeline_item_OTHER .timeline_item_heading .arrow-left{background-color:#000000;}
.timeline .timeline_item_USER .timeline_item_heading .arrow-left{background-color:#009901;}

.timeline .timeline_item .timeline_agent_edit{float:right;} 
.timeline .timeline_item .timeline_agent_edit A .fa,
.timeline .timeline_item .timeline_agent_edit A .fas,
.timeline .timeline_item .timeline_agent_edit A:hover .fa,
.timeline .timeline_item .timeline_agent_edit A:hover .fas{color:#FFFFFF;text-decoration:none;display:inline-block;margin:0px 5px;}

.timeline .timeline_milestone{background: #FFFFFF;margin-left: -10px;padding: 0px;border-radius: 0px;padding: 0px 5px;}
.timeline .timeline_milestone .timeline_item_heading{background: #FFFFFF;border-radius:none;border:none;}
.timeline .timeline_milestone .timeline_agent_edit{float:none;text-align:right;} 
.timeline .timeline_milestone .timeline_agent_edit A .fa,
.timeline .timeline_milestone .timeline_agent_edit A:hover .fa{color:#000000;text-decoration:none;display:inline-block;margin:0px 2px;}

.timeline .timeline_item_COMPLETED .timeline_agent_edit A .fa,
.timeline .timeline_item_COMPLETED .timeline_agent_edit A .fas,
.timeline .timeline_item_COMPLETED .timeline_agent_edit A:hover .fa,
.timeline .timeline_item_COMPLETED .timeline_agent_edit A:hover .fas{color:#999999;}
.timeline .timeline_item_COMPLETED .timeline_item_heading H3{color:#999999;}
.timeline .timeline_item_COMPLETED .timeline_item_heading .timeline_item_icon>I{color:#FFFFFF;}
.timeline .timeline_item_COMPLETED .timeline_item_heading .timeline_item_complete_details .fa{color:#FFFFFF;}

.timeline .timeline_item_DELETED .timeline_agent_edit A .fa,
.timeline .timeline_item_DELETED .timeline_agent_edit A .fas,
.timeline .timeline_item_DELETED .timeline_agent_edit A:hover .fa,
.timeline .timeline_item_DELETED .timeline_agent_edit A:hover .fas{color:#999999;}
.timeline .timeline_item_DELETED .timeline_item_heading H3{color:#999999;}
.timeline .timeline_item_DELETED .timeline_item_heading .timeline_item_icon>I{color:#FFFFFF;}
.timeline .timeline_item_DELETED .timeline_item_heading .timeline_item_complete_details .fa{color:#FFFFFF;}


.timeline .timeline_agent_tools{padding: 50px 0px 50px 0px;margin: -50px 0px 0px -10px;background: #FFFFFF;}

.timeline .timeline_item_AGENT .timeline_item_heading H3{display:inline-block;width:calc(100% - 180px);margin:0px;}

.timeline .timeline_item_COMPLETED .timeline_item_heading{background:#DDDDDD;border-radius:7px;}
.timeline .timeline_item_COMPLETED .timeline_item_body{display:none;}
.timeline .timeline_item_COMPLETED H1{color:#009901;}
.timeline .timeline_item_COMPLETED H3{color:#DDDDDD;}
.timeline .timeline_item_COMPLETED .timeline_item_heading .arrow-left {background-color: #DDDDDD;}
.timeline .timeline_item_COMPLETED .timeline_item_heading .timeline_item_icon>I{background:#DDDDDD;}


.timeline .timeline_item_EDITING INPUT.H3,
.timeline .timeline_item_EDITING SELECT.H3{color:#FFFFFF;font-family:Montserrat,helvetica,ariel,sans-serif;padding:0px;margin:0px;font-size:16px;font-weight:600;display:inline-block;border:none;background:transparent;width:calc(100% - 180px);}
.timeline .timeline_item_EDITING INPUT.H3::placeholder{color:#BBBBBB;font-family:Montserrat,helvetica,ariel,sans-serif;font-size:16px;font-weight:600;}
.timeline .timeline_item_EDITING INPUT.text,
.timeline .timeline_item_EDITING INPUT.file,
.timeline .timeline_item_EDITING SELECT,
.timeline .timeline_item_EDITING OPTION{background:#d7d7d7;font-family:Montserrat,helvetica,ariel,sans-serif;padding:0px;margin:0px;font-size:16px;background:#FFFFFF;border:none;}
.timeline .timeline_item_EDITING SELECT,
.timeline .timeline_item_EDITING OPTION{background:#FFFFFF;}
.timeline .timeline_item_EDITING LABEL,
.timeline .timeline_item_EDITING LABEL:hover{margin:0px 5px;padding:0px;}
.timeline .timeline_item_EDITING .timeline_item_body{display:block !important}
.timeline .timeline_item_EDITING .timeline_item_image{overflow:hidden;}
.timeline .timeline_item_EDITING .timeline_item_content{overflow:hidden;}
.timeline .timeline_item_EDITING .timeline_item_image IMG{width:100%;}
.timeline .timeline_item_EDITING .timeline_item_link{text-align:right;float:none;}
.timeline .timeline_item_EDITING .timeline_item_link .button_disabled{opacity:.2;}
.timeline .timeline_item_EDITING .line{margin:0px 0px 15px 0px;}

.timeline .timeline_item_NEW{cursor:pointer;background:#FFFFFF;border:1px dotted #636363;}
.timeline .timeline_item_NEW .timeline_item_heading{background:#FFFFFF;border-bottom:1px dotted #636363;}
.timeline .timeline_item_NEW .timeline_item_heading H3{color:#636363;}
.timeline .timeline_item_NEW .timeline_item_heading INPUT.H3{color:#000000;}
.timeline .timeline_item_NEW .timeline_item_heading .timeline_item_icon>I{color:#BBBBBB;background:#FFFFFF;}
.timeline .timeline_item_NEW .timeline_agent_edit A .fa,
.timeline .timeline_item_NEW .timeline_agent_edit A:hover .fa{color:#636363;}

.timeline .timeline_item_DEPENDANT{}
.timeline .timeline_item_DEPENDANT H1{color:#CCCCCC;}
.timeline .timeline_item_DEPENDANT H3{color:#CCCCCC;}
.timeline .timeline_item_DEPENDANT .timeline_item_heading{background:#CCCCCC;border-radius:7px;}
.timeline .timeline_item_DEPENDANT .timeline_item_heading .timeline_item_icon>I{background:#CCCCCC;}
.timeline .timeline_item_DEPENDANT .timeline_item_heading .arrow-left{background-color:#CCCCCC;}
.timeline .timeline_item_DEPENDANT .timeline_item_body{display:none;}

.timeline .timeline_item_DELETED{}
.timeline .timeline_item_DELETED H1{color:#DDDDDD;}
.timeline .timeline_item_DELETED H3{color:#DDDDDD;}
.timeline .timeline_item_DELETED .timeline_item_heading{background:#DDDDDD;border-radius:7px;}
.timeline .timeline_item_DELETED .timeline_item_heading .timeline_item_icon>I{background:#DDDDDD;}
.timeline .timeline_item_DELETED .timeline_item_heading .arrow-left{background-color:#DDDDDD;}
.timeline .timeline_item_DELETED .timeline_item_body{display:none;}


.timeline .timeline_item_NA{}
.timeline .timeline_item_NA H1{color:#EEEEEE;}
.timeline .timeline_item_NA .timeline_item_heading{background:#EEEEEE;border-radius:7px;}
.timeline .timeline_item_NA .timeline_item_heading .timeline_item_icon>I{background:#EEEEEE;}
.timeline .timeline_item_NA .timeline_item_heading .arrow-left{background-color:#EEEEEE;}
.timeline .timeline_item_NA .timeline_item_body{display:none;}

.timeline .timeline_item_HIDDEN{display:none;}


.timeline_DELETED .timeline_item_DELETED{display:none;}
.timeline_DELETED .toggle_timeline_item_DELETED{display:block;margin:0px 0px 0px 50px;cursor:pointer;}
BODY.show_DELETED .timeline_DELETED .timeline_item_DELETED{display:block;}
BODY.show_DELETED .timeline_DELETED .toggle_timeline_item_DELETED{display:none;}
.timeline_COMPLETED .timeline_item_COMPLETED{display:none;}
.timeline_COMPLETED .toggle_timeline_item_COMPLETED{display:block;margin:0px 0px 0px 50px;cursor:pointer;}
BODY.show_COMPLETED .timeline_COMPLETED .timeline_item_COMPLETED{display:block;}
BODY.show_COMPLETED .timeline_COMPLETED .toggle_timeline_item_COMPLETED{display:none;}

BODY.timeline_condensed .timeline_item .timeline_item_body{display:none;}
BODY.timeline_condensed .timeline_item .timeline_item_heading{border-radius:7px;}
BODY.timeline_condensed .timeline_item_expanded .timeline_item_body{display:block;}
BODY.timeline_condensed .timeline_item_expanded .timeline_item_heading{border-radius:7px 7px 0px 0px;}
BODY.timeline_condensed .timeline_item_EDITING .timeline_item_body{display:block;}
BODY.timeline_condensed .timeline_item_EDITING .timeline_item_heading{border-radius:7px 7px 0px 0px;}
 



.timeline_preview{margin:0px 0px 30px 0px;padding:1px 40px 1px 0px;border:1px dotted #000000;border-left:4px solid #000000;background:#FFFFFF;}
.timeline_preview .timeline_item{}
.timeline_preview .timeline_item H1{font-size:40px;}

/*
.timeline .timeline_item_NA{cursor:pointer;background:#F8F8F8;border:1px dotted #CCCCCC;}
.timeline .timeline_item_NA H1{color:#CCCCCC}
.timeline .timeline_item_NA .timeline_item_heading{background:#EEEEEE;border-bottom:1px dotted #CCCCCC;}
.timeline .timeline_item_NA .timeline_item_heading H3{color:#CCCCCC}
.timeline .timeline_item_NA .timeline_item_heading INPUT.H3{color:#CCCCCC}
.timeline .timeline_item_NA .timeline_item_heading .timeline_item_icon>I{background:#EEEEEE;}
.timeline .timeline_item_NA .timeline_item_heading .arrow-left{background-color:#CCCCCC}
.timeline .timeline_item_NA .timeline_item_body{opacity:.2}
.timeline .timeline_item_NA .timeline_agent_edit A .fa,
.timeline .timeline_item_NA .timeline_agent_edit A:hover .fa{color:#636363}
*/

.timeline_item_behavior_UNDERCONTRACTBUTTON{background: #FFFFFF;margin: 0px -4px;padding: 0px 0px 50px 0px;}
.timeline_item_behavior_UNDERCONTRACTBUTTON HR{border-bottom:1px solid #000000;}


.timeline_contract_boundary{border-bottom:5px solid #000000;padding:0px 0px 5px 50px;}
.timeline_contract_boundary .timeline_contract_boundary_info{text-align:left;font-size:11px;}
.timeline_contract_boundary .timeline_contract_boundary_action,
.timeline_contract_boundary .timeline_contract_boundary_action A{text-align:right;font-size:11px;}

/* ========================================
   SIDEBAR - CLEAN STANDARDIZED STYLES
   ======================================== */

/* Sidebar container */
.sidebar{padding:60px 0px 0px 50px;}
.sidebar H2{color:#000000;font-size:36px;font-weight:700;padding:0px 0px 20px 0px;border-bottom:2px solid #000000;}

/* Base styles for ALL sidebar buttons and toggle headers */
.sidebar A.button,
.sidebar .toggle A.toggle_header {
    display:block;
    width:100%;
    height:52px;
    padding:9px;
    margin:0px 0px 10px 0px;
    font-family:"Roboto";
    font-weight:500;
    font-size:20px;
    line-height:32px;
    border:1px solid #000000;
    border-radius:5px;
    text-decoration:none !important;
    box-sizing:border-box;
    position:relative;
    text-align:center;
}

/* Regular button styling */
.sidebar A.button{background:#000000;color:var(--agent-fg-color1, #FFFFFF);font-family:"Roboto";font-size:20px;font-weight:500;line-height:20px;padding:15px;}
.sidebar A.button:hover{background:#009901;color:var(--agent-fg-color2, #FFFFFF);font-family:"Roboto";font-size:20px;font-weight:500;line-height:20px;padding:15px;margin:0px 0px 10px 0px;}
.sidebar A.button_disabled{background:#EEEEEE;}
.sidebar A.button_disabled:hover{background:#EEEEEE;}

/* Override toggle-header-colorswap classes to maintain sidebar consistency */
.sidebar .toggle-header-colorswap-secondary,
.sidebar .toggle-header-colorswap-secondary:hover,
.sidebar .toggle-header-colorswap-secondary:focus,
.sidebar .toggle-header-colorswap-secondary:active,
.sidebar .toggle_header.toggle-header-colorswap-secondary {
    display:block !important;
    margin:0px !important;
    padding:9px !important;
    padding-left:74px !important;
    padding-right:74px !important;
    height:52px !important;
    box-sizing:border-box !important;
    font-family:"Roboto" !important;
    font-weight:500 !important;
    font-size:20px !important;
    line-height:32px !important;
    text-align:center !important;
    position:relative !important;
}

/* Icons in colorswap toggle headers */
.sidebar .toggle-header-colorswap-secondary .icon,
.sidebar .toggle_header.toggle-header-colorswap-secondary .icon {
    position:absolute !important;
    left:15px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    margin:0px !important;
}

/* Action buttons in colorswap toggle headers */
.sidebar .toggle_EDITING .toggle_header.toggle-header-colorswap-secondary .toggle_agent_edit,
.sidebar .toggle_header.toggle-header-colorswap-secondary .toggle_agent_edit {
    position:absolute !important;
    right:10px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
}

/* Button child elements - icons left, text centered, icons2 right */
.sidebar A.button .icon:not(.icon2){position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--agent-fg-color1, #FFFFFF);font-size:20px;margin:0px;}
.sidebar A.button .icon2{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:var(--agent-fg-color1, #FFFFFF);font-size:20px;margin:0px;}
.sidebar A.button .text{color:var(--agent-fg-color1, #FFFFFF);font-family:"Roboto";font-size:20px;text-align:center;font-weight:500;line-height:20px;}

/* Button hover states for child elements */
.sidebar A.button:hover .icon:not(.icon2){color:var(--agent-fg-color2, #FFFFFF);}
.sidebar A.button:hover .icon2{color:var(--agent-fg-color2, #FFFFFF);}
.sidebar A.button:hover .text{color:var(--agent-fg-color2, #FFFFFF);}

/* Toggle containers */
.sidebar .toggle{width:100%;margin:0px 0px 10px 0px;padding:0px;}
.sidebar .toggle_NEW{width:100% !important;margin:0px 0px 10px 0px !important;padding:0px !important;}

/* Key Dates toggle - no bottom margin */
.sidebar .toggle:has(#toggle_key_dates){margin:0px;}

/* Toggle headers - use agent color variables */
.sidebar .toggle A.toggle_header{background:#009901;color:#FFFFFF;}
.sidebar .toggle A.toggle_header:hover{background:#009901;color:#FFFFFF;}
.sidebar .toggle A.toggle_header .icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:#FFFFFF;font-size:20px;margin:0px;}

/* Toggle action buttons (sort/delete) on the right */
.sidebar .toggle .toggle_header .toggle_agent_edit{position:absolute;right:10px;top:50%;transform:translateY(-50%);}
.sidebar .toggle .toggle_header .toggle_agent_edit A .fa,
.sidebar .toggle .toggle_header .toggle_agent_edit A .fas,
.sidebar .toggle .toggle_header .toggle_agent_edit A:hover .fa,
.sidebar .toggle .toggle_header .toggle_agent_edit A:hover .fas{color:#FFFFFF;text-decoration:none;display:inline-block;margin:0px 2px;}

/* Contact info container */
.sidebar .contact_info_container,
.sidebar #contact_info_container{width:100%;}

/* Widgets container */
.sidebar #widgets_container{width:100%;}

/* Toggle body and content */
.sidebar .toggle_body{background:#FFFFFF;border-top:0px;}
.sidebar .toggle_body .toggle_content{padding:15px;}
.sidebar .toggle_body .toggle_content .line{margin:0px 0px 15px 0px;}

/* EDITING state - white background */
.sidebar .toggle_EDITING .toggle_header{background:#FFFFFF;color:#000000;padding-left:26px;padding-right:74px;}
.sidebar .toggle_EDITING .toggle_header A{display:inline-block;padding:0px;}
.sidebar .toggle_EDITING .toggle_header.agent_bg_color1{background:#FFFFFF !important;}
.sidebar .toggle_EDITING .toggle_header.agent_bg_color1 *{color:#000000 !important;}
.sidebar .toggle_EDITING .toggle_header INPUT.widget_title,
.sidebar .toggle_EDITING .toggle_header INPUT.user_widget_title,
.sidebar .toggle_EDITING .toggle_header SELECT.widget_title{font-family:"Roboto";font-size:20px;font-weight:500;text-align:center;width:257px;line-height:32px;border:none;background:transparent;margin:0px;padding:0px;}
.sidebar .toggle_EDITING .toggle_header INPUT.widget_title::placeholder,
.sidebar .toggle_EDITING .toggle_header INPUT.user_widget_title::placeholder{color:#BBBBBB;font-family:"Roboto";font-size:20px;font-weight:500;}
.sidebar .toggle_EDITING .toggle_content .line{margin:0px 0px 15px 0px;}
.sidebar .toggle_EDITING .toggle_content INPUT.text{border:none;}

/* EDITING state with toggle-header-colorswap-secondary - use agent's secondary colors */
.sidebar .toggle_EDITING .toggle_header.toggle-header-colorswap-secondary{background:var(--agent-bg-color2, #000000) !important;color:var(--agent-fg-color2, #FFFFFF) !important;border:1px solid #000000 !important;}
.sidebar .toggle_EDITING .toggle_header.toggle-header-colorswap-secondary:hover{background:var(--agent-bg-color1, #009901) !important;color:var(--agent-fg-color1, #FFFFFF) !important;}
.sidebar .toggle_EDITING .toggle_header.toggle-header-colorswap-secondary A{color:var(--agent-fg-color2, #FFFFFF) !important;}
.sidebar .toggle_EDITING .toggle_header.toggle-header-colorswap-secondary:hover A{color:var(--agent-fg-color1, #FFFFFF) !important;}
.sidebar .toggle_EDITING .toggle_header.toggle-header-colorswap-secondary .icon{color:var(--agent-fg-color2, #FFFFFF) !important;}
.sidebar .toggle_EDITING .toggle_header.toggle-header-colorswap-secondary:hover .icon{color:var(--agent-fg-color1, #FFFFFF) !important;}
.sidebar .toggle_EDITING .toggle_header.toggle-header-colorswap-secondary INPUT.widget_title{color:var(--agent-fg-color2, #FFFFFF) !important;}
.sidebar .toggle_EDITING .toggle_header.toggle-header-colorswap-secondary:hover INPUT.widget_title{color:var(--agent-fg-color1, #FFFFFF) !important;}
.sidebar .toggle_EDITING .toggle_header.toggle-header-colorswap-secondary INPUT.widget_title::placeholder{color:rgba(255, 255, 255, 0.7) !important;}

/* NEW state - dotted border, gray text */
.sidebar .toggle_NEW{cursor:pointer;background:#FFFFFF;border:none;margin:0px;padding:0px;}
.sidebar .toggle_NEW A.toggle_header,
.sidebar .toggle_NEW A.toggle_header.toggle-header-colorswap-secondary{background:#FFFFFF !important;border:1px dotted #636363 !important;color:#636363 !important;}
.sidebar .toggle_NEW A.toggle_header:hover,
.sidebar .toggle_NEW A.toggle_header.toggle-header-colorswap-secondary:hover{background:#FFFFFF !important;border:1px solid #000000 !important;color:#636363 !important;}
.sidebar .toggle_NEW A.toggle_header .icon{color:#636363 !important;}
.sidebar .toggle_NEW A.toggle_header:hover .icon{color:#636363 !important;}

/* Override button-colorswap classes to maintain sidebar consistency */
.sidebar A.button.button-colorswap-primary,
.sidebar A.button.button-colorswap-primary:hover,
.sidebar A.button.button-colorswap-primary:focus,
.sidebar A.button.button-colorswap-primary:active {
    display:block !important;
    width:100% !important;
    margin:0px 0px 10px 0px !important;
    padding:15px !important;
    height:52px !important;
    box-sizing:border-box !important;
}

/* Mobile responsive - centered with 90% width */
@media (max-width: 767px) {
    .sidebar{padding:10px 0px;display:flex;flex-direction:column;align-items:center;}
    .sidebar H2{width:90% !important;}
    

    
    .sidebar A.button,
    .sidebar A.button.button-colorswap-primary,
  
    
    /* Toggle headers 100% of their parent toggle container */
    .sidebar .toggle A.toggle_header{width:100% !important;padding-left:74px;padding-right:74px;}
    .sidebar .toggle_EDITING .toggle_header{padding-left:26px;padding-right:74px;}
    
    /* Widget titles */
    .sidebar .toggle_EDITING .toggle_header INPUT.widget_title,
    .sidebar .toggle_EDITING .toggle_header INPUT.user_widget_title,
    .sidebar .toggle_EDITING .toggle_header SELECT.widget_title{width:223px;}
    
    /* Mobile: Ensure TinyMCE fits in sidebar */
    .sidebar .toggle_EDITING .toggle_content .mceEditor,
    .sidebar .toggle_EDITING .toggle_content table.mceLayout {
        width: 100% !important;
        max-width: 100% !important;
    }
}


.agent_tools{text-align:center;margin:25px 0px;padding-bottom: 20px;border-bottom: 2px solid #000000;}
.agent_tools A{display:inline-block;margin:10px 15px;text-decoration:none;}
.agent_tools A:hover{text-decoration:none;}
.agent_tools A .icon{font-size:50px;text-align:center;display:inline-block;margin:15px 0px;}
.agent_tools A .text{font-size:13px;display:block;text-align:center;margin:0px 0px;text-decoration:none;}
.agent_tools A:hover .text{text-decoration:none !important;}

.agent_tools A.not_under_contract I,
.agent_tools A.not_under_contract .text,
.agent_tools A.not_under_contract{color:#CCCCCC;}
.agent_tools A.not_under_contract:hover I,
.agent_tools A.not_under_contract:hover .text{color:inherit;}

.agent_tools A.not_under_contract .text I.not_under_contract{display:inline-block;margin-right:5px;}
.agent_tools A.not_under_contract:hover  .text I.not_under_contract{display:none}
.agent_tools A.not_under_contract .text I.under_contract{display:none}
.agent_tools A.not_under_contract:hover  .text I.under_contract{display:inline;margin-right:5px;}

.agent_tools A.under_contract .text I.under_contract{display:inline;margin-right:5px;}
.agent_tools A.under_contract:hover .text I.under_contract{display:none}
.agent_tools A.under_contract .text I.not_under_contract{display:none;}
.agent_tools A.under_contract:hover .text I.not_under_contract{display:inline;margin-right:5px;}
.agent_tools A.under_contract:hover I,
.agent_tools A.under_contract:hover{color:#CC0000}  

.agent_tools_buttons{text-align:left;margin:25px 0px;color:#000000;}
.agent_tools_buttons A,
.agent_tools_buttons A:hover{display:inline-block;margin:0px 10px;text-decoration:underline;}



BODY.home .content_inner{background:transparent;margin:35px 0px 0px;padding: 0px 15px;min-height:0px;}

.footer{background:#313233;padding:75px 0px 75px 0px;}
.footer A{color:#FFFFFF !important;}
.footer A:hover{color:#FFFFFF !important;text-decoration:underline;}
.footer .left{text-align:left;color:#e7e7e7;}
.footer .left IMG{max-width:100%;margin:0px auto;display:block;}
.footer .center{text-align:center;color:#636363;}
.footer .right{text-align:center;color:#636363;}
.footer .right A{text-align:center;display:block;margin-bottom:5px;}
.footer .right IMG{max-width:100%;margin:0px auto;display:block;}

.copyright{text-align:center;padding:20px 0px;background:#000000;margin-top:0px;font-size:15px;color:#CCCCCC;}
.copyright A{color:#CCCCCC;font-size:15px;font-weight:bold;}
.copyright A:hover{color:#FFFFFF;font-size:15px;}

.site_version{display:none;}

/* Mobile/Desktop Container Visibility */
@media (max-width: 767px) {
    .desktop-only {
        display: none !important;
    }
    .mobile-only {
        display: block !important;
    }
}

@media (min-width: 768px) {
    .mobile-only {
        display: none !important;
    }
    .desktop-only {
        display: block !important;
    }
}

.disclaimer{text-align:center;padding:20px 0px;background:#282828;margin-top:0px;font-size:15px;color:#CCCCCC;}
.content_area .disclaimer{text-align:center;padding:20px 0px;background:#222222;font-size:15px;color:#cccccc;}


.contactform{margin-bottom:15px;}
.contactform{background:#F3F3F3;padding:0px 15px 10px 15px;border:1px solid #6b6b6b;}
.contactform H4{background:#071632;color:#F5F5F5;text-align:center;padding:10px;margin:0px -15px;text-transform:uppercase;}
.contactform DIV.formlabel{font-weight:bold;margin:10px 0px 5px 0px;}
.contactform INPUT.text{width:100%;padding:10px;border:1px solid #CCCCCC;}
.contactform TEXTAREA{width:100%;height:100px;padding:10px;border:1px solid #CCCCCC;}
.contactform .captcha{text-align:center;}
.contactform .captcha .captcha_image{text-align:center;}
.contactform .captcha .captcha_image IMG{width:100%;max-width:350px;}
.contactform INPUT.submit{display:block;width:100%;margin:20px 0px;padding:10px 20px;border-radius:0px;text-align:center;font-size:16px;color:#FFFFFF;background:#071632;font-family:Helvetica, Arial, Sans-Serif;font-weight:500;text-transform:uppercase;text-decoration:none;border:none;}
.contactform .error{color:#990000;font-weight:bold;padding:5px 0px;margin-top:10px;}
.contactform .error2{color:#990000;font-weight:normal;padding:5px 0px;}
.contactform .message{color:#2E1D0C;font-weight:bold;padding:5px 0px;margin-top:10px;}
.contactform .message2{color:#2E1D0C;font-weight:normal;padding:5px 0px;}


/*forms*/
.user_form{margin:10px auto;max-width:500px;}
.user_form INPUT.text{width:100%;margin:5px;}
.user_form INPUT.file{width:100%;margin:5px;}
.user_form SELECT{width:100%;margin:5px;}
.user_form TEXTAREA{width:100%;height:100px;margin:5px;}
.user_form INPUT.password{width:100%;margin:5px;}
.user_form INPUT.submit{width:100%;margin:5px;}
.user_form A{display:block;text-align:center;margin:5px;}
.user_form .error{color:#990000;font-weight:bold;padding:5px 0px;margin-top:10px;}
.user_form .error2{color:#990000;font-weight:normal;padding:5px 0px;}
.user_form .message{color:#6b6b6b;font-weight:bold;padding:5px 0px;margin-top:10px;}
.user_form .message2{color:#6b6b6b;font-weight:normal;padding:5px 0px;}
.user_form INPUT.submit{display:block;width:100%;margin:5px;padding:10px 20px;border-radius:0px;text-align:center;font-size:16px;color:#FFFFFF;background:#071632;font-family:Helvetica, Arial, Sans-Serif;font-weight:500;text-transform:uppercase;text-decoration:none;border:none;}


.pagination > .active > a, .pagination > .active > a:focus, .pagination > .active > a:hover, .pagination > .active > span, .pagination > .active > span:focus, .pagination > .active > span:hover {background-color: #AE5324;border-color: #AE5324;}
.pagination > li > a,
.pagination > li > a:hover,
.pagination > li > a:focus,
.pagination > li > span,
.pagination > li > span:hover,
.pagination > li > span:focus{color: #AE5324;margin:0px 3px;border-radius:0px !important;padding:5px 10px !important;}
.pagination > li > a:hover,
.pagination > li > span:hover{background:#d0622a;}
NAV.pages{text-align:center;}



/*wysiwyg*/
.mceContentBody{background:transparent;padding:30px;display:block;margin:0px;font-family:Helvetica, Arial, Sans-Serif;font-size:16px;color:#6b6b6b;}
.mceContentBody,
.wysiwyg-body{font-family:Helvetica, Arial, Sans-Serif;font-size:16px;color:#6b6b6b;}
.mceContentBody A,
.wysiwyg-body A{color:#000000;text-decoration:underline;}
.mceContentBody A:hover,
.wysiwyg-body A:hover{color:#000000;text-decoration:underline;}

.mceContentBody IMG,
.wysiwyg-body IMG{max-width:100%;}
.mceContentBody IMG.fullwidth,
.department-details,
.wysiwyg-body IMG.fullwidth{width:100%;}
.mceContentBody IMG.floatleft,
.department-details,
.wysiwyg-body IMG.floatleft{float:left;margin:10px 10px 10px 0px;}
.mceContentBody IMG.floatright,
.department-details IMG.floatright,
.wysiwyg-body IMG.floatright{float:right;margin:10px 0px 10px 10px;}

A.button,
INPUT.submit,
INPUT.button,
INPUT[type='submit'],
INPUT[type='button'],
BUTTON,
.wysiwyg-body A.button{display:inline-block;max-width:100%;margin:0px 0px 10px 0px;padding:5px 10px;text-align:center;color:#FFFFFF;background:#666666;font-family:Montserrat,Helvetica, Arial, Sans-Serif;font-weight:500;text-transform:none;text-decoration:none;font-size:16px;border:1px solid #000000;border-radius:3px;}
A.button:hover,
INPUT.submit:hover,
INPUT.button:hover,
INPUT[type='submit']:hover,
INPUT[type='button']:hover,
BUTTON:hover,
.wysiwyg-body A.button:hover{display:inline-block;max-width:100%;margin:0px 0px;padding:5px 10px;text-align:center;color:#FFFFFF;background:#000000;font-family:Montserrat,Helvetica, Arial, Sans-Serif;font-weight:500;text-transform:none;text-decoration:none;font-size:16px;border:1px solid #000000;border-radius:3px;}

BUTTON,
INPUT.button,
INPUT.submit{display:inline-block;max-width:100%;margin:0px 0px;padding:5px 10px;text-align:center;font-family:Montserrat,Helvetica, Arial, Sans-Serif;text-transform:none;text-decoration:none;font-size:16px;border:1px solid #000000;border-radius:3px;}


.loading{background:url('/images/loading.gif') center center no-repeat;}
.loading>*{opacity:0.5;}




DIV.login_form{max-width:400px;margin:10px auto;}
DIV.login_form INPUT.text{width:100%;margin:5px 0px;padding:3px;}
DIV.login_form INPUT.password{width:100%;margin:5px 0px;padding:3px;}
DIV.login_form INPUT.submit{width:100%;margin:5px 0px;}
DIV.login_form A{display:block;text-align:center;margin:5px auto;}
DIV.login_form A.button{width:100%;}

DIV.error{border-width:1px;font-weight:normal;margin:10px 0px;}
DIV.errors{border-width:1px;font-weight:normal;margin:10px 0px;}
DIV.message{border-width:1px;font-weight:normal;margin:10px 0px;}
DIV.messages{border-width:1px;font-weight:normal;margin:10px 0px;}



.popup_wide{min-width:90%;}
.popup_medium{min-width:75%;}

#popup .modal-title{display:none;}
#popup .modal-header{border-bottom:none;height:50px;padding:0px;margin:0px;}
#popup .modal-header .close{display:inline-block;background:#000000;color:#FFFFFF;height:32px;width:32px;line-height:24px;border-radius:29px;position:relative;top:-16px;right:-16px;padding:0px;margin:0px;opacity:1;border:3px solid #FFFFFF;}
#popup.modeless .modal-header .close{display:none !important;}
#popup_content{padding:0px 25px;}
#popup_content H1{color:#000000;font-size: 42px;font-weight: 700;padding: 0px;margin: 15px 0px;}
#popup_content H2{color:#000000;font-size: 36px;font-weight: 700;padding: 0px;margin: 15px 0px;}
#popup_content H3{color:#000000;font-size: 30px;font-weight: 700;padding: 0px;margin: 10px 0px;}
#popup_content H4{color:#000000;font-size: 24px;font-weight: 700;padding: 0px;margin: 10px 0px;}
#popup_content *{max-width:100%;}
#popup_content .line{margin:0px 0px 15px 0px;}
#popup_content .line .button{width:100%;}

DIV.modal-body INPUT.text{width:100%;margin:5px 0px;padding:3px;}
DIV.modal-body INPUT.error{width:100%;margin:5px 0px;padding:3px;border:1px solid #993333;background:#FFCCCC;}
DIV.modal-body INPUT.password{width:100%;margin:5px 0px;padding:3px;}
DIV.modal-body INPUT.submit{width:100%;margin:5px 0px;}
DIV.modal-body TEXTAREA{width:100%;margin:5px 0px;padding:3px;}
DIV.modal-body SELECT{width:100%;margin:5px 0px;padding:3px;}
DIV.modal-footer{margin:15px -15px -15px -15px}
DIV.modal-footer .button{width:100%;}

DIV.filters{border-bottom:1px solid #000000;background:#EEEEEE;}
DIV.filters DIV.col{padding-top:5px;padding-bottom:5px;}
DIV.filters INPUT,
DIV.filters SELECT{width:100%;border:1px solid #000000;}


.box_inner .defaultSkin .mceResize{display:none !important;}
.box_inner .defaultSkin .mceStatusbar{display:none !important;}
/*
	.box_inner .defaultSkin table.mceLayout{border:none;}
	.box_inner .defaultSkin .mceIframeContainer{border:none;} 
	.box_inner .defaultSkin table.mceLayout tr.mceFirst>td.mceToolbar{border:1px solid #CCCCCC}
*/




.card .card_heading INPUT.H3:hover{border:1px dotted #FFFFFF;background:transparent;}
.card .card_heading INPUT.H3,
.card .card_heading INPUT.H3:focus{border:1px solid transparent;background:transparent;}
.card INPUT:hover{border:1px dotted #636363;margin:0px;}
.card INPUT,
.card INPUT:focus,
.card SELECT:hover{border:1px dotted #636363;margin:0px;}
.card SELECT,
.card SELECT:focus{border:1px solid transparent;margin:0px;}
.card TEXTAREA:hover{border:1px dotted #636363;margin:0px;}
.card TEXTAREA,
.card TEXTAREA:focus{border:1px solid transparent;margin:0px;}

/* Fix jumping behavior in settings page */
.card_section {
    position: relative;
    overflow: visible; /* Changed from hidden to allow minicolors picker to display */
}

.card_section .row {
    position: relative;
    /* z-index: 1; */ /* Commented out - was preventing minicolors popup from displaying */
}

/* Ensure no hover effects on empty areas */
.card_section:empty,
.card_section .row:empty {
    pointer-events: none;
}

/* Prevent jumping when mouse approaches form elements */
.card .line {
    position: relative;
    overflow: hidden;
}

.card .line TEXTAREA {
    position: relative;
    z-index: 1;
}

/* ========================================
   STANDARDIZED AGENT COLOR SWAP CLASSES
   ========================================
   These classes provide consistent color swapping behavior
   that works across all element types and avoids Bootstrap conflicts
*/

/* Base button styling for color swap classes */
.button-colorswap-primary,
.button-colorswap-secondary {
    display: inline-block !important;
    padding: 3px 8px !important;
    margin: 5px !important;
    text-align: center !important;
    text-decoration: none !important;
    border: 1px solid #000000 !important;
    border-radius: 4px !important;
    font-family: Montserrat, Helvetica, Arial, sans-serif !important;
    font-weight: normal !important;
    font-size: 16px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;
}

/* Condensed button styling */
.button-colorswap-primary.btn-condensed,
.button-colorswap-secondary.btn-condensed {
    padding: 3px 8px !important;
    margin: 5px !important;
    font-size: 14px !important;
}

/* Primary Color Swap: Starts with color1, swaps to color2 on hover */
.button-colorswap-primary {
    background-color: var(--agent-bg-color1, #009901) !important;
    color: var(--agent-fg-color1, #FFFFFF) !important;
}

.button-colorswap-primary:hover,
.button-colorswap-primary:focus,
.button-colorswap-primary:active {
    background-color: var(--agent-bg-color2, #000000) !important;
    color: var(--agent-fg-color2, #FFFFFF) !important;
    border: 1px solid #000000 !important;
    text-decoration: none !important;
}

/* Secondary Color Swap: Starts with color2, swaps to color1 on hover */
.button-colorswap-secondary {
    background-color: var(--agent-bg-color2, #000000) !important;
    color: var(--agent-fg-color2, #FFFFFF) !important;
}

.button-colorswap-secondary:hover,
.button-colorswap-secondary:focus,
.button-colorswap-secondary:active {
    background-color: var(--agent-bg-color1, #009901) !important;
    color: var(--agent-fg-color1, #FFFFFF) !important;
    border: 1px solid #000000 !important;
    text-decoration: none !important;
}


/* Disabled state for all color swap classes */
.button-colorswap-primary:disabled,
.button-colorswap-secondary:disabled,
.button-colorswap-primary.disabled,
.button-colorswap-secondary.disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
}

/* Size variations */
.button-colorswap-primary.btn-sm,
.button-colorswap-secondary.btn-sm {
    padding: 4px 8px !important;
    font-size: 14px !important;
}

.button-colorswap-primary.btn-lg,
.button-colorswap-secondary.btn-lg {
    padding: 12px 24px !important;
    font-size: 18px !important;
}

/* Block level buttons */
.button-colorswap-primary.btn-block,
.button-colorswap-secondary.btn-block {
    display: block !important;
    width: 100% !important;
}

/* Centered buttons */
.button-colorswap-primary.button-centered,
.button-colorswap-secondary.button-centered {
    display: block !important;
    margin: 10px auto !important;
}

/* Override Bootstrap conflicts with higher specificity */
.btn.button-colorswap-primary,
.btn.button-colorswap-secondary {
    border: 1px solid #000000 !important;
}

/* Ensure our styles override Bootstrap button styles */
.btn-primary.button-colorswap-primary,
.btn-secondary.button-colorswap-secondary,
.btn-success.button-colorswap-primary,
.btn-danger.button-colorswap-secondary {
    background-color: var(--agent-bg-color1, #009901) !important;
    color: var(--agent-fg-color1, #FFFFFF) !important;
    border-color: #000000 !important;
}

.btn-primary.button-colorswap-primary:hover,
.btn-secondary.button-colorswap-secondary:hover,
.btn-success.button-colorswap-primary:hover,
.btn-danger.button-colorswap-secondary:hover {
    background-color: var(--agent-bg-color2, #000000) !important;
    color: var(--agent-fg-color2, #FFFFFF) !important;
    border-color: #000000 !important;
}

/* Special handling for input elements */
input.button-colorswap-primary,
input.button-colorswap-secondary {
    border: 1px solid #000000 !important;
    font-family: Montserrat, Helvetica, Arial, sans-serif !important;
    font-weight: normal !important;
    font-size: 16px !important;
}

/* File input labels */
label.button-colorswap-primary,
label.button-colorswap-secondary {
    cursor: pointer !important;
    user-select: none !important;
}

/* Focus states for accessibility */
.button-colorswap-primary:focus,
.button-colorswap-secondary:focus {
    outline: 2px solid var(--agent-bg-color1, #009901) !important;
    outline-offset: 2px !important;
}

/* ========================================
   TOGGLE HEADER COLOR SWAP CLASSES
   ========================================
   Specialized classes for toggle headers with complex hover behavior
   that affects multiple child elements (icons, text, action buttons)
*/

/* Toggle Header Secondary Color Swap */
.toggle-header-colorswap-secondary {
    background-color: var(--agent-bg-color2, #000000) !important;
    color: var(--agent-fg-color2, #FFFFFF) !important;
    border: 1px solid #000000 !important;
    border-radius: 4px !important;
    padding: 8px 16px !important;
    margin: 4px 2px !important;
    display: block !important;
    width: 100% !important;
    text-decoration: none !important;
    font-family: Montserrat, Helvetica, Arial, sans-serif !important;
    font-weight: normal !important;
    font-size: 16px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;
}

/* Hover state affects the entire toggle header and all child elements */
.toggle-header-colorswap-secondary:hover,
.toggle-header-colorswap-secondary:focus,
.toggle-header-colorswap-secondary:active {
    background-color: var(--agent-bg-color1, #009901) !important;
    color: var(--agent-fg-color1, #FFFFFF) !important;
    border: 1px solid #000000 !important;
    text-decoration: none !important;
}

/* Ensure all child elements inherit the hover colors */
.toggle-header-colorswap-secondary:hover *,
.toggle-header-colorswap-secondary:focus *,
.toggle-header-colorswap-secondary:active * {
    color: var(--agent-fg-color1, #FFFFFF) !important;
}

/* Specific styling for icons within toggle headers */
.toggle-header-colorswap-secondary .icon,
.toggle-header-colorswap-secondary i {
    color: var(--agent-fg-color2, #FFFFFF) !important;
    transition: color 0.3s ease !important;
}

.toggle-header-colorswap-secondary:hover .icon,
.toggle-header-colorswap-secondary:hover i,
.toggle-header-colorswap-secondary:focus .icon,
.toggle-header-colorswap-secondary:focus i,
.toggle-header-colorswap-secondary:active .icon,
.toggle-header-colorswap-secondary:active i {
    color: var(--agent-fg-color1, #FFFFFF) !important;
}

/* Action buttons within toggle headers should also respond to parent hover */
.toggle-header-colorswap-secondary .button-colorswap-secondary {
    background-color: transparent !important;
    color: var(--agent-fg-color2, #FFFFFF) !important;
    border: none !important;
    padding: 2px 4px !important;
    margin: 0 !important;
    vertical-align: top !important;
    transition: color 0.3s ease !important;
}

.toggle-header-colorswap-secondary:hover .button-colorswap-secondary,
.toggle-header-colorswap-secondary:focus .button-colorswap-secondary,
.toggle-header-colorswap-secondary:active .button-colorswap-secondary {
    background-color: transparent !important;
    color: var(--agent-fg-color1, #FFFFFF) !important;
    border: none !important;
}

/* ========================================
   HEADER COLOR SWAP CLASSES
   ========================================
   Simple header styling using agent colors
   for h1, h2, h3, h4, h5, h6 elements
*/

/* Header Primary Color Swap: Uses agent primary colors */
.header-colorswap-primary {
    background-color: var(--agent-bg-color1, #009901) !important;
    color: var(--agent-fg-color1, #FFFFFF) !important;
    padding: 10px 15px !important;
    margin: 0 !important;
    border-radius: 5px 5px 0 0 !important;
    font-weight: bold !important;
    border: none !important;
}

/* Header Secondary Color Swap: Uses agent secondary colors */
.header-colorswap-secondary {
    background-color: var(--agent-bg-color2, #000000) !important;
    color: var(--agent-fg-color2, #FFFFFF) !important;
    padding: 10px 15px !important;
    margin: 0 0 10px 0 !important;
    border-radius: 5px 5px 0 0 !important;
    font-weight: bold !important;
    border: none !important;
}

/* ========================================
   DOCUMENT REPOSITORY STYLES
   ========================================
   Styles for the Document Repository feature
*/

/* Document Repository Intro */
.document-repository-intro {
    padding: 25px;
}

.document-repository-intro h2 {
    margin-top: 0;
    margin-bottom: 15px;
    color: var(--agent-bg-color1, #007bff);
    font-size: 28px;
}

.document-repository-intro .intro-text {
    font-size: 16px;
    color: #495057;
    margin-bottom: 15px;
    line-height: 1.6;
}

/* Client selection area */
.client_selection {
    margin-bottom: 20px;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 5px;
}

.client_selection label {
    font-weight: bold;
    margin-right: 10px;
}

.client_selection select {
    padding: 5px 10px;
    border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 14px;
    height: 32px;
    line-height: 20px;
    box-sizing: border-box;
    transition: none;
}

.client_selection select:hover {
    border-color: #999;
}

.client_selection select:focus {
    outline: none;
    border-color: #007bff;
    box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25);
}

/* Document search selection area */
.document_search_selection {
    margin-bottom: 20px;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 5px;
    position: relative;
}

.document_search_selection label {
    font-weight: bold;
    margin-right: 10px;
}

.document_search_selection input {
    padding: 5px 10px;
    border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 14px;
    height: 32px;
    line-height: 20px;
    box-sizing: border-box;
    transition: none;
}

.document_search_selection input:hover {
    border-color: #999;
}

.document_search_selection input:focus {
    outline: none;
    border-color: #007bff;
    box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25);
}

/* Download all files link */
.download-all-container a {
    display: inline-block;
    padding: 10px 20px;
    background-color: var(--agent-bg-color1, #007bff);
    border: 2px solid var(--agent-bg-color1, #007bff);
    border-radius: 5px;
    color: var(--agent-fg-color1, white) !important;
    text-decoration: none !important;
    font-weight: bold;
    transition: all 0.3s ease;
}

.download-all-container a:hover {
    background-color: var(--agent-bg-color2, #000000);
    color: var(--agent-fg-color2, #FFFFFF) !important;
    text-decoration: none !important;
}

.download-all-container a i {
    margin-right: 8px;
}

/* Document sections */
.document_section {
    margin-bottom: 30px;
}

/* Make section headers sticky */
.document_section h3.header-colorswap-primary {
    position: sticky;
    top: -20px; /* Offset by the full extra padding to prevent overlap */
    z-index: 20;
    margin: 0 0 0 0 !important; /* No bottom margin to prevent gap on load */
    padding: 20px 15px !important; /* Keep consistent padding with other headers */
    background-color: inherit;
}

/* Document table styling */
.document_table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    margin-bottom: 15px;
}

.document_table th,
.document_table td {
    padding: 8px 15px;
    text-align: left;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

.document_table th:first-child,
.document_table td:first-child {
    border-left: 1px solid #ddd;
}

.document_table th {
    background-color: var(--agent-bg-color2, #000000);
    color: var(--agent-fg-color2, #FFFFFF);
    font-weight: bold;
    position: sticky;
    top: 50px; /* Position below the section header (10px padding + ~40px header height) */
    z-index: 15;
    border-bottom: 1px solid #000000 !important;
}

/* Alternating row colors */
.document_table tbody tr:nth-child(odd) {
    background-color: #f0f0f0;
}

.document_table tbody tr:nth-child(even) {
    background-color: #ffffff;
}

/* Add border to first data row to maintain separation from sticky header */
.document_table tbody tr:first-child td {
    border-top: 1px solid #000000;
}

/* Row background color functionality removed per user request */

/* Form elements in table */
.document_table input[type="checkbox"] {
    transform: scale(1.2);
    display: block;
    margin: 0 auto;
}

/* Document form column */
.document_table th:nth-child(1),
.document_table td:nth-child(1) {
    max-width: 67px;
    width: 67px;
    text-align: center;
}

/* Document name column */
.document_table th:nth-child(2),
.document_table td:nth-child(2) {
    max-width: 150px;
    width: 150px;
}

/* Checkbox columns - limit width */
.document_table th:nth-child(3),
.document_table th:nth-child(4),
.document_table th:nth-child(5),
.document_table th:nth-child(6),
.document_table td:nth-child(3),
.document_table td:nth-child(4),
.document_table td:nth-child(5),
.document_table td:nth-child(6) {
    max-width: 80px;
    width: 80px;
}

/* Center text in checkbox header columns */
.document_table th:nth-child(3),
.document_table th:nth-child(4),
.document_table th:nth-child(5),
.document_table th:nth-child(6) {
    text-align: center;
}

/* Fully Executed Date column */
.document_table th:nth-child(8),
.document_table td:nth-child(8) {
    max-width: 166px;
    width: 166px;
    text-align: center;
}

/* Notes column */
.document_table th:nth-child(9),
.document_table td:nth-child(9) {
    max-width: 180px;
    width: 180px;
}

/* File column - limit width and center content */
.document_table th:nth-child(7),
.document_table td:nth-child(7) {
    max-width: 185px;
    width: 185px;
    text-align: center;
}

/* File column button container - allow wrapping */
.document_table td:nth-child(7) > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px;
    align-items: center;
    max-width: 100%;
}

.document_table input[type="date"] {
    padding: 4px;
    border: 1px solid #ccc;
    border-radius: 3px;
}


.document_table textarea {
    width: 100%;
    height: 60px;
    resize: vertical;
    padding: 4px;
    border: 1px solid #ccc;
    border-radius: 3px;
    font-family: inherit;
    min-height: 60px;
}

/* Saved badge styling */
.saved-badge {
    display: none;
    text-align: center;
    margin-top: 4px;
    font-size: 11px;
    color: var(--agent-bg-color1, #28a745);
    font-weight: bold;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

.saved-badge.show {
    opacity: 1;
}

.document_table input[type="file"] {
    font-size: 12px;
}

/* Drag and Drop Styles */
.document_table tbody tr.drag-over {
    box-shadow: inset 0 0 25px rgba(0,0,0,0.5);
}

.document_table tbody tr.drag-leave {
    box-shadow: inset 0 0 15px rgba(0,0,0,0.4);
    opacity: 0.8;
}

/* File column drop zone styling - removed individual cell highlighting */
.document_table td:nth-child(7) {
    position: relative;
}

/* Add custom document button container */
.add-custom-document-container {
    text-align: center;
    margin: 15px 0 75px 0;
}

/* Disable Add Custom Document button in edit mode */
.document_section.edit-mode .add-custom-document-container {
    opacity: 0.4;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.document_section.edit-mode .add-custom-document-container button {
    cursor: not-allowed;
}

/* File completion status styling */
.document_table tbody tr.completed {
    background-color: #d4edda !important; /* Pale green background */
}

.document_table tbody tr.completed:nth-child(odd) {
    background-color: #d4edda !important; /* Override alternating row colors */
}

.document_table tbody tr.completed:nth-child(even) {
    background-color: #d4edda !important; /* Override alternating row colors */
}

/* File History Modal Styles */
.file-history-container {
    max-height: calc(85vh - 200px); /* Allow container to grow with modal, accounting for header/footer space */
    overflow-y: auto;
}

.file-history-item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 12px;
    margin-bottom: 8px;
    border: 1px solid #e9ecef;
    border-radius: 6px;
    background-color: #f8f9fa;
    transition: background-color 0.2s ease;
}

.file-history-item:hover {
    background-color: #e9ecef;
}

.file-history-item.current-file {
    background-color: #f0f0f0;
    border-color: #dedede;
}

.file-history-item.current-file:hover {
    background-color: #dedede;
}

.file-history-item .file-info {
    flex: 1;
    margin-right: 12px;
}

.file-history-item .filename {
    font-weight: 500;
    color: #495057;
    margin-bottom: 4px;
}

.file-history-item .file-date {
    font-size: 12px;
    color: #6c757d;
}

.file-history-item .file-actions {
    display: flex;
    gap: 6px;
    flex-shrink: 0;
}

.file-history-item .file-actions .btn {
    font-size: 11px;
    padding: 4px 8px;
}

/* Modal specific adjustments */
#fileHistoryModal .modal-body {
    padding: 20px;
}

/* Custom File History Modal - No Bootstrap */

/* Modal Overlay */
.custom-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1050;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 25px;
}

/* Modal Dialog */
.custom-modal-dialog {
    width: 90%;
    max-width: 600px;
    max-height: 85vh; /* Limit modal to 85% of viewport height */
    margin: 0 auto;
    display: flex;
    flex-direction: column;
}

/* Modal Content */
.custom-modal-content {
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%; /* Take full height of dialog */
}

/* Modal Header */
.custom-modal-header {
    padding: 15px 20px;
    border-bottom: 1px solid #dee2e6;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

.custom-modal-header.header-colorswap-primary {
    background-color: var(--agent-bg-color1, #009901);
    border-bottom: 1px solid var(--agent-bg-color1, #009901);
}

/* Modal Title */
.custom-modal-title {
    margin: 0;
    font-size: 2.25rem;
    font-weight: 600;
    color: #495057;
}

.custom-modal-header.header-colorswap-primary .custom-modal-title {
    color: var(--agent-fg-color1, #ffffff);
}

/* Modal Agent Color Classes - Reusable modal header styles */
.custom-modal-header.modal-agentcolor1 {
    background-color: var(--agent-bg-color1, #009901);
    border-bottom: 1px solid var(--agent-bg-color1, #009901);
}

.custom-modal-header.modal-agentcolor1 .custom-modal-title {
    color: var(--agent-fg-color1, #ffffff);
}

.custom-modal-header.modal-agentcolor2 {
    background-color: var(--agent-bg-color2, #000000);
    border-bottom: 1px solid var(--agent-bg-color2, #000000);
}

.custom-modal-header.modal-agentcolor2 .custom-modal-title {
    color: var(--agent-fg-color2, #ffffff);
}

/* Close button styling for modal agent color classes */
.custom-modal-header.modal-agentcolor1 .custom-modal-close,
.custom-modal-header.modal-agentcolor2 .custom-modal-close {
    width: 30px !important;
    height: 30px !important;
    border: 2px solid #ffffff !important;
    background-color: #000000 !important;
    color: #ffffff !important;
    border-radius: 5px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
    font-weight: bold !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.custom-modal-header.modal-agentcolor1 .custom-modal-close:hover,
.custom-modal-header.modal-agentcolor2 .custom-modal-close:hover {
    border: 2px solid #000000 !important;
    background-color: #ffffff !important;
    color: #000000 !important;
}

/* Modal Close Button */
.custom-modal-close {
    background: none;
    border: none;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 0;
    margin: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.custom-modal-close.button-colorswap-secondary {
    background-color: #000000 !important;
    color: #ffffff !important;
    border: 1px solid #000000 !important;
}

.custom-modal-close.button-colorswap-secondary:hover {
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #000000 !important;
}

/* Modal Body */
.custom-modal-body {
    padding: 20px;
    flex: 1; /* Take remaining space in flex container */
    overflow-y: auto; /* Allow scrolling only if content exceeds available space */
}

/* Add padding to prevent hover zone issues */
.card .line:has(TEXTAREA) {
    padding: 2px 0;
}

TEXTAREA,
TEXTAREA:focus {
	height: fit-content;
}


.timeline .timeline_item_EDITING INPUT.H3:hover{border:1px dotted #FFFFFF;}
.timeline .timeline_item_EDITING SELECT.H3:hover{border:1px dotted #FFFFFF;}
.timeline .timeline_item_EDITING INPUT:hover{border:1px dotted #636363;margin:-1px;}
.timeline .timeline_item_EDITING SELECT:hover{border:1px dotted #636363;margin:-1px;}



.info_bubble{display:none;position:fixed;top:100px;right:5px;width:400px;max-width:calc(100vw - 20px);border-radius:20px;background:#FFFFFF;border:1px solid #CCCCCC;box-shadow: 0px 0px 15px 2px rgba(0,0,0,0.75);z-index:2000;padding-bottom:40px;}
.info_bubble_inner{padding:10px;position:relative;min-height:200px;}
.info_bubble_inner .info_bubble_heading{font-size:18px;text-align:center;}
.info_bubble_inner .info_bubble_content{padding:10px;margin-bottom:20px}
.info_bubble_inner .info_bubble_links{position:absolute;bottom:-40px;width:100%;left:0px;padding:10px 10px}
.info_bubble_inner .info_bubble_links .info_bubble_previous{padding:10px;text-align:left;}
.info_bubble_inner .info_bubble_links .info_bubble_dismiss{padding:10px;text-align:center;}
.info_bubble_inner .info_bubble_links .info_bubble_next{padding:10px;text-align:right;}

.info_bubble_showing{box-shadow: 0px 0px 30px 2px rgba(255,255,0,0.75);}
BODY.hide_info_bubbles .info_bubble_showing{box-shadow:none;}
.info_bubble_info{display:none;}
BODY.hide_info_bubbles .info_bubble_info{display:block;position:fixed;top:150px;right:20px;}
BODY.hide_info_bubbles .info_bubble_info I{font-size:30px;}


.flare{display:none;position:absolute;top:0px;left:0px;height:300px;width:300px;margin:-150px 0px 0px -150px;z-index:1000;}
.flare IMG{width:100%;height:100%;}
.flare LOTTIE-PLAYER{width:100%;height:100%;}

#flare_json{display:none;position:absolute;top:0px;left:0px;height:300px;width:300px;margin:-150px 0px 0px -150px;z-index:1000;}

.scroll_to_top{display:none;}
BODY.scrolled .scroll_to_top{display:block;position:fixed;bottom:20px;right:20px;}
BODY.scrolled .scroll_to_top I{font-size:30px;color:#000;text-shadow:0 0 8px #fff, 0 0 12px #fff, 0 0 16px #fff;}


.agent_color1{color:#009901}
.agent_color1_hover:hover{color:#009901}
.agent_bg_color1{background-color:#009901}
.agent_bg_color1_hover:hover{background-color:#009901}
.agent_border_color1{border-color:#009901}

.agent_color2{color:#000000}
.agent_color2_hover:hover{color:#000000}
.agent_bg_color2{background-color:#000000}
.agent_bg_color2_hover:hover{background-color:var(--agent-bg-color2)}
.agent_bg_color1_hover:hover{background-color:var(--agent-bg-color1)}

.agent_border_color2{border-color:#000000}
.agent_border-r_color2{background-color:#000000}
.agent_border-l_color2{border-left-color:#000000}
.agent_border-t_color2{border-top-color:#000000}
.agent_border-b_color2{border-bottom-color:#000000}



.agent_dashboard{margin:50px 0px;}
.agent_dashboard .agent_dashboard_info{margin-bottom:10px;}
.agent_dashboard TABLE.listing{
    border-radius: 10px;
    border-collapse: separate;
    border-spacing: 0;
}

/* Round top corners of first row */
.agent_dashboard TABLE.listing TR:first-child TH:first-child,
.agent_dashboard TABLE.listing TR:first-child TD:first-child {
    border-top-left-radius: 5px !important;
    overflow: hidden;
}

.agent_dashboard TABLE.listing TR:first-child TH:last-child,
.agent_dashboard TABLE.listing TR:first-child TD:last-child {
    border-top-right-radius: 5px !important;
    overflow: hidden;
}

/* Round bottom corners of last row */
.agent_dashboard TABLE.listing TR:last-child TH:first-child,
.agent_dashboard TABLE.listing TR:last-child TD:first-child {
    border-bottom-left-radius: 5px !important;
    overflow: hidden;
}

.agent_dashboard TABLE.listing TR:last-child TH:last-child,
.agent_dashboard TABLE.listing TR:last-child TD:last-child {
    border-bottom-right-radius: 5px !important;
    overflow: hidden;
}
.agent_dashboard TABLE.listing A{text-decoration:underline;}
.agent_dashboard TABLE.listing A:hover{text-decoration:underline;color:#000000;}
.agent_dashboard TABLE.listing A.button,
.agent_dashboard TABLE.listing A.button:hover{text-decoration:none;}
.agent_dashboard TABLE.listing TH A,
.agent_dashboard TABLE.listing TH A:hover{text-decoration:none;}


.agent_dashboard TR.list_item TD.timeline_overdue{background:#FF9999 !important}
.agent_dashboard TR.list_item TD.timeline_due{background:#FFFFCC !important}
.agent_dashboard TR.list_item TD.timeline_upcoming{background:#AAE69E !important}

.key_dates I.key_date_completed{color:#AAE69E}
.key_dates .key_date_overdue{background:#FF9999 !important}
.key_dates .key_date_due{background:#FFFFCC !important}
.key_dates .key_date_upcoming{background:transparent !important}


.agent_dashboard .agent_dashboard_percent{text-align:center;margin:0px auto;}
.agent_dashboard .agent_dashboard_percent .progress-text{font-size:16px !important;color:#000000}
.agent_dashboard .agent_dashboard_percent .front-ring .progress-ring__circle{stroke-width: 1;stroke: rgba(0,0,0,.05);r: 15 !important;}


.agent_dashboard TABLE.listing TD{vertical-align:middle;}
.agent_dashboard TABLE.listing TD INPUT.text{border:none;background:none;}
.agent_dashboard TABLE.listing TD SELECT{border:none;background:none;}
.agent_dashboard TABLE.listing TH INPUT.text{border:none;background:none;}
.agent_dashboard TABLE.listing TH SELECT{border:none;background:none;}

.agent_dashboard TABLE.listing TD INPUT.text:hover,
.agent_dashboard TABLE.listing TD SELECT:hover{background:#CECECE;cursor:pointer}
.agent_dashboard TABLE.listing TH INPUT.text:hover,
.agent_dashboard TABLE.listing TH SELECT:hover{background:#CECECE;cursor:pointer}

.agent_dashboard TABLE.editing{margin-bottom:15px;max-width:750px;margin:25px auto;}
.agent_dashboard TABLE.editing TD{vertical-align:middle;text-align:left;}
.agent_dashboard TABLE.editing TR.footer_actions TD,
.agent_dashboard TABLE.editing TR.footer_actions_mobile TD{vertical-align:middle;text-align:center;border:none;background:transparent;}

.agent_dashboard .edit_label_small{display:none;}


.agent_dashboard .user_contract_date_note{font-size:11px;font-style:italic;color:#990000}
.agent_dashboard IMG.user_contract_date{width:100px;max-width:100%;}
.agent_dashboard IMG.user_contract_date_low_confidence{background:#FFCCCC}
.agent_dashboard IMG.user_contract_date_lowest_confidence{background:#FFCCCC}

.agent_dashboard .row{margin-bottom:10px;}

.minicolors-theme-default .minicolors-swatch{cursor:pointer;}

.agent_dashboard_mobile BUTTON,
.agent_dashboard_mobile INPUT[type=button],
.agent_dashboard_mobile INPUT.button{border:1px solid #000000;color:#000000;}
.agent_dashboard_mobile BUTTON.disabled,
.agent_dashboard_mobile INPUT.disabled{opacity:0.5}

.key{}
.key .key_line{text-align:left;}
.key .key_line .key_item{display:inline-block;width:15px;height:15px;border:1px solid #CFCFCF}
.key .key_line .timeline_overdue{background:#FF9999 !important}
.key .key_line .timeline_due{background:#FFFFCC !important}
.key .key_line .timeline_upcoming{background:#AAE69E !important}


#popup .timeline_item_detail{width:70%;height:70%;margin:5% 15%;}
#popup .timeline_item_detail .modal-content>.loading{min-height:200px;}
.modal-backdrop.in{position:fixed;}

.progress-cirlce{margin:0px auto;}
.progress-cirlce-progress{font-family:"Raleway", Helvetica, sans-serif}
.progress_popup .progress-cirlce{margin:0px auto;}



.tos INPUT.button{margin:0px auto;display:block;}
.tos {margin-bottom:25px;}
.tos .tos_content{max-height: calc(100vh - 275px);margin-bottom:25px;overflow-y: auto;}

.detail_popup_close{margin:15px;text-align:center;position:relative;z-index:10;}

.tooltip,
.tooltip *,
.tooltip > .tooltip-inner{color:#FFFFFF !important;}


#popup .timeline_item_detail .modal-content{height:100%;}
#popup .timeline_item_detail .modal-content .modal-body{height:100%;padding-bottom:40px;}
#popup .timeline_item_detail .modal-content .timeline_item_content{height:85%;overflow:auto;}


.terms_reference_note{padding:5px;border:1px solid #000000;background:#FFCCCC;margin:5px 0px;color:#000000}
.terms_reference_note A,
.terms_reference_note A:hover{color:#000000;border-bottom:1px solid #000000}


.widget_text_editable{min-height:100px;padding:5px;text-align:left;}
.widget_text_editable:hover{border:1px dotted #000000;padding:5px;cursor:pointer;background:#CECECE;}


.progress_meter_full{display:block;scroll-behavior: smooth;transition: all 0.3s ease-out;}
#progress_meter_container_outer{margin-top:50px;scroll-behavior: smooth;transition: all 0.3s ease-out;}
#progress_meter_container H2{border-bottom:none;}
#progress_meter_container{margin-top:0px;position:relative;scroll-behavior: smooth;transition: all 0.3s ease-out;transform-origin: center center;will-change: transform;}
.progress_meter{margin:10px;scroll-behavior: smooth;transition: all 0.3s ease-out;}
.progress_meter .progress_bar_container{border:1px solid #000000;background:#BBBBBB;border-radius:20px;height:20px;overflow:visible;position:relative;box-shadow: inset 0 2px 4px rgba(0,0,0,0.1);transform-origin: center center;}
.progress_meter .progress_bar_container .progress_bar{left:0px;top:0px;height:18px;transition: all 0.6s ease-out;position:relative;box-shadow: inset 0 1px 2px rgba(0,0,0,0.1);border-radius:20px;will-change: width;transform: translateZ(0);backface-visibility: hidden;}

/* Hide mobile progress meter on desktop */
.progress_meter_mobile{display:none;}



/* Progress bar confetti celebration */
.progress_meter .progress_bar_container .confetti-celebration {
    position: absolute;
    top: -30px; /* Position it even closer to the progress bar (moved down by another 10px) */
    width: 80px;
    height: 80px;
    z-index: 100; /* Higher z-index to ensure it's above other elements */
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s ease-in;
    transform: translateX(-50%); /* Center the confetti on its position */
}

.progress_meter .progress_bar_container .confetti-celebration.show {
    opacity: 1;
}








.progress_meter .progress_info{margin:10px 0px;font-size:15px;transition: all 0.6s ease-out;}

#progress_meter_container.loading{background:transparent;}

/* Progress meter container scaling animation */
#progress_meter_container.scaling {
    transform: scale(1.1);
    transition: transform 0.3s ease-out;
}

.dev_notice{position:fixed;bottom:0px;left:0px;width:100%;background:#ffcc00;color:#000000;text-align:center;padding:5px;font-weight:bold;z-index:999999;border-top:1px solid #888888;border-bottom:1px solid #888888;}
BODY.dev{margin-bottom:35px;}

.proxy_notice{position:fixed;bottom:0px;left:0px;width:100%;background:#FFCC00;color:#000000;text-align:center;padding:5px;font-weight:bold;z-index:9999999;border-top:1px solid #888888;border-bottom:1px solid #888888;}
BODY.proxy{margin-bottom:35px;}


.panel{background:transparent;border:none;}
.panel-footer{border:none;}
.panel-default{border:none;}
.panel-default>.panel-heading{background:transparent;padding:0px;border:none;}
.panel-default>.panel-heading H4{padding:0px;}
.panel-default>.panel-heading H4 A,
.panel-default>.panel-heading H4 A:hover{display:block;padding:10px;color:#000000;text-decoration:none;font-size:18px;font-weight:normal;}
.panel-default>.panel-heading+.panel-collapse>.panel-body{border:none;color:#000000;}
.panel-default>.panel-heading+.panel-collapse>.panel-body A{font-weight:bold;color:#000000;}

.mceContentBody .panel-group .collapse{display:block;visibility:visible}

TR.user_contract_date_na>TD{opacity:0.6;color: #a0a0a0;pointer-events: none; }
TR.user_contract_date_na>TD.actions{opacity:1;color: #6e6e6e; pointer-events: auto;}

.coe_date{font-size:12px;font-style:italic;}
.coe_days_left{font-size:12px;}



.agent_to_coordiator_agent_details{border:1px solid #000000;padding:15px;margin-bottom:15px;}
.agent_to_coordiator_agent_details .agent_image{margin-bottom:5px;}


.printable .dev_notice{display:none;}

.print_timeline_items{}
.print_timeline_items TABLE{width:100%;}
.print_timeline_items TABLE TD{border:1px solid #CCCCCC;}
.print_timeline_items TABLE{width:100%;}
.print_timeline_items TABLE TH{padding:10px 10px;text-align:left;vertical-align:middle;white-space:nowrap;}
.print_timeline_items TABLE TD{padding:10px 12px;text-align:left;vertical-align:top;}

.print_timeline_items TABLE TD.date{white-space:nowrap;}
.print_timeline_items TABLE TD.checkbox_cell{text-align:center;}

.print_timeline_items TABLE TR TD{border:1px solid #CFCFCF;background:#FFFFFF;}
.print_timeline_items TABLE TR:nth-child(even) TD{border:1px solid #CFCFCF;background:#F0F0F0;}

/* Ensure agent colors work in print timeline */
.print_timeline_items TABLE TR.agent_bg_color1 TD{background:inherit !important;}

/* Sticky Header Classes - Reusable across site */
.sticky-table {
    position: relative;
}

.sticky-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
    background: inherit !important;
}

.sticky-header th {
    background: inherit !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
}

/* Ensure sticky headers work within containers */
.content_area .sticky-header {
    top: 0 !important;
}

/* Ensure sticky headers work within tab content */
.tab-content .sticky-header {
    top: 0 !important;
    z-index: 1000 !important;
}

/* Ensure sticky headers work within agent dashboard */
.agent_dashboard .sticky-header {
    top: 0 !important;
    z-index: 1000 !important;
}

/* Mobile devices - disable sticky on small screens */
@media (max-width: 767px) {
    .sticky-header {
        position: static !important;
    }
    
    .sticky-header th {
        position: static !important;
    }
}

/* SIMPLE VENDOR TABLE STICKY HEADERS - Clean Approach */
.whatsnext-vendor-table-sticky-container {
    width: 100%;
}

.whatsnext-vendor-table-sticky-row {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: #f8f9fa;
}

.whatsnext-vendor-table-sticky-row th {
    background: #f8f9fa;
    font-weight: bold;
    padding: 12px 8px;
    border-bottom: 2px solid #dee2e6;
}

/* Mobile responsive - disable sticky on small screens */
@media (max-width: 767px) {
    .whatsnext-vendor-table-sticky-row {
        position: static !important;
    }
    
    .whatsnext-vendor-table-sticky-row th {
        position: static !important;
    }
}

/* Tab System Styles for Vendors Page */
.vendors-tab-system {
    margin-top: 30px;
    margin-bottom: 20px;
}

.vendors-tab-system .nav-tabs {
    border-bottom: 2px solid #dee2e6;
    margin-bottom: 0;
}

.vendors-tab-system .nav-tabs > li > a {
    border: 1px solid #ccc;
    border-radius: 10px 10px 0 0;
    padding: 12px 24px;
    margin: 0px 7px -1px 0px;
    font-weight: 600;
    color: #6c757d;
    background: transparent;
    transition: all 0.3s ease;
}

.vendors-tab-system .nav-tabs > li > a:hover {
    border: 1px solid #ccc;
    background-color: #cccccc;
    color: #495057;
}

.vendors-tab-system .nav-tabs > li.active > a {
    border: 1px solid #000000;
    border-bottom: 3px solid;
    border-radius: 10px 10px 0 0;
}

/* Apply agent colors to active tab */
.vendors-tab-system .nav-tabs > li.active > a {
    font-weight: 600;
    background-color: var(--agent-bg-color1, #009900) !important;
    color: var(--agent-fg-color1, #ffffff) !important;
    border-bottom: 3px solid var(--agent-bg-color1, #009900) !important;
}

/* Override hover/focus states to maintain agent colors */
.vendors-tab-system .nav-tabs > li.active > a:hover,
.vendors-tab-system .nav-tabs > li.active > a:focus {
    border: 1px solid #000000;
    border-bottom: 3px solid var(--agent-bg-color1, #009900) !important;
    border-radius: 10px 10px 0 0;
    background-color: var(--agent-bg-color1, #009900) !important;
    color: var(--agent-fg-color1, #ffffff) !important;
}


.vendors-tab-system .tab-content {
    border: 1px solid #dee2e6;
    border-top: none;
    padding: 20px;
    background-color: #fff;
    min-height: 400px;
}

/* Ensure tab panes display correctly */
.vendors-tab-system .tab-content > .tab-pane {
    display: none;
}

.vendors-tab-system .tab-content > .tab-pane.active {
    display: block;
}

.tab-content-loading {
    min-height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Ensure tab content displays properly */
.vendors-tab-system .tab-content .agent_dashboard {
    margin-bottom: 0;
}

.vendors-tab-system .tab-content .listing {
    margin-bottom: 0;
}

/* Override responsive classes in tab content - but preserve tab structure */
.vendors-tab-system .tab-content .tab-pane .hidden-sm,
.vendors-tab-system .tab-content .tab-pane .hidden-xs {
    display: block !important;
}

.vendors-tab-system .tab-content .tab-pane .visible-sm,
.vendors-tab-system .tab-content .tab-pane .visible-xs,
.vendors-tab-system .tab-content .tab-pane .agent_dashboard_mobile {
    display: none !important;
}

/* Additional specificity to override Bootstrap responsive classes */
.vendors-tab-system .tab-content .tab-pane div[class*="visible-sm"],
.vendors-tab-system .tab-content .tab-pane div[class*="visible-xs"],
.vendors-tab-system .tab-content .tab-pane div[class*="agent_dashboard_mobile"] {
    display: none !important;
}

/* Ensure tab content stays in single column */
.vendors-tab-system .tab-content {
    width: 100%;
}

.vendors-tab-system .tab-content .row {
    margin-left: 0;
    margin-right: 0;
}

.vendors-tab-system .tab-content .col-md-2,
.vendors-tab-system .tab-content .col-md-10 {
    padding-left: 15px;
    padding-right: 15px;
}

/* Mobile fallback - ensure original styling is preserved */
.vendors-mobile {
    /* Original mobile styling preserved */
}

/* Responsive adjustments */
@media (max-width: 767px) {
    .vendors-tab-system {
        display: none !important;
    }
    .vendors-mobile {
        display: block !important;
    }
}

@media (min-width: 768px) {
    .vendors-mobile {
        display: none !important;
    }
}

/* Additional styling for Custom Sidebar Items in tabs */
.vendors-tab-system .tab-content .widget_text_editable {
    background: transparent;
    font-family: inherit;
    font-size: inherit;
    line-height: 1.5;
    min-height: 100px;
    padding: 5px;
    border: 1px solid transparent;
    transition: border-color 0.3s ease;
}

.vendors-tab-system .tab-content .widget_text_editable:hover {
    border: 1px dotted #000000;
    padding: 5px;
    cursor: pointer;
    background: #CECECE;
}

/* Force proper styling for widget containers in tabs */
.vendors-tab-system .tab-content .listing_widgets {
    width: 100%;
    margin-bottom: 0;
}

.vendors-tab-system .tab-content .listing_widgets .widget_text_editable {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Ensure WYSIWYG editor displays properly in tabs */
.vendors-tab-system .tab-content .wysiwyg_input {
    width: 100%;
    min-height: 100px;
    border: 1px solid #ccc;
    padding: 8px;
    font-family: inherit;
    font-size: inherit;
}

/* Force proper styling for widget titles in tabs */
.vendors-tab-system .tab-content .widget_title {
    width: 100%;
    border: 1px solid transparent;
    padding: 8px;
    font-family: inherit;
    font-size: inherit;
    background: transparent;
    transition: border-color 0.3s ease;
}

.vendors-tab-system .tab-content .widget_title:hover {
    border: 1px dotted #000000;
    background: #f8f9fa;
}

.vendors-tab-system .tab-content .widget_title:focus {
    border: 1px solid #007bff;
    background: #fff;
    outline: none;
}

/* Sort Icon Styles for Past Users Table */
.sort_icon {
    color: #ccc;
    text-decoration: none;
    margin-left: 4px;
    font-size: 12px;
    transition: color 0.2s ease-in-out;
}

.sort_icon:hover {
    color: #007cba;
    text-decoration: none;
}

.sort_icon_selected {
    color: #007cba !important;
}

.sort_icon_selected:hover {
    color: #005a8b !important;
}

/* Override display:block for footer actions to allow table centering */
/* Use very high specificity to override Bootstrap's !important */
.agent_dashboard table tr.footer_actions_mobile.hidden-sm.hidden-xs {
    display: table-row !important;
}

.agent_dashboard table tr.footer_actions_mobile.hidden-sm.hidden-xs td {
    display: table-cell !important;
}

/* Upload progress bar styling */
.upload-progress-container {
    width: 100%;
    margin-top: 4px;
}

.upload-progress-bar {
    width: 100%;
    height: 4px;
    background-color: #e9ecef;
    border-radius: 2px;
    overflow: hidden;
    position: relative;
}

.upload-progress-fill {
    height: 100%;
    background-color: #009901;
    transition: width 0.3s ease;
    border-radius: 2px;
}

.upload-progress-text {
    font-size: 11px;
    color: #009901;
    margin-top: 2px;
    text-align: center;
    font-weight: 500;
}

/* ========================================
   VENDOR PAGE ANCHOR NAVIGATION
   ========================================
   Navigation links for jumping between vendor page sections
*/

.vendor-nav {
    text-align: center;
    margin: 20px 0;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 5px;
}

.vendor-nav-title {
    font-weight: bold;
    margin-bottom: 10px;
    color: #333;
}

.vendor-nav-links {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.vendor-nav-link {
    color: var(--agent-bg-color1, #009901);
    text-decoration: none;
    font-weight: 500;
    padding: 5px 10px;
    border-radius: 3px;
    transition: all 0.3s ease;
}

.vendor-nav-link:hover {
    background-color: var(--agent-bg-color1, #009901);
    color: var(--agent-fg-color1, #FFFFFF);
    text-decoration: none;
}

.vendor-nav-link.inactive {
    color: #999;
    cursor: default;
    pointer-events: none;
}

.vendor-nav-separator {
    color: #ccc;
    font-weight: bold;
}

/* Mobile Past Transactions Card Expansion Styles */
.expanded-details {
    padding: 10px 0;
    border-top: 1px solid #e0e0e0;
    margin-top: 10px;
}

.detail-row {
    margin-bottom: 8px;
    padding: 5px 0;
    border-bottom: 1px solid #f0f0f0;
}

.detail-row:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.detail-row strong {
    color: #333;
    font-weight: 600;
    margin-right: 8px;
}

/* Magnifying glass icon animation */
.fa-solid.fa-magnifying-glass {
    transition: transform 0.3s ease;
    margin-left: 8px;
}

.fa-solid.fa-magnifying-glass.expanded {
    transform: rotate(180deg);
}

/* Mobile Template Cards - Consistent Rounded Borders */
.visible-sm.visible-xs .listing {
    border-radius: 5px;
}

.visible-sm.visible-xs .listing table {
    border-radius: 5px;
    overflow: hidden;
}

/* Mobile Template Card Headers - Rounded Top Corners */
.visible-sm.visible-xs .listing table th {
    border-radius: 5px 5px 0 0;
}

/* Client editing mode color highlighting */
.editing-mode .agent_bg_color1 {
    background-color: var(--agent-bg-color2, #006600) !important;
    color: var(--agent-fg-color2, #FFFFFF) !important;
}

.editing-mode .button-colorswap-primary {
    background-color: var(--agent-bg-color2, #006600) !important;
    color: var(--agent-fg-color2, #FFFFFF) !important;
}

/* Specific targeting for main header text color fix */
.editing-mode .agent_bg_color1,
.editing-mode tr.agent_bg_color1,
.editing-mode .agent_bg_color1 th,
.editing-mode tr.agent_bg_color1 th,
.editing-mode .agent_bg_color1 a,
.editing-mode tr.agent_bg_color1 a,
.editing-mode .agent_bg_color1 i,
.editing-mode tr.agent_bg_color1 i {
    color: var(--agent-fg-color2, #FFFFFF) !important;
}

/* ========================================
   DOCUMENT SEARCH STYLES
   ========================================
   Styles for the smart document search feature
*/

/* Search Container */
.document_search_container {
    position: relative;
}

/* Search Input Field */
#document_search {
    transition: border-color 0.3s ease;
}

#document_search:focus {
    outline: none;
    border-color: #007bff !important;
    box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25);
}

/* Search Results Dropdown */
.search-dropdown {
    border-radius: 0 0 4px 4px;
    border-top: none;
}

.search-result-item {
    padding: 12px 15px;
    border-bottom: 1px solid #eee;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.search-result-item:hover {
    background-color: #f8f9fa;
}

.search-result-item:last-child {
    border-bottom: none;
}

.search-result-item.no-results,
.search-result-item.loading,
.search-result-item.error {
    color: #6c757d;
    font-style: italic;
    cursor: default;
}

.search-result-item.no-results:hover,
.search-result-item.loading:hover,
.search-result-item.error:hover {
    background-color: transparent;
}

/* Search Result Content */
.search-result-abbreviation {
    font-weight: bold;
    font-size: 14px;
    color: #333;
    margin-bottom: 2px;
}

.search-result-name {
    font-size: 13px;
    color: #666;
    margin-bottom: 2px;
}

.search-result-notes {
    font-size: 12px;
    color: #777;
    margin-bottom: 2px;
    font-style: italic;
}

.search-result-section {
    font-size: 11px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Search Highlight for Document Rows */
.search-highlight {
    background-color: #fff3cd !important;
    border: 2px solid #ffc107 !important;
}

/* Responsive Design for Search */
@media (max-width: 768px) {
    .document_search_container {
        margin-left: -15px;
        margin-right: -15px;
    }
    
    #document_search {
        border-radius: 0;
        font-size: 16px; /* Prevents zoom on iOS */
    }
    
    .search-dropdown {
        border-radius: 0;
        border-left: none;
        border-right: none;
    }
    
    .search-result-item {
        padding: 15px;
    }
    
    .search-result-abbreviation {
        font-size: 15px;
    }
    
    .search-result-name {
        font-size: 14px;
    }
    
    .search-result-notes {
        font-size: 13px;
    }
}

/* Document Repository Edit Mode Styles */
.section-controls {
    text-align: right;
    margin-bottom: 5px;
}

.section-header {
    position: relative;
    display: block;
}

.edit-tables-link {
    text-decoration: none;
}

.edit-tables-link:hover {
    text-decoration: none;
}

.edit-mode-controls {
    margin: 10px 0;
    text-align: right;
}

.edit-mode-controls button {
    margin: 0 10px;
}

/* Edit Table Link Styling */
.edit-tables-link {
    color: #666666;
    text-decoration: none;
    font-size: 14px;
    padding: 5px 10px;
    border-radius: 3px;
    transition: all 0.2s ease;
    margin-top:24px;
}

.edit-tables-link:hover {
    color: #333333;
    text-decoration: underline;
    background-color: #cccccc;
}

.edit-tables-link i {
    margin-right: 5px;
}

/* Edit mode table header changes */
.document_section.edit-mode .table-header-row {
    background-color: var(--agent-bg-color1) !important;
    /* DEBUG: Add border to visually identify edit mode sections */
    border: 3px solid #ff0000 !important;
}

/* Dim non-editing sections when any section is in edit mode */
.document_section.not-editing {
    opacity: 0.4;
    filter: blur(1px);
    pointer-events: none;
    transition: opacity 0.3s ease, filter 0.3s ease;
}

/* Ensure the editing section remains fully visible */
.document_section.edit-mode {
    opacity: 1 !important;
    filter: none !important;
    pointer-events: auto !important;
}

.document_section.edit-mode .document_table th {
    background-color: var(--agent-bg-color1) !important;
    color: var(--agent-fg-color1) !important;
}

.document_section.edit-mode .signature-col,
.document_section.edit-mode .file-col,
.document_section.edit-mode .date-col {
    display: none;
}

.document_section.edit-mode .notes-col {
    text-align: center;
}

.document_section.edit-mode .table-header-row .notes-col::before {
    content: "Edit Options";
    font-weight: bold;
    display: block;
    margin-bottom: 10px;
}

/* Hide the original "Notes" text when in edit mode */
.document_section.edit-mode .table-header-row .notes-col {
    font-size: 0;
    text-align: center;
    padding: 8px 12px;
}

.document_section.edit-mode .table-header-row .notes-col::before {
    font-size: 16px;
    display: block;
    text-align: center;
    margin: 0;
}

/* Edit controls styling */
.edit-controls {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    flex-wrap: wrap;
    position: relative;
    z-index: 10;
}

.edit-btn {
    width: 30px;
    height: 30px;
    border: 1px solid #000000;
    border-radius: 4px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: background-color 0.2s ease, color 0.2s ease;
    position: relative;
    z-index: 10;
}

.edit-btn.move-up,
.edit-btn.move-down,
.edit-btn.move-top,
.edit-btn.move-bottom {
    background-color: var(--agent-bg-color1);
    color: var(--agent-fg-color1);
}

.edit-btn.move-up:hover,
.edit-btn.move-down:hover,
.edit-btn.move-top:hover,
.edit-btn.move-bottom:hover {
    background-color: var(--agent-bg-color2);
    color: var(--agent-fg-color2);
}

.edit-btn.delete-row {
    background-color: #dc3545;
    color: white;
}

.edit-btn.delete-row:hover {
    background-color: #990000;
}

/* Override global button hover padding and font-size for edit buttons */
.edit-btn:hover {
    padding: 0 !important;
    font-size: 14px !important;
}

/* Ensure tooltips in first row appear above header */
.document_section.edit-mode tr:first-child .edit-btn[data-toggle="tooltip"] {
    z-index: 1000;
}

/* Target Bootstrap tooltips specifically with higher specificity */
body .tooltip {
    z-index: 9999 !important;
}

body .document_section.edit-mode .tooltip {
    z-index: 9999 !important;
}

/* Target tooltip container */
.tooltip.in {
    z-index: 9999 !important;
}

/* Target tooltip arrow */
.tooltip .tooltip-arrow {
    z-index: 9999 !important;
}

/* Fix tooltip positioning for edit mode tables - override Bootstrap container behavior */
body {
    position: relative;
    z-index: 1;
}

.document_section.edit-mode .tooltip {
    z-index: 10000 !important;
    position: fixed !important;
}

.document_section.edit-mode .tooltip.in {
    z-index: 10000 !important;
    position: fixed !important;
}

.document_section.edit-mode .tooltip .tooltip-arrow {
    z-index: 10000 !important;
}

/* Hide buttons for first and last rows */
.document_section.edit-mode tr:first-child .edit-btn.move-up,
.document_section.edit-mode tr:first-child .edit-btn.move-top {
    visibility: hidden;
}

.document_section.edit-mode tr:last-child .edit-btn.move-down,
.document_section.edit-mode tr:last-child .edit-btn.move-bottom {
    visibility: hidden;
}

/* Preserve spacing for hidden buttons */
.document_section.edit-mode tr:first-child .edit-controls {
}

.document_section.edit-mode tr:last-child .edit-controls {
}

/* Hide notes content in edit mode */
.document_section.edit-mode .notes-content {
    display: none;
}

/* Show edit controls in edit mode */
.document_section.edit-mode .edit-controls {
    display: flex !important;
}

/* Hide Edit Table button in edit mode */
.document_section.edit-mode .edit-tables-link {
    display: none !important;
}

/* History Badge Styling */
.history-button {
    position: relative;
}

.history-badge {
    position: absolute;
    top: -11px;
    right: -10px;
    background-color: #dc3545;
    color: white;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    font-size: 10px;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: 1px solid white;
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
    z-index: 10;
}

.history-badge.show {
    display: flex !important;
}