/* GGUN 티스토리 스킨 스타일시트 */
        *{
          box-sizing:border-box;
        }
        html{
          width:100%;
          overflow-x:hidden;
        }
        body{
            padding:0px;
            position:relative;
            margin:0px;
            font-family:"Pretendard","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
            background:#f4f5f7;
            width:100%;
            overflow-x:hidden;
        }
        a{
            text-decoration:none;
            color:inherit;

        }

        ul{
            list-style:none;
            margin:0px;
            paddinG:0px;
        }
        .recent_news_item.hidden_item {
          display: none;
        }
        .box1{
          width:100%;
          max-width:800px;
          height:64px;
          background:#ffffff;
          margin:20px auto 0 auto;
          position:relative;

          border:1.5px solid #3b5bfd;
          border-radius:999px;
          box-shadow:0 4px 14px rgba(59,91,253,0.15);

          display:flex;
          align-items:center;
          justify-content:space-between;
          padding:0 8px 0 24px;
          box-sizing:border-box;
        }

        .list-only .brick_card{
          display:flex;
          flex-direction:column;
          min-height:100%;
        }

        .list-only .brick_card img{
          height:160px;
        }

        .list-only .brick_body{
          flex:1;
          display:flex;
          flex-direction:column;
        }

        /* 제목도 최대 2줄까지만 (JS로 요약은 이미 60자 제한 중이라 desc는 생략) */
        .list-only .brick_title{
          display:-webkit-box;
          -webkit-line-clamp:2;
          -webkit-box-orient:vertical;
          overflow:hidden;
        }
        .trim_text{
          word-break:keep-all;
          overflow-wrap:break-word;
        }
        .logo{
          display:flex;
          align-items:center;
          gap:2px;
          color:#3b5bfd;
          font-size:22px;
          font-weight:800;
          font-style:italic;
          white-space:nowrap;
          margin-right:20px;
        }

        .logo .spark{
          font-size:14px;
          font-style:normal;
        }

        .search_bar{
          flex:1;
          display:flex;
          align-items:center;
          min-width:0;
        }

        .search_bar input{
          width:100%;
          height:36px;
          border:none;
          background:transparent;
          padding:0;
          font-size:15px;
          font-weight:600;
          outline:none;
          box-sizing:border-box;
          color:#666;
        }

        .search_bar input::placeholder{
          color:#8a8a8a;
          font-weight:600;
        }

        .search_btn{
          flex-shrink:0;
          width:44px;
          height:44px;
          border-radius:50%;
          border:1.5px solid #3b5bfd;
          background:#ffffff;
          display:flex;
          align-items:center;
          justify-content:center;
          cursor:pointer;
          color:#3b5bfd;
          font-size:18px;
        }
        .box2{
          width:100%;
          max-width:800px;
          height:auto;

          position:relative;
          margin:20px auto 0 auto;
          box-sizing:border-box;
        }
        .banner{
          width:100%;
          height:auto;

          display:flex;
          flex-wrap:wrap;
          gap:20px;
        }
        .benner_in{
          border-radius:70px;
          border-top-left-radius: 0px;

          z-index:100;
          flex:1 1 500px;
          max-width:500px;
          width:100%;
          height:auto;
          border-radius:40px;
          border-top-left-radius: 0px;
          float:none;
        }
        .top_ba{
          width:100%;
          height:200px;
          border-top-left-radius: 60px!important;
          border-radius:20px;
          position:relative;
          overflow:hidden;
          box-sizing:border-box;
          background:linear-gradient(135deg, #232a4d 0%, #3b5bfd 100%);
          color:#fff;
          display:flex;
          flex-direction:column;
          justify-content:flex-end;
          padding:20px;
        }
        .top_ba_img{
          position:absolute;
          inset:0;
          width:100%;
          height:100%;
          object-fit:cover;
          z-index:0;
          display:block;
        }
        .top_ba::before{
          content:"";
          position:absolute;
          inset:0;
          z-index:1;
          background:linear-gradient(180deg, rgba(10,15,40,0.15) 0%, rgba(10,15,40,0.85) 100%);
        }
        .top_ba .tag,
        .top_ba .headline,
        .top_ba .sub{
          position:relative;
          z-index:2;
        }
        .top_ba .tag{
          display:inline-block;
          width:fit-content;
          background:#3b5bfd;
          font-size:11px;
          font-weight:800;
          padding:4px 10px;
          border-radius:999px;
          margin-bottom:8px;
          letter-spacing:0.5px;
        }
        .top_ba .headline{
          font-size:19px;
          font-weight:800;
          line-height:1.35;
          margin:0 0 6px 0;
          display:-webkit-box;
          -webkit-line-clamp:2;
          -webkit-box-orient:vertical;
          overflow:hidden;
        }
        .top_ba .sub{
          font-size:12px;
          font-weight:500;
          color:rgba(255,255,255,0.75);
        
        }
        .bottom_ba{
          width:100%;
          height:auto;

          margin-top:25px;
          display:flex;
          flex-wrap:wrap;
          gap:20px;
        }
        .col{
          width:100%;
          height: auto;
          min-height:275px;
          background:#ffffff;
          box-shadow: 0 4px 16px rgba(20,20,40,0.08);
          border-radius:20px;
          float:none;
          position:relative;
          overflow:visible;
        }
        .cor_in_top{
          width:auto;
          height:220px;
          margin:10px 10px 0 10px;
          border-radius:15px;

          background-color:#dfe3ea;
          background-size:cover;
          background-position:center;
          background-repeat:no-repeat;
          box-sizing:border-box;
          position:relative;
          overflow:hidden;
        }
        .cor_in_top_img{
          position:absolute;
          inset:0;
          width:100%;
          height:100%;
          object-fit:cover;
          z-index:0;
          display:block;
        }
        .cor_in_top::before{
          content:"";
          position:absolute;
          inset:0;
          z-index:1;
          background:linear-gradient(180deg, rgba(10,15,30,0) 40%, rgba(10,15,30,0.7) 100%);
        }
        .cor_in_top .photo_tag{
          position:absolute;
          top:10px;
          left:10px;
          z-index:2;
          background:rgba(255,255,255,0.92);
          color:#3b5bfd;
          font-size:10px;
          font-weight:800;
          padding:4px 10px;
          border-radius:999px;
          letter-spacing:0.2px;
        }
        .cor_in_top .photo_caption{
          position:absolute;
          left:12px;
          right:12px;
          bottom:10px;
          z-index:2;
          margin:0;
          color:#fff;
          font-size:12px;
          font-weight:700;
          line-height:1.4;
          white-space:nowrap;
          overflow:hidden;
          text-overflow:ellipsis;
        }
        .cor_in_bottom{
          width:170px;
          max-width:60%;
          height:auto;
          background:#ffffff;
          border-radius:999px;
          box-shadow:0 6px 16px rgba(20,20,40,0.14);

          display:flex;
          align-items:center;
          justify-content:center;
          box-sizing:border-box;
          padding:7px 10px;
          margin:-10px auto 8px auto;
          position:relative;
          z-index:3;
        }
        .col_caption{
          text-align:center;
          font-size:11px;
          color:#9a9ba3;
          margin:0;
        }
        .photo_rank1_holder .photo_rank1_item:not(:first-child){
          display:none;
        }
        .cor_in_bottom ul li{
          width:35px;
          height:35px;
          border-radius:50%;
          background:gold;
          float:left;
          margin-left:15PX!important;
          margin:10px;

          float:none;
          display:flex;
          align-items:center;
          justify-content:center;
          margin:0 6px !important;
          font-size:22px;
          font-weight:800;
          color:#fff;
          cursor:pointer;
          transition:transform .15s ease, filter .25s ease, box-shadow .25s ease;
          filter:grayscale(1);
        }
        .cor_in_bottom ul li:hover{
          filter:grayscale(0);
          box-shadow:0 4px 10px rgba(0,0,0,0.18);
        }
        .cor_in_bottom ul{
          display:flex;
          align-items:center;
          justify-content:center;
          width:100%;
        }
        .cor_in_bottom ul li:hover{
          transform:translateY(-3px);
        }
        .cor_in_bottom ul li.sns_naver{ background:#03c75a; }
        .cor_in_bottom ul li.sns_kakao{ background:#f9e000; color:#3a1d1d; }
        .cor_in_bottom ul li.sns_insta{ background:radial-gradient(circle at 30% 110%, #ffdb8b 0%, #ee5a5a 40%, #d6249f 70%, #6228d7 100%); }
        .box3{
          width:100%;
          max-width:800px;
          height:auto;

          position:relative;
          margin:20px auto 40px auto;

          box-sizing:border-box;
          padding:28px 24px;
          min-height:auto;
        }
        .box3 .section_title{
          font-size:18px;
          font-weight:800;
          color:#222;
          margin:0 0 16px 4px;
          padding-left:10px;
          border-left:4px solid #3b5bfd;
        }
        .brick_wrap{
          column-count:3;
          column-gap:16px;
          width:100%;
        }
        .brick_card{
          break-inside:avoid;
          -webkit-column-break-inside:avoid;
          background:#ffffff;
          border-radius:14px;
          overflow:hidden;
          margin-bottom:16px;
          box-shadow:0 2px 8px rgba(20,20,40,0.06);
        }
        .brick_card img{
          width:100%;
          display:block;
          object-fit:cover;
        }
        .brick_card .brick_body{
          padding:12px 14px 16px;
        }
        .brick_card .brick_cat{
          font-size:11px;
          font-weight:800;
          color:#3b5bfd;
          margin-bottom:6px;
        }
        .brick_card .brick_title{
          font-size:14px;
          font-weight:700;
          color:#222;
          line-height:1.45;
          margin:0 0 6px 0;
        }
        .brick_card .brick_desc{
          font-size:12px;
          color:#888;
          line-height:1.5;
          margin:0;
        }
        .brick_empty{
          width:100%;
          text-align:center;
          padding:60px 20px;
          color:#9a9ba3;
          font-size:14px;
        }
        .load_more_wrap{
          display:flex;
          justify-content:center;
          margin-top:24px;
        }
        .load_more_btn{
          display:inline-block;
          padding:12px 32px;
          background:#ffffff;
          border:1.5px solid #3b5bfd;
          color:#3b5bfd;
          font-size:14px;
          font-weight:700;
          border-radius:999px;
          cursor:pointer;
          transition:background .15s ease, color .15s ease;
        }
        .load_more_btn:hover{
          background:#3b5bfd;
          color:#ffffff;
        }
        .load_more_btn.loading{
          opacity:0.6;
          pointer-events:none;
        }
        .load_more_btn.noMorePage,
        .load_more_btn.no_more_next,
        .load_more_btn.disabled{
          display:none;
        }
        .show{
          flex:1 1 275px;
          max-width:275px;
          width:100%;
          height:auto;
          background:#ffffff;
          float:none;
          border-radius:25px;
          box-shadow:0px 0px 3px #ddd;
          box-sizing:border-box;
          padding:20px 18px;
        }
        .show .rank_title{
          font-size:16px;
          font-weight:800;
          color:#222;
          margin:0 0 4px 0;
        }
        .show .rank_sub{
          font-size:11px;
          color:#999;
          margin:0 0 14px 0;
        }
        .show .rank_list{
          display:flex;
          flex-direction:column;
          counter-reset:ggun-rank;
        }
        .show .rank_list .rank_item:nth-child(n+6){
          display:none;
        }
        .show .rank_item{
          display:flex;
          align-items:center;
          gap:10px;
          padding:10px 0;
          border-bottom:1px solid #f0f0f2;
          counter-increment:ggun-rank;
        }
        .show .rank_item:last-child{
          border-bottom:none;
        }
        .show .rank_num{
          width:22px;
          flex-shrink:0;
          font-size:16px;
          font-weight:800;
          color:#c9cbd4;
          font-style:italic;
        }
        .show .rank_num::before{
          content:counter(ggun-rank, decimal-leading-zero);
        }
        .show .rank_item:nth-child(-n+3) .rank_num{
          color:#3b5bfd;
        }
        .show .rank_thumb{
          width:48px;
          height:48px;
          flex-shrink:0;
          border-radius:8px;
          background-color:#dfe3ea;
          overflow:hidden;
          position:relative;
        }
        .show .rank_thumb_img{
          width:100%;
          height:100%;
          object-fit:cover;
          display:block;
        }
        .show .rank_info{
          flex:1;
          min-width:0;
        }
        .show .rank_post_title{
          font-size:13px;
          font-weight:700;
          color:#222;
          line-height:1.4;
          margin:0 0 4px 0;
          white-space:nowrap;
          overflow:hidden;
          text-overflow:ellipsis;
        }
        .show .rank_meta{
          font-size:11px;
          color:#999;
        }

        /* ===== 반응형 ===== */
        @media (max-width:860px){
          .box1, .box2, .box3{
            margin-left:16px;
            margin-right:16px;
            width:calc(100% - 32px);
          }
        }
        @media (max-width:700px){
          .brick_wrap{
            column-count:2;
          }
        }
        @media (max-width:620px){
          .benner_in, .show{
            flex:1 1 100%;
            max-width:100%;
          }
        }
        @media (max-width:480px){
          .box1{
            height:auto;
            padding:8px 8px 8px 18px;
            border-radius:32px;
          }
          .logo{
            font-size:18px;
            margin-right:10px;
          }
          .search_bar input{
            font-size:13px;
          }
          .search_btn{
            width:38px;
            height:38px;
            font-size:16px;
          }
          .top_ba{
            height:auto;
            min-height:170px;
            border-top-left-radius: 30px!important;
            padding:16px;
          }
          .top_ba .headline{
            font-size:16px;
          }
          .brick_wrap{
            column-count:1;
          }
          .box3{
            padding:20px 16px;
          }
        }

        /* ===== 페이지 종류별 노출 (홈 vs 검색/카테고리/태그 리스트 vs 글 상세) ===== */
        body:not(#tt-body-index) .home-only{
          display:none;
        }
        body#tt-body-index .list-only{
          display:none;
        }
        body#tt-body-page .list-only,
        body#tt-body-page .home-only{
          display:none;
        }
        body:not(#tt-body-page) .post-only{
          display:none;
        }
        .list-only .section_title{
          display:flex;
          align-items:baseline;
          gap:8px;
        }
        .list-only .section_count_num{
          font-size:12px;
          font-weight:600;
          color:#9a9ba3;
          border-left:none;
          padding-left:0;
        }

        /* ===== 게시글 상세보기 ===== */
        .post_card{
          width:100%;
          max-width:800px;
          margin:0 auto;
          background:#ffffff;
          border-radius:20px;
          box-shadow:0 4px 16px rgba(20,20,40,0.08);
          box-sizing:border-box;
        }
        .post_thumb{
          width:100%;
          max-height:420px;
          object-fit:cover;
          display:block;
          border-top-left-radius:20px;
          border-top-right-radius:20px;
        }
        .post_head{
          padding:32px 32px 0 32px;
        }
        .post_cat{
          display:inline-block;
          background:#3b5bfd;
          color:#fff;
          font-size:11px;
          font-weight:800;
          padding:4px 10px;
          border-radius:999px;
          margin-bottom:12px;
          letter-spacing:0.3px;
        }
        .post_title{
          font-size:26px;
          font-weight:800;
          line-height:1.4;
          color:#1a1a1a;
          margin:0 0 12px 0;
        }
        .post_meta{
          font-size:13px;
          color:#9a9ba3;
          margin-bottom:24px;
          padding-bottom:24px;
          border-bottom:1px solid #f0f0f2;
        }
        .post_dot{
          margin:0 6px;
        }
        .post_body{
          padding:0 32px;
          font-size:16px;
          line-height:1.85;
          color:#2a2a2a;
          word-break:keep-all;
        }
        .post_body img{
          max-width:100%;
          height:auto;
          border-radius:12px;
          margin:16px 0;
          display:block;
        }
        .post_body h1,
        .post_body h2,
        .post_body h3{
          font-weight:800;
          color:#1a1a1a;
          margin:32px 0 12px 0;
        }
        .post_body p{
          margin:0 0 18px 0;
        }
        .post_body a{
          color:#3b5bfd;
          text-decoration:underline;
        }
        .post_body blockquote{
          margin:20px 0;
          padding:14px 18px;
          background:#f5f6fa;
          border-left:4px solid #3b5bfd;
          border-radius:8px;
          color:#555;
        }
        .post_body pre,
        .post_body code{
          font-family:"SFMono-Regular", Consolas, monospace;
          background:#f5f6fa;
          border-radius:8px;
        }
        .post_body pre{
          padding:16px;
          overflow-x:auto;
        }
        .post_tags{
          padding:20px 32px 0 32px;
          display:flex;
          flex-wrap:wrap;
          align-items:center;
          gap:8px;
        }
        .post_tag_label{
          font-size:12px;
          font-weight:800;
          color:#9a9ba3;
          margin-right:4px;
        }
        .post_tags a{
          display:inline-block;
          background:#f5f6fa;
          color:#555;
          font-size:12px;
          font-weight:600;
          padding:5px 12px;
          border-radius:999px;
        }
        .post_share{
          margin:28px 32px 0 32px;
          padding:18px;
          background:#f5f6fa;
          border-radius:16px;
          display:flex;
          align-items:center;
          justify-content:space-between;
          flex-wrap:wrap;
          gap:10px;
        }
        .post_share_label{
          font-size:13px;
          font-weight:700;
          color:#555;
        }
        .post_share_list{
          display:flex;
          gap:8px;
        }
        .post_share_list li{
          width:36px;
          height:36px;
          border-radius:50%;
          background:gold;
          display:flex;
          align-items:center;
          justify-content:center;
          font-size:16px;
          font-weight:800;
          color:#fff;
          cursor:pointer;
          filter:grayscale(1);
          transition:filter .2s ease, transform .15s ease;
        }
        .post_share_list li:hover{
          filter:grayscale(0);
          transform:translateY(-2px);
        }
        .post_share_list li.sns_naver{ background:#03c75a; }
        .post_share_list li.sns_kakao{ background:#f9e000; color:#3a1d1d; }
        .post_share_list li.sns_insta{ background:radial-gradient(circle at 30% 110%, #ffdb8b 0%, #ee5a5a 40%, #d6249f 70%, #6228d7 100%); }
        .post_nav{
          margin:28px 32px 0 32px;
          display:flex;
          flex-wrap:wrap;
          gap:12px;
        }
        .post_nav_item{
          flex:1 1 220px;
          background:#f5f6fa;
          border-radius:14px;
          padding:14px 16px;
          box-sizing:border-box;
        }
        .post_nav_next{
          text-align:right;
        }
        .post_nav_label{
          display:block;
          font-size:11px;
          font-weight:800;
          color:#3b5bfd;
          margin-bottom:6px;
        }
        .post_nav_title{
          display:block;
          font-size:13px;
          font-weight:700;
          color:#222;
          overflow:hidden;
          text-overflow:ellipsis;
          white-space:nowrap;
        }
        .post_related{
          margin:32px 32px 0 32px;
          padding-top:28px;
          border-top:1px solid #f0f0f2;
        }
        .post_related .section_title{
          margin:0 0 14px 0;
        }
        .post_related_list{
          list-style:none;
          margin:0;
          padding:0;
          display:flex;
          flex-wrap:wrap;
          gap:10px;
        }
        .post_related_list li a{
          display:flex;
          align-items:center;
          gap:8px;
          background:#f5f6fa;
          border-radius:10px;
          padding:8px 12px;
          font-size:12px;
          font-weight:600;
          color:#333;
        }
        .post_related_list img{
          width:32px;
          height:32px;
          object-fit:cover;
          border-radius:6px;
        }
        .post_comments{
          margin:32px 0 0 0;
          padding:28px 32px 32px 32px;
          border-top:1px solid #f0f0f2;
        }
        @media (max-width:600px){
          .post_head, .post_body, .post_tags, .post_share, .post_nav, .post_related, .post_comments{
            padding-left:20px;
            padding-right:20px;
          }
          .post_related{ margin-left:20px; margin-right:20px; }
          .post_title{ font-size:21px; }
        }