*{margin:0;padding:0;box-sizing:border-box;font-family:"微软雅黑","Microsoft YaHei",sans-serif;}
body{color:#333;line-height:1.7;background:#f8f9fa;}
.container{width:90%;max-width:1200px;margin:0 auto;}

header{background:#0a2c54;position:fixed;width:100%;top:0;z-index:999;}
.nav{display:flex;justify-content:space-between;align-items:center;padding:14px 0;}
.logo{color:#fff;font-size:22px;font-weight:bold;white-space:nowrap;}
.nav-right{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.nav-contact{color:#fff;font-size:15px;opacity:0.9;white-space:nowrap;}
.nav-pay-btn{background:#f59e0b;padding:8px 18px;border-radius:20px;color:#fff;font-weight:bold;text-decoration:none;white-space:nowrap;transition:background 0.2s;}
.nav-pay-btn:hover{background:#d97706;}
.nav-menu{display:flex;align-items:center;gap:28px;flex-wrap:wrap;}
.nav-menu a{color:#fff;text-decoration:none;font-size:16px;white-space:nowrap;transition:color 0.2s;}
.nav-menu a:hover{color:#4299e1;}

.banner{background:#0a2c54;color:#fff;padding:170px 0 110px;text-align:center;margin-top:60px;}
.banner h1{font-size:42px;margin-bottom:18px;line-height:1.4;}
.banner p{font-size:18px;margin-bottom:32px;opacity:0.9;line-height:1.8;}
.btn{display:inline-block;padding:12px 32px;background:#4299e1;color:#fff;text-decoration:none;border-radius:30px;font-weight:bold;transition:background 0.2s;border:none;cursor:pointer;font-size:16px;}
.btn:hover{background:#3182ce;}
.btn-gold{background:#f59e0b;}
.btn-gold:hover{background:#d97706;}

.section{padding:70px 0;background:#fff;}
.section-gray{background:#f8f9fa;}
.title{text-align:center;font-size:32px;color:#0a2c54;margin-bottom:50px;position:relative;}
.title::after{content:"";width:80px;height:3px;background:#4299e1;position:absolute;left:50%;transform:translateX(-50%);bottom:-15px;}
.tip-box{background:#e6f2ff;border-left:4px solid #4299e1;padding:16px 22px;border-radius:6px;margin-bottom:45px;}
.tip-box p{font-size:15px;color:#0a2c54;line-height:1.7;}

.progress-wrap{max-width:800px;margin:0 auto 35px;text-align:left;}
.progress-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:16px;color:#333;}
.progress-bar{width:100%;height:12px;background:#e2e8f0;border-radius:6px;overflow:hidden;}
.progress-fill{height:100%;background:linear-gradient(90deg,#4299e1,#0a2c54);border-radius:6px;width:0;transition:width 1.2s ease-out;}

.price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:28px;margin:40px 0;align-items:stretch;}
.price-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:35px 25px;text-align:center;position:relative;transition:all 0.3s;display:flex;flex-direction:column;}
.price-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(10,44,84,0.1);}
.price-card.hot{border-color:#f59e0b;transform:scale(1.02);}
.hot-tag{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:#f59e0b;color:#fff;padding:4px 20px;border-radius:20px;font-size:13px;font-weight:bold;white-space:nowrap;}
.price-name{font-size:22px;color:#0a2c54;font-weight:bold;margin-bottom:12px;}
.price-num{font-size:36px;color:#0a2c54;font-weight:bold;margin-bottom:6px;}
.price-num span{font-size:16px;font-weight:normal;color:#666;}
.price-discount{color:#f59e0b;font-size:15px;margin-bottom:25px;min-height:22px;}
.price-list{text-align:left;padding:0 5px;margin-bottom:30px;flex:1;}
.price-list li{list-style:none;padding:10px 0;border-bottom:1px solid #f1f5f9;font-size:15px;color:#555;line-height:1.6;}
.price-list li:last-child{border-bottom:none;}
.price-list li::before{content:"✅";margin-right:10px;flex-shrink:0;}
.price-btn{width:100%;padding:12px;border:none;border-radius:8px;font-size:16px;font-weight:bold;cursor:pointer;text-decoration:none;display:inline-block;transition:background 0.2s;}
.price-btn-blue{background:#4299e1;color:#fff;}
.price-btn-blue:hover{background:#3182ce;}
.price-btn-gold{background:#f59e0b;color:#fff;}
.price-btn-gold:hover{background:#d97706;}

.appeal-classify{margin-bottom:50px;}
.classify-card{background:#fff;border:1px solid #eee;border-radius:10px;padding:25px;margin-bottom:20px;box-shadow:0 2px 8px rgba(0,0,0,0.04);}
.classify-title{display:flex;align-items:center;margin-bottom:15px;}
.classify-tag{display:inline-block;padding:4px 12px;border-radius:20px;font-size:13px;font-weight:bold;margin-right:12px;white-space:nowrap;}
.tag-easy{background:#e6ffed;color:#0e7a44;}
.tag-normal{background:#fff8e6;color:#925c00;}
.tag-hard{background:#fff0f0;color:#c53030;}
.classify-title h4{font-size:20px;color:#0a2c54;}
.classify-list{padding-left:28px;}
.classify-list li{font-size:15px;color:#555;margin-bottom:8px;line-height:1.6;}

.rate-table{width:100%;border-collapse:collapse;margin:30px 0;}
.rate-table th,.rate-table td{border:1px solid #eee;padding:14px;text-align:left;font-size:15px;line-height:1.6;}
.rate-table th{background:#0a2c54;color:#fff;font-weight:bold;}
.rate-table tr:nth-child(even){background:#f8f9fa;}
.rate-high{color:#0e7a44;font-weight:bold;}
.rate-mid{color:#925c00;font-weight:bold;}
.rate-low{color:#c53030;font-weight:bold;}

.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px;margin:40px 0;align-items:stretch;}
.choice-card{padding:25px;border-radius:10px;display:flex;flex-direction:column;}
.choice-card h4{font-size:18px;margin-bottom:15px;display:flex;align-items:center;}
.choice-card h4 span{margin-right:8px;font-size:20px;}
.choice-do{background:#f0fff4;border:1px solid #b7f0c5;}
.choice-mid{background:#fffbf0;border:1px solid #ffe8b7;}
.choice-no{background:#fff5f5;border:1px solid #ffd8d8;}
.choice-card ul{padding-left:22px;flex:1;}
.choice-card li{font-size:15px;margin-bottom:8px;color:#444;line-height:1.6;}

.service-list,.advantage-list,.case-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:28px;align-items:stretch;}
.service-card,.advantage-item,.case-item{padding:30px;border-radius:10px;display:flex;flex-direction:column;}
.service-card{background:#fff;box-shadow:0 2px 15px #eee;text-align:center;}
.service-card h4,.advantage-item h4,.case-item h4{font-size:20px;color:#0a2c54;margin-bottom:15px;}
.service-card p,.advantage-item p,.case-item p{color:#666;line-height:1.7;flex:1;}
.advantage-item{background:#f8f9fa;text-align:center;}
.case-item{border:1px solid #eee;}

.contact-box{max-width:600px;margin:0 auto;text-align:center;}
.contact-box p{font-size:18px;margin-bottom:20px;line-height:1.7;}

footer{background:#0a2c54;color:#fff;text-align:center;padding:30px 0;}
.footer-contact{margin:10px 0;font-size:15px;opacity:0.9;}

/* checkout */
.checkout-wrap{max-width:560px;margin:120px auto 60px;background:#fff;padding:36px;border-radius:12px;box-shadow:0 8px 30px rgba(10,44,84,.08);}
.checkout-wrap h2{color:#0a2c54;margin-bottom:8px;}
.checkout-meta{color:#666;margin-bottom:24px;}
.form-row{margin-bottom:16px;}
.form-row label{display:block;font-size:14px;color:#334;margin-bottom:6px;}
.form-row input,.form-row textarea,.form-row select{width:100%;padding:10px 12px;border:1px solid #dbe2ea;border-radius:8px;font-size:15px;}
.form-row textarea{min-height:80px;resize:vertical;}
.amount-show{font-size:28px;color:#0a2c54;font-weight:bold;margin:10px 0 20px;}
.alert{padding:12px 16px;border-radius:8px;margin-bottom:16px;}
.alert-ok{background:#e6ffed;color:#0e7a44;}
.alert-err{background:#fff0f0;color:#c53030;}
.alert-info{background:#e6f2ff;color:#0a2c54;}

/* admin */
.admin-body{background:#eef2f6;}
.admin-layout{display:flex;min-height:100vh;}
.admin-side{width:220px;background:#0a2c54;color:#fff;padding:24px 0;flex-shrink:0;}
.admin-side h1{font-size:16px;padding:0 20px 20px;border-bottom:1px solid rgba(255,255,255,.12);}
.admin-side a{display:block;color:#d6e4f5;text-decoration:none;padding:12px 20px;}
.admin-side a:hover,.admin-side a.active{background:#163a66;color:#fff;}
.admin-main{flex:1;padding:28px;}
.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;}
.admin-card{background:#fff;border-radius:10px;padding:22px;margin-bottom:20px;box-shadow:0 2px 10px rgba(0,0,0,.04);}
.admin-table{width:100%;border-collapse:collapse;}
.admin-table th,.admin-table td{border-bottom:1px solid #eef;padding:10px 8px;text-align:left;font-size:14px;vertical-align:top;}
.admin-table th{background:#f6f8fb;color:#0a2c54;}
.badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;}
.badge-pending{background:#fff8e6;color:#925c00;}
.badge-paid{background:#e6ffed;color:#0e7a44;}
.badge-closed{background:#eee;color:#666;}
.login-box{max-width:380px;margin:12vh auto;background:#fff;padding:32px;border-radius:12px;box-shadow:0 10px 30px rgba(10,44,84,.12);}
.login-box h2{color:#0a2c54;margin-bottom:18px;}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.muted{color:#888;font-size:13px;}
.btn-sm{padding:6px 12px;border-radius:6px;font-size:13px;text-decoration:none;display:inline-block;}
.btn-danger{background:#c53030;color:#fff;}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:20px;}
.stat{background:#fff;padding:18px;border-radius:10px;}
.stat b{display:block;font-size:26px;color:#0a2c54;}

@media(max-width:992px){
    .nav-menu{gap:18px;}
    .nav-right{gap:12px;}
}
@media(max-width:768px){
    .nav-menu{display:none;}
    .banner h1{font-size:28px;}
    .about-content{grid-template-columns:1fr !important;gap:30px;}
    .nav-contact{font-size:13px;}
    .nav-pay-btn{font-size:14px;padding:7px 14px;}
    .progress-title{font-size:15px;}
    .progress-bar{height:10px;}
    .rate-table{display:block;overflow-x:auto;}
    .choice-grid,.price-grid,.service-list,.advantage-list,.case-list{grid-template-columns:1fr;gap:20px;}
    .price-card.hot{transform:none;}
    .title{font-size:26px;}
    .section{padding:50px 0;}
    .admin-layout{display:block;}
    .admin-side{width:100%;}
    .grid-2{grid-template-columns:1fr;}
    .checkout-wrap{margin:90px 12px 40px;padding:22px;}
}
