:root{


    --primary-color: #346739;
    --secondary-color: #79AE6F;
    --accent-color: #F2EDC2;
    --soft-green: #9FCB98;
    --white: #FFFFFF;

    --card-info: #ECECEC;
    --card-klasifikasi: #DCEEF4;
    --card-morfologi: #E9DCDC;
    --card-syarat: #DFFFDD;
    --card-budidaya: #F4F4DC;
    
    --test: #D7C58A;;
}

body{
    background: var(--white);
    color: var(--text-dark);
}

.card{
    border: none;
    border-radius:20px;
    margin-top: 30px;
}

.card-info{
    background: var(--card-info);
}

.card-klasifikasi{
    background: var(--card-klasifikasi);
}

.card-morfologi{
    background: var(--card-morfologi);
}

.card-syarat{
    background: var(--card-syarat);
}

.card-budidaya{
    background: var(--card-budidaya);
}

.nama-tanaman{

    color: var(--primary-color);

    font-weight:bold;

}

.nama-latin{

    color: var(--text-muted);

    font-style: italic;

}

.card-title-custom{
    color: var(--primary-color);
    font-weight:700;
}

.badge-custom{

    background: var(--primary-color);

    color: var(--white);

    padding:10px 18px;

    border-radius:50px;

}

.foto-tanaman{
    width:100%;
    height:280px;
    object-fit:cover;
    border-radius:20px;
}

@media (max-width:768px){

}


.qr-container{

    max-width:450px;

    margin:30px auto;

    text-align:center;
}

.img-qr{

    width:300px;

}

.qr{

    margin-top:20px;

}

.qr-action{

    margin-top:25px;

}

.qr-action .btn{

    margin:0 5px;

}

.nama-halaman{

    color:var(--primary-color);

    font-weight:700;

}

.badge-custom{

    background:var(--primary-color);

    color:white;

}

.table thead{

    background:var(--primary-color);

    color:white;

}

.table tbody tr{

    transition:.2s;

}

.table tbody tr:hover{

    background:#F4F4DC;

}

.form-label{

    font-weight:600;

    color:var(--primary-color);

}

.form-control,
.form-select{

    border-radius:10px;

}

.card-scan{
    border:none;
    max-width:700px;
    margin:auto;
    border-radius:15px;
    background:var(--soft-green);
}

#reader{

    width:100%;

    max-width:350px;

    margin:auto;

}


#reader button{

    background:#346739;

    color:white;

    border-radius:.375rem;

    border:1px solid #346739;

    padding:.5rem 1rem;

    font-size:1rem;

}

#reader button:hover{

    background:#79AE6F;

    border-color:#79AE6F;

}

.sidebar{

    background: var(--primary-color);

    transition: .3s;

}

.sidebar a{

    display: block;

    color: white;

    text-decoration: none;

    padding: 15px 25px;

    transition: .3s;

}

.sidebar a:hover{

    background: var(--secondary-color);

}



.sidebar.show{
    left: 0;
}

.content{
    margin-top:60px;

    margin-left:0;

    padding:20px;

    transition:.3s;

}

.content.full{

    margin-left:0;

}

.admin-layout .sidebar{

    position: fixed;

    top: 60px;

    left: 0;

    width: 230px;

    height: calc(100vh - 60px);

}

.admin-layout .sidebar.close{

    left: -230px;

}

.admin-layout .content{

    margin-top: 60px;

    margin-left: 230px;

    padding: 20px;

    transition: .3s;

}

.admin-layout .content.full{

    margin-left: 0;

}

.user-layout .sidebar{

    position: fixed;

    top: 60px;

    left: -230px;

    width: 230px;

    height: calc(100vh - 60px);

    background: var(--primary-color);

    z-index: 2000; /* coba naikkan */

}
.user-layout .sidebar.show{

    left: 0;

}

.user-layout .content{

    margin-top: 60px;

    margin-left: 0;

    padding: 20px;

    transition: .3s;

}

.header{

    position: fixed;

    top: 0;

    left: 0;

    right: 0;

    height: 60px;

    background: var(--primary-color);

    display: flex;

    justify-content: space-between;

    align-items: center;

    padding: 0 20px;

    z-index: 1000;

}

.menu-btn{

    background:none;

    border:none;

    color:white;

    font-size:28px;

}

.header-right{

    color:#F2EDC2;

    cursor:pointer;

}


.main-image{

    width:100%;



    object-fit:cover;

    border-radius:20px;

}

.thumbnail-container{

    display: flex;

    justify-content: center;

    align-items: center;

    flex-wrap: wrap;

    gap: 16px;

    margin-top: 20px;

    margin-bottom: 30px;

}

.thumbnail-image{

    width:70px;

    height:70px;

    object-fit:cover;

    border-radius:12px;

    border:2px solid #DCEEF4;

    cursor: pointer;

    transition: .3s;

}

.thumbnail-image:hover{

    transform: scale(1.05);

    border-color: var(--primary-color);

}

.gallery{

    max-width: 900px;

    margin: 0 auto 30px;

}

.btn-kembali{

    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: var(--primary-color);

    text-decoration: none;

    font-weight: 600;

    margin-bottom: 20px;

}

.btn-kembali:hover{

    color: var(--secondary-color);

}

.card-soal{

    border:none;

    border-radius:12px;

}

.nomor-soal{

    color:var(--primary-color);

    font-weight:600;

    margin-bottom:10px;

}

.pertanyaan{

    font-size:24px;

    font-weight:600;

    line-height:1.5;

}

.pilihan{

    display:block;

    width:100%;

    padding:18px;

    margin-bottom:15px;

    border-radius:12px;

    background:var(--accent-color);

    text-align:center;

    cursor:pointer;

    font-size:18px;

    transition:.25s;

}

.pilihan:hover{

    background:#ECE5B5;

}

input[type=radio]:checked + .pilihan{

    background:var(--test);

    color:#fff;

}

.link-kuis{

    color:var(--primary-color);

    text-decoration:none;

    font-weight:600;

    font-size:18px;

}

.link-kuis:hover{

    text-decoration:underline;

}

.btn-link{

    background:none;

    border:none;

    padding:0;

}