@charset "utf-8";

/*
 *
 * CSS CONTENTS:
 *
 * 01. Web Font
 * 02. Type Selector Reset
 * 03. Accessibility Navigation
 * 04. Layout Selector
 * 05. Components
 * 06. Entry Content
 * 07. Comment
 * 08. Widget & Template Page
 * 09. ETC
 * 10. Column & Color Type
 * 11. Retina Display
 * 12. Media Screen - Tablet
 * 13. Media Screen - Mobie
 *
 */


/* Type Selector Reset */
body {
  -webkit-text-size-adjust: 100%;
  font-weight: 400;
  font-family: Pretendard-Regular, sans-serif;
  font-size: 1em;
  line-height: 1.25;
}

html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  font-size: 100%;
}

div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td, figure {
  margin: 0;
  padding: 0;
}

header, footer, section, article, aside, nav, hgroup, details, menu, figure, figcaption {
  display: block;
}

button, input[type=submit], input[type=reset], input[type=button] {
  overflow: visible;
  cursor: pointer;
}

input[type=text], input[type=email], input[type=password], input[type=submit], textarea {
  -webkit-appearance: none;
}

input, select, textarea, button {
  font-family: Pretendard-Regular, sans-serif;
  font-size: 100%;
  border-radius: 0;
}

button {
  overflow: visible;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

ul li {
  list-style: none;
}

img, fieldset {
  border: none;
  vertical-align: top;
}

hr {
  display: none;
}

/* Accessibility Navigation */
#acc-nav {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 0;
}

#acc-nav a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin-left: -1px;
  margin-bottom: -1px;
  text-align: center;
  font-weight: bold;
  font-size: 0.875em;
  color: #000;
  white-space: nowrap;
}

#acc-nav a:focus, #acc-nav a:hover, #acc-nav a:active {
  width: 100%;
  height: auto;
  padding: 10px 0;
  background: #000;
  color: #fff;
  z-index: 1000;
}

/* Layout Selector */
#wrap {
  position: relative;
}

#header {
  position: relative;
  border-bottom: 1px solid #e6e6e6;
}

#header .inner {
  max-width: 1200px;
  margin: 0 auto;
}

#header .inner:after {
  content: "";
  clear: both;
  display: block;
  height: 0;
  visibility: hidden;
}

#header h1 {
  float: left;
  max-width: 500px;
  overflow: hidden;
  padding: 26px 0;
  font-size: 1.25em;
  line-height: 28px;
  letter-spacing: 0.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#header h1 a {
  display: inline-block;
  vertical-align: top;
  text-decoration: none;
  color: #7a583a;
}

#header h1 img {
  width: auto;
  height: 28px;
}

#header .mobile-menu {
  display: none;
}

#gnb {
  position: relative;
  float: right;
}

#gnb ul li {
  float: left;
  padding: 26px 16px;
  font-size: 0.875em;
}

#gnb ul li a {
  display: block;
  position: relative;
  padding: 0 4px;
  text-decoration: none;
  line-height: 28px;
  color: #000;
}

#gnb ul li a:hover {
  color: #7a583a;
}

#gnb ul li a:hover:after {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 4px;
  margin-top: 22px;
  background-color: #7a583a;
}

#content .inner {
  overflow: hidden;
  max-width: 860px;
  margin: 0 auto;
}

#aside {
  margin-top: 120px;
  padding: 57px 0 24px;
  border-top: 1px solid #e6e6e6;
}

#aside .inner {
  overflow: hidden;
  max-width: 1200px;
  margin: 0 auto;
}

#aside h2 {
  margin-bottom: 6px;
  font-size: 1em;
  color: #666;
}

#aside .sidebar-1 {
  float: left;
  width: 25%;
  min-height: 10px;
  padding-right: 36px;
  box-sizing: border-box;
}

#aside .sidebar-2 {
  float: left;
  width: 50%;
  min-height: 10px;
  margin: 0 0 40px;
  padding: 0 12px;
  box-sizing: border-box;
}

#aside .sidebar-3 {
  float: left;
  width: 25%;
  min-height: 10px;
  padding-left: 36px;
  box-sizing: border-box;
}

#aside .posts {
  margin-bottom: 56px;
}

#aside .posts li {
  border-bottom: 1px solid #e6e6e6;
}

#aside .posts li a {
  display: block;
  overflow: hidden;
  width: 100%;
  padding: 8px 0;
  text-overflow: ellipsis;
  text-decoration: none;
  white-space: nowrap;
  font-size: 0.875em;
  line-height: 1.5714;
  color: #b2b2b2;
}

#aside .posts li a:hover {
  color: #7a583a;
}

#aside .tags {
  margin: 0 0 40px;
}

#aside .tags h2 {
  margin-bottom: 10px;
}

#aside .tags .items {
  margin-bottom: 5px;
}

#aside .tags .more {
  text-decoration: none;
  font-size: 12px;
  line-height: 2;
  color: #d4bca7;
}

#aside .tags .more:after {
  content: "";
  display: inline-block;
  width: 4px;
  height: 8px;
  margin-left: 6px;
  background: url(./images/ico_package.png) no-repeat 0 -300px;
  vertical-align: baseline;
}

#aside .tags .more:hover {
  color: #7a583a;
}

#aside .tags .more:hover:after {
  background-position-x: -50px;
}

#aside .search {
  margin-bottom: 57px;
}

#aside .search fieldset {
  position: relative;
  margin-top: 19px;
  padding-right: 38px;
  border: 1px solid #e6e6e6;
}

#aside .search input {
  width: 100%;
  height: 38px;
  padding: 0 10px;
  border: 0;
  font-size: 0.875em;
  line-height: 1.5714;
  color: #b2b2b2;
  box-sizing: border-box;
}

#aside .search input::-webkit-input-placeholder {
  color: #d6d6d6;
}

#aside .search button {
  position: absolute;
  top: 0;
  right: 0;
  width: 38px;
  height: 38px;
  background: url(./images/ico_package.png) no-repeat 13px -337px;
  text-align: left;
  text-indent: -999em;
}

#aside .search button:hover,
#aside .search button:focus,
#aside .search input:focus+button {
  background-position-x: -37px;
}

#aside .count {
  margin: 0 0 40px;
}

#aside .count .total {
  margin: 11px 0 2px;
  font-size: 1.875em;
  color: #7a583a;
}

#aside .count ul li {
  overflow: hidden;
  padding: 4px 0;
  border-bottom: 1px solid #e6e6e6;
  text-align: right;
  font-size: 0.875em;
  line-height: 2.1428;
  color: #b2b2b2;
}

#aside .count ul li strong {
  float: left;
  font-weight: normal;
}

#footer {
  padding: 18px 0;
  background-color: #f0f0f0;
}

#footer .copyright {
  text-align: center;
  font-size: 0.75em;
  color: #999;
}

#footer a {
  text-decoration: none;
  color: #7a583a;
}

#footer .admin:before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 11px;
  margin: 1px 9px 2px;
  background-color: #b2b2b2;
  vertical-align: middle;
}

/* Components */
.btn, a.btn {
  display: inline-block;
  position: relative;
  width: 158px;
  padding: 0 10px;
  border: 1px solid #7a583a;
  text-decoration: none;
  text-align: left;
  font-size: 12px;
  line-height: 38px;
  color: #7a583a;
  -webkit-transition: color .2s, background-color .2s;
  transition: color .2s, background-color .2s;
}

.btn:hover {
  background-color: #7a583a;
  border-color: #7a583a;
  color: #fff;
}

.btn:hover:after {
  background-position-x: 0;
}

.cover-slider {
  position: relative;
  overflow: hidden;
  height: 0;
  padding-bottom: 40%;
  margin: -1px 0 80px;
  width: 100%;
}

.cover-slider .prev,
.cover-slider .next {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 20;
  width: 49px;
  height: 83px;
  margin-top: -42px;
  background-image: url(./images/ico_package.png);
  background-repeat: no-repeat;
  text-indent: -999em;
}

.cover-slider .prev {
  margin-left: -600px;
  background-position: 0 -200px;
}

.cover-slider .prev:hover {
  background-position-x: -100px
}

.cover-slider .next {
  margin-left: 551px;
  background-position: -50px -200px;
}

.cover-slider .next:hover {
  background-position-x: -150px
}

.cover-slider .paging {
  position: absolute;
  left: 0;
  bottom: 30px;
  z-index: 20;
  width: 100%;
  text-align: center;
}

.cover-slider .paging button {
  display: inline-block;
  overflow: hidden;
  width: 20px;
  height: 1px;
  margin: 0 5px;
  background-color: #b2b2b2;
  text-indent: -999em;
  vertical-align: bottom;
}

.cover-slider .paging .current {
  height: 5px;
  margin-top: 0;
  background-color: #333;
}

.cover-slider ul {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.cover-slider ul li {
  display: table;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: 50% 50%;
}

.cover-slider ul li .text-box {
  display: table-cell;
  background-color: rgba(0, 0, 0, 0.25);
  text-align: center;
  vertical-align: middle;
  font-weight: 100;
  text-decoration: none;
}

.cover-slider ul li .text-box strong {
  font-weight: 700;
}

.cover-slider ul li .text-box .title {
  display: block;
  margin-bottom: 40px;
  text-shadow: 0 0 24px rgba(0, 0, 0, 0.4);
  font-size: 3.75em;
  line-height: 1;
  color: #fff;
}

.cover-slider ul li .text-box .title em {
  display: block;
  margin-bottom: 15px;
  text-shadow: 0 0 24px rgba(0, 0, 0, 0.4);
  font-style: normal;
  font-size: 0.5em;
  line-height: 1;
  color: #fff;
}

.cover-slider ul li .text-box .btn {
  z-index: 10;
  border-color: #fff;
  color: #fff;
  background-color: rgba(170, 170, 170, 0.1);
  box-shadow: 0 0 24px rgba(170, 170, 170, 0.3);
}

.cover-slider ul li .text-box .btn:after {
  background-position-x: 0;
}

.cover-slider ul li .text-box .btn:hover {
  background-color: #fff;
  color: #7a583a;
}

.cover-slider ul li .text-box .btn:hover:after {
  background-position-x: -100px;
}

.cover-slider.slide-on ul li {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}

.cover-thumbnail-list-1 {
  overflow: hidden;
  max-width: 1200px;
  margin: 80px auto 71px;
  box-sizing: border-box;
}

.cover-thumbnail-list-1 h2 {
  float: left;
  width: 24%;
  font-weight: 300;
  font-size: 1.875em;
  line-height: 1.3333;
  color: #7a583a;
}

.cover-thumbnail-list-1 h2:after {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  margin-top: 31px;
  background-color: #7a583a;
}

.cover-thumbnail-list-1 h2 em {
  display: block;
  margin-bottom: 10px;
  font-style: normal;
  font-weight: 700;
  font-size: 0.4666em;
  color: #000;
}

.cover-thumbnail-list-1 ul {
  float: left;
  width: 76%;
}

.cover-thumbnail-list-1 ul li {
  float: left;
  width: 33.3333%;
  padding-left: 16px;
  text-align: center;
  font-size: 0.875em;
  line-height: 2.25;
  color: #666;
  box-sizing: border-box;
}

.cover-thumbnail-list-1 ul li a {
  display: block;
  text-decoration: none;
  color: #666;
  -webkit-transition: color .2s;
  transition: color .2s;
}

.cover-thumbnail-list-1 ul li .thum {
  display: block;
  margin-bottom: 7px;
  position: relative;
}

.cover-thumbnail-list-1 ul li .thum img {
  width: 100%;
  height: auto;
}

.cover-thumbnail-list-1 ul li .title {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.cover-thumbnail-list-1 ul li a:hover {
  color: #000;
}

.cover-thumbnail-list-1 ul li .thum:before {
  content: "";
  background-color: rgba(255, 255, 255, 0);
  -webkit-transition: background-color .5s;
  transition: background-color .5s;
}

.cover-thumbnail-list-1 ul li a:hover .thum:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.5);
}

.cover-special-contents {
  max-width: 1200px;
  margin: 71px auto 80px;
}

.cover-special-contents ul li {
  position: relative;
  overflow: hidden;
  text-align: center;
}

.cover-special-contents ul li .thum {
  display: block;
  float: left;
  width: 50%;
}

.cover-special-contents ul li .thum img {
  max-width: 100%;
  height: auto;
}

.cover-special-contents ul li .box {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50%;
  margin-top: -230px;
}

.cover-special-contents ul li:nth-child(even) .thum {
  float: right;
}

.cover-special-contents ul li:nth-child(even) .box {
  left: 0;
}

.cover-special-contents ul li .category {
  display: block;
  margin: 0 0 17px;
  font-weight: 700;
  font-size: 0.875em;
  color: #7a583a;
}

.cover-special-contents ul li .title {
  display: block;
  margin: 0 0 32px;
  font-weight: 300;
  font-size: 1.875em;
  line-height: 1.3333;
  color: #7a583a;
}

.cover-special-contents ul li .title:after {
  content: "";
  display: block;
  width: 40px;
  height: 1px;
  margin: 33px auto 0;
  background-color: #7a583a;
}

.cover-special-contents ul li .excerpt {
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  overflow: hidden;
  height: 12.8568em;
  margin-bottom: 51px;
  padding: 0 21%;
  font-size: 0.875em;
  line-height: 2.1428;
  text-overflow: ellipsis;
  color: #666;
}

.cover-wide-panel {
  max-width: 1200px;
  margin: 80px auto 120px;
}

.cover-wide-panel .bg {
  height: 300px;
  background-position: 50% 50%;
  background-size: cover;
}

.cover-wide-panel .box {
  max-width: 1000px;
  margin: -100px auto 0;
  padding-top: 58px;
  text-align: center;
  background-color: #fff;
}

.cover-wide-panel .category {
  display: block;
  margin-bottom: 9px;
  font-weight: 700;
  font-size: 0.875em;
  color: #7a583a;
}

.cover-wide-panel h2 {
  display: block;
  margin-bottom: 32px;
  padding: 2px 0 3px;
  font-weight: 300;
  font-size: 1.875em;
  line-height: 1.3333;
  color: #7a583a;
}

.cover-wide-panel h2:after {
  content: "";
  display: block;
  width: 40px;
  height: 1px;
  margin: 33px auto 0;
  background-color: #7a583a;
}

.cover-wide-panel p {
  display: block;
  margin-bottom: 48px;
  padding: 0 125px;
  font-size: 0.875em;
  line-height: 2.1428;
  color: #666;
}

.post-header {
  position: relative;
  z-index: 10;
  overflow: hidden;
  max-width: 860px;
  margin: 40px auto 0;
  border-bottom: 1px solid #7a583a;
  text-align: left;
  color: #7a583a;
}

.post-header:first-child {
  margin-top: 75px;
}

.post-header h2 {
  display: inline-block;
  font-size: 0.875em;
  line-height: 40px;
  vertical-align: top;
}

.post-header .list-type {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -15px;
}

.post-header .list-type button {
  float: left;
  width: 30px;
  height: 30px;
  margin: 0 0 0 5px;
  border: 1px solid #D4BCA7;
  background-image: url(./images/ico_package.png);
  text-indent: -999em;
  box-sizing: border-box;
}

.post-header .list-type .thum {
  background-position: 0 -100px;
}

.post-header .list-type .thum:hover,
.post-header .list-type .thum.current {
  background-position: -100px -100px;
  outline: none;
}

.post-header .list-type .list {
  background-position: -50px -100px;
  outline: none;
}

.post-header .list-type .list:hover,
.post-header .list-type .list.current {
  background-position: -150px -100px;
  outline: none;
}

.post-item {
  float: left;
  width: 23.255813953488372%;
  padding: 20px 0 33px 2.325581395348837%;
  border-bottom: 1px solid #e6e6e6;
}

.post-item:nth-child(4n+1) {
  padding-left: 0;
}

.cover-thumbnail-list-2 {
  overflow: hidden;
  max-width: 1200px;
  margin: 0 auto 40px;
}

.cover-thumbnail-list-2 h2 {
  position: relative;
  z-index: 10;
  overflow: hidden;
  max-width: 1200px;
  margin: 0 auto;
  border-top: 1px solid #7a583a;
  border-bottom: 1px solid #7a583a;
  text-align: center;
  font-size: 0.875em;
  line-height: 40px;
  color: #7a583a;
}

.cover-thumbnail-list-2 ul {
  margin-left: -16px;
}

.cover-thumbnail-list-2 ul li {
  float: left;
  width: 25%;
  padding: 20px 0 33px 16px;
  box-sizing: border-box;
}

.post-item .thum,
.cover-thumbnail-list-2 ul li .thum {
  display: block;
  position: relative;
  overflow: hidden;
  height: 0;
  margin-bottom: 17px;
  padding-bottom: 98.4848%;
  background-color: #ebebeb;
}

.post-item .thum:before,
.cover-thumbnail-list-2 ul li .thum:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 0;
  width: 22px;
  height: 18px;
  margin: -9px 0 0 -11px;
  background: url(./images/ico_package.png) no-repeat -150px -300px;
}

.post-item .thum img,
.cover-thumbnail-list-2 ul li .thum img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
}

.post-item a,
.cover-thumbnail-list-2 ul li a {
  display: block;
  text-decoration: none;
}

.post-item .title,
.cover-thumbnail-list-2 ul li .title {
  display: block;
  overflow: hidden;
  width: 90%;
  margin-bottom: 2px;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 700;
  font-size: 1em;
  color: #000;
  -webkit-transition: color .2s;
  transition: color .2s;
}

.post-item .excerpt,
.cover-thumbnail-list-2 ul li .excerpt {
  display: block;
  display: -webkit-box;
  overflow: hidden;
  width: 90%;
  height: 4.125rem;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 16px;
  text-overflow: ellipsis;
  font-size: 0.875em;
  line-height: 1.375rem;
  color: #666;
  -webkit-transition: color .2s;
  transition: color .2s;
}

.post-item .excerpt.protected:before,
.cover-thumbnail-list-2 ul li .excerpt.protected:before {
  content: "";
  display: inline-block;
  width: 9px;
  height: 13px;
  margin-right: 10px;
  background: url(./images/ico_package.png) no-repeat -100px -350px;
  vertical-align: middle;
}

.post-item .more,
.cover-thumbnail-list-2 ul li .more {
  display: inline-block;
  font-size: 0.75em;
  color: #d4bca7;
  vertical-align: top;
}

.post-item .more:after,
.cover-thumbnail-list-2 ul li .more:after {
  content: "";
  display: inline-block;
  width: 4px;
  height: 8px;
  margin: 3px 0 4px 6px;
  background: url(./images/ico_package.png) no-repeat 0 -300px;
  vertical-align: top;
}

.post-item .thum:after,
.cover-thumbnail-list-2 ul li .thum:after {
  content: "";
  background-color: rgba(255, 255, 255, 0);
  -webkit-transition: background-color .5s;
  transition: background-color .5s;
}

.post-item a:hover .thum:after,
.cover-thumbnail-list-2 ul li a:hover .thum:after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.5);
}

.post-item a:hover .title,
.cover-thumbnail-list-2 ul li a:hover .title {
  color: #7a583a;
}

.post-item a:hover .excerpt,
.cover-thumbnail-list-2 ul li a:hover .excerpt {
  color: #000;
}

.post-item a:hover .more,
.cover-thumbnail-list-2 ul li a:hover .more {
  color: #7A583A;
}

.post-item a:hover .more:after,
.cover-thumbnail-list-2 ul li a:hover .more:after {
  background-position-x: -50px;
}

.post-type-text .post-item {
  float: none;
  width: auto;
  margin-left: 0;
  padding: 28px 0;
}

.post-type-text .post-item a {
  overflow: hidden;
  width: 100%;
}

.post-type-text .post-item .thum {
  float: right;
  width: 210px;
  height: 148px;
  margin: 0 0 0 78px;
  padding-bottom: 0;
}

.post-type-text .post-item .thum:before {
  display: none;
}

.post-type-text .post-item .thum img {
  position: relative;
  width: 100%;
  height: auto;
  margin: -29px 0 0;
}

.post-type-text .post-item .title {
  width: auto;
  margin-bottom: 3px;
  padding: 10px 0 0;
  font-size: 1.125em;
}

.post-type-text .post-item .excerpt {
  width: auto;
}

.post-type-text .post-item .more {
  line-height: 1.25;
}

.hgroup {
  max-width: 1200px;
  margin: 0 auto 60px;
  padding: 78px 0 40px;
  border-bottom: 1px solid #7a583a;
}

.hgroup .category {
  margin-bottom: 8px;
  font-weight: 700;
  font-size: 0.875em;
  color: #000;
}

.hgroup h1 {
  font-size: 1.5em;
  font-weight: 400;
  line-height: 1.0666;
  color: #7a583a;
}

.hgroup .post-meta {
  margin: 18px 0 -2px;
  font-size: 0.75em;
  color: #b2b2b2;
}

.hgroup .post-meta a {
  text-decoration: none;
  color: #d4bca7;
}

.hgroup .post-meta a:hover {
  color: #7A583A;
}

.hgroup .post-meta span:before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 9px;
  margin: 0 9px;
  background-color: #b3b3b3;
  vertical-align: middle;
}

.hgroup .post-meta span:first-child:before {
  content: none;
}

.hgroup.guest h2 {
  font-size: 0.875em;
  font-weight: bold;
  line-height: 40px;
  color: #7a583a;
}

.hgroup.guest {
  max-width: 860px;
  margin: 0 auto 60px;
  padding: 75px 0 0;
  border-bottom: 1px solid #7a583a;
}

.hgroup.tag {
  max-width: 860px;
  margin: 0 auto 60px;
  padding: 75px 0 0;
  border-bottom: 1px solid #7a583a;
}

.hgroup.tag h2 {
  font-size: 0.875em;
  font-weight: bold;
  line-height: 40px;
  color: #7a583a;
}


.post-btn {
  max-width: 1200px;
  margin: 200px auto 20px;
}

.post-btn button {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 2px;
  text-align: left;
  text-indent: -999em;
  background-image: url(./images/ico_package.png);
  background-repeat: no-repeat;
  border: 1px solid #D4BCA7;
  box-sizing: border-box;
}

.post-btn .share {
  background-position: 0 -50px;
}

.post-btn .report {
  background-position: -50px -50px;
}

.post-btn .share:hover {
  background-position: -100px -50px;
}

.post-btn .report:hover {
  background-position: -150px -50px;
}

.another-category {
  max-width: 1200px;
  margin: 20px auto 36px;
  padding: 38px 0 0;
  border-top: 1px solid #7a583a;
}

.another-category h4 {
  margin-bottom: 10px;
  font-size: 1em;
  color: #666;
}

.another-category table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.875em;
  color: #b2b2b2;
}

.another-category table th {
  padding: 8px 0 4px;
  border-bottom: 1px solid #e6e6e6;
  text-align: left;
  font-weight: 400;
}

.another-category table th a {
  text-decoration: none;
  color: #b2b2b2;
}

.another-category table th a:hover {
  color: #7A583A;
}

.another-category table th span {
  font-size: 0.75em;
}

.another-category td {
  width: 60px;
  padding: 8px 0 4px;
  border-bottom: 1px solid #e6e6e6;
  font-size: 0.75em;
  line-height: 1;
  color: #b2b2b2;
}

/* Style Important */
.another_category table {
  border: none !important;
}

.another_category td {
  border: none !important;
}

.tags {
  position: relative;
  overflow: hidden;
  max-width: 860px;
  margin: 35px auto 32px;
  color: #b2b2b2;
}

.tags h2 {
  margin-bottom: 10px;
  font-size: 1em;
  color: #666;
}

.tags .items {
  margin: 0 0 0 -18px;
}

.tags .items a {
  display: inline-block;
  margin-left: 18px;
  text-decoration: none;
  font-size: 0.875em;
  line-height: 2.1428;
  color: #b2b2b2;
}

.tags .items a:hover {
  color: #7a583a;
}

.tags .items a:before {
  content: "#";
}

#content .tags .items a {
  margin-left: 8px;
}

#content .tags .items {
  margin: 0 0 0 -18px;
  padding-left: 10px;
}


.related-articles {
  overflow: hidden;
  max-width: 1200px;
  margin: 40px auto 80px;
}

.related-articles h2 {
  margin-bottom: 28px;
  border-top: 1px solid #7a583a;
  border-bottom: 1px solid #7a583a;
  text-align: center;
  font-weight: 400;
  font-size: 0.875em;
  line-height: 40px;
  color: #666;
}

.related-articles h2 strong {
  font-weight: 700;
  color: #000;
}

.related-articles ul {
  margin-left: -20px;
  vertical-align: top;
}

.related-articles ul li {
  float: left;
  position: relative;
  width: 25%;
  padding: 0 0 0 20px;
  box-sizing: border-box;
}

.related-articles ul li a {
  overflow: hidden;
  display: block;
  position: relative;
}

.related-articles ul li .thum {
  display: block;
  position: relative;
  overflow: hidden;
  height: 0;
  padding-bottom: 98.4848%;
  background-color: #ebebeb;
}

.related-articles ul li .thum:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 0;
  width: 22px;
  height: 18px;
  margin: -9px 0 0 -11px;
  background: url(./images/ico_package.png) no-repeat -150px -300px;
}

.related-articles ul li .thum img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
}

.related-articles ul li .title {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
  overflow: hidden;
  width: 100%;
  padding: 0 10px;
  background-color: rgba(0, 0, 0, 0.3);
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 1em;
  line-height: 40px;
  color: #fff;
  box-sizing: border-box;
}

.comments {
  max-width: 860px;
  margin: 0 auto;
  border-bottom: 1px solid #e6e6e6;
}

.comments h2 {
  font-size: 1em;
  color: #666;
}

.comments h2 .count {
  color: #7a583a;
}

.comments .comment-list {
  font-size: 16px;
  margin-bottom: 6px;
  overflow: hidden;
}

.comments .comment-list ul li {
  padding: 30px 0 25px;
  border-top: 1px solid #e6e6e6;
  position: relative;
  min-height: 48px;
}

.comments .comment-list ul li:first-child {
  border: none;
}

.comments .comment-list ul li ul li {
  padding: 26px 0 0 60px;
  border-top: 0;
  border-bottom: 0;
}

.comments .comment-list ul li .author-meta {
  position: absolute;
  overflow: hidden;
  top: 30px;
  height: 48px;
  left: 0;
  right: 0;
  padding: 4px 0 0 60px;
}

.comments .comment-list ul li ul li .author-meta {
  top: 26px;
  left: 60px;
}

.comments .comment-list ul li .author-meta .avatar {
  position: absolute;
  left: 0;
  top: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
}

.comments .comment-list ul li .author-meta span {
  display: inline-block;
}

.comments .comment-list ul li .author-meta a {
  text-decoration: none;
  color: #000;
}

.comments .comment-list ul li .author-meta .nickname {
  float: left;
  font-size: 0.875em;
  line-height: 20px;
}

.comments .comment-list ul li .author-meta .nickname .tistoryProfileLayerTrigger {
  margin-bottom: 3px;
  margin-right: 0;
  vertical-align: bottom;
}

.comments .comment-list ul li .author-meta .date {
  float: left;
  margin-left: 10px;
  font-size: 0.75em;
  color: #999;
  line-height: 20px;
}

.comments .comment-list ul li .author-meta .date:before,
.comments .comment-list ul li .author-meta .date a:before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 9px;
  margin-right: 10px;
  background-color: #b2b2b2;
}

.comments .comment-list ul li .author-meta .date a {
  margin-left: 10px;
}

.comments .comment-list ul li .control {
  position: absolute;
  top: 33px;
  right: 0;
}

.comments .comment-list ul li ul li .control {
  top: 29px;
}

.comments .comment-list ul li .control a {
  margin: 0 2px;
  text-decoration: none;
  font-size: 12px;
  color: #999;
}

.comments .comment-list ul li p {
  position: relative;
  margin: 29px 0 0 60px;
  font-size: 0.875em;
  line-height: 1.5714;
  color: #666;
}

.comments .comment-form .field {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin-bottom: 10px;
}

.comments .comment-form input[type=text],
.comments .comment-form input[type=password],
.comments .comment-form textarea {
  border: 1px solid #e6e6e6;
  font-size: 0.875em;
  line-height: 1.25;
  color: #666;
}

.comments .comment-form input[type=text],
.comments .comment-form input[type=password] {
  width: 120px;
  height: 40px;
  padding: 10px;
  box-sizing: border-box;
}

.comments .comment-form input::-webkit-input-placeholder,
.comments .comment-form textarea::-webkit-input-placeholder {
  color: #d6d6d6;
}

.comments .comment-form textarea {
  display: block;
  width: 100%;
  margin-bottom: 10px;
  padding: 10px;
  resize: none;
  box-sizing: border-box;
}

.comments .comment-form .field .secret {
  float: right;
}

.comments .comment-form .field .secret input {
  display: none;
}

.comments .comment-form .field .secret label {
  font-size: 0.875em;
  line-height: 40px;
  color: #666;
  outline: none;
  cursor: pointer;
}

.comments .comment-form .field .secret label:before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 9px;
  border: 1px solid #e1e1e1;
  vertical-align: middle;
  background-color: #fff;
}

.comments .comment-form .field .secret input[type=checkbox]:checked+label:before {
  background-image: url(./images/ico_package.png);
  background-repeat: no-repeat;
  background-position: -97px -295px;
}

.comments .comment-form .submit {
  margin-bottom: 10px;
  text-align: right;
}

.pagination {
  max-width: 860px;
  margin: 60px auto 160px;
  text-align: center;
}

.pagination a {
  display: inline-block;
  margin: 0 10px;
  text-decoration: none;
  font-size: 0.875em;
  line-height: 30px;
  color: #d4bca7;
  vertical-align: middle;
}

.pagination a:hover {
  color: #7A583A;
}

.pagination .selected {
  color: #000;
}

.pagination .prev,
.pagination .next {
  width: 30px;
  height: 30px;
  background-image: url(./images/ico_package.png);
  background-repeat: no-repeat;
  border: 1px solid #D4BCA7;
  text-indent: -999em;
  vertical-align: middle;
  box-sizing: border-box;
}

.pagination .prev {
  background-position: 0 -150px;
}

.pagination .prev:hover {
  background-position: -100px -150px;
}

.pagination .next {
  background-position: -50px -150px;
}

.pagination .next:hover {
  background-position: -150px -150px;
}

.pagination .no-more-prev,
.pagination .no-more-next {
  display: none;
}

.pagination .view-more {
  display: block;
  width: 100%;
  margin: 0;
  padding: 14px 0 11px;
  border: 1px solid #d4bca7;
  text-decoration: none;
  font-size: 12px;
  line-height: 1;
  color: #d4bca7;
}

.pagination .view-more:before {
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  margin-right: 9px;
  background: url(./images/ico_package.png) no-repeat 0 -400px;
}

.pagination .view-more:hover {
  background-color: #d4bca7;
  color: #fff;
}

.pagination .view-more:hover:before {
  background-position-x: -50px;
}

/* Entry Content */
.entry-content {
  max-width: 1200px;
  margin: 0 auto;
}

.entry-content h1 {
  clear: both;
  margin: 29px 0 22px;
  font-size: 1.6875em;
  line-height: 1.5;
  color: #000;
}

.entry-content h2 {
  clear: both;
  margin: 29px 0 22px;
  font-size: 1.5em;
  line-height: 1.5;
  color: #000;
}

.entry-content h3 {
  clear: both;
  margin: 29px 0 22px;
  font-size: 1.3125em;
  line-height: 1.5;
  color: #000;
}

.entry-content h4 {
  clear: both;
  margin: 29px 0 22px;
  font-weight: 400;
  font-size: 1.125em;
  line-height: 1.5;
  color: #000;
}

.entry-content p {
  word-break: break-all;
}

.entry-content p img {
  max-width: 100%;
  height: auto;
}

.entry-content hr {
  display: block;
  height: 0;
  border: 0;
  border-bottom: 1px solid #000;
}

.entry-content pre {
  word-break: break-all;
  white-space: pre-wrap;
  word-wrap: break-word;
}

.entry-content pre code.hljs {
  padding: 20px;
}

.entry-content ul {
  list-style: disc inside;
  margin-bottom: 22px;
}

.entry-content ul li {
  position: relative;
}

.entry-content ol {
  list-style: decimal inside;
  margin-bottom: 22px;
}

.entry-content ol li {
  position: relative;
  list-style: decimal;
}

.entry-content a {
  color: #d4bca7;
}

.entry-content img.alignleft {
  float: left;
  margin: 0 22px 22px 0;
}

.entry-content img.aligncenter {
  display: block;
  margin: 0 auto 22px;
}

.entry-content img.alignright {
  float: right;
  margin: 0 0 22px 22px;
}

.entry-content blockquote {
  margin-top: 10px;
  padding: 16px 20px;
  border-left: 4px solid #e6e6e6;
}

.entry-content blockquote p {
  margin: 22px 0 0;
}

.entry-content blockquote p:first-child {
  margin-top: 0;
}

.entry-content table {
  width: 100%;
  border-collapse: collapse;
}

.entry-content table thead th {
  padding: 7px 0 11px;
  border-left: 1px solid #e6e6e6;
}

.entry-content input {
  height: 40px;
  padding: 0 10px;
  border: 1px solid #e6e6e6;
  font-size: 0.875em;
  line-height: 1.25;
  color: #666;
  box-sizing: border-box;
  vertical-align: middle;
}

.entry-content .protected_form {
  margin-bottom: 40px;
  padding: 120px 0 200px;
  border-bottom: 1px solid #7a583a;
  text-align: center;
}

.entry-content .protected_form input {
  width: 200px;
  margin-bottom: 10px;
  vertical-align: top;
}

.entry-content .cap1 {
  text-align: center;
  font-size: 0.875em;
  font-style: italic;
}

/* Comment */

/* Widget & Template Page */

/* ETC */
#dimmed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 500;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
}

#mediaLogNest {
  max-width: 1200px;
  margin: 0 auto;
}

/* Column & Color Type */
.layout-float #wrap {
  padding-left: 240px;
}

.layout-float #header {
  float: left;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 200;
  width: 240px;
  height: 100%;
  border-bottom-width: 0;
  border-right: 1px solid #e6e6e6;
  background-color: #fff;
}

.layout-float #header h1 {
  float: none;
  padding: 80px 0 60px;
  text-align: center;
}

.layout-float #gnb {
  float: none;
  padding: 0 40px;
}

.layout-float #gnb ul li {
  float: none;
  padding: 0;
  border-bottom: 1px solid #e6e6e6;
  text-align: center;
}

.layout-float #gnb ul li a {
  padding: 10px 0 1px;
}

.layout-float #gnb ul li a:hover:after {
  margin: 0;
}

.layout-float #content {
  max-width: 900px;
  padding: 80px 0 0 60px;
}

.layout-float #aside {
  padding-left: 60px;
}

.layout-float #aside .inner {
  max-width: 900px;
  margin: 0;
}

.layout-float #footer .copyright {
  max-width: 900px;
  padding-left: 60px;
}

.layout-float .cover-slider {
  padding-bottom: 53.3333%;
}

.layout-float .cover-slider .prev {
  margin-left: -430px;
}

.layout-float .cover-slider .next {
  margin-left: 381px;
}

.layout-float .cover-slider ul li .text-box .title {
  font-size: 3em;
}

.layout-float .cover-thumbnail-list-1 ul li {
  padding-left: 36px;
}

.layout-float .cover-special-contents ul li .category {
  margin-top: 57px;
}

.layout-float .cover-special-contents ul li .title {
  margin-bottom: 26px;
  font-size: 1.5em;
}

.layout-float .cover-special-contents ul li .title:after {
  margin-top: 22px;
}

.layout-float .cover-special-contents ul li .excerpt {
  height: 10em;
  margin-bottom: 35px;
  padding: 0 55px;
  line-height: 1.7142;
}

.layout-float .cover-wide-panel .box {
  width: 800px;
  margin-top: -80px;
}

.layout-float .cover-wide-panel h2 {
  font-size: 1.5em;
}

.layout-float .cover-wide-panel p {
  padding: 0 60px;
}

.layout-float .post-item {
  width: 30.6666%;
}

.layout-float .post-item:nth-child(4n+1) {
  padding-left: 4%;
}

.layout-float .post-item:nth-child(3n+1) {
  padding-left: 0;
}

.layout-float.post-type-text .post-item {
  width: auto;
  padding-left: 0;
}

.layout-float .related-articles ul li .thum {
  padding-bottom: 100%;
}

.layout-float .cover-thumbnail-list-2 ul {
  margin-left: -36px;
}

.layout-float .cover-thumbnail-list-2 ul li {
  width: 33.3333%;
  padding-left: 36px;
}

.layout-float #aside .sidebar-1,
.layout-float #aside .sidebar-2,
.layout-float #aside .sidebar-3 {
  width: 33.3333%;
}

.layout-float #aside .sidebar-1 {
  padding-right: 24px;
}

.layout-float #aside .sidebar-3 {
  padding-left: 24px;
}

.layout-float .related-articles ul {
  margin-left: -36px;
}

.layout-float .related-articles ul li {
  padding-left: 36px;
}

/* Black Type */
.color-dark,
.color-dark #header,
.color-dark .cover-wide-panel .box,
.color-dark #aside .search input,
.color-dark .comments .comment-form input[type=text],
.color-dark .comments .comment-form input[type=password],
.color-dark .comments .comment-form textarea {
  background-color: #141414;
}

.color-dark .entry-content ul li:before {
  background-color: #333;
}

.color-dark #footer {
  background-color: #000;
}

.color-dark #gnb ul li a:hover:after,
.color-dark .cover-thumbnail-list-1 h2:after,
.color-dark .cover-special-contents ul li .title:after {
  background-color: #d4bca7;
}

.color-dark .btn:hover,
.color-dark .pagination .view-more:hover {
  background-color: #7A583A;
}

.color-dark #header,
.color-dark #aside,
.color-dark .post-item,
.color-dark .cover-thumbnail-list-2 ul li,
.color-dark .comments .comment-list ul li,
.color-dark .comments {
  border-color: #000;
}

.color-dark .hgroup,
.color-dark .another-category,
.color-dark .related-articles h2 {
  border-color: #d4bca7;
}

.color-dark #gnb ul li,
.color-dark #aside .posts li,
.color-dark #aside .count ul li,
.color-dark #aside .search fieldset,
.color-dark .entry-content blockquote,
.color-dark .entry-content table,
.color-dark .entry-content table thead th,
.color-dark .entry-content table tbody td,
.color-dark .another-category table th,
.color-dark .another-category table td,
.color-dark .comments .comment-form input[type=text],
.color-dark .comments .comment-form input[type=password],
.color-dark .comments .comment-form textarea,
.color-dark .comments .comment-form .field .secret label:before {
  border-color: #333;
}

.color-dark .btn,
.color-dark .pagination .view-more,
.color-dark .post-header .list-type button,
.color-dark .pagination .prev,
.color-dark .pagination .next,
.color-dark .entry-content a,
.color-dark .cover-thumbnail-list-2 h2,
.color-dark .post-header {
  border-color: #7A583A;
}

.color-dark .post-item .more,
.color-dark .cover-thumbnail-list-2 ul li .more,
.color-dark .pagination a,
.color-dark .entry-content a {
  color: #7a583a;
}

.color-dark #header h1 a {
  color: #d4bda9;
}

.color-dark #gnb ul li a:hover,
.color-dark #aside .posts li a:hover,
.color-dark #aside .tags .more:hover,
.color-dark #aside .count .total,
.color-dark #footer a,
.color-dark .tags .items a:hover,
.color-dark .cover-thumbnail-list-1 h2,
.color-dark .cover-special-contents ul li .title,
.color-dark .cover-wide-panel h2,
.color-dark .post-item a:hover .title,
.color-dark .post-item a:hover .more,
.color-dark .cover-thumbnail-list-2 ul li a:hover .title,
.color-dark .cover-thumbnail-list-2 ul li a:hover .more,
.color-dark .pagination a:hover,
.color-dark .hgroup h1,
.color-dark .pagination .selected,
.color-dark .comments h2 .count,
.color-dark .cover-thumbnail-list-1 ul li a:hover {
  color: #d4bca7;
}

.color-dark #gnb ul li a,
.color-dark #aside h2,
.color-dark .hgroup .category,
.color-dark .cover-thumbnail-list-1 h2 em,
.color-dark .cover-special-contents ul li .category,
.color-dark .cover-wide-panel .category,
.color-dark .entry-content h2,
.color-dark .post-item a:hover .excerpt,
.color-dark .cover-thumbnail-list-2 h2,
.color-dark .cover-thumbnail-list-2 ul li a:hover .excerpt,
.color-dark .post-header h2,
.color-dark .another-category h4,
.color-dark .tags h2,
.color-dark .related-articles h2 strong,
.color-dark .comments h2,
.color-dark .comments .comment-list ul li .author-meta .nickname,
.color-dark .comments .comment-list ul li .author-meta a,
.color-dark .btn:hover,
.color-dark .pagination .selected,
.color-dark .pagination .view-more:hover {
  color: #fff;
}

.color-dark #aside .posts li a,
.color-dark #aside .count ul li,
.color-dark #aside .search input,
.color-dark .cover-thumbnail-list-1 ul li a,
.color-dark .cover-special-contents ul li .excerpt,
.color-dark .cover-wide-panel p,
.color-dark .post-item .excerpt,
.color-dark .cover-thumbnail-list-2 ul li .excerpt,
.color-dark .entry-content p,
.color-dark .entry-content ul li,
.color-dark .entry-content ol li,
.color-dark .entry-content table,
.color-dark .tags .items a,
.color-dark .another-category table th a {
  color: #808080;
}

.color-dark #aside .search input::-webkit-input-placeholder,
.color-dark .comments .comment-form input::-webkit-input-placeholder,
.color-dark .comments .comment-form textarea::-webkit-input-placeholder {
  color: #333;
}

.color-dark #aside .tags .more,
.color-dark .btn,
.color-dark .pagination .view-more,
.color-dark .comments .comment-list ul li .author-meta .control a {
  color: #7a583a;
}

.color-dark .post-item .title,
.color-dark .cover-thumbnail-list-2 ul li .title {
  color: #ccc;
}

.color-dark #aside .search button {
  background-position-x: -37px;
}

.color-dark #aside .search button:hover,
.color-dark #aside .search button:focus,
.color-dark #aside .search input:focus+button {
  background-position-x: 13px;
}

.color-dark #aside .tags .more:after {
  background-position-x: -50px;
}

.color-dark #aside .tags .more:hover:after {
  background-position-x: 0;
}

.color-dark .pagination .prev {
  background-position-x: -100px;
}

.color-dark .pagination .next {
  background-position-x: -150px;
}

.color-dark .pagination .prev:hover {
  background-position-x: 0;
}

.color-dark .pagination .next:hover {
  background-position-x: -50px;
}

.color-dark .post-header .list-type .thum {
  background-position-x: -100px;
}

.color-dark .post-header .list-type .thum:hover,
.color-dark .post-header .list-type .thum.current {
  background-position-x: 0;
}

.color-dark .post-header .list-type .list {
  background-position-x: -150px;
}

.color-dark .post-header .list-type .list:hover,
.color-dark .post-header .list-type .list.current {
  background-position-x: -50px;
}

.color-dark .pagination .view-more:before {
  background-position-x: -100px;
}

.color-dark .pagination .view-more:hover:before {
  background-position-x: -50px;
}

.color-dark .btn:after {
  background-position-x: -100px;
}

.color-dark .btn:hover:after,
.color-dark .pagination .view-more:hover {
  background-position-x: 0;
}

.color-dark .post-item .more:after,
.color-dark .cover-thumbnail-list-2 ul li .more:after {
  background-position-x: -50px;
}

.color-dark .post-item a:hover .more:after,
.color-dark .cover-thumbnail-list-2 ul li a:hover .more:after {
  background-position-x: 0;
}

.color-dark #header .mobile-menu span,
.color-dark #header .mobile-menu:before,
.color-dark #header .mobile-menu:after {
  background-color: #D4BCA7;
}

.color-dark #gnb {
  background-color: #141414;
}

.color-dark .container_postbtn .postbtn_like .txt_like {
  color: #808080;
}

/* Retina Display */
@media only screen and (-webkit-min-device-pixel-ratio:1.5) {

  #aside .tags .more:after,
  #aside .search button,
  .cover-slider .prev,
  .cover-slider .next,
  .post-header .list-type button,
  .post-item .thum:before,
  .cover-thumbnail-list-2 ul li .thum:before,
  .post-item .more:after,
  .cover-thumbnail-list-2 ul li .more:after,
  .post-btn button,
  .related-articles ul li .thum:before,
  .comments .comment-form .field .secret input[type=checkbox]:checked+label:before,
  .pagination .prev,
  .pagination .next,
  .pagination .view-more:before {
    background-image: url(./images/ico_package_2x.png);
    background-size: 200px auto;
  }
}

/* Media Screen - Tablet */
@media screen and (max-width:1199px) {

  #header,
  #aside,
  #content .inner,
  .cover-thumbnail-list-1,
  .cover-special-contents,
  .cover-thumbnail-list-2,
  .pagination {
    padding-left: 34px;
    padding-right: 34px;
  }

  .cover-slider .prev {
    left: 20px;
    margin-left: 0;
  }

  .cover-slider .next {
    left: auto;
    right: 20px;
    margin-left: 0;
  }

  .cover-special-contents ul li .box {
    margin-top: -177px;
  }

  .cover-special-contents ul li .excerpt {
    height: 6.4284em;
    -webkit-line-clamp: 3;
  }

  .cover-wide-panel .box {
    max-width: none;
    margin-left: 50px;
    margin-right: 50px
  }

  .entry-content img.alignleft,
  .entry-content img.alignright {
    max-width: 50%;
  }

  .layout-float #header,
  .layout-float .cover-thumbnail-list-1,
  .layout-float .cover-special-contents,
  .layout-float .cover-wide-panel,
  .layout-float .cover-thumbnail-list-2,
  .layout-float .pagination,
  .layout-float #content .inner {
    padding-left: 0;
    padding-right: 0;
  }

  .layout-float .cover-thumbnail-list-1 h2,
  .layout-float .cover-special-contents ul li .title,
  .layout-float .cover-wide-panel h2 {
    font-size: 1.25em;
  }

  .layout-float .cover-thumbnail-list-1 ul li {
    padding-left: 20px;
  }

  .layout-float .cover-special-contents ul li .category {
    margin-top: 30px;
  }

  .layout-float .cover-special-contents ul li .title {
    margin-bottom: 17px;
  }

  .layout-float .cover-special-contents ul li .title:after {
    margin-top: 16px;
  }

  .layout-float .cover-special-contents ul li .excerpt {
    height: 5.1426em;
    margin-bottom: 21px;
    padding: 0 10%;
    font-size: 0.75em;
  }

  .layout-float .cover-wide-panel {
    margin-bottom: 80px;
  }

  .layout-float .cover-wide-panel p {
    padding: 0 10%;
    font-size: 0.75em;
  }

  .layout-float .cover-thumbnail-list-2 ul {
    margin-left: -20px;
  }

  .layout-float .cover-thumbnail-list-2 ul li {
    padding-left: 20px;
  }

  .layout-float .cover-thumbnail-list-2 ul li .title,
  .layout-float .post-item .title {
    font-size: 1em;
  }

  .layout-float .cover-thumbnail-list-2 ul li .excerpt,
  .layout-float .post-item .excerpt {
    height: 5em;
    font-size: 0.75em;
    line-height: 1.6666;
  }

  .layout-float .post-header {
    margin: 0;
  }

  .layout-float #content {
    padding: 80px 34px 0;
  }

  .layout-float .cover-wide-panel .box {
    width: auto;
  }

  .layout-float #aside {
    padding-left: 34px;
    padding-right: 34px;
  }

  .layout-float #aside .sidebar-1 {
    width: 50%;
    padding: 0 10px 0 0;
  }

  .layout-float #aside .sidebar-2 {
    width: 50%;
    margin: 0;
    padding: 0 0 0 10px;
  }

  .layout-float #aside .sidebar-3 {
    clear: both;
    float: none;
    width: auto;
    padding: 0;
  }

  .layout-float #aside .search {
    float: left;
    width: 50%;
    padding-right: 10px;
    box-sizing: border-box;
  }

  .layout-float #aside .count {
    float: right;
    width: 50%;
    margin: 0;
    padding-left: 10px;
    box-sizing: border-box;
  }
}

@media screen and (max-width:1023px) {
  #header h1 {
    float: none;
    padding: 20px 50px 20px 0;
  }

  #header h1 img {
    width: auto;
    height: 28px;
  }

  #header .mobile-menu {
    display: block;
    position: absolute;
    top: 50%;
    right: 19px;
    width: 48px;
    height: 48px;
    margin-top: -24px;
    text-indent: -999em;
    outline: none;
  }

  #header .mobile-menu span,
  #header .mobile-menu:before,
  #header .mobile-menu:after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    height: 2px;
    margin-left: -9px;
    background-color: #7a583a;
    -webkit-transition: -webkit-transform .3s;
    transition: transform .3s;
  }

  #header .mobile-menu span {
    top: 50%;
    margin-top: -1px;
  }

  #header .mobile-menu:before {
    content: "";
    margin-top: -8px;
  }

  #header .mobile-menu:after {
    content: "";
    margin-top: 6px;
  }

  #header .mobile-menu.on {
    position: fixed;
    top: 10px;
    margin-top: 0;
    z-index: 610;
    outline: none;
  }

  #header .mobile-menu.on span {
    display: none;
  }

  #header .mobile-menu.on:before {
    margin-top: -1px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  #header .mobile-menu.on:after {
    margin-top: -1px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  #gnb {
    position: fixed;
    top: 0;
    right: -300px;
    z-index: 600;
    width: 300px;
    height: 100%;
    padding-top: 68px;
    background-color: #fff;
    box-sizing: border-box;
    -webkit-transition: right .3s;
    transition: right .3s;
  }

  #gnb ul {
    overflow-y: auto;
    height: 100%;
  }

  #gnb ul li {
    float: none;
    padding: 0;
    border-top: 1px solid #ebebeb;
    font-size: 1.125em;
  }

  #gnb ul li a {
    padding: 19px 30px 12px;
  }

  #gnb ul li a:hover:after {
    display: none;
  }

  #gnb.on {
    right: 0;
  }

  #aside {
    margin-top: 80px;
  }

  #aside .sidebar-1 {
    width: 50%;
    padding: 0 10px;
  }

  #aside .sidebar-2 {
    width: 50%;
    margin: 0;
    padding: 0 10px;
  }

  #aside .sidebar-3 {
    clear: both;
    float: none;
    width: auto;
    padding: 0;
  }

  #aside .search {
    float: left;
    width: 50%;
    padding-right: 10px;
    box-sizing: border-box;
  }

  #aside .count {
    float: right;
    width: 50%;
    margin: 0;
    padding-left: 10px;
    box-sizing: border-box;
  }

  #header,
  .cover-thumbnail-list-1,
  .cover-special-contents {
    padding: 0 34px;
  }

  .cover-slider {
    margin-bottom: 50px;
    padding-bottom: 39.0625%;
  }

  .cover-slider ul li .text-box .title {
    margin-bottom: 21px;
    font-size: 2.25em;
  }

  .cover-slider ul li .text-box .title em {
    margin-bottom: 8px;
    font-size: 0.5555em;
  }

  .btn, a.btn {
    width: 138px;
  }

  .cover-thumbnail-list-1 {
    margin-bottom: 41px;
  }

  .cover-thumbnail-list-1 h2 {
    font-size: 1.5em;
  }

  .cover-thumbnail-list-1 h2 em {
    margin-bottom: 3px;
    font-size: 0.5833em;
  }

  .cover-thumbnail-list-1 h2:after {
    width: 40px;
    margin-top: 24px;
  }

  .cover-thumbnail-list-1 ul li {
    padding-left: 20px;
    font-size: 0.75em;
  }

  .cover-special-contents {
    margin-bottom: 50px;
  }

  .cover-special-contents ul li .category {
    margin: 48px 0 -46px;
  }

  .cover-special-contents ul li .title {
    margin: 48px 0 26px;
    font-size: 1.5em;
  }

  .cover-special-contents ul li .title:after {
    margin-top: 21px;
  }

  .cover-special-contents ul li .excerpt {
    height: 5.1426em;
    margin-bottom: 38px;
    padding: 0 10%;
    line-height: 1.7142;
  }

  .cover-wide-panel {
    margin-bottom: 100px;
  }

  .cover-wide-panel .bg {
    height: 180px;
  }

  .cover-wide-panel .box {
    margin-top: -65px;
    padding-top: 48px;
  }

  .cover-wide-panel .category {
    margin-bottom: 0;
  }

  .cover-wide-panel h2 {
    margin-bottom: 20px;
    font-size: 1.5em;
  }

  .cover-wide-panel h2:after {
    margin-top: 24px;
  }

  .post-header:first-child {
    margin-top: 50px;
  }

  .cover-thumbnail-list-2 ul {
    margin-left: -20px;
  }

  .cover-thumbnail-list-2 ul li {
    padding: 20px 0 0 20px;
  }

  .post-header {
    margin: 0 34px;
  }

  .post-item .title,
  .cover-thumbnail-list-2 ul li .title {
    font-size: 1.125em;
  }

  .post-item {
    width: 22.75%;
    padding-left: 3%;
  }

  .post-type-text .post-item {
    padding: 30px 0 22px;
  }

  .post-type-text .post-item .title {
    margin: 0 0 2px;
    padding: 0;
    font-size: 1em;
  }

  .post-type-text .post-item .excerpt {
    margin-bottom: 9px;
    -webkit-line-clamp: 2;
    font-size: 0.75em;
  }

  .hgroup {
    margin-bottom: 50px;
    padding-bottom: 30px;
  }

  .related-articles {
    margin-bottom: 80px;
  }

  .related-articles ul {
    margin-left: -20px;
  }

  .related-articles ul li {
    padding-left: 20px;
  }

  .related-articles ul li .title {
    font-size: 0.75em;
  }

  .comments {
    margin-bottom: 40px;
  }

  .layout-float #wrap {
    padding-left: 180px;
  }

  .layout-float #header {
    width: 180px;
  }

  .layout-float #gnb {
    position: relative;
    width: auto;
    top: auto;
    right: auto;
    padding: 0 30px;
  }

  .layout-float #gnb ul li {
    font-size: 0.875em;
    border-top: 0;
  }

  .layout-float .post-item {
    padding-left: 4%;
  }

  .layout-float #header .mobile-menu {
    display: none;
  }

  .layout-float .cover-slider {
    padding-bottom: 57.6923%;
  }

  .layout-float .cover-slider ul li .text-box .title {
    font-size: 1.875em;
  }

  .layout-float .related-articles ul {
    margin-left: -20px;
  }

  .layout-float .related-articles ul li {
    padding-left: 20px;
  }
}

/* Media Screen - Mobie */
@media screen and (max-width:767px) {

  #header,
  #content .inner,
  .cover-thumbnail-list-1,
  .cover-thumbnail-list-2 {
    padding: 0 20px;
  }

  .pagination {
    padding: 0 20px;
    margin: 20px auto 60px;
  }

  .cover-special-contents {
    padding: 0;
  }

  #header h1 {
    line-height: 20px;
  }

  #header h1 img {
    height: 20px;
  }

  #header .mobile-menu {
    right: 0;
  }

  #header .mobile-menu.on {
    top: 6px;
  }

  #gnb {
    padding-top: 60px;
  }

  #aside {
    padding: 40px 20px;
  }

  #aside .sidebar-1,
  #aside .sidebar-2,
  #aside .sidebar-3,
  #aside .search,
  #aside .count {
    float: none;
    width: auto;
    padding: 0;
  }

  #aside .posts li a {
    padding: 7px 0 4px;
  }

  .cover-slider {
    padding-bottom: 75%;
  }

  .cover-slider .prev,
  .cover-slider .next {
    width: 24px;
    height: 42px;
    margin-top: -21px;
    background-size: 100px auto;
  }

  .cover-slider .prev {
    left: 10px;
    background-position: 0 -100px;
  }

  .cover-slider .prev:hover {
    background-position-x: -50px;
  }

  .cover-slider .next {
    right: 10px;
    background-position: -25px -100px;
  }

  .cover-slider .next:hover {
    background-position-x: -75px;
  }

  .cover-slider .paging {
    bottom: 20px;
  }

  .cover-slider ul li .text-box .title {
    margin-bottom: 28px;
    padding: 0 30px;
    font-size: 1.5em;
  }

  .cover-slider ul li .text-box .title em {
    margin-bottom: 10px;
    font-size: 0.75em;
  }

  .cover-thumbnail-list-1 {
    margin-bottom: 30px;
  }

  .cover-thumbnail-list-1 h2 {
    float: none;
    width: auto;
    margin-bottom: 20px;
    text-align: center;
  }

  .cover-thumbnail-list-1 h2 br {
    display: none;
  }

  .cover-thumbnail-list-1 h2:after {
    margin: 24px auto 0;
  }

  .cover-thumbnail-list-1 ul {
    float: none;
    width: auto;
  }

  .cover-thumbnail-list-1 ul li {
    float: none;
    width: auto;
    margin-bottom: 10px;
    padding: 0;
    font-size: 0.875em;
    line-height: 2.2857;
  }

  .cover-thumbnail-list-1 ul li .thum img {
    width: 100%;
  }

  .cover-special-contents {
    margin: 0;
  }

  .cover-special-contents ul li,
  .cover-special-contents ul li:nth-child(even) {
    width: auto;
    margin-bottom: 100px;
    padding: 0;
  }

  .cover-special-contents ul li .thum,
  .cover-special-contents ul li:nth-child(even) .thum {
    float: none;
    width: auto;
    margin: 0;
  }

  .cover-special-contents ul li .box {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    margin: 0;
  }

  .cover-special-contents ul li .category {
    margin: 28px 0 -25px;
  }

  .cover-special-contents ul li .title {
    margin: 28px 0 16px;
  }

  .cover-special-contents ul li .title:after {
    margin-top: 13px;
  }

  .cover-special-contents ul li .excerpt {
    margin-bottom: 46px;
  }

  .cover-wide-panel {
    margin-bottom: 80px;
  }

  .cover-wide-panel .bg {
    height: 100px;
  }

  .cover-wide-panel .box {
    margin: -20px 10px 0;
  }

  .cover-wide-panel p {
    padding: 0 10px;
  }

  .cover-thumbnail-list-2 {
    margin-bottom: 20px;
  }

  .cover-thumbnail-list-2 ul {
    margin-left: -10px;
  }

  .cover-thumbnail-list-2 ul li {
    width: 50%;
    margin-bottom: 20px;
    padding-left: 10px;
  }

  .post-item .title,
  .cover-thumbnail-list-2 ul li .title {
    padding-right: 10%;
    font-size: 1em;
    box-sizing: border-box;
  }

  .post-item .excerpt,
  .cover-thumbnail-list-2 ul li .excerpt {
    height: 2.5rem;
    margin-bottom: 8px;
    padding-right: 10%;
    font-size: 0.75em;
    line-height: 1.25rem;
  }

  .post-header {
    margin: 0 20px;
  }

  .post-item {
    width: 50%;
    padding-left: 0;
    box-sizing: border-box;
  }

  .post-type-thumbnail .post-item {
    border-bottom: none;
  }

  .post-item:nth-child(odd) {
    padding-right: 5px;
  }

  .post-item:nth-child(even) {
    padding-left: 5px;
  }

  .post-type-text .post-item .thum {
    width: 100px;
    height: 100px;
    margin-left: 28px;
  }

  .post-type-text .post-item .thum img {
    width: 100px;
    margin: 0;
  }

  .hgroup {
    padding: 49px 0 30px;
  }

  .hgroup.guest {
    margin: 0 20px 25px;
  }

  .hgroup.tag {
    margin: 0 20px;
  }

  #content .tags.section {
    padding: 0 20px;
  }

  .entry-content h2 {
    font-size: 1.125em;
  }

  .entry-content .table-wrap {
    overflow: auto;
    width: 100%;
  }

  .entry-content table {
    width: 680px;
    table-layout: fixed;
    font-size: 0.75em;
  }

  .entry-content img.alignleft,
  .entry-content img.alignright {
    max-width: 100%;
  }

  .related-articles ul {
    margin-left: -10px;
  }

  .related-articles ul li {
    width: 50%;
    margin-bottom: 10px;
    padding-left: 10px;
  }

  .comments {
    margin-bottom: 20px;
  }

  .comments .comment-list {
    margin-bottom: 10px;
    border-top: 1px solid #e6e6e6;
  }

  .comments .comment-list ul li {
    padding-bottom: 0;
  }

  .comments .comment-list ul li ul {
    border-top: 1px solid #e6e6e6;
  }

  .comments .comment-list ul li ul li {
    padding: 20px 0 0 48px;
  }

  .comments .comment-list ul li .author-meta,
  .comments .comment-list ul li ul li .author-meta {
    position: relative;
    top: 0;
    left: 0;
  }

  .comments .comment-list ul li .author-meta img {
    position: absolute;
    top: 0;
    left: 0;
  }

  .comments .comment-list ul li .author-meta .nickname,
  .comments .comment-list ul li .author-meta .date {
    display: block;
    float: none;
    line-height: 1.5;
  }

  .comments .comment-list ul li .author-meta .nickname .tistoryProfileLayerTrigger {
    margin-bottom: 4px;
  }

  .comments .comment-list ul li .author-meta .date {
    margin-left: 0;
    margin-top: 2px;
  }

  .comments .comment-list ul li .author-meta .date::before {
    display: none;
  }

  .comments .comment-list ul li p {
    margin: 14px 0 0;
  }

  .comments .comment-list ul li .control {
    position: relative;
    top: auto;
    right: auto;
    display: block;
    margin: 9px 0 18px -2px;
  }

  .comments .comment-list ul li ul li .control {
    top: auto;
  }

  .comments .comment-form .field {
    width: auto;
    margin: 0;
    padding-right: 80px;
  }

  .comments .comment-form .field .secret {
    float: none;
    position: absolute;
    bottom: 10px;
    right: 0;
  }

  .comments .comment-form .field .secret label {
    line-height: 20px;
  }

  .comments .comment-form input[type=text],
  .comments .comment-form input[type=password] {
    display: block;
    width: 100%;
    margin-bottom: 10px;
  }

  .comments.guest {
    margin-bottom: 20px;
    padding: 0 20px;
  }

  .pagination a {
    margin: 0 5px;
  }

  .layout-float #wrap {
    padding: 0;
  }

  .layout-float #header {
    float: none;
    position: relative;
    z-index: auto;
    width: 100%;
    height: auto;
    padding: 0 10px;
    border-bottom-width: 1px;
    box-sizing: border-box;
  }

  .layout-float #header h1 {
    float: none;
    padding: 20px 0;
    text-align: left;
  }

  .layout-float #header .mobile-menu {
    display: block;
  }

  .layout-float #gnb {
    position: fixed;
    top: 0;
    right: -300px;
    z-index: 600;
    width: 300px;
    height: 100%;
    padding: 60px 0 0;
    background-color: #fff;
    box-sizing: border-box;
    -webkit-transition: right .3s;
    transition: right .3s;
    box-sizing: border-box;
  }

  .layout-float #gnb.on {
    right: 0;
  }

  .layout-float #gnb ul li {
    float: none;
    padding: 0;
    border-top: 1px solid #ebebeb;
    border-bottom: none;
    font-size: 1.125em;
    text-align: left;
  }

  .layout-float #gnb ul li a {
    padding: 19px 30px 12px;
  }

  .layout-float #content {
    padding: 0;
  }

  .layout-float .cover-thumbnail-list-1 ul li {
    padding: 0;
  }

  .layout-float #header,
  .layout-float .cover-thumbnail-list-1,
  .layout-float .cover-special-contents,
  .layout-float .cover-wide-panel,
  .layout-float .cover-thumbnail-list-2,
  .layout-float .pagination,
  .layout-float #content .inner {
    padding: 0 10px;
  }

  .layout-float .cover-slider {
    padding-bottom: 75%;
  }

  .layout-float .cover-slider .prev {
    left: 10px;
    margin-left: 0;
  }

  .layout-float .cover-slider ul li .text-box .title {
    margin-bottom: 28px;
    padding: 0 30px;
    font-size: 1.5em;
  }

  .layout-float .cover-slider ul li .text-box .title em {
    margin-bottom: 10px;
    font-size: 0.75em;
  }

  .layout-float .cover-thumbnail-list-1 h2,
  .layout-float .cover-special-contents ul li .title,
  .layout-float .cover-wide-panel h2 {
    font-size: 1.5em;
  }

  .layout-float .cover-special-contents ul li .excerpt {
    height: 5.1426em;
    margin-bottom: 46px;
    padding: 0 10%;
    line-height: 1.7142;
    font-size: 0.875em;
  }

  .layout-float .cover-wide-panel .box {
    margin: -20px 10px 0;
  }

  .layout-float .cover-wide-panel p {
    margin-bottom: 48px;
    padding: 0 10px;
    font-size: 0.875em;
    line-height: 2.1428;
  }

  .layout-float .cover-thumbnail-list-2 ul {
    margin-left: -10px;
  }

  .layout-float .cover-thumbnail-list-2 ul li {
    width: 50%;
    padding-left: 10px;
  }

  .layout-float .post-header {
    margin: 0 10px;
  }

  .layout-float .post-item {
    width: 50%;
    padding-left: 0;
  }

  .layout-float .post-item:nth-child(4n+1) {
    padding-left: 0;
  }

  .layout-float .post-item:nth-child(even) {
    padding-left: 5px;
  }

  .layout-float .related-articles ul {
    margin-left: -10px;
  }

  .layout-float .related-articles ul li {
    padding-left: 10px;
  }

  .layout-float #aside {
    padding: 40px 10px;
  }

  .layout-float #aside .sidebar-1,
  .layout-float #aside .sidebar-2,
  .layout-float #aside .sidebar-3,
  .layout-float #aside .search,
  .layout-float #aside .count {
    float: none;
    width: auto;
    padding: 0;
  }

  .layout-float.color-dark #gnb {
    background-color: #141414;
  }

  .layout-float.color-dark #gnb ul li {
    border-color: #333;
  }
}

.revenue_unit_wrap.position_list {
  max-width: 860px;
  margin: 30px auto
}

.guest .tt-comment-cont {
  padding-top: 40px;
  padding-bottom: 40px;
}

.tt-comment-cont .tt-box-total .tt_txt_g {
  font-size: 15px;
}

.tt-comment-cont .tt-box-total .tt_num_g {
  font-size: 15px;
  color: #935F30;
}

.tt-comment-cont .tt-wrap-cmt .tt-link-user {
  font-size: 15px;
}

.tt-comment-cont .tt-wrap-cmt .tt_desc {
  font-size: 15px;
  color: #666;
}

.tt-comment-cont .tt-txt-mention {
  color: #666;
}

.tt-comment-cont .tt-wrap-cmt .tt_txt_g {
  color: #935F30;
}

.tt-comment-cont .tt-link-comment .tt_num_g {
  color: #935F30;
}

.tt-comment-cont .tt-btn_register {
  width: 158px;
  height: 40px;
  background-color: #fff;
  color: #936030;
  border-radius: 0;
  border-color: #936030;
}

.tt-comment-cont .tt-btn_register:hover {
  color: #fff;
  background-color: #7A583A;
  border-color: #7A583A;
}

.tt-comment-cont .tt-btn_register:focus {
  color: #fff;
  background-color: #7A583A;
  border-color: #7A583A;
}

/* 전체 공통 */
#article-view {
  margin: 0;
  padding: 20px 20px 50px;
  word-wrap: break-word;
  color: #333;
  min-height: 370px;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Apple SD Gothic Neo", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: 0;
}

.contents_style>* {
  margin: 20px 0 0 0;
}

/* 텍스트 관련 */
#article-view h2[data-ke-size] {
  font-size: 1.62em;
  line-height: 1.46;
}

#article-view h3[data-ke-size] {
  font-size: 1.44em;
  line-height: 1.48;
}

#article-view h4[data-ke-size] {
  font-size: 1.25em;
  line-height: 1.55;
}

#article-view p[data-ke-size='size18'] {
  font-size: 1.12em;
  line-height: 1.67;
}

#article-view p[data-ke-size='size16'] {
  line-height: 1.75;
}

#article-view p[data-ke-size='size14'] {
  font-size: 0.87em;
  line-height: 1.71;
}

#article-view h2,
#article-view h3,
#article-view h4 {
  font-weight: normal;
  letter-spacing: -1px;
  color: #000;
  margin: 1em 0 20px;
}

#article-view p+p, #article-view p {
  margin-bottom: 30px;
}

#article-view h2+h2,
#article-view h3+h3,
#article-view h4+h4 {
  margin: 0;
}

#article-view h2+h3,
#article-view h2+h4,
#article-view h3+h4 {
  margin-top: 10px;
}

#article-view h2+p,
#article-view h3+p,
#article-view h4+p,
#article-view h5+p,
#article-view h6+p {
  margin-top: 10px;
}

#article-view div[data-ke-type='moreLess'] {
  caret-color: auto;
  background-color: #fafafa;
  padding: 20px 20px 22px;
  margin: 20px 0;
  border: 1px dashed #dddddd;
  color: #333333;
}

#article-view a {
  color: #0070d1;
  text-decoration: underline;
}

#article-view figure[data-ke-type='contentSearch'] a {
  text-decoration: none;
}

/* 인용문 */
#article-view blockquote[data-ke-style='style1'] {
  text-align: center;
  background: url(https://t1.daumcdn.net/axz_keditor/dist/latest/image/blockquote-style1.svg) no-repeat 50% 0;
  padding: 34px 0 0 0;
  font-size: 1.12em;
  color: #333;
  line-height: 1.67;
  border: 0 none;
  font-family: "Noto Serif KR";
}

#article-view blockquote[data-ke-style='style2'] {
  border-color: #d0d0d0;
  border-width: 0 0 0 4px;
  border-style: solid;
  padding: 1px 0 0 12px;
  color: #666;
  line-height: 1.75;
  font-size: 1em;
  text-align: left;
}

#article-view blockquote[data-ke-style='style3'] {
  border: 1px solid #dddddd;
  background-color: #fcfcfc;
  text-align: left;
  padding: 21px 25px 20px 25px;
  color: #666;
  font-size: 1em;
  line-height: 1.75;
}

#article-view blockquote {
  display: block;
  margin: 20px auto 0;
  letter-spacing: 0px;
}

/* 첨부: 공통 */

/* 이미지 클릭 관련 - lightbox */
#article-view span[data-lightbox] {
  cursor: pointer;
}

/* 첨부: 파일 */
#article-view figure.fileblock {
  width: 470px;
  height: 73px;
  box-sizing: border-box;
  position: relative;
  border-radius: 1px;
  margin-top: 20px;
  margin-bottom: 0px;
  box-shadow: 0 1px 4px 0 rgb(0 0 0 / 7%);
  border: solid 1px rgba(0, 0, 0, 0.1);
}

#article-view figure.fileblock a {
  display: block;
}

#article-view figure.fileblock .image {
  float: left;
  width: 30px;
  height: 30px;
  background-image: url('https://t1.daumcdn.net/tistory_admin/static/manage/post-editor/img_editor_content.svg');
  margin: 22px 17px 21px 22px;
  background-position: 0 0;
}

#article-view figure.fileblock .desc {
  position: absolute;
  left: 70px;
  right: 60px;
  top: 4px;
  bottom: 0;
}

#article-view figure.fileblock .filename {
  color: #333333;
  font-size: 14px;
  text-overflow: ellipsis;
  width: 100%;
  height: 20px;
  margin: 16px 0 0;
}

#article-view figure.fileblock .size {
  font-family: Pretendard-Regular;
  font-size: 12px;
  color: #777;
  height: 16px;
}

#article-view figure[data-ke-align=alignCenter].fileblock {
  margin-left: auto;
  margin-right: auto;
}

#article-view figure[data-ke-align=alignRight].fileblock {
  margin-left: auto;
}

#article-view figure.fileblock .name {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 272px;
  height: 20px;
  display: block;
}

#article-view figure.fileblock a::after {
  content: '';
  background-image: url('https://t1.daumcdn.net/tistory_admin/static/manage/post-editor/img_editor_content.svg');
  background-position: -40px 0;
  width: 30px;
  height: 30px;
  position: absolute;
  right: 24px;
  top: 19px;
}

/* 첨부: 이미지 */
#article-view figure.imageblock {
  display: table;
  position: relative;
}

#article-view figure.imageblock.alignLeft {
  text-align: left;
}

#article-view figure.imageblock.alignCenter {
  margin: 20px auto 0;
  text-align: center;
}

#article-view figure.imageblock.alignRight {
  text-align: right;
  margin-left: auto;
}

#article-view figure.imageblock.floatLeft {
  float: left;
  margin-right: 20px;
}

#article-view figure.imageblock.floatRight {
  float: right;
  margin-left: 20px;
}

#article-view figure.imageblock.widthContent {
  display: block;
}

#article-view figure.imageblock.widthContent img {
  width: 100%;
}

#article-view figure.imageblock.floatLeft figcaption,
#article-view figure.imageblock.floatRight figcaption {
  text-align: left;
}

#article-view figure.imageblock img {
  display: inline-block;
  max-width: 100%;
  margin: 0;
  height: auto;
}

#article-view iframe,
#article-view figure img,
#article-view figure iframe {
  max-width: 100%;
}

#article-view figure img:not([width]),
#article-view figure iframe:not([width]) {
  width: 100%;
}

#article-view figure {
  max-width: 100%;
  clear: both;
}

#article-view figure img {
  display: inline-block;
}

#article-view figure.imagegridblock+figure.imagegridblock,
#article-view figure.imagegridblock+figure.imageblock,
#article-view figure.imageblock+figure.imagegridblock {
  margin-top: 10px;
}

/* 캡션 텍스트 */
#article-view figure figcaption {
  font-size: 13px;
  color: #777;
  word-break: break-word;
  padding-top: 10px;
  min-height: 20px;
  caption-side: bottom;
  text-align: center;
  caret-color: auto;
  width: 100%;
  box-sizing: content-box;
}

/* 첨부: 이미지 그리드 */
#article-view figure.imagegridblock {
  position: relative;
  caret-color: transparent;
  background-color: transparent;
  width: 100%;
  height: auto;
  margin: 20px 0 0 0;
}

#article-view figure.imagegridblock .image-container {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
}

#article-view figure.imagegridblock .image-container>span {
  margin-right: 0;
  margin-top: 2px;
}

#article-view figure.imagegridblock img {
  margin: 0;
  height: inherit;
}

#article-view figure.imagegridblock span img {
  width: 100%;
}

hr[data-ke-style],
#article-view hr[data-ke-style] {
  border: none;
  font-size: 0;
  line-height: 0;
  margin: 20px auto;
  background: url(https://t1.daumcdn.net/axz_keditor/dist/latest/image/divider-line.svg);
  background-size: 200px 420px;
  cursor: default !important;
}

hr[data-ke-style='style1'],
#article-view hr[data-ke-style='style1'] {
  background-position: center 0;
  width: 64px;
  height: 4px;
  padding: 20px;
}

hr[data-ke-style='style2'],
#article-view hr[data-ke-style='style2'] {
  background-position: center -48px;
  width: 64px;
  height: 3px;
  padding: 20px;
}

hr[data-ke-style='style3'],
#article-view hr[data-ke-style='style3'] {
  background-position: center -96px;
  width: 64px;
  height: 8px;
  padding: 18px 20px;
}

hr[data-ke-style='style4'],
#article-view hr[data-ke-style='style4'] {
  background-position: center -144px;
  width: 2px;
  height: 60px;
  padding: 0 51px;

}

hr[data-ke-style='style4']+hr[data-ke-style='style4'],
#article-view hr[data-ke-style='style4']+hr[data-ke-style='style4'] {
  margin-top: 0;
}

hr[data-ke-style='style5'],
#article-view hr[data-ke-style='style5'] {
  background-position: center -208px;
  background-repeat: repeat-x;
  height: 2px;
  padding: 21px 0;
}

hr[data-ke-style='style6'],
#article-view hr[data-ke-style='style6'] {
  background-position: center -256px;
  background-repeat: repeat-x;
  height: 2px;
  padding: 21px 0;
}

hr[data-ke-style='style7'],
#article-view hr[data-ke-style='style7'] {
  background-position: center -304px;
  width: 200px;
  height: 19px;
  padding: 18px 20px 17px 20px;
}

hr[data-ke-style='style8'],
#article-view hr[data-ke-style='style8'] {
  background-position: center -362px;
  width: 200px;
  height: 19px;
  padding: 18px 20px 17px 20px;
}

/* 테이블 */
#article-view table[data-ke-style] {
  margin-bottom: 0px;
}

#article-view table {
  margin-bottom: 0px;
  border-color: #ddd;
}

#article-view table tbody tr {
  box-sizing: content-box;
}

#article-view table td {
  word-break: break-word;
  padding: 8px;
  font-size: 15px;
  line-height: normal;
}

#article-view table[data-ke-style='style1'] tr:first-child td {
  border-bottom: 1px solid #6ed3d8;
}

#article-view table[data-ke-style='style2'] tr:first-child td {
  border-bottom: 1px solid #008300;
}

#article-view table[data-ke-style='style3'] tr:first-child td {
  border-bottom: 1px solid #006dbe;
}

#article-view table[data-ke-style='style4'] tr:nth-child(2n) td {
  background-color: #f9f9f9;
}

#article-view table[data-ke-style='style5'] tr:nth-child(2n) td {
  background-color: #f8fbfb;
}

#article-view table[data-ke-style='style6'] tr:nth-child(2n) td {
  background-color: #f5f7f5;
}

#article-view table[data-ke-style='style7'] tr:nth-child(2n) td {
  background-color: #f6f8fb;
}

#article-view table[data-ke-style='style8'] tr:first-child td {
  border-bottom: 2px solid #797979;
}

#article-view table[data-ke-style='style8'] {
  border-left: 0 none;
  border-right: 0 none;
}

#article-view table[data-ke-style='style8'] td {
  border-right-color: transparent;
  border-left-color: transparent;
}

#article-view table[data-ke-style='style9'] tr:first-child td {
  border-bottom: 2px solid #6ed3d8;
}

#article-view table[data-ke-style='style9'] {
  border-left: 0 none;
  border-right: 0 none;
}

#article-view table[data-ke-style='style9'] td {
  border-right-color: transparent;
  border-left-color: transparent;
}

#article-view table[data-ke-style='style10'] tr:first-child td {
  border-bottom: 2px solid #008300;
}

#article-view table[data-ke-style='style10'] {
  border-left: 0 none;
  border-right: 0 none;
}

#article-view table[data-ke-style='style10'] td {
  border-right-color: transparent;
  border-left-color: transparent;
}

#article-view table[data-ke-style='style11'] tr:first-child td {
  border-bottom: 2px solid #2780d4;
}

#article-view table[data-ke-style='style11'] {
  border-left: 0 none;
  border-right: 0 none;
}

#article-view table[data-ke-style='style11'] td {
  border-right-color: transparent;
  border-left-color: transparent;
}

#article-view table[data-ke-style='style12'] tr:nth-child(odd) td {
  background-color: #f9f9f9;
}

#article-view table[data-ke-style='style12'] tr td:first-child {
  background-color: #efefef;
}

#article-view table[data-ke-style='style12'] tr:first-child td {
  background-color: #9b9b9b;
  border: 1px solid #888;
  color: #fff;
}

#article-view table[data-ke-style='style13'] tr:nth-child(odd) td {
  background-color: #f9f9f9;
}

#article-view table[data-ke-style='style13'] tr td:first-child {
  background-color: #efefef;
}

#article-view table[data-ke-style='style13'] tr:first-child td {
  background-color: #6ed3d8;
  border: 1px solid #5cbcc1;
  color: #fff;
}

#article-view table[data-ke-style='style14'] tr:nth-child(odd) td {
  background-color: #f9f9f9;
}

#article-view table[data-ke-style='style14'] tr td:first-child {
  background-color: #efefef;
}

#article-view table[data-ke-style='style14'] tr:first-child td {
  background-color: #008300;
  border: 1px solid #006d00;
  color: #fff;
}

#article-view table[data-ke-style='style15'] tr:nth-child(odd) td {
  background-color: #f9f9f9;
}

#article-view table[data-ke-style='style15'] tr td:first-child {
  background-color: #efefef;
}

#article-view table[data-ke-style='style15'] tr:first-child td {
  background-color: #2780d4;
  border: 1px solid #1568b7;
  color: #fff;
}

#article-view table[data-ke-style='style16'],
#article-view table[data-ke-style='style16'] tr,
#article-view table[data-ke-style='style16'] tr td {
  border-color: transparent;
}

/* 오픈 그래프 */
#article-view figure[data-ke-type='opengraph'] {
  margin: 10px 0;
}

#article-view figure[data-ke-type='opengraph'] a {
  box-sizing: initial;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07);
  border: solid 1px rgba(0, 0, 0, 0.1);
  text-decoration: none;
  color: #000;
}

#article-view figure[data-ke-type='opengraph'] a:hover {
  opacity: 1;
}

#article-view figure[data-ke-type='opengraph'] div.og-image {
  border-right: solid 1px rgba(0, 0, 0, 0.06);
  width: 200px;
  height: 200px;
  background-size: cover;
  background-position: center;
}

#article-view figure[data-ke-type='opengraph'] div.og-image button {
  display: none;
}

#article-view figure[data-ke-type='opengraph']:hover div.og-image button {
  cursor: pointer;
  border: none;
  display: block;
  position: absolute;
  top: 0px;
  right: 0px;
  background-color: #000;
  width: 15px;
  height: 15px;
}

#article-view figure[data-ke-type='opengraph'] p.og-title {
  color: #000000;
  font-size: 22px;
  padding-bottom: 10px;
  max-width: 467px;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin: 0px;
  overflow: hidden;
  font-family: Pretendard-Regular;
}

#article-view figure[data-ke-type='opengraph'] .og-desc {
  margin: 0px;
  max-width: 467px;
  text-overflow: ellipsis;
  overflow: hidden;
  font-family: Pretendard-Regular;
  font-size: 14px;
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: normal;
  color: #909090;
  max-height: 42px;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  display: -webkit-box;
}

@media (max-width: 600px) {
  #article-view figure[data-ke-type='opengraph'] a {
    height: 90px;
  }

  #article-view figure[data-ke-type='opengraph'] a::before {
    left: 44px;
  }

  #article-view figure[data-ke-type='opengraph'] div.og-image {
    width: 90px;
    height: 90px;
  }

  #article-view figure[data-ke-type='opengraph'] div.og-text {
    padding: 13px 12px 0 20px;
    height: 90px;
  }

  #article-view figure[data-ke-type='opengraph'] div.og-text p.og-title {
    font-size: 16px;
    -webkit-line-clamp: 1;
  }

  #article-view figure[data-ke-type='opengraph'] div.og-text p.og-desc {
    display: none;
  }

  #article-view figure[data-ke-type='opengraph'] div.og-text p.og-host {
    bottom: 10px;
  }
}

/* 비디오 첨부 */
#article-view figure[data-ke-type='video'] {
  display: block;
  table-layout: fixed;
  justify-content: center;
  align-items: center;
  position: relative;
  text-align: center;
  color: #bdbdbd;
  font-size: 16px;
  line-height: 30px;
}

#article-view figure[data-ke-type='video'][data-ke-style='alignLeft'] {
  text-align: left;
}

#article-view figure[data-ke-type='video'][data-ke-style='alignCenter'] {
  margin: 20px auto 0;
  text-align: center;
}

#article-view figure[data-ke-type='video'][data-ke-style='alignRight'] {
  text-align: right;
  margin-left: auto;
}

#article-view figure[data-ke-type='video'] img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}

#article-view figure[data-ke-type='video'][data-video-host] iframe {
  margin: 0px;
  display: block;
}

#article-view figure[data-ke-type='video']>iframe[width='0'][height='0'] {
  width: 860px;
  height: 484px;
  max-width: 100%;
}

/* 코드 블럭 */
#article-view pre code.hljs {
  font-size: 14px;
  padding: 20px;
  font-family: SF Mono, Menlo, Consolas, Monaco, monospace;
  border: solid 1px #ebebeb;
  line-height: 1.71;
  overflow: auto;
}

/* 접은 글 */
#article-view .moreless-content :first-child {
  margin-top: 0;
  margin-bottom: 0;
}

#article-view div[data-ke-type='moreLess'] .moreless-content {
  display: none;
}

#article-view div[data-ke-type='moreLess'].open .moreless-content {
  display: block;
}

#article-view div[data-ke-type='moreLess'] .btn-toggle-moreless {
  color: #909090;
  font-size: 16px;
  line-height: 26px;
  font-family: Pretendard-Regular, sans-serif;
  cursor: pointer;
  text-decoration: none;
}

/* 리스트 */
#article-view ul li,
#article-view ol li {
  margin: 0 0 3px 22px;
  line-height: 1.7;
}

#article-view ul,
#article-view ol {
  margin: 14px auto 24px;
  padding: 0 0 0 10px;
}

/* 이모티콘 */
#article-view figure[data-ke-type=emoticon][data-ke-align=alignCenter] {
  text-align: center;
}

#article-view figure[data-ke-type=emoticon][data-ke-align=alignLeft] {
  text-align: left;
}

#article-view figure[data-ke-type=emoticon][data-ke-align=alignRight] {
  text-align: right;
}

/* 지도 */
#article-view figure[data-ke-type='map'],
#article-view iframe[data-ke-type='map'] {
  display: block;
  margin: 0 auto;
}

/* 첨부: 이미지 슬라이드 */
#article-view figure.imageslideblock {
  clear: both;
  position: relative;
  font-size: 0;
  outline: 0 none;
}

#article-view figure.imageslideblock .btn {
  display: none;
  outline: none;
}

#article-view figure.imageslideblock.ready .btn {
  display: inline-block;
}

#article-view figure.imageslideblock.ready .mark {
  opacity: 1;
}

#article-view figure.imageslideblock div.image-container {
  position: relative;
  min-width: 480px;
  max-width: 100%;
  min-height: 300px;
  max-height: 860px;
  background-color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin: 0 auto;
}

#article-view figure.imageslideblock div.image-container span.image-wrap {
  display: none;
}

#article-view figure.imageslideblock div.image-container span.image-wrap.selected {
  display: inline;
}

#article-view figure.imageslideblock div.image-container img {
  max-width: 100%;
  max-height: 100%;
}

#article-view figure.imageslideblock div.image-container .btn {
  position: absolute;
  border: 0;
  background: transparent;
  width: 60px;
  height: 60px;
  top: 50%;
  margin-top: -20px;
}

#article-view figure.imageslideblock div.image-container .btn-prev {
  left: 0;
}

#article-view figure.imageslideblock div.image-container .btn-next {
  right: 0;
}

#article-view figure.imageslideblock div.image-container:hover .btn span {
  opacity: 0.3;
}

#article-view figure.imageslideblock div.image-container .btn span {
  background-image: url('https://t1.daumcdn.net/tistory_admin/static/manage/post-editor/img_editor_content.svg');
  text-indent: -10000px;
  overflow: hidden;
  width: 40px;
  height: 40px;
  opacity: 0;
  transition: opacity ease-in-out 0.2s;
  display: inline-block;
}

#article-view figure.imageslideblock div.image-container .btn:hover span {
  opacity: 1;
}

#article-view figure.imageslideblock div.image-container .btn .ico-prev {
  background-position: -220px 0;
}

#article-view figure.imageslideblock div.image-container .btn .ico-next {
  background-position: -260px 0;
}

#article-view figure.imageslideblock div.mark {
  display: block;
  height: 44px;
  text-align: center;
  opacity: 0;
  transition: opacity ease-in-out 0.2s;
}

#article-view figure.imageslideblock div.mark span {
  width: 30px;
  height: 4px;
  display: inline-block;
  margin: 20px 1px;
  background-color: #d6d6d6;
  text-indent: -10000px;
  overflow: hidden;
  cursor: pointer;
}

#article-view figure.imageslideblock div.mark span:first-child {
  background-color: #000;
  margin-left: 0;
}

#article-view figure.imageslideblock div.mark span:last-child {
  margin-right: 0;
}

#article-view figure.imageslideblock figcaption {
  text-align: center;
  color: #666;
  font-size: 14px;
}

#article-view figure.imageslideblock.alignLeft {
  text-align: left;
}

#article-view figure.imageslideblock.alignCenter {
  margin: 0 auto 20px;
  text-align: center;
}

#article-view figure.imageslideblock.alignRight {
  text-align: right;
  margin-left: auto;
}

#article-view figure img {
  vertical-align: baseline;
}

@media (max-width: 600px) {
  #article-view figure.imageslideblock div.image-container {
    min-width: 100%;
    width: 100%;
    max-height: 100%;
  }

  #article-view figure.imageslideblock div.image-container .btn span {
    opacity: 0.3;
  }
}

/* 구 에디터 속성 */
.btn_more, .btn_less {
  border: 0;
  background: transparent;
  display: block;
  height: 21px;
  margin: 20px 0;
  font-size: 14px;
  line-height: 14px;
  color: #888;
  position: relative;
  width: 100%;
  text-align: left;
}

.btn_less::before,
.btn_more::before {
  content: "...";
  display: inline-block;
  padding-right: 5px;
  font-size: 14px;
  line-height: 6px;
  vertical-align: top;
}

.box-timeline-content {
  word-break: break-all;
}
/* HELENA-ORBITAL-SKIN-START */
/* ==========================================================================
   HELENA PHONE — 다크 에디토리얼 스킨 (Whatever 기반)
   --------------------------------------------------------------------------
   팔레트
     배경    #08090a   표면 #0f1115 / #14161c   테두리 #1e2128
     본문    #f7f8f8   보조 #d8dbe0   뮤트 #8a8f98
     액센트  틸/골드 — 아래 :root 테마 토큰으로 블로그별 변경
   구조 = 평범(원래 Whatever 레이아웃 유지) + 디자인 = 프리미엄 다크
   ========================================================================== */

/* ── 테마 토큰 (블로그별 override 는 HTML 의 <style id="s21-theme"> 로) ── */
:root {
  /* PC에서 폰 베젤·카메라가 화면 전체가 아니라 콘텐츠(1160px) 한도에 맞게 — 스크롤시 페이지 밖으로 넘치지 않게 */
  --s21-frame-w: min(100vw - 32px, 1160px);
  --s21-frame-x: calc((100vw - var(--s21-frame-w)) / 2);
  --s21-accent: #2dd4bf;
  --s21-accent-rgb: 45, 212, 191;
  --s21-accent2: #e8b45a;
  --s21-accent2-rgb: 232, 180, 90;
  --s21-nebula-a: rgba(96, 70, 180, 0.52);
  --s21-nebula-b: rgba(45, 212, 191, 0.44);
  --s21-nebula-c: rgba(240, 180, 41, 0.30);
  --s21-star1: #ffffff;
  --s21-star2: #7fe7ff;
  --s21-star3: #ffd98a;
  --s21-meteor: #ffd98a;
  --s21-meteor-ang: -30deg;
  --s21-meteor-dx: -190px;
  --s21-meteor-dy: 110px;
}

/* ── 0. 글로벌 다크 베이스 ─────────────────────────────────────────────── */
html { background: #08090a; }
/* 스크롤 컨테이너 제어: body 스크롤 잠금 → 폰 화면(#wrap) 안에서만 스크롤 (Boss 2026-08-15) */
html, body {
  height: 100%;
  overflow: hidden;
  overscroll-behavior-y: contain;
}
body {
  background: #08090a !important;
  color: #f7f8f8;
}
#wrap {
  background:
    radial-gradient(1200px 720px at 16% -8%, var(--s21-nebula-a), transparent 58%),
    radial-gradient(1000px 620px at 96% 10%, var(--s21-nebula-b), transparent 55%),
    radial-gradient(880px 560px at 6% 102%, var(--s21-nebula-c), transparent 55%),
    radial-gradient(820px 520px at 60% 108%, rgba(var(--s21-accent2-rgb), 0.16), transparent 55%),
    #08090a !important;
  color: #f7f8f8;
  font-family: 'Pretendard', -apple-system, 'Apple SD Gothic Neo', 'Malgun Gothic',
               'Noto Sans KR', sans-serif;
  font-size: 16px;
  line-height: 1.75;
  letter-spacing: -0.01em;
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
#wrap, #wrap * { box-sizing: border-box; }

/* ── 0.5 스크롤 컨테이너 제어 (Boss 2026-08-15) ─────────────────────────
   "스크롤 컨테이너를 고정하고 내부만 움직이게 하라":
   body 스크롤 잠금 → #wrap 이 폰 화면(베젤 안)만 스크롤. 헤더는 fixed 로 상단 고정.
   콘텐츠가 베젤 밖으로 삐져나오지 않게 overflow 클리핑. */
#wrap {
  position: fixed;
  top: 88px;
  bottom: 16px;
  left: var(--s21-frame-x);
  right: var(--s21-frame-x);
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
  border-radius: 26px;
  scrollbar-gutter: stable;
}

/* 은은한 방사형 글로우 (틸 상단 / 골드 하단) */
#wrap::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(1100px 560px at 14% -8%, rgba(var(--s21-accent-rgb), 0.30), transparent 62%),
    radial-gradient(900px 480px at 90% 108%, rgba(var(--s21-accent2-rgb), 0.22), transparent 55%);
  z-index: 0;
}

/* ── 1. 헤더 — 글래스 스티키 바 ────────────────────────────────────────── */
#header {
  background: rgba(8,9,10,0.82);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  border-bottom: 1px solid rgba(255,255,255,0.06);
  position: fixed;   /* 상단 고정 (스크롤돼도 안 밀려 올라감) */
  top: 0;
  left: 0;
  right: 0;
  z-index: 10000;    /* 파티클(9980)·베젤(9990) 위로 — 항상 최상단 */
}
#header .inner {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 28px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#header h1 { margin: 0; font-size: 0; }
#header h1 a {
  font-size: 21px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--s21-accent);
  text-decoration: none;
  display: inline-flex;
  align-items: baseline;
  gap: 2px;
}
#header h1 a::before {
  content: "›_ ";
  color: var(--s21-accent);
  font-family: 'SFMono-Regular', 'JetBrains Mono', Consolas, monospace;
  font-weight: 700;
}
#header h1 a:hover { color: var(--s21-accent); transition: color .2s ease; }
#header hr { display: none; }

/* 네비게이션 */
#gnb ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 4px; }
#gnb li a {
  display: inline-block;
  padding: 8px 14px;
  border-radius: 9px;
  color: #c9ced6;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: background .16s ease, color .16s ease;
}
#gnb li a:hover { background: rgba(var(--s21-accent-rgb), 0.10); color: var(--s21-accent); }
#header .mobile-menu {
  background: #14161c;
  border: 1px solid #1e2128;
  color: #f7f8f8;
  border-radius: 8px;
  padding: 7px 12px;
}

/* ── 2. 컨테이너 ──────────────────────────────────────────────────────── */
.container {
  max-width: 1160px;
  margin: 0 auto;
  padding: 40px 28px 64px;
  position: relative;
  z-index: 1;
}
#content { min-width: 0; overflow-wrap: anywhere; }

/* ── 3. 글 목록 카드 ──────────────────────────────────────────────────── */
.post-item {
  background: #0f1115;
  border: 1px solid #1e2128;
  border-radius: 14px;
  padding: 24px;
  margin-bottom: 20px;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.post-item:hover {
  transform: translateY(-3px);
  border-color: rgba(var(--s21-accent-rgb), 0.32);
  box-shadow: 0 16px 40px -18px rgba(0,0,0,0.75), 0 0 0 1px rgba(var(--s21-accent-rgb), 0.10);
}
.post-item > a { text-decoration: none; display: block; }
.post-item .thum { display: none !important; }
.post-item .thum img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 10px;
  margin-bottom: 14px;
}
.post-item .title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
  font-size: 20.5px;
  font-weight: 600;
  line-height: 1.42;
  letter-spacing: -0.02em;
  color: #f7f8f8;
  margin-bottom: 8px;
}
.post-item:hover .title { color: var(--s21-accent); transition: color .18s ease; }
.post-item .excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 14.5px;
  line-height: 1.55;
  color: #b0b0a8;
}
.post-item .more {
  display: inline-block;
  margin-top: 12px;
  font-size: 13px;
  font-weight: 600;
  color: var(--s21-accent);
}
.post-item .more::after { content: " →"; transition: transform .15s ease; display: inline-block; }
.post-item:hover .more::after { transform: translateX(4px); }

/* 리스트형(post-type-text) — Whatever 스킨의 padding(28px 0)/제목(1.125em) 덮어쓰기 */
.post-type-text .post-item { padding: 24px !important; margin-bottom: 20px !important; }
.post-type-text .post-item .title {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  white-space: normal !important;
  font-size: 20.5px !important;
  margin-bottom: 8px !important;
}
.post-type-text .post-item .excerpt {
  -webkit-line-clamp: 4 !important;
  font-size: 14.5px !important;
  line-height: 1.55 !important;
}

/* 목록 하단 페이지네이션 */
.pagination { display: flex; gap: 8px; justify-content: center; margin: 28px 0; }
.pagination a, .pagination span {
  min-width: 40px; height: 40px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 10px;
  background: #0f1115;
  border: 1px solid #1e2128;
  color: #c9ced6;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
}
.pagination a:hover { border-color: rgba(var(--s21-accent-rgb), 0.38); color: var(--s21-accent); }
.pagination .selected, .pagination .selected a { background: var(--s21-accent); color: #04110e; border-color: var(--s21-accent); font-weight: 700; }

/* ── 4. 사이드바 (3열 위젯) ───────────────────────────────────────────── */
.sidebar-1, .sidebar-2, .sidebar-3 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 16px;
}
.sidebar-1 { max-width: 1160px; margin: 0 auto 24px; padding: 0 28px; }
.sidebar-1 .posts, .sidebar-2 .tags, .sidebar-3 .search {
  background: rgba(255,255,255,0.028);
  border: 1px solid #1e2128;
  border-radius: 14px;
  padding: 20px;
}
.sidebar-1 .posts h2, .sidebar-2 .tags h2, .sidebar-3 .search h2 {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #f7f8f8;
  margin: 0 0 14px;
  padding-left: 12px;
  border-left: 3px solid var(--s21-accent);
}
.sidebar-1 .posts ul, .sidebar-2 .tags ul { list-style: none; margin: 0; padding: 0; }
.sidebar-1 .posts li a {
  display: block;
  padding: 8px 0;
  border-bottom: 1px dashed #1e2128;
  color: #c9ced6;
  font-size: 14px;
  text-decoration: none;
  transition: color .15s ease, padding .15s ease;
}
.sidebar-1 .posts li a::before { content: "▸ "; color: var(--s21-accent); font-size: 12px; }
.sidebar-1 .posts li a:hover { color: #f7f8f8; padding-left: 6px; }
.sidebar-2 .tags .items a { color: var(--s21-accent); text-decoration: none; font-size: 13px; }
.sidebar-3 .search input {
  width: 100%;
  background: #14161c;
  border: 1px solid #1e2128;
  border-radius: 8px;
  color: #f7f8f8;
  padding: 9px 12px;
  outline: none;
}
.sidebar-3 .search input::placeholder { color: #8a8f98; }

/* ── 5. 아티클 읽기 뷰 ────────────────────────────────────────────────── */
.post-header h1, .entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4 {
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #f7f8f8;
  line-height: 1.35;
}
.post-header h1 { font-size: 30px; }
.entry-content h2 { font-size: 24px; margin: 1.5em 0 0.6em; padding-bottom: 8px; border-bottom: 1px solid #1e2128; }
.entry-content h3 { font-size: 20px; margin: 1.4em 0 0.5em; }
.entry-content h4 { font-size: 17px; margin: 1.3em 0 0.5em; }
.post-meta { color: #8a8f98; font-size: 13px; margin: 8px 0 24px; }
.post-meta .author, .post-meta .date { margin-right: 14px; }

/* 본문 .s21-post 인라인 라이트 스타일 → 강제 다크 (인라인 <style>이 body에 있어 우선순위 높음) */
#article-view .s21-post { color: #d8dbe0 !important; }
#article-view .s21-post a { color: var(--s21-accent) !important; border-bottom: 1px solid rgba(var(--s21-accent-rgb), 0.35) !important; }
#article-view .s21-acc,
#article-view .s21-btn,
#article-view .s21-acc > summary {
  background: #0f1115 !important;
  border-color: #1e2128 !important;
  color: #d8dbe0 !important;
}
#article-view .s21-acc > summary { background: #14161c !important; }
#article-view .s21-acc > summary:hover { background: #1a1e26 !important; }
#article-view .s21-btn { color: var(--s21-accent) !important; }
#article-view .s21-btn:hover { background: var(--s21-accent) !important; color: #04110e !important; }
#article-view .s21-code pre { background: #0d0f13 !important; color: #a5f3e6 !important; border: 1px solid #1e2128 !important; }
#article-view .s21-code code { color: inherit !important; }
#article-view .s21-copy { background: #1e293b !important; border-color: #334155 !important; color: #cbd5e1 !important; }

/* 일반 본문 요소 */
.entry-content p { line-height: 1.95; color: #d8dbe0; font-size: 15.5px; }
.entry-content strong { color: #ffffff; }
.entry-content blockquote {
  border-left: 3px solid var(--s21-accent);
  margin: 1.4em 0;
  padding: 8px 0 8px 18px;
  color: #aab1bb;
  background: rgba(255,255,255,0.02);
  border-radius: 0 8px 8px 0;
}
.entry-content ul, .entry-content ol { padding-left: 1.5em; }
.entry-content li { margin-bottom: 0.4em; color: #d8dbe0; }
.entry-content img { max-width: 100%; height: auto; border-radius: 10px; }
.entry-content pre {
  background: #0d0f13;
  color: #a5f3e6;
  border: 1px solid #1e2128;
  border-radius: 10px;
  padding: 16px;
  overflow-x: auto;
  font-family: 'SFMono-Regular', 'JetBrains Mono', Consolas, monospace;
  font-size: 13.5px;
  line-height: 1.65;
}
.entry-content :not(pre) > code {
  background: #14161c;
  color: var(--s21-accent);
  padding: 2px 7px;
  border-radius: 6px;
  font-size: 0.9em;
  border: 1px solid #1e2128;
}
.entry-content table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  margin: 1.3em 0;
  table-layout: auto;
}
.entry-content th {
  background: #14161c;
  color: #f7f8f8;
  padding: 11px 14px;
  text-align: left;
  border: 1px solid #23262e;
  font-weight: 700;
  overflow-wrap: anywhere;
}
.entry-content td {
  padding: 10px 14px;
  border: 1px solid #23262e;
  color: #d8dbe0;
  overflow-wrap: anywhere;
}
.entry-content table code,
.entry-content table pre {
  word-break: break-all;
  white-space: pre-wrap;
}
.entry-content tr:nth-child(even) td { background: rgba(255,255,255,0.02); }
/* 아코디언 본문 — 테이블 가로 넘침 시 내부 스크롤(클리핑 방지) */
.s21-acc-body { overflow-x: auto; }
.entry-content hr { border: 0; border-top: 1px solid #1e2128; margin: 2em 0; }

/* ── 6. 푸터 ──────────────────────────────────────────────────────────── */
#footer {
  border-top: 1px solid #1e2128;
  background: #0a0b0d;
  color: #8a8f98;
  padding: 28px;
  text-align: center;
  position: relative;
  z-index: 1;
}
#footer a { color: var(--s21-accent); text-decoration: none; }
/* "DESIGN BY TISTORY 관리자" 크레딧 블록 제거 (Boss 2026-08-15) */
#footer { display: none !important; }

/* ── 7. 티스토리 툴바 버튼 다크 ───────────────────────────────────────── */
.btn_menu_toolbar {
  background: #14161c !important;
  border: 1px solid #1e2128 !important;
  color: #f7f8f8 !important;
}
.btn_menu_toolbar:hover { border-color: rgba(var(--s21-accent-rgb), 0.45) !important; }

/* ── 8. 스크롤바 ──────────────────────────────────────────────────────── */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #0a0b0d; }
::-webkit-scrollbar-thumb { background: #2a2e37; border-radius: 6px; border: 2px solid #0a0b0d; }
::-webkit-scrollbar-thumb:hover { background: var(--s21-accent); }

/* ── 9. 반응형 ────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .container { padding: 20px 16px 40px; }
  .sidebar-1 { padding: 0 16px; }
  #header .inner { padding: 0 16px; }
  #gnb { display: none; }
}

/* ── 10. 아티클 타이틀·카테고리 + 댓글/네임카드 다크 보정 ───────────────── */
.hgroup .category { color: var(--s21-accent); font-size: 13px; font-weight: 600; margin-bottom: 10px; }
.hgroup .category a { color: var(--s21-accent); text-decoration: none; }
.hgroup h1 {
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.35;
  color: #f7f8f8;
  margin: 0 0 8px;
}
/* 댓글 폼/네임카드/팝업 레이어 (표시될 경우 다크로) */
.tt_box_namecard, .layer_post {
  background: #0f1115 !important;
  border-color: #1e2128 !important;
  color: #d8dbe0 !important;
}
#wrap .comments input, #wrap .comments textarea,
#wrap input[type="text"], #wrap input[type="email"],
#wrap input[type="password"], #wrap input[type="search"], #wrap textarea {
  background: #14161c !important;
  color: #f7f8f8 !important;
  border: 1px solid #1e2128 !important;
}
.tt-btn_register, #wrap .comments button {
  background: var(--s21-accent) !important;
  color: #04110e !important;
  border: none !important;
  font-weight: 700;
}
/* 댓글 창 + 네임카드 전체 제거 (Boss 2026-08-15) */
[id^="entry"][id$="Comment"] { display: none !important; }
[data-tistory-react-app="Comment"] { display: none !important; }
[data-tistory-react-app="Namecard"] { display: none !important; }

/* ── 11. 좌측 카테고리 사이드바 + 줌인/줌아웃 (Boss 2026-08-14) ─────────── */
/* 하단 3열 위젯(공지·최근포스트·태그·검색) 숨김 — 카테고리만 남김 */
.sidebar-1, .sidebar-2, .sidebar-3 { display: none !important; }
/* 우측 사이드바 전체 제거 — 카테고리가 좌측으로 갔으니 우측(방문자카운트 등)은 전부 없앰 (Boss 2026-08-15) */
aside#aside { display: none !important; }
/* 헤더 우측 전부 제거 — 햄버거 버튼 + 홈/태그/방명록 메뉴 (Boss 2026-08-15) */
#header .mobile-menu { display: none !important; }
#gnb { display: none !important; }

/* 컨테이너를 2단 flex: 좌측 카테고리 + 우측 본문 */
section.container {
  display: flex;
  gap: 32px;
  align-items: flex-start;
}
#category-nav {
  flex: 0 0 250px;
  position: sticky;
  top: 20px;   /* #wrap 스크롤포트(베젤 안) 기준 상단 20px */
  background: linear-gradient(170deg, #14171d, #0a0c10);
  border: 2px solid rgba(var(--s21-accent-rgb), 0.28);
  border-radius: 26px;
  padding: 20px;
  max-height: calc(100vh - 148px);
  overflow-y: auto;
  box-shadow:
    inset 0 0 0 2px #050608,
    inset 0 0 24px rgba(0,0,0,0.55),
    0 0 0 1px rgba(var(--s21-accent2-rgb), 0.20),
    0 22px 55px -24px rgba(0,0,0,0.9),
    0 0 30px -8px rgba(var(--s21-accent-rgb), 0.30);
}
/* 갤럭시21 펀치홀 카메라 (카테고리 폰 상단 중앙) */
#category-nav::before {
  content: "";
  position: absolute;
  top: 14px;
  left: 50%;
  transform: translateX(-50%);
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: radial-gradient(circle at 40% 35%, rgba(120,200,255,0.5), #000 72%);
  box-shadow: inset 0 0 2px rgba(255,255,255,0.35), 0 0 0 2px rgba(255,255,255,0.12), 0 0 10px rgba(var(--s21-accent-rgb), 0.4);
}
#category-nav .cat-title {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #f7f8f8;
  margin: 0 0 14px;
  padding-left: 12px;
  border-left: 3px solid var(--s21-accent);
}
#category-nav ul { list-style: none; margin: 0; padding: 0; }
#category-nav li { margin: 0; }
#category-nav li a {
  display: block;
  padding: 8px 0;
  border-bottom: 1px dashed #1e2128;
  color: #c9ced6;
  font-size: 14px;
  text-decoration: none;
  transition: color .15s ease, padding .15s ease;
}
#category-nav li a::before { content: "▸ "; color: var(--s21-accent); font-size: 12px; }
#category-nav li a:hover { color: #f7f8f8; padding-left: 6px; }
#category-nav .link_tit, #category-nav .link_tit a {
  font-weight: 700;
  color: var(--s21-accent);
  border-bottom: 1px solid #1e2128;
}
#category-nav .cnt { color: #6b7280; font-size: 12px; }
#category-nav .sub_category_list, #category-nav .link_sub_item a { padding-left: 16px; font-size: 13px; }

/* Tistory 카테고리 트리(tableComponent) 인라인 라이트 스타일 → 다크 강제 */
#category-nav table { background: transparent !important; border: none !important; }
#category-nav td, #category-nav div, #category-nav span {
  background: transparent !important;
  color: #c9ced6 !important;
}
#category-nav img { display: none !important; }
#category-nav table table { margin-left: 12px; }
#category-nav td[onclick], #category-nav div[onclick] { cursor: pointer; }
#category-nav div[id^="text_"] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 7px 8px;
  font-size: 14px;
  line-height: 1.5;
  border-radius: 8px;
  transition: color .15s ease, background .15s ease;
}
#category-nav div[id^="text_"]:hover { color: var(--s21-accent) !important; background: rgba(var(--s21-accent-rgb), 0.08) !important; }
#category-nav .c_cnt {
  color: var(--s21-accent) !important;
  font-size: 11px;
  font-weight: 600;
  margin-left: auto;
  background: rgba(var(--s21-accent-rgb), 0.10) !important;
  border: 1px solid rgba(var(--s21-accent-rgb), 0.22);
  border-radius: 999px;
  padding: 1px 8px;
  white-space: nowrap;
}

#content { flex: 1 1 auto; min-width: 0; }

/* 줌인/줌아웃 — 좌측 카테고리 패널 안에 배치 (우측 플로팅 제거, Boss 2026-08-15) */
#category-nav #zoom-ctrl {
  position: static;
  transform: none;
  z-index: auto;
  display: flex;
  flex-direction: row;
  gap: 6px;
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid #1e2128;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
}
#zoom-ctrl button {
  flex: 1;
  width: auto;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #1e2128;
  background: #14161c;
  color: #c9ced6;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: background .15s ease, color .15s ease, border-color .15s ease;
}
#zoom-ctrl button:hover { background: rgba(var(--s21-accent-rgb), 0.12); color: var(--s21-accent); border-color: rgba(var(--s21-accent-rgb), 0.45); }

/* ── 12. Galaxy S21 시그니처 디자인 (Boss 2026-08-15) ───────────────────────
   블랙 스킨 위에: 베젤 프레임 + 컨투어컷 카메라(우측·동쪽) + 펀치홀 + 플로팅 파티클.
   전부 pointer-events:none 장식. 움직임 = breathe/spin/flash/rise 애니메이션. */

/* 12-1. 폰 베젤 프레임 — 블로그 제목 바로 밑부터 시작 (상단에서 짤리지 않게) + 호흡 글로우 */
#s21-bezel {
  position: fixed;
  top: 88px;
  bottom: 16px;
  left: var(--s21-frame-x);
  right: var(--s21-frame-x);
  z-index: 9990;
  pointer-events: none;
  border: 1.5px solid rgba(var(--s21-accent-rgb), 0.42);
  border-radius: 26px;
  background: radial-gradient(120% 120% at 50% 0%, rgba(var(--s21-accent-rgb), 0.04), transparent 55%);
  animation: s21-breathe 6s ease-in-out infinite;
}
@keyframes s21-breathe {
  0%, 100% { box-shadow: 0 0 0 1px rgba(var(--s21-accent2-rgb), 0.12), 0 0 30px -6px rgba(var(--s21-accent-rgb), 0.26); }
  50%      { box-shadow: 0 0 0 1px rgba(var(--s21-accent2-rgb), 0.28), 0 0 54px -4px rgba(var(--s21-accent-rgb), 0.42); }
}

/* 12-2. 컨투어컷 카메라 모듈 (우상단 = 동쪽) */
#s21-camera {
  position: fixed;
  top: 96px;
  right: calc(var(--s21-frame-x) + 26px);
  z-index: 9991;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 92px;
  height: 48px;
  border-radius: 17px 17px 24px 24px;
  background: linear-gradient(145deg, #181b22, #0a0c10);
  border: 1px solid rgba(var(--s21-accent2-rgb), 0.20);
  box-shadow: 0 10px 24px -8px rgba(0,0,0,0.85), inset 0 1px 0 rgba(255,255,255,0.04);
}
#s21-camera .lens {
  position: relative;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background: radial-gradient(circle at 32% 30%, rgba(120,200,255,0.85), #0a0d12 72%);
  box-shadow: inset 0 0 3px rgba(0,0,0,0.9), 0 0 6px rgba(var(--s21-accent-rgb), 0.20);
}
#s21-camera .l1:before {
  content: "";
  position: absolute;
  inset: -3px;
  border-radius: 50%;
  background: conic-gradient(from 0deg, var(--s21-accent), var(--s21-accent2), var(--s21-accent));
  -webkit-mask: radial-gradient(circle, transparent 55%, #000 56%);
          mask: radial-gradient(circle, transparent 55%, #000 56%);
  animation: s21-spin 4s linear infinite;
}
#s21-camera .l2 { width: 13px; height: 13px; }
#s21-camera .l3 { width: 11px; height: 11px; }
#s21-camera .flash {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, #fff7d6, var(--s21-accent2) 70%);
  box-shadow: 0 0 8px rgba(var(--s21-accent2-rgb), 0.8);
  animation: s21-flash 3s ease-in-out infinite;
}
@keyframes s21-spin { to { transform: rotate(360deg); } }
@keyframes s21-flash {
  0%, 100% { opacity: 0.3; transform: scale(0.85); }
  50%      { opacity: 1;   transform: scale(1.2); }
}

/* 12-3. 펀치홀 카메라 (상단 중앙) — 제목 밑·베젤 안으로 내림 */
#s21-punch {
  position: fixed;
  top: 100px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9992;
  pointer-events: none;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: radial-gradient(circle at 40% 35%, rgba(120,200,255,0.5), #000 72%);
  box-shadow: inset 0 0 2px rgba(255,255,255,0.35), 0 0 0 2px rgba(255,255,255,0.12), 0 0 12px rgba(var(--s21-accent-rgb), 0.4);
}

/* 12-4. 갤럭시(은하수/우주) 스타필드 — 별 반짝임 + 성운 + 유성 (테마 토큰 var 기반) */
#s21-particles {
  position: fixed;
  inset: 0;
  z-index: 9980;
  pointer-events: none;
  overflow: hidden;
  background:
    radial-gradient(1000px 520px at 82% 6%, var(--s21-nebula-a), transparent 60%),
    radial-gradient(900px 480px at 12% 88%, var(--s21-nebula-b), transparent 60%),
    radial-gradient(760px 420px at 30% 12%, var(--s21-nebula-c), transparent 60%),
    radial-gradient(700px 400px at 88% 92%, rgba(var(--s21-accent-rgb), 0.18), transparent 60%);
  animation: s21-nebula 24s ease-in-out infinite alternate;
}
@keyframes s21-nebula {
  0%   { opacity: 0.75; }
  100% { opacity: 1; }
}
/* 별 — 반짝임(twinkle) */
#s21-particles i {
  position: absolute;
  left: var(--x);
  top: var(--y);
  width: var(--s);
  height: var(--s);
  border-radius: 50%;
  background: var(--s21-star1);
  box-shadow: 0 0 8px rgba(255,255,255,1), 0 0 20px rgba(var(--s21-accent-rgb), 0.85), 0 0 34px rgba(var(--s21-accent-rgb), 0.5);
  opacity: 0;
  animation: s21-twinkle var(--d) ease-in-out infinite;
  animation-delay: var(--dl, 0s);
}
#s21-particles i:nth-child(3n) {
  background: var(--s21-star2);
  box-shadow: 0 0 8px rgba(255,255,255,1), 0 0 20px rgba(var(--s21-accent-rgb), 0.9);
}
#s21-particles i:nth-child(3n+1) {
  background: var(--s21-star3);
  box-shadow: 0 0 8px rgba(255,255,255,1), 0 0 20px rgba(var(--s21-accent2-rgb), 0.8);
}
@keyframes s21-twinkle {
  0%, 100% { opacity: 0.55; transform: scale(0.7); }
  50%      { opacity: 1; transform: scale(1.3); }
}
/* 유성(shooting star) — 가끔 가로지름 (색·방향·거리 = 테마 토큰) */
#s21-particles b {
  position: absolute;
  left: var(--x);
  top: var(--y);
  width: 110px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, transparent, var(--s21-meteor));
  box-shadow: 0 0 6px var(--s21-meteor), 0 0 16px rgba(var(--s21-accent-rgb), 0.7);
  transform: rotate(var(--s21-meteor-ang, -30deg));
  opacity: 0;
  animation: s21-shoot var(--d) linear infinite;
  animation-delay: var(--dl, 0s);
}
@keyframes s21-shoot {
  0%   { opacity: 0; transform: translate(0,0) rotate(var(--s21-meteor-ang, -30deg)); }
  5%   { opacity: 1; }
  13%  { opacity: 0; transform: translate(var(--s21-meteor-dx, -190px), var(--s21-meteor-dy, 110px)) rotate(var(--s21-meteor-ang, -30deg)); }
  100% { opacity: 0; transform: translate(var(--s21-meteor-dx, -190px), var(--s21-meteor-dy, 110px)) rotate(var(--s21-meteor-ang, -30deg)); }
}

/* ── 13. 앱 설치/바로가기 버튼 + 안내 모달 (Boss 2026-08-15) ─────────────
   PC 크롬/엣지에서 "앱으로 설치 / 바로가기" 기능. 카메라 모듈 바로 밑에 배치.
   beforeinstallprompt(PWA 설치) 있으면 즉시 설치, 없으면 브라우저별 안내 모달. */
/* 12-5. 상단 액션(모바일 보기 · 설치) — 헤더 블로그 이름 옆 (Boss 2026-08-16) */
#s21-brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}
#s21-top-actions {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
#s21-top-actions button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 32px;
  padding: 0 13px;
  border-radius: 999px;
  border: 1px solid rgba(var(--s21-accent-rgb), 0.40);
  background: linear-gradient(145deg, #181b22, #0a0c10);
  color: var(--s21-accent);
  font-size: 12.5px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  white-space: nowrap;
  box-shadow: 0 6px 16px -6px rgba(0,0,0,0.8), 0 0 12px -4px rgba(var(--s21-accent-rgb), 0.40);
  transition: transform .16s ease, border-color .16s ease, color .16s ease, background .16s ease;
}
#s21-top-actions button:hover { transform: translateY(-2px); border-color: rgba(var(--s21-accent-rgb), 0.85); }
#s21-top-actions button.on { color: #0a0c10; background: var(--s21-accent); border-color: var(--s21-accent); }
#s21-install:before { content: "⤓"; font-size: 13px; line-height: 1; }

/* ── 앱 뷰어(리더) 모드 — 본문만 화면 꽉 채우기 (Boss 2026-08-16) ──
   body.s21-mobile = 데스크톱 '📱 모바일' 토글 + 실제 모바일(@media ≤900px) 자동 감지(JS matchMedia).
   사이버덱 장식(베젤·카메라·펀치홀·스타필드) + 헤더·카테고리를 숨기고 본문만 전체 폭으로. */

/* 1) 사이버덱 외곽 프레임·장식 전부 숨김 */
body.s21-mobile #s21-bezel,
body.s21-mobile #s21-camera,
body.s21-mobile #s21-punch,
body.s21-mobile #s21-particles { display: none !important; }

/* 2) 스크롤 뷰포트 = 화면 전체 (베젤 프레임 해제 → 본문이 화면을 꽉 채움) */
body.s21-mobile #wrap {
  top: 0; bottom: 0; left: 0; right: 0;
  border-radius: 0;
}

/* 3) 헤더 → 투명. 블로그명·네비 숨기고 복귀 버튼(🖥 PC)만 우상단에 플로팅 */
body.s21-mobile #header {
  background: transparent;
  border-bottom: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  pointer-events: none;
}
body.s21-mobile #header .inner {
  max-width: none;
  height: auto;
  padding: 10px 14px;
  justify-content: flex-end;
}
body.s21-mobile #header h1,
body.s21-mobile #header #gnb { display: none !important; }
body.s21-mobile #s21-top-actions { pointer-events: auto; }

/* 4) 컨테이너 = 단일 컬럼·전체 폭. 카테고리 숨기고 본문만 꽉 채움 (좌우 최소 여백 16px) */
body.s21-mobile section.container {
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  max-width: 100%;
  padding: 16px;
}
body.s21-mobile #category-nav { display: none !important; }
body.s21-mobile #content { width: 100%; max-width: 100%; min-width: 0; font-size: 17px; }

#s21-install-modal {
  position: fixed;
  inset: 0;
  z-index: 10002;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.55);
  backdrop-filter: blur(4px);
}
#s21-install-modal[hidden] { display: none; }
.s21-install-card {
  background: #14161c;
  border: 1px solid rgba(var(--s21-accent-rgb), 0.35);
  border-radius: 16px;
  padding: 24px 26px;
  max-width: 380px;
  width: calc(100vw - 48px);
  color: #d8dbe0;
  box-shadow: 0 24px 60px -20px rgba(0,0,0,0.9);
  position: relative;
}
.s21-install-card h3 { margin: 0 0 6px; font-size: 18px; color: #f7f8f8; }
.s21-install-sub { margin: 0 0 14px; font-size: 13px; color: #8a8f98; }
.s21-install-steps ol { margin: 0; padding-left: 18px; }
.s21-install-steps li { margin-bottom: 8px; font-size: 14px; color: #c9ced6; }
.s21-install-note { margin: 14px 0 0; font-size: 12px; color: #8a8f98; }
.s21-install-note kbd {
  background: #0d0f13; border: 1px solid #1e2128; border-radius: 5px;
  padding: 1px 6px; font-family: inherit; font-size: 11px;
}
.s21-install-close {
  position: absolute; top: 10px; right: 12px;
  background: transparent; border: none; color: #8a8f98;
  font-size: 22px; cursor: pointer; line-height: 1;
}
.s21-install-close:hover { color: var(--s21-accent); }

/* 실제 모바일(≤900px): 상단 액션(PC 화면 보기 · 설치) 버튼도 노출 — 기본 뷰어, 버튼으로 PC 화면 ↔ 뷰어 토글 (Boss 2026-08-16) */

/* HELENA-ORBITAL-SKIN-END */