* { box-sizing: border-box; font-family: "Noto Sans Lao", "Phetsarath OT", Tahoma, sans-serif; }

body {
    background: #f2f2f2;
    display: flex;
    justify-content: center;
    padding: 40px 15px;
    margin: 0;
}

.panel {
    background: #3d7bc4;
    border: 1px solid #2f5f9c;
    border-radius: 4px;
    width: 380px;
    padding: 25px;
}

.field {
    display: flex;
    margin-bottom: 12px;
}

.field label {
    background: #ffffff;
    border: 1px solid #ccc;
    padding: 10px 14px;
    width: 45%;
    color: #333;
}

.field input {
    width: 55%;
    border: 1px solid #ccc;
    border-left: none;
    padding: 10px 14px;
    font-size: 14px;
}

.btn-login {
    width: 100%;
    background: #6fa8d8;
    border: 1px solid #5590c4;
    color: #fff;
    font-size: 20px;
    padding: 12px;
    border-radius: 4px;
    cursor: pointer;
    margin-top: 8px;
}

.btn-login:hover { background: #5f98c8; }

.error-msg {
    background: #ffe0e0;
    color: #a10000;
    border: 1px solid #ffb3b3;
    padding: 8px 12px;
    border-radius: 3px;
    margin-bottom: 14px;
    text-align: center;
}

/* menu page */
.header-row {
    display: flex;
    margin-bottom: 12px;
}
.header-row .cell {
    background: #ffffff;
    border: 1px solid #ccc;
    padding: 10px 14px;
    width: 50%;
    text-align: center;
    font-weight: bold;
    color: #333;
}

.menu-item {
    display: block;
    background: #ffffff;
    border: 1px solid #ccc;
    padding: 12px 14px;
    margin-bottom: 10px;
    color: #222;
    text-decoration: none;
    border-radius: 2px;
}
.menu-item:hover { background: #eef4fb; }

.menu-item.highlight {
    background: #f5a623;
    color: #fff;
    font-weight: bold;
}
.menu-item.highlight:hover { background: #e0951a; }
