/* 𝕊𝕋𝕐𝕃𝕀ℕ𝔾 */

html {
font-size: 12px; /* 𝒟𝑒𝒻𝒶𝓊𝓁𝓉 𝒷𝒶𝓈𝑒 𝒻𝑜𝓃𝓉 𝓈𝒾𝓏𝑒 */
}
  
/* 𝕃𝔸ℝ𝔾𝔼 𝕊ℂℝ𝔼𝔼ℕ𝕊 */
@media (min-width: 1200px) {
html {
font-size: 14px;
}
}

/* 𝕊𝕄𝔸𝕃𝕃 𝕊ℂℝ𝔼𝔼ℕ𝕊 */
@media (max-width: 600px) {
html {
font-size: 10px;
}
}
  
@font-face {
font-family: 'Civette';
src: url('fonts/Civette-Regular.otf') format('opentype');
font-weight: normal;
font-style: normal;
}

@font-face {
font-family: 'Civette';
src: url('fonts/Civette-Italic.otf') format('opentype');
font-weight: normal;
font-style: italic;
}

body {
color: black;
font-family: 'Civette';
margin: 0;
padding: 0;
background-color: white;
}

a {
color: gainsboro;
text-decoration: none;
}

a:hover {
text-decoration: underline;
}

/* 𝕎ℝ𝔸ℙℙ𝔼ℝ */
#wrapper {
width: 90%;
max-width: 1350px;
margin: 10px auto;
padding: 20px;
background-color: transparent;
border: 3px solid transparent;
}

/* ℍ𝔼𝔸𝔻𝔼ℝ */
header {
text-align: center;
box-sizing: border-box;
padding: 5px 0;
width: 100%;
background-color: transparent;
border-bottom: 3px solid transparent;
margin-bottom: 5px;
position: relative;
}

header h1 {
font-size: 3.5em;
font-family: 'Civette';
color: white;
text-shadow:
-2px -2px 0 black,
2px -2px 0 black,
-2px 2px 0 black,
2px 2px 0 black,
0 -2px 0 black,
0 2px 0 black,
-2px 0 0 black,
2px 0 0 black; 
margin: 0;
letter-spacing: 5px;
display: inline-block;
}

header p {
font-size: 2em;
font-family: 'Civette';
color: black;
letter-spacing: 10px;
margin-top: 10px;
}

/* 𝔾ℝ𝕀𝔻 𝕊𝔼ℂ𝕋𝕀𝕆ℕ */
.grid-container {
display: grid;
grid-template-columns: auto auto auto;
gap: 39px;
background-color: transparent;
padding: 20px;
margin-bottom: 20px;
}

.grid-container h1 {
font-size: 2.1em;
font-family: 'Civette';
color: black;
text-shadow: 1px 1px 0px white, 2px 2px 0px aliceblue;
}

.grid-container > div {
background-color: snow;
padding: 20px 20px;
font-size: 1.2em;
color: black;
font-family: 'Civette';
}

/* Navigation Menu Box */
.item1 {
grid-column-start: 1;
grid-column-end: 2;
grid-row-start: 1;
grid-row-end: 3;
background: linear-gradient(to bottom, #fef3f1, #efdbda);
border: 2px solid #fff;
border-radius: 8px;
padding: 10px;
}

/* Navigation Menu */
.nav-menu {
list-style-type: none;
padding: 0;
margin: 0;
text-align: center;
}

.nav-menu li {
margin: 8px 0;
}

.nav-menu a {
text-decoration: none;
color: #efdbda;
font-size: 16px;
display: block;
width: auto;
padding: 8px 15px;
background-color: #fff;
border: 2px solid #fff;
border-radius: 6px;
margin: 0 auto;
text-align: center;
font-family: 'Civette';
transition: background-color 0.3s ease;
}

/* Hover Effect */
.nav-menu a:hover,
.nav-menu a.current-page {
background-color: #efdbda;
color: #fff;
}

/* Center Column (Blog Posts) */
.item2 {
grid-column-start: 2;
grid-column-end: 5;
grid-row-start: 1;
grid-row-end: 6;
background: linear-gradient(to bottom, #fef3f1, #efdbda);
border: 2px solid #fff;
border-radius: 8px;
padding: 20px;
box-sizing: border-box;
overflow: hidden;
max-height: 65vh;
}

/* Inner white box for article content */
.inner-box {
width: 100%;
height: 100%;
overflow-y: auto;
background-color: #fff;
border-radius: 6px;
padding: 15px;
padding-top: 30px; /* Add padding to avoid overlap with the title */
box-sizing: border-box;
position: relative;
}

/* Scrollbar for Inner Box */
.inner-box::-webkit-scrollbar {
width: 12px;
}

.inner-box::-webkit-scrollbar-track {
background: transparent;
}

.inner-box::-webkit-scrollbar-thumb {
background-color: #fef3f1;
border-radius: 10px;
border: 1px solid #fef3f1;
background-clip: padding-box;
}

/* Firefox Custom Scrollbar */
.inner-box {
scrollbar-width: thin;
scrollbar-color: #fef3f1 transparent;
}

/* 𝕍𝕀𝔾ℕ𝔼𝕋𝕋𝔼 𝔼𝔽𝔽𝔼ℂ𝕋 */
.item2 .inner-box::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 5;
background: 
linear-gradient(to top, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0) 80px),      /* bottom fade */
linear-gradient(to bottom, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0) 80px),   /* top fade */
linear-gradient(to right, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 60px), /* left fade */
linear-gradient(to left, rgba(255, 255, 255, 0.8) 0%,  rgba(255, 255, 255, 0) 60px);  /* right fade */
background-repeat: no-repeat;
background-size: 100% 80px, 100% 80px, 60px 100%, 60px 100%;
background-position: bottom, top, left, right;
animation: soft-pulse 2.5s ease-in-out infinite;
}  

@keyframes soft-pulse {
0%, 100% {
opacity: 0;
}
50% {
opacity: 1;
}
}

.item2 .inner-box {
width: 100%;
height: calc(100% - 40px); /* Adjust height to account for padding or title */
overflow-y: auto;
background-color: #fff;
border-radius: 6px;
padding: 15px;
box-sizing: border-box;
position: relative;
}

/* Optional: Add a scrollbar style for the inner-box */
.item2 .inner-box::-webkit-scrollbar {
width: 25px;
}

.item2 .inner-box::-webkit-scrollbar-thumb {
background-color: #fef3f1;
border-radius: 0px;
border: 1px solid #fef3f1;
}

.item2 .inner-box::-webkit-scrollbar-track {
background: transparent;
}
  
/* Article Styling */
article {
margin-bottom: 40px;
}

.date-circle {
background-color: #efdbda; /* Light pink pastel color */
color: #fff;
font-size: 14px;
border-radius: 50%;
padding: 10px;
width: 60px;
height: 60px;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
float: left;
margin-right: 15px;
}

article h2 {
font-size: 24px;
color: white;
margin-bottom: 5px;
background: linear-gradient(90deg, #efdbda 0%, #fef3f1 100%);
padding: 5px 10px;
border-radius: 5px;
display: inline-block;
}

article h2 img {
max-width: 100%; /* Ensure the image doesn’t overflow */
height: auto; /* Maintain aspect ratio */
display: block; /* Center the image if necessary */
margin: 0 auto; /* Centering */
}

.post-info {
font-size: 14px;
color: #efdbda;
margin-bottom: 10px;
}
           
.indented-paragraph {
padding-left: 20px; /* Adjust this value to increase/decrease the indentation */
margin-bottom: 15px; /* Add spacing after paragraph if necessary */
line-height: 1.5; /* Adjust line height for readability */
}
        
.tip-box {
border: 2px dashed #efdbda; /* Matching the divider's border color */
border-radius: 8px; /* To create rounded corners, if desired */
padding: 15px; /* Padding inside the box */
margin: 20px 0; /* Add some spacing around the box */
background-color: #fff; /* Set a background color if needed */
}
        
/* Image container styling */
.image-container {
margin: 20px 0;
text-align: center;
position: relative;
}

/* Image styling */
.blog-image {
max-width: 100%; /* Allow the image to fit the container */
height: auto; /* Maintain aspect ratio */
border-radius: 6px;
display: block; /* Center the image */
margin: 0 auto; /* Add auto margin for centering */
}

@media (max-width: 768px) {
.blog-image {
max-width: 90%; /* Adjusted to fit smaller screens */
margin: 10px auto; /* Add margin for breathing room */
}
}

/* Caption styling */
.image-caption {
font-size: 14px;
color: #efdbda;
margin-top: 8px;
font-family: 'Hina Mincho', serif;
}

.slideshow {
position: relative;
max-width: 600px;
margin: auto;
border: 2px dashed #efdbda;
border-radius: 10px;
overflow: hidden;
background: white;
padding-bottom: 20px; /* Add bottom padding for space */
}

.slide {
display: none;
padding: 20px;
}

input[type="radio"] {
display: none; /* Hide radio buttons */
}

/* Show the selected slide */
input[type="radio"]:checked + .slide {
display: block;
}

.controls {
display: flex;
justify-content: center;
margin-top: 10px;
}

.control {
cursor: pointer;
width: 40px; /* Set width and height for circular buttons */
height: 40px; /* Make height equal to width for circles */
background: transparent;
border-radius: 50%; /* Make buttons circular */
margin: 0 10px; /* Add horizontal space between buttons */
display: flex; /* Center the text within the circle */
align-items: center; /* Center vertically */
justify-content: center; /* Center horizontally */
color: #efdbda; /* Set text color to pink */
border: 2px dashed #efdbda;
}

/* Change styles on hover */
.control:hover {
background: #efdbda; /* Change background to pink on hover */
color: white; /* Change text color to white on hover */
border: 2px dashed #efdbda;
}

/* Control button styles for active state */
input[type="radio"]:checked#slide1 ~ .controls .control:nth-child(1),
input[type="radio"]:checked#slide2 ~ .controls .control:nth-child(2),
input[type="radio"]:checked#slide3 ~ .controls .control:nth-child(3) {
background: white; /* Change background to white for active button */
color: #efdbda; /* Change text color to pink for active button */  
}

/* Keep hover effect for the active button */
input[type="radio"]:checked#slide1 ~ .controls .control:nth-child(1):hover,
input[type="radio"]:checked#slide2 ~ .controls .control:nth-child(2):hover,
input[type="radio"]:checked#slide3 ~ .controls .control:nth-child(3):hover {
background: #efdbda; /* Change background to pink on hover */
color: white; /* Change text color to white on hover */
}

/* Control button styles for hover */
.control:hover {
background: #efdbda; /* Change background to pink on hover */
color: white; /* Change text color to white on hover */
}

/* Rounded corners for images */
.slide img {
width: 100%; /* Ensure the image fills the slide */
border-radius: 10px; /* Adjust the value for desired roundness */
display: block; /* Prevents space below images */
margin: auto; /* Centers the image horizontally */
margin-bottom: 20px; /* Add bottom margin for space */
}

.decorative-divider {
border: 0;
height: 1px;
background: repeating-linear-gradient(to right, #fef3f1, #efdbda 5px, transparent 5px, transparent 10px);
margin: 20px 0;
}

/* VN Theme link */
.vn-link {
display: inline-block;
padding: 10px 20px;
color: #efdbda; /* Pastel pink text color */
text-decoration: none;
font-family: 'Hina Mincho', serif; /* Your chosen font */
font-size: 14px;
}

/* Add a hover effect */
.vn-link:hover {
color: #000000;
}

.item3 {
grid-column-start: 5;
grid-column-end: 6;
grid-row-start: 1;
grid-row-end: 3;
background: linear-gradient(to bottom, #fef3f1, #efdbda);
border: 2px solid #fff;
border-radius: 8px;
padding: 20px; /* Adjusted for consistency with the center column */
box-sizing: border-box;
margin-bottom: 20px;
position: relative; /* Make the box positioning relative */
}

.item4 {
grid-column-start: 5;
grid-column-end: 6;
grid-row-start: 3;
grid-row-end: 5;
background: linear-gradient(to bottom, #fef3f1, #efdbda);
border: 2px solid #fff;
border-radius: 8px;
padding: 20px; /* Adjusted for consistency with the center column */
box-sizing: border-box;
margin-bottom: 20px;
position: relative; /* Make the box positioning relative */
}

/* Inner white box for Archive and Tags content */
.item3 .inner-box, .item4 .inner-box {
width: 100%;
height: 100%; /* Adjusted for title space */
background-color: #fff;
border-radius: 6px;
padding: 15px;
padding-top: 40px; /* Adjust padding to prevent overlap with the title */
box-sizing: border-box;
position: relative;
}
    
/* For clickable tags and archive links */
.item3 a, .item4 a {
text-decoration: none;
color: #efdbda;
cursor: pointer;
display: block;
padding: 2px 0;
}
    
.item3 a:hover, .item4 a:hover {
color: #000000;
}

.item5 {
grid-column-start: 1;
grid-column-end: 2;
grid-row-start: 5;
grid-row-end: 8;
}

.item6 {
grid-column-start: 3;
grid-column-end: 4;
grid-row-start: 5;
grid-row-end: 8;
}

.item7 {
grid-column-start: 1;
grid-column-end: 3;
grid-row-start: 8;
grid-row-end: 10;
}

.item8 {
grid-column-start: 3;
grid-column-end: 4;
grid-row-start: 8;
grid-row-end: 10;
}

/* 𝔽𝕆𝕆𝕋𝔼ℝ */
footer {
text-align: center;
padding: 5px;
background-color: black;
border-top: 3px solid #efdbda;
font-size: 0.8em;
letter-spacing: 5px;
color: white;
}
  
footer a {
color: #efdbda;
font-weight: bold;
}
  
footer a:hover {
color: aliceblue;
}
  
/* 𝒜𝒹𝒹 𝓉𝒽𝒾𝓈 𝓉𝑜 𝑒𝓃𝓈𝓊𝓇𝑒 𝓉𝒽𝑒 𝒻𝑜𝑜𝓉𝑒𝓇 𝒾𝓈 𝒶𝓉 𝓉𝒽𝑒 𝒷𝑜𝓉𝓉𝑜𝓂 */
#footer {
clear: both;
position: relative;
}
  
.pulse-text {
animation: pulse 0.5s infinite alternate;
}
                
@keyframes pulse {
0% { opacity: 1; }
100% { opacity: 0.5; }
}  
