*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:
-apple-system,
BlinkMacSystemFont,
"Segoe UI",
sans-serif;
}

body{

background:
linear-gradient(
135deg,
#ffe4ec,
#fff5f8
);

min-height:100vh;

padding:40px 20px;

}

.container{

max-width:900px;

margin:auto;

}

.card{

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

backdrop-filter:
blur(16px);

border-radius:30px;

padding:40px;

box-shadow:
0 10px 40px
rgba(255,120,160,.12);

}

h1{

text-align:center;

font-size:42px;

color:#ff4f8b;

margin-bottom:12px;

}

.sub{

text-align:center;

color:#888;

margin-bottom:35px;

font-size:17px;

}

#dropZone{

border:3px dashed #ffc5d9;

border-radius:28px;

padding:55px 30px;

background:#fffafd;

text-align:center;

cursor:pointer;

transition:.25s;

}

#dropZone:hover{

transform:translateY(-2px);

border-color:#ff79aa;

}

.icon{

font-size:72px;

margin-bottom:18px;

}

h2{

font-size:28px;

color:#444;

margin-bottom:10px;

}

.upload-box p{

color:#999;

margin-bottom:24px;

}

#chooseBtn{

height:58px;

padding:0 34px;

border:none;

border-radius:18px;

background:
linear-gradient(
135deg,
#ff6b9d,
#ff9dbc
);

color:#fff;

font-size:17px;

font-weight:700;

cursor:pointer;

transition:.2s;

}

#chooseBtn:hover{

transform:translateY(-2px);

}

.progress{

height:16px;

background:#ffe4ee;

border-radius:999px;

overflow:hidden;

margin-top:28px;

}

#bar{

width:0%;

height:100%;

background:
linear-gradient(
90deg,
#ff5f95,
#ff89b3
);

transition:.25s;

}

.loading-text{

margin-top:14px;

text-align:center;

color:#777;

}

#result{

margin-top:35px;

display:grid;

gap:20px;

}

.result-item{

background:#fff8fb;

padding:24px;

border-radius:22px;

border:1px solid #ffd9e6;

}

.result-item img{

max-width:180px;

border-radius:16px;

margin-bottom:18px;

display:block;

}

.linkbox{

display:flex;

gap:12px;

margin-top:10px;

}

.linkbox input{

flex:1;

height:48px;

padding:0 14px;

border:none;

border-radius:14px;

background:#fff;

outline:none;

}

.copyBtn{

width:95px;

border:none;

border-radius:14px;

background:#ff6b9d;

color:#fff;

font-weight:700;

cursor:pointer;

}

@media(max-width:768px){

.card{
padding:24px;
}

h1{
font-size:32px;
}

#dropZone{
padding:35px 18px;
}

}