     /* 모든 요소에 box-sizing: border-box 적용 */
    * {
      box-sizing: border-box;
    }

    /* 전체 body 스타일 */
    body {
      font-family: Noto Sans KR, Arial, sans-serif;
      font-size: 14px;
      margin: 0;
      padding: 0;
      margin-top: 400px; /* 컴퓨터 버전에서 탑 마진 400px */
    }
    
      body {
    user-select: none; /* 텍스트 선택 비활성화 */
     -webkit-user-drag: none; /* 웹킷 브라우저에서 이미지나 요소의 드래그 비활성화 */
     -moz-user-select: none; /* Firefox에서 텍스트 선택 비활성화 */
    }


    /* 반응형 모바일 스타일 */
    @media (max-width: 600px) {
      body {
        font-size: 14px;
        margin-top: 0px; /* 모바일에서 탑 마진 0px */
      }

      .search-container {
        padding-top: 0px; /* 모바일에서 상단 0px 높이 설정 */
      }

      iframe[name="faviframe"] {
        height: 350px; /* 모바일에서 iframe 높이 조정 */
      }

      /* 즐겨찾기 목록 위치 조정 */
      .favcontainer {
        margin-bottom: 0px; /* 즐겨찾기 목록 아래 여백 추가 */
      }
    }
    
    /* 반응형 모바일에서 즐겨찾기 iframe 높이 수정 */
    @media (max-width: 600px) {
      .favcontainer iframe {
        height: 330px !important; /* 모바일에서 즐겨찾기 iframe 높이를 **px로 */
      }
    }

    /* 부모 요소의 높이를 100%로 설정 */
    html, body {
        height: 100%; /* 페이지 전체 높이 설정 */
        margin: 0; /* 기본 여백 제거 */
        overflow: auto;
    }
        /* 페이지 중앙에 떠 있는 div */
    .center-div {
      position: absolute;
      top: 50%; /* 화면 세로의 50% */
      left: 50%; /* 화면 가로의 50% */
      transform: translate(-50%, -50%); /* 정확히 중앙으로 오도록 */
      width: 80%;
      max-width: 100%;
      height: 100%;
      background-color: #ffffff;
      color: white;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 14px;
      text-align: center;
    }

     .clock-div {
      position: fixed;
      bottom: 5px;
      left: 85%;
      width: 200px;
      height: 20px;
      color: transparent;
      z-index: 1000;
     }

     @media (max-width: 768px) {
      .clock-div {
       display: none;
       }
    }

    .search-container {
      background: white;
      padding: 0;
      max-width: 600px;
      margin: 0 auto;
      position: relative;
    }

    .site-options {
      display: flex;
      align-items: center;
      cursor: pointer;
      font-size: 14px;
      font-weight: 700; /* bold */
      flex-wrap: wrap;
      gap: 5px;
      margin-bottom: 20px;
      justify-content: center;
      overflow-x: auto;
      white-space: nowrap;
      width: 100%;
    }
     .site-options label {
      display: inline-block;
      flex: 0 0 auto;
      text-align: center;
      font-size: 14px;
      font-weight: bold;
     }
    .site-options input[type="checkbox"] {
     width: 13px;
     height: 13px;
     margin-right: 5px;
     }

    .search-box {
      display: flex;
      gap: 1px;
      align-items: center;
      position: relative;
    }

    .input-wrapper {
      position: relative;
      flex: 0 0 75%;
    }

    .input-wrapper input {
      width: 100%;
      padding: 12px;
      border: 1px solid #000;
      font-size: 16px;
      border-radius: 6px;
      height: 40px;
    }
    
    input:focus {
     outline: none;
    }
    
    input::placeholder,
    textarea::placeholder {
     color: transparent !important;
     opacity: 1 !important;
    }

    .clear-btn {
      position: absolute;
      top: 50%;
      right: 10px;
      transform: translateY(-50%);
      background: transparent;
      border: none;
      font-size: 18px;
      cursor: pointer;
      color: #aaa;
    }

    .search-btn {
      flex: 0 0 25%;
      height: 40px;
      background-color: transparent;
      color: #000000 !important;
      border: 1px solid #000000;
      font-size: 16px;
      border-radius: 6px;
      cursor: pointer;
      text-align: center;
      line-height: 40px;
    }

    .search-btn:hover {
      background: ;
    }

    #historyContainer {
      max-width: 100%;
      margin: 0 auto;
      padding: 0;
      position: absolute;
      top: 100%;
      left: 0;
      width: 100%;
      z-index: 9999;
      background: white;
      border: 1px solid #fff;
      box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); /* 약한 그림자 효과 */
      border-radius: 3px; /* 둥근 모서리 */
      display: none; /* 기본적으로 숨김 */
      max-height: 300px;
      overflow-y: auto;
      -webkit-overflow-scrolling: touch; /* 사파리에서 스크롤 개선 */
    }

    @media (max-width: 500px) {
      #historyContainer {
        max-height: 200px;
      }
    }

    #historyHeader {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 5px 10px;
      font-size: 14px;
      color: #000000;
    }

    #clearAllBtn {
      background: none;
      border: none;
      cursor: pointer;
      color: #000000;
      font-size: 14px;
    }

    #searchHistory {
      list-style: none;
      padding: 0 10px 5px;
      margin: 0;
      z-index: 9999;
    }

    #searchHistory li {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 4px 0;
      color: black;
      font-size: 14px;
      z-index: 9999;
    }

    #searchHistory button {
      background: transparent !important;
      border: none !important;
      cursor: pointer;
      font-size: 18px !important;
      color: #aaa !important;
      font-family: Arial, sans-serif !important;
    }

    @media (max-width: 500px) {
      .site-option {
        font-size: 14px;
        width: 22%;
      }

      .search-box {
        flex-direction: row;
      }

      .input-wrapper {
        flex: 0 0 75%;
      }

      .search-btn {
        flex: 0 0 25%;
      }

      #historyContainer {
        width: 100%;
      }

      .search-container {
        padding: 0 30px;
      }
    }

    #colorButton {
      position: fixed;
      bottom: 18px;
      left: 50%;
      transform: translateX(-95px);
      cursor: pointer;
      font-size: 18px;
      padding: 1px 6px;
      color: #db7093;
      background: none;
      border: none;
      border-radius: 5px;
      transition: transform 0.3s ease, filter 0.2s ease;
    }
    #colorButton:hover {
      background-color: ;
      transform: translateX(-100px) rotate(7deg) scale(2.0); 
    }
    
    /* iframe 설정 */
    iframe {
      width: 100%;
      height: 450px;
      border: none;
      text-align: center;
    }

    /* 광고 iframe 설정 */
    .adcontainer {
      margin-top: 0px;
      width: 100%;
      max-width: 300px;
      background-color: #ffffff;
      margin-left: auto;
      margin-right: auto;
      text-align: center;
    }

    iframe {
      height: 30px;
    }

    .footer-container {
        position: fixed;
        bottom: 10px;
        left: 50%;
        transform: translateX(-50%);
        text-align: center;
        padding: 0px 0;
        background-color: ;
        color: #121212;
        font-family: Noto Sans KR, Arial, sans-serif; 
        text-align: center;
        font-size: 15px;
        z-index: 1000;
        margin-top: 0px;
    }
    .footer p {
    margin: 0;
    }

          /* 탑마진 */
     .responsive-div {
       margin-top: 12%;
       margin-bottom: 0px;
     }
     
     /* 잠금모드 */
     #lockBtn {
      position: fixed;
      bottom: 8px;
      left: 50%;
      transform: translateX(100px);
      width: 50px;
      height: 50px;
      font-size: 30px;
      background: none;
      border: none;
      cursor: pointer;
      z-index: 10000;
      transition: transform 0.3s ease, filter 0.2s ease;
    }
      @media (max-width: 768px) {
      #lockBtn {
       display: none;
       }
      }
    
      #lockBtn:hover {
      background-color: ;
      transform: translateX(110px) rotate(7deg) scale(2.0); 
    }
    
    #lockMenu {
      display: none;
      position: fixed;
      bottom: 80px;
      right: 20px;
      background: #222;
      border: 1px solid #444;
      border-radius: 8px;
      padding: 10px;
      z-index: 1000;
      width: 160px;
    }
      @media (max-width: 768px) {
          
      #lockMenu {
       display: none;
       }
      }
       
    #lockMenu button {
      width: 100%;
      margin: 5px 0;
      padding: 8px;
      background: #444;
      color: white;
      border: none;
      border-radius: 5px;
      cursor: pointer;
    }
      @media (max-width: 768px) {
      #lockMenu button {
       display: none;
       }
      }
       
    #screensaver {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      /* 배경화면은 아래 JS에서 설정 */
      color: white;
      background-color: rgba(0, 0, 0, 0.95); /* 스크린세이버 배경 보장 */
      z-index: 2147483647 !important; /* 어떤 요소보다도 위로 */
      justify-content: center;
      align-items: center;
      flex-direction: column;
      isolation: isolate;
    }
    #currentTime {
      font-family: Noto Sans KR !important;
      font-size: 25px;
      background-color: #212121;
      color: white;
      padding: 15px 25px;
      margin-bottom: 30px;
      z-index: 2147483647;
      width: 600px;
      text-align: center;
      border-radius: 8px;
    }
    #inputContainer {
      font-family: Noto Sans KR, Arial, sans-serif;
      display: flex;
      align-items: center;
      gap: 8px;
      z-index: 2147483647;
      width: 226px;
      justify-content: center;
      background-color: #212121;
      border-radius: 8px;
      padding: 8px;
    }
    #screensaver input[type="password"] {
      font-family: Noto Sans KR, Arial, sans-serif;
      border: none;
      border-bottom: 2px solid white;
      background: transparent;
      color: white;
      font-size: 12px;
      z-index: 2147483647;
      padding: 5px 0;
      width: 100px;
      outline: none;
    }
    #unlockBtn {
      font-family: Noto Sans KR, Arial, sans-serif;
      width: 32px;
      height: 32px;
      font-size: 12px;
      padding: 0;
      background: #444;
      border: none;
      color: white;
      border-radius: 4px;
      cursor: pointer;
      line-height: 32px;
      text-align: center;
      user-select: none;
    }
    #helpBtn {
      background: none;
      border: none;
      font-size: 15px;
      color: white;
      cursor: pointer;
      padding: 0;
      width: 26px;
      height: 26px;
      line-height: 26px;
      text-align: center;
      user-select: none;
    }
    /* 설정창 */
    #settingsModal {
      display: none;
      position: fixed;
      bottom: 140px;
      right: 20px;
      background: #222;
      border: 1px solid #444;
      border-radius: 8px;
      padding: 15px;
      width: 280px;
      z-index: 1001;
      color: white;
      font-size: 14px;
    }
    #settingsModal label {
      display: block;
      margin-top: 10px;
    }
    #settingsModal input[type="password"], #settingsModal input[type="text"], #settingsModal select {
      width: 100%;
      padding: 5px;
      margin-top: 5px;
      border-radius: 4px;
      border: none;
      font-size: 14px;
      coror: #212121 !important;
    }
    #settingsModal button {
      margin-top: 15px;
      padding: 8px 12px;
      border: none;
      border-radius: 5px;
      background: #444;
      color: white;
      cursor: pointer;
    }
    #settingsClose {
      float: right;
      background: none;
      border: none;
      color: white;
      font-weight: bold;
      font-size: 18px;
      cursor: pointer;
      margin-top: -10px;
      margin-right: -10px;
    }
    #passwordView {
      cursor: pointer;
      color: #ccc;
      font-size: 12px;
      margin-top: 2px;
      user-select: none;
    }
    /* 잠금모드 */

    /* 화면 너비가 600px 이하일 때의 margin-top 설정 */
     @media (max-width: 600px) {
       .responsive-div {
        margin-top: 12%;
        margin-bottom: 0px;
      }
     } 
     
