/* Core layout */
.rkn-main-grid { display:grid; grid-template-columns: 25% 50% 25%; gap:20px; padding:40px; min-height:80vh; }
@media(max-width:900px){ .rkn-main-grid { grid-template-columns: 1fr; padding:20px; } .rkn-col.left-sidebar, .rkn-col.right-sidebar{ display:none; } }

.rkn-header{ padding:20px 40px; border-bottom:1px solid #151515; }
.logo{ display:flex; align-items:center; gap:12px; }
.logo img{ width:56px; height:56px; object-fit:cover; filter:grayscale(20%); }
.site-title{ font-family: 'Cursive', Georgia; font-size:18px; color:#cdb79a; }

/* Overlay */
.rkn-overlay{ position:fixed; inset:0; display:flex; align-items:center; justify-content:center; background: rgba(2,2,4,0.95); z-index:9999; }
.rkn-overlay-inner{ text-align:center; }
.rkn-overlay h1{ font-size:48px; font-family: Georgia, 'Times New Roman', serif; color:#e6dccf; margin-bottom:12px; animation: pulse 2s infinite; }
@keyframes pulse{ 0%{ transform:scale(1); opacity:1 }50%{ transform:scale(1.07); opacity:.85 }100%{ transform:scale(1); opacity:1 } }
.rkn-btn{ background:transparent; border:1px solid #cbb49a; color:#cbb49a; padding:10px 18px; cursor:pointer; border-radius:8px; font-size:16px; }
.rkn-btn:hover{ transform:translateY(-2px); }

/* Welcome board */
.rkn-welcome-board{ text-align:center; margin-bottom:18px; }
.rkn-welcome-board img{ width:120px; height:auto; }

/* Article list */
.rkn-article-list{ margin-top:12px; }
.rkn-article{ opacity:0; transform:translateY(12px); transition: all .6s ease; padding:12px 0; border-radius:6px; }
.rkn-article.visible{ opacity:1; transform:none; }
.rkn-article-link{ font-size:18px; font-weight:600; display:inline-block; }
.rkn-candle-sep{ text-align:center; transform:rotate(-4deg); margin-bottom:6px; color:#b9a88b; }

/* Marquee */
.marquee{ white-space:nowrap; overflow:hidden; border-top:1px solid #111; border-bottom:1px solid #111; padding:8px 0; margin:16px 0; }
.marquee .marq-item{ display:inline-block; padding:0 28px; font-style:italic; }

/* Footer */
.rkn-footer{ display:flex; gap:20px; padding:28px 40px; border-top:1px solid #151515; }
.rkn-footer .footer-col{ flex:1; }
#rkn-back-to-top{ position:fixed; right:18px; bottom:22px; padding:10px 12px; border-radius:6px; display:none; }

/* Small tweaks */
.meta{ color:#bfb7a8; font-size:13px; margin-top:6px; }
