body {
    background: #fdfcf7;
    font-family: Georgia, serif;
    color: #2e2e2e;
    margin: 0;
    background-image:url("images/wallpaperdreambbq.jpg");
    background-position: fixed;
    background-size: cover;
}

a { color: #6a4bc4; text-decoration: none; }
a:hover { text-decoration: underline; }

/* Layout container */
#layout {
    width: 900px;
    margin: 20px auto;
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,.1);
    border: 1px solid #ccc;
    display: flex;
    flex-direction: column;
}

/* Header */
#header {
    text-align: center;
    padding: 20px;
    border-bottom: 3px double #aaa;
    background: #f9f7ff;
}
#header h1 {
    margin: 0;
    font-size: 24px;
    font-family: 'Courier New', monospace;
}
#header .subtitle {
    margin: 5px 0 0;
    font-size: 13px;
    color: #777;
}

/* Wrapper */
#content-wrapper {
    display: flex;
}

/* Sidebar */
#sidebar {
    width: 250px;
    background: #f6f4ff;
    border-right: 1px solid #ddd;
    padding: 15px;
    font-family: Arial, sans-serif;
    font-size: 13px;
    overflow-y: auto;
    max-height: 600px;
}

.profile-card {
    text-align: center;
    margin-bottom: 20px;
}
.profile-img {
    border-radius: 50%;
    max-width: 120px;
    border: 2px solid #6a4bc4;
    margin-bottom: 10px;
}

.sidebar-widget {
    margin-bottom: 20px;
}
.sidebar-widget h3 {
    font-size: 14px;
    margin-bottom: 5px;
    padding-bottom: 3px;
    border-bottom: 1px dashed #ccc;
    color: #6a4bc4;
}
.sidebar-widget ul {
    list-style: none;
    padding: 0;
}
.sidebar-widget li {
    margin-bottom: 4px;
}

/* Calendar */
.calendar-box {
    font-size: 11px;
}
.calendar-box table {
    width: 100%;
    border-collapse: collapse;
}
.calendar-box th, .calendar-box td {
    border: 1px solid #ccc;
    text-align: center;
    padding: 2px;
}

/* Main */
#main {
    flex: 1;
    padding: 20px;
    overflow-y: auto;
    max-height: 600px;
}

.entry {
    margin-bottom: 30px;
}
.entry-title {
    font-size: 18px;
    color: #6a4bc4;
    margin: 0 0 5px;
}
.entry-meta {
    font-size: 12px;
    color: #777;
    margin-bottom: 10px;
}
.entry-content {
    line-height: 1.6;
    margin-bottom: 10px;
}
.entry-tags {
    font-size: 12px;
    color: #444;
}
.entry-divider {
    margin: 10px 0;
    text-align: center;
}
.entry-divider img {
    max-width: 200px;
}

/* Footer */
#footer {
    text-align: center;
    padding: 10px;
    border-top: 3px double #aaa;
    background: #f9f7ff;
}