*{box-sizing:border-box}

body{
    margin:0;
    background:#090a0c;
    color:#eee;
    font-family:Arial,Helvetica,sans-serif;
}

.wrap{
    max-width:850px;
    margin:auto;
    padding:28px 18px 60px;
}

header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-bottom:1px solid #444;
    padding-bottom:18px;
    margin-bottom:24px;
}

.admin-brand{
    display:block;
    line-height:0;
}

.admin-logo{
    display:block;
    width:150px;
    height:auto;
    max-height:55px;
    object-fit:contain;
    object-position:left center;
}

.login-logo{
    width:170px;
    margin:0 auto 10px;
    object-position:center;
}

.header-links{
    display:flex;
    gap:7px;
    align-items:center;
}

a{
    color:#d7e8ff;
}

.compose{
    background:#f2f2ee;
    color:#111;
    padding:22px;
    border-radius:8px;
    margin-bottom:30px;
}

h2{
    font-weight:400;
    margin-top:0;
}

input,textarea{
    display:block;
    width:100%;
    padding:12px;
    margin:10px 0;
    border:1px solid #bbb;
    border-radius:4px;
    font:inherit;
}

textarea{
    resize:vertical;
}

.file-label{
    display:block;
    margin:12px 0;
}

.file-label input{
    margin:7px 0 0;
    padding:8px;
}

button{
    background:#111;
    color:#fff;
    border:0;
    border-radius:4px;
    padding:11px 18px;
    cursor:pointer;
}

button:hover{
    opacity:.88;
}

.ok{
    background:#d8f3d8;
    color:#153b15;
    padding:12px;
    border-radius:5px;
    margin-bottom:18px;
}

.error{
    background:#5b1e24;
    color:#ffd9dc;
    padding:12px;
    border-radius:5px;
    margin-bottom:18px;
}

.login-panel{
    max-width:430px;
    margin:80px auto;
    padding:30px;
    text-align:center;
    background:#111317;
    border:1px solid #333;
    border-radius:8px;
}

.login-panel input{
    background:#fff;
    color:#111;
}

.login-panel button{
    width:100%;
}

.postrow{
    background:#15171a;
    border:1px solid #333;
    border-radius:6px;
    margin:8px 0;
    overflow:hidden;
}

.postrow summary{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:15px;
    padding:13px;
    cursor:pointer;
    list-style:none;
}

.postrow summary::-webkit-details-marker{
    display:none;
}

.postrow summary:hover{
    background:#1b1d21;
}

.post-info b{
    display:block;
}

.post-info small{
    display:block;
    color:#aaa;
    margin-top:4px;
}

.edit-label{
    color:#e8d98d;
    font-size:13px;
    white-space:nowrap;
}

.edit-box{
    padding:0 13px 15px;
    border-top:1px solid #333;
}

.edit-box input,
.edit-box textarea{
    background:#f5f5f1;
    color:#111;
}

.current-image{
    margin:15px 0;
}

.current-image span{
    display:block;
    color:#bbb;
    font-size:12px;
    margin-bottom:7px;
}

.current-image img{
    display:block;
    max-width:220px;
    max-height:150px;
    object-fit:cover;
    border-radius:4px;
}

.check-label{
    display:flex;
    align-items:center;
    gap:8px;
    color:#ddd;
    font-size:13px;
    margin:10px 0 15px;
}

.check-label input{
    width:auto;
    margin:0;
}

.edit-actions{
    margin-top:15px;
}

.delete-form{
    margin-top:12px;
}

.danger{
    background:#6f2020;
}

.empty{
    color:#aaa;
}

@media(max-width:600px){
    .wrap{
        padding:20px 14px 45px;
    }

    header{
        align-items:flex-start;
        gap:15px;
    }

    .admin-logo{
        width:120px;
        max-height:45px;
    }

    .header-links{
        font-size:12px;
        flex-wrap:wrap;
        justify-content:flex-end;
    }

    .compose{
        padding:16px;
    }

    .postrow summary{
        align-items:flex-start;
    }
}
.stats-box {
    display: flex;
    gap: 15px;
    margin: 25px 0;
}

.stats-box > div {
    flex: 1;
    background: #151619;
    border: 1px solid #292a2e;
    border-radius: 8px;
    padding: 18px 22px;
}

.stats-box strong {
    display: block;
    color: #f0d86a;
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 5px;
}

.stats-box span {
    color: #aaa;
    font-size: 14px;
}

@media (max-width: 600px) {
    .stats-box {
        flex-direction: column;
    }
}