:root{
    --cf-bg:#171410;
    --cf-bg2:#221c15;
    --cf-card:#2a221a;
    --cf-card-border:#4a3a26;
    --cf-orange:#f5a623;
    --cf-orange-deep:#e8890c;
    --cf-cream:#f3e6cd;
    --cf-muted:#a89a83;
}
html{scroll-behavior:smooth;}
body{
    background:var(--cf-bg);
    color:var(--cf-cream);
    font-family:"PingFang SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;
}
::selection{background:var(--cf-orange);color:#221c15;}

/* ============ 首屏 ============ */
.hero{
    position:relative;
    min-height:100vh;
    background: url(../img/bj.webp) top center no-repeat;
    background-size: cover;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    overflow:hidden;
}
.hero::after{
    content:"";
    position:absolute;inset:0;
    background:linear-gradient(180deg, rgba(23,20,16,0) 55%, rgba(23,20,16,.85) 88%, var(--cf-bg) 100%);
    pointer-events:none;
}
.hero-cta{
    position:relative;z-index:2;
    text-align:center;
    padding-bottom:9vh;
    animation:heroUp 1.1s cubic-bezier(.22,1,.36,1) both .3s;
}
@keyframes heroUp{
    from{opacity:0;transform:translateY(46px);}
    to{opacity:1;transform:translateY(0);}
}
.btn-join{
    display:inline-block;
    background:linear-gradient(180deg,#ffc45e,var(--cf-orange) 55%,var(--cf-orange-deep));
    color:#3a2703;font-weight:700;font-size:1.35rem;letter-spacing:.15em;
    border:none;border-radius:999px;
    padding:.9rem 4.2rem;
    box-shadow:0 8px 30px rgba(245,166,35,.45), inset 0 1px 0 rgba(255,255,255,.5);
    transition:transform .25s ease, box-shadow .25s ease;
    animation:pulse 2.4s ease-in-out infinite 1.4s;
}
.btn-join:hover,.btn-join:focus{
    color:#3a2703;
    transform:translateY(-4px) scale(1.03);
    box-shadow:0 14px 42px rgba(245,166,35,.6), inset 0 1px 0 rgba(255,255,255,.6);
}
@keyframes pulse{
    0%,100%{box-shadow:0 8px 30px rgba(245,166,35,.45),0 0 0 0 rgba(245,166,35,.5);}
    50%{box-shadow:0 8px 30px rgba(245,166,35,.45),0 0 0 18px rgba(245,166,35,0);}
}
.hero-time{
    margin-top:2rem;
    color:var(--cf-cream);opacity:.85;
    font-size:1rem;letter-spacing:.12em;
}
.scroll-hint{
    position:absolute;z-index:2;bottom:1.4rem;left:50%;transform:translateX(-50%);
    color:var(--cf-cream);opacity:.5;font-size:1.3rem;
    animation:bounceY 1.8s ease-in-out infinite;
}
@keyframes bounceY{0%,100%{transform:translate(-50%,0);}50%{transform:translate(-50%,8px);}}

/* ============ 通用板块 ============ */
.section{padding:10rem 0 10rem;}
.section-title{
    text-align:center;font-weight:700;font-size:1.9rem;letter-spacing:.35em;
    color:var(--cf-cream);margin-bottom:1rem;
}
.section-title::before,.section-title::after{
    content:"";display:inline-block;vertical-align:middle;
    width:64px;height:2px;margin:0 1.4rem;
    background:linear-gradient(90deg,transparent,var(--cf-orange));
}
.section-title::after{background:linear-gradient(90deg,var(--cf-orange),transparent);}
.section-sub{text-align:center;color:var(--cf-muted);font-size:1rem;letter-spacing:.25em;margin-bottom:3rem;}

/* 滚动显现动画 */
.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1);}
.reveal.visible{opacity:1;transform:none;}
.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.2s}
.reveal.d3{transition-delay:.3s}.reveal.d4{transition-delay:.4s}
.reveal.d5{transition-delay:.5s}.reveal.d6{transition-delay:.6s}

/* ============ 活动引言 ============ */
.intro-card{
    background:var(--cf-card);
    border:1px solid var(--cf-card-border);
    border-radius:18px;
    padding:2.6rem 3rem;
    line-height:2.05;
    color:#e8dcc4;
    position:relative;
}
.intro-card h5{color:var(--cf-orange);font-weight:700;margin-bottom:.6rem;}
.paw{position:absolute;right:2rem;bottom:1.6rem;font-size:2rem;color:var(--cf-card-border);opacity:.7;}

/* ============ 参与流程 ============ */
.step-card{
    background:var(--cf-card);
    border:1px solid var(--cf-card-border);
    border-radius:14px;
    padding:1.8rem 1.5rem;
    height:100%;
    transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.step-card:hover{
    transform:translateY(-8px);
    border-color:var(--cf-orange);
    box-shadow:0 14px 34px rgba(0,0,0,.45), 0 0 0 1px rgba(245,166,35,.35);
}
.step-num{
    display:inline-flex;align-items:center;justify-content:center;
    width:40px;height:40px;border-radius:10px;
    background:var(--cf-orange);color:#3a2703;
    font-weight:800;font-size:1.2rem;margin-bottom:1rem;
}
.step-card h6{font-weight:700;font-size:1.1rem;margin-bottom:.7rem;}
.step-card p{font-size:1rem;color:var(--cf-muted);line-height:1.9;}
.step-card ul{list-style:none;padding:0;margin:.4rem 0 0;font-size:1rem;color:#d8c9a8;line-height:2;}
.step-card ul li::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--cf-orange);margin-right:.55rem;vertical-align:middle;}
.step-card .note{font-size:.8rem;color:var(--cf-muted);margin-top:.8rem;}
.ecard-img{border-radius:10px;width:100%;max-width:150px;display:block;margin:.6rem auto .4rem;}

/* ============ 审核标准 ============ */
.audit-card{
    background:var(--cf-card);
    border:1px solid var(--cf-card-border);
    border-radius:14px;
    padding:1.4rem 1.5rem;height:100%;
    transition:transform .3s ease,border-color .3s ease;
}
.audit-card:hover{transform:translateY(-6px);border-color:#5dbb7a;}
.audit-card h6{font-weight:700;font-size:.98rem;margin-bottom:.55rem;}
.audit-card h6 .bi{color:#4ecb71;margin-right:.5rem;}
.audit-card p{font-size:1rem;color:var(--cf-muted);line-height:1.9;margin:0;}
.audit-card .em{color:var(--cf-orange);}

/* ============ 奖品 ============ */
.prize-wrap{text-align:center;}
.prize-wrap img{
    width:230px;border-radius:12px;
    box-shadow:0 16px 44px rgba(0,0,0,.55);
    transition:transform .35s ease;
}
.prize-wrap img:hover{transform:scale(1.06) rotate(-1.5deg);}
.prize-wrap p{margin-top:1.6rem;color:var(--cf-muted);font-size:.85rem;letter-spacing:.15em;}

/* ============ 注意事项 ============ */
.notice-list{max-width:860px;margin:0 auto;}
.notice-item{display:flex;gap:1.2rem;padding:.85rem 0;border-bottom:1px dashed rgba(245,166,35,.15);font-size:1rem;color:#d8c9a8;line-height:1.9;}
.notice-item:last-child{border-bottom:none;}
.notice-num{color:var(--cf-orange);font-weight:800;letter-spacing:.05em;flex:none;}

/* ============ 底部 ============ */
.footer-cta{text-align:center;padding:10rem 0;border-top: 1px solid #4d310d;}
.footer-brand{color:var(--cf-muted);font-size:1rem;letter-spacing:.3em;margin-bottom:3rem;}
.footer-brand b{color:var(--cf-orange);font-weight:600;}
.copyright{text-align:center;color:#5c5344;font-size:.72rem;padding-bottom:2rem;letter-spacing:.1em;}

/* ============ 弹窗表单 ============ */
.modal-content{
    background:var(--cf-bg2);
    color:var(--cf-cream);
    border:1px solid var(--cf-card-border);
    border-radius:18px;
}
.modal-header{border-bottom:1px solid var(--cf-card-border);}
.modal-title{font-weight:700;letter-spacing:.15em;}
.btn-close{filter:invert(1) sepia(.3);}
.form-block{
    background:rgba(0,0,0,.22);
    border:1px solid rgba(245,166,35,.12);
    border-radius:14px;
    padding:1.4rem 1.4rem 1.1rem;
    margin-bottom:1.2rem;
}
.form-block-title{font-weight:700;font-size:1.02rem;margin-bottom:.2rem;}
.form-block-title .bi{
    color:#3a2703;background:var(--cf-orange);
    border-radius:8px;padding:.3rem .42rem;margin-right:.6rem;font-size:.9rem;
}
.form-block-sub{color:var(--cf-muted);font-size:.76rem;margin-bottom:1rem;}
.form-label{font-size:.85rem;color:#e8dcc4;}
.form-label .req{color:#e2574c;margin-left:2px;}
.form-control,.form-select{
    background:#14100c;
    border:1px solid #3d3122;
    color:var(--cf-cream);
    font-size:.9rem;
}
.form-control:focus,.form-select:focus{
    background:#14100c;color:var(--cf-cream);
    border-color:var(--cf-orange);
    box-shadow:0 0 0 .2rem rgba(245,166,35,.18);
}
.form-control::placeholder{color:#6b5f4c;}
/*.form-select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23a89a83' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");*/
/*    background-repeat: no-repeat;*/
/*    background-position: right 10px bottom 0;}*/

/* 平台选择卡片 */
.platform-picker{display:flex;gap:1rem;}
.platform-option{flex:1;}
.platform-option input{position:absolute;opacity:0;pointer-events:none;}
.platform-option label{
    display:flex;flex-direction:column;align-items:center;gap:.5rem;
    background:#14100c;border:1px solid #3d3122;border-radius:12px;
    padding:1.3rem .5rem;cursor:pointer;width:100%;
    transition:border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.platform-option label i{font-size:1.6rem;}
.platform-option label:hover{transform:translateY(-3px);border-color:#6b5836;}
.platform-option input:checked + label{
    border-color:var(--cf-orange);
    box-shadow:0 0 0 1px var(--cf-orange), 0 6px 20px rgba(245,166,35,.25);
}
.pf-xhs i{color:#ff4757;}
.pf-dy i{color:#7b8cff;}

/* bootstrap-fileinput 深色适配 */
.file-input .file-drop-zone{
    background:#14100c;border:1px dashed #4a3a26;color:#8a7c64;
    border-radius:12px;
}
.file-input .file-drop-zone.clickable:hover{border-color:var(--cf-orange);}
.file-input .file-drop-zone-title{color:#6b5f4c;font-size:.85rem;}
.file-input .btn-file,.file-input .btn-outline-secondary{
    background:#2a221a;border-color:#4a3a26;color:var(--cf-cream);
}
.file-input .btn-file:hover{background:#3a2f22;color:#fff;}
.file-input .file-preview{border:1px solid #3d3122;background:#14100c;border-radius:12px;}
.file-input .file-preview .fileinput-remove{color:#e8dcc4;}
.file-input .file-footer-caption{color:#a89a83;}
.krajee-default.file-preview-frame{background:#221c15;border:1px solid #3d3122;}
.krajee-default.file-preview-frame .file-thumbnail-footer{background:#1a1510;color:#a89a83;}
.upload-hint{font-size:.72rem;color:#6b5f4c;margin-top:.5rem;text-align:center;}

.btn-submit{
    width:100%;
    background:linear-gradient(180deg,#ffc45e,var(--cf-orange) 55%,var(--cf-orange-deep));
    color:#3a2703;font-weight:700;font-size:1.1rem;letter-spacing:.2em;
    border:none;border-radius:999px;padding:.85rem;
    box-shadow:0 6px 24px rgba(245,166,35,.4);
    transition:transform .25s ease, box-shadow .25s ease;
}
.btn-submit:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(245,166,35,.55);color:#3a2703;}
.bg1{
    background-color: var(--cf-card);
    background-image: url('../img/bg2.webp');
    background-repeat: no-repeat;
    background-position: right 10px bottom 10px;
}
.color1{
    color: var(--cf-orange-deep);
}
/* 整个滚动条轨道 */
::-webkit-scrollbar {
    width: 8px;          /* 纵向滚动条宽度 */
    /*height: 8px;         !* 横向滚动条高度 *!*/
}

/* 轨道背景 */
::-webkit-scrollbar-track {
    background: rgba(0,0,0,0.2);
    border-radius: 4px;
}

/* 滑块（拖动的那部分） */
::-webkit-scrollbar-thumb {
    background: var(--cf-orange-deep);
    border-radius: 4px;
}

/* 滑块悬停 */
::-webkit-scrollbar-thumb:hover {
    background: #ffc45e;
}

@media (max-width:768px){
    .section-title{font-size:1.4rem;}
    .section-title::before,.section-title::after{width:32px;margin:0 .8rem;}
    .intro-card{padding:1.8rem 1.4rem;}
    .btn-join{font-size:1.1rem;padding:.8rem 3rem;}
}