/* ========================================
   QVERSE Gate List (Responsive Version)
   File: open_root/css/journey-list.css
======================================== */

.qv-admin-gate{
max-width:1200px;
margin:40px auto;
padding:0 20px;
font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial;
color:#333;
}

/* -------------------------
   Title
------------------------- */

.qv-page-title{
font-size:28px;
font-weight:700;
margin-bottom:24px;
}

/* -------------------------
   Tabs
------------------------- */

.qv-tabs{
display:flex;
gap:8px;
margin-bottom:24px;
flex-wrap:wrap;
}

.qv-tabs button{
padding:8px 18px;
border-radius:6px;
border:1px solid #e5e7eb;
background:#f3f4f6;
font-size:14px;
cursor:pointer;
transition:all .2s;
display:flex;
align-items:center;
gap:6px;
}

.qv-tabs button:hover{
background:#e5e7eb;
}

.qv-tabs button.active{
background:#2563eb;
color:#fff;
border-color:#2563eb;
}

.qv-tabs .count{
background:#111;
color:#fff;
font-size:11px;
padding:2px 6px;
border-radius:10px;
}

.qv-tabs button.active .count{
background:#fff;
color:#2563eb;
}

/* -------------------------
   Table
------------------------- */

.qv-table{
width:100%;
border-collapse:collapse;
background:#fff;
}

.qv-table thead{
border-bottom:2px solid #e5e7eb;
}

.qv-table th{
text-align:left;
padding:14px 10px;
font-size:14px;
color:#6b7280;
}

.qv-table td{
padding:16px 10px;
border-bottom:1px solid #f1f1f1;
vertical-align:top;
}

/* -------------------------
   Root Badge
------------------------- */

.root-badge{
display:inline-block;
background:#6b7280;
color:#fff;
padding:6px 10px;
border-radius:6px;
font-size:12px;
font-weight:600;
min-width:48px;
text-align:center;
}

/* -------------------------
   Title Area
------------------------- */

.title-cell{
max-width:480px;
}

.title-link{
font-size:16px;
font-weight:600;
color:#2563eb;
text-decoration:none;
line-height:1.4;
}

.title-link:hover{
text-decoration:underline;
}

.meta{
font-size:12px;
color:#9ca3af;
margin-top:4px;
}

/* -------------------------
   Status
------------------------- */

.status{
display:inline-block;
padding:5px 12px;
font-size:12px;
border-radius:20px;
font-weight:600;
}

.status-open{
background:#e5e7eb;
color:#374151;
}

.status-active{
background:#22c55e;
color:#fff;
}

.status-hold{
background:#f59e0b;
color:#fff;
}

/* -------------------------
   Pagination
------------------------- */

.qv-pagination{
margin-top:30px;
text-align:center;
}

.qv-pagination a,
.qv-pagination span{
display:inline-block;
margin:4px;
padding:8px 12px;
border:1px solid #e5e7eb;
border-radius:6px;
text-decoration:none;
font-size:14px;
color:#374151;
}

.qv-pagination .current{
background:#2563eb;
color:#fff;
border-color:#2563eb;
}

/* ========================================
   Tablet
======================================== */

@media (max-width:1024px){

.qv-admin-gate{
padding:0 16px;
}

.title-cell{
max-width:360px;
}

}

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

@media (max-width:768px){

.qv-table{
border:none;
}

.qv-table thead{
display:none;
}

.qv-table tbody{
display:flex;
flex-direction:column;
gap:14px;
}

.qv-table tr{
display:block;
border:1px solid #e5e7eb;
border-radius:10px;
padding:16px;
background:#fff;
}

.qv-table td{
display:block;
border:none;
padding:4px 0;
}

.root-badge{
margin-bottom:8px;
}

.title-cell{
max-width:100%;
}

.meta{
margin-top:6px;
}

.status{
margin-top:6px;
}

}

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

@media (max-width:480px){

.qv-page-title{
font-size:22px;
}

.qv-tabs{
gap:6px;
}

.qv-tabs button{
padding:6px 12px;
font-size:13px;
}

.title-link{
font-size:15px;
}

}