*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial,sans-serif;
}

body{
    min-height:100vh;
    background:#edf2f7;
    color:#1f2937;
}

.kernel-page{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
}

.kernel-card{
    width:min(900px,96%);
    background:white;
    border-radius:28px;
    padding:44px;
    box-shadow:0 24px 60px rgba(0,0,0,.14);
}

.badge{
    display:inline-block;
    background:#e0f2fe;
    color:#075985;
    padding:8px 14px;
    border-radius:999px;
    font-weight:bold;
    margin-bottom:20px;
}

h1{
    color:#1f4f87;
    margin-bottom:10px;
}

h2{
    color:#1f2937;
    margin:34px 0 16px;
    font-size:20px;
}

p{
    color:#6b7280;
    margin-bottom:28px;
}

.status-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}

.checks-grid{
    grid-template-columns:repeat(3,1fr);
}

.status-grid div,
.info-list div{
    background:#f8fafc;
    border-radius:18px;
    padding:18px;
}

.info-list{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
}

.info-list div{
    display:grid;
    grid-template-columns:160px 1fr;
    gap:12px;
    align-items:start;
}

strong{
    display:block;
    color:#1f4f87;
    margin-bottom:8px;
}

.info-list strong{
    margin-bottom:0;
}

span{
    color:#4b5563;
    word-break:break-word;
}

.ok{
    color:#15803d;
    font-weight:bold;
}

.error{
    color:#b91c1c;
    font-weight:bold;
}

.error-box{
    margin:18px 0;
    background:#fee2e2;
    color:#991b1b;
    padding:16px;
    border-radius:16px;
}

.login-form{
    background:#f8fafc;
    padding:22px;
    border-radius:18px;
}

.login-form label{
    display:block;
    color:#1f4f87;
    font-weight:bold;
    margin-bottom:8px;
}

.login-form input{
    width:100%;
    padding:14px;
    border:1px solid #cbd5e1;
    border-radius:12px;
    margin-bottom:16px;
    font-size:16px;
}

.login-form button{
    border:none;
    background:#1f4f87;
    color:white;
    padding:14px 24px;
    border-radius:12px;
    font-weight:bold;
    cursor:pointer;
}

.login-form button:hover{
    background:#173b66;
}

@media(max-width:800px){
    .status-grid,
    .checks-grid{
        grid-template-columns:1fr;
    }

    .info-list div{
        grid-template-columns:1fr;
    }

    .kernel-card{
        padding:30px;
    }
}