/*
====================================================
ULEZ MAP PRO
Camera Locations Professional UI
Version : 1.7.0
====================================================
*/

.ulez-camera-page{
max-width:1200px;
margin:40px auto;
padding:0 20px;
font-family:Inter,Arial,Helvetica,sans-serif;
color:#1e293b;
}


/* Hero */

.camera-hero{
background:linear-gradient(135deg,#0b5cff,#003b99);
color:#fff;
padding:50px 40px;
border-radius:20px;
margin-bottom:35px;
box-shadow:0 15px 35px rgba(0,0,0,.15);
}


.camera-hero h1{
font-size:38px;
line-height:1.2;
margin:0 0 15px;
font-weight:800;
}


.camera-hero p{
font-size:18px;
line-height:1.7;
margin:0;
opacity:.95;
}



/* Cards */

.camera-map-card,
.camera-database-section,
.camera-guide-card,
.camera-faq-card,
.camera-disclaimer,
.camera-related-tools,
.camera-final-cta{
background:#fff;
border-radius:20px;
padding:35px;
margin-bottom:35px;
border:1px solid #e2e8f0;
box-shadow:0 10px 30px rgba(15,23,42,.08);
}



/* Section Heading */

.section-title h2,
.camera-guide-card h2,
.camera-faq-card h2,
.camera-disclaimer h2,
.camera-related-tools h2,
.camera-final-cta h2{
font-size:28px;
line-height:1.3;
margin:0 0 12px;
color:#0f172a;
}


.section-title p{
font-size:16px;
color:#64748b;
line-height:1.7;
margin-bottom:25px;
}



/* Map */

.camera-map-container{
height:650px;
width:100%;
border-radius:18px;
overflow:hidden;
border:2px solid #e2e8f0;
}



/* Database Button */

.camera-toggle-btn{
background:#0b5cff;
color:#fff;
border:none;
padding:15px 28px;
border-radius:12px;
font-size:16px;
font-weight:700;
cursor:pointer;
transition:.3s;
}


.camera-toggle-btn:hover{
background:#003b99;
transform:translateY(-2px);
}



/* Search */

.camera-table-search{
margin:25px 0;
}


.camera-table-search input{
width:100%;
max-width:550px;
padding:15px 18px;
border-radius:12px;
border:1px solid #cbd5e1;
font-size:15px;
outline:none;
}


.camera-table-search input:focus{
border-color:#0b5cff;
box-shadow:0 0 0 4px rgba(11,92,255,.12);
}



/* Table */

.camera-table-wrapper{
overflow-x:auto;
}


.camera-table{
width:100%;
border-collapse:collapse;
font-size:15px;
}


.camera-table thead{
background:#f8fafc;
}


.camera-table th{
padding:16px;
text-align:left;
font-weight:700;
color:#334155;
}


.camera-table td{
padding:16px;
border-bottom:1px solid #e2e8f0;
color:#475569;
}


.camera-table tbody tr:hover{
background:#f8fafc;
}



.camera-table a{
color:#0b5cff;
font-weight:700;
text-decoration:none;
}


.camera-table a:hover{
text-decoration:underline;
}



/* Pagination */

.camera-pagination{
display:flex;
justify-content:center;
align-items:center;
gap:8px;
flex-wrap:wrap;
margin-top:25px;
}


.ulez-page-btn{
background:#fff;
border:1px solid #2563eb;
color:#2563eb;
padding:9px 16px;
border-radius:8px;
cursor:pointer;
font-weight:700;
}


.ulez-page-btn:hover,
.ulez-page-btn.active{
background:#2563eb;
color:#fff;
}



.ulez-page-info{
font-size:14px;
color:#64748b;
margin-left:10px;
}



/* Guide Content */

.camera-guide-card p,
.camera-faq-card p,
.camera-disclaimer p{
font-size:16px;
line-height:1.8;
color:#475569;
}


.camera-guide-card ul{
padding-left:20px;
}


.camera-guide-card li{
margin-bottom:10px;
color:#475569;
}



/* FAQ */

.camera-faq-card h3{
font-size:20px;
margin-top:25px;
margin-bottom:8px;
color:#0f172a;
}



/* Disclaimer */

.camera-disclaimer{
background:#fff7ed;
border-left:6px solid #f97316;
}


.camera-disclaimer h2{
color:#9a3412;
}


.camera-disclaimer p{
color:#7c2d12;
}



/* Related Tools */

.camera-tool-buttons{
display:flex;
gap:20px;
flex-wrap:wrap;
}


.camera-tool-buttons a{
display:flex;
flex-direction:column;
gap:8px;
background:#0b5cff;
color:#fff;
padding:18px 25px;
border-radius:14px;
text-decoration:none;
font-weight:700;
min-width:220px;
transition:.3s;
}


.camera-tool-buttons a:hover{
background:#003b99;
transform:translateY(-3px);
}


.camera-tool-buttons small{
font-size:14px;
font-weight:400;
opacity:.9;
}



/* Final CTA */

.camera-final-cta{
text-align:center;
background:linear-gradient(135deg,#eff6ff,#dbeafe);
}


.camera-main-btn{
display:inline-block;
margin-top:20px;
background:#0b5cff;
color:#fff;
padding:15px 30px;
border-radius:12px;
font-weight:700;
text-decoration:none;
}


.camera-main-btn:hover{
background:#003b99;
}



/* Popup */

.ulez-camera-popup{
min-width:240px;
}


.ulez-camera-popup h3{
font-size:18px;
margin-bottom:10px;
}


.ulez-camera-popup p{
margin:8px 0;
}



/* Mobile */

@media(max-width:768px){

.ulez-camera-page{
padding:0 12px;
}


.camera-hero{
padding:35px 25px;
}


.camera-hero h1{
font-size:28px;
}


.camera-map-container{
height:450px;
}


.camera-map-card,
.camera-database-section,
.camera-guide-card,
.camera-faq-card,
.camera-disclaimer,
.camera-related-tools,
.camera-final-cta{
padding:22px;
}


.camera-tool-buttons{
flex-direction:column;
}


.camera-tool-buttons a{
width:100%;
}

}