*{box-sizing:border-box}
body{margin:0;background:#ebe8e3;color:#222;font-family:Arial,"Apple SD Gothic Neo","Noto Sans KR",sans-serif}
.join-wrap{width:100%;max-width:560px;min-height:100vh;margin:auto;padding:24px 28px;background:#fff;box-shadow:0 0 30px rgba(0,0,0,.08)}
header{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid #eee}
header a{text-decoration:none;color:#777;font-size:13px}
.brand{color:#49321c;font-weight:800}
.step-no{color:#a4773d;font-size:12px;font-weight:bold}
.progress{display:flex;gap:8px;margin-top:20px}
.progress span{height:6px;flex:1;border-radius:10px;background:#ddd}
.progress .on{background:#b6813d}
.content{margin-top:32px}
.eyebrow{color:#ad7a37;font-size:12px;font-weight:bold;letter-spacing:.08em}
h1{margin:5px 0 8px;font-size:25px}
.desc{color:#888;font-size:14px}
.gender-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}
.gender{position:relative;border:1px solid #ddd;border-radius:16px;background:#fafafa;padding:24px;text-align:center;cursor:pointer}
.gender input{position:absolute;opacity:0}
.gender-icon{width:80px;height:80px;margin:auto;display:grid;place-items:center;border-radius:50%;background:#ececec;color:#777;font-size:48px}
.gender strong{display:block;margin-top:15px;font-size:18px}
.gender:has(input:checked){border-color:#b6813d;background:#fff9ef}
.gender:has(input:checked) .gender-icon{background:#b6813d;color:#fff}
.agree{display:flex;gap:12px;margin-top:30px;padding:16px;background:#faf9f7;border:1px solid #e4e4e4;border-radius:12px}
.agree input{width:20px;height:20px;accent-color:#a87538}
.agree strong{display:block;font-size:14px}
.agree small{display:block;margin-top:5px;color:#888;line-height:1.5}
.agreement-list{margin-top:30px;border:1px solid #e4e0da;border-radius:12px;background:#faf9f7;overflow:hidden}
.agreement-row{display:flex;align-items:center;min-height:52px;padding:13px 15px;border-bottom:1px solid #e7e2db;font-size:14px;cursor:pointer}
.agreement-row:last-child{border-bottom:0}
.agreement-row input{flex:0 0 auto;width:20px;height:20px;margin:0 11px 0 0;accent-color:#a87538}
.agreement-row a{color:#6c491f;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.agreement-row span{margin-left:3px}
.agreement-all{background:#f2ece3}
.agreement-all strong{font-size:14px;color:#211b15}
.gold-btn{width:100%;padding:16px;margin-top:24px;border:0;border-radius:12px;background:linear-gradient(90deg,#b47d36,#d6a456,#a96e2e);color:#211509;font-size:17px;font-weight:900;cursor:pointer}
.field{margin-bottom:18px}
.field>label,.field-title{display:block;margin-bottom:8px;font-size:14px;font-weight:bold}
.input{width:100%;padding:12px;border:1px solid #dedede;border-radius:8px;background:#fff;font-size:14px}
.email-row{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:6px;align-items:center}
.at{text-align:center;color:#777;font-weight:bold}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.error{margin:6px 0;color:#d33;font-size:12px;font-weight:bold}
.select-pref{display:flex;justify-content:space-between;align-items:center;width:100%;padding:13px;border:1px solid #ddd;border-radius:8px;background:white;text-align:left}
.select-pref b{color:#a87538}
.back{display:block;width:100%;margin-top:15px;border:0;background:none;color:#888;cursor:pointer}
.modal{display:none;position:fixed;inset:0;z-index:50;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.6)}
.modal.open{display:flex}
.modal-box{width:100%;max-width:480px;padding:20px;background:#fff;border-radius:16px}
.modal-head{display:flex;justify-content:space-between;align-items:center}
.modal-head h2{margin:0;font-size:19px}
.close{width:36px;height:36px;border:0;border-radius:50%;font-size:20px}
.region-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px}
.region-option{position:relative}
.region-option input{position:absolute;opacity:0}
.region-option span{display:block;padding:11px 3px;border:1px solid #ddd;border-radius:8px;text-align:center;font-size:13px;font-weight:bold;cursor:pointer}
.region-option input:checked+span{border-color:#b27d39;background:#fff6e8;color:#87581f}
@media(max-width:600px){.join-wrap{padding:22px 20px}.three{gap:5px}.input{padding:11px 7px}}

/* NOBLE UNIFIED USER THEME V1 */
:root{
    --nd-black:#10100f;
    --nd-charcoal:#282724;
    --nd-gold:#c7a35a;
    --nd-gold-light:#dfc27f;
    --nd-gold-deep:#9b702d;
    --nd-champagne:#efe5d3;
    --nd-ivory:#f8f6f1;
    --nd-paper:#fffdfa;
    --nd-line:#ddd4c5;
    --nd-text:#25221e;
    --nd-subtext:#625b52;
    --nd-muted:#91897e;
    --nd-success:#41695c;
    --nd-danger:#a34b4d;
}
html,body{
    color:var(--nd-text)!important;
    background:#ddd9d1!important;
    font-family:"Pretendard","Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",Arial,sans-serif!important;
    font-size:15px!important;
    line-height:1.55!important;
    letter-spacing:-.08px!important;
}
:is(.wrap,.card,.blocked-page,.chat-page,.guide-page,.join-wrap,.more-page,.notice-page,.payment-page,.profile-wrap,.review-page,.settings-page,.support-page,.point-withdraw-page){
    background:var(--nd-ivory)!important;
}
:is(.blocked-page,.chat-page,.guide-page,.more-page,.notice-page,.payment-page,.review-page,.settings-page,.support-page,.point-withdraw-page){
    box-shadow:0 0 32px rgba(27,22,14,.12)!important;
}
:is(.blocked-header,.chat-header,.guide-header,.more-header,.notice-header,.payment-header,.review-header,.settings-header,.support-header,.withdraw-header){
    min-height:66px!important;
    height:66px!important;
    padding-left:16px!important;
    padding-right:16px!important;
    background:linear-gradient(180deg,#121210 0%,#070706 100%)!important;
    color:var(--nd-gold-light)!important;
    border-bottom:1px solid rgba(199,163,90,.38)!important;
}
:is(.blocked-header,.chat-header,.guide-header,.more-header,.notice-header,.payment-header,.review-header,.settings-header,.support-header,.withdraw-header)>strong,
:is(.blocked-header,.chat-header,.guide-header,.more-header,.notice-header,.payment-header,.review-header,.settings-header,.support-header,.withdraw-header) strong{
    color:var(--nd-gold-light)!important;
    font-size:18px!important;
    font-weight:800!important;
    letter-spacing:-.2px!important;
}
:is(.back,.home,.blocked-back,.blocked-home,.chat-back,.chat-home,.payment-back,.payment-home){
    color:var(--nd-gold)!important;
}
h1,h2,h3,h4,
:is(.section,.panel,.content,.guide-message,.review-detail,.payment-guide,.withdraw-form) strong{
    color:var(--nd-text)!important;
}
h1{font-size:24px!important;line-height:1.38!important}
h2{font-size:19px!important;line-height:1.42!important}
h3{font-size:16px!important;line-height:1.45!important}
p,.desc,.help,small{
    color:var(--nd-subtext);
}
input:not([type=checkbox]):not([type=radio]),
select,
textarea{
    border-color:var(--nd-line)!important;
    background:#fbfaf7!important;
    color:var(--nd-text)!important;
    font-family:inherit!important;
    font-size:14.5px!important;
}
input:not([type=checkbox]):not([type=radio]):focus,
select:focus,
textarea:focus{
    border-color:var(--nd-gold)!important;
    outline:none!important;
    box-shadow:0 0 0 3px rgba(199,163,90,.14)!important;
}
button,a{
    font-family:inherit!important;
}
button:focus-visible,a:focus-visible{
    outline:2px solid var(--nd-gold)!important;
    outline-offset:2px!important;
}
:is(.guide-tabs,.payment-tabs,.support-tabs,.blocked-toolbar){
    background:var(--nd-charcoal)!important;
}
:is(.guide-tabs,.payment-tabs,.support-tabs) :is(a,button){
    color:#aaa49a!important;
    font-size:14px!important;
}
:is(.guide-tabs,.payment-tabs,.support-tabs) :is(a.active,button.active){
    color:var(--nd-gold-light)!important;
    border-bottom-color:var(--nd-gold)!important;
}
:is(.section,.panel,.notice-row,.review-row,.payment-row,.blocked-member,.setting-row,.detail-row){
    border-color:var(--nd-line)!important;
}
:is(.btn,.search-submit,.support-submit,.withdraw-submit,.review-form>button){
    border:1px solid #b58a3d!important;
    border-radius:8px!important;
    background:linear-gradient(180deg,#292621,#11100e)!important;
    color:#e3c27c!important;
    font-size:14px!important;
    font-weight:800!important;
    box-shadow:0 3px 9px rgba(28,22,13,.14)!important;
}
:is(.notice,.payment-guide,.identity-warning,.review-warning,.support-warning){
    border-color:#d9c7a6!important;
    background:linear-gradient(145deg,#fffaf0,#f1e7d5)!important;
    color:#806239!important;
}
:is(.success,.blocked-success,.payment-success){
    background:#edf4f0!important;
    color:var(--nd-success)!important;
}
:is(.error,.review-errors){
    background:#f8ecec!important;
    color:var(--nd-danger)!important;
}
:is(.male,.female,.nickname-male,.nickname-female){
    color:var(--nd-text)!important;
}
@media(max-width:420px){
    html,body{font-size:14.5px!important}
    :is(.blocked-header,.chat-header,.guide-header,.more-header,.notice-header,.payment-header,.review-header,.settings-header,.support-header,.withdraw-header){
        min-height:62px!important;
        height:62px!important;
        padding-left:12px!important;
        padding-right:12px!important;
    }
    :is(.blocked-header,.chat-header,.guide-header,.more-header,.notice-header,.payment-header,.review-header,.settings-header,.support-header,.withdraw-header)>strong,
    :is(.blocked-header,.chat-header,.guide-header,.more-header,.notice-header,.payment-header,.review-header,.settings-header,.support-header,.withdraw-header) strong{
        font-size:17px!important;
    }
    input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:14px!important}
}


/* UNIFIED BACK ARROW AND TITLE ALIGNMENT V2 */
:is(.blocked-header,.chat-list-header,.chat-header,.guide-header,.join-header,.match-header,.detail-header,.more-header,.notice-header,.payment-header,.profile-top,.review-header,.settings-header,.support-header,.withdraw-header,.charge-header,.verification-header,.dormant-header,.recovery-header,.head,.top){
    align-items:center!important;
    column-gap:8px!important;
}
:is(.back,.blocked-back,.chat-back,.detail-back,.payment-back,.withdraw-back,.back-arrow){
    width:34px!important;
    min-width:34px!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    align-self:center!important;
    line-height:1!important;
}
:is(.back,.blocked-back,.chat-back,.detail-back,.payment-back,.withdraw-back){
    font-size:34px!important;
}
:is(.back-arrow) svg{
    display:block!important;
    margin:0!important;
}
:is(.blocked-header,.chat-list-header,.chat-header,.guide-header,.join-header,.match-header,.detail-header,.more-header,.notice-header,.payment-header,.profile-top,.review-header,.settings-header,.support-header,.withdraw-header,.charge-header,.verification-header,.dormant-header,.recovery-header,.head,.top)>strong{
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    align-self:center!important;
    line-height:22px!important;
}
