@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');

html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	margin: 0;
}

a, .btn-link {
    color: #0366d6;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.content {
    padding-top: 1.1rem;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid red;
}

.validation-message {
    color: red;
}

.client-card.alert {
    padding: 0.50rem 0.50rem
}

.client-header {
    color:#19428a;
}


.client-header .badge {
    display: inline;
    font-size: .9rem;
}

.client-card .form-label {
    margin-bottom: 0.1rem;
    font-size: 0.9rem;
}

.label-value
{
    font-weight: 500;
}

#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

.k-grid table {
    font-size: .9rem;
    color:#6c757d 
}

.k-grid table tr:hover td {
    color: #19428a
}

.k-grid-header .k-header {
    font-weight: 700;
    color: #19428a;
}

input.k-textbox, .k-button span, span .k-input {
    font-size: .9rem;
}


div.k-form-field {
    padding-bottom: 10px;
    margin-top: 1.7rem;
}

.k-form .k-form-field label {
    font-size: .9rem;
}

.k-form-field label {
    color: #6c757d;
    padding-bottom: 16px;
}

span.k-textbox-container, span.k-floating-label-container {
    padding-top: 2rem;
    color: #6c757d;
}


span.k-textbox-container.k-state-empty > .k-label, span.k-floating-label-container.k-state-empty > .k-label {
    top: calc(2.475rem + 1px);
    left: calc(0.75rem + 1px);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

span > .k-textbox {
    border: 1px solid #dee2e6;
}

.nav-link .highlight-community {
    font-size: 1.3rem;
}

.e-btn.e-primary.custom, .e-css.e-btn.e-primary.custom {
    background-color: #19428a;
    border-color: #19428a;
    box-shadow: 0px 2px 6px 0px rgba(25, 66, 138, 0.5);
    padding: 0.45rem, 0.9rem;
}


.e-grid {
    font-size: .9rem;
    color: #6c757d
}

.e-grid .e-altrow {
    background-color: #fff6e6;
}

    .e-grid .e-row.alert-primary {
        background-color: #d7eff6;
       /* color: #007bff !important;*/
    }


.hor-bordered-tab .e-item.e-active {
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-top: 0px solid #ddd;
}


.hor-bordered-tab.e-tab .e-tab-header .e-toolbar-item.e-active.e-ileft .e-tab-text {
    font-weight: 600;
    color: #19428a;
}

.vert-bordered-tab.e-tab .e-content
{
    padding-left: 20px;
}

.vert-bordered-tab .e-item.e-active {
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
}

.vert-bordered-tab.e-tab .e-tab-header .e-toolbar-item {

    border-right: 1px solid #ffffff;
}

.vert-bordered-tab.e-tab .e-tab-header.e-vertical .e-toolbar-item.e-active {
    border-top: 1px solid #ffffff;
    border-right: 1px solid #ffffff;
    border-bottom: 1px solid #ffffff;
    border-left: 1px solid #ffffff;
}

.vert-bordered-tab.e-tab .e-tab-header.e-vertical .e-toolbar-item.e-ileft .e-tab-text {
    color:#19428a; 
}

/*.vert-bordered-tab.e-tab .e-tab-header.e-vertical .e-toolbar-item.cat-valid.e-ileft .e-tab-text {
    color: #067c5b;
}*/

.vert-bordered-tab.e-tab .e-tab-header.e-vertical .e-toolbar-item.cat-invalid.e-ileft .e-tab-text {
    color: #8f9194;
}

.vert-bordered-tab.e-tab .e-tab-header.e-vertical .e-toolbar-item.e-active.e-ileft .e-tab-text {
    font-weight: 600;
}

.vert-bordered-tab.e-tab .e-tab-header.e-vertical .e-toolbar-item.e-ileft .e-tab-text::before {
    font-family: unicons;
    font-style: normal;
    font-weight: 400;
    speak: none;
    display: inline-block;
    text-decoration: inherit;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 20px;
    padding-left: 5px;
    color: #067c5b;
}

.vert-bordered-tab.e-tab .e-tab-header.e-vertical .e-toolbar-item.cat-valid.e-ileft .e-tab-text::before {
    content: '\e8d1';
    position: relative;
    left: -4px;
}

.vert-bordered-tab.e-tab .e-tab-header.e-vertical .e-toolbar-item.cat-valid.no-tasks.e-ileft .e-tab-text::before {
    content: '\e8d2';
    position: relative;
    left: -4px;
}

.vert-bordered-tab.e-tab .e-tab-header.e-vertical .e-toolbar-item.cat-invalid.e-ileft .e-tab-text::before {
    content: '\e8d2';
    position: relative;
    left: -4px;
    color: #fa5c7c !important;
}

.e-tab .e-tab-header.e-vertical.e-vertical-left {
	max-width: 250px;
}

.e-tab .e-content .e-item {
    color: #6c757d !important;
}

.bordered-tab .e-grid {
    margin-bottom: 30px;
}

.delete-btn {
    font-size: 18px;
    cursor: pointer;
}

.delete-btn:hover {
    color: #fa5c7c;
}

.no-padding.e-treeview .e-ul {
    padding: 0 0 0 0;
}

.careplan-category
{
    min-height: 300px;
}


.invalid-group:before {
    font-family: unicons !important;
    content: '\e9b4' !important;
    color: #fa5c7c !important;
}
.valid-group:before {
    font-family: unicons !important;
    content: '\e8c8' !important;
	color: #067c5b !important;
}

.consent-sig {
    font-family: 'Caveat', serif;
    font-size: 48px;
    line-height: 1;
}

/*Report*/

.total-cell {
    font-weight: 700 !important;
    text-align: right !important;
}

.e-detail-disable .e-detailrowcollapse {
    pointer-events: none;
}

.e-detail-disable .e-detailrowcollapse .e-icon-grightarrow {
    visibility: hidden;
}

/*Help*/

.help.card {
    margin-bottom: 0px;
}

.help-item .card-body
{
    padding: 20px 50px;
}

.help-item .e-acrdn-content {
    padding: 0px !important;
}

.video-wrapper-16x9 {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 25px;
    margin-bottom: 20px;
}

.video-embed {
    position: absolute;
    top: 0; 
    left: 0; 
    width: 100%; 
    height:100%;
}

#add-visit, #edit-visit {
    max-height: 670px !important;
}

#testchecksite{

}


/**************request-visit-card end here***************/

/***************messages card start**************/
.messages-card .count {
    background: #d9d9d9;
    width: 5rem;
    height: 38px;
    border-radius: 19px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.messages-card .sender {
    background: #82a4e1;
    height: 20px;
    width: 20px;
    border-radius: 10px;
}

.messages-card .responder {
    background: #fde1b1;
}

.messages-card .text-msg {
    width: calc(100% - 98px);
}

.messages-card .set-arrow {
    margin-left: -5px;
    margin-right: 8px;
}

/***************messages card end**************/



/****************styles start here******************/
.text-muted2 {
    color: #a5a5a5 !important;
}

/**************request-visit-card start here***************/
.shadow-card {
    border-radius: 0.5625rem;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1);
    color: #3e3e3e;
}

.request-visit-card .action {
    font-size: 1.2rem;
    width: 1.875rem;
    height: 1.875rem;
    background: #fb5c7c;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.request-visit-card .success {
    background: #57ba46;
    border-radius: 0.8rem;
    padding: 0.1rem 0.6rem;
}

.request-visit-card .timing {
    width: calc(100% - 18rem);
}

    .request-visit-card .timing span:first-child {
        width: 12px;
        height: 12px;
        background: #57ba46;
        border-radius: 50%;
    }

    .request-visit-card .timing span:last-child {
        width: 12px;
        height: 12px;
        background: #e51e11;
        border-radius: 50%;
    }

    .request-visit-card .timing span:nth-child(2) {
        height: 2px;
        width: 100%;
        background: #2d2d2d;
    }

/**************request-visit-card end here***************/

/***************messages card start**************/
.messages-card .count {
    background: #d9d9d9;
    width: 5rem;
    height: 38px;
    border-radius: 19px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.messages-card .sender {
    background: #82a4e1;
    height: 20px;
    width: 20px;
    border-radius: 10px;
}

.messages-card .responder {
    background: #fde1b1;
}

.messages-card .text-msg {
    width: calc(100% - 98px);
}

.messages-card .set-arrow {
    margin-left: -5px;
    margin-right: 8px;
}

/***************message modal start**************/
.bg-light2 {
    background: #f6f9fe;
}

.bg-danger-light2 {
    background: #fff9f1;
}

.blue-arrow {
    width: 30px;
    height: 30px;
    background: #82a4e1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}
.margin-top20{
    margin-top:15px;
}

/***************message modal end**************/
/*************** announcements (header bell + popup) start ***************/
/* Dialog shell: rounded card, soft shadow, no default chrome */
.announcement-dialog.e-dialog { max-width: 94vw; border-radius: 16px; overflow: hidden; border: 0; box-shadow: 0 24px 64px rgba(15, 23, 42, .28); }
.announcement-dialog .e-dlg-header-content { padding: 0; border: 0; border-radius: 0; background: linear-gradient(135deg, #1e5eff 0%, #4f46e5 60%, #7c3aed 100%); position: relative; overflow: hidden; }
.announcement-dialog .e-dlg-header-content::before { content: ''; position: absolute; width: 260px; height: 260px; right: -90px; top: -150px; border-radius: 50%; background: rgba(255, 255, 255, .10); }
.announcement-dialog .e-dlg-header-content::after { content: ''; position: absolute; width: 140px; height: 140px; right: 90px; bottom: -100px; border-radius: 50%; background: rgba(255, 255, 255, .07); }
.announcement-dialog .e-dlg-header { width: 100%; white-space: normal; color: #fff; }
.announcement-dialog .e-dlg-closeicon-btn { top: 12px; right: 12px; color: rgba(255,255,255,.85); background: rgba(255,255,255,.14); border-radius: 50%; z-index: 1; }
.announcement-dialog .e-dlg-closeicon-btn:hover { background: rgba(255,255,255,.28); color: #fff; }
.announcement-dialog .e-dlg-closeicon-btn .e-icon-dlg-close { color: inherit; }
.announcement-dialog .e-dlg-content { padding: 0; }
.announcement-dialog .e-footer-content { padding: 0; border-top: 1px solid #eef0f4; background: #f8f9fc; }

/* Header band */
.announcement-hero { display: flex; align-items: flex-start; gap: 16px; padding: 22px 56px 22px 24px; position: relative; z-index: 1; }
.announcement-hero-icon { flex: 0 0 48px; width: 48px; height: 48px; border-radius: 14px; background: rgba(255,255,255,.18); display: flex; align-items: center; justify-content: center; font-size: 26px; color: #fff; box-shadow: inset 0 0 0 1px rgba(255,255,255,.25); }
.announcement-hero-text { min-width: 0; }
.announcement-hero-kicker { font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; opacity: .85; font-weight: 600; display: flex; align-items: center; gap: 8px; }
.announcement-hero-title { font-size: 1.35rem; font-weight: 700; line-height: 1.25; margin-top: 4px; color: #fff; word-wrap: break-word; }
.announcement-hero-meta { display: inline-flex; align-items: center; gap: 5px; margin-top: 10px; padding: 3px 10px 3px 8px; font-size: .68rem; font-weight: 500; letter-spacing: .02em; color: #fff; background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.28); border-radius: 999px; backdrop-filter: blur(2px); }
.announcement-hero-meta .mdi { font-size: .85rem; line-height: 1; opacity: .9; }
.announcement-pill { background: #fbbf24; color: #1f2937; border-radius: 999px; padding: 1px 9px; font-size: .68rem; letter-spacing: .08em; }

/* Body */
.announcement-body { max-height: 56vh; overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; word-wrap: break-word; overflow-wrap: anywhere; padding: 22px 24px; font-size: 1rem; line-height: 1.65; color: #2d3748; }
.announcement-body > :first-child { margin-top: 0; }
.announcement-body > :last-child { margin-bottom: 0; }
.announcement-body h1, .announcement-body h2, .announcement-body h3, .announcement-body h4 { font-weight: 700; color: #1a202c; margin: 1rem 0 .5rem; }
.announcement-body p { margin: 0 0 .85rem; }
.announcement-body a { color: #4f46e5; font-weight: 600; text-decoration: none; border-bottom: 1px solid rgba(79,70,229,.35); }
.announcement-body a:hover { border-bottom-color: #4f46e5; }
/* An image can never widen the dialog. The editor stores a pixel width on the image AND on
   its caption wrapper, so both are capped; height resets so the aspect ratio survives the
   downscale. The wrappers are spans, which ignore max-width until they are inline-block. */
.announcement-body img { max-width: 100% !important; height: auto !important; border-radius: 10px; }
.announcement-body .e-rte-img-caption,
.announcement-body .e-img-caption,
.announcement-body .e-img-inner { display: inline-block; max-width: 100% !important; }
.announcement-body figure { display: block; max-width: 100% !important; margin: 0 auto .85rem; }
.announcement-body .e-imgcenter { display: block; margin-left: auto; margin-right: auto; }
.announcement-body ul, .announcement-body ol { padding-left: 1.4rem; margin-bottom: .85rem; }
.announcement-body li { margin-bottom: .25rem; }
/* Anything genuinely wider than the dialog scrolls inside itself rather than pushing a
   scrollbar onto the whole announcement. */
.announcement-body table { display: block; width: 100%; max-width: 100%; overflow-x: auto; border-collapse: collapse; margin-bottom: .85rem; font-size: .95rem; }
.announcement-body pre { max-width: 100%; overflow-x: auto; }
.announcement-body table th { background: #f1f3f9; text-align: left; }
.announcement-body table td, .announcement-body table th { border: 1px solid #e5e8ef; padding: .5rem .65rem; }
.announcement-body blockquote { border-left: 4px solid #c7d2fe; background: #f5f6ff; margin: .5rem 0 .85rem; padding: .6rem .9rem; border-radius: 0 8px 8px 0; color: #4a5568; }

/* Footer */
.announcement-actions { display: flex; align-items: center; gap: 10px; padding: 14px 24px; flex-wrap: wrap; }
.announcement-actions-hint { flex: 1 1 auto; font-size: .8rem; color: #718096; min-width: 160px; }
.announcement-actions .btn { border-radius: 999px; padding: .5rem 1.25rem; font-weight: 600; transition: transform .12s ease, box-shadow .12s ease; }
.announcement-actions .btn:active { transform: translateY(1px); }
.announcement-btn-primary { background: linear-gradient(135deg, #1e5eff, #4f46e5); color: #fff !important; border: 0; box-shadow: 0 6px 16px rgba(79,70,229,.35); }
.announcement-btn-primary:hover { box-shadow: 0 8px 20px rgba(79,70,229,.45); color: #fff; }
.announcement-btn-ghost { background: #fff; color: #4a5568 !important; border: 1px solid #d9dee8; }
.announcement-btn-ghost:hover { background: #eef1ff; border-color: #c7d2fe; color: #4f46e5 !important; }
.announcement-btn-ghost .mdi { margin-right: 2px; }

/* Bell dropdown + list page */
.announcement-unread .notify-details { font-weight: 700; }
.announcement-list-item { cursor: pointer; }

@media (max-width: 576px) {
    .announcement-hero { padding: 18px 48px 18px 18px; gap: 12px; }
    .announcement-hero-title { font-size: 1.15rem; }
    .announcement-body { padding: 16px 18px; }
    .announcement-actions { padding: 12px 16px; }
    .announcement-actions .btn { flex: 1 1 100%; }
    .announcement-actions-hint { display: none; }
}
/*************** announcements end ***************/
