.calendar-container { background: #fff; border-radius: 12px; padding: 40px; box-shadow: 0 4px 20px rgba(0,0,0,0.05); }
        .calendar-header { text-align: center; margin-bottom: 40px; }
        .calendar-title { font-size: 28px; color: #2c3e50; margin: 15px 0; }
        .calendar-desc { color: #7f8c8d; line-height: 1.6; }
        
        .tool-section { margin-bottom: 40px; background: #f8f9fa; padding: 30px; border-radius: 8px; border: 1px solid #e9ecef; }
        .tool-section h3 { margin-top: 0; color: #2c3e50; border-left: 4px solid #3498db; padding-left: 10px; margin-bottom: 20px; }
        
        .input-group { display: flex; gap: 15px; align-items: center; margin-bottom: 10px; flex-wrap: wrap; }
        .input-group label { font-weight: bold; color: #34495e; min-width: 80px; }
        .input-control { padding: 10px; border: 1px solid #ccc; border-radius: 4px; font-size: 16px; outline: none; transition: border-color 0.2s; }
        .input-control:focus { border-color: #3498db; }
        .number-input { width: 80px; }
        
        .btn-primary { background: #3498db; color: white; border: none; padding: 10px 25px; border-radius: 4px; cursor: pointer; font-size: 16px; transition: background 0.3s; }
        .btn-primary:hover { background: #2980b9; }
        
        .result-box { margin-top: 15px; padding: 15px; background: #e8f4fd; border: 1px dashed #3498db; border-radius: 4px; color: #2c3e50; font-size: 18px; font-weight: bold; display: none; line-height: 1.8; }
        
        /* 新增：错误提示信息样式 */
        .error-msg { color: #e74c3c; font-size: 14px; margin-top: 8px; display: none; }