{"id":5227,"date":"2026-06-15T11:26:12","date_gmt":"2026-06-15T02:26:12","guid":{"rendered":"https:\/\/unihub.kr\/?page_id=5227"},"modified":"2026-06-15T14:52:24","modified_gmt":"2026-06-15T05:52:24","slug":"%ed%85%8c%ec%8a%a4%ed%8a%b8_260615","status":"publish","type":"page","link":"https:\/\/unihub.kr\/?page_id=5227","title":{"rendered":"\uc720\ub2c8\ud5c8\ube0c \uc2dc\uacc4"},"content":{"rendered":"\n\n<div id=\"analog_clock_6479\" class=\"analog-clock-force-page\">\n\n    <div class=\"clock-buttons\">\n        <button class=\"second-toggle-btn\">\ucd08 \ud45c\uc2dc<\/button>\n        <button class=\"analog-toggle-btn\">\uc544\ub0a0\ub85c\uadf8 \uc228\uae30\uae30<\/button>\n        <button class=\"digital-toggle-btn\">\ub514\uc9c0\ud138 \uc228\uae30\uae30<\/button>\n        <button class=\"fullscreen-btn\">\u26f6 \uc804\uccb4\ud654\uba74<\/button>\n    <\/div>\n\n    <div class=\"sync-status\">\ub85c\uceec \uc2dc\uac04 \ud45c\uc2dc \uc911...<\/div>\n\n    <div class=\"clock-wrap\">\n\n        <div class=\"clock\">\n                            <div class=\"number n1\">1<\/div>\n                            <div class=\"number n2\">2<\/div>\n                            <div class=\"number n3\">3<\/div>\n                            <div class=\"number n4\">4<\/div>\n                            <div class=\"number n5\">5<\/div>\n                            <div class=\"number n6\">6<\/div>\n                            <div class=\"number n7\">7<\/div>\n                            <div class=\"number n8\">8<\/div>\n                            <div class=\"number n9\">9<\/div>\n                            <div class=\"number n10\">10<\/div>\n                            <div class=\"number n11\">11<\/div>\n                            <div class=\"number n12\">12<\/div>\n            \n            <div class=\"hour\"><\/div>\n            <div class=\"minute\"><\/div>\n            <div class=\"second\"><\/div>\n            <div class=\"center\"><\/div>\n        <\/div>\n\n        <div class=\"digital-clock\">-- --:--<\/div>\n\n    <\/div>\n\n<\/div>\n\n<style>\n    html.analog-clock-html,\n    html.analog-clock-html body {\n        margin: 0 !important;\n        padding: 0 !important;\n        width: 100vw !important;\n        height: 100vh !important;\n        overflow: hidden !important;\n        background: #fff !important;\n    }\n\n    body.analog-clock-body > *:not(#analog_clock_6479) {\n        display: none !important;\n        visibility: hidden !important;\n        opacity: 0 !important;\n        pointer-events: none !important;\n    }\n\n    #analog_clock_6479 {\n        position: fixed !important;\n        inset: 0 !important;\n        width: 100vw !important;\n        height: 100vh !important;\n        display: flex !important;\n        justify-content: center !important;\n        align-items: center !important;\n        background: #fff !important;\n        z-index: 2147483647 !important;\n        overflow: hidden !important;\n    }\n\n    #analog_clock_6479 * {\n        box-sizing: border-box;\n    }\n\n    #analog_clock_6479 .clock-wrap {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: min(3.5vh, 32px);\n    }\n\n    #analog_clock_6479 .clock {\n        position: relative;\n        width: min(70vw, 70vh);\n        height: min(70vw, 70vh);\n        background: #fff;\n        border-radius: 50%;\n        border: 16px solid #111;\n        box-shadow: 0 0 35px rgba(0,0,0,.18);\n    }\n\n    #analog_clock_6479.hide-analog .clock {\n        display: none;\n    }\n\n    #analog_clock_6479.hide-digital .digital-clock {\n        display: none;\n    }\n\n    #analog_clock_6479.hide-analog .digital-clock {\n        font-size: clamp(72px, 15vmin, 180px);\n    }\n\n    #analog_clock_6479.hide-digital .clock {\n        width: min(82vw, 82vh);\n        height: min(82vw, 82vh);\n    }\n\n    #analog_clock_6479 .number {\n        position: absolute;\n        left: 50%;\n        top: 50%;\n        font-size: clamp(24px, 3vmin, 48px);\n        font-weight: 900;\n        color: #000;\n        line-height: 1;\n        user-select: none;\n    }\n\n    \n        #analog_clock_6479 .n1 {\n            transform:\n                translate(-50%, -50%)\n                rotate(30deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-30deg);\n        }\n\n        #analog_clock_6479.hide-digital .n1 {\n            transform:\n                translate(-50%, -50%)\n                rotate(30deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-30deg);\n        }\n        \n        #analog_clock_6479 .n2 {\n            transform:\n                translate(-50%, -50%)\n                rotate(60deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-60deg);\n        }\n\n        #analog_clock_6479.hide-digital .n2 {\n            transform:\n                translate(-50%, -50%)\n                rotate(60deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-60deg);\n        }\n        \n        #analog_clock_6479 .n3 {\n            transform:\n                translate(-50%, -50%)\n                rotate(90deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-90deg);\n        }\n\n        #analog_clock_6479.hide-digital .n3 {\n            transform:\n                translate(-50%, -50%)\n                rotate(90deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-90deg);\n        }\n        \n        #analog_clock_6479 .n4 {\n            transform:\n                translate(-50%, -50%)\n                rotate(120deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-120deg);\n        }\n\n        #analog_clock_6479.hide-digital .n4 {\n            transform:\n                translate(-50%, -50%)\n                rotate(120deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-120deg);\n        }\n        \n        #analog_clock_6479 .n5 {\n            transform:\n                translate(-50%, -50%)\n                rotate(150deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-150deg);\n        }\n\n        #analog_clock_6479.hide-digital .n5 {\n            transform:\n                translate(-50%, -50%)\n                rotate(150deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-150deg);\n        }\n        \n        #analog_clock_6479 .n6 {\n            transform:\n                translate(-50%, -50%)\n                rotate(180deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-180deg);\n        }\n\n        #analog_clock_6479.hide-digital .n6 {\n            transform:\n                translate(-50%, -50%)\n                rotate(180deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-180deg);\n        }\n        \n        #analog_clock_6479 .n7 {\n            transform:\n                translate(-50%, -50%)\n                rotate(210deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-210deg);\n        }\n\n        #analog_clock_6479.hide-digital .n7 {\n            transform:\n                translate(-50%, -50%)\n                rotate(210deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-210deg);\n        }\n        \n        #analog_clock_6479 .n8 {\n            transform:\n                translate(-50%, -50%)\n                rotate(240deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-240deg);\n        }\n\n        #analog_clock_6479.hide-digital .n8 {\n            transform:\n                translate(-50%, -50%)\n                rotate(240deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-240deg);\n        }\n        \n        #analog_clock_6479 .n9 {\n            transform:\n                translate(-50%, -50%)\n                rotate(270deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-270deg);\n        }\n\n        #analog_clock_6479.hide-digital .n9 {\n            transform:\n                translate(-50%, -50%)\n                rotate(270deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-270deg);\n        }\n        \n        #analog_clock_6479 .n10 {\n            transform:\n                translate(-50%, -50%)\n                rotate(300deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-300deg);\n        }\n\n        #analog_clock_6479.hide-digital .n10 {\n            transform:\n                translate(-50%, -50%)\n                rotate(300deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-300deg);\n        }\n        \n        #analog_clock_6479 .n11 {\n            transform:\n                translate(-50%, -50%)\n                rotate(330deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-330deg);\n        }\n\n        #analog_clock_6479.hide-digital .n11 {\n            transform:\n                translate(-50%, -50%)\n                rotate(330deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-330deg);\n        }\n        \n        #analog_clock_6479 .n12 {\n            transform:\n                translate(-50%, -50%)\n                rotate(0deg)\n                translateY(calc(-1 * min(70vw, 70vh) * 0.39))\n                rotate(-0deg);\n        }\n\n        #analog_clock_6479.hide-digital .n12 {\n            transform:\n                translate(-50%, -50%)\n                rotate(0deg)\n                translateY(calc(-1 * min(82vw, 82vh) * 0.39))\n                rotate(-0deg);\n        }\n        \n    #analog_clock_6479 .hour {\n        position: absolute;\n        left: 50%;\n        bottom: 50%;\n        width: 18px;\n        height: 28%;\n        background: #222;\n        border-radius: 999px;\n        transform-origin: bottom center;\n        transform: translateX(-50%) rotate(0deg);\n        z-index: 3;\n    }\n\n    #analog_clock_6479 .minute {\n        position: absolute;\n        left: 50%;\n        bottom: 50%;\n        width: 10px;\n        height: 40%;\n        background: #333;\n        border-radius: 999px;\n        transform-origin: bottom center;\n        transform: translateX(-50%) rotate(0deg);\n        z-index: 4;\n    }\n\n    #analog_clock_6479 .second {\n        position: absolute;\n        left: 50%;\n        bottom: 50%;\n        width: 4px;\n        height: 43%;\n        background: #111;\n        border-radius: 999px;\n        transform-origin: bottom center;\n        transform: translateX(-50%) rotate(0deg);\n        z-index: 5;\n        display: none;\n    }\n\n    #analog_clock_6479.show-seconds .second {\n        display: block;\n    }\n\n    #analog_clock_6479 .center {\n        position: absolute;\n        left: 50%;\n        top: 50%;\n        width: 34px;\n        height: 34px;\n        background: #222;\n        border-radius: 50%;\n        transform: translate(-50%, -50%);\n        z-index: 6;\n    }\n\n    #analog_clock_6479 .digital-clock {\n        font-size: clamp(46px, 8vmin, 96px);\n        font-weight: 900;\n        line-height: 1;\n        letter-spacing: 0.04em;\n        color: #111;\n        font-family: Arial, Helvetica, sans-serif;\n        user-select: none;\n    }\n\n    #analog_clock_6479 .clock-buttons {\n        position: fixed !important;\n        top: 24px !important;\n        right: 24px !important;\n        z-index: 2147483647 !important;\n        display: flex;\n        gap: 10px;\n        flex-wrap: wrap;\n        justify-content: flex-end;\n    }\n\n    #analog_clock_6479 .clock-buttons button {\n        padding: 13px 18px;\n        border: 0;\n        border-radius: 10px;\n        background: rgba(0,0,0,.72);\n        color: #fff;\n        font-size: 16px;\n        font-weight: 700;\n        cursor: pointer;\n    }\n\n    #analog_clock_6479 .clock-buttons button:hover {\n        background: rgba(0,0,0,.9);\n    }\n\n    #analog_clock_6479 .sync-status {\n        position: fixed;\n        left: 24px;\n        bottom: 20px;\n        font-size: 14px;\n        font-weight: 600;\n        color: rgba(0,0,0,.45);\n        z-index: 2147483647;\n    }\n\n\n\n\n\/* ==============================\n   \ubaa8\ubc14\uc77c \uc804\uc6a9 \uc870\uc815\n   PC\ub294 \uc601\ud5a5 \uc5c6\uc74c\n============================== *\/\n@media (max-width: 768px) {\n\n    #analog_clock_6479 {\n        align-items: center !important;\n        padding-top: 58px !important;\n    }\n\n    #analog_clock_6479 .clock-wrap {\n        gap: 18px;\n        width: 100%;\n        padding: 0 14px;\n\n        \/* \uc704\ub85c \uc774\ub3d9 *\/\n        transform: translateY(-40px);\n    }\n\n    \/* \ubaa8\ubc14\uc77c \uc2dc\uacc4 \ud06c\uae30 *\/\n    #analog_clock_6479 .clock {\n        width: min(82vw, 58vh);\n        height: min(82vw, 58vh);\n\n        \/* \ub3d9\uadf8\ub780 \ud14c\ub450\ub9ac \uc587\uac8c *\/\n        border-width: 9px;\n        box-shadow: 0 0 22px rgba(0,0,0,.14);\n    }\n\n    \/* \ub514\uc9c0\ud138 \uc228\uae40\uc77c \ub54c \uc544\ub0a0\ub85c\uadf8 \ub2e8\ub3c5 \ud06c\uae30 *\/\n    #analog_clock_6479.hide-digital .clock {\n        width: min(88vw, 72vh);\n        height: min(88vw, 72vh);\n        border-width: 9px;\n    }\n\n    \/* \uc22b\uc790 \ud06c\uae30 *\/\n    #analog_clock_6479 .number {\n        font-size: clamp(20px, 6vw, 34px);\n    }\n\n    \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n1 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(30deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-30deg);\n            }\n\n            #analog_clock_6479.hide-digital .n1 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(30deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-30deg);\n            }\n        }\n        \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n2 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(60deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-60deg);\n            }\n\n            #analog_clock_6479.hide-digital .n2 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(60deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-60deg);\n            }\n        }\n        \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n3 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(90deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-90deg);\n            }\n\n            #analog_clock_6479.hide-digital .n3 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(90deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-90deg);\n            }\n        }\n        \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n4 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(120deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-120deg);\n            }\n\n            #analog_clock_6479.hide-digital .n4 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(120deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-120deg);\n            }\n        }\n        \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n5 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(150deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-150deg);\n            }\n\n            #analog_clock_6479.hide-digital .n5 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(150deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-150deg);\n            }\n        }\n        \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n6 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(180deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-180deg);\n            }\n\n            #analog_clock_6479.hide-digital .n6 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(180deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-180deg);\n            }\n        }\n        \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n7 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(210deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-210deg);\n            }\n\n            #analog_clock_6479.hide-digital .n7 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(210deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-210deg);\n            }\n        }\n        \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n8 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(240deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-240deg);\n            }\n\n            #analog_clock_6479.hide-digital .n8 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(240deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-240deg);\n            }\n        }\n        \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n9 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(270deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-270deg);\n            }\n\n            #analog_clock_6479.hide-digital .n9 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(270deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-270deg);\n            }\n        }\n        \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n10 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(300deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-300deg);\n            }\n\n            #analog_clock_6479.hide-digital .n10 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(300deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-300deg);\n            }\n        }\n        \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n11 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(330deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-330deg);\n            }\n\n            #analog_clock_6479.hide-digital .n11 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(330deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-330deg);\n            }\n        }\n        \n        @media (max-width: 768px) {\n            #analog_clock_6479 .n12 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(0deg)\n                    translateY(calc(-1 * min(82vw, 58vh) * 0.39))\n                    rotate(-0deg);\n            }\n\n            #analog_clock_6479.hide-digital .n12 {\n                transform:\n                    translate(-50%, -50%)\n                    rotate(0deg)\n                    translateY(calc(-1 * min(88vw, 72vh) * 0.39))\n                    rotate(-0deg);\n            }\n        }\n        \n    \/* \uc2dc\uce68 \uc587\uac8c *\/\n    #analog_clock_6479 .hour {\n        width: 10px;\n        height: 27%;\n    }\n\n    \/* \ubd84\uce68 \uc587\uac8c *\/\n    #analog_clock_6479 .minute {\n        width: 6px;\n        height: 39%;\n    }\n\n    \/* \ucd08\uce68 \uc587\uac8c *\/\n    #analog_clock_6479 .second {\n        width: 3px;\n        height: 42%;\n    }\n\n    \/* \uc911\uc559\uc810 \uc791\uac8c *\/\n    #analog_clock_6479 .center {\n        width: 22px;\n        height: 22px;\n    }\n\n    \/* \ubc84\ud2bc 4\uac1c \ud55c \uc904 *\/\n    #analog_clock_6479 .clock-buttons {\n        top: 10px !important;\n        left: 8px !important;\n        right: 8px !important;\n\n        width: calc(100vw - 16px);\n        display: grid;\n        grid-template-columns: repeat(4, 1fr);\n        gap: 6px;\n    }\n\n    #analog_clock_6479 .clock-buttons button {\n        padding: 9px 4px;\n        font-size: clamp(11px, 3vw, 13px);\n        border-radius: 8px;\n        white-space: nowrap;\n    }\n\n    \/* \ub514\uc9c0\ud138 \ud55c \uc904 \uace0\uc815 *\/\n    #analog_clock_6479 .digital-clock {\n        width: 100%;\n        max-width: 100vw;\n\n        text-align: center;\n        white-space: nowrap;\n\n        font-size: clamp(36px, 12vw, 58px);\n        letter-spacing: 0.01em;\n        line-height: 1;\n    }\n\n    \/* \uc544\ub0a0\ub85c\uadf8 \uc228\uae40 + \ub514\uc9c0\ud138\ub9cc\uc77c \ub54c\ub3c4 \ud55c \uc904 *\/\n    #analog_clock_6479.hide-analog .digital-clock {\n        font-size: clamp(44px, 14vw, 72px);\n        white-space: nowrap;\n    }\n\n    #analog_clock_6479 .sync-status {\n        left: 10px;\n        bottom: 8px;\n        font-size: 11px;\n    }\n}\n\n\n\n\n\n\n\n\n\n\n\n<\/style>\n\n<script>\n(function(){\n\n    const root = document.getElementById(\"analog_clock_6479\");\n    if (!root) return;\n\n    document.documentElement.classList.add(\"analog-clock-html\");\n    document.body.appendChild(root);\n    document.body.classList.add(\"analog-clock-body\");\n\n    const hour = root.querySelector(\".hour\");\n    const minute = root.querySelector(\".minute\");\n    const second = root.querySelector(\".second\");\n    const digital = root.querySelector(\".digital-clock\");\n\n    const fullscreenBtn = root.querySelector(\".fullscreen-btn\");\n    const secondBtn = root.querySelector(\".second-toggle-btn\");\n    const analogBtn = root.querySelector(\".analog-toggle-btn\");\n    const digitalBtn = root.querySelector(\".digital-toggle-btn\");\n    const status = root.querySelector(\".sync-status\");\n\n    let baseServerTimeMs = null;\n    let basePerformanceMs = null;\n    let synced = false;\n\n    let showSeconds = false;\n    let showAnalog = true;\n    let showDigital = true;\n\n    function pad2(num) {\n        return String(num).padStart(2, \"0\");\n    }\n\n    async function syncKSTTime() {\n        const requestStart = performance.now();\n\n        try {\n            const res = await fetch(\n                \"https:\/\/timeapi.io\/api\/Time\/current\/zone?timeZone=Asia\/Seoul\",\n                { cache: \"no-store\" }\n            );\n\n            const requestEnd = performance.now();\n\n            if (!res.ok) {\n                throw new Error(\"timeapi error\");\n            }\n\n            const data = await res.json();\n\n            const serverTime = new Date(\n                data.year,\n                data.month - 1,\n                data.day,\n                data.hour,\n                data.minute,\n                data.seconds,\n                data.milliSeconds || 0\n            );\n\n            const rtt = requestEnd - requestStart;\n            const correctedServerTimeMs = serverTime.getTime() + (rtt \/ 2);\n\n            baseServerTimeMs = correctedServerTimeMs;\n            basePerformanceMs = requestEnd;\n            synced = true;\n\n            status.textContent = \"KST \uc11c\ubc84\uc2dc\uac04 \ub3d9\uae30\ud654 \uc644\ub8cc\";\n        } catch (e) {\n            status.textContent = \"\ub85c\uceec \uc2dc\uac04 \ud45c\uc2dc \uc911 - \uc11c\ubc84\uc2dc\uac04 \uc7ac\uc2dc\ub3c4\";\n            synced = false;\n        }\n    }\n\n    function getCurrentDate() {\n        if (!synced || baseServerTimeMs === null || basePerformanceMs === null) {\n            return new Date();\n        }\n\n        const elapsed = performance.now() - basePerformanceMs;\n        return new Date(baseServerTimeMs + elapsed);\n    }\n\n    function tick() {\n        const now = getCurrentDate();\n\n        const h24 = now.getHours();\n        const ampm = h24 < 12 ? \"AM\" : \"PM\";\n\n        let h12Digital = h24 % 12;\n        if (h12Digital === 0) h12Digital = 12;\n\n        const h12Analog = h24 % 12;\n        const m = now.getMinutes();\n        const s = now.getSeconds();\n        const ms = now.getMilliseconds();\n\n        const hourDeg = h12Analog * 30 + m * 0.5 + s * (0.5 \/ 60);\n        const minuteDeg = m * 6 + s * 0.1 + ms * 0.0001;\n        const secondDeg = s * 6 + ms * 0.006;\n\n        hour.style.transform = \"translateX(-50%) rotate(\" + hourDeg + \"deg)\";\n        minute.style.transform = \"translateX(-50%) rotate(\" + minuteDeg + \"deg)\";\n        second.style.transform = \"translateX(-50%) rotate(\" + secondDeg + \"deg)\";\n\n        if (showSeconds) {\n            digital.textContent = ampm + \" \" + pad2(h12Digital) + \":\" + pad2(m) + \":\" + pad2(s);\n        } else {\n            digital.textContent = ampm + \" \" + pad2(h12Digital) + \":\" + pad2(m);\n        }\n    }\n\n    function refreshSecondButton() {\n        if (showSeconds) {\n            root.classList.add(\"show-seconds\");\n            secondBtn.textContent = \"\ucd08 \uc228\uae30\uae30\";\n        } else {\n            root.classList.remove(\"show-seconds\");\n            secondBtn.textContent = \"\ucd08 \ud45c\uc2dc\";\n        }\n\n        tick();\n    }\n\n    function refreshClockVisibility() {\n        if (!showAnalog && !showDigital) {\n            showAnalog = true;\n        }\n\n        if (showAnalog) {\n            root.classList.remove(\"hide-analog\");\n            analogBtn.textContent = \"\uc544\ub0a0\ub85c\uadf8 \uc228\uae30\uae30\";\n        } else {\n            root.classList.add(\"hide-analog\");\n            analogBtn.textContent = \"\uc544\ub0a0\ub85c\uadf8 \ubcf4\uc774\uae30\";\n        }\n\n        if (showDigital) {\n            root.classList.remove(\"hide-digital\");\n            digitalBtn.textContent = \"\ub514\uc9c0\ud138 \uc228\uae30\uae30\";\n        } else {\n            root.classList.add(\"hide-digital\");\n            digitalBtn.textContent = \"\ub514\uc9c0\ud138 \ubcf4\uc774\uae30\";\n        }\n\n        tick();\n    }\n\n    secondBtn.addEventListener(\"click\", function(){\n        showSeconds = !showSeconds;\n        refreshSecondButton();\n    });\n\n    analogBtn.addEventListener(\"click\", function(){\n        if (showAnalog && !showDigital) return;\n        showAnalog = !showAnalog;\n        refreshClockVisibility();\n    });\n\n    digitalBtn.addEventListener(\"click\", function(){\n        if (showDigital && !showAnalog) return;\n        showDigital = !showDigital;\n        refreshClockVisibility();\n    });\n\n    function refreshFullscreenButton() {\n        if (document.fullscreenElement) {\n            fullscreenBtn.textContent = \"\ud83e\udc7c \uc804\uccb4\ud654\uba74 \uc885\ub8cc\";\n        } else {\n            fullscreenBtn.textContent = \"\u26f6 \uc804\uccb4\ud654\uba74\";\n        }\n    }\n\n    fullscreenBtn.addEventListener(\"click\", async function(){\n        try {\n            if (document.fullscreenElement) {\n                await document.exitFullscreen();\n            } else {\n                await root.requestFullscreen();\n            }\n        } catch(e) {}\n    });\n\n    document.addEventListener(\"fullscreenchange\", refreshFullscreenButton);\n\n    tick();\n    syncKSTTime();\n\n    setInterval(syncKSTTime, 10 * 60 * 1000);\n    setInterval(tick, 250);\n\n    refreshSecondButton();\n    refreshClockVisibility();\n    refreshFullscreenButton();\n\n})();\n<\/script>\n\n\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_sitemap_exclude":false,"_sitemap_priority":"","_sitemap_frequency":"","footnotes":""},"_links":{"self":[{"href":"https:\/\/unihub.kr\/index.php?rest_route=\/wp\/v2\/pages\/5227"}],"collection":[{"href":"https:\/\/unihub.kr\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/unihub.kr\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/unihub.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/unihub.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5227"}],"version-history":[{"count":3,"href":"https:\/\/unihub.kr\/index.php?rest_route=\/wp\/v2\/pages\/5227\/revisions"}],"predecessor-version":[{"id":5230,"href":"https:\/\/unihub.kr\/index.php?rest_route=\/wp\/v2\/pages\/5227\/revisions\/5230"}],"wp:attachment":[{"href":"https:\/\/unihub.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5227"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}