body {
    margin: 0;
    background: #d7d7d7;
    color: #333;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 11px;
}
#wrapper {
    width: 960px;
    margin: 12px auto;
    background: #fff;
    border: 1px solid #aaa;
}
.header {
    height: 72px;
    border-bottom: 3px solid #173b56;
    background: linear-gradient(#ffffff, #eeeeee);
}
.nav {
    height: 27px;
    background: #173b56;
    border-top: 1px solid #31566f;
    border-bottom: 1px solid #102b3e;
}
.nav a {
    display: inline-block;
    padding: 7px 13px;
    color: #fff;
    text-decoration: none;
    font-size: 10px;
    font-weight: bold;
    border-right: 1px solid #42647a;
}
.nav a:hover {
    background: #31566f;
}
.content {
    display: grid;
    grid-template-columns: 650px 290px;
    gap: 8px;
    padding: 8px;
}
.panel {
    border: 1px solid #c4c4c4;
    background: #fff;
    margin-bottom: 8px;
}
.panel-title {
    padding: 5px 7px;
    color: #fff;
    font-size: 11px;
    font-weight: bold;
    background: linear-gradient(#315c78, #173b56);
    border-bottom: 2px solid #102b3e;
}
.panel-body {
    padding: 7px;
}
a {
    color: #164f80;
    text-decoration: underline;
}
a:hover {
    color: #8b0000;
}
.news-item {
    padding: 6px 0;
    border-bottom: 1px solid #ddd;
}
.news-item img {
    width: 75px;
    height: 55px;
    object-fit: cover;
    float: left;
    margin-right: 7px;
    border: 1px solid #aaa;
}
.news-item h3 {
    margin: 0 0 3px;
    font-size: 12px;
    color: #17496b;
}
.news-item p {
    margin: 0;
    font-size: 10px;
    line-height: 1.35;
}
.sidebar {
    border-left: 1px solid #ccc;
    padding-left: 7px;
}
.section {
    margin-bottom: 10px;
}
.section-title {
    padding: 4px 6px;
    background: #e9f0f4;
    border-top: 2px solid #244d68;
    border-bottom: 1px solid #aebbc3;
    color: #244d68;
    font-weight: bold;
    font-size: 11px;
}
input,
select,
button {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 10px;
    border: 1px solid #aaa;
    background: #fff;
}
button {
    background: linear-gradient(#fff, #ddd);
    padding: 2px 8px;
    cursor: pointer;
}

/* ===== ADDITIONS: elements used in the HTML that weren't in the provided CSS ===== */

.header table {
    width: 100%;
    height: 72px;
    border-collapse: collapse;
}
.logo-block {
    white-space: nowrap;
    padding: 0 10px;
}
.logo-block .zeke {
    font-size: 30px;
    font-weight: bold;
    color: #173b56;
    letter-spacing: -1px;
}
.logo-block .dd {
    font-size: 13px;
    color: #8b0000;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.logo-block .tag {
    font-size: 10px;
    color: #666;
    font-style: italic;
}
.header-right {
    text-align: right;
    vertical-align: middle;
    font-size: 10px;
    color: #555;
    padding: 0 10px;
}
.header-right input[type=text] {
    width: 130px;
}
.blink-tag {
    display: inline-block;
    background: #8b0000;
    color: #fff;
    font-weight: bold;
    font-size: 9px;
    padding: 1px 4px;
    margin-left: 4px;
}
.nav a.current {
    background: #0c2233;
}
.ticker {
    background: #fce8c8;
    border-bottom: 1px solid #e0c88f;
    padding: 4px 10px;
    font-size: 10px;
    color: #5a4620;
}
.ticker b {
    color: #8b0000;
}
.featured {
    display: grid;
    grid-template-columns: 230px 1fr;
    gap: 10px;
    border-bottom: 1px solid #ddd;
    padding-bottom: 8px;
    margin-bottom: 8px;
}
.featured-img {
    width: 230px;
    height: 165px;
    background: repeating-linear-gradient(45deg,#222,#222 10px,#000 10px,#000 20px);
    border: 3px solid #000;
    color: #fff;
    font-size: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-sizing: border-box;
    padding: 8px;
}
.featured h1 {
    font-size: 20px;
    margin: 0 0 6px;
    color: #8b0000;
    line-height: 1.15;
}
.featured .subhead {
    font-size: 12px;
    color: #17496b;
    font-weight: bold;
    margin-bottom: 5px;
}
.featured p {
    font-size: 11px;
    line-height: 1.5;
    margin: 0 0 6px;
}
.byline {
    font-size: 9px;
    color: #777;
    font-style: italic;
}
.news-item {
    overflow: hidden;
}
.news-item:last-child { border-bottom: none; }
.news-item .thumb {
    width: 75px;
    height: 55px;
    float: left;
    margin-right: 7px;
    border: 1px solid #aaa;
    background: #444;
    color: #ccc;
    font-size: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-sizing: border-box;
    padding: 2px;
}
.tag-flag {
    display: inline-block;
    font-size: 8px;
    font-weight: bold;
    color: #fff;
    background: #8b0000;
    padding: 1px 4px;
    margin-right: 4px;
    vertical-align: middle;
}
.tag-flag.confirmed { background: #2e6b2e; }
.tag-flag.unresolved { background: #8b0000; }
.tag-flag.debunked { background: #555; }
.tab-list {
    padding: 6px 8px;
}
.tab-list a {
    display: block;
    font-size: 10px;
    padding: 3px 0;
    border-bottom: 1px dotted #ddd;
    text-decoration: none;
}
.tab-list a:hover { color: #8b0000; }
.side-list {
    margin: 0;
    padding: 0 0 0 16px;
    font-size: 10px;
    line-height: 1.6;
}
.side-list li { margin-bottom: 2px; }
.poll {
    font-size: 10px;
}
.poll label {
    display: block;
    margin: 3px 0;
}
.poll button {
    margin-top: 5px;
}
.hitcounter {
    background: #000;
    color: #0f0;
    text-align: center;
    padding: 6px;
    font-size: 16px;
    letter-spacing: 3px;
    border: 2px inset #666;
    margin-bottom: 4px;
}
.webring {
    text-align: center;
    font-size: 9px;
    padding: 4px;
}
.webring .buttons {
    display: flex;
    justify-content: center;
    gap: 4px;
    margin: 5px 0;
}
.webring .btn88 {
    width: 88px;
    height: 31px;
    background: linear-gradient(#173b56,#0c2233);
    color: #fff;
    font-size: 8px;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border: 1px solid #000;
}
.guestbook-entry {
    font-size: 10px;
    border-bottom: 1px dotted #ccc;
    padding: 4px 0;
}
.guestbook-entry b { color: #17496b; }
.guestbook-entry .gb-date { color: #999; font-size: 9px; }
.section-row {
    display: grid;
    grid-template-columns: 130px 1fr 1fr;
    gap: 10px;
    padding: 10px;
    border-top: 3px solid #173b56;
}
.section-row .thumb-big {
    width: 130px;
    height: 95px;
    background: #333;
    color: #ccc;
    font-size: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-sizing: border-box;
    padding: 5px;
    border: 1px solid #999;
}
.section-row h2 {
    grid-column: 1 / span 3;
    font-size: 13px;
    margin: 0 0 6px;
    color: #173b56;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.section-row ul {
    margin: 0;
    padding-left: 15px;
    font-size: 10px;
    line-height: 1.6;
}
.footer {
    background: #173b56;
    color: #bcd0dd;
    font-size: 9px;
    padding: 12px;
    text-align: center;
}
.footer a {
    color: #fff;
}
.footer .buttons-row {
    margin-top: 8px;
    display: flex;
    justify-content: center;
    gap: 6px;
    flex-wrap: wrap;
}
.footer .badge {
    background: #0c2233;
    border: 1px solid #31566f;
    padding: 3px 6px;
    font-size: 8px;
    color: #cde;
}

/* ===== DANGER LEVELS ===== */
.danger-flag {
    display: inline-block;
    font-size: 8px;
    font-weight: bold;
    color: #fff;
    padding: 1px 4px;
    margin-right: 4px;
    vertical-align: middle;
    background: #666; /* default/fallback */
}
.danger-flag.offputting { background: #8a6d1f; }
.danger-flag.terrifying { background: #6b0f0f; }
.danger-flag.disgusting { background: #3d6b1f; }
.danger-flag.anomalous  { background: #4a1f6b; }

/* ===== ZEKE'S NOTES (first thoughts / closing opinion) ===== */
.zeke-note {
    background: #fbf6e9;
    border: 1px dashed #c9b98a;
    padding: 8px;
    margin-bottom: 10px;
    font-size: 11px;
    line-height: 1.5;
}
.zeke-note-label {
    font-size: 9px;
    font-weight: bold;
    color: #8a6d1f;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}
.zeke-note p {
    margin: 0;
    font-style: italic;
    color: #444;
}
.zeke-note.closing-thoughts {
    background: #eef2f6;
    border-color: #a9bccb;
}
.zeke-note.closing-thoughts .zeke-note-label {
    color: #17496b;
}