/* Basic custom styles for Project Tour Perusahaan */
body{padding-top:70px;font-family:Arial,Helvetica,sans-serif;}
.navbar-brand{font-weight:bold;}
.progress{height:22px;}
.footer{margin-top:40px;padding:20px 0;border-top:1px solid #ddd;color:#666;font-size:.9rem;}
.gallery-thumb{object-fit:cover;width:100%;height:200px;}
.comment-box{border-bottom:1px solid #eee;padding:10px 0;}
.badge-status{font-size:.75rem;}

/* Gallery masonry & hover */
.gallery-masonry{column-count:3;column-gap:1rem;}
@media (max-width:992px){.gallery-masonry{column-count:2;}}
@media (max-width:576px){.gallery-masonry{column-count:1;}}
.gallery-masonry .gm-item{break-inside:avoid;margin:0 0 1rem;position:relative;cursor:pointer;}
.gm-figure{position:relative;overflow:hidden;border-radius:6px;box-shadow:0 2px 6px rgba(0,0,0,0.15);margin:0;background:#f8f9fa;}
.gm-figure img{width:100%;height:auto;display:block;transition:transform .6s ease, filter .6s ease;}
.gm-caption{position:absolute;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.55);color:#fff;opacity:0;transition:opacity .35s ease; padding:10px;text-align:center;}
.gm-caption-inner{max-width:90%;}
.gm-item:hover img{transform:scale(1.06);filter:brightness(1.1);}
.gm-item:hover .gm-caption{opacity:1;}
.gm-text{font-size:.85rem;line-height:1.25;display:block;}
.gm-caption .badge{font-size:.6rem;}

/* Smooth pagination spacing */
nav .pagination{margin-top:10px;}

/* Sticky table header for long admin lists */
.table-sticky thead th{
	position: sticky;
	top: 56px; /* below fixed navbar height */
	z-index: 2;
}
.table-sticky{
	border-collapse: separate; /* needed so sticky paints properly in some browsers */
}
.table-sticky tfoot td{
	background:#f8f9fa;
}

/* --- Responsive Enhancements --- */
@media (max-width: 767.98px){
	body{padding-top:60px;}
	fieldset{padding:1rem!important;}
	.form-row .form-group{flex:0 0 100%;max-width:100%;}
	.extra-item .col-md-5, .extra-item .col-md-2{flex:0 0 100%;max-width:100%;}
	.extra-item .col-md-2{margin-top:4px;}
	#sizeGuide table{font-size:.68rem!important;}
	#sizeGuide h6{font-size:.8rem!important;}
	#sizeGuide .text-muted{font-size:.6rem!important;}
	#sizeGuide .row > [class*='col-']{flex:0 0 100%;max-width:100%;}
	#sizeGuide .border{min-height:auto!important;}
	#sizeGuideToggle{width:100%;}
	.navbar-brand{font-size:1rem;}
	.gallery-thumb{height:150px;}
}

@media (max-width:480px){
	#sizeGuide table td,#sizeGuide table th{padding:.25rem .3rem;}
	.btn{font-size:.75rem;}
	h3{font-size:1.15rem;}
}

/* Bright green button utility */
.btn-bright-green{
	color:#fff !important;
	background-color:#22c55e;
	border-color:#22c55e;
}
.btn-bright-green:hover{
	color:#fff !important;
	background-color:#16a34a;
	border-color:#16a34a;
}
.btn-bright-green:focus, .btn-bright-green.focus{
	box-shadow:0 0 0 .2rem rgba(34,197,94,.35);
}
.btn-bright-green:active, .btn-bright-green.active{
	color:#fff !important;
	background-color:#15803d;
	border-color:#15803d;
}