/* ======================================================
   Mobile
====================================================== */





/* ======================================================
   Tablet (iPad, Galaxy Tab, Fold 펼침)
====================================================== */

@media (min-width:768px) and (max-width:1199px){


footer{
    font-size: 10px;
}   

h2,
.h2{
    margin: 25px 20px 5px;
    font-size:20px;
    font-weight:600;
}

.container-fluid{
    max-width:100%;
    padding: 0 ;
    padding-right: 2px;
    padding-left: 2px;
} 

.navbar .container {
    width: 100%;
    max-width: none;
    padding-left: 12px;
    padding-right: 12px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    }

.mb-4 {
    padding: 10px;
    margin-bottom: 0;
}
.py-4 {
padding-top: 1rem!important;
}
.col-md-4{
margin-top: 20px;

}

.navbar{
    --bs-navbar-padding-y: 0;
}
.travel-info {

    width: 100px;
}
.travel-summary{
   font-size: 13px;
    overflow-wrap: break-word;
    line-height: 1.8;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.page-title{
font-size: 18px;
font-weight: 550;
margin-bottom: 5px;
margin-top: 10px;
margin-left: 10px;

}
#mountainMap {
    width: 100%;
    height: 800px;
    border-radius: 10px;
}
#map{
    width:100%;
    height:800px;
}

#img-map-layer {
    max-width: 600px;
}
.img-map-dot {
    width: 8px;
    height: 8px;
}
.img-map-dot.completed {
    border: 1px solid #ffffff;
}
.form-control{
    width:150px;
    display: none;
}

.place-navigation {
    gap: 3px;
}
.place-nav-arrow {
    font-size: 15px;
}
.place-marker-circle{
    width: 25px;
    height: 25px;

}
.photo-list-item.landscape img{

    width:100px;
    height:60px;

}

.photo-list-item.portrait img{

    width:40px;
    height:60px;

}
.photo-place-image {
    gap: 5px;
    padding: 5px;

}
.gallery-video-icon{
    font-size:25px;
}

.photo-place-comment {
font-size: 13px;
}
.place-memo-button{
    display: none;
}

.photo-place-comment{
    margin-left: 5px;
}

.photo-viewer-modal{
    background:rgb(0, 0, 0);
}

.photo-viewer-window{

    position:relative;

    width:100vw;
    height:100vh;

    display:flex;
    justify-content:center;
    align-items:center;

    overflow:hidden;

}

.photo-viewer-image,
.photo-viewer-video{

    max-width:90vw;
    max-height:90vh;

}

.photo-viewer-close{
    top:10px;
    right:10px;
    width:30px;
    height: 30px;
    font-size:26px;
}
.photo-prev,
.photo-next{
    width:35px;
    height:35px;
    font-size:16px;
}

.photo-prev{
    left:15px;
}

.photo-next{
    right:15px;
}

.photo-slide{
    bottom:10px;
    left:50%;
    width:35px;
    height:35px;
    font-size:16px;
}

.photo-list-video-icon{
    font-size:26px;
}

.gallery{

    grid-template-columns:repeat(auto-fill, minmax(105px,1fr));
    gap:8px;
    padding: 4px;
}
.gallery-item{
    height:105px;
}
.gallery-photo-item{
    height:105px;
}
.gallery-landscape{
    width:105px;
}

.gallery-portrait{
    height:105px;
}

.mountain-marker {
    width: 7px;
    height: 7px;
    border: 1px solid white;
}

.btn{
    min-height: 15px;
    font-size: 12px;
    padding: 2px 10px;
}

.travel-header-buttons {
    margin-top: 15px;
}

.basic-title-mountain{
    font-size: 15px;
}

.travel-title {
    font-size: 15px;
    font-weight: 600;
}
.travel-thumb{
    width:120px;
    height:90px;
    object-fit:cover;
    border-radius:10px;
}

.travel-card{
    gap:14px;
    padding:10px;
    margin-bottom:10px;
    border-radius:15px;
}
#headerSearch {
    width: 120px;
    height: 30px;

    padding: 0 13px;

    font-size: 13px;
}


/* 검색 버튼 */

.app-header-actions .header-icon {
    width: 30px;
    height: 30px;
}

.app-header {
    padding: 15px 2px 15px 2px;
    border-radius: 0 0 10px 10px;    
}
.app-header .navbar-brand {
    font-size: 25px;
    filter: drop-shadow(0 4px 10px rgba(0,0,0,.40));
}

.mountain-filter-btn {
    font-size: 10px;
    padding: 3px 8px;
}

.img-map-index-btn {
    padding: 3px 8px;
    font-size: 10px;
}


.track-info{
    width:130px;
}
/* ---------------- 헤더 ---------------- */

.track-info-header{

    padding:7px;
    border-radius:9px 9px 0 0;
    font-size:13px;
}

/* ---------------- 내용 ---------------- */

.track-info-content{
    border-radius:0 0 9px 9px;

}

.track-info-row{
    padding: 5px 20px;
}


.gpx-download{
    font-size: 10px;
}
.track-info-toggle{
    top:4px;
    right:4px;
    width:19px;
    height:19px;
    font-size:13px;
}

.place-marker div{
    width:19px;
    height:19px;
    font-size:10px;
}


/* ==========================================
   Login 
========================================== */



    .login-box{
        width:300px;
        padding:30px;
    }


    .login-logo img{

        width:80px;

    }

    .login-title{
        font-size:35px;
    }


    .login-subtitle{

        font-size:15px;

        margin-bottom:10px;

    }

    .login-divider{

        margin:20px 0;

    }

    .login-input input{

        height:35px;

        font-size:15px;

    }

    .login-btn{

        height:35px;

        font-size:17px;

    }

    .login-footer{

        font-size: 15px;

    }






}











/* ======================================================
   PC
====================================================== */




@media (min-width:1200px){

footer{
    font-size: 13px;
}
  
.container{
    max-width:1200px;
}
.travel-info {

    width: 150px;
}
.travel-summary{
   font-size: 15px;
    overflow-wrap: break-word;
    line-height: 1.8;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
}

#mountainMap {
    width: 100%;
    height: 1000px;
    border-radius: 15px;
}


#map{

    width:100%;
    height:900px;

}

#img-map-layer {
    max-width: 700px;
}
.img-map-dot {
    width: 13px;
    height: 13px;
}
.img-map-dot.completed {
    border: 2px solid #ffffff;
}


.place-marker-circle{
    width: 30px;
    height: 30px;

}
.place-nav-arrow {
    font-size: 24px;
}
.place-navigation {
    gap: 12px;
}
.photo-list-item.landscape img{

    width:135px;
    height:80px;

}

.photo-list-item.portrait img{

    width:65px;
    height:80px;

}

.photo-place-image {
    gap: 12px;
    padding: 10px;
}

.photo-place-comment{
    margin-left:20px;   /* 아이콘만큼 들여쓰기 */

}

.photo-viewer-modal{
    background:rgba(0,0,0,.55);
}

.photo-viewer-image {
max-height: 1000px;
max-width: 1000px;

}


.gallery-video-icon{
    font-size:35px;
}


.photo-viewer-close{
    top:20px;
    right:25px;
    width:44px;
    height:44px;
    font-size:40px;
}

.photo-prev,
.photo-next{
    width:56px;
    height:56px;
    font-size:28px;
}

.photo-slide{
    bottom:24px;
    left:50%;
    width:52px;
    height:52px;
    font-size:28px;
}
.photo-viewer-video{
max-height: 1000px;
max-width: 1000px;

}
.photo-list-video-icon{
    font-size:34px;
}

.gallery{

    grid-template-columns:repeat(auto-fill, minmax(140px,1fr));
    gap:15px;
    padding: 20px;
}


.gallery-item{
    height:140px;
}
.gallery-landscape{
    width:140px;
}

.gallery-portrait{
    height:140px;
}
.page-title{

font-size: 25px;
font-weight: 700;
margin-bottom: 15px;
margin-top: 20px;
margin-left: 25px;

}

/* ---------------- 헤더 ---------------- */

.track-info-header{
    padding:14px 16px;
    background:#6ccf73;
    color:#fff;
    border-radius:15px 15px 0 0;
    font-size:18px;
    font-weight:700;
    text-align:center;
}

/* ---------------- 내용 ---------------- */

.track-info-content{

    padding:8px 0;

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

    border-radius:0 0 15px 15px;

}

.track-info-row{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:10px 16px;

    border-bottom:1px solid rgba(0,0,0,.08);

}

.track-info-row:last-child{

    border-bottom:none;

}

.track-label{
    font-size: 15px;
}

.track-value{
    font-size: 15px;
}

.mountain-marker {
    width: 10px;
    height: 10px;
    border: 1px solid white;
}

.mountain-filter-btn {
    padding: 7px 12px;
    border-radius: 6px;
    font-size: 13px;
}
.mountain-marker {
    width: 10px;
    height: 10px;
    border: 1px solid white;
}

.basic-title-mountain{
    font-size: 18px;
}


.btn{
    min-height:35px;
    font-size:15px;
}

.travel-header-buttons {
    margin-top: 25px;
}
h2,
.h2{
    margin: 25px 20px 5px;
    font-size:25px;
    font-weight:700;
}

.travel-title {
    font-size: 20px;
    font-weight: 600;
}

.travel-card{
    gap:24px;
    padding:15px;
    margin-bottom:15px;
    border-radius:15px;
}

.travel-thumb{
    width:120px;
    height:120px;
    object-fit:cover;
    border-radius:10px;
}





/* 검색 버튼 */

.app-header-actions .header-icon {
    width: 35px;
    height: 35px;
}

.app-header {
    padding: 15px 5px 15px 5px;
    border-radius: 0 0 15px 15px;
}

.app-header .navbar-brand {
    font-size: 30px;
    filter: drop-shadow(0 4px 10px rgba(0,0,0,.40));
}

#headerSearch {
    width: 130px;
    height: 35px;

    padding: 0 14px;

    font-size: 14px;
}


.mountain-filter-btn {
    font-size: 13px;
    padding: 7px 12px;
}
.img-map-index-btn {
    padding: 7px 12px;
    font-size: 13px;
}

.track-info{
    width:190px;
}
/* ---------------- 헤더 ---------------- */

.track-info-header{

    padding:10px;
    border-radius:9px 9px 0 0;
    font-size:19px;
}

/* ---------------- 내용 ---------------- */

.track-info-content{
    padding:8px 0;
    border-radius:0 0 15px 15px;

}

.track-info-row{
    padding: 9px 20px;
}


.gpx-download{
    font-size: 13px;
}

.track-info-toggle{
    top:12px;
    right:12px;
    width:25px;
    height:25px;
    font-size:18px;
}

.place-marker div{
    width:28px;
    height:28px;
    font-size:13px;
}

/* ==========================================
   Login 
========================================== */



    .login-box{
        width:360px;
        padding:30px;
    }


    .login-logo img{

        width:100px;

    }

    .login-title{
        font-size:40px;
    }


    .login-subtitle{

        font-size:15px;

        margin-bottom:10px;

    }

    .login-divider{

        margin:20px 0;

    }

    .login-input input{

        height:50px;

        font-size:15px;

    }

    .login-btn{

        height:50px;

        font-size:17px;

    }

    .login-footer{

        font-size: 15px;

    }





}