@CHARSET "UTF-8";

/* 사용자 가이드/AS — 메인 테마와 무관하게 항상 라이트 테마로 표시한다. */
@media (max-width: 1080px) {
    #user_guide_modal {
        background: #fffaf7 !important;
        color: #182033 !important;
        font-family: 'Spoqa Han Sans Neo', sans-serif !important;
    }

    #user_guide_modal .modal_header {
        height: 100px !important;
        background: #ffffff !important;
        border-bottom: 1px solid #dfe5ef !important;
        box-shadow: 0 4px 18px rgba(31, 45, 72, 0.07) !important;
    }

    #user_guide_modal .modal_header h1 {
        color: #182033 !important;
        font-size: 34px !important;
        font-weight: 700 !important;
        text-shadow: none !important;
    }

    #user_guide_modal .modal_header img {
        filter: brightness(0.28) saturate(1.3) !important;
    }

    #user_guide_modal .user-guide-modal-content {
        display: block !important;
        top: 100px !important;
        bottom: 0 !important;
        width: 100% !important;
        height: auto !important;
        box-sizing: border-box !important;
        padding: 26px 54px 70px !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        flex-wrap: nowrap !important;
        background:
            radial-gradient(circle at 12% 8%, rgba(255, 226, 217, 0.38), transparent 26%),
            linear-gradient(180deg, #fffdfb 0%, #fff9f6 58%, #fffdfb 100%) !important;
    }

    #user_guide_modal .user-guide-view {
        display: none;
        width: 100%;
        max-width: 972px;
        margin: 0 auto;
        box-sizing: border-box;
    }

    #user_guide_modal .user-guide-view.is-active {
        display: block;
    }

    #user_guide_modal .user-guide-hero {
        position: relative;
        width: 100%;
        margin: 0 0 8px;
        overflow: hidden;
        border-radius: 30px;
        background: #fffaf7;
        box-shadow: 0 16px 38px rgba(109, 72, 60, 0.11);
    }

    #user_guide_modal .user-guide-hero > img {
        display: block;
        width: 100%;
        height: auto;
    }

    #user_guide_modal .user-guide-intro {
        position: absolute;
        left: 32px;
        right: 36%;
        bottom: 28px;
        z-index: 1;
    }

    #user_guide_modal .user-guide-intro h2 {
        margin: 0;
        color: #182033;
        font-size: 40px;
        line-height: 1.25;
        font-weight: 700;
        letter-spacing: -1.4px;
    }

    #user_guide_modal .user-guide-intro p {
        margin: 12px 0 0;
        color: #677286;
        font-size: 21px;
        line-height: 1.55;
    }

    #user_guide_modal .user-guide-banner-wrap {
        position: relative;
        margin: 22px 0 30px;
    }

    #user_guide_modal .user-guide-safety {
        position: relative;
        display: grid !important;
        grid-template-columns: 68px 1fr 28px;
        align-items: center;
        gap: 20px;
        width: 100%;
        min-height: 118px;
        margin: 0 !important;
        padding: 20px 28px 26px;
        box-sizing: border-box;
        border: 1px solid #efb0b5;
        border-radius: 24px;
        background: linear-gradient(110deg, #fff0ef 0%, #fff7f5 100%);
        color: #8f2933;
        text-align: left;
        box-shadow: 0 10px 24px rgba(150, 70, 67, 0.09);
        transition: background 240ms ease, border-color 240ms ease, transform 180ms ease;
    }

    #user_guide_modal .user-guide-safety[data-tone="tip"] {
        border-color: #f1c49f;
        background: linear-gradient(110deg, #fff7ec 0%, #fffdf8 100%);
        color: #92572c;
    }

    #user_guide_modal .user-guide-safety[data-tone="support"] {
        border-color: #d9b9ee;
        background: linear-gradient(110deg, #f9f2ff 0%, #fffaff 100%);
        color: #70498d;
    }

    #user_guide_modal .user-guide-banner-icon {
        display: grid !important;
        place-items: center;
        width: 66px;
        height: 66px;
        margin: 0 !important;
        border-radius: 22px;
        background: rgba(255, 255, 255, 0.74);
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.85);
    }

    #user_guide_modal .user-guide-safety img {
        width: 44px;
        height: 44px;
        object-fit: contain;
        filter: sepia(1) saturate(4) hue-rotate(305deg) brightness(0.75);
    }

    #user_guide_modal .user-guide-safety[data-tone="tip"] img {
        filter: invert(66%) sepia(42%) saturate(1074%) hue-rotate(337deg) brightness(99%) contrast(92%);
    }

    #user_guide_modal .user-guide-safety[data-tone="support"] img {
        filter: invert(48%) sepia(32%) saturate(1024%) hue-rotate(233deg) brightness(94%) contrast(91%);
    }

    #user_guide_modal .user-guide-safety strong,
    #user_guide_modal .user-guide-safety span {
        display: block;
    }

    #user_guide_modal .user-guide-safety strong {
        font-size: 23px;
        line-height: 1.35;
        font-weight: 700;
    }

    #user_guide_modal .user-guide-safety span {
        margin-top: 5px;
        font-size: 19px;
        line-height: 1.45;
    }

    #user_guide_modal .user-guide-banner-arrow {
        display: block;
        margin: 0 !important;
        font-size: 38px !important;
        line-height: 1 !important;
        text-align: right;
        opacity: 0.72;
    }

    #user_guide_modal .user-guide-banner-dots {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 9px;
        display: flex;
        justify-content: center;
        gap: 8px;
        pointer-events: none;
    }

    #user_guide_modal .user-guide-banner-dot {
        width: 8px;
        height: 8px;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: rgba(95, 70, 72, 0.22);
        pointer-events: auto;
        transition: width 180ms ease, background 180ms ease;
    }

    #user_guide_modal .user-guide-banner-dot.is-active {
        width: 24px;
        border-radius: 99px;
        background: #e66a7b;
    }

    #user_guide_modal .user-guide-safety.is-changing .user-guide-banner-icon,
    #user_guide_modal .user-guide-safety.is-changing .user-guide-banner-copy,
    #user_guide_modal .user-guide-safety.is-changing .user-guide-banner-arrow {
        animation: userGuideBannerIn 360ms ease both;
    }

    @keyframes userGuideBannerIn {
        from {
            opacity: 0;
            transform: translateY(8px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    #user_guide_modal .user-guide-fault-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    #user_guide_modal .user-guide-fault-card {
        display: grid;
        grid-template-columns: 68px 1fr 24px;
        align-items: center;
        gap: 18px;
        min-height: 150px;
        padding: 24px 26px;
        box-sizing: border-box;
        border: 1px solid #ded4cf;
        border-radius: 24px;
        background: linear-gradient(145deg, #ffffff 0%, #fffdfb 100%);
        color: #182033;
        text-align: left;
        box-shadow: 0 11px 27px rgba(102, 75, 66, 0.08);
    }

    #user_guide_modal .user-guide-fault-card:active,
    #user_guide_modal .user-guide-support-card:active,
    #user_guide_modal .user-guide-secondary-button:active,
    #user_guide_modal .user-guide-action:active {
        transform: translateY(1px);
    }

    #user_guide_modal .user-guide-fault-card > .user-guide-card-icon {
        display: grid !important;
        place-items: center;
        width: 62px;
        height: 62px;
        margin: 0 !important;
        border-radius: 20px;
        background: linear-gradient(145deg, #fff2f4, #fff9f8);
    }

    #user_guide_modal .user-guide-fault-card > .user-guide-card-icon img {
        width: 42px;
        height: 42px;
        object-fit: contain;
        filter: invert(54%) sepia(47%) saturate(2040%) hue-rotate(291deg) brightness(101%) contrast(96%);
    }

    #user_guide_modal .user-guide-fault-card:nth-child(2) > .user-guide-card-icon,
    #user_guide_modal .user-guide-fault-card:nth-child(4) > .user-guide-card-icon {
        background: linear-gradient(145deg, #fff0fb, #fff9fd);
    }

    #user_guide_modal .user-guide-fault-card:nth-child(2) > .user-guide-card-icon img,
    #user_guide_modal .user-guide-fault-card:nth-child(4) > .user-guide-card-icon img {
        filter: invert(48%) sepia(83%) saturate(2092%) hue-rotate(293deg) brightness(102%) contrast(93%);
    }

    #user_guide_modal .user-guide-fault-card:nth-child(3) > .user-guide-card-icon,
    #user_guide_modal .user-guide-fault-card:nth-child(6) > .user-guide-card-icon {
        background: linear-gradient(145deg, #f5efff, #fcfaff);
    }

    #user_guide_modal .user-guide-fault-card:nth-child(3) > .user-guide-card-icon img,
    #user_guide_modal .user-guide-fault-card:nth-child(6) > .user-guide-card-icon img {
        filter: invert(55%) sepia(41%) saturate(999%) hue-rotate(222deg) brightness(94%) contrast(93%);
    }

    #user_guide_modal .user-guide-fault-card:nth-child(5) > .user-guide-card-icon {
        background: linear-gradient(145deg, #fff4ed, #fffaf6);
    }

    #user_guide_modal .user-guide-fault-card:nth-child(5) > .user-guide-card-icon img {
        filter: invert(65%) sepia(51%) saturate(1113%) hue-rotate(323deg) brightness(100%) contrast(95%);
    }

    #user_guide_modal .user-guide-fault-card strong,
    #user_guide_modal .user-guide-fault-card span {
        display: block;
    }

    #user_guide_modal .user-guide-fault-card strong {
        color: #182033;
        font-size: 25px;
        line-height: 1.3;
        font-weight: 700;
    }

    #user_guide_modal .user-guide-fault-card span {
        margin-top: 8px;
        color: #707b8e;
        font-size: 18px;
        line-height: 1.45;
    }

    #user_guide_modal .user-guide-chevron {
        color: #d74d94;
        font-size: 34px;
        line-height: 1;
        text-align: right;
    }

    #user_guide_modal .user-guide-section-title {
        margin: 38px 0 16px;
        color: #182033;
        font-size: 28px;
        line-height: 1.35;
        font-weight: 700;
    }

    #user_guide_modal .user-guide-lower-sections {
        position: relative;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 42px;
        margin-top: 38px;
    }

    #user_guide_modal .user-guide-lower-sections::before {
        content: "";
        position: absolute;
        top: 4px;
        bottom: 0;
        left: 50%;
        width: 1px;
        background: #d8cec9;
        transform: translateX(-0.5px);
    }

    #user_guide_modal .user-guide-lower-column {
        min-width: 0;
    }

    #user_guide_modal .user-guide-lower-column .user-guide-section-title {
        margin: 0 0 16px;
        font-size: 26px;
    }

    #user_guide_modal .user-guide-support-grid,
    #user_guide_modal .user-guide-secondary-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    #user_guide_modal .user-guide-lower-sections .user-guide-support-grid,
    #user_guide_modal .user-guide-lower-sections .user-guide-secondary-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
    }

    #user_guide_modal .user-guide-support-card {
        display: grid;
        grid-template-columns: 58px 1fr 24px;
        align-items: center;
        gap: 16px;
        min-height: 110px;
        padding: 20px 24px;
        box-sizing: border-box;
        border: 1px solid #e7a8c9;
        border-radius: 22px;
        background: linear-gradient(145deg, #fff7fb 0%, #fffdfd 100%);
        color: #182033;
        text-align: left;
        box-shadow: 0 8px 20px rgba(137, 73, 105, 0.05);
    }

    #user_guide_modal .user-guide-support-card > .user-guide-card-icon {
        display: grid !important;
        place-items: center;
        width: 54px;
        height: 54px;
        margin: 0 !important;
        border-radius: 18px;
        background: #fff0f8;
    }

    #user_guide_modal .user-guide-support-card .user-guide-card-icon img {
        width: 38px;
        height: 38px;
        object-fit: contain;
        filter: invert(54%) sepia(47%) saturate(2040%) hue-rotate(291deg) brightness(101%) contrast(96%);
    }

    #user_guide_modal .user-guide-support-card strong {
        display: block;
        color: #182033;
        font-size: 24px;
        line-height: 1.35;
    }

    #user_guide_modal .user-guide-support-card span {
        display: block;
        margin-top: 5px;
        color: #707b8e;
        font-size: 17px;
        line-height: 1.4;
    }

    #user_guide_modal .user-guide-secondary-button {
        display: grid;
        grid-template-columns: 48px 1fr 24px;
        align-items: center;
        gap: 14px;
        min-height: 110px;
        padding: 16px 22px;
        box-sizing: border-box;
        border: 1px solid #cfd7e2;
        border-radius: 18px;
        background: #ffffff;
        color: #273044;
        font-size: 21px;
        font-weight: 600;
        text-align: left;
        box-shadow: 0 8px 18px rgba(80, 90, 110, 0.04);
    }

    #user_guide_modal .user-guide-secondary-button > .user-guide-card-icon {
        display: grid !important;
        place-items: center;
        width: 46px;
        height: 46px;
        margin: 0 !important;
        border-radius: 15px;
        background: #fff1f7;
    }

    #user_guide_modal .user-guide-secondary-button .user-guide-card-icon img {
        width: 34px;
        height: 34px;
        object-fit: contain;
        filter: none;
    }

    #user_guide_modal .user-guide-secondary-button:nth-child(2) > .user-guide-card-icon {
        background: #f7f1ff;
    }

    #user_guide_modal #user_guide_detail {
        --guide-accent: #e85ba5;
        --guide-accent-deep: #a83a78;
        --guide-accent-soft: #fff1f8;
        --guide-accent-border: #efb5d3;
        padding-bottom: 20px;
    }

    #user_guide_modal #user_guide_detail[data-tone="danger"] {
        --guide-accent: #d94f55;
        --guide-accent-deep: #9d2d34;
        --guide-accent-soft: #fff0f0;
        --guide-accent-border: #efb2b5;
    }

    #user_guide_modal #user_guide_detail[data-tone="blue"] {
        --guide-accent: #3f8fc5;
        --guide-accent-deep: #28688f;
        --guide-accent-soft: #edf8ff;
        --guide-accent-border: #b6d9ee;
    }

    #user_guide_modal #user_guide_detail[data-tone="violet"] {
        --guide-accent: #8e67d8;
        --guide-accent-deep: #6945ad;
        --guide-accent-soft: #f6f1ff;
        --guide-accent-border: #d4c3f3;
    }

    #user_guide_modal #user_guide_detail[data-tone="coral"] {
        --guide-accent: #e17162;
        --guide-accent-deep: #a64a3f;
        --guide-accent-soft: #fff3ef;
        --guide-accent-border: #edc0b8;
    }

    #user_guide_modal #user_guide_detail[data-tone="neutral"] {
        --guide-accent: #727b8c;
        --guide-accent-deep: #4d5667;
        --guide-accent-soft: #f5f7fa;
        --guide-accent-border: #cfd5de;
    }

    #user_guide_modal #user_guide_detail[data-tone="mint"] {
        --guide-accent: #3aa68c;
        --guide-accent-deep: #25735f;
        --guide-accent-soft: #edfaf6;
        --guide-accent-border: #b8dfd3;
    }

    #user_guide_modal .user-guide-detail-hero {
        position: relative;
        display: grid;
        grid-template-columns: 118px 1fr;
        align-items: center;
        gap: 30px;
        min-height: 218px;
        margin: 8px 0 22px;
        padding: 34px 40px;
        box-sizing: border-box;
        overflow: hidden;
        border: 1px solid var(--guide-accent-border);
        border-radius: 30px;
        background:
            radial-gradient(circle at 88% 18%, rgba(255, 255, 255, 0.96) 0 7%, transparent 7.4%),
            radial-gradient(circle at 96% 86%, rgba(255, 255, 255, 0.72) 0 15%, transparent 15.5%),
            linear-gradient(135deg, var(--guide-accent-soft) 0%, #ffffff 78%);
        box-shadow: 0 15px 36px rgba(100, 72, 76, 0.09);
    }

    #user_guide_modal .user-guide-detail-icon {
        position: relative;
        z-index: 1;
        display: grid !important;
        place-items: center;
        width: 112px;
        height: 112px;
        margin: 0 !important;
        border: 1px solid rgba(255, 255, 255, 0.96);
        border-radius: 34px;
        background: rgba(255, 255, 255, 0.82);
        box-shadow: 0 12px 26px rgba(90, 61, 77, 0.10), inset 0 0 0 1px var(--guide-accent-soft);
    }

    #user_guide_modal .user-guide-detail-icon img {
        width: 64px;
        height: 64px;
        object-fit: contain;
    }

    #user_guide_modal .user-guide-detail-icon[data-icon-color="brand"] img {
        filter: invert(54%) sepia(47%) saturate(2040%) hue-rotate(291deg) brightness(101%) contrast(96%);
    }

    #user_guide_modal .user-guide-detail-icon[data-icon-color="original"] img {
        filter: none;
    }

    #user_guide_modal .user-guide-detail-hero-copy {
        position: relative;
        z-index: 1;
        min-width: 0;
    }

    #user_guide_modal .user-guide-detail-eyebrow {
        display: inline-flex !important;
        align-items: center;
        min-height: 32px;
        margin: 0 0 10px !important;
        padding: 4px 14px;
        box-sizing: border-box;
        border: 1px solid var(--guide-accent-border);
        border-radius: 99px;
        background: rgba(255, 255, 255, 0.76);
        color: var(--guide-accent-deep);
        font-size: 16px;
        line-height: 1.2;
        font-weight: 700;
    }

    #user_guide_modal .user-guide-detail-hero h2 {
        margin: 0;
        color: #182033;
        font-size: 40px;
        line-height: 1.25;
        font-weight: 800;
        letter-spacing: -1px;
    }

    #user_guide_modal .user-guide-detail-hero p {
        margin: 10px 0 0;
        color: #657187;
        font-size: 20px;
        line-height: 1.55;
        word-break: keep-all;
    }

    #user_guide_modal .user-guide-detail-meta {
        display: flex !important;
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 16px;
    }

    #user_guide_modal .user-guide-meta-chip {
        display: inline-flex !important;
        align-items: center;
        min-height: 30px;
        margin: 0 !important;
        padding: 4px 12px;
        box-sizing: border-box;
        border-radius: 99px;
        background: rgba(255, 255, 255, 0.84);
        color: #505d72;
        font-size: 15px;
        line-height: 1.25;
        font-weight: 600;
        box-shadow: inset 0 0 0 1px rgba(110, 120, 140, 0.12);
    }

    #user_guide_modal .user-guide-detail-navigation {
        position: sticky;
        top: 0;
        z-index: 4;
        display: flex !important;
        margin: 0 0 24px;
        padding: 12px;
        overflow-x: auto;
        border: 1px solid #ded7d2;
        border-radius: 20px;
        background: rgba(255, 253, 251, 0.96);
        box-shadow: 0 8px 20px rgba(87, 68, 61, 0.07);
        scrollbar-width: none;
    }

    #user_guide_modal .user-guide-detail-navigation::-webkit-scrollbar {
        display: none;
    }

    #user_guide_modal .user-guide-detail-nav-button {
        flex: 0 0 auto;
        min-height: 44px;
        padding: 9px 16px;
        border: 1px solid var(--guide-accent-border);
        border-radius: 14px;
        background: var(--guide-accent-soft);
        color: var(--guide-accent-deep);
        font-size: 17px;
        font-weight: 700;
        white-space: nowrap;
    }

    #user_guide_modal .user-guide-detail-nav-button + .user-guide-detail-nav-button {
        margin-left: 12px;
    }

    #user_guide_modal .user-guide-detail-content {
        display: flex;
        flex-direction: column;
        gap: 22px;
    }

    #user_guide_modal .user-guide-content-section {
        scroll-margin-top: 82px;
        padding: 28px;
        box-sizing: border-box;
        border: 1px solid #ded7d2;
        border-radius: 26px;
        background: rgba(255, 255, 255, 0.94);
        box-shadow: 0 10px 26px rgba(90, 67, 58, 0.06);
    }

    #user_guide_modal .user-guide-content-heading {
        margin-bottom: 20px;
    }

    #user_guide_modal .user-guide-content-heading h3 {
        margin: 0;
        color: #192236;
        font-size: 28px;
        line-height: 1.35;
        font-weight: 800;
        letter-spacing: -0.5px;
    }

    #user_guide_modal .user-guide-content-heading p {
        margin: 7px 0 0;
        color: #6d788a;
        font-size: 18px;
        line-height: 1.5;
    }

    #user_guide_modal .user-guide-manual-steps {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
        margin: 0;
        padding: 0;
        list-style: none;
        counter-reset: guide-manual-step;
    }

    #user_guide_modal .user-guide-manual-steps li {
        position: relative;
        min-height: 126px;
        padding: 22px 22px 22px 76px;
        box-sizing: border-box;
        border: 1px solid #ded7d2;
        border-radius: 20px;
        background: linear-gradient(145deg, #ffffff 0%, #fffdfb 100%);
        counter-increment: guide-manual-step;
    }

    #user_guide_modal .user-guide-manual-steps li::before {
        content: counter(guide-manual-step);
        position: absolute;
        top: 22px;
        left: 22px;
        display: grid;
        place-items: center;
        width: 38px;
        height: 38px;
        border-radius: 13px;
        background: var(--guide-accent);
        color: #ffffff;
        font-size: 18px;
        line-height: 1;
        font-weight: 800;
        box-shadow: 0 7px 16px rgba(120, 74, 102, 0.16);
    }

    #user_guide_modal .user-guide-manual-step-copy h4,
    #user_guide_modal .user-guide-info-card h4 {
        margin: 0;
        color: #202a3f;
        font-size: 21px;
        line-height: 1.35;
        font-weight: 800;
        word-break: keep-all;
    }

    #user_guide_modal .user-guide-manual-step-copy p,
    #user_guide_modal .user-guide-info-card > p {
        margin: 7px 0 0;
        color: #687487;
        font-size: 17px;
        line-height: 1.55;
        word-break: keep-all;
    }

    #user_guide_modal .user-guide-info-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    #user_guide_modal .user-guide-info-card {
        position: relative;
        min-height: 126px;
        padding: 22px;
        box-sizing: border-box;
        border: 1px solid #ded7d2;
        border-radius: 20px;
        background: linear-gradient(145deg, #ffffff 0%, #fffdfb 100%);
    }

    #user_guide_modal .user-guide-info-badge {
        display: inline-flex !important;
        align-items: center;
        min-height: 28px;
        margin: 0 0 10px !important;
        padding: 3px 10px;
        border-radius: 99px;
        background: var(--guide-accent-soft);
        color: var(--guide-accent-deep);
        font-size: 14px;
        line-height: 1.2;
        font-weight: 800;
    }

    #user_guide_modal .user-guide-info-bullets {
        margin: 13px 0 0;
        padding: 13px 0 0;
        list-style: none;
        border-top: 1px solid #eee7e2;
    }

    #user_guide_modal .user-guide-info-bullets li {
        position: relative;
        margin-top: 7px;
        padding-left: 16px;
        color: #5e6a7d;
        font-size: 16px;
        line-height: 1.45;
    }

    #user_guide_modal .user-guide-info-bullets li::before {
        content: "";
        position: absolute;
        top: 9px;
        left: 1px;
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: var(--guide-accent);
    }

    #user_guide_modal .user-guide-check-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    #user_guide_modal .user-guide-check-list li {
        display: grid;
        grid-template-columns: 34px 1fr;
        align-items: center;
        gap: 12px;
        min-height: 64px;
        padding: 14px 16px;
        box-sizing: border-box;
        border: 1px solid #ded7d2;
        border-radius: 17px;
        background: #fffdfb;
        color: #3f4b60;
        font-size: 17px;
        line-height: 1.45;
    }

    #user_guide_modal .user-guide-check-mark {
        display: grid !important;
        place-items: center;
        width: 32px;
        height: 32px;
        margin: 0 !important;
        border-radius: 50%;
        background: var(--guide-accent-soft);
        color: var(--guide-accent-deep);
        font-size: 17px;
        font-weight: 800;
    }

    #user_guide_modal .user-guide-detail-notice {
        scroll-margin-top: 82px;
        display: grid;
        grid-template-columns: 48px 1fr;
        align-items: start;
        gap: 17px;
        padding: 24px 28px;
        box-sizing: border-box;
        border: 1px solid #b9d9ec;
        border-radius: 22px;
        background: linear-gradient(135deg, #eff9ff 0%, #fbfdff 100%);
        color: #285f80;
    }

    #user_guide_modal .user-guide-detail-notice.tone-warning {
        border-color: #efc29d;
        background: linear-gradient(135deg, #fff6e9 0%, #fffdf8 100%);
        color: #885323;
    }

    #user_guide_modal .user-guide-detail-notice.tone-danger {
        border-color: #ecafb3;
        background: linear-gradient(135deg, #fff0f0 0%, #fffafa 100%);
        color: #97323a;
    }

    #user_guide_modal .user-guide-notice-mark {
        display: grid !important;
        place-items: center;
        width: 46px;
        height: 46px;
        margin: 0 !important;
        border-radius: 16px;
        background: rgba(255, 255, 255, 0.78);
        color: currentColor;
        font-size: 22px;
        font-weight: 900;
        box-shadow: inset 0 0 0 1px rgba(80, 100, 120, 0.08);
    }

    #user_guide_modal .user-guide-detail-notice h3 {
        margin: 0;
        color: currentColor;
        font-size: 22px;
        line-height: 1.4;
        font-weight: 800;
    }

    #user_guide_modal .user-guide-detail-notice p {
        margin: 6px 0 0;
        color: currentColor;
        font-size: 17px;
        line-height: 1.55;
    }

    #user_guide_modal .user-guide-faq-list {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    #user_guide_modal .user-guide-faq-item {
        overflow: hidden;
        border: 1px solid #ded7d2;
        border-radius: 18px;
        background: #ffffff;
    }

    #user_guide_modal .user-guide-faq-item summary {
        position: relative;
        min-height: 62px;
        padding: 18px 62px 18px 22px;
        box-sizing: border-box;
        color: #273146;
        font-size: 18px;
        line-height: 1.45;
        font-weight: 750;
        cursor: pointer;
        list-style: none;
    }

    #user_guide_modal .user-guide-faq-item summary::-webkit-details-marker {
        display: none;
    }

    #user_guide_modal .user-guide-faq-item summary::after {
        content: "+";
        position: absolute;
        top: 50%;
        right: 20px;
        display: grid;
        place-items: center;
        width: 30px;
        height: 30px;
        margin-top: -15px;
        border-radius: 10px;
        background: var(--guide-accent-soft);
        color: var(--guide-accent-deep);
        font-size: 22px;
        line-height: 1;
        font-weight: 700;
    }

    #user_guide_modal .user-guide-faq-item[open] summary::after {
        content: "−";
    }

    #user_guide_modal .user-guide-faq-item[open] summary {
        color: var(--guide-accent-deep);
        background: var(--guide-accent-soft);
    }

    #user_guide_modal .user-guide-faq-answer {
        padding: 0 22px 20px;
        border-top: 1px solid #eee7e2;
        background: #fffdfb;
    }

    #user_guide_modal .user-guide-faq-answer p {
        margin: 17px 0 0;
        color: #616e82;
        font-size: 17px;
        line-height: 1.6;
    }

    #user_guide_modal .user-guide-detail-actions {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 14px;
        margin-top: 24px;
        padding: 20px;
        border: 1px solid #ded7d2;
        border-radius: 24px;
        background: rgba(255, 255, 255, 0.92);
        box-shadow: 0 10px 24px rgba(90, 67, 58, 0.06);
    }

    #user_guide_modal .user-guide-detail-actions.is-two-column {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #user_guide_modal .user-guide-detail-actions [hidden] {
        display: none !important;
    }

    #user_guide_modal .user-guide-action {
        min-height: 70px;
        padding: 15px 18px;
        box-sizing: border-box;
        border: 1px solid #d7deea;
        border-radius: 18px;
        background: #ffffff;
        color: #273044;
        font-size: 20px;
        font-weight: 700;
    }

    #user_guide_modal .user-guide-action.primary {
        border-color: var(--guide-accent);
        background: var(--guide-accent);
        color: #ffffff;
    }

    #user_guide_modal .user-guide-action.soft {
        border-color: #f1bad7;
        background: #fff4fa;
        color: #b23e7c;
    }
}

/* 현재 앱에서는 가이드 고유 라이트 테마를 유지하되 전체 화면이 아닌 팝업 프레임으로 표시한다. */
@media (max-width: 1080px) {
    body.user-guide-popup-open {
        overflow: hidden !important;
    }

    #user_guide_backdrop {
        display: none;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1000000;
        background: rgba(4, 7, 12, 0.68);
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
        pointer-events: auto;
        touch-action: none;
    }

    body.user-guide-popup-open #user_guide_backdrop {
        display: block;
    }

    body.user-guide-popup-open > *:not(#user_guide_modal):not(#user_guide_backdrop) {
        pointer-events: none !important;
    }

    body.user-guide-popup-open #header_icon_div {
        display: none !important;
    }

    #user_guide_modal {
        top: 140px !important;
        right: auto !important;
        bottom: 270px !important;
        left: 50% !important;
        width: calc(100% - 64px) !important;
        overflow: hidden !important;
        border: 1px solid #dfe5ef !important;
        border-radius: 30px !important;
        box-shadow: 0 24px 70px rgba(31, 45, 72, 0.22) !important;
        transform: translateX(-50%) !important;
        z-index: 1000001 !important;
        pointer-events: auto !important;
    }

    #user_guide_modal .modal_header {
        height: 88px !important;
    }

    #user_guide_modal .modal_header h1 {
        font-size: 30px !important;
    }

    #user_guide_modal .user-guide-mode-tabs {
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        display: flex !important;
        align-items: center !important;
        transform: translate(-50%, -50%) !important;
    }

    #user_guide_modal .user-guide-mode-tabs button {
        min-width: 154px !important;
        height: 52px !important;
        padding: 0 20px !important;
        border: 0 !important;
        border-radius: 16px !important;
        background: transparent !important;
        color: #7a8496 !important;
        font-family: inherit !important;
        font-size: 23px !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
        outline: none !important;
        cursor: pointer !important;
    }

    #user_guide_modal .user-guide-mode-tabs button + button {
        margin-left: 10px !important;
    }

    #user_guide_modal .user-guide-mode-tabs button.is-active {
        background: #e14c8e !important;
        color: #ffffff !important;
        box-shadow: 0 5px 14px rgba(194, 49, 116, 0.24) !important;
    }

    #user_guide_modal .user-guide-back-button {
        position: absolute !important;
        top: 17px !important;
        display: flex !important;
        width: 54px !important;
        height: 54px !important;
        padding: 0 !important;
        align-items: center !important;
        justify-content: center !important;
        border: 1px solid #dfe5ef !important;
        border-radius: 50% !important;
        background: #ffffff !important;
        color: #46536a !important;
        box-sizing: border-box !important;
        cursor: pointer !important;
    }

    #user_guide_modal .user-guide-back-button {
        left: 24px !important;
    }

    #user_guide_modal .user-guide-header svg {
        width: 24px !important;
        height: 24px !important;
    }

    #user_guide_modal .user-guide-modal-content {
        top: 88px !important;
        padding: 18px 36px 22px !important;
    }

    #user_guide_modal.is-home-view .user-guide-modal-content {
        overflow-y: hidden !important;
    }

    #user_guide_modal.is-video-view .user-guide-modal-content {
        overflow-y: hidden !important;
    }

    #user_guide_modal.is-video-view #video_guide_home {
        width: 100% !important;
        max-width: 920px !important;
        height: 100% !important;
    }

    #user_guide_modal .video-guide-grid {
        display: flex !important;
        width: 100% !important;
        height: 100% !important;
        flex-wrap: wrap !important;
        align-content: space-between !important;
        justify-content: space-between !important;
    }

    #user_guide_modal .video-guide-card {
        display: flex !important;
        width: calc(50% - 10px) !important;
        height: calc(16.6667% - 15px) !important;
        min-height: 0 !important;
        padding: 0 !important;
        flex-direction: column !important;
        overflow: hidden !important;
        border: 1px solid #eaded9 !important;
        border-radius: 22px !important;
        background: #ffffff !important;
        box-sizing: border-box !important;
        box-shadow: 0 8px 22px rgba(83, 58, 55, 0.10) !important;
        outline: none !important;
        cursor: pointer !important;
    }

    #user_guide_modal .video-guide-image {
        display: block !important;
        min-height: 0 !important;
        flex: 5 1 0 !important;
        overflow: hidden !important;
        background: #f8efeb !important;
    }

    #user_guide_modal .video-guide-image img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    #user_guide_modal .video-guide-title {
        display: flex !important;
        min-height: 0 !important;
        padding: 0 14px !important;
        flex: 1 1 0 !important;
        align-items: center !important;
        justify-content: center !important;
        color: #20283a !important;
        font-size: 18px !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;
        letter-spacing: -0.35px !important;
        text-align: center !important;
        white-space: nowrap !important;
    }

    #user_guide_modal.is-home-view #user_guide_home {
        max-width: 920px !important;
    }

    #user_guide_modal.is-home-view .user-guide-hero {
        margin-bottom: 12px !important;
        border-radius: 24px !important;
    }

    #user_guide_modal.is-home-view .user-guide-intro {
        inset: 0;
    }

    #user_guide_modal.is-home-view .user-guide-intro h2 {
        position: absolute;
        left: 32px;
        right: 32px;
        bottom: 150px;
        color: #fff;
        text-shadow: 0 3px 8px rgba(0, 0, 0, 0.78),
                     0 1px 18px rgba(0, 0, 0, 0.55);
    }

    #user_guide_modal.is-home-view .user-guide-intro p {
        position: absolute;
        left: 32px;
        right: 32px;
        bottom: 28px;
        margin: 0;
        font-size: 19px;
        line-height: 1.4;
        white-space: nowrap;
    }

    #user_guide_modal.is-home-view .user-guide-banner-wrap {
        margin: 12px 0 16px !important;
    }

    #user_guide_modal.is-home-view .user-guide-safety {
        display: flex !important;
        min-height: 96px !important;
        gap: 14px !important;
        padding: 14px 22px 20px !important;
        border-radius: 20px !important;
    }

    #user_guide_modal.is-home-view .user-guide-banner-icon {
        width: 52px !important;
        height: 52px !important;
        border-radius: 17px !important;
        flex: 0 0 52px !important;
        margin: 0 !important;
    }

    #user_guide_modal.is-home-view .user-guide-banner-copy {
        min-width: 0 !important;
        margin: 0 !important;
        flex: 1 1 auto !important;
    }

    #user_guide_modal.is-home-view .user-guide-banner-arrow {
        width: 22px !important;
        margin: 0 !important;
        flex: 0 0 22px !important;
    }

    #user_guide_modal.is-home-view .user-guide-safety img {
        width: 36px !important;
        height: 36px !important;
    }

    #user_guide_modal.is-home-view .user-guide-safety strong {
        font-size: 20px !important;
    }

    #user_guide_modal.is-home-view .user-guide-safety span {
        margin-top: 3px !important;
        font-size: 16px !important;
    }

    #user_guide_modal.is-home-view .user-guide-fault-grid {
        gap: 12px !important;
    }

    #user_guide_modal.is-home-view .user-guide-fault-card {
        display: flex !important;
        min-height: 118px !important;
        gap: 14px !important;
        padding: 16px 20px !important;
        border-radius: 20px !important;
    }

    #user_guide_modal.is-home-view .user-guide-fault-card > .user-guide-card-icon {
        width: 52px !important;
        height: 52px !important;
        border-radius: 17px !important;
        margin: 0 !important;
        flex: 0 0 52px !important;
    }

    #user_guide_modal.is-home-view .user-guide-fault-card > span:not(.user-guide-card-icon):not(.user-guide-chevron) {
        min-width: 0 !important;
        margin: 0 !important;
        flex: 1 1 auto !important;
    }

    #user_guide_modal.is-home-view .user-guide-fault-card > .user-guide-chevron {
        width: 20px !important;
        margin: 0 !important;
        flex: 0 0 20px !important;
    }

    #user_guide_modal.is-home-view .user-guide-fault-card > .user-guide-card-icon img {
        width: 36px !important;
        height: 36px !important;
    }

    #user_guide_modal.is-home-view .user-guide-fault-card strong {
        font-size: 22px !important;
    }

    #user_guide_modal.is-home-view .user-guide-fault-card span {
        margin-top: 4px !important;
        font-size: 16px !important;
    }

    #user_guide_modal.is-home-view .user-guide-lower-sections {
        gap: 28px !important;
        margin-top: 20px !important;
    }

    #user_guide_modal.is-home-view .user-guide-lower-column .user-guide-section-title {
        margin-bottom: 10px !important;
        font-size: 22px !important;
    }

    #user_guide_modal.is-home-view .user-guide-lower-sections .user-guide-support-grid,
    #user_guide_modal.is-home-view .user-guide-lower-sections .user-guide-secondary-grid {
        gap: 10px !important;
    }

    #user_guide_modal.is-home-view .user-guide-support-card,
    #user_guide_modal.is-home-view .user-guide-secondary-button {
        display: flex !important;
        min-height: 82px !important;
        gap: 12px !important;
        padding: 12px 16px !important;
        border-radius: 17px !important;
    }

    #user_guide_modal.is-home-view .user-guide-secondary-button {
        font-size: 18px !important;
    }

    #user_guide_modal.is-home-view .user-guide-support-card > .user-guide-card-icon,
    #user_guide_modal.is-home-view .user-guide-secondary-button > .user-guide-card-icon {
        width: 42px !important;
        height: 42px !important;
        border-radius: 14px !important;
        margin: 0 !important;
        flex: 0 0 42px !important;
    }

    #user_guide_modal.is-home-view .user-guide-support-card > span:not(.user-guide-card-icon):not(.user-guide-chevron),
    #user_guide_modal.is-home-view .user-guide-secondary-button > span:not(.user-guide-card-icon):not(.user-guide-chevron) {
        min-width: 0 !important;
        margin: 0 !important;
        flex: 1 1 auto !important;
    }

    #user_guide_modal.is-home-view .user-guide-support-card > .user-guide-chevron,
    #user_guide_modal.is-home-view .user-guide-secondary-button > .user-guide-chevron {
        width: 18px !important;
        margin: 0 !important;
        flex: 0 0 18px !important;
    }

    #user_guide_modal.is-home-view .user-guide-support-card .user-guide-card-icon img,
    #user_guide_modal.is-home-view .user-guide-secondary-button .user-guide-card-icon img {
        width: 30px !important;
        height: 30px !important;
    }

    #user_guide_modal.is-home-view .user-guide-support-card strong {
        font-size: 19px !important;
    }

    #user_guide_modal.is-home-view .user-guide-support-card span {
        margin-top: 2px !important;
        font-size: 14px !important;
    }
}
