/*==========================================
RAVBA MEDIC
PREMIUM CLINICAL UI
==========================================*/

:root{

--rv-radius:20px;
--rv-border:#dbe7f2;
--rv-shadow:0 8px 28px rgba(25,45,75,.06);
--rv-hover:0 14px 34px rgba(25,45,75,.12);

}

.card,
.rv-card{

background:#fff;

border:1px solid var(--rv-border);

border-radius:var(--rv-radius);

box-shadow:var(--rv-shadow);

transition:.25s;

overflow:hidden;

}

.card:hover,
.rv-card:hover{

transform:translateY(-2px);

box-shadow:var(--rv-hover);

}

.card h2,
.card h3,
.rv-card h2{

font-size:30px;

font-weight:800;

margin-bottom:28px;

color:#23395d;

}

.rv-card{

padding:34px;

margin-bottom:30px;

}

textarea{

resize:vertical;

min-height:110px;

}

input,
textarea,
select{

transition:.2s;

}

input:focus,
textarea:focus,
select:focus{

border-color:#18a39b!important;

box-shadow:0 0 0 4px rgba(24,163,155,.12);

}


/* ========= RAVBA CLINICAL GRID ========= */

#rv-expediente-root .rv-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(340px,1fr));

gap:22px;

align-items:start;

margin-top:20px;

}

#rv-expediente-root .field{

display:flex;

flex-direction:column;

gap:8px;

}

#rv-expediente-root label{

font-weight:700;

font-size:.95rem;

color:#334155;

}

#rv-expediente-root input,
#rv-expediente-root textarea,
#rv-expediente-root select{

width:100%;

padding:14px 16px;

border-radius:14px;

border:1px solid #dbe7f2;

background:#fff;

font-size:15px;

box-sizing:border-box;

}

#rv-expediente-root textarea{

min-height:120px;

}

#rv-expediente-root .rv-stat{

background:#f8fafc;

border:1px solid #e2e8f0;

border-radius:16px;

padding:18px;

text-align:center;

transition:.2s;

}

#rv-expediente-root .rv-stat:hover{

transform:translateY(-2px);

box-shadow:0 10px 24px rgba(0,0,0,.08);

}


/* ==========================================================
   RAVBA MEDIC • CLINICAL OS PREMIUM
========================================================== */

body{
    background:#f4f7fb;
}

#rv-expediente-root{

    display:flex;
    flex-direction:column;
    gap:32px;

}

#rv-expediente-root .rv-card{

    background:#fff;

    border:none;

    border-radius:24px;

    padding:34px;

    box-shadow:0 10px 30px rgba(15,23,42,.05);

}

#rv-expediente-root .rv-card h2{

    font-size:34px;

    margin-bottom:8px;

    color:#22395d;

}

#rv-expediente-root .rv-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

    gap:28px;

    margin-top:28px;

}

#rv-expediente-root .field{

    display:flex;

    flex-direction:column;

    gap:8px;

}

#rv-expediente-root label{

    font-size:.9rem;

    font-weight:700;

    color:#475569;

}

#rv-expediente-root input,
#rv-expediente-root select,
#rv-expediente-root textarea{

    width:100%;

    padding:15px 18px;

    border-radius:16px;

    border:1px solid #d8e4ef;

    background:#fff;

    font-size:15px;

    box-sizing:border-box;

    transition:.20s;

}

#rv-expediente-root input:hover,
#rv-expediente-root select:hover,
#rv-expediente-root textarea:hover{

    border-color:#18a39b;

}

#rv-expediente-root input:focus,
#rv-expediente-root select:focus,
#rv-expediente-root textarea:focus{

    outline:none;

    border-color:#18a39b;

    box-shadow:0 0 0 4px rgba(24,163,155,.12);

}

#rv-expediente-root textarea{

    min-height:90px;

}

#rv-expediente-root .rv-stat{

    background:#f8fafc;

    border-radius:18px;

    padding:20px;

    border:1px solid #e2e8f0;

    transition:.25s;

}

#rv-expediente-root .rv-stat:hover{

    transform:translateY(-3px);

    box-shadow:0 12px 25px rgba(0,0,0,.08);

}


#rv-expediente-root .rv-card:first-child{

background:linear-gradient(135deg,#1e3a8a,#2563eb);

color:white;

}

#rv-expediente-root .rv-card:first-child h1,
#rv-expediente-root .rv-card:first-child h2,
#rv-expediente-root .rv-card:first-child b,
#rv-expediente-root .rv-card:first-child div{

color:white!important;

}

#rv-expediente-root .rv-stat{

background:rgba(255,255,255,.12);

border:1px solid rgba(255,255,255,.18);

backdrop-filter:blur(8px);

}


#rv-expediente-root .rv-card h2{

border-left:6px solid #0ea5e9;

padding-left:16px;

letter-spacing:.5px;

}


.btn{

background:linear-gradient(135deg,#2563eb,#1d4ed8);

color:#fff;

border:none;

border-radius:14px;

padding:12px 18px;

font-weight:700;

transition:.25s;

}

.btn:hover{

transform:translateY(-2px);

box-shadow:0 12px 25px rgba(37,99,235,.30);

}

.btn.danger{

background:linear-gradient(135deg,#dc2626,#b91c1c);

}


/* ==========================================================
   HERO PREMIUM V2
========================================================== */

#rv-expediente-root .rv-card:first-child{

background:#ffffff !important;

border:1px solid #dbe7f2;

border-top:6px solid #2563eb;

box-shadow:0 10px 25px rgba(15,23,42,.06);

}

#rv-expediente-root .rv-card:first-child h1,
#rv-expediente-root .rv-card:first-child h2,
#rv-expediente-root .rv-card:first-child b,
#rv-expediente-root .rv-card:first-child div{

color:#243b63 !important;

}

#rv-expediente-root .rv-card:first-child .rv-stat{

background:#f8fbff;

border:1px solid #e5eef8;

border-radius:16px;

box-shadow:none;

}

#rv-expediente-root .rv-card:first-child .rv-stat:hover{

background:#eef6ff;

transform:translateY(-2px);

box-shadow:0 8px 18px rgba(37,99,235,.08);

}

#rv-expediente-root .rv-card:first-child .rv-stat b{

color:#2563eb !important;

font-size:15px;

}


.rv-card{

background:#f8fafc;

border:1px solid #d9e5f2;

border-top:5px solid #2563eb;

border-radius:18px;

padding:0;

overflow:hidden;

margin-bottom:28px;

box-shadow:0 6px 22px rgba(15,23,42,.06);

}

.rv-card-header{

padding:22px 30px;

background:linear-gradient(180deg,#ffffff,#f8fbff);

border-bottom:1px solid #e5edf7;

}

.rv-card-header h2{

margin:0;

font-size:30px;

font-weight:800;

color:#1e3a5f;

}

.rv-card-body{

padding:30px;

}



/* =====================================================
   RAVBA PREMIUM SUBCARDS
===================================================== */

.rv-subcard{

background:#fff;

border:1px solid #d9e5f3;

border-radius:18px;

padding:22px;

box-shadow:0 8px 22px rgba(15,76,129,.06);

transition:.25s ease;

}

.rv-subcard:hover{

transform:translateY(-4px);

box-shadow:0 18px 42px rgba(15,76,129,.10);

border-color:#3b82f6;

}

.rv-subcard-head{

display:flex;

align-items:center;

gap:12px;

margin-bottom:18px;

padding-bottom:12px;

border-bottom:1px solid #edf2f8;

}

.rv-subcard-head h3{

margin:0;

font-size:20px;

font-weight:700;

color:#0f4c81;

}

.rv-subcard-icon{

font-size:28px;

}

.rv-subcard-body{

display:grid;

gap:14px;

}



/* ===== CHECK GRID ===== */

.rv-check-grid-body{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(120px,1fr));

gap:10px;

margin-top:12px;

}

.rv-check-item{

display:flex;

align-items:center;

gap:8px;

padding:10px 12px;

border:1px solid #dbe7f5;

border-radius:12px;

background:#f8fbff;

cursor:pointer;

transition:.2s;

}

.rv-check-item:hover{

border-color:#0ea5e9;

background:#eef8ff;

}

.rv-check-item input{

margin:0;

}



/* ===== PREMIUM CHIPS ===== */

.rv-chip-wrap{

display:flex;

flex-wrap:wrap;

gap:10px;

margin-top:12px;

}

.rv-chip{

display:flex;

align-items:center;

gap:8px;

padding:10px 16px;

border-radius:999px;

border:1px solid #d8e6f5;

background:#f8fbff;

cursor:pointer;

transition:.2s;

font-weight:600;

}

.rv-chip:hover{

background:#eef7ff;

border-color:#2196f3;

}

.rv-chip input{

display:none;

}

.rv-chip:has(input:checked){

background:#0f4c81;

color:#fff;

border-color:#0f4c81;

box-shadow:0 8px 20px rgba(15,76,129,.25);

}



/* ===== TWO COLS ===== */

.rv-two-cols{

display:grid;

grid-template-columns:1fr 1fr;

gap:14px;

margin:14px 0;

}

@media(max-width:900px){

.rv-two-cols{

grid-template-columns:1fr;

}

}

.rv-chip-wrap{

display:grid;

grid-template-columns:repeat(2,minmax(0,1fr));

gap:10px;

}

