@charset "utf-8";
/* ============================================================
   在线留言（联系我们） liuyan.css  (2026-10-03)
   ============================================================ */

.ly-wrap{
    max-width:1000px;
    margin:0 auto 30px;
}
.ly-page-title{
    text-align:center;
    margin-bottom:8px;
}
.ly-page-sub{
    text-align:center;
    color:#777;
    font-size:14px;
    margin-bottom:24px;
}

/* ---- 提示条 ---- */
.ly-notice{
    border-radius:6px;
    padding:14px 18px;
    font-size:14px;
    line-height:1.7;
    margin-bottom:18px;
}
.ly-notice-info{
    background:#eef8f0;
    border:1px solid #bfe3c8;
    color:#2a6e3f;
}
.ly-notice .ly-notice-title{
    font-weight:bold;
    margin-right:6px;
}

/* ---- 主体：左信息 + 右表单 ---- */
.ly-main{
    display:flex;
    flex-wrap:wrap;
    align-items:stretch;
}
.ly-info{
    width:36%;
    box-sizing:border-box;
    background:linear-gradient(160deg,#1d8a42 0%,#14662f 100%);
    color:#eaf6ee;
    border-radius:8px 0 0 8px;
    padding:30px 26px;
}
.ly-info-title{
    font-size:19px;
    font-weight:bold;
    margin:0 0 6px;
}
.ly-info-sub{
    font-size:13px;
    color:rgba(255,255,255,.75);
    margin-bottom:24px;
}
.ly-info-list{ list-style:none; padding:0; margin:0; }
.ly-info-list li{
    display:flex;
    align-items:flex-start;
    font-size:14px;
    line-height:1.6;
    margin-bottom:20px;
    word-break:break-all;
}
.ly-info-list i{
    font-size:18px;
    margin:2px 12px 0 0;
    color:rgba(255,255,255,.85);
    flex:0 0 auto;
}
.ly-info-list a{ color:#eaf6ee; text-decoration:underline; }
/* 地址文本：强制纯白（与信息栏整体配色统一） */
.ly-info-list li > span{ color:#fff; }
.ly-info-time{
    margin-top:28px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.18);
    font-size:13px;
    line-height:1.7;
    color:rgba(255,255,255,.82);
}

/* ---- 表单卡片 ---- */
.ly-form-side{
    width:64%;
    box-sizing:border-box;
    background:#fff;
    border:1px solid #e6e8e6;
    border-left:none;
    border-radius:0 8px 8px 0;
    box-shadow:0 2px 10px rgba(0,0,0,.05);
    padding:28px 30px 30px;
}

/* ---- 字段 ---- */
.ly-field{ margin-bottom:16px; }
.ly-label{
    display:block;
    font-size:14px;
    color:#444;
    margin-bottom:6px;
}
.ly-req{ color:#e14b4b; margin-left:2px; }
.ly-input{
    width:100%;
    height:42px;
    padding:8px 12px;
    font-size:14px;
    color:#333;
    border:1px solid #cfd4cf;
    border-radius:5px;
    background:#fff;
    box-sizing:border-box;
    transition:border-color .2s, box-shadow .2s;
}
textarea.ly-input{
    height:auto;
    min-height:130px;
    resize:vertical;
    line-height:1.6;
}
.ly-input:focus{
    outline:none;
    border-color:#1a7f37;
    box-shadow:0 0 0 3px rgba(26,127,55,.12);
}
.ly-input.ly-err-border{
    border-color:#e14b4b;
    box-shadow:0 0 0 3px rgba(225,75,75,.10);
}
.ly-err-msg{
    display:none;
    color:#e14b4b;
    font-size:12.5px;
    margin-top:4px;
    line-height:1.4;
}
.ly-err-msg.show{ display:block; }

/* 字数统计 */
.ly-count-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-top:4px;
}
.ly-counter{
    font-size:12.5px;
    color:#999;
}
.ly-counter.warn{ color:#e14b4b; }

/* ---- 验证码 ---- */
.ly-captcha-row{
    display:flex;
    align-items:center;
}
.ly-captcha-q{
    margin-left:12px;
    font-size:15px;
    color:#555;
    white-space:nowrap;
    background:#f3f5f3;
    border:1px solid #dde1dd;
    border-radius:5px;
    padding:8px 14px;
}
.ly-captcha-row .ly-input{ max-width:160px; }

/* ---- 协议 ---- */
.ly-agree{
    display:flex;
    align-items:flex-start;
    font-size:14px;
    color:#444;
    line-height:1.6;
}
.ly-agree input{
    margin:3px 8px 0 0;
    flex:0 0 auto;
}

/* ---- 提交区 ---- */
.ly-submit-row{
    text-align:center;
    margin-top:20px;
}
.ly-submit{
    min-width:220px;
    height:50px;
    font-size:17px;
    letter-spacing:2px;
    background:#1a7f37;
    color:#fff;
    border:none;
    border-radius:6px;
    cursor:pointer;
    transition:background .2s, transform .1s;
}
.ly-submit:hover{ background:#15682d; }
.ly-submit:active{ transform:translateY(1px); }
.ly-submit:disabled{
    background:#7fae8b;
    cursor:not-allowed;
}
.ly-tel-tip{
    margin-top:12px;
    font-size:13.5px;
    color:#888;
}
.ly-tel-tip b{ color:#e14b4b; }

/* ---- 蜜罐：对真人隐藏 ---- */
.ly-hp{
    position:absolute;
    left:-9999px;
    top:-9999px;
    width:1px;
    height:1px;
    overflow:hidden;
}

/* ---- 响应式 ---- */
@media (max-width:767px){
    .ly-info{
        width:100%;
        border-radius:8px 8px 0 0;
        padding:24px 20px;
    }
    .ly-form-side{
        width:100%;
        border-left:1px solid #e6e8e6;
        border-top:none;
        border-radius:0 0 8px 8px;
        padding:22px 16px 24px;
    }
    .ly-info-list li{ margin-bottom:16px; }
    .ly-info-time{ margin-top:20px; }
    .ly-captcha-row{ flex-wrap:wrap; }
    .ly-captcha-q{ margin:8px 0 0; }
    .ly-submit{ width:100%; min-width:0; height:48px; }
}
