* {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}
body{
    margin:0;
    padding:0;
    background:#efefef;
    font-family:Arial, Helvetica, sans-serif;
}
.main{
    width:100%;
    max-width:100%;
    margin:15px auto;
    background:#fff;
    border:1px solid #cfcfcf;
    box-shadow: 0 0 8px rgba(0,0,0,0.1);
}
.topbar{
    background:#004d25;
    color:#fff;
    padding:8px 18px;
    position:relative;
    min-height:65px;
}
.logo{
    position:absolute;
    left:18px;
    top:7px;
}
.logo img{
    width:58px;
    border-radius:50%;
    background:#fff;
    padding:3px;
}
.heading{
    text-align:center;
    line-height:1.3;
    margin-left:78px;
}
.heading h2{
    margin:0;
    font-size:21px;
    font-weight:bold;
    letter-spacing:1px;
}
.heading h1{
    margin:2px 0;
    font-size:16px;
    font-weight:bold;
    color:#c8e6c9;
}
.heading p{
    margin:0;
    font-size:12.5px;
    color:#e0e0e0;
}
.searchbox{
    background:#d8f0d2;
    padding:9px 17px;
    display:flex;
    gap:10px;
    align-items:center;
    border-bottom:1px solid #ccc;
}
.searchbox label{
    font-weight:bold;
    font-size:15.5px;
    color:#004d25;
}
.searchbox input{
    flex:1;
    padding:6px 9px;
    border:2px solid #004d25;
    border-radius:4px;
    font-size:14.5px;
    background:#fff;
    transition: border-color 0.2s;
}
.searchbox input:focus{
    border-color:#ffc107;
    outline:none;
    box-shadow: 0 0 3px rgba(255,193,7,0.5);
}
.searchbox button{
    background:#004d25;
    color:#fff;
    border:none;
    padding:6px 21px;
    border-radius:4px;
    cursor:pointer;
    font-size:13.5px;
    font-weight:bold;
    transition: background 0.2s;
}
.searchbox button:hover{
    background:#006433;
}
.box{
    border:2px solid #004d25;
    border-radius:6px;
    margin:11px 17px;
    overflow:hidden;
}
.box-title{
    font-size:17.5px;
    padding:6px 14px;
    font-weight:bold;
    background:#e8f5e9;
    color:#004d25;
    border-bottom:1px solid #004d25;
}
.details{
    padding:9px 14px 11px 14px;
    position:relative;
    min-height:135px;
}
.left, .right{
    width:48%;
    float:left;
}
.right{
    margin-left:4%;
}
.row{
    margin-bottom:4.5px;
    font-size:13.5px;
    line-height:1.3;
}
.row strong{
    display:inline-block;
    width:138px;
    color:#004d25;
}
.photo{
    position:absolute;
    right:14px;
    top:9px;
}
.photo img{
    width:88px;
    height:108px;
    object-fit:cover;
    border:2px solid #004d25;
    background:#f0f0f0;
}
.clear{
    clear:both;
}
.statusbox{
    padding:9px 17px;
    font-size:15.5px;
}
.blocked{
    color:#c00000;
    font-size:23px;
    font-weight:bold;
}
.active{
    color:#004d25;
    font-size:23px;
    font-weight:bold;
}
.reason, .unblock{
    padding:11px 17px;
    font-size:13.5px;
    line-height:1.5;
    border-left: 8px solid;
    margin: 11px 17px;
    border-radius: 4px;
}
.reason{
    background:#fff3cd;
    border-left-color:#ffc107;
}
.unblock{
    background:#e8f5e9;
    border-left-color:#004d25;
}
.reason strong, .unblock strong{
    display:block;
    font-size:17.5px;
    margin-bottom:5px;
    color:#004d25;
}
.buttons{
    text-align:center;
    padding:14px 19px;
    border-top:1px solid #ddd;
}
.buttons button{
    background:#004d25;
    color:#fff;
    border:none;
    padding:8.5px 15px;
    margin:4.5px;
    border-radius:5px;
    font-size:13.5px;
    cursor:pointer;
    font-weight:bold;
    transition: background 0.2s;
}
.buttons button:hover{
    background:#00361b;
}
.footer{
    background:#004d25;
    color:#fff;
    text-align:center;
    padding:7px;
    font-size:11.5px;
    letter-spacing:0.5px;
}
@media print{
    @page {
        size: A4 landscape;
        margin: 5mm;
    }
    body{
        background:#fff;
        margin:0;
        padding:0;
    }
    .main{
        width:100%;
        margin:0;
        border:none;
        box-shadow:none;
    }
    .buttons{
        display:none;
    }
    .topbar{
        padding:7px 15px;
        min-height:58px;
    }
    .logo img{
        width:54px;
    }
    .heading h2{
        font-size:19.5px;
    }
    .heading h1{
        font-size:15.5px;
    }
    .heading p{
        font-size:11.5px;
    }
    .searchbox{
        padding:7px 14px;
    }
    .box{
        margin:9px 14px;
    }
    .details{
        padding:7px 11px;
    }
    .row{
        font-size:12.5px;
    }
    .statusbox{
        font-size:14.5px;
    }
    .blocked, .active{
        font-size:21px;
    }
    .footer{
        font-size:11px;
    }
}