:root {
--width: 720px;
--font-main: system-ui, sans-serif;
--font-secondary: system-ui, sans-serif;
--font-scale: 1em;
--background-color: #fff;
--heading-color: #222;
--text-color: #444;
--link-color: #3273dc;
--visited-color: #8b6fcb;
--code-background-color: #f2f2f2;
--code-color: #222;
--blockquote-color: #222;
}
body {
font-family: var(--font-secondary);
font-size: var(--font-scale);
margin: auto;
padding: 20px;
max-width: var(--width);
text-align: left;
background-color: var(--background-color);
word-wrap: break-word;
overflow-wrap: break-word;
line-height: 1.5;
color: var(--text-color);
}
img {
max-width: 80%;
}
h1, h2, h3, h4, h5, h6 {
font-family: var(--font-main);
color: var(--heading-color);
}
a {
color: var(--link-color);
cursor: pointer;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
nav a {
margin-right: 8px;
}
strong, b {
color: var(--heading-color);
}
button {
margin: 0;
cursor: pointer;
}
time {
font-family: monospace;
font-style: normal;
font-size: 15px;
}
main {
line-height: 1.6;
}
table {
width: 100%;
}
hr {
border: 0;
border-top: 1px dashed;
}
code {
font-family: monospace;
padding: 2px;
background-color: var(--code-background-color);
color: var(--code-color);
border-radius: 3px;
}
blockquote {
border-left: 1px solid #999;
color: var(--code-color);
padding-left: 20px;
font-style: italic;
}
footer {
padding: 25px 0;
text-align: center;
}
.title:hover {
text-decoration: none;
}
.title h1 {
font-size: 1.5em;
}
.inline {
width: auto !important;
}
.highlight, .code {
padding: 1px 15px;
background-color: var(--code-background-color);
color: var(--code-color);
border-radius: 3px;
margin-block-start: 1em;
margin-block-end: 1em;
overflow-x: auto;
}
/* blog post list */
ul.blog-posts {
list-style-type: none;
padding: unset;
}
ul.blog-posts li {
display: flex;
}
ul.blog-posts li span {
flex: 0 0 130px;
}
ul.blog-posts li a:visited {
color: var(--visited-color);
}
/* Gallery */
.gallery ul {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 12px;
padding: 20px 0;
list-style: none;
margin: 0;
}
.gallery li {
margin: 0;
}
.gallery img {
width: 100%;
height: auto;
display: block;
object-fit: contain; /* or 'cover' depending on your desired style */
border-radius: 4px;
transition: transform 0.2s ease;
}
.gallery li:hover img {
transform: scale(1.07);
}
/* Unlikely button */
.upvote-button svg,
.upvote-count {
display: none;
}
button.upvote-button {
display: block !important;
margin: 25px 0 5px;
padding: 4px 9px;
font-family: var(--font-secondary);
font-size: .9em;
font-weight: bold;
color: var(--link-color);
border: 1px solid var(--link-color);
border-radius: 6px;
cursor: pointer;
}
.upvote-button::before {
content: "☆ ";
}
.upvote-button[disabled]::before {
content: "★ ";
}
.upvote-button.upvoted {
color: var(--link-color) !important;
background-color: var(--accent-color);
}
.upvote-button:hover {
background-color: var(--accent-color);
}
.hidden {
display: none !important;
}
.gallery img {
cursor: zoom-in;
}
#lightbox {
cursor: zoom-out;
}
<div class="gallery">
* 
* 
* 
* 
* 
* 
</div>
- [숨 쉴 공간](https://portfolio.bearblog.dev/room/)
- [강단과 소신 사진 일기](https://portfolio.bearblog.dev/kangnko/)
- [커피가게 우리는 팬클럽 저희는](https://portfolio.bearblog.dev/wooreenoon/)
<script>
document.addEventListener("DOMContentLoaded", () => {
const lightbox = document.getElementById("lightbox");
const lbImg = document.getElementById("lightbox-img");
document.querySelectorAll(".gallery img").forEach(img => {
img.addEventListener("click", () => {
lbImg.src = img.src;
lbImg.alt = img.alt;
lightbox.classList.remove("hidden");
});
});
lightbox.addEventListener("click", () => {
lightbox.classList.add("hidden");
});
});
</script>
<div id="lightbox" class="hidden" style="position: fixed; top: 0; left: 0; width: 100%; height: 100%;
background: rgba(0,0,0,0.8); display: flex; align-items: center; justify-content: center; z-index: 9999;">
<img id="lightbox-img" src="" alt="" style="max-width: 90%; max-height: 90%;">
</div>