body{
font-family:Segoe UI;
background:#0f172a;
margin:0;
padding:20px;
color:white;
}

.app{
max-width:1000px;
margin:auto;
}

.form-area{
background:#1e293b;
padding:20px;
border-radius:10px;
margin-bottom:20px;
}

input,select{
width:100%;
padding:10px;
margin:5px 0;
border:none;
border-radius:6px;
}

button{
padding:10px;
background:#22c55e;
border:none;
border-radius:6px;
color:white;
cursor:pointer;
}

/* SLIP */
.slip{
background:white;
color:#111;
padding:30px;
border-radius:12px;
width:800px;
margin:auto;
}

/* HEADER */
.header{
display:flex;
justify-content:space-between;
}

.logo{
width:120px;
height:60px;
object-fit:contain;
}

.company{
text-align:right;
font-size:12px;
}

/* TITLE */
.title{
text-align:center;
margin:15px 0;
}

/* INFO */
.info{
display:flex;
justify-content:space-between;
margin-bottom:20px;
}

/* GRID */
.grid{
display:flex;
gap:40px;
}

.box{
flex:1;
}

.box p{
display:flex;
justify-content:space-between;
border-bottom:1px solid #ddd;
padding:5px 0;
}

.bold{
font-weight:bold;
}

/* TOTAL */
.total{
display:flex;
justify-content:space-between;
margin-top:20px;
}

/* SIGN */
.sign{
display:flex;
justify-content:space-between;
margin-top:40px;
}

/* FOOTER */
.footer{
text-align:center;
margin-top:20px;
font-size:12px;
color:#666;
}

/* BUTTON */
.btn{
margin-top:20px;
}

/* MOBILE */
@media(max-width:768px){
.grid{
flex-direction:column;
}
.info{
flex-direction:column;
}
}

.container{
max-width:900px;
margin:auto;
}

.card{
background:#1e293b;
padding:20px;
border-radius:10px;
margin-bottom:20px;
}

.logo-preview{
width:120px;
margin-top:10px;
}

.center{
text-align:center;
}

.grid{
display:flex;
gap:20px;
}

.total{
margin-top:20px;
font-weight:bold;
}

.logo-box{
width:140px;
height:70px;
display:flex;
align-items:center;
}

.salary-box{
display:flex;
gap:40px;
margin-top:20px;
}

.col{
flex:1;
}

.item{
display:flex;
justify-content:space-between;
padding:6px 0;
border-bottom:1px solid #eee;
font-size:14px;
}

.total-box{
display:flex;
justify-content:space-between;
align-items:center;
margin-top:25px;
}

.qr img{
width:100px;
}

.ttd{
width:120px;
margin-top:10px;
}

.sign{
margin-top:50px;
display:flex;
justify-content:space-between;
text-align:center;
}

.title{
text-align:center;
margin:20px 0;
}

.info{
display:flex;
justify-content:space-between;
margin-bottom:20px;
}

/* GRID SALARY */
.salary-box{
display:flex;
gap:40px;
margin-top:20px;
}

.col{
flex:1;
}

.col h4{
margin-bottom:10px;
border-bottom:2px solid #000;
padding-bottom:5px;
}

/* ROW FIX */
.row{
display:flex;
justify-content:space-between;
padding:8px 0;
border-bottom:1px solid #eee;
font-size:14px;
}

/* TOTAL LINE */
.total-line{
font-weight:bold;
border-top:2px solid #000;
margin-top:10px;
padding-top:10px;
}

/* TOTAL */
.total-box{
display:flex;
justify-content:space-between;
align-items:center;
margin-top:30px;
}

.total{
text-align:right;
font-size:16px;
}

/* QR */
.qr img{
width:100px;
}

/* SIGN */
.sign{
margin-top:60px;
display:flex;
justify-content:space-between;
text-align:center;
}

/* TTD */
.ttd{
width:120px;
margin-top:10px;
}

/* INFO */
.info{
margin-bottom:20px;
}

/* TITLE */
.title{
text-align:center;
margin:20px 0;
}

