body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:#f5f5f5;color:#333;margin:0}#app{max-width:640px;margin:0 auto;min-height:100vh;background:#f5f5f5}.page{padding-bottom:56px}.navbar{position:sticky;top:0;z-index:10;background:#fff;padding:10px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee}.navbar-title{font-size:18px;font-weight:600}.navbar-actions button{padding:6px 10px;border-radius:20px;border:none;background:linear-gradient(135deg,#ff7a45,#ff4d4f);color:#fff;font-size:13px}.carousel{position:relative;width:100%;overflow:hidden;border-radius:12px;margin:10px auto;max-width:610px}.carousel-inner{display:flex;transition:transform .4s ease}.carousel-item{min-width:100%;height:160px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:600}.carousel-dot-wrapper{position:absolute;bottom:8px;left:50%;transform:translate(-50%);display:flex;gap:6px}.carousel-dot{width:6px;height:6px;border-radius:50%;background:#ffffff80}.carousel-dot.active{width:14px;border-radius:999px;background:#fff}.search-bar{padding:8px 16px 4px;display:flex;gap:8px;align-items:center;background:#fff;border-bottom:1px solid #eee}.search-input-wrapper{flex:1;display:flex;align-items:center;background:#f3f3f3;border-radius:20px;padding:4px 10px}.search-input-wrapper input{flex:1;border:none;outline:none;background:transparent;font-size:14px}.search-bar select{border-radius:20px;border:1px solid #ddd;padding:4px 10px;font-size:13px;background:#fff}.job-list{padding:8px 12px 12px}.job-card{background:#fff;border-radius:12px;padding:10px 12px;margin-bottom:10px;box-shadow:0 1px 3px #0000000a}.job-card-header{display:flex;justify-content:space-between;align-items:center}.job-title{font-size:16px;font-weight:600;margin-right:6px}.tag-top{font-size:11px;padding:2px 6px;border-radius:999px;background:#fff1f0;color:#cf1322;border:1px solid #ffa39e}.job-salary{color:#fa541c;font-weight:600;font-size:15px}.job-content-preview{margin-top:6px;font-size:13px;color:#666;line-height:1.4}.job-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.job-tag{font-size:13px;padding:2px 6px;border-radius:999px;background:#ff7a45;color:#fff;font-weight:700}.job-meta{margin-top:6px;font-size:11px;color:#999;display:flex;justify-content:space-between;align-items:center}.job-actions{margin-top:8px;display:flex;justify-content:flex-end;gap:8px}.btn{border-radius:16px;padding:4px 10px;font-size:13px;border:1px solid #ddd;background:#fff}.btn-primary{border:none;background:linear-gradient(135deg,#1890ff,#40a9ff);color:#fff}.pagination{padding:10px 16px 16px;display:flex;justify-content:center;align-items:center;gap:10px;font-size:13px}.pagination button{padding:4px 10px;border-radius:16px;border:1px solid #ddd;background:#fff}.pagination button:disabled{opacity:.5}.bottom-bar{position:fixed;left:0;right:0;bottom:0;z-index:20;background:#fff;border-top:1px solid #eee;padding:6px 16px;display:flex;justify-content:space-between;align-items:center;max-width:640px;margin:0 auto}.bottom-bar-left{font-size:11px;color:#999}.bottom-bar-right button{padding:6px 12px;border-radius:20px;border:none;background:linear-gradient(135deg,#ff7a45,#ff4d4f);color:#fff;font-size:13px}.dialog-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100}.dialog{width:86%;max-width:360px;background:#fff;border-radius:12px;padding:12px 14px 10px}.dialog-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.dialog-title{font-size:16px;font-weight:600}.dialog-close{border:none;background:transparent;font-size:18px;line-height:1}.dialog-body{font-size:14px;color:#555}.contact-item{margin-top:8px;padding:6px 8px;border-radius:8px;background:#fafafa;display:flex;justify-content:space-between;align-items:center}.contact-main{font-size:14px}.contact-main small{display:block;font-size:12px;color:#999;margin-top:2px}.contact-actions button{padding:4px 10px;border-radius:16px;border:none;font-size:12px;background:#1890ff;color:#fff}.wechat-qr{text-align:center;margin-top:8px}.wechat-qr img{width:160px;height:160px;object-fit:cover;border-radius:8px}.wechat-qr p{font-size:12px;color:#666;margin-top:4px}.detail-page{padding:10px 14px 70px}.detail-title{font-size:18px;font-weight:600;margin-bottom:6px}.detail-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.detail-content{white-space:pre-wrap;font-size:17px;line-height:1.5;color:#444;margin-top:8px;background:#fff;padding:10px;border-radius:8px}.detail-contact{background-color:#444;color:#fff;border-radius:10px;padding:10px;margin-top:10px;font-size:16px}.detail-contact span{display:block;margin-bottom:3px}.admin-page{padding:10px 14px 70px}.admin-form-group{margin-bottom:10px}.admin-form-group label{display:block;margin-bottom:4px;font-size:13px}.admin-form-group input,.admin-form-group textarea,.admin-form-group select{width:100%;box-sizing:border-box;padding:6px 8px;border-radius:6px;border:1px solid #ddd;font-size:13px}.admin-form-group textarea{min-height:80px;resize:vertical}.admin-table{width:100%;border-collapse:collapse;font-size:12px}.admin-table th,.admin-table td{padding:6px 4px;border-bottom:1px solid #f0f0f0;text-align:left;vertical-align:top}.admin-table th{background:#fafafa}.admin-table-actions button{margin-right:4px;margin-bottom:2px;border-radius:12px;border:1px solid #ddd;padding:2px 8px;font-size:11px;background:#fff}.admin-meta{font-size:11px;color:#999}.toast{position:fixed;top:14px;left:50%;transform:translate(-50%);background:#000000c2;color:#fff;padding:6px 12px;border-radius:20px;font-size:13px;z-index:200;max-width:80%;text-align:center}
