*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial,Helvetica,sans-serif;
}

body{

    background:linear-gradient(135deg,#4f46e5,#06b6d4);

    min-height:100vh;

    display:flex;

    justify-content:center;

    align-items:center;

    padding:25px;

}

.container{

    width:100%;

    max-width:850px;

}

.card{

    background:#fff;

    border-radius:20px;

    padding:35px;

    box-shadow:0 20px 50px rgba(0,0,0,.18);

}

h1{

    text-align:center;

    color:#222;

    margin-bottom:10px;

}

.subtitle{

    text-align:center;

    color:#666;

    margin-bottom:30px;

}

.drop-area{

    border:3px dashed #4f46e5;

    border-radius:15px;

    padding:45px 20px;

    text-align:center;

    cursor:pointer;

    transition:.3s;

    background:#f8fbff;

}

.drop-area:hover{

    background:#eef4ff;

}

.drop-area.active{

    background:#dcecff;

    border-color:#2563eb;

}

.upload-icon{

    font-size:60px;

    margin-bottom:15px;

}

.drop-area h2{

    margin-bottom:10px;

    color:#222;

}

.drop-area p{

    color:#777;

    margin-bottom:20px;

}

.browse-btn{

    background:#4f46e5;

    color:#fff;

    border:none;

    padding:12px 28px;

    border-radius:8px;

    cursor:pointer;

    font-size:16px;

    transition:.3s;

}

.browse-btn:hover{

    background:#372fcf;

}

.text-box{

    margin-top:25px;

}

.text-box label{

    display:block;

    margin-bottom:8px;

    font-weight:bold;

}

.text-box input{

    width:100%;

    padding:12px;

    border:1px solid #ddd;

    border-radius:8px;

    outline:none;

}

.text-box textarea{

    width:100%;

    padding:12px;

    border:1px solid #ddd;

    border-radius:8px;

    resize:vertical;

    outline:none;

}

.selected-area{

    margin-top:30px;

}

.selected-area h3{

    margin-bottom:15px;

}

#fileList{

    border:1px solid #ddd;

    border-radius:10px;

    max-height:250px;

    overflow:auto;

    background:#fafafa;

}

.empty{

    padding:20px;

    text-align:center;

    color:#888;

}

.file-item{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:12px 15px;

    border-bottom:1px solid #eee;

}

.file-left{

    display:flex;

    align-items:center;

    gap:12px;

}

.file-icon{

    font-size:28px;

}

.file-info{

    display:flex;

    flex-direction:column;

}

.file-name{

    font-weight:bold;

    word-break:break-all;

}

.file-size{

    font-size:13px;

    color:#666;

}

.remove-btn{

    background:#ef4444;

    color:#fff;

    border:none;

    padding:8px 14px;

    border-radius:6px;

    cursor:pointer;

}

.remove-btn:hover{

    background:#dc2626;

}

.progress-box{

    margin-top:30px;

}

.progress{

    width:100%;

    height:18px;

    background:#ddd;

    border-radius:20px;

    overflow:hidden;

}

.progress-bar{

    width:0%;

    height:100%;

    background:linear-gradient(90deg,#22c55e,#16a34a);

    transition:.2s;

}

#progressText{

    margin-top:10px;

    text-align:right;

    font-weight:bold;

}

.upload-btn{

    width:100%;

    margin-top:30px;

    border:none;

    background:#22c55e;

    color:#fff;

    padding:15px;

    border-radius:10px;

    cursor:pointer;

    font-size:18px;

    transition:.3s;

}

.upload-btn:hover{

    background:#15803d;

}

@media(max-width:768px){

.card{

padding:20px;

}

.drop-area{

padding:30px 15px;

}

.upload-icon{

font-size:45px;

}

.file-item{

flex-direction:column;

align-items:flex-start;

gap:10px;

}

.remove-btn{

width:100%;

}

.upload-btn{

font-size:16px;

}

}
.status-card{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:15px;

margin-top:20px;

}

.status-card div{

background:#f6f8fb;

padding:15px;

border-radius:10px;

font-weight:bold;

text-align:center;

box-shadow:0 2px 10px rgba(0,0,0,.08);

}

@media(max-width:768px){

.status-card{

grid-template-columns:1fr;

}

}

