/* Mining Lease & Quarry Permit: the page's original style (from templates/core/public_interface/mining_permits.html), unchanged. */
                .bs-grid-2 { display: flex; flex-wrap: wrap; justify-content: center; gap: 25px; }
                .bs-grid-2 > .bs-info-box { flex: 1 1 300px; max-width: 450px; }
                .bs-info-box {
                    border-radius: 20px; padding: 30px; text-align: center;
                    box-shadow: 0 8px 20px rgba(0,0,0,0.04);
                    transition: transform 0.3s ease, box-shadow 0.3s ease;
                    position: relative; overflow: hidden; border: 1.5px solid;
                }
                .bs-info-box:hover { transform: translateY(-5px); }
                .bs-info-box.green-box { background: linear-gradient(145deg, #f2ede1, #e3ece1); border-color: #8fc9a3; }
                .bs-info-box.green-box:hover { box-shadow: 0 15px 30px rgba(45, 106, 79, 0.15); border-color: #8fc9a3; }
                .bs-info-box.green-box h5 { color: #1a472a; }
                .bs-info-box.green-box h5 i { color: #2d6a4f; }
                
                .bs-info-box.blue-box { background: linear-gradient(145deg, #f2ede1, #e3ece1); border-color: #8fc9a3; }
                .bs-info-box.blue-box:hover { box-shadow: 0 15px 30px rgba(143, 201, 163, 0.15); border-color: #8fc9a3; }
                .bs-info-box.blue-box h5 { color: #2d6a4f; }
                .bs-info-box.blue-box h5 i { color: #2d6a4f; }
                
                .bs-info-box.amber-box { background: linear-gradient(145deg, #fef7d6, #fef7d6); border-color: #f1c40f; }
                .bs-info-box.amber-box:hover { box-shadow: 0 15px 30px rgba(184, 144, 15, 0.15); border-color: #f1c40f; }
                .bs-info-box.amber-box h5 { color: #6b4f0a; }
                .bs-info-box.amber-box h5 i { color: #b8900f; }
                
                .bs-info-box.purple-box { background: linear-gradient(145deg, #f2ede1, #f2ede1); border-color: #e3ece1; }
                .bs-info-box.purple-box:hover { box-shadow: 0 15px 30px rgba(143, 201, 163, 0.15); border-color: #8fc9a3; }
                .bs-info-box.purple-box h5 { color: #2d6a4f; }
                .bs-info-box.purple-box h5 i { color: #8fc9a3; }
                
                .bs-info-box h5 { font-size: 1.3rem; font-weight: 900; margin-bottom: 12px; display: flex; align-items: center; justify-content: center; gap: 10px; }
                .bs-info-box h5 i { font-size: 1.6rem; }
                .bs-info-box p { font-size: 1.05rem; color: #4b5563; margin: 0; line-height: 1.6; }

                .mp-step-box {
                    background: linear-gradient(145deg, #ffffff, #f2ede1);
                    border: none; border-radius: 20px; padding: 35px; margin-bottom: 30px;
                    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
                    transition: transform 0.3s ease, box-shadow 0.3s ease;
                    position: relative; overflow: hidden;
                }
                
                .mp-step-box:hover {
                    transform: translateY(-5px); box-shadow: 0 15px 40px rgba(0,0,0,0.08);
                }
                .mp-step-box > * { position: relative; z-index: 1; }

                .mp-step-header { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
                .mp-step-badge {
                    width: 45px; height: 45px; border-radius: 12px; background: linear-gradient(135deg, #f1c40f, #b8900f); color: #ffffff;
                    box-shadow: 0 4px 12px rgba(184, 144, 15, 0.3); display: flex; align-items: center; justify-content: center;
                    font-weight: 900; font-size: 1.3rem; flex-shrink: 0;
                }
                .mp-step-box[data-color="blue"] .mp-step-badge { background: linear-gradient(135deg, #8fc9a3, #2d6a4f); box-shadow: 0 4px 12px rgba(45, 106, 79, 0.3); }
                .mp-step-box[data-color="green"] .mp-step-badge { background: linear-gradient(135deg, #8fc9a3, #2d6a4f); box-shadow: 0 4px 12px rgba(45, 106, 79, 0.3); }
                
                .mp-step-title { font-size: 1.35rem; font-weight: 900; color: #1f2a22; margin: 0; text-transform: uppercase; letter-spacing: 0.5px; }
                
                .mp-bullet-list { list-style: none; padding: 0; margin: 20px 0 0 0; display: flex; flex-direction: column; gap: 12px; }
                .mp-bullet-list li {
                    display: flex; align-items: center; gap: 16px; font-size: 1.05rem; color: #1f2a22; line-height: 1.6;
                    padding: 14px 20px; background: #ffffff; border-radius: 12px; border: 1px solid #f2ede1;
                    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
                }
                .mp-bullet-list li:hover {
                    transform: translateX(6px); box-shadow: 0 4px 15px rgba(0,0,0,0.04); border-color: #e6dfcd;
                }
                .mp-bullet-list li i { font-size: 1.3rem; background: linear-gradient(135deg, #f1c40f, #b8900f); -webkit-background-clip: text; -webkit-text-fill-color: transparent; flex-shrink: 0; }
                .mp-step-box[data-color="blue"] .mp-bullet-list li i { background: linear-gradient(135deg, #8fc9a3, #2d6a4f); -webkit-background-clip: text; }
                .mp-step-box[data-color="green"] .mp-bullet-list li i { background: linear-gradient(135deg, #8fc9a3, #2d6a4f); -webkit-background-clip: text; }
                
                .mp-fee-badge {
                    display: inline-flex; align-items: center; gap: 6px; background: linear-gradient(135deg, #fef7d6, #f1c40f); color: #b8900f;
                    border: 1px solid #f1c40f; padding: 4px 12px; border-radius: 8px; font-weight: 900; font-size: 0.9rem;
                    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
                }
                
                .mp-workflow-grid {
                    display: flex; flex-direction: column; gap: 16px; margin-top: 30px;
                }
                .mp-wf-card {
                    background: linear-gradient(145deg, #f2ede1, #f2ede1); border: 1px solid #e6dfcd; border-radius: 16px; padding: 25px 30px;
                    display: flex; align-items: center; gap: 20px; transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s, background 0.3s;
                    box-shadow: 0 4px 12px rgba(0,0,0,0.03);
                }
                .mp-wf-card:hover {
                    transform: translateX(8px); border-color: #2d6a4f; box-shadow: 0 10px 25px rgba(45, 106, 79, 0.12);
                    background: linear-gradient(145deg, #ffffff, #f2ede1);
                }
                .mp-wf-num {
                    width: 50px; height: 50px; border-radius: 14px; background: linear-gradient(135deg, #8fc9a3, #2d6a4f); color: #ffffff;
                    box-shadow: 0 6px 15px rgba(45, 106, 79, 0.3); display: flex; align-items: center; justify-content: center;
                    font-weight: 900; font-size: 1.4rem; flex-shrink: 0; transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), background 0.3s;
                }
                .mp-wf-card:hover .mp-wf-num { transform: scale(1.1) rotate(10deg); background: linear-gradient(135deg, #2d6a4f, #2d6a4f); box-shadow: 0 6px 15px rgba(45, 106, 79, 0.3); }
                .mp-wf-text { font-size: 1.05rem; color: #1f2a22; font-weight: 700; line-height: 1.6; }
