body
{
    margin: 2px; 
    font-family: "Segoe UI", Arial, sans-serif;
    /*font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; */
    font-size: 14px; 
    line-height: 1.42857143;
    color: #333;
    background: #f5f6fa;
    /*background-color: #fff;*/

}

* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}

a
{
    color:#428bca;
    text-decoration:none;
}

a:hover,a:focus
{
    color:#2a6496;
    text-decoration:underline;
}

a:focus
{
    outline:thin dotted;
    outline:5px auto -webkit-focus-ring-color;
    outline-offset:-2px;
}

label 
{
    display: inline-block;
    margin-bottom: 5px;
    font-weight: 500;
}

textarea { 
    resize: vertical; 
}

.alert 
{
    padding: 15px;
    margin-top: 10px;
    margin-bottom: 10px;
    border: 1px solid transparent;
    border-color: #f44336;
    border-radius: 4px;
    font-weight: bold;
    color: #f44336;
    background-color: #fcf8e3;
}

.alert-success
{
    padding: 15px;
    margin-top: 10px;
    margin-bottom: 10px;
    border: 1px solid transparent;
    border-color: #4caf50;
    border-radius: 4px;
    font-weight: bold;
    color: #4caf50;
    background-color: #bbdfbc3d;
}

.required 
{
    color: red;
}

.container 
{
    margin: 5px;
}

.width-available
{
    width:-webkit-fill-available;
    width:-moz-available;
    width:fill-available;
max-width: 700px;
}

.panel 
{
    margin-bottom: 10px;
    background-color: #fff;
    border: 1px solid transparent;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
    box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
}

.panel-primary 
{
    border-color: #9e9e9e8c; /*#019DE2;*/
}

.panel-heading 
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    color: #fff;
    background-color: #019DE2;
    border-color: #019DE2;
    padding: 10px 15px 10px 10px;
    border-bottom: 1px solid transparent;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    font-size: 16px;
    font-weight: 500;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
}

.panel-heading:hover {
  background-color: #0056b3 !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.15);
}

.panel-heading i:first-child 
{
  margin-right: 10px;
}

.panel-heading span 
{
  flex: 1;
}

.panel-body
{
    padding-top: 5px;
    padding-right: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
}

.open
{
    overflow: unset !important; //for multiselect-container dropdown-menu
}

select 
{
    border: 1px #d0d0d0 solid;
    padding: 5px 0 5px 10px;
    color: #000;
}

.form-group
{
    margin-bottom:10px;
    max-width: 430px;
    min-width: 250px;
}

.form-row 
{
    display: flex;
    flex-wrap: wrap;       /* Wrap to next line if no space */
    gap: 0px 16px;             /* Space between items */
    align-items: flex-end; /*bottom alignment*/
    margin-bottom: -5px;
}

/* Each form-group flex item */
.form-row .form-group {
    flex: 1 1 32%;       /* Grow/shrink, minimum width 250px */
}

.form-control 
{
    display: block;
    max-width: 500px;
    width: -webkit-fill-available;
    width: -moz-available;
    width: fill-available;
    height: 32px;
    padding: 6px 12px;
    font-size: 15px;
    line-height: 1.42857143;
    color: #555;
    vertical-align: middle;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box; /* ✅ Include padding in width */
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    -webkit-transition: border-color 
    ease-in-out .15s, -webkit-box-shadow 
    ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color 
    ease-in-out .15s, box-shadow 
    ease-in-out .15s;
}

.form-control:focus 
{
    border-color: #66afe9;
    color: #03a9f4;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6);
}

.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control 
{
    /* cursor: not-allowed; */
    /* background-color: #eee; */
}

/* Error style on blur if empty */
.form-control.error 
{
    border-color: #f4433685 !important;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(255, 0, 0, .35) !important;
}

.search-box {
  position: relative;
  display: inline-block;
}

.search-box i.fa-search {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  color: #888;
  font-size: 14px;
  pointer-events: none; /* icon won't block typing */
}

.search-control 
{
    display: block;
    max-width: 200px;
    width: -webkit-fill-available;
    width: -moz-available;
    width: fill-available;
    height: 25px;
    margin-right: 10px;
    padding: 8px 10px 8px 30px; /* left padding for icon space */
    font-size: 15px;
    line-height: 1.42857143;
    color: #555;
    vertical-align: middle;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 20px;
    box-sizing: border-box; /* ✅ Include padding in width */
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    -webkit-transition: border-color 
    ease-in-out .15s, -webkit-box-shadow 
    ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color 
    ease-in-out .15s, box-shadow 
    ease-in-out .15s;
}

.search-control:focus 
{
    border-color: #66afe9;
    color: #03a9f4;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6);
}

.real 
{
    display: block;
    max-width: 500px;
    width: -webkit-fill-available;
    width: -moz-available;
    width: fill-available;
}

.btn-primary 
{
    color: #fff;
    background-color: #2e6da4;
    border-color: #2e6da4;
}

.btn 
{
    display: inline-block;
    height: auto;
    padding: 7px 12px;
    margin-bottom: 0;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 4px;
}

    .table-container { overflow-x: auto; }
    table { width: 100%; border-collapse: collapse; font-size: 16px; }

th, td 
{ 
    padding: 6px 10px;
    border: 1px solid #9e9e9e8c;
    /*border: 1px solid #428bca;*/
    white-space: nowrap;
}

    th { background: #428bca; color: #fff; text-align: center; font-size: 14.5px; font-weight: 500;}
    tr.success-online { background: #66cc66; }
    tr.success-offline { background: #66ccff; }
    tr.failed { background: #ff6666; }
    tr.highlight { background-color: #ff980078 !important; }

    .highlight-row-hover tr:hover { background-color: #ff980054 !important; cursor: pointer; }
    .no-highlight-row-hover tr:hover { background-color: unset !important; cursor: pointer; } /*Can be used for inner table*/

    td.warning { background: yellow; }
    .action-icons img { height: 20px; width: 20px; cursor: pointer; }

.SearchInput {
  background-image: url('/images/search-icon.png');
  background-position: 5px 2px;
  background-repeat: no-repeat;
  width: 100%;
  font-size: 15px;
  padding: 3px 3px 3px 35px;
  border: 1px solid #ddd;
  margin-bottom: 1px;
}

.phone
{
    font-size: 14px;
    font-weight: 500;
}


.templates { 
    padding: 5px; 
    max-height: 700px; 
    overflow-y: auto; 
    font-family: Arial, sans-serif;
}

.template-item {
    justify-content: space-between;
    align-items: center;
    /*background-color: #f9f9f9;*/
    border: 1px solid #eee;
    border-radius: 5px;
    margin-bottom: 5px;
    padding: 8px;
    cursor: pointer;
}

.template-item:hover { 
    background-color: #f0f0f0; 
}

.template-name { 
    flex: 1;
    font-weight: bold;
}

.template-content { 
    flex: 1;
    margin-top: 5px; 
    font-size: 14px; 
    color: #333; 
    white-space: pre-wrap;
    max-height: 100px;
    overflow-y: hidden;
}

.template-action-icons {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    min-width: 60px;
}

hr 
{
    height: 0;
    box-sizing: content-box;
    -moz-box-sizing: content-box;
    margin-top: 5px;
    margin-bottom: 5px;
    border: 0;
    border-top: 1px solid #eee;
}

