@charset "utf-8";
html, body {width:100%;height:100vh;font-family: 'Pretendard';font-size:15px;}
body {display: flex;flex-direction: column;justify-content: space-between;}
main {flex-grow:1;}
input, textarea, select {font-size: 16px !important;}
:root {
    --footer-height: 300px;
    /* Bootstrap breakpoint 기준 */
    --bs-breakpoint-sm: 576px;
    --bs-breakpoint-md: 768px;
    --bs-breakpoint-lg: 992px;
    --bs-breakpoint-xl: 1200px;
    --bs-breakpoint-xxl: 1400px;
}

.textellipsis {display: -webkit-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;word-break: keep-all;overflow-wrap: anywhere;min-height: 1em;}
/*.textellipsis {overflow: hidden;white-space: nowrap;text-overflow: ellipsis;word-break: break-all;}*/
.search-input {border-radius: 20px;padding-right:1px}
.in-icon {position: relative;z-index: 9997;top:18px;left: 10px;border-radius: 43px !important;}
.in-icon2 {position: relative;z-index: 9997;top:18px;left: 10px;border-radius: 43px !important;}
.form-control.round-input {border-radius: 23px !important;text-overflow:ellipsis;margin-left:1px !important;}
.form-control.areasearch {margin-left:13px !important;}
.flex-1 {flex:1;}
.flex-2 {flex:2;}
/*.form-control.round-input:focus {color: var(--bs-body-color);background-color: var(--bs-body-bg);border-color: #86b7fe;outline: 0;border-radius: 20px !important;box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);z-index:auto;}*/
.form-control.round-input:focus {color:#451049;border-color:#451049 !important;outline: 0;border-radius: 20px !important;box-shadow: 0 0 0 0.25rem rgba(0, 128, 114, 0.25);z-index:auto;}
/*.form-control.round-input:hover {color:#451049;border-color:#451049 !important;outline: 0;border-radius: 20px !important;box-shadow: 0 0 0 0.25rem rgba(0, 128, 114, 0.25);z-index:auto;}*/
.logoimg {max-width: 12rem !important;}
.css-swg {display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display: flex;position: relative;-webkit-box-flex-wrap: wrap;-webkit-flex-wrap: wrap;-ms-flex-wrap: wrap;flex-wrap: wrap;text-align: center;-webkit-align-items: center;-webkit-box-align: center;-ms-flex-align: center;align-items: center;-webkit-align-self: stretch;-ms-flex-item-align: stretch;align-self: stretch;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-justify-content: center;justify-content: center;color: #595959;-webkit-flex-direction: column;-ms-flex-direction: column;flex-direction: column;margin-top: 1rem;margin-bottom: 1rem;margin-left: 1px;margin-right: 1px;}
.css-swg::before, .css-swg::after {content: "";-webkit-flex: 1 1 auto;-ms-flex: 1 1 auto;flex: 1 1 auto;background-color: #e4e2e0;inline-size: 1px;}
.css-8u2krs {border: 0;clip: rect(0 0 0 0);block-size: 1px;margin-block-end: -1px;margin-block-start: -1px;-webkit-margin-start: -1px;margin-inline-start: -1px;-webkit-margin-end: -1px;margin-inline-end: -1px;overflow: hidden;padding-block-end: 0;padding-block-start: 0;-webkit-padding-start: 0;padding-inline-start: 0;-webkit-padding-end: 0;inline-size: 1px;padding-inline-end: 0;position: absolute;white-space: nowrap;word-wrap: normal;}
.d-contents {display: contents !important;}
/*begin:body*/
.content {margin-top:30px;}
.mt-45 {margin-top: 2rem !important;}
.mb-45 {margin-bottom: 2rem !important;}
.border-style-dash {border-style: dashed !important;}
.triangleup {width: 0;height: 0;border-style: solid;border-width:0px 10px 20px 10px;;border-color: transparent transparent #dc2626 transparent;}
.triangledown {width: 0;height: 0;border-style: solid;border-width: 20px 10px 0px 10px;border-color: #DC2626 transparent transparent transparent;}
.sign hr {display: block;width: 1px;height: 12px;border: 0;background: #595959;}

.chat-inline-link {color: #fff !important;}
.bottom_30 {bottom:30px}
.right_14 {right:14px;}
.right_20 {right:20px;}
.right_80 {right:80px;}

.bottom_84 {bottom:84px}
.font-color-primium {color:#dc6a6a !important;}


.chat-left {border-radius: 10px 10px 10px 0 !important;background: #E2E2E2;}
.chat-right {border-radius: 10px 10px 0 10px !important;background: #A7E4D3;}
.offcanvas.offcanvas-bottom {z-index: 99997;}
/* begin : 전자서명 */
.signature-box { position: relative; }

.signature-pad {position: relative;border: 1px dashed #cbd5e1;border-radius: 18px;background: #fff;overflow: hidden;height: 420px;}
.signature-pad canvas {width: 100%;height: 100%;display: block;}
.signature-hint{position:absolute;left:0; right:0;bottom:18px;text-align:center;color:#94a3b8;pointer-events:none;}
.sign-lock-overlay { display: none; }
.signature-box[data-locked="true"] .sign-lock-overlay {display: flex;}
.sign-lock-overlay{position:absolute;inset: 19px 0 0 0;background: rgba(0,0,0,0.35);align-items: center;justify-content: center;padding: 16px;z-index: 50;}
.auth-panel{width: 100%;max-width: 420px;background: rgba(255,255,255,0.92);border-radius: 14px;padding: 18px;box-shadow: 0 10px 30px rgba(0,0,0,0.18);}
.auth-panel input{width: 100%;height: 48px;border: 1px solid #e2e8f0;border-radius: 10px;padding: 0 14px;font-size: 16px;}
.auth-panel input:focus{border-color:#167d70 !important;}
.auth-save-btn{width: 100%;height: 52px;margin-top: 12px;background:#111;color:#fff;border:none;border-radius: 12px;font-size: 18px;font-weight: 700;}
.auth-guide{margin-top: 10px;color:#475569;font-size: 14px;text-align: center;}

/* head */
.signature-head{display:flex;align-items:center;justify-content: space-between;padding: 10px 6px;}
.signature-title{display:flex;align-items:center;gap:6px;color:#64748b;font-weight: 600;}
.signature-auth-info{display:flex;align-items:center;gap:8px;}
.auth-text{color:#2563eb;font-weight: 700;}
.auth-edit-btn{background: transparent;border:none;cursor:pointer;padding:0;}
.auth-badge{display:inline-flex;min-width: 26px;height: 18px;padding: 0 8px;border-radius: 6px;background: #ffedd5;color:#ef4444;font-weight: 800;align-items:center;justify-content:center;font-size: 14px;}
/* end : 전자서명 */

/* begin : 저장 info */
.upload-overlay{position: fixed;inset: 0;background: rgba(0,0,0,0.45);z-index: 999999;display: none;align-items: center;justify-content: center;}
.upload-modal{width: min(420px, calc(100vw - 32px));background: #fff;border-radius: 14px;padding: 22px 20px;box-shadow: 0 10px 30px rgba(0,0,0,0.25);display: flex;gap: 14px;align-items: center;}
.spinner{width: 44px;height: 44px;border-radius: 50%;border: 5px solid rgba(0,0,0,0.12);border-top-color: rgba(0,0,0,0.65);animation: spin 0.9s linear infinite;flex: 0 0 auto;}
@keyframes spin{ to { transform: rotate(360deg); } }
.upload-text .title{font-size: 16px;font-weight: 700;line-height: 1.2;}
.upload-text .sub{margin-top: 4px;font-size: 14px;color: #666;}
body.no-scroll{overflow: hidden;}
/* end : 저장 info */

/* begin : kakao map*/
.speech-bubble {position: relative;background: #FFFFFF;border-radius: .4em;padding:14px;top:-105px}
/*.speech-bubble:after {content: '';position: absolute;bottom: 0;left: 50%;width: 0;height: 0;border: 20px solid transparent;border-top-color: #FFFFFF;border-bottom: 0;border-left: 0;margin-left: -10px;margin-bottom: -20px;}*/
.speech-bubble .info .title {font-size:16px;}
.speech-bubble .info .body .desc .ellipsis {font-size:14px;color:#707070}
.speech-bubble .info .body .desc .jibun {font-size:13px;color:#b6b6b6}
.speech-bubble .info .body .btn {width: 100%;}
.speech-bubble .info .body .btn .mapsearchbtn {display:flex;width: 167px;font-size: 14px;border: 0;padding:0;color: #002D8F;background: #ffffff;border: 2px solid #002D8F;border-radius: 8px;height: 30px;justify-content: center;align-items: center}
.speech-bubble:after {content: '';position: absolute;bottom: 0;left: 50%;width: 0;border: 10px solid transparent;border-top-color: #FFFFFF;border-bottom: 0;margin-left: -10px;margin-bottom: -19px;height: 20px;}
/* end : kakao map*/

.text-clamp-2 {display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;}
.matching-title {font-size:1.6rem !important;}
.pc-footer{position: relative;}
.footer:not(:has(:not([style*="display: none"]))) {
    display: none;
}
#toastContainer {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 9999;
}

.toast-message {
    min-width: 260px;
    background: #333;
    color: white;
    padding: 14px 16px;
    border-radius: 8px;
    margin-bottom: 10px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.2);
    animation: toastFadeIn 0.3s ease;
    cursor: pointer;
}

.toast-title {
    font-weight: 600;
    margin-bottom: 4px;
}

.toast-content {
    font-size: 14px;
    opacity: 0.9;
}

@keyframes toastFadeIn {
    from {
        transform: translateY(-10px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.floating-menu-pc {display: block;}
.floating-menu-mobile {display: none;}

/*.pagetitle {font-size: 18px !important;}*/

.search-box {
    position: relative;
}

.global-search-suggest {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 10000;
    margin-top: 16px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
    max-height: 280px;
    overflow-y: auto;
}

.global-search-suggest-item {
    padding: 10px 14px;
    cursor: pointer;
    font-size: 14px;
    color: #374151;
}

.global-search-suggest-item:hover {
    background: #f3f4f6;
}

.global-search-suggest-item .type {
    display: inline-block;
    margin-right: 6px;
    color: #059669;
    font-size: 14px;
    font-weight: 700;
}

input[type=number].cancel, input[type=text].cancel, input[type=password].cancel, textarea.cancel, select.cancel {
    -webkit-box-shadow: 0 0 5px #FF0000;
    -moz-box-shadow: 0 0 5px #FF0000;
    box-shadow: 0 0 5px #FF0000;
    border: 1px solid #FF0000 !important;
}



/** **/
.input-group:has(input:is([type="text"], [type="email"], [type="tel"], [type="number"]):focus),
.input-group:has(input:is([type="text"], [type="email"], [type="tel"], [type="number"]):focus-visible) {
    border: 2px solid #167d70;
    outline: 2px;
    padding: 0 !important;
    background-color: #f3fffc;
}

.input-group:has(.form-control:focus) {
    border: 2px solid #167d70;
    background-color: #f3fffc;
}

/* input 자체 focus 효과 무력화 */
.input-group:has(.form-control:focus) .form-control:focus {
    border-color: transparent !important;
    border-width: 1px !important;
    outline: none !important;
    box-shadow: none !important;
    background-color: transparent;
}


.card {
    box-shadow: none;
}

.card .card-body h5, .gaoffcanvastitle h5, .gaoffcanvastitle h4 {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: keep-all;
    overflow-wrap: anywhere;
    line-height: 1.55;
    min-height: 1em;
}

.cardsmalltitle {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: keep-all;
    overflow-wrap: anywhere;
}

.card .idphoto {height:72px !important;}


.business-type-scroll {
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.business-type-scroll::-webkit-scrollbar {
    display: none;
}

.talent-profile-img {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    object-fit: cover;
    object-position: center;
    flex: 0 0 72px;
}

.talent-updated-at {
    font-size: 14px;
    color: #6b7280;
    text-align: right;
    margin-top: 10px;
}

.delitem{opacity:0.6 !important;}

.region-badge {min-width: 40px;color: #ffffff;background-color: #64748b;font-size: 14px;line-height: 1;vertical-align: middle;border-radius: 5px !important;}
.region-badge[data-region-code="서울"] { background-color: #2563eb; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="부산"] { background-color: #0891b2; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="대구"] { background-color: #7c3aed; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="인천"] { background-color: #0f766e; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="광주"] { background-color: #c026d3; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="대전"] { background-color: #4f46e5; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="울산"] { background-color: #0284c7; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="세종"] { background-color: #475569; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="경기"] { background-color: #16a34a; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="강원"] { background-color: #65a30d; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="충북"] { background-color: #ca8a04; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="충남"] { background-color: #d97706; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="전북"] { background-color: #dc2626; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="전남"] { background-color: #ea580c; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="경북"] { background-color: #9333ea; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="경남"] { background-color: #059669; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="제주"] { background-color: #f97316; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code="전국"] { background-color: #451049; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge[data-region-code=""] { display: none; }


.region-badge-normal {min-width: 40px;color: #ffffff;background-color: #838383;font-size: 14px;line-height: 1;vertical-align: middle;border-radius: 5px !important;}
.region-badge-normal[data-region-code="서울"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="부산"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="대구"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="인천"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="광주"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="대전"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="울산"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="세종"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="경기"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="강원"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="충북"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="충남"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="전북"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="전남"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="경북"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="경남"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="제주"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code="전국"] { background-color: #838383; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.region-badge-normal[data-region-code=""] { display: none; }


.tox-editor-container, .tox-editor-container .tox-editor-header, .tox-editor-container .tox-editor-header .tox-toolbar-overlord, .tox-editor-header .tox-toolbar-overlord div {padding-top:0 !important;padding-bottom:0 !important;}

.gnb-link.activemenu {color: #451049 !important;background: transparent !important;position: relative;}
.gnb-link.activemenu::after {content: "";position: absolute;left: 0;right: 0;bottom: -6px;height: 3px;background-color: #451049;border-radius: 999px;}
.gnb-link {position: relative;}
.gnb-link::after {content: "";position: absolute;left: 0;right: 0;bottom: -6px;height: 3px;background-color:transparent ;border-radius: 999px;}
.gnb-link:hover::after {content: "";position: absolute;left: 0;right: 0;bottom: -6px;height: 3px;background-color: #451049;border-radius: 999px;}

.user-header-dropdown {position: relative;}
.user-header-dropdown-menu {top: 76% !important;left: auto !important;transform: none !important;min-width: 150px;margin-top: 8px !important;z-index: 10020;}
.user-header-dropdown:hover > .dropdown-menu,
.user-header-dropdown:focus-within > .dropdown-menu {display: block;}
.user-header-dropdown-btn:focus {box-shadow: none;}

ul.list-group.w-100 .bd-green-main:hover:not(.itembuyitem, #addrecuit ul li) {background:#451049;color:#FFFFFF !important;}


.financial-guarantee-date-input {min-height: 58px;font-size: 18px;padding: 12px 14px;cursor: pointer;background-color: #fff !important;}
.financial-guarantee-date-input[readonly] {background-color: #fff !important;}
.flatpickr-calendar {z-index: 9999999 !important;font-size: 16px;}
.flatpickr-months .flatpickr-month {height: 44px;}
.flatpickr-current-month {font-size: 18px;padding-top: 8px;}
.flatpickr-current-month .numInputWrapper {width: 7ch;}
.flatpickr-current-month input.cur-year {font-size: 18px;font-weight: 700;}
.flatpickr-monthDropdown-months {font-size: 17px;font-weight: 700;}
.flatpickr-day {height: 42px;line-height: 42px;max-width: 42px;}

.redover:hover{color: #b91c1c;}
.topalram {font-size:12px !important;min-width:22px;height:22px;line-height:17px !important;padding:3px 5px !important;}
.pair label {/*padding-left:2px !important;*/}

.offcanvas-backdrop.show {z-index:9997;}


.gaoffcanvasbtn, .copybtn, .delbtn {cursor: pointer;}
/*.material-symbols-outlined.gaoffcanvasbtn:hover{font-size:30px !important;}*/
.offcanvas:not(.show):not(.showing) {visibility: hidden !important;pointer-events: none !important;}
.offcanvas.show,
.offcanvas.showing {visibility: visible !important;pointer-events: auto !important;}
.offcanvas-backdrop:not(.show) {pointer-events: none !important;}
.offcanvas .offcanvas-body div, .offcanvas .offcanvas-body h6 {padding-left:0;}


.ql-align-center {text-align: center;}
.ql-align-right {text-align: right;}
.ql-align-justify {text-align: justify;}

.table-responsive table:not(#banktable), .listtable{min-width:560px !important;}
.tox-statusbar{display:none !important;}


.listdate{min-width:70px;text-align: right;}


.final-ai-hover {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border-radius: 8px;
    transition: transform .2s ease, box-shadow .2s ease;
}

.final-ai-hover::before {
    content: "";
    position: absolute;
    inset: -2px;
    z-index: -1;
    border-radius: 10px;
    background: conic-gradient(
            from var(--final-ai-angle, 0deg),
            #4285f4,
            #34a853,
            #fbbc05,
            #ea4335,
            #4285f4
    );
    opacity: 0;
    transition: opacity .2s ease;
}

.final-ai-hover::after {
    content: "";
    position: absolute;
    inset: 2px;
    z-index: -1;
    border-radius: 6px;
    background: #fff;
}

.final-ai-hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 22px rgba(66, 133, 244, .18);
    color: var(--bs-list-group-color) !important;
}

.final-ai-hover::before {
    opacity: 1;
    animation: finalAiSpin 1.4s linear infinite;
}

@property --final-ai-angle {
    syntax: "<angle>";
    initial-value: 0deg;
    inherits: false;
}

@keyframes finalAiSpin {
    to {
        --final-ai-angle: 360deg;
    }
}

.infobtnbordern {
     background-color:#e0e0e0 !important;
     color:rgba(0,0,0,.55) !important;
 }

.infobtnborder {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border-radius: 8px;
    transition: transform .2s ease, box-shadow .2s ease;
}

.infobtnborder::before {
    content: "";
    position: absolute;
    inset: -2px;
    z-index: -1;
    border-radius: 10px;
    background: conic-gradient(
            from var(--final-ai-angle, 0deg),
            #4285f4,
            #34a853,
            #fbbc05,
            #ea4335,
            #4285f4
    );
    opacity: 0;
    transition: opacity .2s ease;
}

.infobtnborder::after {
    content: "";
    position: absolute;
    inset: 2px;
    z-index: -1;
    border-radius: 6px;
    background: #059669;
}

.infobtnborder {
    transform: translateY(-1px);
    box-shadow: 0 8px 22px rgba(66, 133, 244, .18);
    color: #FFFFFF !important;
}

.infobtnborder::before {
    opacity: 1;
    animation: finalAiSpin 1.4s linear infinite;
}

.btn-gray-main {background: radial-gradient(circle at 12% 18%, rgba(56, 214, 177, .17), transparent 25%), radial-gradient(circle at 78% 24%, rgba(121, 87, 255, .17), transparent 28%), linear-gradient(135deg, #696e7a 0%, #6e7580 54%, #4d5158);}
.gridbox {display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:12px;}
.companylogo {display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:12px;}
.companylogo div {display:flex;border-radius: 10px;border: 1px solid #d1d5db;overflow: hidden;justify-content: center;align-items: center;background: #FFFFFF;min-height: 90px;height: 90px;max-height: 90px; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1) !important;flex-direction: column;}
.companylogo div img {max-width: 100%;object-fit: cover;object-position: center center;height:57px !important;}
.companylogo div .linkicon {top: -23px;right: 7px;color: inherit;}
.hide {display:none !important;}
.p-sm-0 {padding: 0 !important;}

.conditioncheck:has(#inlineCheckbox1:focus) {border-color:#dc2626 !important;}
.conditioncheck:has(#inlineCheckbox1:checked) {background:transparent;border-color:rgb(0 0 0 / 17%) !important;}

.nowstate-badge {width:172px;border-radius: 50%;color:#FFFFFF;padding-top: 0.5rem !important;padding-bottom: 0.5rem !important;padding-right: 0.5rem !important;padding-left: 0.5rem !important;background-color: #475569; opacity: 0.7;font-size: 0.9rem;font-weight: 100;}
.nowstate-badge[data-region="불합격"] { background-color: #dc2626; opacity: 0.7;}
.nowstate-badge[data-region="합격"] { background-color: #2563eb; opacity: 0.7;}


/* begin: v2 */
/*.resume-mypage-preview-layout {max-width: 100%;margin-right: auto !important;}*/
/*.resume-mypage-preview-menu,*/
/*.resume-mypage-preview-content {min-width: 0;}*/
/*#mypagenmenu > * {max-width: 100%;}*/
/*#mypagenmenu .card {border-radius: 0 !important;margin-left:0 !important;margin-right:0 !important;}*/
/* end: v2 */

/* begin: legacy page.css merged into layout.css */
@charset "utf-8";

.p_login {width: 690px; margin: 98px auto;}
.p_login h1 {color: #222; font-size: 48px; font-weight: 500; text-align: center;}
.p_login .txt {margin-top: 32px; color: #666; font-size: 20px; text-align: center; line-height: 30px;}
.loginbox {margin-top: 55px; padding: 59px 0; border: 1px solid #dde2e5; border-radius: 25px; box-shadow: 3px 8px 13px #ccc;}
.loginbox dl + dl {margin-top: 18px;}
.loginbox dl > * {float: left;}
.loginbox dl::after {content: ""; display: block; clear: both;}
.loginbox dt {width: 177px; height: 46px; padding-right: 19px; color: #222; font-size: 16px; font-weight: 300; line-height: 46px; text-align: right;}
.loginbox dd input[type=text],
.loginbox dd input[type=password] {width: 336px; height: 46px; padding: 0 10px; border: 0; border-radius: 8px; color: #666; font-size: 16px; background: #f5f5f5;}
.loginbox dd .f_chk {margin-left: 6px;}
.loginbox .btn_a {padding: 30px 0 0 177px;}
.loginbox .btn_a .btn {width: 160px; height: 50px; margin-right: 12px; border-radius: 8px; color: #fff; font-size: 18px; font-weight: 500; text-align: center; line-height: 39px; background: #169bd5;}

.p_main .visual {width: 1400px; margin: 0 auto; padding: 0 50px;}
.p_main .visual p {height: 320px; padding: 85px 0 0 70px; border-radius: 40px; color: #fff; font-weight: 700; background: url(../images/main_visual.png) no-repeat; box-shadow: 3px 8px 13px #ccc;}
.p_main .visual p span {display: block;}
.p_main .visual p .t1 {font-size: 24px;}
.p_main .visual p .t2 {font-size: 48px;}
.p_main .visual p .t3 {margin-top: 15px; color: #9cdafe; font-weight: 400;}

.p_main .dash_board .inner {width: 1400px; margin: 70px auto 0; padding: 0 50px 65px 50px;}
.p_main .dash_board .tab {font-size: 0; text-align: center;}
.p_main .dash_board .tab li {display: inline-block;}
.p_main .dash_board .tab li + li {margin-left: 52px;}
.p_main .dash_board .tab li a {display: block; position: relative; padding-bottom: 24px; color: #ccc; font-size: 30px; font-weight: 700;}
.p_main .dash_board .tab li a.cur {color: #222;}
.p_main .dash_board .tab li a.cur::after {content: ""; display: block; position: absolute; left: 0; bottom: 0; width: 100%; height: 4px; background: #004986;}
.p_main .dash_board .tab_contents {position: relative; margin-top: 50px;}
.p_main .dash_board .more {display: block; position: absolute; right: 0; top: -60px; width: 60px; height: 60px; font-size: 0; background: url(../images/ico_more.png) no-repeat;}
.p_main .dash_board .tab_item {display: none;}
.p_main .dash_board .tab_item:first-child {display: block;}
.p_main .dash_board .tab_item ul {padding: 0 20px;}
.p_main .dash_board .tab_item ul::after {content: ""; display: block; clear: both;}
.p_main .dash_board .tab_item ul li {float: left; width: 33.33%; padding: 0 20px;}
.p_main .dash_board .tab_item ul li:last-child {width: 33.34%;}
.p_main .dash_board .tab_item ul li a span {display: block;}
.p_main .dash_board .tab_item ul li .tit {color: #222; font-size: 24px; font-weight: 500; line-height: 28px;}
.p_main .dash_board .tab_item ul li .desc {margin-top: 35px; color: #666; font-size: 20px; line-height: 30px;}
.p_main .dash_board .tab_item ul li .dates {margin-top: 38px; color: #aaa; font-size: 16px;}

.p_main .g_area {background: #f2f2f2;}
.p_main .g_area .inner {width: 1400px; margin: 0 auto; padding: 0 50px 60px 50px;}
.p_main .g_area .inner::after {content: ""; display: block; clear: both;}
.p_main .g_area .inner > * {float: left;}
.p_main .g_area .left_col {width: 840px; margin-right: 20px; padding-top: 60px;}
.p_main .g_area .faq {position: relative; height: 500px; border-radius: 27px; background: #fff;}
.p_main .g_area .faq .head {height: 146px; padding: 40px 0 0 50px; border-bottom: 1px solid #e8e8e8;}
.p_main .g_area .faq .head h2 {color: #222; font-size: 30px; font-weight: 700;}
.p_main .g_area .faq .head h2 span {color: #004986;}
.p_main .g_area .faq .head p {margin-top: 6px; color: #888; font-size: 18px;}
.p_main .g_area .faq dl {margin-top: 30px; padding: 0 50px; font-size: 20px; font-weight: 300;}
.p_main .g_area .faq dl > * {position: relative; height: 32px; padding: 0 40px; line-height: 32px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden;}
.p_main .g_area .faq dl a {color: #222; font-size: 20px;}
.p_main .g_area .faq dl .q,
.p_main .g_area .faq dl .a {display: block; position: absolute; left: 0; top: 0; width: 32px; height: 32px; font-size: 0;}
.p_main .g_area .faq dl .q {background: url(../images/ico_q.png) no-repeat;}
.p_main .g_area .faq dl .a {background: url(../images/ico_a.png) no-repeat;}
.p_main .g_area .faq dl dt + dd {margin-top: 10px;}
.p_main .g_area .faq dl dd + dt {margin-top: 30px;}
.p_main .g_area .faq .more {display: block; position: absolute; right: 40px; top: 40px; width: 60px; height: 60px; font-size: 0; background: url(../images/ico_more.png) no-repeat;}

.p_main .g_area .promotion {position: relative; height: 140px; margin-top: 20px; padding: 56px 50px 0 50px; border-radius: 27px; background: #fff;}
.p_main .g_area .promotion::after {content: ""; display: block;}
.p_main .g_area .promotion h2 {float: left; width: 90px; color: #000; font-size: 26px; font-weight: 700; line-height: 26px;}
.p_main .g_area .promotion p {float: left; width: auto; height: 26px; color: #222; font-size: 20px; font-weight: 300; line-height: 26px;}
.p_main .g_area .promotion p strong {color: #004986;}
.p_main .g_area .promotion .more {display: block; position: absolute; right: 40px; top: 40px; width: 60px; height: 60px; font-size: 0; background: url(../images/ico_more.png) no-repeat;}

.p_main .g_area .inner .right_col {width: 440px; padding-top: 60px;}
.p_main .g_area .complaint {position: relative; height: 360px; padding: 42px 40px 0 40px; border-radius: 27px; background: #fff;}
.p_main .g_area .complaint h2 {color: #222; font-size: 28px; font-weight: 700;}
.p_main .g_area .complaint h2 span {color: #004986;}
.p_main .g_area .complaint ul {margin-top: 37px; font-size: 0; text-align: center;}
.p_main .g_area .complaint ul li {display: inline-block; min-width: 120px; vertical-align: top;}
.p_main .g_area .complaint ul li + li {margin-left: 60px;}
.p_main .g_area .complaint ul li a {display: block; padding-top: 137px; color: #333; font-size: 20px; line-height: 30px; background-position: center top;}
.p_main .g_area .complaint ul li a.tech {background: url(../images/ico_complain01.png) no-repeat;}
.p_main .g_area .complaint ul li a.buy {background: url(../images/ico_complain02.png) no-repeat;}
.p_main .g_area .complaint .more {display: block; position: absolute; right: 40px; top: 40px; width: 60px; height: 60px; font-size: 0; background: url(../images/ico_more.png) no-repeat;}

.p_main .g_area .survey {position: relative; height: 280px; margin-top: 20px; padding: 42px 40px 0 40px; border-radius: 27px; background: #fff;}
.p_main .g_area .survey h2 {color: #222; font-size: 28px; font-weight: 700;}
.p_main .g_area .survey h2 span {color: #004986;}
.p_main .g_area .survey p {margin-top: 16px; color: #333; font-size: 20px; line-height: 30px;}
.p_main .g_area .survey a {display: block; position: absolute; right: 45px; bottom: 37px; width: 150px; height: 50px; border-radius: 25px; color: #fff; font-size: 20px; text-align: center; line-height: 50px; background: #004986;}


.p_contactus .map {margin-top: 43px;}
.p_contactus .addr {margin-top: 30px; border-top: 2px solid #666;}
.p_contactus .addr h2 {color: #222; font-size: 20px; font-weight: 500;}
.p_contactus .addr .top {padding-bottom: 14px; border-bottom: 1px solid #dde2e5;}
.p_contactus .addr .top > * {float: left;}
.p_contactus .addr .top::after {content: ""; display: block; clear: both;}
.p_contactus .addr .top .left_col {width: 60%; padding-top: 24px;}
.p_contactus .addr .top dl {margin-top: 26px;}
.p_contactus .addr .top dl + dl {margin-top: 5px;}
.p_contactus .addr .top dl > * {display: inline-block; height: 20px; font-size: 16px; line-height: 20px; vertical-align: top;}
.p_contactus .addr .top dt {width: 120px; color: #222;}
.p_contactus .addr .top dt::before {content: ""; display: inline-block; width: 12px; height: 19px; margin-right: 9px; background: url(../images/ico_position.png) no-repeat; vertical-align: top;}
.p_contactus .addr .top dd {color: #666; font-weight: 300;}
.p_contactus .addr .top .right_col {width: 40%; text-align: right;}
.p_contactus .addr .top .right_col p {display: inline-block; vertical-align: top;}
.p_contactus .addr .top .right_col p:nth-child(1) {width: 167px; padding-top: 27px; color: #666; font-size: 15px; font-weight: 300; line-height: 18px; text-align: left;}
.p_contactus .addr .top .right_col p:nth-child(1) strong {display: block; padding-bottom: 10px; color: #222; font-size: 16px; font-weight: 400;}
.p_contactus .addr .top .right_col p:nth-child(2) {padding-top: 14px;}

.p_contactus .addr .bot {padding-bottom: 28px; border-bottom: 1px solid #dde2e5;}
.p_contactus .addr .bot > * {float: left; width: 50%;}
.p_contactus .addr .bot::after {content: ""; display: block; clear: both;}
.p_contactus .addr .bot .left_col {padding-top: 24px;}
.p_contactus .addr .bot .left_col h2 {padding-bottom: 24px;}
.p_contactus .addr .bot .left_col dl > * {display: inline-block; font-size: 16px;}
.p_contactus .addr .bot .left_col dl + dl {margin-top: 6px;}
.p_contactus .addr .bot .left_col dt {width: 120px; color: #222; line-height: 20px;}
.p_contactus .addr .bot .left_col dt::before {content: ""; display: inline-block; width: 15px; height: 20px; margin-right: 6px; background: url(../images/ico_subway.png) no-repeat; vertical-align: top;}
.p_contactus .addr .bot .left_col dd {color: #666; font-weight: 300;}
.p_contactus .addr .bot .right_col {padding-top: 24px;}
.p_contactus .addr .bot .right_col h2 {padding-bottom: 24px;}
.p_contactus .addr .bot .right_col dl > * {display: inline-block; font-size: 16px;}
.p_contactus .addr .bot .right_col dl + dl {margin-top: 6px;}
.p_contactus .addr .bot .right_col dt {width: 83px; color: #222; line-height: 20px;}
.p_contactus .addr .bot .right_col dt.call::before {content: ""; display: inline-block; width: 15px; height: 20px; margin-right: 6px; background: url(../images/ico_call.png) no-repeat; vertical-align: top;}
.p_contactus .addr .bot .right_col dt.email::before {content: ""; display: inline-block; width: 15px; height: 20px; margin-right: 6px; background: url(../images/ico_email.png) no-repeat; vertical-align: top;}
.p_contactus .addr .bot .right_col dd {color: #666; font-weight: 300;}

/* error page */
.error_page h1 {margin-top: 199px; color: #222; font-size: 48px; font-weight: 500; text-align: center;}
.error_page .inner {width: 690px; margin: 35px auto 0; padding: 40px 0; border: 1px solid #dde2e5; border-radius: 28px; text-align: center;}
.error_page .inner p {display: inline-block; padding: 50px 0 50px 150px; color: #666; font-size: 24px; background: url(../images/ico_error.png) no-repeat left center;}
.error_page .inner .btn {margin-top: 20px;}


.POP_TEMPLATE_INTRO {background-color: #fff;}
.POP_TEMPLATE_INTRO .pop_inner {width: 1200px; height: 100%; overflow: auto;}
.POP_TEMPLATE_INTRO .list {padding: 27px 30px; border-radius: 10px; background: #f5f5f5;}
.POP_TEMPLATE_INTRO .list li {position: relative; padding-left: 16px; color: #666; font-size: 16px;}
.POP_TEMPLATE_INTRO .list li + li {margin-top: 5px;}
.POP_TEMPLATE_INTRO .list li::before {content: ""; display: block; position: absolute; left: 0; top: 9px; width: 6px; height: 6px; border-radius: 50%; background: #222;}
.POP_TEMPLATE_INTRO .list2 {margin-top: 20px;}
.POP_TEMPLATE_INTRO .list2::after {content: ""; display: block; clear: both;}
.POP_TEMPLATE_INTRO .list2 > div {float: left; width: 186px; height: 486px; border-bottom: 1px solid #dde2e5;}
.POP_TEMPLATE_INTRO .list2 > div + div {border-left: 1px solid #dde2e5;}
.POP_TEMPLATE_INTRO .list2 > div:first-child {border-left: 1px solid #dde2e5; border-radius: 10px 0 0 10px;}
.POP_TEMPLATE_INTRO .list2 > div:last-child {width: 190px; border-right: 1px solid #dde2e5; border-radius: 0 10px 10px 0;}
.POP_TEMPLATE_INTRO .list2 > div h2 {height: 66px; border-top: 1px solid #dde2e5; color: #222; font-size: 18px; font-weight: 500; text-align: center; line-height: 66px; background: #e7eef2; margin: 0;}
.POP_TEMPLATE_INTRO .list2 > div:first-child h2 {border-top-left-radius: 10px;}
.POP_TEMPLATE_INTRO .list2 > div:last-child h2 {border-top-right-radius: 10px;}
.POP_TEMPLATE_INTRO .list2 .dep1 {padding: 13px 29px;}
.POP_TEMPLATE_INTRO .list2 .dep1 li {color: #666; font-size: 16px; font-weight: 300;}
.POP_TEMPLATE_INTRO .list2 .dep1 li + li {margin-top: 6px;}
.POP_TEMPLATE_INTRO .list2 .dep2 {height: 419px; padding: 13px 29px; color: #222; font-weight: 300; background: #f5f5f5;}
.POP_TEMPLATE_INTRO .list2 > div:last-child .dep2 {border-bottom-right-radius: 10px;}
.POP_TEMPLATE_INTRO .list2 .dep2 > li {font-size: 16px;}
.POP_TEMPLATE_INTRO .list2 .dep2 > li + li {margin-top: 7px;}
.POP_TEMPLATE_INTRO .list2 .dep2 > li > ul {padding: 2px 0 0 8px;}
.POP_TEMPLATE_INTRO .list2 .dep2 > li > ul > li {font-size: 14px;}
.POP_TEMPLATE_INTRO .list2 .dep2 > li > ul > li + li {margin-top: 2px;}
.POP_TEMPLATE_INTRO .btn_area {margin-top: 20px;}
.POP_TEMPLATE_INTRO .btn_area .btn {width: 320px;}


/* password confirm popup */
.POP_CONFIRM_PWD {background-color: #fff;}
.POP_CONFIRM_PWD .pop_inner {width: 550px; height: 100%; overflow: auto;}
.POP_CONFIRM_PWD .box_1 {text-align: center;}

/* duplicate id check popup */
.POP_DUPID_CONF {background-color: #fff;}
.POP_DUPID_CONF .pop_inner {width: 550px; height: 100%; overflow: auto;}
.POP_DUPID_CONF .box_1 {text-align: center;}
.POP_DUPID_CONF .result {margin-top: 20px; padding: 28px 20px; border-radius: 9px; background: #eee;}
.POP_DUPID_CONF .result span {color: #0465be; font-weight: 700;}

/* survey item search popup */
.POP_SURVEY_ITEM {background-color: #fff;}
.POP_SURVEY_ITEM .pop_inner {width: 1024px; height: 100%; overflow: auto;}

.EgovQustnrItemManageListPopup {background-color: #fff;}
.EgovQustnrItemManageListPopup .pop_inner {width: 1024px; height: 100%; overflow: auto;}

.EgovBoardMstrListPop {background-color: #fff;}
.EgovBoardMstrListPop .pop_inner {width: 1024px; height: 100%; overflow: auto;}

.EgovGroupSearch {background-color: #fff;}
.EgovGroupSearch .pop_inner {width: 800px; height: 100%; overflow: auto;}

.EgovTemplateInqirePopup .pop_inner {width: 1280px;}

.POP_GROUP_SEARCH .pop_inner,
.POP_POST_SEARCH .pop_inner,
.POP_PRGFILE_SEARCH .pop_inner {width: 1024px;}

.POP_POST_SEARCH {background-color: #fff;}
.POP_POST_SEARCH .pop_inner {height: 100%; overflow: auto;}

.EgovQustnrManageListPopup {background-color: #fff;}
.EgovQustnrManageListPopup .pop_inner {height: 100%; overflow: auto;}
.EgovQustnrManageListPopup .pop_header {margin-bottom: 29px;}
/* end: legacy page.css merged into layout.css */

/* begin: layout/header.html styles */
.material-symbols-outlined {
        font-family: 'Material Symbols Outlined';
        font-weight: normal;
        font-style: normal;
        font-size: 24px;
        line-height: 1;
        letter-spacing: normal;
        text-transform: none;
        display: inline-block;
        white-space: nowrap;
        word-wrap: normal;
        direction: ltr;
        -webkit-font-feature-settings: 'liga';
        -webkit-font-smoothing: antialiased;
        font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
        width: 1em;
        min-width: 1em;
        height: 1em;
        overflow: hidden;
        color: transparent;
        vertical-align: -0.125em;
    }

    html.material-symbols-ready .material-symbols-outlined,
    html.material-symbols-timeout .material-symbols-outlined {
        color: inherit;
    }
/* end: layout/header.html styles */





















/* begin: shared area.css */
:root { --bd:#e5e7eb; --txt:#111827; --muted:#6b7280; --bg:#fff; --chip:#f3f4f6; }
#regionCard, #hopeCard, #insuranceCard{border:0px !important;font-size:14px !important;}
#clearBtn, #hopeClearBtn {font-size:14px !important;}
.wrap { max-width: 980px;padding:0; }
.wrap .card { background:var(--bg); border:1px solid var(--bd); border-radius:14px; box-shadow:0 1px 2px rgba(0,0,0,.04); }
.wrap .hd { padding:8px 18px; border-bottom:1px solid var(--bd); }
.wrap .title { font-size:18px; font-weight:700; margin:0 0 6px; }
.wrap .sub { margin:0; color:var(--muted); font-size:13px; }
.wrap .toolbar { display:flex; gap:10px; flex-wrap:wrap; padding:14px 18px; border-bottom:1px solid var(--bd); align-items:center; }
.wrap .btn { border:1px solid var(--bd); background:#fff; border-radius:10px; padding:8px 10px; cursor:pointer; }
.wrap .btn:hover:not(label) { background:#f8fafc; }
.wrap .pill { display:inline-flex; gap:8px; align-items:center; padding:8px 10px; border:1px solid var(--bd); border-radius:10px; background:#fff; }
.wrap .pill input { width:16px; height:16px; }
.wrap .grid { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:12px; padding:18px; }
.wrap .idsgrid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:12px; padding:18px; }
.wrap .chip-x {background: transparent;}
.wrap .group { border:1px solid var(--bd); border-radius:12px; padding:12px; }
.wrap .group-h { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; gap:10px; }
.wrap .group-title { font-weight:700; font-size:14px; margin:0; }
.wrap .mini { font-size:14px; color:var(--muted); border:1px solid var(--bd); background:#fff; padding:6px 8px; border-radius:10px; cursor:pointer; white-space:nowrap; }
.wrap .mini:hover { background:#f8fafc; }
.wrap .opts { display:grid; grid-template-columns: 1fr 1fr; gap:8px 10px; }
.wrap .opt { display:flex; align-items:center; gap:8px; padding:8px 10px; border-radius:10px; background:#fff; border:1px solid var(--bd); }
.wrap .opt:hover:not(label) { background:#f9fafb; }
.wrap .opt input { width:16px; height:16px; }
.wrap .ft { border-top:1px solid var(--bd); padding:14px 18px;width: calc(calc(100vw / 2) - 60px);max-width: calc(calc(100vw / 2) - 60px);}
.wrap .chips { display:flex; flex-wrap:wrap; gap:8px; }
#selectedChipssub .chip-x, #selectedChips .chip-x {display:none;}
#selectedChipssub .chip, #selectedChips .chip, #hopehistory .chip, #hopeChips .chip, .arehistory .chip { background:var(--chip); border:1px solid var(--bd); border-radius:0.25rem; padding:2px 12px; font-size:14px;height: 28px;line-height: 24px;margin-right:5px;}
.wrap .chip { background:var(--chip); border:1px solid var(--bd); border-radius:10px; padding:2px 12px; font-size:14px;height: 28px;line-height: 24px;}
.wrap .count { color:var(--muted); font-size:14px; margin-top:8px; }
#regionCard .hd,
#regionCard .toolbar,
#hopeCard .hd,
#hopeCard .toolbar {display:none;}
#regionCard .grid,
#hopeGroups {display:block;padding:0;}
#regionCard .ft,
#hopeCard .ft {border-top:0;padding:18px 0 0;width:100%;max-width:100%;}
.region-picker-panel {padding: 4px 0 8px;color:#111827;}
.region-picker-kicker {display:inline-flex;background:#20242b;color:#fff;border-radius:4px;padding:8px 16px;font-size:15px;font-weight:800;margin-bottom:24px;box-shadow:0 6px 14px rgba(15,23,42,.12);}
.region-picker-progress {display:flex;align-items:center;justify-content:space-between;color:#94a3b8;font-size:16px;font-weight:800;margin-bottom:10px;}
.region-picker-progress strong {color:#2f9463;}
.region-picker-bar {height:4px;background:#e5e7eb;border-radius:999px;overflow:hidden;margin-bottom:34px;}
.region-picker-bar span {display:block;height:100%;background:#2f9463;border-radius:999px;transition:width .2s ease;}
.region-picker-heading {display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:24px;}
.region-picker-heading h3 {margin:0;color:#111827;font-size:32px;line-height:1.32;font-weight:900;letter-spacing:0;}
.region-picker-heading span {color:#94a3b8;font-size:16px;font-weight:800;white-space:nowrap;}
.region-choice-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.region-choice {position:relative;display:flex;align-items:center;justify-content:center;min-height:67px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;color:#334155;font-size:17px;font-weight:800;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease;}
.region-choice:hover {border-color:#93c5b2;box-shadow:0 8px 18px rgba(15,23,42,.06);}
.region-choice input {position:absolute;opacity:0;pointer-events:none;}
.region-choice.is-selected,
.region-choice:has(input:checked) {background:#eaf8f1;border-color:#55aa7a;color:#2f9463;box-shadow:inset 0 0 0 1px rgba(47,148,99,.28);}
.region-choice:has(input:disabled):not(:has(input:checked)) {background:#f8fafc;color:#cbd5e1;cursor:not-allowed;}
input[type=text].cancel ,input[type=password].cancel, textarea.cancel,select.cancel {-webkit-box-shadow:0 0 5px #FF0000;-moz-box-shadow:0 0 5px #FF0000;box-shadow:0 0 5px #FF0000;border:1px solid #FF0000 !important;}
.error-msg {margin:-5px 5px;color: #d32f2f;}
input[type=text] + .error-msg{display: none}
input[type=text].cancel + .error-msg{display: block}
.wrap textarea {width:100%;resize:none;padding:10px 12px;line-height:1.5;border:1px solid #e5e7eb;font-family:inherit;}
.wrap textarea:focus {outline:none;border-color:#6366f1;}
.helper {display:flex;justify-content:space-between;margin-top:6px;font-size:14px;color:#6b7280;}
.filewrap .imggroup #resumeviewbtn {position:relative;bottom: 59px;padding:5px 18px;}
.filename {height:28px !important;padding-top:0px !important;}




















/* end: shared area.css */

/* begin: shared autocomplet.css */
.search-box {position: relative;}
.global-search-suggest {position: absolute;top: 100%;left: 0;right: 0;z-index: 9999;margin-top: 6px;background: #fff;border: 1px solid #e5e7eb;border-radius: 10px;box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);overflow: hidden;max-height: 320px}
.global-search-suggest-item {display: flex;align-items: center;gap: 8px;min-height: 44px;padding: 10px 14px;cursor: pointer;font-size: 14px;color: #111827;background: #fff;}
.global-search-suggest-item:hover {background: #f3f4f6;}
.global-search-suggest-item .type {flex: 0 0 auto;display: inline-flex;align-items: center;padding: 2px 7px;border-radius: 999px;background: #f3f4f6;color: #6b7280;font-size: 14px;}
.global-search-suggest-empty {padding: 14px;color: #6b7280;font-size: 14px;}
.global-search-suggest-title {padding: 12px 14px 6px;color: #6b7280;font-size: 14px;font-weight: 700;}
.topsearch:focus-within {border-color: #2a6df4 !important;box-shadow: 0 0 0 3px rgba(42, 109, 244, 0.12);}




















/* end: shared autocomplet.css */

/* begin: shared certification.css */
.v2-prototype.cert-page {
    padding-bottom: 48px;
}

.v2-prototype .cert-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 230px;
    gap: 18px;
    align-items: start;
}

.v2-prototype .cert-main {
    min-width: 0;
}

.v2-prototype .cert-step-card {
    padding: 22px 26px 18px;
    margin-bottom: 14px;
}

.v2-prototype .cert-card {
    padding: 26px 28px;
}

.v2-prototype .cert-card-head {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 20px;
}

.v2-prototype .cert-card-head > i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: var(--g-l);
    color: var(--g2);
    font-size: 18px;
    flex: none;
}

.v2-prototype .cert-card-head h2,
.v2-prototype .cert-card-head h3 {
    margin: 0;
}

.v2-prototype .cert-card-head p {
    margin: 5px 0 0;
    color: var(--sub);
    font-size: 14px;
    line-height: 1.55;
}

.v2-prototype .cert-fields {
    display: grid;
    gap: 12px;
}

.v2-prototype .cert-field label {
    display: block;
    margin-bottom: 7px;
    color: var(--ink);
    font-size: 14px;
    font-weight: 700;
}

.v2-prototype .cert-field label i {
    color: var(--red);
    font-style: normal;
}

.v2-prototype .cert-field .inp {
    min-height: 50px;
}

.v2-prototype .cert-type-seg {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
    padding: 4px;
    margin-bottom: 22px;
    border-radius: 12px;
    background: var(--bg);
}

.v2-prototype .cert-type-seg a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    border-radius: 9px;
    color: var(--sub);
    font-size: 14px;
    font-weight: 700;
}

.v2-prototype .cert-type-seg a.on {
    background: #fff;
    color: var(--ink);
    box-shadow: var(--shadow2);
}

.v2-prototype .cert-side {
    position: sticky;
    top: 96px;
    padding: 18px;
}

.v2-prototype .cert-side h4 {
    margin: 0 0 14px;
    font-size: 15px;
}

.v2-prototype .cert-side ol {
    list-style: none;
    margin: 0;
    padding: 0;
}

.v2-prototype .cert-side li {
    position: relative;
    display: flex;
    gap: 10px;
    min-height: 66px;
    color: var(--mute);
}

.v2-prototype .cert-side li:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 28px;
    left: 12px;
    width: 2px;
    height: 32px;
    background: var(--line);
}

.v2-prototype .cert-side li > i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #e8ebef;
    color: var(--mute);
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
    flex: none;
}

.v2-prototype .cert-side li.on > i {
    background: var(--g);
    color: #fff;
}

.v2-prototype .cert-side li.on:not(:last-child)::after {
    background: var(--g);
}

.v2-prototype .cert-side li span {
    display: block;
    font-size: 12px;
    line-height: 1.45;
}

.v2-prototype .cert-side li b {
    display: block;
    margin: 2px 0 3px;
    color: var(--ink);
    font-size: 14px;
}

.v2-prototype .cert-actions {
    display: flex;
    gap: 8px;
    margin-top: 14px;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff;
}

.v2-prototype .cert-actions .btn:last-child {
    flex: 1;
}

.v2-prototype .cert-upload {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 132px;
    padding: 20px;
    border: 1px dashed #aeb7c1;
    border-radius: 12px;
    background: var(--bg);
    text-align: center;
    cursor: pointer;
    transition: .2s;
}

.v2-prototype .cert-upload:hover,
.v2-prototype .cert-upload.has-file {
    border-color: var(--g);
    background: var(--g-ll);
}

.v2-prototype .cert-upload input[type=file] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.v2-prototype .cert-upload i {
    display: block;
    margin-bottom: 8px;
    color: var(--g);
    font-size: 28px;
}

.v2-prototype .cert-upload b,
.v2-prototype .cert-upload small {
    display: block;
}

.v2-prototype .cert-upload-list {
    display: grid;
    gap: 24px;
}

.v2-prototype .cert-file-section + .cert-file-section {
    padding-top: 24px;
    border-top: 1px solid var(--line);
}

.v2-prototype .cert-file-title {
    margin-bottom: 12px;
}

.v2-prototype .cert-file-title > div {
    display: flex;
    align-items: center;
    gap: 8px;
}

.v2-prototype .cert-file-title small {
    display: block;
    margin-top: 4px;
    color: var(--sub);
    font-size: 12px;
    line-height: 1.5;
}

.v2-prototype .cert-file-name {
    display: block;
    max-width: 100%;
    margin-top: 10px;
    overflow: hidden;
    color: var(--g2);
    font-size: 13px;
    font-style: normal;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.v2-prototype .cert-complete {
    padding: 58px 30px;
    text-align: center;
}

.v2-prototype .cert-complete-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 76px;
    height: 76px;
    margin-bottom: 18px;
    border-radius: 50%;
    background: #eaf3ff;
    color: #3571bd;
    font-size: 32px;
}

.v2-prototype .cert-complete h2 {
    margin: 0 0 12px;
}

.v2-prototype .cert-complete h4 {
    margin: 0;
    font-size: 17px;
}

.v2-prototype .cert-complete p {
    max-width: 560px;
    margin: 12px auto 22px;
    color: var(--sub);
    font-size: 14px;
    line-height: 1.7;
}

.v2-prototype .cert-complete-actions .btn {
    flex: 1;
}

.v2-prototype .cert-status-detail {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.v2-prototype .cert-status-detail > div {
    min-width: 0;
    padding: 14px 15px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: var(--bg);
}

.v2-prototype .cert-status-detail span,
.v2-prototype .cert-status-detail b {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.v2-prototype .cert-status-detail span {
    margin-bottom: 5px;
    color: var(--mute);
    font-size: 12px;
}

.v2-prototype .cert-status-detail b {
    font-size: 14px;
}

.v2-prototype .cert-autocomplete {
    position: relative;
}

.v2-prototype .cert-suggest {
    position: absolute;
    z-index: 20;
    right: 0;
    left: 0;
    margin-top: -1px;
    border: 1px solid var(--line);
    border-radius: 0 0 10px 10px;
    background: #fff;
    box-shadow: var(--shadow2);
    overflow: hidden;
}

.v2-prototype .cert-suggest button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 11px 13px;
    border: 0;
    border-bottom: 1px solid var(--line2);
    background: #fff;
    text-align: left;
    cursor: pointer;
}

.v2-prototype .cert-suggest button:hover {
    background: var(--g-ll);
}

.v2-prototype .cert-upload small {
    margin-top: 4px;
    color: var(--mute);
    font-size: 12px;
}

.v2-prototype .cert-existing-file {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
    font-size: 13px;
}

.v2-prototype .cert-existing-file .filename {
    min-width: 0;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.v2-prototype .cert-consent-group {
    margin-top: 12px;
    border: 1px solid var(--line);
    border-radius: 12px;
    overflow: hidden;
}

.v2-prototype .cert-consent-group > label {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 14px 16px;
    background: var(--bg);
    font-weight: 700;
}

.v2-prototype .cert-consent-items {
    display: grid;
    gap: 0;
}

.v2-prototype .cert-consent-items label {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 12px 16px;
    border-top: 1px solid var(--line2);
    font-size: 13px;
    line-height: 1.6;
}

.v2-prototype .cert-consent-group input {
    width: 18px;
    height: 18px;
    margin-top: 1px;
    accent-color: var(--g);
    flex: none;
}

.v2-prototype .cert-all-consent {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 14px;
    padding: 15px 16px;
    border-radius: 11px;
    background: var(--g-ll);
    color: var(--g2);
    font-weight: 800;
}

.v2-prototype .cert-all-consent input {
    width: 19px;
    height: 19px;
    accent-color: var(--g);
}




















/* end: shared certification.css */

/* begin: shared chat.css */
* { box-sizing: border-box; }
.chat-page {display: flex;height: 100vh;overflow: hidden;}
.chat-sidebar {width: 360px;min-width: 320px;border-right: 1px solid #e5e7eb;background: #fff;display: flex;flex-direction: column;}
.chat-sidebar-header {padding: 16px;border-bottom: 1px solid #e5e7eb;font-size: 18px;font-weight: 700;}
.chat-room-list {flex: 1;overflow-y: auto;}
.chat-room-item {padding: 14px 16px;border-bottom: 1px solid #f1f1f1;cursor: pointer;display: flex;gap: 12px;align-items: center;}
.chat-room-item:hover {background: #f9fafb;}
.chat-room-item.active {background: #eef6ff;}
.chat-room-logo {width: 48px;height: 48px;border-radius: 12px;overflow: hidden;background: #f0f0f0;flex: 0 0 48px;}
.chat-room-logo img {width: 100%;height: 100%;object-fit: cover;}
.chat-room-content {flex: 1;min-width: 0;}
.chat-room-top {display: flex;justify-content: space-between;align-items: center;gap: 8px;margin-bottom: 4px;}
.chat-room-company {font-size: 14px;font-weight: 700;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.chat-room-time {font-size: 14px;color: #888;flex-shrink: 0;}
.chat-room-title {font-size: 14px;color: #444;margin-bottom: 4px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.chat-room-last {font-size: 14px;color: #666;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.chat-room-badge {display: inline-flex;min-width: 20px;height: 20px;padding: 0 6px;justify-content: center;align-items: center;border-radius: 999px;background: #ef4444;color: #fff;font-size: 14px;;font-weight: 700;margin-left: 6px;}
.chat-main {flex: 1;display: flex;flex-direction: column;min-width: 0;background: #f9fafb;}
.chat-main-empty {flex: 1;display: flex;justify-content: center;align-items: center;color: #777;font-size: 16px;}
.chat-header {height: 72px;background: #fff;border-bottom: 1px solid #e5e7eb;display: flex;align-items: center;justify-content: space-between;padding: 0 20px;flex-shrink: 0;}
.chat-header-info {min-width: 0;}
.chat-header-company {font-size: 16px;font-weight: 700;margin-bottom: 4px;}
.chat-header-title {font-size: 14px;color: #666;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;max-width: 500px;}
.chat-body {flex: 1;overflow-y: auto;padding: 20px;display: flex;flex-direction: column;gap: 12px;}
.chat-date-divider {text-align: center;font-size: 14px;color: #777;margin: 10px 0;}
.chat-message-row {display: flex;flex-direction: column;max-width: 72%;}
.chat-message-row.mine {align-self: flex-end;align-items: flex-end;}
.chat-message-row.other {align-self: flex-start;align-items: flex-start;}
.chat-message-sender {font-size: 14px;font-weight: 700;color: #6b7280;margin-bottom: 4px;line-height: 1.2;}
.chat-message-row.mine .chat-message-sender {color: #1d4ed8;text-align: right;}
.chat-message-row.other .chat-message-sender {color: #4b5563;text-align: left;}
.chat-message-bubble {padding: 12px 14px;border-radius: 16px;font-size: 14px;line-height: 1.5;white-space: pre-wrap;word-break: break-word;}
.chat-message-row.mine .chat-message-bubble {background: #2563eb;color: #fff;border-bottom-right-radius: 4px;padding-left:20px;}
.chat-message-row.other .chat-message-bubble {background: #fff;color: #111;border: 1px solid #e5e7eb;border-bottom-left-radius: 4px;padding-left:12px;}
.chat-message-meta {margin-top: 4px;font-size: 14px;;color: #888;}
.chat-input-wrap {background: #fff;border-top: 1px solid #e5e7eb;padding: 14px 16px;flex-shrink: 0;}
.chat-input-box {display: flex;gap: 10px;align-items: flex-end;}
.chat-textarea {flex: 1;resize: none;min-height: 48px;max-height: 140px;border: 1px solid #d1d5db;border-radius: 12px;padding: 12px;font-size: 14px;outline: none;background: #fff;}
.chat-send-btn {width: 88px;height: 48px;border: 0;border-radius: 12px;background: #2563eb;color: #fff;font-size: 14px;font-weight: 700;cursor: pointer;}
.chat-send-btn:disabled {opacity: .5;cursor: default;}
.chat-inline-link {display: inline-flex;align-items: center;gap: 4px;margin-top: 6px;color: #16a34a;font-weight: 600;text-decoration: none;}
.chat-inline-link:hover {text-decoration: underline;}
.chat-inline-link-icon {font-size: 16px;vertical-align: middle;}
.hidden { display: none !important; }

.offcanvas.show,
.offcanvas.showing {pointer-events: auto !important;}
.offcanvas .offcanvas-header {position: relative;}
.offcanvas .btn-close {position: relative;z-index: 10;pointer-events: auto !important;flex-shrink: 0;}


.search-box-bth {border:1px solid #000000;border-top:0;border-radius: 0 0 12px 12px;}




















/* end: shared chat.css */

/* begin: shared filemanager.css */
.cke_notification_warning { display:none !important; }
.file-manager-box {border:1px solid #ccc;padding:10px;height:auto;min-height:145px;}
.file-list-zone {background: #000;width: 99%;height: 99%;position: relative;z-index: 2;margin: 3px -5px 0 4px;left: 2px;right: 2px;}
.file-drop-zone {text-align:center;margin-bottom: 10px;cursor: pointer;}
.file-drop-zone .fm-empty-container {display: block;position: absolute;top: 10px;bottom: 10px;left: 10px;right: 10px;border: 2px dashed #bbb;padding-top: 85px;text-align: center;}
.file-drop-zone.drag-over .fm-empty-container { border: 2px dashed #6cbcd3;}
.file-drop-zone.drag-over .file-drag-zone {display: block !important;}
.file-drop-zone.drag-over .file-list {display: none !important;}
.file-drop-zone.drag-over .fileinfo {display: none;}
.file-drop-zone.drag-over .draginfo {display: block !important;}
.file-drop-zone .draginfo.hide{display: none;}
.file-list.drag-over{display: none}
.upload-label {background: #0073aa;color: white;padding: 4px 10px;border-radius: 4px;margin-left: 5px;cursor: pointer;}
.file-list {list-style: none;padding: 0;display: flex;margin:0px;background: #ffffff;}
.file-item {background: white;margin: 5px 0;padding: 6px 10px;display: flex;justify-content: space-between;align-items: center;}
.file-remove {position:absolute;background: transparent;border: none;color: red;font-size: 16px;cursor: pointer;}
.file-name {display:flex;flex-direction:column;}
.fp-thumbnail {min-width: 110px;min-height: 110px;line-height: 110px;text-align: center;border: 1px solid #fff;display: block;}
.file-name img {max-width:90px;max-height:90px;width:120px;height:130px;border: 1px solid #ddd;padding: 3px;vertical-align: middle;box-shadow: 1px 1px 2px 0 #ccc;}

.fa-file-o:before {content: url(/images/file-icon.svg);}
.fa-th:before {content: url(/images/th-icon.svg);}
.fa-list:before {content: url(/images/list-icon.svg);}
.fa-folder:before {content: url(/images/folder-icon.svg);}
.fa-download:before {content: url(/images/download-icon.svg);}

.filemanager-toolbar .fp-btn-add, .filemanager-toolbar a {background: transparent !important;border: 0px !important;}
.fp-btn-add .icon.fa {background-color:#ffffff; !important;}
.btn-secondary:active {box-shadow: 0 0 0 0.5rem rgba(130, 138, 145, 0.2) !important;}
.btn-secondary:visited {box-shadow:none;}

.btn-secondary:not(:disabled):not(.disabled):focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-secondary.dropdown-toggle:focus {box-shadow:none;}
input[type="file"]:focus{border: 0px !important;}
/* end: shared filemanager.css */

/* begin: shared final.css */
body {color:#fff;background: linear-gradient(-45deg, #003780, #451049, #FFFFFF);background-size: 400% 400%;animation: colorChange 8s ease infinite;}
@keyframes colorChange{
    0%{
        background-position: 0% 50%;
    }
    25%{
        background-position: 70% 30%;
    }
    50%{
        background-position: 100% 50%;
    }
    100%{
        background-position: 0% 50%;
    }
}

.timeicon {
    animation: iconrotate2 5s ease infinite;
}

@keyframes iconrotate{
    0%{
        transform: rotate(45deg);
    }
    40%{
        transform: rotate(180deg);
    }
    50%{
        transform: rotate(180deg);
    }
    70%{
        transform: rotate(180deg);
    }
    100%{
        transform: rotate(360deg);
    }
}
.flip-horizontal-bottom {
    -webkit-animation: flip-horizontal-bottom 1.4s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
    animation: flip-horizontal-bottom 1.4s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
}
@-webkit-keyframes flip-horizontal-bottom {
    0% {
        -webkit-transform: rotateX(-180deg);
        transform: rotateX(-180deg);
    }
    50% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
    }
    75% {
        -webkit-transform: rotateX(-180deg);
        transform: rotateX(-180deg);
    }
    100% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
    }
}
@keyframes flip-horizontal-bottom {
    0% {
        -webkit-transform: rotateX(-180deg);
        transform: rotateX(-180deg);
    }
    50% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
    }
    75% {
        -webkit-transform: rotateX(-180deg);
        transform: rotateX(-180deg);
    }
    100% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
    }
}
/* end: shared final.css */

/* begin: shared hero.css */
.hero {
    position: relative;
    overflow: hidden;
    min-height: 500px;
    max-height: 500px;
    background:
            radial-gradient(circle at 12% 18%, rgba(56, 214, 177, .17), transparent 25%),
            radial-gradient(circle at 78% 24%, rgba(121, 87, 255, .17), transparent 28%),
            linear-gradient(135deg, #604a7b 0%, #654770 54%, #410a45 100%);
    color: white;
}

.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .22;
    background-image:
            linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
            linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
    background-size: 44px 44px;
    mask-image: linear-gradient(to bottom, black, transparent 90%);
}

.hero::after {
    content: "";
    position: absolute;
    inset: auto -10% -120px -10%;
    height: 220px;
    background: radial-gradient(ellipse at center, rgba(44, 255, 206, .13), transparent 65%);
    filter: blur(10px);
}

.neural-particles {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}
.neural-particles i {
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #a8a4d9;
    box-shadow: 0 0 18px rgb(138 132 173);
    animation: drift var(--duration, 1s) ease-in-out infinite alternate;
    opacity: var(--opacity, .45);
}
.neural-particles i::after {
    content: "";
    position: absolute;
    top: 2px;
    left: 5px;
    width: var(--line-l, 58px);
    height: 1px;
    transform: rotate(var(--line-r, 18deg));
    transform-origin: left center;
    background: linear-gradient(90deg, rgb(198 189 249), transparent);
}
.neural-particles i:nth-child(1) { left: 7%; top: 15%; --duration: 7s; --line-r: 18deg; }
.neural-particles i:nth-child(2) { left: 24%; top: 64%; --duration: 10s; --line-r: -30deg; --opacity: .25; }
.neural-particles i:nth-child(3) { left: 46%; top: 20%; --duration: 9s; --line-r: 35deg; --line-l: 86px; }
.neural-particles i:nth-child(4) { left: 69%; top: 73%; --duration: 8s; --line-r: -18deg; --opacity: .35; }
.neural-particles i:nth-child(5) { left: 88%; top: 20%; --duration: 11s; --line-r: 130deg; --line-l: 72px; }
.neural-particles i:nth-child(6) { left: 79%; top: 46%; --duration: 6s; --line-r: 12deg; --opacity: .2; }

@keyframes drift {
    from { transform: translate3d(0, 0, 0) scale(.8); }
    to { transform: translate3d(18px, -14px, 0) scale(1.15); }
}

.hero-inner {
    position: relative;
    z-index: 2;
    width: min(1320px, calc(100% - 40px));
    min-height: 450px;
    margin: 0 auto;
    padding: 42px 0 115px;
}

.hero-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
}

.hero-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #dadaeb;
    font-size: 15px;
    font-weight: 800;
}
.hero-kicker::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #a8a4d9;
    box-shadow: 0 0 0 6px rgba(127, 255, 228, .12), 0 0 18px rgb(125 122 164);
}

.hero-toolbar-actions {
    display: flex;
    align-items: center;
    gap: 9px;
}

.mode-guide,
.mode-reset {
    min-height: 40px;
    padding: 0 15px;
    border: 1px solid rgba(255,255,255,.32);
    border-radius: 999px;
    color: white;
    background: rgba(255,255,255,.08);
    font-weight: 800;
    transition: background .2s ease, transform .2s ease;
}
.mode-guide {
    padding: 0 16px;
    border: 1px solid rgba(127,255,228,.48);
    border-radius: 999px;
    color: #073f37;
    background: #b9ffed;
    font-weight: 900;
    box-shadow: 0 8px 20px rgba(0, 28, 23, .15);
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.mode-guide:hover,
.mode-guide:focus-visible {
    outline: none;
    transform: translateY(-2px);
    filter: brightness(1.04);
    box-shadow: 0 12px 26px rgba(0, 28, 23, .22);
}
.mode-reset:hover,
.mode-reset:focus-visible {
    outline: none;
    background: rgba(255,255,255,.17);
    transform: translateY(-1px);
}

.hero-content {
    min-height: 245px;
    animation: contentIn .35s ease both;
}
@keyframes contentIn {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

.persona-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.persona-card {
    --rx: 0deg;
    --ry: 0deg;
    position: relative;
    min-height: 208px;
    padding: 25px 18px;
    border: 1px solid rgba(255,255,255,.20);
    border-radius: 24px;
    color: white;
    background: linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.06));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.16);
    transform: perspective(900px) rotateX(var(--rx)) rotateY(var(--ry));
    transform-style: preserve-3d;
    transition: border-color .25s ease, background .25s ease, box-shadow .25s ease, transform .18s ease;
    overflow: hidden;
}
.persona-card::before {
    content: "";
    position: absolute;
    inset: -80% auto auto -30%;
    width: 90%;
    height: 220%;
    transform: rotate(25deg) translateX(-150%);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent);
    transition: transform .6s ease;
}
.persona-card:hover::before { transform: rotate(25deg) translateX(220%); }
.persona-card:hover,
.persona-card:focus-within {
    border-color: rgb(65 20 72);
    background: linear-gradient(145deg, rgba(255,255,255,.20), rgba(255,255,255,.08));
    box-shadow: 0 20px 48px rgba(0, 28, 23, .28), inset 0 1px 0 rgba(255,255,255,.25);
}

.persona-card-top {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 18px;
    transform: translateZ(24px);
    min-height:76px;
}

.ai-orb {
    --orb-size: 65px;
    position: relative;
    width: var(--orb-size);
    height: var(--orb-size);
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: radial-gradient(circle at 36% 28%, #ffffff 0 9%, #dffcff 18%, #99f2e4 38%, #3677ff 66%, #713cff 100%);
    box-shadow:
            0 0 0 6px rgba(255,255,255,.08),
            0 0 28px rgba(93, 255, 220, .52),
            inset 0 0 20px rgba(255,255,255,.72);
    isolation: isolate;
    transition: transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease;
}

.persona-card:hover .ai-orb,
.role-shortcut:hover .ai-orb,
.action-step:hover .ai-orb {
    transform: rotate(8deg) scale(1.08);
    box-shadow:
            0 0 0 8px rgba(255,255,255,.12),
            0 0 42px rgba(93, 255, 220, .72),
            inset 0 0 24px rgba(255,255,255,.85);
}
.ai-orb::before,
.ai-orb::after {
    content: "";
    position: absolute;
    inset: -8px;
    border: 1px dashed rgb(92 89 124);
    border-radius: 50%;
    animation: orbit 1s linear infinite;
}
.ai-orb::after {
    inset: -14px;
    border-style: dashed;
    border-color: rgb(135 59 147);
    animation-direction: reverse;
    animation-duration: 3s;
}
@keyframes orbit { to { transform: rotate(360deg); } }

.ai-core-svg {
    width: 58%;
    height: 58%;
    filter: drop-shadow(0 4px 8px rgba(37, 22, 116, .35));
    z-index: 2;
}
.ai-core-svg .node { animation: nodePulse 1.8s ease-in-out infinite alternate; }
.ai-core-svg .node:nth-child(2) { animation-delay: .25s; }
.ai-core-svg .node:nth-child(3) { animation-delay: .5s; }
@keyframes nodePulse { from { opacity: .55; } to { opacity: 1; } }

.persona-copy h2,
.persona-copy h3 {
    margin: 0;
    letter-spacing: -0.03em;
    line-height: 1.25;
}
.persona-copy h3 { font-size: 18px; }
.persona-copy p {
    margin: 8px 0 0;
    color: rgba(255,255,255,.76);
    font-size: 15px;
}

.persona-action {
    width: 100%;
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 16px 0 18px;
    border: 1px solid rgba(255,255,255,.33);
    border-radius: 15px;
    color: white;
    background: rgba(0,0,0,.12);
    font-size: 16px;
    font-weight: 900;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
    transform: translateZ(18px);
}
.persona-action:hover,
.persona-action:focus-visible {
    outline: none;
    border-color: rgb(66 20 73);
    background: rgba(255,255,255,.14);
    transform: translateZ(18px) translateY(-2px);
}
.persona-action span:last-child {
    font-size: 22px;
    transition: transform .2s ease;
}
.persona-action:hover span:last-child { transform: translateX(4px); }

.guide-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 32px;
    align-items: start;
}

.guide-main {display: grid;grid-template-columns: 104px minmax(0, 1fr);gap: 26px;align-items: start;}
.guide-main .ai-orb { --orb-size: 92px; margin-top: 6px; }

.guide-title {
    margin: 0;
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1.22;
    letter-spacing: -0.045em;
    text-wrap: balance;
}
.guide-subtitle {
    margin: 10px 0 0;
    color: rgba(255,255,255,.78);
    font-size: 18px;
    font-weight: 700;
}

.step-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 25px;
}
.step-list.single { grid-template-columns: minmax(0, 560px); }

.action-step {
    position: relative;
    min-height: 58px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 10px 8px 12px;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 18px;
    color: var(--text);
    background: rgba(255,255,255,.96);
    box-shadow: 0 12px 28px rgba(0, 32, 27, .13);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    animation: stepIn .32s ease both;
    animation-delay: calc(var(--i, 0) * 55ms);
}
@keyframes stepIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
.action-step:hover,
.action-step:focus-visible {
    outline: none;
    transform: translateY(-4px);
    border-color: #8ce5d1;
    box-shadow: 0 18px 36px rgba(0, 37, 31, .22);
}
.step-no {
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: white;
    background: linear-gradient(135deg, #0eb38d, #3775ff);
    font-size: 14px;
    font-weight: 900;
    box-shadow: 0 7px 14px rgba(43, 116, 221, .22);
}
.step-label {
    min-width: 0;
    flex: 1;
    color: #1b2926;
    font-size: 16px;
    font-weight: 900;
}
.ai-badge {
    flex: 0 0 auto;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 0 11px;
    border-radius: 11px;
    color: white;
    background: linear-gradient(135deg, #28b8ff, #4d68ff 50%, #8e4cff);
    font-size: 14px;
    font-weight: 900;
    box-shadow: 0 7px 16px rgba(77, 104, 255, .26);
    transform-origin: center;
}
.ai-badge:hover::before {
    animation: spin 0.8s linear 1 forwards;
    /*animation: sparkle 1.2s ease-in-out infinite alternate;*/
}
@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
.ai-badge::before {
    content: "✦";
    display: inline-block;
    transform-origin: center;
}




/*@keyframes sparkle { to { transform: scale(1.28) rotate(20deg); filter: brightness(1.25); } }*/

.role-shortcuts {
    display: grid;
    gap: 10px;
}
.role-shortcut {
    width: 100%;
    min-height: 70px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 17px;
    color: white;
    background: rgba(255,255,255,.07);
    text-align: left;
    transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.role-shortcut:hover,
.role-shortcut:focus-visible,
.role-shortcut.is-active {
    outline: none;
    transform: translateX(-5px);
    background: rgba(255,255,255,.15);
    border-color: rgb(82 41 94);
}
.role-shortcut .ai-orb { --orb-size: 42px; }
.role-shortcut strong {
    display: block;
    font-size: 15px;
    line-height: 1.35;
}
.role-shortcut small {
    display: block;
    margin-top: 3px;
    color: rgba(255,255,255,.68);
    font-size: 14px;
}
.role-shortcut .arrow {
    margin-left: auto;
    color: #9effe8;
    font-size: 20px;
}

.search-panel {
    position: relative;
    z-index: 20;
    width: min(1180px, calc(100% - 40px));
    margin: -74px auto 0;
    padding: 22px;
    border: 1px solid rgba(10, 102, 85, .12);
    border-radius: 24px;
    background: white;
    box-shadow: var(--shadow-md);
}

.search-form {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(230px, .7fr) 124px;
    align-items: center;
    border: 2px solid #d2ddda;
    border-radius: 17px;
    background: white;
    overflow: hidden;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.search-form:focus-within {
    border-color: #22a88a;
    box-shadow: 0 0 0 4px rgba(34, 168, 138, .11);
}

.search-field {
    min-height: 60px;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 0 18px;
}
.search-field + .search-field { border-left: 1px solid #e4ece9; }
.search-field svg { width: 22px; height: 22px; color: #65736f; flex: 0 0 auto; }
.search-field input {
    width: 100%;
    height: 48px;
    border: 0;
    outline: 0;
    color: #1d2a27;
    background: transparent;
    font-weight: 700;
}
.search-field input::placeholder { color: #98a4a1; }
.search-submit {
    align-self: stretch;
    min-height: 60px;
    margin: 5px;
    border: 0;
    border-radius: 12px;
    color: white;
    background: linear-gradient(135deg, #0d7f69, #0a584c);
    font-weight: 900;
    box-shadow: 0 8px 18px rgba(8, 95, 79, .22);
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.search-submit:hover,
.search-submit:focus-visible {
    outline: none;
    transform: translateY(-1px);
    filter: brightness(1.08);
    box-shadow: 0 12px 22px rgba(8, 95, 79, .30);
}

.content-wrap {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
    padding: 34px 0 80px;
}

.section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}
.section-head h2 {
    margin: 0;
    font-size: 26px;
    letter-spacing: -0.04em;
}
.section-head p {
    margin: 5px 0 0;
    color: var(--muted);
    font-weight: 650;
}
.result-count {
    color: var(--green-700);
    font-weight: 900;
}

.job-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.job-card {
    --rx: 0deg;
    --ry: 0deg;
    position: relative;
    min-height: 210px;
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: white;
    box-shadow: var(--shadow-sm);
    transform: perspective(950px) rotateX(var(--rx)) rotateY(var(--ry));
    transform-style: preserve-3d;
    transition: transform .18s ease, box-shadow .25s ease, border-color .25s ease;
    overflow: hidden;
}
.job-card::after {
    content: "";
    position: absolute;
    inset: auto -70px -70px auto;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(56,214,177,.13), transparent 70%);
    pointer-events: none;
}
.job-card:hover,
.job-card:focus-within {
    border-color: #78cdb9;
    box-shadow: 0 18px 40px rgba(12, 83, 68, .14);
}
.job-card-top {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 18px;
    transform: translateZ(18px);
}
.company-logo {
    width: 58px;
    height: 58px;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border-radius: 16px;
    color: white;
    background: var(--logo-bg, linear-gradient(135deg, #1e75ef, #7b4cff));
    box-shadow: 0 9px 18px rgba(47, 100, 206, .18);
    font-size: 14px;
    font-weight: 950;
    letter-spacing: -0.03em;
}
.job-card-title { min-width: 0; flex: 1; }
.tags { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.tag {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: 0 8px;
    border-radius: 7px;
    color: #296f60;
    background: #e7f6f2;
    font-size: 14px;
    font-weight: 900;
}
.tag.blue { color: #2c5fa8; background: #e8f1ff; }
.tag.violet { color: #6741a8; background: #f0e9ff; }
.job-card h3 {
    margin: 0;
    font-size: 18px;
    line-height: 1.38;
    letter-spacing: -0.035em;
}
.job-card .job-card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding-top: 16px;
    border-top: 1px solid #ebf0ee;
    transform: translateZ(12px);
}
.company-name {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-weight: 900;
}
.company-name small { color: var(--muted); font-weight: 700; }
.ai-match {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 36px;
    padding: 0 11px;
    border-radius: 10px;
    color: #3f48a6;
    background: linear-gradient(135deg, #eefbff, #f2edff);
    font-size: 14px;
    font-weight: 900;
}
.ai-match::before { content: "✦"; color: #6b5cff; }

.bookmark {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border: 1px solid #dbe5e2;
    border-radius: 11px;
    color: #5f6e6a;
    background: rgba(255,255,255,.92);
    z-index: 3;
    transition: color .2s ease, background .2s ease, transform .2s ease, border-color .2s ease;
}
.bookmark:hover,
.bookmark:focus-visible {
    outline: none;
    color: #0b8a70;
    border-color: #9bd8ca;
    transform: translateY(-2px);
}
.bookmark[aria-pressed="true"] {
    color: white;
    border-color: #0b8a70;
    background: #0b8a70;
}

.empty-state {
    display: none;
    padding: 50px 20px;
    border: 1px dashed #b9cbc6;
    border-radius: 20px;
    color: var(--muted);
    background: white;
    text-align: center;
    font-weight: 800;
}
.empty-state.is-visible { display: block; }

.toast {
    position: fixed;
    left: 50%;
    bottom: 28px;
    z-index: 200;
    min-width: 280px;
    max-width: calc(100% - 32px);
    padding: 14px 18px;
    border-radius: 14px;
    color: white;
    background: #102721;
    box-shadow: 0 18px 40px rgba(0,0,0,.24);
    font-weight: 800;
    text-align: center;
    opacity: 0;
    transform: translate(-50%, 16px);
    pointer-events: none;
    transition: opacity .2s ease, transform .2s ease;
}
.toast.is-visible { opacity: 1; transform: translate(-50%, 0); }

.footer {
    /*padding: 28px 20px;*/
    /*color: #212529 !important;*/
    background: #12201d;
    /*text-align: center;*/
    font-size: 14px;
}







#mainSearchForm {position: relative;top: -54px;height:1px;}
#mainSearchForm .topsearch.search-input {background:#FFFFFF !important;}


@property --angle {
    syntax: '<angle>';
    initial-value: 0deg;
    inherits: false;
}

.ai-card {
    position: relative;
    border-radius: 24px;
    isolation: isolate;
}

/* 선명한 컬러 라인 */
.ai-card::after {
    content: '';
    position: absolute;
    inset: -2px;
    z-index: -1;
    border-radius: 26px;
    padding: 8px;

    background: conic-gradient(
            from var(--angle),
            #ff4545,
            #00ff99,
            #006aff,
            #ff0095,
            #ff4545
    );

    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    mask-composite: exclude;
    display: none;
}

/* 넓게 번지는 글로우 */
.ai-card::before {
    content: '';
    position: absolute;
    inset: -12px;
    z-index: -2;
    border-radius: 34px;

    background: conic-gradient(
            from var(--angle),
            #ff4545,
            #00ff99,
            #006aff,
            #ff0095,
            #ff4545
    );

    filter: blur(22px);
    opacity: 0.65;
    transform: scale(1.03);
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    mask-composite: exclude;
    display: none;
}



/*.cardlist {*/
/*  grid-template-columns: repeat(3, minmax(0, 1fr));*/
/*}*/

@keyframes spin {
    to {
        --angle: 360deg;
    }
}





.movebtn {top: -47px;width: 50px !important;height: 50px !important;min-width:50px !important;min-height:50px !important;align-content: space-around;opacity: 0.7;}
.cardtitle {overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;width: 100%;min-width: 0;max-height:24px;}


.hero.recruit-status-hero {
    min-height: auto;
    max-height: none;
}

.recruit-status-hero .hero-inner {
    min-height: auto;
    padding: 18px 0 16px;
}

.status-cardlist-title {
    margin-bottom: 7px;
    color: #fff;
    font-size: 18px;
    font-weight: 800;
}

.status-summary-card {
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,.92);
    border-radius: 9px;
    color: #fff;
    background: rgba(255,255,255,.18);
    min-height:94px;
    max-height: none;
}

.min-width-0 {
    min-width: 0;
}

.status-summary-link {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    color: #fff;
    border: 1px solid rgba(255,255,255,.7);
}

.status-summary-title {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.2;
}

.status-badge-new {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: 1px 10px;
    border-radius: 999px;
    color: #fff;
    background: #d67474;
    font-size: 14px;
    font-weight: 800;
}

.subscription-card {
    display: grid;
    grid-template-columns: minmax(170px, .3fr) minmax(0, 1fr);
    gap: 14px;
    overflow: hidden;
}

.subscription-card > div {
    min-width: 0;
}

.subscription-name {
    font-size: 22px;
    font-weight: 900;
    line-height: 1.05;
}

.subscription-period {
    font-size: 14px;
    font-weight: 700;
}

.subscription-options {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 4px;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    min-width: 0;
    padding-bottom: 2px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.subscription-options::-webkit-scrollbar {
    display: none;
}

.subscription-option-pill {
    flex: 0 0 auto;
    min-height: 25px;
    padding: 3px 10px;
    border: 1px solid rgba(255,255,255,.78);
    border-radius: 7px;
    color: #133b34;
    background: #fff;
    font-size: 14px;
    font-weight: 800;
    white-space: nowrap;
    cursor: pointer;
    transition: color .15s ease, background .15s ease, border-color .15s ease;
}

.subscription-option-pill.active {
    color: #fff;
    border-color: #001f19;
    background: #001f19;
}

.subscription-counts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 4px;
    margin-top: 7px;
    padding: 4px 10px;
    border: 1px solid rgba(255,255,255,.72);
    border-radius: 5px;
    font-size: 14px;
    font-weight: 800;
    text-align: center;
}

.subscription-counts span {
    color: #101f1c;
    background: #fff;
    border-radius: 999px;
    padding: 0 8px;
}

.recruit-mode-tabs {
    display: flex;
    justify-content: center;
    margin-top: 44px;
    margin-bottom: 28px;
}

.recruit-mode-tabs .mode-tab-wrap {
    display: grid;
    grid-template-columns: repeat(2, minmax(160px, 1fr));
    width: min(440px, 100%);
    padding: 1px;
    border: 1px solid #ddd;
    border-radius: 999px;
    background: #f5f5f5;
}

.recruit-mode-tabs .mode-tab {
    height: 54px;
    border-radius: 999px;
    color: #222;
    font-size: 18px;
    font-weight: 800;
    text-decoration: none;
}

.recruit-mode-tabs .mode-tab.active {
    color: #fff;
    background: #000;
}
/* end: shared hero.css */

/* begin: shared progress.css */
.progress-wrap{border:1px solid #e6e9ec;border-radius:14px;padding:12px;position:fixed;bottom:83px;width: 880px;background: #FFFFFF;z-index:999;}
.progress-head{display:flex;justify-content:space-between;align-items:center;font-weight:700}
.progress-bar{height:10px;background:#2a2f45;border-radius:999px;overflow:hidden;margin-top:8px}
.progress-fill{height:100%;background:#2a6df4;border-radius:999px;transition:width .2s ease}
.progress-hint{margin:0 !important;font-size:14px;opacity:.85}


/* PC에서만 표시 */
.pc-only {display: none;}
.thermo {width: 18px;height: 260px;background: #2a2f45;border-radius: 8px 8px 0 0;position: relative;/*overflow: hidden;*/border: 1px solid #3a3f5c;margin:0 auto;border-bottom:0;z-index:997;bottom:-2px}
.thermo-fill {position: absolute;bottom: -1px;width: 100%;height: 0;background: linear-gradient(to top,#2a6df4,#6aa9ff);transition: height 0.3s ease;}
.thermo-bulb{width:34px;height:34px;background:#2a2f45;border-radius:50%;border:1px solid #3a3f5c;margin: -6px auto 0;position:relative;overflow:hidden;}
.thermo-bulb-fill{position:absolute;inset:4px;background:#2a6df4;border-radius:50px !important;transform:scale(1);transition:transform .3s ease;}
.thermo-text{text-align:center;margin-top:10px;font-size:13px;font-weight:700;}
.thermo-fill.done {animation: pop 0.35s ease;border-radius: 8px  8px 0 0;}
@keyframes pop {0% { transform: scaleY(1); }50% { transform: scaleY(1.05); }100% { transform: scaleY(1); }}


.progress-wrap.mobile-only {bottom: 78px !important;border-bottom: 0;border-radius: 14px 14px 0 0 !important;}
.footer {position: fixed !important;bottom: 0 !important;}
#progressNextHint {position: absolute;}
#extraDocsGuide {cursor: pointer;position: relative;left: -14px;bottom: 72px;background-color: #000000 !important;}
#extraDocsGuide:after {content: '';position: absolute;bottom: 0;left: 50%;width: 0;height: 0;border: 20px solid transparent;border-top-color: #000000;border-bottom: 0;border-left: 0;margin-left: -10px;margin-bottom: -20px;}
/* end: shared progress.css */

/* begin: shared recruit.css */
:root { --bd:#e5e7eb; --txt:#111827; --muted:#6b7280; --bg:#fff; --chip:#f3f4f6; }
#regionCard, #hopeCard, #insuranceCard{border:0px !important;font-size:14px !important;}
#clearBtn, #hopeClearBtn {font-size:14px !important;}
.wrap { max-width: 980px;padding:0; }
.wrap .card { background:var(--bg); border:1px solid var(--bd); border-radius:14px; box-shadow:0 1px 2px rgba(0,0,0,.04); }
.wrap .hd { padding:8px 18px; border-bottom:1px solid var(--bd); }
.wrap .title { font-size:18px; font-weight:700; margin:0 0 6px; }
.wrap .sub { margin:0; color:var(--muted); font-size:13px; }
.wrap .toolbar { display:flex; gap:10px; flex-wrap:wrap; padding:14px 18px; border-bottom:1px solid var(--bd); align-items:center; }
.wrap .btn { border:1px solid var(--bd); background:#fff; border-radius:10px; padding:8px 10px; cursor:pointer; }
.wrap .btn:hover:not(label) { background:#f8fafc; }
.wrap .pill { display:inline-flex; gap:8px; align-items:center; padding:8px 10px; border:1px solid var(--bd); border-radius:10px; background:#fff; }
.wrap .pill input { width:16px; height:16px; }
.wrap .grid { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:12px; padding:18px; }
.wrap .idsgrid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:12px; padding:18px; }

.wrap .chip-x {background: transparent;}
.wrap .group { border:1px solid var(--bd); border-radius:12px; padding:12px; }
.wrap .group-h { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; gap:10px; }
.wrap .group-title { font-weight:700; font-size:14px; margin:0; }
.wrap .mini { font-size:14px; color:var(--muted); border:1px solid var(--bd); background:#fff; padding:6px 8px; border-radius:10px; cursor:pointer; white-space:nowrap; }
.wrap .mini:hover { background:#f8fafc; }
.wrap .opts { display:grid; grid-template-columns: 1fr 1fr; gap:8px 10px; }
.wrap .opt { display:flex; align-items:center; gap:8px; padding:8px 10px; border-radius:10px; background:#fff; border:1px solid var(--bd); }
.wrap .opt:hover:not(label) { background:#f9fafb; }
.wrap .opt input { width:16px; height:16px; }
.wrap .ft { border-top:1px solid var(--bd); padding:14px 18px;width: calc(calc(100vw / 2) - 60px);max-width: calc(calc(100vw / 2) - 60px);}
.wrap .chips { display:flex; flex-wrap:wrap; gap:8px; }
#selectedChipssub .chip-x, #selectedChips .chip-x {display:none;}
#submissionChips .chip, #exposureChips .chip, #selectedChipssub .chip, #selectedChips .chip, #hopehistory .chip, #hopeChips .chip, .arehistory .chip { background:var(--chip); border:1px solid var(--bd); border-radius:0.25rem; padding:2px 12px; font-size:14px;height: 28px;line-height: 24px;margin-right:5px;}
.wrap .chip { background:var(--chip); border:1px solid var(--bd); border-radius:10px; padding:2px 12px; font-size:14px;height: 28px;line-height: 24px;}
.wrap .count { color:var(--muted); font-size:14px; margin-top:8px; }
input[type=text].cancel ,input[type=password].cancel, textarea.cancel,select.cancel {-webkit-box-shadow:0 0 5px #FF0000;-moz-box-shadow:0 0 5px #FF0000;box-shadow:0 0 5px #FF0000;border:1px solid #FF0000 !important;}
.error-msg {margin:-5px 5px;color: #d32f2f;}
input[type=text] + .error-msg{display: none}
input[type=text].cancel + .error-msg{display: block}
.wrap textarea {width:100%;resize:none;padding:10px 12px;line-height:1.5;border:1px solid #e5e7eb;font-family:inherit;}
.wrap textarea:focus {outline:none;border-color:#6366f1;}
.helper {display:flex;justify-content:space-between;margin-top:6px;font-size:14px;color:#6b7280;}
.filewrap .imggroup #resumeviewbtn {position:relative;bottom: 59px;padding:5px 18px;}
.filename {height:28px !important;padding-top:0px !important;}
.content {margin-top: 1rem !important;padding-top: 0 !important;padding-bottom: 0px !important;}
.accordion {margin-top: 1rem !important;padding-bottom: 0 !important;padding-top: 0 !important;}

input::placeholder {font-weight: bold;opacity: 0.5;color: #cccccc !important;}
input::-moz-placeholder {color:#cccccc !important;opacity: 1;}
.nowcompaybtn.dropdown-toggle::after {display: none;}
.accordion-button:not(.collapsed) {border-top:0px !important;}
.accordion-button.collapsed {border:0px !important;}

.offcanvas {height:80% !important;}
.offcanvas:not(.show):not(.showing) {visibility: hidden !important;pointer-events: none !important;}
.offcanvas.show,
.offcanvas.showing {visibility: visible !important;pointer-events: auto !important;}
.offcanvas-backdrop:not(.show) {pointer-events: none !important;}
.offcanvas .offcanvas-body div, .offcanvas .offcanvas-body h6 {padding-left:0 !important;}
.offcanvas-backdrop.fade.show {z-index:9997 !important;}
.offcanvas-body .card {box-shadow: none !important;}

.quick-floating-menu {display: none !important;}

input[type="date"].mobile-date-input {
    position: relative;
    height: 55px;
    min-height: 55px;
    line-height: normal;
    padding: 0 42px 0 12px;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 22px 22px;
    -webkit-appearance: none;
    appearance: none;
}

input[type="date"].mobile-date-input::-webkit-date-and-time-value {
    display: flex;
    align-items: center;
    height: 55px;
    line-height: 55px;
    text-align: left;
}

input[type="date"].mobile-date-input::-webkit-calendar-picker-indicator {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}
/* end: shared recruit.css */

/* begin: shared resume.css */
:root { --bd:#e5e7eb; --txt:#111827; --muted:#6b7280; --bg:#fff; --chip:#f3f4f6; }
main{padding-top:0 !important;}
#regionCard, #hopeCard, #insuranceCard{border:0 !important;font-size:14px !important;}
#clearBtn, #hopeClearBtn {font-size:14px !important;}
.accordion {margin-top:1rem !important;padding-bottom:0 !important;padding-top:0 !important;}

.wrap { max-width: 980px;padding:0; }
.wrap .card { background:var(--bg); border:1px solid var(--bd); border-radius:14px; box-shadow:none !important; padding-left:0;}
.wrap .hd { padding:8px 18px; border-bottom:1px solid var(--bd); }
.wrap .title { font-size:18px; font-weight:700; margin:0 0 6px; }
.wrap .sub { margin:0; color:var(--muted); font-size:13px; }
.wrap .toolbar { display:flex; gap:10px; flex-wrap:wrap; padding:14px 18px; align-items:center; }
.wrap .btn { border:1px solid var(--bd); background:#fff; border-radius:10px; padding:8px 10px; cursor:pointer; }
.wrap .btn:hover:not(label) { background:#f8fafc; }
.wrap .pill { display:inline-flex; gap:8px; align-items:center; padding:8px 10px; border:1px solid var(--bd); border-radius:10px; background:#fff; }
.wrap .pill input { width:16px; height:16px; }
.wrap .grid { display:grid; gap:12px; }
.wrap .idsgrid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:12px; padding:18px; }

.wrap .chip-x {background: transparent;}
.wrap .group { border:1px solid var(--bd); border-radius:12px; padding:12px; }
.wrap .group-h { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; gap:10px; }
.wrap .group-title { font-weight:700; font-size:14px; margin:0; }
.wrap .mini { font-size:14px; color:var(--muted); border:1px solid var(--bd); background:#fff; padding:6px 8px; border-radius:10px; cursor:pointer; white-space:nowrap; }
.wrap .mini:hover { background:#f8fafc; }
.wrap .opts { display:grid; grid-template-columns: 1fr 1fr; gap:8px 10px; }
.wrap .opt { display:flex; align-items:center; gap:8px; padding:8px 10px; border-radius:10px; background:#fff; border:1px solid var(--bd); }
.wrap .opt:hover:not(label) { background:#f9fafb; }
.wrap .opt input { width:16px; height:16px; }
.wrap .ft { border-top:1px solid var(--bd); padding:14px 18px;max-width: calc(calc(100vw / 2) - 60px);}
.wrap .chips { display:flex; flex-wrap:wrap; gap:8px; }
#selectedChipssub .chip-x, #selectedChips .chip-x {display:none;}
#selectedChipssub .chip, #selectedChips .chip, #hopehistory .chip, #hopeChips .chip, .arehistory .chip { background:var(--chip); border:1px solid var(--bd); border-radius:0.25rem; padding:2px 12px; font-size:14px;height: 28px;line-height: 24px;margin-right:5px;}
.wrap .chip { background:var(--chip); border:1px solid var(--bd); border-radius:10px; padding:2px 12px; font-size:14px;height: 28px;line-height: 24px;}
.wrap .count { color:var(--muted); font-size:14px; margin-top:8px; }
input[type=text].cancel ,input[type=password].cancel, textarea.cancel,select.cancel {-webkit-box-shadow:0 0 5px #FF0000;-moz-box-shadow:0 0 5px #FF0000;box-shadow:0 0 5px #FF0000;border:1px solid #FF0000 !important;}
.error-msg {margin:-5px 5px;color: #d32f2f;}
input[type=text] + .error-msg{display: none}
input[type=text].cancel + .error-msg{display: block}
.wrap textarea {width:100%;resize:none;padding:10px 12px;line-height:1.5;border:1px solid #e5e7eb;font-family:inherit;}
.wrap textarea:focus {outline:none;border-color:#6366f1;}
.helper {display:flex;justify-content:space-between;margin-top:6px;font-size:14px;color:#6b7280;}
.filewrap .imggroup #resumeviewbtn {position:relative;bottom: 59px;padding:5px 18px;}
.filename {height:28px !important;padding-top:0px !important;}
/*.btn:hover:not(.bg-green-main, .badge.btn) {background-color:transparent !important;color:unset}*/

input::placeholder {font-weight: bold;opacity: 0.5;color: #cccccc !important;}
input::-moz-placeholder {color:#cccccc !important;opacity: 1;}
.nowcompaybtn.dropdown-toggle::after {display: none;}
.accordion-button:not(.collapsed) {border:0px !important;}
.accordion-button.collapsed {border:0px !important;}

.offcanvas:not(.show):not(.showing) {visibility: hidden !important;pointer-events: none !important;}
.offcanvas.show,
.offcanvas.showing {visibility: visible !important;pointer-events: auto !important;}
.offcanvas-backdrop:not(.show) {pointer-events: none !important;}

.pdf-download-bar {display: flex;justify-content: flex-end;align-items: center;margin-bottom: 12px;}
.pdf-download-btn {min-width: 128px;}

/*
 * 이력서 상세 기본정보 영역의 증명사진 반응형 처리.
 * 기존에는 증명사진에 min-width:238px가 직접 지정되어 있어 저해상도/좁은 모바일 화면에서
 * 오른쪽으로 밀리거나 텍스트를 덮는 문제가 발생했다.
 */
.resume-basic-info-wrap {display: flex;flex-direction: row;align-items: flex-start;gap: 16px;}
.resume-basic-text {flex: 1 1 auto;min-width: 0;}
.resume-photo-wrap {flex: 0 0 auto;display: flex;justify-content: center;align-items: flex-start;padding-top: 4px;}
.resume-photo-img {width: clamp(96px, 26vw, 238px);height: clamp(96px, 26vw, 238px);max-width: 100%;object-fit: cover;border-radius: 50%;border: 1px solid #e5e7eb;}

ul.list-group.w-100 li:hover:not(.itembuyitem, #addrecuit ul li) {background:#FFFFFF !important;color:#212529 !important;}
.authorize-support-check{width:26px !important;height:26px !important;border-radius:13px !important;}
@media print {
    .pdf-download-bar,
    .footer,
    .mobile-footer,
    .subheader,
    header,
    nav,
    .footernextbtn,
    .footernavibtn,
    .footerfinalbtns,
    .floating-btn,
    .floating-button,
    .floating-menu,
    .fixed-bottom,
    .sticky-bottom,
    [class*="floating"],
    [class*="quick"],
    [style*="position: fixed"],
    [style*="position:fixed"] {display: none !important;}
    body {background: #fff !important;}

    main,
    .container,
    .container-lg,
    .main-card,
    .card,
    .card-body {width: 100% !important;max-width: 100% !important;margin: 0 !important;padding: 0 !important;border: 0 !important;box-shadow: none !important;}
    .accordion-collapse {display: block !important;height: auto !important;visibility: visible !important;}
    .accordion-button::after {display: none !important;}
}

.offcanvas-backdrop.show {z-index:9997;}

.job-search-status-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.job-search-status-guide {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #6b7280;
    line-height: 1.45;
}

.job-search-status-guide .material-symbols-outlined {
    color: #451049;
    font-size: 20px;
}

.job-search-status-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}

.job-search-status-card {
    position: relative;
    display: flex;
    align-items: flex-start;
    min-height: 132px;
    gap: 12px;
    padding: 18px 16px;
    border: 1px solid #d9e2e0;
    border-radius: 8px;
    background: #fff;
    color: #111827;
    cursor: pointer;
    transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.job-search-status-card:hover {
    border-color: #70bcb2;
    box-shadow: 0 8px 22px rgba(0, 128, 114, .08);
    transform: translateY(-1px);
}

.job-search-status-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: #eef8f6;
    color: #451049;
    font-size: 23px;
}

.job-search-status-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-right: 22px;
}

.job-search-status-title {
    font-weight: 700;
    line-height: 1.3;
}

.job-search-status-desc {
    color: #6b7280;
    font-size: 14px;
    line-height: 1.45;
}

.job-search-status-check {
    position: absolute;
    top: 14px;
    right: 14px;
    color: #451049;
    font-size: 22px;
    opacity: 0;
    transform: scale(.82);
    transition: opacity .18s ease, transform .18s ease;
}

.job-search-status-card:has(.job_search_status:checked[type="radio"]) {
    border-color: #451049;
    background: #f2fbf9;
    box-shadow: 0 10px 28px rgba(0, 128, 114, .12);
}

.job-search-status-card:has(.job_search_status:checked[type="radio"]) .job-search-status-check {
    opacity: 1;
    transform: scale(1);
}

.job-search-status-card:has(.job_search_status:checked[type="radio"]) .job-search-status-icon {
    background: #451049;
    color: #fff;
}

.job-search-status-section.is-disabled {
    opacity: .58;
}

.job-search-status-section.is-disabled .job-search-status-guide .material-symbols-outlined,
.job-search-status-section.is-disabled .job-search-status-icon {
    color: #9ca3af;
}

.job-search-status-section.is-disabled .job-search-status-card {
    border-color: #e5e7eb;
    background: #f8f9fa;
    box-shadow: none;
    cursor: not-allowed;
    pointer-events: none;
    transform: none;
}

.job-search-status-section.is-disabled .job-search-status-card:has(.job_search_status:checked[type="radio"]) {
    border-color: #d1d5db;
    background: #f3f4f6;
    box-shadow: none;
}

.job-search-status-section.is-disabled .job-search-status-card:has(.job_search_status:checked[type="radio"]) .job-search-status-icon {
    background: #e5e7eb;
    color: #9ca3af;
}

.job-search-status-section.is-disabled .job-search-status-check {
    opacity: 0;
}

.career-inline-card {
    border: 1px solid #d9e2e0;
    border-radius: 8px;
    background: #fbfdfd;
    padding: 18px;
}

.career-inline-panel .form-control {
    background-color: #fff;
}

.career-undo-delete-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-height: 34px;
}

.career-undo-delete-btn .material-symbols-outlined {
    font-size: 18px;
}

.career-inline-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.career-inline-list:empty {
    display: none;
}

.career-inline-panel .experience-added-row {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fff;
    padding: 10px 12px;
    cursor: pointer;
    transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

.career-inline-panel .experience-added-row:hover {
    border-color: #70bcb2;
    background: #f8fcfb;
}

.career-inline-panel .experience-added-row.is-editing {
    border-color: #451049;
    background: #f2fbf9;
    box-shadow: 0 8px 20px rgba(0, 128, 114, .1);
}

.experience-row-actions {
    flex: 0 0 auto;
}

.experience-row-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
}

.experience-row-actions .btn:hover:not(:disabled) {
    background: #eef8f6 !important;
    color: #451049 !important;
}

.experience-row-actions .material-symbols-outlined {
    font-size: 20px;
    line-height: 1;
}

.career-inline-panel .experience-display-industry,
.career-inline-panel .experience-display-company {
    font-weight: 600;
}

.career-entry-control {
    transition: opacity .18s ease, filter .18s ease;
}

.career-entry-control.is-disabled {
    opacity: .55;
    filter: grayscale(.2);
}

.career-entry-control.is-disabled .career-inline-card {
    background: #f8f9fa;
}

.career-entry-control.is-disabled,
.career-entry-control.is-disabled * {
    cursor: not-allowed !important;
}

#experiencehistory tr {
    cursor: pointer;
}

#experiencehistory tr:hover {
    background-color: #f2fbf9;
}

.candidate-document-guide {width: 100%;min-height: 170px;border-radius: 18px;background: linear-gradient(180deg, #f4fffb 0%, #ffffff 100%);box-shadow: 0 14px 32px rgba(0, 128, 114, .1);}
.candidate-document-guide-infobox {height:100% !important;flex:0.7;}
.candidate-document-guide-icon {width: 58px;height: 58px;border-radius: 18px;background: #451049;color: #fff;box-shadow: 0 10px 20px rgba(0, 128, 114, .22);}
.candidate-document-guide-icon .material-symbols-outlined {font-size: 31px;}
.candidate-document-guide-text {color: #111827;font-size: 21px;line-height: 1.42;font-weight: 800;letter-spacing: 0;}
.candidate-document-guide-text strong {color: #451049;}
/* end: shared resume.css */

/* begin: shared resumefile.css */
.filewrap { width:100%; max-width: 1100px; margin:0 auto; display:grid; gap:12px; padding-left:20px !important; padding-right:20px !important;}
.filewrap .filecard { padding:14px; }
.filewrap .filerow { display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; align-items:center;margin-bottom:10px; }
.filewrap .colorpalet {display: flex;align-items:center;}
.filewrap .colorpalet span {width: 53px;}
.filewrap .colorpalet label {min-width:45px;width: 66px;text-align: center;}
.filewrap .colorpalet input[type="checkbox"] {margin:0 10px;}
.filewrap .colorpalet #chkGray {margin: 0 5px 0 0;}
.filewrap .colorpalet .chkGraytxt {padding:0;}
.filewrap .filerow.disabled {display: none;}
.filewrap .colorpalet.disabled {display: none;}
.filewrap button {background:#2a6df4; color:white; border:none; border-radius:0.25rem;padding:2px 12px; cursor:pointer;font-size:14px;}
.filewrap button.secondary{ background:#2a2f45; }
.filewrap button.danger{ background:#d84b4b; }
.filewrap button:disabled{ opacity:.5; cursor:not-allowed; }

.filewrap input[type="range"]{ width:180px;}
.filewrap label{ font-size:13px; opacity:.9; }
.filewrap .pill { padding:4px 8px;font-size:14px; }
.filewrap .stage {overflow:hidden; height: 520px; display:flex; align-items:center; justify-content:center;position: relative; display: none;}
.filewrap .stageInner { width: 100%; height: 100%; display:flex; align-items:center; justify-content:center; }
.filewrap #cropImg { max-width: 100%; max-height: 520px; display:none; }
.filewrap #fabricCanvas { display:none; border-radius:12px; }
.filewrap .imggroup {width:177px;height:236px;margin-top:0px;padding-top:0px !important;}
.filewrap .imgbox {width:177px;height:236px;margin-top:0px;padding-top:0px !important;}
.filewrap .imgbox #previewImageBox{margin-top:0px;padding-top:0px !important;}
.filewrap .imggroup .myimg {width:100%}
.filewrap .imggroup #resumeimg {position:relative;bottom: 59px;padding:5px 18px;}
/* end: shared resumefile.css */

/* begin: shared sublayout.css */
body{background: #f6f6f6;}
.content{background: #fff;padding-left:10px;padding-right:10px !important;}
.container.container-lg {padding-left:0 !important;padding-right:0 !important;}
.container.container-lg > .card {box-shadow:none !important;margin-top:22px !important;}
.container.container-lg .card {border-radius: 0 !important;}
.container.container-lg .accordion {margin-top:10px !important;}
.quick-floating-menu {display: none !important;}
.container,footer {margin-top:1rem;}
/* end: shared sublayout.css */

/* begin: shared timeline.css */
.timeline {position: relative;padding: 0;}
.timeline > div::before, .timeline > div::after {display: table;content: "";}
.timeline .subtimeline:before {position: absolute;top: 0;bottom: 0;left: 31px;width: 4px;margin: 0;content: "";background-color: #dee2e6;height:100%;top:30px;}
.timeline > div {position: relative;margin-right: 10px;margin-bottom: 15px;}
.timeline > div > .timeline-item {position: relative;padding: 0;margin-top: 0;margin-right: 15px;margin-left: 60px;color: #212529;background-color: #dee2e6;}
.timeline > div > .timeline-item > .time {float: right;padding: 10px;font-size: 14px;color: #dee2e6;}
.timeline > div > .timeline-item > .timeline-header {padding: 10px;margin: 0;font-size: 16px;line-height: 1.1;color: #dee2e6;border-bottom: 1px solid #dee2e6;}
.timeline > div > .timeline-item > .timeline-header > a {font-weight: 600;text-decoration: none;}
.timeline > div > .timeline-item > .timeline-body, .timeline > div > .timeline-item > .timeline-footer {padding: 10px;}
.timeline > div > .timeline-item > .timeline-body > img {margin: 10px;}
.timeline > div > .timeline-item > .timeline-body > dl, .timeline > div > .timeline-item > .timeline-body ol, .timeline > div > .timeline-item > .timeline-body ul {margin: 0;}
.timeline > div .timeline-icon {position: absolute;top: 0;left: 18px;width: 30px;height: 30px;font-size: 16px;line-height: 30px;text-align: center;background-color: #dee2e6;border-radius: 50%;}
.timeline > .time-label > span {display: inline-block;padding: 5px;font-weight: 600;background-color: #dee2e6;}
.timeline-inverse > div > .timeline-item {background-color: #dee2e6;border: 1px solid #dee2e6;}
.timeline-inverse > div > .timeline-item > .timeline-header {border-bottom-color: #dee2e6;}
/* end: shared timeline.css */

/* begin: common layout/header.html styles */
@charset "utf-8";

/* Source: templates/gajobv2/layout/header.html */
/* begin: base.css migrated from shared root */
@charset "utf-8";

/* Web Font */
@font-face {
    font-family: 'Pretendard';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('/assets/css/bootstrap/fonts/Pretendard-Medium.woff2') format('woff2'),
    url('/assets/css/bootstrap/fonts/Pretendard-Medium.woff') format('woff');
}
@font-face {
    font-family: 'PretendardThin';font-style: normal;font-weight: 300;
    font-display: swap;
    src: url('/assets/css/bootstrap/fonts/Pretendard-ThinLight.woff2') format('woff2'),
    url('/assets/css/bootstrap/fonts/Pretendard-Thin.woff') format('woff');
}
@font-face {
    font-family: 'PretendardLight';font-style: normal;font-weight: 300;
    font-display: swap;
    src: url('/assets/css/bootstrap/fonts/Pretendard-Light.woff2') format('woff2'),
    url('/assets/css/bootstrap/fonts/Pretendard-Light.woff') format('woff');
}
@font-face {
    font-family: 'PretendardMedium';font-style: normal;font-weight: 300;
    font-display: swap;
    src: url('/assets/css/bootstrap/fonts/Pretendard-Medium.woff2') format('woff2'),
    url('/assets/css/bootstrap/fonts/Pretendard-Medium.woff') format('woff');
}


/* Reset style */
* {word-break: keep-all; word-wrap: break-word; box-sizing: border-box; -webkit-box-sizing: border-box;}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p,
blockquote, pre, a, abbr, acronym, address, big, cite, code, del, em, font, img, ins, q, s, small, strike, strong, sub, sup,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, thead, tbody, tfoot, tr, th, td, input {margin: 0; padding: 0;}

blockquote, button, fieldset, iframe {border: 0;}
cite, em, u, address, i {font-style: normal;}
img {border: 0; vertical-align: top;}
legend {position: absolute; left: -9999px; top: -9999px;}
caption {text-indent: -9999px; font-size: 0;}
li {list-style: none;}
table {width: 100%; table-layout: fixed; border-collapse: collapse;}
a:link, a:visited, a:hover, a:active {text-decoration: none;}

/* Blind 숨김처리 */
.blind {position: absolute; left: -9999px; top: -9999px;}
.skip {position: absolute; left: -9999px; top: -9999px;}

button {cursor: pointer;}

/* 정렬 */
.al_c {text-align: center;}
.al_r {text-align: right;}

.vat {vertical-align: top;}
.vam {vertical-align: middle;}

.cursorpointer, .menubtn {cursor:pointer}

/* 가로길이 */
.w_full {width: 100% !important;}
.w_half {width: 50% !important;}
.w_quarter {width: 25% !important;}
.w_10 {width: 10px !important;}
.w_12 {width: 3rem !important;}
.w_20 {width: 20px !important;}
.w_25 {width: 25px !important;}
.w_30 {width: 30px !important;}
.w_50 {width: 50px !important;}
.w_55 {width: 55px !important;}
.w_60 {width: 60px !important;}
.w_75 {width: 75px !important;}
.w_80 {width: 80px !important;}
.w_100 {width: 100px;min-width: 100px;}
.w_120 {width: 120px !important;}
.w_125 {width: 125px !important;}
.w_130 {width: 130px !important;}
.w_150 {width: 150px !important;}
.w_200 {width: 200px !important;}
.w_250 {width: 250px !important;}
.w_300 {width: 300px !important;}
.w_350 {width: 350px !important;}
.w_500 {width: 500px !important;}

.h_1 {height: 1px !important;}
.h_10 {height: 10px !important;}
.h_12 {height: 3rem !important;}
.h_15 {height: 15px !important;}
.h_18 {height: 18px !important;}
.h_20 {height: 20px !important;}
.h_24 {height: 24px !important;}
.h_25 {height: 25px !important;}
.h_26 {height: 26px !important;}
.h_30 {height: 30px !important;}
.h_34 {height: 34px !important;}
.h_35 {height: 35px !important;}
.h_40 {height: 40px !important;}
.h_43 {height: 43px !important;}
.h_45 {height: 45px !important;}
.h_48 {height: 48px !important;}
.h_50 {height: 50px !important;}
.h_54 {height: 54px !important;}
.h_55 {height: 55px !important;}
.h_60 {height: 60px !important;}
.h_64 {height: 64px !important;}
.h_80 {height: 80px !important;}
.h_120 {height: 120px !important;}
.h_200 {height: 200px !important;}
.h_240 {height: 240px !important;}
.h_300 {height: 300px !important;}
.h_350 {height: 350px !important;}
.h_400 {height: 400px !important;}

/* 여백 */
.mt0 {margin-top: 0 !important;}
.mt10 {margin-top: 10px !important;}
.mt40 {margin-top: 40px !important;}
.pb10 {padding-bottom: 10px !important;}
.mr5 {margin-right: 5px !important;}
.mr10 {margin-right: 10px !important;}
.mr15 {margin-right: 15px !important;}
.mr20 {margin-right: 20px !important;}
.mr30 {margin-right: 30px !important;}
.ml5 {margin-left: 5px !important;}
.ml10 {margin-left: 10px !important;}
.ml15 {margin-left: 15px !important;}
.ml20 {margin-left: 20px !important;}
.pt2 {padding-top: 2px !important;}
.pt20 {padding-top: 20px !important;}

.mt_15 {margin-top: 15% !important;}
.mb_15 {margin-bottom: 15% !important;}

.switchery{background-color:#fff;border:1px solid #dfdfdf !important;border-radius:20px !important;cursor:pointer !important;display:inline-block !important;height:30px !important;position:relative !important;vertical-align:middle !important;width:50px !important;-moz-user-select:none !important;-khtml-user-select:none !important;-webkit-user-select:none !important;-ms-user-select:none !important;user-select:none !important;box-sizing:content-box !important;background-clip:content-box !important}
.form-check-input.switchery:checked {background-color: rgb(100, 189, 99) !important;border-color: rgb(100, 189, 99) !important;}
.switchery>small{background:#fff;border-radius:100%;box-shadow:0 1px 3px rgba(0,0,0,0.4);height:30px;position:absolute;top:0;width:30px}
.switchery-small{border-radius:20px;height:20px;width:33px}
.switchery-small>small{height:20px;width:20px}
.switchery-large{border-radius:40px;height:40px;width:66px}
.switchery-large>small{height:40px;width:40px}

input::placeholder {font-weight: normal !important;opacity: 0.5;color: #cccccc !important;}
input::-moz-placeholder {font-weight: normal !important;;color:#cccccc !important;opacity: 1;}
input:hover::placeholder {color: #451049 !important;}
input:hover::-moz-placeholder {color: #451049 !important;opacity: 1;}

.t-10 {top:10px !important;}
.t-15 {top:15px !important;}
.t-20 {top:20px !important;}
.t-25 {top:25px !important;}
.t-30 {top:30px !important;}
.t-35 {top:35px !important;}
.t-40 {top:40px !important;}
.t-45 {top:45px !important;}
.t-50 {top:50px !important;}

.r-10 {right:10px !important;}
.r-20 {right:20px !important;}
.r-30 {right:30px !important;}
.r-40 {right:40px !important;}
.r-50 {right:50px !important;}

.talksendbtn {top:-50px;right:7px;}

textarea::placeholder {
    color: #a0a0a0;
    opacity: 1;
}

.ga-empty-state {
    width: min(100%, 780px);
    min-height: 92px;
    margin: 56px auto;
    padding: 24px 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #333;
    border-radius: 16px;
    background: #f1f1f1;
    color: #111;
    font-size: 18px;
    font-weight: 600;
    text-align: center;
}

.ga-empty-state-sm {
    min-height: 72px;
    margin: 24px auto;
    font-size: 16px;
}
/* end: base.css migrated from shared root */

/* begin: colors.css migrated from shared root */
.bg-transparent {background-color: transparent !important;}
.text-transparent {color: transparent !important;}
.bg-black {background-color: #000 !important;}
.text-black-900 {color: #12211e !important;}
.text-black {color: #000 !important;}
.bg-white {background-color: #fff !important;}
.text-white {color: #fff !important;}
.bg-gray-50 {background-color: #f9fafb !important;}
.text-gray-50 {color: #f9fafb !important;}
.bg-gray-100 {background-color: #f3f4f6 !important;}
.text-gray-100 {color: #f3f4f6 !important;}
.bg-gray-200 {background-color: #e5e7eb !important;}
.text-gray-200 {color: #e5e7eb !important;}
.bg-gray-300 {background-color: #d1d5db !important;}
.text-gray-300 {color: #d1d5db !important;}
.bg-gray-400 {background-color: #9ca3af !important;}
.text-gray-400 {color: #afb5be !important;}
.bg-gray-500 {background-color: #6b7280 !important;}
.text-gray-500 {color: #6b7280 !important;}
.bg-gray-600 {background-color: #4b5563 !important;}
.text-gray-600 {color: #7C7C7C !important;}
.bg-gray-700 {background-color: #374151 !important;}
.text-gray-700 {color: #374151 !important;}
.bg-gray-800 {background-color: #1f2937 !important;}
.text-gray-800 {color: #1f2937 !important;}
.bg-gray-900 {background-color: #111827 !important;}
.text-gray-900 {color: #2D2D2D !important;}
.text-gray-footer {color: #989a9e !important;}
.text-gray-footer:hover {color: #FFFFFF !important;}
.bg-red-50 {background-color: #fef2f2 !important;}
.text-red-50 {color: #fef2f2 !important;}
.bg-red-100 {background-color: #fee2e2 !important;}
.text-red-100 {color: #fee2e2 !important;}
.bg-red-200 {background-color: #fecaca !important;}
.text-red-200 {color: #fecaca !important;}
.bg-red-300 {background-color: #fca5a5 !important;}
.text-red-300 {color: #fca5a5 !important;}
.bg-red-400 {background-color: #f87171 !important;}
.text-red-400 {color: #f87171 !important;}
.bg-red-500 {background-color: #ef4444 !important;}
.text-red-500 {color: #ef4444 !important;}
.bg-red-600 {background-color: #dc2626 !important;}
.text-red-600 {color: #dc2626 !important;}
.bg-red-700 {background-color: #b91c1c !important;}
.text-red-700 {color: #b91c1c !important;}
.bg-red-800 {background-color: #991b1b !important;}
.text-red-800 {color: #991b1b !important;}
.bg-red-900 {background-color: #7f1d1d !important;}
.text-red-900 {color: #7f1d1d !important;}
.bg-red-1000 {background-color: #FE746C !important;}
.text-red-1000 {color: #FE746C !important;}
.text-red-main {color: #d94141 !important;}
.bg-blue-50 {background-color: #eff6ff !important;}
.text-blue-50 {color: #eff6ff !important;}
.bg-blue-100 {background-color: #dbeafe !important;}
.text-blue-100 {color: #dbeafe !important;}
.bg-blue-200 {background-color: #bfdbfe !important;}
.text-blue-200 {color: #bfdbfe !important;}
.bg-blue-300 {background-color: #93c5fd !important;}
.text-blue-300 {color: #93c5fd !important;}
.bg-blue-400 {background-color: #60a5fa !important;}
.text-blue-400 {color: #60a5fa !important;}
.bg-blue-500 {background-color: #3b82f6 !important;}
.text-blue-500 {color: #3b82f6 !important;}
.bg-blue-600 {background-color: #2563eb !important;}
.text-blue-600 {color: #2563eb !important;}
.bg-blue-700 {background-color: #1d4ed8 !important;}
.text-blue-700 {color: #1d4ed8 !important;}
.bg-blue-800 {background-color: #1e40af !important;}
.text-blue-800 {color: #1e40af !important;}
.bg-blue-900 {background-color: #1e3a8a !important;}
.text-blue-900 {color: #1e3a8a !important;}
.bg-blue-1000 {background-color: #00b0f0 !important;}
.text-blue-1000 {color: #00b0f0 !important;}
.bg-blue-1001 {background-color: #0057c2 !important;}
.text-blue-1001 {color: #0057c2 !important;}
.bg-green-50 {background-color: #ecfdf5 !important;}
.text-green-50 {color: #ecfdf5 !important;}
.bg-green-100 {background-color: #d1fae5 !important;}
.text-green-100 {color: #d1fae5 !important;}
.bg-green-200 {background-color: #a7f3d0 !important;}
.text-green-200 {color: #a7f3d0 !important;}
.bg-green-300 {background-color: #6ee7b7 !important;}
.text-green-300 {color: #6ee7b7 !important;}
.bg-green-400 {background-color: #34d399 !important;}
.text-green-400 {color: #34d399 !important;}
.bg-green-500 {background-color: #10b981 !important;}
.text-green-500 {color: #10b981 !important;}
.bg-green-600 {background-color: #059669 !important;}
.text-green-600 {color: #059669 !important;}
.bg-green-700 {background-color: #047857 !important;}
.text-green-700 {color: #047857 !important;}
.bg-green-800 {background-color: #065f46 !important;}
.text-green-800 {color: #065f46 !important;}
.bg-green-900 {background-color: #064e3b !important;}
.text-green-900 {color: #064e3b !important;}
.text-blue-main {color: #6e96d5 !important;}
.bg-green-main {background-color: #451049 !important;}
.text-green-main {color: #451049 !important;}
.bg-yellow-50 {background-color: #fffbeb !important;}
.text-yellow-50 {color: #fffbeb !important;}
.bg-yellow-100 {background-color: #fef3c7 !important;}
.text-yellow-100 {color: #fae7d0 !important;}
.bg-yellow-100 {background: #fae7d0 !important;}
.bg-yellow-200 {background-color: #fde68a !important;}
.text-yellow-200 {color: #fde68a !important;}
.bg-yellow-300 {background-color: #fcd34d !important;}
.text-yellow-300 {color: #fcd34d !important;}
.bg-yellow-400 {background-color: #fbbf24 !important;}
.text-yellow-400 {color: #fbbf24 !important;}
.bg-yellow-500 {background-color: #f59e0b !important;}
.text-yellow-500 {color: #f59e0b !important;}
.bg-yellow-600 {background-color: #d97706 !important;}
.text-yellow-600 {color: #d97706 !important;}
.bg-yellow-700 {background-color: #b45309 !important;}
.text-yellow-700 {color: #b45309 !important;}
.bg-yellow-800 {background-color: #92400e !important;}
.text-yellow-800 {color: #92400e !important;}
.bg-yellow-900 {background-color: #78350f !important;}
.text-yellow-900 {color: #78350f !important;}
.bg-purple-50 {background-color: #f5f3ff !important;}
.text-purple-50 {color: #f5f3ff !important;}
.bg-purple-100 {background-color: #ede9fe !important;}
.text-purple-100 {color: #ede9fe !important;}
.bg-purple-200 {background-color: #ddd6fe !important;}
.text-purple-200 {color: #ddd6fe !important;}
.bg-purple-300 {background-color: #c4b5fd !important;}
.text-purple-300 {color: #c4b5fd !important;}
.bg-purple-400 {background-color: #a78bfa !important;}
.text-purple-400 {color: #a78bfa !important;}
.bg-purple-500 {background-color: #8b5cf6 !important;}
.text-purple-500 {color: #8b5cf6 !important;}
.bg-purple-600 {background-color: #7c3aed !important;}
.text-purple-600 {color: #7c3aed !important;}
.bg-purple-700 {background-color: #6d28d9 !important;}
.text-purple-700 {color: #6d28d9 !important;}
.bg-purple-800 {background-color: #5b21b6 !important;}
.text-purple-800 {color: #5b21b6 !important;}
.bg-purple-900 {background-color: #4c1d95 !important;}
.text-purple-900 {color: #4c1d95 !important;}
.text-purple-main {color: #323bb5 !important;}
.bd-gray-100 {border-color: #f3f4f6 !important;}
.bd-gray-200 {border-color: #e5e7eb !important;}
.bd-gray-300 {border-color: #d1d5db !important;}
.bd-gray-400 {border-color: #9ca3af !important;}
.bd-gray-500 {border-color: #6b7280 !important;}
.bd-gray-600 {border-color: #4b5563 !important;}
.bd-gray-700 {border-color: #374151 !important;}
.bd-gray-800 {border-color: #1f2937 !important;}
.bd-gray-900 {border-color: #111827 !important;}
.bd-green-main {border-color: #451049 !important;}
.bd-green-dot-main {border-color: #451049 !important;border-style: dashed;color:#451049;}
.bg-naver-main {background-color: #06bf51 !important;}
.bg-kakao-main {background-color: #fee003 !important;}
.text-gray-main {color : #282828 !important;}
/* end: colors.css migrated from shared root */

/* begin: flex.css migrated from shared root */
.flex {display: flex !important;}
.inline-flex {display: inline-flex !important;}
.flex-row {flex-direction: row !important;}
.flex-col {flex-direction: column !important;}
.items-start {align-items: flex-start !important;}
.items-center {align-items: center !important;}
.items-end {align-items: flex-end !important;}
.justify-start {justify-content: flex-start !important;}
.justify-center {justify-content: center !important;}
.justify-end {justify-content: flex-end !important;}
.justify-between {justify-content: space-between !important;}
/* end: flex.css migrated from shared root */

/* begin: font.css migrated from shared root */
.text-xs {
  font-size: 0.75rem !important;
  line-height: 1rem !important;
}

.text-sm {
  font-size: 0.875rem !important;
  line-height: 1.25rem !important;
}

.text-base {
  font-size: 1rem !important;
  line-height: 1.5rem !important;
}


.text-md {
  font-size: 1rem !important;
  line-height: 1.25rem !important;
}

.text-lg {
  font-size: 1.125rem !important;
  line-height: 1.75rem !important;
}

.text-xl {
  font-size: 1.25rem !important;
  line-height: 1.75rem !important;
}

.text-2xl {
  font-size: 1.5rem !important;
  line-height: 2rem !important;
}

.text-3xl {
  font-size: 1.875rem !important;
  line-height: 2.25rem !important;
}

.text-4xl {
  font-size: 2.25rem !important;
  line-height: 2.5rem !important;
}

.text-5xl {
  font-size: 3rem !important;
  line-height: 1 !important;
}

.text-6xl {
  font-size: 3.75rem !important;
  line-height: 1 !important;
}

.text-7xl {
  font-size: 4.5rem !important;
  line-height: 1 !important;
}

.text-8xl {
  font-size: 6rem !important;
  line-height: 1 !important;
}

.text-9xl {
  font-size: 8rem !important;
  line-height: 1 !important;
}
/* end: font.css migrated from shared root */

/* begin: fonts.css migrated from shared root */
@font-face{font-family:'Pretendard';src:url(/assets/gajobv2/pretendard-0.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Pretendard';src:url(/assets/gajobv2/pretendard-1.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Pretendard';src:url(/assets/gajobv2/pretendard-2.woff2) format('woff2');font-weight:600 700;font-display:swap}
@font-face{font-family:'Pretendard';src:url(/assets/gajobv2/pretendard-3.woff2) format('woff2');font-weight:800 900;font-display:swap}
/* end: fonts.css migrated from shared root */

/* begin: header.css migrated from shared root */
.header {isolation: isolate;backface-visibility: hidden;transform: translateZ(0);}
.header-logo-link {--logo-normal-width: 12rem;--logo-small-width: 5rem;position: relative;display: block;flex: 0 0 var(--logo-normal-width);width: var(--logo-normal-width);min-width: var(--logo-normal-width);}
.header-logo-link .logoimg {position: absolute;left: 0;top: 50%;display: block;transform: translateY(-50%);}
.header-logo-link .logo-normal {opacity: 1;transform: translateY(-50%) scale(1);}
.header-logo-link .logo-small {opacity: 0;transform: translateY(-50%) scale(0.92);}
.header.header-scrolled .header-logo-link,
html.header-compact .header .header-logo-link {flex-basis: var(--logo-small-width);width: var(--logo-small-width);min-width: var(--logo-small-width);}
.header.header-scrolled .logo-normal,
html.header-compact .header .logo-normal {opacity: 0;visibility: hidden;pointer-events: none;transform: translateY(-50%) scale(0.92);}
.header.header-scrolled .logo-small,
html.header-compact .header .logo-small {opacity: 1;transform: translateY(-50%) scale(1);}
html.header-js-ready .header-logo-link {transition: flex-basis 0.38s ease, width 0.38s ease, min-width 0.38s ease;}
html.header-js-ready .header-logo-link .logoimg {transition: opacity 0.22s ease, transform 0.38s ease;}
html:not(.header-js-ready) .header,
html:not(.header-js-ready) .header *,
html.header-initializing .header,
html.header-initializing .header * {transition: none !important;}
.header .container-fluid {align-items: center;}
.header .gnb-menu,
.header .gnb-menu > div {min-width: 0;}
.user-menu-dropdown .dropdown-toggle::after {display: none;}
.user-menu-dropdown .dropdown-menu {min-width: 150px;margin-top: 6px;border: 0;border-radius: 12px;box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);}
.user-menu-dropdown:hover .dropdown-menu,
.user-menu-dropdown:focus-within .dropdown-menu {display: block;}
.user-menu-dropdown .dropdown-item {font-size: 14px;font-weight: 600;padding: 10px 14px;}
.user-menu-dropdown .dropdown-item:hover {color: #451049;background: #f3faf6;}

.header .gnb-link,
.header .user-header-dropdown-btn,
.header .mypagebtn {
    white-space: nowrap;
}

.header .mypagebtn {
    width: auto !important;
    min-width: 74px;
    flex: 0 0 auto;
}
/* end: header.css migrated from shared root */

/* begin: height.css migrated from shared root */
.mxheight-0 {max-height: 0 !important ;}
.mxheight-1 {max-height: 0.25rem !important ;}
.mxheight-2 {max-height: 0.5rem !important ;}
.mxheight-3 {max-height: 0.75rem !important ;}
.mxheight-4 {max-height: 1rem !important ;}
.mxheight-5 {max-height: 1.25rem !important ;}
.mxheight-6 {max-height: 1.5rem !important ;}
.mxheight-7 {max-height: 1.75rem !important ;}
.mxheight-8 {max-height: 2rem !important ;}
.mxheight-9 {max-height: 2.25rem !important ;}
.mxheight-10 {max-height: 2.5rem !important ;}
.mxheight-11 {max-height: 2.75rem !important ;}
.mxheight-12 {max-height: 3rem !important ;}
.mxheight-14 {max-height: 3.5rem !important ;}
.mxheight-16 {max-height: 4rem !important ;}
.mxheight-20 {max-height: 5rem !important ;}
.mxheight-24 {max-height: 6rem !important ;}
.mxheight-28 {max-height: 7rem !important ;}
.mxheight-32 {max-height: 8rem !important ;}
.mxheight-36 {max-height: 9rem !important ;}
.mxheight-40 {max-height: 10rem !important ;}
.mxheight-44 {max-height: 11rem !important ;}
.mxheight-48 {max-height: 12rem !important ;}
.mxheight-52 {max-height: 13rem !important ;}
.mxheight-56 {max-height: 14rem !important ;}
.mxheight-60 {max-height: 15rem !important ;}
.mxheight-64 {max-height: 16rem !important ;}
.mxheight-72 {max-height: 18rem !important ;}
.mxheight-80 {max-height: 20rem !important ;}
.mxheight-96 {max-height: 24rem !important ;}
.mxheight-none {max-height: none !important ;}
/* end: height.css migrated from shared root */

/* begin: padding.css migrated from shared root */
.ps_0 {padding-left: 0 !important}
.pe_0 {padding-right: 0 !important}
.pt_0 {padding-top: 0 !important}
.pb_0 {padding-bottom: 0 !important}
.ps_1 {padding-left: 0.25rem !important}
.pe_1 {padding-right: 0.25rem !important}
.pt_1 {padding-top: 0.25rem !important}
.pb_1 {padding-bottom: 0.25rem !important}
.ps_2 {padding-left: 0.5rem !important}
.pe_2 {padding-right: 0.5rem !important}
.pt_2 {padding-top: 0.5rem !important}
.pb_2 {padding-bottom: 0.5rem !important}
.ps_3 {padding-left: 0.75rem !important}
.pe_3 {padding-right: 0.75rem !important}
.pt_3 {padding-top: 0.75rem !important}
.pb_3 {padding-bottom: 0.75rem !important}
.ps_4 {padding-left: 1rem !important}
.pe_4 {padding-right: 1rem !important}
.pt_4 {padding-top: 1rem !important}
.pb_4 {padding-bottom: 1rem !important}
.ps_5 {padding-left: 1.25rem !important}
.pe_5 {padding-right: 1.25rem !important}
.pt_5 {padding-top: 1.25rem !important}
.pb_5 {padding-bottom: 1.25rem !important}
.ps_6 {padding-left: 1.5rem !important}
.pe_6 {padding-right: 1.5rem !important}
.pt_6 {padding-top: 1.5rem !important}
.pb_6 {padding-bottom: 1.5rem !important}
.ps_7 {padding-left: 1.75rem !important}
.pe_7 {padding-right: 1.75rem !important}
.pt_7 {padding-top: 1.75rem !important}
.pb_7 {padding-bottom: 1.75rem !important}
.ps_8 {padding-left: 2rem !important}
.pe_8 {padding-right: 2rem !important}
.pt_8 {padding-top: 2rem !important}
.pb_8 {padding-bottom: 2rem !important}
.ps_9 {padding-left: 2.25rem !important}
.pe_9 {padding-right: 2.25rem !important}
.pt_9 {padding-top: 2.25rem !important}
.pb_9 {padding-bottom: 2.25rem !important}
.ps_10 {padding-left: 2.5rem !important}
.pe_10 {padding-right: 2.5rem !important}
.pt_10 {padding-top: 2.5rem !important}
.pb_10 {padding-bottom: 2.5rem !important}
.ps_11 {padding-left: 2.75rem !important}
.pe_11 {padding-right: 2.75rem !important}
.pt_11 {padding-top: 2.75rem !important}
.pb_11 {padding-bottom: 2.75rem !important}
.ps_12 {padding-left: 3rem !important}
.pe_12 {padding-right: 3rem !important}
.pt_12 {padding-top: 3rem !important}
.pb_12 {padding-bottom: 3rem !important}
.ps_14 {padding-left: 3.5rem !important}
.pe_14 {padding-right: 3.5rem !important}
.pt_14 {padding-top: 3.5rem !important}
.pb_14 {padding-bottom: 3.5rem !important}
.ps_16 {padding-left: 4rem !important}
.pe_16 {padding-right: 4rem !important}
.pt_16 {padding-top: 4rem !important}
.pb_16 {padding-bottom: 4rem !important}
.ps_20 {padding-left: 5rem !important}
.pe_20 {padding-right: 5rem !important}
.pt_20 {padding-top: 5rem !important}
.pb_20 {padding-bottom: 5rem !important}
.ps_24 {padding-left: 6rem !important}
.pe_24 {padding-right: 6rem !important}
.pt_24 {padding-top: 6rem !important}
.pb_24 {padding-bottom: 6rem !important}
.ps_28 {padding-left: 7rem !important}
.pe_28 {padding-right: 7rem !important}
.pt_28 {padding-top: 7rem !important}
.pb_28 {padding-bottom: 7rem !important}
.ps_32 {padding-left: 8rem !important}
.pe_32 {padding-right: 8rem !important}
.pt_32 {padding-top: 8rem !important}
.pb_32 {padding-bottom: 8rem !important}
.ps_36 {padding-left: 9rem !important}
.pe_36 {padding-right: 9rem !important}
.pt_36 {padding-top: 9rem !important}
.pb_36 {padding-bottom: 9rem !important}
.ps_40 {padding-left: 10rem !important}
.pe_40 {padding-right: 10rem !important}
.pt_40 {padding-top: 10rem !important}
.pb_40 {padding-bottom: 10rem !important}
.ps_44 {padding-left: 11rem !important}
.pe_44 {padding-right: 11rem !important}
.pt_44 {padding-top: 11rem !important}
.pb_44 {padding-bottom: 11rem !important}
.ps_48 {padding-left: 12rem !important}
.pe_48 {padding-right: 12rem !important}
.pt_48 {padding-top: 12rem !important}
.pb_48 {padding-bottom: 12rem !important}
.ps_52 {padding-left: 13rem !important}
.pe_52 {padding-right: 13rem !important}
.pt_52 {padding-top: 13rem !important}
.pb_52 {padding-bottom: 13rem !important}
.ps_56 {padding-left: 14rem !important}
.pe_56 {padding-right: 14rem !important}
.pt_56 {padding-top: 14rem !important}
.pb_56 {padding-bottom: 14rem !important}
.ps_60 {padding-left: 15rem !important}
.pe_60 {padding-right: 15rem !important}
.pt_60 {padding-top: 15rem !important}
.pb_60 {padding-bottom: 15rem !important}
.ps_64 {padding-left: 16rem !important}
.pe_64 {padding-right: 16rem !important}
.pt_64 {padding-top: 16rem !important}
.pb_64 {padding-bottom: 16rem !important}
.ps_72 {padding-left: 18rem !important}
.pe_72 {padding-right: 18rem !important}
.pt_72 {padding-top: 18rem !important}
.pb_72 {padding-bottom: 18rem !important}
.ps_80 {padding-left: 20rem !important}
.pe_80 {padding-right: 20rem !important}
.pt_80 {padding-top: 20rem !important}
.pb_80 {padding-bottom: 20rem !important}
.ps_96 {padding-left: 24rem !important}
.pe_96 {padding-right: 24rem !important}
.pt_96 {padding-top: 24rem !important}
.pb_96 {padding-bottom: 24rem !important}
/* end: padding.css migrated from shared root */

/* begin: pages.css migrated from shared root */
/* Shared page structure from the supplied renewal HTML. */
.v2-prototype [hidden], [data-v2-visual][hidden] {
    display: none !important
}

.v2-reference-home main {
    min-width: 0;
    width: 100%
}

.v2-reference-home .v2-prototype {
    overflow-x: clip
}

.v2-reference-home .mn .mn-sec {
    padding-top: 100px
}

.v2-prototype .wrap {
    max-width: 1240px !important;
    width: 100%;
    margin-inline: auto;
    padding-inline: 24px
}

.v2-reference-home .v2-hero-stage {
    height: 580px
}

.v2-reference-home .v2-hero-visual {
    height: 340px;
    top: 64px;
    width: 38%;
    max-width: 480px
}

.v2-reference-home .v2-routine-foot .prog {
    flex: 1;
    height: 6px;
    background: #eef0f3;
    border-radius: 999px;
    overflow: hidden
}

.v2-routine-foot .prog > i {
    display: block;
    height: 100%;
    background: #127a6c;
    transition: width .2s
}

.v2-prototype .mn-tabs button, .v2-prototype .mn-btabs button {
    position: relative;
    border: 0;
    background: none;
    padding: 6px 0;
    font: inherit;
    font-size: 16px;
    font-weight: 700;
    color: var(--mute);
    cursor: pointer;
    white-space: nowrap
}

.v2-prototype .mn-btabs button {
    padding: 10px 0 12px
}

.v2-prototype .mn-tabs button.on, .v2-prototype .mn-btabs button.on {
    color: var(--ink)
}

.v2-prototype .mn-tabs button.on:after, .v2-prototype .mn-btabs button.on:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    border-radius: 2px;
    background: var(--ink)
}

.v2-prototype .mn-tog button {
    border: 0;
    background: none;
    font: inherit;
    cursor: pointer
}

.v2-prototype .mn-tog button.on {
    color: var(--g)
}

.v2-prototype .mn-tr .logo-ph img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.v2-prototype .mn-tr .logo-ph i {
    font-size: 23px;
    color: #91a49a
}

.v2-prototype .mn-tbl.jb .mn-th, .v2-prototype .mn-tbl.jb .mn-tr {
    grid-template-columns:64px minmax(0, 1fr) 80px 150px 76px
}

.v2-prototype .home-favorite {
    border-bottom: 1px solid var(--line2);
    padding: 12px 0
}

.v2-prototype .home-favorite summary {
    display: flex;
    align-items: center;
    gap: 10px;
    list-style: none;
    cursor: pointer;
    font-size: 14px
}

.v2-prototype .home-favorite summary > i {
    font-size: 21px;
    color: var(--g)
}

.v2-prototype .home-favorite p {
    font-size: 14px;
    color: var(--sub);
    margin: 10px 0
}

.v2-prototype .home-favorite > a {
    font-size: 14px;
    color: var(--g)
}

.v2-prototype .mn-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 12px
}

.v2-prototype .mn-ad.a1 b:before {
    display: none !important
}

.v2-prototype .mn-rl .empty {
    height: auto;
    padding: 22px 8px
}

.v2-prototype .mn-sol .mn-sbg {
    font-size: 110px
}

.v2-prototype .mn-sico {
    font-size: 23px
}

.v2-prototype .mn-sar {
    font-size: 19px
}

.v2-prototype .mn-sns > i {
    font-size: 22px
}

.v2-subpage-frame {
    display: grid;
    grid-template-columns:200px minmax(0, 1fr);
    gap: 32px;
    width: min(1240px, 100%);
    margin: auto;
    padding: 28px 24px 80px;
    align-items: start
}

.v2-subpage-frame > .v2-subnav {
    width: 200px
}

.v2-subpage-frame > .v2-reference-sub {
    min-width: 0;
    width: 100%;
    margin: 0 !important;
    padding-top: 0 !important;
    background: #fff !important
}

.v2-subpage-frame .v2-reference-sub > .container {
    max-width: 100% !important;
    width: 100%;
    padding-inline: 0 !important;
    margin-top: 0 !important
}

.v2-subpage-frame .v2-reference-sub > .container > .card {
    box-shadow: none !important;
    padding: 0 !important
}

.v2-subpage-frame .lnb {
    width: 100%;
    padding: 0;
    margin: 0
}

.v2-subpage-frame .lnb a[aria-current=page] {
    color: #fff;
    background: #000;
    font-weight: 700
}

.v2-page-band {
    background: #eaf2f8
}

.v2-page-band .v2-wrap {
    max-width: 1240px
}

.v2-page-band h1 {
    font-weight: 800;
    letter-spacing: -.035em
}

.v2-prototype .community-search {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px
}

.v2-prototype .community-search .search {
    flex: 1
}

.v2-prototype .community-row {
    display: grid;
    grid-template-columns:68px minmax(0, 1fr) 90px 90px 60px;
    align-items: center;
    gap: 15px;
    padding: 17px 10px;
    border-bottom: 1px solid var(--line2);
    font-size: 13px;
    color: var(--ink)
}

.v2-prototype .community-row .title {
    font-weight: 700;
    font-size: 14px
}

.v2-prototype .community-row .meta {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .community-content {
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    font-size: 15px;
    line-height: 1.9;
    min-height: 180px;
    padding: 25px 0
}

.v2-prototype .community-comment {
    padding: 16px 0;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .community-comment p {
    white-space: pre-wrap;
    font-size: 14px;
    margin: 8px 0
}

.v2-prototype .community-comment time {
    font-size: 14px;;
    color: var(--sub)
}

.v2-prototype .community-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 20px 0
}

.v2-prototype .community-status {
    font-size: 13px;
    line-height: 1.6;
    color: #d43a3a;
    margin: 10px 0
}

.v2-prototype textarea.inp {
    min-height: 260px
}

.v2-reference-home .quick-floating-menu, .v2-reference-home .mobile-footer {
    display: none !important
}







.v2-prototype .reference-db-cards {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 18px
}

.v2-prototype .reference-db-cards > .card {
    padding: 22px;
    min-width: 0
}

.v2-prototype .db-offer-rows {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin-top: 18px
}

.v2-prototype .db-offer-rows > div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 10px;
    background: var(--bg);
    border-radius: 7px;
    font-size: 14px;
}

.v2-prototype .reference-table {
    max-width: 100%;
    overflow-x: auto;
    margin-top: 18px
}

.v2-prototype .reference-table table {
    min-width: 600px
}



/* Keep existing field validation and percentage calculation; replace the thermometer presentation. */
.v2-reference-sub .thermo-wrap {
    display: none !important
}

.v2-writing-progress {
    border: 1px solid #dce7e3;
    border-radius: 14px;
    padding: 18px 22px;
    margin: 0 0 28px;
    background: #fff;
    display: flex;
    gap: 24px;
    align-items: center
}

.v2-writing-progress > b {
    color: #127a6c;
    white-space: nowrap;
    font-size: 14px
}

.v2-writing-progress .progress-wrap {
    display: block !important;
    position: static !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important
}

.v2-writing-progress .progress-head {
    position: static !important;
    color: #127a6c !important;
    z-index: auto !important;
    justify-content: flex-end !important
}

.v2-writing-progress #progressText {
    display: inline !important;
    font-size: 13px;
    font-weight: 700
}

.v2-writing-progress .progress-bar {
    height: 7px !important;
    background: #e8efec !important;
    border-radius: 8px;
    overflow: hidden
}

.v2-writing-progress .progress-fill {
    height: 100%;
    background: #127a6c !important;
    border-radius: 8px;
    transition: width .25s
}

.v2-writing-progress .progress-hint {
    font-size: 14px;
    line-height: 1.6;
    color: #6d7a75;
    margin: 4px 0
}



.v2-prototype .mn-tbl.jb .mn-tr.has-bookmark {
    grid-template-columns:64px minmax(0, 1fr) 80px 125px 76px 24px
}

.v2-prototype .bm[aria-pressed=true] {
    color: #127a6c;
    background: #eaf5ee
}

.v2-prototype .mn-fil > label {
    white-space: nowrap
}



.v2-prototype .rc-tabs button {
    border: 0;
    background: none;
    padding: 12px 0;
    font: inherit;
    font-weight: 700;
    color: var(--mute);
    cursor: pointer
}

.v2-prototype .rc-tabs button.on {
    color: var(--ink);
    border-bottom: 2px solid var(--ink)
}

.v2-prototype .rc-filt .chips input[type=checkbox] {
    accent-color: #127a6c;
    margin-right: 4px
}

.v2-prototype .rc-filt .chip {
    cursor: pointer
}

.v2-prototype .reference-job-list {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 16px
}

.v2-prototype .reference-job {
    padding: 22px
}

.v2-prototype .reference-job-title {
    display: block;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.5;
    margin: 18px 0 8px
}

.v2-prototype .reference-job[hidden] {
    display: none !important
}

.v2-prototype .jb-res.card-body {
    padding: 22px;
    box-shadow: none
}

.v2-prototype .jb-res .prog {
    overflow: hidden
}

.v2-prototype .jb-res .acts {
    flex-wrap: wrap
}



/* The prototype's row utility is independent of Bootstrap's twelve-column grid. */
.v2-prototype .row.w {
    flex-wrap: wrap;
    gap: 4px;
}

.v2-prototype .row > .sp {
    flex: 1
}

.v2-prototype .chip.ck:has(input):before {
    display: none
}

.v2-prototype .row > .btn.sm {
    padding: 7px 12px
}

.v2-prototype .row > .tag {
    padding: 4px 7px;
    max-width: fit-content;
}

.v2-prototype .row > .bm {
    padding: 0
}

/* Form controls share the supplied editor spacing while retaining their original IDs and handlers. */
.v2-reference-sub:not(.v2-prototype) .accordion-item {
    border: 1px solid #e5e7eb !important;
    border-radius: 14px !important;
    box-shadow: none !important;
    overflow: hidden;
    background: #fff
}

.v2-reference-sub:not(.v2-prototype) .accordion-button {
    font-size: 16px;
    font-weight: 800;
    color: #171c22;
    min-height: 58px;
    border-bottom: 1px solid #eef0f3 !important
}

.v2-reference-sub:not(.v2-prototype) :is(input.form-control,select.form-select,textarea.form-control) {
    border: 1px solid #e5e7eb;
    border-radius: 10px !important;
    background: #fff;
    color: #171c22;
    font-size: 14px;
    box-shadow: none;
    min-height: 44px
}

.v2-reference-sub:not(.v2-prototype) :is(input.form-control,select.form-select,textarea.form-control):focus {
    border-color: #127a6c;
    box-shadow: 0 0 0 3px #127a6c12
}

.v2-reference-sub .db-product-section {
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    background: #fff;
    padding: 24px;
    margin-bottom: 18px
}

.v2-reference-sub :is(.db-product-section h3,.db-product-section h4) {
    font-size: 17px;
    font-weight: 800;
    margin-bottom: 18px
}



.v2-prototype .actual-banner {
    position: relative;
    overflow: hidden
}

.v2-prototype .actual-banner > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .5
}

.v2-prototype .actual-banner > :not(img) {
    position: relative;
    z-index: 1
}

.v2-reference-home .v2-home-notice {
    min-width: 0;
    max-width: 80%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.v2-reference-home .v2-home-notice[hidden] {
    display: none !important
}

.v2-prototype .talent-card-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0
}

.v2-prototype .pc .av img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.v2-prototype .pc .sm > b {
    margin-right: 8px
}

.v2-prototype .jb-dd[open] .jb-ddm {
    display: block
}

.v2-prototype .jb-more {
    list-style: none;
    cursor: pointer
}

.v2-prototype .jb-more::-webkit-details-marker {
    display: none
}

.v2-prototype .jb-ddm {
    z-index: 20
}

.v2-prototype .jb-qc > b {
    font-size: 15px;
    line-height: 1.6;
    overflow-wrap: anywhere
}

.v2-prototype .jb-qc .prog {
    height: 6px;
    background: #edf0f3;
    border-radius: 10px;
    overflow: hidden;
    margin: 14px 0
}

.v2-prototype .jb-qc .prog > i {
    display: block;
    height: 100%;
    background: #127a6c
}

.v2-prototype .jb-ap .tp .tag {
    max-width: 55%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.v2-prototype .jb-ap .bt {
    overflow: visible
}

.v2-prototype .jb-srch > .btn {
    flex: 0 0 auto
}



.v2-prototype .rc-stat > i {
    font-size: 26px
}

.v2-prototype .rc-pc {
    overflow: visible
}

.v2-prototype .rc-pc-t {
    display: block;
    font-weight: 800
}

.v2-prototype .jb-ddm > button {
    display: block;
    width: 100%;
    padding: 10px 14px;
    background: none;
    border: 0;
    text-align: left;
    font: inherit;
    font-size: 13px;
    cursor: pointer
}

.v2-prototype .jb-ddm > button:hover {
    background: #f5f6f8
}

.v2-prototype .rc-tool select {
    display: inline-block;
    margin-left: 8px
}

.v2-prototype .rc-stats .rc-stat {
    color: inherit
}

.v2-prototype .ds-description {
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 20px;
    color: var(--sub)
}

.v2-prototype .ds-detail-image {
    display: block;
    max-width: 100%;
    height: auto;
    margin: auto
}

.v2-prototype .ds-kd {
    white-space: pre-line;
    overflow-wrap: anywhere
}

.v2-prototype .ds-logo-def > i {
    font-size: 40px
}

.v2-prototype .ds-purchase-actions {
    position: sticky;
    bottom: 16px;
    background: #fff;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 14px;
    z-index: 40;
    box-shadow: 0 4px 25px #12251b12
}



.v2-theme header:has(>#v2-header) > :is(.h_40,.h_15) {
    display: none !important
}

.v2-theme .v2-page-band {
    margin-bottom: 0 !important
}

.v2-reference-sub:not(.v2-prototype) > form > .container {
    padding: 0 !important
}

.v2-reference-sub:not(.v2-prototype) > form > .container > .content {
    margin-top: 0 !important;
    padding-bottom: 0 !important
}

.v2-reference-sub:not(.v2-prototype) > form > .container > .content > .content {
    margin-top: 0 !important;
    padding-bottom: 0 !important
}

.v2-theme header:has(>#v2-header) > .container {
    display: none !important
}

.v2-prototype .tl-sec, .v2-prototype .tl-blk {
    scroll-margin-top: 160px
}

.v2-prototype .tool-preview-caption {
    position: absolute;
    bottom: 8px;
    right: 12px;
    font-size: 10px;
    color: #85918b
}

.v2-prototype .tl-vis {
    position: relative
}

.v2-prototype .tl-rail .card {
    padding: 22px;
    margin-bottom: 16px;
    background: #eaf4ee
}

.v2-prototype .tl-rail p {
    font-size: 13px;
    margin-top: 8px
}

.v2-prototype .cm-body img {
    max-width: 100%;
    height: auto
}

.v2-prototype .cm-body {
    overflow-wrap: anywhere
}

.v2-prototype .my-prof .av > i {
    font-size: 35px;
    color: #127a6c
}

.v2-prototype .my-logout {
    background: none;
    border: 0;
    text-align: left;
    color: #d9480f;
    padding: 12px 0;
    font: inherit;
    font-size: 14px;
    cursor: pointer
}

.v2-prototype .my-certline > i {
    font-size: 24px;
    color: #127a6c
}

.v2-prototype .my-certline .lnk {
    margin-left: auto
}

.v2-prototype.my-system-page > .container {
    padding: 0 !important
}

.v2-prototype.my-system-page .my-system-grid {
    display: grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin: 0
}

.v2-prototype.my-system-page .my-system-card {
    width: auto !important;
    min-height: 110px;
    border: 1px solid #e5e7eb !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: none !important;
    padding: 14px 10px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 12px;
    text-align: left !important
}

.v2-prototype.my-system-page .my-system-card.d-none {
    display: none !important
}

.v2-prototype.my-system-page .my-system-logo-box {
    width: 44px !important;
    height: 44px !important;
    border: 0 !important;
    border-radius: 12px !important;
    flex: none;
    margin: 0 !important;
    overflow: hidden
}

.v2-prototype.my-system-page .my-system-card h3 {
    font-size: 13px;
    font-weight: 700;
    white-space: normal;
    margin: 0 !important
}

.v2-prototype.my-system-page .my-system-logo {
    font-size: 16px !important
}

.v2-prototype.my-system-page .my-system-card > a {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    color: inherit
}

.v2-prototype.my-system-page .my-system-section {
    margin-bottom: 38px
}

.v2-prototype.my-system-page .my-system-section-title {
    font-size: 18px;
    font-weight: 800;
    margin: 0 0 18px
}





.v2-prototype :is(.my-prof,.my-certline) {
    display: flex;
    flex-direction: row
}

.v2-prototype.my-system-page .my-system-card {
    flex-direction: column !important
}

.v2-prototype.my-system-page .my-system-card > a {
    flex-direction: column;
    gap: 9px
}

.v2-prototype.my-system-page .my-system-card > .position-relative {
    position: absolute !important;
    right: 8px;
    top: 8px
}

.v2-prototype.my-system-page .my-system-logo-box.cm-mono {
    background: #127a6c !important;
    color: #fff !important;
    box-shadow: none
}

.v2-prototype.my-system-page .my-system-logo.image {
    background: #fff
}

.v2-prototype .workflow-step-scroll {
    overflow-x: auto;
    padding: 14px 0 4px
}

.v2-prototype .workflow-step-scroll > .steps {
    min-width: 720px
}

.v2-prototype .jb-workflow-row {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 19px 22px;
    border: 0;
    border-top: 1px solid #eef0f3;
    background: #fff;
    color: #171c22;
    text-align: left;
    min-height: 65px;
    font: inherit;
    font-size: 14px;
    cursor: pointer
}

.v2-prototype .jb-workflow-row:hover {
    background: #f7faf8
}

.v2-prototype .jb-workflow-row > .wf-name {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 700
}

.v2-prototype .jb-workflow-row > .tag {
    flex: none
}

.v2-prototype .jb-workflow-row.bg-green-main {
    background: #eff8f3 !important;
    color: #127a6c !important
}

.v2-prototype .jb-rowh {
    display: flex;
    align-items: center;
    gap: 12px
}

.v2-prototype .jb-head {
    flex-wrap: wrap
}

.v2-prototype .jb-rows {
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    overflow: hidden
}



.v2-prototype .workflow-step-scroll .st span {
    display: block !important;
    font-size: 14px;;
    white-space: nowrap;
    margin-top: 8px
}

.v2-prototype .workflow-step-scroll .st[data-current=true] i {
    outline: 3px solid #f4a340;
    outline-offset: 3px
}

.v2-prototype .jb-rowh .btn {
    color: #127a6c !important;
    background: #fff !important;
    font-size: 12px
}

.v2-reference-sub > section.v2-prototype {
    margin-bottom: 24px
}

.v2-prototype .authorization-matrix-scroll {
    overflow-x: auto
}

.v2-prototype .authorization-matrix-scroll table {
    min-width: 760px
}

.v2-prototype .ap-n {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    min-height: 30px;
    font-size: 14px
}

.v2-prototype .reference-authorize-job {
    display: grid;
    grid-template-columns:minmax(0, 1fr) 80px 120px 64px 44px;
    gap: 16px;
    align-items: center;
    padding: 19px 20px;
    border-top: 1px solid #eef0f3;
    cursor: pointer
}

.v2-prototype .reference-authorize-job:hover {
    background: #f7faf8
}

.v2-prototype .reference-authorize-job .ell {
    display: block;
    font-size: 14px;
    line-height: 1.7
}

.v2-reference-sub .authorize-bottom-action {
    position: static !important;
    margin-top: 18px;
    padding: 0 !important
}

.v2-reference-sub .authorize-bottom-action button {
    height: 44px !important;
    border: 1px solid #127a6c !important;
    background: #127a6c !important;
    color: #fff !important;
    border-radius: 10px !important
}



.v2-theme .v2-login-main {
    width: 100%;
    padding: 50px 24px 80px;
    min-height: 0 !important
}

.v2-prototype .lg-sns i > img {
    width: 24px;
    height: 24px;
    object-fit: contain
}

.v2-prototype .lg-sns > .bi {
    font-size: 24px
}

.v2-prototype .lg-sns.google > .bi {
    color: #4285f4
}

.v2-prototype .lg-mark > img {
    max-width: 220px;
    max-height: 60px
}

.v2-prototype .lg-favs {
    display: flex;
    flex-wrap: wrap;
    gap: 16px !important;
    margin-top: 20px
}

.v2-prototype .lg-favorite-item {
    position: relative;
    width: 68px !important;
    min-width: 68px;
    padding: 0 !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important
}

.v2-prototype .lg-favorite-item .favorite-link {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    font-size: 14px;;
    color: #3a404b
}

.v2-prototype .lg-favorite-item .favorite-icon {
    width: 42px !important;
    height: 42px !important;
    border-radius: 12px !important;
    border: 1px solid #e5e7eb !important;
    background: #fff !important;
    margin: 0 !important;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .lg-favorite-item .favorite-icon img {
    width: 24px !important;
    height: 24px !important
}

.v2-prototype .lg-favorite-item .favorite-icon:has(img) .favorite-icon-fallback {
    display: none
}

.v2-prototype .lg-favorite-item .favorite-label {
    max-width: 68px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 14px; !important
}

.v2-prototype .lg-favorite-item .favorite-remove-btn {
    position: absolute;
    top: -6px;
    right: 0;
    border: 0;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    background: #f0f2f4;
    color: #6b7280;
    font-size: 14px;
    z-index: 2
}



.v2-prototype .lg-mark {
    width: 150px !important;
    height: 40px !important
}

.v2-prototype .lg-mark > img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain
}

.v2-prototype .mn-tog button.on {
    color: #fff !important
}

.v2-prototype .workflow-step-scroll {
    padding-bottom: 18px
}

/* Hero markup and layout follow the supplied responsive mockup. */
.v2-reference-home .mn-hero a {
    color: inherit
}

.v2-reference-home .mn-hero .mn-cta {
    color: var(--ink)
}

.v2-reference-home .mn-hero .mn-htab > i.bi {
    font-size: 16px;
    opacity: .7
}

.v2-reference-home .mn-hero .hv-li .ico {
    font-size: 21px;
    color: var(--g)
}

.v2-reference-home .mn-hero .hv-li .ck .bi {
    font-size: 16px
}

.v2-reference-home .mn-hero .hv-li.is-visited .ck {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-reference-home .mn-hero .hv-h > div {
    min-width: 0
}

.v2-reference-home .mn-hero .hv-prog .prog > i {
    display: block;
    height: 100%;
    background: var(--g);
    border-radius: inherit
}

.v2-reference-home .mn-hero .hv-tools .hv-tl > i .bi {
    font-size: 21px
}

.v2-reference-home .mn-hero .hv-db {
    display: block
}

.v2-reference-home .mn-hero .hv-jr .tx {
    min-width: 0;
    flex: 1
}

.v2-reference-home .mn-hero .hv-jr .tx b {
    display: block
}

.v2-reference-home .mn-hero .hv-lr b {
    flex: 1;
    min-width: 0
}

.v2-reference-home .mn-htab .bar > i {
    transition: width .1s linear
}

.v2-reference-home .mn-htab:focus-visible {
    outline: 3px solid #f29b21;
    outline-offset: -3px
}



/* Reference detail pages retain existing data permissions and actions. */
.v2-menu.is-current > summary, .v2-header a.is-current {
    color: var(--v2-green) !important
}

.v2-subpage-frame .lnb a.is-current {
    color: #fff;
    background: #000;
    font-weight: 700
}

.v2-resume-detail > .col-lg-12 > .container, .v2-recruit-detail > .col-lg-12 > .container {
    padding: 0;
    max-width: none
}

.v2-resume-detail .container > .main-card, .v2-recruit-detail .container > .card {
    padding: 0 !important;
    box-shadow: none !important;
    background: transparent !important
}

.v2-resume-detail .gaoffcanvasbtn, .v2-recruit-detail .gaoffcanvasbtn {
    padding: 0 !important;
    display: block !important
}

.v2-resume-detail .card.rc-sec, .v2-recruit-detail .card.rc-sec {
    padding: 14px !important;
    border: 1px solid var(--line) !important;
    border-radius: 16px !important;
    box-shadow: none !important;
    background: #fff;
    display: block
}

.v2-resume-detail .card.rc-prof {
    flex-direction: row;
    box-shadow: none !important;
    border: 1px solid var(--line) !important;
    border-radius: 16px;
    padding: 22px 24px !important
}

.v2-resume-detail .rc-prof .av {
    display: grid;
    place-items: center;
    background: var(--g-l);
    border-radius: 50%;
    color: var(--g);
    font-size: 32px;
    flex-shrink: 0
}

.v2-resume-detail .ttl, .v2-recruit-detail .ttl {
    font-size: 17px;
    font-weight: 800;
    color: var(--ink);
    margin: 0 0 16px;
    line-height: 1.5
}

.v2-resume-detail .accordion {
    margin: 0
}

.v2-resume-detail .accordion-collapse {
    padding: 0 !important
}

.v2-resume-detail .accordion-body {
    padding: 0 !important;
    margin: 0 !important
}

.v2-resume-detail .resume-basic-text {
    flex: 1;
    min-width: 0
}

.v2-resume-detail .resume-basic-text > .row {
    margin: 0;
    border-bottom: 1px solid var(--line2);
    padding: 0 !important
}

.v2-resume-detail .resume-basic-text > .row > div {
    display: grid !important;
    grid-template-columns:112px minmax(0, 1fr);
    gap: 0 14px;
    padding: 0 !important;
    min-width: 0;
    align-items: center
}

.v2-resume-detail .resume-basic-text > .row > div > span:first-child:not(:only-child) {
    background: var(--bg);
    height: 100%;
    padding: 12px !important;
    font-size: 13px;
    color: var(--sub)
}

.v2-resume-detail .resume-basic-text > .row > div > span:only-child {
    grid-column: 1/-1;
    padding: 12px !important
}

.v2-resume-detail .resume-basic-text > .row > div > span + span, .v2-resume-detail .resume-basic-text > .row > div > span + div {
    padding: 10px 0;
    min-width: 0;
    overflow-wrap: anywhere
}

.v2-resume-detail .resume-photo-wrap {
    flex: 0 0 110px;
    margin: 0
}

.v2-resume-detail .resume-photo-img {
    width: 110px;
    height: 146px;
    object-fit: cover;
    border-radius: 10px;
    box-shadow: none !important
}

.v2-resume-detail .list-group-item {
    height: auto;
    min-height: 44px;
    font-size: 14px;
    padding: 12px 0;
    border-bottom: 1px solid var(--line2) !important;
    gap: 12px;
    background: transparent
}

.v2-resume-detail .pdf-download-bar {
    margin: 0 0 16px;
    display: flex;
    justify-content: flex-end
}

.v2-resume-detail .pdf-download-btn {
    font-size: 13px;
    border-radius: 8px !important
}

.v2-resume-detail .timeline {
    margin: 0
}

.v2-resume-detail .timeline-item {
    box-shadow: none !important;
    background: var(--bg) !important;
    border-radius: 10px
}

.v2-resume-detail .timeline-header {
    font-size: 15px !important
}

.v2-resume-detail .timeline-body {
    font-size: 14px !important
}

.v2-recruit-detail .gaoffcanvasbtn > h4 {
    font-size: 26px;
    line-height: 1.4;
    color: var(--ink) !important;
    margin: 8px 0 18px !important
}

.v2-recruit-detail .gaoffcanvasbtn > h5 {
    font-size: 13px;
    color: var(--sub) !important;
    margin: 0 !important
}

.v2-recruit-detail .rc-sec > .w-100.d-flex:not(.flex-column) {
    border-bottom: 1px solid var(--line2);
    gap: 12px;
    margin: 0 !important;
    font-size: 14px;
    min-width: 0
}

.v2-recruit-detail .rc-sec > .w-100 > .badge {
    flex: 0 0 120px;
    border-radius: 0 !important;
    background: var(--bg);
    padding: 12px !important;
    color: var(--sub) !important;
    font-weight: 500 !important;
    white-space: normal
}

.v2-recruit-detail .rc-sec > .w-100 > div:not(.badge) {
    min-width: 0;
    overflow-wrap: anywhere;
    margin-left: 0 !important
}

.v2-recruit-detail #map {
    border-radius: 12px;
    max-width: 100%
}

.v2-recruit-detail .rc-snav {
    position: sticky;
    top: 80px;
    z-index: 5;
    background: #fff;
    overflow-x: auto;
    flex-wrap: nowrap;
    white-space: nowrap
}



.v2-theme .v2-resume-detail .card.rc-sec, .v2-theme .v2-recruit-detail .card.rc-sec, .v2-theme .v2-resume-detail .card.rc-prof {
    border-radius: 16px !important
}

.v2-theme .v2-resume-detail > .col-lg-12 > .container, .v2-theme .v2-recruit-detail > .col-lg-12 > .container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important
}

.v2-theme .v2-resume-detail .resume-photo-wrap {
    padding: 0 !important
}

.v2-theme .v2-resume-detail .resume-photo-img {
    min-width: 110px;
    flex-shrink: 0
}

.v2-resume-detail .rc-bbar {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: flex-start;
    margin-top: 24px;
    height: 72px;
    padding-bottom: 0 !important;
}

.v2-resume-detail .rc-bbar .pdf-download-bar {
    margin: 0
}

.v2-resume-detail .rc-bbar .talent-search-action-row {
    margin: 0 !important
}

.v2-theme .v2-resume-detail .container > .main-card, .v2-theme .v2-recruit-detail .container > .card {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important
}

.v2-theme .v2-document-detail > .container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important
}

.v2-theme .v2-document-detail > .container > .card, .v2-theme .v2-document-detail > .container > .accordion .card {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 18px !important;
    border: 1px solid var(--line) !important;
    border-radius: 16px !important;
    box-shadow: none !important;
    padding: 0 !important
}

.v2-document-detail .card-body {
    padding: 24px !important;
    min-width: 0
}

.v2-document-detail h5 {
    font-size: 18px;
    font-weight: 800;
    line-height: 1.5
}

.v2-document-detail .table-responsive {
    max-width: 100%
}

.v2-document-detail .table {
    font-size: 13px
}

.v2-document-detail iframe {
    max-width: 100%
}



.v2-theme .v2-resume-detail .container > .main-card, .v2-theme .v2-recruit-detail .container > .card, .v2-theme .v2-document-detail .container > .card {
    min-width: 0 !important
}

.v2-resume-offer-detail .site-footer > .mobile-footer {
    display: none !important
}

@media print {
    .v2-subnav, .v2-resume-detail .rc-top, .v2-resume-detail .rc-bbar {
        display: none !important
    }

    .v2-subpage-frame {
        display: block;
        padding: 0
    }

    .v2-theme .v2-resume-detail .card.rc-sec {
        break-inside: avoid;
        border: 0 !important
    }
}

.v2-resume-detail .ttl {
    display: flex;
    align-items: center;
    gap: 8px
}

/* Legacy input icons use top/left offsets; detail icons belong in normal flex flow. */
.v2-resume-detail .material-icons.in-icon {
    position: static;
    inset: auto;
    z-index: auto;
    margin: 0;
    padding: 0;
    transform: none;
    vertical-align: middle
}

.v2-resume-detail .ttl > .material-icons.in-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    font-size: 22px;
    line-height: 1;
    flex: 0 0 22px
}

/* Recruitment overview: prototype summary cards shared by postings and applicants. */
.v2-theme .v2-recruit-overview > .container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 20px 0 0 !important
}

.v2-recruit-overview .rc-stats .rc-stat {
    color: var(--ink);
    text-decoration: none
}

.v2-theme .v2-recruit-overview .card.rc-subs {
    display: block;
    min-width: 0;
    width: 100%;
    border: 1px solid var(--line) !important;
    border-radius: 16px !important;
    box-shadow: none !important;
    padding: 20px 22px !important
}

.v2-recruit-overview .rc-subs-h .ttl {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    font-size: 16px
}

.v2-recruit-overview .rc-subs-h .material-icons {
    font-size: 22px
}

.v2-recruit-overview .rc-st small {
    font-size: 12px
}

.v2-recruit-overview .rc-st > b {
    font-size: 24px;
    color: var(--g);
    font-weight: 800
}

.v2-recruit-overview .rc-st > span {
    font-size: 14px;;
    color: var(--sub)
}

.v2-recruit-overview > .rc-mtab {
    display: flex;
    width: max-content;
    margin: 22px 0 18px
}

.v2-recruit-overview .content {
    padding: 0 !important;
    background: #fff
}

.v2-recruit-overview .rc-app-tools {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap
}

.v2-recruit-overview .rc-app-tools select {
    width: min(100%, 360px)
}

.v2-recruit-overview .rc-app-tools .ckb {
    display: flex;
    align-items: center;
    gap: 7px;
    white-space: nowrap
}

.v2-recruit-overview .rc-app-filter {
    padding: 20px;
    border: 1px solid var(--line);
    border-radius: 16px
}

.v2-recruit-overview .status-filter .btn {
    border: 1px solid var(--line);
    border-radius: 999px !important;
    background: #fff !important;
    color: var(--ink2);
    font-size: 14px;
    padding: 7px 12px
}

.v2-recruit-overview .status-filter .btn-check:checked + .btn {
    background: var(--ink) !important;
    color: #fff !important;
    border-color: var(--ink)
}

.v2-recruit-overview .rc-applicant-card h5 {
    font-size: 17px;
    line-height: 1.5
}

.v2-recruit-overview .rc-applicant-card img {
    width: 64px;
    height: 64px;
    object-fit: cover;
    border-radius: 50%
}

.v2-recruit-overview .rc-applicant-card .userimage
.av.lg {
    width: 64px;
    height: 64px;
}

.av {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #E9EDF1;
    flex: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #9AA3AE;
    overflow: hidden;
}

.v2-recruit-overview .rc-stat .material-icons {
    position: static;
    inset: auto;
    margin: 0;
    font-size: 24px
}



.v2-recruit-write-list .rc-wbar {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 20px
}

.v2-recruit-write-list .rc-wq {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 220px
}

.v2-recruit-write-list .rc-wq input {
    min-width: 0;
    background: none;
    border: 0;
    outline: none;
    font-size: 14px;
    flex: 1
}

.v2-recruit-write-list button.chip {
    font: inherit;
    cursor: pointer
}

.v2-recruit-write-list .rc-wl {
    display: flex;
    flex-direction: column;
    gap: 12px
}

.v2-recruit-write-list .rc-wr .prog {
    height: 6px;
    overflow: hidden;
    background: var(--bg2);
    border-radius: 999px
}

.v2-recruit-write-list .rc-wr .prog > i {
    display: block;
    height: 100%;
    background: var(--g);
    border-radius: inherit
}

.v2-recruit-write-list .rc-wr .jb-dd {
    flex-shrink: 0
}

.v2-recruit-write-list .rc-wr .jb-more {
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-recruit-write-list .rc-wr .material-icons {
    position: static;
    font-size: 20px;
    line-height: 1
}

.v2-recruit-write-list .rc-res {
    margin-bottom: 18px
}



.v2-recruit-write-list .rc-res, .v2-recruit-write-list .rc-wr > .row {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    margin-inline: 0
}

.v2-recruit-write-list .rc-res > *, .v2-recruit-write-list .rc-wr > .row > * {
    width: auto;
    max-width: none;
    flex-shrink: 0
}

.v2-recruit-write-list .rc-res > .sp {
    flex: 1;
    width: auto
}

.v2-recruit-write-list .rc-wr {
    min-width: 0;
    grid-template-columns:minmax(0, 1fr) 180px auto
}



.v2-recruit-overview .rc-app-tools > form {
    width: 100%;
    min-width: 0
}

.v2-recruit-overview .rc-stats {
    grid-template-columns:repeat(3, minmax(0, 1fr))
}

.v2-recruit-overview .rc-stat {
    min-width: 0
}

.v2-recruit-overview #supportListContainer {
    margin-inline: 0
}

.v2-recruit-overview #supportListContainer > div {
    min-width: 0;
    padding-inline: 0
}



.v2-theme .v2-recruit-overview .rc-subs .w-100 {
    min-width: 0 !important;
    max-width: 100% !important
}

.v2-certification-status .card {
    padding: 24px;
    border: 1px solid var(--line);
    border-radius: 16px;
    box-shadow: none
}

.v2-certification-status .ttl {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 18px;
    font-weight: 800;
    margin: 0
}

.v2-certification-status .material-icons.in-icon {
    position: static;
    inset: auto;
    z-index: auto;
    margin: 0;
    padding: 0;
    line-height: 1
}

.v2-certification-status .my-guide > .material-icons {
    flex-shrink: 0;
    font-size: 26px
}

.v2-certification-status .cert-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 14px 0 0
}

.v2-certification-status .cert-actions > * {
    width: auto;
    max-width: none
}

.v2-certification-status .my-cguide summary {
    cursor: pointer
}

.v2-certification-status .material-icons {
    font-size: 22px;
    vertical-align: middle
}



/* My pages use the reference components with semantic buttons and real data. */
.v2-my-page {
    min-width: 0
}

.v2-my-page [hidden] {
    display: none !important
}

.v2-my-page .my-seg button, .v2-my-page .my-tabs button {
    height: 38px;
    padding: 0 18px;
    border: 0;
    border-radius: 9px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    color: var(--sub);
    cursor: pointer;
    background: transparent;
    white-space: nowrap
}

.v2-my-page .my-seg button.on, .v2-my-page .my-tabs button.on {
    background: #fff;
    color: var(--ink);
    box-shadow: var(--sh)
}

.v2-my-page .subtabs button {
    border: 0;
    background: transparent;
    font: inherit;
    color: var(--sub);
    padding: 0;
    cursor: pointer;
    white-space: nowrap
}

.v2-my-page .subtabs button.on {
    color: var(--g);
    font-weight: 700
}

.v2-my-page .row {
    margin-inline: 0
}

.v2-my-page .row > * {
    max-width: none
}

.v2-my-page .row > .sp {
    flex: 1
}

.v2-my-page .material-icons {
    position: static;
    inset: auto;
    z-index: auto;
    font-size: 22px;
    line-height: 1;
    flex-shrink: 0;
    vertical-align: middle
}

.v2-my-page .my-alarm-tools {
    margin-top: 20px;
    gap: 12px;
    flex-wrap: wrap
}

.v2-my-page .my-al .tx {
    border: 0;
    background: transparent;
    text-align: left;
    font: inherit;
    padding: 0;
    cursor: pointer;
    flex: 1;
    min-width: 0
}

.v2-my-page .my-al .tx p {
    overflow-wrap: anywhere
}

.v2-my-page .my-aset > .card, .v2-my-page .my-set {
    display: block;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 22px 24px;
    box-shadow: none
}

.v2-my-page .my-switch {
    position: relative;
    display: inline-flex;
    width: 40px;
    height: 24px;
    flex: 0 0 40px;
    cursor: pointer;
    margin: 0
}

.v2-my-page .my-switch input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
    width: 100%;
    height: 100%;
    margin: 0;
    z-index: 1
}

.v2-my-page .my-switch > span {
    width: 100%;
    height: 100%;
    border-radius: 999px;
    background: #d8dfe4;
    transition: background .15s
}

.v2-my-page .my-switch > span:before {
    content: '';
    display: block;
    width: 18px;
    height: 18px;
    background: #fff;
    border-radius: 50%;
    margin: 3px;
    box-shadow: 0 1px 3px #0002;
    transition: transform .15s
}

.v2-my-page .my-switch input:checked + span {
    background: var(--g)
}

.v2-my-page .my-switch input:checked + span:before {
    transform: translateX(16px)
}

.v2-my-page .my-switch input:focus-visible + span {
    outline: 2px solid var(--g);
    outline-offset: 3px
}

.v2-my-page .my-switch input:disabled + span {
    opacity: .5
}

.v2-my-page .my-srow .tx {
    min-width: 0
}

.v2-my-page .my-srow .tx small {
    overflow-wrap: anywhere
}

.v2-my-page .my-srow form {
    margin: 0;
    flex-shrink: 0
}

.v2-my-page .my-point-history {
    display: block;
    padding: 22px 24px;
    margin-top: 14px;
    border: 1px solid var(--line);
    border-radius: 16px
}

.v2-my-page .my-ptop .card {
    min-width: 0
}

.v2-my-page .my-ptop .ptcard {
    background: linear-gradient(135deg, var(--g), #0d5a50);
    color: #fff
}

.v2-my-page .my-ocards {
    grid-template-columns:repeat(2, minmax(0, 1fr))
}

.v2-my-page .my-oc {
    color: var(--ink);
    min-width: 0;
    display: block
}

.v2-my-page .my-oc h4 {
    font-size: 16px;
    font-weight: 700;
    margin: 12px 0 8px
}

.v2-my-page .my-order-amount {
    font-size: 19px;
    color: var(--g);
    font-weight: 800;
    margin: 8px 0
}

.v2-my-page .my-table-scroll {
    width: 100%;
    max-width: 100%;
    overflow-x: auto
}

.v2-my-page .my-ptbl {
    min-width: 600px
}

.v2-my-page .my-charge-dialog {
    border: 0;
    border-radius: 20px;
    padding: 24px;
    width: min(560px, calc(100vw - 32px));
    max-height: 85vh;
    overflow-y: auto;
    color: var(--ink)
}

.v2-my-page .my-charge-dialog::backdrop {
    background: #10201866
}

.v2-my-page .my-charge-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px
}

.v2-my-page .my-charge-head h3 {
    font-size: 22px;
    font-weight: 800;
    margin: 0
}

.v2-my-page .my-pi {
    gap: 12px
}

.v2-my-page .my-pi input {
    accent-color: var(--g)
}





/* Settings > phone change: keep the reference title bar and the existing NICE flow. */
.v2-my-phone .my-hbar h2 {
    margin: 0;
    line-height: 1.4;
}

.v2-my-phone .phone-change-box {
    margin: 0 auto;
}

.v2-my-phone .phone-change-description {
    color: var(--ink2);
    font-size: 14.5px;
    line-height: 1.7;
    text-align: center;
}

.v2-my-phone .phone-current-number {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 8px;
}

.v2-my-phone .phone-verification-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}

.v2-my-phone #verifiedPhone {
    flex: 1;
    min-width: 160px;
}

.v2-my-phone .phone-verification-row .btn {
    flex-shrink: 0;
    white-space: nowrap;
}



/* Settings documents share the reference back control, reading panel and contents. */
.v2-settings-document .my-dochead .my-back {
    flex-shrink: 0;
}

.v2-settings-document .my-dochead h2 {
    margin: 0;
    line-height: 1.4;
}

.v2-settings-document .my-doc {
    grid-template-columns: minmax(0, 1fr) 210px;
}

.v2-settings-document .my-legal {
    min-width: 0;
    overflow-wrap: anywhere;
}

.v2-settings-document .my-legal .p1 {
    margin: 4px 0;
}

.v2-settings-document .my-tocsel select {
    flex: 1;
    min-width: 0;
}

.v2-ad-inquiry .my-hbar h2 {
    margin: 0;
    line-height: 1.4;
}

.v2-ad-inquiry .my-ad-form {
    width: min(820px, 100%);
    margin: 0 auto;
}

.v2-ad-inquiry .my-ad-form > .ttl {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 18px;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.5;
}

.v2-ad-inquiry .grid2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.v2-ad-inquiry .my-inquiry-upload {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 22px 16px;
    border: 1px dashed var(--line);
    border-radius: 12px;
    cursor: pointer;
    text-align: center;
    background: var(--bg);
}

.v2-ad-inquiry .my-inquiry-upload small {
    flex-basis: 100%;
    font-size: 14px;
    color: var(--sub);
}

.v2-ad-inquiry #inquiryAttachments {
    display: block;
    width: 100%;
    margin-top: 8px;
    font-size: 14px;
}

.v2-ad-inquiry .my-inquiry-files {
    padding-left: 20px;
    margin-top: 8px;
    font-size: 14px;
    overflow-wrap: anywhere;
}

.v2-ad-inquiry .my-inquiry-consent {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    line-height: 1.6;
    margin-top: 4px;
}

.v2-ad-inquiry .my-inquiry-consent input {
    flex-shrink: 0;
    margin-top: 5px;
    accent-color: var(--g);
}

.v2-ad-inquiry .my-nextbar {
    position: static;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 20px;
}

.v2-ad-inquiry .tox-tinymce {
    max-width: 100%;
    border-radius: 10px;
    border-color: var(--line);
}





/* 기업인증 초기화: 설정 시안의 경고 카드와 인증 영역 */
.v2-cert-reset .my-hbar h2 {
    margin: 0;
}

.v2-cert-reset .my-warnbox > .material-icons {
    flex: 0 0 22px;
    font-size: 22px;
    line-height: 1;
    margin-top: 2px;
}

.v2-cert-reset .phone-verification-row {
    margin-top: 0;
}

.v2-cert-reset .my-box {
    min-width: 0;
}

/* 포인트 화면은 채용현황과 동일한 구독 요약 카드를 사용합니다. */
.v2-point-summary {
    padding-top: 24px;
}

.v2-point-summary .rc-stat > div {
    min-width: 0;
}

.v2-point-summary .rc-stat .muted {
    display: block;
    overflow-wrap: anywhere;
}

/* 포인트 요약과 기존 결제 영역의 폭과 간격을 통일합니다. */
.v2-point-page .point-title .my-hbar {
    margin-bottom: 20px;
}

.v2-point-page .point-title h2 {
    margin: 0;
}

.v2-theme .v2-point-page > .v2-point-summary,
.v2-theme .v2-point-page > .point-content {
    width: 100%;
    max-width: 100% !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
}

.v2-point-page .point-content > .content {
    margin: 0;
    padding: 0;
}

.v2-point-summary .rc-stats {
    grid-template-columns: minmax(0, 1fr);
    margin-bottom: 16px;
}

.v2-point-summary .rc-stats .rc-stat {
    flex-direction: row;
    align-items: center;
    padding: 18px 20px;
}

.v2-point-summary .rc-subs-h {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 12px;
    align-items: center;
}

.v2-point-summary .rc-subs-h .sp {
    display: none;
}

.v2-point-summary .rc-subs-h .ttl {
    min-width: 0;
    line-height: 1.5;
}

.v2-point-summary .rc-subs-h .rc-evt {
    max-width: 100%;
    overflow-wrap: anywhere;
}

.v2-point-summary .rc-subs-h > .btn {
    grid-column: 3;
    white-space: nowrap;
}

/* 영업 Tool 페이지는 GNB와 좌측 메뉴를 같은 스크롤 기준으로 유지한다. */
body.v2-tools-scroll-layout .v2-header {
    position: sticky;
    top: 0;
    z-index: 10000;
}

body.v2-tools-scroll-layout .v2-subpage-frame .v2-subnav .lnb {
    top: 96px;
    z-index: 30;
}

body.v2-tools-scroll-layout .v2-tools-page .tl-tabs {
    top: 73px;
    z-index: 31;
}

body.v2-tools-scroll-layout .v2-tools-page .tl-tabs a[aria-current="true"] {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff;
    box-shadow: 0 8px 18px rgba(17, 17, 17, .12);
}




















/* end: pages.css migrated from shared root */

/* begin: prototype.css migrated from shared root */
/* Scoped design from the supplied PC/tablet/mobile renewal HTML. */
.v2-prototype {
    --g: #127A6C;
    --g2: #0E6457;
    --g-l: #E7F3F0;
    --g-ll: #F3F9F7;
    --o: #F29B21;
    --o2: #E0820A;
    --o-l: #FFF3E2;
    --ink: #16191F;
    --ink2: #3A404B;
    --sub: #6B7280;
    --mute: #9AA1AC;
    --line: #E5E8EC;
    --line2: #EEF0F3;
    --bg: #F6F7F9;
    --card: #fff;
    --band: #EAF2F8;
    --band2: #DCEAF5;
    --blue: #2F6FDB;
    --blue-l: #EAF1FC;
    --red: #E5484D;
    --red-l: #FDECEC;
    --pur: #6E56CF;
    --pur-l: #F1EEFC;
    --r: 14px;
    --r2: 10px;
    --sh: 0 1px 2px rgba(16, 24, 40, .05), 0 2px 8px rgba(16, 24, 40, .05);
    --sh2: 0 12px 40px rgba(16, 24, 40, .16);
    --f: "Pretendard", "-apple-system", "Noto Sans KR", "Malgun Gothic", "Apple SD Gothic Neo", system-ui, sans-serif;
}

.v2-prototype * {
    box-sizing: border-box
}

.v2-prototype, .v2-prototype {
    margin: 0;
    padding: 0
}

.v2-prototype {
    scroll-behavior: smooth
}

.v2-prototype {
    font-family: var(--f);
    color: var(--ink);
    background: #fff;
    font-size: 14px;
    line-height: 1.55;
    -webkit-font-smoothing: antialiased;
    word-break: keep-all
}

.v2-prototype a {
    color: inherit;
    text-decoration: none;
    cursor: pointer
}

.v2-prototype button {
    font: inherit;
    cursor: pointer;
    color: inherit
}

.v2-prototype input, .v2-prototype select, .v2-prototype textarea {
    font: inherit;
    color: inherit
}

.v2-prototype img {
    max-width: 100%;
    display: block
}

.v2-prototype h1, .v2-prototype h2, .v2-prototype h3, .v2-prototype h4, .v2-prototype h5 {
    margin: 0;
    letter-spacing: -.02em
}

.v2-prototype p {
    margin: 0
}

.v2-prototype .wrap {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px
}

.v2-prototype .hide {
    display: none !important
}

.v2-prototype .sr {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0)
}

.v2-prototype ::selection {
    background: var(--g-l)
}

.v2-prototype .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 40px;
    padding: 0 16px;
    border-radius: 10px;
    border: 1px solid var(--line);
    background: #fff;
    font-weight: 600;
    font-size: 14px;
    white-space: nowrap;
    transition: background .15s, border-color .15s, color .15s, transform .15s, box-shadow .15s
}

.v2-prototype .btn:hover {
    border-color: #cfd5dc;
    background: #fafbfc
}

.v2-prototype .btn.pri {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .btn.pri:hover {
    background: var(--g2)
}

.v2-prototype .btn.dark {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff
}

.v2-prototype .btn.dark:hover {
    background: #000
}

.v2-prototype .btn.org {
    background: var(--o);
    border-color: var(--o);
    color: #fff
}

.v2-prototype .btn.org:hover {
    background: var(--o2)
}

.v2-prototype .btn.soft {
    background: var(--g-l);
    border-color: var(--g-l);
    color: var(--g2)
}

.v2-prototype .btn.line-g {
    border-color: var(--g);
    color: var(--g)
}

.v2-prototype .btn.red {
    color: var(--red);
    border-color: #f3c5c7
}

.v2-prototype .btn.ghost {
    border-color: transparent;
    background: transparent
}

.v2-prototype .btn.ghost:hover {
    background: var(--bg)
}

.v2-prototype .btn.sm {
    height: 32px;
    padding: 0 11px;
    font-size: 14px;
    border-radius: 8px
}

.v2-prototype .btn.xs {
    height: 26px;
    padding: 0 9px;
    font-size: 14px;
    border-radius: 7px
}

.v2-prototype .btn.lg {
    height: 50px;
    padding: 0 22px;
    font-size: 15px;
    border-radius: 12px
}

.v2-prototype .btn.blk {
    width: 100%
}

.v2-prototype .btn[disabled], .v2-prototype .btn.off {
    opacity: .42;
    pointer-events: none
}

.v2-prototype .lnk {
    color: var(--g);
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 4px
}

.v2-prototype .lnk:hover {
    text-decoration: underline
}

.v2-prototype .ulink {
    color: var(--blue);
    text-decoration: underline;
    cursor: pointer
}

.v2-prototype .tag {
    display: inline-flex;
    align-items: center;
    height: 22px;
    padding: 0 8px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    background: var(--bg);
    color: var(--ink2);
    white-space: nowrap
}

.v2-prototype .tag.g {
    background: var(--g-l);
    color: var(--g2);
    max-width: fit-content;
}

.v2-prototype .tag.o {
    background: var(--o-l);
    color: #B25F00
}

.v2-prototype .tag.b {
    background: var(--blue-l);
    color: #2459B5
}

.v2-prototype .tag.r {
    background: var(--red-l);
    color: #C2272D
}

.v2-prototype .tag.p {
    background: var(--pur-l);
    color: #5340B3
}

.v2-prototype .tag.k {
    background: var(--ink);
    color: #fff;
    max-width: fit-content;
}

.v2-prototype .tag.line {
    background: #fff;
    border: 1px solid var(--line)
}

.v2-prototype .tag.sand {
    background: #EFE9DD;
    color: #7B6A47
}

.v2-prototype .tag.ex {
    background: #FFF6C9;
    color: #8A6D00;
    height: 18px;
    font-size: 14px;
    padding: 0 5px;
    border-radius: 4px
}

.v2-prototype .chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 34px;
    padding: 0 13px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 14px;
    color: var(--ink2);
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
    transition: all .15s
}

.v2-prototype .chip:hover {
    border-color: #c9cfd6
}

.v2-prototype .chip.on {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff
}

.v2-prototype .chip.g.on {
    background: var(--g);
    border-color: var(--g)
}

.v2-prototype .chip.ck:before {
    content: "";
    width: 12px;
    height: 12px;
    border-radius: 3px;
    border: 1.5px solid #c5cbd3;
    display: inline-block
}

.v2-prototype .chip.ck.on:before {
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2l2.2 2.2L9.6 3.4' fill='none' stroke='%23127A6C' stroke-width='2'/%3E%3C/svg%3E") center/10px no-repeat;
    border-color: #fff
}

.v2-prototype .chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px
}

.v2-prototype .seg {
    display: inline-flex;
    background: var(--bg);
    border-radius: 999px;
    padding: 4px;
    gap: 2px
}

.v2-prototype .seg > * {
    height: 34px;
    padding: 0 16px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    font-size: 14px;
    font-weight: 600;
    color: var(--sub);
    cursor: pointer;
    border: 0;
    background: none;
    white-space: nowrap
}

.v2-prototype .seg > .on {
    background: var(--ink);
    color: #fff;
    box-shadow: var(--sh)
}

.v2-prototype .seg.w > .on {
    background: #fff;
    color: var(--ink)
}

.v2-prototype .seg.lg > * {
    height: 42px;
    padding: 0 24px;
    font-size: 15px
}

.v2-prototype .dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--red);
    display: inline-block
}

.v2-prototype .badge-n {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: var(--red);
    color: #fff;
    font-size: 14px;
    font-weight: 700
}

.v2-prototype .inp {
    width: 100%;
    height: 44px;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 0 13px;
    background: #fff;
    outline: none;
    transition: border-color .15s, box-shadow .15s
}

.v2-prototype .inp:focus {
    border-color: var(--g);
    box-shadow: 0 0 0 3px rgba(18, 122, 108, .12)
}

.v2-prototype .inp.sm {
    height: 36px;
    font-size: 14px;
    border-radius: 8px
}

.v2-prototype textarea.inp {
    height: auto;
    min-height: 110px;
    padding: 11px 13px;
    resize: vertical;
    line-height: 1.6
}

.v2-prototype select.inp {
    appearance: none;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5l3 3 3-3' fill='none' stroke='%236B7280' stroke-width='1.5'/%3E%3C/svg%3E") right 12px center/12px no-repeat;
    padding-right: 32px
}

.v2-prototype .inp[readonly], .v2-prototype .inp:disabled {
    background: var(--bg);
    color: var(--sub)
}

.v2-prototype .inp.err {
    border-color: var(--red);
    box-shadow: 0 0 0 3px rgba(229, 72, 77, .1)
}

.v2-prototype .fld {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 14px
}

.v2-prototype .fld > label, .v2-prototype .lbl {
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2)
}

.v2-prototype .fld > label i, .v2-prototype .lbl i, .v2-prototype .req {
    color: var(--red);
    font-style: normal
}

.v2-prototype .help {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .grid2 {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 12px
}

.v2-prototype .grid3 {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 12px
}

.v2-prototype .grid4 {
    display: grid;
    grid-template-columns:repeat(4, 1fr);
    gap: 12px
}

.v2-prototype .ckb {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    cursor: pointer;
    font-size: 14px;
    user-select: none
}

.v2-prototype .ckb input {
    width: 17px;
    height: 17px;
    accent-color: var(--g);
    margin: 0
}

.v2-prototype .sw {
    position: relative;
    width: 42px;
    height: 24px;
    border-radius: 999px;
    background: #D5DAE0;
    cursor: pointer;
    transition: background .2s;
    flex: none;
    display: inline-block
}

.v2-prototype .sw:after {
    content: "";
    position: absolute;
    left: 3px;
    top: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .2);
    transition: left .2s
}

.v2-prototype .sw.on {
    background: var(--g)
}

.v2-prototype .sw.on:after {
    left: 21px
}

.v2-prototype .search {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 46px;
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 0 6px 0 14px;
    background: #fff
}

.v2-prototype .search input {
    border: 0;
    outline: 0;
    flex: 1;
    height: 100%;
    background: none;
    min-width: 0
}

.v2-prototype .search .sep {
    width: 1px;
    height: 20px;
    background: var(--line)
}

.v2-prototype .drop {
    border: 1.5px dashed #cfd5dc;
    border-radius: 12px;
    background: var(--g-ll);
    padding: 22px;
    text-align: center;
    color: var(--sub);
    font-size: 14px;
    cursor: pointer;
    transition: border-color .15s, background .15s
}

.v2-prototype .drop:hover {
    border-color: var(--g);
    background: var(--g-l)
}

.v2-prototype .filechip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 30px;
    padding: 0 10px;
    border-radius: 8px;
    background: var(--bg);
    font-size: 14px;
    color: var(--blue)
}

.v2-prototype .filechip b {
    color: var(--sub);
    font-weight: 400
}

.v2-prototype .prog {
    height: 6px;
    border-radius: 999px;
    background: var(--line2);
    overflow: hidden
}

.v2-prototype .prog > i {
    display: block;
    height: 100%;
    background: var(--g);
    border-radius: 999px;
    transition: width .3s
}

.v2-prototype .card.flat {
    border: 0;
    background: var(--bg)
}

.v2-prototype .card.hov {
    transition: border-color .15s, box-shadow .15s, transform .15s;
    cursor: pointer
}

.v2-prototype .card.hov:hover {
    border-color: #cfd6dd;
    box-shadow: var(--sh);
    transform: translateY(-2px)
}

.v2-prototype .card.sel {
    border-color: var(--g);
    box-shadow: 0 0 0 1px var(--g)
}

.v2-prototype .card h3, .v2-prototype .ttl {
    font-size: 17px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .ttl .ic {
    width: 20px;
    height: 20px;
    color: var(--g)
}

.v2-prototype .sec {
    margin-top: 28px
}

.v2-prototype .sec-h {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px
}

.v2-prototype .sec-h h2 {
    font-size: 20px;
    font-weight: 800
}

.v2-prototype .row.w {
    flex-wrap: wrap
}

.v2-prototype .sp {
    flex: 1
}

.v2-prototype .muted {
    color: var(--sub)
}

.v2-prototype .mute2 {
    color: var(--mute)
}

.v2-prototype .sm {
    font-size: 14px
}

.v2-prototype .xs {
    font-size: 14px
}

.v2-prototype .b {
    font-weight: 700
}

.v2-prototype .g {
    color: var(--g)
}

.v2-prototype .o {
    color: var(--o2)
}

.v2-prototype .r {
    color: var(--red)
}

.v2-prototype .bl {
    color: var(--blue)
}

.v2-prototype .num {
    font-variant-numeric: tabular-nums
}

.v2-prototype .ell {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.v2-prototype .ell2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.v2-prototype .hr {
    height: 1px;
    background: var(--line);
    margin: 18px 0
}

.v2-prototype table.t {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.5px
}

.v2-prototype table.t th {
    font-weight: 600;
    color: var(--sub);
    background: var(--bg);
    text-align: left;
    padding: 11px 12px;
    border-bottom: 1px solid var(--line);
    white-space: nowrap
}

.v2-prototype table.t td {
    padding: 12px;
    border-bottom: 1px solid var(--line2);
    vertical-align: middle
}

.v2-prototype table.t tr.hl td {
    background: #FFF7F5
}

.v2-prototype table.t tr.sum td {
    background: #FDF1F1;
    font-weight: 700
}

.v2-prototype table.t.c th, .v2-prototype table.t.c td {
    text-align: center
}

.v2-prototype table.t tbody tr:hover td {
    background: #FBFCFC
}

.v2-prototype table.kv {
    width: 100%;
    border-collapse: collapse
}

.v2-prototype table.kv th {
    width: 132px;
    text-align: left;
    font-weight: 500;
    color: var(--sub);
    font-size: 14px;
    padding: 12px 14px;
    background: var(--bg);
    border-bottom: 1px solid #fff;
    vertical-align: top
}

.v2-prototype table.kv td {
    padding: 12px 14px;
    border-bottom: 1px solid var(--line2);
    font-size: 14px
}

.v2-prototype .empty {
    padding: 46px 20px;
    text-align: center;
    color: var(--sub);
    font-size: 14px
}

.v2-prototype .empty .ic {
    width: 40px;
    height: 40px;
    margin: 0 auto 10px;
    color: #C2C8D0
}

.v2-prototype .pager {
    display: flex;
    justify-content: center;
    gap: 4px;
    margin-top: 22px
}

.v2-prototype .pager a {
    min-width: 32px;
    height: 32px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .pager a:hover {
    background: var(--bg)
}

.v2-prototype .pager a.on {
    background: var(--ink);
    color: #fff;
    font-weight: 700
}

.v2-prototype .note {
    font-size: 14px;
    color: var(--mute);
    text-align: center;
    margin-top: 8px
}

.v2-prototype .ic {
    width: 18px;
    height: 18px;
    flex: none;
    display: inline-block;
    vertical-align: middle
}

.v2-prototype .av {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #E9EDF1;
    flex: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #9AA3AE;
    overflow: hidden
}

.v2-prototype .av svg {
    width: 60%;
    height: 60%
}

.v2-prototype .av.lg {
    width: 74px;
    height: 74px
}

.v2-prototype .logo-ph {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #fff;
    border: 1px solid var(--line);
    font-weight: 800;
    font-size: 14px;
    letter-spacing: -.02em;
    flex: none;
    color: var(--ink2);
    overflow: hidden;
    text-align: center;
    line-height: 1.1;
    padding: 2px
}

.v2-prototype .stars {
    color: #F5A524;
    letter-spacing: 1px
}

.v2-prototype .stat {
    display: flex;
    flex-direction: column;
    gap: 4px
}

.v2-prototype .stat small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .stat b {
    font-size: 24px;
    font-weight: 800;
    letter-spacing: -.02em
}

.v2-prototype .kpis {
    display: grid;
    grid-template-columns:repeat(4, 1fr);
    border: 1px solid var(--line);
    border-radius: 12px;
    overflow: hidden;
    background: #fff
}

.v2-prototype .kpis > div {
    padding: 14px 10px;
    text-align: center;
    border-right: 1px solid var(--line2)
}

.v2-prototype .kpis > div:last-child {
    border-right: 0
}

.v2-prototype .kpis small {
    display: block;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .kpis b {
    font-size: 20px;
    font-weight: 800
}

.v2-prototype #hd {
    position: sticky;
    top: 0;
    z-index: 60;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: saturate(1.4) blur(10px);
    border-bottom: 1px solid var(--line2)
}

.v2-prototype #hd .wrap {
    display: flex;
    align-items: center;
    height: 72px;
    gap: 34px
}

.v2-prototype #hd .lg {
    display: flex;
    align-items: center;
    flex: none
}

.v2-prototype #hd .lg img {
    height: 28px;
    width: auto
}

.v2-prototype .gnb {
    display: flex;
    align-items: stretch;
    height: 100%;
    gap: 2px
}

.v2-prototype .gnb > a {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0 15px;
    font-size: 16px;
    font-weight: 700;
    color: var(--ink);
    position: relative;
    transition: color .15s
}

.v2-prototype .gnb > a svg {
    width: 12px;
    height: 12px;
    color: var(--mute);
    transition: transform .2s
}

.v2-prototype .gnb > a:after {
    content: "";
    position: absolute;
    left: 15px;
    right: 15px;
    bottom: -1px;
    height: 2px;
    background: var(--g);
    transform: scaleX(0);
    transition: transform .2s
}

.v2-prototype .gnb > a:hover, .v2-prototype .gnb > a.open {
    color: var(--g)
}

.v2-prototype .gnb > a.open svg {
    transform: rotate(180deg);
    color: var(--g)
}

.v2-prototype .gnb > a.cur:after, .v2-prototype .gnb > a.open:after {
    transform: scaleX(1)
}

.v2-prototype .util {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-left: auto;
    font-size: 13.5px
}

.v2-prototype .util .myjs {
    font-weight: 700;
    color: var(--ink2);
    padding: 6px 4px
}

.v2-prototype .util .myjs:hover {
    color: var(--g)
}

.v2-prototype .pill-cert {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 32px;
    padding: 0 13px;
    border-radius: 999px;
    background: var(--g);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    position: relative
}

.v2-prototype .pill-cert svg {
    width: 14px;
    height: 14px
}

.v2-prototype .pill-login {
    display: inline-flex;
    align-items: center;
    height: 32px;
    padding: 0 15px;
    border-radius: 999px;
    border: 1.5px solid var(--g);
    color: var(--g);
    font-size: 14px;
    font-weight: 700
}

.v2-prototype .pill-login:hover {
    background: var(--g);
    color: #fff
}

.v2-prototype .who {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 700;
    color: var(--g2);
    cursor: pointer;
    position: relative;
    height: 40px
}

.v2-prototype .who svg {
    width: 16px;
    height: 16px
}

.v2-prototype .bell {
    position: relative;
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%
}

.v2-prototype .bell:hover {
    background: var(--bg)
}

.v2-prototype .bell svg {
    width: 20px;
    height: 20px
}

.v2-prototype .bell .badge-n {
    position: absolute;
    top: -2px;
    right: -8px
}

.v2-prototype .hov-menu {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: var(--sh2);
    padding: 8px;
    min-width: 190px;
    display: none;
    z-index: 70
}

.v2-prototype .hov-menu:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -10px;
    height: 10px
}

.v2-prototype .hov-menu a {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 9px 12px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    color: var(--ink2);
    white-space: nowrap
}

.v2-prototype .hov-menu a:hover {
    background: var(--g-ll);
    color: var(--g2)
}

.v2-prototype .has-hov:hover .hov-menu {
    display: block
}

.v2-prototype .hov-menu .sep {
    height: 1px;
    background: var(--line2);
    margin: 6px 4px
}

.v2-prototype #mega {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    background: #fff;
    border-bottom: 1px solid var(--line);
    box-shadow: 0 18px 40px rgba(16, 24, 40, .10);
    display: none;
    animation: megaIn .22s ease
}

.v2-prototype #mega.on {
    display: block
}

@keyframes megaIn {
    from {
        opacity: 0;
        transform: translateY(-6px)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.v2-prototype #mega .wrap {
    display: flex;
    gap: 18px;
    padding-top: 24px;
    padding-bottom: 28px;
    height: auto;
    align-items: stretch
}

.v2-prototype .mg-col {
    background: var(--bg);
    border-radius: 14px;
    padding: 18px 18px 16px;
    min-width: 176px
}

.v2-prototype .mg-col h5 {
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    color: var(--g2);
    background: var(--g-l);
    padding: 4px 10px;
    border-radius: 999px;
    margin-bottom: 10px
}

.v2-prototype .mg-col a {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 6px 2px;
    font-size: 14.5px;
    font-weight: 600;
    color: var(--ink2)
}

.v2-prototype .mg-col a:hover {
    color: var(--g)
}

.v2-prototype .mg-col a.wr {
    margin-top: 6px;
    font-size: 14px
}

.v2-prototype .mg-col a.wr svg {
    width: 15px;
    height: 15px;
    color: var(--sub)
}

.v2-prototype .mg-col .gap {
    height: 10px
}

.v2-prototype .mg-ad {
    flex: 1;
    min-width: 260px;
    border-radius: 14px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 22px;
    color: #fff;
    min-height: 170px
}

.v2-prototype .mg-ad .ctl {
    position: absolute;
    right: 12px;
    top: 12px;
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    background: rgba(0, 0, 0, .25);
    border-radius: 999px;
    padding: 3px 4px
}

.v2-prototype .mg-ad .ctl button {
    width: 22px;
    height: 22px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .2);
    color: #fff;
    font-size: 14px;
    line-height: 1
}

.v2-prototype .mg-ad small {
    opacity: .8;
    font-size: 14px
}

.v2-prototype .mg-ad b {
    font-size: 19px;
    line-height: 1.35;
    margin-top: 4px
}

.v2-prototype .mg-tools {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 10px;
    flex: 2
}

.v2-prototype .mg-tool {
    border-radius: 14px;
    background: var(--bg);
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    position: relative;
    min-height: 96px;
    transition: background .15s, transform .15s;
    cursor: pointer
}

.v2-prototype .mg-tool:hover {
    background: var(--g-l);
    transform: translateY(-2px)
}

.v2-prototype .mg-tool b {
    font-size: 15px
}

.v2-prototype .mg-tool span {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .mg-tool .ico {
    position: absolute;
    right: 12px;
    bottom: 12px;
    width: 30px;
    height: 30px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    color: var(--g)
}

.v2-prototype .mg-tool.dk {
    background: var(--ink);
    color: #fff
}

.v2-prototype .mg-tool.dk span {
    color: #AEB4BE
}

.v2-prototype .mg-tool.dk:hover {
    background: #000
}

.v2-prototype .mg-db {
    flex: 2;
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .mg-news {
    flex: 2.4;
    display: grid;
    grid-template-columns:repeat(4, 1fr);
    gap: 10px
}

.v2-prototype .mg-news a {
    border-radius: 12px;
    overflow: hidden;
    background: var(--ink);
    color: #fff;
    display: flex;
    flex-direction: column
}

.v2-prototype .mg-news .th {
    height: 96px;
    position: relative
}

.v2-prototype .mg-news .th:after {
    content: "▶";
    position: absolute;
    right: 8px;
    bottom: 8px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .85);
    color: #111;
    font-size: 9px;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .mg-news p {
    padding: 10px 12px;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4
}

.v2-prototype .mg-about {
    flex: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    font-size: 24px;
    font-weight: 800;
    color: var(--g2);
    background: linear-gradient(120deg, var(--g-ll), #fff);
    border-radius: 14px
}

.v2-prototype .mg-about .cur {
    display: inline-block;
    width: 2px;
    height: 28px;
    background: var(--g);
    margin-left: 3px;
    animation: blink 1s step-end infinite;
    vertical-align: middle
}

@keyframes blink {
    50% {
        opacity: 0
    }
}

.v2-prototype #mega-dim {
    position: fixed;
    inset: 72px 0 0;
    background: rgba(15, 20, 30, .18);
    z-index: 55;
    display: none
}

.v2-prototype #mega-dim.on {
    display: block
}

.v2-prototype .nbar {
    background: #F2F7FB;
    border-bottom: 1px solid #E3ECF4;
    font-size: 13px
}

.v2-prototype .nbar .wrap {
    display: flex;
    align-items: center;
    height: 40px;
    gap: 30px;
    overflow: hidden
}

.v2-prototype .nbar a {
    color: #3B4A5C;
    white-space: nowrap
}

.v2-prototype .nbar a b {
    color: var(--blue);
    font-weight: 700;
    margin-right: 6px
}

.v2-prototype .nbar a:hover {
    color: var(--blue)
}

.v2-prototype .nbar .more {
    margin-left: auto;
    color: var(--blue);
    font-weight: 700;
    flex: none
}

.v2-prototype .band {
    background: linear-gradient(105deg, #EAF2F8 0%, #E3EFEA 100%);
    position: relative;
    overflow: hidden
}

.v2-prototype .band:after {
    content: "";
    position: absolute;
    right: -60px;
    top: -80px;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(18, 122, 108, .10), rgba(18, 122, 108, 0) 70%)
}

.v2-prototype .band .wrap {
    display: flex;
    align-items: center;
    gap: 30px;
    min-height: 178px;
    padding-top: 24px;
    padding-bottom: 26px;
    position: relative;
    z-index: 1
}

.v2-prototype .band .crumb {
    font-size: 14px;
    color: var(--sub);
    display: flex;
    gap: 6px;
    align-items: center;
    margin-bottom: 10px
}

.v2-prototype .band .crumb a:hover {
    color: var(--g)
}

.v2-prototype .band h1 {
    font-size: 34px;
    font-weight: 800;
    letter-spacing: -.03em
}

.v2-prototype .band p.sub {
    margin-top: 6px;
    color: var(--ink2);
    font-size: 15px
}

.v2-prototype .band .acts {
    display: flex;
    gap: 8px;
    margin-top: 16px
}

.v2-page-band .v2-wrap .side, .v2-prototype .band .side {
    margin-left: auto;
    display: flex;
    gap: 10px
}


.v2-prototype .band.db {
    background: linear-gradient(105deg, #ECEBFB 0%, #E8F1F7 100%)
}

.v2-page-band .qcard, .v2-prototype .qcard {
    width: 186px;
    height: 116px;
    border-radius: 14px;
    background: #fff;
    padding: 14px;
    display: flex;
    flex-direction: column;
    box-shadow: var(--sh);
    position: relative;
    cursor: pointer;
    transition: transform .15s
}

.v2-page-band .qcard:hover, .v2-prototype .qcard:hover {
    transform: translateY(-3px)
}

.v2-page-band .qcard b, .v2-prototype .qcard b {
    font-size: 14px;
    line-height: 1.35
}

.v2-page-band .qcard span, .v2-prototype .qcard span {
    font-size: 14px;
    color: var(--sub);
    margin-top: 3px
}

.v2-page-band .qcard em, .v2-prototype .qcard em {
    font-style: normal;
    font-size: 14px;
    font-weight: 700;
    color: var(--g);
    margin-top: auto
}

.v2-page-band .qcard i, .v2-prototype .qcard i {
    position: absolute;
    right: 12px;
    bottom: 12px;
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: var(--g-l);
    color: var(--g);
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-page-band .qcard.dk, .v2-prototype .qcard.dk {
    background: var(--g2);
    color: #fff
}

.v2-page-band .qcard.dk span, .v2-prototype .qcard.dk span {
    color: #CFE6E1
}

.v2-page-band .qcard.dk em, .v2-prototype .qcard.dk em {
    color: #fff
}

.v2-page-band .qcard.dk i, .v2-prototype .qcard.dk i {
    background: rgba(255, 255, 255, .15);
    color: #fff
}

.v2-prototype .body {
    display: flex;
    gap: 40px;
    padding-top: 36px;
    padding-bottom: 90px;
    align-items: flex-start
}

.v2-prototype .lnb {
    width: 208px;
    flex: none;
    position: sticky;
    top: 96px;
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .lnb .box {
    background: var(--bg);
    border-radius: 14px;
    padding: 16px 12px 12px
}

.v2-prototype .lnb .box h4 {
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    color: var(--g2);
    background: var(--g-l);
    padding: 4px 11px;
    border-radius: 999px;
    margin: 0 0 8px 6px
}

.v2-prototype .lnb a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 10px;
    border-radius: 9px;
    font-size: 14.5px;
    font-weight: 600;
    color: var(--ink2);
    transition: background .15s, color .15s
}

.v2-prototype .lnb a:hover {
    background: #fff;
    color: var(--g)
}

.v2-prototype .lnb a.on {
    background: var(--ink);
    color: #fff
}

.v2-prototype .lnb a .badge-n {
    margin-left: auto
}

.v2-prototype .lnb a.wr {
    background: var(--bg);
    border-radius: 12px;
    padding: 13px 14px
}

.v2-prototype .lnb a.wr svg {
    width: 16px;
    height: 16px;
    color: var(--sub)
}

.v2-prototype .lnb a.wr.on {
    background: var(--ink);
    color: #fff
}

.v2-prototype .lnb a.wr.on svg {
    color: #fff
}

.v2-prototype .lnb a.prep {
    color: var(--mute)
}

.v2-prototype .lnb a.prep:after {
    content: "준비중";
    margin-left: auto;
    font-size: 14px;
    font-weight: 600;
    background: #fff;
    color: var(--mute);
    padding: 1px 6px;
    border-radius: 5px
}

.v2-prototype .main {
    flex: 1;
    min-width: 0
}

.v2-prototype .fbanner {
    background: #0F4F46;
    color: #fff
}

.v2-prototype .fbanner .wrap {
    display: flex;
    align-items: center;
    height: 110px
}

.v2-prototype .fbanner h3 {
    font-size: 22px;
    font-weight: 800
}

.v2-prototype .fbanner p {
    font-size: 14px;
    opacity: .75;
    margin-top: 4px
}

.v2-prototype .fbanner .btn {
    margin-left: auto;
    background: #fff;
    color: var(--g2);
    border-color: #fff;
    border-radius: 999px
}

.v2-prototype #ft {
    background: #F6F3EE;
    color: #4B4F57;
    font-size: 13px
}

.v2-prototype #ft .wrap {
    padding-top: 38px;
    padding-bottom: 44px
}

.v2-prototype #ft .top {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    padding-bottom: 24px;
    border-bottom: 1px solid #E4DED4
}

.v2-prototype #ft .cs small {
    display: block;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype #ft .cs b {
    font-size: 26px;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -.01em
}

.v2-prototype #ft .links {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 22px;
    margin-left: auto;
    max-width: 720px;
    justify-content: flex-end
}

.v2-prototype #ft .links a {
    font-weight: 600
}

.v2-prototype #ft .links a:hover {
    color: var(--g)
}

.v2-prototype #ft .links a.b {
    font-weight: 800;
    color: var(--ink)
}

.v2-prototype #ft .bot {
    padding-top: 22px;
    line-height: 1.85;
    font-size: 14px;
    color: #6E727A
}

.v2-prototype #ft .bot img {
    height: 31px;
    margin-bottom: 8px;
    opacity: .9
}

.v2-prototype .qside {
    position: fixed;
    right: 22px;
    bottom: 96px;
    z-index: 40;
    background: #fff;
    border-radius: 999px;
    box-shadow: var(--sh2);
    display: flex;
    flex-direction: column;
    padding: 6px;
    gap: 2px
}

.v2-prototype .qside a {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink2)
}

.v2-prototype .qside a:hover {
    background: var(--g-l);
    color: var(--g)
}

.v2-prototype .qside svg {
    width: 19px;
    height: 19px
}

.v2-prototype #pop {
    position: fixed;
    inset: 0;
    z-index: 200;
    display: none
}

.v2-prototype #pop.on {
    display: block
}

.v2-prototype #pop .dim {
    position: absolute;
    inset: 0;
    background: rgba(14, 18, 26, .48);
    animation: fade .2s
}

.v2-prototype .pop-stack {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    pointer-events: none
}

.v2-prototype .pbox {
    pointer-events: auto;
    background: #fff;
    border-radius: 20px;
    box-shadow: var(--sh2);
    width: 520px;
    max-width: 100%;
    max-height: calc(100vh - 48px);
    display: flex;
    flex-direction: column;
    animation: popIn .24s cubic-bezier(.2, .8, .3, 1);
    position: relative
}

.v2-prototype .pbox.sm {
    width: 420px
}

.v2-prototype .pbox.md {
    width: 600px
}

.v2-prototype .pbox.lg {
    width: 820px
}

.v2-prototype .pbox.xl {
    width: 1040px
}

.v2-prototype .pbox .ph {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 22px 24px 6px
}

.v2-prototype .pbox .ph h3 {
    font-size: 19px;
    font-weight: 800;
    flex: 1
}

.v2-prototype .pbox .ph small {
    display: block;
    font-size: 14px;
    color: var(--sub);
    font-weight: 500;
    margin-top: 3px;
    letter-spacing: 0
}

.v2-prototype .pbox .x {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 0;
    background: var(--bg);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .pbox .x:hover {
    background: #ECEFF2
}

.v2-prototype .pbox .x svg {
    width: 18px;
    height: 18px
}

.v2-prototype .pbox .pb {
    padding: 14px 24px 20px;
    overflow: auto
}

.v2-prototype .pbox .pf {
    display: flex;
    gap: 8px;
    padding: 14px 24px 22px;
    border-top: 1px solid var(--line2)
}

.v2-prototype .pbox .pf .btn {
    flex: 1;
    height: 48px;
    font-size: 15px
}

.v2-prototype .pbox .pf .btn.f2 {
    flex: 2
}

.v2-prototype .pbox.done {
    background: linear-gradient(160deg, #16877A, #0D5A50);
    color: #fff;
    text-align: center
}

.v2-prototype .pbox.done .ph h3 {
    color: #fff
}

.v2-prototype .pbox.done .x {
    background: rgba(255, 255, 255, .15);
    color: #fff
}

.v2-prototype .pbox.done .pf {
    border-top-color: rgba(255, 255, 255, .15)
}

.v2-prototype .pbox.done .pf .btn {
    background: rgba(255, 255, 255, .12);
    border-color: rgba(255, 255, 255, .35);
    color: #fff
}

.v2-prototype .pbox.done .pf .btn.pri {
    background: #fff;
    color: var(--g2);
    border-color: #fff
}

.v2-prototype .donebox {
    border: 1.5px solid rgba(255, 255, 255, .55);
    border-radius: 16px;
    padding: 20px;
    text-align: left;
    font-size: 14px;
    line-height: 1.7;
    background: rgba(255, 255, 255, .06)
}

@keyframes popIn {
    from {
        opacity: 0;
        transform: translateY(14px) scale(.98)
    }
    to {
        opacity: 1;
        transform: none
    }
}

@keyframes fade {
    from {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

.v2-prototype .pick-grid {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 8px
}

.v2-prototype .pick {
    height: 46px;
    border: 1px solid var(--line);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    user-select: none;
    transition: all .15s;
    background: #fff
}

.v2-prototype .pick:hover {
    border-color: #c9d0d7
}

.v2-prototype .pick.on {
    border-color: var(--g);
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .menu-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 4px;
    border-bottom: 1px solid var(--line2);
    font-size: 15px;
    font-weight: 600
}

.v2-prototype .menu-list a:hover {
    color: var(--g)
}

.v2-prototype .menu-list a.r {
    color: var(--red)
}

.v2-prototype .menu-list a.g {
    color: var(--g)
}

.v2-prototype #toast {
    position: fixed;
    left: 50%;
    bottom: 36px;
    transform: translateX(-50%) translateY(20px);
    background: rgba(22, 25, 31, .94);
    color: #fff;
    padding: 12px 20px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 500;
    opacity: 0;
    pointer-events: none;
    transition: all .25s;
    z-index: 400;
    max-width: 90vw;
    text-align: center
}

.v2-prototype #toast.on {
    opacity: 1;
    transform: translateX(-50%)
}

.v2-prototype #dev {
    position: fixed;
    left: 16px;
    bottom: 16px;
    z-index: 300;
    font-size: 14px
}

.v2-prototype #dev .fab {
    height: 40px;
    padding: 0 15px;
    border-radius: 999px;
    border: 0;
    background: var(--ink);
    color: #fff;
    font-weight: 700;
    box-shadow: var(--sh2);
    display: flex;
    align-items: center;
    gap: 7px
}

.v2-prototype #dev .fab i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--o);
    display: inline-block
}

.v2-prototype #dev .pnl {
    position: absolute;
    left: 0;
    bottom: 50px;
    width: 290px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    box-shadow: var(--sh2);
    padding: 16px;
    display: none
}

.v2-prototype #dev.on .pnl {
    display: block
}

.v2-prototype #dev .pnl h6 {
    font-size: 14px;
    color: var(--sub);
    margin: 0 0 8px;
    font-weight: 700
}

.v2-prototype #dev .roles {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 6px;
    margin-bottom: 12px
}

.v2-prototype #dev .roles button {
    height: 34px;
    border-radius: 9px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 14px;
    font-weight: 600
}

.v2-prototype #dev .roles button.on {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .jl {
    border-top: 2px solid var(--ink)
}

.v2-prototype .jl .hd, .v2-prototype .jl .it {
    display: grid;
    grid-template-columns:64px 1fr 130px 210px 110px 40px;
    align-items: center;
    gap: 14px;
    padding: 0 6px
}

.v2-prototype .jl .hd {
    height: 44px;
    font-size: 14px;
    color: var(--sub);
    font-weight: 600;
    border-bottom: 1px solid var(--line)
}

.v2-prototype .jl .it {
    min-height: 82px;
    border-bottom: 1px solid var(--line2);
    cursor: pointer;
    transition: background .12s
}

.v2-prototype .jl .it:hover {
    background: #FAFBFB
}

.v2-prototype .jl .tt {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0
}

.v2-prototype .jl .tt b {
    font-size: 15px
}

.v2-prototype .jl .tt small {
    color: var(--mute);
    font-size: 14px
}

.v2-prototype .jl .area {
    color: #9A7B3E;
    font-size: 13px
}

.v2-prototype .jl .due {
    font-size: 14px;
    font-weight: 600;
    text-align: right
}

.v2-prototype .jl .due em {
    font-style: normal;
    color: #D9480F
}

.v2-prototype .bm {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #B9C0C8;
    border: 0;
    background: none
}

.v2-prototype .bm:hover {
    background: var(--bg)
}

.v2-prototype .bm.on {
    color: var(--o)
}

.v2-prototype .bm svg {
    width: 24px;
    height: 24px
}

.v2-prototype .filt {
    display: grid;
    grid-template-columns:70px 1fr;
    gap: 10px 12px;
    align-items: center;
    margin: 16px 0 18px;
    font-size: 13px
}

.v2-prototype .filt > span {
    color: var(--sub);
    font-weight: 600
}

.v2-prototype .tabs {
    display: flex;
    gap: 24px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 6px
}

.v2-prototype .tabs a {
    padding: 12px 0;
    font-size: 17px;
    font-weight: 700;
    color: var(--mute);
    position: relative
}

.v2-prototype .tabs a sup {
    font-size: 14px;
    color: var(--g);
    margin-left: 3px;
    vertical-align: baseline
}

.v2-prototype .tabs a.on {
    color: var(--ink)
}

.v2-prototype .tabs a.on:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    background: var(--ink)
}

.v2-prototype .subtabs {
    display: flex;
    gap: 16px;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .subtabs a.on {
    color: var(--g);
    font-weight: 700
}

.v2-prototype .sort {
    display: flex;
    align-items: center;
    gap: 0;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .sort a {
    padding: 0 10px;
    border-left: 1px solid var(--line);
    line-height: 1
}

.v2-prototype .sort a:first-child {
    border-left: 0;
    padding-left: 0
}

.v2-prototype .sort a.on {
    color: var(--g);
    font-weight: 700
}

.v2-prototype .pcards {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 12px
}

.v2-prototype .pc {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 16px 18px;
    display: grid;
    grid-template-columns:auto 1fr;
    gap: 6px 14px;
    cursor: pointer;
    transition: all .15s;
    background: #fff
}

.v2-prototype .pc:hover {
    border-color: var(--g);
    box-shadow: var(--sh)
}

.v2-prototype .pc .top {
    grid-column: 1/-1;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px
}

.v2-prototype .pc .top .sp + span {
    color: var(--g)
}

.v2-prototype .pc h4 {
    grid-column: 1/-1;
    font-size: 16px
}

.v2-prototype .pc h4 em {
    font-style: normal;
    color: var(--g)
}

.v2-prototype .steps {
    display: flex;
    align-items: center;
    gap: 0
}

.v2-prototype .steps .st {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    flex: 1;
    position: relative;
    font-size: 14px;
    color: var(--sub);
    text-align: center
}

.v2-prototype .steps .st i {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #EEF0F3;
    color: var(--sub);
    display: flex;
    align-items: center;
    justify-content: center;
    font-style: normal;
    font-weight: 700;
    font-size: 14px;
    position: relative;
    z-index: 1
}

.v2-prototype .steps .st:before {
    content: "";
    position: absolute;
    top: 16px;
    left: -50%;
    right: 50%;
    height: 2px;
    background: #EEF0F3
}

.v2-prototype .steps .st:first-child:before {
    display: none
}

.v2-prototype .steps .st.on i {
    background: var(--g);
    color: #fff
}

.v2-prototype .steps .st.on {
    color: var(--ink);
    font-weight: 600
}

.v2-prototype .steps .st.on:before {
    background: var(--g)
}

.v2-prototype .hero-ph {
    border-radius: 14px;
    background: repeating-linear-gradient(135deg, #F1F3F5 0 10px, #F7F8FA 10px 20px);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--mute);
    font-size: 13px
}

.v2-prototype .adban {
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 22px;
    color: #fff;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    transition: transform .2s
}

.v2-prototype .adban:hover {
    transform: translateY(-2px)
}

.v2-prototype .adban small {
    font-size: 14px;
    opacity: .75;
    letter-spacing: .06em
}

.v2-prototype .adban b {
    font-size: 20px;
    line-height: 1.35;
    margin-top: 6px
}

.v2-prototype .adban em {
    font-style: normal;
    font-size: 14px;
    margin-top: 10px;
    opacity: .85
}

.v2-prototype .adban .lb {
    position: absolute;
    right: 12px;
    top: 12px;
    font-size: 14px;
    background: rgba(255, 255, 255, .2);
    padding: 2px 7px;
    border-radius: 5px
}

.v2-prototype .mask {
    letter-spacing: .02em
}

.v2-prototype .wincontent {
    min-height: 100vh;
    background: #fff
}

.v2-prototype .dbgrid {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 16px
}

.v2-prototype .dbc {
    border: 1px solid var(--line);
    border-radius: 16px;
    overflow: hidden;
    cursor: pointer;
    background: #fff;
    transition: all .18s;
    display: flex;
    flex-direction: column
}

.v2-prototype .dbc:hover {
    border-color: #cdd3da;
    box-shadow: var(--sh);
    transform: translateY(-3px)
}

.v2-prototype .dbc-top {
    background: linear-gradient(160deg, #F4F6FA, #EEF1F6);
    padding: 16px 16px 14px;
    position: relative;
    min-height: 168px;
    display: flex;
    flex-direction: column
}

.v2-prototype .dbc-top .bm {
    position: absolute;
    right: 10px;
    top: 10px;
    background: #fff
}

.v2-prototype .dbc-due {
    align-self: flex-start;
    font-size: 14px;
    font-weight: 700;
    background: #fff;
    border-radius: 7px;
    padding: 3px 8px
}

.v2-prototype .dbc-due em {
    font-style: normal;
    color: #D9480F
}

.v2-prototype .dbc-co {
    font-size: 14px;
    color: var(--sub);
    margin-top: 14px
}

.v2-prototype .dbc-top b {
    font-size: 15.5px;
    line-height: 1.4;
    margin-top: 3px
}

.v2-prototype .dbc-area {
    margin-top: auto;
    font-size: 14px;
    color: #9A7B3E
}

.v2-prototype .dbc-bot {
    padding: 14px 16px 16px;
    display: flex;
    flex-direction: column
}

.v2-prototype .dbc-price {
    margin-top: 8px;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .dbc-price s {
    color: var(--mute);
    margin-right: 6px
}

.v2-prototype .dbc-price b {
    font-size: 19px;
    color: var(--ink)
}

.v2-prototype .cal {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 14px;
    background: #fff
}

.v2-prototype .cal-g {
    display: grid;
    grid-template-columns:repeat(7, 1fr);
    gap: 4px;
    text-align: center;
    font-size: 13px
}

.v2-prototype .cal-g b {
    font-size: 14px;
    color: var(--sub);
    font-weight: 600;
    padding: 4px 0
}

.v2-prototype .cal-g .cd {
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    cursor: pointer
}

.v2-prototype .cal-g .cd:hover {
    background: var(--bg)
}

.v2-prototype .cal-g .cd.on {
    background: var(--g);
    color: #fff !important;
    font-weight: 700
}

.v2-prototype .cal-g .cd.in {
    background: var(--g-l);
    border-radius: 8px
}

.v2-prototype .savebar {
    position: sticky;
    bottom: 0;
    z-index: 20;
    margin-top: 24px;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(8px);
    border: 1px solid var(--line);
    border-radius: 16px;
    box-shadow: 0 -6px 24px rgba(16, 24, 40, .06);
    padding: 14px 16px;
    display: flex;
    align-items: center;
    gap: 12px
}

.v2-prototype .savebar .sb-l {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex: 1;
    min-width: 0
}

.v2-prototype [data-ed]:empty:before {
    content: attr(data-ph);
    color: var(--mute)
}

.v2-prototype .regf.err .btn, .v2-prototype [data-up].err .drop, .v2-prototype .chips.err, .v2-prototype .seg.err {
    border-color: var(--red) !important;
    box-shadow: 0 0 0 3px rgba(229, 72, 77, .1)
}

.v2-prototype .fsec {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 22px 24px;
    margin-bottom: 14px
}

.v2-prototype .fsec > h3 {
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .fsec > h3 .ic {
    color: var(--g)
}

.v2-prototype .acc > summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 700
}

.v2-prototype .acc > summary::-webkit-details-marker {
    display: none
}

.v2-prototype .acc > summary:after {
    content: "";
    margin-left: auto;
    width: 9px;
    height: 9px;
    border-right: 2px solid var(--sub);
    border-bottom: 2px solid var(--sub);
    transform: rotate(45deg);
    transition: transform .2s
}

.v2-prototype .acc[open] > summary:after {
    transform: rotate(-135deg)
}

.v2-prototype .mn {
    overflow-x: clip
}

.v2-prototype .mn .mn-sec {
    padding-top: 112px
}

.v2-prototype .mn-head {
    margin-bottom: 36px
}

.v2-prototype .mn-head.c {
    text-align: center
}

.v2-prototype .mn-head h2 {
    font-size: 34px;
    font-weight: 800;
    letter-spacing: -.035em;
    line-height: 1.3
}

.v2-prototype .mn-head p {
    margin-top: 14px;
    font-size: 17px;
    color: var(--sub);
    line-height: 1.7
}

.v2-prototype .mn-kick {
    display: inline-block;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .14em;
    color: var(--g);
    margin-bottom: 12px
}

.v2-prototype .mn-hero {
    padding: 16px 24px 0
}

.v2-prototype .mn-hero-in {
    position: relative;
    max-width: 1392px;
    margin: 0 auto;
    height: 580px;
    border-radius: 32px;
    overflow: hidden;
    background: #E6F0EC;
    --px: max(48px, calc((100% - 1192px) / 2))
}

.v2-prototype .mn-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .7s ease, visibility .7s
}

.v2-prototype .mn-slide.on {
    opacity: 1;
    visibility: visible
}

.v2-prototype .mn-slide.s1 {
    background: #E4EFEA
}

.v2-prototype .mn-slide.s2 {
    background: #0F1F1C;
    color: #fff
}

.v2-prototype .mn-slide.s3 {
    background: #F4ECDF
}

.v2-prototype .mn-slide.s4 {
    background: #E6EDF7
}

.v2-prototype .mn-slide.s5 {
    background: #ECEBF3
}

.v2-prototype .mn-slide:before {
    content: "";
    position: absolute;
    width: 620px;
    height: 620px;
    border-radius: 50%;
    right: -120px;
    top: -180px;
    background: rgba(255, 255, 255, .45)
}

.v2-prototype .mn-slide.s2:before {
    background: radial-gradient(circle, rgba(18, 122, 108, .45), rgba(18, 122, 108, 0) 68%)
}

.v2-prototype .mn-slide.s3:before {
    background: rgba(255, 255, 255, .5)
}

.v2-prototype .mn-copy {
    position: absolute;
    left: var(--px);
    top: 96px;
    z-index: 2;
    max-width: 720px
}

.v2-prototype .mn-eye {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 700;
    color: var(--g2);
    letter-spacing: .02em
}

.v2-prototype .mn-eye i {
    width: 28px;
    height: 1.5px;
    background: currentColor;
    opacity: .5
}

.v2-prototype .mn-slide.s2 .mn-eye {
    color: #7FD6C5
}

.v2-prototype .mn-slide.s3 .mn-eye {
    color: #B25F00
}

.v2-prototype .mn-slide.s4 .mn-eye {
    color: #2459B5
}

.v2-prototype .mn-slide.s5 .mn-eye {
    color: #5340B3
}

.v2-prototype .mn-slide.s5 .mn-copy h1 {
    font-size: 50px
}

.v2-prototype .mn-copy h1 {
    font-size: 58px;
    line-height: 1.17;
    font-weight: 800;
    letter-spacing: -.045em;
    margin-top: 18px
}

.v2-prototype .mn-sub {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 28px;
    flex-wrap: wrap
}

.v2-prototype .mn-sub p {
    font-size: 18px;
    color: var(--ink2);
    font-weight: 500
}

.v2-prototype .mn-slide.s2 .mn-sub p {
    color: #C9D6D3
}

.v2-prototype .mn-cta {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 44px;
    padding: 0 18px 0 22px;
    border-radius: 999px;
    background: #fff;
    color: var(--ink);
    font-size: 14.5px;
    font-weight: 700;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .06);
    border: 1px solid rgba(16, 24, 40, .08);
    transition: background .2s, color .2s, transform .2s, box-shadow .2s
}

.v2-prototype .mn-cta svg {
    width: 16px;
    height: 16px;
    transition: transform .2s
}

.v2-prototype .mn-cta:hover {
    background: var(--ink);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(16, 24, 40, .18)
}

.v2-prototype .mn-cta:hover svg {
    transform: translateX(3px)
}

.v2-prototype .mn-slide.s2 .mn-cta {
    background: var(--g);
    color: #fff;
    border-color: var(--g)
}

.v2-prototype .mn-slide.s2 .mn-cta:hover {
    background: #fff;
    color: var(--ink)
}

.v2-prototype .mn-copy > * {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity .6s ease, transform .7s cubic-bezier(.2, .8, .2, 1)
}

.v2-prototype .mn-slide.on .mn-copy > * {
    opacity: 1;
    transform: none
}

.v2-prototype .mn-slide.on .mn-copy > h1 {
    transition-delay: .08s
}

.v2-prototype .mn-slide.on .mn-copy > .mn-sub {
    transition-delay: .18s
}

.v2-prototype .mn-vis {
    position: absolute;
    right: var(--px);
    top: 64px;
    width: 480px;
    height: 340px;
    z-index: 1;
    opacity: 0;
    transform: translateX(30px);
    transition: opacity .7s ease .1s, transform .9s cubic-bezier(.2, .8, .2, 1) .1s
}

.v2-prototype .mn-slide.on .mn-vis {
    opacity: 1;
    transform: none
}

.v2-prototype .hv-wrap {
    position: relative;
    width: 100%;
    height: 100%
}

.v2-prototype .hv-card {
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 24px 60px rgba(16, 24, 40, .13), 0 2px 6px rgba(16, 24, 40, .05);
    padding: 20px;
    color: var(--ink)
}

.v2-prototype .hv-h {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px
}

.v2-prototype .hv-h small {
    display: block;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .hv-h b {
    font-size: 16px;
    font-weight: 800
}

.v2-prototype .hv-sun {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: var(--o-l);
    position: relative;
    flex: none
}

.v2-prototype .hv-sun:after {
    content: "";
    position: absolute;
    left: 11px;
    top: 11px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--o);
    box-shadow: 0 0 0 5px rgba(242, 155, 33, .18)
}

.v2-prototype .hv-pill {
    font-size: 14px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 999px;
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .hv-pill.o {
    background: var(--o-l);
    color: #B25F00
}

.v2-prototype .hv-rt {
    position: absolute;
    right: 24px;
    top: 6px;
    width: 384px
}

.v2-prototype .hv-li {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px 4px;
    border-top: 1px solid var(--line2)
}

.v2-prototype .hv-li .ck {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 1.8px solid #D3D8DE;
    display: flex;
    align-items: center;
    justify-content: center;
    color: transparent;
    flex: none
}

.v2-prototype .hv-li .ck svg {
    width: 14px;
    height: 14px
}

.v2-prototype .hv-li.done .ck {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .hv-li .tx {
    flex: 1;
    min-width: 0
}

.v2-prototype .hv-li .tx b {
    display: block;
    font-size: 14px;
    font-weight: 700
}

.v2-prototype .hv-li.done .tx b {
    color: var(--sub);
    text-decoration: line-through;
    text-decoration-color: #C2C8D0
}

.v2-prototype .hv-li .tx small {
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .hv-li .ico {
    width: 32px;
    height: 32px;
    border-radius: 10px;
    background: var(--bg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink2)
}

.v2-prototype .hv-li .ico svg {
    width: 16px;
    height: 16px
}

.v2-prototype .hv-prog {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 8px;
    padding-top: 12px;
    border-top: 1px solid var(--line2);
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .hv-prog .prog {
    flex: 1
}

.v2-prototype .hv-prog b {
    color: var(--g);
    font-size: 14px
}

.v2-prototype .hv-float {
    position: absolute;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 44px;
    padding: 0 16px;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(16, 24, 40, .14);
    font-size: 14px;
    font-weight: 700;
    color: var(--ink);
    animation: hvFloat 5s ease-in-out infinite
}

.v2-prototype .hv-float svg {
    width: 18px;
    height: 18px;
    color: var(--g)
}

.v2-prototype .hv-float.f1 {
    left: -12px;
    top: 150px
}

.v2-prototype .hv-float.f2 {
    right: -14px;
    bottom: -14px;
    animation-delay: -2.5s
}

.v2-prototype .hv-float.f2 svg {
    color: var(--o)
}

.v2-prototype .hv-float.f3 {
    right: 0;
    bottom: -34px;
    background: var(--o);
    color: #fff
}

.v2-prototype .hv-float.f3 svg {
    color: #fff
}

.v2-prototype .hv-float.f4 {
    left: -10px;
    bottom: 20px
}

.v2-prototype .hv-float.f5 {
    right: -10px;
    bottom: -6px;
    background: var(--g);
    color: #fff
}

.v2-prototype .hv-float.f5 svg {
    color: #fff
}

@keyframes hvFloat {
    50% {
        transform: translateY(-8px)
    }
}

.v2-prototype .hv-tools {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 12px;
    position: absolute;
    inset: 6px 0 20px 0
}

.v2-prototype .hv-tl {
    border-radius: 18px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .1);
    padding: 18px 16px;
    display: flex;
    flex-direction: column;
    gap: 3px;
    color: #fff
}

.v2-prototype .hv-tl i {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    background: rgba(127, 214, 197, .14);
    color: #7FD6C5;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: auto
}

.v2-prototype .hv-tl i svg {
    width: 19px;
    height: 19px
}

.v2-prototype .hv-tl b {
    font-size: 15px;
    margin-top: 18px
}

.v2-prototype .hv-tl small {
    font-size: 14px;
    color: #93A6A2;
    line-height: 1.4
}

.v2-prototype .hv-tl.hl {
    background: #fff;
    color: var(--ink);
    border-color: #fff;
    box-shadow: 0 20px 40px rgba(0, 0, 0, .3);
    transform: translateY(-10px)
}

.v2-prototype .hv-tl.hl i {
    background: var(--g-l);
    color: var(--g)
}

.v2-prototype .hv-tl.hl small {
    color: var(--sub)
}

.v2-prototype .hv-db {
    position: absolute;
    width: 380px
}

.v2-prototype .hv-db b.ell2 {
    font-size: 15.5px;
    line-height: 1.4;
    margin-top: 2px
}

.v2-prototype .hv-db small {
    font-size: 14px
}

.v2-prototype .hv-db.back {
    right: 0;
    top: 0;
    transform: rotate(3deg);
    opacity: .75
}

.v2-prototype .hv-db.front {
    left: 24px;
    top: 96px
}

.v2-prototype .hv-dbf {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--line2);
    font-size: 14px;
    color: #9A7B3E
}

.v2-prototype .hv-dbf span {
    display: inline-flex;
    align-items: center;
    gap: 4px
}

.v2-prototype .hv-dbf svg {
    width: 14px;
    height: 14px
}

.v2-prototype .hv-dbf b {
    color: var(--ink)
}

.v2-prototype .hv-dbf em {
    font-style: normal;
    color: #D9480F
}

.v2-prototype .hv-job {
    position: absolute;
    right: 16px;
    top: 20px;
    width: 440px
}

.v2-prototype .hv-jr {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 0;
    border-top: 1px solid var(--line2)
}

.v2-prototype .hv-jr .tx {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px
}

.v2-prototype .hv-jr .tx b {
    font-size: 14px
}

.v2-prototype .hv-jr small {
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .hv-jr em {
    font-style: normal;
    font-size: 14px;
    font-weight: 800;
    color: #D9480F;
    background: #FFF1EA;
    padding: 3px 8px;
    border-radius: 7px
}

.v2-prototype .hv-lk {
    position: absolute;
    right: 16px;
    top: 14px;
    width: 440px
}

.v2-prototype .hv-lr {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    border-top: 1px solid var(--line2)
}

.v2-prototype .hv-lr i {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--bg);
    font-style: normal;
    font-size: 14px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--sub);
    flex: none
}

.v2-prototype .hv-lr i.top {
    background: #5340B3;
    color: #fff
}

.v2-prototype .hv-lr b {
    flex: 1;
    font-size: 14px;
    font-weight: 600;
    min-width: 0
}

.v2-prototype .hv-lr small {
    font-size: 14px;
    color: var(--mute);
    flex: none
}

.v2-prototype .mn-htabs {
    position: absolute;
    left: var(--px);
    bottom: 36px;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 10px
}

.v2-prototype .mn-htab {
    position: relative;
    width: 172px;
    height: 62px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .55);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 14px 0 16px;
    color: var(--ink2);
    overflow: hidden;
    transition: background .25s, color .25s, box-shadow .25s, transform .25s;
    backdrop-filter: blur(6px)
}

.v2-prototype .mn-htab > .row {
    display: inline-flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
    flex-wrap: nowrap;
    white-space: nowrap;
}

.v2-prototype .mn-htab > .row > b {
    display: block;
    flex: 0 0 auto;
    white-space: nowrap;
}

.v2-prototype .mn-htab > i.bi {
    flex: 0 0 auto;
}

.v2-prototype .mn-htab svg {
    width: 18px;
    height: 18px;
    opacity: .75
}

.v2-prototype .mn-htab b {
    font-size: 14.5px;
    font-weight: 700
}

.v2-prototype .mn-htab .ar {
    width: 15px;
    height: 15px;
    opacity: .45;
    transition: transform .2s, opacity .2s
}

.v2-prototype .mn-htab:hover .ar {
    opacity: 1;
    transform: translateX(2px)
}

.v2-prototype .mn-htab.on {
    background: #fff;
    color: var(--ink);
    box-shadow: 0 10px 28px rgba(16, 24, 40, .12)
}

.v2-prototype .mn-htab.on svg {
    opacity: 1;
    color: var(--g)
}

.v2-prototype .mn-htab .bar {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 9px;
    height: 2px;
    border-radius: 2px;
    background: transparent;
    overflow: hidden
}

.v2-prototype .mn-htab.on .bar {
    background: var(--line2)
}

.v2-prototype .mn-htab .bar > i {
    display: block;
    height: 100%;
    width: 0;
    background: var(--g);
    transition: width .1s linear
}

.v2-prototype .mn-play {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 0;
    background: rgba(255, 255, 255, .7);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
    margin-left: 4px;
    transition: background .2s, transform .2s
}

.v2-prototype .mn-play:hover {
    background: #fff;
    transform: scale(1.06)
}

.v2-prototype .mn-play svg {
    width: 16px;
    height: 16px;
    stroke-width: 2.6
}

.v2-prototype .mn-hero-in.dk .mn-htab {
    background: rgba(255, 255, 255, .07);
    color: rgba(255, 255, 255, .72)
}

.v2-prototype .mn-hero-in.dk .mn-htab.on {
    background: rgba(255, 255, 255, .16);
    color: #fff;
    box-shadow: none
}

.v2-prototype .mn-hero-in.dk .mn-htab.on svg {
    color: #7FD6C5
}

.v2-prototype .mn-hero-in.dk .mn-htab.on .bar {
    background: rgba(255, 255, 255, .15)
}

.v2-prototype .mn-hero-in.dk .mn-htab .bar > i {
    background: #7FD6C5
}

.v2-prototype .mn-hero-in.dk .mn-play {
    background: rgba(255, 255, 255, .12);
    color: #fff
}

.v2-prototype .mn-hero-in.paused .mn-play {
    background: var(--o);
    color: #fff
}

.v2-prototype .mn-solgrid {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 20px
}

.v2-prototype .mn-sol {
    position: relative;
    overflow: hidden;
    min-height: 232px;
    border-radius: 24px;
    background: #F4F6F7;
    padding: 26px 28px 28px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    border: 1px solid transparent;
    transition: background .25s, border-color .25s, box-shadow .3s, transform .3s cubic-bezier(.2, .8, .2, 1)
}

.v2-prototype .mn-sol:hover {
    background: #fff;
    border-color: var(--line);
    box-shadow: 0 22px 50px rgba(16, 24, 40, .10);
    transform: translateY(-4px)
}

.v2-prototype .mn-stag {
    display: inline-flex;
    align-items: center;
    height: 26px;
    padding: 0 11px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 700;
    background: #fff;
    color: var(--g2);
    border: 1px solid var(--line2)
}

.v2-prototype .t-pf .mn-stag {
    color: #B25F00
}

.v2-prototype .t-ac .mn-stag {
    color: #5340B3
}

.v2-prototype .mn-sico {
    width: 52px;
    height: 52px;
    border-radius: 16px;
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--g);
    color: #fff;
    box-shadow: 0 8px 18px rgba(18, 122, 108, .25)
}

.v2-prototype .mn-sico svg {
    width: 24px;
    height: 24px
}

.v2-prototype .t-pf .mn-sico {
    background: var(--o);
    box-shadow: 0 8px 18px rgba(242, 155, 33, .28)
}

.v2-prototype .t-ac .mn-sico {
    background: var(--pur);
    box-shadow: 0 8px 18px rgba(110, 86, 207, .25)
}

.v2-prototype .mn-stx {
    margin-top: auto;
    padding-top: 26px
}

.v2-prototype .mn-stx b {
    display: block;
    font-size: 21px;
    font-weight: 800;
    letter-spacing: -.03em
}

.v2-prototype .mn-stx span {
    display: block;
    font-size: 14px;
    color: var(--sub);
    margin-top: 5px
}

.v2-prototype .mn-sar {
    position: absolute;
    right: 24px;
    bottom: 26px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid var(--line);
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .25s, color .25s, border-color .25s, transform .25s
}

.v2-prototype .mn-sar svg {
    width: 18px;
    height: 18px
}

.v2-prototype .mn-sol:hover .mn-sar {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff;
    transform: rotate(-45deg)
}

.v2-prototype .mn-sbg {
    position: absolute;
    right: -26px;
    top: -26px;
    width: 150px;
    height: 150px;
    color: rgba(16, 24, 40, .04);
    transition: color .3s, transform .5s
}

.v2-prototype .mn-sbg svg {
    width: 100%;
    height: 100%;
    stroke-width: 1.2
}

.v2-prototype .mn-sol:hover .mn-sbg {
    color: rgba(18, 122, 108, .07);
    transform: rotate(-8deg) scale(1.05)
}

.v2-prototype .mn-ad {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    color: #fff;
    min-height: 232px;
    transition: transform .3s cubic-bezier(.2, .8, .2, 1), box-shadow .3s
}

.v2-prototype .mn-ad:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 50px rgba(16, 24, 40, .18)
}

.v2-prototype .mn-ad.a1 {
    background: #0F4F46
}

.v2-prototype .mn-ad.a2 {
    background: #1B2230
}

.v2-prototype .mn-ad .lb, .v2-prototype .mn-sad .lb, .v2-prototype .mn-tile.ad .lb {
    position: absolute;
    right: 16px;
    top: 16px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .06em;
    background: rgba(255, 255, 255, .16);
    padding: 3px 8px;
    border-radius: 6px;
    color: #fff
}

.v2-prototype .mn-ad small {
    font-size: 14px;
    opacity: .6
}

.v2-prototype .mn-ad b {
    font-size: 23px;
    line-height: 1.35;
    font-weight: 800;
    letter-spacing: -.03em;
    margin-top: 6px;
    max-width: 300px;
    position: relative;
    z-index: 1
}

.v2-prototype .mn-ad em {
    font-style: normal;
    font-size: 14px;
    opacity: .8;
    margin-top: 12px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    position: relative;
    z-index: 1
}

.v2-prototype .mn-ad em svg {
    width: 15px;
    height: 15px
}

.v2-prototype .mn-adart {
    position: absolute;
    right: -40px;
    top: -40px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    border: 34px solid rgba(255, 255, 255, .06)
}

.v2-prototype .mn-ad.a1 .mn-adart {
    border-color: rgba(242, 155, 33, .32)
}

.v2-prototype .mn-ad.a2 .mn-adart {
    border-color: rgba(18, 122, 108, .5)
}

.v2-prototype .mn-ad.a1 b:before {
    content: "1,000P";
    display: block;
    font-size: 14px;
    font-weight: 800;
    color: var(--o);
    letter-spacing: .04em;
    margin-bottom: 4px
}

.v2-prototype .mn-igrid {
    display: grid;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) 300px;
    gap: 24px;
    align-items: start
}

.v2-prototype .mn-box {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 22px;
    padding: 22px 24px;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .03)
}

.v2-prototype .mn-box.sm {
    padding: 18px 20px;
    border-radius: 20px
}

.v2-prototype .mn-bh {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px
}

.v2-prototype .mn-bh h4 {
    font-size: 16px;
    font-weight: 800
}

.v2-prototype .mn-tabs {
    display: flex;
    gap: 20px;
    flex: 1
}

.v2-prototype .mn-tabs a {
    position: relative;
    font-size: 16px;
    font-weight: 700;
    color: var(--mute);
    padding: 6px 0;
    transition: color .15s
}

.v2-prototype .mn-tabs a:hover {
    color: var(--ink2)
}

.v2-prototype .mn-tabs a.on {
    color: var(--ink)
}

.v2-prototype .mn-tabs a.on:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    border-radius: 2px;
    background: var(--ink)
}

.v2-prototype .mn-tabs.sm {
    gap: 16px
}

.v2-prototype .mn-tabs.sm a {
    font-size: 15px
}

.v2-prototype .mn-more {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink2);
    transition: background .15s, transform .2s
}

.v2-prototype .mn-more:hover {
    background: var(--bg);
    transform: translateX(2px)
}

.v2-prototype .mn-more svg {
    width: 18px;
    height: 18px
}

.v2-prototype .mn-list {
    display: flex;
    flex-direction: column
}

.v2-prototype .mn-pr, .v2-prototype .mn-lr {
    display: flex;
    align-items: center;
    gap: 10px;
    height: 46px;
    border-top: 1px solid var(--line2);
    font-size: 14px
}

.v2-prototype .mn-pr:first-child, .v2-prototype .mn-lr:first-child {
    border-top: 0
}

.v2-prototype .mn-pr .tag {
    width: 76px;
    justify-content: center;
    flex: none
}

.v2-prototype .mn-pr b, .v2-prototype .mn-lr b {
    flex: 1;
    min-width: 0;
    font-weight: 600;
    transition: color .15s
}

.v2-prototype .mn-pr:hover b, .v2-prototype .mn-lr:hover b {
    color: var(--g)
}

.v2-prototype .mn-pr .cm {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 14px;
    color: var(--mute);
    flex: none
}

.v2-prototype .mn-pr .cm svg {
    width: 13px;
    height: 13px
}

.v2-prototype .mn-pr .dt, .v2-prototype .mn-lr .dt {
    font-size: 14px;
    color: var(--mute);
    flex: none
}

.v2-prototype .mn-lr i {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--bg);
    font-style: normal;
    font-size: 14px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--sub);
    flex: none
}

.v2-prototype .mn-lr i.top {
    background: var(--g);
    color: #fff
}

.v2-prototype .mn-lr .src {
    font-size: 14px;
    color: var(--mute);
    flex: none
}

.v2-prototype .mn-sad {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    border-radius: 20px;
    padding: 22px;
    color: #fff;
    background: var(--c);
    transition: transform .3s, box-shadow .3s
}

.v2-prototype .mn-sad:before {
    content: "";
    position: absolute;
    right: -50px;
    top: -50px;
    width: 170px;
    height: 170px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .08)
}

.v2-prototype .mn-sad:after {
    content: "";
    position: absolute;
    right: 30px;
    top: 50px;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .07)
}

.v2-prototype .mn-sad:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 40px rgba(16, 24, 40, .18)
}

.v2-prototype .mn-sad small {
    font-size: 14px;
    opacity: .65
}

.v2-prototype .mn-sad b {
    font-size: 18px;
    line-height: 1.38;
    font-weight: 800;
    margin-top: 4px;
    position: relative;
    z-index: 1;
    letter-spacing: -.02em
}

.v2-prototype .mn-sad em {
    font-style: normal;
    font-size: 14px;
    opacity: .8;
    margin-top: 8px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    position: relative;
    z-index: 1
}

.v2-prototype .mn-sad em svg {
    width: 14px;
    height: 14px
}

.v2-prototype .mn-igrid > .mn-sad {
    align-self: stretch;
    min-height: 250px
}

.v2-prototype .mn-board {
    grid-column: 1/3;
    padding: 28px 28px 24px;
    align-self: stretch;
    display: flex;
    flex-direction: column
}

.v2-prototype .mn-board .mn-bfoot {
    margin-top: auto
}

.v2-prototype .mn-bdh {
    display: flex;
    align-items: center;
    gap: 12px
}

.v2-prototype .mn-bdh h3 {
    font-size: 24px;
    font-weight: 800;
    letter-spacing: -.03em;
    animation: mnIn .4s ease
}

@keyframes mnIn {
    from {
        opacity: 0;
        transform: translateY(6px)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.v2-prototype .mn-live {
    position: relative;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: var(--red-l);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .mn-live i {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--red)
}

.v2-prototype .mn-live:after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 2px solid var(--red);
    animation: mnPulse 1.8s ease-out infinite
}

@keyframes mnPulse {
    from {
        transform: scale(.5);
        opacity: .9
    }
    to {
        transform: scale(1.5);
        opacity: 0
    }
}

.v2-prototype .mn-tog {
    position: relative;
    display: inline-flex;
    background: var(--bg);
    border-radius: 999px;
    padding: 4px;
    border: 1px solid var(--line2)
}

.v2-prototype .mn-tog i {
    position: absolute;
    left: 4px;
    top: 4px;
    bottom: 4px;
    width: 92px;
    border-radius: 999px;
    background: var(--ink);
    transition: transform .3s cubic-bezier(.2, .8, .2, 1)
}

.v2-prototype .mn-tog.job i {
    transform: translateX(92px)
}

.v2-prototype .mn-tog button {
    position: relative;
    z-index: 1;
    width: 92px;
    height: 38px;
    border: 0;
    background: none;
    border-radius: 999px;
    font-size: 14.5px;
    font-weight: 700;
    color: var(--sub);
    transition: color .3s
}

.v2-prototype .mn-tog button.on {
    color: #fff
}

.v2-prototype .mn-btabs {
    display: flex;
    gap: 26px;
    margin-top: 22px;
    border-bottom: 1px solid var(--line)
}

.v2-prototype .mn-btabs a {
    position: relative;
    padding: 10px 0 12px;
    font-size: 16px;
    font-weight: 700;
    color: var(--mute)
}

.v2-prototype .mn-btabs a sup {
    font-size: 14px;
    color: var(--o2);
    margin-left: 4px;
    vertical-align: baseline;
    font-weight: 700
}

.v2-prototype .mn-btabs a.on {
    color: var(--ink)
}

.v2-prototype .mn-btabs a.on:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    background: var(--ink)
}

.v2-prototype .mn-filt {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 16px 0 18px
}

.v2-prototype .mn-fr {
    display: flex;
    align-items: flex-start;
    gap: 12px
}

.v2-prototype .mn-fr > span {
    width: 58px;
    flex: none;
    font-size: 14px;
    font-weight: 700;
    color: var(--sub);
    line-height: 32px
}

.v2-prototype .mn-chip {
    height: 32px;
    padding: 0 13px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2);
    display: inline-flex;
    align-items: center;
    gap: 5px;
    transition: all .15s
}

.v2-prototype .mn-chip:hover {
    border-color: #C9CFD6
}

.v2-prototype .mn-chip.on {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .mn-chip.ck i {
    width: 14px;
    height: 14px;
    border-radius: 4px;
    border: 1.5px solid #C5CBD3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: transparent
}

.v2-prototype .mn-chip.ck i svg {
    width: 10px;
    height: 10px;
    stroke-width: 3
}

.v2-prototype .mn-chip.ck.on {
    background: var(--g-l);
    border-color: var(--g);
    color: var(--g2)
}

.v2-prototype .mn-chip.ck.on i {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .mn-tbl {
    border-top: 1.5px solid var(--ink)
}

.v2-prototype .mn-th, .v2-prototype .mn-tr {
    display: grid;
    grid-template-columns:64px minmax(0, 1fr) 104px 196px 92px;
    align-items: center;
    gap: 14px;
    padding: 0 4px
}

.v2-prototype .mn-tbl.jb .mn-th, .v2-prototype .mn-tbl.jb .mn-tr {
    grid-template-columns:64px minmax(0, 1fr) 104px 196px 92px 30px
}

.v2-prototype .mn-th {
    height: 42px;
    font-size: 14px;
    font-weight: 700;
    color: var(--sub);
    border-bottom: 1px solid var(--line)
}

.v2-prototype .mn-th .rt, .v2-prototype .mn-tr .due {
    text-align: right
}

.v2-prototype .mn-tr {
    min-height: 76px;
    border-bottom: 1px solid var(--line2);
    transition: background .15s
}

.v2-prototype .mn-tr:hover {
    background: #FAFBFB
}

.v2-prototype .mn-tr:hover .tt b {
    color: var(--g)
}

.v2-prototype .mn-tr .tt {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0
}

.v2-prototype .mn-tr .tt b {
    font-size: 15px;
    font-weight: 700;
    transition: color .15s
}

.v2-prototype .mn-tr .tt small {
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .mn-tr .ar {
    font-size: 14px;
    color: #9A7B3E
}

.v2-prototype .mn-tr .due {
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap
}

.v2-prototype .mn-tr .due em {
    font-style: normal;
    color: #D9480F
}

.v2-prototype .mn-tr .avw {
    display: flex;
    justify-content: center
}

.v2-prototype .mn-tr .logo-ph {
    border-radius: 10px
}

.v2-prototype .mn-bfoot {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding-top: 22px
}

.v2-prototype .btn.mn-allbtn {
    height: 46px;
    padding: 0 22px 0 26px;
    border-radius: 999px;
    border-color: var(--ink);
    font-size: 14.5px
}

.v2-prototype .btn.mn-allbtn:hover {
    background: var(--ink);
    color: #fff;
    border-color: var(--ink)
}

.v2-prototype .mn-allbtn svg {
    width: 16px;
    height: 16px
}

.v2-prototype .mn-side {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.v2-prototype .mn-rl {
    display: flex;
    flex-direction: column
}

.v2-prototype .mn-rl a {
    display: flex;
    align-items: center;
    gap: 10px;
    height: 37px;
    font-size: 13.5px
}

.v2-prototype .mn-rl a b {
    flex: 1;
    min-width: 0;
    font-weight: 500;
    color: var(--ink2)
}

.v2-prototype .mn-rl a:hover b {
    color: var(--g)
}

.v2-prototype .mn-rl a span {
    font-size: 14px;
    color: var(--mute);
    flex: none
}

.v2-prototype .mn-favs {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.v2-prototype .mn-fav {
    display: block;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 12px 14px;
    transition: border-color .2s, background .2s, box-shadow .2s
}

.v2-prototype .mn-fav .row b {
    font-size: 14.5px
}

.v2-prototype .mn-fav em {
    font-style: normal;
    color: var(--red);
    font-weight: 700
}

.v2-prototype .mn-fico {
    width: 32px;
    height: 32px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--g);
    color: #fff;
    flex: none
}

.v2-prototype .mn-fico svg {
    width: 16px;
    height: 16px
}

.v2-prototype .mn-fico.t-pf {
    background: var(--o)
}

.v2-prototype .mn-fd {
    display: grid;
    grid-template-rows:0fr;
    transition: grid-template-rows .3s ease, margin .3s
}

.v2-prototype .mn-fd > * {
    overflow: hidden
}

.v2-prototype .mn-fd p {
    font-size: 14px;
    color: var(--ink2);
    line-height: 1.6
}

.v2-prototype .mn-fd span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    font-weight: 700;
    color: var(--g)
}

.v2-prototype .mn-fd span svg {
    width: 13px;
    height: 13px
}

.v2-prototype .mn-fd {
    grid-template-rows:0fr 0fr
}

.v2-prototype .mn-fav.open {
    border-color: var(--g);
    background: var(--g-ll);
    box-shadow: 0 0 0 1px var(--g)
}

.v2-prototype .mn-fav.open .mn-fd {
    grid-template-rows:1fr 1fr;
    margin-top: 10px
}

.v2-prototype .mn-fav.open .mn-fd span {
    margin-top: 6px
}

.v2-prototype .mn-bans {
    grid-column: 1/3;
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-self: stretch
}

.v2-prototype .mn-bans .mn-ban {
    flex: 1
}

.v2-prototype .mn-ban {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 84px;
    padding: 0 90px 0 30px;
    border-radius: 18px;
    background: var(--c);
    color: #fff;
    transition: transform .25s, box-shadow .25s, filter .25s
}

.v2-prototype .mn-ban:before {
    content: "";
    position: absolute;
    right: -30px;
    top: -60px;
    width: 200px;
    height: 200px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .05)
}

.v2-prototype .mn-ban small {
    font-size: 14px;
    opacity: .6;
    font-weight: 600
}

.v2-prototype .mn-ban b {
    font-size: 18px;
    font-weight: 800;
    letter-spacing: -.02em;
    margin-top: 2px
}

.v2-prototype .mn-ban i {
    position: absolute;
    right: 26px;
    top: 50%;
    margin-top: -20px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .12);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .25s, color .25s, transform .25s
}

.v2-prototype .mn-ban i svg {
    width: 18px;
    height: 18px
}

.v2-prototype .mn-ban:hover {
    transform: translateX(4px);
    box-shadow: 0 14px 30px rgba(16, 24, 40, .16)
}

.v2-prototype .mn-ban:hover i {
    background: #fff;
    color: var(--ink)
}

.v2-prototype .mn-today {
    align-self: stretch
}

.v2-prototype .mn-tds {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.v2-prototype .mn-td {
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid var(--line2);
    border-radius: 12px;
    padding: 6px 12px 6px 6px;
    font-size: 14px;
    transition: border-color .2s, box-shadow .2s, transform .2s
}

.v2-prototype .mn .logo-ph {
    font-size: 14px;
    letter-spacing: -.06em
}

.v2-prototype .mn-td b {
    flex: 1;
    min-width: 0;
    font-weight: 600
}

.v2-prototype .mn-td em {
    font-style: normal;
    color: var(--red);
    font-weight: 700
}

.v2-prototype .mn-td:hover {
    border-color: var(--g);
    box-shadow: var(--sh);
    transform: translateY(-1px)
}

.v2-prototype .mn-how {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 20px
}

.v2-prototype .mn-hbox {
    border-radius: 26px;
    padding: 26px;
    background: #F4F6F7
}

.v2-prototype .mn-hh {
    margin-bottom: 18px
}

.v2-prototype .mn-hh span {
    font-size: 14px;
    font-weight: 800;
    color: var(--g);
    letter-spacing: .06em
}

.v2-prototype .mn-hh b {
    display: block;
    font-size: 19px;
    font-weight: 800;
    letter-spacing: -.03em;
    margin-top: 4px
}

.v2-prototype .mn-hh small {
    display: block;
    font-size: 14px;
    color: var(--sub);
    margin-top: 3px
}

.v2-prototype .mn-tiles {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 12px
}

.v2-prototype .mn-tile {
    position: relative;
    background: #fff;
    border-radius: 18px;
    padding: 18px 16px 16px;
    min-height: 148px;
    display: flex;
    flex-direction: column;
    border: 1px solid transparent;
    transition: transform .25s cubic-bezier(.2, .8, .2, 1), box-shadow .25s, border-color .25s
}

.v2-prototype .mn-tile i {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--g-l);
    color: var(--g)
}

.v2-prototype .mn-tile i svg {
    width: 22px;
    height: 22px
}

.v2-prototype .mn-hbox.h1 .mn-tile i {
    background: var(--blue-l);
    color: var(--blue)
}

.v2-prototype .mn-hbox.h2 .mn-tile i {
    background: var(--o-l);
    color: var(--o2)
}

.v2-prototype .mn-tile b {
    margin-top: auto;
    padding-top: 14px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: -.02em
}

.v2-prototype .mn-tile em {
    position: absolute;
    right: 12px;
    top: 12px;
    color: var(--mute);
    opacity: 0;
    transition: opacity .2s
}

.v2-prototype .mn-tile em svg {
    width: 15px;
    height: 15px
}

.v2-prototype .mn-tile:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 34px rgba(16, 24, 40, .10);
    border-color: var(--line)
}

.v2-prototype .mn-tile:hover em {
    opacity: 1
}

.v2-prototype .mn-tile.ad {
    background: #172B4D;
    color: #fff;
    justify-content: flex-end
}

.v2-prototype .mn-tile.ad small {
    font-size: 14px;;
    opacity: .6
}

.v2-prototype .mn-tile.ad b {
    padding-top: 4px;
    margin-top: 0;
    font-size: 14px
}

.v2-prototype .mn-co {
    display: grid;
    grid-template-columns:300px minmax(0, 1fr);
    gap: 36px;
    background: #F7F4EE;
    border-radius: 30px;
    padding: 40px
}

.v2-prototype .mn-col h2 {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -.035em;
    line-height: 1.3;
    margin-bottom: 22px
}

.v2-prototype .mn-coa {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 4px;
    border-top: 1px solid #E6DFD3;
    transition: padding .2s
}

.v2-prototype .mn-coa:last-of-type {
    border-bottom: 1px solid #E6DFD3
}

.v2-prototype .mn-coa div {
    flex: 1
}

.v2-prototype .mn-coa b {
    display: block;
    font-size: 17px;
    font-weight: 800
}

.v2-prototype .mn-coa span {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .mn-coa svg {
    width: 20px;
    height: 20px;
    transition: transform .2s
}

.v2-prototype .mn-coa:hover {
    padding-left: 10px
}

.v2-prototype .mn-coa:hover b {
    color: var(--g)
}

.v2-prototype .mn-coa:hover svg {
    transform: translateX(4px);
    color: var(--g)
}

.v2-prototype .mn-conote {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 16px
}

.v2-prototype .mn-conote svg {
    width: 14px;
    height: 14px
}

.v2-prototype .mn-logos {
    display: grid;
    grid-template-columns:repeat(6, minmax(0, 1fr));
    gap: 10px;
    align-content: start;
    transition: opacity .35s, transform .35s
}

.v2-prototype .mn-logos.fade {
    opacity: 0;
    transform: translateY(6px)
}

.v2-prototype .mn-logo {
    height: 64px;
    border-radius: 14px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 0 10px;
    color: var(--c);
    transition: box-shadow .2s, transform .2s
}

.v2-prototype .mn-logo {
    position: relative;
    text-align: center
}

.v2-prototype .mn-logo:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 10px;
    width: 18px;
    height: 3px;
    margin-left: -9px;
    border-radius: 2px;
    background: var(--c);
    opacity: .85
}

.v2-prototype .mn-logo b {
    font-size: 14px;
    font-weight: 800;
    letter-spacing: -.05em;
    line-height: 1.2;
    word-break: break-all;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    padding-top: 4px
}

.v2-prototype .mn-logo:hover {
    box-shadow: 0 10px 24px rgba(16, 24, 40, .10);
    transform: translateY(-2px)
}

.v2-prototype .mn-with {
    margin-top: 112px;
    background: #EAF1F6;
    position: relative;
    overflow: hidden
}

.v2-prototype .mn-with:before {
    content: "";
    position: absolute;
    left: -120px;
    bottom: -200px;
    width: 520px;
    height: 520px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .45)
}

.v2-prototype .mn-with .wrap {
    position: relative;
    display: grid;
    grid-template-columns:1fr 400px;
    gap: 60px;
    align-items: center;
    padding-top: 84px;
    padding-bottom: 84px
}

.v2-prototype .mn-wl h2 {
    font-size: 36px;
    font-weight: 800;
    letter-spacing: -.04em
}

.v2-prototype .mn-wl ul {
    list-style: none;
    margin: 26px 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px
}

.v2-prototype .mn-wl li {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 17px;
    color: var(--ink2);
    font-weight: 500
}

.v2-prototype .mn-wl li i {
    font-style: normal;
    color: var(--g);
    font-size: 14px
}

.v2-prototype .mn-sea {
    margin-top: 30px;
    font-size: 20px;
    font-weight: 800;
    color: var(--g2);
    letter-spacing: -.02em
}

.v2-prototype .mn-wr {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .mn-sns {
    display: flex;
    align-items: center;
    gap: 14px;
    height: 60px;
    padding: 0 20px 0 12px;
    border-radius: 16px;
    background: #fff;
    font-size: 16px;
    transition: transform .2s, box-shadow .2s
}

.v2-prototype .mn-sns i {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .mn-sns i svg {
    width: 32px;
    height: 32px
}

.v2-prototype .mn-sns i.pen {
    background: var(--bg);
    color: var(--ink2)
}

.v2-prototype .mn-sns i.pen svg {
    width: 18px;
    height: 18px
}

.v2-prototype .mn-sns b {
    flex: 1;
    font-weight: 700
}

.v2-prototype .mn-sns > svg {
    width: 18px;
    height: 18px;
    color: var(--mute);
    transition: transform .2s, color .2s
}

.v2-prototype .mn-sns:hover {
    transform: translateX(-4px);
    box-shadow: 0 12px 28px rgba(16, 24, 40, .10)
}

.v2-prototype .mn-sns:hover > svg {
    color: var(--ink);
    transform: translateX(3px)
}

.v2-prototype .lgn {
    max-width: 800px;
    margin: 36px auto 30px
}

.v2-prototype .lgn h1 {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -.03em;
    margin-bottom: 26px;
    padding-left: 4px
}

.v2-prototype .lg-grid {
    display: grid;
    grid-template-columns:330px 1fr;
    gap: 26px;
    align-items: stretch
}

.v2-prototype .lg-btns {
    display: flex;
    flex-direction: column;
    gap: 12px
}

.v2-prototype .lg-sns {
    position: relative;
    height: 54px;
    border-radius: 14px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 15px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(16, 24, 40, .06);
    transition: transform .2s, box-shadow .2s, filter .2s
}

.v2-prototype .lg-sns i {
    position: absolute;
    left: 16px;
    top: 50%;
    margin-top: -13px;
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .lg-sns i svg {
    width: 22px;
    height: 22px
}

.v2-prototype .lg-sns:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(16, 24, 40, .12)
}

.v2-prototype .lg-sns.naver {
    background: #03C75A;
    border-color: #03C75A;
    color: #fff
}

.v2-prototype .lg-sns.naver i {
    background: rgba(255, 255, 255, .12);
    border-radius: 6px
}

.v2-prototype .lg-sns.kakao {
    background: #FEE500;
    border-color: #FEE500;
    color: #191919
}

.v2-prototype .lg-auto {
    margin: 6px 2px 0;
    font-weight: 700
}

.v2-prototype .lg-brand {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    background: linear-gradient(160deg, #fff 0%, #F3F7F6 100%);
    border: 1px solid var(--line);
    box-shadow: 0 18px 44px rgba(16, 24, 40, .08);
    min-height: 270px
}

.v2-prototype .lg-bin {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 30px 24px 0;
    text-align: center
}

.v2-prototype .lg-mark {
    display: block;
    width: 84px;
    height: 48px;
    overflow: hidden
}

.v2-prototype .lg-mark img {
    height: 48px;
    width: auto;
    max-width: none
}

.v2-prototype .lg-terms {
    font-size: 14px;
    color: var(--mute);
    margin-top: 18px;
    padding-left: 2px
}

.v2-prototype .lg-terms a {
    color: var(--ink2);
    text-decoration: underline
}

.v2-prototype .lg-bin h2 {
    font-size: 32px;
    font-weight: 900;
    letter-spacing: -.03em;
    color: var(--g2);
    margin-top: 14px
}

.v2-prototype .lg-bin h2 span {
    color: var(--ink)
}

.v2-prototype .lg-rule {
    position: relative;
    width: 78%;
    height: 1px;
    background: var(--g);
    margin: 12px 0 10px;
    opacity: .6
}

.v2-prototype .lg-rule i {
    position: absolute;
    left: 50%;
    top: -1px;
    width: 10px;
    height: 10px;
    margin-left: -5px;
    border-right: 1px solid var(--g);
    border-bottom: 1px solid var(--g);
    background: #fff;
    transform: rotate(45deg) translate(-2px, -2px)
}

.v2-prototype .lg-bin p {
    font-size: 16px;
    font-weight: 600;
    color: var(--ink2)
}

.v2-prototype .lg-wave {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 96px
}

.v2-prototype .lg-fav {
    margin-top: 28px;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 18px 20px 20px;
    background: #fff
}

.v2-prototype .lg-fav .row b {
    font-size: 14.5px
}

.v2-prototype .lg-add {
    width: 24px;
    height: 24px;
    border-radius: 6px;
    border: 1px solid var(--line);
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0
}

.v2-prototype .lg-add svg {
    width: 14px;
    height: 14px
}

.v2-prototype .lg-add:hover {
    border-color: var(--g);
    color: var(--g)
}

.v2-prototype .lg-favs {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 14px
}

.v2-prototype .lg-fv {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    width: 58px;
    font-size: 14px;
    color: var(--ink2)
}

.v2-prototype .lg-fv > i {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    border: 1px solid var(--line);
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform .2s, box-shadow .2s
}

.v2-prototype .lg-fv > i svg {
    width: 24px;
    height: 24px
}

.v2-prototype .lg-fv .nv {
    width: 26px;
    height: 26px;
    border-radius: 6px;
    background: #03C75A;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .lg-fv .nv svg {
    width: 18px;
    height: 18px
}

.v2-prototype .lg-fv .tx {
    width: 26px;
    height: 26px;
    border-radius: 7px;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .lg-fv span {
    max-width: 58px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.v2-prototype .lg-fv:hover > i {
    transform: translateY(-2px);
    box-shadow: var(--sh)
}

.v2-prototype .lg-fv > b {
    position: absolute;
    right: 0;
    top: -6px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--ink);
    color: #fff;
    display: none;
    align-items: center;
    justify-content: center
}

.v2-prototype .lg-fv > b svg {
    width: 10px;
    height: 10px;
    stroke-width: 3
}

.v2-prototype .lg-fv:hover > b {
    display: flex
}

.v2-prototype .tl {
    display: grid;
    grid-template-columns:minmax(0, 1fr) 210px;
    gap: 28px;
    align-items: start
}

.v2-prototype .tl-tabs {
    position: sticky;
    top: 72px;
    z-index: 20;
    display: flex;
    gap: 10px;
    padding: 14px 0;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(8px)
}

.v2-prototype .tl-tabs a {
    flex: 1;
    height: 48px;
    border-radius: 14px;
    border: 1px solid var(--line);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 700;
    color: var(--ink2);
    transition: all .2s;
    background: #fff
}

.v2-prototype .tl-tabs a:hover {
    border-color: var(--ink)
}

.v2-prototype .tl-tabs a.on {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff;
    box-shadow: 0 8px 20px rgba(16, 24, 40, .16)
}

.v2-prototype .tl-sec {
    padding-top: 26px
}

.v2-prototype .tl-sec + .tl-sec {
    margin-top: 34px;
    border-top: 1px solid var(--line2);
    padding-top: 40px
}

.v2-prototype .tl-sh h2 {
    font-size: 24px;
    font-weight: 800;
    letter-spacing: -.03em
}

.v2-prototype .tl-sh p {
    margin-top: 4px;
    color: var(--sub);
    font-size: 14.5px
}

.v2-prototype .tl-cards {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 14px;
    margin-top: 18px
}

.v2-prototype .tl-card {
    position: relative;
    border-radius: 20px;
    background: #F4F6F7;
    padding: 20px 22px 22px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    border: 1px solid transparent;
    transition: all .25s cubic-bezier(.2, .8, .2, 1)
}

.v2-prototype .tl-card .mn-sico {
    width: 44px;
    height: 44px;
    border-radius: 13px;
    margin-top: 14px
}

.v2-prototype .tl-card .mn-sico svg {
    width: 21px;
    height: 21px
}

.v2-prototype .tl-card b {
    font-size: 18px;
    font-weight: 800;
    margin-top: 16px;
    letter-spacing: -.02em
}

.v2-prototype .tl-card > span:not(.mn-stag) {
    font-size: 14px;
    color: var(--sub);
    margin-top: 2px
}

.v2-prototype .tl-card em {
    position: absolute;
    right: 18px;
    bottom: 20px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid var(--line);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .2s
}

.v2-prototype .tl-card em svg {
    width: 16px;
    height: 16px
}

.v2-prototype .tl-card:hover {
    background: #fff;
    border-color: var(--g);
    box-shadow: 0 18px 40px rgba(16, 24, 40, .10);
    transform: translateY(-3px)
}

.v2-prototype .tl-card:hover em {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .tl-blk {
    margin-top: 18px;
    border-radius: 28px;
    background: #18201F;
    color: #fff;
    display: grid;
    grid-template-columns:230px minmax(0, 1fr);
    gap: 26px;
    padding: 34px 30px 34px 36px;
    position: relative;
    overflow: hidden;
    scroll-margin-top: 160px
}

.v2-prototype .tl-blk:before {
    content: "";
    position: absolute;
    left: -80px;
    bottom: -120px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(18, 122, 108, .5), rgba(18, 122, 108, 0) 70%)
}

.v2-prototype .tl-bt {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start
}

.v2-prototype .tl-bk {
    font-size: 14px;
    font-weight: 700;
    color: #7FD6C5;
    letter-spacing: .04em;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(127, 214, 197, .12)
}

.v2-prototype .tl-bt h3 {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -.03em;
    margin-top: 14px
}

.v2-prototype .tl-bt p {
    font-size: 15px;
    color: #B8C4C2;
    line-height: 1.65;
    margin-top: 8px
}

.v2-prototype .tl-bt p.hd {
    color: #fff;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 14px
}

.v2-prototype .btn.tl-go {
    margin-top: auto;
    background: #fff;
    color: var(--ink);
    border-color: #fff;
    border-radius: 999px;
    height: 42px;
    padding: 0 18px
}

.v2-prototype .btn.tl-go:hover {
    background: var(--g);
    color: #fff;
    border-color: var(--g)
}

.v2-prototype .tl-go svg {
    width: 15px;
    height: 15px
}

.v2-prototype .tl-bt .btn.tl-go {
    margin-top: 26px
}

.v2-prototype .tl-vis {
    position: relative;
    min-height: 300px;
    display: flex;
    align-items: center
}

.v2-prototype .tl-rail {
    position: sticky;
    top: 92px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding-top: 14px
}

.v2-prototype .mk {
    width: 100%;
    background: #fff;
    border-radius: 16px;
    color: var(--ink);
    font-size: 14px;
    box-shadow: 0 24px 50px rgba(0, 0, 0, .35);
    overflow: hidden
}

.v2-prototype .mk-btn {
    display: inline-flex;
    align-items: center;
    height: 26px;
    padding: 0 10px;
    border-radius: 7px;
    border: 1px solid var(--line);
    font-size: 14px;;
    font-weight: 700;
    background: #fff;
    white-space: nowrap
}

.v2-prototype .mk-btn.g {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .mk-btn.k {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff
}

.v2-prototype .mk-btn.o {
    background: var(--o);
    border-color: var(--o);
    color: #fff
}

.v2-prototype .mk-pill {
    display: inline-flex;
    align-items: center;
    height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: var(--bg);
    font-size: 14px;
    font-weight: 700;
    color: var(--ink2);
    white-space: nowrap
}

.v2-prototype .mk-pill.g {
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .mk-nav {
    display: flex;
    align-items: center;
    gap: 12px;
    height: 40px;
    padding: 0 14px;
    background: #0B1B33;
    color: #C6D4EA;
    font-size: 14px;
}

.v2-prototype .mk-nav b {
    color: #fff;
    font-size: 13px
}

.v2-prototype .mk-nav .pill {
    background: #fff;
    color: #0B1B33;
    border-radius: 999px;
    padding: 2px 9px;
    font-weight: 700
}

.v2-prototype .mk-nav.lt {
    background: #fff;
    color: var(--ink);
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .mk-nav.lt b {
    color: var(--ink)
}

.v2-prototype .mk-chem {
    display: grid;
    grid-template-columns:1.15fr 1fr;
    gap: 0
}

.v2-prototype .mk-pane {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .mk-pane + .mk-pane {
    border-left: 1px solid var(--line2);
    background: #FCFCFB
}

.v2-prototype .mk-pane.c {
    align-items: center;
    text-align: center
}

.v2-prototype .mk-t small {
    display: block;
    font-size: 14px;
    color: var(--g);
    font-weight: 700
}

.v2-prototype .mk-t b {
    font-size: 15px;
    font-weight: 800
}

.v2-prototype .mk-grid {
    display: grid;
    grid-template-columns:repeat(4, 1fr);
    gap: 4px
}

.v2-prototype .mk-grid span {
    height: 22px;
    border-radius: 5px;
    font-size: 9.5px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .mk-grid .r0 {
    background: #E3F2EC;
    color: #127A6C
}

.v2-prototype .mk-grid .r1 {
    background: #E7F0FB;
    color: #2459B5
}

.v2-prototype .mk-grid .r2 {
    background: #FBF2E3;
    color: #9A6A1C
}

.v2-prototype .mk-grid .r3 {
    background: #FCEAE8;
    color: #B4423A
}

.v2-prototype .mk-grid span.on {
    background: #C46A2F;
    color: #fff
}

.v2-prototype .mk-res {
    font-size: 14px;
    text-align: center;
    padding: 6px;
    border-radius: 8px;
    background: var(--bg)
}

.v2-prototype .mk-res b {
    color: var(--g);
    font-size: 14px
}

.v2-prototype .mk-head {
    width: 96px;
    height: 96px
}

.v2-prototype .mk-dia {
    width: 110px;
    height: 70px
}

.v2-prototype .mk-mida {
    background: #06142A;
    color: #fff
}

.v2-prototype .mk-mbody {
    position: relative;
    display: grid;
    grid-template-columns:1fr 110px;
    gap: 8px;
    padding: 20px 18px 18px;
    min-height: 250px;
    background: radial-gradient(circle at 75% 40%, rgba(94, 199, 242, .18), rgba(6, 20, 42, 0) 60%)
}

.v2-prototype .mk-mtx small {
    font-size: 14px;
    color: #7FA4C9
}

.v2-prototype .mk-mtx h4 {
    font-size: 19px;
    line-height: 1.4;
    font-weight: 800;
    margin: 10px 0 16px;
    letter-spacing: -.02em
}

.v2-prototype .mk-mtx h4 em {
    font-style: normal;
    color: #5EC7F2
}

.v2-prototype .mk-body {
    width: 110px;
    height: 230px;
    margin-top: -6px
}

.v2-prototype .mk-mcard {
    position: absolute;
    right: 96px;
    bottom: 18px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 10px;
    padding: 8px 10px;
    display: flex;
    flex-direction: column;
    gap: 1px;
    backdrop-filter: blur(6px)
}

.v2-prototype .mk-mcard small {
    font-size: 9.5px;
    color: var(--o)
}

.v2-prototype .mk-mcard b {
    font-size: 11.5px
}

.v2-prototype .mk-mcard span {
    font-size: 14px;
    color: #9FB3CC
}

.v2-prototype .mk-p2p {
    padding: 16px
}

.v2-prototype .mk-flow {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 14px
}

.v2-prototype .mk-flow .st {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    font-weight: 700;
    color: var(--sub)
}

.v2-prototype .mk-flow .st i {
    width: 36px;
    height: 36px;
    border-radius: 11px;
    background: var(--bg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink2)
}

.v2-prototype .mk-flow .st i svg {
    width: 18px;
    height: 18px
}

.v2-prototype .mk-flow .st.on {
    color: var(--g)
}

.v2-prototype .mk-flow .st.on i {
    background: var(--g);
    color: #fff;
    box-shadow: 0 0 0 5px var(--g-l)
}

.v2-prototype .mk-flow em {
    flex: 1;
    height: 2px;
    background: repeating-linear-gradient(90deg, var(--g) 0 6px, transparent 6px 10px);
    margin-top: -16px;
    opacity: .5
}

.v2-prototype .mk-chk {
    border: 1px solid var(--line2);
    border-radius: 12px;
    padding: 12px 14px
}

.v2-prototype .mk-chk > .row b {
    font-size: 14px
}

.v2-prototype .mk-chk .ln {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 0;
    border-top: 1px solid var(--line2);
    margin-top: 6px
}

.v2-prototype .mk-chk .ln i {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 1.5px solid #D3D8DE;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .mk-chk .ln i svg {
    width: 11px;
    height: 11px;
    stroke-width: 3
}

.v2-prototype .mk-chk .ln.s1 i {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .mk-chk .ln.s2 i {
    border-color: var(--o)
}

.v2-prototype .mk-chk .ln span {
    flex: 1;
    font-size: 11.5px
}

.v2-prototype .mk-chk .ln small {
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .mk-chk .ln.s1 small {
    color: var(--g);
    font-weight: 700
}

.v2-prototype .mk-chk .ln.s2 small {
    color: var(--o2);
    font-weight: 700
}

.v2-prototype .spin {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid var(--o);
    border-right-color: transparent;
    animation: mkSpin .9s linear infinite
}

@keyframes mkSpin {
    to {
        transform: rotate(360deg)
    }
}

.v2-prototype .mk-mdf {
    display: grid;
    grid-template-columns:96px 1fr;
    min-height: 250px
}

.v2-prototype .mk-side {
    background: var(--bg);
    padding: 14px 10px;
    display: flex;
    flex-direction: column;
    gap: 4px
}

.v2-prototype .mk-side small {
    font-size: 14px;
    color: var(--mute);
    font-weight: 700;
    padding: 0 6px 4px
}

.v2-prototype .mk-side span {
    font-size: 14px;;
    padding: 7px 8px;
    border-radius: 7px;
    font-weight: 600;
    color: var(--sub)
}

.v2-prototype .mk-side span.on {
    background: #fff;
    color: var(--ink);
    box-shadow: var(--sh)
}

.v2-prototype .mk-ed {
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px
}

.v2-prototype .mk-ai {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    font-weight: 700;
    color: var(--o2)
}

.v2-prototype .mk-ai svg {
    width: 13px;
    height: 13px
}

.v2-prototype .mk-ed h5 {
    font-size: 15px;
    font-weight: 800;
    line-height: 1.4;
    margin: 4px 0 0
}

.v2-prototype .mk-ed p {
    font-size: 14px;
    line-height: 1.65;
    color: var(--ink2)
}

.v2-prototype .caret {
    display: inline-block;
    width: 2px;
    height: 12px;
    background: var(--o);
    margin-left: 2px;
    vertical-align: middle;
    animation: blink 1s step-end infinite
}

.v2-prototype .sk {
    display: flex;
    flex-direction: column;
    gap: 6px
}

.v2-prototype .sk i {
    display: block;
    height: 7px;
    border-radius: 4px;
    background: linear-gradient(90deg, #EEF0F3, #F6F7F9, #EEF0F3);
    background-size: 200% 100%;
    animation: mkSk 1.6s linear infinite
}

@keyframes mkSk {
    to {
        background-position: -200% 0
    }
}

.v2-prototype .mk-kb {
    display: grid;
    grid-template-columns:repeat(4, 1fr);
    gap: 8px;
    padding: 12px;
    background: var(--bg)
}

.v2-prototype .mk-kb .col {
    display: flex;
    flex-direction: column;
    gap: 6px
}

.v2-prototype .mk-kb .hd {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 14px;
    font-weight: 800;
    padding: 2px 2px 4px
}

.v2-prototype .mk-kb .hd i {
    width: 7px;
    height: 7px;
    border-radius: 50%
}

.v2-prototype .mk-kb .hd i.b {
    background: var(--blue)
}

.v2-prototype .mk-kb .hd i.o {
    background: var(--o)
}

.v2-prototype .mk-kb .hd i.g {
    background: var(--g)
}

.v2-prototype .mk-kb .hd i.p {
    background: var(--pur)
}

.v2-prototype .mk-kb .hd span {
    margin-left: auto;
    color: var(--mute)
}

.v2-prototype .mk-kb .cd {
    display: flex;
    flex-direction: column;
    gap: 1px;
    background: #fff;
    border-radius: 8px;
    padding: 8px 9px;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .06)
}

.v2-prototype .mk-kb .cd b {
    font-size: 14px;
}

.v2-prototype .mk-kb .cd span {
    font-size: 14px;
    color: var(--sub);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.v2-prototype .mk-dbm {
    min-height: 240px
}

.v2-prototype .mk-ap {
    padding: 16px
}

.v2-prototype .mk-ap .steps .st {
    font-size: 14px
}

.v2-prototype .mk-ap .steps .st i {
    width: 26px;
    height: 26px;
    font-size: 14px;
}

.v2-prototype .mk-ap .steps .st:before {
    top: 13px
}

.v2-prototype .mk-ap2 {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 10px;
    margin-top: 14px
}

.v2-prototype .mk-docs {
    border: 1px solid var(--line2);
    border-radius: 12px;
    padding: 10px 12px
}

.v2-prototype .mk-docs b {
    font-size: 11.5px
}

.v2-prototype .mk-docs .ln {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 0;
    border-top: 1px solid var(--line2);
    margin-top: 5px;
    font-size: 14px;;
    color: var(--sub)
}

.v2-prototype .mk-docs .ln svg {
    width: 13px;
    height: 13px;
    color: var(--o2)
}

.v2-prototype .mk-docs .ln.ok svg {
    color: var(--g)
}

.v2-prototype .mk-docs .ln span {
    flex: 1
}

.v2-prototype .mk-docs .ln small {
    font-size: 14px
}

.v2-prototype .mk-docs .ln.ok small {
    color: var(--g);
    font-weight: 700
}

.v2-prototype .mk-chat {
    background: var(--bg);
    border-radius: 12px;
    padding: 10px;
    display: flex;
    flex-direction: column;
    gap: 6px
}

.v2-prototype .mk-chat .b {
    max-width: 88%;
    padding: 7px 9px;
    border-radius: 10px;
    font-size: 14px;
    line-height: 1.45
}

.v2-prototype .mk-chat .b.l {
    background: #fff;
    align-self: flex-start;
    border-bottom-left-radius: 3px
}

.v2-prototype .mk-chat .b.r {
    background: var(--g);
    color: #fff;
    align-self: flex-end;
    border-bottom-right-radius: 3px
}

.v2-prototype .mn-slides {
    display: contents
}

.v2-prototype .mn-hcnt {
    display: none
}







.v2-prototype .my-col {
    display: flex;
    flex-direction: column;
    gap: 16px
}

.v2-prototype .my-h {
    font-size: 16px;
    font-weight: 800;
    margin: 10px 0 -4px;
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .my-h small {
    font-size: 14px;
    color: var(--sub);
    font-weight: 500
}

.v2-prototype .card.my-prof {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 22px 24px !important;
    background: linear-gradient(120deg, #fff 0%, #fff 55%, var(--g-ll) 100%)
}

.v2-prototype .my-prof .av {
    width: 64px;
    height: 64px;
    background: var(--g-l);
    color: var(--g)
}

.v2-prototype .my-prof .who2 {
    flex: 1;
    min-width: 0
}

.v2-prototype .my-prof .who2 b {
    font-size: 20px;
    font-weight: 800
}

.v2-prototype .my-prof .who2 .nm {
    display: flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .my-prof .who2 .nm span.sm {
    color: var(--sub);
    font-weight: 600
}

.v2-prototype .my-prof .meta {
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 5px;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .my-prof .meta i {
    width: 1px;
    height: 11px;
    background: var(--line)
}

.v2-prototype .my-lic {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 14px 16px;
    min-width: 270px;
    background: #fff
}

.v2-prototype .my-lic small {
    font-size: 14px;
    color: var(--sub);
    display: flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .my-lic b {
    display: block;
    font-size: 16px;
    margin: 4px 0 8px;
    font-variant-numeric: tabular-nums
}

.v2-prototype .my-lic b em {
    font-style: normal;
    color: var(--g)
}

.v2-prototype .my-lic .prog {
    height: 5px
}

.v2-prototype .my-pt {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 14px 16px;
    min-width: 150px;
    background: #fff;
    cursor: pointer;
    transition: border-color .15s
}

.v2-prototype .my-pt:hover {
    border-color: var(--o)
}

.v2-prototype .my-pt small {
    font-size: 14px;
    color: var(--sub);
    display: flex;
    justify-content: space-between;
    gap: 10px
}

.v2-prototype .my-pt small em {
    font-style: normal;
    color: var(--o2);
    font-weight: 700
}

.v2-prototype .my-pt b {
    display: block;
    font-size: 22px;
    font-weight: 800;
    margin-top: 4px;
    letter-spacing: -.02em
}

.v2-prototype .my-reg {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 12px
}

.v2-prototype .my-reg a {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 18px 18px 16px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    background: #fff;
    transition: all .18s;
    position: relative;
    overflow: hidden
}

.v2-prototype .my-reg a:hover {
    border-color: var(--g);
    box-shadow: var(--sh);
    transform: translateY(-2px)
}

.v2-prototype .my-reg a .tag {
    align-self: flex-start
}

.v2-prototype .my-reg a b {
    font-size: 17px;
    margin-top: 8px
}

.v2-prototype .my-reg a span.d {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .my-reg a em {
    font-style: normal;
    font-size: 14px;
    font-weight: 700;
    color: var(--g);
    margin-top: 12px;
    display: flex;
    align-items: center;
    gap: 4px
}

.v2-prototype .my-reg a em .ic {
    width: 15px;
    height: 15px;
    transition: transform .15s
}

.v2-prototype .my-reg a:hover em .ic {
    transform: translateX(3px)
}

.v2-prototype .my-reg a .bgi {
    position: absolute;
    right: -8px;
    bottom: -10px;
    width: 78px;
    height: 78px;
    color: var(--g-l)
}

.v2-prototype .my-reg a .bgi .ic {
    width: 78px;
    height: 78px;
    stroke-width: 1.4
}

.v2-prototype .card.my-certline {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px 20px !important;
    cursor: pointer
}

.v2-prototype .my-certline .ic {
    color: var(--g)
}

.v2-prototype .card.my-certline:hover {
    border-color: var(--g)
}

.v2-prototype .my-certline .lnk {
    margin-left: auto;
    font-size: 13px
}

.v2-prototype .my-acts {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 12px
}

.v2-prototype .my-acts .card {
    padding: 20px 20px 10px
}

.v2-prototype .my-acts h4 {
    font-size: 15.5px;
    font-weight: 800;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 7px
}

.v2-prototype .my-acts h4 .ic {
    width: 17px;
    height: 17px;
    color: var(--g)
}

.v2-prototype .my-acts a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 13px 4px;
    border-bottom: 1px solid var(--line2);
    font-size: 14px;
    font-weight: 500;
    color: var(--ink2)
}

.v2-prototype .my-acts a:last-child {
    border-bottom: 0
}

.v2-prototype .my-acts a:hover {
    color: var(--g)
}

.v2-prototype .my-acts .my-acts-disabled {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 13px 4px;
    border-bottom: 1px solid var(--line2);
    font-size: 14px;
    font-weight: 500;
    color: var(--mute);
}

.v2-prototype .my-acts .my-acts-disabled small {
    font-size: 14px;;
    font-weight: 500;
    color: var(--mute);
    white-space: nowrap;
}

.v2-prototype .my-acts a .ic {
    width: 15px;
    height: 15px;
    color: var(--mute);
    margin-left: auto
}

.v2-prototype .my-acts a .cnt {
    margin-left: auto;
    font-size: 14px;
    font-weight: 700;
    color: var(--g);
    background: var(--g-l);
    border-radius: 999px;
    padding: 1px 8px
}

.v2-prototype .my-acts a .cnt + .ic {
    margin-left: 0
}

.v2-prototype .my-seg {
    display: inline-flex;
    background: var(--bg);
    border-radius: 12px;
    padding: 4px;
    gap: 2px
}

.v2-prototype .my-seg a {
    height: 38px;
    padding: 0 18px;
    border-radius: 9px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 700;
    color: var(--sub);
    cursor: pointer
}

.v2-prototype .my-seg a.on {
    background: #fff;
    color: var(--ink);
    box-shadow: var(--sh)
}

.v2-prototype .my-seg a .badge-n {
    height: 17px;
    min-width: 17px;
    font-size: 14px
}

.v2-prototype .my-alist {
    border-top: 2px solid var(--ink);
    margin-top: 14px
}

.v2-prototype .my-al {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 8px;
    border-bottom: 1px solid var(--line2);
    cursor: pointer;
    transition: background .12s
}

.v2-prototype .my-al:hover {
    background: #FAFBFB
}

.v2-prototype .my-al .ico {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: var(--bg);
    color: var(--sub);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .my-al.new .ico {
    background: var(--g-l);
    color: var(--g)
}

.v2-prototype .my-al .tx {
    flex: 1;
    min-width: 0
}

.v2-prototype .my-al .tx b {
    font-size: 15px;
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .my-al .tx p {
    font-size: 14px;
    color: var(--sub);
    margin-top: 3px
}

.v2-prototype .my-al .tx small {
    font-size: 14px;
    color: var(--mute);
    margin-top: 4px;
    display: block
}

.v2-prototype .my-al:not(.new) .tx b {
    color: var(--ink2);
    font-weight: 600
}

.v2-prototype .my-newb {
    display: inline-flex;
    align-items: center;
    height: 24px;
    padding: 0 9px;
    border-radius: 7px;
    border: 1px solid #F3C5C7;
    background: var(--red-l);
    color: #C2272D;
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap
}

.v2-prototype .my-al .go {
    flex: none;
    color: var(--sub)
}

.v2-prototype .my-al .go:hover {
    color: var(--g)
}

.v2-prototype .my-aset {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 14px;
    align-items: start;
    margin-top: 16px
}

.v2-prototype .my-aset .card {
    padding: 20px 22px 8px
}

.v2-prototype .my-aset .hd {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--line)
}

.v2-prototype .my-aset .hd b {
    font-size: 16px;
    font-weight: 800
}

.v2-prototype .my-aset .hd span {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .my-swrow {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 12px 0;
    border-bottom: 1px solid var(--line2);
    font-size: 14px;
    color: var(--ink2)
}

.v2-prototype .my-swrow:last-child {
    border-bottom: 0
}

.v2-prototype .my-ptop {
    display: grid;
    grid-template-columns:1fr 1fr 1fr;
    gap: 12px
}

.v2-prototype .my-ptop .card {
    padding: 20px 22px
}

.v2-prototype .my-ptop small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .my-ptop .big {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -.02em;
    margin-top: 4px;
    font-variant-numeric: tabular-nums
}

.v2-prototype .my-ptop .grade {
    font-size: 19px;
    font-weight: 800;
    margin-top: 8px
}

.v2-prototype .my-ptop .btns {
    display: flex;
    flex-direction: column;
    gap: 8px;
    justify-content: center
}

.v2-prototype .my-ptop .ptcard {
    background: linear-gradient(135deg, var(--g) 0%, #0D5A50 100%);
    color: #fff;
    border: 0;
    position: relative;
    overflow: hidden
}

.v2-prototype .my-ptop .ptcard small {
    color: #CFE6E1
}

.v2-prototype .my-ptop .ptcard:after {
    content: "P";
    position: absolute;
    right: -6px;
    bottom: -34px;
    font-size: 120px;
    font-weight: 900;
    color: rgba(255, 255, 255, .08)
}

.v2-prototype .my-tabs {
    display: flex;
    gap: 4px;
    background: var(--bg);
    border-radius: 12px;
    padding: 4px;
    width: max-content;
    margin-bottom: 16px
}

.v2-prototype .my-tabs a {
    height: 38px;
    padding: 0 18px;
    border-radius: 9px;
    display: inline-flex;
    align-items: center;
    font-size: 14px;
    font-weight: 700;
    color: var(--sub)
}

.v2-prototype .my-tabs a.on {
    background: #fff;
    color: var(--ink);
    box-shadow: var(--sh)
}

.v2-prototype .my-ocards {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 12px
}

.v2-prototype .my-oc {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 14px 16px 12px;
    background: #fff;
    transition: border-color .15s, box-shadow .15s;
    cursor: pointer
}

.v2-prototype .my-oc:hover {
    border-color: #cfd6dd;
    box-shadow: var(--sh)
}

.v2-prototype .my-oc .top {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .my-oc .top .sp + span {
    font-variant-numeric: tabular-nums
}

.v2-prototype .my-oc b {
    display: block;
    font-size: 16px;
    margin: 8px 0 4px
}

.v2-prototype .my-oc .bot {
    display: flex;
    align-items: center
}

.v2-prototype .my-oc .bot em {
    font-style: normal;
    font-weight: 700;
    color: var(--g);
    font-size: 14px
}

.v2-prototype .my-more {
    position: relative;
    margin-left: auto
}

.v2-prototype .my-more > button {
    width: 32px;
    height: 28px;
    border: 0;
    background: none;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ink2)
}

.v2-prototype .my-more > button:hover {
    background: var(--bg)
}

.v2-prototype .my-dd {
    position: absolute;
    right: 0;
    top: calc(100% + 4px);
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: var(--sh2);
    padding: 6px;
    min-width: 168px;
    z-index: 30;
    display: none
}

.v2-prototype .my-more.on .my-dd {
    display: block
}

.v2-prototype .my-dd a {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 9px 10px;
    border-radius: 8px;
    font-size: 14px;
    color: var(--ink2);
    white-space: nowrap
}

.v2-prototype .my-dd a:hover {
    background: var(--g-ll);
    color: var(--g2)
}

.v2-prototype .my-dd a.r {
    color: var(--red)
}

.v2-prototype .my-dd a.r:hover {
    background: var(--red-l);
    color: var(--red)
}

.v2-prototype .my-dd a .ic {
    width: 15px;
    height: 15px
}

.v2-prototype table.t tr.my-click {
    cursor: pointer
}

.v2-prototype .my-ptbl td.n {
    font-variant-numeric: tabular-nums
}

.v2-prototype .my-plist {
    border: 1px solid var(--line);
    border-radius: 14px;
    overflow: hidden;
    max-height: 420px;
    overflow-y: auto
}

.v2-prototype .my-pi {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 15px 18px;
    border-bottom: 1px solid var(--line2);
    cursor: pointer;
    transition: background .12s;
    position: relative
}

.v2-prototype .my-pi:last-child {
    border-bottom: 0
}

.v2-prototype .my-pi:hover {
    background: #FAFBFB
}

.v2-prototype .my-pi .rd {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid #CDD3DA;
    flex: none;
    position: relative
}

.v2-prototype .my-pi.on {
    background: var(--g-ll)
}

.v2-prototype .my-pi.on .rd {
    border-color: var(--g)
}

.v2-prototype .my-pi.on .rd:after {
    content: "";
    position: absolute;
    inset: 3px;
    border-radius: 50%;
    background: var(--g)
}

.v2-prototype .my-pi .nm {
    flex: 1;
    font-weight: 800;
    font-size: 15.5px
}

.v2-prototype .my-pi .nm small {
    display: block;
    font-size: 14px;
    color: var(--sub);
    font-weight: 500;
    margin-top: 2px
}

.v2-prototype .my-pi .pr {
    text-align: right
}

.v2-prototype .my-pi .pr b {
    font-size: 17px;
    font-weight: 800
}

.v2-prototype .my-pi .pr small {
    display: block;
    font-size: 14px;
    color: var(--sub);
    line-height: 1.45
}

.v2-prototype .my-pi .pr small em {
    font-style: normal;
    color: var(--g);
    font-weight: 700
}

.v2-prototype .my-psum {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 14px;
    padding: 14px 16px;
    border-radius: 12px;
    background: var(--bg);
    font-size: 13.5px
}

.v2-prototype .my-psum b {
    font-size: 18px;
    font-weight: 800
}

.v2-prototype .my-psum .sp + b {
    color: var(--g)
}

.v2-prototype .my-od-sec {
    background: var(--bg);
    border-radius: 14px;
    padding: 18px 18px 14px;
    margin-bottom: 12px
}

.v2-prototype .my-od-sec h4 {
    font-size: 15px;
    font-weight: 800;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .my-od-sec .nm {
    font-size: 18px;
    font-weight: 800;
    margin-top: 6px
}

.v2-prototype .my-od-sec .amt {
    font-size: 16px;
    font-weight: 800;
    color: var(--g);
    margin-top: 2px
}

.v2-prototype .my-od-kv {
    display: grid;
    grid-template-columns:96px 1fr;
    gap: 8px 12px;
    font-size: 14px;
    margin-top: 12px;
    background: #fff;
    border-radius: 10px;
    padding: 12px 14px
}

.v2-prototype .my-od-kv span {
    color: var(--sub)
}

.v2-prototype .my-od-kv b {
    font-weight: 600
}

.v2-prototype .my-pay {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 16px 18px
}

.v2-prototype .my-pay h4 {
    font-size: 15px;
    font-weight: 800;
    margin-bottom: 8px
}

.v2-prototype .my-pay .r {
    display: flex;
    justify-content: space-between;
    padding: 6px 0;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .my-pay .r b {
    color: var(--ink);
    font-weight: 600
}

.v2-prototype .my-pay .r.hd {
    font-size: 15px;
    font-weight: 800;
    color: var(--g)
}

.v2-prototype .my-pay .r.hd b {
    color: var(--g);
    font-weight: 800;
    font-size: 16px
}

.v2-prototype .my-pay .r.em b {
    color: var(--red);
    font-weight: 800
}

.v2-prototype .my-pay hr {
    border: 0;
    border-top: 1px dashed var(--line);
    margin: 8px 0
}

.v2-prototype .my-rcpt {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 22px 20px;
    font-size: 14px;
    font-variant-numeric: tabular-nums;
    position: relative
}

.v2-prototype .my-rcpt h4 {
    text-align: center;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: .2em
}

.v2-prototype .my-rcpt .r {
    display: flex;
    justify-content: space-between;
    padding: 4px 0
}

.v2-prototype .my-rcpt .r span {
    color: var(--sub)
}

.v2-prototype .my-rcpt hr {
    border: 0;
    border-top: 1px dashed #cfd5dc;
    margin: 12px 0
}

.v2-prototype .my-rcpt .tot {
    font-size: 16px;
    font-weight: 800
}

.v2-prototype .my-rcpt .stamp {
    position: absolute;
    right: 18px;
    bottom: 44px;
    width: 62px;
    height: 62px;
    border: 2px solid rgba(229, 72, 77, .6);
    border-radius: 50%;
    color: rgba(229, 72, 77, .75);
    font-size: 14px;;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1.2;
    transform: rotate(-12deg)
}

.v2-prototype .card.my-set {
    padding: 6px 24px 8px
}

.v2-prototype .my-set > h3 {
    padding: 16px 0 6px;
    font-size: 16px;
    font-weight: 800
}

.v2-prototype .my-set > h3.r {
    color: var(--red)
}

.v2-prototype .my-srow {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 0;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .my-srow:last-child {
    border-bottom: 0
}

.v2-prototype .my-srow .tx {
    flex: 1;
    min-width: 0
}

.v2-prototype .my-srow .tx b {
    font-size: 15px;
    font-weight: 700;
    display: block
}

.v2-prototype .my-srow .tx small {
    font-size: 14px;
    color: var(--sub);
    display: block;
    margin-top: 3px
}

.v2-prototype .my-srow .ico {
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: var(--bg);
    color: var(--ink2);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .my-set.danger .my-srow .ico {
    background: var(--red-l);
    color: var(--red)
}

.v2-prototype a.my-srow {
    cursor: pointer
}

.v2-prototype a.my-srow:hover b {
    color: var(--g)
}

.v2-prototype a.my-srow > .ic {
    color: var(--mute)
}

.v2-prototype .my-sns-on {
    color: var(--g);
    font-weight: 700
}

.v2-prototype .my-hbar {
    display: flex;
    align-items: center;
    height: 58px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #fff;
    padding: 0 10px;
    margin-bottom: 16px;
    position: relative
}

.v2-prototype .my-hbar h2 {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 17px;
    font-weight: 800;
    pointer-events: none
}

.v2-prototype .my-back {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    border: 0;
    background: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1
}

.v2-prototype .my-back:hover {
    background: var(--bg)
}

.v2-prototype .my-back .ic {
    width: 20px;
    height: 20px
}

.v2-prototype .my-box {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 26px 28px
}

.v2-prototype .my-warn {
    font-size: 14px;
    line-height: 1.85;
    color: var(--ink2)
}

.v2-prototype .my-warn .r {
    color: var(--red);
    font-weight: 700
}

.v2-prototype .my-warnbox {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 16px 18px;
    border-radius: 12px;
    background: var(--red-l);
    margin-bottom: 18px
}

.v2-prototype .my-warnbox > .ic {
    color: var(--red);
    width: 22px;
    height: 22px;
    margin-top: 1px
}

.v2-prototype .my-vrow {
    display: flex;
    gap: 8px;
    margin-top: 10px
}

.v2-prototype .my-vrow .inp {
    height: 50px;
    font-size: 15px
}

.v2-prototype .my-vrow .btn {
    height: 50px;
    min-width: 120px;
    font-size: 15px
}

.v2-prototype .my-code {
    position: relative;
    flex: 1
}

.v2-prototype .my-code .inp {
    padding-right: 70px;
    letter-spacing: .2em
}

.v2-prototype .my-timer {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--red);
    font-weight: 700;
    font-size: 14px;
    font-variant-numeric: tabular-nums
}

.v2-prototype .my-ok {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    border-radius: 12px;
    background: var(--g-l);
    color: var(--g2);
    font-weight: 700;
    margin-top: 12px
}

.v2-prototype .my-donep {
    border-radius: 20px;
    padding: 64px 30px 56px;
    text-align: center;
    color: #fff;
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, #8DCBC1 0%, #3E9E90 55%, #2B8577 100%)
}

.v2-prototype .my-donep:before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    right: -140px;
    top: -180px;
    background: rgba(255, 255, 255, .12)
}

.v2-prototype .my-donep:after {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    left: -90px;
    bottom: -130px;
    background: rgba(255, 255, 255, .08)
}

.v2-prototype .my-donep > * {
    position: relative;
    z-index: 1
}

.v2-prototype .my-donep .ci {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .2);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px
}

.v2-prototype .my-donep .ci .ic {
    width: 36px;
    height: 36px;
    color: #fff
}

.v2-prototype .my-donep h2 {
    font-size: 28px;
    font-weight: 800
}

.v2-prototype .my-donep h4 {
    font-size: 16px;
    font-weight: 700;
    margin-top: 10px;
    opacity: .95
}

.v2-prototype .my-donep p {
    font-size: 14.5px;
    margin-top: 22px;
    opacity: .9;
    line-height: 1.7
}

.v2-prototype .my-donep.blue {
    background: linear-gradient(140deg, #1D6B7C 0%, #1C5574 50%, #1F4B6E 100%)
}

.v2-prototype .my-donep.dark {
    background: linear-gradient(140deg, #3A404B 0%, #16191F 100%)
}

.v2-prototype .my-donep .wbtn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 46px;
    min-width: 340px;
    border: 1.5px solid rgba(255, 255, 255, .7);
    border-radius: 10px;
    color: #fff;
    font-weight: 700;
    margin-top: 22px;
    transition: background .15s
}

.v2-prototype .my-donep .wbtn:hover {
    background: rgba(255, 255, 255, .12)
}

.v2-prototype .my-donebtns {
    display: flex;
    gap: 10px;
    justify-content: center;
    margin-top: 16px
}

.v2-prototype .my-donebtns .btn {
    min-width: 220px;
    height: 50px;
    font-size: 15px
}

.v2-prototype .my-hour {
    display: inline-block;
    animation: myspin 2.4s ease-in-out infinite
}

@keyframes myspin {
    0%, 40% {
        transform: rotate(0)
    }
    60%, 100% {
        transform: rotate(180deg)
    }
}

.v2-prototype .my-doc {
    display: grid;
    grid-template-columns:1fr 210px;
    gap: 24px;
    align-items: start
}

.v2-prototype .my-dochead {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px
}

.v2-prototype .my-dochead .my-back {
    border: 1px solid var(--line);
    background: #fff
}

.v2-prototype .my-dochead h2 {
    font-size: 24px;
    font-weight: 800;
    flex: 1
}

.v2-prototype .my-dochead select {
    width: auto;
    min-width: 190px
}

.v2-prototype .my-legal {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 28px 32px;
    font-size: 14px;
    line-height: 1.85;
    color: var(--ink2)
}

.v2-prototype .my-legal .intro {
    padding: 14px 16px;
    border-radius: 12px;
    background: var(--bg);
    font-size: 14px;
    margin-bottom: 10px
}

.v2-prototype .my-legal h3 {
    font-size: 17px;
    font-weight: 800;
    color: var(--ink);
    margin: 30px 0 4px;
    padding-top: 4px;
    scroll-margin-top: 100px
}

.v2-prototype .my-legal h3:first-of-type {
    margin-top: 10px
}

.v2-prototype .my-legal h4 {
    font-size: 15px;
    font-weight: 700;
    color: var(--ink);
    margin: 18px 0 4px;
    scroll-margin-top: 100px
}

.v2-prototype .my-legal p {
    margin: 4px 0
}

.v2-prototype .my-legal ol, .v2-prototype .my-legal ul {
    margin: 4px 0;
    padding-left: 20px
}

.v2-prototype .my-legal li {
    margin: 2px 0
}

.v2-prototype .my-legal table {
    width: 100%;
    border-collapse: collapse;
    margin: 8px 0;
    font-size: 13px
}

.v2-prototype .my-legal th, .v2-prototype .my-legal td {
    border: 1px solid var(--line);
    padding: 8px 10px;
    text-align: left;
    vertical-align: top
}

.v2-prototype .my-legal th {
    background: var(--bg);
    font-weight: 600
}

.v2-prototype .my-legal .add {
    margin-top: 30px;
    padding-top: 16px;
    border-top: 1px solid var(--line);
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .my-toc {
    position: sticky;
    top: 96px;
    background: var(--bg);
    border-radius: 14px;
    padding: 16px 14px;
    max-height: calc(100vh - 120px);
    overflow: auto
}

.v2-prototype .my-toc b {
    display: block;
    font-size: 14px;
    color: var(--g2);
    margin: 0 0 8px 4px
}

.v2-prototype .my-toc a {
    display: block;
    padding: 6px 8px;
    border-radius: 8px;
    font-size: 14px;
    color: var(--ink2);
    line-height: 1.35
}

.v2-prototype .my-toc a:hover {
    background: #fff;
    color: var(--g)
}

.v2-prototype .my-iq {
    display: grid;
    grid-template-columns:1fr 1.15fr;
    gap: 14px;
    align-items: stretch;
    margin-top: 16px
}

.v2-prototype .my-iq .card {
    padding: 20px 22px;
    min-height: 560px
}

.v2-prototype .my-iq h3 .ic {
    color: var(--ink2)
}

.v2-prototype .my-iqi {
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 14px 16px;
    margin-top: 10px;
    cursor: pointer;
    transition: border-color .15s
}

.v2-prototype .my-iqi:hover {
    border-color: #cfd6dd
}

.v2-prototype .my-iqi .top {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .my-iqi b {
    display: block;
    font-size: 15px;
    margin-top: 6px
}

.v2-prototype .my-iqi .bd {
    display: none;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--line2);
    font-size: 14px;
    color: var(--ink2);
    line-height: 1.7
}

.v2-prototype .my-iqi.open .bd {
    display: block
}

.v2-prototype .my-filebox {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 8px 8px 8px 14px;
    min-height: 50px;
    flex-wrap: wrap
}

.v2-prototype .my-filebox .ph {
    color: var(--mute);
    font-size: 14px;
    flex: 1
}

.v2-prototype .my-prep {
    border: 1px solid var(--line);
    border-radius: 20px;
    padding: 70px 30px;
    text-align: center;
    background: linear-gradient(180deg, var(--g-ll), #fff 70%)
}

.v2-prototype .my-prep .ci {
    width: 84px;
    height: 84px;
    border-radius: 26px;
    background: #fff;
    box-shadow: var(--sh);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--g);
    margin-bottom: 20px
}

.v2-prototype .my-prep .ci .ic {
    width: 40px;
    height: 40px
}

.v2-prototype .my-prep h2 {
    font-size: 26px;
    font-weight: 800
}

.v2-prototype .my-prep h2 em {
    font-style: normal;
    color: var(--g)
}

.v2-prototype .my-prep p {
    color: var(--sub);
    margin-top: 10px;
    font-size: 14.5px;
    line-height: 1.7
}

.v2-prototype .my-guide {
    background: linear-gradient(110deg, #EAF2F8, #E7F3F0);
    border-radius: 16px;
    padding: 22px 26px;
    display: flex;
    gap: 16px;
    align-items: flex-start
}

.v2-prototype .my-guide > .ic {
    width: 26px;
    height: 26px;
    color: var(--g);
    margin-top: 2px
}

.v2-prototype .my-guide ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 14.5px;
    color: var(--ink2)
}

.v2-prototype .my-guide li b {
    color: var(--ink)
}

.v2-prototype .my-ccards {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 14px
}

.v2-prototype .my-cc {
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 24px;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 6px;
    transition: all .18s
}

.v2-prototype .my-cc:hover {
    border-color: var(--g);
    box-shadow: var(--sh)
}

.v2-prototype .my-cc .ci {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    background: var(--g-l);
    color: var(--g);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 8px
}

.v2-prototype .my-cc .ci .ic {
    width: 24px;
    height: 24px
}

.v2-prototype .my-cc h3 {
    font-size: 18px;
    font-weight: 800
}

.v2-prototype .my-cc p {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .my-cc .need {
    font-size: 14px;
    color: var(--ink2);
    background: var(--bg);
    border-radius: 8px;
    padding: 8px 10px;
    margin-top: 6px
}

.v2-prototype .my-cc .btn {
    align-self: flex-start;
    margin-top: 12px;
    height: 46px;
    padding: 0 22px;
    font-size: 15px
}

.v2-prototype .my-cc.mkt {
    grid-column: 1/-1;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    background: linear-gradient(110deg, #F4F2FD, #fff 60%)
}

.v2-prototype .my-cc.mkt:hover {
    border-color: var(--pur)
}

.v2-prototype .my-cc.mkt .ci {
    background: var(--pur-l);
    color: var(--pur);
    margin: 0
}

.v2-prototype .my-cc.mkt .btn {
    margin: 0;
    background: var(--pur);
    border-color: var(--pur);
    color: #fff
}

.v2-prototype .my-cstat {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 12px
}

.v2-prototype .my-cstat .nm {
    font-size: 16px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .my-cstat .nm .ic {
    color: var(--g)
}

.v2-prototype .my-cguide {
    display: flex;
    align-items: start;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid var(--line2);
    font-size: 14px;
    color: var(--sub);
    flex-direction: column;
}

.v2-prototype .my-cguide .chip {
    height: 30px;
    font-size: 14px
}

.v2-prototype .my-capp {
    display: grid;
    grid-template-columns:1fr 250px;
    gap: 18px;
    align-items: start
}

.v2-prototype .my-capp .side {
    background: var(--bg);
    border-radius: 16px;
    padding: 20px;
    position: sticky;
    top: 96px
}

.v2-prototype .my-capp .side h4 {
    font-size: 14.5px;
    font-weight: 800;
    margin-bottom: 12px
}

.v2-prototype .my-capp .side ol {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 12px;
    font-size: 14px;
    color: var(--ink2)
}

.v2-prototype .my-capp .side li {
    display: flex;
    gap: 10px
}

.v2-prototype .my-capp .side li i {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #fff;
    color: var(--g);
    font-style: normal;
    font-weight: 800;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .my-capp .side li.on i {
    background: var(--g);
    color: #fff
}

.v2-prototype .my-capp .side li b {
    display: block;
    color: var(--ink)
}

.v2-prototype .my-flds .inp {
    height: 50px;
    font-size: 15px
}

.v2-prototype .my-flds .fld {
    margin-bottom: 12px
}

.v2-prototype .my-note {
    font-size: 14px;
    color: var(--sub);
    display: flex;
    gap: 6px;
    align-items: flex-start;
    margin-top: 4px
}

.v2-prototype .my-note .ic {
    width: 15px;
    height: 15px;
    color: var(--o2);
    margin-top: 2px
}

.v2-prototype .my-nextbar {
    display: flex;
    gap: 10px;
    justify-content: center;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--line)
}

.v2-prototype .my-nextbar .btn {
    height: 52px;
    font-size: 15.5px;
    min-width: 180px
}

.v2-prototype .my-nextbar .btn.f2 {
    min-width: 360px
}

.v2-prototype .my-cs-ico {
    width: 76px;
    height: 76px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 18px auto 14px
}

.v2-prototype .my-cs-ico .ic {
    width: 36px;
    height: 36px
}

.v2-prototype .my-cs h2 {
    text-align: center;
    font-size: 21px;
    font-weight: 800
}

.v2-prototype .my-cs p.m {
    text-align: center;
    color: var(--sub);
    margin-top: 8px;
    line-height: 1.65
}

.v2-prototype .my-cs .why {
    margin-top: 16px;
    padding: 14px 16px;
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.65
}

.v2-prototype .my-cs .acts {
    display: flex;
    gap: 8px;
    margin-top: 18px
}

.v2-prototype .my-cs .acts .btn {
    flex: 1;
    height: 48px;
    font-size: 15px
}

.v2-prototype .my-dchk {
    width: 68px;
    height: 68px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .18);
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .my-dchk .ic {
    width: 34px;
    height: 34px;
    stroke-width: 2.4
}

.v2-prototype .my-tocsel {
    display: none
}







.v2-prototype .tabs.rc-tabs {
    margin-bottom: 0
}

.v2-prototype .rc-tabs a {
    cursor: pointer
}

.v2-prototype .rc-filt {
    background: var(--bg);
    border-radius: 16px;
    padding: 6px 18px;
    margin: 16px 0 14px
}

.v2-prototype .rc-filt .filt {
    grid-template-columns:64px 1fr;
    gap: 12px 14px;
    margin: 12px 0
}

.v2-prototype .rc-filt .chip {
    height: 32px;
    padding: 0 12px;
    font-size: 14px
}

.v2-prototype .rc-filt .chip.ck:not(.on) {
    background: #fff
}

.v2-prototype .search.rc-q {
    height: 40px;
    max-width: 420px;
    background: #fff
}

.v2-prototype .rc-q > .ic {
    color: var(--mute)
}

.v2-prototype .row.rc-res {
    margin: 4px 0 10px;
    min-height: 28px
}

.v2-prototype .rc-more {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 22px 0 4px
}

.v2-prototype .rc-top {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px
}

.v2-prototype .rc-detail {
    display: grid;
    grid-template-columns:minmax(0, 1fr) 296px;
    gap: 24px;
    align-items: start
}

.v2-prototype .rc-dl {
    min-width: 0
}

.v2-prototype .rc-snav {
    position: sticky;
    top: 72px;
    z-index: 5;
    display: flex;
    gap: 2px;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    background: rgba(255, 255, 255, .95);
    backdrop-filter: blur(6px);
    padding: 8px 0 10px;
    margin-bottom: 6px;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .rc-snav a {
    flex: none;
    height: 30px;
    padding: 0 9px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
    color: var(--sub);
    display: inline-flex;
    align-items: center;
    cursor: pointer
}

.v2-prototype .rc-snav a:hover {
    background: var(--bg);
    color: var(--ink)
}

.v2-prototype .rc-snav a.on {
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .rc-sec {
    margin-top: 14px;
    scroll-margin-top: 140px
}

.v2-prototype .rc-sec > .ttl {
    margin-bottom: 14px
}

.v2-prototype .rc-sec table.kv th {
    width: 120px
}

.v2-prototype .rc-dd {
    color: #D9480F;
    margin-left: 4px
}

.v2-prototype .rc-fee th, .v2-prototype .rc-feein th {
    text-align: center
}

.v2-prototype .rc-fee tbody th {
    background: var(--bg);
    font-weight: 600;
    color: var(--ink2);
    padding: 11px 12px;
    border-bottom: 1px solid var(--line2);
    width: 80px
}

.v2-prototype .rc-fee td {
    color: var(--mute)
}

.v2-prototype .rc-ga {
    display: flex;
    gap: 18px;
    align-items: flex-start
}

.v2-prototype .rc-sup {
    display: grid;
    grid-template-columns:repeat(5, 1fr);
    gap: 8px
}

.v2-prototype .rc-sup > div {
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 14px 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    color: var(--mute)
}

.v2-prototype .rc-sup > div .ic {
    width: 22px;
    height: 22px
}

.v2-prototype .rc-sup > div b {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .rc-sup > div span {
    font-size: 11.5px
}

.v2-prototype .rc-sup > div.on {
    border-color: var(--g);
    background: var(--g-ll);
    color: var(--g)
}

.v2-prototype .rc-sup > div.on b {
    color: var(--g2)
}

.v2-prototype .rc-map .hero-ph {
    gap: 6px
}

.v2-prototype .rc-addr {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 12px
}

.v2-prototype .rc-addr > .ic {
    color: var(--g)
}

.v2-prototype .rc-addr > div {
    flex: 1;
    min-width: 0
}

.v2-prototype .rc-side {
    position: sticky;
    top: 96px;
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .card.rc-scard {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 20px;
    box-shadow: var(--sh)
}

.v2-prototype .rc-stitle {
    font-size: 19px;
    line-height: 1.38;
    font-weight: 800;
    letter-spacing: -.02em;
    margin: 2px 0
}

.v2-prototype .rc-sdue {
    display: flex;
    align-items: center;
    gap: 6px;
    background: var(--bg);
    border-radius: 10px;
    padding: 10px 12px;
    font-size: 14px;
    color: var(--sub);
    margin: 2px 0 4px
}

.v2-prototype .rc-sdue .ic {
    width: 16px;
    height: 16px
}

.v2-prototype .rc-sdue b {
    color: var(--ink);
    margin-left: auto
}

.v2-prototype .rc-sdue em {
    font-style: normal;
    font-weight: 700;
    color: #D9480F
}

.v2-prototype .rc-scard .btn.lg {
    height: 54px;
    font-size: 16px
}

.v2-prototype .btn.rc-bmb {
    background: var(--bg);
    border-color: var(--bg)
}

.v2-prototype .rc-bmb.on {
    background: var(--o-l);
    border-color: var(--o-l);
    color: #B25F00
}

.v2-prototype .rc-bmb.on .ic {
    fill: currentColor
}

.v2-prototype .card.rc-share {
    display: flex;
    align-items: center;
    padding: 12px 16px
}

.v2-prototype .rc-note {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    background: var(--g-ll);
    border: 1px solid #D6EAE5;
    border-radius: 12px;
    padding: 12px 14px;
    font-size: 14px;
    line-height: 1.6;
    color: var(--ink2)
}

.v2-prototype .rc-note > .ic {
    color: var(--g);
    margin-top: 1px
}

.v2-prototype .rc-note.warn {
    background: var(--red-l);
    border-color: #F6CFD1
}

.v2-prototype .rc-note.warn > .ic {
    color: var(--red)
}

.v2-prototype .rc-qh {
    font-size: 15px;
    font-weight: 800;
    margin: 18px 0 10px
}

.v2-prototype .rc-resl {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.v2-prototype .rc-rs {
    display: flex;
    align-items: center;
    gap: 14px;
    border: 1.5px solid var(--line);
    border-radius: 14px;
    padding: 14px 16px;
    cursor: pointer;
    transition: all .15s
}

.v2-prototype .rc-rs:hover {
    border-color: #cdd4db
}

.v2-prototype .rc-rs.on {
    border-color: var(--g);
    background: var(--g-ll)
}

.v2-prototype .rc-radio {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid #C9CFD6;
    flex: none;
    position: relative;
    background: #fff
}

.v2-prototype .rc-rs.on .rc-radio {
    border-color: var(--g)
}

.v2-prototype .rc-rs.on .rc-radio:after {
    content: "";
    position: absolute;
    inset: 3px;
    border-radius: 50%;
    background: var(--g)
}

.v2-prototype .rc-done {
    padding: 6px 10px 4px
}

.v2-prototype .rc-d1 {
    font-size: 20px;
    font-weight: 600;
    opacity: .92
}

.v2-prototype .rc-d2 {
    font-size: 36px;
    font-weight: 800;
    letter-spacing: -.03em;
    line-height: 1.2;
    margin-top: 2px
}

.v2-prototype .rc-dco {
    font-size: 14px;
    opacity: .75;
    margin-top: 22px
}

.v2-prototype .rc-dti {
    font-size: 17px;
    font-weight: 700;
    margin-top: 3px
}

.v2-prototype .rc-dlogo {
    margin: 16px 0 18px;
    display: flex;
    justify-content: center
}

.v2-prototype .rc-dlogo .logo-ph {
    border: 0;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .15)
}

.v2-prototype .rc-dlinks {
    border-top: 1px solid rgba(255, 255, 255, .25);
    text-align: left;
    max-width: 360px;
    margin: 0 auto
}

.v2-prototype .rc-dlinks a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 6px;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
    font-size: 15px;
    font-weight: 600
}

.v2-prototype .rc-dlinks a:hover {
    background: rgba(255, 255, 255, .06)
}

.v2-prototype .rc-dlinks .ic {
    width: 16px;
    height: 16px;
    opacity: .7
}

.v2-prototype .rc-dlinks a.rc-cancel {
    color: #FFC2B3;
    border-bottom: 0
}

.v2-prototype .pbox.done .pf .btn.rc-dark {
    background: #0B1513;
    border-color: #0B1513;
    color: #fff
}

.v2-prototype .pbox.done .pf .btn.rc-dark:hover {
    background: #000
}

.v2-prototype .rc-dico {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .14);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 14px
}

.v2-prototype .rc-dico .ic {
    width: 26px;
    height: 26px
}

.v2-prototype .rc-dr {
    display: flex;
    gap: 12px;
    padding: 5px 0
}

.v2-prototype .rc-dr span {
    width: 96px;
    flex: none;
    opacity: .7
}

.v2-prototype .rc-dr b {
    font-weight: 600;
    min-width: 0
}

.v2-prototype .rc-guide {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.v2-prototype .rc-gs {
    display: flex;
    align-items: center;
    gap: 14px;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 14px 16px
}

.v2-prototype .rc-gs > i {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--g-l);
    color: var(--g2);
    font-style: normal;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .rc-gs b {
    font-size: 15px
}

.v2-prototype .card.rc-subs {
    padding: 20px 22px;
    margin-bottom: 16px
}

.v2-prototype .rc-subs-h {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    flex-wrap: wrap
}

.v2-prototype .rc-subs-h .ttl {
    font-size: 16px
}

.v2-prototype .rc-evt {
    font-size: 14px;
    font-weight: 700;
    color: var(--g2);
    background: var(--g-l);
    padding: 4px 10px;
    border-radius: 999px
}

.v2-prototype .rc-subs-g {
    display: grid;
    grid-template-columns:repeat(7, 1fr);
    gap: 8px
}

.v2-prototype .rc-st {
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 12px 6px 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    background: linear-gradient(180deg, #fff, #FAFBFC)
}

.v2-prototype .rc-st small {
    font-size: 14px;
    color: var(--sub);
    min-height: 34px;
    display: flex;
    align-items: center;
    line-height: 1.35
}

.v2-prototype .rc-st b {
    font-size: 24px;
    font-weight: 800;
    letter-spacing: -.02em;
    color: var(--ink)
}

.v2-prototype .rc-st span {
    font-size: 14px;;
    color: var(--mute)
}

.v2-prototype .rc-stats {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 16px
}

.v2-prototype .rc-stat {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    gap: 14px;
    cursor: pointer;
    transition: all .15s;
    background: #fff
}

.v2-prototype .rc-stat:hover {
    border-color: #cdd4db;
    box-shadow: var(--sh)
}

.v2-prototype .rc-stat > i {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: var(--g-l);
    color: var(--g);
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .rc-stat:nth-child(2) > i {
    background: var(--blue-l);
    color: var(--blue)
}

.v2-prototype .rc-stat:nth-child(3) > i {
    background: var(--o-l);
    color: var(--o2)
}

.v2-prototype .rc-stat small {
    display: block;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .rc-stat b {
    font-size: 26px;
    font-weight: 800;
    letter-spacing: -.02em
}

.v2-prototype .card.rc-box {
    padding: 20px 22px
}

.v2-prototype .rc-mtab a {
    cursor: pointer
}

.v2-prototype .row.rc-tool {
    margin: 16px 0 14px;
    gap: 10px
}

.v2-prototype .rc-tool .chip b {
    font-weight: 800;
    margin-left: 2px
}

.v2-prototype .rc-pcs {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 12px
}

.v2-prototype .rc-pc {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 16px 18px 10px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    cursor: pointer;
    transition: all .15s;
    background: #fff
}

.v2-prototype .rc-pc:hover {
    border-color: var(--g);
    box-shadow: var(--sh)
}

.v2-prototype .rc-pc-h {
    display: flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .rc-pc-due {
    font-size: 14px;
    font-weight: 700;
    color: var(--ink2)
}

.v2-prototype .rc-pc-t {
    font-size: 16px;
    line-height: 1.4;
    min-height: 44px
}

.v2-prototype .rc-pc-f {
    display: flex;
    align-items: center;
    gap: 8px;
    border-top: 1px solid var(--line2);
    margin-top: 6px;
    padding-top: 8px;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .rc-pc-f > i {
    width: 1px;
    height: 10px;
    background: var(--line)
}

.v2-prototype .rc-pc-f a {
    color: var(--g);
    font-weight: 600
}

.v2-prototype .rc-pc-f a:hover {
    text-decoration: underline
}

.v2-prototype .rc-dots .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .rc-menu a {
    cursor: pointer
}

.v2-prototype .rc-menu a .ic {
    width: 16px;
    height: 16px;
    color: var(--mute)
}

.v2-prototype .card.rc-mhead {
    padding: 22px 24px
}

.v2-prototype .rc-mhead h2 {
    font-size: 22px;
    font-weight: 800;
    letter-spacing: -.02em;
    margin: 10px 0 8px;
    line-height: 1.35
}

.v2-prototype .rc-bbar {
    position: sticky;
    bottom: 16px;
    z-index: 20;
    margin-top: 22px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(8px);
    border: 1px solid var(--line);
    border-radius: 16px;
    box-shadow: 0 -6px 24px rgba(16, 24, 40, .08);
    padding: 12px 14px
}

.v2-prototype .rc-bbar.wide .btn {
    flex: 1;
    max-width: 320px
}

.v2-prototype .rc-vsep {
    width: 1px;
    height: 22px;
    background: var(--line);
    display: inline-block;
    margin: 0 4px
}

.v2-prototype .search.rc-tsearch {
    max-width: 640px;
    margin: 22px auto 18px;
    height: 52px;
    border-radius: 999px;
    padding: 0 6px 0 18px;
    box-shadow: var(--sh)
}

.v2-prototype .rc-tsearch > .ic {
    color: var(--mute)
}

.v2-prototype .rc-tsearch .btn {
    border-radius: 999px;
    height: 40px;
    padding: 0 22px
}

.v2-prototype .rc-apx {
    grid-column: 1/-1;
    display: flex;
    align-items: center;
    gap: 8px;
    border-top: 1px dashed var(--line);
    padding-top: 10px;
    margin-top: 4px
}

.v2-prototype .rc-new {
    font-size: 14px;
    font-weight: 800;
    color: #fff;
    background: var(--red);
    border-radius: 5px;
    padding: 1px 5px
}

.v2-prototype .card.rc-prof {
    display: flex;
    gap: 18px;
    align-items: center;
    padding: 22px 24px;
    background: linear-gradient(120deg, #fff 40%, var(--g-ll))
}

.v2-prototype .rc-prof .av.lg {
    width: 76px;
    height: 76px
}

.v2-prototype .rc-prof h2 {
    font-size: 22px;
    font-weight: 800;
    margin: 8px 0 2px
}

.v2-prototype .rc-prof h2 span {
    font-size: 14px;
    font-weight: 500;
    color: var(--sub);
    margin-left: 6px
}

.v2-prototype .card.rc-apbox {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 14px;
    padding: 16px 20px;
    border-color: #D6EAE5;
    background: var(--g-ll)
}

.v2-prototype .rc-apbox small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .rc-apbox > div:first-child {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0
}

.v2-prototype .rc-apbox .seg {
    background: #fff
}

.v2-prototype .rc-basic {
    display: flex;
    gap: 20px;
    align-items: flex-start
}

.v2-prototype .rc-photo {
    width: 120px;
    height: 150px;
    border-radius: 12px;
    background: var(--bg);
    border: 1px dashed #D3D8DE;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #B5BCC5;
    flex: none
}

.v2-prototype .rc-photo .ic {
    width: 42px;
    height: 42px
}

.v2-prototype .rc-car {
    display: flex;
    flex-direction: column;
    gap: 6px
}

.v2-prototype .rc-quota {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background: var(--g-l);
    border-radius: 12px;
    padding: 12px 16px;
    font-size: 13px
}

.v2-prototype .rc-quota b {
    color: var(--g2);
    font-size: 14px
}

.v2-prototype .rc-quota span {
    color: var(--sub)
}

.v2-prototype .rc-quota.zero {
    background: var(--red-l)
}

.v2-prototype .rc-quota.zero b {
    color: var(--red)
}

.v2-prototype .rc-oinfo {
    display: grid;
    grid-template-columns:110px 1fr;
    gap: 8px 12px;
    background: var(--bg);
    border-radius: 12px;
    padding: 14px 16px;
    font-size: 13px
}

.v2-prototype .rc-oinfo span {
    color: var(--sub)
}

.v2-prototype .rc-accs {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.v2-prototype .rc-acc {
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff
}

.v2-prototype .rc-acc > summary {
    padding: 14px 16px;
    font-size: 14px
}

.v2-prototype .rc-acc > summary .ic {
    color: var(--g);
    width: 17px;
    height: 17px
}

.v2-prototype .rc-acc[open] > summary {
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .rc-accb {
    padding: 14px 16px 16px;
    background: #FCFCFD;
    border-radius: 0 0 12px 12px
}

.v2-prototype .rc-red {
    color: var(--red);
    font-size: 14px;
    font-weight: 600
}

.v2-prototype .rc-cnt {
    display: inline-flex;
    gap: 5px;
    align-items: center;
    height: 28px;
    padding: 0 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    font-size: 14px;
    color: var(--sub);
    background: #fff
}

.v2-prototype .rc-cnt b {
    color: var(--ink)
}

.v2-prototype .rc-wbar {
    display: flex;
    align-items: center;
    gap: 12px;
    background: var(--bg);
    border-radius: 14px;
    padding: 10px 12px;
    margin-bottom: 12px;
    flex-wrap: wrap
}

.v2-prototype .search.rc-wq {
    height: 40px;
    width: 280px;
    background: #fff
}

.v2-prototype .rc-wq > .ic {
    color: var(--mute)
}

.v2-prototype .rc-wbar .chip.on {
    background: var(--g);
    border-color: var(--g)
}

.v2-prototype .rc-wl {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .rc-wr {
    display: grid;
    grid-template-columns:minmax(0, 1fr) 220px auto;
    align-items: center;
    gap: 24px;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 20px 22px;
    background: #fff;
    transition: all .15s
}

.v2-prototype .rc-wr:hover {
    border-color: #cdd4db;
    box-shadow: var(--sh)
}

.v2-prototype .rc-wr.hl {
    border-color: var(--g);
    box-shadow: 0 0 0 1px var(--g)
}

.v2-prototype .rc-wr-l {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
    border-right: 1px solid var(--line2);
    padding-right: 20px
}

.v2-prototype .rc-wr-l b {
    font-size: 16px
}

.v2-prototype .rc-wr-p {
    display: flex;
    align-items: center;
    gap: 10px
}

.v2-prototype .rc-wr-p .prog {
    flex: 1
}

.v2-prototype .rc-ed .fsec .grid2 {
    gap: 0 14px
}

.v2-prototype .rc-feein td {
    padding: 8px 6px
}

.v2-prototype .rc-feein td .inp {
    text-align: center
}

.v2-prototype .rc-feein tbody th {
    background: var(--bg);
    font-weight: 600;
    color: var(--ink2);
    padding: 8px 12px;
    border-bottom: 1px solid var(--line2);
    width: 70px
}

.v2-prototype .rc-setrow {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 0;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .rc-setrow:last-child {
    border-bottom: 0;
    padding-bottom: 0
}

.v2-prototype .rc-setrow:first-of-type {
    padding-top: 0
}

.v2-prototype .rc-setrow > div {
    flex: 1;
    min-width: 0
}

.v2-prototype .rc-setrow b {
    font-size: 14.5px
}

.v2-prototype .rc-dhead {
    display: flex;
    align-items: center;
    gap: 6px;
    justify-content: center;
    color: var(--g);
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 10px
}

.v2-prototype label.rc-all {
    display: flex;
    justify-content: center;
    padding: 10px;
    border-radius: 10px;
    background: var(--bg);
    font-weight: 700;
    margin-bottom: 12px
}

.v2-prototype .rc-cks {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 8px
}

.v2-prototype .rc-ck {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 0 12px;
    height: 42px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    transition: all .15s
}

.v2-prototype .rc-ck:hover {
    border-color: #cdd4db
}

.v2-prototype .rc-ck input {
    width: 16px;
    height: 16px;
    accent-color: var(--g);
    margin: 0
}

.v2-prototype .rc-ck:has(input:checked) {
    border-color: var(--g);
    background: var(--g-ll);
    color: var(--g2)
}

.v2-prototype .rc-picked {
    font-size: 14px;
    color: var(--sub);
    text-align: center;
    margin-top: 14px;
    line-height: 1.55
}

.v2-prototype .rc-pv {
    background: var(--bg);
    border-radius: 14px;
    padding: 18px
}

.v2-prototype .rc-pvh {
    display: flex;
    gap: 14px;
    align-items: center;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 18px 20px
}

.v2-prototype .rc-pvh h2 {
    font-size: 20px;
    font-weight: 800;
    margin-top: 2px
}

.v2-prototype .rc-filt .filt > span {
    align-self: start;
    line-height: 32px
}

.v2-prototype .rc-oth a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 4px;
    border-bottom: 1px solid var(--line2);
    cursor: pointer
}

.v2-prototype .rc-oth a:last-child {
    border-bottom: 0
}

.v2-prototype .rc-oth a:hover b {
    color: var(--g)
}

.v2-prototype .rc-oth b {
    flex: 1;
    min-width: 0;
    font-size: 14.5px
}

.v2-prototype .rc-oth .rc-od {
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap
}

.v2-prototype .rc-oth .rc-od em {
    font-style: normal;
    color: #D9480F
}

.v2-prototype .rc-oth .ic {
    width: 16px;
    height: 16px;
    color: var(--mute)
}

.v2-prototype .rc-psel {
    width: 160px
}

.v2-prototype .rc-apj {
    width: 300px;
    max-width: 100%
}

.v2-prototype .rc-mbar {
    display: none
}





.v2-prototype .jb-top3 {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 14px
}

.v2-prototype .jb-qc {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 22px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 190px;
    transition: border-color .15s, box-shadow .15s, transform .15s
}

.v2-prototype .jb-qc.hov {
    cursor: pointer
}

.v2-prototype .jb-qc.hov:hover {
    border-color: #cfd6dd;
    box-shadow: var(--sh);
    transform: translateY(-2px)
}

.v2-prototype .jb-qc h3 {
    font-size: 16px;
    font-weight: 800;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    line-height: 1.4
}

.v2-prototype .jb-qc h3 .ic {
    color: var(--g);
    margin-top: 1px
}

.v2-prototype .jb-qc .jb-emp {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--mute);
    font-size: 13.5px
}

.v2-prototype .jb-qc .jb-emp .ic {
    width: 34px;
    height: 34px;
    color: #C5CBD3
}

.v2-prototype .jb-sech {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 34px 0 14px
}

.v2-prototype .jb-sech h2 {
    font-size: 19px;
    font-weight: 800;
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .jb-sech h2 .ic {
    color: var(--g)
}

.v2-prototype .jb-sech .cnt {
    color: var(--g);
    font-weight: 800
}

.v2-prototype .jb-srch {
    display: flex;
    gap: 10px;
    margin-bottom: 16px
}

.v2-prototype .jb-srch .search {
    flex: 1;
    max-width: 340px
}

.v2-prototype .jb-srch .search .ic {
    color: var(--mute)
}

.v2-prototype .jb-aps {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 14px
}

.v2-prototype .jb-ap {
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
    padding: 18px 18px 14px;
    cursor: pointer;
    transition: all .15s;
    display: flex;
    flex-direction: column;
    gap: 6px
}

.v2-prototype .jb-ap:hover {
    border-color: var(--g);
    box-shadow: var(--sh)
}

.v2-prototype .jb-ap .tp {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .jb-ap .tp .sp + span {
    font-weight: 700;
    color: var(--ink2)
}

.v2-prototype .jb-ap h4 {
    font-size: 16.5px;
    font-weight: 800
}

.v2-prototype .jb-pill {
    align-self: center;
    margin: 10px 0 2px;
    min-width: 170px;
    height: 54px;
    padding: 0 26px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 800;
    letter-spacing: -.02em;
    color: #fff;
    background: var(--g)
}

.v2-prototype .jb-pill.s0 {
    background: #2F6FDB
}

.v2-prototype .jb-pill.s1 {
    background: var(--g)
}

.v2-prototype .jb-pill.s2 {
    background: var(--o)
}

.v2-prototype .jb-pill.s3 {
    background: #6E56CF
}

.v2-prototype .jb-pill.s4 {
    background: #3A404B
}

.v2-prototype .jb-pillsub {
    align-self: center;
    font-size: 15px;
    font-weight: 700;
    color: var(--ink2);
    margin-bottom: 8px
}

.v2-prototype .jb-ap .bt {
    display: flex;
    align-items: center;
    gap: 6px;
    border-top: 1px dashed var(--line);
    padding-top: 10px;
    margin-top: 4px
}

.v2-prototype .jb-ap .bt .tag {
    background: var(--g-ll);
    color: var(--g2)
}

.v2-prototype .jb-more {
    width: 34px;
    height: 30px;
    border: 0;
    background: none;
    border-radius: 8px;
    color: var(--sub);
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .jb-more:hover {
    background: var(--bg);
    color: var(--ink)
}

.v2-prototype .jb-more .ic {
    width: 20px;
    height: 20px
}

.v2-prototype .jb-emptybox {
    border: 1px dashed var(--line);
    border-radius: 16px;
    padding: 34px 20px;
    text-align: center;
    color: var(--sub)
}

.v2-prototype .jb-emptybox b {
    display: block;
    font-size: 15px;
    color: var(--ink2);
    margin-bottom: 4px
}

.v2-prototype .jb-head {
    display: flex;
    align-items: center;
    gap: 16px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 18px 20px;
    margin-bottom: 14px
}

.v2-prototype .jb-head h3 {
    font-size: 18px;
    font-weight: 800
}

.v2-prototype .jb-stepcard {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 22px 24px 18px
}

.v2-prototype .jb-stepcard .steps {
    margin: 18px 0 6px
}

.v2-prototype .jb-stepcard .steps .st span {
    font-size: 14px
}

.v2-prototype .jb-stepcard .steps .st span em {
    font-style: normal;
    color: var(--mute);
    margin-right: 2px
}

.v2-prototype .jb-expl {
    font-size: 14px;
    color: var(--sub);
    margin-top: 12px;
    background: var(--bg);
    border-radius: 10px;
    padding: 10px 14px;
    display: flex;
    gap: 8px;
    align-items: center
}

.v2-prototype .jb-expl .ic {
    width: 16px;
    height: 16px;
    color: var(--g)
}

.v2-prototype .jb-rows {
    margin-top: 16px;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid var(--line);
    background: #fff
}

.v2-prototype .jb-rowh {
    background: #14453E;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px 20px;
    font-weight: 700
}

.v2-prototype .jb-rowh .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .jb-row {
    display: grid;
    grid-template-columns:44px 1fr 150px 96px 110px;
    align-items: center;
    gap: 14px;
    padding: 16px 20px;
    border-top: 1px solid var(--line2);
    cursor: pointer;
    transition: background .12s
}

.v2-prototype .jb-row:hover {
    background: var(--g-ll)
}

.v2-prototype .jb-row .no {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--bg);
    color: var(--sub);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800
}

.v2-prototype .jb-row.done .no {
    background: var(--g);
    color: #fff
}

.v2-prototype .jb-row.cur {
    background: #FFFBF3
}

.v2-prototype .jb-row.cur .no {
    background: var(--o);
    color: #fff
}

.v2-prototype .jb-row b {
    font-size: 15px;
    display: block
}

.v2-prototype .jb-row small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .jb-row .dt {
    font-size: 14px;
    color: var(--mute);
    text-align: right
}

.v2-prototype .jb-row .btn {
    justify-self: end
}

.v2-prototype .jb-prog {
    text-align: center;
    font-size: 19px;
    font-weight: 800;
    color: var(--g);
    margin: 2px 0 14px
}

.v2-prototype .jb-prog em {
    font-style: normal;
    color: var(--red)
}

.v2-prototype .jb-prog em.ok {
    color: var(--g)
}

.v2-prototype .jb-gbox {
    background: var(--bg);
    border-radius: 16px;
    padding: 16px
}

.v2-prototype .jb-lbl {
    font-size: 14px;
    font-weight: 700;
    color: var(--sub);
    margin: 2px 0 8px;
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .jb-upbig {
    width: 100%;
    height: 48px;
    border: 0;
    border-radius: 12px;
    background: var(--g);
    color: #fff;
    font-weight: 700;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px
}

.v2-prototype .jb-upbig:hover {
    background: var(--g2)
}

.v2-prototype .jb-bnote {
    font-size: 14px;
    color: var(--blue);
    margin-top: 8px
}

.v2-prototype .jb-fbox {
    margin: 14px auto 4px;
    border: 1.5px solid #3A404B;
    border-radius: 14px;
    background: #F1F2F4;
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
    padding: 10px 14px;
    font-weight: 700;
    font-size: 14px;
    width: 86%
}

.v2-prototype .jb-fbox.has {
    border-color: var(--g);
    background: #fff;
    justify-content: flex-start
}

.v2-prototype .jb-tgl {
    background: #fff;
    border-radius: 12px;
    margin-top: 6px;
    overflow: hidden
}

.v2-prototype .jb-tgl > div {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 14px;
    border-top: 1px solid var(--line2);
    font-size: 13.5px
}

.v2-prototype .jb-tgl > div:first-child {
    border-top: 0
}

.v2-prototype .jb-tgl .yn {
    font-size: 14px;
    font-weight: 700;
    color: var(--red);
    min-width: 36px;
    text-align: right
}

.v2-prototype .jb-tgl .yn.on {
    color: var(--g)
}

.v2-prototype .jb-mgr {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 14px 16px;
    margin-top: 14px;
    font-size: 13px
}

.v2-prototype .jb-mgr .row {
    gap: 14px
}

.v2-prototype .jb-mgr .cm {
    margin-top: 8px;
    background: var(--bg);
    border-radius: 9px;
    padding: 10px 12px;
    min-height: 38px;
    color: var(--sub)
}

.v2-prototype .jb-cmt {
    background: var(--bg);
    border-radius: 10px;
    padding: 12px;
    text-align: center;
    color: var(--ink2);
    font-size: 13.5px
}

.v2-prototype .jb-gtbl {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px
}

.v2-prototype .jb-gtbl th {
    font-weight: 700;
    padding: 9px 6px;
    border-bottom: 2px solid var(--ink);
    text-align: center;
    white-space: nowrap
}

.v2-prototype .jb-gtbl td {
    padding: 6px 4px;
    border-bottom: 1px solid var(--line2);
    text-align: center
}

.v2-prototype .jb-gtbl td .inp {
    height: 38px;
    font-size: 13px
}

.v2-prototype .jb-addup {
    width: 100%;
    height: 42px;
    border: 1px dashed #cfd5dc;
    background: #fff;
    border-radius: 10px;
    color: var(--sub);
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 8px
}

.v2-prototype .jb-addup:hover {
    border-color: var(--g);
    color: var(--g)
}

.v2-prototype .jb-docs {
    background: #fff;
    border-radius: 12px;
    margin-top: 12px
}

.v2-prototype .jb-docs > div {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-top: 1px solid var(--line2);
    font-size: 13.5px
}

.v2-prototype .jb-docs > div:first-child {
    border-top: 0
}

.v2-prototype .jb-mnhd {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .jb-mnhd b {
    font-size: 16px
}

.v2-prototype .jb-info {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 8px
}

.v2-prototype .jb-info .ic {
    color: var(--g)
}

.v2-prototype .jb-filt {
    display: grid;
    grid-template-columns:70px 1fr;
    gap: 12px;
    align-items: start;
    margin: 16px 0 20px;
    font-size: 13px
}

.v2-prototype .jb-filt > span {
    color: var(--sub);
    font-weight: 700;
    padding-top: 8px
}

.v2-prototype .jb-filt .chip {
    height: 32px
}

.v2-prototype .jl .bm[data-del] {
    color: var(--sub)
}

.v2-prototype .jl .bm[data-del]:hover {
    color: var(--red);
    background: var(--red-l)
}

.v2-prototype .jb-kind {
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    cursor: pointer;
    transition: all .15s;
    min-height: 178px
}

.v2-prototype .jb-kind:hover {
    border-color: #cfd6dd;
    box-shadow: var(--sh);
    transform: translateY(-2px)
}

.v2-prototype .jb-kind.sel {
    border-color: var(--g);
    box-shadow: 0 0 0 1px var(--g)
}

.v2-prototype .jb-kind .tag {
    align-self: flex-start;
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .jb-kind h4 {
    font-size: 17px;
    font-weight: 800;
    margin-top: 4px
}

.v2-prototype .jb-kind p {
    font-size: 14px;
    color: var(--sub);
    line-height: 1.6
}

.v2-prototype .jb-kind .lnk {
    margin-top: auto;
    font-size: 13.5px
}

.v2-prototype .jb-res {
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
    padding: 18px 22px;
    display: grid;
    grid-template-columns:1fr 200px auto;
    align-items: center;
    gap: 20px;
    margin-bottom: 12px;
    position: relative
}

.v2-prototype .jb-res.main {
    border-color: var(--g);
    box-shadow: 0 0 0 1px var(--g)
}

.v2-prototype .jb-res .k {
    font-size: 14px;
    font-weight: 700;
    color: var(--sub);
    display: flex;
    align-items: center;
    gap: 5px
}

.v2-prototype .jb-res.main .k {
    color: var(--g2)
}

.v2-prototype .jb-res .k .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .jb-res h4 {
    font-size: 18px;
    font-weight: 800;
    margin: 4px 0 6px;
    display: flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .jb-res .meta {
    font-size: 14px;
    color: var(--sub);
    display: flex;
    gap: 16px
}

.v2-prototype .jb-res .meta b {
    color: var(--g)
}

.v2-prototype .jb-res .sub2 {
    margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--mute);
    font-size: 13px
}

.v2-prototype .jb-res .acts {
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .jb-dd {
    position: relative
}

.v2-prototype .jb-ddm {
    position: absolute;
    right: 0;
    top: calc(100% + 6px);
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: var(--sh2);
    padding: 6px;
    min-width: 168px;
    z-index: 30;
    display: none
}

.v2-prototype .jb-dd.on .jb-ddm {
    display: block
}

.v2-prototype .jb-ddm a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 12px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2)
}

.v2-prototype .jb-ddm a:hover {
    background: var(--g-ll);
    color: var(--g2)
}

.v2-prototype .jb-ddm a.r {
    color: var(--red)
}

.v2-prototype .jb-ddm a.r:hover {
    background: var(--red-l)
}

.v2-prototype .jb-ddm a .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .jb-ddm .sep {
    height: 1px;
    background: var(--line2);
    margin: 4px
}

.v2-prototype .jb-basic {
    display: grid;
    grid-template-columns:150px 1fr;
    gap: 26px
}

.v2-prototype .jb-photo {
    width: 150px;
    height: 186px;
    border-radius: 14px;
    background: var(--bg);
    border: 1px solid var(--line);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #B5BCC5;
    position: relative;
    overflow: hidden
}

.v2-prototype .jb-photo > .ic {
    width: 60px;
    height: 60px
}

.v2-prototype .jb-photo.up {
    background: linear-gradient(160deg, #DDEFEA, #C6E3DC);
    color: var(--g)
}

.v2-prototype .jb-photo.up .ok {
    position: absolute;
    right: 8px;
    top: 8px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--g);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .jb-photo.up .ok .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .jb-photo .fn {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(14, 100, 87, .85);
    color: #fff;
    font-size: 14px;;
    padding: 4px 8px;
    text-align: center
}

.v2-prototype .fsec.acc {
    padding: 0
}

.v2-prototype .fsec.acc > summary {
    padding: 20px 24px;
    font-size: 16px;
    font-weight: 800
}

.v2-prototype .fsec.acc > summary .ic {
    color: var(--g)
}

.v2-prototype .fsec.acc > summary small {
    font-weight: 500;
    color: var(--sub);
    font-size: 14px;
    margin-left: 4px
}

.v2-prototype .fsec.acc > .in {
    padding: 0 24px 22px
}

.v2-prototype .jb-q {
    font-size: 14px;
    font-weight: 700;
    margin: 0 0 10px
}

.v2-prototype .jb-qn {
    font-size: 14px;
    color: var(--blue);
    margin: -4px 0 10px
}

.v2-prototype .btn.jb-fbtn {
    width: 100%;
    justify-content: flex-start;
    color: var(--sub);
    font-weight: 500;
    height: 46px
}

.v2-prototype .jb-list {
    margin-top: 10px;
    display: flex;
    flex-direction: column;
    gap: 6px
}

.v2-prototype .jb-li {
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--bg);
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 13.5px
}

.v2-prototype .jb-li b {
    font-weight: 700
}

.v2-prototype .jb-li .x {
    margin-left: auto;
    border: 0;
    background: none;
    color: var(--mute);
    width: 26px;
    height: 26px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .jb-li .x:hover {
    background: #fff;
    color: var(--red)
}

.v2-prototype .jb-li .x .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .jb-carbox {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 16px 18px;
    margin-top: 14px
}

.v2-prototype .jb-carbox h5 {
    font-size: 14px;
    font-weight: 800;
    margin: 0
}

.v2-prototype .jb-rad {
    display: flex;
    gap: 18px;
    margin: 12px 0
}

.v2-prototype .jb-rad label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    cursor: pointer
}

.v2-prototype .jb-rad input {
    accent-color: var(--g);
    width: 16px;
    height: 16px;
    margin: 0
}

.v2-prototype .jb-sum {
    display: flex;
    gap: 18px;
    font-size: 14px;
    color: var(--blue);
    font-weight: 700;
    margin: 14px 0 8px
}

.v2-prototype .jb-radlist {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .jb-red {
    background: var(--red-l);
    border: 1px solid #F5C2C4;
    color: #9B1C21;
    border-radius: 14px;
    padding: 14px 18px;
    font-size: 14px;
    line-height: 1.7;
    font-weight: 600;
    margin-bottom: 14px
}

.v2-prototype .jb-red p + p {
    margin-top: 6px
}

.v2-prototype .jb-ckl {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 10px
}

.v2-prototype .jb-ckl label {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 6px;
    border-radius: 9px;
    font-size: 14px;
    cursor: pointer
}

.v2-prototype .jb-ckl label:hover {
    background: var(--bg)
}

.v2-prototype .jb-ckl input {
    width: 18px;
    height: 18px;
    accent-color: var(--g);
    margin: 0
}

.v2-prototype .jb-uprow {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 0;
    border-top: 1px solid var(--line2)
}

.v2-prototype .jb-uprow:first-child {
    border-top: 0
}

.v2-prototype .jb-uprow > b {
    font-size: 14px;
    min-width: 200px
}

.v2-prototype .jb-uprow [data-uplist] {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    justify-content: flex-end
}

.v2-prototype .jb-uprow.err {
    background: var(--red-l);
    border-radius: 10px;
    padding-left: 10px;
    padding-right: 10px
}

.v2-prototype .jb-docsec {
    scroll-margin-top: 100px
}

.v2-prototype .jb-docsec > .jb-sech {
    margin-top: 30px
}

.v2-prototype .jb-pphoto {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    padding: 10px 0 20px
}

.v2-prototype .jb-pphoto .cir {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: #C9CED5;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden
}

.v2-prototype .jb-pphoto .cir .ic {
    width: 96px;
    height: 96px;
    margin-top: 22px
}

.v2-prototype .jb-pphoto .cir.up {
    background: linear-gradient(160deg, #BFE3DA, #7FC1B2)
}

.v2-prototype .jb-ins {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 6px
}

.v2-prototype .jb-ins label {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 9px;
    padding: 9px 12px;
    font-size: 14px;
    cursor: pointer
}

.v2-prototype .jb-ins label.on {
    border-color: var(--g);
    background: var(--g-ll);
    color: var(--g2);
    font-weight: 700
}

.v2-prototype .jb-ins input {
    accent-color: var(--g);
    width: 16px;
    height: 16px;
    margin: 0
}

.v2-prototype .jb-insh {
    display: flex;
    align-items: center;
    margin: 14px 0 8px;
    font-weight: 800;
    font-size: 13.5px
}

.v2-prototype .jb-insh span {
    margin-left: auto;
    font-size: 14px;
    font-weight: 700;
    color: var(--g)
}

.v2-prototype .jb-prio label {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 12px;
    border-radius: 10px;
    border: 1px solid var(--line2);
    margin-bottom: 6px;
    cursor: pointer;
    font-size: 14px;
    transition: all .12s
}

.v2-prototype .jb-prio label:hover {
    border-color: #cfd6dd
}

.v2-prototype .jb-prio label.on {
    border-color: var(--g);
    background: var(--g-ll);
    font-weight: 700;
    color: var(--g2)
}

.v2-prototype .jb-prio input {
    display: none
}

.v2-prototype .jb-prio i {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 1.5px solid #C5CBD3;
    font-style: normal;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 800;
    flex: none
}

.v2-prototype .jb-prio label.on i {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .jb-ac {
    position: relative
}

.v2-prototype .jb-acl {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 4px);
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: var(--sh2);
    max-height: 220px;
    overflow: auto;
    z-index: 5;
    padding: 6px;
    display: none
}

.v2-prototype .jb-acl.on {
    display: block
}

.v2-prototype .jb-acl a {
    display: block;
    padding: 9px 12px;
    border-radius: 8px;
    font-size: 13.5px
}

.v2-prototype .jb-acl a:hover, .v2-prototype .jb-acl a.hi {
    background: var(--g-ll);
    color: var(--g2)
}

.v2-prototype .jb-gachip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 32px;
    padding: 0 8px 0 12px;
    border-radius: 999px;
    background: var(--ink);
    color: #fff;
    font-size: 14px;
    font-weight: 600
}

.v2-prototype .jb-gachip b {
    cursor: pointer;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .18);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;;
    font-weight: 400
}

.v2-prototype .jb-gachip.ex {
    background: #5A616C
}

.v2-prototype .jb-shield {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: var(--g);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto 16px;
    box-shadow: 0 10px 24px rgba(18, 122, 108, .28)
}

.v2-prototype .jb-shield .ic {
    width: 34px;
    height: 34px
}

.v2-prototype .jb-agree label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 8px 2px;
    font-size: 14px;
    line-height: 1.55;
    cursor: pointer
}

.v2-prototype .jb-agree input {
    width: 18px;
    height: 18px;
    accent-color: var(--g);
    margin: 2px 0 0;
    flex: none
}

.v2-prototype .jb-agree label.all {
    border-top: 1px solid var(--line2);
    margin-top: 6px;
    padding-top: 12px;
    font-weight: 800
}

.v2-prototype .jb-pct {
    display: grid;
    grid-template-columns:90px 1fr;
    gap: 8px 12px;
    align-items: center
}

.v2-prototype .jb-pct span {
    font-size: 14px;
    color: var(--ink2)
}

.v2-prototype .jb-total {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
    padding: 10px 14px;
    border-radius: 10px;
    background: var(--g-ll);
    font-size: 14px;
    font-weight: 700;
    color: var(--g2)
}

.v2-prototype .jb-total.bad {
    background: var(--red-l);
    color: #B4232A
}

.v2-prototype .jb-total .sp + b {
    font-size: 15px
}

.v2-prototype .jb-rank {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 10px
}

.v2-prototype .jb-rank span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 34px;
    padding: 0 14px 0 6px;
    border-radius: 999px;
    background: var(--g-ll);
    color: var(--g2);
    font-weight: 700;
    font-size: 13.5px
}

.v2-prototype .jb-rank span i {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--g);
    color: #fff;
    font-style: normal;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px
}

.v2-prototype .jb-saved {
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--g-ll);
    border: 1px solid #CDE6E0;
    color: var(--g2);
    border-radius: 14px;
    padding: 12px 16px;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 14px
}

.v2-prototype .jb-saved .ic {
    color: var(--g)
}

.v2-prototype .jb-prev table.kv th {
    width: 120px
}

.v2-prototype .jb-fbtn.err, .v2-prototype [data-fb].err .jb-fbtn {
    border-color: var(--red);
    box-shadow: 0 0 0 3px rgba(229, 72, 77, .1)
}

.v2-prototype .jb-radlist.err {
    outline: 2px solid rgba(229, 72, 77, .35);
    outline-offset: 6px;
    border-radius: 6px
}

.v2-prototype .jb-pct .inp.sm {
    height: 38px
}

.v2-prototype .fld > .seg, .v2-prototype [data-jbed] .seg {
    align-self: flex-start
}

.v2-prototype .btn.jb-fbtn:hover {
    border-color: var(--g);
    color: var(--g)
}

.v2-prototype .jb-hbtn {
    display: flex;
    gap: 16px;
    flex: none
}

.v2-prototype .jb-stcur {
    display: none
}





.v2-prototype .ap-mx {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 20px 22px 18px;
    box-shadow: var(--sh)
}

.v2-prototype .ap-mx-h {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px
}

.v2-prototype .ap-mx-h h3 {
    font-size: 17px;
    font-weight: 800
}

.v2-prototype .ap-mx-ic {
    width: 30px;
    height: 30px;
    border-radius: 9px;
    background: var(--g-l);
    color: var(--g);
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .ap-mx-ic .ic {
    width: 17px;
    height: 17px
}

.v2-prototype .ap-mxt {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
    font-size: 13px
}

.v2-prototype .ap-mxt thead th {
    background: var(--bg);
    color: var(--ink2);
    font-weight: 700;
    padding: 10px 4px;
    text-align: center;
    font-size: 14px;
    line-height: 1.3;
    border-bottom: 1px solid var(--line)
}

.v2-prototype .ap-mxt thead th:first-child {
    background: none;
    border-bottom: 0;
    width: 74px
}

.v2-prototype .ap-mxt thead th:nth-child(2) {
    border-radius: 10px 0 0 0
}

.v2-prototype .ap-mxt thead th:last-child {
    border-radius: 0 10px 0 0
}

.v2-prototype .ap-mxt thead th i {
    display: block;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    color: var(--g);
    font-style: normal;
    font-size: 14px;
    font-weight: 800;
    line-height: 18px;
    margin: 0 auto 4px;
    border: 1px solid var(--g-l)
}

.v2-prototype .ap-mxt tbody th {
    font-weight: 600;
    color: var(--sub);
    text-align: left;
    padding: 0 10px;
    font-size: 14px;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .ap-mxt tbody td {
    text-align: center;
    padding: 4px 2px;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .ap-mxt tbody tr:last-child th, .v2-prototype .ap-mxt tbody tr:last-child td {
    border-bottom: 0
}

.v2-prototype .ap-mxt tbody tr.r0 th {
    color: var(--ink);
    font-weight: 700
}

.v2-prototype .ap-n {
    min-width: 42px;
    height: 32px;
    padding: 0 8px;
    border-radius: 9px;
    border: 0;
    background: none;
    font-weight: 800;
    font-size: 15px;
    color: var(--ink);
    font-variant-numeric: tabular-nums;
    transition: background .15s, color .15s, box-shadow .15s
}

.v2-prototype .ap-n:hover {
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .ap-n.z {
    color: #C9CED5;
    font-weight: 600
}

.v2-prototype .r1 .ap-n:not(.z) {
    color: var(--g)
}

.v2-prototype .r2 .ap-n:not(.z) {
    color: var(--o2)
}

.v2-prototype .r3 .ap-n:not(.z) {
    color: var(--red)
}

.v2-prototype .ap-n.on {
    background: var(--ink);
    color: #fff !important;
    box-shadow: 0 4px 12px rgba(22, 25, 31, .22)
}

.v2-prototype .ap-tool {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 26px
}

.v2-prototype .ap-fchips {
    display: flex;
    gap: 6px
}

.v2-prototype .ap-fc {
    height: 34px;
    padding: 0 13px;
    border-radius: 9px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2);
    display: inline-flex;
    align-items: center;
    gap: 5px
}

.v2-prototype .ap-fc b {
    font-weight: 800
}

.v2-prototype .ap-fc:hover {
    border-color: #c9cfd6
}

.v2-prototype .ap-fc.on {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff
}

.v2-prototype .ap-fc.on b.r {
    color: #FF8A8D
}

.v2-prototype .ap-icbtn {
    width: 36px;
    height: 34px;
    border-radius: 9px;
    border: 1px solid var(--line);
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ink2)
}

.v2-prototype .ap-icbtn:hover {
    border-color: var(--g);
    color: var(--g)
}

.v2-prototype .ap-tool .ckb {
    margin-left: 6px
}

.v2-prototype .ap-tool2 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 12px 0 12px
}

.v2-prototype select.inp.ap-sort {
    width: auto;
    min-width: 150px;
    border-radius: 9px;
    font-weight: 600
}

.v2-prototype .ap-jl {
    border-top: 2px solid var(--ink)
}

.v2-prototype .ap-jl .hd, .v2-prototype .ap-jr {
    display: grid;
    grid-template-columns:64px minmax(0, 1fr) 110px 210px 84px;
    align-items: center;
    gap: 14px;
    padding: 0 8px
}

.v2-prototype .ap-jl .hd {
    height: 44px;
    font-size: 14px;
    color: var(--sub);
    font-weight: 600;
    border-bottom: 1px solid var(--line)
}

.v2-prototype .ap-jr {
    min-height: 84px;
    border-bottom: 1px solid var(--line2);
    cursor: pointer;
    transition: background .12s
}

.v2-prototype .ap-jr:hover {
    background: #FAFBFB
}

.v2-prototype .ap-jr .tt {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0
}

.v2-prototype .ap-jr .tt b {
    font-size: 15px
}

.v2-prototype .ap-jr .tt small {
    color: var(--mute);
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .ap-jr .tt small b {
    font-size: 14px
}

.v2-prototype .dotsep {
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #C9CED5;
    display: inline-block
}

.v2-prototype .ap-jr .area {
    color: #9A7B3E;
    font-size: 13px
}

.v2-prototype .ap-jr .act {
    display: flex;
    justify-content: center
}

.v2-prototype .ap-jr.pend {
    background: repeating-linear-gradient(135deg, #FFFCF6 0 12px, #fff 12px 24px)
}

.v2-prototype .ap-jr.closed .tt b {
    color: var(--sub)
}

.v2-prototype .ap-more {
    width: 48px;
    height: 34px;
    border-radius: 10px;
    border: 1px solid var(--line);
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
    transition: all .15s
}

.v2-prototype .ap-more .ic {
    width: 20px;
    height: 20px
}

.v2-prototype .ap-more:hover {
    border-color: var(--ink);
    background: var(--ink);
    color: #fff
}

.v2-prototype .ap-jsub {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 12px 16px 14px 86px;
    background: var(--g-ll);
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .ap-mini {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 999px;
    padding: 4px 12px 4px 4px;
    transition: border-color .15s
}

.v2-prototype .ap-mini:hover {
    border-color: var(--g)
}

.v2-prototype .ap-mini .av {
    width: 28px;
    height: 28px
}

.v2-prototype .ap-mini span {
    display: flex;
    flex-direction: column;
    line-height: 1.2
}

.v2-prototype .ap-mini b {
    font-size: 14px
}

.v2-prototype .ap-mini small {
    font-size: 14px;;
    color: var(--sub)
}

.v2-prototype .ok {
    color: var(--g) !important
}

.v2-prototype .warn {
    color: var(--o2) !important
}

.v2-prototype .bad {
    color: var(--red) !important
}

.v2-prototype .blue {
    color: var(--blue) !important
}

.v2-prototype .ap-lsj {
    display: flex;
    gap: 12px;
    align-items: center;
    padding: 14px;
    border-radius: 14px;
    background: var(--bg);
    margin-bottom: 6px
}

.v2-prototype .ap-lsj > div {
    display: flex;
    flex-direction: column;
    gap: 4px
}

.v2-prototype .ap-lsj b {
    font-size: 14.5px
}

.v2-prototype .ap-lsj small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ap-lsm a {
    justify-content: flex-start;
    gap: 12px
}

.v2-prototype .ap-lsm a span {
    flex: 1
}

.v2-prototype .ap-lsm a em {
    font-style: normal;
    font-size: 14px;
    margin-left: 4px
}

.v2-prototype .ap-lsm a .ic {
    color: var(--sub)
}

.v2-prototype .ap-lsm a.r .ic {
    color: var(--red)
}

.v2-prototype .ap-lsm a:last-child {
    border-bottom: 0
}

.v2-prototype .ap-mh {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px;
    border: 1px solid var(--line2);
    border-radius: 14px;
    margin-bottom: 14px
}

.v2-prototype .ap-mh .logo-ph {
    font-size: 16px;
    font-style: italic;
    letter-spacing: .02em
}

.v2-prototype .ap-mh p {
    font-size: 14px;
    line-height: 1.6;
    color: var(--ink2)
}

.v2-prototype .search.ap-ms {
    border-color: var(--ink);
    border-width: 1.5px
}

.v2-prototype .ap-ms .ic {
    color: var(--sub)
}

.v2-prototype .ap-mcnt {
    margin: 14px 0 8px
}

.v2-prototype .ap-mres {
    max-height: 300px;
    overflow: auto;
    border-radius: 14px;
    background: var(--bg);
    padding: 10px;
    display: flex;
    flex-direction: column;
    gap: 8px
}

.v2-prototype .ap-mempty {
    padding: 26px 10px;
    text-align: center;
    color: var(--sub);
    font-size: 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px
}

.v2-prototype .ap-mempty .ic {
    width: 26px;
    height: 26px;
    color: #C2C8D0
}

.v2-prototype .ap-mempty small {
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .ap-mc {
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer
}

.v2-prototype .ap-mc input {
    position: absolute;
    opacity: 0;
    pointer-events: none
}

.v2-prototype .ap-mck {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    border: 1.5px solid #C9CFD6;
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: transparent;
    flex: none;
    transition: all .15s
}

.v2-prototype .ap-mck .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .ap-mc input:checked + .ap-mck {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .ap-mcb {
    flex: 1;
    min-width: 0;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 11px 14px;
    display: flex;
    flex-direction: column;
    gap: 3px;
    transition: border-color .15s, box-shadow .15s
}

.v2-prototype .ap-mcb b {
    font-size: 14px
}

.v2-prototype .ap-mcb small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ap-mcb .row {
    gap: 6px
}

.v2-prototype .ap-mc:hover .ap-mcb {
    border-color: #c9cfd6
}

.v2-prototype .ap-mc input:checked ~ .ap-mcb {
    border-color: var(--g);
    box-shadow: 0 0 0 1px var(--g)
}

.v2-prototype .ap-mc.dis {
    opacity: .55;
    cursor: not-allowed
}

.v2-prototype .ap-agree {
    margin-top: 14px;
    font-size: 14px;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid transparent
}

.v2-prototype .ap-agree.err {
    border-color: var(--red);
    background: var(--red-l)
}

.v2-prototype .ap-cf {
    margin-top: 22px;
    background: var(--bg);
    border-radius: 16px;
    padding: 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 12px
}

.v2-prototype .ap-cf1 {
    gap: 10px
}

.v2-prototype .ap-ym {
    display: inline-flex;
    align-items: center;
    height: 36px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
    overflow: hidden
}

.v2-prototype .ap-ym button {
    width: 30px;
    height: 100%;
    border: 0;
    background: none;
    color: var(--sub);
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .ap-ym button:hover {
    background: var(--bg);
    color: var(--ink)
}

.v2-prototype .ap-ym button .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .ap-ym b {
    min-width: 62px;
    text-align: center;
    color: var(--blue);
    font-size: 14px
}

.v2-prototype [data-ymw].dim {
    opacity: .45
}

.v2-prototype .ap-red {
    color: var(--red);
    font-weight: 600
}

.v2-prototype .ap-stchips {
    gap: 6px
}

.v2-prototype .ap-stc {
    height: 32px;
    padding: 0 13px;
    border-radius: 8px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2)
}

.v2-prototype .ap-stc:hover {
    border-color: #c5ccd3
}

.v2-prototype .ap-stc.on {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .ap-cf3 {
    gap: 10px
}

.v2-prototype .ap-cf3 .seg {
    background: #fff;
    border: 1px solid var(--line)
}

.v2-prototype .ap-cf3 .seg > * {
    height: 28px;
    font-size: 14px;
    padding: 0 14px
}

.v2-prototype .ap-cf3 .seg > .on {
    background: var(--g)
}

.v2-prototype .ap-chd {
    margin: 20px 0 10px;
    gap: 12px;
    flex-wrap: wrap
}

.v2-prototype .ap-selall {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 0;
    background: none;
    font-weight: 700;
    font-size: 14.5px;
    color: #C2255C;
    padding: 0
}

.v2-prototype .ap-fl {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 28px;
    padding: 0 6px 0 10px;
    border-radius: 999px;
    background: var(--g-l);
    color: var(--g2);
    font-size: 14px;
    font-weight: 600;
    max-width: 300px
}

.v2-prototype .ap-fl .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .ap-fl b {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 14px;
    background: rgba(18, 122, 108, .12);
    flex: none
}

.v2-prototype .ap-fl b:hover {
    background: var(--g);
    color: #fff
}

.v2-prototype .ap-ck {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    border: 1.5px solid #C9CFD6;
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #D5DAE0;
    flex: none;
    transition: all .15s;
    padding: 0
}

.v2-prototype .ap-ck .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .ap-ck:hover {
    border-color: var(--ink);
    color: var(--ink)
}

.v2-prototype .ap-ck.on {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff
}

.v2-prototype .ap-ck.sm {
    width: 24px;
    height: 24px;
    border-radius: 7px
}

.v2-prototype .ap-ck.sm .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .ap-selall .ap-ck {
    pointer-events: none
}

.v2-prototype .ap-selall.on .ap-ck {
    background: #C2255C;
    border-color: #C2255C;
    color: #fff
}

.v2-prototype .ap-clist {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.v2-prototype .ap-cr {
    display: grid;
    grid-template-columns:48px minmax(0, 1fr) 220px 130px 34px;
    align-items: center;
    gap: 16px;
    padding: 14px 16px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #fff;
    cursor: pointer;
    transition: border-color .15s, box-shadow .15s, background .15s
}

.v2-prototype .ap-cr:hover {
    border-color: #c9d0d7;
    box-shadow: var(--sh)
}

.v2-prototype .ap-cr.sel {
    border-color: var(--ink);
    box-shadow: 0 0 0 1px var(--ink);
    background: #FCFCFD
}

.v2-prototype .ap-cr .av {
    width: 48px;
    height: 48px
}

.v2-prototype .ap-cr .m {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0
}

.v2-prototype .ap-cr .jn {
    font-size: 14px;
    color: var(--blue);
    font-weight: 600
}

.v2-prototype .ap-cr .jn span {
    font-weight: 500
}

.v2-prototype .ap-cr .m > b {
    font-size: 15.5px;
    display: flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .ap-cr .bi {
    font-weight: 500;
    color: var(--sub);
    font-size: 13.5px
}

.v2-prototype .ap-cr .s {
    display: flex;
    flex-direction: column;
    gap: 7px;
    font-size: 14px;
    color: var(--ink2)
}

.v2-prototype .ap-cr .s b {
    font-weight: 800;
    color: var(--ink)
}

.v2-prototype .ap-dots {
    display: flex;
    gap: 3px
}

.v2-prototype .ap-dots i {
    flex: 1;
    height: 5px;
    border-radius: 3px;
    background: #EEF0F3
}

.v2-prototype .ap-dots i.done {
    background: #9FD3C9
}

.v2-prototype .ap-dots i.cur {
    background: var(--ink)
}

.v2-prototype .ap-dots i.cur.ok {
    background: var(--g)
}

.v2-prototype .ap-dots i.cur.warn {
    background: var(--o)
}

.v2-prototype .ap-dots i.cur.bad {
    background: var(--red)
}

.v2-prototype .ap-dots i.cur.blue {
    background: var(--blue)
}

.v2-prototype .ap-cr .d {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 14px;
    color: var(--sub);
    align-items: flex-start
}

.v2-prototype .ap-rs {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2);
    padding: 3px 8px;
    border-radius: 6px;
    background: var(--bg)
}

.v2-prototype .ap-rs .ic {
    width: 13px;
    height: 13px
}

.v2-prototype .ap-rs:hover {
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .ap-load {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 18px;
    color: var(--sub);
    font-size: 13px
}

.v2-prototype .spin {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 2px solid var(--line);
    border-top-color: var(--g);
    animation: apspin .8s linear infinite;
    display: inline-block
}

@keyframes apspin {
    to {
        transform: rotate(360deg)
    }
}

.v2-prototype .ap-actbar {
    position: sticky;
    bottom: 14px;
    z-index: 20;
    margin-top: 22px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 12px 12px 20px;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(8px);
    border: 1px solid var(--line);
    border-radius: 18px;
    box-shadow: 0 -6px 28px rgba(16, 24, 40, .08)
}

.v2-prototype .ap-actbar > span {
    min-width: 96px
}

.v2-prototype .ap-actbar .btn.lg {
    flex: 1;
    height: 52px;
    font-size: 15.5px
}

.v2-prototype .ap-actbar .btn.f2 {
    flex: 2
}

.v2-prototype .ap-actbar .btn.dimmed {
    opacity: .55
}

.v2-prototype .ap-seg {
    display: flex;
    justify-content: center;
    margin-bottom: 24px
}

.v2-prototype .ap-seg .seg {
    background: #ECEEF1
}

.v2-prototype .ap-seg .seg > * {
    min-width: 140px;
    justify-content: center;
    gap: 6px
}

.v2-prototype .ap-seg .seg > * .ic {
    width: 16px;
    height: 16px
}

.v2-prototype .ap-cfch {
    margin-bottom: 6px
}

.v2-prototype .ap-cfch .chip b {
    font-weight: 800;
    margin-left: 2px
}

.v2-prototype .ap-gh {
    font-size: 15px;
    font-weight: 800;
    margin: 22px 0 10px;
    display: flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .ap-gh span {
    font-size: 14px;
    color: var(--g);
    background: var(--g-l);
    border-radius: 999px;
    padding: 1px 8px
}

.v2-prototype .ap-cgrid {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 12px
}

.v2-prototype .ap-cc {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 16px 18px;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
    transition: all .15s;
    box-shadow: var(--sh)
}

.v2-prototype .ap-cc:hover {
    border-color: var(--g);
    transform: translateY(-2px)
}

.v2-prototype .ap-cc > .row {
    gap: 6px
}

.v2-prototype .ap-cc > b {
    font-size: 16.5px;
    margin-top: 6px
}

.v2-prototype .ap-cc p {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ap-cc .cnt {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    color: var(--ink2);
    font-weight: 600
}

.v2-prototype .ap-cc .cnt .ic {
    width: 16px;
    height: 16px;
    color: var(--mute)
}

.v2-prototype .ap-cc.un {
    border-color: #F6C9CB;
    background: linear-gradient(180deg, #FFF8F8, #fff 60%)
}

.v2-prototype .ap-cc .badge-n {
    min-width: 22px;
    height: 22px;
    font-size: 14px
}

.v2-prototype .ap-sticky {
    position: sticky;
    bottom: 16px;
    z-index: 20;
    margin-top: 28px;
    padding: 0 40px
}

.v2-prototype .ap-sticky .btn.lg {
    box-shadow: 0 10px 28px rgba(18, 122, 108, .32);
    height: 54px;
    font-size: 16px;
    border-radius: 14px
}

.v2-prototype .ap-ih {
    margin-bottom: 14px
}

.v2-prototype .ap-igrid {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 14px
}

.v2-prototype .ap-ic {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 18px 20px 16px;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: all .15s;
    box-shadow: var(--sh)
}

.v2-prototype .ap-ic:hover {
    border-color: #bfc7cf;
    transform: translateY(-2px)
}

.v2-prototype .ap-ic.done {
    border-color: #9FD3C9
}

.v2-prototype .ap-ic > .row b {
    font-size: 16px
}

.v2-prototype .ap-ic p {
    font-size: 14px;
    color: var(--sub);
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 62px
}

.v2-prototype .ap-ic .st {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    font-weight: 700;
    color: var(--mute)
}

.v2-prototype .ap-ic .st .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .ap-ic.done .st {
    color: var(--g)
}

.v2-prototype .ap-itag {
    display: inline-flex;
    align-items: center;
    height: 26px;
    padding: 0 10px;
    border-radius: 7px;
    background: #6B7280;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    flex: none
}

.v2-prototype .ap-itag.sm {
    height: 22px;
    background: var(--bg);
    color: var(--sub);
    font-weight: 600
}

.v2-prototype .ap-form {
    max-width: 780px
}

.v2-prototype .ap-bh {
    display: grid;
    grid-template-columns:40px 1fr 40px;
    align-items: center;
    height: 56px;
    padding: 0 8px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 14px;
    box-shadow: var(--sh)
}

.v2-prototype .ap-bh b {
    text-align: center;
    font-size: 16px;
    font-weight: 800
}

.v2-prototype .ap-back {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    border: 0;
    background: none;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .ap-back:hover {
    background: var(--bg)
}

.v2-prototype .ap-back .ic {
    width: 20px;
    height: 20px
}

.v2-prototype .ap-tprev {
    margin-top: 10px;
    padding: 14px 18px;
    border-radius: 12px;
    background: var(--bg);
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .ap-tprev.on {
    color: var(--ink);
    font-weight: 700;
    background: #fff;
    border: 1px solid var(--line)
}

.v2-prototype .ap-fbody {
    margin-top: 10px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 22px 24px
}

.v2-prototype .ap-files {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 10px
}

.v2-prototype .ap-file {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff
}

.v2-prototype .ap-file .fi {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: var(--bg);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--sub);
    flex: none
}

.v2-prototype .ap-file b {
    display: block;
    font-size: 13.5px
}

.v2-prototype .ap-file small {
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .ed.err {
    border-color: var(--red) !important;
    box-shadow: 0 0 0 3px rgba(229, 72, 77, .1)
}

.v2-prototype .ap-edimg {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border-radius: 10px;
    background: var(--blue-l);
    color: var(--blue);
    font-size: 14px;
    font-weight: 600
}

.v2-prototype .ap-edimg .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .ap-fbtn {
    display: flex;
    gap: 10px;
    margin-top: 16px
}

.v2-prototype .ap-fbtn .btn.lg {
    flex: 1
}

.v2-prototype .ap-fbtn .btn.f2 {
    flex: 2
}

.v2-prototype .ap-lb {
    font-size: 14px;
    font-weight: 700;
    color: var(--ink2);
    margin: 20px 0 8px
}

.v2-prototype .ap-body {
    font-size: 14px;
    line-height: 1.75;
    color: var(--ink2);
    min-height: 60px
}

.v2-prototype .ap-ans {
    margin-top: 12px;
    border-radius: 16px;
    padding: 18px 22px;
    background: var(--g-ll);
    border: 1px solid #CFE6E1
}

.v2-prototype .ap-ans > .row {
    gap: 10px
}

.v2-prototype .ap-ans > .row b {
    font-size: 14.5px
}

.v2-prototype .ap-ans .ap-body {
    margin-top: 10px;
    min-height: 0
}

.v2-prototype .ap-ans.wait {
    background: #FAFAFB;
    border-color: var(--line);
    color: var(--ink2)
}

.v2-prototype .ap-ans.wait .row .ic {
    color: var(--o2)
}

.v2-prototype .av.sm {
    width: 30px;
    height: 30px
}

.v2-prototype .av.ap-gav {
    background: var(--g);
    color: #fff
}

.v2-prototype .ap-prep {
    border-radius: 22px;
    background: radial-gradient(120% 90% at 50% 0%, #F3F9F7 0%, #EAF2F8 70%, #E4EEF5 100%);
    padding: 46px 24px 54px;
    text-align: center;
    position: relative;
    overflow: hidden;
    min-height: 480px
}

.v2-prototype .ap-prep:before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(18, 122, 108, .10) 1px, transparent 1.2px);
    background-size: 22px 22px;
    mask-image: linear-gradient(180deg, #000, transparent 70%);
    -webkit-mask-image: linear-gradient(180deg, #000, transparent 70%)
}

.v2-prototype .ap-prep > * {
    position: relative
}

.v2-prototype .ap-prep-svg {
    width: 320px;
    height: 210px;
    display: block;
    margin: 0 auto 18px;
    animation: apfloat 4s ease-in-out infinite
}

@keyframes apfloat {
    50% {
        transform: translateY(-6px)
    }
}

.v2-prototype .ap-prep h2 {
    font-size: 34px;
    font-weight: 800;
    margin-top: 12px;
    letter-spacing: -.03em
}

.v2-prototype .ap-prep p {
    margin-top: 10px;
    color: var(--sub);
    font-size: 15px;
    line-height: 1.7
}

.v2-prototype .ap-bh.store {
    grid-template-columns:40px 1fr 40px;
    margin-bottom: 16px
}

.v2-prototype .ap-feat {
    border-radius: 24px;
    background: linear-gradient(120deg, #0F6B5E 0%, #1A8C7A 48%, #7FD1BE 100%);
    padding: 14px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 18px 40px rgba(15, 107, 94, .22)
}

.v2-prototype .ap-feat:before {
    content: "";
    position: absolute;
    right: -120px;
    top: -140px;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .28), rgba(255, 255, 255, 0) 65%)
}

.v2-prototype .ap-fin {
    position: relative;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 18px;
    padding: 22px;
    display: grid;
    grid-template-columns:300px minmax(0, 1fr) 196px;
    gap: 22px;
    align-items: center;
    min-height: 330px
}

.v2-prototype .ap-fl-l {
    position: relative;
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-bottom: 30px
}

.v2-prototype .ap-info {
    position: absolute;
    left: 4px;
    bottom: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(10, 30, 28, .55);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 999px;
    white-space: nowrap;
    backdrop-filter: blur(6px)
}

.v2-prototype .ap-info .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .ap-copy {
    color: #fff
}

.v2-prototype .ap-copy.in {
    animation: apin .35s ease
}

@keyframes apin {
    from {
        opacity: 0;
        transform: translateX(10px)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.v2-prototype .ap-cic {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: rgba(255, 255, 255, .18);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff
}

.v2-prototype .ap-cic .ic {
    width: 22px;
    height: 22px
}

.v2-prototype .ap-ctag {
    display: inline-flex;
    align-items: center;
    height: 28px;
    padding: 0 12px;
    border-radius: 8px;
    background: #fff;
    color: var(--g2);
    font-size: 14px;
    font-weight: 800
}

.v2-prototype .ap-copy h2 {
    font-size: 25px;
    line-height: 1.38;
    font-weight: 800;
    margin-top: 18px;
    letter-spacing: -.03em
}

.v2-prototype .ap-copy p {
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.65;
    opacity: .88
}

.v2-prototype .ap-tabs {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.v2-prototype .ap-tab {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, .28);
    background: rgba(255, 255, 255, .12);
    color: #fff;
    text-align: left;
    transition: all .15s
}

.v2-prototype .ap-tab:hover {
    background: rgba(255, 255, 255, .22)
}

.v2-prototype .ap-tab .ti {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    background: rgba(255, 255, 255, .18);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .ap-tab .ti .ic {
    width: 17px;
    height: 17px
}

.v2-prototype .ap-tab b {
    display: block;
    font-size: 14px;
    line-height: 1.3
}

.v2-prototype .ap-tab small {
    font-size: 14px;;
    opacity: .75
}

.v2-prototype .ap-tab.on {
    background: #fff;
    color: var(--ink);
    border-color: #fff;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .12)
}

.v2-prototype .ap-tab.on .ti {
    background: var(--g);
    color: #fff
}

.v2-prototype .ap-tab.on small {
    color: var(--sub);
    opacity: 1
}

.v2-prototype .ap-mock {
    position: relative;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 14px 34px rgba(0, 0, 0, .22);
    overflow: hidden;
    height: 250px
}

.v2-prototype .mk-bar {
    height: 20px;
    background: #F1F3F5;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0 8px
}

.v2-prototype .mk-bar i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #D5DAE0
}

.v2-prototype .mk-bar span {
    margin-left: 8px;
    height: 8px;
    flex: 1;
    border-radius: 4px;
    background: #fff
}

.v2-prototype .mk-body {
    padding: 8px 10px;
    display: flex;
    flex-direction: column;
    gap: 7px
}

.v2-prototype .mk-hero {
    height: 48px;
    border-radius: 7px;
    background: linear-gradient(120deg, #0F6B5E, #1A8C7A);
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 5px;
    padding: 7px;
    position: relative
}

.v2-prototype .mk-pc {
    background: rgba(255, 255, 255, .9);
    border-radius: 4px;
    padding: 5px;
    display: flex;
    flex-direction: column;
    gap: 4px
}

.v2-prototype .mk-pc i {
    height: 4px;
    border-radius: 2px;
    background: #C9DCD8
}

.v2-prototype .mk-pc i + i {
    width: 60%
}

.v2-prototype .mk-hero.hl {
    outline: 3px solid var(--o);
    outline-offset: 2px
}

.v2-prototype .mk-hero em, .v2-prototype .mk-ban em {
    position: absolute;
    right: -4px;
    top: -9px;
    font-style: normal;
    font-size: 9px;
    font-weight: 800;
    background: var(--o);
    color: #fff;
    padding: 2px 6px;
    border-radius: 5px
}

.v2-prototype .mk-s {
    height: 10px;
    border-radius: 5px;
    background: #F1F3F5;
    width: 70%;
    margin: 0 auto
}

.v2-prototype .mk-g {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 5px
}

.v2-prototype .mk-r {
    height: 30px;
    border: 1px solid #EEF0F3;
    border-radius: 5px;
    padding: 5px 6px;
    display: flex;
    flex-direction: column;
    gap: 3px;
    position: relative;
    background: #fff
}

.v2-prototype .mk-r i {
    height: 3px;
    border-radius: 2px;
    background: #E5E8EC;
    display: block
}

.v2-prototype .mk-r i.t {
    width: 40%;
    background: #BFE0D9
}

.v2-prototype .mk-r i.a {
    width: 85%
}

.v2-prototype .mk-r i.b {
    width: 55%
}

.v2-prototype .mk-r.hl {
    outline: 2.5px solid var(--o);
    outline-offset: 1px;
    background: #FFF7EC
}

.v2-prototype .mk-r.up {
    outline: 2px dashed var(--o);
    outline-offset: 1px
}

.v2-prototype .mk-ban {
    height: 30px;
    border-radius: 6px;
    background: linear-gradient(90deg, #16191F, #3A404B);
    color: #F2C14E;
    font-size: 14px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    letter-spacing: .04em;
    position: relative;
    font-style: italic
}

.v2-prototype .mk-ban b {
    color: #fff;
    font-style: normal
}

.v2-prototype .mk-ban.hl {
    outline: 3px solid var(--o);
    outline-offset: 2px;
    height: 46px;
    font-size: 13px
}

.v2-prototype .mk-arrow {
    position: absolute;
    left: -2px;
    top: 80px;
    width: 56px;
    height: 130px;
    pointer-events: none;
    filter: drop-shadow(0 2px 3px rgba(0, 0, 0, .15))
}

.v2-prototype [data-mode="bump"] .mk-g {
    padding-left: 22px
}

.v2-prototype .mk-tl {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 6px
}

.v2-prototype .mk-tc {
    border: 1px solid #EEF0F3;
    border-radius: 7px;
    padding: 8px;
    display: grid;
    grid-template-columns:22px 1fr;
    gap: 3px 6px;
    align-items: center;
    position: relative;
    height: 56px
}

.v2-prototype .mk-av {
    grid-row: 1/3;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #E9EDF1
}

.v2-prototype .mk-tc i {
    height: 4px;
    border-radius: 2px;
    background: #E5E8EC
}

.v2-prototype .mk-tc i.s {
    width: 60%;
    background: #BFE0D9
}

.v2-prototype .mk-tc.hl {
    outline: 2.5px solid var(--o);
    outline-offset: 1px
}

.v2-prototype .mk-tc em {
    position: absolute;
    right: 6px;
    bottom: 6px;
    font-style: normal;
    font-size: 9px;
    font-weight: 800;
    background: var(--g);
    color: #fff;
    padding: 2px 6px;
    border-radius: 5px
}

.v2-prototype .mk-doc {
    margin: 4px auto 0;
    width: 78%;
    border: 1px solid #E5E8EC;
    border-radius: 6px;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .06)
}

.v2-prototype .mk-doc b {
    font-size: 14px;;
    text-align: center;
    margin-bottom: 2px
}

.v2-prototype .mk-doc i {
    height: 4px;
    border-radius: 2px;
    background: #E5E8EC
}

.v2-prototype .mk-doc i.s {
    width: 65%
}

.v2-prototype .mk-sign {
    margin-top: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
    border-top: 1px dashed #E5E8EC;
    padding-top: 6px
}

.v2-prototype .mk-sign svg {
    width: 84px;
    height: 28px
}

.v2-prototype .mk-sign span {
    margin-left: auto;
    font-size: 9px;
    font-weight: 800;
    color: var(--red);
    border: 1.5px solid var(--red);
    border-radius: 5px;
    padding: 2px 5px;
    transform: rotate(-8deg)
}

.v2-prototype .mk-pdf {
    align-self: center;
    font-size: 14px;
    font-weight: 700;
    color: var(--g2);
    background: var(--g-l);
    padding: 3px 10px;
    border-radius: 999px
}

.v2-prototype .ap-pt {
    margin: 30px 0 12px;
    gap: 10px
}

.v2-prototype .ap-pt h3 {
    font-size: 19px;
    font-weight: 800
}

.v2-prototype .ap-mypt {
    font-size: 17px;
    font-weight: 800;
    color: var(--g2);
    margin-right: 4px
}

.v2-prototype .ap-plist {
    display: grid;
    grid-template-columns:repeat(2, 1fr);
    gap: 14px
}

.v2-prototype .ap-pc {
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 20px 22px;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 10px;
    box-shadow: var(--sh);
    transition: border-color .15s
}

.v2-prototype .ap-pc:hover {
    border-color: #9FD3C9
}

.v2-prototype .ap-pc > .row b {
    font-size: 17px;
    color: var(--g2);
    font-weight: 800
}

.v2-prototype .ap-pc p {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ap-price {
    font-size: 14px;
    color: var(--sub);
    display: flex;
    align-items: baseline;
    gap: 4px
}

.v2-prototype .ap-price s {
    color: var(--mute);
    margin-right: 4px
}

.v2-prototype .ap-price b {
    font-size: 24px;
    color: var(--ink);
    font-weight: 800;
    letter-spacing: -.02em
}

.v2-prototype .ap-pq {
    padding: 10px 0;
    border-top: 1px solid var(--line2);
    border-bottom: 1px solid var(--line2);
    gap: 8px
}

.v2-prototype .ap-step {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 10px;
    overflow: hidden;
    height: 36px
}

.v2-prototype .ap-step button {
    width: 34px;
    height: 100%;
    border: 0;
    background: var(--bg);
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .ap-step button:hover {
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .ap-step button .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .ap-step input {
    width: 44px;
    height: 100%;
    border: 0;
    text-align: center;
    font-weight: 700;
    outline: none
}

.v2-prototype .ap-tot {
    font-size: 16px;
    font-weight: 800
}

.v2-prototype .ap-jr .tt small > span {
    white-space: nowrap
}





.v2-prototype .ds-list .ds-tabs {
    gap: 0;
    align-items: center
}

.v2-prototype .ds-list .ds-tabs > a {
    padding: 12px 0
}

.v2-prototype .ds-tsep {
    width: 1px;
    height: 16px;
    background: var(--line);
    margin: 0 20px;
    display: inline-block
}

.v2-prototype .ds-filt {
    background: var(--bg);
    border-radius: 16px;
    padding: 8px 20px;
    margin: 18px 0 6px
}

.v2-prototype .ds-fr {
    display: grid;
    grid-template-columns:62px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 11px 0;
    border-bottom: 1px dashed #E1E5EA
}

.v2-prototype .ds-fr:last-child {
    border-bottom: 0
}

.v2-prototype .ds-fl {
    font-size: 14px;
    font-weight: 700;
    color: var(--ink2)
}

.v2-prototype .ds-fr .chips {
    gap: 6px
}

.v2-prototype .ds-fr .chip {
    height: 32px;
    font-size: 14px;
    background: #fff
}

.v2-prototype .ds-fr .chip.on {
    background: var(--ink);
    border-color: var(--ink);
    color: #fff
}

.v2-prototype .ds-fr .chip.ck.on {
    background: var(--g);
    border-color: var(--g)
}

.v2-prototype .ds-filt .search.ds-cs {
    height: 36px;
    width: 210px;
    border-radius: 999px;
    padding: 0 4px 0 12px;
    font-size: 14px;
    cursor: text
}

.v2-prototype .ds-cs .ic {
    width: 16px;
    height: 16px;
    color: var(--mute)
}

.v2-prototype .ds-more {
    height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px dashed #C5CCD4;
    background: transparent;
    font-size: 14px;
    color: var(--sub);
    font-weight: 600
}

.v2-prototype .ds-more:hover {
    border-color: var(--g);
    color: var(--g)
}

.v2-prototype .ds-sortrow {
    margin: 16px 0 14px
}

.v2-prototype .ds-sortrow .btn {
    margin-left: 8px
}

.v2-prototype .ds-grid .dbc-top {
    background: #fff;
    padding-top: 166px;
    min-height: 0
}

.v2-prototype .ds-grid .dbc-top .dbc-due {
    position: absolute;
    left: 12px;
    top: 12px;
    z-index: 3;
    box-shadow: 0 1px 3px rgba(16, 24, 40, .08)
}

.v2-prototype .ds-grid .dbc-top .bm {
    z-index: 3;
    box-shadow: 0 1px 3px rgba(16, 24, 40, .08)
}

.v2-prototype .ds-grid .dbc-top .dbc-co {
    margin-top: 0
}

.v2-prototype .ds-grid .dbc-bot {
    border-top: 1px solid var(--line2)
}

.v2-prototype .ds-grid .dbc-bot .tag {
    align-self: flex-start
}

.v2-prototype .ds-grid .dbc:hover .ds-box {
    transform: rotateY(-20deg) rotateX(4deg) translateY(-4px)
}

.v2-prototype .ds-art {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 152px;
    overflow: hidden;
    background: radial-gradient(120% 110% at 78% 0%, color-mix(in srgb, var(--c) 26%, #fff) 0%, color-mix(in srgb, var(--c) 8%, #F6F7FA) 55%, #F4F5F8 100%)
}

.v2-prototype .ds-art:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: var(--line2)
}

.v2-prototype .ds-boxw {
    position: absolute;
    right: 30px;
    top: 22px;
    width: 86px;
    height: 110px;
    perspective: 700px
}

.v2-prototype .ds-box {
    display: block;
    position: relative;
    width: 86px;
    height: 110px;
    transform-style: preserve-3d;
    transform: rotateY(-27deg) rotateX(4deg);
    transition: transform .35s ease
}

.v2-prototype .ds-box > i, .v2-prototype .ds-box > span {
    position: absolute;
    display: block;
    font-style: normal
}

.v2-prototype .ds-box .fr {
    inset: 0;
    transform: translateZ(12px);
    border-radius: 3px;
    padding: 9px 8px;
    color: #fff;
    display: flex;
    flex-direction: column;
    background: linear-gradient(160deg, color-mix(in srgb, var(--c) 85%, #fff) 0%, var(--c) 45%, color-mix(in srgb, var(--c) 60%, #000) 100%);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .18)
}

.v2-prototype .ds-box .fr small {
    font-size: 7.5px;
    letter-spacing: .08em;
    opacity: .8;
    font-weight: 700
}

.v2-prototype .ds-box .fr b {
    font-size: 15px;
    line-height: 1.12;
    margin-top: auto;
    font-weight: 900;
    letter-spacing: -.03em;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .18)
}

.v2-prototype .ds-box .fr em {
    font-style: normal;
    font-size: 8px;
    opacity: .85;
    margin-top: 5px;
    border-top: 1px solid rgba(255, 255, 255, .35);
    padding-top: 4px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.v2-prototype .ds-box .rt {
    width: 24px;
    height: 110px;
    left: 31px;
    transform: rotateY(90deg) translateZ(43px);
    background: color-mix(in srgb, var(--c) 55%, #000);
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .ds-box .rt span {
    writing-mode: vertical-rl;
    font-size: 7px;
    color: rgba(255, 255, 255, .75);
    letter-spacing: .1em;
    font-weight: 700
}

.v2-prototype .ds-box .lf {
    width: 24px;
    height: 110px;
    left: 31px;
    transform: rotateY(-90deg) translateZ(43px);
    background: color-mix(in srgb, var(--c) 70%, #000)
}

.v2-prototype .ds-box .tp {
    width: 86px;
    height: 24px;
    top: 43px;
    transform: rotateX(90deg) translateZ(55px);
    background: color-mix(in srgb, var(--c) 60%, #fff)
}

.v2-prototype .ds-boxw .sh {
    position: absolute;
    left: -6px;
    right: -14px;
    bottom: -12px;
    height: 14px;
    border-radius: 50%;
    background: radial-gradient(closest-side, rgba(16, 24, 40, .22), rgba(16, 24, 40, 0))
}

.v2-prototype .ds-flags {
    left: 12px;
    bottom: 12px;
    display: flex;
    gap: 4px
}

.v2-prototype .ds-flags span {
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .04em;
    padding: 2px 6px;
    border-radius: 4px;
    background: #16191F;
    color: #fff
}

.v2-prototype .ds-flags .s {
    background: #E5484D
}

.v2-prototype .ds-flags .n {
    background: #2F6FDB
}

.v2-prototype .ds-view {
    display: flex;
    flex-direction: column;
    gap: 16px
}

.v2-prototype .ds-head {
    display: flex;
    gap: 28px;
    align-items: center;
    padding: 26px 28px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: linear-gradient(120deg, #fff 55%, #F4F2FD 100%)
}

.v2-prototype .ds-head-l {
    flex: 1;
    min-width: 0
}

.v2-prototype .ds-co {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    font-weight: 800;
    color: var(--g);
    font-size: 14.5px
}

.v2-prototype .ds-co .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .ds-co:hover {
    text-decoration: underline
}

.v2-prototype .ds-title {
    font-size: 25px;
    line-height: 1.42;
    font-weight: 800;
    margin: 10px 0 12px;
    white-space: normal;
    word-break: keep-all
}

.v2-prototype .ds-meta {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 14px;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px
}

.v2-prototype .ds-meta .ic {
    width: 15px;
    height: 15px;
    color: var(--mute)
}

.v2-prototype .ds-meta em {
    font-style: normal;
    color: #D9480F;
    font-weight: 700
}

.v2-prototype .ds-meta .bm {
    margin-left: auto;
    background: #fff;
    border: 1px solid var(--line)
}

.v2-prototype .ds-logo {
    flex: none
}

.v2-prototype .ds-logo .logo-ph {
    font-size: 16px;
    border-radius: 14px
}

.v2-prototype .ds-logo-def {
    width: 150px;
    height: 96px;
    border-radius: 14px;
    border: 1px dashed #C9CFD8;
    background: var(--bg);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--mute)
}

.v2-prototype .ds-logo-def .ic {
    width: 28px;
    height: 28px
}

.v2-prototype .ds-logo-def small {
    font-size: 14px;
}

.v2-prototype .ds-rate {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px
}

.v2-prototype .ds-st {
    position: relative;
    display: inline-block;
    font-size: 21px;
    line-height: 1;
    letter-spacing: 1px;
    color: #DDE1E7;
    cursor: pointer;
    user-select: none;
    touch-action: none
}

.v2-prototype .ds-st:before {
    content: "★★★★★"
}

.v2-prototype .ds-st i {
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
    white-space: nowrap;
    color: #F5A524;
    pointer-events: none
}

.v2-prototype .ds-st i:before {
    content: "★★★★★"
}

.v2-prototype .ds-rate.done .ds-st {
    cursor: default
}

.v2-prototype .ds-rate b {
    font-size: 14px
}

.v2-prototype .ds-rc {
    color: var(--blue);
    font-weight: 600
}

.v2-prototype .ds-cert {
    border-radius: 18px;
    padding: 24px 28px 24px;
    color: #fff;
    background: linear-gradient(135deg, #4A7CC4 0%, #3462A8 60%, #28508F 100%);
    position: relative;
    overflow: hidden
}

.v2-prototype .ds-cert:after {
    content: "";
    position: absolute;
    right: -70px;
    top: -90px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .14), rgba(255, 255, 255, 0) 70%)
}

.v2-prototype .ds-cert-h {
    display: flex;
    align-items: center;
    gap: 16px;
    position: relative;
    z-index: 1
}

.v2-prototype .ds-cert-h small {
    font-size: 14px;;
    letter-spacing: .14em;
    opacity: .7;
    font-weight: 700
}

.v2-prototype .ds-cert-h h3 {
    font-size: 24px;
    font-weight: 800;
    margin-top: 2px
}

.v2-prototype .ds-ribbon {
    position: relative;
    width: 62px;
    height: 62px;
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #FFE14A;
    color: #1b1b1b;
    border: 2px solid #1b1b1b;
    border-radius: 10px;
    transform: rotate(-4deg);
    box-shadow: 3px 3px 0 rgba(0, 0, 0, .25)
}

.v2-prototype .ds-ribbon b {
    font-size: 14px;
    line-height: 1.15;
    text-align: center;
    font-weight: 900
}

.v2-prototype .ds-cert-ic {
    width: 54px !important;
    height: 54px !important;
    margin-left: auto;
    opacity: .35
}

.v2-prototype .ds-cert ul {
    list-style: none;
    margin: 18px 0 0;
    padding: 0;
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 10px 22px;
    position: relative;
    z-index: 1
}

.v2-prototype .ds-cert li {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.45
}

.v2-prototype .ds-cert li i {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #3DBE6C;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, .85)
}

.v2-prototype .ds-cert li i .ic {
    width: 15px;
    height: 15px;
    stroke-width: 3
}

.v2-prototype .ds-cert-n {
    margin-top: 18px;
    border: 1.5px solid rgba(255, 255, 255, .85);
    border-radius: 10px;
    padding: 14px 18px;
    font-size: 14px;
    line-height: 1.7;
    position: relative;
    z-index: 1;
    background: rgba(255, 255, 255, .04)
}

.v2-prototype .ds-cert-n p + p {
    margin-top: 6px
}

.v2-prototype .ds-sec {
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 24px 26px;
    background: #fff;
    min-width: 0
}

.v2-prototype .ds-sec > h3 {
    font-size: 17px;
    font-weight: 800;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .ds-h4 {
    font-size: 15px;
    font-weight: 800;
    margin: 22px 0 10px;
    display: flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .ds-kv {
    display: flex;
    flex-direction: column
}

.v2-prototype .ds-kr {
    display: grid;
    grid-template-columns:128px 1fr;
    gap: 16px;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .ds-kr:last-child {
    border-bottom: 0
}

.v2-prototype .ds-kl {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 28px;
    padding: 0 10px;
    border-radius: 7px;
    background: var(--bg);
    font-size: 14px;
    color: var(--sub);
    font-weight: 600;
    white-space: nowrap
}

.v2-prototype .ds-kd {
    font-size: 14px;
    min-width: 0
}

.v2-prototype .ds-price {
    font-size: 21px;
    font-weight: 800;
    color: var(--g)
}

.v2-prototype .ds-ar.tag {
    height: 24px;
    font-size: 14px
}

.v2-prototype .ds-ar.g {
    background: #7CC46A;
    color: #fff
}

.v2-prototype .ds-ar.r {
    background: #F28B8B;
    color: #fff
}

.v2-prototype .ds-ar.b {
    background: #1FA2E0;
    color: #fff
}

.v2-prototype .ds-ar.o {
    background: #F29B21;
    color: #fff
}

.v2-prototype .ds-ar.p {
    background: #8C7BE0;
    color: #fff
}

.v2-prototype .ds-plus {
    width: 24px;
    height: 24px;
    border-radius: 6px;
    border: 0;
    background: var(--ink);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .ds-plus .ic {
    width: 14px;
    height: 14px;
    stroke-width: 2.6
}

.v2-prototype .ds-file {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--blue);
    font-weight: 600;
    font-size: 13.5px
}

.v2-prototype .ds-file .ic {
    width: 15px;
    height: 15px;
    color: var(--sub)
}

.v2-prototype .ds-file:hover u {
    color: #1e4fae
}

.v2-prototype .ds-land {
    position: relative;
    border: 1px solid var(--line);
    border-radius: 16px;
    overflow: hidden;
    background: #fff
}

.v2-prototype .ds-land-in {
    max-height: 470px;
    overflow: hidden;
    transition: max-height .4s ease
}

.v2-prototype .ds-land.open .ds-land-in {
    max-height: 3000px
}

.v2-prototype .ds-land-fade {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 220px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .88) 60%, #fff 100%);
    pointer-events: none;
    transition: opacity .25s
}

.v2-prototype .ds-land.open .ds-land-fade {
    opacity: 0;
    height: 0
}

.v2-prototype .ds-land-btn {
    position: absolute;
    left: 50%;
    bottom: 26px;
    transform: translateX(-50%);
    height: 44px;
    padding: 0 26px;
    border-radius: 999px;
    border: 1px solid #CBD2DA;
    background: rgba(255, 255, 255, .92);
    font-weight: 700;
    font-size: 14px;
    box-shadow: 0 6px 20px rgba(16, 24, 40, .12);
    backdrop-filter: blur(4px)
}

.v2-prototype .ds-land-btn:hover {
    border-color: var(--g);
    color: var(--g)
}

.v2-prototype .ds-land.open .ds-land-btn {
    position: static;
    transform: none;
    display: block;
    margin: 16px auto 20px
}

.v2-prototype .lp-hero {
    padding: 46px 52px 40px;
    background: linear-gradient(180deg, #E4EEFF 0%, #F3F7FF 100%);
    position: relative
}

.v2-prototype .lp-hero:before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(47, 111, 219, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(47, 111, 219, .06) 1px, transparent 1px);
    background-size: 28px 28px;
    pointer-events: none
}

.v2-prototype .lp-hero > * {
    position: relative
}

.v2-prototype .lp-k {
    display: inline-block;
    font-size: 14px;
    font-weight: 800;
    color: #2459B5;
    background: #fff;
    border-radius: 999px;
    padding: 4px 12px;
    margin-bottom: 14px
}

.v2-prototype .lp-hero h2 {
    font-size: 46px;
    line-height: 1.18;
    font-weight: 900;
    color: #1A2233;
    letter-spacing: -.04em
}

.v2-prototype .lp-hero h2 s {
    color: #8B95A7;
    text-decoration-color: #E5484D;
    text-decoration-thickness: 3px
}

.v2-prototype .lp-hero h2 em {
    font-style: normal;
    color: #2563EB
}

.v2-prototype .lp-hero p {
    font-size: 15.5px;
    line-height: 1.7;
    color: #4B5563;
    margin: 16px 0 26px;
    max-width: 600px
}

.v2-prototype .lp-hero p b {
    color: #1A2233
}

.v2-prototype .lp-stats {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 14px;
    max-width: 640px
}

.v2-prototype .lp-stats div {
    background: #fff;
    border-radius: 14px;
    padding: 18px 10px;
    text-align: center;
    box-shadow: 0 4px 16px rgba(37, 99, 235, .08)
}

.v2-prototype .lp-stats b {
    display: block;
    font-size: 24px;
    font-weight: 900;
    color: #A8742B
}

.v2-prototype .lp-stats small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .lp-form {
    padding: 38px 52px;
    background: #fff
}

.v2-prototype .lp-form h4 {
    font-size: 22px;
    font-weight: 800
}

.v2-prototype .lp-form p {
    color: var(--sub);
    font-size: 14px;
    margin: 6px 0 16px
}

.v2-prototype .lp-in {
    height: 50px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #F8FAFC;
    color: var(--mute);
    display: flex;
    align-items: center;
    padding: 0 16px;
    margin-top: 10px;
    max-width: 520px
}

.v2-prototype .lp-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 520px;
    height: 54px;
    border-radius: 12px;
    background: #1D4ED8;
    color: #fff;
    font-weight: 800;
    margin-top: 14px
}

.v2-prototype .lp-msg {
    padding: 44px 52px;
    background: linear-gradient(180deg, #F1F5FB, #E9EFF8);
    text-align: center
}

.v2-prototype .lp-msg small {
    font-size: 14px;
    letter-spacing: .2em;
    color: #2F6FDB;
    font-weight: 800
}

.v2-prototype .lp-msg h4 {
    font-size: 24px;
    font-weight: 800;
    margin-top: 4px
}

.v2-prototype .lp-msg blockquote {
    margin: 20px auto 0;
    max-width: 660px;
    background: #fff;
    border-radius: 18px;
    padding: 28px 30px;
    text-align: left;
    font-size: 15.5px;
    line-height: 1.85;
    color: #2A3242;
    box-shadow: 0 8px 24px rgba(16, 24, 40, .06)
}

.v2-prototype .lp-msg blockquote b {
    color: #1E3A8A
}

.v2-prototype .lp-msg cite {
    display: block;
    font-style: normal;
    font-weight: 800;
    font-size: 14px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid var(--line)
}

.v2-prototype .lp-fine {
    padding: 22px 52px 30px;
    font-size: 14px;
    line-height: 1.75;
    color: #8A94A6;
    background: #E6ECF4
}

.v2-prototype .ds-two {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 16px
}

.v2-prototype .ds-ct {
    background: #F2F8F1;
    border: 1px solid #E0EDDD;
    border-radius: 14px;
    padding: 14px 16px;
    margin-bottom: 10px
}

.v2-prototype .ds-ct .row b {
    font-size: 15px
}

.v2-prototype .ds-ct-l {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
    font-size: 14px;
    color: var(--ink2)
}

.v2-prototype .ds-ct-l .ic {
    width: 14px;
    height: 14px;
    color: var(--sub)
}

.v2-prototype .ds-kk {
    font-size: 14px;
    font-weight: 700;
    background: #FEE500;
    color: #3C1E1E;
    border-radius: 5px;
    padding: 1px 6px
}

.v2-prototype .ds-kk.tg {
    background: #2AABEE;
    color: #fff
}

.v2-prototype .ds-sch {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 12px
}

.v2-prototype .ds-sch > div {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    border-radius: 12px;
    background: var(--bg);
    font-size: 15px
}

.v2-prototype .ds-sch .ic {
    color: var(--g)
}

.v2-prototype .ds-sch .xs {
    margin-left: auto
}

.v2-prototype .ds-ul {
    margin: 12px 0 0;
    padding-left: 18px;
    line-height: 1.95;
    font-size: 14px;
    color: var(--ink2)
}

.v2-prototype .ds-sec .seg sup {
    font-size: 14px;;
    margin-left: 3px
}

.v2-prototype .ds-nt {
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .ds-nt-h {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 4px
}

.v2-prototype .ds-nt-h b {
    flex: 1;
    font-size: 14.5px;
    min-width: 0
}

.v2-prototype .ds-nt-h small {
    color: var(--mute);
    font-size: 14px
}

.v2-prototype .ds-nt-h .ic {
    color: var(--mute);
    transition: transform .2s
}

.v2-prototype .ds-nt-h.open .ic {
    transform: rotate(90deg);
    color: var(--g)
}

.v2-prototype .ds-nt-h:hover b {
    color: var(--g)
}

.v2-prototype .ds-nt-b {
    margin: 0 4px 14px;
    padding: 14px 16px;
    border-radius: 12px;
    background: var(--bg);
    font-size: 14px;
    line-height: 1.7;
    color: var(--ink2)
}

.v2-prototype .ds-qa {
    display: grid;
    grid-template-columns:1fr auto;
    align-items: center;
    gap: 4px 14px;
    padding: 14px 6px;
    border-bottom: 1px solid var(--line2);
    cursor: pointer
}

.v2-prototype .ds-qa:hover .ds-qa-t {
    color: var(--g)
}

.v2-prototype .ds-qa > .ic, .v2-prototype .ds-qa > span {
    grid-column: 2;
    grid-row: 1/3;
    color: var(--mute)
}

.v2-prototype .ds-qa-t {
    font-size: 14.5px;
    font-weight: 600;
    color: #1E6B60;
    min-width: 0
}

.v2-prototype .ds-qa-m {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-qa-m .tag {
    height: 20px;
    font-size: 14px;
}

.v2-prototype .ds-qa.lock {
    cursor: not-allowed
}

.v2-prototype .ds-qa.lock .ds-qa-t {
    color: var(--mute);
    letter-spacing: 2px
}

.v2-prototype .ds-pg {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 14px;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-pg b {
    color: var(--blue)
}

.v2-prototype .ds-pg button {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid var(--line);
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .ds-pg button .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .ds-pg button[disabled] {
    opacity: .35;
    cursor: default
}

.v2-prototype .ds-docs {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 14px
}

.v2-prototype .ds-doc {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 16px;
    display: flex;
    flex-direction: column
}

.v2-prototype .ds-doc > b {
    color: #2F6FDB;
    font-size: 14px;
    line-height: 1.45;
    min-height: 40px
}

.v2-prototype .ds-doc-b {
    display: flex;
    gap: 14px;
    margin-top: 12px;
    align-items: flex-start
}

.v2-prototype .ds-thumb {
    width: 78px;
    height: 104px;
    flex: none;
    border: 1px solid #D7DCE3;
    border-radius: 4px;
    background: #fff;
    padding: 10px 9px;
    position: relative;
    box-shadow: 2px 2px 0 #EEF0F3
}

.v2-prototype .ds-thumb i {
    display: block;
    height: 3px;
    border-radius: 2px;
    background: #DFE4EA;
    margin-bottom: 6px
}

.v2-prototype .ds-thumb i:first-child {
    width: 60%;
    margin: 0 auto 9px;
    background: #B9C2CE
}

.v2-prototype .ds-thumb i:nth-child(3n) {
    width: 70%
}

.v2-prototype .ds-thumb span {
    position: absolute;
    right: 8px;
    bottom: 8px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid #E5484D;
    opacity: .75
}

.v2-prototype .ds-doc-r {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0
}

.v2-prototype .ds-doc-r .btn {
    align-self: flex-start;
    margin-bottom: 8px
}

.v2-prototype .ds-doc-r p {
    font-size: 14px;
    color: var(--g);
    font-weight: 600;
    line-height: 1.5
}

.v2-prototype .ds-share {
    display: flex;
    align-items: center;
    gap: 28px
}

.v2-prototype .ds-sns {
    display: flex;
    gap: 18px
}

.v2-prototype .ds-sns a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    color: var(--sub);
    font-weight: 600
}

.v2-prototype .ds-sns i {
    width: 52px;
    height: 52px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-style: normal;
    font-weight: 900;
    transition: transform .15s
}

.v2-prototype .ds-sns a:hover i {
    transform: translateY(-2px)
}

.v2-prototype .ds-sns .bl {
    background: #fff;
    border: 1px solid var(--line);
    color: #03C75A;
    font-size: 18px
}

.v2-prototype .ds-sns .kk {
    background: #FEE500;
    color: #3C1E1E;
    font-size: 14px;
}

.v2-prototype .ds-sns .fb {
    background: #1877F2;
    color: #fff;
    font-size: 26px;
    font-family: Arial, sans-serif
}

.v2-prototype .ds-url {
    flex: 1;
    display: flex;
    gap: 8px;
    min-width: 0
}

.v2-prototype .ds-url .inp {
    color: var(--blue);
    background: #fff
}

.v2-prototype .ds-bar {
    position: sticky;
    bottom: 14px;
    z-index: 30;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px 12px 22px;
    margin-top: 6px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: rgba(255, 255, 255, .95);
    backdrop-filter: blur(10px);
    box-shadow: 0 10px 30px rgba(16, 24, 40, .12)
}

.v2-prototype .ds-bar-l {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 1px
}

.v2-prototype .ds-bar-l small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-bar-l b {
    font-size: 20px;
    font-weight: 800
}

.v2-prototype .ds-bar-l s {
    color: var(--mute);
    margin-left: 8px;
    font-size: 13px
}

.v2-prototype .ds-bar-l .row {
    gap: 8px
}

.v2-prototype .ds-bar-l > .tag {
    align-self: flex-start
}

.v2-prototype .ds-bar .btn.ds-cta {
    min-width: 200px
}

.v2-prototype .ds-nn {
    color: #E0287D;
    margin: 0 1px
}

.v2-prototype .ds-adline {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 18px;
    border-radius: 14px;
    background: var(--bg);
    margin-bottom: 16px;
    transition: background .15s
}

.v2-prototype .ds-adline:hover {
    background: var(--g-l)
}

.v2-prototype .ds-adline > div {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px
}

.v2-prototype .ds-adline small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-adline b {
    font-size: 15px
}

.v2-prototype .ds-adline > .ic {
    color: var(--mute)
}

.v2-prototype .ds-buyers .tabs a.ds-dis {
    color: #C2C8D0;
    display: inline-flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .ds-blist {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 12px
}

.v2-prototype .ds-bc {
    position: relative;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 16px 18px 24px;
    background: #fff;
    cursor: pointer;
    transition: all .15s
}

.v2-prototype .ds-bc:hover {
    border-color: var(--g);
    box-shadow: var(--sh);
    transform: translateY(-2px)
}

.v2-prototype .ds-bc-more {
    position: absolute;
    right: 16px;
    bottom: 6px;
    color: var(--mute)
}

.v2-prototype .ds-bc-s {
    position: absolute;
    left: 18px;
    bottom: -1px;
    font-size: 14px;
    font-weight: 800;
    padding: 2px 8px;
    border-radius: 7px 7px 0 0
}

.v2-prototype .ds-bc-s.ing {
    background: var(--o-l);
    color: #B25F00
}

.v2-prototype .ds-bc-s.end {
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .ds-bh {
    display: grid;
    grid-template-columns:auto 1fr auto;
    gap: 14px;
    align-items: center
}

.v2-prototype .ds-bh-m {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px
}

.v2-prototype .ds-bh-n {
    font-size: 14px;
    color: var(--blue);
    font-weight: 600;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px
}

.v2-prototype .ds-gift {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 14px;
    font-weight: 700;
    color: #5340B3;
    background: var(--pur-l);
    border-radius: 999px;
    padding: 1px 8px
}

.v2-prototype .ds-gift .ic {
    width: 12px;
    height: 12px
}

.v2-prototype .ds-bh-q {
    font-size: 18px;
    font-weight: 800
}

.v2-prototype .ds-bh-q span {
    font-size: 14px;
    color: var(--ink2);
    font-weight: 700
}

.v2-prototype .ds-bh-m small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-bh-r {
    text-align: right;
    font-size: 14px;
    color: var(--ink2);
    line-height: 1.7
}

.v2-prototype .ds-bh-r b {
    font-size: 16px;
    margin-left: 4px;
    display: inline-block;
    min-width: 22px
}

.v2-prototype .ds-tbar {
    position: sticky;
    bottom: 14px;
    z-index: 30;
    display: flex;
    align-items: center;
    gap: 22px;
    margin-top: 18px;
    padding: 14px 26px;
    border-radius: 16px;
    background: #16191F;
    color: #fff;
    box-shadow: 0 10px 30px rgba(16, 24, 40, .25)
}

.v2-prototype .ds-tbar small {
    display: block;
    font-size: 14px;
    color: #AEB4BE
}

.v2-prototype .ds-tbar b {
    font-size: 20px;
    font-weight: 800
}

.v2-prototype .ds-tbar b.g {
    color: #5FD3B8
}

.v2-prototype .ds-tbar b.r {
    color: #FF7B7B
}

.v2-prototype .ds-tbar > i {
    width: 1px;
    height: 30px;
    background: rgba(255, 255, 255, .18)
}

.v2-prototype .ds-tbar-p {
    text-align: right
}

.v2-prototype .ds-tbar-p b {
    font-size: 26px;
    color: #FF7B7B
}

.v2-prototype .ds-tbar-p b span {
    font-size: 16px;
    color: #fff;
    margin-left: 2px
}

.v2-prototype .ds-bhcard {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 16px 18px;
    background: linear-gradient(120deg, #fff 60%, var(--g-ll));
    margin-bottom: 6px
}

.v2-prototype .ds-bhcard.big {
    padding: 22px 24px
}

.v2-prototype .ds-bhcard.big .ds-bh-q {
    font-size: 22px
}

.v2-prototype .ds-pblk {
    padding: 16px 4px 14px;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .ds-pn {
    font-size: 15px;
    font-weight: 700
}

.v2-prototype .ds-pp {
    font-size: 21px;
    font-weight: 800;
    color: var(--g)
}

.v2-prototype .ds-pp span {
    color: var(--ink);
    font-size: 15px;
    margin-left: 1px
}

.v2-prototype .ds-pblk s {
    margin-left: 8px;
    font-size: 13px
}

.v2-prototype .ds-stats {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
    margin-top: 12px;
    text-align: center
}

.v2-prototype .ds-stats > div {
    border-left: 1px solid var(--line2);
    padding: 4px 0
}

.v2-prototype .ds-stats > div:first-child {
    border-left: 0
}

.v2-prototype .ds-stats small {
    display: block;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-stats b {
    font-size: 20px;
    font-weight: 800
}

.v2-prototype .ds-stats em {
    display: block;
    font-style: normal;
    font-size: 14px;;
    color: var(--blue);
    font-weight: 600
}

.v2-prototype .ds-stats.sum {
    background: var(--bg);
    border-radius: 14px;
    padding: 12px 0;
    margin-top: 14px
}

.v2-prototype .ds-stats.sum > div {
    border-left-color: #E3E7EC
}

.v2-prototype .ds-pcbox {
    display: flex;
    gap: 14px;
    margin: 16px 0 4px;
    padding: 16px 18px;
    border-radius: 14px;
    background: #EEF6F4;
    border: 1px solid #CFE6E1
}

.v2-prototype .ds-pcbox > .ic {
    width: 30px;
    height: 30px;
    color: var(--g)
}

.v2-prototype .ds-pcbox b {
    font-size: 15.5px;
    color: var(--g2)
}

.v2-prototype .ds-pcbox p {
    font-size: 14px;
    color: var(--sub);
    margin-top: 4px;
    line-height: 1.6
}

.v2-prototype .ds-tl {
    margin: 4px 0 0 6px;
    padding-left: 20px;
    border-left: 2px dashed var(--line);
    display: flex;
    flex-direction: column
}

.v2-prototype .ds-tl-i {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0 12px
}

.v2-prototype .ds-tl-i:before {
    content: "";
    position: absolute;
    left: -27px;
    top: 15px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #9AA1AC;
    box-shadow: 0 0 0 3px #fff
}

.v2-prototype .ds-tl-i.ok:before {
    background: var(--g)
}

.v2-prototype .ds-tl-i > div {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 1px
}

.v2-prototype .ds-tl-i small {
    font-size: 14px;
    color: var(--sub);
    font-weight: 600
}

.v2-prototype .ds-tl-i b {
    font-size: 14.5px
}

.v2-prototype .ds-tl-i.ok b {
    color: var(--g2)
}

.v2-prototype .ds-tl-i span {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-tl-i em {
    font-style: normal;
    font-weight: 700
}

.v2-prototype .ds-tl.empty {
    min-height: 64px;
    justify-content: center
}

.v2-prototype .ds-dsum {
    display: flex;
    flex-direction: column;
    gap: 2px;
    background: var(--bg);
    border-radius: 12px;
    padding: 14px 16px;
    margin-bottom: 14px
}

.v2-prototype .ds-dsum b {
    font-size: 16px
}

.v2-prototype .ds-dsum span {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-dsum em {
    font-style: normal;
    font-weight: 700
}

.v2-prototype .ds-dsum small {
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .ds-purchase .ds-pgrid {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 14px;
    margin-top: 14px
}

.v2-prototype .ds-purchase .ds-pblk {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 18px 20px
}

.v2-prototype .pbox.ds-pop .pf {
    flex-wrap: wrap
}

.v2-prototype .pbox.ds-pop .ph h3 {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-direction: row;
    flex-wrap: wrap;
    line-height: 1.4
}

.v2-prototype .pbox.ds-pop .ph h3 small {
    flex-basis: 100%
}

.v2-prototype .ds-back {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 0;
    background: var(--bg);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .ds-back .ic {
    width: 17px;
    height: 17px
}

.v2-prototype .ds-ways {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-top: 4px
}

.v2-prototype .ds-way {
    display: grid;
    grid-template-columns:1fr auto;
    align-items: center;
    text-align: left;
    padding: 15px 18px;
    border-radius: 14px;
    border: 1px solid transparent;
    color: #fff;
    gap: 0 12px;
    transition: transform .15s, filter .15s
}

.v2-prototype .ds-way:hover {
    transform: translateY(-1px);
    filter: brightness(1.06)
}

.v2-prototype .ds-way b {
    font-size: 16px
}

.v2-prototype .ds-way span {
    font-size: 14px;
    opacity: .82;
    grid-column: 1
}

.v2-prototype .ds-way .ic {
    grid-column: 2;
    grid-row: 1/3;
    width: 20px;
    height: 20px
}

.v2-prototype .ds-way.dark {
    background: var(--ink)
}

.v2-prototype .ds-way.blue {
    background: #2F6FDB
}

.v2-prototype .ds-way.teal {
    background: var(--g)
}

.v2-prototype .ds-way.line {
    display: flex;
    justify-content: center;
    background: #fff;
    border-color: var(--line);
    color: var(--ink2);
    font-weight: 700;
    height: 50px;
    padding: 0
}

.v2-prototype .ds-prods {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .ds-prod {
    display: grid;
    grid-template-columns:auto 1fr auto;
    gap: 14px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 14px 16px;
    transition: opacity .15s, border-color .15s
}

.v2-prototype .ds-prod:hover {
    border-color: #CDD4DC
}

.v2-prototype .ds-prod.off {
    opacity: .5
}

.v2-prototype .ds-pck {
    cursor: pointer;
    display: inline-flex
}

.v2-prototype .ds-pck input {
    display: none
}

.v2-prototype .ds-pck i {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid #CED4DB;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: transparent;
    transition: all .15s
}

.v2-prototype .ds-pck i .ic {
    width: 14px;
    height: 14px;
    stroke-width: 3
}

.v2-prototype .ds-pck input:checked + i {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .ds-prod-l b {
    font-size: 15px;
    display: block;
    margin-bottom: 2px
}

.v2-prototype .ds-prod-l s {
    color: var(--mute);
    font-size: 14px;
    margin-left: 6px
}

.v2-prototype .ds-prod-r {
    text-align: right;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px
}

.v2-prototype .ds-prod-r small {
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .ds-step {
    display: inline-flex;
    align-items: center;
    background: var(--bg);
    border-radius: 10px;
    padding: 2px
}

.v2-prototype .ds-step button {
    width: 34px;
    height: 34px;
    border: 0;
    background: none;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ink2)
}

.v2-prototype .ds-step button:hover {
    background: #fff
}

.v2-prototype .ds-step button .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .ds-step input {
    width: 56px;
    height: 34px;
    border: 0;
    background: transparent;
    text-align: center;
    font-size: 16px;
    font-weight: 800;
    color: #5B4BD6;
    outline: none
}

.v2-prototype .ds-tot {
    flex-basis: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 2px 6px
}

.v2-prototype .ds-tot span {
    font-size: 15px;
    font-weight: 800
}

.v2-prototype .ds-tot b {
    font-size: 23px;
    font-weight: 900;
    color: var(--g)
}

.v2-prototype .ds-tot b span {
    font-size: 15px;
    color: var(--ink);
    margin-left: 2px
}

.v2-prototype .ds-note {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    background: #F4F6FA;
    border-radius: 12px;
    padding: 12px 14px;
    font-size: 14px;
    color: var(--ink2);
    margin-top: 12px;
    line-height: 1.6
}

.v2-prototype .ds-note > .ic {
    color: var(--g);
    margin-top: 1px
}

.v2-prototype .ds-gfind {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid var(--line2)
}

.v2-prototype .ds-glab {
    color: #E0287D;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 8px
}

.v2-prototype .ds-glab.g {
    color: var(--g)
}

.v2-prototype .ds-gfind > .inp {
    margin-bottom: 8px
}

.v2-prototype .ds-phw {
    position: relative
}

.v2-prototype .ds-phm {
    position: absolute;
    left: 14px;
    top: 0;
    height: 44px;
    line-height: 44px;
    font-size: 14px;
    pointer-events: none;
    display: none;
    letter-spacing: 0
}

.v2-prototype .ds-phw.mask .ds-phm {
    display: block
}

.v2-prototype .ds-phw.mask input {
    color: transparent;
    caret-color: var(--ink)
}

.v2-prototype .ds-phw.mask input::placeholder {
    color: #9AA1AC
}

.v2-prototype .ds-eye {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    font-size: 14px;
    color: var(--sub);
    margin-top: 8px;
    user-select: none
}

.v2-prototype .ds-eye.on {
    color: var(--g)
}

.v2-prototype .ds-gfind .ds-find {
    flex: 1
}

.v2-prototype .ds-gfind .ds-rst {
    width: 44px;
    padding: 0
}

.v2-prototype .ds-found {
    display: grid;
    grid-template-columns:auto 1fr auto;
    gap: 12px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 12px 14px
}

.v2-prototype .ds-found-m {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0
}

.v2-prototype .ds-found-m .logo-ph {
    font-size: 9px;
    border-radius: 5px
}

.v2-prototype .ds-found-m .ic.xs {
    width: 13px;
    height: 13px;
    color: var(--mute)
}

.v2-prototype .ds-v {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 2px solid #CED4DB;
    background: #fff;
    color: #CED4DB;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all .15s
}

.v2-prototype .ds-v .ic {
    width: 20px;
    height: 20px;
    stroke-width: 3
}

.v2-prototype .ds-v.on {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .ds-to {
    margin-bottom: 14px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-start
}

.v2-prototype .ds-to .ds-found {
    width: 100%
}

.v2-prototype .ds-pt {
    font-size: 15px;
    font-weight: 700;
    margin: 2px 0 4px;
    line-height: 1.45
}

.v2-prototype .ds-ptot {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0
}

.v2-prototype .ds-ptot > span {
    font-size: 16px;
    font-weight: 800
}

.v2-prototype .ds-ptot b {
    font-size: 27px;
    font-weight: 900;
    color: var(--g)
}

.v2-prototype .ds-ptot b span {
    font-size: 16px;
    color: var(--ink);
    margin-left: 2px
}

.v2-prototype .ds-sumbox {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 2px 18px
}

.v2-prototype .ds-sumr {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px dashed var(--line)
}

.v2-prototype .ds-sumr:last-child {
    border-bottom: 0
}

.v2-prototype .ds-sumr s {
    margin-left: 6px
}

.v2-prototype .ds-sumr em {
    font-style: normal;
    font-size: 24px;
    font-weight: 800;
    color: #6E56CF
}

.v2-prototype .ds-sumr.t span {
    font-weight: 700
}

.v2-prototype .ds-pbox {
    margin-top: 14px;
    background: var(--bg);
    border-radius: 14px;
    padding: 16px 18px;
    display: flex;
    flex-direction: column
}

.v2-prototype .ds-use {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 8px;
    height: 44px;
    padding: 0 12px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff
}

.v2-prototype .ds-use:has(.err) {
    border-color: var(--red);
    box-shadow: 0 0 0 3px rgba(229, 72, 77, .1)
}

.v2-prototype .ds-use span {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-use input {
    flex: 1;
    min-width: 0;
    border: 0;
    outline: 0;
    text-align: right;
    font-size: 16px;
    font-weight: 800;
    background: none
}

.v2-prototype .pbox.ds-done {
    width: 440px
}

.v2-prototype .ds-done-h {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin: 14px 0 22px
}

.v2-prototype .ds-done-h b {
    font-size: 23px;
    font-weight: 800;
    line-height: 1.4;
    text-align: left
}

.v2-prototype .ds-alarm {
    width: 60px !important;
    height: 60px !important;
    stroke-width: 1.6
}

.v2-prototype .ds-done-t {
    font-weight: 800;
    font-size: 14.5px;
    text-align: center;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, .55)
}

.v2-prototype .ds-done-d {
    text-align: center;
    padding-bottom: 12px;
    margin-bottom: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, .35)
}

.v2-prototype .ds-done-d p {
    margin-top: 8px
}

.v2-prototype .pbox.ds-done .donebox p + p {
    margin-top: 8px
}

.v2-prototype .ds-exw {
    display: inline-block;
    font-size: 14px;
    background: rgba(255, 255, 255, .2);
    border-radius: 4px;
    padding: 0 5px;
    vertical-align: middle
}

.v2-prototype .ds-asklab {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 700;
    color: var(--g);
    margin-bottom: 12px
}

.v2-prototype .ds-cnt {
    position: relative
}

.v2-prototype .ds-cnt small {
    position: absolute;
    right: 12px;
    top: 13px;
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .ds-cnt .inp {
    padding-right: 56px
}

.v2-prototype .ds-openinfo {
    font-size: 14px;
    margin-top: 10px;
    padding: 10px 14px;
    background: var(--bg);
    border-radius: 10px
}

.v2-prototype .ds-qa-h {
    display: flex;
    align-items: baseline;
    gap: 10px;
    font-size: 14px
}

.v2-prototype .ds-qa-h b {
    font-size: 14px
}

.v2-prototype .ds-qa-tt {
    font-size: 18px;
    font-weight: 800;
    color: #1E6B60;
    margin: 10px 0;
    line-height: 1.45
}

.v2-prototype .ds-qa-c {
    white-space: pre-wrap;
    line-height: 1.8;
    font-size: 14.5px;
    color: var(--ink2);
    padding-bottom: 18px;
    border-bottom: 2px solid #D4E3F5
}

.v2-prototype .ds-qa-ct {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    color: var(--sub);
    margin-top: 12px
}

.v2-prototype .ds-qa-ct .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .ds-ans {
    margin-top: 16px;
    border-radius: 14px;
    background: var(--bg);
    padding: 16px 18px
}

.v2-prototype .ds-ans p {
    margin: 8px 0 6px;
    line-height: 1.75;
    font-size: 14px;
    white-space: pre-wrap
}

.v2-prototype .ds-ans.none {
    min-height: 150px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #B5BCC6;
    font-size: 19px;
    font-weight: 700
}

.v2-prototype .ds-ans.none .ic {
    width: 30px;
    height: 30px
}

.v2-prototype .ds-pop .tag.ds-red {
    background: #E0287D;
    color: #fff
}

.v2-prototype .ds-clamp {
    font-size: 14px;
    line-height: 1.7;
    color: var(--ink2);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: pre-wrap
}

.v2-prototype .ds-clamp.open {
    display: block
}

.v2-prototype .ds-unfold {
    width: 100%;
    height: 36px;
    margin-top: 8px;
    border: 1px dashed #BCD3CE;
    border-radius: 10px;
    background: #fff;
    color: var(--g);
    font-size: 14px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px
}

.v2-prototype .ds-unfold .ic {
    width: 15px;
    height: 15px;
    transition: transform .2s
}

.v2-prototype .ds-unfold.on .ic {
    transform: rotate(180deg)
}

.v2-prototype .ds-att {
    border-top: 1px solid var(--line2);
    padding-top: 6px;
    gap: 2px
}

.v2-prototype .ds-att .btn .ic {
    width: 19px;
    height: 19px
}

.v2-prototype .ds-olist {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .ds-oi {
    display: grid;
    grid-template-columns:auto 1fr auto auto auto;
    gap: 16px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 14px 18px;
    transition: all .15s
}

.v2-prototype .ds-oi:hover {
    border-color: var(--g);
    box-shadow: var(--sh)
}

.v2-prototype .ds-oi-m {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px
}

.v2-prototype .ds-oi-m small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-oi-m b {
    font-size: 15px
}

.v2-prototype .ds-oi-q {
    display: flex;
    flex-direction: column;
    align-items: flex-end
}

.v2-prototype .ds-oi-q small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .ds-oi > .ic {
    color: var(--mute)
}







.v2-prototype .dw {
    min-height: 100vh;
    background: #F1F4F6;
    display: flex;
    flex-direction: column
}

.v2-prototype .dw-in {
    max-width: 1048px;
    margin: 0 auto;
    padding: 0 24px;
    width: 100%
}

.v2-prototype .dw-hd {
    background: linear-gradient(180deg, #0F3B35 0%, #0B302B 100%);
    color: #fff;
    position: sticky;
    top: 0;
    z-index: 40;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .2)
}

.v2-prototype .dw-top {
    display: flex;
    align-items: center;
    gap: 12px;
    height: 62px
}

.v2-prototype .dw-appic {
    width: 36px;
    height: 36px;
    border-radius: 11px;
    background: linear-gradient(135deg, #2BC0AA, #127A6C);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .18), 0 4px 12px rgba(0, 0, 0, .25);
    flex: none
}

.v2-prototype .dw-appic .ic {
    width: 18px;
    height: 18px;
    color: #fff
}

.v2-prototype .dw-tt b {
    display: block;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.25
}

.v2-prototype .dw-tt small {
    font-size: 14px;
    color: #93C7BD;
    letter-spacing: -.01em
}

.v2-prototype .dw-home {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 0 12px 0 10px;
    border-radius: 10px;
    border: 0;
    background: #fff;
    color: var(--g2);
    font-weight: 700;
    font-size: 14px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .2);
    transition: transform .15s
}

.v2-prototype .dw-home:hover {
    transform: translateY(-1px)
}

.v2-prototype .dw-home img {
    height: 16px;
    width: auto
}

.v2-prototype .dw-home span {
    padding-left: 8px;
    border-left: 1px solid var(--line)
}

.v2-prototype .dw-home .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .dw-tabs {
    display: flex;
    align-items: flex-end;
    gap: 4px;
    height: 44px
}

.v2-prototype .dw-tabs a {
    height: 38px;
    padding: 0 18px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border-radius: 11px 11px 0 0;
    font-size: 14px;
    font-weight: 700;
    color: #A3CDC5;
    transition: background .15s, color .15s
}

.v2-prototype .dw-tabs a .ic {
    width: 16px;
    height: 16px
}

.v2-prototype .dw-tabs a:hover {
    color: #fff;
    background: rgba(255, 255, 255, .07)
}

.v2-prototype .dw-tabs a.on {
    background: #F1F4F6;
    color: var(--ink)
}

.v2-prototype .dw-tabs a.on .ic {
    color: var(--g)
}

.v2-prototype .dw-body {
    flex: 1;
    display: flex;
    flex-direction: column
}

.v2-prototype .dw-main {
    flex: 1;
    padding: 20px 0 8px
}

.v2-prototype .dw-foot {
    position: sticky;
    bottom: 0;
    z-index: 30;
    background: rgba(255, 255, 255, .94);
    backdrop-filter: blur(8px);
    border-top: 1px solid var(--line);
    margin-top: 16px
}

.v2-prototype .dw-foot .dw-in {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 76px
}

.v2-prototype .dw-foot .btn.lg {
    min-width: 132px
}

.v2-prototype .dw-foot .btn .ic {
    width: 16px;
    height: 16px
}

.v2-prototype .dw-steps {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 12px;
    margin-bottom: 16px
}

.v2-prototype .dw-st {
    flex: 1;
    min-width: 0;
    height: 62px;
    border-radius: 13px;
    background: var(--bg);
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1px;
    padding: 0 18px;
    position: relative;
    color: var(--sub);
    transition: background .2s
}

.v2-prototype .dw-st small {
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .08em;
    color: var(--mute)
}

.v2-prototype .dw-st b {
    font-size: 14.5px;
    font-weight: 700;
    letter-spacing: -.02em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 26px
}

.v2-prototype .dw-st.on {
    background: linear-gradient(135deg, #169282, #0E6457);
    color: #fff;
    box-shadow: 0 8px 20px rgba(18, 122, 108, .28)
}

.v2-prototype .dw-st.on small {
    color: #B9E6DD
}

.v2-prototype .dw-st.done {
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .dw-st.done small {
    color: var(--g)
}

.v2-prototype .dw-st i {
    position: absolute;
    right: 14px;
    top: 50%;
    margin-top: -12px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--g);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .dw-st i .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .dw-st.on:after {
    content: "";
    position: absolute;
    right: 16px;
    top: 50%;
    margin-top: -4px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #7EF0D9;
    box-shadow: 0 0 0 4px rgba(126, 240, 217, .25);
    animation: dwPulse 1.6s infinite
}

@keyframes dwPulse {
    50% {
        box-shadow: 0 0 0 8px rgba(126, 240, 217, 0)
    }
}

.v2-prototype .dw-arr {
    color: #C3CAD2;
    flex: none
}

.v2-prototype .dw-arr .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .dw-card {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 20px 22px;
    margin-bottom: 14px
}

.v2-prototype .dw-ch {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    flex-wrap: wrap
}

.v2-prototype .dw-ch h3 {
    font-size: 16px;
    font-weight: 800;
    display: flex;
    align-items: center;
    gap: 7px;
    letter-spacing: -.02em
}

.v2-prototype .dw-ch h3 .ic {
    width: 18px;
    height: 18px;
    color: var(--g)
}

.v2-prototype .dw-cnt {
    color: var(--g);
    font-weight: 800
}

.v2-prototype .dw-sub {
    display: inline-flex;
    gap: 2px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 13px;
    padding: 4px;
    margin-bottom: 12px
}

.v2-prototype .dw-sub a {
    height: 36px;
    padding: 0 16px;
    border-radius: 9px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 700;
    color: var(--sub)
}

.v2-prototype .dw-sub a .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .dw-sub a.on {
    background: var(--ink);
    color: #fff
}

.v2-prototype .dw-sub a.off {
    color: var(--mute)
}

.v2-prototype .dw-sub a.off em {
    font-style: normal;
    font-size: 14px;
    font-weight: 700;
    background: var(--bg);
    color: var(--mute);
    border-radius: 5px;
    padding: 1px 5px
}

.v2-prototype .dw-drop {
    padding: 30px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px
}

.v2-prototype .dw-drop .ic {
    width: 30px;
    height: 30px;
    color: var(--g);
    margin-bottom: 4px
}

.v2-prototype .dw-drop b {
    font-size: 14.5px;
    color: var(--ink2)
}

.v2-prototype .dw-drop span {
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .dw-drop.over {
    border-color: var(--g);
    background: var(--g-l)
}

.v2-prototype .dw-ft {
    border: 1px solid var(--line);
    border-radius: 14px;
    overflow: hidden
}

.v2-prototype .dw-fr {
    display: grid;
    grid-template-columns:40px 92px minmax(0, 1fr) 86px 96px 74px;
    border-top: 1px solid var(--line2);
    transition: background .2s
}

.v2-prototype .dw-fr.h {
    border-top: 0;
    background: var(--bg);
    font-size: 14px;
    font-weight: 700;
    color: var(--sub)
}

.v2-prototype .dw-fr > div {
    padding: 12px 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 14px;
    border-left: 1px solid var(--line2);
    min-width: 0
}

.v2-prototype .dw-fr.h > div {
    padding: 10px 8px
}

.v2-prototype .dw-fr > div:first-child {
    border-left: 0
}

.v2-prototype .dw-fr > .fx {
    display: block;
    text-align: left;
    padding: 12px 14px
}

.v2-prototype .dw-fr.bad {
    background: #FFF3F3
}

.v2-prototype .dw-fr.bad > div {
    border-left-color: #F8E1E1
}

.v2-prototype .dw-fr.new {
    animation: dwNew 1.2s ease
}

@keyframes dwNew {
    from {
        background: var(--g-l)
    }
    to {
        background: transparent
    }
}

.v2-prototype .dw-fn {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    min-width: 0
}

.v2-prototype .dw-file {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--blue);
    font-weight: 600;
    min-width: 0;
    cursor: pointer
}

.v2-prototype .dw-file .ic {
    width: 15px;
    height: 15px;
    flex: none;
    color: var(--sub)
}

.v2-prototype .dw-file span {
    text-decoration: underline;
    text-underline-offset: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.v2-prototype .dw-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 14px;
    font-size: 14px;
    color: var(--sub);
    margin: -2px 0 10px;
    padding: 7px 10px;
    background: var(--g-ll);
    border-radius: 8px
}

.v2-prototype .dw-meta em {
    font-style: normal;
    font-weight: 700;
    color: var(--g)
}

.v2-prototype .dw-flds {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 6px 14px
}

.v2-prototype .dw-f {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    min-height: 32px
}

.v2-prototype .dw-f > span {
    width: 62px;
    flex: none;
    font-size: 14px;
    font-weight: 600;
    color: var(--sub);
    letter-spacing: -.03em
}

.v2-prototype .dw-f .inp {
    height: 32px;
    font-size: 14px;
    border-radius: 7px;
    padding: 0 9px;
    min-width: 0
}

.v2-prototype .dw-f .inp:disabled {
    background: #F4F5F7;
    border-color: #EBEDF0
}

.v2-prototype .dw-f em {
    font-style: normal;
    font-weight: 700;
    color: var(--g);
    font-size: 14px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.v2-prototype .dw-f.s2 {
    grid-column: span 2
}

.v2-prototype .dw-f.full {
    grid-column: 1/-1
}

.v2-prototype .dw-wait {
    font-size: 14px;
    color: var(--mute);
    font-weight: 600
}

.v2-prototype .dw-pass {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    color: var(--g);
    font-weight: 800
}

.v2-prototype .dw-pass .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .dw-fail {
    color: var(--red);
    font-weight: 800
}

.v2-prototype .dw-pos {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 26px;
    padding: 0 9px;
    border-radius: 999px;
    border: 1px solid #BFE1DA;
    background: var(--g-ll);
    color: var(--g2);
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap
}

.v2-prototype .dw-pos .ic {
    width: 11px;
    height: 11px
}

.v2-prototype .btn.xs .ic {
    width: 13px;
    height: 13px
}

.v2-prototype .dw-checks {
    display: grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap: 10px
}

.v2-prototype .dw-ck {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 13px;
    cursor: pointer;
    user-select: none;
    transition: all .15s;
    min-width: 0
}

.v2-prototype .dw-ck:hover {
    border-color: #BFD9D3
}

.v2-prototype .dw-ck .ci {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: var(--bg);
    color: var(--sub);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .dw-ck .ci .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .dw-ck b {
    font-size: 14px;
    color: var(--ink2);
    white-space: nowrap;
    letter-spacing: -.02em
}

.v2-prototype .dw-ck small {
    font-size: 14px;
    color: var(--mute);
    margin-left: auto;
    white-space: nowrap
}

.v2-prototype .dw-ck i {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #E3E7EB;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none;
    transition: background .15s
}

.v2-prototype .dw-ck i .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .dw-ck.on {
    border-color: #A9D6CD;
    background: var(--g-ll)
}

.v2-prototype .dw-ck.on .ci {
    background: #fff;
    color: var(--g)
}

.v2-prototype .dw-ck.on b {
    color: var(--g2)
}

.v2-prototype .dw-ck.on small {
    color: var(--g)
}

.v2-prototype .dw-ck.on i {
    background: var(--g)
}

.v2-prototype .dw-ck.lock {
    pointer-events: none;
    opacity: .8
}

.v2-prototype .dw-start {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 34px 0 26px
}

.v2-prototype .dw-start .btn {
    height: 58px;
    padding: 0 34px;
    font-size: 17px;
    border-radius: 16px;
    box-shadow: 0 10px 24px rgba(18, 122, 108, .28)
}

.v2-prototype .dw-start .btn .ic {
    width: 20px;
    height: 20px
}

.v2-prototype .dw-scan .lb {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    margin-bottom: 10px
}

.v2-prototype .dw-scan .lb span {
    color: var(--sub);
    font-size: 14px;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.v2-prototype .dw-scan .lb span b {
    color: var(--ink)
}

.v2-prototype .dw-scan .lb strong {
    margin-left: auto;
    font-size: 26px;
    font-weight: 900;
    color: var(--g);
    letter-spacing: -.02em;
    line-height: 1
}

.v2-prototype .dw-bar {
    height: 16px;
    border-radius: 999px;
    background: var(--line2);
    overflow: hidden;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, .06)
}

.v2-prototype .dw-bar i {
    display: block;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, #1FA592, #127A6C);
    background-size: 28px 28px;
    position: relative;
    transition: width .12s linear
}

.v2-prototype .dw-bar i:after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 999px;
    background: repeating-linear-gradient(45deg, rgba(255, 255, 255, .18) 0 8px, transparent 8px 16px);
    animation: dwStripe .8s linear infinite
}

@keyframes dwStripe {
    from {
        background-position: 0 0
    }
    to {
        background-position: 22px 0
    }
}

.v2-prototype .dw-scanf {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 14px 0 4px
}

.v2-prototype .dw-scanf span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 28px;
    padding: 0 10px;
    border-radius: 8px;
    background: var(--bg);
    font-size: 14px;
    color: var(--mute);
    max-width: 280px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.v2-prototype .dw-scanf span .ic {
    width: 13px;
    height: 13px;
    flex: none
}

.v2-prototype .dw-scanf span.on {
    background: var(--o-l);
    color: #B25F00
}

.v2-prototype .dw-scanf span.ok {
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .dw-s3 {
    display: grid;
    grid-template-columns:minmax(0, 1fr) 290px;
    gap: 14px;
    align-items: start
}

.v2-prototype .dw-form {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.v2-prototype .dw-form .lbl {
    margin-top: 6px
}

.v2-prototype .dw-form .row .inp {
    flex: 1
}

.v2-prototype .dw-pw {
    position: relative
}

.v2-prototype .dw-pw .inp {
    padding-right: 44px
}

.v2-prototype .dw-pw > button {
    position: absolute;
    right: 6px;
    top: 50%;
    margin-top: -16px;
    width: 32px;
    height: 32px;
    border: 0;
    background: none;
    color: var(--mute);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .dw-pw > button:hover {
    background: var(--bg);
    color: var(--ink2)
}

.v2-prototype .dw-rules {
    display: flex;
    gap: 6px;
    flex-wrap: wrap
}

.v2-prototype .dw-rules span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    background: var(--bg);
    font-size: 14px;
    font-weight: 600;
    color: var(--mute);
    transition: all .15s
}

.v2-prototype .dw-rules span .ic {
    width: 12px;
    height: 12px
}

.v2-prototype .dw-rules span.ok {
    background: var(--g-l);
    color: var(--g2)
}

.v2-prototype .help.g {
    color: var(--g)
}

.v2-prototype .help.r {
    color: var(--red)
}

.v2-prototype .dw-agree {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin-top: 10px;
    padding: 14px 16px;
    border: 1px solid var(--line);
    background: var(--bg);
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.65;
    color: var(--ink2);
    cursor: pointer
}

.v2-prototype .dw-agree input {
    width: 18px;
    height: 18px;
    accent-color: var(--g);
    margin: 2px 0 0;
    flex: none
}

.v2-prototype .dw-agree b {
    color: var(--red)
}

.v2-prototype .dw-agree:has(input:checked) {
    border-color: #A9D6CD;
    background: var(--g-ll)
}

.v2-prototype .dw-sendlist .dw-ch {
    margin-bottom: 8px
}

.v2-prototype .dw-si {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 0;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .dw-si > .ic {
    width: 30px;
    height: 30px;
    padding: 7px;
    border-radius: 9px;
    background: var(--g-ll);
    color: var(--g)
}

.v2-prototype .dw-si div {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column
}

.v2-prototype .dw-si small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .dw-done {
    flex: 1;
    display: flex;
    flex-direction: column;
    background: radial-gradient(900px 400px at 50% -10%, rgba(255, 255, 255, .12), transparent 70%), linear-gradient(165deg, #16877A 0%, #0D5A50 100%);
    color: #fff
}

.v2-prototype .dw-done-in {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 38px;
    padding-bottom: 20px;
    text-align: center
}

.v2-prototype .dw-okic {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #fff;
    color: var(--g);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 0 10px rgba(255, 255, 255, .12)
}

.v2-prototype .dw-okic .ic {
    width: 30px;
    height: 30px;
    stroke-width: 2.6
}

.v2-prototype .dw-done h2 {
    font-size: 28px;
    font-weight: 800;
    margin: 20px 0 6px;
    letter-spacing: -.03em
}

.v2-prototype .dw-done-s {
    color: #BFE3DC;
    font-size: 14px;
    margin-bottom: 22px
}

.v2-prototype .dw-key {
    width: 100%;
    max-width: 520px;
    background: #0A0E13;
    border-radius: 26px;
    padding: 26px 30px 24px;
    text-align: left;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .35)
}

.v2-prototype .dw-key .meta {
    display: grid;
    grid-template-columns:64px 1fr;
    gap: 6px 12px;
    font-size: 14px;
    color: #8B949E
}

.v2-prototype .dw-key .meta b {
    color: #fff;
    font-weight: 600
}

.v2-prototype .dw-key .ln {
    height: 1px;
    background: rgba(255, 255, 255, .1);
    margin: 18px 0 6px
}

.v2-prototype .dw-key .lb {
    font-size: 14px;
    color: #8B949E;
    margin-top: 12px
}

.v2-prototype .dw-key .pw {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: .18em;
    margin-top: 2px
}

.v2-prototype .dw-key .pw button {
    border: 0;
    background: rgba(255, 255, 255, .08);
    color: #C9D1D9;
    width: 30px;
    height: 30px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 0
}

.v2-prototype .dw-key .pw button .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .dw-key .k {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 25px;
    font-weight: 700;
    color: #7EF0D9;
    letter-spacing: .01em;
    word-break: break-all;
    margin-top: 2px
}

.v2-prototype .dw-key .btn {
    margin-top: 20px;
    height: 46px;
    background: transparent;
    border-color: rgba(255, 255, 255, .3);
    color: #fff;
    border-radius: 12px
}

.v2-prototype .dw-key .btn:hover {
    background: rgba(255, 255, 255, .08)
}

.v2-prototype .dw-notes {
    list-style: none;
    padding: 0;
    margin: 22px 0 0;
    font-size: 14px;
    color: #D3ECE7;
    line-height: 1.8
}

.v2-prototype .dw-notes li:before {
    content: "·";
    margin-right: 6px
}

.v2-prototype .dw-foot.dk {
    background: rgba(5, 40, 35, .35);
    border-top-color: rgba(255, 255, 255, .12);
    backdrop-filter: none
}

.v2-prototype .dw-foot.dk .btn {
    background: transparent;
    border-color: rgba(255, 255, 255, .35);
    color: #fff
}

.v2-prototype .dw-foot.dk .btn.wt {
    background: #fff;
    color: var(--g2);
    border-color: #fff
}

.v2-prototype .dw-filt {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    margin-bottom: 12px
}

.v2-prototype .dw-filt .inp.sm {
    height: 36px
}

.v2-prototype .dw-filt select.inp {
    width: 112px
}

.v2-prototype .dw-filt .dw-q {
    width: 170px
}

.v2-prototype .dw-filt .btn.sm {
    height: 36px
}

.v2-prototype .dw-datew {
    position: relative
}

.v2-prototype .dw-date {
    height: 36px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 0 12px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    font-size: 14px;
    color: var(--sub);
    font-weight: 600
}

.v2-prototype .dw-date .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .dw-date .ic:last-child {
    width: 12px;
    height: 12px;
    color: var(--mute)
}

.v2-prototype .dw-date.on {
    border-color: var(--g);
    color: var(--g2);
    background: var(--g-ll)
}

.v2-prototype .dw-calpop {
    position: absolute;
    left: 0;
    top: calc(100% + 6px);
    z-index: 35;
    width: 590px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    box-shadow: var(--sh2);
    padding: 14px 14px 12px
}

.v2-prototype .dw-cal2 {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 10px
}

.v2-prototype .dw-cal2 .cal {
    border: 0;
    padding: 4px 6px;
    background: var(--bg);
    border-radius: 12px
}

.v2-prototype .dw-cal2 .cal [data-calmv] {
    display: none
}

.v2-prototype .dw-cal2 .cal-g .cd {
    height: 30px;
    font-size: 14px
}

.v2-prototype .dw-calf {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--line2)
}

.v2-prototype .dw-tw {
    border: 1px solid var(--line);
    border-radius: 12px;
    overflow-x: auto
}

.v2-prototype .db-transfer-history-open {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    font: inherit
}

body.db-transfer-modal-open {
    overflow: hidden
}

.db-transfer-history-modal {
    width: min(1180px, calc(100vw - 40px));
    max-width: none;
    max-height: calc(100vh - 48px);
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(15, 23, 42, .24)
}

.db-transfer-history-modal::backdrop {
    background: rgba(15, 23, 42, .58);
    backdrop-filter: blur(2px)
}

.db-transfer-history-dialog {
    display: flex;
    max-height: calc(100vh - 48px);
    flex-direction: column
}

.db-transfer-history-head {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: space-between;
    padding: 22px 26px 18px;
    border-bottom: 1px solid #e5e7eb
}

.db-transfer-history-head span {
    display: block;
    margin-bottom: 4px;
    color: #0b8f6a;
    font-size: 12px;
    font-weight: 700
}

.db-transfer-history-head h2 {
    margin: 0;
    color: #111827;
    font-size: 22px;
    line-height: 1.35
}

.db-transfer-history-close {
    display: inline-flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fff;
    color: #111827;
    cursor: pointer
}

.db-transfer-history-body {
    min-height: 0;
    padding: 20px 26px;
    overflow: auto
}

.db-transfer-history-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px
}

.db-transfer-history-summary b {
    color: #111827;
    font-size: 15px
}

.db-transfer-history-summary span {
    color: #6b7280;
    font-size: 13px
}

.db-transfer-history-modal .dw-tw {
    max-height: none;
    border: 1px solid #e5e7eb;
    border-radius: 8px
}

.db-transfer-history-modal .dw-t {
    min-width: 960px
}

.db-transfer-history-modal .dw-t thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #f8fafc
}

.db-transfer-history-foot {
    display: flex;
    flex: 0 0 auto;
    justify-content: flex-end;
    padding: 16px 26px;
    border-top: 1px solid #e5e7eb;
    background: #fff
}



.v2-prototype table.dw-t {
    font-size: 14px
}

.v2-prototype table.dw-t th {
    padding: 10px 6px;
    font-size: 14px;
    text-align: center
}

.v2-prototype table.dw-t td {
    padding: 8px 5px;
    text-align: center;
    white-space: nowrap
}

.v2-prototype table.dw-t td .dw-file {
    max-width: 118px
}

.v2-prototype table.dw-t td.dt {
    line-height: 1.3
}

.v2-prototype table.dw-t td.dt small {
    display: block;
    font-size: 14px;;
    color: var(--mute)
}

.v2-prototype table.dw-t td.ell {
    max-width: 112px
}

.v2-prototype table.dw-t tr.no td {
    background: #FFF7F7
}

.v2-prototype .dw-pg {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 14px
}

.v2-prototype .dw-pager {
    display: flex;
    align-items: center;
    gap: 2px
}

.v2-prototype .dw-pager a {
    min-width: 30px;
    height: 30px;
    padding: 0 4px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: var(--sub);
    cursor: pointer
}

.v2-prototype .dw-pager a:hover {
    background: var(--bg)
}

.v2-prototype .dw-pager a.on {
    background: var(--ink);
    color: #fff;
    font-weight: 700
}

.v2-prototype .dw-pager a.off {
    opacity: .35;
    pointer-events: none
}

.v2-prototype .dw-pg select.inp {
    width: 84px;
    height: 32px
}

.v2-prototype .dw-rform {
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 520px;
    margin: 6px auto 4px
}

.v2-prototype .dw-ib {
    position: relative
}

.v2-prototype .dw-ib > .ic {
    position: absolute;
    left: 15px;
    top: 50%;
    margin-top: -9px;
    color: var(--mute)
}

.v2-prototype .dw-ib .inp {
    height: 54px;
    padding-left: 44px;
    font-size: 15px;
    border-radius: 12px
}

.v2-prototype .dw-howto {
    max-width: 520px;
    margin: 16px auto 0;
    padding: 14px 16px 14px 34px;
    background: var(--bg);
    border-radius: 12px;
    font-size: 14px;
    color: var(--sub);
    line-height: 1.8
}

.v2-prototype .dw-rv {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: center;
    padding: 10px 0 6px
}

.v2-prototype .dw-rv b {
    font-size: 30px;
    font-weight: 800;
    color: var(--g);
    min-width: 64px;
    text-align: right;
    letter-spacing: -.02em
}

.v2-prototype .dw-rv strong {
    font-size: 30px;
    font-weight: 900;
    color: var(--g);
    min-width: 84px;
    letter-spacing: -.02em
}

.v2-prototype .dw-dots {
    display: flex;
    gap: 10px;
    padding: 10px 16px;
    border: 2px solid var(--line);
    border-radius: 999px;
    background: #fff
}

.v2-prototype .dw-dots i {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #E6EAEE;
    transition: background .3s, transform .3s
}

.v2-prototype .dw-dots i.on {
    background: var(--g)
}

.v2-prototype .dw-dots i.hd {
    animation: dwDot .7s ease-in-out infinite alternate
}

@keyframes dwDot {
    from {
        background: #E6EAEE;
        transform: scale(.85)
    }
    to {
        background: #8FD3C6;
        transform: scale(1)
    }
}

.v2-prototype .dw-rl {
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-size: 14px;
    color: var(--ink2)
}

.v2-prototype .dw-rl > div {
    display: flex;
    flex-wrap: wrap;
    gap: 3px 14px
}

.v2-prototype .dw-rl span {
    color: var(--sub)
}

.v2-prototype .dw-rl b {
    font-weight: 600;
    color: var(--ink)
}

.v2-prototype .dw-fr.rv {
    grid-template-columns:40px 92px minmax(0, 1fr) 80px 86px 74px
}

.v2-prototype .do-trh {
    display: grid;
    grid-template-columns:minmax(0, 1.15fr) minmax(0, 1fr);
    gap: 24px;
    align-items: center;
    border-radius: 22px;
    padding: 34px 34px 34px 38px;
    background: radial-gradient(600px 300px at 100% 0, rgba(126, 240, 217, .18), transparent 60%), linear-gradient(150deg, #13463F, #0B2F2A);
    color: #fff;
    overflow: hidden
}

.v2-prototype .do-trh .tag {
    background: rgba(255, 255, 255, .12);
    color: #9FE8D8
}

.v2-prototype .do-trh h2 {
    font-size: 27px;
    line-height: 1.38;
    font-weight: 800;
    margin: 14px 0 10px;
    letter-spacing: -.03em
}

.v2-prototype .do-trh p {
    color: #B9D8D2;
    font-size: 14px;
    line-height: 1.7
}

.v2-prototype .do-trh .btn.lg .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .do-wt {
    background: #fff !important;
    color: var(--g2) !important;
    border-color: #fff !important
}

.v2-prototype .do-lock {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 12px;
    font-size: 14px;
    color: #FFD08A
}

.v2-prototype .do-lock .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .do-mock {
    background: #F1F4F6;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 24px 50px rgba(0, 0, 0, .35);
    transform: perspective(900px) rotateY(-8deg) rotateX(3deg);
    color: var(--ink)
}

.v2-prototype .do-mock .bar {
    height: 30px;
    background: #0B302B;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 12px
}

.v2-prototype .do-mock .bar i {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .25)
}

.v2-prototype .do-mock .bar b {
    color: #fff;
    font-size: 14px;
    margin-left: 8px
}

.v2-prototype .do-mock .st {
    display: flex;
    gap: 6px;
    padding: 12px
}

.v2-prototype .do-mock .st span {
    flex: 1;
    height: 34px;
    border-radius: 8px;
    background: #fff;
    font-size: 14px;
    font-weight: 700;
    color: var(--sub);
    display: flex;
    align-items: center;
    padding: 0 9px
}

.v2-prototype .do-mock .st span.on {
    background: var(--g);
    color: #fff
}

.v2-prototype .do-mock .bd {
    margin: 0 12px 14px;
    background: #fff;
    border-radius: 10px;
    padding: 12px
}

.v2-prototype .do-mock .rw {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 0;
    border-bottom: 1px solid var(--line2);
    font-size: 14px;
}

.v2-prototype .do-mock .rw:last-child {
    border-bottom: 0
}

.v2-prototype .do-mock .rw em {
    font-style: normal;
    margin-left: auto;
    font-weight: 800
}

.v2-prototype .do-mock .pb {
    height: 8px;
    border-radius: 9px;
    background: var(--line2);
    overflow: hidden;
    margin: 4px 0 8px
}

.v2-prototype .do-mock .pb i {
    display: block;
    height: 100%;
    width: 68%;
    background: var(--g);
    border-radius: 9px;
    animation: doMock 3s ease-in-out infinite
}

@keyframes doMock {
    0% {
        width: 8%
    }
    80%, 100% {
        width: 100%
    }
}

.v2-prototype .do-flow {
    display: grid;
    grid-template-columns:repeat(5, minmax(0, 1fr));
    gap: 10px;
    counter-reset: fl
}

.v2-prototype .do-flow > div {
    position: relative;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 18px 16px 16px
}

.v2-prototype .do-flow > div:not(:last-child):after {
    content: "";
    position: absolute;
    right: -9px;
    top: 34px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #C7CED6;
    border-right: 2px solid #C7CED6;
    transform: rotate(45deg);
    z-index: 1
}

.v2-prototype .do-flow .ico {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: var(--g-l);
    color: var(--g);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px
}

.v2-prototype .do-flow .ico .ic {
    width: 20px;
    height: 20px
}

.v2-prototype .do-flow small {
    font-size: 14px;;
    font-weight: 800;
    color: var(--o2);
    letter-spacing: .06em
}

.v2-prototype .do-flow b {
    display: block;
    font-size: 14.5px;
    margin: 2px 0 4px;
    letter-spacing: -.02em
}

.v2-prototype .do-flow p {
    font-size: 14px;
    color: var(--sub);
    line-height: 1.55
}

.v2-prototype .do-flow .who {
    display: inline-flex;
    align-items: center;
    height: 20px;
    margin-top: 8px;
    font-size: 14px;;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 5px;
    background: var(--bg);
    color: var(--sub)
}

.v2-prototype .do-ul {
    margin: 10px 0 16px;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 7px;
    font-size: 14px;
    color: var(--ink2)
}

.v2-prototype .do-ul li {
    display: flex;
    gap: 8px;
    align-items: flex-start
}

.v2-prototype .do-ul li .ic {
    width: 16px;
    height: 16px;
    color: var(--g);
    margin-top: 2px
}

.v2-prototype .do-top {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 18px
}

.v2-prototype .do-nav {
    display: inline-flex;
    align-items: center;
    height: 42px;
    border: 1px solid var(--line);
    border-radius: 11px;
    background: #fff;
    padding: 0 4px
}

.v2-prototype .do-nav button,
.v2-prototype .do-nav a {
    width: 30px;
    height: 30px;
    border: 0;
    background: none;
    border-radius: 8px;
    color: var(--sub);
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .do-nav button:hover:not(:disabled),
.v2-prototype .do-nav a:hover {
    background: var(--bg);
    color: var(--ink)
}

.v2-prototype .do-nav button .ic,
.v2-prototype .do-nav a .ic {
    width: 16px;
    height: 16px
}

.v2-prototype .do-nav b {
    min-width: 64px;
    text-align: center;
    font-size: 15px;
    font-weight: 800
}

.v2-prototype .do-nav button:disabled {
    cursor: default;
    opacity: .3
}

.v2-prototype .do-bar2 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    flex-wrap: wrap
}

.v2-prototype .do-bar2 .chip b {
    font-weight: 800;
    margin-left: 2px
}

.v2-prototype .do-bar2 .chip:not(.on) b.o {
    color: var(--o2)
}

.v2-prototype .do-bar2 .chip:not(.on) b.g {
    color: var(--g)
}

.v2-prototype .do-adsel {
    width: 340px;
    height: 42px
}

.v2-prototype .do-cards {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 12px
}

.v2-prototype .do-bc {
    position: relative;
    display: grid;
    grid-template-columns:auto minmax(0, 1fr) auto;
    gap: 4px 14px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 16px 18px;
    background: #fff;
    cursor: pointer;
    transition: border-color .15s, box-shadow .15s, transform .15s;
    width: 100%;
    color: var(--ink);
    font: inherit;
    text-align: left
}

.v2-prototype .do-bc:hover, .v2-prototype .do-pc:hover {
    border-color: #BFD9D3;
    box-shadow: var(--sh);
    transform: translateY(-2px)
}

.v2-prototype .do-bc .mid {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px
}

.v2-prototype .do-who {
    font-size: 14px;
    color: var(--blue);
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.v2-prototype .do-who span {
    color: var(--mute);
    font-weight: 500
}

.v2-prototype .do-who .db-status-buyer-name {
    color: var(--blue);
    font-weight: 600
}

.v2-prototype .do-amt {
    font-size: 17px;
    font-weight: 800;
    letter-spacing: -.02em
}

.v2-prototype .do-amt small {
    font-size: 14px;
    font-weight: 600;
    color: var(--sub)
}

.v2-prototype .do-rt {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 3px;
    font-size: 14px
}

.v2-prototype .do-rt > div {
    display: flex;
    align-items: baseline;
    gap: 8px
}

.v2-prototype .do-rt .db-status-stat {
    display: flex;
    align-items: baseline;
    gap: 8px
}

.v2-prototype .db-status-order-title {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-top: 8px
}

.v2-prototype .db-status-order-title .ic {
    width: 15px;
    height: 15px
}

.db-status-detail-modal .db-transfer-history-body {
    padding-bottom: 24px
}

.db-status-detail-modal .do-p2p {
    margin-top: 18px
}

.v2-prototype .do-rt span {
    color: var(--sub)
}

.v2-prototype .do-rt b {
    font-size: 16px;
    font-weight: 800;
    min-width: 24px;
    text-align: right
}

.v2-prototype .do-rt .tag {
    margin-top: 2px
}

.v2-prototype .do-bc .do-more {
    position: absolute;
    right: 14px;
    bottom: 8px;
    color: var(--mute)
}

.v2-prototype .do-bc .do-more .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .do-fl {
    background: var(--bg);
    border-radius: 16px;
    padding: 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 16px
}

.v2-prototype .do-fr {
    display: grid;
    grid-template-columns:62px 1fr;
    align-items: center;
    gap: 10px
}

.v2-prototype .do-fr > span {
    font-size: 14px;
    font-weight: 700;
    color: var(--sub)
}

.v2-prototype .do-fl .chip {
    height: 32px;
    background: #fff
}

.v2-prototype .do-fl .chip.on {
    background: var(--ink)
}

.v2-prototype .do-fl .chip.co {
    font-weight: 700
}

.v2-prototype .do-fl .chip.co.on {
    background: var(--g);
    border-color: var(--g)
}

.v2-prototype .do-sortrow {
    margin-bottom: 12px
}

.v2-prototype .do-pc {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 16px 18px;
    background: #fff;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 6px;
    transition: border-color .15s, box-shadow .15s, transform .15s;
    min-width: 0;
    width: 100%;
    color: var(--ink);
    font: inherit;
    text-align: left
}

.v2-prototype .do-pc .co {
    color: var(--g);
    font-size: 14px;
    font-weight: 800
}

.v2-prototype .do-pc .tt {
    font-size: 16px;
    font-weight: 800;
    letter-spacing: -.02em;
    display: block
}

.v2-prototype .do-pc .pl {
    gap: 6px;
    padding-top: 6px;
    border-top: 1px dashed var(--line);
    margin-top: 2px
}

.v2-prototype .do-pc .pn {
    font-size: 14px;
    color: var(--ink2);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0
}

.v2-prototype .do-pc .pp {
    font-size: 18px;
    font-weight: 800;
    color: var(--red);
    letter-spacing: -.02em;
    white-space: nowrap
}

.v2-prototype .db-buyer-progress {
    gap: 18px;
    padding-top: 8px;
    border-top: 1px dashed var(--line);
    color: var(--sub);
    font-size: 13px
}

.v2-prototype .db-buyer-progress b {
    margin-left: 4px;
    font-size: 15px
}

.v2-prototype .do-pc[hidden] {
    display: none
}

.v2-prototype .do-fl .chip,
.v2-prototype .do-sortrow .sort a {
    cursor: pointer;
    user-select: none
}

.v2-prototype .do-plus {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--ink);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    position: relative
}

.v2-prototype .do-plus .ic {
    width: 12px;
    height: 12px;
    stroke-width: 2.6
}

.v2-prototype .do-sum {
    position: sticky;
    bottom: 14px;
    z-index: 15;
    margin-top: 20px;
    display: flex;
    align-items: center;
    gap: 18px;
    background: #15191F;
    color: #fff;
    border-radius: 18px;
    padding: 14px 24px;
    box-shadow: 0 14px 34px rgba(16, 24, 40, .25)
}

.v2-prototype .do-sum > div small {
    display: block;
    font-size: 14px;
    color: #9AA1AC;
    font-weight: 600;
    letter-spacing: .02em
}

.v2-prototype .do-sum > div b {
    font-size: 21px;
    font-weight: 800;
    letter-spacing: -.02em
}

.v2-prototype .do-sum > i {
    width: 1px;
    height: 30px;
    background: rgba(255, 255, 255, .14)
}

.v2-prototype .do-sum b.gl {
    color: #5FD3BE
}

.v2-prototype .do-sum b.rl {
    color: #FF8A8F
}

.v2-prototype .do-sum .amt {
    text-align: right
}

.v2-prototype .do-sum .amt b {
    font-size: 27px;
    color: #FF7B80
}

.v2-prototype .do-sum .amt small {
    display: flex;
    align-items: center;
    gap: 6px;
    justify-content: flex-end
}

.v2-prototype .do-hcard {
    display: grid;
    grid-template-columns:auto minmax(0, 1fr) auto;
    gap: 4px 14px;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 16px 18px;
    background: linear-gradient(180deg, #fff, #F8FAFB)
}

.v2-prototype .do-hcard .mid {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px
}

.v2-prototype .do-prod {
    padding: 18px 2px 16px;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .do-prod .pn {
    font-size: 15px;
    font-weight: 700
}

.v2-prototype .do-prod .pr {
    font-size: 21px;
    font-weight: 800;
    color: var(--g);
    margin-top: 2px;
    letter-spacing: -.02em
}

.v2-prototype .do-prod .pr s {
    font-size: 14px;
    color: var(--mute);
    font-weight: 500;
    margin-left: 6px
}

.v2-prototype .do-q {
    display: grid;
    grid-template-columns:repeat(4, 1fr);
    margin-top: 12px;
    background: var(--bg);
    border-radius: 12px;
    padding: 11px 0
}

.v2-prototype .do-q > div {
    text-align: center;
    border-left: 1px solid var(--line);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1px
}

.v2-prototype .do-q > div:first-child {
    border-left: 0
}

.v2-prototype .do-q small {
    font-size: 14px;
    color: var(--sub);
    font-weight: 600;
    letter-spacing: .02em
}

.v2-prototype .do-q b {
    font-size: 19px;
    font-weight: 800
}

.v2-prototype .do-q .as {
    font-size: 14px;;
    color: var(--blue);
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px
}

.v2-prototype .do-q.tot {
    background: #15191F;
    color: #fff;
    margin-top: 16px
}

.v2-prototype .do-q.tot > div {
    border-left-color: rgba(255, 255, 255, .12)
}

.v2-prototype .do-q.tot small {
    color: #9AA1AC
}

.v2-prototype .do-q.tot .g {
    color: #5FD3BE
}

.v2-prototype .do-q.tot .r {
    color: #FF8A8F
}

.v2-prototype .do-sec {
    margin-top: 20px
}

.v2-prototype .do-sec h4 {
    font-size: 14.5px;
    font-weight: 800;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .do-tl {
    list-style: none;
    margin: 0;
    padding: 0 0 0 4px
}

.v2-prototype .do-tl li {
    position: relative;
    padding: 0 0 14px 22px
}

.v2-prototype .do-tl li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #fff;
    border: 2.5px solid var(--g)
}

.v2-prototype .do-tl li:after {
    content: "";
    position: absolute;
    left: 5px;
    top: 18px;
    bottom: 0;
    width: 1.5px;
    background: var(--line)
}

.v2-prototype .do-tl li:last-child:after {
    display: none
}

.v2-prototype .do-tl li:first-child:before {
    background: var(--g)
}

.v2-prototype .do-tl b {
    display: block;
    font-size: 14px;
    font-weight: 600
}

.v2-prototype .do-tl small {
    font-size: 14px;
    color: var(--blue)
}

.v2-prototype .do-tl .x {
    position: absolute;
    right: 0;
    top: 0;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 0;
    background: var(--bg);
    color: var(--sub);
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .do-tl .x:hover {
    background: var(--red-l);
    color: var(--red)
}

.v2-prototype .do-tl .x .ic {
    width: 13px;
    height: 13px
}

.v2-prototype .do-p2p {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 16px;
    padding: 14px 16px;
    border-radius: 14px;
    background: var(--g-ll);
    border: 1px solid #CDE6E0
}

.v2-prototype .do-p2p > .ic {
    width: 36px;
    height: 36px;
    padding: 8px;
    border-radius: 10px;
    background: #fff;
    color: var(--g);
    flex: none
}

.v2-prototype .do-p2p div {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column
}

.v2-prototype .do-p2p small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .do-adlink {
    display: block;
    margin-top: 16px;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 14px 16px;
    cursor: pointer;
    transition: border-color .15s
}

.v2-prototype .do-adlink:hover {
    border-color: var(--g)
}

.v2-prototype .do-adlink .row {
    font-size: 14px
}

.v2-prototype .do-adlink .row b {
    color: var(--g)
}

.v2-prototype .do-adlink .row b .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .do-adlink strong {
    display: block;
    font-size: 15.5px;
    margin-top: 6px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.v2-prototype .do-set {
    display: grid;
    grid-template-columns:minmax(0, 1.25fr) minmax(0, 1fr);
    gap: 18px;
    align-items: start
}

.v2-prototype .do-tc {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    padding: 24px 28px 26px;
    color: #fff;
    background: radial-gradient(500px 260px at 100% 0, rgba(255, 255, 255, .12), transparent 65%), linear-gradient(155deg, #178A7B 0%, #0D5A50 100%);
    box-shadow: 0 18px 40px rgba(13, 90, 80, .25)
}

.v2-prototype .do-mn {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 10px
}

.v2-prototype .do-mn button,
.v2-prototype .do-mn a {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    border: 0;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .do-mn button:hover:not(:disabled),
.v2-prototype .do-mn a:hover {
    background: rgba(255, 255, 255, .22)
}

.v2-prototype .do-mn button .ic,
.v2-prototype .do-mn a .ic {
    width: 16px;
    height: 16px
}

.v2-prototype .do-mn button:disabled {
    opacity: .3
}

.v2-prototype .do-mn b {
    font-size: 20px;
    font-weight: 800;
    letter-spacing: -.01em;
    min-width: 86px;
    text-align: center
}

.v2-prototype .do-mn .mo {
    font-size: 14px;
    color: #BFE3DC
}

.v2-prototype .do-tc .ln {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 10px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .13)
}

.v2-prototype .do-tc .ln span {
    color: #CFE9E3;
    font-size: 14px
}

.v2-prototype .do-tc .ln b {
    font-size: 20px;
    font-weight: 800;
    letter-spacing: -.01em;
    white-space: nowrap
}

.v2-prototype .do-tc .ln.s {
    padding: 6px 0 10px
}

.v2-prototype .do-tc .ln.s span, .v2-prototype .do-tc .ln.s b {
    font-size: 14px;
    color: #A9D7CE;
    font-weight: 600
}

.v2-prototype .do-tc .ln.cut b {
    color: #FFC9D6
}

.v2-prototype .do-tc .tot {
    padding: 18px 0 4px;
    display: flex;
    flex-direction: column;
    gap: 4px
}

.v2-prototype .do-tc .tot span {
    font-size: 44px;
    font-weight: 700
}

.v2-prototype .do-tc .tot small {
    font-size: 14px;
    color: #BFE3DC
}

.v2-prototype .do-tc .big {
    font-size: 44px;
    font-weight: 900;
    color: #FFE08A;
    letter-spacing: -.03em;
    line-height: 1.1;
    text-align: right
}

.v2-prototype .do-tc .big em {
    font-style: normal;
    font-size: 22px;
    margin-left: 4px
}

.v2-prototype .do-tc .vat {
    text-align: right;
    font-size: 14px;
    color: #FFE08A;
    opacity: .85
}

.v2-prototype .do-tc .nt {
    font-size: 14px;
    color: #BFE3DC;
    line-height: 1.6;
    margin-top: 12px;
    padding: 10px 12px;
    background: rgba(0, 0, 0, .12);
    border-radius: 10px
}

.v2-prototype .do-tc .ct {
    display: flex;
    justify-content: center;
    margin-top: 18px
}

.v2-prototype .do-stbtn {
    height: 50px;
    padding: 0 34px;
    border-radius: 999px;
    border: 0;
    font-size: 16.5px;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .18)
}

.v2-prototype .do-stbtn .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .do-stbtn.s0 {
    background: #F0447B;
    color: #fff
}

.v2-prototype .do-stbtn.s1 {
    background: var(--o);
    color: #fff
}

.v2-prototype .do-stbtn.s2 {
    background: #fff;
    color: var(--g2)
}

.v2-prototype .do-hist {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .do-hc {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 15px 18px;
    background: #fff;
    cursor: pointer;
    display: grid;
    grid-template-columns:minmax(0, 1fr) auto;
    gap: 3px 10px;
    align-items: center;
    transition: border-color .15s, box-shadow .15s
}

.v2-prototype .do-hc:hover {
    border-color: #BFD9D3;
    box-shadow: var(--sh)
}

.v2-prototype .do-hc.selected {
    border-color: var(--g);
    box-shadow: 0 0 0 2px rgba(23, 138, 123, .1)
}

.v2-prototype .do-hc small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .do-hc .lb {
    font-size: 15.5px;
    font-weight: 800;
    letter-spacing: -.02em
}

.v2-prototype .do-hc .am {
    font-size: 18px;
    font-weight: 800;
    text-align: right;
    white-space: nowrap
}

.v2-prototype .do-hc.pend .lb, .v2-prototype .do-hc.pend .am {
    color: #D6336C
}

.v2-prototype .do-hc.paid .lb, .v2-prototype .do-hc.paid .am {
    color: var(--g)
}

.v2-prototype .do-hc .dt {
    font-size: 14px;
    color: var(--blue)
}

.v2-prototype .do-hc > .ic {
    grid-row: 1/4;
    grid-column: 3;
    color: var(--mute)
}

.v2-prototype .do-legend {
    margin-top: 14px;
    padding: 14px 16px;
    border-radius: 14px;
    background: var(--bg);
    font-size: 14px;
    color: var(--ink2);
    display: flex;
    flex-direction: column;
    gap: 7px
}

.v2-prototype .do-legend b {
    display: inline-flex;
    align-items: center;
    height: 22px;
    padding: 0 9px;
    border-radius: 999px;
    font-size: 14px;
    color: #fff;
    margin-right: 6px;
    min-width: 90px;
    justify-content: center
}

.v2-prototype .do-legend .s0 {
    background: #F0447B
}

.v2-prototype .do-legend .s1 {
    background: var(--o)
}

.v2-prototype .do-legend .s2 {
    background: var(--g)
}

.v2-prototype .do-dh {
    display: flex;
    align-items: center;
    gap: 24px;
    border: 1px solid var(--line);
    border-radius: 20px;
    padding: 22px 26px;
    background: linear-gradient(180deg, #fff, #F7FAF9);
    margin-bottom: 22px
}

.v2-prototype .do-dh .d {
    font-size: 14px;
    color: var(--sub);
    font-weight: 600
}

.v2-prototype .do-dh .lns {
    flex: 1;
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 4px 30px
}

.v2-prototype .do-dh .lns > div {
    display: flex;
    flex-direction: column
}

.v2-prototype .do-dh .lns span {
    font-size: 14px;
    font-weight: 700;
    color: var(--sub)
}

.v2-prototype .do-dh .lns b {
    font-size: 26px;
    font-weight: 900;
    letter-spacing: -.02em
}

.v2-prototype .do-dh .lns .g b {
    color: var(--g)
}

.v2-prototype .do-dh .dt {
    font-size: 14px;
    color: var(--blue)
}

.v2-prototype .do-tables {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 22px 18px
}

.v2-prototype .do-tb h3 {
    font-size: 15px;
    font-weight: 800;
    display: flex;
    align-items: center;
    gap: 6px
}

.v2-prototype .do-tb .sec-h {
    margin-bottom: 8px
}

.v2-prototype .do-tw {
    border: 1px solid var(--line);
    border-radius: 12px;
    overflow-x: auto
}

.v2-prototype table.do-t {
    font-size: 14px
}

.v2-prototype table.do-t th {
    padding: 9px 5px;
    font-size: 14px;
    text-align: center
}

.v2-prototype table.do-t td {
    padding: 9px 5px;
    text-align: center;
    white-space: nowrap
}

.v2-prototype table.do-t td.n {
    font-variant-numeric: tabular-nums
}

.v2-prototype table.do-t td .ell {
    display: block;
    max-width: 78px;
    margin: 0 auto
}

.v2-prototype table.do-t tr.sum td {
    background: #FDECEF;
    color: #C2255C
}

.v2-prototype table.do-t tr.mi td {
    color: #B4BAC2;
    background: #FAFAFB
}

.v2-prototype .do-att {
    display: grid;
    grid-template-columns:260px minmax(0, 1fr);
    gap: 18px;
    margin-top: 26px
}

.v2-prototype .do-att .card h3 {
    font-size: 15px;
    margin-bottom: 12px
}

.v2-prototype .do-dbi {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    border: 1px solid var(--line);
    border-radius: 14px;
    overflow: hidden
}

.v2-prototype .do-dbi > div {
    display: flex;
    align-items: center;
    min-height: 44px;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .do-dbi > div:nth-child(odd):not(.full) {
    border-right: 1px solid var(--line2)
}

.v2-prototype .do-dbi > div.full {
    grid-column: 1/-1;
    border-bottom: 0
}

.v2-prototype .do-dbi > div > span {
    width: 110px;
    flex: none;
    align-self: stretch;
    display: flex;
    align-items: center;
    padding: 0 14px;
    background: var(--bg);
    font-size: 14px;
    font-weight: 600;
    color: var(--sub)
}

.v2-prototype .do-dbi > div > b {
    padding: 0 14px;
    font-size: 14px;
    font-weight: 700;
    color: var(--g)
}

.v2-prototype[data-page="dbm"] #toast, .v2-prototype[data-page="dbr"] #toast {
    bottom: 96px
}

.v2-prototype .do-dh > div:first-child {
    align-items: flex-start
}

.v2-prototype .do-pconly, .v2-prototype .do-pcnote {
    display: none
}

.v2-prototype .do-pconly {
    gap: 12px;
    align-items: flex-start;
    margin-top: 18px;
    padding: 18px;
    border-radius: 18px;
    background: #fff;
    color: var(--ink);
    text-align: left
}

.v2-prototype .do-pconly .pi {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: var(--g-l);
    color: var(--g);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .do-pconly .pi .ic {
    width: 20px;
    height: 20px
}

.v2-prototype .do-pconly b {
    display: block;
    font-size: 17px;
    line-height: 1.4;
    font-weight: 800;
    color: var(--g2);
    letter-spacing: -.03em
}

.v2-prototype .do-pconly p {
    font-size: 14px;
    line-height: 1.6;
    margin-top: 8px;
    color: var(--ink2)
}

.v2-prototype .do-trh .do-pconly p {
    color: var(--ink2)
}

.v2-prototype .do-pconly p.em {
    color: var(--g);
    font-weight: 700
}

.v2-prototype .do-pconly p.bx {
    background: var(--g-ll);
    border-radius: 10px;
    padding: 10px 12px;
    color: var(--g2)
}

.v2-prototype .do-pconly.sm {
    margin-top: 16px;
    background: var(--g-ll);
    border: 1px solid #CDE6E0
}

.v2-prototype .do-pconly.sm .pi {
    background: #fff
}

.v2-prototype .do-pcnote {
    align-items: center;
    gap: 6px;
    font-size: 14px;
    color: var(--sub);
    background: var(--bg);
    border-radius: 10px;
    padding: 10px 12px;
    margin-top: 4px
}

.v2-prototype .do-pcnote .ic {
    width: 16px;
    height: 16px;
    color: var(--g);
    flex: none
}





.v2-prototype .dr-2nd {
    display: inline-flex;
    align-items: center;
    height: 18px;
    padding: 0 6px;
    border-radius: 5px;
    background: #FDE4E9;
    color: #C2255C;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0;
    flex: none;
    white-space: nowrap
}

.v2-prototype .dr-mt8 {
    margin-top: 8px
}

.v2-prototype .dr-mt10 {
    margin-top: 10px
}

.v2-prototype .dr-mt14 {
    margin-top: 14px
}

.v2-prototype .dr-w260 {
    max-width: 260px
}

.v2-prototype .dr-my {
    display: grid;
    grid-template-columns:1.1fr 1fr 1fr;
    gap: 12px;
    margin-bottom: 22px
}

.v2-prototype .dr-mem {
    border-radius: 16px;
    padding: 18px 20px;
    color: #fff;
    background: linear-gradient(140deg, #17917F, #0D5A50);
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
    min-height: 176px
}

.v2-prototype .dr-mem:after {
    content: "";
    position: absolute;
    right: -50px;
    top: -70px;
    width: 190px;
    height: 190px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .07)
}

.v2-prototype .dr-mem small {
    opacity: .8;
    font-size: 14px;
    position: relative
}

.v2-prototype .dr-mem > b {
    font-size: 16.5px;
    margin-top: 8px;
    position: relative
}

.v2-prototype .dr-mem > span {
    font-size: 14px;
    opacity: .85;
    margin-top: 2px
}

.v2-prototype .dr-mem .dr-pt {
    margin-top: auto;
    padding-top: 12px;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    border-top: 1px solid rgba(255, 255, 255, .22)
}

.v2-prototype .dr-mem .dr-pt b {
    font-size: 22px;
    font-weight: 800;
    letter-spacing: -.02em
}

.v2-prototype .dr-ml {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 14px 16px 8px;
    background: #fff
}

.v2-prototype .dr-ml h5 {
    font-size: 14px;
    color: var(--g2);
    background: var(--g-l);
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    margin-bottom: 4px
}

.v2-prototype .dr-ml a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 2px;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2);
    border-bottom: 1px dashed var(--line2)
}

.v2-prototype .dr-ml a:last-child {
    border-bottom: 0
}

.v2-prototype .dr-ml a:hover {
    color: var(--g)
}

.v2-prototype .dr-ml a .ic {
    width: 14px;
    height: 14px;
    margin-left: auto;
    color: var(--mute)
}

.v2-prototype .dr-ml a em {
    margin-left: auto;
    font-style: normal;
    font-size: 14px;
    color: var(--red);
    font-weight: 800
}

.v2-prototype .dr-ml a em small {
    color: var(--mute);
    font-weight: 500
}

.v2-prototype .dr-ml a.off {
    color: var(--mute);
    cursor: default
}

.v2-prototype .dr-ml a.off .dr-2nd {
    margin-left: auto
}

.v2-prototype .dr-ml .tag {
    height: 20px;
    font-size: 14px;;
    padding: 0 6px
}

.v2-prototype .dr-tool {
    display: flex;
    align-items: center;
    gap: 14px;
    background: var(--bg);
    border-radius: 14px;
    padding: 10px 10px 10px 12px
}

.v2-prototype .dr-tool .search {
    height: 40px;
    width: 260px;
    background: #fff;
    border-radius: 10px;
    cursor: text
}

.v2-prototype .dr-tool .search .ic {
    color: var(--mute)
}

.v2-prototype .dr-sortc .chip {
    height: 32px;
    font-weight: 600
}

.v2-prototype .dr-cnth {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 20px 2px 10px;
    font-size: 14.5px
}

.v2-prototype .dr-list {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .dr-row {
    display: grid;
    grid-template-columns:minmax(0, 1fr) 150px 176px;
    align-items: center;
    gap: 22px;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 18px 16px 18px 22px;
    background: #fff;
    transition: border-color .15s, box-shadow .15s
}

.v2-prototype .dr-row:hover {
    border-color: var(--g);
    box-shadow: 0 0 0 1px var(--g)
}

.v2-prototype .dr-rt {
    min-width: 0;
    padding-right: 22px;
    border-right: 1px solid var(--line2)
}

.v2-prototype .dr-rtt {
    font-size: 16px;
    font-weight: 700;
    display: block;
    margin-top: 2px
}

.v2-prototype .dr-rtx {
    font-size: 14px;
    color: #5C86B8;
    margin-top: 2px
}

.v2-prototype .dr-open {
    font-size: 14px;
    font-weight: 700;
    color: var(--blue)
}

.v2-prototype .dr-meta {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 14px;
    color: var(--sub);
    margin-top: 7px;
    flex-wrap: wrap
}

.v2-prototype .dr-meta em {
    font-style: normal;
    font-weight: 700
}

.v2-prototype .dr-meta .ic {
    margin-right: 2px
}

.v2-prototype .dr-mreg {
    color: #9A7B3E
}

.v2-prototype .dr-st.g {
    color: var(--g)
}

.v2-prototype .dr-st.o {
    color: var(--o2)
}

.v2-prototype .dr-st.k {
    color: var(--mute)
}

.v2-prototype .dr-st.b {
    color: var(--blue)
}

.v2-prototype .dr-st.r {
    color: var(--red)
}

.v2-prototype .dr-rp small {
    display: block;
    font-size: 14px;
    color: var(--sub);
    margin-top: 6px;
    text-align: right
}

.v2-prototype .dr-ra {
    display: flex;
    gap: 6px;
    align-items: center;
    justify-content: flex-end
}

.v2-prototype .dr-more {
    width: 32px;
    padding: 0
}

.v2-prototype .dr-more .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .dr-mh {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 2px 0 6px
}

.v2-prototype .dr-ml2 a span {
    display: inline-flex;
    align-items: center;
    gap: 10px
}

.v2-prototype .dr-ml2 a .ic {
    width: 17px;
    height: 17px;
    color: var(--sub)
}

.v2-prototype .dr-ml2 a small {
    font-size: 14px;
    color: var(--mute);
    font-weight: 500
}

.v2-prototype .dr-ml2 a.r .ic {
    color: var(--red)
}

.v2-prototype .dr-emp {
    text-align: center;
    padding: 4px 0 6px
}

.v2-prototype .dr-emp > span {
    width: 58px;
    height: 58px;
    border-radius: 18px;
    background: var(--g-l);
    color: var(--g);
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .dr-emp > span .ic {
    width: 26px;
    height: 26px
}

.v2-prototype .dr-emp h3 {
    font-size: 18px;
    margin: 14px 0 6px
}

.v2-prototype .dr-emp p {
    color: var(--sub);
    font-size: 14px;
    line-height: 1.6
}

.v2-prototype .dr-edw {
    display: grid;
    grid-template-columns:minmax(0, 1fr) 196px;
    gap: 18px;
    align-items: start
}

.v2-prototype .dr-aside {
    position: sticky;
    top: 96px;
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .dr-rq {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 14px 12px;
    background: #fff
}

.v2-prototype .dr-rq h4 {
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0 4px 8px
}

.v2-prototype .dr-rq h4 .ic {
    width: 16px;
    height: 16px;
    color: var(--g)
}

.v2-prototype .dr-rq h4 em {
    margin-left: auto;
    font-style: normal;
    font-size: 14px;
    color: var(--g);
    font-weight: 800
}

.v2-prototype .dr-rq ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 1px
}

.v2-prototype .dr-rq li {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px;
    border-radius: 8px;
    font-size: 14px;
    color: var(--sub);
    cursor: pointer
}

.v2-prototype .dr-rq li:hover {
    background: var(--bg)
}

.v2-prototype .dr-rq li i {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 1.5px solid #CDD3DA;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    transition: all .2s
}

.v2-prototype .dr-rq li i .ic {
    display:flex;
    width: 11px;
    height: 11px;
    opacity: 0
}

.v2-prototype .dr-rq li.ok {
    color: var(--ink);
    font-weight: 600
}

.v2-prototype .dr-rq li.ok i {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .dr-rq li.ok i .ic {
    opacity: 1
}

.v2-prototype .dr-rq li.sep {
    cursor: default;
    font-size: 14px;;
    color: var(--mute);
    font-weight: 700;
    padding: 10px 6px 2px;
    border-top: 1px solid var(--line2);
    margin-top: 6px;
    border-radius: 0
}

.v2-prototype .dr-rq li.sep:hover {
    background: none
}

.v2-prototype .dr-tip {
    border-radius: 14px;
    background: var(--g-ll);
    padding: 13px 14px;
    font-size: 14px;
    color: var(--ink2);
    line-height: 1.6
}

.v2-prototype .dr-tip b {
    color: var(--g2)
}

.v2-prototype .dr-sec {
    scroll-margin-top: 100px
}

.v2-prototype .dr-sec > h3 small {
    font-size: 14px;
    color: var(--sub);
    font-weight: 500;
    margin-left: 2px
}

.v2-prototype .dr-sec > h3 .req {
    color: var(--red);
    font-style: normal
}

.v2-prototype .dr-no {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 22px;
    border-radius: 7px;
    background: var(--g-l);
    color: var(--g2);
    font-size: 14px;
    font-weight: 800
}

.v2-prototype .dr-it {
    padding: 16px 0;
    border-top: 1px solid var(--line2)
}

.v2-prototype .dr-sec > h3 + .dr-it {
    border-top: 0;
    padding-top: 2px
}

.v2-prototype .dr-it:last-child {
    padding-bottom: 2px
}

.v2-prototype .dr-lb {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 10px;
    color: var(--ink)
}

.v2-prototype .dr-lb > i {
    color: var(--red);
    font-style: normal
}

.v2-prototype .dr-lb .help {
    margin-left: auto;
    font-weight: 500;
    color: var(--mute)
}

.v2-prototype .dr-it.bad .dr-lb, .v2-prototype .dr-sec.bad > h3 {
    color: var(--red)
}

.v2-prototype .dr-tin {
    position: relative
}

.v2-prototype .dr-tin .inp {
    padding-right: 64px;
    height: 48px;
    font-size: 15px
}

.v2-prototype .dr-tin > span {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .dr-msg {
    font-size: 14px;
    color: var(--red);
    margin-top: 6px
}

.v2-prototype .dr-msg:empty {
    display: none
}

.v2-prototype .dr-g4 {
    display: grid;
    grid-template-columns:1fr 1fr .62fr .62fr;
    gap: 8px;
    margin-top: 10px
}

.v2-prototype .dr-ed .chips.err, .v2-prototype .dr-ed .seg.err {
    outline: 1.5px solid var(--red);
    outline-offset: 5px;
    border-radius: 12px
}

.v2-prototype .dr-ed .chips {
    gap: 7px
}

.v2-prototype .chip.dr-etc {
    border-style: dashed;
    border-color: #9FCFC6;
    color: var(--g2);
    font-weight: 600
}

.v2-prototype .chip.dr-etc .ic {
    width: 13px;
    height: 13px
}

.v2-prototype .chip.dr-etc:hover {
    background: var(--g-ll)
}

.v2-prototype .dr-etcin {
    display: flex;
    gap: 6px;
    align-items: center;
    margin-top: 10px;
    max-width: 460px
}

.v2-prototype .dr-etcin .inp {
    flex: 1
}

.v2-prototype .dr-etcin > span {
    flex: none;
    width: 36px;
    text-align: right
}

.v2-prototype .dr-upbox {
    border-radius: 12px;
    background: var(--bg);
    padding: 2px 14px 14px;
    margin-top: 12px
}

.v2-prototype .ckb.err {
    color: var(--red)
}

.v2-prototype .ckb.err input {
    outline: 2px solid var(--red);
    outline-offset: 1px;
    border-radius: 3px
}

.v2-prototype .dr-date {
    position: relative
}

.v2-prototype .dr-date .inp {
    cursor: pointer;
    padding-right: 38px
}

.v2-prototype .dr-date .inp[readonly]:not(:disabled) {
    background: #fff;
    color: var(--ink)
}

.v2-prototype .dr-date .inp:disabled {
    cursor: not-allowed
}

.v2-prototype .dr-date > .ic {
    position: absolute;
    right: 12px;
    top: 13px;
    color: var(--sub);
    pointer-events: none
}

.v2-prototype .dr-calpop {
    position: absolute;
    left: 0;
    top: calc(100% + 6px);
    z-index: 30;
    width: 300px;
    box-shadow: var(--sh2);
    border-radius: 14px;
    background: #fff
}

.v2-prototype .pbox .dr-calpop {
    position: static;
    width: auto;
    box-shadow: none;
    margin-top: 8px
}

.v2-prototype .dr-setbtn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 190px;
    height: 44px;
    padding: 0 22px;
    border: 1.5px dashed #A9D3CB;
    border-radius: 12px;
    background: var(--g-ll);
    color: var(--g2);
    font-weight: 700;
    font-size: 14px;
    transition: all .15s
}

.v2-prototype .dr-setbtn:hover {
    border-color: var(--g);
    background: var(--g-l)
}

.v2-prototype .dr-setbtn[disabled] {
    opacity: .5;
    cursor: not-allowed;
    background: var(--bg);
    border-color: var(--line);
    color: var(--mute)
}

.v2-prototype .dr-setbtn.err {
    border-color: var(--red);
    background: #FFF6F6;
    color: var(--red)
}

.v2-prototype .dr-setbtn .ic {
    width: 16px;
    height: 16px
}

.v2-prototype .dr-sum {
    position: relative;
    margin-top: 10px;
    border-radius: 12px;
    background: var(--g-ll);
    border: 1px solid #CFE5DF;
    padding: 12px 44px 12px 14px;
    font-size: 14px;
    color: var(--ink2);
    line-height: 1.6
}

.v2-prototype .dr-sum.pink {
    background: #FDF2F4;
    border-color: #F5D0D8
}

.v2-prototype .dr-sum > .dr-x {
    position: absolute;
    right: 10px;
    top: 10px
}

.v2-prototype .dr-sumh {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap
}

.v2-prototype .dr-x {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 1px solid var(--line);
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--sub);
    flex: none;
    padding: 0;
    cursor: pointer
}

.v2-prototype .dr-x .ic {
    width: 12px;
    height: 12px
}

.v2-prototype .dr-x:hover {
    color: var(--red);
    border-color: #f3c5c7
}

.v2-prototype .dr-x.dis {
    opacity: .35;
    cursor: not-allowed
}

.v2-prototype .dr-rchips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px
}

.v2-prototype .dr-rchips:not(:empty) {
    margin-top: 10px
}

.v2-prototype .dr-rc, .v2-prototype .dr-dc {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 32px;
    padding: 0 5px 0 11px;
    border-radius: 999px;
    background: var(--g-l);
    color: var(--g2);
    font-weight: 600;
    font-size: 13px
}

.v2-prototype .dr-rc .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .dr-rc button, .v2-prototype .dr-dc button {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 0;
    background: #fff;
    color: var(--sub);
    font-size: 14px;;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0
}

.v2-prototype .dr-rc button:hover, .v2-prototype .dr-dc button:hover {
    color: var(--red)
}

.v2-prototype [data-sum="discount"] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px
}

.v2-prototype [data-sum="discount"]:not(:empty) {
    margin-top: 10px
}

.v2-prototype .dr-dc {
    background: var(--o-l);
    color: #B25F00
}

.v2-prototype .dr-dc b {
    color: var(--o2)
}

.v2-prototype .dr-pi {
    display: grid;
    grid-template-columns:130px minmax(0, 1fr) auto 24px;
    gap: 12px;
    align-items: center;
    padding: 8px 0 0;
    margin-top: 8px;
    border-top: 1px dashed #C6E0D9
}

.v2-prototype .dr-sum .dr-pi:last-child {
    padding-bottom: 0
}

.v2-prototype .dr-sum > .dr-pi .dr-x {
    position: static
}

.v2-prototype .dr-pi em {
    font-style: normal;
    color: var(--sub);
    font-size: 14px
}

.v2-prototype .dr-pi em b {
    color: var(--ink);
    font-size: 14px
}

.v2-prototype .dr-ct small {
    display: block;
    font-size: 14px;
    color: var(--sub);
    font-weight: 700
}

.v2-prototype .dr-ctl {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 12px
}

.v2-prototype .dr-ctl > span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--ink2)
}

.v2-prototype .dr-ctl > span .ic {
    width: 14px;
    height: 14px;
    color: var(--g)
}

.v2-prototype .dr-ctl > span em {
    font-style: normal;
    font-size: 14px;;
    font-weight: 700;
    color: var(--g2);
    background: #fff;
    border-radius: 4px;
    padding: 0 4px
}

.v2-prototype .dr-ctl .tag {
    height: 20px;
    font-size: 14px;
}

.v2-prototype .dr-scl {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px
}

.v2-prototype .dr-scl span {
    background: #fff;
    border-radius: 8px;
    padding: 3px 9px;
    font-size: 14px
}

.v2-prototype .dr-pt2 {
    font-size: 14px;
    color: var(--ink)
}

.v2-prototype .dr-pre {
    white-space: pre-line;
    margin-top: 4px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.v2-prototype .dr-dls {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px
}

.v2-prototype .dr-dls a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #fff;
    border-radius: 8px;
    padding: 4px 10px;
    font-size: 14px;
    color: var(--blue)
}

.v2-prototype .dr-dls a .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .dr-nis {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 6px
}

.v2-prototype .dr-nis span {
    background: #fff;
    border: 1px solid #F5D0D8;
    color: #B4233A;
    border-radius: 999px;
    padding: 2px 10px;
    font-size: 14px;
    font-weight: 600
}

.v2-prototype .dr-buy {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 12px
}

.v2-prototype .dr-bc {
    border: 1.5px solid var(--line);
    border-radius: 16px;
    padding: 14px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: #fff;
    transition: all .15s;
    min-width: 0
}

.v2-prototype .dr-bc:hover {
    border-color: #BFD9D3
}

.v2-prototype .dr-bc.on {
    border-color: var(--g);
    background: var(--g-ll);
    box-shadow: 0 0 0 3px rgba(18, 122, 108, .08)
}

.v2-prototype .dr-bc-h {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px
}

.v2-prototype .dr-bc-h input {
    width: 17px;
    height: 17px;
    accent-color: var(--g);
    margin: 0;
    flex: none
}

.v2-prototype .dr-bc-h b {
    line-height: 1.35
}

.v2-prototype .dr-bc-art {
    height: 100px;
    border-radius: 12px;
    background: #EEF1F4;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 6px;
    filter: grayscale(1);
    opacity: .55;
    transition: all .2s
}

.v2-prototype .dr-bc.on .dr-bc-art {
    background: #fff;
    filter: none;
    opacity: 1
}

.v2-prototype .dr-bc > p {
    font-size: 14px;
    color: var(--sub);
    font-weight: 700
}

.v2-prototype .dr-bc.on > p {
    color: var(--g2)
}

.v2-prototype .dr-art-ic {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    box-shadow: 0 6px 14px rgba(16, 24, 40, .16)
}

.v2-prototype .dr-art-ic.b {
    background: linear-gradient(135deg, #5B9BF3, #2459B5)
}

.v2-prototype .dr-art-ic.r {
    background: linear-gradient(135deg, #F37479, #C2272D)
}

.v2-prototype .dr-art-ic .ic {
    width: 24px;
    height: 24px
}

.v2-prototype .dr-bc-art em {
    font-style: normal;
    font-size: 14px;
    color: var(--sub);
    font-weight: 700
}

.v2-prototype .dr-url {
    display: flex;
    gap: 6px
}

.v2-prototype .dr-url .inp {
    min-width: 0
}

.v2-prototype .dr-sub {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 700;
    color: var(--ink2);
    margin: 12px 0 8px
}

.v2-prototype .dr-sub .ic {
    width: 15px;
    height: 15px;
    color: var(--sub)
}

.v2-prototype .dr-drop-sm {
    padding: 12px 14px;
    font-size: 14px
}

.v2-prototype .drop.dis {
    opacity: .55;
    cursor: not-allowed;
    background: var(--bg)
}

.v2-prototype .dr-2box {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 8px;
    margin-top: 10px
}

.v2-prototype .dr-2w {
    position: relative
}

.v2-prototype .dr-2w > .dr-2nd {
    position: absolute;
    right: 36px;
    top: 50%;
    transform: translateY(-50%)
}

.v2-prototype .dr-2w > .drop + .dr-2nd {
    right: 12px
}

.v2-prototype .dr-banc {
    display: flex;
    align-items: stretch;
    border: 1px solid var(--line);
    border-radius: 12px;
    overflow: hidden;
    background: #fff
}

.v2-prototype .dr-banc > div {
    padding: 6px 18px;
    border-right: 1px solid var(--line2);
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.v2-prototype .dr-banc > div:last-child {
    border-right: 0
}

.v2-prototype .dr-banc small {
    display: block;
    font-size: 14px;;
    color: var(--sub);
    font-weight: 600
}

.v2-prototype .dr-banc b {
    font-size: 17px;
    font-weight: 800;
    line-height: 1.3
}

.v2-prototype .dr-banx {
    padding: 0 10px !important;
    background: var(--bg)
}

.v2-prototype .dr-doc {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 16px;
    background: #FBFCFD
}

.v2-prototype .dr-doc + .dr-doc {
    margin-top: 10px
}

.v2-prototype .dr-doc-h {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px
}

.v2-prototype .dr-doc-h .req {
    color: var(--red);
    font-style: normal
}

.v2-prototype .dr-warn {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--red);
    font-size: 14px;
    margin: 6px 0 10px;
    font-weight: 600
}

.v2-prototype .dr-warn .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .dr-docrow {
    display: grid;
    grid-template-columns:240px minmax(0, 1fr);
    gap: 8px;
    align-items: stretch
}

.v2-prototype .dr-docrow .drop {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 44px;
    padding: 0 14px;
    white-space: nowrap;
    overflow: hidden
}

.v2-prototype select.inp.dr-loadsel {
    background-color: var(--g);
    color: #fff;
    border-color: var(--g);
    font-weight: 600;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5l3 3 3-3' fill='none' stroke='%23fff' stroke-width='1.5'/%3E%3C/svg%3E")
}

.v2-prototype select.inp.dr-loadsel option {
    background: #fff;
    color: var(--ink)
}

.v2-prototype .dr-docf:not(:empty) {
    margin-top: 8px
}

.v2-prototype .dr-docck {
    display: flex;
    gap: 22px;
    margin-top: 12px
}

.v2-prototype .dr-priv {
    gap: 14px
}

.v2-prototype .dr-pv {
    border: 1px solid var(--line2);
    border-radius: 14px;
    padding: 14px;
    background: #FBFCFD
}

.v2-prototype .dr-pv .dr-setbtn {
    width: 100%
}

.v2-prototype .dr-same {
    display: flex;
    gap: 16px;
    margin-top: 10px;
    flex-wrap: wrap
}

.v2-prototype .dr-agree {
    border: 1.5px solid var(--line);
    border-radius: 16px;
    padding: 18px 20px;
    background: #FFFCF5;
    margin-bottom: 4px;
    scroll-margin-top: 100px
}

.v2-prototype .dr-agree .ckb {
    font-size: 14.5px
}

.v2-prototype .dr-agree .req {
    color: var(--red);
    font-style: normal
}

.v2-prototype .dr-agree p {
    font-size: 14px;
    color: var(--sub);
    margin: 6px 0 0 24px
}

.v2-prototype .dr-agree.bad {
    border-color: var(--red)
}

.v2-prototype .dr-info {
    display: flex;
    gap: 10px;
    margin-top: 10px;
    background: var(--bg);
    border-radius: 12px;
    padding: 12px 14px;
    font-size: 14px;
    color: var(--sub);
    line-height: 1.6
}

.v2-prototype .dr-info .ic {
    color: var(--g);
    margin-top: 2px
}

.v2-prototype .dr-info b {
    display: block;
    color: var(--ink2)
}

.v2-prototype .savebar .btn.pri.dr-lock {
    background: #B9C3CC;
    border-color: #B9C3CC
}

.v2-prototype .savebar [data-ratetxt] b.g {
    color: var(--g)
}

.v2-prototype .savebar [data-ratetxt] b.r {
    color: var(--red)
}

.v2-prototype .dr-dd {
    position: relative;
    min-width: 0
}

.v2-prototype .dr-ddb {
    width: 100%;
    height: 44px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 12px 0 13px;
    font-size: 14px;
    text-align: left;
    cursor: pointer
}

.v2-prototype .dr-ddb > span {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.v2-prototype .dr-ddb .ic {
    width: 14px;
    height: 14px;
    color: var(--sub)
}

.v2-prototype .dr-dd.err .dr-ddb {
    border-color: var(--red);
    box-shadow: 0 0 0 3px rgba(229, 72, 77, .1)
}

.v2-prototype .dr-ddm {
    margin-top: 6px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
    padding: 5px;
    box-shadow: var(--sh)
}

.v2-prototype .dr-ddi {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 14px;
    cursor: pointer
}

.v2-prototype .dr-ddi:hover {
    background: var(--g-ll)
}

.v2-prototype .dr-ddi input {
    accent-color: var(--g);
    width: 16px;
    height: 16px;
    margin: 0
}

.v2-prototype .dr-ddi > span {
    flex: 1;
    min-width: 0
}

.v2-prototype .dr-ddi button {
    border: 0;
    background: none;
    color: var(--mute);
    width: 24px;
    height: 24px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0
}

.v2-prototype .dr-ddi button .ic {
    width: 13px;
    height: 13px
}

.v2-prototype .dr-ddi button:hover {
    color: var(--red);
    background: #fff
}

.v2-prototype .dr-dd.dr-load > .dr-ddb {
    background: var(--g);
    border-color: var(--g);
    color: #fff;
    font-weight: 600
}

.v2-prototype .dr-dd.dr-load > .dr-ddb .ic {
    color: #fff
}

.v2-prototype .dr-blk {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 14px;
    margin-top: 12px;
    background: #fff
}

.v2-prototype .dr-blk.err {
    border-color: var(--red);
    box-shadow: 0 0 0 3px rgba(229, 72, 77, .08)
}

.v2-prototype .dr-blk-h {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .dr-blk-h b {
    color: var(--g2);
    font-size: 14px;
    background: var(--g-l);
    padding: 2px 9px;
    border-radius: 6px
}

.v2-prototype .dr-blk-in {
    background: var(--bg);
    border-radius: 12px;
    padding: 12px;
    margin-top: 10px;
    display: flex;
    flex-direction: column;
    gap: 8px
}

.v2-prototype .dr-blk-in .dr-sub {
    margin: 6px 0 0
}

.v2-prototype .dr-unit {
    position: relative
}

.v2-prototype .dr-unit .inp {
    padding-right: 38px
}

.v2-prototype .dr-unit > span {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    color: var(--sub);
    font-weight: 700
}

.v2-prototype .dr-unit > span.pre {
    left: 14px;
    right: auto
}

.v2-prototype .dr-unit.pre .inp {
    padding-left: 50px;
    text-align: right
}

.v2-prototype .dr-addrow {
    display: flex;
    justify-content: flex-end;
    margin-top: 12px
}

.v2-prototype .dr-cf {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 10px
}

.v2-prototype .dr-cfr {
    display: flex;
    align-items: flex-start;
    gap: 10px
}

.v2-prototype .dr-cfr > input[type=checkbox] {
    width: 18px;
    height: 18px;
    accent-color: var(--g);
    margin: 13px 0 0;
    flex: none
}

.v2-prototype .dr-cfr > .inp, .v2-prototype .dr-cfr > .dr-dd {
    flex: 1;
    min-width: 0
}

.v2-prototype .dr-fixed {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: var(--bg);
    color: var(--ink2);
    font-weight: 600
}

.v2-prototype .dr-fixed span {
    display: inline-flex;
    align-items: center;
    gap: 3px
}

.v2-prototype .dr-fixed .ic {
    width: 13px;
    height: 13px
}

.v2-prototype .dr-keep {
    margin-top: 12px
}

.v2-prototype .dr-cntw {
    position: relative;
    flex: 1;
    min-width: 0
}

.v2-prototype .dr-cntw .inp {
    padding-right: 52px
}

.v2-prototype .dr-cntw [data-c] {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .dr-nil {
    display: flex;
    flex-direction: column;
    gap: 6px
}

.v2-prototype .dr-nir {
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .dr-nir > i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #E59AA8;
    flex: none
}

.v2-prototype .dr-scp {
    margin-top: 14px
}

.v2-prototype .dr-scp .cal.err {
    border-color: var(--red)
}

.v2-prototype .dr-scrows {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 10px
}

.v2-prototype .dr-scr {
    display: grid;
    grid-template-columns:6px 78px minmax(0, 1fr) 24px;
    gap: 10px;
    align-items: center
}

.v2-prototype .dr-scr > i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--g)
}

.v2-prototype .dr-scr b {
    font-size: 13.5px
}

.v2-prototype .dr-scnone {
    padding: 4px 2px
}

.v2-prototype .dr-pvh {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 16px;
    border-radius: 14px;
    background: linear-gradient(160deg, #F4F6FA, #EEF1F6)
}

.v2-prototype .dr-pvt {
    font-size: 19px;
    margin: 4px 0;
    line-height: 1.35
}

.v2-prototype .dr-pvg {
    display: grid;
    grid-template-columns:minmax(0, 1fr) 250px;
    gap: 14px;
    margin-top: 14px;
    align-items: start
}

.v2-prototype .dr-pvg table.kv th {
    width: 118px
}

.v2-prototype .dr-pvp {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 14px;
    position: sticky;
    top: 0
}

.v2-prototype .dr-pvp > small {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 14px;
    color: var(--sub);
    font-weight: 700
}

.v2-prototype .dr-pvpi {
    padding: 10px 0;
    border-bottom: 1px solid var(--line2);
    display: flex;
    flex-direction: column;
    gap: 2px
}

.v2-prototype .dr-pvpi s {
    color: var(--mute);
    font-size: 14px
}

.v2-prototype .dr-pvpi em {
    font-style: normal;
    color: var(--red);
    font-weight: 800;
    font-size: 13px
}

.v2-prototype .dr-pvpi > div > b {
    font-size: 17px
}

.v2-prototype .dr-pvbuy {
    margin-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 6px
}

.v2-prototype .dr-done {
    display: grid;
    grid-template-columns:minmax(0, 1.35fr) minmax(0, 1fr);
    gap: 16px;
    align-items: start
}

.v2-prototype .dr-dcard {
    border-radius: 22px;
    padding: 30px 30px 26px;
    color: #fff;
    background: linear-gradient(160deg, #17917F 0%, #0E6A5E 55%, #0B4E45 100%);
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 18px;
    box-shadow: 0 18px 40px rgba(14, 100, 87, .25)
}

.v2-prototype .dr-dcard:before {
    content: "";
    position: absolute;
    right: -90px;
    top: -90px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .06)
}

.v2-prototype .dr-dlb {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 700;
    background: rgba(255, 255, 255, .14);
    padding: 5px 12px;
    border-radius: 999px
}

.v2-prototype .dr-dlb .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .dr-dai {
    display: flex;
    align-items: center;
    gap: 12px;
    position: relative
}

.v2-prototype .dr-dai i {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #fff;
    color: var(--g2);
    font-style: normal;
    font-weight: 900;
    font-size: 17px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .dr-dai h2 {
    font-size: 27px;
    font-weight: 800;
    letter-spacing: -.03em
}

.v2-prototype .dr-dai h2 span {
    color: #9FE3D6;
    margin-left: 4px;
    letter-spacing: .05em
}

.v2-prototype .dr-dmain {
    display: flex;
    align-items: center;
    gap: 16px;
    position: relative
}

.v2-prototype .dr-dmain h3 {
    font-size: 20px;
    line-height: 1.4;
    font-weight: 800
}

.v2-prototype .dr-dmain p {
    font-size: 14px;
    opacity: .85;
    margin-top: 8px;
    line-height: 1.6
}

.v2-prototype .dr-dmain p.s {
    font-size: 14px;
    opacity: .7;
    margin-top: 6px
}

.v2-prototype .dr-dalarm {
    margin-left: auto;
    width: 86px;
    height: 86px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, .35);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none;
    animation: drRing 2.4s ease-in-out infinite
}

.v2-prototype .dr-dalarm .ic {
    width: 44px;
    height: 44px
}

@keyframes drRing {
    0%, 100% {
        transform: rotate(0)
    }
    6% {
        transform: rotate(-12deg)
    }
    12% {
        transform: rotate(10deg)
    }
    18% {
        transform: rotate(-6deg)
    }
    24% {
        transform: rotate(0)
    }
}

.v2-prototype .dr-dcard .donebox {
    padding: 14px 16px
}

.v2-prototype .dr-dst {
    font-size: 14px;
    font-weight: 700;
    background: #fff;
    color: var(--g2);
    border-radius: 6px;
    padding: 2px 8px;
    flex: none
}

.v2-prototype .dr-dmeta {
    font-size: 14px;
    opacity: .75;
    margin-top: 4px
}

.v2-prototype .dr-dgo {
    background: #fff;
    color: var(--g2);
    border-color: #fff
}

.v2-prototype .dr-dgo:hover {
    background: #F0FAF7
}

.v2-prototype .dr-dbtns {
    display: grid;
    grid-template-columns:1fr 2fr;
    gap: 8px
}

.v2-prototype .dr-dbtns .btn {
    background: rgba(255, 255, 255, .1);
    border-color: rgba(255, 255, 255, .35);
    color: #fff
}

.v2-prototype .dr-dbtns .btn:hover {
    background: rgba(255, 255, 255, .18)
}

.v2-prototype .dr-dbtns .dr-dclose {
    background: var(--ink);
    border-color: var(--ink)
}

.v2-prototype .dr-next {
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 18px;
    background: #fff
}

.v2-prototype .dr-next h4 {
    font-size: 15px;
    margin: 0 2px 10px
}

.v2-prototype .dr-nx {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 10px;
    border-radius: 12px;
    transition: background .15s
}

.v2-prototype .dr-nx:hover {
    background: var(--g-ll)
}

.v2-prototype .dr-nx > span {
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: var(--g-l);
    color: var(--g);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .dr-nx > div {
    flex: 1;
    min-width: 0
}

.v2-prototype .dr-nx b {
    display: block;
    font-size: 14px
}

.v2-prototype .dr-nx small {
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .dr-nx > .ic {
    color: var(--mute)
}

.v2-prototype .dr-att {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 10px
}

.v2-prototype .dr-ai {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 34px;
    padding: 0 12px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2);
    cursor: pointer
}

.v2-prototype .dr-ai:hover {
    border-color: var(--g);
    color: var(--g)
}

.v2-prototype .dr-ai .ic {
    width: 16px;
    height: 16px
}

.v2-prototype .dr-ai > b {
    font-size: 15px;
    width: 16px;
    text-align: center
}

.v2-prototype .dr-attin {
    display: flex;
    gap: 6px;
    margin-top: 8px;
    max-width: 460px
}

.v2-prototype .dr-files {
    display: flex;
    flex-wrap: wrap;
    gap: 8px
}

.v2-prototype .dr-files:not(:empty) {
    margin-top: 10px
}

.v2-prototype .dr-fc {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 6px 6px 6px;
    border: 1px solid var(--line);
    border-radius: 10px;
    font-size: 14px;
    background: #fff;
    max-width: 280px
}

.v2-prototype .dr-fc > i {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--o-l);
    color: var(--o2);
    flex: none
}

.v2-prototype .dr-fc > i.img {
    background: var(--blue-l);
    color: var(--blue)
}

.v2-prototype .dr-fc > i.link {
    background: var(--g-l);
    color: var(--g)
}

.v2-prototype .dr-fc > i.tag {
    background: var(--pur-l);
    color: var(--pur)
}

.v2-prototype .dr-fc > i .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .dr-fc button {
    border: 0;
    background: var(--bg);
    width: 22px;
    height: 22px;
    border-radius: 50%;
    font-size: 14px;
    color: var(--sub);
    padding: 0;
    flex: none
}

.v2-prototype .dr-fc button:hover {
    color: var(--red)
}

.v2-prototype .ed.err {
    border-color: var(--red) !important;
    box-shadow: 0 0 0 3px rgba(229, 72, 77, .1)
}

.v2-prototype .dr-tgs {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 8px
}

.v2-prototype .dr-tgs span {
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    color: var(--ink)
}

.v2-prototype .dr-tgs .ic {
    width: 14px;
    height: 14px;
    color: var(--g)
}

.v2-prototype .dr-tgtop {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: var(--bg);
    border-radius: 12px
}

.v2-prototype .dr-tgl {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 12px
}

.v2-prototype .dr-tgc {
    display: block;
    border: 1.5px solid var(--line);
    border-radius: 14px;
    padding: 12px 14px;
    cursor: pointer;
    transition: all .15s
}

.v2-prototype .dr-tgc:hover {
    border-color: #BFD9D3
}

.v2-prototype .dr-tgc.on {
    border-color: var(--g);
    background: var(--g-ll)
}

.v2-prototype .dr-tgh {
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .dr-tgh em {
    font-style: normal;
    color: #D9480F
}

.v2-prototype .dr-rdots {
    display: flex;
    padding-left: 4px
}

.v2-prototype .dr-rdots i {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    font-style: normal;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
    margin-left: -5px
}

.v2-prototype .dr-tgb {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 8px 0
}

.v2-prototype .dr-tgb b {
    flex: 1;
    font-size: 14.5px;
    line-height: 1.4
}

.v2-prototype .dr-tgb input {
    width: 20px;
    height: 20px;
    accent-color: var(--g);
    margin: 0;
    flex: none
}

.v2-prototype .dr-npv h3 {
    font-size: 19px;
    margin: 12px 0 10px
}

.v2-prototype .dr-npb {
    background: var(--bg);
    border-radius: 12px;
    padding: 14px 16px;
    font-size: 14px;
    line-height: 1.7;
    white-space: pre-line
}

.v2-prototype .dr-npa {
    margin-top: 14px;
    border-top: 1px solid var(--line2);
    padding-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 6px
}

.v2-prototype .dr-npa small {
    font-size: 14px;
    color: var(--sub);
    font-weight: 700
}

.v2-prototype .dr-npa > div {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    min-width: 0
}

.v2-prototype .dr-2box {
    align-items: start
}

.v2-prototype .dr-2box .drop {
    height: 44px;
    padding: 0 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px
}





.v2-prototype .cm-seg {
    margin-bottom: 18px
}

.v2-prototype .cm-seg > a {
    min-width: 92px;
    justify-content: center
}

.v2-prototype .cm-filter {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    flex-wrap: wrap
}

.v2-prototype .cm-ym {
    display: inline-flex;
    align-items: center;
    height: 38px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
    padding: 0 3px
}

.v2-prototype .cm-ym button {
    width: 30px;
    height: 30px;
    border: 0;
    background: none;
    border-radius: 7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--sub)
}

.v2-prototype .cm-ym button:hover {
    background: var(--bg);
    color: var(--g)
}

.v2-prototype .cm-ym button[disabled] {
    opacity: .3;
    pointer-events: none
}

.v2-prototype .cm-ym button .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .cm-ym b {
    font-size: 14.5px;
    font-weight: 700;
    padding: 0 4px;
    min-width: 58px;
    text-align: center
}

.v2-prototype .cm-ym b u {
    text-decoration: none;
    color: var(--g);
    font-variant-numeric: tabular-nums
}

.v2-prototype .cm-filter .btn .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .cm-cnt-line {
    font-size: 14px;
    color: var(--sub);
    margin: 0 0 12px
}

.v2-prototype .cm-cnt-line b {
    color: var(--ink)
}

.v2-prototype .cm-cnt-line em {
    font-style: normal;
    color: var(--g);
    font-weight: 700;
    margin-left: 2px
}

.v2-prototype .cm-grid3 {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 14px
}

.v2-prototype .cm-grid3 > .empty {
    grid-column: 1/-1
}

.v2-prototype .cm-fc, .v2-prototype .cm-lc {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 16px 18px 14px;
    display: flex;
    flex-direction: column;
    cursor: pointer;
    transition: border-color .15s, box-shadow .15s, transform .15s;
    min-width: 0
}

.v2-prototype .cm-fc:hover, .v2-prototype .cm-lc:hover {
    border-color: #cfd6dd;
    box-shadow: var(--sh);
    transform: translateY(-2px)
}

.v2-prototype .cm-fc-top {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px
}

.v2-prototype .cm-no {
    color: var(--sub);
    font-variant-numeric: tabular-nums
}

.v2-prototype .cm-date {
    color: var(--mute);
    font-variant-numeric: tabular-nums
}

.v2-prototype .cm-fc h4, .v2-prototype .cm-lc h4 {
    font-size: 15.5px;
    font-weight: 700;
    margin-top: 12px;
    letter-spacing: -.02em
}

.v2-prototype .cm-fc p {
    font-size: 14px;
    color: var(--sub);
    margin-top: 4px
}

.v2-prototype .cm-file {
    display: flex;
    align-items: center;
    gap: 7px;
    height: 36px;
    padding: 0 10px;
    border-radius: 9px;
    background: var(--bg);
    border: 1px solid transparent;
    font-size: 14px;
    color: var(--blue);
    margin-top: 12px;
    width: 100%;
    text-align: left;
    min-width: 0;
    transition: background .15s, border-color .15s
}

.v2-prototype .cm-file:hover {
    background: var(--blue-l);
    border-color: #cfdcf5
}

.v2-prototype .cm-file .ic {
    width: 15px;
    height: 15px;
    flex: none
}

.v2-prototype .cm-file > .ic:first-child {
    color: var(--sub)
}

.v2-prototype .cm-file > .ic:last-child {
    margin-left: auto;
    color: var(--sub)
}

.v2-prototype .cm-file span {
    text-decoration: underline;
    min-width: 0
}

.v2-prototype .cm-file em {
    font-style: normal;
    color: var(--mute);
    flex: none
}

.v2-prototype .cm-file.sm {
    height: 30px;
    width: auto;
    display: inline-flex;
    margin-top: 8px;
    padding: 0 10px
}

.v2-prototype .cm-fc-bot {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--line2);
    font-size: 14px
}

.v2-prototype .cm-cnt {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--g);
    font-weight: 600;
    font-variant-numeric: tabular-nums
}

.v2-prototype .cm-cnt .ic {
    width: 15px;
    height: 15px;
    color: var(--sub)
}

.v2-prototype .cm-heart {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border: 0;
    background: none;
    padding: 3px 6px 3px 3px;
    border-radius: 7px;
    font-size: 14px;
    font-weight: 600;
    color: var(--g);
    font-variant-numeric: tabular-nums
}

.v2-prototype .cm-heart:hover {
    background: var(--red-l)
}

.v2-prototype .cm-heart .ic {
    width: 17px;
    height: 17px;
    color: #B9C0C8;
    transition: transform .2s, color .15s
}

.v2-prototype .cm-heart.on .ic {
    color: var(--red);
    fill: var(--red);
    animation: cmPop .35s
}

@keyframes cmPop {
    40% {
        transform: scale(1.3)
    }
}

.v2-prototype .cm-more-w {
    display: flex;
    justify-content: center
}

.v2-prototype .cm-more {
    margin-top: 18px;
    height: 42px;
    padding: 0 22px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #fff;
    font-weight: 600;
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--ink2)
}

.v2-prototype .cm-more:hover {
    border-color: var(--g);
    color: var(--g)
}

.v2-prototype .cm-more em {
    font-style: normal;
    color: var(--mute);
    font-size: 14px;
    font-weight: 500
}

.v2-prototype .cm-more .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .cm-thumb {
    position: relative;
    border-radius: 12px;
    height: 132px;
    margin-top: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    overflow: hidden
}

.v2-prototype .cm-thumb:before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 85% 15%, rgba(255, 255, 255, .18), transparent 45%), repeating-linear-gradient(135deg, rgba(255, 255, 255, .04) 0 12px, transparent 12px 24px)
}

.v2-prototype .cm-thumb span {
    position: relative;
    font-size: 19px;
    font-weight: 800;
    letter-spacing: -.02em
}

.v2-prototype .cm-thumb .ic {
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 26px;
    height: 26px;
    padding: 5px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .9);
    color: var(--ink)
}

.v2-prototype .cm-lc h4 {
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-color: #c9cfd6
}

.v2-prototype .cm-lc p {
    font-size: 14px;
    color: var(--sub);
    margin-top: 6px;
    line-height: 1.55;
    min-height: 39px
}

.v2-prototype .cm-bh {
    display: flex;
    align-items: center;
    height: 56px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 14px;
    box-shadow: var(--sh);
    padding: 0 10px;
    margin-bottom: 14px
}

.v2-prototype .cm-bh b {
    flex: 1;
    text-align: center;
    font-size: 16px;
    font-weight: 800
}

.v2-prototype .cm-bh > span {
    width: 38px
}

.v2-prototype .cm-bh-b {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .cm-bh-b:hover {
    background: var(--bg);
    color: var(--g)
}

.v2-prototype .cm-bh-b .ic {
    width: 22px;
    height: 22px
}

.v2-prototype .cm-doc {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 28px 32px 24px
}

.v2-prototype .cm-doc-h {
    padding-bottom: 18px;
    border-bottom: 1px solid var(--line)
}

.v2-prototype .cm-doc-t {
    display: flex;
    align-items: baseline;
    gap: 14px;
    flex-wrap: wrap
}

.v2-prototype .cm-doc-t h2 {
    font-size: 22px;
    font-weight: 800;
    color: var(--g2);
    line-height: 1.4;
    letter-spacing: -.03em;
    flex: 1;
    min-width: 0;
    word-break: break-all
}

.v2-prototype .cm-no-b {
    font-size: 14px;
    font-weight: 800;
    color: var(--g);
    font-variant-numeric: tabular-nums;
    flex: none
}

.v2-prototype .cm-doc-m {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    color: var(--mute);
    margin-top: 8px;
    font-variant-numeric: tabular-nums
}

.v2-prototype .cm-doc-m .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .cm-vw {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-left: 12px
}

.v2-prototype .cm-doc-b {
    padding: 22px 0 8px
}

.v2-prototype .cm-body {
    font-size: 15px;
    line-height: 1.85;
    color: var(--ink2);
    margin-top: 16px;
    white-space: normal
}

.v2-prototype .cm-att {
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid var(--line2)
}

.v2-prototype .cm-att-h {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 2px
}

.v2-prototype .cm-att-h .ic {
    width: 16px;
    height: 16px;
    color: var(--sub)
}

.v2-prototype .cm-att-h b {
    color: var(--g)
}

.v2-prototype .cm-att-l {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 8px
}

.v2-prototype .cm-src {
    margin-top: 18px
}

.v2-prototype .cm-src-h {
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 8px
}

.v2-prototype .cm-src-c {
    display: flex;
    gap: 16px;
    align-items: center;
    border: 1px solid var(--line);
    background: var(--bg);
    border-radius: 14px;
    padding: 12px;
    max-width: 560px;
    transition: border-color .15s, background .15s
}

.v2-prototype .cm-src-c:hover {
    border-color: var(--g);
    background: var(--g-ll)
}

.v2-prototype .cm-src-c .cm-thumb {
    width: 180px;
    height: 96px;
    margin: 0;
    flex: none
}

.v2-prototype .cm-src-c .cm-thumb span {
    font-size: 15px
}

.v2-prototype .cm-src-i {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0
}

.v2-prototype .cm-src-i b {
    font-size: 14.5px
}

.v2-prototype .cm-src-i .ulink {
    font-size: 13px
}

.v2-prototype .cm-src-i small {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .cm-src-i small .ic {
    width: 13px;
    height: 13px
}

.v2-prototype .cm-doc-f {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid var(--line2);
    font-size: 13px
}

.v2-prototype .btn.cm-listbtn {
    margin-top: 18px
}

.v2-prototype .cm-ptbar {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 18px
}

.v2-prototype .search.cm-ptsrch {
    width: 280px;
    height: 42px
}

.v2-prototype .cm-ptsrch .ic {
    color: var(--mute)
}

.v2-prototype .cm-ptgrid {
    display: grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap: 12px
}

.v2-prototype .cm-pt {
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #fff;
    padding: 14px 14px 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    transition: border-color .15s, box-shadow .15s, transform .15s;
    min-width: 0
}

.v2-prototype .cm-pt:hover {
    border-color: var(--c, #cfd6dd);
    box-shadow: var(--sh);
    transform: translateY(-2px)
}

.v2-prototype .cm-pt-l {
    height: 58px;
    width: 100%;
    border-radius: 10px;
    background: var(--bg);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 10px;
    min-width: 0
}

.v2-prototype .cm-pt-l i {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: var(--c);
    color: #fff;
    font-style: normal;
    font-weight: 800;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .cm-pt-l b {
    color: var(--c);
    font-size: 15px;
    font-weight: 800;
    letter-spacing: -.04em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.v2-prototype .cm-pt > span {
    font-size: 14px;
    color: var(--sub);
    font-weight: 600
}

.v2-prototype .cm-chips {
    margin: 0 0 14px;
    gap: 6px
}

.v2-prototype .cm-chips .chip {
    height: 32px;
    padding: 0 14px;
    font-weight: 600
}

.v2-prototype table.t.cm-tbl {
    border-top: 2px solid var(--ink);
    table-layout: fixed
}

.v2-prototype table.t.cm-tbl th {
    background: #fff;
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype table.t.cm-tbl .tc {
    text-align: center
}

.v2-prototype table.t.cm-tbl .tr {
    text-align: right
}

.v2-prototype table.t.cm-tbl tbody tr {
    cursor: pointer
}

.v2-prototype table.t.cm-tbl td {
    height: 56px;
    padding: 8px 12px
}

.v2-prototype .cm-tt b {
    font-size: 14.5px;
    font-weight: 600;
    min-width: 0
}

.v2-prototype .cm-tbl tr:hover .cm-tt b {
    color: var(--g)
}

.v2-prototype .cm-cat {
    flex: none;
    font-size: 14px;
    font-weight: 600;
    color: var(--sub);
    background: var(--bg);
    border-radius: 5px;
    padding: 2px 7px
}

.v2-prototype .cm-imgi {
    display: inline-flex;
    color: #A7AFB9;
    flex: none
}

.v2-prototype .cm-imgi .ic {
    width: 16px;
    height: 16px
}

.v2-prototype .cm-cc {
    font-style: normal;
    color: var(--pur);
    font-weight: 800;
    font-size: 14px;
    flex: none
}

.v2-prototype .cm-by {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: var(--ink2);
    font-weight: 600;
    min-width: 0;
    white-space: nowrap
}

.v2-prototype .av.cm-av {
    width: 28px;
    height: 28px
}

.v2-prototype .cm-av.anon {
    background: #EEF0F3;
    color: var(--sub);
    font-size: 14px;
    font-weight: 800
}

.v2-prototype .btn.cm-write {
    margin-top: 22px;
    height: 54px;
    font-size: 16px
}

.v2-prototype .cm-write .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .cm-qh, .v2-prototype .cm-qr {
    display: grid;
    grid-template-columns:minmax(0, 1fr) 90px 170px 80px;
    gap: 14px;
    align-items: center;
    padding: 0 12px
}

.v2-prototype .cm-qh {
    height: 42px;
    border-top: 2px solid var(--ink);
    border-bottom: 1px solid var(--line);
    font-size: 14px;
    color: var(--mute);
    font-weight: 600
}

.v2-prototype .cm-qh span:nth-child(2), .v2-prototype .cm-qh span:nth-child(4) {
    text-align: center
}

.v2-prototype .cm-qr {
    padding-top: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--line2);
    cursor: pointer;
    transition: background .12s
}

.v2-prototype .cm-qr:hover {
    background: #FBFCFC
}

.v2-prototype .cm-qr:hover .cm-qr-m b {
    color: var(--g)
}

.v2-prototype .cm-qr-m {
    min-width: 0
}

.v2-prototype .cm-qr-m b {
    font-size: 15px;
    font-weight: 700
}

.v2-prototype .cm-qr-m p {
    font-size: 14px;
    color: var(--sub);
    margin-top: 5px
}

.v2-prototype .cm-qr-a {
    text-align: center;
    font-size: 14px;
    font-weight: 700
}

.v2-prototype .cm-qr-a em {
    font-style: normal;
    color: var(--pur);
    font-size: 15px;
    margin-left: 2px
}

.v2-prototype .cm-qr-t {
    text-align: center;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .cm-form .fsec {
    padding: 24px 26px
}

.v2-prototype .inp.cm-tin {
    height: 52px;
    font-size: 16px;
    font-weight: 600
}

.v2-prototype .cm-catsel {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-top: 14px;
    padding: 3px;
    border-radius: 12px;
    border: 1px solid transparent
}

.v2-prototype .cm-catb {
    height: 36px;
    padding: 0 16px;
    border-radius: 9px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2);
    transition: all .15s
}

.v2-prototype .cm-catb:hover {
    border-color: var(--g);
    color: var(--g)
}

.v2-prototype .cm-catb.on {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .cm-catsel.err {
    border-color: var(--red);
    box-shadow: 0 0 0 3px rgba(229, 72, 77, .1)
}

.v2-prototype .cm-imgbar {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 16px
}

.v2-prototype .cm-imgs {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 12px
}

.v2-prototype .cm-imgs:empty {
    display: none
}

.v2-prototype .cm-img {
    width: 112px;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 6px
}

.v2-prototype .cm-img-ph {
    height: 112px;
    border-radius: 12px;
    background: linear-gradient(145deg, #EEF1F4, #E1E6EB);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #A3ACB7
}

.v2-prototype .cm-img-ph .ic {
    width: 30px;
    height: 30px
}

.v2-prototype .cm-img span {
    font-size: 14px;
    color: var(--sub);
    text-align: center
}

.v2-prototype .cm-img button {
    position: absolute;
    right: -7px;
    top: -7px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 0;
    background: var(--ink);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--sh)
}

.v2-prototype .cm-img button:hover {
    background: var(--red)
}

.v2-prototype .cm-img button .ic {
    width: 13px;
    height: 13px
}

.v2-prototype .cm-actbar {
    position: sticky;
    bottom: 0;
    z-index: 20;
    display: flex;
    gap: 10px;
    margin-top: 16px;
    padding: 12px;
    background: rgba(255, 255, 255, .95);
    backdrop-filter: blur(8px);
    border: 1px solid var(--line);
    border-radius: 16px;
    box-shadow: 0 -6px 24px rgba(16, 24, 40, .06)
}

.v2-prototype .cm-actbar .btn.lg {
    flex: 1;
    height: 52px
}

.v2-prototype .cm-actbar .btn.f2 {
    flex: 2.2
}

.v2-prototype .cm-actbar .btn .ic {
    width: 17px;
    height: 17px
}

.v2-prototype .cm-author {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
    font-size: 14px
}

.v2-prototype .cm-author .av {
    width: 36px;
    height: 36px
}

.v2-prototype .cm-pimgs {
    display: flex;
    flex-wrap: wrap;
    gap: 12px
}

.v2-prototype .cm-pimg {
    width: 300px;
    height: 220px;
    border-radius: 14px;
    background: linear-gradient(145deg, #EEF1F4, #DCE2E8);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #97A1AD
}

.v2-prototype .cm-pimg > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    font-size: 14px
}

.v2-prototype .cm-pimg .ic {
    width: 38px;
    height: 38px
}

.v2-prototype .cm-react {
    display: flex;
    gap: 8px;
    padding: 16px 0;
    margin-top: 14px;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .cm-react button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    height: 38px;
    padding: 0 14px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 14px;
    color: var(--ink2);
    transition: all .15s
}

.v2-prototype .cm-react button:hover {
    border-color: #c9cfd6;
    background: var(--bg)
}

.v2-prototype .cm-react button .ic {
    width: 17px;
    height: 17px;
    color: var(--sub)
}

.v2-prototype .cm-react button .em {
    font-size: 16px;
    filter: grayscale(1);
    opacity: .7;
    transition: all .15s
}

.v2-prototype .cm-react button.on {
    border-color: var(--o);
    background: var(--o-l);
    color: #B25F00
}

.v2-prototype .cm-react button.on .em {
    filter: none;
    opacity: 1
}

.v2-prototype .cm-react button.lk.on {
    border-color: #f3c5c7;
    background: var(--red-l);
    color: #C2272D
}

.v2-prototype .cm-react button.lk.on .ic {
    color: var(--red);
    fill: var(--red)
}

.v2-prototype .cm-cmts {
    padding-top: 6px
}

.v2-prototype .cm-cmt {
    display: flex;
    gap: 12px;
    padding: 16px 0;
    border-bottom: 1px solid var(--line2);
    position: relative
}

.v2-prototype .cm-cmt:last-child {
    border-bottom: 0
}

.v2-prototype .cm-cmt.new {
    animation: cmNew 1.6s
}

@keyframes cmNew {
    0%, 40% {
        background: var(--g-ll)
    }
    100% {
        background: transparent
    }
}

.v2-prototype .cm-cmt .av {
    width: 34px;
    height: 34px
}

.v2-prototype .cm-cmt-m {
    flex: 1;
    min-width: 0
}

.v2-prototype .cm-cmt-m > .row b {
    font-size: 13.5px
}

.v2-prototype .cm-cmt-m > p {
    font-size: 14px;
    margin-top: 4px;
    line-height: 1.6;
    color: var(--ink2)
}

.v2-prototype .cm-cmt-f {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 8px;
    font-size: 14px;
    color: var(--mute)
}

.v2-prototype .cm-cmt-f button {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border: 0;
    background: none;
    padding: 0;
    font-size: 14px;
    color: var(--sub)
}

.v2-prototype .cm-cmt-f button:hover {
    color: var(--g)
}

.v2-prototype .cm-cmt-f button .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .cm-cmt-f button.on {
    color: var(--red)
}

.v2-prototype .cm-cmt-f button.on .ic {
    fill: var(--red)
}

.v2-prototype .cm-cmt-f b {
    font-weight: 700
}

.v2-prototype .cm-re {
    margin-top: 10px;
    padding: 10px 14px;
    border-radius: 12px;
    background: var(--bg);
    display: flex;
    flex-direction: column;
    gap: 10px
}

.v2-prototype .cm-re-i {
    display: flex;
    gap: 10px;
    font-size: 13px
}

.v2-prototype .cm-re-i .av {
    width: 26px;
    height: 26px
}

.v2-prototype .cm-re-i b {
    font-size: 14px
}

.v2-prototype .cm-re-i p {
    color: var(--ink2)
}

.v2-prototype .cm-cmt-x {
    position: relative;
    flex: none
}

.v2-prototype .cm-dots {
    width: 32px;
    height: 32px;
    border: 0;
    background: none;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--sub)
}

.v2-prototype .cm-dots:hover {
    background: var(--bg)
}

.v2-prototype .cm-menu {
    position: absolute;
    right: 0;
    top: 34px;
    z-index: 5;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    box-shadow: var(--sh2);
    padding: 6px;
    min-width: 120px
}

.v2-prototype .cm-menu a {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600
}

.v2-prototype .cm-menu a:hover {
    background: var(--bg)
}

.v2-prototype .cm-menu a .ic {
    width: 15px;
    height: 15px
}

.v2-prototype .cm-menu a.r {
    color: var(--red)
}

.v2-prototype .cm-cmt-empty {
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    padding: 26px 0 10px;
    color: var(--mute);
    font-size: 13.5px
}

.v2-prototype .cm-cmt-empty .ic {
    width: 18px;
    height: 18px
}

.v2-prototype .cm-sheet {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 150;
    background: #fff;
    border-top: 1px solid var(--line);
    box-shadow: 0 -14px 40px rgba(16, 24, 40, .16);
    border-radius: 22px 22px 0 0;
    transform: translateY(105%);
    visibility: hidden;
    transition: transform .28s cubic-bezier(.2, .8, .3, 1), visibility 0s .28s
}

.v2-prototype .cm-sheet.on {
    transform: none;
    visibility: visible;
    transition: transform .28s cubic-bezier(.2, .8, .3, 1)
}

.v2-prototype .cm-sheet-in {
    max-width: 760px;
    margin: 0 auto;
    padding: 20px 24px 22px
}

.v2-prototype .cm-sheet-in textarea.inp {
    min-height: 120px
}

.v2-prototype .cm-sheet-dim {
    position: fixed;
    inset: 0;
    z-index: 140;
    background: rgba(14, 18, 26, .32);
    display: none
}

.v2-prototype .cm-sheet-dim.on {
    display: block;
    animation: fade .2s
}

.v2-prototype .cm-about {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    padding: 84px 40px 96px;
    text-align: center;
    color: #fff;
    background: linear-gradient(140deg, #16877A 0%, #0E6457 45%, #0B3F4F 100%)
}

.v2-prototype .cm-about:before {
    content: "";
    position: absolute;
    right: -90px;
    top: -110px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .16), transparent 70%)
}

.v2-prototype .cm-wave {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 160px
}

.v2-prototype .cm-about > *:not(.cm-wave) {
    position: relative
}

.v2-prototype .cm-about-k {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .14em;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .25);
    padding: 6px 12px;
    border-radius: 999px
}

.v2-prototype .cm-about-k .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .cm-about h2 {
    font-size: 44px;
    font-weight: 800;
    margin-top: 20px;
    letter-spacing: -.04em
}

.v2-prototype .cm-about-l {
    font-size: 21px;
    font-weight: 700;
    margin-top: 14px;
    min-height: 32px;
    color: #D9F2EC
}

.v2-prototype .cm-about-l .cur {
    display: inline-block;
    width: 2px;
    height: 22px;
    background: #fff;
    margin-left: 3px;
    vertical-align: middle;
    animation: blink 1s step-end infinite
}

.v2-prototype .cm-about-s {
    font-size: 14px;
    opacity: .75;
    margin-top: 10px
}

.v2-prototype .btn.cm-wbtn {
    background: #fff;
    color: var(--g2);
    border-color: #fff
}

.v2-prototype .btn.cm-wbtn:hover {
    background: #F1FAF8
}

.v2-prototype .btn.cm-wbtn2 {
    background: rgba(255, 255, 255, .12);
    border-color: rgba(255, 255, 255, .4);
    color: #fff
}

.v2-prototype .btn.cm-wbtn2:hover {
    background: rgba(255, 255, 255, .2);
    border-color: #fff
}

.v2-prototype .cm-wbtn .ic, .v2-prototype .cm-wbtn2 .ic {
    width: 17px;
    height: 17px
}

.v2-prototype .cm-jsbar {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px
}

.v2-prototype .cm-jsbar .ic {
    width: 16px;
    height: 16px
}

.v2-prototype .cm-jsbar .xs {
    display: inline-flex;
    align-items: center;
    gap: 4px
}

.v2-prototype .cm-ok {
    color: var(--g);
    width: 14px !important;
    height: 14px !important
}

.v2-prototype .cm-jsec {
    margin-top: 26px
}

.v2-prototype .cm-jsec h3 {
    font-size: 17px;
    font-weight: 800;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px
}

.v2-prototype .cm-jsec h3 small {
    font-size: 14px;
    font-weight: 700;
    color: var(--g);
    background: var(--g-l);
    padding: 2px 8px;
    border-radius: 999px
}

.v2-prototype .cm-tiles {
    display: grid;
    grid-template-columns:repeat(8, minmax(0, 1fr));
    gap: 10px
}

.v2-prototype .cm-tile {
    position: relative;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 14px;
    height: 104px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 8px 6px;
    transition: border-color .15s, box-shadow .15s, transform .15s;
    min-width: 0
}

.v2-prototype .cm-tile:hover {
    border-color: var(--g);
    box-shadow: var(--sh);
    transform: translateY(-2px)
}

.v2-prototype .cm-mono {
    width: 46px;
    height: 46px;
    border-radius: 13px;
    background: linear-gradient(145deg, var(--c), color-mix(in srgb, var(--c) 70%, #000));
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12), 0 2px 6px rgba(16, 24, 40, .12)
}

.v2-prototype .cm-mono b {
    font-size: 14px;
    font-weight: 800;
    letter-spacing: -.04em;
    white-space: nowrap
}

.v2-prototype .cm-mono.add {
    background: #fff;
    border: 1.5px dashed #C2C9D1;
    color: var(--sub);
    box-shadow: none
}

.v2-prototype .cm-mono.add .ic {
    width: 20px;
    height: 20px
}

.v2-prototype .cm-tile.add:hover .cm-mono.add {
    border-color: var(--g);
    color: var(--g)
}

.v2-prototype .cm-tile.ai .cm-mono {
    border-radius: 50%
}

.v2-prototype .cm-tn {
    font-size: 14px;
    font-weight: 600;
    color: var(--ink2);
    text-align: center;
    line-height: 1.25;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.v2-prototype .cm-key {
    position: absolute;
    left: 8px;
    top: 8px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--g);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .cm-key .ic {
    width: 11px;
    height: 11px;
    stroke-width: 3
}

.v2-prototype .cm-go {
    position: absolute;
    right: 8px;
    top: 8px;
    color: var(--g);
    opacity: 0;
    transition: opacity .15s
}

.v2-prototype .cm-go .ic {
    width: 14px;
    height: 14px;
    transform: rotate(-45deg)
}

.v2-prototype .cm-tile:hover .cm-go {
    opacity: 1
}

.v2-prototype .cm-tile.fav .cm-go {
    display: none
}

.v2-prototype .cm-tdel {
    position: absolute;
    right: 6px;
    top: 6px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 0;
    background: var(--bg);
    color: var(--sub);
    display: none;
    align-items: center;
    justify-content: center
}

.v2-prototype .cm-tdel .ic {
    width: 12px;
    height: 12px
}

.v2-prototype .cm-tile:hover .cm-tdel {
    display: flex
}

.v2-prototype .cm-tdel:hover {
    background: var(--red);
    color: #fff
}

.v2-prototype .cm-codes {
    max-height: 430px;
    overflow: auto;
    border-radius: 12px;
    border: 1px solid var(--line)
}

.v2-prototype .cm-ctbl {
    width: 100%;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 13px
}

.v2-prototype .cm-ctbl thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--ink);
    color: #fff;
    font-weight: 600;
    font-size: 14px;
    padding: 10px 8px;
    text-align: center
}

.v2-prototype .cm-ctbl tbody th {
    font-weight: 700;
    font-size: 14px;
    text-align: center;
    padding: 0 6px;
    white-space: nowrap
}

.v2-prototype .cm-ctbl td {
    padding: 6px 5px;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .cm-ctbl tbody th {
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .cm-ctbl tr:last-child td, .v2-prototype .cm-ctbl tr:last-child th {
    border-bottom: 0
}

.v2-prototype .cm-cin {
    display: flex;
    align-items: center;
    height: 36px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--bg);
    padding: 0 4px 0 10px;
    transition: border-color .15s, box-shadow .15s
}

.v2-prototype .cm-cin.ed {
    background: #fff
}

.v2-prototype .cm-cin.ed:focus-within {
    border-color: var(--g);
    box-shadow: 0 0 0 3px rgba(18, 122, 108, .12)
}

.v2-prototype .cm-cin.err {
    border-color: var(--red)
}

.v2-prototype .cm-cin input {
    border: 0;
    outline: 0;
    background: none;
    flex: 1;
    min-width: 0;
    height: 100%;
    font-size: 14px;
    font-variant-numeric: tabular-nums
}

.v2-prototype .cm-cin button {
    width: 28px;
    height: 28px;
    border: 0;
    background: none;
    border-radius: 6px;
    color: var(--sub);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none
}

.v2-prototype .cm-cin button:hover {
    background: #E9EDF1;
    color: var(--ink)
}

.v2-prototype .cm-cin button .ic {
    width: 16px;
    height: 16px
}

.v2-prototype .cm-cbtn {
    height: 30px;
    width: 100%;
    border-radius: 8px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 14px;
    font-weight: 700
}

.v2-prototype .cm-cbtn:hover {
    border-color: var(--ink)
}

.v2-prototype .cm-cbtn.ing {
    background: var(--g);
    border-color: var(--g);
    color: #fff
}

.v2-prototype .cm-cbtn.ing:hover {
    background: var(--g2)
}

.v2-prototype .cm-nl {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 4px 22px
}

.v2-prototype .cm-ni {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 4px;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .cm-ni:last-child {
    border-bottom: 0
}

.v2-prototype .cm-ni:hover b {
    color: var(--g)
}

.v2-prototype .cm-ni > .ic {
    color: var(--mute);
    width: 18px;
    height: 18px
}

.v2-prototype .cm-ni-m {
    flex: 1;
    min-width: 0
}

.v2-prototype .cm-ni-m b {
    font-size: 15px;
    font-weight: 700
}

.v2-prototype .cm-ni-m > span {
    display: block;
    font-size: 14px;
    color: var(--mute);
    margin-top: 4px
}

.v2-prototype .cm-pin {
    flex: none;
    font-size: 14px;;
    font-weight: 700;
    color: #fff;
    background: var(--g);
    border-radius: 5px;
    padding: 2px 7px
}

.v2-prototype .cm-new {
    flex: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--o);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.v2-prototype .cm-nv-t {
    font-size: 22px;
    font-weight: 800;
    color: var(--g2);
    letter-spacing: -.03em
}

.v2-prototype .cm-nv .cm-doc-m {
    padding-bottom: 18px;
    border-bottom: 1px solid var(--line)
}

.v2-prototype .cm-nv-a {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 0;
    border-bottom: 1px solid var(--line2)
}

.v2-prototype .cm-nv-a > b {
    font-size: 14px;
    flex: none
}

.v2-prototype .cm-nv-a .cm-file {
    margin: 0;
    width: auto;
    max-width: 100%
}

.v2-prototype .cm-pn {
    margin-top: 14px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #fff;
    overflow: hidden
}

.v2-prototype .cm-pn:empty {
    display: none
}

.v2-prototype .cm-pn a {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 20px;
    font-size: 14px
}

.v2-prototype .cm-pn a + a {
    border-top: 1px solid var(--line2)
}

.v2-prototype .cm-pn a:hover b {
    color: var(--g)
}

.v2-prototype .cm-pn span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--sub);
    font-size: 14px;
    flex: none;
    width: 70px
}

.v2-prototype .cm-pn span .ic {
    width: 14px;
    height: 14px
}

.v2-prototype .cm-pn a:first-child span .ic {
    transform: rotate(180deg)
}

.v2-prototype .cm-pn b {
    font-weight: 600;
    min-width: 0
}





.v2-prototype .mtop, .v2-prototype #tabbar, .v2-prototype #drawer {
    display: none
}

.v2-prototype.noscroll, .v2-prototype.noscroll body {
    overflow: hidden
}

.v2-prototype img, .v2-prototype svg {
    max-width: 100%
}





.v2-prototype .framed #dev {
    display: none !important
}




















/* end: prototype.css migrated from shared root */

/* begin: radius.css migrated from shared root */
.rounded-none {border-radius: 0 !important;}
.rounded-sm {border-radius: 0.125rem !important;}
.rounded-DEFAULT {border-radius: 0.25rem !important;}
.rounded-md {border-radius: 0.375rem !important;}
.rounded-lg {border-radius: 0.5rem !important;}
.rounded-xl {border-radius: 0.75rem !important;}
.rounded-2xl {border-radius: 1rem !important;}
.rounded-3xl {border-radius: 1.5rem !important;}
.rounded-full {border-radius: 9999px !important;}




















/* end: radius.css migrated from shared root */

/* begin: renewal.css migrated from shared root */
/* GAJOB v2 — PC >= 1200 / tablet 768–1199 / mobile < 768 */
:root{--v2-green:#127a6c;--v2-green-dark:#0e6457;--v2-green-light:#e7f3f0;--v2-orange:#f29b21;--v2-ink:#16191f;--v2-muted:#6b7280;--v2-line:#e5e8ec;--v2-bg:#f6f7f9;--v2-radius:14px}
html.v2-theme{height:auto;scroll-padding-top:95px}
html.v2-theme body{min-height:100vh;height:auto;background:#fff;color:var(--v2-ink);font-family:Pretendard,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;line-height:1.55;overflow-wrap:anywhere}
.v2-theme *, .v2-theme *::before,.v2-theme *::after{box-sizing:border-box}
.v2-theme a{text-decoration:none}
.v2-wrap{width:min(1240px,100%);margin-inline:auto;padding-inline:24px}
.v2-theme .container{max-width:1240px}
.v2-theme header> .header,.v2-theme header> .h_54{display:none!important}
.v2-theme header:has(.v2-header){position:relative;z-index:10000}
.v2-skip{position:fixed;top:-100px;left:20px;z-index:100001;background:var(--v2-green);color:#fff;padding:12px 20px;border-radius:8px}
.v2-skip:focus{top:8px}
.v2-theme :focus-visible{outline:3px solid var(--v2-orange);outline-offset:4px}
.v2-header{position: sticky;top: 0 !important;z-index:997;background:rgba(255,255,255,.98);border-bottom:1px solid #eef0f3}
.v2-header-row{display:flex;align-items:center;height:78px;gap:30px}
.v2-brand{flex:none;display:flex;align-items:center}
.v2-brand img{width:218px;max-width:100%;height:auto}
.v2-desktop-nav{display:flex;align-self:stretch;gap:4px;flex:1;min-width:0}
.v2-menu{display:flex;align-items:center}
.v2-menu summary{list-style:none;display:flex;align-items:center;gap:7px;cursor:pointer;padding:26px 12px;font-size:16px;font-weight:700;white-space:nowrap}
.v2-menu summary::-webkit-details-marker,.v2-drawer summary::-webkit-details-marker{display:none}
.v2-menu summary>span{font-size:14px;color:#9aa1ac}
.v2-menu[open]>summary,.v2-menu summary:hover{color:var(--v2-green)}
.v2-menu[open]>summary{box-shadow:inset 0 -2px var(--v2-green)}
.v2-mega{position:absolute;left:0;right:0;top:100%;display:flex;justify-content:center;gap:40px;background:#fff;border-bottom:1px solid var(--v2-line);padding:30px max(24px,calc((100% - 1192px)/2));box-shadow:0 18px 32px #10281814;z-index:10001}
.v2-mega-title{flex:1;min-width:200px;background:var(--v2-green-light);padding:26px;border-radius:14px}
.v2-mega-title small{color:var(--v2-green);display:block;font-size:14px;font-weight:700}
.v2-mega-title strong{display:block;font-size:27px;margin:6px 0}
.v2-mega-title p{font-size:13px;color:var(--v2-muted);margin:0}
.v2-mega-links{flex:2;display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:8px;align-content:start}
.v2-mega-links a{color:var(--v2-ink);padding:12px;border-radius:8px;font-size:14px;font-weight:600;display:flex;justify-content:space-between;gap:16px}
.v2-mega-links a:hover{background:var(--v2-bg);color:var(--v2-green)}
.v2-mega-links a span{color:#a0aaa6}
.v2-util{display:flex;align-items:center;gap:12px;white-space:nowrap}
.v2-util a{color:var(--v2-ink);font-size:13px;font-weight:700}
.v2-util .v2-cert,.v2-util .v2-login{border-radius:999px;padding:7px 14px;background:var(--v2-green);color:#fff}
.v2-util .v2-login{background:#fff;color:var(--v2-green);border:1px solid var(--v2-green)}
.v2-util .v2-user{max-width:100px;overflow:hidden;text-overflow:ellipsis;color:var(--v2-green)}
.v2-alarm{position:relative;padding:6px;font-size:20px!important}
.v2-alarm b{position:absolute;right:-6px;top:0;font-size:9px;padding:1px 4px;color:#fff;background:#e5484d;border-radius:20px}
.v2-hamburger{display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;border:0;background:transparent;width:40px;height:40px;padding:9px}
.v2-hamburger span{height:2px;width:22px;background:var(--v2-ink);border-radius:3px}
.v2-drawer{margin:0 0 0 auto;width:min(430px,92vw);height:100dvh;max-height:100dvh;border:0;padding:24px;color:var(--v2-ink);background:#fff;overscroll-behavior:contain;opacity:0;visibility:hidden;transform:translateX(calc(100% + 24px));transition:transform .3s cubic-bezier(.22,.61,.36,1),opacity .24s ease,visibility 0s linear .3s;will-change:transform}
.v2-drawer.is-visible{opacity:1;visibility:visible;transform:translateX(0);transition-delay:0s}
.v2-drawer::backdrop{background:#101820;opacity:0;backdrop-filter:blur(3px);transition:opacity .3s ease}
.v2-drawer.is-visible::backdrop{opacity:.44}
.v2-drawer-top{display:flex;justify-content:space-between;align-items:center;font-size:20px}
.v2-drawer-top button{border:0;background:var(--v2-bg);border-radius:50%;width:36px;height:36px;font-size:26px;display:flex;align-items: end;justify-content: center;}
.v2-drawer-account{padding:28px 0}
.v2-drawer-account h2{font-size:25px;font-weight:800;line-height:1.4;margin:0 0 18px}
.v2-button{display:inline-flex;padding:12px 20px;background:var(--v2-green);color:#fff!important;border-radius:10px;font-weight:700}
.v2-drawer-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:12px 0 20px;border-bottom:1px solid var(--v2-line)}
.v2-drawer-quick a{font-size:13px;text-align:center;color:var(--v2-green);font-weight:700}
.v2-drawer nav>details{border-bottom:1px solid var(--v2-line)}
.v2-drawer summary{font-size:16px;font-weight:700;padding:18px 0;cursor:pointer;list-style:none}
.v2-drawer summary:after{content:'+';float:right;color:var(--v2-muted)}
.v2-drawer details[open] summary:after{content:'−'}
.v2-drawer nav>details>div{background:var(--v2-bg);border-radius:10px;padding:10px;margin-bottom:14px;display:grid;grid-template-columns:1fr 1fr;gap:2px}
.v2-drawer nav a{font-size:13px;color:#3a404b;padding:9px;display:flex;justify-content:space-between}
.v2-drawer nav a span{color:#9aa1ac}
.v2-bottom-nav{display:none}

.v2-page-band{background:#eaf2f8;}
.v2-page-band a,.v2-page-band small,.v2-page-band span{color:var(--v2-muted);font-size:14px}
.v2-page-band h1{font-size:32px;font-weight:800;margin:12px 0 6px;letter-spacing:-.03em}
.v2-page-band p{font-size:14px;color:var(--v2-muted);margin:0}

.v2-notice{background:#f2f7fb;border-bottom:1px solid #e8eff4;font-size:14px;color:#697b89}
.v2-notice>div{display:flex;align-items:center;justify-content:space-between;padding-block:9px;gap:14px}
.v2-notice a{color:#526879;white-space:nowrap}
.v2-hero{padding:18px 24px 0}
.v2-hero-stage{max-width:1392px;height:550px;position:relative;margin:auto;border-radius:32px;overflow:hidden;background:#e4efea;isolation:isolate}
.v2-slide{position:absolute;inset:0;background:#e4efea;visibility:hidden;opacity:0;transition:opacity .5s,visibility .5s}
.v2-slide.is-active{opacity:1;visibility:visible}
.v2-slide:before{content:'';position:absolute;width:620px;height:620px;right:-100px;top:-180px;border-radius:50%;background:#ffffff50}
.v2-slide-tools{background:#102c27;color:#fff}
.v2-slide-db{background:#f4ecdf}
.v2-slide-job{background:#e6edf7}
.v2-slide-community{background:#ecebf3}
.v2-hero-copy{position:absolute;left:6%;top:72px;max-width:56%;z-index:1}
.v2-eyebrow{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:700;color:var(--v2-green)}
.v2-eyebrow>span{width:28px;height:1px;background:currentColor}
.v2-slide-tools .v2-eyebrow{color:#8ee0cd}
.v2-hero-copy h1,.v2-hero-copy h2{font-size:clamp(36px,4.1vw,58px);font-weight:800;line-height:1.2;letter-spacing:-.045em;margin:20px 0 24px}
.v2-hero-copy em{font-style:normal;color:var(--v2-green)}
.v2-hero-copy p{font-size:16px;color:#596760;max-width:380px;line-height:1.7;margin:0 0 22px}
.v2-slide-tools p{color:#c4d5ce}
.v2-hero-cta{display:inline-flex;align-items:center;gap:20px;padding:11px 20px;border-radius:999px;background:#fff;color:var(--v2-ink);font-size:14px;font-weight:700;border:1px solid #10281812;box-shadow:0 2px 3px #10281805}
.v2-hero-cta:hover{background:var(--v2-green);color:#fff}
.v2-hero-visual{position:absolute;top:70px;right:5%;width:35%;max-width:390px;z-index:2}
.v2-routine{background:#fff;border-radius:20px;box-shadow:0 24px 60px #10281820;padding:22px;transform:rotate(-2deg);color:var(--v2-ink)}
.v2-routine-title{display:flex;align-items:center;gap:10px;padding-bottom:16px}
.v2-routine-title>i{width:38px;height:38px;background:#fff3e2;color:#df8c19;display:grid;place-items:center;border-radius:12px;font-size:21px;flex:none}
.v2-routine-title>div{flex:1}
.v2-routine-title small{display:block;font-size:10px;color:var(--v2-muted)}
.v2-routine-title b{font-size:16px}
.v2-routine-title>span{font-size:9px;background:var(--v2-green-light);color:var(--v2-green);border-radius:999px;padding:5px 8px;white-space:nowrap}
.v2-routine>a{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #eef0f3;color:var(--v2-ink)}
.v2-routine>a>i{display:grid;place-items:center;background:var(--v2-bg);color:var(--v2-green);width:33px;height:33px;border-radius:10px;font-size:17px;flex:none}
.v2-routine>a>div{flex:1}
.v2-routine>a b{display:block;font-size:13px;font-weight:700}
.v2-routine>a small{font-size:11px;color:#929c96}
.v2-routine>a>span{color:#9caaa2;font-size:16px}
.v2-routine>a:hover b{color:var(--v2-green)}
.v2-routine-foot{display:flex;align-items:center;gap:7px;border-top:1px solid var(--v2-line);padding-top:14px;font-size:10px;color:var(--v2-muted)}
.v2-status-dot{height:7px;width:7px;border-radius:50%;background:var(--v2-green)}
.v2-hero-tabs{position:absolute;left:6%;right:6%;bottom:28px;display:flex;gap:10px;z-index:3}
.v2-hero-tabs button{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#ffffff65;color:#48574f;border:0;border-radius:12px;padding:16px 18px;flex:1;font-size:13px;font-weight:700;white-space:nowrap;cursor:pointer}
.v2-hero-tabs button.is-active{background:#fff;color:var(--v2-green);box-shadow:0 4px 12px #10281808}
.v2-hero-tabs button.v2-hero-pause{flex:0 0 42px;padding:12px;justify-content:center}
.v2-solutions{padding-top:54px;padding-bottom:44px}
.v2-section-heading,.v2-list-intro{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}
.v2-section-heading small,.v2-list-intro small{font-size:14px;color:var(--v2-muted)}
.v2-section-heading h2,.v2-list-intro h2{font-size:28px;font-weight:800;margin:6px 0 0;letter-spacing:-.035em}
.v2-section-heading>a{font-size:13px;color:var(--v2-muted);white-space:nowrap}
.v2-solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.v2-solution{position:relative;min-height:205px;padding:26px 28px;background:#f3f7f5;border-radius:22px;border:1px solid transparent;color:var(--v2-ink);transition:transform .2s,box-shadow .2s;overflow:hidden}
.v2-solution:hover{transform:translateY(-4px);box-shadow:0 16px 30px #10281810;border-color:var(--v2-line);color:var(--v2-green)}
.v2-solution-tag{display:inline-flex;padding:4px 10px;border-radius:7px;background:#e2efea;color:var(--v2-green);font-size:11px;font-weight:700}
.v2-solution>i{position:absolute;right:28px;top:24px;font-size:30px;color:var(--v2-green);opacity:.7}
.v2-solution h3{font-size:23px;font-weight:800;margin:27px 0 7px;letter-spacing:-.03em}
.v2-solution p{color:var(--v2-muted);font-size:13px;margin:0;padding-right:26px}
.v2-solution-arrow{position:absolute;right:24px;bottom:23px;border:1px solid #dce5df;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#496556}
.v2-tone-blue{background:#f1f5fa}.v2-tone-blue>i{color:#4773ad}.v2-tone-blue .v2-solution-tag{background:#e6edf7;color:#4773ad}
.v2-tone-orange{background:#fbf5eb}.v2-tone-orange>i{color:#c88828}.v2-tone-orange .v2-solution-tag{background:#f9ecd3;color:#a66c17}
.v2-tone-purple{background:#f5f2fa}.v2-tone-purple>i{color:#8065ad}.v2-tone-purple .v2-solution-tag{background:#ede6f7;color:#8065ad}
.v2-list-intro{border-top:1px solid var(--v2-line);padding-top:44px;margin-bottom:0}
.v2-service-tabs{display:flex;background:var(--v2-bg);padding:4px;border-radius:999px;gap:4px;flex:none}
.v2-service-tabs a{padding:9px 18px;border-radius:999px;color:var(--v2-muted);font-weight:600;font-size:13px}
.v2-service-tabs .is-active{background:var(--v2-ink);color:#fff}
/* Existing controllers, forms, interactive widgets and IDs remain in these views. */
.v2-theme .v2-home main>.hero{padding:0!important;min-height:0!important;background:transparent!important}
.v2-theme .v2-home main>.hero::before,.v2-theme .v2-home main>.hero::after,.v2-theme .v2-home #heroSection,.v2-theme .v2-home .main-service-switch-wrap{display:none!important}
.v2-theme .v2-home main>.hero .container{padding-top:0!important}
.v2-theme .v2-home #mySwiperMain{padding-top:0!important}
.v2-theme .v2-home main>.container{margin-top:24px!important}
.v2-theme .v2-home .main-recruit-card{border:1px solid var(--v2-line)!important;border-radius:18px!important;box-shadow:none!important;transition:border-color .2s,transform .2s}
.v2-theme .v2-home .main-recruit-card:hover{border-color:#adcfc2!important;transform:translateY(-2px)}
.v2-theme .v2-home .premiumcard-body{background:#fff!important}
.v2-theme .card{border-color:var(--v2-line);border-radius:var(--v2-radius)}
.v2-theme .form-control,.v2-theme .form-select{border-color:var(--v2-line);border-radius:10px}
.v2-theme .form-control:focus,.v2-theme .form-select:focus{border-color:var(--v2-green);box-shadow:0 0 0 3px #127a6c18}
.v2-theme .btn-primary,.v2-theme .bg-green-main{background-color:var(--v2-green)!important;border-color:var(--v2-green)!important}
.v2-theme .text-green-main{color:var(--v2-green)!important}
.v2-theme .btn{border-radius:10px}
.v2-theme .content{border-radius:16px}
.v2-theme .table-responsive{max-width:100%;overflow-x:auto}
.v2-theme .pc-footer{background:#f6f7f9!important;color:#6b7280!important;border-top:1px solid var(--v2-line);margin-top:55px}
.v2-theme .pc-footer h4{color:var(--v2-green);font-weight:800}
.v2-theme .pc-footer a{color:#4c5752!important}
.v2-theme .pc-footer .text-white{color:#4c5752!important}
.v2-theme .footernavibtn{display:none!important}
.v2-theme .mobile-footer{padding-top:0!important}
.v2-theme .mobile-footer:not(:has(.footernextbtn:not(.d-none),.footerfinalbtns:not(.d-none))){display:none!important}
.v2-theme .site-footer{margin-top:0!important}

.v2-theme .btn-group.bg-gtn-group{background:#F6F7F9 !important;border-radius: 21px;padding: 0 5px;gap:10px!important;color:#6B7280 !important;}

.v2-db-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}
.v2-db-card{display:flex;flex-direction:column;padding:22px;border:1px solid var(--v2-line);border-radius:18px;gap:14px;color:var(--v2-ink);background:#fff;transition:box-shadow .2s}
.v2-db-card:hover{box-shadow:0 8px 26px #10281810;color:var(--v2-green)}
.v2-db-card img{width:100%;height:140px;object-fit:cover;border-radius:10px}
.v2-db-card h3{font-size:18px;line-height:1.5;margin:0;font-weight:700}
.v2-db-card p{font-size:13px;color:var(--v2-muted);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.v2-db-tags{display:flex;flex-wrap:wrap;gap:5px}
.v2-db-tags span{background:var(--v2-green-light);color:var(--v2-green);font-size:11px;border-radius:6px;padding:4px 7px}
.v2-db-price{margin-top:auto;padding-top:12px;border-top:1px solid var(--v2-line);display:flex;align-items:center;justify-content:space-between;font-size:13px}
.v2-db-price b{font-size:22px;color:var(--v2-ink)}
.v2-empty{padding:55px 20px;text-align:center;color:var(--v2-muted);background:var(--v2-bg);border-radius:14px;margin-top:22px}



@media(prefers-reduced-motion:reduce){.v2-theme html{scroll-behavior:auto}.v2-slide,.v2-solution,.v2-theme .main-recruit-card{transition:none!important}}
/* Keep the visual above the hero selector row at every breakpoint. */
.v2-routine,.v2-routine>a,.v2-routine-title{line-height:1.3}
.v2-routine>a small{display:block;line-height:1.45;margin-top:3px}
.v2-theme .v2-home .quick-floating-menu{display:none!important}

.v2-slide-db .v2-hero-copy h2,.v2-slide-community .v2-hero-copy h2{font-size:44px}



/* Scoped to the v2 shell; avoids the legacy home section selector hiding this heading. */
.v2-theme .v2-list-intro{visibility:visible!important;opacity:1!important}
/* GNB panels follow the supplied renewal mockups, including utility popovers. */
.v2-header-row{height:72px;gap:28px}
.v2-menu summary{padding-block:23px}
.v2-menu[open]>summary>span{transform:rotate(180deg);color:var(--v2-green)}
.v2-mega{display:block;padding:0;box-shadow:0 18px 40px #1018281a;animation:v2-menu-in .18s ease}
.v2-mega-inner{display:flex;align-items:stretch;gap:18px;max-width:1240px;margin:auto;padding:24px 24px 28px}
.v2-mg-col{background:var(--v2-bg);border-radius:14px;padding:18px 18px 16px;min-width:156px;flex:1}
.v2-mg-col h3,.v2-mg-label h3{display:inline-block;font-size:12.5px;line-height:1.5;font-weight:700;color:var(--v2-green-dark);background:var(--v2-green-light);padding:4px 10px;border-radius:999px;margin:0 0 10px}
.v2-mg-col a{display:flex;align-items:center;gap:7px;padding:6px 2px;color:#3a404b;font-size:14.5px;font-weight:600;line-height:1.5;white-space:nowrap}
.v2-mg-col a:hover{color:var(--v2-green)}
.v2-mg-write{margin-top:6px;font-size:14px!important}
.v2-mg-write>i{font-size:14px;color:var(--v2-muted)}
.v2-mg-gap{height:10px}.v2-mg-gap.is-tall{height:72px}
.v2-mg-label{width:132px;flex:none;padding-top:18px}
.v2-mg-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;flex:2.4;min-width:0}
.v2-mg-tool{position:relative;min-height:108px;padding:16px 16px 32px;display:flex;flex-direction:column;gap:4px;background:var(--v2-bg);border-radius:14px;color:var(--v2-ink);transition:background .15s,transform .15s}
.v2-mg-tool:hover{background:var(--v2-green-light);color:var(--v2-ink);transform:translateY(-2px)}
.v2-mg-tool>b{font-size:15px;line-height:1.45;font-weight:700}
.v2-mg-tool>span{font-size:14px;line-height:1.55;color:var(--v2-muted);max-width:175px}
.v2-mg-tool-icon{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#fff;color:var(--v2-green);font-style:normal}
.v2-mg-tool.is-dark{background:var(--v2-ink);color:#fff}.v2-mg-tool.is-dark>span{color:#aeb4be}.v2-mg-tool.is-dark .v2-mg-tool-icon{background:#ffffff1f;color:#fff}
.v2-preparing{font-size:9px;font-weight:500;color:#8a929c;margin-left:5px;white-space:nowrap}
.v2-theme a[aria-disabled=true]{cursor:not-allowed}.v2-mg-tool[aria-disabled=true]:hover{transform:none}
.v2-mg-ad{position:relative;min-width:240px;max-width:280px;flex:1;min-height:190px;border-radius:14px;overflow:hidden;background:linear-gradient(135deg,#127a6c,#0d4f47);color:#fff}
.v2-ad-fallback{height:100%;min-height:210px;display:flex;flex-direction:column;justify-content:flex-end;gap:7px;padding:22px;color:#fff!important}
.v2-ad-fallback small,.v2-ad-copy small{font-size:11px;opacity:.75;letter-spacing:.05em}
.v2-ad-fallback b,.v2-ad-copy b{font-size:21px;font-weight:700;line-height:1.4}
.v2-ad-fallback span,.v2-ad-copy span{font-size:14px;opacity:.8;line-height:1.5}
.v2-ad-fallback em{font-size:14px;font-style:normal;margin-top:6px;color:#d0e8df}
.v2-ad-image{position:absolute;inset:0;background-size:cover;background-position:center}
.v2-ad-copy{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;gap:5px;padding:35px 20px 20px;background:linear-gradient(transparent,#071e19e6);pointer-events:none}
.v2-mg-db{flex:2;min-width:245px;display:flex;flex-direction:column;gap:10px}
.v2-mg-db>p{font-size:11px;color:var(--v2-muted);margin:0}
.v2-mg-product{padding:18px;display:flex;gap:16px;align-items:center;border:1px solid var(--v2-line);border-radius:14px;color:var(--v2-ink);flex:1}
.v2-mg-product-icon{display:grid;place-items:center;width:64px;height:64px;flex:none;border-radius:12px;background:var(--v2-green-light);color:var(--v2-green);font-size:28px}
.v2-mg-product>div{min-width:0;flex:1;display:flex;flex-direction:column;gap:6px}.v2-mg-product small{font-size:11px;color:var(--v2-muted)}
.v2-mg-product b{font-size:16px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.v2-mg-product-price{font-size:13px;font-weight:700;color:var(--v2-green)}
.v2-mg-product em{font-size:10px;background:#eaf1fc;color:#2459b5;border-radius:5px;padding:3px 6px;font-style:normal;align-self:flex-start}
.v2-mg-db-intro{flex:1;display:flex;flex-direction:column;justify-content:center;gap:8px;background:#f4ecdf;padding:22px;border-radius:14px;color:var(--v2-ink)}
.v2-mg-db-intro>span{font-size:11px;color:#9a7b3e;font-weight:700}.v2-mg-db-intro>b{font-size:24px;line-height:1.35;font-weight:800}
.v2-mg-db-intro small{font-size:14px;color:#82735a}.v2-mg-db-intro em{font-size:14px;font-style:normal;font-weight:700;margin-top:8px}
.v2-mega-comm .v2-mg-col{flex:0 0 168px}
.v2-mg-news{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;flex:2.4;min-width:0}
.v2-mg-news>a{border-radius:12px;overflow:hidden;background:var(--v2-ink);color:#fff;display:flex;flex-direction:column}
.v2-mg-news-image{position:relative;height:110px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;background:linear-gradient(135deg,#2b3a4a,#11161c)}
.v2-mg-news-image>i:first-child{font-size:25px;color:#ffffffb3}.v2-mg-news-image>span{font-size:14px;color:#ffffffa6}
.v2-mg-news-image>.bi-play-fill{position:absolute;right:8px;bottom:8px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#ffffffd9;color:#111;font-size:12px}
.v2-mg-news-image.tone-1{background:linear-gradient(135deg,#3d4b3a,#11161c)}.v2-mg-news-image.tone-2{background:linear-gradient(135deg,#1f4b5a,#11161c)}.v2-mg-news-image.tone-3{background:linear-gradient(135deg,#4a3a2b,#11161c)}
.v2-mg-news p{padding:10px 12px;margin:0;font-size:13px;font-weight:600;line-height:1.5}
.v2-mg-about{flex:4;min-height:185px;display:flex;align-items:center;justify-content:center;gap:16px;padding:28px;background:linear-gradient(120deg,#f3f9f7,#fff);color:var(--v2-green-dark);border-radius:14px;font-size:24px;font-weight:800;text-align:center}
.v2-mg-about>i{font-size:30px;color:var(--v2-green)}.v2-mg-about span>i{display:inline-block;width:2px;height:26px;vertical-align:middle;margin-left:3px;background:var(--v2-green);animation:v2-cursor 1s step-end infinite}
.v2-popover{position:relative;display:flex;align-items:center}
.v2-popover>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.v2-popover>summary::-webkit-details-marker{display:none}
.v2-popover>summary:after{display:none}.v2-popover[open]>.v2-user{color:var(--v2-green)}
.v2-util .v2-cert{display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 13px;border-radius:999px;font-size:13px;font-weight:700;color:#fff;background:var(--v2-green);border:0}
.v2-util .v2-cert>i{font-size:14px}.v2-util .v2-user{max-width:160px;min-height:40px;overflow:visible;font-weight:700;font-size:13.5px;color:var(--v2-green-dark)}
.v2-user>span{max-width:105px;text-overflow:ellipsis;overflow:hidden}.v2-user>.bi-chevron-down{font-size:10px;color:#9aa1ac}
.v2-hov-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:10005;min-width:206px;max-width:calc(100vw - 32px);padding:8px;background:#fff;border:1px solid var(--v2-line);border-radius:12px;box-shadow:0 12px 40px #10182829;animation:v2-menu-in .16s ease}
.v2-hov-menu:before{content:'';position:absolute;left:0;right:0;top:-10px;height:10px}
.v2-cert-popover .v2-hov-menu{min-width:290px}
.v2-hov-menu a,.v2-hov-menu form>button{display:flex;align-items:center;gap:6px;width:100%;text-align:left;padding:9px 12px;border-radius:8px;font-size:13.5px;font-weight:500;color:#3a404b;white-space:nowrap;line-height:1.5}
.v2-hov-menu a:hover,.v2-hov-menu form>button:hover{background:#f3f9f7;color:var(--v2-green-dark)}
.v2-hov-menu form{margin:0}.v2-hov-menu form>button{background:transparent;border:0;cursor:pointer;font-family:inherit}
.v2-hov-sep{height:1px;background:#eef0f3;margin:6px 4px}
.v2-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:#e5484d;color:#fff;border-radius:999px;font-size:10px;font-weight:700}
.v2-util .v2-alarm{position:relative;width:34px;height:34px;border-radius:50%;justify-content:center;font-size:20px!important;color:var(--v2-ink);padding:0}
.v2-alarm:hover,.v2-alarm-popover[open]>.v2-alarm{background:var(--v2-bg)}
.v2-util .v2-alarm>b{font-size:10px;top:-2px;right:-5px;line-height:18px;height:18px;padding:0 5px}
.v2-util .v2-settings{display:inline-flex;align-items:center;justify-content:center;width:30px;height:34px;color:var(--v2-ink);font-size:19px}
.v2-alarm-menu{width:345px;padding:0;white-space:normal;overflow:visible}
.v2-alarm-heading{padding:16px;display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--v2-line)}
.v2-alarm-heading strong{font-size:16px}.v2-alarm-heading>span{color:var(--v2-muted);font-size:11px;flex:1}
.v2-alarm-heading>a{width:auto;padding:0;font-size:15px}
.v2-alarm-items{max-height:360px;overflow:auto;padding:6px}
.v2-alarm-items .v2-alarm-item{position:relative;display:flex;align-items:flex-start;gap:10px;padding:13px 10px;white-space:normal;border-bottom:1px solid #eef0f3}
.v2-alarm-item:last-child{border-bottom:0}.v2-alarm-item>i{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:var(--v2-green-light);color:var(--v2-green);flex:none;font-size:14px}
.v2-alarm-item>div{min-width:0;flex:1}.v2-alarm-item b{display:block;font-size:12.5px;font-weight:700;color:var(--v2-ink);line-height:1.5}
.v2-alarm-item p{font-size:14px;line-height:1.55;color:var(--v2-muted);margin:3px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.v2-alarm-item time{font-size:10px;color:#9aa1ac}.v2-alarm-item.is-unread:after{content:'';width:5px;height:5px;flex:none;border-radius:50%;background:#e5484d;margin-top:5px}
.v2-alarm-status{padding:28px 16px;margin:0;font-size:14px;line-height:1.6;color:var(--v2-muted);text-align:center}
.v2-alarm-menu>.v2-alarm-all{padding:13px;justify-content:center;border-radius:0 0 12px 12px;border-top:1px solid var(--v2-line);font-size:14px;font-weight:700;color:var(--v2-green)}
.v2-menu-dim{position:fixed;inset:72px 0 0;background:#0f141e2e;z-index:97}.v2-menu-dim[hidden]{display:none}
@keyframes v2-menu-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
@keyframes v2-cursor{50%{opacity:0}}


@media(prefers-reduced-motion:reduce){.v2-mega,.v2-hov-menu{animation:none}.v2-mg-about span>i{animation:none}.v2-mg-tool{transition:none}.v2-drawer,.v2-drawer::backdrop{transition:none}}
.v2-ad-slide{position:relative;display:flex;flex-direction:column;width:100%;height:100%;min-height:235px;color:#fff}
.v2-ad-slide[hidden],.v2-ad-controls[hidden]{display:none!important}
.v2-ad-slide>.v2-ad-image{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.v2-ad-slide.v2-ad-fallback{padding-top:48px}.v2-ad-slide.tone-blue{background:linear-gradient(135deg,#2f4b7c,#152238)}
.v2-ad-slide.tone-orange{background:linear-gradient(135deg,#b25f00,#785320)}
.v2-ad-controls{position:absolute;right:12px;top:12px;display:flex;align-items:center;gap:6px;background:#00000040;padding:3px 4px;border-radius:999px;z-index:1;color:#fff;font-size:11px}
.v2-ad-controls button{width:22px;height:22px;border:0;border-radius:50%;background:#ffffff33;color:#fff;font-size:15px;line-height:1;cursor:pointer}
.v2-ad-controls>span{min-width:28px;text-align:center;font-size:11px}
.v2-drawer-group-title{grid-column:1/-1;padding:10px 9px 2px;font-size:10px;font-weight:700;color:var(--v2-green)}
.v2-drawer nav a[aria-disabled=true]{color:#8a929c}

.my-hbar {display: flex;align-items: center;height: 58px;border: 1px solid var(--line);border-radius: 14px;background: #fff;padding: 0 10px;margin-bottom: 16px;position: relative;color: inherit;text-decoration: none;cursor: pointer;}
.my-back {width: 38px;height: 38px;border-radius: 10px;border: 0;background: none;display: inline-flex;align-items: center;justify-content: center;position: relative;z-index: 1;}
.text-green-main {color: var(--v2-green) !important;}
.my-hbar h2 {margin: 0;line-height: 1.4;}




















/* end: renewal.css migrated from shared root */

/* begin: rotate.css migrated from shared root */
.rotate-0 {transform: rotate(0deg) !important;}
.rotate-45 {transform: rotate(45deg) !important;}
.rotate-90 {transform: rotate(90deg) !important;}
.rotate-180 {transform: rotate(180deg) !important;}
.rotate-270 {transform: rotate(270deg) !important;}
.rotate-360 {transform: rotate(360deg) !important;}




















/* end: rotate.css migrated from shared root */

/* begin: shadow.css migrated from shared root */
.shadow-xs {box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05) !important;}
.shadow-sm {box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important;}
.shadow-DEFAULT {box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1) !important;}
.shadow-md {box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1) !important;}
.shadow-lg {box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);}
.shadow-xl {box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1) !important;}
.shadow-2xl {box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;}
.shadow-inner {box-shadow: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06) !important;}
.shadow-none {box-shadow: none !important;}




















/* end: shadow.css migrated from shared root */

/* begin: spacing.css migrated from shared root */
.m-px {margin: 1px !important;}
.p-px {padding: 1px !important;}
.m-0 {margin: 0 !important;}
.p-0 {padding: 0 !important;}
.m-1 {margin: 0.25rem !important;}
.p-1 {padding: 0.25rem !important;}
.m-2 {margin: 0.5rem !important;}
.p-2 {padding: 0.5rem !important;}
.m-3 {margin: 0.75rem !important;}
.p-3 {padding: 0.75rem !important;}
.m-4 {margin: 1rem !important;}
.p-4 {padding: 1rem !important;}
.m-5 {margin: 1.25rem !important;}
.p-5 {padding: 1.25rem !important;}
.m-6 {margin: 1.5rem !important;}
.p-6 {padding: 1.5rem !important;}
.m-7 {margin: 1.75rem !important;}
.p-7 {padding: 1.75rem !important;}
.m-8 {margin: 2rem !important;}
.p-8 {padding: 2rem !important;}
.m-9 {margin: 2.25rem !important;}
.p-9 {padding: 2.25rem !important;}
.m-10 {margin: 2.5rem !important;}
.p-10 {padding: 2.5rem !important;}
.m-11 {margin: 2.75rem !important;}
.p-11 {padding: 2.75rem !important;}
.m-12 {margin: 3rem !important;}
.p-12 {padding: 3rem !important;}
.m-14 {margin: 3.5rem !important;}
.p-14 {padding: 3.5rem !important;}
.m-16 {margin: 4rem !important;}
.p-16 {padding: 4rem !important;}
.m-20 {margin: 5rem !important;}
.p-20 {padding: 5rem !important;}
.m-24 {margin: 6rem !important;}
.p-24 {padding: 6rem !important;}
.m-28 {margin: 7rem !important;}
.p-28 {padding: 7rem !important;}
.m-32 {margin: 8rem !important;}
.p-32 {padding: 8rem !important;}
.m-36 {margin: 9rem !important;}
.p-36 {padding: 9rem !important;}
.m-40 {margin: 10rem !important;}
.p-40 {padding: 10rem !important;}
.m-44 {margin: 11rem !important;}
.p-44 {padding: 11rem !important;}
.m-48 {margin: 12rem !important;}
.p-48 {padding: 12rem !important;}
.m-52 {margin: 13rem !important;}
.p-52 {padding: 13rem !important;}
.m-56 {margin: 14rem !important;}
.p-56 {padding: 14rem !important;}
.m-60 {margin: 15rem !important;}
.p-60 {padding: 15rem !important;}
.m-64 {margin: 16rem !important;}
.p-64 {padding: 16rem !important;}
.m-72 {margin: 18rem !important;}
.p-72 {padding: 18rem !important;}
.m-80 {margin: 20rem !important;}
.p-80 {padding: 20rem !important;}
.m-96 {margin: 24rem !important;}
.p-96 {padding: 24rem !important;}
.p-px {padding: 1px !important;}
.p-0 {padding: 0 !important;}
.p-1 {padding: 0.25rem !important;}
.p-2 {padding: 0.5rem !important;}
.p-3 {padding: 0.75rem !important;}
.p-4 {padding: 1rem !important;}
.p-5 {padding: 1.25rem !important;}
.p-6 {padding: 1.5rem !important;}
.p-7 {padding: 1.75rem !important;}
.p-8 {padding: 2rem !important;}
.p-9 {padding: 2.25rem !important;}
.p-10 {padding: 2.5rem !important;}
.p-11 {padding: 2.75rem !important;}
.p-12 {padding: 3rem !important;}
.p-14 {padding: 3.5rem !important;}
.p-16 {padding: 4rem !important;}
.p-20 {padding: 5rem !important;}
.p-24 {padding: 6rem !important;}
.p-28 {padding: 7rem !important;}
.p-32 {padding: 8rem !important;}
.p-36 {padding: 9rem !important;}
.p-40 {padding: 10rem !important;}
.p-44 {padding: 11rem !important;}
.p-48 {padding: 12rem !important;}
.p-52 {padding: 13rem !important;}
.p-56 {padding: 14rem !important;}
.p-60 {padding: 15rem !important;}
.p-64 {padding: 16rem !important;}
.p-72 {padding: 18rem !important;}
.p-80 {padding: 20rem !important;}
.p-96 {padding: 24rem !important;}




















/* end: spacing.css migrated from shared root */

/* begin: toggle.css migrated from shared root */
:root{
    --w: 280px; /* 전체 너비 */
    --h: 46px;  /* 트랙 높이 */
    --pad: 0px; /* 트랙 패딩 */
    --bg0: #e0e0e0; /* 상태 0 배경 */
    --bg1: #ffd54f; /* 상태 1 배경 */
    --knob: #000000;
    --transition: 250ms cubic-bezier(.2,.9,.3,1);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
}


/* 토글 래퍼 */
.three-toggle{width:var(--w)}

/* 트랙 */
.three-toggle .track{position:relative;height:var(--h);border-radius:50px;padding:var(--pad);box-sizing:border-box;display:flex;align-items:center;cursor:pointer;user-select:none;transition:background var(--transition), box-shadow var(--transition);box-shadow: 0 2px 6px rgba(0,0,0,.08);background:var(--bg0);}

/* 상태별 배경 (data-state로 바뀜) */
.three-toggle[data-state="0"] .track{background:var(--bg0)}
.three-toggle[data-state="1"] .track{background:var(--bg0)}

/* 레이블 (왼/중/오) */
.labels{display: flex;flex-direction: row;position:absolute;left:6px;right:6px;top:50%;transform:translateY(-50%);display:flex;justify-content:space-between;align-items:center;font-size:14px;color:rgba(0,0,0,.55);pointer-events:none;}
.labels span {flex:1;text-align: center;}

/* 노브 */
.knob{width:calc((var(--w) - var(--pad)*2) / 2 + 12px);height:calc(var(--h) - var(--pad)*2);background:var(--knob);border-radius:inherit;position:relative;z-index:2;flex:0 0 auto;margin-left:0px;transition:transform var(--transition), box-shadow var(--transition);box-shadow: 0 6px 12px rgba(0,0,0,.12);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.0rem;color:#FFFFFF;}

/* 노브 위치: data-state에 따라 이동 */
.three-toggle[data-state="0"] .knob{transform:translateX(0)}
.three-toggle[data-state="1"] .knob{transform:translateX(calc((100%) - 24px))}

/* 접근성 포커스 링 */
.three-toggle:focus-within .track{box-shadow:0 4px 18px rgba(0,0,0,.12)}

/* 설명 텍스트 */
.hint{margin-top:12px;font-size:13px;color:#444;text-align:center}




















/* end: toggle.css migrated from shared root */

/* begin: width.css migrated from shared root */
.mxwidth-0 {max-width: 0 !important;}
.mxwidth-1 {max-width: 0.25rem !important;}
.mxwidth-2 {max-width: 0.5rem !important;}
.mxwidth-3 {max-width: 0.75rem !important;}
.mxwidth-4 {max-width: 1rem !important;}
.mxwidth-5 {max-width: 1.25rem !important;}
.mxwidth-6 {max-width: 1.5rem !important;}
.mxwidth-7 {max-width: 1.75rem !important;}
.mxwidth-8 {max-width: 2rem !important;}
.mxwidth-9 {max-width: 2.25rem !important;}
.mxwidth-10 {max-width: 2.5rem !important;}
.mxwidth-11 {max-width: 2.75rem !important;}
.mxwidth-12 {max-width: 3rem !important;}
.mxwidth-14 {max-width: 3.5rem !important;}
.mxwidth-16 {max-width: 4rem !important;}
.mxwidth-20 {max-width: 5rem !important;}
.mxwidth-24 {max-width: 6rem !important;}
.mxwidth-28 {max-width: 7rem !important;}
.mxwidth-32 {max-width: 8rem !important;}
.mxwidth-36 {max-width: 9rem !important;}
.mxwidth-40 {max-width: 10rem !important;}
.mxwidth-44 {max-width: 11rem !important;}
.mxwidth-48 {max-width: 12rem !important;}
.mxwidth-52 {max-width: 13rem !important;}
.mxwidth-56 {max-width: 14rem !important;}
.mxwidth-60 {max-width: 15rem !important;}
.mxwidth-64 {max-width: 16rem !important;}
.mxwidth-72 {max-width: 18rem !important;}
.mxwidth-80 {max-width: 20rem !important;}
.mxwidth-96 {max-width: 24rem !important;}

.mxwidth_100 {max-width: 100% !important;}




















/* end: width.css migrated from shared root */




















/* end: common layout/header.html styles */


/* begin: common layout/footer.html styles */
@charset "utf-8";

/* Source: templates/gajobv2/layout/footer.html */
/* begin: footer.css migrated from shared root */
/* Quick Floating Menu Styles */
.quick-floating-menu .quick-floating-btn {
    overflow: hidden;
    transition: width .25s ease, min-width .25s ease, height .25s ease, border-radius .25s ease, padding .25s ease;
}

.quick-floating-menu .quick-floating-text {
    overflow: hidden;
    white-space: nowrap;
    opacity: 1;
    max-width: 120px;
    transition: opacity .2s ease, max-width .25s ease, margin .25s ease;
}
.quick-floating-menu.quick-floating-menu-collapsed .quick-floating-text {
    opacity: 0;
    max-width: 0;
    margin-left: 0;
    margin-right: 0;
    pointer-events: none;
}
.quick-floating-menu.quick-floating-menu-collapsed .material-symbols-outlined {
    margin-right: 0;
}


/* quick */
.quick-floating-menu {
    position: fixed;
    right: 24px;
    bottom: -1%;
    transform: translateY(-50%);
    z-index: 9990;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.quick-floating-btn {
    width: auto;
    min-width: 60px;
    height: 60px;
    border: 1px solid #e5e7eb;
    opacity: 0.4;
    background: #000000;
    border-radius: 30px;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.14);
    color: #FFFFFF;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, background-color 0.18s ease;
}

.quick-floating-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.2);
    border-color: #111827;
    background: #111827;
    color: #fff;
}

.quick-floating-btn .material-symbols-outlined {
    line-height: 1;
}

.quick-floating-text {
    line-height: 1.2;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    letter-spacing: -0.04em;
}

.quick-floating-top-btn {
    min-height: 52px;
}

.quick-floating-top-btn .material-symbols-outlined {
}




















/* end: footer.css migrated from shared root */




















/* end: common layout/footer.html styles */

/* begin: floating quick menu */
.site-footer > .qside {
    position: fixed;
    right: 22px;
    bottom: 96px;
    z-index: 998;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 6px;
    border-radius: 999px;
    background: #fff;
    box-shadow: var(--sh2, 0 12px 34px rgba(17, 24, 39, 0.14));
}

.site-footer > .qside > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    min-width: 40px;
    height: 40px;
    border-radius: 50%;
    color: var(--ink2, #3a404b);
    cursor: pointer;
}

.site-footer > .qside > a:hover {
    color: var(--g, #127a6c);
    background: var(--g-l, #e7f3f0);
}

.site-footer > .qside .ic {
    display: block;
    width: 19px !important;
    min-width: 19px;
    max-width: 19px !important;
    height: 19px !important;
    min-height: 19px;
    max-height: 19px !important;
    flex: 0 0 19px;
}
/* end: floating quick menu */

/* begin: subpage notice bar */
.v2-layout-notice {
    background: #f2f7fb;
    border-bottom: 1px solid #e3ecf4;
    color: #3b4a5c;
    font-size: 13px;
}

.v2-layout-notice-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    min-height: 40px;
    gap: 24px;
}

.v2-layout-notice-label {
    color: var(--v2-green);
    font-weight: 800;
    white-space: nowrap;
}

.v2-layout-notice-items {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: center;
    gap: 30px;
    min-width: 0;
    overflow: hidden;
}

.v2-layout-notice-item {
    display: flex;
    align-items: center;
    min-width: 0;
    color: #3b4a5c;
    white-space: nowrap;
}

.v2-layout-notice-item b {
    flex: none;
    margin-right: 6px;
    color: var(--v2-green);
    font-weight: 700;
}

.v2-layout-notice-item span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.v2-layout-notice-item time {
    flex: none;
    margin-left: 7px;
    color: #788797;
    font-variant-numeric: tabular-nums;
}

.v2-layout-notice-item:hover,
.v2-layout-notice-more:hover {
    color: var(--v2-green);
}

.v2-layout-notice-empty {
    grid-column: 1 / -1;
    color: #788797;
}

.v2-layout-notice-more {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    color: var(--v2-green);
    font-size: 22px;
    font-weight: 700;
}
/* end: subpage notice bar */

/* begin: media queries - Bootstrap breakpoint 기준
기본 CSS        → 모바일/공통 기본
max-width: 991.98px -> lg 미만 전체
max-width 575  → xs 전용
min 576~767.98 → sm 전용
min 768~991.98 → md 전용
min 992~1199.98 → lg 전용
min 1200~1399.98 → xl 전용
min 1400 → xxl 전용
*/
@media (max-width: 991.98px) {
.site-footer > .qside {
    display: none;
}

.footer-btn-group {position: fixed;}
    .logoimg {max-width: 10rem !important;}
    .topsearch {border-radius: 12px !important;}
    .topsearch div.search-box,
    .topsearch div.search-box .titlesearch,
    .topsearch div.search-box .areasearch {line-height: 24px;height: 52px !important;}
    .topsearch div.search-box {width: 50% !important;}
    .in-icon, .in-icon2 {top: 14px;}
    .floating-menu-pc {display: none;}
    .floating-menu-mobile {display: block;position: fixed;right: 16px;bottom: 96px;z-index: 1050;}
    .mobile-footer{z-index:2;}
    .card-body {min-height:214px;}
    .companylogo {display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:12px;}

.offcanvas-body{padding:10px !important;} .grid, .idsgrid { grid-template-columns: repeat(2, minmax(0,1fr)); } .ft {max-width:100% !important;width:100% !important;}
    .region-picker-heading h3 {font-size:28px;}
    .region-choice-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
    .region-choice {min-height:64px;font-size:16px;}

.offcanvas:not(#finalAppointmentResultOffCanvas) {max-width:100% !important;height:calc(100% - 55px) !important;width:100% !important;}
    .container {max-width: 100% !important;}
    .chat-sidebar {width: 100%;}
    .chat-main.mobile-hidden {display: none;}
    .chat-sidebar.mobile-hidden {display: none;}

.main-nav { gap: 0; }
    .nav-link { padding-inline: 9px; font-size: 14px; }
    .header-actions .company-auth { display: none; }
    .guide-layout { grid-template-columns: minmax(0, 1fr) 270px; }

.persona-grid {
        grid-template-columns: 1fr;
    }

.hero {
        min-height: 467px;
    }

.hero.recruit-status-hero {
        min-height: auto;
        max-height: none;
    }

    .recruit-status-hero .hero-inner {
        padding: 16px 0;
    }

    .subscription-card {
        grid-template-columns: 1fr;
    }

    .recruit-mode-tabs {
        margin-top: 28px;
    }

    .status-summary-card {
        min-height: 146px;
        max-height: none;
    }

.hero-inner { padding-top: 28px; }
    .recruit-summary-grid { grid-template-columns: 1fr; }
    .persona-grid { grid-template-columns: 1fr; }
    .role-shortcut small, .role-shortcut .arrow { display: none; }
    .search-field + .search-field { border-left: 0; border-top: 1px solid #e4ece9; }

    /*.align-items-center {width:100%;}*/
    .ai-card {position: relative;border-radius: 24px;isolation: isolate;width: 100%}

.progress-wrap {width:calc(100% - 20px);bottom:83px !important;}

.offcanvas-body{padding:10px !important;} .grid, .idsgrid { grid-template-columns: repeat(2, minmax(0,1fr)); } .ft {max-width:100% !important;width:100% !important;}

/*.card-body {min-height:245px;}*/

.offcanvas-body{padding:10px !important;} .grid, .idsgrid { grid-template-columns: repeat(2, minmax(0,1fr)); } .ft {max-width:100% !important;width:100% !important;}

.offcanvas:not(#finalAppointmentResultOffCanvas) {max-width:100% !important;height:calc(100% - 55px) !important;width:100% !important;}

    .job-search-status-grid {grid-template-columns: 1fr;}
    .job-search-status-card {min-height: auto;}

.filewrap {padding:0px !important;}
    .filewrap .imggroup {width:150px;height:200px;}

.login-banner-card {
        height: 300px;
    }
    .moregnb {display:block !important;}
    .hiddengnb {display: none !important;}
    .storebtngnbMain {display:none !important;}
    .storebtngnbSub {display:block !important;}

.v2-subpage-frame {
        grid-template-columns:minmax(0, 1fr);
        padding-top: 24px
    }

    .v2-subpage-frame > .v2-subnav {
        display: none
    }

    .v2-reference-home .mn .mn-sec {
        padding-top: 80px
    }

.v2-reference-home .v2-hero-stage {
        height: 500px
    }

    .v2-reference-home .v2-hero-visual {
        top: 45px;
        width: 40%
    }

.v2-prototype.my-system-page .my-system-grid {
        grid-template-columns:repeat(3, minmax(0, 1fr))
    }

.v2-settings-document .my-doc {
        grid-template-columns: minmax(0, 1fr);
    }

    .v2-settings-document .my-tocsel {
        top: 72px;
    }

.v2-prototype .mn .mn-sec {
        padding-top: 84px
    }

    .v2-prototype .mn-head {
        margin-bottom: 28px
    }

    .v2-prototype .mn-head h2 {
        font-size: 29px
    }

    .v2-prototype .mn-head p {
        font-size: 15.5px
    }

    .v2-prototype .mn-hero {
        padding: 12px 20px 0
    }

    .v2-prototype .mn-hero-in {
        border-radius: 28px;
        --px: 44px
    }

    .v2-prototype .mn-copy h1 {
        font-size: 50px
    }

    .v2-prototype .mn-slide.s5 .mn-copy h1 {
        font-size: 44px
    }

    .v2-prototype .mn-copy {
        top: 84px;
        max-width: 500px
    }

    .v2-prototype .mn-vis {
        width: 440px;
        scale: .92;
        transform-origin: 100% 0
    }

    .v2-prototype .mn-solgrid {
        gap: 14px
    }

    .v2-prototype .mn-sol {
        min-height: 206px;
        padding: 22px 22px 24px;
        border-radius: 22px
    }

    .v2-prototype .mn-stx b {
        font-size: 19px
    }

    .v2-prototype .mn-stx span {
        font-size: 14px;
        padding-right: 46px
    }

    .v2-prototype .mn-sar {
        right: 18px;
        bottom: 22px;
        width: 38px;
        height: 38px
    }

    .v2-prototype .mn-ad {
        min-height: 206px;
        padding: 24px;
        border-radius: 22px
    }

    .v2-prototype .mn-ad b {
        font-size: 20px
    }

    .v2-prototype .mn-igrid {
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        gap: 18px
    }

    .v2-prototype .mn-box {
        padding: 20px 22px
    }

    .v2-prototype .mn-tabs {
        gap: 14px
    }

    .v2-prototype .mn-tabs a {
        font-size: 15px;
        white-space: nowrap
    }

    .v2-prototype .mn-igrid > .mn-sad {
        grid-column: 1/-1;
        min-height: 132px
    }

    .v2-prototype .mn-board {
        grid-column: 1/-1;
        padding: 24px 24px 22px
    }

    .v2-prototype .mn-side {
        grid-column: 1/-1;
        display: grid;
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        gap: 18px;
        align-items: stretch
    }

    .v2-prototype .mn-side > .mn-box:first-child {
        grid-row: 1/3
    }

    .v2-prototype .mn-bans {
        grid-column: 1/-1
    }

    .v2-prototype .mn-today {
        grid-column: 1/-1
    }

    .v2-prototype .mn-today .mn-tds {
        display: grid;
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr)
    }

    .v2-prototype .mn-bdh h3 {
        font-size: 22px
    }

    .v2-prototype .mn-th, .v2-prototype .mn-tr {
        grid-template-columns:64px minmax(0, 1fr) 96px 180px 92px;
        gap: 12px
    }

    .v2-prototype .mn-tbl.jb .mn-th, .v2-prototype .mn-tbl.jb .mn-tr {
        grid-template-columns:64px minmax(0, 1fr) 96px 180px 92px 30px
    }

    .v2-prototype .mn-how {
        gap: 14px
    }

    .v2-prototype .mn-hbox {
        padding: 22px;
        border-radius: 22px
    }

    .v2-prototype .mn-co {
        grid-template-columns:260px minmax(0, 1fr);
        gap: 28px;
        padding: 32px;
        border-radius: 26px
    }

    .v2-prototype .mn-logos {
        grid-template-columns:repeat(4, minmax(0, 1fr))
    }

    .v2-prototype .mn-logo b {
        text-wrap: balance
    }

    .v2-prototype .mn-with {
        margin-top: 84px
    }

    .v2-prototype .mn-with .wrap {
        grid-template-columns:minmax(0, 1fr) 340px;
        gap: 36px;
        padding-top: 64px;
        padding-bottom: 64px
    }

    .v2-prototype .mn-wl h2 {
        font-size: 30px
    }

    .v2-prototype .lg-grid {
        grid-template-columns:300px minmax(0, 1fr)
    }

    .v2-prototype .lg-fv > b {
        display: flex
    }

    .v2-prototype .tl {
        grid-template-columns:minmax(0, 1fr);
        gap: 28px
    }

    .v2-prototype .tl-rail {
        position: static;
        display: grid;
        grid-template-columns:1fr 1fr;
        padding-top: 0
    }

    .v2-prototype .tl-rail .mn-sad {
        height: 150px !important
    }

    .v2-prototype .tl-tabs {
        top: 64px;
        z-index: 31;
        margin: 0 -20px;
        padding: 10px 20px;
        gap: 8px;
        border-bottom: 1px solid var(--line2);
        overflow-x: auto;
        scrollbar-width: none
    }

    .v2-prototype .tl-tabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .tl-tabs a {
        height: 42px;
        border-radius: 999px;
        font-size: 14.5px;
        white-space: nowrap;
        padding: 0 16px
    }

    .v2-prototype .tl-tabs a.on {
        box-shadow: none
    }

    .v2-prototype .tl-blk {
        grid-template-columns:210px minmax(0, 1fr);
        gap: 24px;
        padding: 30px 26px 30px 30px;
        border-radius: 24px;
        scroll-margin-top: 130px
    }

    .v2-prototype .tl-bt h3 {
        font-size: 25px
    }

.v2-prototype .mn-hero-in {
        height: 760px;
        --px: 40px
    }

    .v2-prototype .mn-copy {
        top: 58px;
        right: var(--px);
        max-width: none
    }

    .v2-prototype .mn-copy h1 {
        font-size: 46px
    }

    .v2-prototype .mn-slide.s5 .mn-copy h1 {
        font-size: 40px
    }

    .v2-prototype .mn-sub p {
        font-size: 16px
    }

    .v2-prototype .mn-vis {
        top: auto;
        bottom: 160px;
        right: auto;
        left: 50%;
        margin-left: -240px;
        width: 480px;
        height: 340px;
        scale: .8;
        transform-origin: 50% 100%
    }

    .v2-prototype .mn-htabs {
        right: var(--px);
        bottom: 28px;
        overflow-x: auto;
        scrollbar-width: none
    }

    .v2-prototype .mn-htabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .mn-htab {
        flex: 0 0 146px;
        width: 146px;
        min-width: 146px;
        padding: 0 12px;
        justify-content: space-between
    }

    .v2-prototype .mn-htab .ar {
        display: none
    }

    .v2-prototype .mn-htab b {
        font-size: 14px;
        white-space: nowrap
    }

    .v2-prototype .mn-pr .dt, .v2-prototype .mn-lr .src {
        display: none
    }

    .v2-prototype .mn-how {
        grid-template-columns:1fr
    }

    .v2-prototype .mn-hbox {
        display: grid;
        grid-template-columns:170px minmax(0, 1fr);
        gap: 20px;
        align-items: center
    }

    .v2-prototype .mn-hh {
        margin: 0
    }

    .v2-prototype .mn-tiles {
        grid-template-columns:repeat(4, minmax(0, 1fr));
        gap: 10px
    }

    .v2-prototype .mn-tile {
        min-height: 130px;
        padding: 14px 12px
    }

    .v2-prototype .mn-tile b {
        font-size: 13px
    }

    .v2-prototype .mn-co {
        grid-template-columns:1fr;
        gap: 22px
    }

    .v2-prototype .mn-col {
        display: grid;
        grid-template-columns:1fr 1fr;
        column-gap: 20px
    }

    .v2-prototype .mn-col h2 {
        grid-column: 1/-1;
        margin-bottom: 14px
    }

    .v2-prototype .mn-col h2 br {
        display: none
    }

    .v2-prototype .mn-coa {
        border-bottom: 1px solid #E6DFD3
    }

    .v2-prototype .mn-conote {
        grid-column: 1/-1
    }

    .v2-prototype .mn-logos {
        grid-template-columns:repeat(6, minmax(0, 1fr))
    }

    .v2-prototype .mn-with .wrap {
        grid-template-columns:1fr;
        gap: 28px
    }

    .v2-prototype .mn-wr {
        display: grid;
        grid-template-columns:1fr 1fr
    }

    .v2-prototype .mn-wr > .mn-sns:first-child {
        grid-column: 1/-1
    }

.v2-prototype .card.my-prof {
        flex-wrap: wrap;
        gap: 14px 16px;
        padding: 20px
    }

    .v2-prototype .my-prof .who2 {
        flex: 1 1 calc(100% - 84px)
    }

    .v2-prototype .my-prof .meta {
        flex-wrap: wrap;
        white-space: normal;
        row-gap: 2px
    }

    .v2-prototype .my-lic {
        flex: 1 1 300px;
        min-width: 0
    }

    .v2-prototype .my-pt {
        flex: 0 0 200px;
        min-width: 0
    }

    .v2-prototype .my-acts .card {
        padding: 18px 18px 8px
    }

    .v2-prototype .my-ptop .card {
        padding: 18px
    }

    .v2-prototype .my-ptop .big {
        font-size: 24px
    }

    .v2-prototype .my-ptop .grade {
        font-size: 17px
    }

    .v2-prototype .my-doc {
        grid-template-columns:1fr;
        gap: 12px
    }

    .v2-prototype .my-toc {
        display: none
    }

    .v2-prototype .my-tocsel {
        display: flex;
        align-items: center;
        gap: 10px;
        background: var(--bg);
        border-radius: 14px;
        padding: 8px 8px 8px 14px;
        position: sticky;
        top: 123px;
        z-index: 25;
        box-shadow: 0 6px 14px -10px rgba(14, 18, 26, .35)
    }

    .v2-prototype .my-tocsel > span {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-size: 14px;
        font-weight: 700;
        color: var(--g2);
        white-space: nowrap
    }

    .v2-prototype .my-tocsel > span .ic {
        width: 16px;
        height: 16px
    }

    .v2-prototype .my-tocsel select {
        flex: 1;
        min-width: 0;
        height: 42px;
        background-color: #fff
    }

    .v2-prototype .my-legal {
        padding: 24px
    }

    .v2-prototype .my-legal h3, .v2-prototype .my-legal h4 {
        scroll-margin-top: 200px
    }

    .v2-prototype .my-iq .card {
        min-height: 0
    }

    .v2-prototype .my-capp {
        grid-template-columns:1fr
    }

    .v2-prototype .my-capp .side {
        position: static
    }

    .v2-prototype .my-capp .side ol {
        flex-direction: row;
        gap: 10px
    }

    .v2-prototype .my-capp .side li {
        flex: 1
    }

    .v2-prototype .my-capp .side .btn.blk {
        display: inline-flex;
        width: auto;
        margin-right: 6px
    }

    .v2-prototype .my-nextbar .btn.f2 {
        min-width: 0;
        flex: 1
    }

    .v2-prototype .my-donep .wbtn {
        min-width: 280px
    }

.v2-prototype .rc-detail {
        grid-template-columns:minmax(0, 1fr);
        gap: 0
    }

    .v2-prototype .rc-side {
        position: static;
        order: -1;
        margin-bottom: 6px
    }

    .v2-prototype .card.rc-scard {
        display: grid;
        grid-template-columns:minmax(0, 1fr) 220px;
        column-gap: 20px;
        row-gap: 8px;
        align-items: start
    }

    .v2-prototype .rc-scard > * {
        grid-column: 1
    }

    .v2-prototype .rc-scard > .btn, .v2-prototype .rc-scard > p.xs {
        grid-column: 2
    }

    .v2-prototype .rc-scard > .btn.lg {
        grid-row: 1/span 2
    }

    .v2-prototype .rc-scard > [data-ask] {
        grid-row: 3
    }

    .v2-prototype .rc-scard > .rc-bmb {
        grid-row: 4
    }

    .v2-prototype .rc-scard > p.xs {
        grid-row: 5
    }

    .v2-prototype .rc-scard > :nth-child(1) {
        grid-row: 1
    }

    .v2-prototype .rc-scard > :nth-child(2) {
        grid-row: 2
    }

    .v2-prototype .rc-scard > :nth-child(3) {
        grid-row: 3
    }

    .v2-prototype .rc-scard > :nth-child(4) {
        grid-row: 4;
        align-self: end
    }

    .v2-prototype .card.rc-share {
        display: none
    }

    .v2-prototype .rc-snav {
        top: 118px
    }

    .v2-prototype .rc-sec {
        scroll-margin-top: 180px
    }

    .v2-prototype .rc-subs-g {
        grid-template-columns:repeat(7, minmax(0, 1fr));
        gap: 6px
    }

    .v2-prototype .rc-st {
        padding: 10px 4px 8px
    }

    .v2-prototype .rc-st small {
        font-size: 11.5px
    }

    .v2-prototype .rc-st b {
        font-size: 21px
    }

    .v2-prototype .rc-st span {
        font-size: 14px;
        letter-spacing: -.02em
    }

    .v2-prototype .rc-wr {
        grid-template-columns:minmax(0, 1fr) 150px auto;
        gap: 16px;
        padding: 18px
    }

    .v2-prototype .rc-wr-l {
        padding-right: 14px
    }

    .v2-prototype .rc-filt .filt {
        grid-template-columns:64px minmax(0, 1fr)
    }

.v2-prototype .jb-qc {
        min-height: 170px;
        padding: 18px
    }

    .v2-prototype .jb-kind {
        padding: 18px;
        min-height: 0
    }

    .v2-prototype .jb-kind h4 {
        font-size: 16px
    }

    .v2-prototype .jb-sech {
        margin: 28px 0 12px
    }

    .v2-prototype .jb-srch .search {
        max-width: none
    }

    .v2-prototype .jb-head {
        flex-wrap: wrap
    }

    .v2-prototype .jb-stepcard {
        padding: 20px 18px 16px
    }

    .v2-prototype .jb-stepcard .steps .st span {
        font-size: 14px;
        line-height: 1.35;
        padding: 0 2px;
        word-break: keep-all
    }

    .v2-prototype .jb-row {
        grid-template-columns:40px 1fr 130px 84px 96px;
        gap: 12px;
        padding: 14px 16px
    }

    .v2-prototype .jb-res {
        grid-template-columns:1fr 150px auto;
        gap: 16px;
        padding: 16px 18px
    }

    .v2-prototype .jb-filt .search {
        min-width: 180px !important
    }

.v2-prototype .ap-mx {
        padding: 18px 18px 16px
    }

    .v2-prototype .ap-mxs {
        overflow-x: auto;
        scrollbar-width: thin
    }

    .v2-prototype .ap-mxt thead th:first-child {
        width: 60px
    }

    .v2-prototype .ap-n {
        min-width: 38px
    }

    .v2-prototype .ap-jl .hd, .v2-prototype .ap-jr {
        grid-template-columns:56px minmax(0, 1fr) 92px 170px 60px;
        gap: 12px
    }

    .v2-prototype .ap-jr .logo-ph {
        width: 56px !important;
        height: 40px !important;
        font-size: 14px;
    }

    .v2-prototype .ap-jsub {
        padding-left: 76px
    }

    .v2-prototype .ap-cr {
        grid-template-columns:44px minmax(0, 1fr) 180px 104px 34px;
        gap: 12px;
        padding: 14px
    }

    .v2-prototype .ap-cr .av {
        width: 44px;
        height: 44px
    }

    .v2-prototype .ap-fl {
        max-width: 240px
    }

    .v2-prototype .ap-fl {
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis
    }

    .v2-prototype .ap-cgrid, .v2-prototype .ap-igrid {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype .ap-sticky {
        padding: 0
    }

    .v2-prototype .ap-form {
        max-width: none
    }

    .v2-prototype .ap-fin {
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        grid-template-areas:"tabs tabs" "mock copy";
        gap: 20px;
        padding: 18px;
        min-height: 0
    }

    .v2-prototype .ap-fl-l {
        grid-area: mock;
        padding-bottom: 0;
        gap: 10px
    }

    .v2-prototype .ap-info {
        position: static;
        align-self: flex-start;
        white-space: normal;
        line-height: 1.4;
        border-radius: 12px
    }

    .v2-prototype .ap-copy {
        grid-area: copy
    }

    .v2-prototype .ap-tabs {
        grid-area: tabs;
        flex-direction: row;
        overflow-x: auto;
        scrollbar-width: none;
        gap: 8px;
        margin: 0 -4px;
        padding: 2px 4px 4px
    }

    .v2-prototype .ap-tabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ap-tab {
        flex: 1 0 auto;
        padding: 8px 14px 8px 8px;
        border-radius: 999px;
        white-space: nowrap
    }

    .v2-prototype .ap-tab .ti {
        width: 30px;
        height: 30px;
        border-radius: 50%
    }

    .v2-prototype .ap-tab small {
        display: none
    }

    .v2-prototype .ap-ctag {
        height: auto;
        min-height: 28px;
        padding: 4px 12px;
        line-height: 1.3
    }

    .v2-prototype .ap-copy h2 {
        font-size: 23px
    }

.v2-prototype .ds-filt .search.ds-cs {
        width: 180px
    }

    .v2-prototype .ds-head {
        padding: 22px 22px;
        gap: 20px
    }

    .v2-prototype .ds-title {
        font-size: 22px
    }

    .v2-prototype .ds-cert {
        padding: 22px 22px
    }

    .v2-prototype .ds-sec {
        padding: 22px 20px
    }

    .v2-prototype .lp-hero {
        padding: 36px 32px 32px
    }

    .v2-prototype .lp-hero h2 {
        font-size: 38px
    }

    .v2-prototype .lp-form, .v2-prototype .lp-msg {
        padding-left: 32px;
        padding-right: 32px
    }

    .v2-prototype .lp-fine {
        padding: 20px 32px 26px
    }

    .v2-prototype .ds-docs {
        grid-template-columns:repeat(2, 1fr)
    }

    .v2-prototype .ds-share {
        gap: 20px
    }

    .v2-prototype .ds-bar .btn.ds-cta {
        min-width: 170px
    }

    .v2-prototype .ds-tbar {
        gap: 16px;
        padding: 14px 20px
    }

    .v2-prototype .ds-oi {
        gap: 12px
    }

.v2-prototype .dw > header.dw-hd {
        display: block;
        padding: 0;
        border-bottom: 0;
        background: linear-gradient(180deg, #0F3B35 0%, #0B302B 100%);
        position: sticky;
        top: 0;
        z-index: 40;
        justify-content: normal
    }

    .v2-prototype .dw > header.dw-hd .dw-home img {
        height: 16px
    }

    .v2-prototype .dw-filt .dw-q {
        display: block
    }

    .v2-prototype .dw-in {
        padding: 0 20px
    }

    .v2-prototype .dw-checks {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype .dw-flds {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype .dw-f.s2 {
        grid-column: 1/-1
    }

    .v2-prototype .dw-fr {
        grid-template-columns:36px 84px minmax(0, 1fr) 78px 92px 70px
    }

    .v2-prototype .dw-fr.rv {
        grid-template-columns:36px 84px minmax(0, 1fr) 72px 84px 70px
    }

    .v2-prototype .dw-s3 {
        grid-template-columns:minmax(0, 1fr) 250px
    }

    .v2-prototype .do-trh {
        grid-template-columns:minmax(0, 1.2fr) minmax(0, 1fr);
        padding: 28px
    }

    .v2-prototype .do-trh h2 {
        font-size: 24px
    }

    .v2-prototype .do-flow {
        grid-template-columns:repeat(5, minmax(0, 1fr));
        gap: 8px
    }

    .v2-prototype .do-flow > div {
        padding: 16px 12px
    }

    .v2-prototype .do-adsel {
        width: 300px
    }

    .v2-prototype .do-sum {
        bottom: 10px
    }

    .v2-prototype .do-set {
        grid-template-columns:minmax(0, 1.1fr) minmax(0, 1fr)
    }

    .v2-prototype .do-tc {
        padding: 22px
    }

    .v2-prototype .do-tc .big {
        font-size: 36px
    }

    .v2-prototype .do-tables {
        grid-template-columns:1fr 1fr;
        gap: 20px 14px
    }

    .v2-prototype .do-att {
        grid-template-columns:220px minmax(0, 1fr)
    }

.v2-prototype .dr-my {
        grid-template-columns:1.15fr 1fr 1fr;
        gap: 10px
    }

    .v2-prototype .dr-mem {
        padding: 16px;
        min-height: 0
    }

    .v2-prototype .dr-mem > b {
        font-size: 15px
    }

    .v2-prototype .dr-ml {
        padding: 12px 12px 6px
    }

    .v2-prototype .dr-ml a {
        font-size: 13px
    }

    .v2-prototype .dr-tool {
        gap: 10px
    }

    .v2-prototype .dr-tool .search {
        width: 220px;
        flex: none
    }

    .v2-prototype .dr-row {
        grid-template-columns:minmax(0, 1fr) 120px auto;
        gap: 16px;
        padding: 16px 14px 16px 18px
    }

    .v2-prototype .dr-rt {
        padding-right: 16px
    }

    .v2-prototype .dr-edw {
        grid-template-columns:minmax(0, 1fr);
        gap: 12px
    }

    .v2-prototype .dr-aside {
        order: -1;
        position: sticky;
        top: 121px;
        z-index: 25;
        gap: 0
    }

    .v2-prototype .dr-rq {
        padding: 0;
        border-radius: 14px;
        box-shadow: 0 6px 18px rgba(16, 24, 40, .07);
        overflow: hidden
    }

    .v2-prototype .dr-rq h4 {
        margin: 0;
        padding: 12px 16px;
        cursor: pointer;
        font-size: 14px;
        user-select: none;
        min-height: 46px
    }

    .v2-prototype .dr-rq h4 em {
        font-size: 14px;
        background: var(--g-l);
        padding: 2px 9px;
        border-radius: 999px
    }

    .v2-prototype .dr-rq h4:after {
        content: "";
        width: 8px;
        height: 8px;
        border-right: 2px solid var(--sub);
        border-bottom: 2px solid var(--sub);
        transform: rotate(45deg);
        margin: -4px 2px 0 6px;
        transition: transform .2s;
        flex: none
    }

    .v2-prototype .dr-aside.open .dr-rq h4:after {
        transform: rotate(-135deg);
        margin-top: 4px
    }

    .v2-prototype .dr-rq ul {
        display: none;
        grid-template-columns:repeat(3, minmax(0, 1fr));
        gap: 2px 8px;
        padding: 4px 12px 12px;
        border-top: 1px solid var(--line2)
    }

    .v2-prototype .dr-aside.open .dr-rq ul {
        display: grid
    }

    .v2-prototype .dr-rq li {
        min-height: 38px
    }

    .v2-prototype .dr-rq li.sep {
        grid-column: 1/-1;
        margin-top: 4px
    }

    .v2-prototype .dr-tip {
        display: none;
        border-radius: 0 0 14px 14px;
        margin-top: -10px;
        padding-top: 20px;
        position: relative;
        z-index: -1
    }

    .v2-prototype .dr-aside.open .dr-tip {
        display: block
    }

    .v2-prototype .dr-sec, .v2-prototype .dr-agree {
        scroll-margin-top: 190px
    }

    .v2-prototype .fsec.dr-sec {
        padding: 20px
    }

    .v2-prototype .dr-g4 {
        grid-template-columns:1fr 1fr .6fr .6fr
    }

    .v2-prototype .dr-buy {
        gap: 10px
    }

    .v2-prototype .dr-bc {
        padding: 12px
    }

    .v2-prototype .dr-bc-art svg {
        width: 160px;
        height: auto
    }

    .v2-prototype .dr-done {
        grid-template-columns:minmax(0, 1fr);
        max-width: 640px;
        margin: 0 auto
    }

    .v2-prototype .dr-next {
        display: grid;
        grid-template-columns:1fr 1fr;
        gap: 4px 8px
    }

    .v2-prototype .dr-next h4 {
        grid-column: 1/-1
    }

    .v2-prototype .dr-pvg {
        grid-template-columns:minmax(0, 1fr) 230px
    }

.v2-prototype .cm-seg {
        display: none
    }

    .v2-prototype .cm-grid3 {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype .cm-ptgrid {
        grid-template-columns:repeat(3, minmax(0, 1fr))
    }

    .v2-prototype .cm-tiles {
        grid-template-columns:repeat(6, minmax(0, 1fr))
    }

    .v2-prototype .cm-doc {
        padding: 24px 24px 20px
    }

    .v2-prototype .cm-att-l {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype table.t.cm-tbl col:nth-child(2) {
        width: 150px !important
    }

    .v2-prototype .cm-qh, .v2-prototype .cm-qr {
        grid-template-columns:minmax(0, 1fr) 72px 150px 70px;
        gap: 10px
    }

    .v2-prototype .cm-about {
        padding: 72px 32px 88px
    }

    .v2-prototype .cm-about h2 {
        font-size: 38px
    }

    .v2-prototype .cm-tile.fav .cm-tdel {
        display: flex
    }

    .v2-prototype .cm-go {
        display: none
    }

    .v2-prototype .cm-jsbar {
        flex-wrap: wrap
    }

.v2-prototype .wrap {
        padding: 0 20px
    }

    .v2-prototype #hd .wrap {
        height: 64px;
        gap: 16px
    }

    .v2-prototype #hd .lg img {
        height: 24px
    }

    .v2-prototype .gnb, .v2-prototype .util, .v2-prototype #mega, .v2-prototype #mega-dim {
        display: none !important
    }

    .v2-prototype .mtop {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-left: auto
    }

    .v2-prototype .ham {
        width: 40px;
        height: 40px;
        border: 0;
        background: var(--bg);
        border-radius: 12px;
        display: inline-flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 4px
    }

    .v2-prototype .ham i {
        display: block;
        width: 18px;
        height: 2px;
        border-radius: 2px;
        background: var(--ink)
    }

    .v2-prototype #drawer {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 250
    }

    .v2-prototype #drawer .drw-dim {
        position: absolute;
        inset: 0;
        background: rgba(14, 18, 26, .45);
        opacity: 0;
        transition: opacity .25s
    }

    .v2-prototype #drawer .drw {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: min(400px, 88vw);
        background: #fff;
        overflow: auto;
        transform: translateX(100%);
        transition: transform .28s cubic-bezier(.2, .8, .3, 1);
        display: flex;
        flex-direction: column;
        padding-bottom: 24px
    }

    .v2-prototype #drawer.on .drw-dim {
        opacity: 1
    }

    .v2-prototype #drawer.on .drw {
        transform: none
    }

    .v2-prototype .drw-hd {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 16px 18px;
        border-bottom: 1px solid var(--line2);
        position: sticky;
        top: 0;
        background: #fff;
        z-index: 1
    }

    .v2-prototype .drw-hd img {
        height: 22px
    }

    .v2-prototype .drw-hd .x {
        width: 36px;
        height: 36px;
        border-radius: 50%;
        border: 0;
        background: var(--bg);
        display: inline-flex;
        align-items: center;
        justify-content: center
    }

    .v2-prototype .drw-me {
        margin: 16px 18px 0;
        padding: 16px;
        border-radius: 16px;
        background: var(--g-ll);
        display: flex;
        flex-direction: column;
        gap: 12px
    }

    .v2-prototype .drw-q {
        display: grid;
        grid-template-columns:repeat(4, 1fr);
        gap: 6px
    }

    .v2-prototype .drw-q a, .v2-prototype .drw-q2 a {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 4px;
        font-size: 14px;
        font-weight: 600;
        padding: 10px 4px;
        border-radius: 12px;
        background: #fff;
        position: relative;
        text-align: center
    }

    .v2-prototype .drw-q a .badge-n {
        position: absolute;
        top: 4px;
        right: 6px
    }

    .v2-prototype .drw-q2 {
        display: grid;
        grid-template-columns:repeat(3, 1fr);
        gap: 6px;
        margin: 10px 18px 0
    }

    .v2-prototype .drw-q2 a {
        background: var(--bg)
    }

    .v2-prototype .drw-nav {
        margin-top: 10px
    }

    .v2-prototype .drw-nav details {
        border-bottom: 1px solid var(--line2)
    }

    .v2-prototype .drw-nav summary {
        list-style: none;
        padding: 17px 22px;
        font-size: 17px;
        font-weight: 800;
        display: flex;
        align-items: center;
        cursor: pointer
    }

    .v2-prototype .drw-nav summary::-webkit-details-marker {
        display: none
    }

    .v2-prototype .drw-nav summary:after {
        content: "";
        margin-left: auto;
        width: 8px;
        height: 8px;
        border-right: 2px solid var(--sub);
        border-bottom: 2px solid var(--sub);
        transform: rotate(45deg);
        transition: transform .2s
    }

    .v2-prototype .drw-nav details[open] summary {
        color: var(--g)
    }

    .v2-prototype .drw-nav details[open] summary:after {
        transform: rotate(-135deg)
    }

    .v2-prototype .drw-g {
        padding: 0 22px 12px
    }

    .v2-prototype .drw-g small {
        display: block;
        font-size: 14px;
        font-weight: 700;
        color: var(--g2);
        margin: 4px 0 4px
    }

    .v2-prototype .drw-g a {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px 4px;
        font-size: 15px;
        font-weight: 600;
        color: var(--ink2)
    }

    .v2-prototype .drw-out {
        margin: 18px 22px 0;
        color: var(--sub);
        font-size: 14px
    }

    .v2-prototype .nbar .wrap {
        gap: 18px
    }

    .v2-prototype .nbar a:nth-child(n+2):not(.more) {
        display: none
    }

    .v2-prototype .nbar a {
        overflow: hidden;
        text-overflow: ellipsis;
        min-width: 0
    }

    .v2-prototype .band .wrap {
        min-height: 0;
        padding-top: 22px;
        padding-bottom: 22px;
        flex-wrap: wrap;
        gap: 16px
    }

    .v2-prototype .band h1 {
        font-size: 28px
    }

    .v2-page-band .v2-wrap .side, .v2-prototype .band .side {
        margin-left: 0;
        width: 100%;
        overflow-x: auto;
        padding-bottom: 4px;
        scrollbar-width: none
    }

    .v2-prototype .band .side::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .qcard {
        flex: none
    }

    .v2-prototype .body {
        display: block;
        padding-top: 0;
        padding-bottom: 70px
    }

    .v2-prototype .lnb {
        position: sticky;
        top: 64px;
        z-index: 30;
        width: auto;
        flex-direction: row;
        gap: 6px;
        overflow-x: auto;
        margin: 0 -20px 20px;
        padding: 10px 20px;
        background: rgba(255, 255, 255, .96);
        backdrop-filter: blur(8px);
        border-bottom: 1px solid var(--line2);
        scrollbar-width: none
    }

    .v2-prototype .lnb::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .lnb .box {
        display: flex;
        gap: 6px;
        padding: 0;
        background: none;
        border-radius: 0;
        flex: none
    }

    .v2-prototype .lnb .box h4 {
        display: none
    }

    .v2-prototype .lnb a, .v2-prototype .lnb a.wr {
        flex: none;
        padding: 8px 14px;
        border-radius: 999px;
        background: var(--bg);
        font-size: 14px;
        white-space: nowrap
    }

    .v2-prototype .lnb a.wr svg {
        width: 14px;
        height: 14px
    }

    .v2-prototype .lnb a.prep:after {
        display: none
    }

    .v2-prototype .lnb a .badge-n {
        margin-left: 4px
    }

    .v2-prototype .main {
        min-width: 0
    }

    .v2-prototype .grid4 {
        grid-template-columns:repeat(2, 1fr)
    }

    .v2-prototype .dbgrid {
        grid-template-columns:repeat(2, 1fr)
    }

    .v2-prototype .kpis {
        grid-template-columns:repeat(2, 1fr)
    }

    .v2-prototype .kpis > div:nth-child(2) {
        border-right: 0
    }

    .v2-prototype .kpis > div:nth-child(-n+2) {
        border-bottom: 1px solid var(--line2)
    }

    .v2-prototype .jl .hd, .v2-prototype .jl .it {
        grid-template-columns:56px 1fr 110px 150px 40px
    }

    .v2-prototype .jl .hd > span:nth-child(5), .v2-prototype .jl .it > .due {
        display: none
    }

    .v2-prototype .pbox.lg, .v2-prototype .pbox.xl {
        width: 94vw
    }

    .v2-prototype #ft .top {
        flex-wrap: wrap;
        gap: 20px
    }

    .v2-prototype #ft .links {
        margin-left: 0;
        justify-content: flex-start
    }

    .v2-prototype .fbanner .wrap {
        height: auto;
        padding-top: 22px;
        padding-bottom: 22px;
        gap: 14px;
        flex-wrap: wrap
    }

    .v2-prototype .fbanner .btn {
        margin-left: 0
    }

    .v2-prototype .savebar {
        bottom: 0
    }

    .v2-prototype .qside {
        display: none
    }

    .v2-prototype #dev {
        left: 12px;
        bottom: 16px
    }

    .v2-prototype #dev .fab {
        width: 40px;
        height: 40px;
        padding: 0;
        justify-content: center;
        border-radius: 50%;
        font-size: 0;
        gap: 0
    }

    .v2-prototype #dev .fab i {
        width: 10px;
        height: 10px
    }

.v2-desktop-nav{display:none}.v2-header-row{height:70px;justify-content:space-between;gap:20px}.v2-hamburger{display:flex}
 .v2-theme .v2-bottom-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:10002;justify-content:space-around;background:#fffffff5;backdrop-filter:blur(16px);border-top:1px solid var(--v2-line);padding:8px 12px calc(8px + env(safe-area-inset-bottom));margin:0}
 .v2-bottom-nav a{display:flex;align-items:center;flex-direction:column;gap:3px;min-width:50px;color:#919a95;font-size:10px;font-weight:600;padding:3px 10px;border-radius:10px}
 .v2-bottom-nav a i{font-size:21px;line-height:1.3}.v2-bottom-nav a.is-active{color:var(--v2-green);background:#e7f3f070}
 .v2-theme body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
 .v2-theme .mobile-footer:has(.footernextbtn:not(.d-none),.footerfinalbtns:not(.d-none)){bottom:calc(65px + env(safe-area-inset-bottom))!important}
 .v2-hero-stage{height:490px;border-radius:24px}.v2-hero-copy{left:5%;top:65px;max-width:52%}.v2-hero-copy h1,.v2-hero-copy h2{font-size:42px}.v2-hero-copy p{font-size:14px;max-width:290px}.v2-hero-visual{right:4%;top:65px;width:39%}
 .v2-routine{padding:17px}.v2-routine-title>span{display:none}.v2-routine>a{padding:12px 0}.v2-routine>a b{font-size:12px}
 .v2-hero-tabs{left:5%;right:5%;gap:6px}.v2-hero-tabs button{padding:14px 12px;font-size:12px}.v2-hero-tabs button>span{display:none}
 .v2-solution{padding:22px;min-height:190px}.v2-solution h3{font-size:22px}.v2-solution p{font-size:12px}.v2-solution-grid{gap:12px}
 .v2-db-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

.v2-theme .quick-floating-menu{display:none!important}

.v2-header-row{height:70px}.v2-popover .v2-hov-menu{z-index:10005}.v2-menu-dim{display:none}

.progress-wrap {width:calc(100% - 20px);bottom:83px !important;}
}

@media (max-width: 575px) {
    section#mySystemSections{padding:0 10px !important;}
    .v2-subpage-frame .v2-reference-sub > .container > .card {
        margin-top:0px !important;
    }
    .v2-layout-notice-row {
        min-height: 38px;
        gap: 10px;
        padding-inline: 18px;
    }

    .v2-layout-notice {
        font-size: 11px;
    }

    .v2-layout-notice-items {
        display: block;
    }

    .v2-layout-notice-item:nth-child(n + 2) {
        display: none;
    }

    .v2-layout-notice-more {
        width: 24px;
        height: 24px;
        font-size: 19px;
    }
    :root{--w:180px}

    .pagetitle {
        max-width: 120px;
    }
    .container-sm, .container {
        max-width: 540px;
    }
    .offcanvas .offcanvas-body div .chat-left,
    .offcanvas .offcanvas-body div .chat-right {
        padding-left: 10px !important;
    }

    /*.container{padding-left:0 !important;padding-right:0 !important}*/
    .card {box-shadow: none !important;}
    .accordion-collapse{padding-left:10px !important;padding-right:10px !important;}
    .card-body {min-height:164px;}
    img.mxwidth-60 {height:unset !important;}
    .talent-badge-list .w-100 {overflow: hidden;height:30px}


    /* begin: v2 */
    .resume-mypage-preview-menu {display: none;}
    /* end: v2 */

    .accesagencybtn, .myjeonsanbtn, .mypagebtn{display: none;}

    .container-fluid.container-md.flex-nowrap{
        height: 36px;
    }

    .card .region-badge:nth-of-type(n+4),
    .card .region-badge-normal:nth-of-type(n+4) {
        display: none !important;
    }
    .myjeonsanbtn, .mypagebtn {
        display: none !important;
    }
    .d-flex.flex-column.justify-content-around{
        padding-left:15px !important;
    }

    .subscription-counts div{
        display: grid;
    }
    .companylogo {display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:12px;}

    .offcanvas-body{padding:10px !important;} .grid, .idsgrid { grid-template-columns: 1fr !important; } .ft {max-width:100% !important;width:100% !important;}
    .region-picker-kicker {margin-bottom:18px;font-size:14px;}
    .region-picker-heading h3 {font-size:25px;}
    .region-choice-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
    .region-choice {min-height:58px;font-size:15px;border-radius:10px;}

    .v2-prototype {
        padding:0 3px 0 3px;
    }

    .v2-prototype .sec-h{
        margin-top:10px;
    }

    .v2-prototype .point-title {
        margin-top:10px;
    }

    .v2-prototype .cert-shell {
        grid-template-columns: 1fr;
    }

    .v2-prototype .cert-side {
        position: static;
        order: -1;
    }

    .v2-prototype .cert-side ol {
        display: flex;
        gap: 6px;
    }

    .v2-prototype .cert-side li {
        min-height: 0;
        flex: 1;
    }

    .v2-prototype .cert-side li::after {
        display: none;
    }

    .v2-prototype .cert-side li span span {
        display: none;
    }

    .v2-prototype .cert-card,
    .v2-prototype .cert-step-card {
        padding: 18px 16px;
    }

    .v2-prototype .cert-actions {
        position: sticky;
        bottom: 8px;
        z-index: 5;
    }

    .v2-prototype .my-ccards {
        grid-template-columns: 1fr;
    }

    .v2-prototype .cert-status-detail {
        grid-template-columns: 1fr;
    }

    .chat-sidebar {width: 100%;}
    .chat-main.mobile-hidden {display: none;}
    .chat-sidebar.mobile-hidden {display: none;}

    body { font-size: 15px; }
    .header-inner, .hero-inner, .content-wrap { width: min(100% - 24px, 1320px); }
    .brand { font-size: 17px; }
    .profile-trigger strong { display: none; }
    .hero { min-height: 414px;padding-top:0px; }
    .hero-inner { padding-bottom: 50px; }
    .guide-main { grid-template-columns: 1fr; }
    .guide-main .ai-orb { --orb-size: 76px; }
    .guide-title { font-size: 29px; }
    .step-list { grid-template-columns: 1fr; }
    .role-shortcuts { grid-template-columns: 1fr; }
    .search-panel { width: calc(100% - 24px); padding: 12px; }
    .section-head { align-items: start; flex-direction: column; }
    .job-card { padding: 18px; }
    .ai-match { display: none; }

    .recruit-mode-tabs .mode-tab-wrap {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .recruit-mode-tabs .mode-tab {
        height: 48px;
        font-size: 16px;
    }

    .subscription-counts {
        align-items: stretch;
    }

    .hero-toolbar {flex-direction: column;}

    .mobile-only {width:100% !important;left:0 !important;}
    #extraDocsGuide{left:0 !important;}
    .progress-hint {width: 100%;left: 0 !important;}
    .progress-wrap {width:100%;bottom:78px !important;border-radius: 10px 10px 0 0;border-bottom:0}

    .offcanvas-body{padding:10px !important;} .grid, .idsgrid { grid-template-columns: 1fr !important; } .ft {max-width:100% !important;width:100% !important;}

    .objsection {padding-left:10px;padding-right:10px;}
    .offcanvas:not(#finalAppointmentResultOffCanvas) {max-width:100% !important;height:calc(100% - 55px) !important;width:100% !important;}
    .content{padding-bottom:37px !important;}

    .offcanvas-body{padding:10px !important;} .grid, .idsgrid { grid-template-columns: 1fr !important; } .ft {max-width:100% !important;width:100% !important;}

    .objsection {padding-left:10px;padding-right:10px;height:90% !important;top:6%;}
    .offcanvas:not(#finalAppointmentResultOffCanvas) {max-width:100% !important;height:calc(100% - 55px) !important;width:100% !important;}

    .resume-basic-info-wrap {flex-direction: column-reverse;align-items: stretch;gap: 12px;}
    .resume-photo-wrap {justify-content: center;width: 100%;padding-top: 0;padding-bottom: 4px;}
    .resume-photo-img {width: 112px;height: 112px;}
    .content{padding-bottom:37px !important;}

    .flatpickr-calendar.open {position: fixed !important;top: 50% !important;left: 50% !important;right: auto !important;bottom: auto !important;transform: translate(-50%, -50%) !important;z-index: 10060 !important;width: calc(100vw - 40px) !important;max-width: 360px !important;}
    .flatpickr-calendar.open::before,
    .flatpickr-calendar.open::after {display: none !important;}
    .flatpickr-monthSelect-months {width: 100% !important;}
    .form-check.form-check-inline {padding-left:20px !important;}
    .filename{height:fit-content !important;line-height:19px;}

    .candidate-document-guide {min-height: 156px;border-radius: 14px;}
    .candidate-document-guide-text {font-size: 18px;}

    .filewrap {padding:0px !important;}
    .filewrap .imggroup {width:150px;height:200px;}
    .filewrap input[type="range"]{ width:80px; }

    :root{--w:180px}

    .ga-empty-state {
        min-height: 76px;
        margin: 32px auto;
        padding: 20px 18px;
        border-radius: 12px;
        font-size: 15px;
    }

/*.accesagencybtn, .mypagebtn{display: none !important;}*/

    .v2-reference-home .mn .mn-sec {
        padding-top: 50px
    }

    .v2-reference-home .v2-hero-stage {
        height: 580px
    }

    .v2-reference-home .v2-hero-visual {
        top: 275px;
        right: 30px;
        width: calc(100% - 60px);
        max-width: 350px;
        height: 230px
    }

    .v2-reference-home .v2-routine > a:nth-of-type(4) {
        display: flex
    }

    .v2-reference-home .v2-routine > a {
        padding: 5px 0
    }

    .v2-reference-home .v2-routine-title {
        padding-bottom: 8px
    }

    .v2-reference-home .v2-routine-foot {
        padding-top: 7px
    }

    aside.dr-aside {display: none !important;}

    .v2-subpage-frame {
        padding: 0 !important;
    }

    .v2-prototype .mn-tabs button, .v2-prototype .mn-btabs button {
        font-size: 13px
    }

    .v2-prototype .mn-tbl.jb .mn-th, .v2-prototype .mn-tbl.jb .mn-tr {
        grid-template-columns:46px minmax(0, 1fr) 68px;
        gap: 8px
    }

    .v2-prototype .mn-tbl.jb .mn-tr > .row, .v2-prototype .mn-tbl.jb .mn-tr > .due {
        display: none
    }

    .v2-prototype .community-row {
        grid-template-columns:52px minmax(0, 1fr) 42px;
        gap: 8px;
        padding: 14px 0
    }

    .v2-prototype .community-row .author, .v2-prototype .community-row .date {
        display: none
    }

    .v2-prototype .community-search {
        flex-wrap: wrap
    }

    .v2-prototype .community-search .search {
        min-width: 180px
    }

    .v2-prototype .community-actions {
        flex-wrap: wrap
    }

    .v2-prototype .reference-db-cards {
        grid-template-columns:minmax(0, 1fr)
    }

    .v2-prototype .dw-steps {
        overflow-x: auto
    }

    .v2-prototype .dw-st {
        min-width: 115px;
        padding: 0 12px
    }

    .v2-prototype .dw-st b {
        font-size: 14px;
        padding-right: 0
    }

    .v2-writing-progress {
        padding: 14px;
        gap: 12px;
        margin-bottom: 20px
    }

    .v2-prototype .mn-tbl.jb .mn-tr.has-bookmark {
        grid-template-columns:42px minmax(0, 1fr) 24px
    }

    .v2-prototype .mn-tr.has-bookmark > .bm {
        grid-column: 3;
        grid-row: 1
    }

    .v2-prototype .mn-tr.has-bookmark > .ar, .v2-prototype .mn-tr.has-bookmark > .row, .v2-prototype .mn-tr.has-bookmark > .due {
        grid-column: 2
    }

    .v2-prototype .reference-job-list {
        grid-template-columns:1fr
    }

    .v2-prototype .reference-job {
        padding: 18px
    }

    .v2-prototype .jb-res.card-body {
        padding: 18px
    }

    .v2-reference-sub .db-product-section {
        padding: 18px
    }

    .v2-reference-sub:not(.v2-prototype) .accordion-button {
        padding: 16px !important
    }

    .v2-prototype .rc-tsearch {
        flex-wrap: wrap;
        height: auto !important;
        padding: 12px;
        gap: 10px
    }

    .v2-prototype .rc-tsearch input {
        min-width: 0;
        width: calc(50% - 36px)
    }

    .v2-prototype .rc-tsearch > .btn {
        width: 100%
    }

    .v2-prototype .jb-srch {
        flex-wrap: wrap
    }

    .v2-prototype .jb-srch .search {
        width: 100%;
        flex: auto
    }

    .v2-prototype .jb-srch > .btn {
        width: 100%
    }

    .v2-prototype .ds-purchase-actions {
        bottom: 80px;
        grid-template-columns:1fr 1fr !important
    }

    .v2-prototype .ds-purchase-actions button {
        font-size: 14px
    }

    .v2-prototype .ds-url {
        flex-wrap: wrap
    }

    .v2-prototype.my-system-page .my-system-grid {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype.my-system-page .my-system-card {
        min-height: 95px;
        padding: 10px !important;
        gap: 8px
    }

    .v2-prototype .my-certline {
        flex-wrap: wrap;
        gap: 10px
    }

    .v2-prototype .my-certline .lnk {
        margin-left: 0
    }

    .v2-prototype .jb-workflow-row {
        padding: 17px 14px;
        gap: 8px;
        font-size: 13px
    }

    .v2-prototype .jb-workflow-row > .tag {
        font-size: 14px;
    }

    .v2-prototype .jb-head > .btn {
        flex: 1;
        white-space: nowrap
    }

    .v2-prototype .jb-head > div {
        flex-basis: 100% !important
    }

    .v2-prototype .reference-authorize-job {
        grid-template-columns:minmax(0, 1fr) 70px 30px;
        gap: 8px;
        padding: 16px 12px
    }

    .v2-prototype .reference-authorize-job > div {
        grid-column: 1/3
    }

    .v2-prototype .reference-authorize-job > input {
        grid-column: 3;
        grid-row: 1
    }

    .v2-prototype .reference-authorize-job > span:nth-of-type(1) {
        display: none
    }

    .v2-prototype .reference-authorize-job > span:nth-of-type(2) {
        grid-column: 1
    }

    .v2-prototype .reference-authorize-job > span:nth-of-type(3) {
        grid-column: 2
    }

    .v2-prototype .ap-jl > .hd {
        display: none
    }

    .v2-theme .v2-login-main {
        padding: 30px 20px 60px
    }

    .v2-prototype .lg-favs {
        gap: 12px !important
    }

    .v2-reference-home .mn-slides {
        display: block;
        overflow: hidden;
        padding: 0 16px
    }

    .v2-reference-home .mn-slide {
        display: none;
        width: 100%;
        height: 492px
    }

    .v2-reference-home .mn-slide.on {
        display: block
    }

    .v2-reference-home .mn-htab .bar {
        display: block;
        left: 14px;
        right: 14px;
        bottom: 3px
    }

    .v2-reference-home .mn-hero-in {
        position: relative
    }

    .v2-resume-detail .card.rc-sec, .v2-recruit-detail .card.rc-sec {
        padding: 18px 16px !important
    }

    .v2-resume-detail .card.rc-prof {
        padding: 18px 16px !important;
        flex-direction: row;
        align-items: flex-start
    }

    .v2-resume-detail .resume-basic-text > .row > div {
        grid-template-columns:82px minmax(0, 1fr);
        gap: 0 10px;
        font-size: 13px
    }

    .v2-resume-detail .rc-basic {
        flex-direction: column-reverse
    }

    .v2-resume-detail .resume-photo-wrap {
        flex-basis: auto;
        width: 110px
    }

    .v2-resume-detail .talent-search-action-row > div {
        display: flex;
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-recruit-detail .rc-sec > .w-100 > .badge {
        flex-basis: 88px;
        font-size: 12px
    }

    .v2-recruit-detail .gaoffcanvasbtn > h4 {
        font-size: 22px
    }

    .v2-recruit-detail .rc-snav {
        top: 64px
    }

    .v2-document-detail .card-body {
        padding: 18px 16px !important
    }

    .v2-recruit-overview .rc-stats {
        gap: 8px
    }

    .v2-recruit-overview .rc-stat {
        padding: 14px 10px;
        gap: 8px;
        flex-direction: column;
        align-items: flex-start
    }

    .v2-recruit-overview .rc-stat > b {
        font-size: 22px
    }

    .v2-recruit-overview .rc-stat small {
        font-size: 14px;
    }

    .v2-theme .v2-recruit-overview .card.rc-subs {
        padding: 16px !important
    }

    .v2-recruit-overview .rc-app-filter {
        padding: 16px
    }

    .v2-recruit-overview .rc-subs-g {
        max-width: calc(100% + 32px)
    }

    .v2-recruit-overview .rc-applicant-card .card-body {
        padding: 18px !important
    }

    .v2-recruit-write-list .rc-wq {
        width: 100%
    }

    .v2-recruit-write-list .rc-wbar .chips {
        display: flex;
        gap: 6px;
        flex-wrap: wrap
    }

    .v2-recruit-write-list .rc-wr .rc-wr-p {
        min-width: 0
    }

    .v2-recruit-write-list .rc-wr {
        grid-template-columns:minmax(0, 1fr)
    }

    .v2-recruit-write-list .rc-wr > .row > .btn {
        flex: 1
    }

    .v2-recruit-write-list .rc-wr > .row > .jb-dd {
        flex: 0 0 auto
    }

    .v2-recruit-overview #filterForm select {
        width: 100%;
        max-width: 100%;
        min-width: 0
    }

    .v2-recruit-overview .rc-subs-h {
        min-width: 0
    }

    .v2-recruit-overview .rc-subs-h .ttl {
        font-size: 14px
    }

    .v2-certification-status .card {
        padding: 18px 16px
    }

    .v2-certification-status .my-cstat .nm {
        flex-wrap: wrap;
        font-size: 15px
    }

    .v2-certification-status .cert-actions {
        flex-wrap: wrap
    }

    .v2-my-page .my-seg button, .v2-my-page .my-tabs button {
        padding: 0 13px;
        font-size: 13px
    }

    .v2-my-page .my-tabs {
        width: 100%;
        overflow: auto
    }

    .v2-my-page .my-ocards {
        grid-template-columns:minmax(0, 1fr)
    }

    .v2-my-page .my-point-history, .v2-my-page .my-aset > .card, .v2-my-page .my-set {
        padding: 18px 16px
    }

    .v2-my-page .my-ptop {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-my-page .my-ptop .btns {
        grid-column: 1/-1
    }

    .v2-my-page .my-al .go {
        margin-left: auto
    }

    .v2-my-page .my-ptop .big {
        font-size: 25px
    }

    .v2-my-page .my-srow {
        gap: 10px
    }

    .v2-my-page .my-srow .btn {
        white-space: nowrap;
        flex-shrink: 0
    }

    .v2-my-page .my-ptop .btns {
        grid-column: auto;
        padding: 14px 12px
    }

    .v2-my-page .my-ptop .btns .btn {
        white-space: normal;
        line-height: 1.3;
        font-size: 12px
    }

    .v2-my-phone #savePhoneBtn {
        width: 100%;
    }

    .v2-settings-document .my-tocsel {
        top: 62px;
    }

    .v2-settings-document .my-legal h3,
    .v2-settings-document .my-legal h4 {
        scroll-margin-top: 130px;
    }

    .v2-ad-inquiry .grid2 {
        grid-template-columns: minmax(0, 1fr);
    }

    .v2-ad-inquiry .my-nextbar .btn {
        flex: 1;
    }

    .v2-point-summary .rc-subs-h {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 10px;
    }

    .v2-point-summary .rc-subs-h .ttl {
        grid-column: 1;
        grid-row: 1;
    }

    .v2-point-summary .rc-subs-h > .btn {
        grid-column: 2;
        grid-row: 1;
    }

    .v2-point-summary .rc-subs-h .rc-evt {
        grid-column: 1 / -1;
        justify-self: start;
    }

    body.v2-tools-scroll-layout .v2-tools-page .tl-tabs {
        top: 62px;
    }

    body.v2-tools-scroll-layout .v2-subpage-frame .v2-subnav .lnb {
        top: 78px;
    }

    .v2-prototype .mn .mn-sec {
        padding-top: 52px
    }

    .v2-prototype .mn-head {
        margin-bottom: 20px
    }

    .v2-prototype .mn-head h2 {
        font-size: 22px;
        line-height: 1.38
    }

    .v2-prototype .mn-head p {
        font-size: 14px;
        margin-top: 8px;
        line-height: 1.6
    }

    .v2-prototype .mn-head p br {
        display: none
    }

    .v2-prototype .mn-kick {
        font-size: 14px;;
        margin-bottom: 8px
    }

    .v2-prototype .mn-hero {
        padding: 12px 0 0
    }

    .v2-prototype .mn-hero-in {
        height: auto;
        border-radius: 0;
        background: none !important;
        overflow: visible;
        display: flex;
        flex-direction: column
    }

    .v2-prototype .mn-htabs {
        position: static;
        order: -1;
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding: 0 16px 12px;
        scrollbar-width: none
    }

    .v2-prototype .mn-htabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .mn-htab, .v2-prototype .mn-hero-in.dk .mn-htab {
        flex: none;
        width: auto;
        height: 38px;
        padding: 0 14px;
        border-radius: 999px;
        background: var(--bg);
        color: var(--ink2);
        backdrop-filter: none;
        box-shadow: none
    }

    .v2-prototype .mn-htab .ar, .v2-prototype .mn-htab .bar {
        display: none
    }

    .v2-prototype .mn-htab svg {
        width: 16px;
        height: 16px
    }

    .v2-prototype .mn-htab b {
        font-size: 14px;
        white-space: nowrap
    }

    .v2-prototype .mn-htab.on, .v2-prototype .mn-hero-in.dk .mn-htab.on {
        background: var(--ink);
        color: #fff;
        box-shadow: none
    }

    .v2-prototype .mn-htab.on svg, .v2-prototype .mn-hero-in.dk .mn-htab.on svg {
        color: #7FD6C5
    }

    .v2-prototype .mn-slides {
        display: flex;
        gap: 10px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        padding: 0 16px;
        scroll-padding: 0 16px;
        scrollbar-width: none;
        overscroll-behavior-x: contain;
        padding-right:0 !important;
    }

    .v2-prototype .mn-slides::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .mn-slide {
        position: relative;
        inset: auto;
        flex: 0 0 calc(100% - 22px);
        height: 492px;
        opacity: 1;
        visibility: visible;
        border-radius: 24px;
        overflow: hidden;
        scroll-snap-align: start;
        transition: none
    }

    .v2-prototype .mn-slide:before {
        width: 360px;
        height: 360px;
        right: -120px;
        top: -120px
    }

    .v2-prototype .mn-copy {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        padding: 26px 22px 0;
        max-width: none
    }

    .v2-prototype .mn-copy > * {
        opacity: 1;
        transform: none;
        transition: none
    }

    .v2-prototype .mn-eye {
        font-size: 14px
    }

    .v2-prototype .mn-copy h1, .v2-prototype .mn-slide.s5 .mn-copy h1 {
        font-size: 27px;
        line-height: 1.28;
        margin-top: 12px;
        letter-spacing: -.04em
    }

    .v2-prototype .mn-sub {
        margin-top: 12px;
        gap: 14px
    }

    .v2-prototype .mn-sub p {
        font-size: 14px;
        width: 100%
    }

    .v2-prototype .mn-cta {
        height: 40px;
        font-size: 14px;
        padding: 0 14px 0 18px
    }

    .v2-prototype .mn-vis {
        top: auto;
        bottom: 54px;
        right: auto;
        left: 50%;
        margin-left: -240px;
        width: 480px;
        height: 340px;
        scale: .6;
        transform-origin: 50% 100%;
        opacity: 1;
        transform: none;
        transition: none
    }

    .v2-prototype .hv-float {
        animation: none
    }

    .v2-prototype .mn-hcnt {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 3px;
        position: absolute;
        right: 50px;
        bottom: 14px;
        z-index: 4;
        height: 28px;
        min-width: 52px;
        padding: 0 10px;
        border-radius: 999px;
        background: rgba(16, 24, 40, .42);
        color: rgba(255, 255, 255, .75);
        font-size: 14px;
        font-weight: 600
    }

    .v2-prototype .mn-hcnt b {
        color: #fff
    }

    .v2-prototype .mn-play, .v2-prototype .mn-hero-in.dk .mn-play {
        position: absolute;
        right: 108px;
        bottom: 14px;
        z-index: 4;
        width: 28px;
        height: 28px;
        margin: 0;
        background: rgba(16, 24, 40, .42);
        color: #fff
    }

    .v2-prototype .mn-play svg {
        width: 12px;
        height: 12px
    }

    .v2-prototype .mn-solgrid {
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        gap: 10px
    }

    .v2-prototype .mn-sol {
        min-height: 150px;
        padding: 16px;
        border-radius: 18px
    }

    .v2-prototype .mn-sol .mn-stag {
        position: absolute;
        right: 12px;
        top: 14px;
        height: 22px;
        padding: 0 8px;
        font-size: 14px;
    }

    .v2-prototype .mn-sico {
        width: 42px;
        height: 42px;
        border-radius: 13px;
        margin-top: 0
    }

    .v2-prototype .mn-sico svg {
        width: 20px;
        height: 20px
    }

    .v2-prototype .mn-stx {
        padding-top: 14px
    }

    .v2-prototype .mn-stx b {
        font-size: 16px
    }

    .v2-prototype .mn-stx span {
        font-size: 14px;
        line-height: 1.42;
        padding-right: 0;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden
    }

    .v2-prototype .mn-sar {
        display: none
    }

    .v2-prototype .mn-sbg {
        width: 92px;
        height: 92px;
        right: -18px;
        top: auto;
        bottom: -18px
    }

    .v2-prototype .mn-solgrid > .mn-sol:first-child {
        grid-column: 1/-1;
        min-height: 0;
        flex-direction: row;
        align-items: center;
        gap: 14px;
        padding: 18px 60px 18px 18px
    }

    .v2-prototype .mn-solgrid > .mn-sol:first-child .mn-stx {
        margin-top: 0;
        padding-top: 0
    }

    .v2-prototype .mn-solgrid > .mn-sol:first-child .mn-stx span {
        -webkit-line-clamp: 3
    }

    .v2-prototype .mn-solgrid > .mn-sol:first-child .mn-sar {
        display: flex;
        right: 14px;
        bottom: 14px;
        width: 34px;
        height: 34px
    }

    .v2-prototype .mn-solgrid > .mn-sol:first-child .mn-sico {
        width: 48px;
        height: 48px
    }

    .v2-prototype .mn-ad {
        grid-column: 1/-1;
        min-height: 0;
        padding: 20px;
        border-radius: 18px
    }

    .v2-prototype .mn-ad b {
        font-size: 18px;
        max-width: 80%
    }

    .v2-prototype .mn-ad em {
        margin-top: 8px
    }

    .v2-prototype .mn-adart {
        width: 160px;
        height: 160px;
        border-width: 26px
    }

    .v2-prototype .mn-ad.a2 {
        order: 1
    }

    .v2-prototype .mn-igrid {
        grid-template-columns:minmax(0, 1fr);
        gap: 14px
    }

    .v2-prototype .mn-board {
        order: 3
    }

    .v2-prototype .mn-today {
        order: 4
    }

    .v2-prototype .mn-side {
        order: 5;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 14px
    }

    .v2-prototype .mn-igrid > .mn-sad {
        order: 6;
        min-height: 120px
    }

    .v2-prototype .mn-bans {
        order: 7
    }

    .v2-prototype .mn-box, .v2-prototype .mn-box.sm {
        padding: 16px;
        border-radius: 18px
    }

    .v2-prototype .mn-tabs {
        gap: 14px
    }

    .v2-prototype .mn-tabs a {
        font-size: 15px
    }

    .v2-prototype .mn-pr, .v2-prototype .mn-lr {
        height: 48px;
        font-size: 14px
    }

    .v2-prototype .mn-pr .tag {
        width: auto;
        min-width: 60px;
        font-size: 11.5px
    }

    .v2-prototype .mn-rl a {
        height: 42px;
        font-size: 14px
    }

    .v2-prototype .mn-rl a span {
        font-size: 14px
    }

    .v2-prototype .mn-sad {
        padding: 18px;
        border-radius: 18px
    }

    .v2-prototype .mn-sad b {
        font-size: 17px
    }

    .v2-prototype .mn-side > .mn-sad {
        height: 120px !important
    }

    .v2-prototype .mn-fav {
        padding: 12px
    }

    .v2-prototype .mn-fd p {
        font-size: 13.5px
    }

    .v2-prototype .mn-board {
        padding: 18px 16px 16px
    }

    .v2-prototype .mn-bdh {
        gap: 8px
    }

    .v2-prototype .mn-bdh h3 {
        font-size: 18px
    }

    .v2-prototype .mn-live {
        width: 20px;
        height: 20px
    }

    .v2-prototype .mn-live i {
        width: 8px;
        height: 8px
    }

    .v2-prototype .mn-tog {
        padding: 3px
    }

    .v2-prototype .mn-tog i {
        left: 3px;
        top: 3px;
        bottom: 3px;
        width: 56px
    }

    .v2-prototype .mn-tog.job i {
        transform: translateX(56px)
    }

    .v2-prototype .mn-tog button {
        width: 56px;
        height: 34px;
        font-size: 13.5px
    }

    .v2-prototype .mn-btabs {
        gap: 18px;
        margin-top: 14px;
        overflow-x: auto;
        scrollbar-width: none
    }

    .v2-prototype .mn-btabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .mn-btabs a {
        flex: none;
        font-size: 14.5px;
        white-space: nowrap;
        padding: 10px 0 11px
    }

    .v2-prototype .mn-filt {
        padding: 12px 0 14px;
        gap: 6px
    }

    .v2-prototype .mn-fr {
        align-items: center;
        gap: 8px
    }

    .v2-prototype .mn-fr > span {
        width: 42px;
        font-size: 14px;
        line-height: 34px
    }

    .v2-prototype .mn-fr .chips {
        flex: 1;
        min-width: 0;
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        margin-right: -16px;
        padding-right: 16px
    }

    .v2-prototype .mn-fr .chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .mn-chip {
        flex: none;
        height: 34px;
        font-size: 14px;
        padding: 0 12px
    }

    .v2-prototype .mn-tbl {
        border-top: 0;
        display: flex;
        flex-direction: column;
        gap: 10px
    }

    .v2-prototype .mn-th {
        display: none
    }

    .v2-prototype .mn-tr, .v2-prototype .mn-tbl.jb .mn-tr {
        position: relative;
        grid-template-columns:48px minmax(0, 1fr) auto;
        grid-template-areas:"lg tt tt" "lg ar du" "lg kd kd";
        gap: 6px 12px;
        min-height: 0;
        padding: 14px;
        border: 1px solid var(--line);
        border-radius: 16px;
        align-items: start
    }

    .v2-prototype .mn-tr > .logo-ph, .v2-prototype .mn-tr > .avw {
        grid-area: lg;
        width: 48px !important;
        height: 48px !important
    }

    .v2-prototype .mn-tr > .avw .av {
        width: 44px;
        height: 44px
    }

    .v2-prototype .mn-tr .tt {
        grid-area: tt
    }

    .v2-prototype .mn-tbl.jb .mn-tr .tt {
        padding-right: 30px
    }

    .v2-prototype .mn-tr .tt b {
        font-size: 14.5px;
        white-space: normal;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical
    }

    .v2-prototype .mn-tr .tt small {
        font-size: 14px
    }

    .v2-prototype .mn-tr .ar {
        grid-area: ar;
        font-size: 14px;
        align-self: center
    }

    .v2-prototype .mn-tr > .row.w {
        grid-area: kd
    }

    .v2-prototype .mn-tr .due {
        grid-area: du;
        font-size: 14px;
        align-self: center
    }

    .v2-prototype .mn-tr > .bm {
        position: absolute;
        right: 8px;
        top: 10px
    }

    .v2-prototype .mn-bfoot {
        padding-top: 16px
    }

    .v2-prototype .btn.mn-allbtn {
        width: 100%;
        justify-content: center
    }

    .v2-prototype .mn-today .mn-tds {
        grid-template-columns:minmax(0, 1fr)
    }

    .v2-prototype .mn-td {
        padding: 6px 12px 6px 6px;
        font-size: 14px
    }

    .v2-prototype .mn-bans {
        flex-direction: row;
        gap: 10px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        margin: 0 -16px;
        padding: 0 16px;
        scroll-padding: 0 16px;
        scrollbar-width: none
    }

    .v2-prototype .mn-bans::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .mn-bans .mn-ban {
        flex: 0 0 84%;
        min-height: 112px;
        padding: 18px 58px 18px 20px;
        justify-content: flex-end;
        scroll-snap-align: start;
        border-radius: 18px
    }

    .v2-prototype .mn-ban b {
        font-size: 16px;
        line-height: 1.4
    }

    .v2-prototype .mn-ban i {
        right: 16px;
        top: auto;
        bottom: 16px;
        margin-top: 0;
        width: 34px;
        height: 34px
    }

    .v2-prototype .mn-how {
        gap: 12px
    }

    .v2-prototype .mn-hbox {
        display: block;
        padding: 18px 16px;
        border-radius: 20px
    }

    .v2-prototype .mn-hh {
        margin-bottom: 12px
    }

    .v2-prototype .mn-hh b {
        font-size: 17px
    }

    .v2-prototype .mn-tiles {
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        gap: 8px
    }

    .v2-prototype .mn-tile {
        min-height: 118px;
        padding: 14px;
        border-radius: 16px
    }

    .v2-prototype .mn-tile i {
        width: 40px;
        height: 40px;
        border-radius: 12px
    }

    .v2-prototype .mn-tile i svg {
        width: 20px;
        height: 20px
    }

    .v2-prototype .mn-tile b {
        padding-top: 10px;
        font-size: 13.5px
    }

    .v2-prototype .mn-tile em {
        opacity: 1;
        right: 10px;
        top: 10px
    }

    .v2-prototype .mn-tile.ad b {
        font-size: 13.5px
    }

    .v2-prototype .mn-co {
        padding: 22px 16px;
        border-radius: 22px;
        gap: 18px
    }

    .v2-prototype .mn-col {
        grid-template-columns:1fr
    }

    .v2-prototype .mn-col h2 {
        font-size: 22px;
        margin-bottom: 8px
    }

    .v2-prototype .mn-coa {
        padding: 14px 2px
    }

    .v2-prototype .mn-coa b {
        font-size: 16px
    }

    .v2-prototype .mn-coa:last-of-type {
        border-bottom: 1px solid #E6DFD3
    }

    .v2-prototype .mn-logos {
        grid-template-columns:repeat(3, minmax(0, 1fr));
        gap: 8px
    }

    .v2-prototype .mn-logo {
        height: 56px;
        border-radius: 12px
    }

    .v2-prototype .mn-logo {
        padding: 0 6px
    }

    .v2-prototype .mn-logo b {
        font-size: 14px;
        text-wrap: balance
    }

    .v2-prototype .mn-with {
        margin-top: 56px
    }

    .v2-prototype .mn-with .wrap {
        padding-top: 44px;
        padding-bottom: 44px;
        gap: 24px
    }

    .v2-prototype .mn-wl h2 {
        font-size: 24px
    }

    .v2-prototype .mn-wl ul {
        margin-top: 18px;
        gap: 10px
    }

    .v2-prototype .mn-wl li {
        font-size: 15px;
        gap: 10px;
        align-items: flex-start
    }

    .v2-prototype .mn-sea {
        margin-top: 20px;
        font-size: 17px
    }

    .v2-prototype .mn-wr {
        gap: 8px
    }

    .v2-prototype .mn-sns {
        height: 54px;
        padding: 0 10px;
        gap: 10px;
        font-size: 14.5px;
        border-radius: 14px
    }

    .v2-prototype .mn-sns > svg {
        display: none
    }

    .v2-prototype .mn-wr > .mn-sns:first-child > svg {
        display: block
    }

    .v2-prototype .lgn {
        margin: 4px auto 16px
    }

    .v2-prototype .lgn h1 {
        font-size: 22px;
        margin-bottom: 16px;
        text-align: center;
        padding: 0
    }

    .v2-prototype .lg-grid {
        grid-template-columns:1fr;
        gap: 16px
    }

    .v2-prototype .lg-brand {
        order: -1;
        min-height: 196px;
        border-radius: 20px
    }

    .v2-prototype .lg-bin {
        padding: 22px 18px 0
    }

    .v2-prototype .lg-mark {
        width: 70px;
        height: 40px
    }

    .v2-prototype .lg-mark img {
        height: 40px
    }

    .v2-prototype .lg-bin h2 {
        font-size: 24px;
        margin-top: 10px
    }

    .v2-prototype .lg-bin p {
        font-size: 14px
    }

    .v2-prototype .lg-wave {
        height: 62px
    }

    .v2-prototype .lg-sns {
        height: 52px;
        font-size: 15px
    }

    .v2-prototype .lg-auto {
        min-height: 32px
    }

    .v2-prototype .lg-terms {
        text-align: center;
        line-height: 1.6
    }

    .v2-prototype .lg-fav {
        margin-top: 20px;
        padding: 16px
    }

    .v2-prototype .lg-fav > .row {
        flex-wrap: wrap;
        row-gap: 4px
    }

    .v2-prototype .lg-favs {
        display: grid;
        grid-template-columns:repeat(4, minmax(0, 1fr));
        gap: 16px 8px
    }

    .v2-prototype .lg-fv {
        width: auto;
        font-size: 14px
    }

    .v2-prototype .lg-fv > i {
        width: 52px;
        height: 52px;
        border-radius: 14px
    }

    .v2-prototype .lg-fv span {
        max-width: 100%
    }

    .v2-prototype .lg-fv > b {
        right: 6px
    }

    .v2-prototype .lg-add {
        width: 30px;
        height: 30px
    }

    .v2-prototype .tl {
        gap: 22px;
        padding-bottom: 24px
    }

    .v2-prototype .tl-tabs {
        top: 56px;
        margin: 0 -16px;
        padding: 10px 16px
    }

    .v2-prototype .tl-tabs a {
        flex: none;
        height: 38px;
        font-size: 14px
    }

    .v2-prototype .tl-sec {
        padding-top: 18px
    }

    .v2-prototype .tl-sec + .tl-sec {
        margin-top: 24px;
        padding-top: 28px
    }

    .v2-prototype .tl-sh h2 {
        font-size: 20px
    }

    .v2-prototype .tl-sh p {
        font-size: 13.5px
    }

    .v2-prototype .tl-cards {
        grid-template-columns:1fr;
        gap: 8px;
        margin-top: 14px
    }

    .v2-prototype .tl-card {
        display: grid;
        grid-template-columns:44px minmax(0, 1fr);
        column-gap: 12px;
        row-gap: 3px;
        align-items: center;
        padding: 14px 56px 14px 14px;
        border-radius: 16px
    }

    .v2-prototype .tl-card .mn-sico {
        grid-column: 1;
        grid-row: 1/4;
        margin: 0
    }

    .v2-prototype .tl-card .mn-stag {
        grid-column: 2;
        grid-row: 1;
        justify-self: start;
        height: 20px;
        font-size: 14px;;
        padding: 0 8px
    }

    .v2-prototype .tl-card b {
        grid-column: 2;
        grid-row: 2;
        margin: 0;
        font-size: 16px
    }

    .v2-prototype .tl-card > span:not(.mn-stag) {
        grid-column: 2;
        grid-row: 3;
        margin: 0;
        font-size: 13px
    }

    .v2-prototype .tl-card em {
        top: 50%;
        bottom: auto;
        margin-top: -17px;
        right: 14px;
        width: 34px;
        height: 34px
    }

    .v2-prototype .tl-blk {
        grid-template-columns:minmax(0, 1fr);
        gap: 22px;
        padding: 24px 18px 20px;
        border-radius: 22px;
        margin-top: 12px;
        scroll-margin-top: 118px
    }

    .v2-prototype .tl-bt h3 {
        font-size: 23px;
        margin-top: 12px
    }

    .v2-prototype .tl-bt p {
        font-size: 14px
    }

    .v2-prototype .tl-bt p.hd {
        font-size: 16px;
        margin-top: 10px
    }

    .v2-prototype .tl-bt .btn.tl-go {
        margin-top: 18px;
        height: 44px
    }

    .v2-prototype .tl-vis {
        min-height: 0;
        display: block
    }

    .v2-prototype .tl-rail {
        grid-template-columns:1fr
    }

    .v2-prototype .tl-rail .mn-sad {
        height: 130px !important
    }

    .v2-prototype .mk-chem {
        grid-template-columns:1fr
    }

    .v2-prototype .mk-pane + .mk-pane {
        border-left: 0;
        border-top: 1px solid var(--line2)
    }

    .v2-prototype .mk-mbody {
        grid-template-columns:minmax(0, 1fr) 84px;
        padding: 18px 14px 70px;
        min-height: 0
    }

    .v2-prototype .mk-mtx h4 {
        font-size: 17px
    }

    .v2-prototype .mk-body {
        width: 84px;
        height: 176px
    }

    .v2-prototype .mk-mcard {
        right: 14px;
        bottom: 14px;
        left: 14px
    }

    .v2-prototype .mk-mdf {
        grid-template-columns:1fr;
        min-height: 0
    }

    .v2-prototype .mk-side {
        flex-direction: row;
        flex-wrap: wrap;
        padding: 10px
    }

    .v2-prototype .mk-side small {
        display: none
    }

    .v2-prototype .mk-kb {
        grid-template-columns:1fr 1fr
    }

    .v2-prototype .mk-ap2 {
        grid-template-columns:1fr
    }

.v2-prototype .my-col {
        gap: 14px
    }

    .v2-prototype .my-h {
        font-size: 15.5px
    }

    .v2-prototype .card.my-prof {
        padding: 18px 16px;
        gap: 12px;
        background: linear-gradient(160deg, #fff 0%, #fff 50%, var(--g-ll) 100%)
    }

    .v2-prototype .my-prof .av {
        width: 52px;
        height: 52px
    }

    .v2-prototype .my-prof .who2 {
        flex-basis: calc(100% - 64px)
    }

    .v2-prototype .my-prof .who2 b {
        font-size: 18px
    }

    .v2-prototype .my-prof .who2 .nm {
        flex-wrap: wrap;
        row-gap: 4px
    }

    .v2-prototype .my-prof .who2 .nm .tag {
        margin-left: 0 !important
    }

    .v2-prototype .my-prof .meta {
        font-size: 14px
    }

    .v2-prototype .my-prof .meta span:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%
    }

    .v2-prototype .my-lic, .v2-prototype .my-pt {
        flex: 1 1 100%;
        padding: 12px 14px
    }

    .v2-prototype .my-lic b {
        font-size: 15px
    }

    .v2-prototype .my-pt {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px
    }

    .v2-prototype .my-pt small {
        flex-direction: column;
        gap: 2px;
        font-size: 14px
    }

    .v2-prototype .my-pt small em {
        font-size: 13px
    }

    .v2-prototype .my-pt b {
        margin-top: 0;
        font-size: 21px
    }

    .v2-prototype .my-reg {
        grid-template-columns:1fr;
        gap: 8px
    }

    .v2-prototype .my-reg a {
        display: grid;
        grid-template-columns:auto 1fr auto;
        grid-template-areas:"tg tt go" "tg d go";
        align-items: center;
        gap: 2px 12px;
        padding: 14px 16px;
        border-radius: 14px
    }

    .v2-prototype .my-reg a .tag {
        grid-area: tg;
        align-self: center
    }

    .v2-prototype .my-reg a b {
        grid-area: tt;
        margin: 0;
        font-size: 15.5px
    }

    .v2-prototype .my-reg a span.d {
        grid-area: d;
        font-size: 14px
    }

    .v2-prototype .my-reg a em {
        grid-area: go;
        margin: 0;
        font-size: 13px
    }

    .v2-prototype .my-reg a .bgi {
        display: none
    }

    .v2-prototype .card.my-certline {
        flex-wrap: wrap;
        gap: 4px 8px;
        padding: 14px 16px;
        font-size: 14px
    }

    .v2-prototype .my-certline .muted {
        font-size: 13px
    }

    .v2-prototype .my-certline .lnk {
        flex-basis: 100%;
        margin-left: 26px;
        display: flex;
        align-items: center;
        gap: 2px
    }

    .v2-prototype .my-acts {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .my-acts .card {
        padding: 14px 16px 4px
    }

    .v2-prototype .my-acts a {
        padding: 12px 2px;
        min-height: 44px
    }

    .v2-prototype .my-prep {
        padding: 44px 18px;
        border-radius: 16px
    }

    .v2-prototype .my-prep .ci {
        width: 68px;
        height: 68px;
        border-radius: 20px
    }

    .v2-prototype .my-prep h2 {
        font-size: 21px
    }

    .v2-prototype .my-prep p {
        font-size: 13.5px
    }

    .v2-prototype .my-prep p br {
        display: none
    }

    .v2-prototype .my-prep .row {
        flex-direction: column;
        align-items: stretch
    }

    .v2-prototype .my-prep .row .btn {
        width: 100%
    }

    .v2-prototype .my-seg {
        width: 100%
    }

    .v2-prototype .my-seg a {
        flex: 1;
        justify-content: center;
        height: 42px;
        padding: 0 10px
    }

    .v2-prototype .my-al {
        display: grid;
        grid-template-columns:36px 1fr 40px;
        gap: 6px 12px;
        padding: 14px 2px;
        align-items: start
    }

    .v2-prototype .my-al .ico {
        grid-row: 1/3;
        width: 36px;
        height: 36px
    }

    .v2-prototype .my-al .tx {
        grid-column: 2
    }

    .v2-prototype .my-al .tx b {
        font-size: 14.5px
    }

    .v2-prototype .my-al .tx p {
        font-size: 13px
    }

    .v2-prototype .my-newb {
        grid-column: 2;
        grid-row: 2;
        justify-self: start;
        height: 22px;
        font-size: 11.5px
    }

    .v2-prototype .my-al .go {
        grid-column: 3;
        grid-row: 1/3;
        align-self: center;
        width: 40px;
        height: 40px;
        padding: 0;
        font-size: 0;
        gap: 0;
        justify-content: center;
        border-radius: 50%;
        background: var(--bg)
    }

    .v2-prototype .my-al .go .ic {
        width: 18px;
        height: 18px
    }

    .v2-prototype .my-aset {
        grid-template-columns:1fr;
        gap: 10px;
        margin-top: 12px
    }

    .v2-prototype .my-aset .card {
        padding: 16px 16px 4px
    }

    .v2-prototype .my-swrow {
        min-height: 48px;
        padding: 10px 0
    }

    .v2-prototype .my-ptop {
        grid-template-columns:1fr 1fr;
        gap: 10px
    }

    .v2-prototype .my-ptop .ptcard {
        grid-column: 1/-1
    }

    .v2-prototype .my-ptop .card {
        padding: 16px
    }

    .v2-prototype .my-ptop .big {
        font-size: 26px
    }

    .v2-prototype .my-ptop .grade {
        font-size: 15px;
        margin-top: 6px
    }

    .v2-prototype .my-ptop .card:nth-child(2) .row {
        flex-wrap: wrap;
        gap: 6px
    }

    .v2-prototype .my-ptop .btns {
        gap: 6px
    }

    .v2-prototype .my-ptop .btns .btn {
        height: 44px;
        font-size: 14px;
        padding: 0 8px
    }

    .v2-prototype .my-ptop + .card {
        padding: 16px !important
    }

    .v2-prototype .my-tabs {
        width: auto;
        max-width: 100%;
        overflow-x: auto;
        scrollbar-width: none;
        margin-bottom: 14px
    }

    .v2-prototype .my-tabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .my-tabs a {
        flex: none;
        height: 38px;
        padding: 0 13px;
        font-size: 14px;
        white-space: nowrap
    }

    .v2-prototype .my-ocards {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .my-oc .top {
        flex-wrap: wrap
    }

    .v2-prototype .my-oc b {
        font-size: 15px
    }

    .v2-prototype .my-more > button {
        width: 40px;
        height: 36px
    }

    .v2-prototype .my-h small {
        font-size: 14px
    }

    .v2-prototype .my-plist {
        max-height: none
    }

    .v2-prototype .my-pi {
        padding: 13px 14px;
        gap: 10px
    }

    .v2-prototype .my-pi .nm {
        font-size: 14.5px
    }

    .v2-prototype .my-pi .pr b {
        font-size: 15.5px
    }

    .v2-prototype .my-pi .pr small {
        font-size: 11.5px
    }

    .v2-prototype .my-plist + .row {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .my-plist + .row .sp {
        display: none
    }

    .v2-prototype .my-plist + .row .seg {
        display: flex;
        width: 100%
    }

    .v2-prototype .my-plist + .row .seg > * {
        flex: 1;
        justify-content: center;
        padding: 0 6px;
        height: 38px
    }

    .v2-prototype .my-psum {
        flex-wrap: wrap;
        gap: 4px 10px;
        padding: 12px 14px
    }

    .v2-prototype .my-psum b {
        font-size: 15px
    }

    .v2-prototype .my-psum .sp + .muted {
        margin-left: auto
    }

    .v2-prototype .my-psum .sp {
        display: none
    }

    .v2-prototype .my-psum > b:first-of-type {
        flex: 1 1 60%;
        min-width: 0
    }

    .v2-prototype .my-od-sec {
        padding: 14px 14px 12px
    }

    .v2-prototype .my-od-kv {
        grid-template-columns:82px 1fr;
        font-size: 14px;
        padding: 10px 12px
    }

    .v2-prototype .my-od-kv b {
        word-break: break-all
    }

    .v2-prototype .my-pay {
        padding: 14px
    }

    .v2-prototype .my-rcpt {
        padding: 18px 14px
    }

    .v2-prototype .my-rcpt .r {
        gap: 12px
    }

    .v2-prototype .my-rcpt .r b {
        text-align: right;
        word-break: break-all
    }

    .v2-prototype .my-rcpt .stamp {
        right: auto;
        left: 40%;
        bottom: 22px;
        width: 56px;
        height: 56px;
        font-size: 14px
    }

    .v2-prototype .card.my-set {
        padding: 4px 16px 6px
    }

    .v2-prototype .my-set > h3 {
        padding: 14px 0 4px;
        font-size: 15px
    }

    .v2-prototype .my-srow {
        gap: 12px;
        padding: 14px 0;
        align-items: flex-start
    }

    .v2-prototype a.my-srow {
        align-items: center;
        min-height: 52px
    }

    .v2-prototype .my-srow .ico {
        width: 34px;
        height: 34px;
        border-radius: 10px
    }

    .v2-prototype .my-srow .tx b {
        font-size: 14.5px;
        margin-top: 6px
    }

    .v2-prototype a.my-srow .tx b {
        margin-top: 0
    }

    .v2-prototype .my-srow > .btn {
        flex: none;
        height: 38px;
        padding: 0 13px;
        margin-top: 2px
    }

    .v2-prototype .my-hbar {
        height: 52px;
        margin-bottom: 12px;
        border-radius: 12px
    }

    .v2-prototype .my-hbar h2 {
        font-size: 16px
    }

    .v2-prototype .my-back {
        width: 40px;
        height: 40px
    }

    .v2-prototype .my-box {
        padding: 18px 16px;
        border-radius: 14px
    }

    .v2-prototype .my-box > p {
        font-size: 13.5px !important
    }

    .v2-prototype .my-warnbox {
        padding: 14px;
        gap: 10px
    }

    .v2-prototype .my-warn {
        font-size: 14px;
        line-height: 1.75
    }

    .v2-prototype .my-box > .row {
        flex-wrap: wrap;
        gap: 6px !important
    }

    .v2-prototype .my-box > .row .sp {
        display: none
    }

    .v2-prototype .my-box > .row.xs {
        display: block;
        font-size: 14px;
        line-height: 1.6
    }

    .v2-prototype .my-box > .row.xs .ic {
        width: 14px;
        height: 14px;
        vertical-align: -2px;
        margin-right: 4px
    }

    .v2-prototype .my-vrow .inp {
        height: 48px;
        font-size: 15px;
        min-width: 0
    }

    .v2-prototype .my-vrow .btn {
        height: 48px;
        min-width: 96px;
        padding: 0 14px
    }

    .v2-prototype .my-ok {
        flex-wrap: wrap;
        font-size: 13.5px
    }

    .v2-prototype .my-donep {
        padding: 40px 18px 36px;
        border-radius: 16px
    }

    .v2-prototype .my-donep .ci {
        width: 60px;
        height: 60px;
        margin-bottom: 14px
    }

    .v2-prototype .my-donep .ci .ic {
        width: 30px;
        height: 30px
    }

    .v2-prototype .my-donep h2 {
        font-size: 22px
    }

    .v2-prototype .my-donep h4 {
        font-size: 14.5px
    }

    .v2-prototype .my-donep p {
        font-size: 14px;
        margin-top: 14px
    }

    .v2-prototype .my-donep .wbtn {
        min-width: 0;
        width: 100%
    }

    .v2-prototype .my-donebtns .btn {
        min-width: 0;
        flex: 1;
        height: 48px
    }

    .v2-prototype .my-dochead {
        flex-wrap: wrap;
        gap: 10px;
        margin-bottom: 12px
    }

    .v2-prototype .my-dochead h2 {
        font-size: 20px
    }

    .v2-prototype .my-dochead select {
        flex: 1 1 100%;
        min-width: 0;
        width: 100%;
        height: 44px
    }

    .v2-prototype .my-tocsel {
        padding: 6px 6px 6px 12px;
        top: 115px
    }

    .v2-prototype .my-legal {
        padding: 18px 16px;
        font-size: 14px;
        line-height: 1.8;
        border-radius: 14px
    }

    .v2-prototype .my-legal h3 {
        font-size: 16px;
        margin-top: 24px
    }

    .v2-prototype .my-legal h4 {
        font-size: 14.5px
    }

    .v2-prototype .my-legal table {
        font-size: 14px;
        word-break: keep-all
    }

    .v2-prototype .my-legal th, .v2-prototype .my-legal td {
        padding: 7px 6px
    }

    .v2-prototype .my-nextbar {
        position: sticky;
        bottom: 62px;
        z-index: 20;
        background: rgba(255, 255, 255, .97);
        backdrop-filter: blur(8px);
        margin: 16px -16px 0;
        padding: 10px 16px;
        border-top: 1px solid var(--line2)
    }

    .v2-prototype .my-nextbar .btn {
        min-width: 0;
        height: 48px;
        font-size: 15px
    }

    .v2-prototype .my-nextbar .btn:not(.f2) {
        flex: 0 0 32%
    }

    .v2-prototype .my-box .my-nextbar {
        margin: 16px -16px -18px;
        border-radius: 0 0 14px 14px
    }

    .v2-prototype .my-box .ttl {
        font-size: 14.5px
    }

    .v2-prototype .my-iq {
        grid-template-columns:1fr;
        gap: 12px;
        margin-top: 12px
    }

    .v2-prototype .my-iq .card {
        padding: 16px
    }

    .v2-prototype .my-iq .chips {
        gap: 6px
    }

    .v2-prototype .my-iq .chips .chip {
        flex: 1 1 calc(50% - 6px);
        justify-content: center;
        height: 40px
    }

    .v2-prototype .my-iq .row .btn.lg {
        height: 48px
    }

    .v2-prototype .my-iqi {
        padding: 12px 14px
    }

    .v2-prototype .my-iqi b {
        font-size: 14.5px
    }

    .v2-prototype .my-filebox {
        min-height: 48px
    }

    .v2-prototype .my-guide {
        padding: 16px;
        gap: 10px;
        border-radius: 14px
    }

    .v2-prototype .my-guide > .ic {
        width: 22px;
        height: 22px
    }

    .v2-prototype .my-guide ul {
        font-size: 13.5px
    }

    .v2-prototype .my-ccards {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .my-cc {
        padding: 18px 16px;
        border-radius: 16px
    }

    .v2-prototype .my-cc h3 {
        font-size: 16.5px
    }

    .v2-prototype .my-cc .btn {
        align-self: stretch;
        justify-content: center;
        height: 46px
    }

    .v2-prototype .my-cc.mkt {
        flex-direction: column;
        align-items: stretch;
        gap: 6px
    }

    .v2-prototype .my-cc.mkt .ci {
        margin-bottom: 8px
    }

    .v2-prototype .my-cc.mkt h3 {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        align-items: center
    }

    .v2-prototype .my-cstat {
        gap: 6px 10px
    }

    .v2-prototype .my-cstat .nm {
        font-size: 15px;
        flex-wrap: wrap
    }

    .v2-prototype .my-cstat + .row {
        flex-wrap: wrap
    }

    .v2-prototype .my-cguide .chip {
        height: 34px
    }

    .v2-prototype .my-capp {
        gap: 12px
    }

    .v2-prototype .my-capp .card {
        padding: 16px !important;
        margin-bottom: 12px
    }

    .v2-prototype .my-capp [data-steps] {
        padding: 16px 10px 12px !important
    }

    .v2-prototype .my-capp .seg.lg {
        display: flex;
        width: 100%
    }

    .v2-prototype .my-capp .seg.lg > * {
        flex: 1;
        justify-content: center;
        padding: 0 6px;
        font-size: 14px;
        height: 44px
    }

    .v2-prototype .my-capp .my-flds {
        margin-top: 16px !important
    }

    .v2-prototype .my-flds .inp {
        height: 48px
    }

    .v2-prototype .my-capp .side {
        padding: 16px
    }

    .v2-prototype .my-capp .side ol {
        flex-direction: column;
        gap: 10px
    }

    .v2-prototype .my-capp .side .btn.blk {
        display: flex;
        width: 100%;
        margin-right: 0;
        height: 44px
    }

    .v2-prototype .my-capp h3 {
        font-size: 15.5px;
        display: flex;
        align-items: center;
        gap: 6px
    }

    .v2-prototype .my-cs-ico {
        width: 64px;
        height: 64px;
        margin: 14px auto 10px
    }

    .v2-prototype .my-cs h2 {
        font-size: 19px
    }

    .v2-prototype .my-cs p.m {
        font-size: 13.5px
    }

    .v2-prototype .my-cs .acts .btn {
        height: 48px;
        font-size: 14.5px
    }

    .v2-prototype [data-csb] > .seg.w > * {
        padding: 0 4px;
        font-size: 13px
    }

.v2-prototype .my-ptop {
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr)
    }

    .v2-prototype .my-ptop > * {
        min-width: 0
    }

.v2-prototype .rc-filt {
        padding: 4px 14px;
        margin: 12px 0
    }

    .v2-prototype .rc-filt .filt {
        grid-template-columns:minmax(0, 1fr);
        gap: 6px;
        margin: 12px 0
    }

    .v2-prototype .rc-filt .filt > * {
        min-width: 0
    }

    .v2-prototype .rc-filt .filt > span {
        line-height: 1.4;
        font-size: 14px;
        font-weight: 700;
        margin-top: 6px
    }

    .v2-prototype .rc-filt .filt > span:first-child {
        margin-top: 0
    }

    .v2-prototype .rc-filt [data-f="reg"] {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        margin: 0 -14px;
        padding: 0 14px 2px
    }

    .v2-prototype .rc-filt [data-f="reg"]::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .rc-filt [data-f="reg"] .chip {
        flex: none
    }

    .v2-prototype .rc-filt .chip {
        height: 34px
    }

    .v2-prototype .search.rc-q {
        max-width: none;
        height: 44px
    }

    .v2-prototype .rc-tabs {
        gap: 18px
    }

    .v2-prototype .row.rc-res {
        flex-wrap: wrap;
        gap: 6px 10px
    }

    .v2-prototype .rc-top {
        flex-wrap: wrap;
        gap: 4px 8px;
        margin-bottom: 10px
    }

    .v2-prototype .card.rc-scard {
        display: flex;
        align-items: stretch;
        padding: 16px;
        box-shadow: none
    }

    .v2-prototype .rc-scard > .btn, .v2-prototype .rc-scard > p.xs {
        display: none
    }

    .v2-prototype .rc-stitle {
        font-size: 18px
    }

    .v2-prototype .rc-snav {
        top: 110px;
        margin: 0 -16px 4px;
        padding: 8px 16px 10px
    }

    .v2-prototype .rc-snav a {
        height: 32px;
        font-size: 13px
    }

    .v2-prototype .rc-sec {
        scroll-margin-top: 170px
    }

    .v2-prototype .rc-sec table.kv th {
        width: 88px
    }

    .v2-prototype .rc-ga {
        flex-direction: column;
        gap: 12px
    }

    .v2-prototype .rc-ga > div {
        width: 100%
    }

    .v2-prototype .rc-sup {
        grid-template-columns:repeat(3, 1fr)
    }

    .v2-prototype .rc-sup > div {
        padding: 12px 6px
    }

    .v2-prototype .rc-addr {
        flex-wrap: wrap
    }

    .v2-prototype .rc-addr .btn {
        margin-left: 30px
    }

    .v2-prototype .rc-oth a {
        flex-wrap: wrap;
        gap: 4px 8px
    }

    .v2-prototype .rc-oth b {
        flex-basis: calc(100% - 90px)
    }

    .v2-prototype .rc-oth .ic {
        display: none
    }

    .v2-prototype .rc-detail {
        padding-bottom: 76px
    }

    .v2-prototype .rc-mbar {
        display: flex;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 62px;
        z-index: 80;
        gap: 8px;
        align-items: center;
        padding: 10px 16px;
        background: rgba(255, 255, 255, .97);
        backdrop-filter: blur(10px);
        border-top: 1px solid var(--line);
        box-shadow: 0 -6px 18px rgba(16, 24, 40, .06)
    }

    .v2-prototype .rc-mbar .rc-mi {
        flex: none;
        width: 56px;
        height: 50px;
        padding: 0;
        flex-direction: column;
        gap: 2px;
        font-size: 14px;
        border-radius: 12px
    }

    .v2-prototype .rc-mbar .rc-mi .ic {
        width: 19px;
        height: 19px;
        margin: 0
    }

    .v2-prototype .rc-mbar .rc-mapply {
        flex: 1;
        height: 50px;
        font-size: 16px;
        border-radius: 12px
    }

    .v2-prototype .rc-rs {
        padding: 12px;
        gap: 10px;
        flex-wrap: wrap
    }

    .v2-prototype .rc-rs .prog {
        width: 100% !important
    }

    .v2-prototype .rc-d2 {
        font-size: 30px
    }

    .v2-prototype .rc-dco {
        margin-top: 16px
    }

    .v2-prototype .rc-dr span {
        width: 84px
    }

    .v2-prototype .rc-gs {
        flex-wrap: wrap;
        padding: 14px
    }

    .v2-prototype .rc-gs > div {
        flex: 1 1 calc(100% - 50px) !important
    }

    .v2-prototype .rc-gs .btn {
        width: 100%;
        height: 42px;
        margin-left: 44px;
        width: calc(100% - 44px)
    }

    .v2-prototype .card.rc-subs {
        padding: 16px
    }

    .v2-prototype .rc-subs-h {
        gap: 6px
    }

    .v2-prototype .rc-subs-h .sp {
        display: none
    }

    .v2-prototype .rc-subs-g {
        display: flex;
        overflow-x: auto;
        gap: 8px;
        margin: 0 -16px;
        padding: 0 16px 4px;
        scroll-snap-type: x mandatory;
        scroll-padding: 0 16px;
        scrollbar-width: none
    }

    .v2-prototype .rc-subs-g::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .rc-st {
        flex: none;
        width: 108px;
        scroll-snap-align: start
    }

    .v2-prototype .rc-st b {
        font-size: 22px
    }

    .v2-prototype .rc-stats {
        gap: 8px
    }

    .v2-prototype .rc-stat {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
        padding: 12px;
        border-radius: 14px
    }

    .v2-prototype .rc-stat > i {
        width: 32px;
        height: 32px;
        border-radius: 10px
    }

    .v2-prototype .rc-stat > i .ic {
        width: 17px;
        height: 17px
    }

    .v2-prototype .rc-stat small {
        font-size: 14px
    }

    .v2-prototype .rc-stat b {
        font-size: 20px
    }

    .v2-prototype .card.rc-box {
        padding: 16px
    }

    .v2-prototype .rc-box > .row:first-child {
        flex-wrap: wrap
    }

    .v2-prototype .rc-box > .row:first-child > .sp {
        display: none
    }

    .v2-prototype .rc-box .seg.rc-mtab {
        flex: 1 1 auto;
        min-width: 150px
    }

    .v2-prototype .rc-box .seg.rc-mtab a {
        flex: 1;
        text-align: center
    }

    .v2-prototype .rc-box > .row:first-child > .btn {
        flex: none
    }

    .v2-prototype .rc-apj {
        width: 100%
    }

    .v2-prototype .row.rc-tool {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .rc-tool .sp {
        display: none
    }

    .v2-prototype .rc-tool .chips {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        width: 100%
    }

    .v2-prototype .rc-tool .chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .rc-tool .chip {
        flex: none
    }

    .v2-prototype .rc-psel {
        width: 100%
    }

    .v2-prototype .rc-pcs {
        grid-template-columns:1fr
    }

    .v2-prototype .rc-pc {
        padding: 14px 14px 8px
    }

    .v2-prototype .rc-pc-t {
        min-height: 0;
        font-size: 15px
    }

    .v2-prototype .rc-pc-f {
        flex-wrap: wrap
    }

    .v2-prototype .card.rc-mhead {
        padding: 16px
    }

    .v2-prototype .rc-mhead h2 {
        font-size: 19px
    }

    .v2-prototype .rc-mhead .row:last-child {
        flex-wrap: wrap
    }

    .v2-prototype .rc-bbar {
        bottom: 70px;
        gap: 6px;
        padding: 8px;
        border-radius: 14px;
        margin-top: 16px
    }

    .v2-prototype .rc-bbar .rc-vsep {
        display: none
    }

    .v2-prototype .rc-bbar .btn {
        min-width: 0
    }

    .v2-prototype .rc-bbar .rc-bi {
        flex: none;
        width: 58px;
        height: 50px;
        padding: 0;
        flex-direction: column;
        gap: 2px;
        font-size: 14px;
        border-radius: 12px
    }

    .v2-prototype .rc-bbar .rc-bi .ic {
        width: 18px;
        height: 18px;
        margin: 0
    }

    .v2-prototype .rc-bbar .rc-bi > span {
        display: none
    }

    .v2-prototype .rc-bbar .rc-bi:after {
        content: attr(data-s)
    }

    .v2-prototype .rc-bbar [data-offer] {
        flex: 1;
        height: 50px;
        font-size: 15px;
        border-radius: 12px
    }

    .v2-prototype .rc-bbar .rc-bi:last-child {
        flex: 1;
        flex-direction: row;
        gap: 6px;
        font-size: 15px
    }

    .v2-prototype .rc-bbar .rc-bi:last-child > span {
        display: inline
    }

    .v2-prototype .rc-bbar .rc-bi:last-child:after {
        content: none
    }

    .v2-prototype .rc-bbar.wide .btn {
        max-width: none;
        flex: 1;
        height: 48px;
        padding: 0 10px
    }

    .v2-prototype:has(.rc-mbar) #dev, .v2-prototype:has(.rc-bbar) #dev {
        bottom: 142px
    }

    .v2-prototype:has(.rc-ed) #dev {
        bottom: 190px
    }

    .v2-prototype .search.rc-tsearch {
        flex-wrap: wrap;
        height: auto;
        border-radius: 16px;
        padding: 6px 6px 6px 14px;
        gap: 4px 8px;
        margin: 16px 0 14px
    }

    .v2-prototype .rc-tsearch input {
        height: 42px;
        flex: 1 1 calc(100% - 40px)
    }

    .v2-prototype .rc-tsearch .sep {
        flex-basis: 100%;
        width: auto;
        height: 1px;
        margin: 0 6px 0 -8px
    }

    .v2-prototype .rc-tsearch input[data-ta] {
        flex: 1 1 0
    }

    .v2-prototype .rc-tsearch .btn {
        height: 42px
    }

    .v2-prototype .rc-apx {
        flex-wrap: wrap
    }

    .v2-prototype .card.rc-prof {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        padding: 18px 16px
    }

    .v2-prototype .rc-prof .av.lg {
        width: 64px;
        height: 64px
    }

    .v2-prototype .rc-prof h2 {
        font-size: 19px
    }

    .v2-prototype .rc-prof h2 span {
        display: block;
        margin: 4px 0 0;
        font-size: 13px
    }

    .v2-prototype .card.rc-apbox {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 14px 16px
    }

    .v2-prototype .rc-apbox .sp {
        display: none
    }

    .v2-prototype .rc-apbox .seg {
        width: 100%;
        display: flex
    }

    .v2-prototype .rc-apbox .seg a {
        flex: 1;
        text-align: center
    }

    .v2-prototype .rc-basic {
        flex-direction: column-reverse;
        gap: 12px
    }

    .v2-prototype .rc-basic > div {
        width: 100%
    }

    .v2-prototype .rc-photo {
        width: 96px;
        height: 120px
    }

    .v2-prototype .rc-quota {
        flex-direction: column;
        align-items: flex-start;
        gap: 2px
    }

    .v2-prototype .rc-oinfo {
        grid-template-columns:96px minmax(0, 1fr)
    }

    .v2-prototype .rc-oinfo b {
        word-break: break-all
    }

    .v2-prototype .rc-accb .row {
        flex-wrap: wrap
    }

    .v2-prototype .rc-accb .grid2 {
        grid-template-columns:1fr 1fr;
        gap: 8px
    }

    .v2-prototype .rc-accb .grid2 .inp {
        padding: 0 10px;
        min-width: 0
    }

    .v2-prototype .rc-acc > summary {
        flex-wrap: wrap
    }

    .v2-prototype .rc-wbar {
        padding: 10px;
        gap: 8px
    }

    .v2-prototype .search.rc-wq {
        width: 100%;
        height: 44px
    }

    .v2-prototype .rc-wbar .sp {
        display: none
    }

    .v2-prototype .rc-wbar .chips {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        width: 100%
    }

    .v2-prototype .rc-wbar .chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .rc-wbar .chip {
        flex: none
    }

    .v2-prototype .rc-wr {
        grid-template-columns:1fr;
        gap: 10px;
        padding: 16px
    }

    .v2-prototype .rc-wr-l {
        border-right: 0;
        padding-right: 0
    }

    .v2-prototype .rc-wr > .row {
        justify-content: flex-end
    }

    .v2-prototype .rc-wr > .row .btn {
        flex: 1;
        height: 40px
    }

    .v2-prototype .rc-wr > .row .rc-dots {
        flex: none;
        width: 40px
    }

    .v2-prototype .rc-addrr {
        flex-wrap: wrap
    }

    .v2-prototype .rc-addrr .inp {
        flex: 1 1 100% !important
    }

    .v2-prototype .rc-duer .rc-vsep {
        display: none
    }

    .v2-prototype .rc-duer > .chips {
        width: 100%
    }

    .v2-prototype .rc-gm {
        flex-wrap: wrap
    }

    .v2-prototype .rc-gm .rc-vsep {
        display: none
    }

    .v2-prototype .rc-gm .inp {
        width: 80px !important
    }

    .v2-prototype .rc-feein td {
        padding: 6px 4px
    }

    .v2-prototype .rc-feein td .inp {
        width: 64px
    }

    .v2-prototype .rc-setrow {
        flex-direction: column;
        align-items: stretch;
        gap: 10px
    }

    .v2-prototype .rc-setrow .btn {
        width: 100%
    }

    .v2-prototype .rc-cks {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype .rc-ck {
        height: 46px;
        padding: 0 10px;
        font-size: 13px
    }

    .v2-prototype .rc-ck span {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }

    .v2-prototype .rc-pv {
        padding: 0;
        background: none
    }

    .v2-prototype .rc-pvh {
        padding: 14px;
        flex-direction: column;
        align-items: flex-start;
        gap: 10px
    }

    .v2-prototype .rc-pvh h2 {
        font-size: 18px
    }

    .v2-prototype .jb-top3 {
        display: flex;
        gap: 10px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-padding: 0 16px;
        margin: 0 -16px;
        padding: 2px 16px 6px;
        scrollbar-width: none
    }

    .v2-prototype .jb-top3::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .jb-top3 > * {
        flex: 0 0 80%;
        scroll-snap-align: start;
        min-width: 0
    }

    .v2-prototype .jb-qc {
        min-height: 150px;
        padding: 16px;
        border-radius: 16px
    }

    .v2-prototype .jb-qc h3 {
        font-size: 15px
    }

    .v2-prototype .jb-qc .jb-emp {
        font-size: 13px
    }

    .v2-prototype .jb-qc .jb-emp .ic {
        width: 28px;
        height: 28px
    }

    .v2-prototype .jb-kind {
        padding: 16px;
        border-radius: 16px;
        gap: 6px
    }

    .v2-prototype .jb-kind:hover {
        transform: none
    }

    .v2-prototype .jb-kind h4 {
        font-size: 16px;
        margin-top: 2px
    }

    .v2-prototype .jb-kind p {
        font-size: 14px;
        line-height: 1.55
    }

    .v2-prototype .jb-sech {
        margin: 26px 0 12px;
        gap: 8px;
        flex-wrap: wrap
    }

    .v2-prototype .jb-sech h2 {
        font-size: 17px
    }

    .v2-prototype .jb-srch {
        flex-direction: column;
        gap: 8px
    }

    .v2-prototype .jb-srch .search {
        max-width: none !important;
        width: 100%;
        flex: none;
        height: 44px
    }

    .v2-prototype .jb-aps {
        grid-template-columns:1fr;
        gap: 12px
    }

    .v2-prototype .jb-ap {
        padding: 16px 16px 12px;
        border-radius: 16px
    }

    .v2-prototype .jb-ap .tp {
        font-size: 14px;
        min-width: 0
    }

    .v2-prototype .jb-ap h4 {
        font-size: 15.5px;
        min-width: 0
    }

    .v2-prototype .jb-pill {
        height: 48px;
        min-width: 150px;
        font-size: 18px;
        margin-top: 6px
    }

    .v2-prototype .jb-pillsub {
        font-size: 14px
    }

    .v2-prototype .jb-ap .bt {
        flex-wrap: wrap;
        row-gap: 6px
    }

    .v2-prototype .jb-more {
        width: 44px;
        height: 40px
    }

    .v2-prototype .jb-head {
        gap: 12px;
        padding: 16px;
        border-radius: 16px
    }

    .v2-prototype .jb-head > div:nth-child(2) {
        flex: 1 1 calc(100% - 80px) !important
    }

    .v2-prototype .jb-head h3 {
        font-size: 16px;
        white-space: normal;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical
    }

    .v2-prototype .jb-head .row.xs {
        flex-wrap: wrap;
        row-gap: 4px
    }

    .v2-prototype .jb-hbtn {
        width: 100%;
        gap: 8px
    }

    .v2-prototype .jb-hbtn .btn {
        flex: 1;
        height: 44px
    }

    .v2-prototype .jb-stepcard {
        padding: 16px;
        border-radius: 16px
    }

    .v2-prototype .jb-stepcard > .row {
        flex-wrap: wrap
    }

    .v2-prototype .jb-stnow {
        display: none
    }

    .v2-prototype .jb-stepcard .steps {
        margin: 16px 0 0
    }

    .v2-prototype .jb-stepcard .steps .st span {
        display: none
    }

    .v2-prototype .jb-stepcard .steps .st i {
        width: 28px;
        height: 28px;
        font-size: 14px
    }

    .v2-prototype .jb-stepcard .steps .st:before {
        top: 14px
    }

    .v2-prototype .jb-stepcard .steps .st.on:has(+.st:not(.on)) i, .v2-prototype .jb-stepcard .steps .st:last-child.on i {
        box-shadow: 0 0 0 4px rgba(18, 122, 108, .18)
    }

    .v2-prototype .jb-stcur {
        display: flex;
        align-items: center;
        gap: 6px;
        margin-top: 14px;
        padding: 10px 14px;
        border-radius: 12px;
        background: var(--g-ll);
        color: var(--g2);
        font-size: 13.5px
    }

    .v2-prototype .jb-stcur b {
        width: 24px;
        height: 24px;
        border-radius: 50%;
        background: var(--g);
        color: #fff;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 14px
    }

    .v2-prototype .jb-stcur span {
        color: var(--sub);
        font-size: 14px
    }

    .v2-prototype .jb-stcur strong {
        margin-left: auto;
        font-weight: 800;
        font-size: 14.5px
    }

    .v2-prototype .jb-stcur .ic {
        width: 18px;
        height: 18px
    }

    .v2-prototype .jb-expl {
        align-items: flex-start;
        padding: 10px 12px
    }

    .v2-prototype .jb-expl .ic {
        flex: none;
        margin-top: 2px
    }

    .v2-prototype .jb-rows {
        border-radius: 16px
    }

    .v2-prototype .jb-rowh {
        padding: 13px 16px;
        font-size: 14px;
        flex-wrap: wrap
    }

    .v2-prototype .jb-row {
        grid-template-columns:34px minmax(0, 1fr) auto;
        grid-template-areas:"no tt bt" "no tg dt";
        gap: 6px 12px;
        padding: 14px 16px;
        align-items: center
    }

    .v2-prototype .jb-row > .no {
        grid-area: no;
        align-self: start;
        margin-top: 2px
    }

    .v2-prototype .jb-row > div:nth-child(2) {
        grid-area: tt;
        min-width: 0
    }

    .v2-prototype .jb-row > div:nth-child(3) {
        grid-area: tg
    }

    .v2-prototype .jb-row > .dt {
        grid-area: dt;
        text-align: right
    }

    .v2-prototype .jb-row > .btn {
        grid-area: bt;
        height: 36px;
        min-width: 72px
    }

    .v2-prototype .jb-row b {
        font-size: 14.5px
    }

    .v2-prototype .jb-row:not(.done) > .dt {
        visibility: hidden
    }

    .v2-prototype .jb-row small {
        display: block;
        font-size: 14px;
        line-height: 1.45;
        margin-top: 2px
    }

    .v2-prototype .jb-prog {
        font-size: 17px
    }

    .v2-prototype .jb-fbox {
        width: 100%
    }

    .v2-prototype .jb-docs > div {
        flex-wrap: wrap;
        row-gap: 6px
    }

    .v2-prototype .jb-docs > div > span:first-child {
        flex: 1 1 100%
    }

    .v2-prototype .jb-docs > div .sp {
        display: none
    }

    .v2-prototype .jb-docs > div .btn {
        margin-left: auto;
        height: 36px;
        padding: 0 14px
    }

    .v2-prototype .jb-tgl > div {
        padding: 12px
    }

    .v2-prototype .jb-mgr .row {
        flex-wrap: wrap
    }

    .v2-prototype .jb-gin, .v2-prototype .jb-gin tbody, .v2-prototype .jb-gin tr, .v2-prototype .jb-gin td {
        display: block;
        width: 100% !important
    }

    .v2-prototype .jb-gin thead {
        display: none
    }

    .v2-prototype .jb-gin td {
        padding: 0 0 10px;
        border: 0;
        text-align: left
    }

    .v2-prototype .jb-gin td:before {
        content: attr(data-lb);
        display: block;
        font-size: 14px;
        font-weight: 700;
        color: var(--sub);
        margin-bottom: 5px
    }

    .v2-prototype .jb-gin td .inp {
        height: 44px;
        font-size: 14px;
        width: 100%
    }

    .v2-prototype .jb-gin tr {
        display: grid;
        grid-template-columns:1fr 1fr;
        column-gap: 8px
    }

    .v2-prototype .jb-gin td:nth-child(-n+2) {
        grid-column: 1/-1
    }

    .v2-prototype .jb-glist, .v2-prototype .jb-glist tbody {
        display: block;
        width: 100%
    }

    .v2-prototype .jb-glist thead {
        display: none
    }

    .v2-prototype .jb-glist tr {
        display: grid;
        grid-template-columns:1fr auto;
        grid-template-areas:"k del" "a del" "s del";
        gap: 2px 10px;
        border: 1px solid var(--line);
        border-radius: 12px;
        padding: 12px 14px;
        margin-top: 8px;
        text-align: left
    }

    .v2-prototype .jb-glist td {
        border: 0;
        padding: 0;
        text-align: left;
        font-size: 13.5px
    }

    .v2-prototype .jb-glist td:nth-child(1) {
        grid-area: k
    }

    .v2-prototype .jb-glist td:nth-child(2) {
        grid-area: a;
        font-weight: 700;
        color: var(--g2)
    }

    .v2-prototype .jb-glist td:nth-child(3) {
        grid-area: s;
        color: var(--sub);
        font-size: 14px
    }

    .v2-prototype .jb-glist td:nth-child(4) {
        display: none
    }

    .v2-prototype .jb-glist td:nth-child(5) {
        grid-area: del;
        align-self: center
    }

    .v2-prototype .jb-glist td:nth-child(5) .btn {
        height: 36px
    }

    .v2-prototype .jb-glist tr.jb-gempty {
        display: block;
        border-style: dashed
    }

    .v2-prototype .jb-glist tr.jb-gempty td {
        text-align: center;
        padding: 4px !important
    }

    .v2-prototype .jb-addup {
        height: 46px
    }

    .v2-prototype .jb-ins {
        grid-template-columns:1fr 1fr
    }

    .v2-prototype .jb-ins label {
        padding: 10px;
        font-size: 14px;
        min-height: 44px
    }

    .v2-prototype .jb-pphoto .cir {
        width: 128px;
        height: 128px
    }

    .v2-prototype .jb-pphoto .cir .ic {
        width: 80px;
        height: 80px
    }

    .v2-prototype .jb-prio label {
        min-height: 44px
    }

    .v2-prototype .jb-red {
        padding: 12px 14px;
        font-size: 13px
    }

    .v2-prototype .jb-prev table.kv th {
        width: 96px
    }

    .v2-prototype .jb-filt {
        grid-template-columns:1fr;
        gap: 6px;
        margin: 12px 0 16px
    }

    .v2-prototype .jb-filt > span {
        padding-top: 6px;
        font-size: 14px
    }

    .v2-prototype .jb-filt > div {
        min-width: 0
    }

    .v2-prototype .jb-filt .search {
        min-width: 0 !important;
        margin-left: 0 !important;
        flex: 1 1 100% !important;
        height: 44px !important;
        margin-top: 4px
    }

    .v2-prototype .jb-filt .chips {
        flex-wrap: nowrap !important;
        overflow-x: auto;
        scrollbar-width: none;
        margin: 0 -16px;
        padding: 0 16px;
        max-width: calc(100% + 32px)
    }

    .v2-prototype .jb-filt .chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .jb-filt .chip {
        flex: none;
        height: 34px
    }

    .v2-prototype .jb-filt > .row.w {
        display: block
    }

    .v2-prototype .jb-res {
        grid-template-columns:1fr;
        gap: 12px;
        padding: 16px;
        border-radius: 16px
    }

    .v2-prototype .jb-res h4 {
        font-size: 16.5px;
        flex-wrap: wrap
    }

    .v2-prototype .jb-res .meta {
        flex-wrap: wrap;
        gap: 4px 12px;
        font-size: 14px
    }

    .v2-prototype .jb-res .acts .btn {
        flex: 1;
        height: 42px
    }

    .v2-prototype .jb-res .acts .jb-more {
        width: 42px;
        height: 42px;
        border: 1px solid var(--line);
        border-radius: 10px
    }

    .v2-prototype .jb-saved {
        flex-wrap: wrap;
        padding: 12px 14px
    }

    .v2-prototype .jb-basic {
        grid-template-columns:1fr;
        gap: 16px
    }

    .v2-prototype .jb-basic > div:first-child {
        display: flex;
        align-items: flex-end;
        gap: 14px
    }

    .v2-prototype .jb-photo {
        width: 96px;
        height: 120px;
        flex: none
    }

    .v2-prototype .jb-photo > .ic {
        width: 42px;
        height: 42px
    }

    .v2-prototype .jb-basic > div:first-child .btn {
        margin-top: 0 !important;
        width: auto;
        height: 44px
    }

    .v2-prototype .fsec.acc > summary {
        padding: 16px;
        font-size: 15.5px
    }

    .v2-prototype .fsec.acc > .in {
        padding: 0 16px 16px
    }

    .v2-prototype .jb-carbox {
        padding: 14px
    }

    .v2-prototype .jb-carbox > .row:first-child {
        flex-wrap: wrap
    }

    .v2-prototype .jb-carbox .row {
        flex-wrap: wrap;
        row-gap: 8px
    }

    .v2-prototype .jb-rad {
        flex-wrap: wrap;
        gap: 8px 16px
    }

    .v2-prototype .jb-sum {
        flex-wrap: wrap;
        gap: 4px 14px
    }

    .v2-prototype .jb-li {
        flex-wrap: wrap;
        row-gap: 4px
    }

    .v2-prototype .jb-uprow {
        flex-wrap: wrap;
        row-gap: 8px
    }

    .v2-prototype .jb-uprow > b {
        min-width: 0;
        flex: 1
    }

    .v2-prototype .jb-uprow [data-uplist] {
        order: 3;
        flex: 1 1 100%;
        justify-content: flex-start
    }

    .v2-prototype .jb-uprow [data-uplist]:empty {
        display: none
    }

    .v2-prototype .jb-ckl label {
        min-height: 40px
    }

    .v2-prototype .jb-pct {
        grid-template-columns:1fr 120px
    }

    .v2-prototype .jb-pct .inp.sm {
        height: 42px
    }

    .v2-prototype .jb-total {
        flex-wrap: wrap
    }

.v2-prototype .ap-mx {
        padding: 16px 0 10px;
        border-radius: 16px
    }

    .v2-prototype .ap-mx-h {
        flex-wrap: wrap;
        padding: 0 16px;
        margin-bottom: 12px;
        row-gap: 4px
    }

    .v2-prototype .ap-mx-h h3 {
        font-size: 16px
    }

    .v2-prototype .ap-mx-h > .sp {
        display: none
    }

    .v2-prototype .ap-mx-h > .xs {
        width: 100%;
        font-size: 14px;
        line-height: 1.5
    }

    .v2-prototype .ap-mxs {
        position: relative;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding: 0 12px 6px 0;
        scrollbar-width: none
    }

    .v2-prototype .ap-mxs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ap-mxt {
        table-layout: fixed;
        width: auto;
        min-width: 572px
    }

    .v2-prototype .ap-mxt thead th {
        width: 62px;
        font-size: 14px;
        padding: 8px 3px
    }

    .v2-prototype .ap-mxt thead th:first-child, .v2-prototype .ap-mxt tbody th {
        position: sticky;
        left: 0;
        z-index: 2;
        width: 64px;
        background: #fff;
        padding-left: 16px;
        box-shadow: 6px 0 8px -6px rgba(16, 24, 40, .14)
    }

    .v2-prototype .ap-mxt tbody th {
        font-size: 13px
    }

    .v2-prototype .ap-n {
        min-width: 44px;
        height: 40px;
        font-size: 15px
    }

    .v2-prototype .ap-tool {
        flex-wrap: wrap;
        margin-top: 20px;
        gap: 8px
    }

    .v2-prototype .ap-fchips {
        flex: 1;
        min-width: 0;
        overflow-x: auto;
        scrollbar-width: none
    }

    .v2-prototype .ap-fchips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ap-fc {
        height: 40px;
        flex: none;
        font-size: 13.5px
    }

    .v2-prototype .ap-icbtn {
        width: 44px;
        height: 40px;
        flex: none
    }

    .v2-prototype .ap-tool .ckb {
        margin-left: 2px;
        width: 100%;
        font-size: 14px;
        min-height: 28px
    }

    .v2-prototype .ap-tool2 {
        gap: 8px;
        margin: 10px 0 12px
    }

    .v2-prototype .ap-tool2 select.inp.ap-sort {
        min-width: 0;
        flex: 1;
        height: 44px
    }

    .v2-prototype .ap-tool2 .btn.pri {
        height: 44px;
        flex: none
    }

    .v2-prototype .ap-jl {
        border-top-width: 1px
    }

    .v2-prototype .ap-jl .hd {
        display: none
    }

    .v2-prototype .ap-jr {
        grid-template-columns:44px minmax(0, 1fr) 44px;
        grid-template-areas:"lg tt ac" "lg ar ac" "lg sa ac";
        gap: 6px 12px;
        padding: 14px 2px;
        align-items: start;
        min-height: 0
    }

    .v2-prototype .ap-jr > .logo-ph {
        grid-area: lg;
        width: 44px !important;
        height: 44px !important;
        font-size: 14px;
        line-height: 1.15;
        text-align: center;
        white-space: normal;
        word-break: break-all;
        overflow: hidden
    }

    .v2-prototype .ap-jr > .tt {
        grid-area: tt
    }

    .v2-prototype .ap-jr .tt .row {
        flex-wrap: wrap;
        gap: 4px 6px !important
    }

    .v2-prototype .ap-jr .tt b {
        font-size: 14.5px;
        white-space: normal;
        line-height: 1.4
    }

    .v2-prototype .ap-jr .tt small {
        flex-wrap: wrap;
        font-size: 14px;
        row-gap: 2px
    }

    .v2-prototype .ap-jr > .area {
        grid-area: ar;
        font-size: 14px
    }

    .v2-prototype .ap-jr > .row {
        grid-area: sa
    }

    .v2-prototype .ap-jr > .act {
        grid-area: ac;
        align-self: center
    }

    .v2-prototype .ap-more {
        width: 44px;
        height: 44px
    }

    .v2-prototype .ap-jsub {
        padding: 10px 12px 12px;
        gap: 6px
    }

    .v2-prototype .ap-cf {
        margin-top: 16px;
        padding: 14px;
        border-radius: 14px;
        gap: 10px
    }

    .v2-prototype .ap-cf1 {
        gap: 8px
    }

    .v2-prototype .ap-cf1 > select.inp {
        width: 100% !important;
        height: 44px
    }

    .v2-prototype .ap-cf1 > [data-ymw] {
        width: 100%
    }

    .v2-prototype .ap-ym {
        flex: 1;
        height: 44px
    }

    .v2-prototype .ap-ym button {
        width: 40px
    }

    .v2-prototype .ap-ym b {
        flex: 1;
        min-width: 0
    }

    .v2-prototype .ap-cf1 .ckb {
        font-size: 14px;
        min-height: 32px
    }

    .v2-prototype .chips.ap-stchips {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        margin: 0 -14px;
        padding: 0 14px
    }

    .v2-prototype .ap-stchips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ap-stc {
        flex: none;
        height: 38px;
        font-size: 13px
    }

    .v2-prototype .ap-cf3 {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .ap-cf3 select.inp.ap-sort {
        flex: 1;
        min-width: 0;
        height: 44px
    }

    .v2-prototype .ap-cf3 .seg > * {
        height: 34px;
        font-size: 13px
    }

    .v2-prototype .ap-cf3 > .sp {
        display: none
    }

    .v2-prototype .ap-cf3 > [data-hidn]:empty {
        display: none
    }

    .v2-prototype .ap-chd {
        margin: 16px 0 10px;
        gap: 8px 10px
    }

    .v2-prototype .ap-chd > .sp {
        display: none
    }

    .v2-prototype .ap-chd > .btn.pri {
        order: -1;
        width: 100%;
        height: 46px
    }

    .v2-prototype .ap-chd > [data-fls] {
        width: 100%;
        flex-wrap: wrap
    }

    .v2-prototype .ap-chd > [data-fls]:empty {
        display: none
    }

    .v2-prototype .ap-selall {
        min-height: 40px;
        font-size: 14px
    }

    .v2-prototype .ap-fl {
        max-width: 100%;
        height: 30px
    }

    .v2-prototype .ap-cr {
        grid-template-columns:44px minmax(0, 1fr) 44px;
        grid-template-areas:"av m ck" "s s s" "d d d";
        gap: 10px 12px;
        padding: 14px
    }

    .v2-prototype .ap-cr > .av {
        grid-area: av
    }

    .v2-prototype .ap-cr > .m {
        grid-area: m
    }

    .v2-prototype .ap-cr .m > b {
        flex-wrap: wrap;
        gap: 4px 6px;
        font-size: 15px
    }

    .v2-prototype .ap-cr .bi {
        font-size: 14px
    }

    .v2-prototype .ap-cr > .s {
        grid-area: s;
        padding-top: 10px;
        border-top: 1px dashed var(--line)
    }

    .v2-prototype .ap-cr > .d {
        grid-area: d;
        flex-direction: row;
        align-items: center;
        justify-content: space-between
    }

    .v2-prototype .ap-rs {
        padding: 7px 10px;
        font-size: 14px
    }

    .v2-prototype .ap-cr > .ap-ck {
        grid-area: ck;
        width: 40px;
        height: 40px;
        align-self: center
    }

    .v2-prototype .ap-actbar {
        bottom: 70px;
        gap: 8px;
        padding: 10px;
        border-radius: 16px;
        margin-top: 16px
    }

    .v2-prototype .ap-actbar > span {
        min-width: 0;
        flex: none;
        font-size: 14px;
        padding-left: 4px
    }

    .v2-prototype .ap-actbar .btn.lg {
        height: 46px;
        font-size: 14px;
        padding: 0 10px
    }

    .v2-prototype .ap-actbar .btn.lg .ic {
        width: 16px;
        height: 16px
    }

    .v2-prototype .ap-seg {
        margin-bottom: 16px
    }

    .v2-prototype .ap-seg .seg {
        width: 100%;
        overflow: visible
    }

    .v2-prototype .ap-seg .seg > * {
        flex: 1;
        min-width: 0;
        height: 44px
    }

    .v2-prototype .chips.ap-cfch {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        margin: 0 -16px 4px;
        padding: 0 16px
    }

    .v2-prototype .ap-cfch::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ap-cfch .chip {
        flex: none;
        height: 38px
    }

    .v2-prototype .ap-gh {
        margin: 16px 0 8px
    }

    .v2-prototype .ap-cgrid, .v2-prototype .ap-igrid {
        grid-template-columns:minmax(0, 1fr);
        gap: 10px
    }

    .v2-prototype .ap-cc {
        padding: 14px 16px
    }

    .v2-prototype .ap-cc > b {
        font-size: 16px;
        margin-top: 4px
    }

    .v2-prototype .ap-sticky {
        bottom: 72px;
        margin-top: 20px
    }

    .v2-prototype .ap-sticky .btn.lg {
        height: 50px;
        font-size: 15.5px
    }

    .v2-prototype .ap-ih {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .ap-ih .btn.pri {
        height: 44px
    }

    .v2-prototype .ap-ic {
        padding: 16px
    }

    .v2-prototype .ap-ic > .row b {
        font-size: 15px
    }

    .v2-prototype .ap-ic p {
        min-height: 0
    }

    .v2-prototype .ap-bh {
        height: 52px;
        border-radius: 12px
    }

    .v2-prototype .ap-bh b {
        font-size: 15px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis
    }

    .v2-prototype .ap-back {
        width: 44px;
        height: 44px
    }

    .v2-prototype .ap-bh {
        grid-template-columns:44px minmax(0, 1fr) 44px;
        padding: 0 4px
    }

    .v2-prototype .ap-tprev {
        padding: 12px 14px;
        font-size: 14px;
        word-break: break-all
    }

    .v2-prototype .ap-fbody {
        padding: 16px;
        border-radius: 14px
    }

    .v2-prototype .ap-fbody .fld[style*="max-width"] {
        max-width: none !important
    }

    .v2-prototype .ap-fbody .inp {
        height: 46px
    }

    .v2-prototype [data-wform] .fld > .row {
        flex-wrap: wrap;
        gap: 6px !important
    }

    .v2-prototype [data-wform] .fld > .row > .btn {
        flex: 1 1 auto;
        height: 44px;
        font-size: 13.5px
    }

    .v2-prototype [data-wform] .fld > .row > span {
        width: 100%;
        margin: 2px 0 0 !important;
        font-size: 14px
    }

    .v2-prototype .ap-file {
        padding: 10px;
        gap: 10px
    }

    .v2-prototype .ap-fbody > .row:first-child {
        flex-wrap: wrap;
        row-gap: 8px
    }

    .v2-prototype .ap-fbody > .row:first-child > span {
        white-space: nowrap
    }

    .v2-prototype .ap-fbody > .row:first-child > .sp {
        display: none
    }

    .v2-prototype .ap-fbody > .row:first-child > .xs {
        margin-left: auto
    }

    .v2-prototype .ap-fbody > .row:first-child > .tag {
        order: -1;
        width: auto
    }

    .v2-prototype .ap-fbody > .row:first-child:after {
        content: "";
        order: -1;
        flex-basis: 100%;
        height: 0
    }

    .v2-prototype .ap-lb {
        margin: 16px 0 6px
    }

    .v2-prototype .ap-ans {
        padding: 16px
    }

    .v2-prototype .ap-fbtn .btn.lg {
        height: 50px
    }

    .v2-prototype .ap-prep {
        padding: 30px 18px 36px;
        min-height: 0;
        border-radius: 18px
    }

    .v2-prototype .ap-prep-svg {
        width: 100%;
        max-width: 280px;
        height: auto
    }

    .v2-prototype .ap-prep h2 {
        font-size: 26px
    }

    .v2-prototype .ap-prep p {
        font-size: 14px
    }

    .v2-prototype .ap-prep .row .btn {
        height: 46px
    }

    .v2-prototype .ap-bh.store {
        margin-bottom: 12px
    }

    .v2-prototype .ap-feat {
        border-radius: 20px;
        padding: 10px
    }

    .v2-prototype .ap-fin {
        grid-template-columns:minmax(0, 1fr);
        grid-template-areas:"tabs" "copy" "mock";
        gap: 16px;
        padding: 14px 12px 16px;
        border-radius: 14px
    }

    .v2-prototype .ap-tabs {
        margin: 0 -12px;
        padding: 2px 12px 4px
    }

    .v2-prototype .ap-tab {
        flex: none;
        height: 44px;
        font-size: 13.5px
    }

    .v2-prototype .ap-tab b {
        font-size: 13.5px
    }

    .v2-prototype .ap-copy h2 {
        font-size: 21px;
        margin-top: 12px
    }

    .v2-prototype .ap-copy p {
        font-size: 13.5px
    }

    .v2-prototype .ap-fl-l {
        padding-bottom: 0;
        gap: 10px
    }

    .v2-prototype .ap-mock {
        height: 236px
    }

    .v2-prototype .ap-info {
        position: static;
        white-space: normal;
        align-self: flex-start;
        font-size: 14px;
        line-height: 1.4;
        border-radius: 12px
    }

    .v2-prototype .ap-pt {
        flex-wrap: wrap;
        margin: 22px 0 10px;
        row-gap: 8px
    }

    .v2-prototype .ap-pt h3 {
        width: 100%;
        font-size: 18px
    }

    .v2-prototype .ap-pt > .sp {
        display: none
    }

    .v2-prototype .ap-pt > .sm {
        font-size: 14px
    }

    .v2-prototype .ap-mypt {
        font-size: 16px
    }

    .v2-prototype .ap-pt > .btn {
        height: 36px;
        padding: 0 10px;
        font-size: 14px
    }

    .v2-prototype .ap-pt > .btn .ic {
        width: 14px;
        height: 14px
    }

    .v2-prototype .ap-pt > .btn.soft {
        margin-left: auto
    }

    .v2-prototype .ap-plist {
        grid-template-columns:minmax(0, 1fr);
        gap: 10px
    }

    .v2-prototype .ap-pc {
        padding: 16px;
        border-radius: 16px
    }

    .v2-prototype .ap-pc > .row b {
        font-size: 16px
    }

    .v2-prototype .ap-step {
        height: 44px
    }

    .v2-prototype .ap-step button {
        width: 42px
    }

    .v2-prototype .ap-pc [data-buy] {
        height: 46px;
        padding: 0 22px
    }

    .v2-prototype .ap-mh {
        gap: 12px;
        padding: 12px
    }

    .v2-prototype .ap-mh .logo-ph {
        width: 64px !important;
        height: 40px !important;
        font-size: 14px;
        flex: none
    }

    .v2-prototype .ap-mh p {
        font-size: 13px
    }

    .v2-prototype .ap-ms input {
        min-width: 0
    }

    .v2-prototype .ap-ms .btn {
        height: 36px;
        flex: none
    }

    .v2-prototype .ap-mres {
        max-height: 42vh
    }

    .v2-prototype .ap-mc {
        gap: 10px
    }

    .v2-prototype .ap-agree {
        padding: 10px;
        font-size: 13px
    }

    .v2-prototype .ap-lsj {
        padding: 12px
    }

    .v2-prototype .ap-lsm a {
        min-height: 50px
    }

    .v2-prototype .ds-list .ds-tabs {
        gap: 0;
        margin-bottom: 0
    }

    .v2-prototype .ds-list .ds-tabs > a {
        padding: 10px 0;
        font-size: 15.5px;
        flex: none
    }

    .v2-prototype .ds-list .ds-tsep {
        margin: 0 14px;
        flex: none
    }

    .v2-prototype .ds-list .ds-filt {
        padding: 4px 0 4px 14px;
        margin: 12px 0 4px;
        border-radius: 14px
    }

    .v2-prototype .rc-stats {
        grid-template-columns:100% !important;
    }

    .v2-prototype .ds-list .ds-fr {
        grid-template-columns:100% !important;
        gap: 4px 8px;
        padding: 9px 0
    }

    .v2-prototype .ds-list .ds-fl {
        font-size: 14px;
        display:none !important;
    }

    .v2-prototype .ds-list .ds-fr .chips {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        padding-right: 14px;
        -webkit-overflow-scrolling: touch
    }

    .v2-prototype .ds-list .ds-fr .chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ds-list .ds-fr .chip {
        flex: none;
        height: 34px
    }

    .v2-prototype .ds-list .ds-more {
        flex: none;
        height: 34px
    }

    .v2-prototype .ds-list .ds-filt .search.ds-cs {
        grid-column: 1/-1;
        width: auto;
        height: 42px;
        margin: 4px 14px 2px 0;
        font-size: 14px
    }

    .v2-prototype .ds-list .ds-fr:first-child {
        grid-template-columns:100%;
    }

    .v2-prototype .ds-list .ds-sortrow {
        flex-wrap: wrap;
        gap: 8px;
        margin: 12px 0 12px
    }

    .v2-prototype .ds-list .ds-sortrow .sort {
        width: 100%;
        overflow-x: auto;
        scrollbar-width: none;
        white-space: nowrap;
        padding: 4px 0
    }

    .v2-prototype .ds-list .ds-sortrow .sort::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ds-list .ds-sortrow .sort a {
        flex: none;
        font-size: 13.5px
    }

    .v2-prototype .ds-list .ds-sortrow .sp {
        display: none
    }

    .v2-prototype .ds-list .ds-sortrow [data-fres] {
        margin-right: auto
    }

    .v2-prototype .ds-list .ds-sortrow .btn {
        margin-left: 0;
        height: 34px
    }

    .v2-prototype .ds-grid.dbgrid {
        gap: 12px
    }

    .v2-prototype .ds-grid .dbc-top {
        padding-top: 146px
    }

    .v2-prototype .ds-grid .ds-art {
        height: 134px
    }

    .v2-prototype .ds-grid .ds-boxw {
        top: 14px;
        right: 26px
    }

    .v2-prototype .ds-grid .dbc-bot {
        display: grid;
        grid-template-columns:1fr auto;
        align-items: end;
        gap: 4px 10px;
        padding: 12px 16px 14px
    }

    .v2-prototype .ds-grid .dbc-bot > .row {
        grid-column: 1
    }

    .v2-prototype .ds-grid .dbc-bot > .tag {
        grid-column: 1;
        margin-top: 2px !important
    }

    .v2-prototype .ds-grid .dbc-bot .dbc-price {
        grid-column: 2;
        grid-row: 1/3;
        margin-top: 0;
        text-align: right
    }

    .v2-prototype .ds-view {
        gap: 12px;
        padding-bottom: 78px
    }

    .v2-prototype .ds-view .ds-head {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 18px 16px;
        border-radius: 16px;
        background: linear-gradient(160deg, #fff 60%, #F4F2FD 100%)
    }

    .v2-prototype .ds-view .ds-head .row.w {
        gap: 8px 12px !important
    }

    .v2-prototype .ds-title {
        font-size: 19px;
        line-height: 1.45;
        margin: 8px 0 10px
    }

    .v2-prototype .ds-view .ds-meta {
        flex-wrap: wrap;
        gap: 6px 14px;
        font-size: 14px;
        margin-top: 12px
    }

    .v2-prototype .ds-logo .logo-ph {
        width: 120px !important;
        height: 64px !important;
        font-size: 14px
    }

    .v2-prototype .ds-logo-def {
        width: 120px;
        height: 64px;
        flex-direction: row;
        gap: 6px
    }

    .v2-prototype .ds-logo-def .ic {
        width: 20px;
        height: 20px
    }

    .v2-prototype .ds-st {
        font-size: 19px
    }

    .v2-prototype .ds-cert {
        padding: 18px 16px;
        border-radius: 16px
    }

    .v2-prototype .ds-cert:after {
        width: 200px;
        height: 200px
    }

    .v2-prototype .ds-cert-h {
        gap: 12px
    }

    .v2-prototype .ds-cert-h h3 {
        font-size: 18px;
        line-height: 1.35
    }

    .v2-prototype .ds-cert-h small {
        font-size: 14px
    }

    .v2-prototype .ds-ribbon {
        width: 52px;
        height: 52px
    }

    .v2-prototype .ds-ribbon b {
        font-size: 14px
    }

    .v2-prototype .ds-cert-ic {
        display: none
    }

    .v2-prototype .ds-cert ul {
        grid-template-columns:1fr;
        gap: 10px;
        margin-top: 14px
    }

    .v2-prototype .ds-cert li {
        font-size: 14px;
        align-items: flex-start
    }

    .v2-prototype .ds-cert-n {
        padding: 12px 14px;
        font-size: 14px;
        line-height: 1.65
    }

    .v2-prototype .ds-sec {
        padding: 18px 16px;
        border-radius: 16px
    }

    .v2-prototype .ds-sec > h3 {
        font-size: 16px;
        flex-wrap: wrap;
        gap: 6px;
        margin-bottom: 10px
    }

    .v2-prototype .ds-kr {
        grid-template-columns:92px minmax(0, 1fr);
        gap: 10px;
        padding: 7px 0
    }

    .v2-prototype .ds-kl {
        font-size: 14px;
        padding: 0 6px;
        height: 26px;
        white-space: normal;
        text-align: center;
        line-height: 1.2
    }

    .v2-prototype .ds-kd {
        font-size: 13.5px
    }

    .v2-prototype .ds-price {
        font-size: 19px
    }

    .v2-prototype .ds-file {
        flex-wrap: wrap;
        word-break: break-all;
        font-size: 13px
    }

    .v2-prototype .ds-h4 {
        margin-top: 18px
    }

    .v2-prototype .ds-land-in {
        max-height: 420px
    }

    .v2-prototype .lp-hero {
        padding: 26px 18px 22px
    }

    .v2-prototype .lp-hero h2 {
        font-size: 30px
    }

    .v2-prototype .lp-hero p {
        font-size: 14px;
        margin: 12px 0 18px
    }

    .v2-prototype .lp-stats {
        gap: 8px
    }

    .v2-prototype .lp-stats div {
        padding: 12px 4px;
        border-radius: 12px
    }

    .v2-prototype .lp-stats b {
        font-size: 17px
    }

    .v2-prototype .lp-stats small {
        font-size: 14px;
        display: block;
        line-height: 1.35
    }

    .v2-prototype .lp-form {
        padding: 24px 18px
    }

    .v2-prototype .lp-form h4 {
        font-size: 18px
    }

    .v2-prototype .lp-form p {
        font-size: 13px
    }

    .v2-prototype .lp-in {
        height: 46px
    }

    .v2-prototype .lp-btn {
        height: 50px
    }

    .v2-prototype .lp-msg {
        padding: 28px 18px
    }

    .v2-prototype .lp-msg h4 {
        font-size: 20px
    }

    .v2-prototype .lp-msg blockquote {
        padding: 20px 18px;
        font-size: 14px;
        line-height: 1.8
    }

    .v2-prototype .lp-fine {
        padding: 18px 18px 24px;
        font-size: 11.5px
    }

    .v2-prototype .ds-land-btn {
        height: 44px;
        bottom: 20px
    }

    .v2-prototype .ds-two {
        grid-template-columns:1fr;
        gap: 12px
    }

    .v2-prototype .ds-ct {
        padding: 12px 14px
    }

    .v2-prototype .ds-ct-l {
        font-size: 14px;
        gap: 4px 6px
    }

    .v2-prototype .ds-sch > div {
        font-size: 14px;
        padding: 12px 14px;
        flex-wrap: wrap
    }

    .v2-prototype .ds-ul {
        font-size: 14px;
        line-height: 1.85
    }

    .v2-prototype .ds-view .ds-sec > .row {
        flex-wrap: wrap
    }

    .v2-prototype .ds-view .ds-sec .seg {
        flex: none
    }

    .v2-prototype .ds-view [data-ask] {
        height: 36px
    }

    .v2-prototype .ds-nt-h {
        padding: 13px 2px;
        gap: 8px;
        flex-wrap: wrap
    }

    .v2-prototype .ds-nt-h b {
        flex: 1 1 60%;
        font-size: 14px
    }

    .v2-prototype .ds-nt-h small {
        order: 3;
        flex-basis: 100%;
        padding-left: 2px;
        font-size: 14px;
        margin-top: -4px
    }

    .v2-prototype .ds-nt-h > .ic {
        order: 2
    }

    .v2-prototype .ds-qa {
        padding: 12px 2px;
        gap: 4px 10px
    }

    .v2-prototype .ds-qa-t {
        font-size: 14px
    }

    .v2-prototype .ds-qa-m {
        flex-wrap: wrap;
        gap: 4px 6px;
        font-size: 14px
    }

    .v2-prototype .ds-docs {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .ds-doc {
        padding: 14px
    }

    .v2-prototype .ds-doc > b {
        min-height: 0
    }

    .v2-prototype .ds-doc-b {
        margin-top: 10px
    }

    .v2-prototype .ds-thumb {
        width: 64px;
        height: 86px
    }

    .v2-prototype .ds-doc-r .btn {
        height: 36px;
        padding: 0 16px
    }

    .v2-prototype .ds-share {
        flex-direction: column;
        align-items: stretch;
        gap: 16px
    }

    .v2-prototype .ds-sns {
        justify-content: space-around
    }

    .v2-prototype .ds-url .inp {
        min-width: 0;
        font-size: 13px
    }

    .v2-prototype .ds-url .btn {
        flex: none
    }

    .v2-prototype .ds-bar, .v2-prototype .ds-view .ds-bar, .v2-prototype .ds-purchase .ds-bar {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 62px;
        z-index: 85;
        margin: 0;
        border: 0;
        border-top: 1px solid var(--line);
        border-radius: 0;
        padding: 10px 16px;
        gap: 8px;
        background: rgba(255, 255, 255, .97);
        box-shadow: 0 -6px 18px rgba(16, 24, 40, .08)
    }

    .v2-prototype .ds-bar .ds-bar-l {
        display: none
    }

    .v2-prototype .ds-bar .btn.lg {
        flex: 1;
        min-width: 0;
        height: 48px;
        padding: 0 8px;
        font-size: 14.5px
    }

    .v2-prototype .ds-bar .btn.ds-cta {
        min-width: 0;
        flex: 1.4
    }

    .v2-prototype .ds-bar .btn .ic {
        width: 16px;
        height: 16px
    }

    .v2-prototype .ds-bar .btn:not(.ds-cta) .ic {
        display: none
    }

    .v2-prototype .ds-bar:has(> .btn:nth-of-type(3)) .btn.lg {
        font-size: 14px;
        flex: 1
    }

    .v2-prototype .ds-buyers {
        padding-bottom: 70px
    }

    .v2-prototype .ds-adline {
        padding: 12px 14px;
        gap: 12px;
        margin-bottom: 12px
    }

    .v2-prototype .ds-adline b {
        font-size: 14px
    }

    .v2-prototype .ds-buyers .tabs {
        gap: 0
    }

    .v2-prototype .ds-buyers .tabs a {
        flex: 1;
        text-align: center;
        font-size: 15px
    }

    .v2-prototype .ds-buyers .tabs a.ds-dis {
        justify-content: center
    }

    .v2-prototype .ds-buyers > .row {
        flex-wrap: wrap;
        gap: 8px;
        margin: 12px 0 12px !important
    }

    .v2-prototype .ds-buyers > .row .chips {
        flex-wrap: nowrap;
        order: 1
    }

    .v2-prototype .ds-buyers > .row .chip {
        flex: none
    }

    .v2-prototype .ds-buyers > .row .sp {
        display: none
    }

    .v2-prototype .ds-buyers > .row [data-xls] {
        order: 0;
        margin-left: auto;
        height: 34px
    }

    .v2-prototype .ds-buyers > .row > .xs {
        order: 2;
        flex-basis: 100%;
        margin-left: 0 !important
    }

    .v2-prototype .ds-blist {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .ds-bc {
        padding: 14px 14px 24px;
        border-radius: 14px
    }

    .v2-prototype .ds-bc:hover {
        transform: none
    }

    .v2-prototype .ds-bc-s {
        left: 14px
    }

    .v2-prototype .ds-bh {
        grid-template-columns:auto minmax(0, 1fr) auto;
        gap: 10px
    }

    .v2-prototype .ds-bh .av.lg {
        width: 48px;
        height: 48px
    }

    .v2-prototype .ds-bh-n {
        font-size: 14px
    }

    .v2-prototype .ds-bh-q {
        font-size: 16px
    }

    .v2-prototype .ds-bh-q span {
        font-size: 14px
    }

    .v2-prototype .ds-bh-m small {
        font-size: 11.5px
    }

    .v2-prototype .ds-bh-r {
        font-size: 14px;
        line-height: 1.6
    }

    .v2-prototype .ds-bh-r b {
        font-size: 15px
    }

    .v2-prototype .ds-tbar {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 62px;
        margin: 0;
        border-radius: 0;
        padding: 9px 16px;
        gap: 10px;
        z-index: 85;
        box-shadow: 0 -6px 18px rgba(16, 24, 40, .18)
    }

    .v2-prototype .ds-tbar small {
        font-size: 14px
    }

    .v2-prototype .ds-tbar b {
        font-size: 15px
    }

    .v2-prototype .ds-tbar > i {
        height: 22px
    }

    .v2-prototype .ds-tbar-p b {
        font-size: 19px
    }

    .v2-prototype .ds-tbar-p b span {
        font-size: 13px
    }

    .v2-prototype .ds-purchase {
        padding-bottom: 78px
    }

    .v2-prototype .ds-bhcard, .v2-prototype .ds-bhcard.big {
        padding: 14px 14px
    }

    .v2-prototype .ds-bhcard.big .ds-bh-q {
        font-size: 17px
    }

    .v2-prototype .ds-purchase .ds-pgrid {
        grid-template-columns:1fr;
        gap: 10px;
        margin-top: 10px
    }

    .v2-prototype .ds-purchase .ds-pblk {
        padding: 14px 14px
    }

    .v2-prototype .ds-pblk > .row {
        align-items: flex-start;
        gap: 8px
    }

    .v2-prototype .ds-pblk > .row > div:first-child {
        min-width: 0
    }

    .v2-prototype .ds-pn {
        font-size: 14px
    }

    .v2-prototype .ds-pp {
        font-size: 18px
    }

    .v2-prototype .ds-pblk .btn.sm {
        height: 32px;
        padding: 0 9px;
        font-size: 14px
    }

    .v2-prototype .ds-pblk .btn.sm .ic {
        width: 14px;
        height: 14px
    }

    .v2-prototype .ds-stats b {
        font-size: 17px
    }

    .v2-prototype .ds-stats small {
        font-size: 14px;
    }

    .v2-prototype .ds-stats em {
        font-size: 14px
    }

    .v2-prototype .ds-pcbox {
        padding: 14px;
        gap: 10px
    }

    .v2-prototype .ds-pcbox > .ic {
        width: 24px;
        height: 24px;
        flex: none
    }

    .v2-prototype .ds-pcbox b {
        font-size: 14.5px
    }

    .v2-prototype .ds-tl-i {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .ds-tl-i span {
        font-size: 14px
    }

    .v2-prototype .ds-tl-i .btn {
        height: 32px
    }

    .v2-prototype .ds-oi {
        grid-template-columns:auto minmax(0, 1fr) auto;
        grid-template-areas:"lg m ar" "lg t ar" "lg q ar";
        gap: 4px 12px;
        padding: 12px 14px
    }

    .v2-prototype .ds-oi > .logo-ph {
        grid-area: lg;
        width: 44px !important;
        height: 44px !important;
        font-size: 14px
    }

    .v2-prototype .ds-oi > .ds-oi-m {
        grid-area: m
    }

    .v2-prototype .ds-oi > .tag, .v2-prototype .ds-oi > .sm {
        grid-area: t;
        justify-self: start
    }

    .v2-prototype .ds-oi > .ds-oi-q {
        grid-area: q;
        flex-direction: row;
        align-items: baseline;
        gap: 6px
    }

    .v2-prototype .ds-oi > .ic {
        grid-area: ar
    }

    .v2-prototype .ds-oi-m b {
        font-size: 14px
    }

    .v2-prototype .pbox.ds-pop .ph h3 {
        font-size: 16.5px
    }

    .v2-prototype .pbox.ds-pop .pf {
        gap: 8px
    }

    .v2-prototype .pbox.ds-pop .pf .btn {
        min-width: 0;
        padding: 0 10px
    }

    .v2-prototype .ds-way {
        padding: 14px 16px
    }

    .v2-prototype .ds-way.line {
        height: 48px
    }

    .v2-prototype .ds-prods {
        gap: 8px
    }

    .v2-prototype .ds-prod {
        grid-template-columns:auto minmax(0, 1fr);
        grid-template-areas:"ck l" "ck r";
        gap: 8px 12px;
        padding: 12px 14px
    }

    .v2-prototype .ds-prod > .ds-pck {
        grid-area: ck
    }

    .v2-prototype .ds-prod > .ds-prod-l {
        grid-area: l;
        min-width: 0
    }

    .v2-prototype .ds-prod > .ds-prod-r {
        grid-area: r;
        flex-direction: row;
        align-items: center;
        justify-content: space-between
    }

    .v2-prototype .ds-prod-l b {
        font-size: 14.5px
    }

    .v2-prototype .ds-step button {
        width: 40px;
        height: 40px
    }

    .v2-prototype .ds-step input {
        width: 52px;
        height: 40px
    }

    .v2-prototype .ds-tot b {
        font-size: 21px
    }

    .v2-prototype .ds-gfind .ds-find {
        height: 46px
    }

    .v2-prototype .ds-gfind .ds-rst {
        height: 46px;
        width: 46px
    }

    .v2-prototype .ds-pt {
        font-size: 14.5px
    }

    .v2-prototype .ds-ptot b {
        font-size: 23px
    }

    .v2-prototype .ds-sumbox {
        padding: 2px 14px
    }

    .v2-prototype .ds-sumr {
        gap: 10px
    }

    .v2-prototype .ds-sumr > div {
        min-width: 0
    }

    .v2-prototype .ds-sumr em {
        font-size: 20px;
        flex: none
    }

    .v2-prototype .ds-pbox {
        padding: 14px
    }

    .v2-prototype .ds-pbox > .row:nth-child(2) {
        flex-wrap: nowrap
    }

    .v2-prototype .ds-use {
        min-width: 0;
        flex: 1 1 0
    }

    .v2-prototype .ds-use input {
        width: 0
    }

    .v2-prototype .ds-pbox [data-all] {
        flex: none;
        height: 44px;
        padding: 0 12px
    }

    .v2-prototype .ds-found {
        padding: 10px 12px;
        gap: 10px
    }

    .v2-prototype .pbox.ds-pop.ds-done {
        width: 100%
    }

    .v2-prototype .ds-done-h {
        gap: 14px;
        margin: 8px 0 16px
    }

    .v2-prototype .ds-done-h b {
        font-size: 20px
    }

    .v2-prototype .ds-alarm {
        width: 50px !important;
        height: 50px !important
    }

    .v2-prototype .ds-qa-tt {
        font-size: 16.5px
    }

    .v2-prototype .ds-qa-c {
        font-size: 14px
    }

    .v2-prototype .ds-ans.none {
        min-height: 120px;
        font-size: 17px
    }

    .v2-prototype .ds-dsum {
        padding: 12px 14px
    }

.v2-prototype .ds-view .ds-head {
        position: relative
    }

    .v2-prototype .ds-view .ds-meta .bm {
        position: absolute;
        right: 12px;
        top: 12px;
        margin: 0
    }

    .v2-prototype .ds-view .ds-head-l > .row.w:first-child {
        padding-right: 40px
    }

    .v2-prototype:has(.ds-bar) #dev, .v2-prototype:has(.ds-tbar) #dev {
        bottom: 142px
    }

.db-transfer-history-modal {
        width: calc(100vw - 20px);
        max-height: calc(100vh - 20px)
    }

    .db-transfer-history-dialog {
        max-height: calc(100vh - 20px)
    }

    .db-transfer-history-head,
    .db-transfer-history-body,
    .db-transfer-history-foot {
        padding-right: 16px;
        padding-left: 16px
    }

    .db-transfer-history-head h2 {
        font-size: 19px
    }

    .db-transfer-history-summary {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px
    }

.v2-prototype[data-page="dbm"], .v2-prototype[data-page="dbr"] {
        padding-bottom: 0
    }

    .v2-prototype[data-page="dbm"] #toast, .v2-prototype[data-page="dbr"] #toast {
        bottom: 130px
    }

    .v2-prototype .dw-in {
        padding: 0 14px
    }

    .v2-prototype .dw-top {
        height: 56px;
        gap: 10px
    }

    .v2-prototype .dw-appic {
        width: 32px;
        height: 32px;
        border-radius: 10px
    }

    .v2-prototype .dw-tt b {
        font-size: 16px
    }

    .v2-prototype .dw-tt small {
        display: none
    }

    .v2-prototype .dw > header.dw-hd .dw-home img {
        display: none
    }

    .v2-prototype .dw-home {
        height: 34px;
        padding: 0 10px;
        font-size: 14px;
        gap: 4px
    }

    .v2-prototype .dw-home span {
        padding-left: 0;
        border-left: 0
    }

    .v2-prototype .dw-tabs {
        gap: 4px;
        height: 46px
    }

    .v2-prototype .dw-tabs a {
        flex: 1;
        justify-content: center;
        padding: 0 8px;
        height: 40px;
        font-size: 14px
    }

    .v2-prototype .dw-main {
        padding: 14px 0 6px
    }

    .v2-prototype .dw-steps {
        flex-direction: column;
        align-items: stretch;
        gap: 6px;
        padding: 8px;
        border-radius: 16px;
        margin-bottom: 12px
    }

    .v2-prototype .dw-arr {
        display: none
    }

    .v2-prototype .dw-st {
        flex: none;
        height: 48px;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        gap: 10px;
        padding: 0 14px
    }

    .v2-prototype .dw-st small {
        width: 50px;
        flex: none
    }

    .v2-prototype .dw-st b {
        font-size: 14px
    }

    .v2-prototype .dw-card {
        padding: 16px 14px;
        border-radius: 14px;
        margin-bottom: 12px
    }

    .v2-prototype .dw-ch {
        gap: 6px 8px
    }

    .v2-prototype .dw-ch h3 {
        font-size: 15.5px
    }

    .v2-prototype .dw-ch > .xs.muted {
        flex-basis: 100%;
        font-size: 14px;
        line-height: 1.5
    }

    .v2-prototype .dw-ch > .sp {
        display: none
    }

    .v2-prototype .dw-ch .btn.sm {
        height: 40px
    }

    .v2-prototype .dw-sub {
        display: flex
    }

    .v2-prototype .dw-sub a {
        flex: 1;
        justify-content: center;
        padding: 0 8px;
        height: 40px
    }

    .v2-prototype .dw-drop {
        padding: 24px 14px
    }

    .v2-prototype .dw-ft {
        border: 0;
        border-radius: 0;
        overflow: visible;
        display: flex;
        flex-direction: column;
        gap: 10px
    }

    .v2-prototype .dw-fr.h {
        display: none
    }

    .v2-prototype .dw-fr, .v2-prototype .dw-fr.rv {
        grid-template-columns:auto minmax(0, 1fr) auto auto;
        grid-template-areas:"no db res del" "fx fx fx fx" "fn fn fn fn";
        border: 1px solid var(--line);
        border-radius: 14px;
        padding: 4px 0
    }

    .v2-prototype .dw-fr > div {
        border-left: 0;
        padding: 8px 10px;
        justify-content: flex-start;
        text-align: left
    }

    .v2-prototype .dw-fr > div:nth-child(1) {
        grid-area: no;
        padding-right: 0
    }

    .v2-prototype .dw-fr > div:nth-child(2) {
        grid-area: db;
        font-size: 14px
    }

    .v2-prototype .dw-fr > div:nth-child(3) {
        grid-area: fx;
        padding: 4px 12px 8px;
        border-top: 1px dashed var(--line2)
    }

    .v2-prototype .dw-fr > div:nth-child(4) {
        grid-area: res;
        padding-left: 0;
        padding-right: 4px
    }

    .v2-prototype .dw-fr > div:nth-child(5) {
        grid-area: fn;
        padding-top: 0
    }

    .v2-prototype .dw-fr > div:nth-child(5):empty, .v2-prototype .dw-fr > div:nth-child(5):has(>.dw-wait) {
        display: none
    }

    .v2-prototype .dw-fr > div:nth-child(6) {
        grid-area: del
    }

    .v2-prototype .dw-fr > .fx {
        padding: 10px 12px
    }

    .v2-prototype .dw-fn {
        margin-bottom: 8px
    }

    .v2-prototype .dw-flds {
        grid-template-columns:1fr;
        gap: 6px
    }

    .v2-prototype .dw-f.s2, .v2-prototype .dw-f.full {
        grid-column: auto
    }

    .v2-prototype .dw-f > span {
        width: 76px;
        font-size: 14px
    }

    .v2-prototype .dw-f .inp {
        height: 40px;
        font-size: 14px
    }

    .v2-prototype .dw-f em {
        font-size: 14px
    }

    .v2-prototype .dw-meta {
        font-size: 14px
    }

    .v2-prototype .btn.xs {
        min-height: 34px
    }

    .v2-prototype .dw-pos {
        height: 34px;
        padding: 0 12px;
        font-size: 13px
    }

    .v2-prototype .dw-checks {
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap: 8px
    }

    .v2-prototype .dw-ck {
        flex-wrap: wrap;
        gap: 6px 8px;
        padding: 12px
    }

    .v2-prototype .dw-ck .ci {
        order: 0
    }

    .v2-prototype .dw-ck i {
        order: 1;
        margin-left: auto
    }

    .v2-prototype .dw-ck b {
        order: 2;
        flex-basis: 100%;
        font-size: 14px
    }

    .v2-prototype .dw-ck small {
        order: 3;
        margin-left: 0;
        font-size: 14px
    }

    .v2-prototype .dw-start {
        padding: 22px 0 16px
    }

    .v2-prototype .dw-start .btn {
        height: 54px;
        padding: 0 22px;
        font-size: 16px;
        max-width: 100%
    }

    .v2-prototype .dw-scan .lb {
        flex-wrap: wrap
    }

    .v2-prototype .dw-scan .lb span {
        white-space: normal;
        font-size: 13px
    }

    .v2-prototype .dw-scanf span {
        max-width: 100%
    }

    .v2-prototype .dw-s3 {
        grid-template-columns:1fr;
        gap: 0
    }

    .v2-prototype .dw-form .row {
        flex-wrap: wrap
    }

    .v2-prototype .dw-form .row .inp {
        flex: 1 1 180px;
        min-width: 0
    }

    .v2-prototype .dw-form .row .btn {
        flex: 1 1 auto
    }

    .v2-prototype .dw-pw .inp, .v2-prototype .dw-form .inp {
        height: 46px
    }

    .v2-prototype .dw-pw .inp::placeholder {
        font-size: 14px
    }

    .v2-prototype .dw-agree {
        font-size: 14px;
        padding: 12px
    }

    .v2-prototype .dw-foot {
        margin-top: 10px
    }

    .v2-prototype .dw-foot .dw-in {
        height: auto;
        flex-wrap: wrap;
        gap: 8px;
        padding-top: 10px;
        padding-bottom: calc(10px + env(safe-area-inset-bottom))
    }

    .v2-prototype .dw-foot .dw-in > span.sm {
        flex-basis: 100%;
        font-size: 14px;
        line-height: 1.4
    }

    .v2-prototype .dw-foot .dw-in > .sp {
        display: none
    }

    .v2-prototype .dw-foot .btn.lg {
        flex: 1;
        min-width: 0;
        height: 48px;
        padding: 0 10px;
        font-size: 15px
    }

    .v2-prototype .dw-done-in {
        padding-top: 28px
    }

    .v2-prototype .dw-done h2 {
        font-size: 21px
    }

    .v2-prototype .dw-done-s {
        font-size: 14px;
        margin-bottom: 18px
    }

    .v2-prototype .dw-key {
        padding: 20px 18px;
        border-radius: 20px
    }

    .v2-prototype .dw-key .meta {
        font-size: 14px;
        grid-template-columns:58px minmax(0, 1fr)
    }

    .v2-prototype .dw-key .k {
        font-size: 18px
    }

    .v2-prototype .dw-key .pw {
        font-size: 19px
    }

    .v2-prototype .dw-notes {
        font-size: 14px;
        text-align: left
    }

    .v2-prototype .dw-filt {
        gap: 6px
    }

    .v2-prototype .dw-datew {
        flex-basis: 100%
    }

    .v2-prototype .dw-date {
        width: 100%;
        height: 44px
    }

    .v2-prototype .dw-date span {
        flex: 1;
        text-align: left
    }

    .v2-prototype .dw-filt select.inp {
        width: 110px;
        height: 44px
    }

    .v2-prototype .dw-filt .dw-q {
        flex: 1 1 150px;
        width: auto;
        min-width: 0;
        height: 44px
    }

    .v2-prototype .dw-filt select.inp {
        flex: none
    }

    .v2-prototype .dw-filt .btn.sm {
        height: 44px;
        flex: 1 1 30%
    }

    .v2-prototype .dw-filt > .sp {
        display: none
    }

    .v2-prototype .dw-calpop {
        position: fixed;
        left: 10px;
        right: 10px;
        top: auto;
        bottom: 10px;
        width: auto;
        max-height: 82vh;
        overflow: auto;
        z-index: 120
    }

    .v2-prototype .dw-cal2 {
        grid-template-columns:1fr
    }

    .v2-prototype .dw-cal2 .cal-g .cd {
        height: 36px;
        font-size: 13px
    }

    .v2-prototype .dw-calf .btn {
        height: 42px
    }

    .v2-prototype table.dw-t {
        font-size: 13px
    }

    .v2-prototype .dw-pg {
        justify-content: center;
        flex-wrap: wrap;
        gap: 10px
    }

    .v2-prototype .dw-pager a {
        min-width: 36px;
        height: 36px
    }

    .v2-prototype .dw-ib .inp {
        height: 52px
    }

    .v2-prototype .dw-howto {
        padding: 12px 12px 12px 28px;
        font-size: 13px
    }

    .v2-prototype .dw-rv {
        flex-wrap: wrap;
        gap: 8px 24px;
        padding: 6px 0 0
    }

    .v2-prototype .dw-rv b, .v2-prototype .dw-rv strong {
        font-size: 26px;
        min-width: 0
    }

    .v2-prototype .dw-dots {
        order: 3;
        width: 100%;
        justify-content: space-between;
        gap: 4px;
        padding: 8px 12px
    }

    .v2-prototype .dw-dots i {
        width: 20px;
        height: 20px
    }

    .v2-prototype .dw-rl {
        font-size: 13px
    }

    .v2-prototype .do-trh {
        grid-template-columns:1fr;
        padding: 24px 20px;
        border-radius: 18px
    }

    .v2-prototype .do-trh h2 {
        font-size: 21px
    }

    .v2-prototype .do-trh p {
        font-size: 13.5px
    }

    .v2-prototype .do-mock {
        display: none
    }

    .v2-prototype .do-pcbtns {
        display: none !important
    }

    .v2-prototype .do-pconly {
        display: flex
    }

    .v2-prototype .do-pcnote {
        display: flex
    }

    .v2-prototype .do-flow {
        grid-template-columns:1fr;
        gap: 8px
    }

    .v2-prototype .do-flow > div {
        display: grid;
        grid-template-columns:40px minmax(0, 1fr);
        gap: 0 12px;
        padding: 14px
    }

    .v2-prototype .do-flow > div .ico {
        grid-row: 1/5;
        margin: 0
    }

    .v2-prototype .do-flow > div:not(:last-child):after {
        right: auto;
        left: 33px;
        top: auto;
        bottom: -6px;
        transform: rotate(135deg)
    }

    .v2-prototype .do-flow b {
        margin: 0 0 2px
    }

    .v2-prototype .do-flow p {
        font-size: 13px
    }

    .v2-prototype .do-flow .who {
        justify-self: start;
        margin-top: 6px
    }

    .v2-prototype[data-page="db/status"] .body {
        padding-bottom: 96px
    }

    .v2-prototype[data-page="db/status"] #dev {
        bottom: 142px
    }

    .v2-prototype[data-page="db/status"] #toast {
        bottom: 150px
    }

    .v2-prototype .do-top {
        gap: 8px;
        margin-bottom: 14px
    }

    .v2-prototype .do-top > .seg {
        width: 100%;
        display: flex
    }

    .v2-prototype .do-top > .seg > a {
        flex: 1;
        justify-content: center;
        text-align: center
    }

    .v2-prototype .do-top > .sp {
        display: none
    }

    .v2-prototype .do-nav {
        height: 44px;
        flex: 1;
        justify-content: space-between
    }

    .v2-prototype .do-nav button {
        width: 36px;
        height: 36px
    }

    .v2-prototype .do-nav b {
        min-width: 0
    }

    .v2-prototype .do-top > .btn {
        flex-basis: 100%;
        height: 44px !important
    }

    .v2-prototype .do-top > .sm.muted {
        margin-left: 2px !important
    }

    .v2-prototype .do-bar2 {
        gap: 10px
    }

    .v2-prototype .do-bar2 > .sp {
        display: none
    }

    .v2-prototype .do-bar2 .chips {
        flex-wrap: nowrap
    }

    .v2-prototype .do-bar2 .chip {
        height: 36px
    }

    .v2-prototype .do-adsel {
        width: 100%;
        height: 46px;
        border-color: var(--g);
        color: var(--g2);
        font-weight: 700
    }

    .v2-prototype .do-cards {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .do-bc {
        grid-template-columns:auto minmax(0, 1fr) auto;
        gap: 4px 12px;
        padding: 14px 14px 22px
    }

    .v2-prototype .do-bc > .av, .v2-prototype .do-hcard > .av {
        width: 52px;
        height: 52px
    }

    .v2-prototype .do-bc .do-who {
        grid-column: auto
    }

    .v2-prototype .do-amt {
        font-size: 16px
    }

    .v2-prototype .do-amt small {
        display: block;
        font-size: 14px
    }

    .v2-prototype .do-rt b {
        font-size: 15px
    }

    .v2-prototype .do-fl {
        padding: 14px;
        gap: 10px;
        border-radius: 14px
    }

    .v2-prototype .do-fr {
        grid-template-columns:1fr;
        gap: 6px
    }

    .v2-prototype .do-fl .chips {
        flex-wrap: wrap;
        gap: 6px
    }

    .v2-prototype .do-fl .chip {
        height: 34px
    }

    .v2-prototype .do-fl .chip.co {
        min-width: 72px;
        justify-content: center;
        border-radius: 10px
    }

    .v2-prototype .do-sortrow {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .do-pc {
        padding: 14px
    }

    .v2-prototype .do-pc .tt {
        font-size: 15px
    }

    .v2-prototype .do-pc .pp {
        font-size: 17px
    }

    .v2-prototype .do-sum {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 62px;
        margin: 0;
        z-index: 80;
        border-radius: 16px 16px 0 0;
        padding: 10px 16px;
        gap: 10px;
        box-shadow: 0 -6px 20px rgba(16, 24, 40, .18)
    }

    .v2-prototype .do-sum > div small {
        font-size: 14px;;
        white-space: nowrap
    }

    .v2-prototype .do-sum > div b {
        font-size: 16px
    }

    .v2-prototype .do-sum > i {
        height: 24px
    }

    .v2-prototype .do-sum .amt {
        min-width: 0
    }

    .v2-prototype .do-sum .amt small {
        font-size: 14px;
    }

    .v2-prototype .do-sum .amt b {
        font-size: 20px;
        white-space: nowrap
    }

    .v2-prototype .do-hcard {
        padding: 14px;
        gap: 4px 12px
    }

    .v2-prototype .do-prod {
        padding: 14px 0 12px
    }

    .v2-prototype .do-prod .row {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .do-prod .row .btn {
        height: 36px
    }

    .v2-prototype .do-q b {
        font-size: 17px
    }

    .v2-prototype .do-q small {
        font-size: 14px;
    }

    .v2-prototype .do-p2p {
        flex-wrap: wrap
    }

    .v2-prototype .do-pcbtns, .v2-prototype .do-hcard ~ .do-p2p {
        display: none
    }

    .v2-prototype .do-adlink strong {
        font-size: 15px
    }

    .v2-prototype .do-dbi {
        grid-template-columns:1fr
    }

    .v2-prototype .do-dbi > div:nth-child(odd):not(.full) {
        border-right: 0
    }

    .v2-prototype .do-dbi > div > span {
        width: 96px;
        padding: 0 10px;
        font-size: 14px
    }

    .v2-prototype .do-dbi > div > b {
        padding: 8px 12px;
        font-size: 14px;
        word-break: break-all
    }

    .v2-prototype .do-set {
        grid-template-columns:1fr;
        gap: 20px
    }

    .v2-prototype .do-tc {
        padding: 18px 18px 22px;
        border-radius: 20px
    }

    .v2-prototype .do-mn b {
        font-size: 18px;
        min-width: 76px
    }

    .v2-prototype .do-tc .ln span {
        font-size: 13.5px
    }

    .v2-prototype .do-tc .ln b {
        font-size: 17px
    }

    .v2-prototype .do-tc .ln.s span, .v2-prototype .do-tc .ln.s b {
        font-size: 14px
    }

    .v2-prototype .do-tc .big {
        font-size: 34px
    }

    .v2-prototype .do-tc .big em {
        font-size: 18px
    }

    .v2-prototype .do-stbtn {
        height: 50px;
        padding: 0 40px
    }

    .v2-prototype .do-hc {
        padding: 14px
    }

    .v2-prototype .do-hc .lb {
        font-size: 15px
    }

    .v2-prototype .do-hc .am {
        font-size: 16.5px
    }

    .v2-prototype .do-legend b {
        min-width: 84px
    }

    .v2-prototype .do-dh {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 16px;
        border-radius: 16px;
        margin-bottom: 18px
    }

    .v2-prototype .do-dh > div:first-child {
        min-width: 0 !important;
        flex-direction: row !important;
        flex-wrap: wrap;
        align-items: center !important;
        gap: 6px !important
    }

    .v2-prototype .do-dh .lns {
        grid-template-columns:1fr;
        gap: 6px
    }

    .v2-prototype .do-dh .lns > div {
        flex-direction: row;
        align-items: baseline;
        justify-content: space-between;
        gap: 10px
    }

    .v2-prototype .do-dh .lns b {
        font-size: 20px
    }

    .v2-prototype .do-dh .lns > div:nth-child(3), .v2-prototype .do-dh .lns > div:nth-child(4) {
        justify-content: flex-start
    }

    .v2-prototype .do-tables {
        grid-template-columns:1fr;
        gap: 20px
    }

    .v2-prototype .do-tb h3 {
        font-size: 15px;
        color: var(--blue)
    }

    .v2-prototype .do-tw table.do-t, .v2-prototype .dw-tw table.dw-t {
        display: table;
        width: 100%
    }

    .v2-prototype table.do-t {
        font-size: 14px
    }

    .v2-prototype table.do-t th {
        padding: 8px 4px;
        font-size: 14px
    }

    .v2-prototype table.do-t td {
        padding: 9px 4px
    }

    .v2-prototype table.do-t td .ell {
        max-width: 64px
    }

    .v2-prototype .do-att {
        grid-template-columns:1fr;
        gap: 12px;
        margin-top: 20px
    }

    .v2-prototype .do-att .btn.sm {
        height: 40px
    }

    .v2-prototype .do-att + .row {
        flex-direction: column;
        align-items: stretch
    }

    .v2-prototype .do-att + .row .btn {
        width: 100%;
        min-width: 0 !important
    }

.v2-prototype .dr-w260 {
        max-width: none
    }

    .v2-prototype .dr-my {
        grid-template-columns:1fr;
        gap: 10px;
        margin-bottom: 16px
    }

    .v2-prototype .dr-mem {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        padding: 14px 16px;
        gap: 2px 10px
    }

    .v2-prototype .dr-mem small {
        width: 100%
    }

    .v2-prototype .dr-mem > b {
        margin-top: 2px;
        font-size: 14.5px;
        flex: 1;
        min-width: 0
    }

    .v2-prototype .dr-mem > span {
        display: none
    }

    .v2-prototype .dr-mem .dr-pt {
        margin: 0;
        padding: 0 0 0 12px;
        border-top: 0;
        border-left: 1px solid rgba(255, 255, 255, .3);
        flex-direction: column;
        align-items: flex-end;
        gap: 0
    }

    .v2-prototype .dr-mem .dr-pt b {
        font-size: 18px
    }

    .v2-prototype .dr-ml {
        padding: 12px 14px 6px
    }

    .v2-prototype .dr-ml a {
        min-height: 44px;
        font-size: 14px
    }

    .v2-prototype .dr-ml:last-child {
        display: grid;
        grid-template-columns:1fr 1fr;
        column-gap: 14px
    }

    .v2-prototype .dr-ml:last-child h5 {
        grid-column: 1/-1;
        justify-self: start
    }

    .v2-prototype .dr-ml:last-child a:nth-last-child(2) {
        border-bottom: 0
    }

    .v2-prototype .dr-tool {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding: 8px;
        border-radius: 14px
    }

    .v2-prototype .dr-tool .search {
        width: 100%;
        height: 44px
    }

    .v2-prototype .dr-tool > .sp {
        display: none
    }

    .v2-prototype .dr-sortc {
        flex-wrap: nowrap !important;
        overflow-x: auto;
        scrollbar-width: none;
        padding: 0 2px
    }

    .v2-prototype .dr-sortc::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .dr-sortc .chip {
        flex: none;
        height: 34px
    }

    .v2-prototype .dr-tool .dr-new {
        position: fixed;
        right: 16px;
        bottom: 76px;
        z-index: 60;
        height: 50px;
        padding: 0 20px;
        border-radius: 999px;
        box-shadow: 0 10px 24px rgba(14, 100, 87, .35);
        font-size: 15px
    }

    .v2-prototype .dr-cnth {
        margin: 16px 2px 8px
    }

    .v2-prototype .dr-cnth > .xs {
        display: none
    }

    .v2-prototype .dr-list {
        gap: 10px;
        padding-bottom: 40px
    }

    .v2-prototype .dr-row {
        grid-template-columns:minmax(0, 1fr) auto;
        grid-template-areas:"rt rt" "rp ra";
        gap: 12px 12px;
        padding: 14px;
        border-radius: 14px
    }

    .v2-prototype .dr-rt {
        grid-area: rt;
        border-right: 0;
        padding-right: 0
    }

    .v2-prototype .dr-rtt {
        font-size: 15px
    }

    .v2-prototype .dr-meta {
        gap: 4px 10px;
        font-size: 14px;
        margin-top: 6px
    }

    .v2-prototype .dr-rp {
        grid-area: rp;
        align-self: center
    }

    .v2-prototype .dr-rp small {
        display: none
    }

    .v2-prototype .dr-ra {
        grid-area: ra;
        gap: 6px
    }

    .v2-prototype .dr-ra .btn.sm {
        height: 38px;
        padding: 0 13px;
        font-size: 13.5px
    }

    .v2-prototype .dr-more {
        width: 38px !important
    }

    .v2-prototype .dr-aside {
        top: 110px
    }

    .v2-prototype .dr-rq ul {
        grid-template-columns:1fr 1fr
    }

    .v2-prototype .dr-rq h4 {
        padding: 11px 14px
    }

    .v2-prototype .fsec.dr-sec {
        padding: 16px 14px
    }

    .v2-prototype .dr-sec > h3 {
        flex-wrap: wrap;
        gap: 6px 8px;
        font-size: 15.5px
    }

    .v2-prototype .dr-sec > h3 small {
        width: 100%;
        margin: 0;
        font-size: 14px
    }

    .v2-prototype .dr-lb {
        flex-wrap: wrap;
        gap: 4px 6px;
        font-size: 14px
    }

    .v2-prototype .dr-lb .help {
        margin-left: 0;
        width: 100%;
        font-size: 14px
    }

    .v2-prototype .dr-it {
        padding: 14px 0
    }

    .v2-prototype .dr-tin .inp {
        height: 46px
    }

    .v2-prototype .dr-g4 {
        grid-template-columns:1fr 1fr
    }

    .v2-prototype .dr-g4, .v2-prototype .pbox .dr-scp .grid2 {
        position: relative
    }

    .v2-prototype .dr-g4 > .dr-date, .v2-prototype .pbox .dr-scp .grid2 > .dr-date {
        position: static
    }

    .v2-prototype .dr-g4 .dr-calpop, .v2-prototype .pbox .dr-scp .dr-calpop {
        position: absolute;
        left: 0;
        right: 0;
        top: 52px;
        width: auto;
        margin: 0;
        z-index: 30;
        box-shadow: var(--sh2)
    }

    .v2-prototype #dr-it-unit .row {
        flex-direction: column;
        align-items: stretch
    }

    .v2-prototype .dr-ed .seg {
        width: 100%
    }

    .v2-prototype .dr-ed .seg > button {
        flex: 1
    }

    .v2-prototype .dr-etcin {
        flex-wrap: wrap;
        max-width: none
    }

    .v2-prototype .dr-etcin .inp {
        flex: 1 1 100%
    }

    .v2-prototype .dr-etcin > span {
        width: auto;
        margin-right: auto
    }

    .v2-prototype .dr-setbtn {
        width: 100%;
        min-width: 0;
        height: 48px
    }

    .v2-prototype .dr-sum {
        padding: 12px 40px 12px 12px
    }

    .v2-prototype .dr-pi {
        grid-template-columns:minmax(0, 1fr) 24px;
        gap: 2px 8px
    }

    .v2-prototype .dr-pi > b {
        grid-column: 1
    }

    .v2-prototype .dr-pi > span {
        grid-column: 1
    }

    .v2-prototype .dr-pi > em {
        grid-column: 1
    }

    .v2-prototype .dr-pi > .dr-x {
        grid-column: 2;
        grid-row: 1
    }

    .v2-prototype .dr-rc, .v2-prototype .dr-dc {
        height: 34px
    }

    .v2-prototype .dr-buy {
        grid-template-columns:1fr
    }

    .v2-prototype .dr-bc {
        display: grid;
        grid-template-columns:minmax(0, 1fr) 120px;
        gap: 8px 12px;
        align-items: center
    }

    .v2-prototype .dr-bc-h {
        grid-column: 1/-1
    }

    .v2-prototype .dr-bc-art {
        grid-column: 2;
        grid-row: 2/span 2;
        height: 84px
    }

    .v2-prototype .dr-bc-art svg {
        width: 112px
    }

    .v2-prototype .dr-art-ic {
        width: 40px;
        height: 40px
    }

    .v2-prototype .dr-bc > p {
        grid-column: 1;
        grid-row: 2
    }

    .v2-prototype .dr-bc > p.xs, .v2-prototype .dr-bc > .dr-url, .v2-prototype .dr-bc > .inp, .v2-prototype .dr-bc > .dr-msg {
        grid-column: 1/-1
    }

    .v2-prototype .dr-bc > p.xs {
        grid-row: auto
    }

    .v2-prototype .dr-url .inp {
        height: 44px
    }

    .v2-prototype .dr-url .btn {
        height: 44px
    }

    .v2-prototype #dr-direct {
        height: 44px
    }

    .v2-prototype .dr-2box {
        grid-template-columns:1fr
    }

    .v2-prototype #dr-it-banner > .row {
        flex-direction: column;
        align-items: stretch
    }

    .v2-prototype .dr-banc > div {
        flex: 1;
        padding: 8px 6px
    }

    .v2-prototype .dr-banx {
        flex: none !important
    }

    .v2-prototype .dr-doc {
        padding: 14px 12px
    }

    .v2-prototype .dr-doc-h {
        flex-wrap: wrap;
        align-items: flex-start
    }

    .v2-prototype .dr-doc-h b {
        flex: 0 1 auto;
        min-width: 0;
        line-height: 1.4
    }

    .v2-prototype .dr-doc-h .req {
        margin-right: auto
    }

    .v2-prototype .dr-doc-h .sp {
        display: none
    }

    .v2-prototype .dr-doc-h .btn {
        width: 100%;
        height: 40px;
        margin-top: 6px;
        order: 3
    }

    .v2-prototype .dr-warn {
        align-items: flex-start;
        line-height: 1.45
    }

    .v2-prototype .dr-warn .ic {
        flex: none;
        margin-top: 1px
    }

    .v2-prototype .dr-docrow {
        grid-template-columns:1fr
    }

    .v2-prototype .dr-docrow .drop {
        white-space: normal;
        height: auto;
        min-height: 48px;
        padding: 8px 12px;
        text-align: center
    }

    .v2-prototype .dr-docck {
        flex-direction: column;
        gap: 10px
    }

    .v2-prototype .dr-pv {
        padding: 12px
    }

    .v2-prototype .dr-agree {
        padding: 14px
    }

    .v2-prototype .dr-agree .ckb {
        align-items: flex-start;
        line-height: 1.45
    }

    .v2-prototype .dr-agree p {
        margin-left: 0;
        margin-top: 8px
    }

    .v2-prototype .dr-ed .savebar {
        gap: 8px;
        padding: 10px 16px 12px;
        z-index: 45
    }

    .v2-prototype .dr-ed .savebar .sb-l {
        flex-direction: row;
        align-items: center;
        gap: 10px
    }

    .v2-prototype .dr-ed .savebar .prog {
        flex: 1
    }

    .v2-prototype .dr-ed .savebar [data-ratetxt] {
        flex: none;
        font-size: 14px
    }

    .v2-prototype .dr-hint {
        display: none
    }

    .v2-prototype .dr-ed .savebar .row {
        gap: 6px
    }

    .v2-prototype .dr-ed .savebar .row .btn {
        height: 48px;
        padding: 0 10px
    }

    .v2-prototype .dr-ed .savebar .row [data-savebtn] {
        flex: 1.7
    }

    .v2-prototype .dr-att {
        flex-wrap: wrap
    }

    .v2-prototype .dr-att > .sp, .v2-prototype .dr-att > .xs {
        display: none
    }

    .v2-prototype .dr-ai {
        height: 40px;
        flex: 1;
        justify-content: center;
        padding: 0 6px
    }

    .v2-prototype .dr-attin {
        max-width: none
    }

    .v2-prototype .dr-fc {
        max-width: 100%
    }

    .v2-prototype .dr-dcard {
        padding: 22px 18px 18px;
        border-radius: 20px;
        gap: 16px
    }

    .v2-prototype .dr-dai h2 {
        font-size: 22px
    }

    .v2-prototype .dr-dai i {
        width: 38px;
        height: 38px;
        font-size: 15px
    }

    .v2-prototype .dr-dmain {
        align-items: flex-start
    }

    .v2-prototype .dr-dmain h3 {
        font-size: 18px
    }

    .v2-prototype .dr-dmain p {
        font-size: 13.5px
    }

    .v2-prototype .dr-dalarm {
        width: 62px;
        height: 62px
    }

    .v2-prototype .dr-dalarm .ic {
        width: 30px;
        height: 30px
    }

    .v2-prototype .dr-next {
        grid-template-columns:1fr;
        padding: 14px
    }

    .v2-prototype .pbox .dr-blk {
        padding: 12px
    }

    .v2-prototype .pbox .dr-addrow .btn {
        height: 42px;
        padding: 0 18px
    }

    .v2-prototype .pbox .dr-scp .grid2 {
        grid-template-columns:1fr 1fr
    }

    .v2-prototype .pbox .dr-blk-in .grid2 {
        grid-template-columns:1fr
    }

    .v2-prototype .pbox .dr-cfr .inp, .v2-prototype .pbox .dr-ddb {
        height: 46px
    }

    .v2-prototype .dr-ddi {
        min-height: 44px
    }

    .v2-prototype .dr-scr {
        grid-template-columns:6px 70px minmax(0, 1fr) 28px;
        gap: 8px
    }

    .v2-prototype .dr-tgtop {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .dr-tgtop .sp {
        display: none
    }

    .v2-prototype .dr-tgh {
        flex-wrap: wrap
    }

    .v2-prototype .dr-pvh {
        gap: 12px;
        padding: 12px
    }

    .v2-prototype .dr-pvh .logo-ph, .v2-prototype .dr-pvh > div:first-child {
        flex: none
    }

    .v2-prototype .dr-pvt {
        font-size: 17px
    }

    .v2-prototype .dr-pvg {
        grid-template-columns:1fr
    }

    .v2-prototype .dr-pvp {
        position: static
    }

    .v2-prototype .dr-pvg table.kv th {
        width: 96px
    }

    .v2-prototype .dr-ml2 a {
        min-height: 48px
    }

    .v2-prototype .cm-filter {
        gap: 6px
    }

    .v2-prototype .cm-filter {
        flex-wrap: wrap
    }

    .v2-prototype .cm-filter .cm-ym {
        flex: 1 1 0;
        min-width: 0;
        justify-content: space-between;
        height: 44px
    }

    .v2-prototype .cm-ym button {
        width: 32px;
        height: 36px
    }

    .v2-prototype .cm-ym b {
        min-width: 0;
        padding: 0 2px
    }

    .v2-prototype .cm-filter > .btn {
        flex: none;
        height: 44px;
        padding: 0 11px
    }

    .v2-prototype .cm-filter > .sp {
        display: none
    }

    .v2-prototype .cm-filter .sort {
        width: 100%;
        margin-top: 6px
    }

    .v2-prototype .cm-filter .sort a {
        padding: 6px 12px
    }

    .v2-prototype .cm-filter .sort a:first-child {
        padding-left: 0
    }

    .v2-prototype .cm-grid3 {
        grid-template-columns:minmax(0, 1fr);
        gap: 10px
    }

    .v2-prototype .cm-fc, .v2-prototype .cm-lc {
        padding: 14px 16px 12px;
        border-radius: 14px
    }

    .v2-prototype .cm-fc:hover, .v2-prototype .cm-lc:hover {
        transform: none
    }

    .v2-prototype .cm-fc h4, .v2-prototype .cm-lc h4 {
        font-size: 15.5px;
        margin-top: 10px
    }

    .v2-prototype .cm-file {
        height: 42px;
        font-size: 13px
    }

    .v2-prototype .cm-fc-bot {
        margin-top: 10px;
        padding-top: 10px
    }

    .v2-prototype .cm-heart {
        font-size: 14px;
        padding: 6px 8px 6px 4px
    }

    .v2-prototype .cm-fc > p {
        display: none
    }

    .v2-prototype .cm-lc .cm-thumb {
        height: 104px
    }

    .v2-prototype .cm-lc p {
        min-height: 0;
        font-size: 13px
    }

    .v2-prototype .cm-more {
        height: 44px
    }

    .v2-prototype .cm-bh {
        height: 48px;
        border-radius: 12px;
        margin-bottom: 12px;
        box-shadow: none
    }

    .v2-prototype .cm-bh b {
        font-size: 15px
    }

    .v2-prototype .cm-doc {
        padding: 18px 16px 16px;
        border-radius: 16px
    }

    .v2-prototype .cm-doc-h {
        padding-bottom: 14px
    }

    .v2-prototype .cm-doc-t {
        gap: 4px 10px
    }

    .v2-prototype .cm-doc-t h2, .v2-prototype .cm-nv-t {
        font-size: 19px;
        flex-basis: 100%
    }

    .v2-prototype .cm-no-b {
        font-size: 13px
    }

    .v2-prototype .cm-doc-m {
        font-size: 14px;
        flex-wrap: wrap
    }

    .v2-prototype .cm-doc-b {
        padding: 16px 0 4px
    }

    .v2-prototype .cm-body {
        font-size: 15px;
        line-height: 1.8;
        margin-top: 12px;
        word-break: keep-all;
        overflow-wrap: anywhere
    }

    .v2-prototype .cm-att-l {
        grid-template-columns:minmax(0, 1fr)
    }

    .v2-prototype .cm-src-c {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 10px
    }

    .v2-prototype .cm-src-c .cm-thumb {
        width: 100%;
        height: 110px
    }

    .v2-prototype .cm-src-i {
        padding: 0 4px 4px
    }

    .v2-prototype .cm-src-i b {
        white-space: normal
    }

    .v2-prototype .cm-doc-f {
        margin-top: 14px;
        padding-top: 12px
    }

    .v2-prototype .btn.cm-listbtn {
        margin-top: 14px;
        height: 50px
    }

    .v2-prototype .cm-ptbar {
        flex-direction: column;
        align-items: stretch;
        gap: 12px
    }

    .v2-prototype .cm-ptbar > .sp {
        display: none
    }

    .v2-prototype .search.cm-ptsrch {
        width: 100%;
        height: 46px
    }

    .v2-prototype .cm-ptgrid {
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap: 8px
    }

    .v2-prototype .cm-pt {
        padding: 12px 10px 10px
    }

    .v2-prototype .cm-pt-l {
        height: 56px
    }

    .v2-prototype .cm-pt-l i {
        width: 36px;
        height: 36px;
        border-radius: 10px;
        font-size: 16px
    }

    .v2-prototype .cm-pt-l b {
        display: none
    }

    .v2-prototype .cm-pt > span {
        font-size: 14px;
        text-align: center
    }

    .v2-prototype .chips.cm-chips {
        flex-wrap: nowrap;
        overflow-x: auto;
        margin: 0 -16px 10px;
        padding: 0 16px 2px;
        scrollbar-width: none
    }

    .v2-prototype .cm-chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .cm-chips .chip {
        flex: none;
        height: 36px;
        padding: 0 15px
    }

    .v2-prototype table.t.cm-tbl {
        display: block;
        overflow: visible;
        white-space: normal;
        border-top-width: 1px;
        border-top-color: var(--line)
    }

    .v2-prototype table.t.cm-tbl colgroup, .v2-prototype table.t.cm-tbl thead {
        display: none
    }

    .v2-prototype table.t.cm-tbl tbody {
        display: block
    }

    .v2-prototype table.t.cm-tbl tbody tr {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 6px 0;
        padding: 14px 2px;
        border-bottom: 1px solid var(--line2)
    }

    .v2-prototype table.t.cm-tbl tbody tr:hover td {
        background: none
    }

    .v2-prototype table.t.cm-tbl td {
        display: block;
        height: auto;
        padding: 0;
        border: 0;
        font-size: 14px;
        color: var(--mute);
        white-space: nowrap
    }

    .v2-prototype table.t.cm-tbl td.cm-tt {
        flex: 0 0 100%;
        min-width: 0;
        color: var(--ink);
        white-space: normal
    }

    .v2-prototype table.t.cm-tbl td[colspan] {
        flex: 0 0 100%
    }

    .v2-prototype .cm-tt b {
        font-size: 15px
    }

    .v2-prototype table.t.cm-tbl td:nth-child(n+3):before {
        content: "·";
        margin: 0 7px;
        color: #C5CBD2
    }

    .v2-prototype table.t.cm-tbl td:nth-child(4):before {
        content: "·  조회 ";
        white-space: pre
    }

    .v2-prototype table.t.cm-tbl td:nth-child(5):before {
        content: "·  공감 ";
        white-space: pre
    }

    .v2-prototype table.t.cm-tbl .cm-by {
        font-size: 14px;
        color: var(--sub);
        gap: 6px
    }

    .v2-prototype table.t.cm-tbl .av.cm-av {
        width: 20px;
        height: 20px
    }

    .v2-prototype table.t.cm-tbl .av.cm-av .ic {
        width: 12px;
        height: 12px
    }

    .v2-prototype .cm-av.anon {
        font-size: 14px
    }

    .v2-prototype .cm-qh {
        display: none
    }

    .v2-prototype .cm-ql {
        border-top: 1px solid var(--line)
    }

    .v2-prototype .cm-qr {
        grid-template-columns:auto auto minmax(0, 1fr);
        grid-template-areas:"m m m" "by t a";
        gap: 8px 0;
        padding: 14px 2px
    }

    .v2-prototype .cm-qr-m {
        grid-area: m
    }

    .v2-prototype .cm-qr-m b {
        font-size: 15px
    }

    .v2-prototype .cm-qr-m p {
        font-size: 13px
    }

    .v2-prototype .cm-qr > .cm-by {
        grid-area: by;
        font-size: 14px;
        color: var(--sub);
        gap: 6px
    }

    .v2-prototype .cm-qr > .cm-by .av.cm-av {
        width: 20px;
        height: 20px
    }

    .v2-prototype .cm-qr > .cm-by .av.cm-av .ic {
        width: 12px;
        height: 12px
    }

    .v2-prototype .cm-qr-t {
        grid-area: t;
        font-size: 14px;
        color: var(--mute);
        text-align: left
    }

    .v2-prototype .cm-qr-t:before {
        content: "·";
        margin: 0 7px;
        color: #C5CBD2
    }

    .v2-prototype .cm-qr-a {
        grid-area: a;
        text-align: right;
        font-size: 14px;
        color: var(--sub);
        font-weight: 600
    }

    .v2-prototype .cm-qr-a em {
        font-size: 14px
    }

    .v2-prototype .cm-file.sm {
        height: 34px
    }

    .v2-prototype .btn.cm-write {
        position: sticky;
        bottom: 74px;
        z-index: 20;
        margin-top: 16px;
        height: 52px;
        box-shadow: 0 8px 24px rgba(18, 122, 108, .28)
    }

    .v2-prototype .cm-form .fsec {
        padding: 16px
    }

    .v2-prototype .inp.cm-tin {
        height: 50px;
        font-size: 16px
    }

    .v2-prototype .cm-catsel {
        gap: 6px
    }

    .v2-prototype .cm-catb {
        height: 40px;
        padding: 0 14px;
        font-size: 14px
    }

    .v2-prototype .cm-catsel > span {
        flex-basis: 100%;
        margin: 2px 0 0 !important
    }

    .v2-prototype .cm-imgbar {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .cm-imgbar .btn {
        height: 44px
    }

    .v2-prototype .cm-img {
        width: 96px
    }

    .v2-prototype .cm-img-ph {
        height: 96px
    }

    .v2-prototype .cm-actbar {
        bottom: 62px;
        margin: 16px -16px 0;
        padding: 10px 16px;
        border-radius: 16px 16px 0 0;
        border-left: 0;
        border-right: 0;
        border-bottom: 0
    }

    .v2-prototype .cm-actbar .btn.lg {
        height: 50px;
        min-width: 0;
        padding: 0 10px;
        font-size: 15px
    }

    .v2-prototype .cm-actbar .btn.f2 {
        flex: 1.8
    }

    .v2-prototype .cm-pimgs {
        gap: 8px
    }

    .v2-prototype .cm-pimg {
        width: 100%;
        height: 200px
    }

    .v2-prototype .cm-react {
        gap: 6px
    }

    .v2-prototype .cm-react button {
        flex: 1;
        justify-content: center;
        height: 44px;
        padding: 0 8px
    }

    .v2-prototype .cm-cmt {
        gap: 10px;
        padding: 14px 0
    }

    .v2-prototype .cm-cmt .av {
        width: 30px;
        height: 30px
    }

    .v2-prototype .cm-cmt-m > p {
        font-size: 14px
    }

    .v2-prototype .cm-cmt-f {
        gap: 12px;
        font-size: 14px
    }

    .v2-prototype .cm-cmt-f button {
        font-size: 14px;
        min-height: 30px
    }

    .v2-prototype .cm-dots {
        width: 36px;
        height: 36px
    }

    .v2-prototype .cm-sheet {
        z-index: 160
    }

    .v2-prototype .cm-sheet-dim {
        z-index: 155
    }

    .v2-prototype .cm-sheet-in {
        padding: 18px 16px calc(16px + env(safe-area-inset-bottom))
    }

    .v2-prototype .cm-sheet-in textarea.inp {
        min-height: 110px;
        font-size: 15px
    }

    .v2-prototype .cm-sheet-in .btn.lg {
        height: 50px
    }

    .v2-prototype .cm-about {
        padding: 52px 20px 92px;
        border-radius: 20px
    }

    .v2-prototype .cm-about:before {
        width: 240px;
        height: 240px;
        right: -80px;
        top: -80px
    }

    .v2-prototype .cm-wave {
        height: 110px
    }

    .v2-prototype .cm-about h2 {
        font-size: 30px;
        margin-top: 16px
    }

    .v2-prototype .cm-about-l {
        font-size: 16px;
        line-height: 1.5;
        min-height: 48px;
        word-break: keep-all
    }

    .v2-prototype .cm-about-l .cur {
        height: 17px
    }

    .v2-prototype .cm-about-s {
        font-size: 14px;
        word-break: keep-all
    }

    .v2-prototype .cm-about .row {
        flex-direction: column;
        align-items: stretch;
        gap: 8px !important;
        margin-top: 22px !important
    }

    .v2-prototype .cm-about .row .btn {
        height: 50px;
        justify-content: center
    }

    .v2-prototype .cm-jsbar {
        display: grid;
        grid-template-columns:1fr 1fr;
        gap: 8px;
        padding:10px 10px 0 10px;
    }

    .v2-prototype .cm-jsbar .btn {
        height: 44px;
        min-width: 0;
        padding: 0 8px;
        font-size: 13.5px
    }

    .v2-prototype .cm-jsbar .btn:first-child {
        grid-column: 1/-1
    }

    .v2-prototype .cm-jsbar > .sp {
        display: none
    }

    .v2-prototype .cm-jsbar > .xs {
        grid-column: 1/-1;
        font-size: 14px
    }

    .v2-prototype.my-system-page .my-system-section,
    .v2-prototype .cm-jsec {
        margin-top: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .v2-prototype .cm-jsec h3 {
        font-size: 16px;
        margin-bottom: 10px
    }

    .v2-prototype .cm-tiles {
        grid-template-columns:repeat(4, minmax(0, 1fr));
        gap: 8px
    }

    .v2-prototype .cm-tile {
        height: 92px;
        gap: 7px;
        padding: 8px 4px;
        border-radius: 12px
    }

    .v2-prototype .cm-tile:hover {
        transform: none
    }

    .v2-prototype .cm-mono {
        width: 42px;
        height: 42px;
        border-radius: 12px
    }

    .v2-prototype .cm-mono b {
        font-size: 14px
    }

    .v2-prototype .cm-tn {
        font-size: 14px;
        letter-spacing: -.03em
    }

    .v2-prototype .cm-key {
        left: 5px;
        top: 5px
    }

    .v2-prototype .cm-tdel {
        right: 4px;
        top: 4px
    }

    .v2-prototype .cm-codes {
        max-height: none;
        overflow: visible;
        border: 0;
        border-radius: 0
    }

    .v2-prototype .cm-ctbl, .v2-prototype .cm-ctbl tbody {
        display: block
    }

    .v2-prototype .cm-ctbl colgroup, .v2-prototype .cm-ctbl thead {
        display: none
    }

    .v2-prototype .cm-ctbl tbody tr {
        display: grid;
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        grid-template-areas:"nm bt" "id id" "pw au";
        gap: 8px;
        padding: 12px;
        margin-bottom: 8px;
        border: 1px solid var(--line);
        border-radius: 14px;
        background: #fff
    }

    .v2-prototype .cm-ctbl tbody th {
        grid-area: nm;
        text-align: left;
        padding: 0;
        border: 0 !important;
        font-size: 14.5px;
        align-self: center
    }

    .v2-prototype .cm-ctbl td {
        padding: 0;
        border: 0 !important
    }

    .v2-prototype .cm-ctbl td:nth-of-type(1) {
        grid-area: id
    }

    .v2-prototype .cm-ctbl td:nth-of-type(2) {
        grid-area: pw
    }

    .v2-prototype .cm-ctbl td:nth-of-type(3) {
        grid-area: au
    }

    .v2-prototype .cm-ctbl td:nth-of-type(4) {
        grid-area: bt;
        justify-self: end;
        width: 84px
    }

    .v2-prototype .cm-ctbl td:nth-of-type(-n+3):before {
        display: block;
        font-size: 14px;
        font-weight: 600;
        color: var(--mute);
        margin: 0 0 4px 2px
    }

    .v2-prototype .cm-ctbl td:nth-of-type(1):before {
        content: "아이디"
    }

    .v2-prototype .cm-ctbl td:nth-of-type(2):before {
        content: "비밀번호"
    }

    .v2-prototype .cm-ctbl td:nth-of-type(3):before {
        content: "인증번호"
    }

    .v2-prototype .cm-cin {
        height: 42px
    }

    .v2-prototype .cm-cin input {
        font-size: 14px
    }

    .v2-prototype .cm-cin button {
        width: 32px;
        height: 32px
    }

    .v2-prototype .cm-cbtn {
        height: 34px;
        font-size: 13px
    }

    .v2-prototype #pop .pf [data-unmask] {
        flex: 1 1 100%
    }

    .v2-prototype #pop .pf:has([data-unmask]) {
        flex-wrap: wrap
    }

    .v2-prototype .cm-nl {
        padding: 2px 14px;
        border-radius: 14px
    }

    .v2-prototype .cm-ni {
        padding: 15px 2px;
        gap: 8px
    }

    .v2-prototype .cm-ni-m b {
        font-size: 15px
    }

    .v2-prototype .cm-nv .cm-doc-m {
        padding-bottom: 14px
    }

    .v2-prototype .cm-nv-a {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding: 14px 0
    }

    .v2-prototype .cm-nv-a .cm-file {
        width: 100%
    }

    .v2-prototype .cm-nv-a .cm-file span {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }

    .v2-prototype .cm-pn a {
        padding: 14px 16px;
        gap: 10px
    }

    .v2-prototype .cm-pn span {
        width: 58px
    }

    .v2-prototype {
        font-size: 14px;
    }

    .v2-prototype .ds-list {
        padding: 0 10px;
    }

    .v2-prototype .wrap {
        padding: 0 16px
    }

    .v2-prototype #hd .wrap {
        height: 56px
    }

    .v2-prototype #hd .lg img {
        height: 21px
    }

    .v2-prototype .lnb {
        top: 56px;
        margin: 0 -16px 16px;
        padding: 10px 16px
    }

    .v2-prototype #tabbar {
        display: grid;
        grid-template-columns:repeat(5, 1fr);
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 90;
        background: rgba(255, 255, 255, .97);
        backdrop-filter: blur(10px);
        border-top: 1px solid var(--line);
        height: 62px;
        padding-bottom: env(safe-area-inset-bottom)
    }

    .v2-prototype #tabbar a {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        font-size: 14px;;
        font-weight: 600;
        color: var(--mute)
    }

    .v2-prototype #tabbar a svg {
        width: 22px;
        height: 22px
    }

    .v2-prototype #tabbar a.on {
        color: var(--g)
    }

    .v2-prototype .qside {
        display: none
    }

    .v2-prototype #dev {
        left: 10px;
        bottom: 150px
    }

    .v2-prototype #dev .pnl {
        width: calc(100vw - 20px)
    }

    .v2-prototype #toast {
        bottom: 84px
    }

    .v2-prototype .nbar {
        font-size: 14px
    }

    .v2-prototype .nbar .wrap {
        height: 36px
    }

    .v2-prototype .band .wrap {
        padding-top: 18px;
        padding-bottom: 18px
    }

    .v2-prototype .band h1 {
        font-size: 24px
    }

    .v2-prototype .band p.sub {
        font-size: 13.5px
    }

    .v2-prototype .band .crumb {
        margin-bottom: 6px
    }

    .v2-prototype .band:after {
        display: none
    }

    .v2-prototype .band .acts {
        flex-wrap: wrap
    }

    .v2-prototype .sec-h h2 {
        font-size: 18px
    }

    .v2-prototype .card {
        padding: 16px;
        border-radius: 14px
    }

    .v2-prototype .fsec {
        padding: 16px;
        border-radius: 14px
    }

    .v2-prototype .grid2, .v2-prototype .grid3, .v2-prototype .grid4 {
        grid-template-columns:1fr
    }

    .v2-prototype .dbgrid {
        grid-template-columns:1fr
    }

    .v2-prototype .pcards {
        grid-template-columns:1fr
    }

    .v2-prototype .tabs {
        gap: 16px;
        overflow-x: auto;
        scrollbar-width: none
    }

    .v2-prototype .tabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .tabs a {
        font-size: 15px;
        white-space: nowrap
    }

    .v2-prototype .chips, .v2-prototype .row.w {
        flex-wrap: wrap
    }

    .v2-prototype .filt {
        grid-template-columns:1fr;
        gap: 6px
    }

    .v2-prototype .filt > span {
        margin-top: 6px
    }

    .v2-prototype .search {
        height: 44px
    }

    .v2-prototype .seg {
        max-width: 100%;
        overflow-x: auto;
        scrollbar-width: none
    }

    .v2-prototype .seg::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .seg > * {
        flex: none
    }

    .v2-prototype table.t {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch
    }

    .v2-prototype table.kv th {
        width: 96px;
        padding: 10px;
        font-size: 14px
    }

    .v2-prototype table.kv td {
        padding: 10px;
        font-size: 13.5px
    }

    .v2-prototype .kpis b {
        font-size: 17px
    }

    .v2-prototype .jl {
        border-top-width: 1px
    }

    .v2-prototype .jl .hd {
        display: none
    }

    .v2-prototype .jl .it {
        grid-template-columns:44px 1fr 32px;
        grid-template-areas:"lg tt bm" "lg ar bm" "lg sa bm" "lg du bm";
        gap: 4px 12px;
        padding: 14px 2px;
        min-height: 0;
        align-items: start
    }

    .v2-prototype .jl .it > .logo-ph {
        grid-area: lg;
        width: 44px !important;
        height: 44px !important;
        font-size: 14px
    }

    .v2-prototype .jl .it > .tt {
        grid-area: tt
    }

    .v2-prototype .jl .it > .tt .row {
        flex-wrap: wrap;
        gap: 4px !important
    }

    .v2-prototype .jl .it > .tt b {
        white-space: normal;
        font-size: 14.5px
    }

    .v2-prototype .jl .it > .area {
        grid-area: ar;
        font-size: 14px
    }

    .v2-prototype .jl .it > .row {
        grid-area: sa
    }

    .v2-prototype .jl .it > .due {
        grid-area: du;
        display: block;
        text-align: left;
        font-size: 14px
    }

    .v2-prototype .jl .it > .bm {
        grid-area: bm
    }

    .v2-prototype .pc {
        padding: 14px
    }

    .v2-prototype .steps .st {
        font-size: 14px
    }

    .v2-prototype .steps .st i {
        width: 26px;
        height: 26px;
        font-size: 11.5px
    }

    .v2-prototype .steps .st:before {
        top: 13px
    }

    .v2-prototype .pop-stack {
        align-items: flex-end;
        padding: 0
    }

    .v2-prototype .pbox, .v2-prototype .pbox.sm, .v2-prototype .pbox.md, .v2-prototype .pbox.lg, .v2-prototype .pbox.xl {
        width: 100%;
        max-width: 100%;
        max-height: 92vh;
        border-radius: 22px 22px 0 0;
        animation: sheetIn .28s cubic-bezier(.2, .8, .3, 1)
    }

    .v2-prototype .pbox:before {
        content: "";
        position: absolute;
        top: 8px;
        left: 50%;
        width: 40px;
        height: 4px;
        border-radius: 4px;
        background: #D5DAE0;
        transform: translateX(-50%)
    }

    .v2-prototype .pbox .ph {
        padding: 22px 18px 4px
    }

    .v2-prototype .pbox .ph h3 {
        font-size: 17px
    }

    .v2-prototype .pbox .pb {
        padding: 12px 18px 16px
    }

    .v2-prototype .pbox .pf {
        padding: 12px 18px calc(14px + env(safe-area-inset-bottom))
    }

    .v2-prototype .pbox .pf .btn {
        height: 48px
    }

    .v2-prototype .pick-grid {
        grid-template-columns:repeat(3, 1fr)
    }

    @keyframes sheetIn {
        from {
            transform: translateY(40px);
            opacity: .4
        }
        to {
            transform: none;
            opacity: 1
        }
    }
    .v2-prototype .savebar {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
        border-radius: 16px 16px 0 0;
        margin: 20px -16px 0;
        bottom: 62px;
        padding: 12px 16px
    }

    .v2-prototype .savebar .prog {
        width: 100% !important
    }

    .v2-prototype .savebar .row {
        justify-content: stretch
    }

    .v2-prototype .savebar .row .btn {
        flex: 1;
        min-width: 0 !important
    }

    .v2-prototype #ft .wrap {
        padding-top: 28px;
        padding-bottom: 28px
    }

    .v2-prototype #ft .cs b {
        font-size: 22px
    }

    .v2-prototype #ft .links {
        gap: 6px 14px;
        font-size: 14px
    }

    .v2-prototype #ft .bot {
        font-size: 14px
    }

    .v2-prototype .fbanner h3 {
        font-size: 18px
    }

    .v2-prototype .empty {
        padding: 36px 12px
    }

.v2-prototype #dev .fab {
        opacity: .6
    }

    .v2-prototype #dev.on .fab {
        opacity: 1
    }

.v2-wrap{padding-inline:20px}.v2-header-row{height:62px;padding-inline:18px}.v2-brand img{width:143px}.v2-util{gap:9px}.v2-myjs,.v2-util .v2-cert,.v2-util .v2-user{display:none}.v2-util .v2-login{font-size:14px;padding:5px 12px}.v2-alarm{font-size:19px!important}
 .v2-notice{font-size:10px}.v2-notice .v2-wrap{padding-block:8px;padding-inline:18px}.v2-notice>div>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .v2-hero{padding:12px 12px 0}.v2-hero-stage{height:570px;border-radius:22px}.v2-hero-copy{left:24px;right:24px;max-width:none;top:28px}.v2-eyebrow{font-size:10px;gap:8px}.v2-eyebrow>span{width:20px}.v2-hero-copy h1,.v2-hero-copy h2{font-size:35px;line-height:1.2;margin:14px 0 12px;letter-spacing:-.045em}.v2-hero-copy p{font-size:14px;max-width:none;margin-bottom:14px}.v2-hero-cta{padding:8px 14px;font-size:14px;gap:16px}
 .v2-hero-visual{width:calc(100% - 70px);max-width:330px;top:256px;right:35px}.v2-routine{padding:14px 17px;border-radius:15px;transform:rotate(-2deg)}.v2-routine-title{padding-bottom:10px}.v2-routine-title b{font-size:13px}.v2-routine-title small{font-size:9px}.v2-routine-title>i{width:30px;height:30px;font-size:16px}.v2-routine-title>span{display:inline;font-size:8px;padding:4px 6px}.v2-routine>a{padding:8px 0;gap:9px}.v2-routine>a>i{width:27px;height:27px;font-size:14px}.v2-routine>a b{font-size:11px}.v2-routine>a small{font-size:9px}.v2-routine-foot{font-size:9px;padding-top:9px}.v2-routine>a:nth-of-type(4){display:none}
 .v2-hero-tabs{left:16px;right:16px;bottom:17px;gap:5px;overflow-x:auto;scrollbar-width:none}.v2-hero-tabs button{padding:11px 10px;font-size:10px;border-radius:8px;flex:1 0 auto}.v2-hero-tabs button.v2-hero-pause{flex-basis:30px;padding:8px}
 .v2-solutions{padding-top:34px;padding-bottom:30px}.v2-section-heading{margin-bottom:18px;align-items:center;gap:10px}.v2-section-heading small,.v2-list-intro small{font-size:10px}.v2-section-heading h2,.v2-list-intro h2{font-size:23px;margin-top:4px}.v2-section-heading>a{font-size:10px}
 .v2-solution-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v2-solution{min-height:164px;border-radius:16px;padding:17px}.v2-solution-tag{font-size:9px;padding:3px 7px}.v2-solution>i{top:16px;right:15px;font-size:23px}.v2-solution h3{font-size:19px;margin:25px 0 6px}.v2-solution p{font-size:11px;line-height:1.6;padding-right:0;max-width:135px}.v2-solution-arrow{width:22px;height:22px;font-size:14px;bottom:12px;right:12px}
 .v2-list-intro{align-items:start;flex-direction:column;gap:15px;padding-top:28px}.v2-service-tabs a{padding:7px 16px;font-size:12px}
 .v2-page-band{padding:0}.v2-page-band h1{font-size:26px}.v2-page-band p{font-size:12px}
 .v2-theme .v2-home main>.container{padding-inline:20px}.v2-theme .v2-home .business-type-wrap{flex-wrap:nowrap!important;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}.v2-theme .v2-home .main-recruit-card .card-body{padding:18px!important}
 .v2-db-grid{grid-template-columns:1fr;gap:12px}.v2-db-card{padding:20px}.v2-theme .pc-footer{display:block!important;padding:30px 8px!important;margin-top:30px}.v2-theme .pc-footer .container-fluid>.d-flex{flex-wrap:wrap;gap:20px}.v2-theme .pc-footer .py-1{font-size:10px;line-height:1.6}
 .v2-theme main{min-width:0}.v2-theme .offcanvas{max-width:100vw!important}.v2-theme .signature-pad{height:300px}

.v2-slide-db .v2-hero-copy h2,.v2-slide-community .v2-hero-copy h2{font-size:29px}

.v2-header-row{height:62px}.v2-cert-popover,.v2-profile-popover,.v2-util .v2-settings{display:none}.v2-alarm-menu{position:fixed;top:62px;right:12px;max-width:calc(100vw - 24px)}.v2-alarm-menu:before{display:none}

.shadow-lg {box-shadow: none !important;}

.quick-floating-btn {
        min-width:45px;
        height:45px;
    }
    .quick-floating-menu {right: 14px;bottom: 84px;top: auto;transform: none;gap: 8px;transition: opacity .18s ease, transform .18s ease;}
    .quick-floating-menu.quick-floating-menu-bottom-hidden {opacity: 0;pointer-events: none;transform: translateY(12px);}
    .quick-floating-top-btn {min-height: 46px;}
}

@media (min-width: 576px) and (max-width: 767.98px) {
.topsearch div.search-box {
        width: 52% !important;
    }
    .in-icon2 {padding-left: 0.5rem !important;width:auto !important;}
    .topsearch div.search-box input {padding-left: 3.5rem !important;margin-left:0 !important;}

        /* begin: v2 */
    .resume-mypage-preview-menu {display: none;}
    /* end: v2 */

    .accesagencybtn, .myjeonsanbtn, .mypagebtn{display: none;}


    .container-fluid.container-md.flex-nowrap{
        height: 36px;
    }
    .card .region-badge:nth-of-type(n+4),
    .card .region-badge-normal:nth-of-type(n+4) {
        display: none !important;
    }

    .myjeonsanbtn, .mypagebtn {
        display: none !important;
    }
    .d-flex.flex-column.justify-content-around{
        padding-left:15px !important;
    }
    .companylogo {display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:12px;}

.v2-prototype .cert-shell {
        grid-template-columns: 1fr;
    }

    .v2-prototype .cert-side {
        position: static;
        order: -1;
    }

    .v2-prototype .cert-side ol {
        display: flex;
        gap: 6px;
    }

    .v2-prototype .cert-side li {
        min-height: 0;
        flex: 1;
    }

    .v2-prototype .cert-side li::after {
        display: none;
    }

    .v2-prototype .cert-side li span span {
        display: none;
    }

    .v2-prototype .cert-card,
    .v2-prototype .cert-step-card {
        padding: 18px 16px;
    }

    .v2-prototype .cert-actions {
        position: sticky;
        bottom: 8px;
        z-index: 5;
    }

    .v2-prototype .my-ccards {
        grid-template-columns: 1fr;
    }

    .v2-prototype .cert-status-detail {
        grid-template-columns: 1fr;
    }

    body { font-size: 15px; }
    .header-inner, .hero-inner, .content-wrap { width: min(100% - 24px, 1320px); }
    .brand { font-size: 17px; }
    .profile-trigger strong { display: none; }
    .hero { min-height: 414px;padding-top:0px; }
    .hero-inner { padding-bottom: 50px; }
    .guide-main { grid-template-columns: 1fr; }
    .guide-main .ai-orb { --orb-size: 76px; }
    .guide-title { font-size: 29px; }
    .step-list { grid-template-columns: 1fr; }
    .role-shortcuts { grid-template-columns: 1fr; }
    .search-panel { width: calc(100% - 24px); padding: 12px; }
    .section-head { align-items: start; flex-direction: column; }
    .job-card { padding: 18px; }
    .ai-match { display: none; }

    .mobile-only {width: 515px;}
    .pc-footer {display: none !important;}
    .container {margin-bottom: 5rem !important;}

    .flatpickr-calendar.open {position: fixed !important;top: 50% !important;left: 50% !important;right: auto !important;bottom: auto !important;transform: translate(-50%, -50%) !important;z-index: 10060 !important;width: calc(100vw - 40px) !important;max-width: 360px !important;}
    .flatpickr-calendar.open::before,
    .flatpickr-calendar.open::after {display: none !important;}
    .flatpickr-monthSelect-months {width: 100% !important;}
    .form-check.form-check-inline {padding-left:20px !important;}

    .ga-empty-state {
        min-height: 76px;
        margin: 32px auto;
        padding: 20px 18px;
        border-radius: 12px;
        font-size: 15px;
    }

/*.accesagencybtn, .mypagebtn{display: none !important;}*/

    .v2-reference-home .mn .mn-sec {
        padding-top: 50px
    }

    .v2-reference-home .v2-hero-stage {
        height: 580px
    }

    .v2-reference-home .v2-hero-visual {
        top: 275px;
        right: 30px;
        width: calc(100% - 60px);
        max-width: 350px;
        height: 230px
    }

    .v2-reference-home .v2-routine > a:nth-of-type(4) {
        display: flex
    }

    .v2-reference-home .v2-routine > a {
        padding: 5px 0
    }

    .v2-reference-home .v2-routine-title {
        padding-bottom: 8px
    }

    .v2-reference-home .v2-routine-foot {
        padding-top: 7px
    }

    aside.dr-aside {display: none !important;}

    .v2-subpage-frame {
        padding: 0 !important;
    }

    .v2-prototype .mn-tabs button, .v2-prototype .mn-btabs button {
        font-size: 13px
    }

    .v2-prototype .mn-tbl.jb .mn-th, .v2-prototype .mn-tbl.jb .mn-tr {
        grid-template-columns:46px minmax(0, 1fr) 68px;
        gap: 8px
    }

    .v2-prototype .mn-tbl.jb .mn-tr > .row, .v2-prototype .mn-tbl.jb .mn-tr > .due {
        display: none
    }

    .v2-prototype .community-row {
        grid-template-columns:52px minmax(0, 1fr) 42px;
        gap: 8px;
        padding: 14px 0
    }

    .v2-prototype .community-row .author, .v2-prototype .community-row .date {
        display: none
    }

    .v2-prototype .community-search {
        flex-wrap: wrap
    }

    .v2-prototype .community-search .search {
        min-width: 180px
    }

    .v2-prototype .community-actions {
        flex-wrap: wrap
    }

    .v2-prototype .reference-db-cards {
        grid-template-columns:minmax(0, 1fr)
    }

    .v2-prototype .dw-steps {
        overflow-x: auto
    }

    .v2-prototype .dw-st {
        min-width: 115px;
        padding: 0 12px
    }

    .v2-prototype .dw-st b {
        font-size: 14px;
        padding-right: 0
    }

    .v2-writing-progress {
        padding: 14px;
        gap: 12px;
        margin-bottom: 20px
    }

    .v2-prototype .mn-tbl.jb .mn-tr.has-bookmark {
        grid-template-columns:42px minmax(0, 1fr) 24px
    }

    .v2-prototype .mn-tr.has-bookmark > .bm {
        grid-column: 3;
        grid-row: 1
    }

    .v2-prototype .mn-tr.has-bookmark > .ar, .v2-prototype .mn-tr.has-bookmark > .row, .v2-prototype .mn-tr.has-bookmark > .due {
        grid-column: 2
    }

    .v2-prototype .reference-job-list {
        grid-template-columns:1fr
    }

    .v2-prototype .reference-job {
        padding: 18px
    }

    .v2-prototype .jb-res.card-body {
        padding: 18px
    }

    .v2-reference-sub .db-product-section {
        padding: 18px
    }

    .v2-reference-sub:not(.v2-prototype) .accordion-button {
        padding: 16px !important
    }

    .v2-prototype .rc-tsearch {
        flex-wrap: wrap;
        height: auto !important;
        padding: 12px;
        gap: 10px
    }

    .v2-prototype .rc-tsearch input {
        min-width: 0;
        width: calc(50% - 36px)
    }

    .v2-prototype .rc-tsearch > .btn {
        width: 100%
    }

    .v2-prototype .jb-srch {
        flex-wrap: wrap
    }

    .v2-prototype .jb-srch .search {
        width: 100%;
        flex: auto
    }

    .v2-prototype .jb-srch > .btn {
        width: 100%
    }

    .v2-prototype .ds-purchase-actions {
        bottom: 80px;
        grid-template-columns:1fr 1fr !important
    }

    .v2-prototype .ds-purchase-actions button {
        font-size: 14px
    }

    .v2-prototype .ds-url {
        flex-wrap: wrap
    }

    .v2-prototype.my-system-page .my-system-grid {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype.my-system-page .my-system-card {
        min-height: 95px;
        padding: 10px !important;
        gap: 8px
    }

    .v2-prototype .my-certline {
        flex-wrap: wrap;
        gap: 10px
    }

    .v2-prototype .my-certline .lnk {
        margin-left: 0
    }

    .v2-prototype .jb-workflow-row {
        padding: 17px 14px;
        gap: 8px;
        font-size: 13px
    }

    .v2-prototype .jb-workflow-row > .tag {
        font-size: 14px;
    }

    .v2-prototype .jb-head > .btn {
        flex: 1;
        white-space: nowrap
    }

    .v2-prototype .jb-head > div {
        flex-basis: 100% !important
    }

    .v2-prototype .reference-authorize-job {
        grid-template-columns:minmax(0, 1fr) 70px 30px;
        gap: 8px;
        padding: 16px 12px
    }

    .v2-prototype .reference-authorize-job > div {
        grid-column: 1/3
    }

    .v2-prototype .reference-authorize-job > input {
        grid-column: 3;
        grid-row: 1
    }

    .v2-prototype .reference-authorize-job > span:nth-of-type(1) {
        display: none
    }

    .v2-prototype .reference-authorize-job > span:nth-of-type(2) {
        grid-column: 1
    }

    .v2-prototype .reference-authorize-job > span:nth-of-type(3) {
        grid-column: 2
    }

    .v2-prototype .ap-jl > .hd {
        display: none
    }

    .v2-theme .v2-login-main {
        padding: 30px 20px 60px
    }

    .v2-prototype .lg-favs {
        gap: 12px !important
    }

    .v2-reference-home .mn-slides {
        display: block;
        overflow: hidden;
        padding: 0 16px
    }

    .v2-reference-home .mn-slide {
        display: none;
        width: 100%;
        height: 492px
    }

    .v2-reference-home .mn-slide.on {
        display: block
    }

    .v2-reference-home .mn-htab .bar {
        display: block;
        left: 14px;
        right: 14px;
        bottom: 3px
    }

    .v2-reference-home .mn-hero-in {
        position: relative
    }

    .v2-resume-detail .card.rc-sec, .v2-recruit-detail .card.rc-sec {
        padding: 18px 16px !important
    }

    .v2-resume-detail .card.rc-prof {
        padding: 18px 16px !important;
        flex-direction: row;
        align-items: flex-start
    }

    .v2-resume-detail .resume-basic-text > .row > div {
        grid-template-columns:82px minmax(0, 1fr);
        gap: 0 10px;
        font-size: 13px
    }

    .v2-resume-detail .rc-basic {
        flex-direction: column-reverse
    }

    .v2-resume-detail .resume-photo-wrap {
        flex-basis: auto;
        width: 110px
    }

    .v2-resume-detail .talent-search-action-row > div {
        display: flex;
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-recruit-detail .rc-sec > .w-100 > .badge {
        flex-basis: 88px;
        font-size: 12px
    }

    .v2-recruit-detail .gaoffcanvasbtn > h4 {
        font-size: 22px
    }

    .v2-recruit-detail .rc-snav {
        top: 64px
    }

    .v2-document-detail .card-body {
        padding: 18px 16px !important
    }

    .v2-recruit-overview .rc-stats {
        gap: 8px
    }

    .v2-recruit-overview .rc-stat {
        padding: 14px 10px;
        gap: 8px;
        flex-direction: column;
        align-items: flex-start
    }

    .v2-recruit-overview .rc-stat > b {
        font-size: 22px
    }

    .v2-recruit-overview .rc-stat small {
        font-size: 14px;
    }

    .v2-theme .v2-recruit-overview .card.rc-subs {
        padding: 16px !important
    }

    .v2-recruit-overview .rc-app-filter {
        padding: 16px
    }

    .v2-recruit-overview .rc-subs-g {
        max-width: calc(100% + 32px)
    }

    .v2-recruit-overview .rc-applicant-card .card-body {
        padding: 18px !important
    }

    .v2-recruit-write-list .rc-wq {
        width: 100%
    }

    .v2-recruit-write-list .rc-wbar .chips {
        display: flex;
        gap: 6px;
        flex-wrap: wrap
    }

    .v2-recruit-write-list .rc-wr .rc-wr-p {
        min-width: 0
    }

    .v2-recruit-write-list .rc-wr {
        grid-template-columns:minmax(0, 1fr)
    }

    .v2-recruit-write-list .rc-wr > .row > .btn {
        flex: 1
    }

    .v2-recruit-write-list .rc-wr > .row > .jb-dd {
        flex: 0 0 auto
    }

    .v2-recruit-overview #filterForm select {
        width: 100%;
        max-width: 100%;
        min-width: 0
    }

    .v2-recruit-overview .rc-subs-h {
        min-width: 0
    }

    .v2-recruit-overview .rc-subs-h .ttl {
        font-size: 14px
    }

    .v2-certification-status .card {
        padding: 18px 16px
    }

    .v2-certification-status .my-cstat .nm {
        flex-wrap: wrap;
        font-size: 15px
    }

    .v2-certification-status .cert-actions {
        flex-wrap: wrap
    }

    .v2-my-page .my-seg button, .v2-my-page .my-tabs button {
        padding: 0 13px;
        font-size: 13px
    }

    .v2-my-page .my-tabs {
        width: 100%;
        overflow: auto
    }

    .v2-my-page .my-ocards {
        grid-template-columns:minmax(0, 1fr)
    }

    .v2-my-page .my-point-history, .v2-my-page .my-aset > .card, .v2-my-page .my-set {
        padding: 18px 16px
    }

    .v2-my-page .my-ptop {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-my-page .my-ptop .btns {
        grid-column: 1/-1
    }

    .v2-my-page .my-al .go {
        margin-left: auto
    }

    .v2-my-page .my-ptop .big {
        font-size: 25px
    }

    .v2-my-page .my-srow {
        gap: 10px
    }

    .v2-my-page .my-srow .btn {
        white-space: nowrap;
        flex-shrink: 0
    }

    .v2-my-page .my-ptop .btns {
        grid-column: auto;
        padding: 14px 12px
    }

    .v2-my-page .my-ptop .btns .btn {
        white-space: normal;
        line-height: 1.3;
        font-size: 12px
    }

    .v2-my-phone #savePhoneBtn {
        width: 100%;
    }

    .v2-settings-document .my-tocsel {
        top: 62px;
    }

    .v2-settings-document .my-legal h3,
    .v2-settings-document .my-legal h4 {
        scroll-margin-top: 130px;
    }

    .v2-ad-inquiry .grid2 {
        grid-template-columns: minmax(0, 1fr);
    }

    .v2-ad-inquiry .my-nextbar .btn {
        flex: 1;
    }

    .v2-point-summary .rc-subs-h {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 10px;
    }

    .v2-point-summary .rc-subs-h .ttl {
        grid-column: 1;
        grid-row: 1;
    }

    .v2-point-summary .rc-subs-h > .btn {
        grid-column: 2;
        grid-row: 1;
    }

    .v2-point-summary .rc-subs-h .rc-evt {
        grid-column: 1 / -1;
        justify-self: start;
    }

    body.v2-tools-scroll-layout .v2-tools-page .tl-tabs {
        top: 62px;
    }

    body.v2-tools-scroll-layout .v2-subpage-frame .v2-subnav .lnb {
        top: 78px;
    }

    .v2-prototype .mn .mn-sec {
        padding-top: 52px
    }

    .v2-prototype .mn-head {
        margin-bottom: 20px
    }

    .v2-prototype .mn-head h2 {
        font-size: 22px;
        line-height: 1.38
    }

    .v2-prototype .mn-head p {
        font-size: 14px;
        margin-top: 8px;
        line-height: 1.6
    }

    .v2-prototype .mn-head p br {
        display: none
    }

    .v2-prototype .mn-kick {
        font-size: 14px;;
        margin-bottom: 8px
    }

    .v2-prototype .mn-hero {
        padding: 12px 0 0
    }

    .v2-prototype .mn-hero-in {
        height: auto;
        border-radius: 0;
        background: none !important;
        overflow: visible;
        display: flex;
        flex-direction: column
    }

    .v2-prototype .mn-htabs {
        position: static;
        order: -1;
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding: 0 16px 12px;
        scrollbar-width: none
    }

    .v2-prototype .mn-htabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .mn-htab, .v2-prototype .mn-hero-in.dk .mn-htab {
        flex: none;
        width: auto;
        height: 38px;
        padding: 0 14px;
        border-radius: 999px;
        background: var(--bg);
        color: var(--ink2);
        backdrop-filter: none;
        box-shadow: none
    }

    .v2-prototype .mn-htab .ar, .v2-prototype .mn-htab .bar {
        display: none
    }

    .v2-prototype .mn-htab svg {
        width: 16px;
        height: 16px
    }

    .v2-prototype .mn-htab b {
        font-size: 14px;
        white-space: nowrap
    }

    .v2-prototype .mn-htab.on, .v2-prototype .mn-hero-in.dk .mn-htab.on {
        background: var(--ink);
        color: #fff;
        box-shadow: none
    }

    .v2-prototype .mn-htab.on svg, .v2-prototype .mn-hero-in.dk .mn-htab.on svg {
        color: #7FD6C5
    }

    .v2-prototype .mn-slides {
        display: flex;
        gap: 10px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        padding: 0 16px;
        scroll-padding: 0 16px;
        scrollbar-width: none;
        overscroll-behavior-x: contain
    }

    .v2-prototype .mn-slides::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .mn-slide {
        position: relative;
        inset: auto;
        flex: 0 0 calc(100% - 22px);
        height: 492px;
        opacity: 1;
        visibility: visible;
        border-radius: 24px;
        overflow: hidden;
        scroll-snap-align: start;
        transition: none
    }

    .v2-prototype .mn-slide:before {
        width: 360px;
        height: 360px;
        right: -120px;
        top: -120px
    }

    .v2-prototype .mn-copy {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        padding: 26px 22px 0;
        max-width: none
    }

    .v2-prototype .mn-copy > * {
        opacity: 1;
        transform: none;
        transition: none
    }

    .v2-prototype .mn-eye {
        font-size: 14px
    }

    .v2-prototype .mn-copy h1, .v2-prototype .mn-slide.s5 .mn-copy h1 {
        font-size: 27px;
        line-height: 1.28;
        margin-top: 12px;
        letter-spacing: -.04em
    }

    .v2-prototype .mn-sub {
        margin-top: 12px;
        gap: 14px
    }

    .v2-prototype .mn-sub p {
        font-size: 14px;
        width: 100%
    }

    .v2-prototype .mn-cta {
        height: 40px;
        font-size: 14px;
        padding: 0 14px 0 18px
    }

    .v2-prototype .mn-vis {
        top: auto;
        bottom: 54px;
        right: auto;
        left: 50%;
        margin-left: -240px;
        width: 480px;
        height: 340px;
        scale: .6;
        transform-origin: 50% 100%;
        opacity: 1;
        transform: none;
        transition: none
    }

    .v2-prototype .hv-float {
        animation: none
    }

    .v2-prototype .mn-hcnt {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 3px;
        position: absolute;
        right: 50px;
        bottom: 14px;
        z-index: 4;
        height: 28px;
        min-width: 52px;
        padding: 0 10px;
        border-radius: 999px;
        background: rgba(16, 24, 40, .42);
        color: rgba(255, 255, 255, .75);
        font-size: 14px;
        font-weight: 600
    }

    .v2-prototype .mn-hcnt b {
        color: #fff
    }

    .v2-prototype .mn-play, .v2-prototype .mn-hero-in.dk .mn-play {
        position: absolute;
        right: 108px;
        bottom: 14px;
        z-index: 4;
        width: 28px;
        height: 28px;
        margin: 0;
        background: rgba(16, 24, 40, .42);
        color: #fff
    }

    .v2-prototype .mn-play svg {
        width: 12px;
        height: 12px
    }

    .v2-prototype .mn-solgrid {
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        gap: 10px
    }

    .v2-prototype .mn-sol {
        min-height: 150px;
        padding: 16px;
        border-radius: 18px
    }

    .v2-prototype .mn-sol .mn-stag {
        position: absolute;
        right: 12px;
        top: 14px;
        height: 22px;
        padding: 0 8px;
        font-size: 14px;
    }

    .v2-prototype .mn-sico {
        width: 42px;
        height: 42px;
        border-radius: 13px;
        margin-top: 0
    }

    .v2-prototype .mn-sico svg {
        width: 20px;
        height: 20px
    }

    .v2-prototype .mn-stx {
        padding-top: 14px
    }

    .v2-prototype .mn-stx b {
        font-size: 16px
    }

    .v2-prototype .mn-stx span {
        font-size: 14px;
        line-height: 1.42;
        padding-right: 0;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden
    }

    .v2-prototype .mn-sar {
        display: none
    }

    .v2-prototype .mn-sbg {
        width: 92px;
        height: 92px;
        right: -18px;
        top: auto;
        bottom: -18px
    }

    .v2-prototype .mn-solgrid > .mn-sol:first-child {
        grid-column: 1/-1;
        min-height: 0;
        flex-direction: row;
        align-items: center;
        gap: 14px;
        padding: 18px 60px 18px 18px
    }

    .v2-prototype .mn-solgrid > .mn-sol:first-child .mn-stx {
        margin-top: 0;
        padding-top: 0
    }

    .v2-prototype .mn-solgrid > .mn-sol:first-child .mn-stx span {
        -webkit-line-clamp: 3
    }

    .v2-prototype .mn-solgrid > .mn-sol:first-child .mn-sar {
        display: flex;
        right: 14px;
        bottom: 14px;
        width: 34px;
        height: 34px
    }

    .v2-prototype .mn-solgrid > .mn-sol:first-child .mn-sico {
        width: 48px;
        height: 48px
    }

    .v2-prototype .mn-ad {
        grid-column: 1/-1;
        min-height: 0;
        padding: 20px;
        border-radius: 18px
    }

    .v2-prototype .mn-ad b {
        font-size: 18px;
        max-width: 80%
    }

    .v2-prototype .mn-ad em {
        margin-top: 8px
    }

    .v2-prototype .mn-adart {
        width: 160px;
        height: 160px;
        border-width: 26px
    }

    .v2-prototype .mn-ad.a2 {
        order: 1
    }

    .v2-prototype .mn-igrid {
        grid-template-columns:minmax(0, 1fr);
        gap: 14px
    }

    .v2-prototype .mn-board {
        order: 3
    }

    .v2-prototype .mn-today {
        order: 4
    }

    .v2-prototype .mn-side {
        order: 5;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 14px
    }

    .v2-prototype .mn-igrid > .mn-sad {
        order: 6;
        min-height: 120px
    }

    .v2-prototype .mn-bans {
        order: 7
    }

    .v2-prototype .mn-box, .v2-prototype .mn-box.sm {
        padding: 16px;
        border-radius: 18px
    }

    .v2-prototype .mn-tabs {
        gap: 14px
    }

    .v2-prototype .mn-tabs a {
        font-size: 15px
    }

    .v2-prototype .mn-pr, .v2-prototype .mn-lr {
        height: 48px;
        font-size: 14px
    }

    .v2-prototype .mn-pr .tag {
        width: auto;
        min-width: 60px;
        font-size: 11.5px
    }

    .v2-prototype .mn-rl a {
        height: 42px;
        font-size: 14px
    }

    .v2-prototype .mn-rl a span {
        font-size: 14px
    }

    .v2-prototype .mn-sad {
        padding: 18px;
        border-radius: 18px
    }

    .v2-prototype .mn-sad b {
        font-size: 17px
    }

    .v2-prototype .mn-side > .mn-sad {
        height: 120px !important
    }

    .v2-prototype .mn-fav {
        padding: 12px
    }

    .v2-prototype .mn-fd p {
        font-size: 13.5px
    }

    .v2-prototype .mn-board {
        padding: 18px 16px 16px
    }

    .v2-prototype .mn-bdh {
        gap: 8px
    }

    .v2-prototype .mn-bdh h3 {
        font-size: 18px
    }

    .v2-prototype .mn-live {
        width: 20px;
        height: 20px
    }

    .v2-prototype .mn-live i {
        width: 8px;
        height: 8px
    }

    .v2-prototype .mn-tog {
        padding: 3px
    }

    .v2-prototype .mn-tog i {
        left: 3px;
        top: 3px;
        bottom: 3px;
        width: 56px
    }

    .v2-prototype .mn-tog.job i {
        transform: translateX(56px)
    }

    .v2-prototype .mn-tog button {
        width: 56px;
        height: 34px;
        font-size: 13.5px
    }

    .v2-prototype .mn-btabs {
        gap: 18px;
        margin-top: 14px;
        overflow-x: auto;
        scrollbar-width: none
    }

    .v2-prototype .mn-btabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .mn-btabs a {
        flex: none;
        font-size: 14.5px;
        white-space: nowrap;
        padding: 10px 0 11px
    }

    .v2-prototype .mn-filt {
        padding: 12px 0 14px;
        gap: 6px
    }

    .v2-prototype .mn-fr {
        align-items: center;
        gap: 8px
    }

    .v2-prototype .mn-fr > span {
        width: 42px;
        font-size: 14px;
        line-height: 34px
    }

    .v2-prototype .mn-fr .chips {
        flex: 1;
        min-width: 0;
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        margin-right: -16px;
        padding-right: 16px
    }

    .v2-prototype .mn-fr .chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .mn-chip {
        flex: none;
        height: 34px;
        font-size: 14px;
        padding: 0 12px
    }

    .v2-prototype .mn-tbl {
        border-top: 0;
        display: flex;
        flex-direction: column;
        gap: 10px
    }

    .v2-prototype .mn-th {
        display: none
    }

    .v2-prototype .mn-tr, .v2-prototype .mn-tbl.jb .mn-tr {
        position: relative;
        grid-template-columns:48px minmax(0, 1fr) auto;
        grid-template-areas:"lg tt tt" "lg ar du" "lg kd kd";
        gap: 6px 12px;
        min-height: 0;
        padding: 14px;
        border: 1px solid var(--line);
        border-radius: 16px;
        align-items: start
    }

    .v2-prototype .mn-tr > .logo-ph, .v2-prototype .mn-tr > .avw {
        grid-area: lg;
        width: 48px !important;
        height: 48px !important
    }

    .v2-prototype .mn-tr > .avw .av {
        width: 44px;
        height: 44px
    }

    .v2-prototype .mn-tr .tt {
        grid-area: tt
    }

    .v2-prototype .mn-tbl.jb .mn-tr .tt {
        padding-right: 30px
    }

    .v2-prototype .mn-tr .tt b {
        font-size: 14.5px;
        white-space: normal;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical
    }

    .v2-prototype .mn-tr .tt small {
        font-size: 14px
    }

    .v2-prototype .mn-tr .ar {
        grid-area: ar;
        font-size: 14px;
        align-self: center
    }

    .v2-prototype .mn-tr > .row.w {
        grid-area: kd
    }

    .v2-prototype .mn-tr .due {
        grid-area: du;
        font-size: 14px;
        align-self: center
    }

    .v2-prototype .mn-tr > .bm {
        position: absolute;
        right: 8px;
        top: 10px
    }

    .v2-prototype .mn-bfoot {
        padding-top: 16px
    }

    .v2-prototype .btn.mn-allbtn {
        width: 100%;
        justify-content: center
    }

    .v2-prototype .mn-today .mn-tds {
        grid-template-columns:minmax(0, 1fr)
    }

    .v2-prototype .mn-td {
        padding: 6px 12px 6px 6px;
        font-size: 14px
    }

    .v2-prototype .mn-bans {
        flex-direction: row;
        gap: 10px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        margin: 0 -16px;
        padding: 0 16px;
        scroll-padding: 0 16px;
        scrollbar-width: none
    }

    .v2-prototype .mn-bans::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .mn-bans .mn-ban {
        flex: 0 0 84%;
        min-height: 112px;
        padding: 18px 58px 18px 20px;
        justify-content: flex-end;
        scroll-snap-align: start;
        border-radius: 18px
    }

    .v2-prototype .mn-ban b {
        font-size: 16px;
        line-height: 1.4
    }

    .v2-prototype .mn-ban i {
        right: 16px;
        top: auto;
        bottom: 16px;
        margin-top: 0;
        width: 34px;
        height: 34px
    }

    .v2-prototype .mn-how {
        gap: 12px
    }

    .v2-prototype .mn-hbox {
        display: block;
        padding: 18px 16px;
        border-radius: 20px
    }

    .v2-prototype .mn-hh {
        margin-bottom: 12px
    }

    .v2-prototype .mn-hh b {
        font-size: 17px
    }

    .v2-prototype .mn-tiles {
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        gap: 8px
    }

    .v2-prototype .mn-tile {
        min-height: 118px;
        padding: 14px;
        border-radius: 16px
    }

    .v2-prototype .mn-tile i {
        width: 40px;
        height: 40px;
        border-radius: 12px
    }

    .v2-prototype .mn-tile i svg {
        width: 20px;
        height: 20px
    }

    .v2-prototype .mn-tile b {
        padding-top: 10px;
        font-size: 13.5px
    }

    .v2-prototype .mn-tile em {
        opacity: 1;
        right: 10px;
        top: 10px
    }

    .v2-prototype .mn-tile.ad b {
        font-size: 13.5px
    }

    .v2-prototype .mn-co {
        padding: 22px 16px;
        border-radius: 22px;
        gap: 18px
    }

    .v2-prototype .mn-col {
        grid-template-columns:1fr
    }

    .v2-prototype .mn-col h2 {
        font-size: 22px;
        margin-bottom: 8px
    }

    .v2-prototype .mn-coa {
        padding: 14px 2px
    }

    .v2-prototype .mn-coa b {
        font-size: 16px
    }

    .v2-prototype .mn-coa:last-of-type {
        border-bottom: 1px solid #E6DFD3
    }

    .v2-prototype .mn-logos {
        grid-template-columns:repeat(3, minmax(0, 1fr));
        gap: 8px
    }

    .v2-prototype .mn-logo {
        height: 56px;
        border-radius: 12px
    }

    .v2-prototype .mn-logo {
        padding: 0 6px
    }

    .v2-prototype .mn-logo b {
        font-size: 14px;
        text-wrap: balance
    }

    .v2-prototype .mn-with {
        margin-top: 56px
    }

    .v2-prototype .mn-with .wrap {
        padding-top: 44px;
        padding-bottom: 44px;
        gap: 24px
    }

    .v2-prototype .mn-wl h2 {
        font-size: 24px
    }

    .v2-prototype .mn-wl ul {
        margin-top: 18px;
        gap: 10px
    }

    .v2-prototype .mn-wl li {
        font-size: 15px;
        gap: 10px;
        align-items: flex-start
    }

    .v2-prototype .mn-sea {
        margin-top: 20px;
        font-size: 17px
    }

    .v2-prototype .mn-wr {
        gap: 8px
    }

    .v2-prototype .mn-sns {
        height: 54px;
        padding: 0 10px;
        gap: 10px;
        font-size: 14.5px;
        border-radius: 14px
    }

    .v2-prototype .mn-sns > svg {
        display: none
    }

    .v2-prototype .mn-wr > .mn-sns:first-child > svg {
        display: block
    }

    .v2-prototype .lgn {
        margin: 4px auto 16px
    }

    .v2-prototype .lgn h1 {
        font-size: 22px;
        margin-bottom: 16px;
        text-align: center;
        padding: 0
    }

    .v2-prototype .lg-grid {
        grid-template-columns:1fr;
        gap: 16px
    }

    .v2-prototype .lg-brand {
        order: -1;
        min-height: 196px;
        border-radius: 20px
    }

    .v2-prototype .lg-bin {
        padding: 22px 18px 0
    }

    .v2-prototype .lg-mark {
        width: 70px;
        height: 40px
    }

    .v2-prototype .lg-mark img {
        height: 40px
    }

    .v2-prototype .lg-bin h2 {
        font-size: 24px;
        margin-top: 10px
    }

    .v2-prototype .lg-bin p {
        font-size: 14px
    }

    .v2-prototype .lg-wave {
        height: 62px
    }

    .v2-prototype .lg-sns {
        height: 52px;
        font-size: 15px
    }

    .v2-prototype .lg-auto {
        min-height: 32px
    }

    .v2-prototype .lg-terms {
        text-align: center;
        line-height: 1.6
    }

    .v2-prototype .lg-fav {
        margin-top: 20px;
        padding: 16px
    }

    .v2-prototype .lg-fav > .row {
        flex-wrap: wrap;
        row-gap: 4px
    }

    .v2-prototype .lg-favs {
        display: grid;
        grid-template-columns:repeat(4, minmax(0, 1fr));
        gap: 16px 8px
    }

    .v2-prototype .lg-fv {
        width: auto;
        font-size: 14px
    }

    .v2-prototype .lg-fv > i {
        width: 52px;
        height: 52px;
        border-radius: 14px
    }

    .v2-prototype .lg-fv span {
        max-width: 100%
    }

    .v2-prototype .lg-fv > b {
        right: 6px
    }

    .v2-prototype .lg-add {
        width: 30px;
        height: 30px
    }

    .v2-prototype .tl {
        gap: 22px;
        padding-bottom: 24px
    }

    .v2-prototype .tl-tabs {
        top: 56px;
        margin: 0 -16px;
        padding: 10px 16px
    }

    .v2-prototype .tl-tabs a {
        flex: none;
        height: 38px;
        font-size: 14px
    }

    .v2-prototype .tl-sec {
        padding-top: 18px
    }

    .v2-prototype .tl-sec + .tl-sec {
        margin-top: 24px;
        padding-top: 28px
    }

    .v2-prototype .tl-sh h2 {
        font-size: 20px
    }

    .v2-prototype .tl-sh p {
        font-size: 13.5px
    }

    .v2-prototype .tl-cards {
        grid-template-columns:1fr;
        gap: 8px;
        margin-top: 14px
    }

    .v2-prototype .tl-card {
        display: grid;
        grid-template-columns:44px minmax(0, 1fr);
        column-gap: 12px;
        row-gap: 3px;
        align-items: center;
        padding: 14px 56px 14px 14px;
        border-radius: 16px
    }

    .v2-prototype .tl-card .mn-sico {
        grid-column: 1;
        grid-row: 1/4;
        margin: 0
    }

    .v2-prototype .tl-card .mn-stag {
        grid-column: 2;
        grid-row: 1;
        justify-self: start;
        height: 20px;
        font-size: 14px;;
        padding: 0 8px
    }

    .v2-prototype .tl-card b {
        grid-column: 2;
        grid-row: 2;
        margin: 0;
        font-size: 16px
    }

    .v2-prototype .tl-card > span:not(.mn-stag) {
        grid-column: 2;
        grid-row: 3;
        margin: 0;
        font-size: 13px
    }

    .v2-prototype .tl-card em {
        top: 50%;
        bottom: auto;
        margin-top: -17px;
        right: 14px;
        width: 34px;
        height: 34px
    }

    .v2-prototype .tl-blk {
        grid-template-columns:minmax(0, 1fr);
        gap: 22px;
        padding: 24px 18px 20px;
        border-radius: 22px;
        margin-top: 12px;
        scroll-margin-top: 118px
    }

    .v2-prototype .tl-bt h3 {
        font-size: 23px;
        margin-top: 12px
    }

    .v2-prototype .tl-bt p {
        font-size: 14px
    }

    .v2-prototype .tl-bt p.hd {
        font-size: 16px;
        margin-top: 10px
    }

    .v2-prototype .tl-bt .btn.tl-go {
        margin-top: 18px;
        height: 44px
    }

    .v2-prototype .tl-vis {
        min-height: 0;
        display: block
    }

    .v2-prototype .tl-rail {
        grid-template-columns:1fr
    }

    .v2-prototype .tl-rail .mn-sad {
        height: 130px !important
    }

    .v2-prototype .mk-chem {
        grid-template-columns:1fr
    }

    .v2-prototype .mk-pane + .mk-pane {
        border-left: 0;
        border-top: 1px solid var(--line2)
    }

    .v2-prototype .mk-mbody {
        grid-template-columns:minmax(0, 1fr) 84px;
        padding: 18px 14px 70px;
        min-height: 0
    }

    .v2-prototype .mk-mtx h4 {
        font-size: 17px
    }

    .v2-prototype .mk-body {
        width: 84px;
        height: 176px
    }

    .v2-prototype .mk-mcard {
        right: 14px;
        bottom: 14px;
        left: 14px
    }

    .v2-prototype .mk-mdf {
        grid-template-columns:1fr;
        min-height: 0
    }

    .v2-prototype .mk-side {
        flex-direction: row;
        flex-wrap: wrap;
        padding: 10px
    }

    .v2-prototype .mk-side small {
        display: none
    }

    .v2-prototype .mk-kb {
        grid-template-columns:1fr 1fr
    }

    .v2-prototype .mk-ap2 {
        grid-template-columns:1fr
    }

    .v2-prototype .my-col {
        gap: 14px
    }

    .v2-prototype .my-h {
        font-size: 15.5px
    }

    .v2-prototype .card.my-prof {
        padding: 18px 16px;
        gap: 12px;
        background: linear-gradient(160deg, #fff 0%, #fff 50%, var(--g-ll) 100%)
    }

    .v2-prototype .my-prof .av {
        width: 52px;
        height: 52px
    }

    .v2-prototype .my-prof .who2 {
        flex-basis: calc(100% - 64px)
    }

    .v2-prototype .my-prof .who2 b {
        font-size: 18px
    }

    .v2-prototype .my-prof .who2 .nm {
        flex-wrap: wrap;
        row-gap: 4px
    }

    .v2-prototype .my-prof .who2 .nm .tag {
        margin-left: 0 !important
    }

    .v2-prototype .my-prof .meta {
        font-size: 14px
    }

    .v2-prototype .my-prof .meta span:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%
    }

    .v2-prototype .my-lic, .v2-prototype .my-pt {
        flex: 1 1 100%;
        padding: 12px 14px
    }

    .v2-prototype .my-lic b {
        font-size: 15px
    }

    .v2-prototype .my-pt {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px
    }

    .v2-prototype .my-pt small {
        flex-direction: column;
        gap: 2px;
        font-size: 14px
    }

    .v2-prototype .my-pt small em {
        font-size: 13px
    }

    .v2-prototype .my-pt b {
        margin-top: 0;
        font-size: 21px
    }

    .v2-prototype .my-reg {
        grid-template-columns:1fr;
        gap: 8px
    }

    .v2-prototype .my-reg a {
        display: grid;
        grid-template-columns:auto 1fr auto;
        grid-template-areas:"tg tt go" "tg d go";
        align-items: center;
        gap: 2px 12px;
        padding: 14px 16px;
        border-radius: 14px
    }

    .v2-prototype .my-reg a .tag {
        grid-area: tg;
        align-self: center
    }

    .v2-prototype .my-reg a b {
        grid-area: tt;
        margin: 0;
        font-size: 15.5px
    }

    .v2-prototype .my-reg a span.d {
        grid-area: d;
        font-size: 14px
    }

    .v2-prototype .my-reg a em {
        grid-area: go;
        margin: 0;
        font-size: 13px
    }

    .v2-prototype .my-reg a .bgi {
        display: none
    }

    .v2-prototype .card.my-certline {
        flex-wrap: wrap;
        gap: 4px 8px;
        padding: 14px 16px;
        font-size: 14px
    }

    .v2-prototype .my-certline .muted {
        font-size: 13px
    }

    .v2-prototype .my-certline .lnk {
        flex-basis: 100%;
        margin-left: 26px;
        display: flex;
        align-items: center;
        gap: 2px
    }

    .v2-prototype .my-acts {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .my-acts .card {
        padding: 14px 16px 4px
    }

    .v2-prototype .my-acts a {
        padding: 12px 2px;
        min-height: 44px
    }

    .v2-prototype .my-prep {
        padding: 44px 18px;
        border-radius: 16px
    }

    .v2-prototype .my-prep .ci {
        width: 68px;
        height: 68px;
        border-radius: 20px
    }

    .v2-prototype .my-prep h2 {
        font-size: 21px
    }

    .v2-prototype .my-prep p {
        font-size: 13.5px
    }

    .v2-prototype .my-prep p br {
        display: none
    }

    .v2-prototype .my-prep .row {
        flex-direction: column;
        align-items: stretch
    }

    .v2-prototype .my-prep .row .btn {
        width: 100%
    }

    .v2-prototype .my-seg {
        width: 100%
    }

    .v2-prototype .my-seg a {
        flex: 1;
        justify-content: center;
        height: 42px;
        padding: 0 10px
    }

    .v2-prototype .my-al {
        display: grid;
        grid-template-columns:36px 1fr 40px;
        gap: 6px 12px;
        padding: 14px 2px;
        align-items: start
    }

    .v2-prototype .my-al .ico {
        grid-row: 1/3;
        width: 36px;
        height: 36px
    }

    .v2-prototype .my-al .tx {
        grid-column: 2
    }

    .v2-prototype .my-al .tx b {
        font-size: 14.5px
    }

    .v2-prototype .my-al .tx p {
        font-size: 13px
    }

    .v2-prototype .my-newb {
        grid-column: 2;
        grid-row: 2;
        justify-self: start;
        height: 22px;
        font-size: 11.5px
    }

    .v2-prototype .my-al .go {
        grid-column: 3;
        grid-row: 1/3;
        align-self: center;
        width: 40px;
        height: 40px;
        padding: 0;
        font-size: 0;
        gap: 0;
        justify-content: center;
        border-radius: 50%;
        background: var(--bg)
    }

    .v2-prototype .my-al .go .ic {
        width: 18px;
        height: 18px
    }

    .v2-prototype .my-aset {
        grid-template-columns:1fr;
        gap: 10px;
        margin-top: 12px
    }

    .v2-prototype .my-aset .card {
        padding: 16px 16px 4px
    }

    .v2-prototype .my-swrow {
        min-height: 48px;
        padding: 10px 0
    }

    .v2-prototype .my-ptop {
        grid-template-columns:1fr 1fr;
        gap: 10px
    }

    .v2-prototype .my-ptop .ptcard {
        grid-column: 1/-1
    }

    .v2-prototype .my-ptop .card {
        padding: 16px
    }

    .v2-prototype .my-ptop .big {
        font-size: 26px
    }

    .v2-prototype .my-ptop .grade {
        font-size: 15px;
        margin-top: 6px
    }

    .v2-prototype .my-ptop .card:nth-child(2) .row {
        flex-wrap: wrap;
        gap: 6px
    }

    .v2-prototype .my-ptop .btns {
        gap: 6px
    }

    .v2-prototype .my-ptop .btns .btn {
        height: 44px;
        font-size: 14px;
        padding: 0 8px
    }

    .v2-prototype .my-ptop + .card {
        padding: 16px !important
    }

    .v2-prototype .my-tabs {
        width: auto;
        max-width: 100%;
        overflow-x: auto;
        scrollbar-width: none;
        margin-bottom: 14px
    }

    .v2-prototype .my-tabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .my-tabs a {
        flex: none;
        height: 38px;
        padding: 0 13px;
        font-size: 14px;
        white-space: nowrap
    }

    .v2-prototype .my-ocards {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .my-oc .top {
        flex-wrap: wrap
    }

    .v2-prototype .my-oc b {
        font-size: 15px
    }

    .v2-prototype .my-more > button {
        width: 40px;
        height: 36px
    }

    .v2-prototype .my-h small {
        font-size: 14px
    }

    .v2-prototype .my-plist {
        max-height: none
    }

    .v2-prototype .my-pi {
        padding: 13px 14px;
        gap: 10px
    }

    .v2-prototype .my-pi .nm {
        font-size: 14.5px
    }

    .v2-prototype .my-pi .pr b {
        font-size: 15.5px
    }

    .v2-prototype .my-pi .pr small {
        font-size: 11.5px
    }

    .v2-prototype .my-plist + .row {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .my-plist + .row .sp {
        display: none
    }

    .v2-prototype .my-plist + .row .seg {
        display: flex;
        width: 100%
    }

    .v2-prototype .my-plist + .row .seg > * {
        flex: 1;
        justify-content: center;
        padding: 0 6px;
        height: 38px
    }

    .v2-prototype .my-psum {
        flex-wrap: wrap;
        gap: 4px 10px;
        padding: 12px 14px
    }

    .v2-prototype .my-psum b {
        font-size: 15px
    }

    .v2-prototype .my-psum .sp + .muted {
        margin-left: auto
    }

    .v2-prototype .my-psum .sp {
        display: none
    }

    .v2-prototype .my-psum > b:first-of-type {
        flex: 1 1 60%;
        min-width: 0
    }

    .v2-prototype .my-od-sec {
        padding: 14px 14px 12px
    }

    .v2-prototype .my-od-kv {
        grid-template-columns:82px 1fr;
        font-size: 14px;
        padding: 10px 12px
    }

    .v2-prototype .my-od-kv b {
        word-break: break-all
    }

    .v2-prototype .my-pay {
        padding: 14px
    }

    .v2-prototype .my-rcpt {
        padding: 18px 14px
    }

    .v2-prototype .my-rcpt .r {
        gap: 12px
    }

    .v2-prototype .my-rcpt .r b {
        text-align: right;
        word-break: break-all
    }

    .v2-prototype .my-rcpt .stamp {
        right: auto;
        left: 40%;
        bottom: 22px;
        width: 56px;
        height: 56px;
        font-size: 14px
    }

    .v2-prototype .card.my-set {
        padding: 4px 16px 6px
    }

    .v2-prototype .my-set > h3 {
        padding: 14px 0 4px;
        font-size: 15px
    }

    .v2-prototype .my-srow {
        gap: 12px;
        padding: 14px 0;
        align-items: flex-start
    }

    .v2-prototype a.my-srow {
        align-items: center;
        min-height: 52px
    }

    .v2-prototype .my-srow .ico {
        width: 34px;
        height: 34px;
        border-radius: 10px
    }

    .v2-prototype .my-srow .tx b {
        font-size: 14.5px;
        margin-top: 6px
    }

    .v2-prototype a.my-srow .tx b {
        margin-top: 0
    }

    .v2-prototype .my-srow > .btn {
        flex: none;
        height: 38px;
        padding: 0 13px;
        margin-top: 2px
    }

    .v2-prototype .my-hbar {
        height: 52px;
        margin-bottom: 12px;
        border-radius: 12px
    }

    .v2-prototype .my-hbar h2 {
        font-size: 16px
    }

    .v2-prototype .my-back {
        width: 40px;
        height: 40px
    }

    .v2-prototype .my-box {
        padding: 18px 16px;
        border-radius: 14px
    }

    .v2-prototype .my-box > p {
        font-size: 13.5px !important
    }

    .v2-prototype .my-warnbox {
        padding: 14px;
        gap: 10px
    }

    .v2-prototype .my-warn {
        font-size: 14px;
        line-height: 1.75
    }

    .v2-prototype .my-box > .row {
        flex-wrap: wrap;
        gap: 6px !important
    }

    .v2-prototype .my-box > .row .sp {
        display: none
    }

    .v2-prototype .my-box > .row.xs {
        display: block;
        font-size: 14px;
        line-height: 1.6
    }

    .v2-prototype .my-box > .row.xs .ic {
        width: 14px;
        height: 14px;
        vertical-align: -2px;
        margin-right: 4px
    }

    .v2-prototype .my-vrow .inp {
        height: 48px;
        font-size: 15px;
        min-width: 0
    }

    .v2-prototype .my-vrow .btn {
        height: 48px;
        min-width: 96px;
        padding: 0 14px
    }

    .v2-prototype .my-ok {
        flex-wrap: wrap;
        font-size: 13.5px
    }

    .v2-prototype .my-donep {
        padding: 40px 18px 36px;
        border-radius: 16px
    }

    .v2-prototype .my-donep .ci {
        width: 60px;
        height: 60px;
        margin-bottom: 14px
    }

    .v2-prototype .my-donep .ci .ic {
        width: 30px;
        height: 30px
    }

    .v2-prototype .my-donep h2 {
        font-size: 22px
    }

    .v2-prototype .my-donep h4 {
        font-size: 14.5px
    }

    .v2-prototype .my-donep p {
        font-size: 14px;
        margin-top: 14px
    }

    .v2-prototype .my-donep .wbtn {
        min-width: 0;
        width: 100%
    }

    .v2-prototype .my-donebtns .btn {
        min-width: 0;
        flex: 1;
        height: 48px
    }

    .v2-prototype .my-dochead {
        flex-wrap: wrap;
        gap: 10px;
        margin-bottom: 12px
    }

    .v2-prototype .my-dochead h2 {
        font-size: 20px
    }

    .v2-prototype .my-dochead select {
        flex: 1 1 100%;
        min-width: 0;
        width: 100%;
        height: 44px
    }

    .v2-prototype .my-tocsel {
        padding: 6px 6px 6px 12px;
        top: 115px
    }

    .v2-prototype .my-legal {
        padding: 18px 16px;
        font-size: 14px;
        line-height: 1.8;
        border-radius: 14px
    }

    .v2-prototype .my-legal h3 {
        font-size: 16px;
        margin-top: 24px
    }

    .v2-prototype .my-legal h4 {
        font-size: 14.5px
    }

    .v2-prototype .my-legal table {
        font-size: 14px;
        word-break: keep-all
    }

    .v2-prototype .my-legal th, .v2-prototype .my-legal td {
        padding: 7px 6px
    }

    .v2-prototype .my-nextbar {
        position: sticky;
        bottom: 62px;
        z-index: 20;
        background: rgba(255, 255, 255, .97);
        backdrop-filter: blur(8px);
        margin: 16px -16px 0;
        padding: 10px 16px;
        border-top: 1px solid var(--line2)
    }

    .v2-prototype .my-nextbar .btn {
        min-width: 0;
        height: 48px;
        font-size: 15px
    }

    .v2-prototype .my-nextbar .btn:not(.f2) {
        flex: 0 0 32%
    }

    .v2-prototype .my-box .my-nextbar {
        margin: 16px -16px -18px;
        border-radius: 0 0 14px 14px
    }

    .v2-prototype .my-box .ttl {
        font-size: 14.5px
    }

    .v2-prototype .my-iq {
        grid-template-columns:1fr;
        gap: 12px;
        margin-top: 12px
    }

    .v2-prototype .my-iq .card {
        padding: 16px
    }

    .v2-prototype .my-iq .chips {
        gap: 6px
    }

    .v2-prototype .my-iq .chips .chip {
        flex: 1 1 calc(50% - 6px);
        justify-content: center;
        height: 40px
    }

    .v2-prototype .my-iq .row .btn.lg {
        height: 48px
    }

    .v2-prototype .my-iqi {
        padding: 12px 14px
    }

    .v2-prototype .my-iqi b {
        font-size: 14.5px
    }

    .v2-prototype .my-filebox {
        min-height: 48px
    }

    .v2-prototype .my-guide {
        padding: 16px;
        gap: 10px;
        border-radius: 14px
    }

    .v2-prototype .my-guide > .ic {
        width: 22px;
        height: 22px
    }

    .v2-prototype .my-guide ul {
        font-size: 13.5px
    }

    .v2-prototype .my-ccards {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .my-cc {
        padding: 18px 16px;
        border-radius: 16px
    }

    .v2-prototype .my-cc h3 {
        font-size: 16.5px
    }

    .v2-prototype .my-cc .btn {
        align-self: stretch;
        justify-content: center;
        height: 46px
    }

    .v2-prototype .my-cc.mkt {
        flex-direction: column;
        align-items: stretch;
        gap: 6px
    }

    .v2-prototype .my-cc.mkt .ci {
        margin-bottom: 8px
    }

    .v2-prototype .my-cc.mkt h3 {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        align-items: center
    }

    .v2-prototype .my-cstat {
        gap: 6px 10px
    }

    .v2-prototype .my-cstat .nm {
        font-size: 15px;
        flex-wrap: wrap
    }

    .v2-prototype .my-cstat + .row {
        flex-wrap: wrap
    }

    .v2-prototype .my-cguide .chip {
        height: 34px
    }

    .v2-prototype .my-capp {
        gap: 12px
    }

    .v2-prototype .my-capp .card {
        padding: 16px !important;
        margin-bottom: 12px
    }

    .v2-prototype .my-capp [data-steps] {
        padding: 16px 10px 12px !important
    }

    .v2-prototype .my-capp .seg.lg {
        display: flex;
        width: 100%
    }

    .v2-prototype .my-capp .seg.lg > * {
        flex: 1;
        justify-content: center;
        padding: 0 6px;
        font-size: 14px;
        height: 44px
    }

    .v2-prototype .my-capp .my-flds {
        margin-top: 16px !important
    }

    .v2-prototype .my-flds .inp {
        height: 48px
    }

    .v2-prototype .my-capp .side {
        padding: 16px
    }

    .v2-prototype .my-capp .side ol {
        flex-direction: column;
        gap: 10px
    }

    .v2-prototype .my-capp .side .btn.blk {
        display: flex;
        width: 100%;
        margin-right: 0;
        height: 44px
    }

    .v2-prototype .my-capp h3 {
        font-size: 15.5px;
        display: flex;
        align-items: center;
        gap: 6px
    }

    .v2-prototype .my-cs-ico {
        width: 64px;
        height: 64px;
        margin: 14px auto 10px
    }

    .v2-prototype .my-cs h2 {
        font-size: 19px
    }

    .v2-prototype .my-cs p.m {
        font-size: 13.5px
    }

    .v2-prototype .my-cs .acts .btn {
        height: 48px;
        font-size: 14.5px
    }

    .v2-prototype [data-csb] > .seg.w > * {
        padding: 0 4px;
        font-size: 13px
    }

    .v2-prototype .my-ptop {
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr)
    }

    .v2-prototype .my-ptop > * {
        min-width: 0
    }

    .v2-prototype .rc-filt {
        padding: 4px 14px;
        margin: 12px 0
    }

    .v2-prototype .rc-filt .filt {
        grid-template-columns:minmax(0, 1fr);
        gap: 6px;
        margin: 12px 0
    }

    .v2-prototype .rc-filt .filt > * {
        min-width: 0
    }

    .v2-prototype .rc-filt .filt > span {
        line-height: 1.4;
        font-size: 14px;
        font-weight: 700;
        margin-top: 6px
    }

    .v2-prototype .rc-filt .filt > span:first-child {
        margin-top: 0
    }

    .v2-prototype .rc-filt [data-f="reg"] {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        margin: 0 -14px;
        padding: 0 14px 2px
    }

    .v2-prototype .rc-filt [data-f="reg"]::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .rc-filt [data-f="reg"] .chip {
        flex: none
    }

    .v2-prototype .rc-filt .chip {
        height: 34px
    }

    .v2-prototype .search.rc-q {
        max-width: none;
        height: 44px
    }

    .v2-prototype .rc-tabs {
        gap: 18px
    }

    .v2-prototype .row.rc-res {
        flex-wrap: wrap;
        gap: 6px 10px
    }

    .v2-prototype .rc-top {
        flex-wrap: wrap;
        gap: 4px 8px;
        margin-bottom: 10px
    }

    .v2-prototype .card.rc-scard {
        display: flex;
        align-items: stretch;
        padding: 16px;
        box-shadow: none
    }

    .v2-prototype .rc-scard > .btn, .v2-prototype .rc-scard > p.xs {
        display: none
    }

    .v2-prototype .rc-stitle {
        font-size: 18px
    }

    .v2-prototype .rc-snav {
        top: 110px;
        margin: 0 -16px 4px;
        padding: 8px 16px 10px
    }

    .v2-prototype .rc-snav a {
        height: 32px;
        font-size: 13px
    }

    .v2-prototype .rc-sec {
        scroll-margin-top: 170px
    }

    .v2-prototype .rc-sec table.kv th {
        width: 88px
    }

    .v2-prototype .rc-ga {
        flex-direction: column;
        gap: 12px
    }

    .v2-prototype .rc-ga > div {
        width: 100%
    }

    .v2-prototype .rc-sup {
        grid-template-columns:repeat(3, 1fr)
    }

    .v2-prototype .rc-sup > div {
        padding: 12px 6px
    }

    .v2-prototype .rc-addr {
        flex-wrap: wrap
    }

    .v2-prototype .rc-addr .btn {
        margin-left: 30px
    }

    .v2-prototype .rc-oth a {
        flex-wrap: wrap;
        gap: 4px 8px
    }

    .v2-prototype .rc-oth b {
        flex-basis: calc(100% - 90px)
    }

    .v2-prototype .rc-oth .ic {
        display: none
    }

    .v2-prototype .rc-detail {
        padding-bottom: 76px
    }

    .v2-prototype .rc-mbar {
        display: flex;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 62px;
        z-index: 80;
        gap: 8px;
        align-items: center;
        padding: 10px 16px;
        background: rgba(255, 255, 255, .97);
        backdrop-filter: blur(10px);
        border-top: 1px solid var(--line);
        box-shadow: 0 -6px 18px rgba(16, 24, 40, .06)
    }

    .v2-prototype .rc-mbar .rc-mi {
        flex: none;
        width: 56px;
        height: 50px;
        padding: 0;
        flex-direction: column;
        gap: 2px;
        font-size: 14px;
        border-radius: 12px
    }

    .v2-prototype .rc-mbar .rc-mi .ic {
        width: 19px;
        height: 19px;
        margin: 0
    }

    .v2-prototype .rc-mbar .rc-mapply {
        flex: 1;
        height: 50px;
        font-size: 16px;
        border-radius: 12px
    }

    .v2-prototype .rc-rs {
        padding: 12px;
        gap: 10px;
        flex-wrap: wrap
    }

    .v2-prototype .rc-rs .prog {
        width: 100% !important
    }

    .v2-prototype .rc-d2 {
        font-size: 30px
    }

    .v2-prototype .rc-dco {
        margin-top: 16px
    }

    .v2-prototype .rc-dr span {
        width: 84px
    }

    .v2-prototype .rc-gs {
        flex-wrap: wrap;
        padding: 14px
    }

    .v2-prototype .rc-gs > div {
        flex: 1 1 calc(100% - 50px) !important
    }

    .v2-prototype .rc-gs .btn {
        width: 100%;
        height: 42px;
        margin-left: 44px;
        width: calc(100% - 44px)
    }

    .v2-prototype .card.rc-subs {
        padding: 16px
    }

    .v2-prototype .rc-subs-h {
        gap: 6px
    }

    .v2-prototype .rc-subs-h .sp {
        display: none
    }

    .v2-prototype .rc-subs-g {
        display: flex;
        overflow-x: auto;
        gap: 8px;
        margin: 0 -16px;
        padding: 0 16px 4px;
        scroll-snap-type: x mandatory;
        scroll-padding: 0 16px;
        scrollbar-width: none
    }

    .v2-prototype .rc-subs-g::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .rc-st {
        flex: none;
        width: 108px;
        scroll-snap-align: start
    }

    .v2-prototype .rc-st b {
        font-size: 22px
    }

    .v2-prototype .rc-stats {
        gap: 8px
    }

    .v2-prototype .rc-stat {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
        padding: 12px;
        border-radius: 14px
    }

    .v2-prototype .rc-stat > i {
        width: 32px;
        height: 32px;
        border-radius: 10px
    }

    .v2-prototype .rc-stat > i .ic {
        width: 17px;
        height: 17px
    }

    .v2-prototype .rc-stat small {
        font-size: 14px
    }

    .v2-prototype .rc-stat b {
        font-size: 20px
    }

    .v2-prototype .card.rc-box {
        padding: 16px
    }

    .v2-prototype .rc-box > .row:first-child {
        flex-wrap: wrap
    }

    .v2-prototype .rc-box > .row:first-child > .sp {
        display: none
    }

    .v2-prototype .rc-box .seg.rc-mtab {
        flex: 1 1 auto;
        min-width: 150px
    }

    .v2-prototype .rc-box .seg.rc-mtab a {
        flex: 1;
        text-align: center
    }

    .v2-prototype .rc-box > .row:first-child > .btn {
        flex: none
    }

    .v2-prototype .rc-apj {
        width: 100%
    }

    .v2-prototype .row.rc-tool {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .rc-tool .sp {
        display: none
    }

    .v2-prototype .rc-tool .chips {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        width: 100%
    }

    .v2-prototype .rc-tool .chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .rc-tool .chip {
        flex: none
    }

    .v2-prototype .rc-psel {
        width: 100%
    }

    .v2-prototype .rc-pcs {
        grid-template-columns:1fr
    }

    .v2-prototype .rc-pc {
        padding: 14px 14px 8px
    }

    .v2-prototype .rc-pc-t {
        min-height: 0;
        font-size: 15px
    }

    .v2-prototype .rc-pc-f {
        flex-wrap: wrap
    }

    .v2-prototype .card.rc-mhead {
        padding: 16px
    }

    .v2-prototype .rc-mhead h2 {
        font-size: 19px
    }

    .v2-prototype .rc-mhead .row:last-child {
        flex-wrap: wrap
    }

    .v2-prototype .rc-bbar {
        bottom: 70px;
        gap: 6px;
        padding: 8px;
        border-radius: 14px;
        margin-top: 16px
    }

    .v2-prototype .rc-bbar .rc-vsep {
        display: none
    }

    .v2-prototype .rc-bbar .btn {
        min-width: 0
    }

    .v2-prototype .rc-bbar .rc-bi {
        flex: none;
        width: 58px;
        height: 50px;
        padding: 0;
        flex-direction: column;
        gap: 2px;
        font-size: 14px;
        border-radius: 12px
    }

    .v2-prototype .rc-bbar .rc-bi .ic {
        width: 18px;
        height: 18px;
        margin: 0
    }

    .v2-prototype .rc-bbar .rc-bi > span {
        display: none
    }

    .v2-prototype .rc-bbar .rc-bi:after {
        content: attr(data-s)
    }

    .v2-prototype .rc-bbar [data-offer] {
        flex: 1;
        height: 50px;
        font-size: 15px;
        border-radius: 12px
    }

    .v2-prototype .rc-bbar .rc-bi:last-child {
        flex: 1;
        flex-direction: row;
        gap: 6px;
        font-size: 15px
    }

    .v2-prototype .rc-bbar .rc-bi:last-child > span {
        display: inline
    }

    .v2-prototype .rc-bbar .rc-bi:last-child:after {
        content: none
    }

    .v2-prototype .rc-bbar.wide .btn {
        max-width: none;
        flex: 1;
        height: 48px;
        padding: 0 10px
    }

    .v2-prototype:has(.rc-mbar) #dev, .v2-prototype:has(.rc-bbar) #dev {
        bottom: 142px
    }

    .v2-prototype:has(.rc-ed) #dev {
        bottom: 190px
    }

    .v2-prototype .search.rc-tsearch {
        flex-wrap: wrap;
        height: auto;
        border-radius: 16px;
        padding: 6px 6px 6px 14px;
        gap: 4px 8px;
        margin: 16px 10px 14px
    }

    .v2-prototype .rc-tsearch input {
        height: 42px;
        flex: 1 1 calc(100% - 40px);
        margin-left:5px !important;
        margin-right:5px !important;
    }

    .v2-prototype .rc-tsearch .sep {
        flex-basis: 100%;
        width: auto;
        height: 1px;
        margin: 0 6px 0 -8px
    }

    .v2-prototype .rc-tsearch input[data-ta] {
        flex: 1 1 0
    }

    .v2-prototype .rc-tsearch .btn {
        height: 42px
    }

    .v2-prototype .rc-apx {
        flex-wrap: wrap
    }

    .v2-prototype .card.rc-prof {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        padding: 18px 16px
    }

    .v2-prototype .rc-prof .av.lg {
        width: 64px;
        height: 64px
    }

    .v2-prototype .rc-prof h2 {
        font-size: 19px
    }

    .v2-prototype .rc-prof h2 span {
        display: block;
        margin: 4px 0 0;
        font-size: 13px
    }

    .v2-prototype .card.rc-apbox {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 14px 16px
    }

    .v2-prototype .rc-apbox .sp {
        display: none
    }

    .v2-prototype .rc-apbox .seg {
        width: 100%;
        display: flex
    }

    .v2-prototype .rc-apbox .seg a {
        flex: 1;
        text-align: center
    }

    .v2-prototype .rc-basic {
        flex-direction: column-reverse;
        gap: 12px
    }

    .v2-prototype .rc-basic > div {
        width: 100%
    }

    .v2-prototype .rc-photo {
        width: 96px;
        height: 120px
    }

    .v2-prototype .rc-quota {
        flex-direction: column;
        align-items: flex-start;
        gap: 2px
    }

    .v2-prototype .rc-oinfo {
        grid-template-columns:96px minmax(0, 1fr)
    }

    .v2-prototype .rc-oinfo b {
        word-break: break-all
    }

    .v2-prototype .rc-accb .row {
        flex-wrap: wrap
    }

    .v2-prototype .rc-accb .grid2 {
        grid-template-columns:1fr 1fr;
        gap: 8px
    }

    .v2-prototype .rc-accb .grid2 .inp {
        padding: 0 10px;
        min-width: 0
    }

    .v2-prototype .rc-acc > summary {
        flex-wrap: wrap
    }

    .v2-prototype .rc-wbar {
        padding: 10px;
        gap: 8px
    }

    .v2-prototype .search.rc-wq {
        width: 100%;
        height: 44px
    }

    .v2-prototype .rc-wbar .sp {
        display: none
    }

    .v2-prototype .rc-wbar .chips {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        width: 100%
    }

    .v2-prototype .rc-wbar .chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .rc-wbar .chip {
        flex: none
    }

    .v2-prototype .rc-wr {
        grid-template-columns:1fr;
        gap: 10px;
        padding: 16px
    }

    .v2-prototype .rc-wr-l {
        border-right: 0;
        padding-right: 0
    }

    .v2-prototype .rc-wr > .row {
        justify-content: flex-end
    }

    .v2-prototype .rc-wr > .row .btn {
        flex: 1;
        height: 40px
    }

    .v2-prototype .rc-wr > .row .rc-dots {
        flex: none;
        width: 40px
    }

    .v2-prototype .rc-addrr {
        flex-wrap: wrap
    }

    .v2-prototype .rc-addrr .inp {
        flex: 1 1 100% !important
    }

    .v2-prototype .rc-duer .rc-vsep {
        display: none
    }

    .v2-prototype .rc-duer > .chips {
        width: 100%
    }

    .v2-prototype .rc-gm {
        flex-wrap: wrap
    }

    .v2-prototype .rc-gm .rc-vsep {
        display: none
    }

    .v2-prototype .rc-gm .inp {
        width: 80px !important
    }

    .v2-prototype .rc-feein td {
        padding: 6px 4px
    }

    .v2-prototype .rc-feein td .inp {
        width: 64px
    }

    .v2-prototype .rc-setrow {
        flex-direction: column;
        align-items: stretch;
        gap: 10px
    }

    .v2-prototype .rc-setrow .btn {
        width: 100%
    }

    .v2-prototype .rc-cks {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype .rc-ck {
        height: 46px;
        padding: 0 10px;
        font-size: 13px
    }

    .v2-prototype .rc-ck span {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }

    .v2-prototype .rc-pv {
        padding: 0;
        background: none
    }

    .v2-prototype .rc-pvh {
        padding: 14px;
        flex-direction: column;
        align-items: flex-start;
        gap: 10px
    }

    .v2-prototype .rc-pvh h2 {
        font-size: 18px
    }

    .v2-prototype .jb-top3 {
        display: flex;
        gap: 10px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-padding: 0 16px;
        margin: 0 -16px;
        padding: 2px 16px 6px;
        scrollbar-width: none
    }

    .v2-prototype .jb-top3::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .jb-top3 > * {
        flex: 0 0 80%;
        scroll-snap-align: start;
        min-width: 0
    }

    .v2-prototype .jb-qc {
        min-height: 150px;
        padding: 16px;
        border-radius: 16px
    }

    .v2-prototype .jb-qc h3 {
        font-size: 15px
    }

    .v2-prototype .jb-qc .jb-emp {
        font-size: 13px
    }

    .v2-prototype .jb-qc .jb-emp .ic {
        width: 28px;
        height: 28px
    }

    .v2-prototype .jb-kind {
        padding: 16px;
        border-radius: 16px;
        gap: 6px
    }

    .v2-prototype .jb-kind:hover {
        transform: none
    }

    .v2-prototype .jb-kind h4 {
        font-size: 16px;
        margin-top: 2px
    }

    .v2-prototype .jb-kind p {
        font-size: 14px;
        line-height: 1.55
    }

    .v2-prototype .jb-sech {
        margin: 26px 0 12px;
        gap: 8px;
        flex-wrap: wrap
    }

    .v2-prototype .jb-sech h2 {
        font-size: 17px
    }

    .v2-prototype .jb-srch {
        flex-direction: column;
        gap: 8px
    }

    .v2-prototype .jb-srch .search {
        max-width: none !important;
        width: 100%;
        flex: none;
        height: 44px
    }

    .v2-prototype .jb-aps {
        grid-template-columns:1fr;
        gap: 12px
    }

    .v2-prototype .jb-ap {
        padding: 16px 16px 12px;
        border-radius: 16px
    }

    .v2-prototype .jb-ap .tp {
        font-size: 14px;
        min-width: 0
    }

    .v2-prototype .jb-ap h4 {
        font-size: 15.5px;
        min-width: 0
    }

    .v2-prototype .jb-pill {
        height: 48px;
        min-width: 150px;
        font-size: 18px;
        margin-top: 6px
    }

    .v2-prototype .jb-pillsub {
        font-size: 14px
    }

    .v2-prototype .jb-ap .bt {
        flex-wrap: wrap;
        row-gap: 6px
    }

    .v2-prototype .jb-more {
        width: 44px;
        height: 40px
    }

    .v2-prototype .jb-head {
        gap: 12px;
        padding: 16px;
        border-radius: 16px
    }

    .v2-prototype .jb-head > div:nth-child(2) {
        flex: 1 1 calc(100% - 80px) !important
    }

    .v2-prototype .jb-head h3 {
        font-size: 16px;
        white-space: normal;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical
    }

    .v2-prototype .jb-head .row.xs {
        flex-wrap: wrap;
        row-gap: 4px
    }

    .v2-prototype .jb-hbtn {
        width: 100%;
        gap: 8px
    }

    .v2-prototype .jb-hbtn .btn {
        flex: 1;
        height: 44px
    }

    .v2-prototype .jb-stepcard {
        padding: 16px;
        border-radius: 16px
    }

    .v2-prototype .jb-stepcard > .row {
        flex-wrap: wrap
    }

    .v2-prototype .jb-stnow {
        display: none
    }

    .v2-prototype .jb-stepcard .steps {
        margin: 16px 0 0
    }

    .v2-prototype .jb-stepcard .steps .st span {
        display: none
    }

    .v2-prototype .jb-stepcard .steps .st i {
        width: 28px;
        height: 28px;
        font-size: 14px
    }

    .v2-prototype .jb-stepcard .steps .st:before {
        top: 14px
    }

    .v2-prototype .jb-stepcard .steps .st.on:has(+.st:not(.on)) i, .v2-prototype .jb-stepcard .steps .st:last-child.on i {
        box-shadow: 0 0 0 4px rgba(18, 122, 108, .18)
    }

    .v2-prototype .jb-stcur {
        display: flex;
        align-items: center;
        gap: 6px;
        margin-top: 14px;
        padding: 10px 14px;
        border-radius: 12px;
        background: var(--g-ll);
        color: var(--g2);
        font-size: 13.5px
    }

    .v2-prototype .jb-stcur b {
        width: 24px;
        height: 24px;
        border-radius: 50%;
        background: var(--g);
        color: #fff;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 14px
    }

    .v2-prototype .jb-stcur span {
        color: var(--sub);
        font-size: 14px
    }

    .v2-prototype .jb-stcur strong {
        margin-left: auto;
        font-weight: 800;
        font-size: 14.5px
    }

    .v2-prototype .jb-stcur .ic {
        width: 18px;
        height: 18px
    }

    .v2-prototype .jb-expl {
        align-items: flex-start;
        padding: 10px 12px
    }

    .v2-prototype .jb-expl .ic {
        flex: none;
        margin-top: 2px
    }

    .v2-prototype .jb-rows {
        border-radius: 16px
    }

    .v2-prototype .jb-rowh {
        padding: 13px 16px;
        font-size: 14px;
        flex-wrap: wrap
    }

    .v2-prototype .jb-row {
        grid-template-columns:34px minmax(0, 1fr) auto;
        grid-template-areas:"no tt bt" "no tg dt";
        gap: 6px 12px;
        padding: 14px 16px;
        align-items: center
    }

    .v2-prototype .jb-row > .no {
        grid-area: no;
        align-self: start;
        margin-top: 2px
    }

    .v2-prototype .jb-row > div:nth-child(2) {
        grid-area: tt;
        min-width: 0
    }

    .v2-prototype .jb-row > div:nth-child(3) {
        grid-area: tg
    }

    .v2-prototype .jb-row > .dt {
        grid-area: dt;
        text-align: right
    }

    .v2-prototype .jb-row > .btn {
        grid-area: bt;
        height: 36px;
        min-width: 72px
    }

    .v2-prototype .jb-row b {
        font-size: 14.5px
    }

    .v2-prototype .jb-row:not(.done) > .dt {
        visibility: hidden
    }

    .v2-prototype .jb-row small {
        display: block;
        font-size: 14px;
        line-height: 1.45;
        margin-top: 2px
    }

    .v2-prototype .jb-prog {
        font-size: 17px
    }

    .v2-prototype .jb-fbox {
        width: 100%
    }

    .v2-prototype .jb-docs > div {
        flex-wrap: wrap;
        row-gap: 6px
    }

    .v2-prototype .jb-docs > div > span:first-child {
        flex: 1 1 100%
    }

    .v2-prototype .jb-docs > div .sp {
        display: none
    }

    .v2-prototype .jb-docs > div .btn {
        margin-left: auto;
        height: 36px;
        padding: 0 14px
    }

    .v2-prototype .jb-tgl > div {
        padding: 12px
    }

    .v2-prototype .jb-mgr .row {
        flex-wrap: wrap
    }

    .v2-prototype .jb-gin, .v2-prototype .jb-gin tbody, .v2-prototype .jb-gin tr, .v2-prototype .jb-gin td {
        display: block;
        width: 100% !important
    }

    .v2-prototype .jb-gin thead {
        display: none
    }

    .v2-prototype .jb-gin td {
        padding: 0 0 10px;
        border: 0;
        text-align: left
    }

    .v2-prototype .jb-gin td:before {
        content: attr(data-lb);
        display: block;
        font-size: 14px;
        font-weight: 700;
        color: var(--sub);
        margin-bottom: 5px
    }

    .v2-prototype .jb-gin td .inp {
        height: 44px;
        font-size: 14px;
        width: 100%
    }

    .v2-prototype .jb-gin tr {
        display: grid;
        grid-template-columns:1fr 1fr;
        column-gap: 8px
    }

    .v2-prototype .jb-gin td:nth-child(-n+2) {
        grid-column: 1/-1
    }

    .v2-prototype .jb-glist, .v2-prototype .jb-glist tbody {
        display: block;
        width: 100%
    }

    .v2-prototype .jb-glist thead {
        display: none
    }

    .v2-prototype .jb-glist tr {
        display: grid;
        grid-template-columns:1fr auto;
        grid-template-areas:"k del" "a del" "s del";
        gap: 2px 10px;
        border: 1px solid var(--line);
        border-radius: 12px;
        padding: 12px 14px;
        margin-top: 8px;
        text-align: left
    }

    .v2-prototype .jb-glist td {
        border: 0;
        padding: 0;
        text-align: left;
        font-size: 13.5px
    }

    .v2-prototype .jb-glist td:nth-child(1) {
        grid-area: k
    }

    .v2-prototype .jb-glist td:nth-child(2) {
        grid-area: a;
        font-weight: 700;
        color: var(--g2)
    }

    .v2-prototype .jb-glist td:nth-child(3) {
        grid-area: s;
        color: var(--sub);
        font-size: 14px
    }

    .v2-prototype .jb-glist td:nth-child(4) {
        display: none
    }

    .v2-prototype .jb-glist td:nth-child(5) {
        grid-area: del;
        align-self: center
    }

    .v2-prototype .jb-glist td:nth-child(5) .btn {
        height: 36px
    }

    .v2-prototype .jb-glist tr.jb-gempty {
        display: block;
        border-style: dashed
    }

    .v2-prototype .jb-glist tr.jb-gempty td {
        text-align: center;
        padding: 4px !important
    }

    .v2-prototype .jb-addup {
        height: 46px
    }

    .v2-prototype .jb-ins {
        grid-template-columns:1fr 1fr
    }

    .v2-prototype .jb-ins label {
        padding: 10px;
        font-size: 14px;
        min-height: 44px
    }

    .v2-prototype .jb-pphoto .cir {
        width: 128px;
        height: 128px
    }

    .v2-prototype .jb-pphoto .cir .ic {
        width: 80px;
        height: 80px
    }

    .v2-prototype .jb-prio label {
        min-height: 44px
    }

    .v2-prototype .jb-red {
        padding: 12px 14px;
        font-size: 13px
    }

    .v2-prototype .jb-prev table.kv th {
        width: 96px
    }

    .v2-prototype .jb-filt {
        grid-template-columns:1fr;
        gap: 6px;
        margin: 12px 0 16px
    }

    .v2-prototype .jb-filt > span {
        padding-top: 6px;
        font-size: 14px
    }

    .v2-prototype .jb-filt > div {
        min-width: 0
    }

    .v2-prototype .jb-filt .search {
        min-width: 0 !important;
        margin-left: 0 !important;
        flex: 1 1 100% !important;
        height: 44px !important;
        margin-top: 4px
    }

    .v2-prototype .jb-filt .chips {
        flex-wrap: nowrap !important;
        overflow-x: auto;
        scrollbar-width: none;
        margin: 0 -16px;
        padding: 0 16px;
        max-width: calc(100% + 32px)
    }

    .v2-prototype .jb-filt .chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .jb-filt .chip {
        flex: none;
        height: 34px
    }

    .v2-prototype .jb-filt > .row.w {
        display: block
    }

    .v2-prototype .jb-res {
        grid-template-columns:1fr;
        gap: 12px;
        padding: 16px;
        border-radius: 16px
    }

    .v2-prototype .jb-res h4 {
        font-size: 16.5px;
        flex-wrap: wrap
    }

    .v2-prototype .jb-res .meta {
        flex-wrap: wrap;
        gap: 4px 12px;
        font-size: 14px
    }

    .v2-prototype .jb-res .acts .btn {
        flex: 1;
        height: 42px
    }

    .v2-prototype .jb-res .acts .jb-more {
        width: 42px;
        height: 42px;
        border: 1px solid var(--line);
        border-radius: 10px
    }

    .v2-prototype .jb-saved {
        flex-wrap: wrap;
        padding: 12px 14px
    }

    .v2-prototype .jb-basic {
        grid-template-columns:1fr;
        gap: 16px
    }

    .v2-prototype .jb-basic > div:first-child {
        display: flex;
        align-items: flex-end;
        gap: 14px
    }

    .v2-prototype .jb-photo {
        width: 96px;
        height: 120px;
        flex: none
    }

    .v2-prototype .jb-photo > .ic {
        width: 42px;
        height: 42px
    }

    .v2-prototype .jb-basic > div:first-child .btn {
        margin-top: 0 !important;
        width: auto;
        height: 44px
    }

    .v2-prototype .fsec.acc > summary {
        padding: 16px;
        font-size: 15.5px
    }

    .v2-prototype .fsec.acc > .in {
        padding: 0 16px 16px
    }

    .v2-prototype .jb-carbox {
        padding: 14px
    }

    .v2-prototype .jb-carbox > .row:first-child {
        flex-wrap: wrap
    }

    .v2-prototype .jb-carbox .row {
        flex-wrap: wrap;
        row-gap: 8px
    }

    .v2-prototype .jb-rad {
        flex-wrap: wrap;
        gap: 8px 16px
    }

    .v2-prototype .jb-sum {
        flex-wrap: wrap;
        gap: 4px 14px
    }

    .v2-prototype .jb-li {
        flex-wrap: wrap;
        row-gap: 4px
    }

    .v2-prototype .jb-uprow {
        flex-wrap: wrap;
        row-gap: 8px
    }

    .v2-prototype .jb-uprow > b {
        min-width: 0;
        flex: 1
    }

    .v2-prototype .jb-uprow [data-uplist] {
        order: 3;
        flex: 1 1 100%;
        justify-content: flex-start
    }

    .v2-prototype .jb-uprow [data-uplist]:empty {
        display: none
    }

    .v2-prototype .jb-ckl label {
        min-height: 40px
    }

    .v2-prototype .jb-pct {
        grid-template-columns:1fr 120px
    }

    .v2-prototype .jb-pct .inp.sm {
        height: 42px
    }

    .v2-prototype .jb-total {
        flex-wrap: wrap
    }

    .v2-prototype .ap-mx {
        padding: 16px 0 10px;
        border-radius: 16px
    }

    .v2-prototype .ap-mx-h {
        flex-wrap: wrap;
        padding: 0 16px;
        margin-bottom: 12px;
        row-gap: 4px
    }

    .v2-prototype .ap-mx-h h3 {
        font-size: 16px
    }

    .v2-prototype .ap-mx-h > .sp {
        display: none
    }

    .v2-prototype .ap-mx-h > .xs {
        width: 100%;
        font-size: 14px;
        line-height: 1.5
    }

    .v2-prototype .ap-mxs {
        position: relative;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding: 0 12px 6px 0;
        scrollbar-width: none
    }

    .v2-prototype .ap-mxs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ap-mxt {
        table-layout: fixed;
        width: auto;
        min-width: 572px
    }

    .v2-prototype .ap-mxt thead th {
        width: 62px;
        font-size: 14px;
        padding: 8px 3px
    }

    .v2-prototype .ap-mxt thead th:first-child, .v2-prototype .ap-mxt tbody th {
        position: sticky;
        left: 0;
        z-index: 2;
        width: 64px;
        background: #fff;
        padding-left: 16px;
        box-shadow: 6px 0 8px -6px rgba(16, 24, 40, .14)
    }

    .v2-prototype .ap-mxt tbody th {
        font-size: 13px
    }

    .v2-prototype .ap-n {
        min-width: 44px;
        height: 40px;
        font-size: 15px
    }

    .v2-prototype .ap-tool {
        flex-wrap: wrap;
        margin-top: 20px;
        gap: 8px
    }

    .v2-prototype .ap-fchips {
        flex: 1;
        min-width: 0;
        overflow-x: auto;
        scrollbar-width: none
    }

    .v2-prototype .ap-fchips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ap-fc {
        height: 40px;
        flex: none;
        font-size: 13.5px
    }

    .v2-prototype .ap-icbtn {
        width: 44px;
        height: 40px;
        flex: none
    }

    .v2-prototype .ap-tool .ckb {
        margin-left: 2px;
        width: 100%;
        font-size: 14px;
        min-height: 28px
    }

    .v2-prototype .ap-tool2 {
        gap: 8px;
        margin: 10px 0 12px
    }

    .v2-prototype .ap-tool2 select.inp.ap-sort {
        min-width: 0;
        flex: 1;
        height: 44px
    }

    .v2-prototype .ap-tool2 .btn.pri {
        height: 44px;
        flex: none
    }

    .v2-prototype .ap-jl {
        border-top-width: 1px
    }

    .v2-prototype .ap-jl .hd {
        display: none
    }

    .v2-prototype .ap-jr {
        grid-template-columns:44px minmax(0, 1fr) 44px;
        grid-template-areas:"lg tt ac" "lg ar ac" "lg sa ac";
        gap: 6px 12px;
        padding: 14px 2px;
        align-items: start;
        min-height: 0
    }

    .v2-prototype .ap-jr > .logo-ph {
        grid-area: lg;
        width: 44px !important;
        height: 44px !important;
        font-size: 14px;
        line-height: 1.15;
        text-align: center;
        white-space: normal;
        word-break: break-all;
        overflow: hidden
    }

    .v2-prototype .ap-jr > .tt {
        grid-area: tt
    }

    .v2-prototype .ap-jr .tt .row {
        flex-wrap: wrap;
        gap: 4px 6px !important
    }

    .v2-prototype .ap-jr .tt b {
        font-size: 14.5px;
        white-space: normal;
        line-height: 1.4
    }

    .v2-prototype .ap-jr .tt small {
        flex-wrap: wrap;
        font-size: 14px;
        row-gap: 2px
    }

    .v2-prototype .ap-jr > .area {
        grid-area: ar;
        font-size: 14px
    }

    .v2-prototype .ap-jr > .row {
        grid-area: sa
    }

    .v2-prototype .ap-jr > .act {
        grid-area: ac;
        align-self: center
    }

    .v2-prototype .ap-more {
        width: 44px;
        height: 44px
    }

    .v2-prototype .ap-jsub {
        padding: 10px 12px 12px;
        gap: 6px
    }

    .v2-prototype .ap-cf {
        margin-top: 16px;
        padding: 14px;
        border-radius: 14px;
        gap: 10px
    }

    .v2-prototype .ap-cf1 {
        gap: 8px
    }

    .v2-prototype .ap-cf1 > select.inp {
        width: 100% !important;
        height: 44px
    }

    .v2-prototype .ap-cf1 > [data-ymw] {
        width: 100%
    }

    .v2-prototype .ap-ym {
        flex: 1;
        height: 44px
    }

    .v2-prototype .ap-ym button {
        width: 40px
    }

    .v2-prototype .ap-ym b {
        flex: 1;
        min-width: 0
    }

    .v2-prototype .ap-cf1 .ckb {
        font-size: 14px;
        min-height: 32px
    }

    .v2-prototype .chips.ap-stchips {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        margin: 0 -14px;
        padding: 0 14px
    }

    .v2-prototype .ap-stchips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ap-stc {
        flex: none;
        height: 38px;
        font-size: 13px
    }

    .v2-prototype .ap-cf3 {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .ap-cf3 select.inp.ap-sort {
        flex: 1;
        min-width: 0;
        height: 44px
    }

    .v2-prototype .ap-cf3 .seg > * {
        height: 34px;
        font-size: 13px
    }

    .v2-prototype .ap-cf3 > .sp {
        display: none
    }

    .v2-prototype .ap-cf3 > [data-hidn]:empty {
        display: none
    }

    .v2-prototype .ap-chd {
        margin: 16px 0 10px;
        gap: 8px 10px
    }

    .v2-prototype .ap-chd > .sp {
        display: none
    }

    .v2-prototype .ap-chd > .btn.pri {
        order: -1;
        width: 100%;
        height: 46px
    }

    .v2-prototype .ap-chd > [data-fls] {
        width: 100%;
        flex-wrap: wrap
    }

    .v2-prototype .ap-chd > [data-fls]:empty {
        display: none
    }

    .v2-prototype .ap-selall {
        min-height: 40px;
        font-size: 14px
    }

    .v2-prototype .ap-fl {
        max-width: 100%;
        height: 30px
    }

    .v2-prototype .ap-cr {
        grid-template-columns:44px minmax(0, 1fr) 44px;
        grid-template-areas:"av m ck" "s s s" "d d d";
        gap: 10px 12px;
        padding: 14px
    }

    .v2-prototype .ap-cr > .av {
        grid-area: av
    }

    .v2-prototype .ap-cr > .m {
        grid-area: m
    }

    .v2-prototype .ap-cr .m > b {
        flex-wrap: wrap;
        gap: 4px 6px;
        font-size: 15px
    }

    .v2-prototype .ap-cr .bi {
        font-size: 14px
    }

    .v2-prototype .ap-cr > .s {
        grid-area: s;
        padding-top: 10px;
        border-top: 1px dashed var(--line)
    }

    .v2-prototype .ap-cr > .d {
        grid-area: d;
        flex-direction: row;
        align-items: center;
        justify-content: space-between
    }

    .v2-prototype .ap-rs {
        padding: 7px 10px;
        font-size: 14px
    }

    .v2-prototype .ap-cr > .ap-ck {
        grid-area: ck;
        width: 40px;
        height: 40px;
        align-self: center
    }

    .v2-prototype .ap-actbar {
        bottom: 70px;
        gap: 8px;
        padding: 10px;
        border-radius: 16px;
        margin-top: 16px
    }

    .v2-prototype .ap-actbar > span {
        min-width: 0;
        flex: none;
        font-size: 14px;
        padding-left: 4px
    }

    .v2-prototype .ap-actbar .btn.lg {
        height: 46px;
        font-size: 14px;
        padding: 0 10px
    }

    .v2-prototype .ap-actbar .btn.lg .ic {
        width: 16px;
        height: 16px
    }

    .v2-prototype .ap-seg {
        margin-bottom: 16px
    }

    .v2-prototype .ap-seg .seg {
        width: 100%;
        overflow: visible
    }

    .v2-prototype .ap-seg .seg > * {
        flex: 1;
        min-width: 0;
        height: 44px
    }

    .v2-prototype .chips.ap-cfch {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        margin: 0 -16px 4px;
        padding: 0 16px
    }

    .v2-prototype .ap-cfch::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ap-cfch .chip {
        flex: none;
        height: 38px
    }

    .v2-prototype .ap-gh {
        margin: 16px 0 8px
    }

    .v2-prototype .ap-cgrid, .v2-prototype .ap-igrid {
        grid-template-columns:minmax(0, 1fr);
        gap: 10px
    }

    .v2-prototype .ap-cc {
        padding: 14px 16px
    }

    .v2-prototype .ap-cc > b {
        font-size: 16px;
        margin-top: 4px
    }

    .v2-prototype .ap-sticky {
        bottom: 72px;
        margin-top: 20px
    }

    .v2-prototype .ap-sticky .btn.lg {
        height: 50px;
        font-size: 15.5px
    }

    .v2-prototype .ap-ih {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .ap-ih .btn.pri {
        height: 44px
    }

    .v2-prototype .ap-ic {
        padding: 16px
    }

    .v2-prototype .ap-ic > .row b {
        font-size: 15px
    }

    .v2-prototype .ap-ic p {
        min-height: 0
    }

    .v2-prototype .ap-bh {
        height: 52px;
        border-radius: 12px
    }

    .v2-prototype .ap-bh b {
        font-size: 15px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis
    }

    .v2-prototype .ap-back {
        width: 44px;
        height: 44px
    }

    .v2-prototype .ap-bh {
        grid-template-columns:44px minmax(0, 1fr) 44px;
        padding: 0 4px
    }

    .v2-prototype .ap-tprev {
        padding: 12px 14px;
        font-size: 14px;
        word-break: break-all
    }

    .v2-prototype .ap-fbody {
        padding: 16px;
        border-radius: 14px
    }

    .v2-prototype .ap-fbody .fld[style*="max-width"] {
        max-width: none !important
    }

    .v2-prototype .ap-fbody .inp {
        height: 46px
    }

    .v2-prototype [data-wform] .fld > .row {
        flex-wrap: wrap;
        gap: 6px !important
    }

    .v2-prototype [data-wform] .fld > .row > .btn {
        flex: 1 1 auto;
        height: 44px;
        font-size: 13.5px
    }

    .v2-prototype [data-wform] .fld > .row > span {
        width: 100%;
        margin: 2px 0 0 !important;
        font-size: 14px
    }

    .v2-prototype .ap-file {
        padding: 10px;
        gap: 10px
    }

    .v2-prototype .ap-fbody > .row:first-child {
        flex-wrap: wrap;
        row-gap: 8px
    }

    .v2-prototype .ap-fbody > .row:first-child > span {
        white-space: nowrap
    }

    .v2-prototype .ap-fbody > .row:first-child > .sp {
        display: none
    }

    .v2-prototype .ap-fbody > .row:first-child > .xs {
        margin-left: auto
    }

    .v2-prototype .ap-fbody > .row:first-child > .tag {
        order: -1;
        width: auto
    }

    .v2-prototype .ap-fbody > .row:first-child:after {
        content: "";
        order: -1;
        flex-basis: 100%;
        height: 0
    }

    .v2-prototype .ap-lb {
        margin: 16px 0 6px
    }

    .v2-prototype .ap-ans {
        padding: 16px
    }

    .v2-prototype .ap-fbtn .btn.lg {
        height: 50px
    }

    .v2-prototype .ap-prep {
        padding: 30px 18px 36px;
        min-height: 0;
        border-radius: 18px
    }

    .v2-prototype .ap-prep-svg {
        width: 100%;
        max-width: 280px;
        height: auto
    }

    .v2-prototype .ap-prep h2 {
        font-size: 26px
    }

    .v2-prototype .ap-prep p {
        font-size: 14px
    }

    .v2-prototype .ap-prep .row .btn {
        height: 46px
    }

    .v2-prototype .ap-bh.store {
        margin-bottom: 12px
    }

    .v2-prototype .ap-feat {
        border-radius: 20px;
        padding: 10px
    }

    .v2-prototype .ap-fin {
        grid-template-columns:minmax(0, 1fr);
        grid-template-areas:"tabs" "copy" "mock";
        gap: 16px;
        padding: 14px 12px 16px;
        border-radius: 14px
    }

    .v2-prototype .ap-tabs {
        margin: 0 -12px;
        padding: 2px 12px 4px
    }

    .v2-prototype .ap-tab {
        flex: none;
        height: 44px;
        font-size: 13.5px
    }

    .v2-prototype .ap-tab b {
        font-size: 13.5px
    }

    .v2-prototype .ap-copy h2 {
        font-size: 21px;
        margin-top: 12px
    }

    .v2-prototype .ap-copy p {
        font-size: 13.5px
    }

    .v2-prototype .ap-fl-l {
        padding-bottom: 0;
        gap: 10px
    }

    .v2-prototype .ap-mock {
        height: 236px
    }

    .v2-prototype .ap-info {
        position: static;
        white-space: normal;
        align-self: flex-start;
        font-size: 14px;
        line-height: 1.4;
        border-radius: 12px
    }

    .v2-prototype .ap-pt {
        flex-wrap: wrap;
        margin: 22px 0 10px;
        row-gap: 8px
    }

    .v2-prototype .ap-pt h3 {
        width: 100%;
        font-size: 18px
    }

    .v2-prototype .ap-pt > .sp {
        display: none
    }

    .v2-prototype .ap-pt > .sm {
        font-size: 14px
    }

    .v2-prototype .ap-mypt {
        font-size: 16px
    }

    .v2-prototype .ap-pt > .btn {
        height: 36px;
        padding: 0 10px;
        font-size: 14px
    }

    .v2-prototype .ap-pt > .btn .ic {
        width: 14px;
        height: 14px
    }

    .v2-prototype .ap-pt > .btn.soft {
        margin-left: auto
    }

    .v2-prototype .ap-plist {
        grid-template-columns:minmax(0, 1fr);
        gap: 10px
    }

    .v2-prototype .ap-pc {
        padding: 16px;
        border-radius: 16px
    }

    .v2-prototype .ap-pc > .row b {
        font-size: 16px
    }

    .v2-prototype .ap-step {
        height: 44px
    }

    .v2-prototype .ap-step button {
        width: 42px
    }

    .v2-prototype .ap-pc [data-buy] {
        height: 46px;
        padding: 0 22px
    }

    .v2-prototype .ap-mh {
        gap: 12px;
        padding: 12px
    }

    .v2-prototype .ap-mh .logo-ph {
        width: 64px !important;
        height: 40px !important;
        font-size: 14px;
        flex: none
    }

    .v2-prototype .ap-mh p {
        font-size: 13px
    }

    .v2-prototype .ap-ms input {
        min-width: 0
    }

    .v2-prototype .ap-ms .btn {
        height: 36px;
        flex: none
    }

    .v2-prototype .ap-mres {
        max-height: 42vh
    }

    .v2-prototype .ap-mc {
        gap: 10px
    }

    .v2-prototype .ap-agree {
        padding: 10px;
        font-size: 13px
    }

    .v2-prototype .ap-lsj {
        padding: 12px
    }

    .v2-prototype .ap-lsm a {
        min-height: 50px
    }

    .v2-prototype .ds-list .ds-tabs {
        gap: 0;
        margin-bottom: 0
    }

    .v2-prototype .ds-list .ds-tabs > a {
        padding: 10px 0;
        font-size: 15.5px;
        flex: none
    }

    .v2-prototype .ds-list .ds-tsep {
        margin: 0 14px;
        flex: none
    }

    .v2-prototype .ds-list .ds-filt {
        padding: 4px 0 4px 14px;
        margin: 12px 0 4px;
        border-radius: 14px
    }

    .v2-prototype .ds-list .ds-fr {
        grid-template-columns:46px minmax(0, 1fr);
        gap: 4px 8px;
        padding: 9px 0
    }

    .v2-prototype .ds-list .ds-fl {
        font-size: 14px
    }

    .v2-prototype .ds-list .ds-fr .chips {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        padding-right: 14px;
        -webkit-overflow-scrolling: touch
    }

    .v2-prototype .ds-list .ds-fr .chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ds-list .ds-fr .chip {
        flex: none;
        height: 34px
    }

    .v2-prototype .ds-list .ds-more {
        flex: none;
        height: 34px
    }

    .v2-prototype .ds-list .ds-filt .search.ds-cs {
        grid-column: 1/-1;
        width: auto;
        height: 42px;
        margin: 4px 14px 2px 0;
        font-size: 14px
    }

    .v2-prototype .ds-list .ds-fr:first-child {
        grid-template-columns:46px minmax(0, 1fr)
    }

    .v2-prototype .ds-list .ds-sortrow {
        flex-wrap: wrap;
        gap: 8px;
        margin: 12px 0 12px
    }

    .v2-prototype .ds-list .ds-sortrow .sort {
        width: 100%;
        overflow-x: auto;
        scrollbar-width: none;
        white-space: nowrap;
        padding: 4px 0
    }

    .v2-prototype .ds-list .ds-sortrow .sort::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ds-list .ds-sortrow .sort a {
        flex: none;
        font-size: 13.5px
    }

    .v2-prototype .ds-list .ds-sortrow .sp {
        display: none
    }

    .v2-prototype .ds-list .ds-sortrow [data-fres] {
        margin-right: auto
    }

    .v2-prototype .ds-list .ds-sortrow .btn {
        margin-left: 0;
        height: 34px
    }

    .v2-prototype .ds-grid.dbgrid {
        gap: 12px
    }

    .v2-prototype .ds-grid .dbc-top {
        padding-top: 146px
    }

    .v2-prototype .ds-grid .ds-art {
        height: 134px
    }

    .v2-prototype .ds-grid .ds-boxw {
        top: 14px;
        right: 26px
    }

    .v2-prototype .ds-grid .dbc-bot {
        display: grid;
        grid-template-columns:1fr auto;
        align-items: end;
        gap: 4px 10px;
        padding: 12px 16px 14px
    }

    .v2-prototype .ds-grid .dbc-bot > .row {
        grid-column: 1
    }

    .v2-prototype .ds-grid .dbc-bot > .tag {
        grid-column: 1;
        margin-top: 2px !important
    }

    .v2-prototype .ds-grid .dbc-bot .dbc-price {
        grid-column: 2;
        grid-row: 1/3;
        margin-top: 0;
        text-align: right
    }

    .v2-prototype .ds-view {
        gap: 12px;
        padding-bottom: 78px
    }

    .v2-prototype .ds-view .ds-head {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 18px 16px;
        border-radius: 16px;
        background: linear-gradient(160deg, #fff 60%, #F4F2FD 100%)
    }

    .v2-prototype .ds-view .ds-head .row.w {
        gap: 8px 12px !important
    }

    .v2-prototype .ds-title {
        font-size: 19px;
        line-height: 1.45;
        margin: 8px 0 10px
    }

    .v2-prototype .ds-view .ds-meta {
        flex-wrap: wrap;
        gap: 6px 14px;
        font-size: 14px;
        margin-top: 12px
    }

    .v2-prototype .ds-logo .logo-ph {
        width: 120px !important;
        height: 64px !important;
        font-size: 14px
    }

    .v2-prototype .ds-logo-def {
        width: 120px;
        height: 64px;
        flex-direction: row;
        gap: 6px
    }

    .v2-prototype .ds-logo-def .ic {
        width: 20px;
        height: 20px
    }

    .v2-prototype .ds-st {
        font-size: 19px
    }

    .v2-prototype .ds-cert {
        padding: 18px 16px;
        border-radius: 16px
    }

    .v2-prototype .ds-cert:after {
        width: 200px;
        height: 200px
    }

    .v2-prototype .ds-cert-h {
        gap: 12px
    }

    .v2-prototype .ds-cert-h h3 {
        font-size: 18px;
        line-height: 1.35
    }

    .v2-prototype .ds-cert-h small {
        font-size: 14px
    }

    .v2-prototype .ds-ribbon {
        width: 52px;
        height: 52px
    }

    .v2-prototype .ds-ribbon b {
        font-size: 14px
    }

    .v2-prototype .ds-cert-ic {
        display: none
    }

    .v2-prototype .ds-cert ul {
        grid-template-columns:1fr;
        gap: 10px;
        margin-top: 14px
    }

    .v2-prototype .ds-cert li {
        font-size: 14px;
        align-items: flex-start
    }

    .v2-prototype .ds-cert-n {
        padding: 12px 14px;
        font-size: 14px;
        line-height: 1.65
    }

    .v2-prototype .ds-sec {
        padding: 18px 16px;
        border-radius: 16px
    }

    .v2-prototype .ds-sec > h3 {
        font-size: 16px;
        flex-wrap: wrap;
        gap: 6px;
        margin-bottom: 10px
    }

    .v2-prototype .ds-kr {
        grid-template-columns:92px minmax(0, 1fr);
        gap: 10px;
        padding: 7px 0
    }

    .v2-prototype .ds-kl {
        font-size: 14px;
        padding: 0 6px;
        height: 26px;
        white-space: normal;
        text-align: center;
        line-height: 1.2
    }

    .v2-prototype .ds-kd {
        font-size: 13.5px
    }

    .v2-prototype .ds-price {
        font-size: 19px
    }

    .v2-prototype .ds-file {
        flex-wrap: wrap;
        word-break: break-all;
        font-size: 13px
    }

    .v2-prototype .ds-h4 {
        margin-top: 18px
    }

    .v2-prototype .ds-land-in {
        max-height: 420px
    }

    .v2-prototype .lp-hero {
        padding: 26px 18px 22px
    }

    .v2-prototype .lp-hero h2 {
        font-size: 30px
    }

    .v2-prototype .lp-hero p {
        font-size: 14px;
        margin: 12px 0 18px
    }

    .v2-prototype .lp-stats {
        gap: 8px
    }

    .v2-prototype .lp-stats div {
        padding: 12px 4px;
        border-radius: 12px
    }

    .v2-prototype .lp-stats b {
        font-size: 17px
    }

    .v2-prototype .lp-stats small {
        font-size: 14px;
        display: block;
        line-height: 1.35
    }

    .v2-prototype .lp-form {
        padding: 24px 18px
    }

    .v2-prototype .lp-form h4 {
        font-size: 18px
    }

    .v2-prototype .lp-form p {
        font-size: 13px
    }

    .v2-prototype .lp-in {
        height: 46px
    }

    .v2-prototype .lp-btn {
        height: 50px
    }

    .v2-prototype .lp-msg {
        padding: 28px 18px
    }

    .v2-prototype .lp-msg h4 {
        font-size: 20px
    }

    .v2-prototype .lp-msg blockquote {
        padding: 20px 18px;
        font-size: 14px;
        line-height: 1.8
    }

    .v2-prototype .lp-fine {
        padding: 18px 18px 24px;
        font-size: 11.5px
    }

    .v2-prototype .ds-land-btn {
        height: 44px;
        bottom: 20px
    }

    .v2-prototype .ds-two {
        grid-template-columns:1fr;
        gap: 12px
    }

    .v2-prototype .ds-ct {
        padding: 12px 14px
    }

    .v2-prototype .ds-ct-l {
        font-size: 14px;
        gap: 4px 6px
    }

    .v2-prototype .ds-sch > div {
        font-size: 14px;
        padding: 12px 14px;
        flex-wrap: wrap
    }

    .v2-prototype .ds-ul {
        font-size: 14px;
        line-height: 1.85
    }

    .v2-prototype .ds-view .ds-sec > .row {
        flex-wrap: wrap
    }

    .v2-prototype .ds-view .ds-sec .seg {
        flex: none
    }

    .v2-prototype .ds-view [data-ask] {
        height: 36px
    }

    .v2-prototype .ds-nt-h {
        padding: 13px 2px;
        gap: 8px;
        flex-wrap: wrap
    }

    .v2-prototype .ds-nt-h b {
        flex: 1 1 60%;
        font-size: 14px
    }

    .v2-prototype .ds-nt-h small {
        order: 3;
        flex-basis: 100%;
        padding-left: 2px;
        font-size: 14px;
        margin-top: -4px
    }

    .v2-prototype .ds-nt-h > .ic {
        order: 2
    }

    .v2-prototype .ds-qa {
        padding: 12px 2px;
        gap: 4px 10px
    }

    .v2-prototype .ds-qa-t {
        font-size: 14px
    }

    .v2-prototype .ds-qa-m {
        flex-wrap: wrap;
        gap: 4px 6px;
        font-size: 14px
    }

    .v2-prototype .ds-docs {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .ds-doc {
        padding: 14px
    }

    .v2-prototype .ds-doc > b {
        min-height: 0
    }

    .v2-prototype .ds-doc-b {
        margin-top: 10px
    }

    .v2-prototype .ds-thumb {
        width: 64px;
        height: 86px
    }

    .v2-prototype .ds-doc-r .btn {
        height: 36px;
        padding: 0 16px
    }

    .v2-prototype .ds-share {
        flex-direction: column;
        align-items: stretch;
        gap: 16px
    }

    .v2-prototype .ds-sns {
        justify-content: space-around
    }

    .v2-prototype .ds-url .inp {
        min-width: 0;
        font-size: 13px
    }

    .v2-prototype .ds-url .btn {
        flex: none
    }

    .v2-prototype .ds-bar, .v2-prototype .ds-view .ds-bar, .v2-prototype .ds-purchase .ds-bar {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 62px;
        z-index: 85;
        margin: 0;
        border: 0;
        border-top: 1px solid var(--line);
        border-radius: 0;
        padding: 10px 16px;
        gap: 8px;
        background: rgba(255, 255, 255, .97);
        box-shadow: 0 -6px 18px rgba(16, 24, 40, .08)
    }

    .v2-prototype .ds-bar .ds-bar-l {
        display: none
    }

    .v2-prototype .ds-bar .btn.lg {
        flex: 1;
        min-width: 0;
        height: 48px;
        padding: 0 8px;
        font-size: 14.5px
    }

    .v2-prototype .ds-bar .btn.ds-cta {
        min-width: 0;
        flex: 1.4
    }

    .v2-prototype .ds-bar .btn .ic {
        width: 16px;
        height: 16px
    }

    .v2-prototype .ds-bar .btn:not(.ds-cta) .ic {
        display: none
    }

    .v2-prototype .ds-bar:has(> .btn:nth-of-type(3)) .btn.lg {
        font-size: 14px;
        flex: 1
    }

    .v2-prototype .ds-buyers {
        padding-bottom: 70px
    }

    .v2-prototype .ds-adline {
        padding: 12px 14px;
        gap: 12px;
        margin-bottom: 12px
    }

    .v2-prototype .ds-adline b {
        font-size: 14px
    }

    .v2-prototype .ds-buyers .tabs {
        gap: 0
    }

    .v2-prototype .ds-buyers .tabs a {
        flex: 1;
        text-align: center;
        font-size: 15px
    }

    .v2-prototype .ds-buyers .tabs a.ds-dis {
        justify-content: center
    }

    .v2-prototype .ds-buyers > .row {
        flex-wrap: wrap;
        gap: 8px;
        margin: 12px 0 12px !important
    }

    .v2-prototype .ds-buyers > .row .chips {
        flex-wrap: nowrap;
        order: 1
    }

    .v2-prototype .ds-buyers > .row .chip {
        flex: none
    }

    .v2-prototype .ds-buyers > .row .sp {
        display: none
    }

    .v2-prototype .ds-buyers > .row [data-xls] {
        order: 0;
        margin-left: auto;
        height: 34px
    }

    .v2-prototype .ds-buyers > .row > .xs {
        order: 2;
        flex-basis: 100%;
        margin-left: 0 !important
    }

    .v2-prototype .ds-blist {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .ds-bc {
        padding: 14px 14px 24px;
        border-radius: 14px
    }

    .v2-prototype .ds-bc:hover {
        transform: none
    }

    .v2-prototype .ds-bc-s {
        left: 14px
    }

    .v2-prototype .ds-bh {
        grid-template-columns:auto minmax(0, 1fr) auto;
        gap: 10px
    }

    .v2-prototype .ds-bh .av.lg {
        width: 48px;
        height: 48px
    }

    .v2-prototype .ds-bh-n {
        font-size: 14px
    }

    .v2-prototype .ds-bh-q {
        font-size: 16px
    }

    .v2-prototype .ds-bh-q span {
        font-size: 14px
    }

    .v2-prototype .ds-bh-m small {
        font-size: 11.5px
    }

    .v2-prototype .ds-bh-r {
        font-size: 14px;
        line-height: 1.6
    }

    .v2-prototype .ds-bh-r b {
        font-size: 15px
    }

    .v2-prototype .ds-tbar {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 62px;
        margin: 0;
        border-radius: 0;
        padding: 9px 16px;
        gap: 10px;
        z-index: 85;
        box-shadow: 0 -6px 18px rgba(16, 24, 40, .18)
    }

    .v2-prototype .ds-tbar small {
        font-size: 14px
    }

    .v2-prototype .ds-tbar b {
        font-size: 15px
    }

    .v2-prototype .ds-tbar > i {
        height: 22px
    }

    .v2-prototype .ds-tbar-p b {
        font-size: 19px
    }

    .v2-prototype .ds-tbar-p b span {
        font-size: 13px
    }

    .v2-prototype .ds-purchase {
        padding-bottom: 78px
    }

    .v2-prototype .ds-bhcard, .v2-prototype .ds-bhcard.big {
        padding: 14px 14px
    }

    .v2-prototype .ds-bhcard.big .ds-bh-q {
        font-size: 17px
    }

    .v2-prototype .ds-purchase .ds-pgrid {
        grid-template-columns:1fr;
        gap: 10px;
        margin-top: 10px
    }

    .v2-prototype .ds-purchase .ds-pblk {
        padding: 14px 14px
    }

    .v2-prototype .ds-pblk > .row {
        align-items: flex-start;
        gap: 8px
    }

    .v2-prototype .ds-pblk > .row > div:first-child {
        min-width: 0
    }

    .v2-prototype .ds-pn {
        font-size: 14px
    }

    .v2-prototype .ds-pp {
        font-size: 18px
    }

    .v2-prototype .ds-pblk .btn.sm {
        height: 32px;
        padding: 0 9px;
        font-size: 14px
    }

    .v2-prototype .ds-pblk .btn.sm .ic {
        width: 14px;
        height: 14px
    }

    .v2-prototype .ds-stats b {
        font-size: 17px
    }

    .v2-prototype .ds-stats small {
        font-size: 14px;
    }

    .v2-prototype .ds-stats em {
        font-size: 14px
    }

    .v2-prototype .ds-pcbox {
        padding: 14px;
        gap: 10px
    }

    .v2-prototype .ds-pcbox > .ic {
        width: 24px;
        height: 24px;
        flex: none
    }

    .v2-prototype .ds-pcbox b {
        font-size: 14.5px
    }

    .v2-prototype .ds-tl-i {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .ds-tl-i span {
        font-size: 14px
    }

    .v2-prototype .ds-tl-i .btn {
        height: 32px
    }

    .v2-prototype .ds-oi {
        grid-template-columns:auto minmax(0, 1fr) auto;
        grid-template-areas:"lg m ar" "lg t ar" "lg q ar";
        gap: 4px 12px;
        padding: 12px 14px
    }

    .v2-prototype .ds-oi > .logo-ph {
        grid-area: lg;
        width: 44px !important;
        height: 44px !important;
        font-size: 14px
    }

    .v2-prototype .ds-oi > .ds-oi-m {
        grid-area: m
    }

    .v2-prototype .ds-oi > .tag, .v2-prototype .ds-oi > .sm {
        grid-area: t;
        justify-self: start
    }

    .v2-prototype .ds-oi > .ds-oi-q {
        grid-area: q;
        flex-direction: row;
        align-items: baseline;
        gap: 6px
    }

    .v2-prototype .ds-oi > .ic {
        grid-area: ar
    }

    .v2-prototype .ds-oi-m b {
        font-size: 14px
    }

    .v2-prototype .pbox.ds-pop .ph h3 {
        font-size: 16.5px
    }

    .v2-prototype .pbox.ds-pop .pf {
        gap: 8px
    }

    .v2-prototype .pbox.ds-pop .pf .btn {
        min-width: 0;
        padding: 0 10px
    }

    .v2-prototype .ds-way {
        padding: 14px 16px
    }

    .v2-prototype .ds-way.line {
        height: 48px
    }

    .v2-prototype .ds-prods {
        gap: 8px
    }

    .v2-prototype .ds-prod {
        grid-template-columns:auto minmax(0, 1fr);
        grid-template-areas:"ck l" "ck r";
        gap: 8px 12px;
        padding: 12px 14px
    }

    .v2-prototype .ds-prod > .ds-pck {
        grid-area: ck
    }

    .v2-prototype .ds-prod > .ds-prod-l {
        grid-area: l;
        min-width: 0
    }

    .v2-prototype .ds-prod > .ds-prod-r {
        grid-area: r;
        flex-direction: row;
        align-items: center;
        justify-content: space-between
    }

    .v2-prototype .ds-prod-l b {
        font-size: 14.5px
    }

    .v2-prototype .ds-step button {
        width: 40px;
        height: 40px
    }

    .v2-prototype .ds-step input {
        width: 52px;
        height: 40px
    }

    .v2-prototype .ds-tot b {
        font-size: 21px
    }

    .v2-prototype .ds-gfind .ds-find {
        height: 46px
    }

    .v2-prototype .ds-gfind .ds-rst {
        height: 46px;
        width: 46px
    }

    .v2-prototype .ds-pt {
        font-size: 14.5px
    }

    .v2-prototype .ds-ptot b {
        font-size: 23px
    }

    .v2-prototype .ds-sumbox {
        padding: 2px 14px
    }

    .v2-prototype .ds-sumr {
        gap: 10px
    }

    .v2-prototype .ds-sumr > div {
        min-width: 0
    }

    .v2-prototype .ds-sumr em {
        font-size: 20px;
        flex: none
    }

    .v2-prototype .ds-pbox {
        padding: 14px
    }

    .v2-prototype .ds-pbox > .row:nth-child(2) {
        flex-wrap: nowrap
    }

    .v2-prototype .ds-use {
        min-width: 0;
        flex: 1 1 0
    }

    .v2-prototype .ds-use input {
        width: 0
    }

    .v2-prototype .ds-pbox [data-all] {
        flex: none;
        height: 44px;
        padding: 0 12px
    }

    .v2-prototype .ds-found {
        padding: 10px 12px;
        gap: 10px
    }

    .v2-prototype .pbox.ds-pop.ds-done {
        width: 100%
    }

    .v2-prototype .ds-done-h {
        gap: 14px;
        margin: 8px 0 16px
    }

    .v2-prototype .ds-done-h b {
        font-size: 20px
    }

    .v2-prototype .ds-alarm {
        width: 50px !important;
        height: 50px !important
    }

    .v2-prototype .ds-qa-tt {
        font-size: 16.5px
    }

    .v2-prototype .ds-qa-c {
        font-size: 14px
    }

    .v2-prototype .ds-ans.none {
        min-height: 120px;
        font-size: 17px
    }

    .v2-prototype .ds-dsum {
        padding: 12px 14px
    }

    .v2-prototype .ds-view .ds-head {
        position: relative
    }

    .v2-prototype .ds-view .ds-meta .bm {
        position: absolute;
        right: 12px;
        top: 12px;
        margin: 0
    }

    .v2-prototype .ds-view .ds-head-l > .row.w:first-child {
        padding-right: 40px
    }

    .v2-prototype:has(.ds-bar) #dev, .v2-prototype:has(.ds-tbar) #dev {
        bottom: 142px
    }

    .db-transfer-history-modal {
        width: calc(100vw - 20px);
        max-height: calc(100vh - 20px)
    }

    .db-transfer-history-dialog {
        max-height: calc(100vh - 20px)
    }

    .db-transfer-history-head,
    .db-transfer-history-body,
    .db-transfer-history-foot {
        padding-right: 16px;
        padding-left: 16px
    }

    .db-transfer-history-head h2 {
        font-size: 19px
    }

    .db-transfer-history-summary {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px
    }

    .v2-prototype[data-page="dbm"], .v2-prototype[data-page="dbr"] {
        padding-bottom: 0
    }

    .v2-prototype[data-page="dbm"] #toast, .v2-prototype[data-page="dbr"] #toast {
        bottom: 130px
    }

    .v2-prototype .dw-in {
        padding: 0 14px
    }

    .v2-prototype .dw-top {
        height: 56px;
        gap: 10px
    }

    .v2-prototype .dw-appic {
        width: 32px;
        height: 32px;
        border-radius: 10px
    }

    .v2-prototype .dw-tt b {
        font-size: 16px
    }

    .v2-prototype .dw-tt small {
        display: none
    }

    .v2-prototype .dw > header.dw-hd .dw-home img {
        display: none
    }

    .v2-prototype .dw-home {
        height: 34px;
        padding: 0 10px;
        font-size: 14px;
        gap: 4px
    }

    .v2-prototype .dw-home span {
        padding-left: 0;
        border-left: 0
    }

    .v2-prototype .dw-tabs {
        gap: 4px;
        height: 46px
    }

    .v2-prototype .dw-tabs a {
        flex: 1;
        justify-content: center;
        padding: 0 8px;
        height: 40px;
        font-size: 14px
    }

    .v2-prototype .dw-main {
        padding: 14px 0 6px
    }

    .v2-prototype .dw-steps {
        flex-direction: column;
        align-items: stretch;
        gap: 6px;
        padding: 8px;
        border-radius: 16px;
        margin-bottom: 12px
    }

    .v2-prototype .dw-arr {
        display: none
    }

    .v2-prototype .dw-st {
        flex: none;
        height: 48px;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        gap: 10px;
        padding: 0 14px
    }

    .v2-prototype .dw-st small {
        width: 50px;
        flex: none
    }

    .v2-prototype .dw-st b {
        font-size: 14px
    }

    .v2-prototype .dw-card {
        padding: 16px 14px;
        border-radius: 14px;
        margin-bottom: 12px
    }

    .v2-prototype .dw-ch {
        gap: 6px 8px
    }

    .v2-prototype .dw-ch h3 {
        font-size: 15.5px
    }

    .v2-prototype .dw-ch > .xs.muted {
        flex-basis: 100%;
        font-size: 14px;
        line-height: 1.5
    }

    .v2-prototype .dw-ch > .sp {
        display: none
    }

    .v2-prototype .dw-ch .btn.sm {
        height: 40px
    }

    .v2-prototype .dw-sub {
        display: flex
    }

    .v2-prototype .dw-sub a {
        flex: 1;
        justify-content: center;
        padding: 0 8px;
        height: 40px
    }

    .v2-prototype .dw-drop {
        padding: 24px 14px
    }

    .v2-prototype .dw-ft {
        border: 0;
        border-radius: 0;
        overflow: visible;
        display: flex;
        flex-direction: column;
        gap: 10px
    }

    .v2-prototype .dw-fr.h {
        display: none
    }

    .v2-prototype .dw-fr, .v2-prototype .dw-fr.rv {
        grid-template-columns:auto minmax(0, 1fr) auto auto;
        grid-template-areas:"no db res del" "fx fx fx fx" "fn fn fn fn";
        border: 1px solid var(--line);
        border-radius: 14px;
        padding: 4px 0
    }

    .v2-prototype .dw-fr > div {
        border-left: 0;
        padding: 8px 10px;
        justify-content: flex-start;
        text-align: left
    }

    .v2-prototype .dw-fr > div:nth-child(1) {
        grid-area: no;
        padding-right: 0
    }

    .v2-prototype .dw-fr > div:nth-child(2) {
        grid-area: db;
        font-size: 14px
    }

    .v2-prototype .dw-fr > div:nth-child(3) {
        grid-area: fx;
        padding: 4px 12px 8px;
        border-top: 1px dashed var(--line2)
    }

    .v2-prototype .dw-fr > div:nth-child(4) {
        grid-area: res;
        padding-left: 0;
        padding-right: 4px
    }

    .v2-prototype .dw-fr > div:nth-child(5) {
        grid-area: fn;
        padding-top: 0
    }

    .v2-prototype .dw-fr > div:nth-child(5):empty, .v2-prototype .dw-fr > div:nth-child(5):has(>.dw-wait) {
        display: none
    }

    .v2-prototype .dw-fr > div:nth-child(6) {
        grid-area: del
    }

    .v2-prototype .dw-fr > .fx {
        padding: 10px 12px
    }

    .v2-prototype .dw-fn {
        margin-bottom: 8px
    }

    .v2-prototype .dw-flds {
        grid-template-columns:1fr;
        gap: 6px
    }

    .v2-prototype .dw-f.s2, .v2-prototype .dw-f.full {
        grid-column: auto
    }

    .v2-prototype .dw-f > span {
        width: 76px;
        font-size: 14px
    }

    .v2-prototype .dw-f .inp {
        height: 40px;
        font-size: 14px
    }

    .v2-prototype .dw-f em {
        font-size: 14px
    }

    .v2-prototype .dw-meta {
        font-size: 14px
    }

    .v2-prototype .btn.xs {
        min-height: 34px
    }

    .v2-prototype .dw-pos {
        height: 34px;
        padding: 0 12px;
        font-size: 13px
    }

    .v2-prototype .dw-checks {
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap: 8px
    }

    .v2-prototype .dw-ck {
        flex-wrap: wrap;
        gap: 6px 8px;
        padding: 12px
    }

    .v2-prototype .dw-ck .ci {
        order: 0
    }

    .v2-prototype .dw-ck i {
        order: 1;
        margin-left: auto
    }

    .v2-prototype .dw-ck b {
        order: 2;
        flex-basis: 100%;
        font-size: 14px
    }

    .v2-prototype .dw-ck small {
        order: 3;
        margin-left: 0;
        font-size: 14px
    }

    .v2-prototype .dw-start {
        padding: 22px 0 16px
    }

    .v2-prototype .dw-start .btn {
        height: 54px;
        padding: 0 22px;
        font-size: 16px;
        max-width: 100%
    }

    .v2-prototype .dw-scan .lb {
        flex-wrap: wrap
    }

    .v2-prototype .dw-scan .lb span {
        white-space: normal;
        font-size: 13px
    }

    .v2-prototype .dw-scanf span {
        max-width: 100%
    }

    .v2-prototype .dw-s3 {
        grid-template-columns:1fr;
        gap: 0
    }

    .v2-prototype .dw-form .row {
        flex-wrap: wrap
    }

    .v2-prototype .dw-form .row .inp {
        flex: 1 1 180px;
        min-width: 0
    }

    .v2-prototype .dw-form .row .btn {
        flex: 1 1 auto
    }

    .v2-prototype .dw-pw .inp, .v2-prototype .dw-form .inp {
        height: 46px
    }

    .v2-prototype .dw-pw .inp::placeholder {
        font-size: 14px
    }

    .v2-prototype .dw-agree {
        font-size: 14px;
        padding: 12px
    }

    .v2-prototype .dw-foot {
        margin-top: 10px
    }

    .v2-prototype .dw-foot .dw-in {
        height: auto;
        flex-wrap: wrap;
        gap: 8px;
        padding-top: 10px;
        padding-bottom: calc(10px + env(safe-area-inset-bottom))
    }

    .v2-prototype .dw-foot .dw-in > span.sm {
        flex-basis: 100%;
        font-size: 14px;
        line-height: 1.4
    }

    .v2-prototype .dw-foot .dw-in > .sp {
        display: none
    }

    .v2-prototype .dw-foot .btn.lg {
        flex: 1;
        min-width: 0;
        height: 48px;
        padding: 0 10px;
        font-size: 15px
    }

    .v2-prototype .dw-done-in {
        padding-top: 28px
    }

    .v2-prototype .dw-done h2 {
        font-size: 21px
    }

    .v2-prototype .dw-done-s {
        font-size: 14px;
        margin-bottom: 18px
    }

    .v2-prototype .dw-key {
        padding: 20px 18px;
        border-radius: 20px
    }

    .v2-prototype .dw-key .meta {
        font-size: 14px;
        grid-template-columns:58px minmax(0, 1fr)
    }

    .v2-prototype .dw-key .k {
        font-size: 18px
    }

    .v2-prototype .dw-key .pw {
        font-size: 19px
    }

    .v2-prototype .dw-notes {
        font-size: 14px;
        text-align: left
    }

    .v2-prototype .dw-filt {
        gap: 6px
    }

    .v2-prototype .dw-datew {
        flex-basis: 100%
    }

    .v2-prototype .dw-date {
        width: 100%;
        height: 44px
    }

    .v2-prototype .dw-date span {
        flex: 1;
        text-align: left
    }

    .v2-prototype .dw-filt select.inp {
        width: 110px;
        height: 44px
    }

    .v2-prototype .dw-filt .dw-q {
        flex: 1 1 150px;
        width: auto;
        min-width: 0;
        height: 44px
    }

    .v2-prototype .dw-filt select.inp {
        flex: none
    }

    .v2-prototype .dw-filt .btn.sm {
        height: 44px;
        flex: 1 1 30%
    }

    .v2-prototype .dw-filt > .sp {
        display: none
    }

    .v2-prototype .dw-calpop {
        position: fixed;
        left: 10px;
        right: 10px;
        top: auto;
        bottom: 10px;
        width: auto;
        max-height: 82vh;
        overflow: auto;
        z-index: 120
    }

    .v2-prototype .dw-cal2 {
        grid-template-columns:1fr
    }

    .v2-prototype .dw-cal2 .cal-g .cd {
        height: 36px;
        font-size: 13px
    }

    .v2-prototype .dw-calf .btn {
        height: 42px
    }

    .v2-prototype table.dw-t {
        font-size: 13px
    }

    .v2-prototype .dw-pg {
        justify-content: center;
        flex-wrap: wrap;
        gap: 10px
    }

    .v2-prototype .dw-pager a {
        min-width: 36px;
        height: 36px
    }

    .v2-prototype .dw-ib .inp {
        height: 52px
    }

    .v2-prototype .dw-howto {
        padding: 12px 12px 12px 28px;
        font-size: 13px
    }

    .v2-prototype .dw-rv {
        flex-wrap: wrap;
        gap: 8px 24px;
        padding: 6px 0 0
    }

    .v2-prototype .dw-rv b, .v2-prototype .dw-rv strong {
        font-size: 26px;
        min-width: 0
    }

    .v2-prototype .dw-dots {
        order: 3;
        width: 100%;
        justify-content: space-between;
        gap: 4px;
        padding: 8px 12px
    }

    .v2-prototype .dw-dots i {
        width: 20px;
        height: 20px
    }

    .v2-prototype .dw-rl {
        font-size: 13px
    }

    .v2-prototype .do-trh {
        grid-template-columns:1fr;
        padding: 24px 20px;
        border-radius: 18px
    }

    .v2-prototype .do-trh h2 {
        font-size: 21px
    }

    .v2-prototype .do-trh p {
        font-size: 13.5px
    }

    .v2-prototype .do-mock {
        display: none
    }

    .v2-prototype .do-pcbtns {
        display: none !important
    }

    .v2-prototype .do-pconly {
        display: flex
    }

    .v2-prototype .do-pcnote {
        display: flex
    }

    .v2-prototype .do-flow {
        grid-template-columns:1fr;
        gap: 8px
    }

    .v2-prototype .do-flow > div {
        display: grid;
        grid-template-columns:40px minmax(0, 1fr);
        gap: 0 12px;
        padding: 14px
    }

    .v2-prototype .do-flow > div .ico {
        grid-row: 1/5;
        margin: 0
    }

    .v2-prototype .do-flow > div:not(:last-child):after {
        right: auto;
        left: 33px;
        top: auto;
        bottom: -6px;
        transform: rotate(135deg)
    }

    .v2-prototype .do-flow b {
        margin: 0 0 2px
    }

    .v2-prototype .do-flow p {
        font-size: 13px
    }

    .v2-prototype .do-flow .who {
        justify-self: start;
        margin-top: 6px
    }

    .v2-prototype[data-page="db/status"] .body {
        padding-bottom: 96px
    }

    .v2-prototype[data-page="db/status"] #dev {
        bottom: 142px
    }

    .v2-prototype[data-page="db/status"] #toast {
        bottom: 150px
    }

    .v2-prototype .do-top {
        gap: 8px;
        margin-bottom: 14px
    }

    .v2-prototype .do-top > .seg {
        width: 100%;
        display: flex
    }

    .v2-prototype .do-top > .seg > a {
        flex: 1;
        justify-content: center;
        text-align: center
    }

    .v2-prototype .do-top > .sp {
        display: none
    }

    .v2-prototype .do-nav {
        height: 44px;
        flex: 1;
        justify-content: space-between
    }

    .v2-prototype .do-nav button {
        width: 36px;
        height: 36px
    }

    .v2-prototype .do-nav b {
        min-width: 0
    }

    .v2-prototype .do-top > .btn {
        flex-basis: 100%;
        height: 44px !important
    }

    .v2-prototype .do-top > .sm.muted {
        margin-left: 2px !important
    }

    .v2-prototype .do-bar2 {
        gap: 10px
    }

    .v2-prototype .do-bar2 > .sp {
        display: none
    }

    .v2-prototype .do-bar2 .chips {
        flex-wrap: nowrap
    }

    .v2-prototype .do-bar2 .chip {
        height: 36px
    }

    .v2-prototype .do-adsel {
        width: 100%;
        height: 46px;
        border-color: var(--g);
        color: var(--g2);
        font-weight: 700
    }

    .v2-prototype .do-cards {
        grid-template-columns:1fr;
        gap: 10px
    }

    .v2-prototype .do-bc {
        grid-template-columns:auto minmax(0, 1fr) auto;
        gap: 4px 12px;
        padding: 14px 14px 22px
    }

    .v2-prototype .do-bc > .av, .v2-prototype .do-hcard > .av {
        width: 52px;
        height: 52px
    }

    .v2-prototype .do-bc .do-who {
        grid-column: auto
    }

    .v2-prototype .do-amt {
        font-size: 16px
    }

    .v2-prototype .do-amt small {
        display: block;
        font-size: 14px
    }

    .v2-prototype .do-rt b {
        font-size: 15px
    }

    .v2-prototype .do-fl {
        padding: 14px;
        gap: 10px;
        border-radius: 14px
    }

    .v2-prototype .do-fr {
        grid-template-columns:1fr;
        gap: 6px
    }

    .v2-prototype .do-fl .chips {
        flex-wrap: wrap;
        gap: 6px
    }

    .v2-prototype .do-fl .chip {
        height: 34px
    }

    .v2-prototype .do-fl .chip.co {
        min-width: 72px;
        justify-content: center;
        border-radius: 10px
    }

    .v2-prototype .do-sortrow {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .do-pc {
        padding: 14px
    }

    .v2-prototype .do-pc .tt {
        font-size: 15px
    }

    .v2-prototype .do-pc .pp {
        font-size: 17px
    }

    .v2-prototype .do-sum {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 62px;
        margin: 0;
        z-index: 80;
        border-radius: 16px 16px 0 0;
        padding: 10px 16px;
        gap: 10px;
        box-shadow: 0 -6px 20px rgba(16, 24, 40, .18)
    }

    .v2-prototype .do-sum > div small {
        font-size: 14px;;
        white-space: nowrap
    }

    .v2-prototype .do-sum > div b {
        font-size: 16px
    }

    .v2-prototype .do-sum > i {
        height: 24px
    }

    .v2-prototype .do-sum .amt {
        min-width: 0
    }

    .v2-prototype .do-sum .amt small {
        font-size: 14px;
    }

    .v2-prototype .do-sum .amt b {
        font-size: 20px;
        white-space: nowrap
    }

    .v2-prototype .do-hcard {
        padding: 14px;
        gap: 4px 12px
    }

    .v2-prototype .do-prod {
        padding: 14px 0 12px
    }

    .v2-prototype .do-prod .row {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .do-prod .row .btn {
        height: 36px
    }

    .v2-prototype .do-q b {
        font-size: 17px
    }

    .v2-prototype .do-q small {
        font-size: 14px;
    }

    .v2-prototype .do-p2p {
        flex-wrap: wrap
    }

    .v2-prototype .do-pcbtns, .v2-prototype .do-hcard ~ .do-p2p {
        display: none
    }

    .v2-prototype .do-adlink strong {
        font-size: 15px
    }

    .v2-prototype .do-dbi {
        grid-template-columns:1fr
    }

    .v2-prototype .do-dbi > div:nth-child(odd):not(.full) {
        border-right: 0
    }

    .v2-prototype .do-dbi > div > span {
        width: 96px;
        padding: 0 10px;
        font-size: 14px
    }

    .v2-prototype .do-dbi > div > b {
        padding: 8px 12px;
        font-size: 14px;
        word-break: break-all
    }

    .v2-prototype .do-set {
        grid-template-columns:1fr;
        gap: 20px
    }

    .v2-prototype .do-tc {
        padding: 18px 18px 22px;
        border-radius: 20px
    }

    .v2-prototype .do-mn b {
        font-size: 18px;
        min-width: 76px
    }

    .v2-prototype .do-tc .ln span {
        font-size: 13.5px
    }

    .v2-prototype .do-tc .ln b {
        font-size: 17px
    }

    .v2-prototype .do-tc .ln.s span, .v2-prototype .do-tc .ln.s b {
        font-size: 14px
    }

    .v2-prototype .do-tc .big {
        font-size: 34px
    }

    .v2-prototype .do-tc .big em {
        font-size: 18px
    }

    .v2-prototype .do-stbtn {
        height: 50px;
        padding: 0 40px
    }

    .v2-prototype .do-hc {
        padding: 14px
    }

    .v2-prototype .do-hc .lb {
        font-size: 15px
    }

    .v2-prototype .do-hc .am {
        font-size: 16.5px
    }

    .v2-prototype .do-legend b {
        min-width: 84px
    }

    .v2-prototype .do-dh {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 16px;
        border-radius: 16px;
        margin-bottom: 18px
    }

    .v2-prototype .do-dh > div:first-child {
        min-width: 0 !important;
        flex-direction: row !important;
        flex-wrap: wrap;
        align-items: center !important;
        gap: 6px !important
    }

    .v2-prototype .do-dh .lns {
        grid-template-columns:1fr;
        gap: 6px
    }

    .v2-prototype .do-dh .lns > div {
        flex-direction: row;
        align-items: baseline;
        justify-content: space-between;
        gap: 10px
    }

    .v2-prototype .do-dh .lns b {
        font-size: 20px
    }

    .v2-prototype .do-dh .lns > div:nth-child(3), .v2-prototype .do-dh .lns > div:nth-child(4) {
        justify-content: flex-start
    }

    .v2-prototype .do-tables {
        grid-template-columns:1fr;
        gap: 20px
    }

    .v2-prototype .do-tb h3 {
        font-size: 15px;
        color: var(--blue)
    }

    .v2-prototype .do-tw table.do-t, .v2-prototype .dw-tw table.dw-t {
        display: table;
        width: 100%
    }

    .v2-prototype table.do-t {
        font-size: 14px
    }

    .v2-prototype table.do-t th {
        padding: 8px 4px;
        font-size: 14px
    }

    .v2-prototype table.do-t td {
        padding: 9px 4px
    }

    .v2-prototype table.do-t td .ell {
        max-width: 64px
    }

    .v2-prototype .do-att {
        grid-template-columns:1fr;
        gap: 12px;
        margin-top: 20px
    }

    .v2-prototype .do-att .btn.sm {
        height: 40px
    }

    .v2-prototype .do-att + .row {
        flex-direction: column;
        align-items: stretch
    }

    .v2-prototype .do-att + .row .btn {
        width: 100%;
        min-width: 0 !important
    }

    .v2-prototype .dr-w260 {
        max-width: none
    }

    .v2-prototype .dr-my {
        grid-template-columns:1fr;
        gap: 10px;
        margin-bottom: 16px
    }

    .v2-prototype .dr-mem {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        padding: 14px 16px;
        gap: 2px 10px
    }

    .v2-prototype .dr-mem small {
        width: 100%
    }

    .v2-prototype .dr-mem > b {
        margin-top: 2px;
        font-size: 14.5px;
        flex: 1;
        min-width: 0
    }

    .v2-prototype .dr-mem > span {
        display: none
    }

    .v2-prototype .dr-mem .dr-pt {
        margin: 0;
        padding: 0 0 0 12px;
        border-top: 0;
        border-left: 1px solid rgba(255, 255, 255, .3);
        flex-direction: column;
        align-items: flex-end;
        gap: 0
    }

    .v2-prototype .dr-mem .dr-pt b {
        font-size: 18px
    }

    .v2-prototype .dr-ml {
        padding: 12px 14px 6px
    }

    .v2-prototype .dr-ml a {
        min-height: 44px;
        font-size: 14px
    }

    .v2-prototype .dr-ml:last-child {
        display: grid;
        grid-template-columns:1fr 1fr;
        column-gap: 14px
    }

    .v2-prototype .dr-ml:last-child h5 {
        grid-column: 1/-1;
        justify-self: start
    }

    .v2-prototype .dr-ml:last-child a:nth-last-child(2) {
        border-bottom: 0
    }

    .v2-prototype .dr-tool {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding: 8px;
        border-radius: 14px
    }

    .v2-prototype .dr-tool .search {
        width: 100%;
        height: 44px
    }

    .v2-prototype .dr-tool > .sp {
        display: none
    }

    .v2-prototype .dr-sortc {
        flex-wrap: nowrap !important;
        overflow-x: auto;
        scrollbar-width: none;
        padding: 0 2px
    }

    .v2-prototype .dr-sortc::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .dr-sortc .chip {
        flex: none;
        height: 34px
    }

    .v2-prototype .dr-tool .dr-new {
        position: fixed;
        right: 16px;
        bottom: 76px;
        z-index: 60;
        height: 50px;
        padding: 0 20px;
        border-radius: 999px;
        box-shadow: 0 10px 24px rgba(14, 100, 87, .35);
        font-size: 15px
    }

    .v2-prototype .dr-cnth {
        margin: 16px 2px 8px
    }

    .v2-prototype .dr-cnth > .xs {
        display: none
    }

    .v2-prototype .dr-list {
        gap: 10px;
        padding-bottom: 40px
    }

    .v2-prototype .dr-row {
        grid-template-columns:minmax(0, 1fr) auto;
        grid-template-areas:"rt rt" "rp ra";
        gap: 12px 12px;
        padding: 14px;
        border-radius: 14px
    }

    .v2-prototype .dr-rt {
        grid-area: rt;
        border-right: 0;
        padding-right: 0
    }

    .v2-prototype .dr-rtt {
        font-size: 15px
    }

    .v2-prototype .dr-meta {
        gap: 4px 10px;
        font-size: 14px;
        margin-top: 6px
    }

    .v2-prototype .dr-rp {
        grid-area: rp;
        align-self: center
    }

    .v2-prototype .dr-rp small {
        display: none
    }

    .v2-prototype .dr-ra {
        grid-area: ra;
        gap: 6px
    }

    .v2-prototype .dr-ra .btn.sm {
        height: 38px;
        padding: 0 13px;
        font-size: 13.5px
    }

    .v2-prototype .dr-more {
        width: 38px !important
    }

    .v2-prototype .dr-aside {
        top: 110px
    }

    .v2-prototype .dr-rq ul {
        grid-template-columns:1fr 1fr
    }

    .v2-prototype .dr-rq h4 {
        padding: 11px 14px
    }

    .v2-prototype .fsec.dr-sec {
        padding: 16px 14px
    }

    .v2-prototype .dr-sec > h3 {
        flex-wrap: wrap;
        gap: 6px 8px;
        font-size: 15.5px
    }

    .v2-prototype .dr-sec > h3 small {
        width: 100%;
        margin: 0;
        font-size: 14px
    }

    .v2-prototype .dr-lb {
        flex-wrap: wrap;
        gap: 4px 6px;
        font-size: 14px
    }

    .v2-prototype .dr-lb .help {
        margin-left: 0;
        width: 100%;
        font-size: 14px
    }

    .v2-prototype .dr-it {
        padding: 14px 0
    }

    .v2-prototype .dr-tin .inp {
        height: 46px
    }

    .v2-prototype .dr-g4 {
        grid-template-columns:1fr 1fr
    }

    .v2-prototype .dr-g4, .v2-prototype .pbox .dr-scp .grid2 {
        position: relative
    }

    .v2-prototype .dr-g4 > .dr-date, .v2-prototype .pbox .dr-scp .grid2 > .dr-date {
        position: static
    }

    .v2-prototype .dr-g4 .dr-calpop, .v2-prototype .pbox .dr-scp .dr-calpop {
        position: absolute;
        left: 0;
        right: 0;
        top: 52px;
        width: auto;
        margin: 0;
        z-index: 30;
        box-shadow: var(--sh2)
    }

    .v2-prototype #dr-it-unit .row {
        flex-direction: column;
        align-items: stretch
    }

    .v2-prototype .dr-ed .seg {
        width: 100%
    }

    .v2-prototype .dr-ed .seg > button {
        flex: 1
    }

    .v2-prototype .dr-etcin {
        flex-wrap: wrap;
        max-width: none
    }

    .v2-prototype .dr-etcin .inp {
        flex: 1 1 100%
    }

    .v2-prototype .dr-etcin > span {
        width: auto;
        margin-right: auto
    }

    .v2-prototype .dr-setbtn {
        width: 100%;
        min-width: 0;
        height: 48px
    }

    .v2-prototype .dr-sum {
        padding: 12px 40px 12px 12px
    }

    .v2-prototype .dr-pi {
        grid-template-columns:minmax(0, 1fr) 24px;
        gap: 2px 8px
    }

    .v2-prototype .dr-pi > b {
        grid-column: 1
    }

    .v2-prototype .dr-pi > span {
        grid-column: 1
    }

    .v2-prototype .dr-pi > em {
        grid-column: 1
    }

    .v2-prototype .dr-pi > .dr-x {
        grid-column: 2;
        grid-row: 1
    }

    .v2-prototype .dr-rc, .v2-prototype .dr-dc {
        height: 34px
    }

    .v2-prototype .dr-buy {
        grid-template-columns:1fr
    }

    .v2-prototype .dr-bc {
        display: grid;
        grid-template-columns:minmax(0, 1fr) 120px;
        gap: 8px 12px;
        align-items: center
    }

    .v2-prototype .dr-bc-h {
        grid-column: 1/-1
    }

    .v2-prototype .dr-bc-art {
        grid-column: 2;
        grid-row: 2/span 2;
        height: 84px
    }

    .v2-prototype .dr-bc-art svg {
        width: 112px
    }

    .v2-prototype .dr-art-ic {
        width: 40px;
        height: 40px
    }

    .v2-prototype .dr-bc > p {
        grid-column: 1;
        grid-row: 2
    }

    .v2-prototype .dr-bc > p.xs, .v2-prototype .dr-bc > .dr-url, .v2-prototype .dr-bc > .inp, .v2-prototype .dr-bc > .dr-msg {
        grid-column: 1/-1
    }

    .v2-prototype .dr-bc > p.xs {
        grid-row: auto
    }

    .v2-prototype .dr-url .inp {
        height: 44px
    }

    .v2-prototype .dr-url .btn {
        height: 44px
    }

    .v2-prototype #dr-direct {
        height: 44px
    }

    .v2-prototype .dr-2box {
        grid-template-columns:1fr
    }

    .v2-prototype #dr-it-banner > .row {
        flex-direction: column;
        align-items: stretch
    }

    .v2-prototype .dr-banc > div {
        flex: 1;
        padding: 8px 6px
    }

    .v2-prototype .dr-banx {
        flex: none !important
    }

    .v2-prototype .dr-doc {
        padding: 14px 12px
    }

    .v2-prototype .dr-doc-h {
        flex-wrap: wrap;
        align-items: flex-start
    }

    .v2-prototype .dr-doc-h b {
        flex: 0 1 auto;
        min-width: 0;
        line-height: 1.4
    }

    .v2-prototype .dr-doc-h .req {
        margin-right: auto
    }

    .v2-prototype .dr-doc-h .sp {
        display: none
    }

    .v2-prototype .dr-doc-h .btn {
        width: 100%;
        height: 40px;
        margin-top: 6px;
        order: 3
    }

    .v2-prototype .dr-warn {
        align-items: flex-start;
        line-height: 1.45
    }

    .v2-prototype .dr-warn .ic {
        flex: none;
        margin-top: 1px
    }

    .v2-prototype .dr-docrow {
        grid-template-columns:1fr
    }

    .v2-prototype .dr-docrow .drop {
        white-space: normal;
        height: auto;
        min-height: 48px;
        padding: 8px 12px;
        text-align: center
    }

    .v2-prototype .dr-docck {
        flex-direction: column;
        gap: 10px
    }

    .v2-prototype .dr-pv {
        padding: 12px
    }

    .v2-prototype .dr-agree {
        padding: 14px
    }

    .v2-prototype .dr-agree .ckb {
        align-items: flex-start;
        line-height: 1.45
    }

    .v2-prototype .dr-agree p {
        margin-left: 0;
        margin-top: 8px
    }

    .v2-prototype .dr-ed .savebar {
        gap: 8px;
        padding: 10px 16px 12px;
        z-index: 45
    }

    .v2-prototype .dr-ed .savebar .sb-l {
        flex-direction: row;
        align-items: center;
        gap: 10px
    }

    .v2-prototype .dr-ed .savebar .prog {
        flex: 1
    }

    .v2-prototype .dr-ed .savebar [data-ratetxt] {
        flex: none;
        font-size: 14px
    }

    .v2-prototype .dr-hint {
        display: none
    }

    .v2-prototype .dr-ed .savebar .row {
        gap: 6px
    }

    .v2-prototype .dr-ed .savebar .row .btn {
        height: 48px;
        padding: 0 10px
    }

    .v2-prototype .dr-ed .savebar .row [data-savebtn] {
        flex: 1.7
    }

    .v2-prototype .dr-att {
        flex-wrap: wrap
    }

    .v2-prototype .dr-att > .sp, .v2-prototype .dr-att > .xs {
        display: none
    }

    .v2-prototype .dr-ai {
        height: 40px;
        flex: 1;
        justify-content: center;
        padding: 0 6px
    }

    .v2-prototype .dr-attin {
        max-width: none
    }

    .v2-prototype .dr-fc {
        max-width: 100%
    }

    .v2-prototype .dr-dcard {
        padding: 22px 18px 18px;
        border-radius: 20px;
        gap: 16px
    }

    .v2-prototype .dr-dai h2 {
        font-size: 22px
    }

    .v2-prototype .dr-dai i {
        width: 38px;
        height: 38px;
        font-size: 15px
    }

    .v2-prototype .dr-dmain {
        align-items: flex-start
    }

    .v2-prototype .dr-dmain h3 {
        font-size: 18px
    }

    .v2-prototype .dr-dmain p {
        font-size: 13.5px
    }

    .v2-prototype .dr-dalarm {
        width: 62px;
        height: 62px
    }

    .v2-prototype .dr-dalarm .ic {
        width: 30px;
        height: 30px
    }

    .v2-prototype .dr-next {
        grid-template-columns:1fr;
        padding: 14px
    }

    .v2-prototype .pbox .dr-blk {
        padding: 12px
    }

    .v2-prototype .pbox .dr-addrow .btn {
        height: 42px;
        padding: 0 18px
    }

    .v2-prototype .pbox .dr-scp .grid2 {
        grid-template-columns:1fr 1fr
    }

    .v2-prototype .pbox .dr-blk-in .grid2 {
        grid-template-columns:1fr
    }

    .v2-prototype .pbox .dr-cfr .inp, .v2-prototype .pbox .dr-ddb {
        height: 46px
    }

    .v2-prototype .dr-ddi {
        min-height: 44px
    }

    .v2-prototype .dr-scr {
        grid-template-columns:6px 70px minmax(0, 1fr) 28px;
        gap: 8px
    }

    .v2-prototype .dr-tgtop {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .dr-tgtop .sp {
        display: none
    }

    .v2-prototype .dr-tgh {
        flex-wrap: wrap
    }

    .v2-prototype .dr-pvh {
        gap: 12px;
        padding: 12px
    }

    .v2-prototype .dr-pvh .logo-ph, .v2-prototype .dr-pvh > div:first-child {
        flex: none
    }

    .v2-prototype .dr-pvt {
        font-size: 17px
    }

    .v2-prototype .dr-pvg {
        grid-template-columns:1fr
    }

    .v2-prototype .dr-pvp {
        position: static
    }

    .v2-prototype .dr-pvg table.kv th {
        width: 96px
    }

    .v2-prototype .dr-ml2 a {
        min-height: 48px
    }

    .v2-prototype .cm-filter {
        gap: 6px
    }

    .v2-prototype .cm-filter {
        flex-wrap: wrap
    }

    .v2-prototype .cm-filter .cm-ym {
        flex: 1 1 0;
        min-width: 0;
        justify-content: space-between;
        height: 44px
    }

    .v2-prototype .cm-ym button {
        width: 32px;
        height: 36px
    }

    .v2-prototype .cm-ym b {
        min-width: 0;
        padding: 0 2px
    }

    .v2-prototype .cm-filter > .btn {
        flex: none;
        height: 44px;
        padding: 0 11px
    }

    .v2-prototype .cm-filter > .sp {
        display: none
    }

    .v2-prototype .cm-filter .sort {
        width: 100%;
        margin-top: 6px
    }

    .v2-prototype .cm-filter .sort a {
        padding: 6px 12px
    }

    .v2-prototype .cm-filter .sort a:first-child {
        padding-left: 0
    }

    .v2-prototype .cm-grid3 {
        grid-template-columns:minmax(0, 1fr);
        gap: 10px
    }

    .v2-prototype .cm-fc, .v2-prototype .cm-lc {
        padding: 14px 16px 12px;
        border-radius: 14px
    }

    .v2-prototype .cm-fc:hover, .v2-prototype .cm-lc:hover {
        transform: none
    }

    .v2-prototype .cm-fc h4, .v2-prototype .cm-lc h4 {
        font-size: 15.5px;
        margin-top: 10px
    }

    .v2-prototype .cm-file {
        height: 42px;
        font-size: 13px
    }

    .v2-prototype .cm-fc-bot {
        margin-top: 10px;
        padding-top: 10px
    }

    .v2-prototype .cm-heart {
        font-size: 14px;
        padding: 6px 8px 6px 4px
    }

    .v2-prototype .cm-fc > p {
        display: none
    }

    .v2-prototype .cm-lc .cm-thumb {
        height: 104px
    }

    .v2-prototype .cm-lc p {
        min-height: 0;
        font-size: 13px
    }

    .v2-prototype .cm-more {
        height: 44px
    }

    .v2-prototype .cm-bh {
        height: 48px;
        border-radius: 12px;
        margin-bottom: 12px;
        box-shadow: none
    }

    .v2-prototype .cm-bh b {
        font-size: 15px
    }

    .v2-prototype .cm-doc {
        padding: 18px 16px 16px;
        border-radius: 16px
    }

    .v2-prototype .cm-doc-h {
        padding-bottom: 14px
    }

    .v2-prototype .cm-doc-t {
        gap: 4px 10px
    }

    .v2-prototype .cm-doc-t h2, .v2-prototype .cm-nv-t {
        font-size: 19px;
        flex-basis: 100%
    }

    .v2-prototype .cm-no-b {
        font-size: 13px
    }

    .v2-prototype .cm-doc-m {
        font-size: 14px;
        flex-wrap: wrap
    }

    .v2-prototype .cm-doc-b {
        padding: 16px 0 4px
    }

    .v2-prototype .cm-body {
        font-size: 15px;
        line-height: 1.8;
        margin-top: 12px;
        word-break: keep-all;
        overflow-wrap: anywhere
    }

    .v2-prototype .cm-att-l {
        grid-template-columns:minmax(0, 1fr)
    }

    .v2-prototype .cm-src-c {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 10px
    }

    .v2-prototype .cm-src-c .cm-thumb {
        width: 100%;
        height: 110px
    }

    .v2-prototype .cm-src-i {
        padding: 0 4px 4px
    }

    .v2-prototype .cm-src-i b {
        white-space: normal
    }

    .v2-prototype .cm-doc-f {
        margin-top: 14px;
        padding-top: 12px
    }

    .v2-prototype .btn.cm-listbtn {
        margin-top: 14px;
        height: 50px
    }

    .v2-prototype .cm-ptbar {
        flex-direction: column;
        align-items: stretch;
        gap: 12px
    }

    .v2-prototype .cm-ptbar > .sp {
        display: none
    }

    .v2-prototype .search.cm-ptsrch {
        width: 100%;
        height: 46px
    }

    .v2-prototype .cm-ptgrid {
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap: 8px
    }

    .v2-prototype .cm-pt {
        padding: 12px 10px 10px
    }

    .v2-prototype .cm-pt-l {
        height: 56px
    }

    .v2-prototype .cm-pt-l i {
        width: 36px;
        height: 36px;
        border-radius: 10px;
        font-size: 16px
    }

    .v2-prototype .cm-pt-l b {
        display: none
    }

    .v2-prototype .cm-pt > span {
        font-size: 14px;
        text-align: center
    }

    .v2-prototype .chips.cm-chips {
        flex-wrap: nowrap;
        overflow-x: auto;
        margin: 0 -16px 10px;
        padding: 0 16px 2px;
        scrollbar-width: none
    }

    .v2-prototype .cm-chips::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .cm-chips .chip {
        flex: none;
        height: 36px;
        padding: 0 15px
    }

    .v2-prototype table.t.cm-tbl {
        display: block;
        overflow: visible;
        white-space: normal;
        border-top-width: 1px;
        border-top-color: var(--line)
    }

    .v2-prototype table.t.cm-tbl colgroup, .v2-prototype table.t.cm-tbl thead {
        display: none
    }

    .v2-prototype table.t.cm-tbl tbody {
        display: block
    }

    .v2-prototype table.t.cm-tbl tbody tr {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 6px 0;
        padding: 14px 2px;
        border-bottom: 1px solid var(--line2)
    }

    .v2-prototype table.t.cm-tbl tbody tr:hover td {
        background: none
    }

    .v2-prototype table.t.cm-tbl td {
        display: block;
        height: auto;
        padding: 0;
        border: 0;
        font-size: 14px;
        color: var(--mute);
        white-space: nowrap
    }

    .v2-prototype table.t.cm-tbl td.cm-tt {
        flex: 0 0 100%;
        min-width: 0;
        color: var(--ink);
        white-space: normal
    }

    .v2-prototype table.t.cm-tbl td[colspan] {
        flex: 0 0 100%
    }

    .v2-prototype .cm-tt b {
        font-size: 15px
    }

    .v2-prototype table.t.cm-tbl td:nth-child(n+3):before {
        content: "·";
        margin: 0 7px;
        color: #C5CBD2
    }

    .v2-prototype table.t.cm-tbl td:nth-child(4):before {
        content: "·  조회 ";
        white-space: pre
    }

    .v2-prototype table.t.cm-tbl td:nth-child(5):before {
        content: "·  공감 ";
        white-space: pre
    }

    .v2-prototype table.t.cm-tbl .cm-by {
        font-size: 14px;
        color: var(--sub);
        gap: 6px
    }

    .v2-prototype table.t.cm-tbl .av.cm-av {
        width: 20px;
        height: 20px
    }

    .v2-prototype table.t.cm-tbl .av.cm-av .ic {
        width: 12px;
        height: 12px
    }

    .v2-prototype .cm-av.anon {
        font-size: 14px
    }

    .v2-prototype .cm-qh {
        display: none
    }

    .v2-prototype .cm-ql {
        border-top: 1px solid var(--line)
    }

    .v2-prototype .cm-qr {
        grid-template-columns:auto auto minmax(0, 1fr);
        grid-template-areas:"m m m" "by t a";
        gap: 8px 0;
        padding: 14px 2px
    }

    .v2-prototype .cm-qr-m {
        grid-area: m
    }

    .v2-prototype .cm-qr-m b {
        font-size: 15px
    }

    .v2-prototype .cm-qr-m p {
        font-size: 13px
    }

    .v2-prototype .cm-qr > .cm-by {
        grid-area: by;
        font-size: 14px;
        color: var(--sub);
        gap: 6px
    }

    .v2-prototype .cm-qr > .cm-by .av.cm-av {
        width: 20px;
        height: 20px
    }

    .v2-prototype .cm-qr > .cm-by .av.cm-av .ic {
        width: 12px;
        height: 12px
    }

    .v2-prototype .cm-qr-t {
        grid-area: t;
        font-size: 14px;
        color: var(--mute);
        text-align: left
    }

    .v2-prototype .cm-qr-t:before {
        content: "·";
        margin: 0 7px;
        color: #C5CBD2
    }

    .v2-prototype .cm-qr-a {
        grid-area: a;
        text-align: right;
        font-size: 14px;
        color: var(--sub);
        font-weight: 600
    }

    .v2-prototype .cm-qr-a em {
        font-size: 14px
    }

    .v2-prototype .cm-file.sm {
        height: 34px
    }

    .v2-prototype .btn.cm-write {
        position: sticky;
        bottom: 74px;
        z-index: 20;
        margin-top: 16px;
        height: 52px;
        box-shadow: 0 8px 24px rgba(18, 122, 108, .28)
    }

    .v2-prototype .cm-form .fsec {
        padding: 16px
    }

    .v2-prototype .inp.cm-tin {
        height: 50px;
        font-size: 16px
    }

    .v2-prototype .cm-catsel {
        gap: 6px
    }

    .v2-prototype .cm-catb {
        height: 40px;
        padding: 0 14px;
        font-size: 14px
    }

    .v2-prototype .cm-catsel > span {
        flex-basis: 100%;
        margin: 2px 0 0 !important
    }

    .v2-prototype .cm-imgbar {
        flex-wrap: wrap;
        gap: 8px
    }

    .v2-prototype .cm-imgbar .btn {
        height: 44px
    }

    .v2-prototype .cm-img {
        width: 96px
    }

    .v2-prototype .cm-img-ph {
        height: 96px
    }

    .v2-prototype .cm-actbar {
        bottom: 62px;
        margin: 16px -16px 0;
        padding: 10px 16px;
        border-radius: 16px 16px 0 0;
        border-left: 0;
        border-right: 0;
        border-bottom: 0
    }

    .v2-prototype .cm-actbar .btn.lg {
        height: 50px;
        min-width: 0;
        padding: 0 10px;
        font-size: 15px
    }

    .v2-prototype .cm-actbar .btn.f2 {
        flex: 1.8
    }

    .v2-prototype .cm-pimgs {
        gap: 8px
    }

    .v2-prototype .cm-pimg {
        width: 100%;
        height: 200px
    }

    .v2-prototype .cm-react {
        gap: 6px
    }

    .v2-prototype .cm-react button {
        flex: 1;
        justify-content: center;
        height: 44px;
        padding: 0 8px
    }

    .v2-prototype .cm-cmt {
        gap: 10px;
        padding: 14px 0
    }

    .v2-prototype .cm-cmt .av {
        width: 30px;
        height: 30px
    }

    .v2-prototype .cm-cmt-m > p {
        font-size: 14px
    }

    .v2-prototype .cm-cmt-f {
        gap: 12px;
        font-size: 14px
    }

    .v2-prototype .cm-cmt-f button {
        font-size: 14px;
        min-height: 30px
    }

    .v2-prototype .cm-dots {
        width: 36px;
        height: 36px
    }

    .v2-prototype .cm-sheet {
        z-index: 160
    }

    .v2-prototype .cm-sheet-dim {
        z-index: 155
    }

    .v2-prototype .cm-sheet-in {
        padding: 18px 16px calc(16px + env(safe-area-inset-bottom))
    }

    .v2-prototype .cm-sheet-in textarea.inp {
        min-height: 110px;
        font-size: 15px
    }

    .v2-prototype .cm-sheet-in .btn.lg {
        height: 50px
    }

    .v2-prototype .cm-about {
        padding: 52px 20px 92px;
        border-radius: 20px
    }

    .v2-prototype .cm-about:before {
        width: 240px;
        height: 240px;
        right: -80px;
        top: -80px
    }

    .v2-prototype .cm-wave {
        height: 110px
    }

    .v2-prototype .cm-about h2 {
        font-size: 30px;
        margin-top: 16px
    }

    .v2-prototype .cm-about-l {
        font-size: 16px;
        line-height: 1.5;
        min-height: 48px;
        word-break: keep-all
    }

    .v2-prototype .cm-about-l .cur {
        height: 17px
    }

    .v2-prototype .cm-about-s {
        font-size: 14px;
        word-break: keep-all
    }

    .v2-prototype .cm-about .row {
        flex-direction: column;
        align-items: stretch;
        gap: 8px !important;
        margin-top: 22px !important
    }

    .v2-prototype .cm-about .row .btn {
        height: 50px;
        justify-content: center
    }

    .v2-prototype .cm-jsbar {
        display: grid;
        grid-template-columns:1fr 1fr;
        gap: 8px
    }

    .v2-prototype .cm-jsbar .btn {
        height: 44px;
        min-width: 0;
        padding: 0 8px;
        font-size: 13.5px
    }

    .v2-prototype .cm-jsbar .btn:first-child {
        grid-column: 1/-1
    }

    .v2-prototype .cm-jsbar > .sp {
        display: none
    }

    .v2-prototype .cm-jsbar > .xs {
        grid-column: 1/-1;
        font-size: 14px
    }

    .v2-prototype .cm-jsec {
        margin-top: 22px
    }

    .v2-prototype .cm-jsec h3 {
        font-size: 16px;
        margin-bottom: 10px
    }

    .v2-prototype .cm-tiles {
        grid-template-columns:repeat(4, minmax(0, 1fr));
        gap: 8px
    }

    .v2-prototype .cm-tile {
        height: 92px;
        gap: 7px;
        padding: 8px 4px;
        border-radius: 12px
    }

    .v2-prototype .cm-tile:hover {
        transform: none
    }

    .v2-prototype .cm-mono {
        width: 42px;
        height: 42px;
        border-radius: 12px
    }

    .v2-prototype .cm-mono b {
        font-size: 14px
    }

    .v2-prototype .cm-tn {
        font-size: 14px;
        letter-spacing: -.03em
    }

    .v2-prototype .cm-key {
        left: 5px;
        top: 5px
    }

    .v2-prototype .cm-tdel {
        right: 4px;
        top: 4px
    }

    .v2-prototype .cm-codes {
        max-height: none;
        overflow: visible;
        border: 0;
        border-radius: 0
    }

    .v2-prototype .cm-ctbl, .v2-prototype .cm-ctbl tbody {
        display: block
    }

    .v2-prototype .cm-ctbl colgroup, .v2-prototype .cm-ctbl thead {
        display: none
    }

    .v2-prototype .cm-ctbl tbody tr {
        display: grid;
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        grid-template-areas:"nm bt" "id id" "pw au";
        gap: 8px;
        padding: 12px;
        margin-bottom: 8px;
        border: 1px solid var(--line);
        border-radius: 14px;
        background: #fff
    }

    .v2-prototype .cm-ctbl tbody th {
        grid-area: nm;
        text-align: left;
        padding: 0;
        border: 0 !important;
        font-size: 14.5px;
        align-self: center
    }

    .v2-prototype .cm-ctbl td {
        padding: 0;
        border: 0 !important
    }

    .v2-prototype .cm-ctbl td:nth-of-type(1) {
        grid-area: id
    }

    .v2-prototype .cm-ctbl td:nth-of-type(2) {
        grid-area: pw
    }

    .v2-prototype .cm-ctbl td:nth-of-type(3) {
        grid-area: au
    }

    .v2-prototype .cm-ctbl td:nth-of-type(4) {
        grid-area: bt;
        justify-self: end;
        width: 84px
    }

    .v2-prototype .cm-ctbl td:nth-of-type(-n+3):before {
        display: block;
        font-size: 14px;
        font-weight: 600;
        color: var(--mute);
        margin: 0 0 4px 2px
    }

    .v2-prototype .cm-ctbl td:nth-of-type(1):before {
        content: "아이디"
    }

    .v2-prototype .cm-ctbl td:nth-of-type(2):before {
        content: "비밀번호"
    }

    .v2-prototype .cm-ctbl td:nth-of-type(3):before {
        content: "인증번호"
    }

    .v2-prototype .cm-cin {
        height: 42px
    }

    .v2-prototype .cm-cin input {
        font-size: 14px
    }

    .v2-prototype .cm-cin button {
        width: 32px;
        height: 32px
    }

    .v2-prototype .cm-cbtn {
        height: 34px;
        font-size: 13px
    }

    .v2-prototype #pop .pf [data-unmask] {
        flex: 1 1 100%
    }

    .v2-prototype #pop .pf:has([data-unmask]) {
        flex-wrap: wrap
    }

    .v2-prototype .cm-nl {
        padding: 2px 14px;
        border-radius: 14px
    }

    .v2-prototype .cm-ni {
        padding: 15px 2px;
        gap: 8px
    }

    .v2-prototype .cm-ni-m b {
        font-size: 15px
    }

    .v2-prototype .cm-nv .cm-doc-m {
        padding-bottom: 14px
    }

    .v2-prototype .cm-nv-a {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding: 14px 0
    }

    .v2-prototype .cm-nv-a .cm-file {
        width: 100%
    }

    .v2-prototype .cm-nv-a .cm-file span {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }

    .v2-prototype .cm-pn a {
        padding: 14px 16px;
        gap: 10px
    }

    .v2-prototype .cm-pn span {
        width: 58px
    }

.v2-prototype {
        font-size: 14px;
    }

    .v2-prototype .wrap {
        padding: 0 16px
    }

    .v2-prototype #hd .wrap {
        height: 56px
    }

    .v2-prototype #hd .lg img {
        height: 21px
    }

    .v2-prototype .lnb {
        top: 56px;
        margin: 0 -16px 16px;
        padding: 10px 16px
    }

    .v2-prototype #tabbar {
        display: grid;
        grid-template-columns:repeat(5, 1fr);
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 90;
        background: rgba(255, 255, 255, .97);
        backdrop-filter: blur(10px);
        border-top: 1px solid var(--line);
        height: 62px;
        padding-bottom: env(safe-area-inset-bottom)
    }

    .v2-prototype #tabbar a {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        font-size: 14px;;
        font-weight: 600;
        color: var(--mute)
    }

    .v2-prototype #tabbar a svg {
        width: 22px;
        height: 22px
    }

    .v2-prototype #tabbar a.on {
        color: var(--g)
    }

    .v2-prototype .qside {
        display: none
    }

    .v2-prototype #dev {
        left: 10px;
        bottom: 150px
    }

    .v2-prototype #dev .pnl {
        width: calc(100vw - 20px)
    }

    .v2-prototype #toast {
        bottom: 84px
    }

    .v2-prototype .nbar {
        font-size: 14px
    }

    .v2-prototype .nbar .wrap {
        height: 36px
    }

    .v2-prototype .band .wrap {
        padding-top: 18px;
        padding-bottom: 18px
    }

    .v2-prototype .band h1 {
        font-size: 24px
    }

    .v2-prototype .band p.sub {
        font-size: 13.5px
    }

    .v2-prototype .band .crumb {
        margin-bottom: 6px
    }

    .v2-prototype .band:after {
        display: none
    }

    .v2-prototype .band .acts {
        flex-wrap: wrap
    }

    .v2-prototype .sec-h h2 {
        font-size: 18px
    }

    .v2-prototype .card {
        padding: 16px;
        border-radius: 14px
    }

    .v2-prototype .fsec {
        padding: 16px;
        border-radius: 14px
    }

    .v2-prototype .grid2, .v2-prototype .grid3, .v2-prototype .grid4 {
        grid-template-columns:1fr
    }

    .v2-prototype .dbgrid {
        grid-template-columns:1fr
    }

    .v2-prototype .pcards {
        grid-template-columns:1fr
    }

    .v2-prototype .tabs {
        gap: 16px;
        overflow-x: auto;
        scrollbar-width: none
    }

    .v2-prototype .tabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .tabs a {
        font-size: 15px;
        white-space: nowrap
    }

    .v2-prototype .chips, .v2-prototype .row.w {
        flex-wrap: wrap
    }

    .v2-prototype .filt {
        grid-template-columns:1fr;
        gap: 6px
    }

    .v2-prototype .filt > span {
        margin-top: 6px
    }

    .v2-prototype .search {
        height: 44px
    }

    .v2-prototype .seg {
        max-width: 100%;
        overflow-x: auto;
        scrollbar-width: none
    }

    .v2-prototype .seg::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .seg > * {
        flex: none
    }

    .v2-prototype table.t {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch
    }

    .v2-prototype table.kv th {
        width: 96px;
        padding: 10px;
        font-size: 14px
    }

    .v2-prototype table.kv td {
        padding: 10px;
        font-size: 13.5px
    }

    .v2-prototype .kpis b {
        font-size: 17px
    }

    .v2-prototype .jl {
        border-top-width: 1px
    }

    .v2-prototype .jl .hd {
        display: none
    }

    .v2-prototype .jl .it {
        grid-template-columns:44px 1fr 32px;
        grid-template-areas:"lg tt bm" "lg ar bm" "lg sa bm" "lg du bm";
        gap: 4px 12px;
        padding: 14px 2px;
        min-height: 0;
        align-items: start
    }

    .v2-prototype .jl .it > .logo-ph {
        grid-area: lg;
        width: 44px !important;
        height: 44px !important;
        font-size: 14px
    }

    .v2-prototype .jl .it > .tt {
        grid-area: tt
    }

    .v2-prototype .jl .it > .tt .row {
        flex-wrap: wrap;
        gap: 4px !important
    }

    .v2-prototype .jl .it > .tt b {
        white-space: normal;
        font-size: 14.5px
    }

    .v2-prototype .jl .it > .area {
        grid-area: ar;
        font-size: 14px
    }

    .v2-prototype .jl .it > .row {
        grid-area: sa
    }

    .v2-prototype .jl .it > .due {
        grid-area: du;
        display: block;
        text-align: left;
        font-size: 14px
    }

    .v2-prototype .jl .it > .bm {
        grid-area: bm
    }

    .v2-prototype .pc {
        padding: 14px
    }

    .v2-prototype .steps .st {
        font-size: 14px
    }

    .v2-prototype .steps .st i {
        width: 26px;
        height: 26px;
        font-size: 11.5px
    }

    .v2-prototype .steps .st:before {
        top: 13px
    }

    .v2-prototype .pop-stack {
        align-items: flex-end;
        padding: 0
    }

    .v2-prototype .pbox, .v2-prototype .pbox.sm, .v2-prototype .pbox.md, .v2-prototype .pbox.lg, .v2-prototype .pbox.xl {
        width: 100%;
        max-width: 100%;
        max-height: 92vh;
        border-radius: 22px 22px 0 0;
        animation: sheetIn .28s cubic-bezier(.2, .8, .3, 1)
    }

    .v2-prototype .pbox:before {
        content: "";
        position: absolute;
        top: 8px;
        left: 50%;
        width: 40px;
        height: 4px;
        border-radius: 4px;
        background: #D5DAE0;
        transform: translateX(-50%)
    }

    .v2-prototype .pbox .ph {
        padding: 22px 18px 4px
    }

    .v2-prototype .pbox .ph h3 {
        font-size: 17px
    }

    .v2-prototype .pbox .pb {
        padding: 12px 18px 16px
    }

    .v2-prototype .pbox .pf {
        padding: 12px 18px calc(14px + env(safe-area-inset-bottom))
    }

    .v2-prototype .pbox .pf .btn {
        height: 48px
    }

    .v2-prototype .pick-grid {
        grid-template-columns:repeat(3, 1fr)
    }

    @keyframes sheetIn {
        from {
            transform: translateY(40px);
            opacity: .4
        }
        to {
            transform: none;
            opacity: 1
        }
    }
    .v2-prototype .savebar {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
        border-radius: 16px 16px 0 0;
        margin: 20px -16px 0;
        bottom: 62px;
        padding: 12px 16px
    }

    .v2-prototype .savebar .prog {
        width: 100% !important
    }

    .v2-prototype .savebar .row {
        justify-content: stretch
    }

    .v2-prototype .savebar .row .btn {
        flex: 1;
        min-width: 0 !important
    }

    .v2-prototype #ft .wrap {
        padding-top: 28px;
        padding-bottom: 28px
    }

    .v2-prototype #ft .cs b {
        font-size: 22px
    }

    .v2-prototype #ft .links {
        gap: 6px 14px;
        font-size: 14px
    }

    .v2-prototype #ft .bot {
        font-size: 14px
    }

    .v2-prototype .fbanner h3 {
        font-size: 18px
    }

    .v2-prototype .empty {
        padding: 36px 12px
    }

    .v2-prototype #dev .fab {
        opacity: .6
    }

    .v2-prototype #dev.on .fab {
        opacity: 1
    }

    .v2-wrap{padding-inline:20px}.v2-header-row{height:62px;padding-inline:18px}.v2-brand img{width:143px}.v2-util{gap:9px}.v2-myjs,.v2-util .v2-cert,.v2-util .v2-user{display:none}.v2-util .v2-login{font-size:14px;padding:5px 12px}.v2-alarm{font-size:19px!important}
    .v2-notice{font-size:10px}.v2-notice .v2-wrap{padding-block:8px;padding-inline:18px}.v2-notice>div>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .v2-hero{padding:12px 12px 0}.v2-hero-stage{height:570px;border-radius:22px}.v2-hero-copy{left:24px;right:24px;max-width:none;top:28px}.v2-eyebrow{font-size:10px;gap:8px}.v2-eyebrow>span{width:20px}.v2-hero-copy h1,.v2-hero-copy h2{font-size:35px;line-height:1.2;margin:14px 0 12px;letter-spacing:-.045em}.v2-hero-copy p{font-size:14px;max-width:none;margin-bottom:14px}.v2-hero-cta{padding:8px 14px;font-size:14px;gap:16px}
    .v2-hero-visual{width:calc(100% - 70px);max-width:330px;top:256px;right:35px}.v2-routine{padding:14px 17px;border-radius:15px;transform:rotate(-2deg)}.v2-routine-title{padding-bottom:10px}.v2-routine-title b{font-size:13px}.v2-routine-title small{font-size:9px}.v2-routine-title>i{width:30px;height:30px;font-size:16px}.v2-routine-title>span{display:inline;font-size:8px;padding:4px 6px}.v2-routine>a{padding:8px 0;gap:9px}.v2-routine>a>i{width:27px;height:27px;font-size:14px}.v2-routine>a b{font-size:11px}.v2-routine>a small{font-size:9px}.v2-routine-foot{font-size:9px;padding-top:9px}.v2-routine>a:nth-of-type(4){display:none}
    .v2-hero-tabs{left:16px;right:16px;bottom:17px;gap:5px;overflow-x:auto;scrollbar-width:none}.v2-hero-tabs button{padding:11px 10px;font-size:10px;border-radius:8px;flex:1 0 auto}.v2-hero-tabs button.v2-hero-pause{flex-basis:30px;padding:8px}
    .v2-solutions{padding-top:34px;padding-bottom:30px}.v2-section-heading{margin-bottom:18px;align-items:center;gap:10px}.v2-section-heading small,.v2-list-intro small{font-size:10px}.v2-section-heading h2,.v2-list-intro h2{font-size:23px;margin-top:4px}.v2-section-heading>a{font-size:10px}
    .v2-solution-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v2-solution{min-height:164px;border-radius:16px;padding:17px}.v2-solution-tag{font-size:9px;padding:3px 7px}.v2-solution>i{top:16px;right:15px;font-size:23px}.v2-solution h3{font-size:19px;margin:25px 0 6px}.v2-solution p{font-size:11px;line-height:1.6;padding-right:0;max-width:135px}.v2-solution-arrow{width:22px;height:22px;font-size:14px;bottom:12px;right:12px}
    .v2-list-intro{align-items:start;flex-direction:column;gap:15px;padding-top:28px}.v2-service-tabs a{padding:7px 16px;font-size:12px}
    .v2-page-band{padding:23px 0}.v2-page-band h1{font-size:26px}.v2-page-band p{font-size:12px}
    .v2-theme .v2-home main>.container{padding-inline:20px}.v2-theme .v2-home .business-type-wrap{flex-wrap:nowrap!important;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}.v2-theme .v2-home .main-recruit-card .card-body{padding:18px!important}
    .v2-db-grid{grid-template-columns:1fr;gap:12px}.v2-db-card{padding:20px}.v2-theme .pc-footer{display:block!important;padding:30px 8px!important;margin-top:30px}.v2-theme .pc-footer .container-fluid>.d-flex{flex-wrap:wrap;gap:20px}.v2-theme .pc-footer .py-1{font-size:10px;line-height:1.6}
    .v2-theme main{min-width:0}.v2-theme .offcanvas{max-width:100vw!important}.v2-theme .signature-pad{height:300px}

    .v2-slide-db .v2-hero-copy h2,.v2-slide-community .v2-hero-copy h2{font-size:29px}

    .v2-header-row{height:62px}.v2-cert-popover,.v2-profile-popover,.v2-util .v2-settings{display:none}.v2-alarm-menu{position:fixed;top:62px;right:12px;max-width:calc(100vw - 24px)}.v2-alarm-menu:before{display:none}
}

@media (min-width: 768px) and (max-width: 991.98px) {
    main {
        flex: 1 0 auto;
        min-height: calc(100vh - 54px - 79px);
    }

    .mt_25 {
        height: calc(100vh - 434px) !important;
        margin-top: 0;
    }

    .talent-badge-list .w-100 {overflow: hidden;height:30px}
    .card-body .talent-updated-at {position:unset;justify-content: end;}

    .mobile-only {width: 696px;}
    .pc-footer {display: none !important;}
    .container {margin-bottom: 5rem !important;}

    .header .container-fluid {height: 40px;}

    .v2-slide-db .v2-hero-copy h2,.v2-slide-community .v2-hero-copy h2{font-size:30px}

    .v2-hero-visual{top:42px}
}

@media (min-width: 992px) {
    body.hide-pc-footer .site-footer {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        z-index: 1040 !important;
    }

    body.hide-pc-footer .site-footer.footer-visible {
        transform: translateY(0) !important;
    }

    body.hide-pc-footer main {
        padding-bottom: 90px;
    }

    .offcanvas.offcanvas-bottom:is(#accesagency) {
        top: 52% !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        min-width: 552px !important;
        height: fit-content !important;
        min-height: 552px !important;
        border-radius: 18px !important;
        visibility: visible;
        transform: translate(-50%, -50%) scale(.96) !important;
        transition: transform .18s ease-out, opacity .18s ease-out, visibility .18s ease-out !important;
    }

    #addarea.offcanvas-bottom,
    #hopearea.offcanvas-bottom {
        width: min(820px, calc(100vw - 48px)) !important;
        /*max-width: 820px !important;*/
        height: auto !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 48px) !important;
        top: 24px !important;
        bottom: auto !important;
        left: 50% !important;
        right: auto !important;
        border-radius: 22px !important;
        transform: translate(-50%, calc(100dvh + 24px)) !important;
    }

    #addarea.offcanvas-bottom.show,
    #addarea.offcanvas-bottom.showing,
    #hopearea.offcanvas-bottom.show,
    #hopearea.offcanvas-bottom.showing {
        height: auto !important;
    }

    #addarea.offcanvas-bottom.hiding,
    #hopearea.offcanvas-bottom.hiding {
        /*transform: translate(-50%, calc(100dvh + 24px)) !important;*/
    }recruit

    #addarea .offcanvas-body,
    #hopearea .offcanvas-body {
        max-height: calc(100dvh - 116px);
        overflow-y: auto;
        padding: 28px 48px 32px !important;
    }

    #addarea .offcanvas-header,
    #hopearea .offcanvas-header {
        padding: 24px 48px 0;
    }

    #addarea .wrap,
    #hopearea .wrap {
        max-width: none;
    }

    #addarea .wrap .card,
    #hopearea .wrap .card {
        border: 0;
        box-shadow: none;
    }

    .container {}
    .mobile-only {width: 1004px !important;}

    .offcanvas {max-width:100% !important;height:80% !important;width:1024px !important;}
    .mobile-only {width: 1004px !important;}
    /*.card-body {min-height:194px;}*/

    .offcanvas:not(#finalAppointmentResultOffCanvas) {}

    .header .container-fluid {height: 40px;}
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    body {
        min-height: 100vh;
        display: flex;
        flex-direction: column;
    }

    main {
        flex: 1 0 auto;
        min-height: calc(100vh - 54px - 79px);
    }
    .offcanvas.offcanvas-bottom:is(#accesagency) {
        top: 52% !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        min-width: 552px !important;
        height: fit-content !important;
        min-height: 552px !important;
        border-radius: 18px !important;
        visibility: visible;
        transform: translate(-50%, -50%) scale(.96) !important;
        transition: transform .18s ease-out, opacity .18s ease-out, visibility .18s ease-out !important;
    }
    .offcanvas {
        position: fixed;
        bottom: 35%;
        z-index: var(--bs-offcanvas-zindex);
        display: flex;
        flex-direction: column;
        max-width: calc(100% / 3);
        margin: 0 auto;
        color: var(--bs-offcanvas-color);
        visibility: hidden;
        background-color: var(--bs-offcanvas-bg);
        background-clip: padding-box;
        outline: 0;
        transition: var(--bs-offcanvas-transition);
        border-radius: 16px;
    }

    #accesapplication,
    #resumelistmenu {
        top: calc(60% / 2) !important;
        width: 450px !important;
        height: 285px !important;
    }

    .footer-btn-group {
        position: fixed;
    }

    .mt_25 {
        height: calc(100vh - 434px) !important;
        margin-top: 0;
    }

    .wrap {
        max-width: 100% !important;
    }

    .card-body .talent-updated-at {position:unset;justify-content: end;}

    .main-nav { gap: 0; }
    .nav-link { padding-inline: 9px; font-size: 14px; }
    .header-actions .company-auth { display: none; }
    .guide-layout { grid-template-columns: minmax(0, 1fr) 270px; }

    .persona-grid {grid-template-columns: 1fr;}
    .ai-card {position: relative;border-radius: 24px;isolation: isolate;width: 100%}
    .hero {min-height: 230px;}

    .mobile-only {width: 935px;}
    .pc-footer {display: none !important;}
    .container {margin-bottom: 10rem !important;}

/*.card-body {min-height:245px;}*/

    .moregnb {display:block !important;}
    .hiddengnb {display:none !important;}
    .storebtngnbSub {display: none;}

    .v2-subpage-frame {
        grid-template-columns:minmax(0, 1fr);
        padding-top: 24px
    }

    .v2-subpage-frame > .v2-subnav {
        display: none
    }

    .v2-reference-home .mn .mn-sec {
        padding-top: 80px
    }

    .v2-reference-home .v2-hero-stage {
        height: 500px
    }

    .v2-reference-home .v2-hero-visual {
        top: 45px;
        width: 40%
    }

    .v2-settings-document .my-doc {
        grid-template-columns: minmax(0, 1fr);
    }

    .v2-settings-document .my-tocsel {
        top: 72px;
    }

    .v2-prototype .mn .mn-sec {
        padding-top: 84px
    }

    .v2-prototype .mn-head {
        margin-bottom: 28px
    }

    .v2-prototype .mn-head h2 {
        font-size: 29px
    }

    .v2-prototype .mn-head p {
        font-size: 15.5px
    }

    .v2-prototype .mn-hero {
        padding: 12px 20px 0
    }

    .v2-prototype .mn-hero-in {
        border-radius: 28px;
        --px: 44px
    }

    .v2-prototype .mn-copy h1 {
        font-size: 50px
    }

    .v2-prototype .mn-slide.s5 .mn-copy h1 {
        font-size: 44px
    }

    .v2-prototype .mn-copy {
        top: 84px;
        max-width: 500px
    }

    .v2-prototype .mn-vis {
        width: 440px;
        scale: .92;
        transform-origin: 100% 0
    }

    .v2-prototype .mn-solgrid {
        gap: 14px
    }

    .v2-prototype .mn-sol {
        min-height: 206px;
        padding: 22px 22px 24px;
        border-radius: 22px
    }

    .v2-prototype .mn-stx b {
        font-size: 19px
    }

    .v2-prototype .mn-stx span {
        font-size: 14px;
        padding-right: 46px
    }

    .v2-prototype .mn-sar {
        right: 18px;
        bottom: 22px;
        width: 38px;
        height: 38px
    }

    .v2-prototype .mn-ad {
        min-height: 206px;
        padding: 24px;
        border-radius: 22px
    }

    .v2-prototype .mn-ad b {
        font-size: 20px
    }

    .v2-prototype .mn-igrid {
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        gap: 18px
    }

    .v2-prototype .mn-box {
        padding: 20px 22px
    }

    .v2-prototype .mn-tabs {
        gap: 14px
    }

    .v2-prototype .mn-tabs a {
        font-size: 15px;
        white-space: nowrap
    }

    .v2-prototype .mn-igrid > .mn-sad {
        grid-column: 1/-1;
        min-height: 132px
    }

    .v2-prototype .mn-board {
        grid-column: 1/-1;
        padding: 24px 24px 22px
    }

    .v2-prototype .mn-side {
        grid-column: 1/-1;
        display: grid;
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        gap: 18px;
        align-items: stretch
    }

    .v2-prototype .mn-side > .mn-box:first-child {
        grid-row: 1/3
    }

    .v2-prototype .mn-bans {
        grid-column: 1/-1
    }

    .v2-prototype .mn-today {
        grid-column: 1/-1
    }

    .v2-prototype .mn-today .mn-tds {
        display: grid;
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr)
    }

    .v2-prototype .mn-bdh h3 {
        font-size: 22px
    }

    .v2-prototype .mn-th, .v2-prototype .mn-tr {
        grid-template-columns:64px minmax(0, 1fr) 96px 180px 92px;
        gap: 12px
    }

    .v2-prototype .mn-tbl.jb .mn-th, .v2-prototype .mn-tbl.jb .mn-tr {
        grid-template-columns:64px minmax(0, 1fr) 96px 180px 92px 30px
    }

    .v2-prototype .mn-how {
        gap: 14px
    }

    .v2-prototype .mn-hbox {
        padding: 22px;
        border-radius: 22px
    }

    .v2-prototype .mn-co {
        grid-template-columns:260px minmax(0, 1fr);
        gap: 28px;
        padding: 32px;
        border-radius: 26px
    }

    .v2-prototype .mn-logos {
        grid-template-columns:repeat(4, minmax(0, 1fr))
    }

    .v2-prototype .mn-logo b {
        text-wrap: balance
    }

    .v2-prototype .mn-with {
        margin-top: 84px
    }

    .v2-prototype .mn-with .wrap {
        grid-template-columns:minmax(0, 1fr) 340px;
        gap: 36px;
        padding-top: 64px;
        padding-bottom: 64px
    }

    .v2-prototype .mn-wl h2 {
        font-size: 30px
    }

    .v2-prototype .lg-grid {
        grid-template-columns:300px minmax(0, 1fr)
    }

    .v2-prototype .lg-fv > b {
        display: flex
    }

    .v2-prototype .tl {
        grid-template-columns:minmax(0, 1fr);
        gap: 28px
    }

    .v2-prototype .tl-rail {
        position: static;
        display: grid;
        grid-template-columns:1fr 1fr;
        padding-top: 0
    }

    .v2-prototype .tl-rail .mn-sad {
        height: 150px !important
    }

    .v2-prototype .tl-tabs {
        top: 64px;
        z-index: 31;
        margin: 0 -20px;
        padding: 10px 20px;
        gap: 8px;
        border-bottom: 1px solid var(--line2);
        overflow-x: auto;
        scrollbar-width: none
    }

    .v2-prototype .tl-tabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .tl-tabs a {
        height: 42px;
        border-radius: 999px;
        font-size: 14.5px;
        white-space: nowrap;
        padding: 0 16px
    }

    .v2-prototype .tl-tabs a.on {
        box-shadow: none
    }

    .v2-prototype .tl-blk {
        grid-template-columns:210px minmax(0, 1fr);
        gap: 24px;
        padding: 30px 26px 30px 30px;
        border-radius: 24px;
        scroll-margin-top: 130px
    }

    .v2-prototype .tl-bt h3 {
        font-size: 25px
    }

    .v2-prototype .card.my-prof {
        flex-wrap: wrap;
        gap: 14px 16px;
        padding: 20px
    }

    .v2-prototype .my-prof .who2 {
        flex: 1 1 calc(100% - 84px)
    }

    .v2-prototype .my-prof .meta {
        flex-wrap: wrap;
        white-space: normal;
        row-gap: 2px
    }

    .v2-prototype .my-lic {
        flex: 1 1 300px;
        min-width: 0
    }

    .v2-prototype .my-pt {
        flex: 0 0 200px;
        min-width: 0
    }

    .v2-prototype .my-acts .card {
        padding: 18px 18px 8px
    }

    .v2-prototype .my-ptop .card {
        padding: 18px
    }

    .v2-prototype .my-ptop .big {
        font-size: 24px
    }

    .v2-prototype .my-ptop .grade {
        font-size: 17px
    }

    .v2-prototype .my-doc {
        grid-template-columns:1fr;
        gap: 12px
    }

    .v2-prototype .my-toc {
        display: none
    }

    .v2-prototype .my-tocsel {
        display: flex;
        align-items: center;
        gap: 10px;
        background: var(--bg);
        border-radius: 14px;
        padding: 8px 8px 8px 14px;
        position: sticky;
        top: 123px;
        z-index: 25;
        box-shadow: 0 6px 14px -10px rgba(14, 18, 26, .35)
    }

    .v2-prototype .my-tocsel > span {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-size: 14px;
        font-weight: 700;
        color: var(--g2);
        white-space: nowrap
    }

    .v2-prototype .my-tocsel > span .ic {
        width: 16px;
        height: 16px
    }

    .v2-prototype .my-tocsel select {
        flex: 1;
        min-width: 0;
        height: 42px;
        background-color: #fff
    }

    .v2-prototype .my-legal {
        padding: 24px
    }

    .v2-prototype .my-legal h3, .v2-prototype .my-legal h4 {
        scroll-margin-top: 200px
    }

    .v2-prototype .my-iq .card {
        min-height: 0
    }

    .v2-prototype .my-capp {
        grid-template-columns:1fr
    }

    .v2-prototype .my-capp .side {
        position: static
    }

    .v2-prototype .my-capp .side ol {
        flex-direction: row;
        gap: 10px
    }

    .v2-prototype .my-capp .side li {
        flex: 1
    }

    .v2-prototype .my-capp .side .btn.blk {
        display: inline-flex;
        width: auto;
        margin-right: 6px
    }

    .v2-prototype .my-nextbar .btn.f2 {
        min-width: 0;
        flex: 1
    }

    .v2-prototype .my-donep .wbtn {
        min-width: 280px
    }

    .v2-prototype .rc-detail {
        grid-template-columns:minmax(0, 1fr);
        gap: 0
    }

    .v2-prototype .rc-side {
        position: static;
        order: -1;
        margin-bottom: 6px
    }

    .v2-prototype .card.rc-scard {
        display: grid;
        grid-template-columns:minmax(0, 1fr) 220px;
        column-gap: 20px;
        row-gap: 8px;
        align-items: start
    }

    .v2-prototype .rc-scard > * {
        grid-column: 1;
        width:100%;
    }

    .v2-prototype .rc-scard > .btn, .v2-prototype .rc-scard > p.xs {
        grid-column: 2
    }

    .v2-prototype .rc-scard > .btn.lg {
        grid-row: 1/span 2
    }

    .v2-prototype .rc-scard > [data-ask] {
        grid-row: 3
    }

    .v2-prototype .rc-scard > .rc-bmb {
        grid-row: 4
    }

    .v2-prototype .rc-scard > p.xs {
        grid-row: 5
    }

    .v2-prototype .rc-scard > :nth-child(1) {
        grid-row: 1
    }

    .v2-prototype .rc-scard > :nth-child(2) {
        grid-row: 2
    }

    .v2-prototype .rc-scard > :nth-child(3) {
        grid-row: 3
    }

    .v2-prototype .rc-scard > :nth-child(4) {
        grid-row: 4;
        align-self: end
    }

    .v2-prototype .card.rc-share {
        display: none
    }

    .v2-prototype .rc-snav {
        top: 118px
    }

    .v2-prototype .rc-sec {
        scroll-margin-top: 180px
    }

    .v2-prototype .rc-subs-g {
        grid-template-columns:repeat(7, minmax(0, 1fr));
        gap: 6px
    }

    .v2-prototype .rc-st {
        padding: 10px 4px 8px
    }

    .v2-prototype .rc-st small {
        font-size: 11.5px
    }

    .v2-prototype .rc-st b {
        font-size: 21px
    }

    .v2-prototype .rc-st span {
        font-size: 14px;
        letter-spacing: -.02em
    }

    .v2-prototype .rc-wr {
        grid-template-columns:minmax(0, 1fr) 150px auto;
        gap: 16px;
        padding: 18px
    }

    .v2-prototype .rc-wr-l {
        padding-right: 14px
    }

    .v2-prototype .rc-filt .filt {
        grid-template-columns:64px minmax(0, 1fr)
    }

    .v2-prototype .jb-qc {
        min-height: 170px;
        padding: 18px
    }

    .v2-prototype .jb-kind {
        padding: 18px;
        min-height: 0
    }

    .v2-prototype .jb-kind h4 {
        font-size: 16px
    }

    .v2-prototype .jb-sech {
        margin: 28px 0 12px
    }

    .v2-prototype .jb-srch .search {
        max-width: none
    }

    .v2-prototype .jb-head {
        flex-wrap: wrap
    }

    .v2-prototype .jb-stepcard {
        padding: 20px 18px 16px
    }

    .v2-prototype .jb-stepcard .steps .st span {
        font-size: 14px;
        line-height: 1.35;
        padding: 0 2px;
        word-break: keep-all
    }

    .v2-prototype .jb-row {
        grid-template-columns:40px 1fr 130px 84px 96px;
        gap: 12px;
        padding: 14px 16px
    }

    .v2-prototype .jb-res {
        grid-template-columns:1fr 150px auto;
        gap: 16px;
        padding: 16px 18px
    }

    .v2-prototype .jb-filt .search {
        min-width: 180px !important
    }

    .v2-prototype .ap-mx {
        padding: 18px 18px 16px
    }

    .v2-prototype .ap-mxs {
        overflow-x: auto;
        scrollbar-width: thin
    }

    .v2-prototype .ap-mxt thead th:first-child {
        width: 60px
    }

    .v2-prototype .ap-n {
        min-width: 38px
    }

    .v2-prototype .ap-jl .hd, .v2-prototype .ap-jr {
        grid-template-columns:56px minmax(0, 1fr) 92px 170px 60px;
        gap: 12px
    }

    .v2-prototype .ap-jr .logo-ph {
        width: 56px !important;
        height: 40px !important;
        font-size: 14px;
    }

    .v2-prototype .ap-jsub {
        padding-left: 76px
    }

    .v2-prototype .ap-cr {
        grid-template-columns:44px minmax(0, 1fr) 180px 104px 34px;
        gap: 12px;
        padding: 14px
    }

    .v2-prototype .ap-cr .av {
        width: 44px;
        height: 44px
    }

    .v2-prototype .ap-fl {
        max-width: 240px
    }

    .v2-prototype .ap-fl {
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis
    }

    .v2-prototype .ap-cgrid, .v2-prototype .ap-igrid {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype .ap-sticky {
        padding: 0
    }

    .v2-prototype .ap-form {
        max-width: none
    }

    .v2-prototype .ap-fin {
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        grid-template-areas:"tabs tabs" "mock copy";
        gap: 20px;
        padding: 18px;
        min-height: 0
    }

    .v2-prototype .ap-fl-l {
        grid-area: mock;
        padding-bottom: 0;
        gap: 10px
    }

    .v2-prototype .ap-info {
        position: static;
        align-self: flex-start;
        white-space: normal;
        line-height: 1.4;
        border-radius: 12px
    }

    .v2-prototype .ap-copy {
        grid-area: copy
    }

    .v2-prototype .ap-tabs {
        grid-area: tabs;
        flex-direction: row;
        overflow-x: auto;
        scrollbar-width: none;
        gap: 8px;
        margin: 0 -4px;
        padding: 2px 4px 4px
    }

    .v2-prototype .ap-tabs::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .ap-tab {
        flex: 1 0 auto;
        padding: 8px 14px 8px 8px;
        border-radius: 999px;
        white-space: nowrap
    }

    .v2-prototype .ap-tab .ti {
        width: 30px;
        height: 30px;
        border-radius: 50%
    }

    .v2-prototype .ap-tab small {
        display: none
    }

    .v2-prototype .ap-ctag {
        height: auto;
        min-height: 28px;
        padding: 4px 12px;
        line-height: 1.3
    }

    .v2-prototype .ap-copy h2 {
        font-size: 23px
    }

    .v2-prototype .ds-filt .search.ds-cs {
        width: 180px
    }

    .v2-prototype .ds-head {
        padding: 22px 22px;
        gap: 20px
    }

    .v2-prototype .ds-title {
        font-size: 22px
    }

    .v2-prototype .ds-cert {
        padding: 22px 22px
    }

    .v2-prototype .ds-sec {
        padding: 22px 20px
    }

    .v2-prototype .lp-hero {
        padding: 36px 32px 32px
    }

    .v2-prototype .lp-hero h2 {
        font-size: 38px
    }

    .v2-prototype .lp-form, .v2-prototype .lp-msg {
        padding-left: 32px;
        padding-right: 32px
    }

    .v2-prototype .lp-fine {
        padding: 20px 32px 26px
    }

    .v2-prototype .ds-docs {
        grid-template-columns:repeat(2, 1fr)
    }

    .v2-prototype .ds-share {
        gap: 20px
    }

    .v2-prototype .ds-bar .btn.ds-cta {
        min-width: 170px
    }

    .v2-prototype .ds-tbar {
        gap: 16px;
        padding: 14px 20px
    }

    .v2-prototype .ds-oi {
        gap: 12px
    }

    .v2-prototype .dw > header.dw-hd {
        display: block;
        padding: 0;
        border-bottom: 0;
        background: linear-gradient(180deg, #0F3B35 0%, #0B302B 100%);
        position: sticky;
        top: 0;
        z-index: 40;
        justify-content: normal
    }

    .v2-prototype .dw > header.dw-hd .dw-home img {
        height: 16px
    }

    .v2-prototype .dw-filt .dw-q {
        display: block
    }

    .v2-prototype .dw-in {
        padding: 0 20px
    }

    .v2-prototype .dw-checks {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype .dw-flds {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype .dw-f.s2 {
        grid-column: 1/-1
    }

    .v2-prototype .dw-fr {
        grid-template-columns:36px 84px minmax(0, 1fr) 78px 92px 70px
    }

    .v2-prototype .dw-fr.rv {
        grid-template-columns:36px 84px minmax(0, 1fr) 72px 84px 70px
    }

    .v2-prototype .dw-s3 {
        grid-template-columns:minmax(0, 1fr) 250px
    }

    .v2-prototype .do-trh {
        grid-template-columns:minmax(0, 1.2fr) minmax(0, 1fr);
        padding: 28px
    }

    .v2-prototype .do-trh h2 {
        font-size: 24px
    }

    .v2-prototype .do-flow {
        grid-template-columns:repeat(5, minmax(0, 1fr));
        gap: 8px
    }

    .v2-prototype .do-flow > div {
        padding: 16px 12px
    }

    .v2-prototype .do-adsel {
        width: 300px
    }

    .v2-prototype .do-sum {
        bottom: 10px
    }

    .v2-prototype .do-set {
        grid-template-columns:minmax(0, 1.1fr) minmax(0, 1fr)
    }

    .v2-prototype .do-tc {
        padding: 22px
    }

    .v2-prototype .do-tc .big {
        font-size: 36px
    }

    .v2-prototype .do-tables {
        grid-template-columns:1fr 1fr;
        gap: 20px 14px
    }

    .v2-prototype .do-att {
        grid-template-columns:220px minmax(0, 1fr)
    }

    .v2-prototype .dr-my {
        grid-template-columns:1.15fr 1fr 1fr;
        gap: 10px
    }

    .v2-prototype .dr-mem {
        padding: 16px;
        min-height: 0
    }

    .v2-prototype .dr-mem > b {
        font-size: 15px
    }

    .v2-prototype .dr-ml {
        padding: 12px 12px 6px
    }

    .v2-prototype .dr-ml a {
        font-size: 13px
    }

    .v2-prototype .dr-tool {
        gap: 10px
    }

    .v2-prototype .dr-tool .search {
        width: 220px;
        flex: none
    }

    .v2-prototype .dr-row {
        grid-template-columns:minmax(0, 1fr) 120px auto;
        gap: 16px;
        padding: 16px 14px 16px 18px
    }

    .v2-prototype .dr-rt {
        padding-right: 16px
    }

    .v2-prototype .dr-edw {
        grid-template-columns:minmax(0, 1fr);
        gap: 12px
    }

    .v2-prototype .dr-aside {
        order: -1;
        position: sticky;
        top: 121px;
        z-index: 25;
        gap: 0
    }

    .v2-prototype .dr-rq {
        padding: 0;
        border-radius: 14px;
        box-shadow: 0 6px 18px rgba(16, 24, 40, .07);
        overflow: hidden
    }

    .v2-prototype .dr-rq h4 {
        margin: 0;
        padding: 12px 16px;
        cursor: pointer;
        font-size: 14px;
        user-select: none;
        min-height: 46px
    }

    .v2-prototype .dr-rq h4 em {
        font-size: 14px;
        background: var(--g-l);
        padding: 2px 9px;
        border-radius: 999px
    }

    .v2-prototype .dr-rq h4:after {
        content: "";
        width: 8px;
        height: 8px;
        border-right: 2px solid var(--sub);
        border-bottom: 2px solid var(--sub);
        transform: rotate(45deg);
        margin: -4px 2px 0 6px;
        transition: transform .2s;
        flex: none
    }

    .v2-prototype .dr-aside.open .dr-rq h4:after {
        transform: rotate(-135deg);
        margin-top: 4px
    }

    .v2-prototype .dr-rq ul {
        display: none;
        grid-template-columns:repeat(3, minmax(0, 1fr));
        gap: 2px 8px;
        padding: 4px 12px 12px;
        border-top: 1px solid var(--line2)
    }

    .v2-prototype .dr-aside.open .dr-rq ul {
        display: grid
    }

    .v2-prototype .dr-rq li {
        min-height: 38px
    }

    .v2-prototype .dr-rq li.sep {
        grid-column: 1/-1;
        margin-top: 4px
    }

    .v2-prototype .dr-tip {
        display: none;
        border-radius: 0 0 14px 14px;
        margin-top: -10px;
        padding-top: 20px;
        position: relative;
        z-index: -1
    }

    .v2-prototype .dr-aside.open .dr-tip {
        display: block
    }

    .v2-prototype .dr-sec, .v2-prototype .dr-agree {
        scroll-margin-top: 190px
    }

    .v2-prototype .fsec.dr-sec {
        padding: 20px
    }

    .v2-prototype .dr-g4 {
        grid-template-columns:1fr 1fr .6fr .6fr
    }

    .v2-prototype .dr-buy {
        gap: 10px
    }

    .v2-prototype .dr-bc {
        padding: 12px
    }

    .v2-prototype .dr-bc-art svg {
        width: 160px;
        height: auto
    }

    .v2-prototype .dr-done {
        grid-template-columns:minmax(0, 1fr);
        max-width: 640px;
        margin: 0 auto
    }

    .v2-prototype .dr-next {
        display: grid;
        grid-template-columns:1fr 1fr;
        gap: 4px 8px
    }

    .v2-prototype .dr-next h4 {
        grid-column: 1/-1
    }

    .v2-prototype .dr-pvg {
        grid-template-columns:minmax(0, 1fr) 230px
    }

    .v2-prototype .cm-seg {
        display: none
    }

    .v2-prototype .cm-grid3 {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype .cm-ptgrid {
        grid-template-columns:repeat(3, minmax(0, 1fr))
    }

    .v2-prototype .cm-tiles {
        grid-template-columns:repeat(6, minmax(0, 1fr))
    }

    .v2-prototype .cm-doc {
        padding: 24px 24px 20px
    }

    .v2-prototype .cm-att-l {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .v2-prototype table.t.cm-tbl col:nth-child(2) {
        width: 150px !important
    }

    .v2-prototype .cm-qh, .v2-prototype .cm-qr {
        grid-template-columns:minmax(0, 1fr) 72px 150px 70px;
        gap: 10px
    }

    .v2-prototype .cm-about {
        padding: 72px 32px 88px
    }

    .v2-prototype .cm-about h2 {
        font-size: 38px
    }

    .v2-prototype .cm-tile.fav .cm-tdel {
        display: flex
    }

    .v2-prototype .cm-go {
        display: none
    }

    .v2-prototype .cm-jsbar {
        flex-wrap: wrap
    }

    .v2-prototype .wrap {
        padding: 0 20px
    }

    .v2-prototype #hd .wrap {
        height: 64px;
        gap: 16px
    }

    .v2-prototype #hd .lg img {
        height: 24px
    }

    .v2-prototype .gnb, .v2-prototype .util, .v2-prototype #mega, .v2-prototype #mega-dim {
        display: none !important
    }

    .v2-prototype .mtop {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-left: auto
    }

    .v2-prototype .ham {
        width: 40px;
        height: 40px;
        border: 0;
        background: var(--bg);
        border-radius: 12px;
        display: inline-flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 4px
    }

    .v2-prototype .ham i {
        display: block;
        width: 18px;
        height: 2px;
        border-radius: 2px;
        background: var(--ink)
    }

    .v2-prototype #drawer {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 250
    }

    .v2-prototype #drawer .drw-dim {
        position: absolute;
        inset: 0;
        background: rgba(14, 18, 26, .45);
        opacity: 0;
        transition: opacity .25s
    }

    .v2-prototype #drawer .drw {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: min(400px, 88vw);
        background: #fff;
        overflow: auto;
        transform: translateX(100%);
        transition: transform .28s cubic-bezier(.2, .8, .3, 1);
        display: flex;
        flex-direction: column;
        padding-bottom: 24px
    }

    .v2-prototype #drawer.on .drw-dim {
        opacity: 1
    }

    .v2-prototype #drawer.on .drw {
        transform: none
    }

    .v2-prototype .drw-hd {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 16px 18px;
        border-bottom: 1px solid var(--line2);
        position: sticky;
        top: 0;
        background: #fff;
        z-index: 1
    }

    .v2-prototype .drw-hd img {
        height: 22px
    }

    .v2-prototype .drw-hd .x {
        width: 36px;
        height: 36px;
        border-radius: 50%;
        border: 0;
        background: var(--bg);
        display: inline-flex;
        align-items: center;
        justify-content: center
    }

    .v2-prototype .drw-me {
        margin: 16px 18px 0;
        padding: 16px;
        border-radius: 16px;
        background: var(--g-ll);
        display: flex;
        flex-direction: column;
        gap: 12px
    }

    .v2-prototype .drw-q {
        display: grid;
        grid-template-columns:repeat(4, 1fr);
        gap: 6px
    }

    .v2-prototype .drw-q a, .v2-prototype .drw-q2 a {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 4px;
        font-size: 14px;
        font-weight: 600;
        padding: 10px 4px;
        border-radius: 12px;
        background: #fff;
        position: relative;
        text-align: center
    }

    .v2-prototype .drw-q a .badge-n {
        position: absolute;
        top: 4px;
        right: 6px
    }

    .v2-prototype .drw-q2 {
        display: grid;
        grid-template-columns:repeat(3, 1fr);
        gap: 6px;
        margin: 10px 18px 0
    }

    .v2-prototype .drw-q2 a {
        background: var(--bg)
    }

    .v2-prototype .drw-nav {
        margin-top: 10px
    }

    .v2-prototype .drw-nav details {
        border-bottom: 1px solid var(--line2)
    }

    .v2-prototype .drw-nav summary {
        list-style: none;
        padding: 17px 22px;
        font-size: 17px;
        font-weight: 800;
        display: flex;
        align-items: center;
        cursor: pointer
    }

    .v2-prototype .drw-nav summary::-webkit-details-marker {
        display: none
    }

    .v2-prototype .drw-nav summary:after {
        content: "";
        margin-left: auto;
        width: 8px;
        height: 8px;
        border-right: 2px solid var(--sub);
        border-bottom: 2px solid var(--sub);
        transform: rotate(45deg);
        transition: transform .2s
    }

    .v2-prototype .drw-nav details[open] summary {
        color: var(--g)
    }

    .v2-prototype .drw-nav details[open] summary:after {
        transform: rotate(-135deg)
    }

    .v2-prototype .drw-g {
        padding: 0 22px 12px
    }

    .v2-prototype .drw-g small {
        display: block;
        font-size: 14px;
        font-weight: 700;
        color: var(--g2);
        margin: 4px 0 4px
    }

    .v2-prototype .drw-g a {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px 4px;
        font-size: 15px;
        font-weight: 600;
        color: var(--ink2)
    }

    .v2-prototype .drw-out {
        margin: 18px 22px 0;
        color: var(--sub);
        font-size: 14px
    }

    .v2-prototype .nbar .wrap {
        gap: 18px
    }

    .v2-prototype .nbar a:nth-child(n+2):not(.more) {
        display: none
    }

    .v2-prototype .nbar a {
        overflow: hidden;
        text-overflow: ellipsis;
        min-width: 0
    }

    .v2-prototype .band .wrap {
        min-height: 0;
        padding-top: 22px;
        padding-bottom: 22px;
        flex-wrap: wrap;
        gap: 16px
    }

    .v2-prototype .band h1 {
        font-size: 28px
    }

    .v2-page-band .v2-wrap .side, .v2-prototype .band .side {
        margin-left: 0;
        width: 100%;
        overflow-x: auto;
        padding-bottom: 4px;
        scrollbar-width: none
    }

    .v2-prototype .band .side::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .qcard {
        flex: none
    }

    .v2-prototype .body {
        display: block;
        padding-top: 0;
        padding-bottom: 70px
    }

    .v2-prototype .lnb {
        position: sticky;
        top: 64px;
        z-index: 30;
        width: auto;
        flex-direction: row;
        gap: 6px;
        overflow-x: auto;
        margin: 0 -20px 20px;
        padding: 10px 20px;
        background: rgba(255, 255, 255, .96);
        backdrop-filter: blur(8px);
        border-bottom: 1px solid var(--line2);
        scrollbar-width: none
    }

    .v2-prototype .lnb::-webkit-scrollbar {
        display: none
    }

    .v2-prototype .lnb .box {
        display: flex;
        gap: 6px;
        padding: 0;
        background: none;
        border-radius: 0;
        flex: none
    }

    .v2-prototype .lnb .box h4 {
        display: none
    }

    .v2-prototype .lnb a, .v2-prototype .lnb a.wr {
        flex: none;
        padding: 8px 14px;
        border-radius: 999px;
        background: var(--bg);
        font-size: 14px;
        white-space: nowrap
    }

    .v2-prototype .lnb a.wr svg {
        width: 14px;
        height: 14px
    }

    .v2-prototype .lnb a.prep:after {
        display: none
    }

    .v2-prototype .lnb a .badge-n {
        margin-left: 4px
    }

    .v2-prototype .main {
        min-width: 0
    }

    .v2-prototype .grid4 {
        grid-template-columns:repeat(2, 1fr)
    }

    .v2-prototype .dbgrid {
        grid-template-columns:repeat(2, 1fr)
    }

    .v2-prototype .kpis {
        grid-template-columns:repeat(2, 1fr)
    }

    .v2-prototype .kpis > div:nth-child(2) {
        border-right: 0
    }

    .v2-prototype .kpis > div:nth-child(-n+2) {
        border-bottom: 1px solid var(--line2)
    }

    .v2-prototype .jl .hd, .v2-prototype .jl .it {
        grid-template-columns:56px 1fr 110px 150px 40px
    }

    .v2-prototype .jl .hd > span:nth-child(5), .v2-prototype .jl .it > .due {
        display: none
    }

    .v2-prototype .pbox.lg, .v2-prototype .pbox.xl {
        width: 94vw
    }

    .v2-prototype #ft .top {
        flex-wrap: wrap;
        gap: 20px
    }

    .v2-prototype #ft .links {
        margin-left: 0;
        justify-content: flex-start
    }

    .v2-prototype .fbanner .wrap {
        height: auto;
        padding-top: 22px;
        padding-bottom: 22px;
        gap: 14px;
        flex-wrap: wrap
    }

    .v2-prototype .fbanner .btn {
        margin-left: 0
    }

    .v2-prototype .savebar {
        bottom: 0
    }

    .v2-prototype .qside {
        display: none
    }

    .v2-prototype #dev {
        left: 12px;
        bottom: 16px
    }

    .v2-prototype #dev .fab {
        width: 40px;
        height: 40px;
        padding: 0;
        justify-content: center;
        border-radius: 50%;
        font-size: 0;
        gap: 0
    }

    .v2-prototype #dev .fab i {
        width: 10px;
        height: 10px
    }

    .v2-desktop-nav{display:none}.v2-header-row{height:70px;justify-content:space-between;gap:20px}.v2-hamburger{display:flex}
    .v2-theme .v2-bottom-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:10002;justify-content:space-around;background:#fffffff5;backdrop-filter:blur(16px);border-top:1px solid var(--v2-line);padding:8px 12px calc(8px + env(safe-area-inset-bottom));margin:0}
    .v2-bottom-nav a{display:flex;align-items:center;flex-direction:column;gap:3px;min-width:50px;color:#919a95;font-size:10px;font-weight:600;padding:3px 10px;border-radius:10px}
    .v2-bottom-nav a i{font-size:21px;line-height:1.3}.v2-bottom-nav a.is-active{color:var(--v2-green);background:#e7f3f070}
    .v2-theme body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
    .v2-theme .mobile-footer:has(.footernextbtn:not(.d-none),.footerfinalbtns:not(.d-none)){bottom:calc(65px + env(safe-area-inset-bottom))!important}
    .v2-hero-stage{height:490px;border-radius:24px}.v2-hero-copy{left:5%;top:65px;max-width:52%}.v2-hero-copy h1,.v2-hero-copy h2{font-size:42px}.v2-hero-copy p{font-size:14px;max-width:290px}.v2-hero-visual{right:4%;top:65px;width:39%}
    .v2-routine{padding:17px}.v2-routine-title>span{display:none}.v2-routine>a{padding:12px 0}.v2-routine>a b{font-size:12px}
    .v2-hero-tabs{left:5%;right:5%;gap:6px}.v2-hero-tabs button{padding:14px 12px;font-size:12px}.v2-hero-tabs button>span{display:none}
    .v2-solution{padding:22px;min-height:190px}.v2-solution h3{font-size:22px}.v2-solution p{font-size:12px}.v2-solution-grid{gap:12px}
    .v2-db-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

    .v2-theme .quick-floating-menu{display:none!important}

    .v2-slide-db .v2-hero-copy h2,.v2-slide-community .v2-hero-copy h2{font-size:30px}

    .v2-hero-visual{top:42px}

    .v2-header-row{height:70px}.v2-popover .v2-hov-menu{z-index:10005}.v2-menu-dim{display:none}
}

@media (min-width: 1200px) {
    .footer-btn-group {
        position: fixed;
    }

    #accesapplication,
    #resumelistmenu {
        top: calc(60% / 2) !important;
        width: 450px !important;
        height: 285px !important;
    }

    .offcanvas .offcanvas-body div,
    .offcanvas .offcanvas-body h6 {}

    .form-check .form-check-input {
        margin: 10px 0 !important;
    }

    .form-check label {
        margin: 5px 0 5px 5px !important;
    }

    .container.container-lg div:not(.db-buy-line, .db-buy-point, .db-buy-row, .thermo, .thermo-fill, .thermo-bulb, .thermo-text, .track, .knob, .badge, .btn, .card, .thermo-bulb-fill, .progress-wrap.mobile-only, .progress-bar, .labels, .subinfodiv, .rounded-full, .topsearch, .search-box, .search-box div, .selected-check-list) {
        padding-top: 1px;
    }

    .offcanvas.offcanvas-bottom:not(#accesapplication, #resumelistmenu, #recruitchat, #addrecuit, #adderesume, #addassoc, #addeedu, #adderesume, #imageeditor,
     #accesagency, #resumeFileOffCanvas)) {
        height: 490px !important;
        min-height: 490px !important;
        top: calc(50% / 2);
    }

    .offcanvas {
        max-width: 100% !important;
        height: 80% !important;
        width: 1024px !important;
        top: 5%;
    }
    .offcanvas:not(.show) {visibility: hidden !important;pointer-events: none !important;}

    .mobile-only {width: 1117px;bottom: 78px;border-bottom: 0;border-radius: 14px 14px 0 0;}
    .pc-footer {display: none !important;}
    .container {margin-bottom: 10rem !important;}

    .offcanvas.offcanvas-bottom:not(#gaoffcanvas, #accesapplication, #resumelistmenu) {
        height: 35% !important;
        top: 6%;
        width: 460px !important;
        max-width: 1024px !important;
    }
    /*.card-body {min-height:194px;}*/

    .moregnb {display:none !important;}
    .hiddengnb {display:block !important;}
    .storebtngnbSub {display: none;}

    .v2-theme .v2-home .main-recruit-card .card-body{padding:24px!important}
}

@media (min-width: 1200px) and (max-width: 1399.98px) {
    body {
        min-height: 100vh;
        display: flex;
        flex-direction: column;
    }

    main {
        flex: 1 0 auto;
        min-height: calc(100vh - 54px - 79px);
    }

    body:has(.mobile-footer .footernextbtn.d-none):has(.mobile-footer .footerfinalbtns.d-none) main {
        min-height: calc(100vh - 54px);
    }

    .mobile-footer:has(.footernextbtn.d-none):has(.footerfinalbtns.d-none) {
        display: none !important;
    }

    .offcanvas.offcanvas-bottom,
    .offcanvas.offcanvas-bottom.hiding {
        transform: translate(0%, 0%) scale(.96) !important;
    }

    .offcanvas-backdrop {
        transition: opacity .18s linear !important;
    }



    body.modal-offcanvas-desktop .offcanvas.offcanvas-bottom:not(#accesapplication, #resumelistmenu,#addrecuit, #adderesume, #addassoc, #addeedu, #adderesume),
    .offcanvas.offcanvas-bottom:not(#accesapplication, #resumelistmenu, #infopop1, #infopop2, #infopop3, #adderesume, #addassoc, #addeedu, #adderesume, #infooffcanvs, #accesagency) {
        top: 52% !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        min-width: 552px !important;
        height: auto !important;
        min-height: 552px !important;
        border-radius: 18px !important;
        visibility: visible;
        padding-left:20px !important;
        transform: translate(-50%, -50%) scale(.96) !important;
        transition: transform .18s ease-out, opacity .18s ease-out, visibility .0s ease-out !important;
    }
    .offcanvas.offcanvas-bottom:is(#adderesume, #addassoc, #addeedu, #adderesume, #accesagency) {
        top: 52% !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        min-width: 552px !important;
        height: fit-content !important;
        min-height: 552px !important;
        border-radius: 18px !important;
        visibility: visible;
        transform: translate(-50%, -50%) scale(.96) !important;
        transition: transform .18s ease-out, opacity .18s ease-out, visibility .18s ease-out !important;
    }

    body.modal-offcanvas-desktop .offcanvas.offcanvas-bottom.showing:not(#gaoffcanvas, #accesapplication, #resumelistmenu),
    body.modal-offcanvas-desktop .offcanvas.offcanvas-bottom.show:not(#gaoffcanvas, #accesapplication, #resumelistmenu),
    .offcanvas.offcanvas-bottom.showing:not(#gaoffcanvas, #accesapplication, #resumelistmenu),
    .offcanvas.offcanvas-bottom.show:not(#gaoffcanvas, #accesapplication, #resumelistmenu) {
        transform: translate(-50%, -50%) scale(1) !important;
        opacity: 1;
    }

    body.modal-offcanvas-desktop .offcanvas.offcanvas-bottom.hiding:not(#gaoffcanvas, #accesapplication, #resumelistmenu),
    .offcanvas.offcanvas-bottom.hiding:not(#gaoffcanvas, #accesapplication, #resumelistmenu, #infopop1, #infopop2, #infopop3) {
        top: 50% !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        transform: translate(-50%, -50%) scale(.96) !important;
        opacity: 0;
    }

    .offcanvas.offcanvas-bottom:not(#gaoffcanvas, #accesapplication, #resumelistmenu) .offcanvas-body {
        overflow-y: auto;
    }

    .mt_25 {
        height: calc(100vh - 434px) !important;
        margin-top: 0;
    }

    .offcanvas.offcanvas-bottom:not(.show):not(.showing):not(#gaoffcanvas, #accesapplication, #resumelistmenu) {
        transform: translate(-50%, -50%) scale(.96) !important;
    }

    .offcanvas {max-width:1024px !important;height:90% !important;width:860px !important;top:6%;}
    .container {max-width: 1024px !important;}
    .mobile-only {width: 1004px !important;}

    .offcanvas {height:90% !important;width:860px !important;top:6%;}
    .offcanvas .offcanvas-body div:not(.cropper-container, .cropper-container div, .imggroup, .canvas-container), .offcanvas .offcanvas-body h6 {}
    .container {max-width: 1024px !important;}
    .mobile-only {width: 1004px !important;}
    .resume-photo-wrap {padding-right:10% !important;}
}

@media (min-width: 1400px) {
    body {
        min-height: 100vh;
        display: flex;
        flex-direction: column;
    }

    main {
        flex: 1 0 auto;
        min-height: calc(100vh - 54px);
    }

    footer,
    .footer {
        flex-shrink: 0;
        position: static !important;
    }

    .footer {
        height: var(--footer-height);
    }

    .mt_25 {
        height: calc(100vh - 434px) !important;
        margin-top: 0;
    }

    .mobile-footer {
        height: auto !important;
        padding-top:0 !important;
    }

    .mobile-footer:has(.footernextbtn.d-none):has(.footerfinalbtns.d-none) {
        display: none !important;
    }

    .mobile-footer:has(.footernextbtn:not(.d-none)),
    .mobile-footer:has(.footerfinalbtns:not(.d-none)) {
        display: block !important;
        position: fixed !important;
    }

    body.modal-offcanvas-desktop .offcanvas.offcanvas-bottom:not(#accesapplication, #resumelistmenu),
    .offcanvas.offcanvas-bottom:not(#accesapplication, #resumelistmenu, addarea, #recruitchat, #addrecuit, #adderesume, #addassoc, #addeedu, #adderesume, #imageeditor,
     #accesagency, #resumeFileOffCanvas, #ecleanFileOffCanvas, #interviewOfferOffCanvas) {
        top: 52% !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        min-width: 552px !important;
        height: auto;
        max-height: calc(100vh - 80px) !important;
        border-radius: 18px !important;
        visibility: visible;
        transform: translate(-50%, -50%) scale(.96) !important;
        transition: transform .18s ease-out, opacity .18s ease-out, visibility .18s ease-out !important;
    }

    .offcanvas.offcanvas-bottom:is(#adderesume, #addassoc, #addeedu, #adderesume, #finalAppointmentResultOffCanvas, #ecleanFileOffCanvas, #interviewOfferOffCanvas) {
        top: 52% !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        min-width: 552px !important;
        height: fit-content !important;
        min-height: 552px !important;
        border-radius: 18px !important;
        visibility: visible;
        transform: translate(-50%, -50%) scale(.96) !important;
        transition: transform .18s ease-out, opacity .18s ease-out, visibility .18s ease-out !important;
    }

    .offcanvas {max-width:1024px !important;height:80% !important;width:1024px !important;}

    .offcanvas:not(#addarea) {max-width:1024px;width:1024px;top:6%;height:806px !important;min-height:806px !important;max-height:806px !important;}
    .offcanvas.offcanvas-bottom:not(#gaoffcanvas, #accesapplication, #resumelistmenu, #addarea, #recruitfulloffcanvas2, #recruitfulloffcanvas3) {
        width: 1024px !important;
        max-width: 1024px !important;
        top: 6%;
        height: 806px !important;
        min-height: 806px !important;
        max-height: 806px !important;
    }
    .container {}
    .mobile-only {width: 1026px !important;}
    /*button.btn:hover {*/
    /*    background-color: #FFFFFF !important;*/
    /*}*/

    .offcanvas {width:1024px !important;top:6%;height:806px;min-height:806px !important;max-height:806px;}
    .offcanvas .offcanvas-body div:not(.cropper-container, .cropper-container div, .imggroup, .canvas-container), .offcanvas .offcanvas-body h6 {}
    .fulloffcanvas.fulloffcanvas .offcanvas-body div {justify-content: normal !important;}
    .container {max-width: 1024px !important;}
    .mobile-only {width: 1004px !important;}
    .resume-photo-wrap {padding-right:10% !important;}

    .card {
        box-shadow: none !important;
        /*padding:0 10px 10px 10px !important*/
    }
    .footer:has(> .footernextbtn), .footer:has(> .footerfinalbtns) {
        height: 79px;
        padding-top: 13px !important;
        background: #FFFFFF !important;
        justify-items: center;
    }

    .mobile-footer .footernextbtn.d-none,
    .mobile-footer .footerfinalbtns.d-none,
    .mobile-footer .footernavibtn.d-none {
        display: none !important;
    }

    .container {max-width: 1024px !important;}
    .mobile-only {width: 1004px !important;}
}
/* end: media queries */

/* begin: v2 desktop content width and GNB advertisement */
@media (min-width: 1200px) {
    .v2-theme .v2-wrap,
    .v2-theme .v2-prototype .wrap,
    .v2-theme .container,
    .v2-theme .v2-mega-inner {
        width: calc(100% - 48px);
        min-width: 1280px;
        max-width: 1400px !important;
        margin-right: auto;
        margin-left: auto;
    }

    .v2-theme .v2-mg-ad {
        min-width: 260px;
        max-width: none;
        flex: 1 1 260px;
    }
}

.v2-mg-ad > .v2-ad-slide:nth-of-type(1) {
    background: linear-gradient(135deg, #127a6c, #0f1f2a);
}

.v2-mg-ad > .v2-ad-slide:nth-of-type(2) {
    background: linear-gradient(135deg, #b25f00, #0f1f2a);
}

.v2-mg-ad > .v2-ad-slide:nth-of-type(3) {
    background: linear-gradient(135deg, #2f4b7c, #0f1f2a);
}

.v2-mg-ad > .v2-ad-slide:nth-of-type(4) {
    background: linear-gradient(135deg, #0b7285, #0f1f2a);
}

.v2-mg-ad > .v2-ad-slide:nth-of-type(5) {
    background: linear-gradient(135deg, #5340b3, #0f1f2a);
}

.v2-mg-ad > .v2-ad-slide:nth-of-type(6) {
    background: linear-gradient(135deg, #0e6457, #0f1f2a);
}

.v2-mg-ad > .v2-ad-slide:nth-of-type(7) {
    background: linear-gradient(135deg, #495057, #0f1f2a);
}
/* end: v2 desktop content width and GNB advertisement */

/* Resume view, edit and appointment-document pages share one content width. */
.v2-theme .container.resume-page-shell,
.v2-theme form.resume-page-shell {
    width: min(100%, 980px) !important;
    min-width: 0 !important;
    max-width: 980px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}
