.tool-page {
    max-width: 900px;
    margin: 60px auto;
    padding: 30px;
}

.tool-hero {
    background: #ffffff;
    border-radius: 16px;
    padding: 40px 30px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.06);
    text-align: center;
    margin-bottom: 30px;
}

.tool-hero h1 {
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 10px;
}

.tool-hero p {
    color: #555;
    font-size: 16px;
}

.upload-box {
    border: 2px dashed #aaa;
    border-radius: 12px;
    padding: 25px;
    margin-top: 20px;
    min-height: 180px;
}

.primary-btn {
    margin-top: 20px;
    width: 100%;
    padding: 14px;
    border: none;
    border-radius: 10px;
    background: #635BFF;
    color: white;
    font-size: 16px;
    cursor: pointer;
}

.download-btn {
    display: inline-block;
    margin-top: 10px;
    padding: 12px 22px;
    background: #0CAF60;
    color: white;
    border-radius: 8px;
    text-decoration: none;
}

.tool-section {
    background: #ffffff;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.05);
    margin-bottom: 30px;
}

.tool-section h2 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 15px;
}

.file-input {
    width: 100%;
    padding: 10px;
}

.merge-result {
    margin-top: 25px;
    text-align: center;
}

.tool-page {

padding:60px 0;

}

.tool-header h1 {

font-size:36px;
font-weight:700;

}

.tool-interface {

margin-top:40px;
text-align:center;

}

.upload-box {

border:2px dashed #d9d9d9;
padding:60px;
border-radius:12px;
background:#fafafa;
cursor:pointer;

}

.upload-box:hover {

border-color:#0d6efd;

}

.upload-box i {

font-size:40px;
margin-bottom:10px;

}

.process-btn {

margin-top:20px;

}

.related-tools {

margin-top:60px;

}

.related-tools-links {

display:flex;
flex-wrap:wrap;
gap:10px;

}

.related-tool-btn {

display:inline-block;
padding:8px 14px;
border-radius:6px;
background:#f1f3f5;
color:#333;
font-size:14px;
text-decoration:none;
border:1px solid #e2e2e2;
transition:all .2s ease;

}

.related-tool-btn:hover {

background:#0d6efd;
color:#fff;
border-color:#0d6efd;

}

.upload-area{

border:2px dashed #d0d7de;
border-radius:12px;
padding:60px 20px;
text-align:center;
background:#fafafa;
transition:all .2s ease;
max-width:700px;
margin:auto;

}

.upload-area:hover{

border-color:#0d6efd;
background:#f4f8ff;

}

.upload-area input[type=file]{

margin-bottom:15px;

}

.process-btn{

margin-top:15px;

}


.upload-area{

border:2px dashed #d0d7de;
border-radius:12px;
padding:60px 20px;
text-align:center;
background:#fafafa;
transition:all .2s ease;
max-width:700px;
margin:auto;
cursor:pointer;

}

.upload-area.dragover{

border-color:#0d6efd;
background:#eef5ff;

}

.upload-text{

color:#666;
font-size:14px;
margin-top:10px;

}

.processing-message{

margin-top:15px;
font-weight:500;
color:#0d6efd;

}

.process-btn:disabled{

opacity:0.6;
cursor:not-allowed;

}

.selected-files{

text-align:left;
max-width:600px;
margin:auto;

}

.selected-file{

background:#f5f5f5;
border:1px solid #ddd;
border-radius:6px;
padding:6px 10px;
margin-bottom:6px;
font-size:14px;

display:flex;
justify-content:space-between;
align-items:center;

}

.remove-file{

cursor:pointer;
color:#dc3545;
font-weight:bold;

}

.selected-files-display{

margin-top:10px;
font-size:14px;
color:#555;
text-align:center;
word-break:break-word;

}


.file-upload-wrapper{

text-align:center;
margin-bottom:20px;

}

.file-picker{

display:inline-flex;
align-items:center;
gap:15px;
border:1px solid #ccc;
padding:8px 12px;
border-radius:6px;
background:#fff;

}

#selectedFileNames{

font-size:14px;
color:#555;

}

.file-upload-wrapper{

text-align:center;
margin-bottom:20px;

}

.file-picker{

display:inline-flex;
align-items:center;
gap:12px;
border:1px solid #ccc;
padding:10px 14px;
border-radius:6px;
background:#fff;

}

#selectedFileNames{

font-size:14px;
color:#555;

}

.upload-box {
    border: 2px dashed #ccc;
    padding: 40px;
    text-align: center;
    border-radius: 8px;
    cursor: pointer;
}

.upload-box.dragover {
    border-color: #0d6efd;
    background: #f8f9fa;
}

.tool-icon i {
    color: inherit !important;
}

.tool-card p {
    display: -webkit-box;
    -webkit-line-clamp: 3;      /* max 3 lines */
    -webkit-box-orient: vertical;
    overflow: hidden;

    min-height: 3em;            /* ensures at least ~2 lines space */
    line-height: 1.5;

    font-size: 0.95rem;
    color: #6b7280;
}

.tool-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    height: 38px;
    padding: 0 18px;

    background: #ffffff;
    color: #2563eb;

    border: 1px solid #2563eb;
    border-radius: 6px;

    font-size: 14px;
    font-weight: 500;

    text-decoration: none;

    transition: all 0.2s ease;
}

.tool-action-btn:hover {
    background: #2563eb;
    color: #ffffff;
}

.processing-overlay {
    display: none;
    margin-top: 25px;
}

.processing-box {
    width: 100%;
    max-width: 500px;
    margin: auto;
    text-align: center;
    background: #f8fafc;
    border: 1px solid #dbe4f0;
    border-radius: 10px;
    padding: 20px;
}

.processing-box .progress {
    height: 12px;
    border-radius: 999px;
    overflow: hidden;
    background: #e5e7eb;
}